جستجوی دوره ای والدین

مشاهده منبع در GitHub

برای اینکه به دستگاه‌های پایانی (ED) در شبکه Thread اجازه دهید به روتر والد بهتری نسبت به روتر فعلی خود سوئیچ کنند - در حالی که هنوز به شبکه متصل هستند - ویژگی جستجوی والد دوره‌ای را فعال کنید.

برای تعیین اینکه آیا روتر والد بهتری برای ED است یا خیر، این ویژگی انواع ویژگی های روتر را بررسی می کند، از جمله:

  • RSSI (نشانگر قدرت سیگنال دریافتی)
  • کیفیت لینک
  • اتصال روتر به روترهای دیگر
  • تعداد فرزندان موجود برای روتر

این تضمین می کند که ED ها به بهترین روتر ممکن متصل می شوند به جای اینکه به روتر با کیفیت لینک یا اتصال ضعیف متصل شوند. این ویژگی به ویژه زمانی مفید است که یک روتر جدید به شبکه Thread موجود اضافه شود.

چگونه کار می کند

  1. ED میانگین مقدار RSSI را برای روتر اصلی فعلی خود، با توجه به بازه بررسی پیکربندی شده ( OPENTHREAD_CONFIG_PARENT_SEARCH_CHECK_INTERVAL ) بررسی می کند.
  2. اگر میانگین مقدار RSSI برای روتر والد فعلی ED کمتر از آستانه پیکربندی شده باشد ( OPENTHREAD_CONFIG_PARENT_SEARCH_RSS_THRESHOLD )، جستجوی والد آغاز می‌شود:
    1. اگر جستجوی والد روتر والد بهتری پیدا کند، ED پیوند Child-Parent فعلی خود را منحل می‌کند و فرآیند MLE Attach را با روتر جدید آغاز می‌کند.
    2. اگر جستجوی والد روتر والد بهتری پیدا نکرد، پیوند Child-Parent موجود باقی می ماند.
  3. پس از تلاش برای جستجوی والد، ED منتظر می‌ماند تا مقدار متوسط ​​RSSI را برای روتر والد فعلی خود مطابق با فاصله زمانی پشتیبان پیکربندی شده بررسی کند ( OPENTHREAD_CONFIG_PARENT_SEARCH_BACKOFF_INTERVAL ). این عقب نشینی بدون توجه به نتیجه جستجوی والد اتفاق می افتد.

توصیه می کنیم ویژگی Inform Previous Parent on Reattach را در ارتباط با این ویژگی فعال کنید.

نحوه فعال کردن

این قابلیت به طور پیشفرض غیر فعال است.

برای فعال کردن جستجوی دوره‌ای والدین، قبل از ساخت OpenThread ، /src/core/config/parent_search.h را در فایل OPENTHREAD_CONFIG_PARENT_SEARCH_ENABLE به‌عنوان 1 تعریف کنید:

#ifndef OPENTHREAD_CONFIG_PARENT_SEARCH_ENABLE
#define OPENTHREAD_CONFIG_PARENT_SEARCH_ENABLE 1
#endif

مولفه های

برای سفارشی کردن این ویژگی از پارامترهای زیر در /src/core/config/parent_search.h استفاده کنید:

مولفه های
OPENTHREAD_CONFIG_PARENT_SEARCH_CHECK_INTERVAL
مقدار پیش فرض
540 ثانیه (9 دقیقه)
شرح
فاصله زمانی را بر حسب ثانیه برای کودک تعیین می کند تا شرایط ماشه را برای انجام جستجوی والدین بررسی کند.
OPENTHREAD_CONFIG_PARENT_SEARCH_BACKOFF_INTERVAL
مقدار پیش فرض
36000 ثانیه (10 ساعت)
شرح
فاصله زمانی عقب‌نشینی را بر حسب ثانیه برای کودک تعیین می‌کند تا پس از شروع جستجوی والدین، جستجوی والدین را انجام ندهد.
OPENTHREAD_CONFIG_PARENT_SEARCH_RSS_THRESHOLD
مقدار پیش فرض
-65
شرح
آستانه RSSI مورد استفاده برای راه اندازی جستجوی والد را مشخص می کند.

API

هیچ API عمومی برای این ویژگی وجود ندارد.

CLI

هیچ دستور CLI مربوط به این ویژگی وجود ندارد.