<ph type="x-smartling-placeholder"></ph> 在 GitHub 上查看源代码
Thread 网络数据包含有关边界路由器和其他服务器的信息 Thread 网络中的可用。边界路由器和提供服务的设备 向该负责人注册自己的信息。领导者负责收集和组织数据, 将这些信息包含在 Thread 网络数据中, 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
命令
广告联盟数据发布商提供了一些机制来限制 线程中的服务和前缀(网状网前缀或外部路由)条目 通过监控网络数据并管理何时添加或 移除条目。
发布商要求使用 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将新数据集提交到非易失性中的活跃运营数据集 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
会获取观察到的最大长度,还可以重置跟踪的
最大长度。