Thread Network Data حاوی اطلاعاتی درباره Border Routers و سایر سرورهای موجود در شبکه Thread است. مسیریابهای مرزی و دستگاههای ارائهدهنده خدمات، اطلاعات خود را در لیدر ثبت میکنند. Leader این اطلاعات را در دادههای شبکه Thread جمعآوری و ساختار میدهد و اطلاعات را در تمام دستگاههای شبکه Thread توزیع میکند.
مسیریاب های مرزی ممکن است پیشوندهای اختصاص داده شده به شبکه Thread و پیشوندهایی را که مسیرهایی را برای آنها ارائه می دهند، ثبت کنند. خدمات ممکن است هر گونه اطلاعات مربوط به خود سرویس را ثبت کند.
اطلاعات سرویس و روتر مرزی می تواند پایدار یا موقت باشد. داده های شبکه Thread پایدار در همه دستگاه ها، از جمله دستگاه های Sleepy End Devices (SED) توزیع می شود. داده های موقت شبکه به همه گره ها به جز SED ها توزیع می شود.
دستورات داده های شبکه
برای لیستی از دستورات netdata
، help
را تایپ کنید:
netdata help
help
full
length
maxlength
publish
register
show
steeringdata
unpublish
Done
دستورات full
دستورات full
وضعیت پرچم را گزارش میکنند یا ردیابی پرچم را مجدداً تنظیم میکنند که آیا فراخوانی «تمام دادههای خالص» فراخوانی شده است.
این دستور به OPENTHREAD_CONFIG_BORDER_ROUTER_SIGNAL_NETWORK_DATA_FULL نیاز دارد.
دستورات length
و maxlength
دستور length
طول فعلی Thread Network Data را که به صورت تعداد بایت گزارش می شود را دریافت می کند. دستورات maxlength
حداکثر طول مشاهده شده را دریافت می کند یا حداکثر طول ردیابی شده را بازنشانی می کند.
دستورات publish
ناشر دادههای شبکه مکانیسمهایی را برای محدود کردن تعداد ورودیهای مشابه سرویس و پیشوند (پیشوند روی مش یا مسیر خارجی) در دادههای شبکه موضوعی با نظارت بر دادههای شبکه و مدیریت زمان افزودن یا حذف ورودیها فراهم میکند.
ناشر به OPENTHREAD_CONFIG_NETDATA_PUBLISHER_ENABLE
نیاز دارد.
شبکه را تشکیل داده و پیشوند را پیکربندی کنید
ایجاد پیکربندی شبکه جدید
dataset init new
Doneنمایش پیکربندی شبکه
dataset
Active Timestamp: 1 Channel: 13 Channel Mask: 0x07fff800 Ext PAN ID: d63e8e3e495ebbc3 Mesh Local Prefix: fd3d:b50b:f96d:722d::/64 Network Key: dfd34f0f05cad978ec4e32b0413038ff Network Name: OpenThread-8f28 PAN ID: 0x8f28 PSKc: c23a76e98f1a6483639b1ac1271e2e27 Security Policy: 0, onrcb Doneمجموعه داده جدید را به مجموعه داده عملیاتی فعال در ذخیره سازی غیر فرار متعهد کنید.
dataset commit active
Doneرابط Thread را فعال کنید
ifconfig up
Donethread start
Doneنشانی های IPv6 اختصاص داده شده به رابط Thread را نمایش دهید.
ipaddr
fd3d:b50b:f96d:722d:0:ff:fe00:fc00 fd3d:b50b:f96d:722d:0:ff:fe00:dc00 fd3d:b50b:f96d:722d:393c:462d:e8d2:db32 fe80:0:0:0:a40b:197f:593d:ca61 Doneیک پیشوند IPv6 اختصاص داده شده به شبکه Thread را ثبت کنید.
prefix add fd00:dead:beef:cafe::/64 paros med
Donenetdata register
Doneنمایش داده های شبکه موضوعی
netdata show
Prefixes: fd00:dead:beef:cafe::/64 paros med dc00 Routes: fd49:7770:7fc5:0::/64 s med 4000 Services: 44970 5d c000 s 4000 44970 01 9a04b000000e10 s 4000 Doneپیشوندها و مسیرها شامل نگاشت آرگومان و مقدار RLOC هستند.
سوابق سرویس شامل مقادیر otServiceConfig ، از جمله
mEnterpriseNumber
،mServiceData
،otServerConfig::mServerData
، وs
برای نشان دادنotServerConfig::mStable
. RLOC نیز به انتهای رکورد اضافه شده است.نمایش طول فعلی، به تعداد بایت، داده شبکه موضوعی پارتیشن.
netdata length
23 Doneنشانی های IPv6 اختصاص داده شده به رابط Thread، از جمله پیشوند اضافه شده را نمایش دهید.
ipaddr
fd00:dead:beef:cafe:4da8:5234:4aa2:4cfa fd3d:b50b:f96d:722d:0:ff:fe00:fc00 fd3d:b50b:f96d:722d:0:ff:fe00:dc00 fd3d:b50b:f96d:722d:393c:462d:e8d2:db32 fe80:0:0:0:a40b:197f:593d:ca61 Done
به شبکه موجود متصل شود
فقط کلید شبکه برای اتصال دستگاه به شبکه Thread لازم است.
در حالی که نیازی نیست، مشخص کردن کانال از نیاز به جستجو در چندین کانال جلوگیری می کند و هم زمان تاخیر و هم کارایی فرآیند پیوست را بهبود می بخشد.
پس از اتصال موفقیت آمیز دستگاه به شبکه Thread، دستگاه مجموعه داده عملیاتی کامل را بازیابی می کند.
یک مجموعه داده عملیاتی جزئی ایجاد کنید.
dataset networkkey dfd34f0f05cad978ec4e32b0413038ff
Donedataset commit active
Doneرابط Thread را فعال کنید.
ifconfig up
Donethread start
Doneپس از اتصال به شبکه موجود، Thread Network Data را نمایش دهید.
netdata show
Prefixes: fd00:dead:beef:cafe::/64 paros med dc00 Routes: Services: Doneنمایش طول فعلی، به تعداد بایت، داده شبکه موضوعی پارتیشن.
netdata length
23 Doneنشانی های IPv6 اختصاص داده شده به رابط Thread را نمایش دهید.
ipaddr
fd00:dead:beef:cafe:4da8:5234:4aa2:4cfa fd3d:b50b:f96d:722d:0:ff:fe00:fc00 fd3d:b50b:f96d:722d:0:ff:fe00:dc00 fd3d:b50b:f96d:722d:393c:462d:e8d2:db32 fe80:0:0:0:a40b:197f:593d:ca61 Done
اشکال زدایی و عیب یابی
داده شبکه دارای حجم محدود 254 بایت است. اگر مسیریابهای مرزی مدخلهایی (مثلاً پیشوندها، مسیرها یا ورودیهای سرویس) را به دادههای شبکه اضافه کنند، میتواند پر شود. هنگامی که این اتفاق می افتد، درخواست های جدید از یک مسیریاب مرزی برای افزودن موارد جدید توسط رهبر رد یا نادیده گرفته می شود. رهبر لزوماً رد شدن را به مسیریاب مرزی نشان نمی دهد، بنابراین مسیریاب مرزی ممکن است بلافاصله متوجه نشود که داده های شبکه در حال پر شدن است. با این حال، روشی برای تشخیص پر شدن داده های شبکه وجود دارد.
روش تشخیص، که هم در مسیریابهای مرزی و هم بر روی لیدر پیادهسازی شده است، از مکانیزم Callback API استفاده میکند و به کاربران این امکان را میدهد که در صورت پر شدن دادههای شبکه مطلع شوند. پاسخ تماس را می توان برای انجام اقداماتی مانند حذف پیشوندهای قدیمی یا ورودی های سرویس استفاده کرد. دستورات netdata full
برای پرچمی استفاده میشود که ردیابی میکند که آیا فراخوانی "net data full" فراخوانی شده است یا خیر. این دستورات می توانند وضعیت پرچم را گزارش کنند یا آن را بازنشانی کنند.
برای موارد استفاده معمول از Thread، بعید است که داده های شبکه کامل شوند، حتی در سناریویی که تعداد زیادی روتر مرزی وجود دارد و همه آنها پیشوندهای مسیر را اضافه می کنند.
از نظر فنی امکان پر شدن داده های شبکه وجود دارد، اما این اغلب به دلیل پیکربندی نادرست یا مشکل در مسیریاب مرزی است. دستورات netdata length
و netdata maxlength
می توانند به رفع اشکال کامل خطاهای Network Data کمک کنند. length
طول فعلی داده های شبکه را دریافت می کند که به صورت بایت گزارش می شود و maxlength
حداکثر طول مشاهده شده را دریافت می کند و همچنین می تواند حداکثر طول ردیابی شده را بازنشانی کند.