عناوين IPv6

عرض المصدر على GitHub

لنلقِ نظرة على كيفية تعرُّف Thread على كل جهاز في الشبكة وأنواع العناوين التي يستخدمونها للتواصل مع بعضهم البعض.

المناظير

نطاقات OT

هناك ثلاثة نطاقات في شبكة Thread لعناوين unicast:

  • Link-Local — جميع الواجهات التي يمكن الوصول إليها عن طريق جهاز إرسال لاسلكي
  • شبكة متداخلة - جميع الواجهات التي يمكن الوصول إليها داخل شبكة Thread نفسها
  • عام — جميع الواجهات التي يمكن الوصول إليها من خارج شبكة Thread

أول نطاقين يتوافقان مع البادئات التي تعينها شبكة Thread. وتحتوي الروابط المحلية على بادئات لـ fe80::/16، بينما تتضمن الشبكة المحلية المحلية بادئات لـ fd00::/8.

Unicast

هناك عناوين IPv6 unicast متعددة تحدِّد جهاز Thread واحدًا. ولكلٍّ منها وظيفة مختلفة استنادًا إلى النطاق وحالة الاستخدام.

قبل أن نوضح لك تفاصيل كل نوع، دعنا نتعرف على المزيد من المعلومات حول نوع شائع يسمى "محدد مواقع التوجيه" (RLOC). تحدد RLOC واجهة Thread، استنادًا إلى موقعها في طوبولوجيا الشبكة.

كيفية إنشاء محدِّد مواقع التوجيه

يتم تخصيص رقم تعريف جهاز توجيه ورقم تعريف فرعي لكل الأجهزة. يحتفظ كل جهاز توجيه بجدول يحتوي على كل أبناءه، ويتم تحديد أي منهما بشكل فريد من خلال المخطط الهيكلي. على سبيل المثال، انظر إلى العقد المميزة في المخطط التالي، حيث يكون الرقم في جهاز التوجيه (الخماسي) هو رقم تعريف جهاز التوجيه، والرقم في جهاز النهاية (دائرة) هو رقم تعريف الطفل:

طوبولوجيا RLOC OT

يتوافق معرّف جهاز توجيه كل طفل مع جهاز التوجيه الرئيسي. بما أنّ جهاز التوجيه ليس طفلاً، يكون المعرّف الفرعي لجهاز التوجيه دائمًا 0. وتعتبر هذه القيم معًا فريدة لكل جهاز في شبكة Thread، ويتم استخدامها لإنشاء RLOC16، التي تمثل آخر 16 بت من RLOC.

على سبيل المثال، إليك كيفية حساب RLOC16 للعقدة العلوية اليمنى (رقم تعريف جهاز التوجيه = 1 ورقم تعريف الطفل = 1):

الوقت الإضافي RLOC16

يمثل RLOC16 جزءًا من معرّف الواجهة (IID)، الذي يتوافق مع آخر 64 بت من عنوان IPv6. يمكن استخدام بعض معرّفات IID لتحديد بعض أنواع واجهات Thread. على سبيل المثال، دائمًا ما يظهر معرّف IID لدورات تحقيق الأرباح (RLOC) بهذا الشكل:

0000:00ff:fe00:RLOC16

يؤدي معرّف IID، بالإضافة إلى بادئة شبكة متداخلة محلية، إلى الحصول على RLOC. على سبيل المثال، باستخدام بادئة شبكة متداخلة محلية لـ fde5:8dba:82e1:1::/64، تكون RLOC للعقدة حيث يكون RLOC16 = 0x401 هو:

الوقت الإضافي RLOC

يمكن استخدام هذا المنطق نفسه لتحديد RLOC لجميع العُقد التي تم تمييزها في نموذج الطوبولوجيا أعلاه:

طوبولوجيا OT مع العنوان

ومع ذلك، نظرًا لتوفر RLOC استنادًا إلى موقع العقدة في المخطط الأعلى، فإن RLOC للعقدة قد تتغير أثناء تغير المخطط.

على سبيل المثال، ربما تتم إزالة العقدة 0x400 من شبكة Thread. تنشئ العُقد 0x401 و0x402 روابط جديدة إلى أجهزة توجيه مختلفة، ونتيجة لذلك يتم تخصيص RLOC16 وRLOC لكل منهما:

طوبولوجيا OT بعد التغيير

أنواع عناوين Unicast

إنّ RLOC هو واحد فقط من عناوين IPv6 unicast التي يمكن أن يحتوي عليها جهاز Thread. تُعرف فئة أخرى من العناوين باسم معرّفات نقاط النهاية (EIDs)، والتي تحدد واجهة Thread فريدة ضمن قسم شبكة Thread. لا تعتمد أرقام تعريف EID على طوبولوجيا شبكة Thread.

في ما يلي شرح مفصّل لأنواع unicast الشائعة.

معرّف EID يحدّد واجهة سلسلة محادثات يمكن الوصول إليها عن طريق عملية إرسال لاسلكي واحدة
مثالfe80::54db:881c:3845:57f4
معرّف IIDبناءً على العنوان الموسَّع 802.15.4
النطاقالرابط المحلي
التفاصيل
  • يُستخدم لاكتشاف الجيران وتهيئة الروابط وتبادل معلومات التوجيه
  • ليس عنوانًا قابلاً للتوجيه
  • تحتوي دائمًا على بادئة fe80::/16

معرّف EID المحلي (ML-EID)

معرّف EID يحدد واجهة Thread، بصرف النظر عن طوبولوجيا الشبكة. يُستخدم للوصول إلى واجهة Thread ضمن قسم Thread نفسه. ويُعرف أيضًا باسم "العنوان المحلي الفريد" (ULA).
مثالfde5:8dba:82e1:1:416:993c:8399:35ab
معرّف IIDعشوائي، يتم اختياره بعد اكتمال التفويض
النطاقالشبكة المحلية المتداخلة
التفاصيل
  • عدم التغيير مع تغيّر المخطط الزمني
  • يجب أن يتم استخدامها بواسطة التطبيقات
  • يحتوي دائمًا على بادئة fd00::/8

محدد المسار (RLOC)

لتحديد واجهة سلسلة محادثات، استنادًا إلى موقعها في طوبولوجيا الشبكة.
مثالfde5:8dba:82e1:1::ff:fe00:1001
معرّف IID0000:00ff:fe00:RLOC16
النطاقالشبكة المحلية المتداخلة
التفاصيل
  • يتم إنشاؤه بعد اتصال جهاز بشبكة
  • لعرض مخططات بيانات IPv6 داخل شبكة Thread
  • التغييرات مع تغيُّر المخطط الزمني
  • التطبيقات التي لا تستخدمها عادةً

محدِّد مواقع Anycast (ALOC)

لتحديد واجهة سلسلة محادثات من خلال البحث عن RLOC، عندما لا تكون الدالة RLOC لوجهة معروفة.
مثالfde5:8dba:82e1:1::ff:fe00:fc01
معرّف IID0000:00ff:fe00:fcXX
النطاقالشبكة المحلية المتداخلة
التفاصيل
  • fcXX = وجهة ALOC، والتي تبحث عن RLOC المناسب
  • التطبيقات التي لا تستخدمها عادةً

عنوان Unicast العالمي (GUA)

معرّف EID يحدّد واجهة Thread على نطاق عام، بخلاف شبكة Thread.
مثال2000::54db:881c:3845:57f4
معرّف IID
  • SLAAC — تم تعيينه بشكل عشوائي من قبل الجهاز نفسه
  • DHCP — مُعيَّن بواسطة خادم DHCPv6
  • يدوي — يتم التعيين بواسطة طبقة التطبيق
النطاقعالمي
التفاصيل
  • عنوان IPv6 عام
  • تحتوي دائمًا على بادئة 2000::/3

بث متعدد

يتم استخدام البث المتعدد لنقل المعلومات إلى أجهزة متعددة في آنٍ واحد. في شبكة Thread، يتم حجز عناوين محددة للاستخدام في البث المتعدد مع مجموعات مختلفة من الأجهزة، وذلك بناءً على النطاق.

عنوان IPv6 النطاق تم التسليم إلى
ff02::1 الرابط المحلي جميع أجهزة FTD وMED
ff02::2 الرابط المحلي جميع FTD
ff03::1 الشبكة المحلية المتداخلة جميع أجهزة FTD وMED
ff03::2 الشبكة المحلية المتداخلة جميع FTD

قد تلاحظ أن أجهزة Sleepy End (SEDs) غير مضمنة كمُستلِم في جدول البث المتعدد أعلاه. بدلاً من ذلك، تُحدِّد Thread عنوان الإرسال المتعدد في IPv6 المستند إلى النطاق المحلي ونطاقًا محليًا يستند إلى بادئة تستخدم عُقد Thread، بما في ذلك SEDs. تختلف عناوين البث المتعدد هذه حسب شبكة Thread، لأنه يستند إلى بادئة Micast-Local Mesh (يمكنك الاطّلاع على RFC 3306 للحصول على مزيد من التفاصيل حول عناوين IPv6 المستندة إلى بادئة unicast).

النطاقات العشوائية بخلاف تلك المدرجة من قبل متاحة أيضًا لأجهزة سلسلة المحادثات.

أنيكاست

يتم استخدام Anycast لتوجيه حركة المرور إلى واجهة Thread في حالة عدم معرفة RLOC لوجهة. يحدد محدد مواقع Anycast (ALOC) موقع الواجهات المتعددة ضمن قسم Thread. تكون آخر 16 بت من ALOC، التي تسمى ALOC16، بتنسيق 0xfcXX، الذي يمثل نوع ALOC.

على سبيل المثال، قيمة ALOC16 بين 0xfc01 و0xfc0f محجوزة لوكلاء DHCPv6. إذا كان وكيل RLOC المحدد لـ DHCPv6 غير معروف (ربما بسبب تغير مخطط الشبكة)، يمكن إرسال رسالة إلى وكيل DHCPv6 ALOC للحصول على RLOC.

تحدِّد سلسلة المحادثات قيم ALOC16 التالية:

ALOC16 النوع
0xfc00 صاحب الصدارة
0xfc010xfc0f وكيل DHCPv6
0xfc100xfc2f خدمة
0xfc300xfc37 المفوّض
0xfc400xfc4e وكيل اكتشاف الجيران
0xfc380xfc3f
0xfc4f0xfcff
تم الحجز

ملخّص

ما تعلمته:

  • تتألف شبكة Thread من ثلاثة نطاقات: Link-Local وMesh-Local وGlobal
  • يتضمّن جهاز Thread عدة عناوين IPv6 unicast
    • يمثل RLOC موقع الجهاز في شبكة Thread
    • ويكون معرّف ML-EID فريدًا لجهاز Thread ضمن القسم ويجب استخدامه بواسطة التطبيقات
  • تستخدم سلسلة المحادثات البث المتعدد لإعادة توجيه البيانات إلى مجموعات من العُقد وأجهزة التوجيه
  • تستخدم سلسلة المحادثات Anycast عندما تكون RLOC لوجهة غير معروفة

لمعرفة المزيد عن عناوين IPv6 في Thread، يُرجى الاطّلاع على الفقرتين 5.2 و5.3 من مواصفات سلسلة المحادثات.

تحقق من فهمك

ما النطاقات الثلاثة المستخدَمة لعناوين unicast في شبكة Thread؟
الخصوصية
إجابة غير صحيحة.
واجهة محلية
إجابة غير صحيحة.
الرابط المحلي
إجابتك صحيحة.
موقع محلي
إجابة غير صحيحة.
الشبكة المحلية المتداخلة
إجابتك صحيحة.
عالمي
إجابتك صحيحة.
ما معنى أن يكون رقم تعريف الطفل 0 هو 0؟
الجهاز هو طفل.
إجابة غير صحيحة.
الجهاز هو REED.
إجابتك غير صحيحة.
الجهاز جهاز توجيه.
إجابتك صحيحة. يتضمن جهاز التوجيه دائمًا رقم تعريف فرعيًا بقيمة 0.
تتلقّى الكاميرا، وهي عقدة على شبكة Thread، عنصرَي RLOC16 وRLOC جديدَين. أي من الأحداث التالية قد يكون السبب في ذلك؟
نزَّل أحد الأشخاص صورًا من الكاميرا عن بُعد.
إجابة غير صحيحة. لن يكون لهذا الحدث أي تأثير على شبكة Thread.
غادر جهاز توجيه الشبكة.
إجابتك صحيحة. عندما ينقطع جهاز توجيه عن الشبكة، تتغير طبيعة الشبكة، ما قد يؤدي إلى الترويج للجهاز من خلال جهاز توجيه والحصول على RLOC جديد.
دخلت الكاميرا في وضع السكون، مما أدى إلى تغيير طبيعة الشبكة.
إجابة غير صحيحة. ولن يؤدي الدخول في وضع السكون بالضرورة إلى تلقي الجهاز عنوانًا جديدًا للشبكة.
اشتراك جهاز على شبكة Thread في عنوان البث المتعدد في ff03::2. ما الذي يخبرنا به هذا عن الجهاز؟
إنه جهاز ذي حد أدنى (MED).
إجابة غير صحيحة.
وهو جهاز كامل التطور (FED).
إجابة غير صحيحة. (تلميح: قد يكون برنامج الاتصال السريع في حالات الطوارئ (FED) أو لا يكون كذلك).
إنّه جهاز ذات سلسلة محادثات صغيرة (MTD).
إجابة غير صحيحة.
وهو عبارة عن جهاز خيوط كاملة (FTD).
إجابتك صحيحة. تشترك الأجهزة التي تتضمن سلاسل محادثات كاملة فقط في عنوان البث المتعدد في ff03::2. ويتم إجراء ذلك على نطاق الشبكة المتداخلة المحلية.
ما نوع التوجيه والتوجيه الذي تستخدمه سلسلة المحادثات لإعادة توجيه البيانات إلى مجموعات من العُقد وأجهزة التوجيه؟
يونيكاست
إجابة غير صحيحة.
أنيكاست
إجابة غير صحيحة.
بث متعدد
إجابتك صحيحة.
رسالة بث
إجابة غير صحيحة.
ما نوع التوجيه والتوجيه الذي يستخدمه جهاز Thread عندما يكون RLOC لمستلم الرسالة المقصود غير معروف؟
يونيكاست
إجابة غير صحيحة.
أنيكاست
إجابتك صحيحة. يسمح Anycast للجهاز بالوصول إلى عقدة لا تعرف RLOC فيها من خلال مخاطبة ALOC للجهاز.
بث متعدد
إجابة غير صحيحة.
رسالة بث
إجابة غير صحيحة.