Thread 網路資料包含邊界路由器和其他伺服器的相關資訊 可以使用 Thread 網路邊界路由器和提供服務的裝置 向領導者註冊自己的資訊。領導人收集並結構 Thread Network Data 中的該資訊,並將資訊 並連線至 Thread 網路中的所有裝置
邊界路由器可以註冊指派給 Thread 網路和前置字串的前置字串 提供路線服務可能會登錄 服務本身
邊界路由器和服務資訊可以是穩定版,也可能是暫時性的。穩定版螺紋 將網路資料分配給所有裝置,包括 Sleepy End 裝置 (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 網路資料目前的長度,並回報
。maxlength
指令會取得觀察到的長度上限,或
重設追蹤的長度上限。
publish
指令
「聯播網資料發布商」提供的機制可限制 Thread 中的服務和前置字串 (On-Mesh 前置字串或外部路徑) 項目 監控網路資料,管理何時要新增或 移除項目。
發布商要求提供 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將新資料集修訂為有效作業資料集 (非揮發性) 如果 30 天內讀取資料不到一次 建議使用 Coldline Storage
dataset commit active
Done啟用 Thread 介面
ifconfig up
Donethread start
Done顯示指派給 Thread 介面的 IPv6 位址。
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註冊指派給 Thread 網路的 IPv6 前置字串,
prefix add fd00:dead:beef:cafe::/64 paros med
Donenetdata register
Done顯示 Thread 網路資料。
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 也會附加到 。顯示分區 Thread 網路的目前長度 (以位元組為單位) 資料。
netdata length
23 Done顯示指派給 Thread 介面的 IPv6 位址,包括 。
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 網路資料。
netdata show
Prefixes: fd00:dead:beef:cafe::/64 paros med dc00 Routes: Services: Done顯示分區 Thread 網路的目前長度 (以位元組為單位) 資料。
netdata length
23 Done顯示指派給 Thread 介面的 IPv6 位址。
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 個位元組。如果邊界路由器持續新增 條目 (例如前置字串、路徑或服務項目) 至網路資料 才能充飽電發生這種情況時,來自邊界路由器的新要求會新增 系統會拒絕或忽略項目。領導者沒有 務必向邊界路由器發出拒絕信號,以便邊界路由器 不會立即意識到「網路資料」即將用盡。不過 方法,用於偵測網路資料已滿的情況。
同時在邊界路由器和主要路由器上實施的偵測方法,會使用
回呼 API 機制,並允許使用者在網路資料
。回呼可用來採取行動,例如移除過時的前置字串
或服務項目netdata full
指令適用於
追蹤「網路資料已滿」回呼。這些指令
可以回報標記狀態或重設標記的狀態
在 Thread 一般用途中,網路資料不太可能會取得 即使遇到許多邊界路由器, 新增路徑前置字串
嚴格說來,「網路資料」有可能取得完整功能,不過這通常
原因:設定錯誤或邊界路由器發生問題。netdata length
和 netdata maxlength
指令可協助您對「網路資料」的完整錯誤進行偵錯。
length
會取得「網路資料」目前的長度,以位元組和位元組為單位
maxlength
會取得觀察到的最大長度,也可重設追蹤的追蹤長度
長度上限。