کشف و تشکیل شبکه، کشف و تشکیل شبکه

مشاهده منبع در گیت‌هاب

شبکه‌های نخی

شبکه‌های نخی توسط سه شناسه منحصر به فرد شناسایی می‌شوند:

  • شناسه شبکه شخصی ۲ بایتی (PAN ID)
  • شناسه شبکه شخصی توسعه‌یافته ۸ بایتی (شناسه XPAN)
  • نام شبکه قابل خواندن توسط انسان

برای مثال، یک شبکه Thread ممکن است شناسه‌های زیر را داشته باشد:

شناسه ارزش
شناسه PAN 0xBEEF
شناسه XPAN 0xBEEF1111CAFE2222
نام شبکه yourThreadCafe
اسکن فعال OT

هنگام ایجاد یک شبکه Thread جدید یا جستجوی یک شبکه موجود برای پیوستن، یک دستگاه Thread یک اسکن فعال برای شبکه‌های 802.15.4 در محدوده رادیویی انجام می‌دهد:

  1. دستگاه یک درخواست Beacon 802.15.4 را در یک کانال خاص پخش می‌کند.
  2. در عوض، هر دستگاه دارای قابلیت توسعه (ECD) در محدوده، یک Beacon پخش می‌کند که حاوی PAN ID شبکه Thread، XPAN ID و نام شبکه آنها است.
  3. دستگاه دو مرحله قبلی را برای هر کانال تکرار می‌کند.

وقتی یک دستگاه Thread تمام شبکه‌های موجود در محدوده را کشف کرد، می‌تواند به یک شبکه موجود متصل شود یا اگر هیچ شبکه‌ای کشف نشد، یک شبکه جدید ایجاد کند.

Thread از پروتکل Mesh Link Establishment (MLE) برای پیکربندی لینک‌ها و انتشار اطلاعات مربوط به شبکه به دستگاه‌های Thread استفاده می‌کند.

در پیکربندی لینک، از MLE برای موارد زیر استفاده می‌شود:

  • پیوندهایی به دستگاه‌های همسایه را کشف کنید
  • کیفیت لینک‌ها به دستگاه‌های همسایه را تعیین کنید
  • ایجاد لینک به دستگاه‌های همسایه
  • پارامترهای لینک (نوع دستگاه، شمارنده فریم، زمان انقضا) را با همتایان مذاکره کنید

MLE انواع اطلاعات زیر را به دستگاه‌هایی که مایل به ایجاد لینک هستند، منتشر می‌کند:

  • داده‌های رهبر (RLOC رهبر، شناسه پارتیشن، وزن پارتیشن)
  • داده‌های شبکه (پیشوندهای روی مش، پیکربندی خودکار آدرس، مسیرهای خاص‌تر)
  • انتشار مسیر

انتشار مسیر در Thread مشابه پروتکل اطلاعات مسیریابی (RIP)، یک پروتکل مسیریابی بردار فاصله، عمل می‌کند.

ایجاد یک شبکه جدید

اگر دستگاه تصمیم به ایجاد یک شبکه جدید بگیرد، کانال کم‌شلوغ‌تر و یک شناسه PAN که توسط شبکه‌های دیگر استفاده نمی‌شود را انتخاب می‌کند، سپس به یک توسعه‌دهنده مش تبدیل می‌شود و خود را به عنوان رهبر انتخاب می‌کند. این دستگاه پیام‌های اعلان MLE را به سایر دستگاه‌های 802.15.4 ارسال می‌کند تا آنها را از وضعیت پیوند خود مطلع کند و به درخواست‌های Beacon توسط سایر دستگاه‌های Thread که اسکن فعال انجام می‌دهند، پاسخ می‌دهد.

به یک شبکه موجود بپیوندید

اگر دستگاه تصمیم به پیوستن به یک شبکه موجود بگیرد، کانال، شناسه PAN، شناسه XPAN و نام شبکه خود را برای مطابقت با شبکه هدف از طریق Thread Commissioning پیکربندی می‌کند، سپس از طریق فرآیند MLE Attach به عنوان یک Child (دستگاه انتهایی) متصل می‌شود. این فرآیند برای پیوندهای Child-Parent استفاده می‌شود.

  1. دستگاه کودک یک درخواست چندپخشی والد را به تمام دستگاه‌های همسایه دارای قابلیت توسعه‌دهنده در شبکه هدف ارسال می‌کند.
  2. تمام توسعه‌دهندگان مش همسایه (و ECDهای آماده به کار، اگر ماسک اسکن درخواست والدین شامل ECDهای آماده به کار باشد) پاسخ‌های والدین را به همراه اطلاعات مربوط به خود ارسال می‌کنند.
  3. کودک یک دستگاه والدین را انتخاب می‌کند و درخواست شناسه کودک را برای آن ارسال می‌کند.
  4. والدین برای تأیید برقراری پیوند، پاسخی با شناسه فرزند ارسال می‌کنند.

۱. درخواست والدین

درخواست والد، یک درخواست چندپخشی از دستگاه متصل است که برای کشف دستگاه‌های همسایه با قابلیت توسعه در شبکه هدف استفاده می‌شود.

درخواست پیوست والدین برای MLE OT
محتوای پیام درخواست والدین
حالت دستگاه اتصال را شرح می‌دهد
چالش به موقع بودن پاسخ والدین را برای جلوگیری از حملات بازپخش آزمایش می‌کند.
ماسک اسکن درخواست را فقط به توسعه‌دهنده‌های مش یا به همه دستگاه‌های دارای قابلیت توسعه‌دهنده محدود می‌کند.

۲. واکنش والدین

پاسخ والد، پاسخی تک‌پخشی به درخواست والد است که اطلاعاتی در مورد دستگاه دارای قابلیت توسعه‌دهنده به دستگاه متصل ارائه می‌دهد.

پاسخ والدین را ضمیمه کنید.
محتوای پیام پاسخ والدین
نسخه نسخه پروتکل نخ
پاسخ کپی از چالش درخواست والدین
شمارنده فریم لینک شمارنده فریم 802.15.4 روی دستگاه دارای قابلیت توسعه
شمارنده قاب MLE شمارنده فریم MLE روی دستگاه با قابلیت توسعه
آدرس منبع RLOC16 دستگاه با قابلیت توسعه
حاشیه لینک کیفیت سیگنال دستگاه توسعه‌دهنده را دریافت کنید
اتصال سطح اتصال دستگاه با قابلیت توسعه را شرح می‌دهد
داده‌های رهبر اطلاعات مربوط به رهبر دستگاه با قابلیت توسعه دهنده
چالش به موقع بودن درخواست شناسه کودک را برای جلوگیری از حملات بازپخش آزمایش می‌کند.

۳. درخواست کارت شناسایی کودک

درخواست شناسه فرزند، یک درخواست تک‌پخشی از دستگاه متصل (فرزند) است که به منظور ایجاد پیوند فرزند-والد به دستگاه توسعه‌دهنده (والد) ارسال می‌شود. اگر درخواست به یک دستگاه توسعه‌دهنده آماده به کار ارسال شود، قبل از پذیرش درخواست، خود را به یک توسعه‌دهنده مش ارتقا می‌دهد .

درخواست ضمیمه کردن شناسه کودک توسط OT MLE
محتوای پیام درخواست شناسه فرزند
نسخه نسخه پروتکل نخ
پاسخ کپی از چالش پاسخ والدین
شمارنده فریم لینک شمارنده فریم ۸۰۲.۱۵.۴ روی کودک
شمارنده قاب MLE شمارنده فریم MLE روی کودک
حالت کودک را توصیف می‌کند
تایم اوت مدت زمان عدم فعالیت قبل از اینکه والد، فرزند را حذف کند
ثبت آدرس (فقط MEDها و SEDها) ثبت آدرس‌های IPv6

۴. پاسخ به شناسه کودک

پاسخ شناسه فرزند، یک پاسخ تک‌پخشی از والد است که برای تأیید برقراری پیوند فرزند-والد به فرزند ارسال می‌شود.

پاسخ ضمیمه کردن شناسه کودک توسط OT MLE
محتوای پیام پاسخ شناسه کودک
آدرس منبع RLOC16 والدین
آدرس16 RLOC16 کودک
داده‌های رهبر اطلاعات مربوط به رهبر والد (RLOC، شناسه پارتیشن، وزن پارتیشن)
داده‌های شبکه اطلاعات مربوط به شبکه Thread (پیشوندهای روی مش، پیکربندی خودکار آدرس، مسیرهای خاص‌تر)
مسیر (فقط ECD های آماده به کار) انتشار مسیر
تایم اوت مدت زمان عدم فعالیت قبل از اینکه والد، فرزند را حذف کند
ثبت آدرس (فقط MEDها و SEDها) تأیید آدرس‌های ثبت‌شده

خلاصه

آنچه آموخته‌اید:

  • یک دستگاه Thread اسکن فعالی را برای شبکه‌های موجود انجام می‌دهد.
  • Thread از Mesh Link Establishment برای پیکربندی لینک‌ها و انتشار اطلاعات مربوط به دستگاه‌های شبکه استفاده می‌کند.
  • پیام‌های تبلیغاتی MLE به سایر دستگاه‌های Thread در مورد شبکه و وضعیت لینک یک دستگاه اطلاع می‌دهند.
  • فرآیند MLE Attach پیوندهای فرزند-والد را برقرار می‌کند.

درک خود را بررسی کنید

کدام شناسه برای شناسایی یک شبکه Thread استفاده نمی‌شود ؟
یک شناسه شبکه شخصی ۲ بایتی (PAN ID).
نادرست. یک شبکه‌ی نخی، تا حدودی، توسط یک شناسه‌ی PAN شناسایی می‌شود.
یک شناسه شبکه شخصی توسعه‌یافته ۸ بایتی (XPAN ID).
نادرست. یک شبکه‌ی نخی، تا حدودی، توسط یک شناسه‌ی XPAN شناسایی می‌شود.
یک نام شبکه قابل خواندن توسط انسان.
نادرست. یک شبکه‌ی نخی، تا حدودی، با یک نام شبکه‌ی قابل خواندن توسط انسان شناسایی می‌شود.
یک SSID 32 کاراکتری.
درست است. برخلاف یک شبکه وای‌فای ۸۰۲.۱۱، شناسه‌های شبکه Thread از SSID استفاده نمی‌کنند.
درخواست والدین برای چه مواردی استفاده می‌شود؟
برای کشف دستگاه‌های همسایه با قابلیت توسعه‌دهنده در شبکه هدف.
صحیح است. درخواست والدین توسط دستگاهی که قصد اتصال به شبکه را دارد، صادر می‌شود.
اعلام اینکه یک دستگاه با قابلیت توسعه‌دهنده، والدین می‌شود.
نادرست. یک توسعه‌دهنده‌ی مش، رابطه‌ی والد-فرزندی را با دستگاه شبکه‌ی دیگری آغاز نمی‌کند. در عوض، یک دستگاه شبکه، یک دستگاه با قابلیت توسعه‌دهنده را به عنوان والد خود انتخاب می‌کند.
درخواست ارتقاء یک دستگاه با قابلیت توسعه‌دهنده به یک توسعه‌دهنده مش.
نادرست.
درخواست والدین از چه نوع آدرسی استفاده می‌کند؟
تک‌پخشی
نادرست.
انیکست
نادرست.
چندپخشی
درست است.
پخش
نادرست.
وقتی یک دستگاه برای اولین بار به شبکه Thread متصل می‌شود، طبقه‌بندی دستگاه آن چیست؟
فرزند (دستگاه پایانی)
درست است. دستگاهی که به یک شبکه Thread می‌پیوندد، همیشه به عنوان یک دستگاه انتهایی در آن شبکه شروع می‌شود.
FTD (دستگاه تمام رزوه)
نادرست.
مش اکستندر
نادرست.