[KW41Z] 关于Thread协议若干问题

2019-03-26 07:49发布

在学习Thread过程中会碰到很多问题, 由于资料相对封闭, 而且使用的人较少导致有些问题很难通过文档(Thread API函数的说明基本就一句话)来找出来。如果有Thread的wiki就好了, 能让新手少走很多弯路。 现在还没解决的问题如下:
1. 各种地址的含义
Thread一个设备有好多个地址(LL64, ML64, ML16...), 其中比较实用的应该是16位地址(ML16)。 16位地址以ff:fe00:XXXX结尾, XXXX,其中XXXX就是16位地址, 问题是ML16的前缀比如”fdb6:ffe5:2bd3:ad8b::“代表什么?
$ ifconfig

Interface 0: 6LoWPAN
        Link local address (LL64): fe80::4c08:6123:7e73:4e9
        Mesh local address (ML64): fdb6:ffe5:2bd3:ad8b:2ca9:df49:86a9:99d2
        Mesh local address (ML16): fdb6:ffe5:2bd3:ad8b::ff:fe00:400
        Link local all Thread Nodes(MCast):  ff32:40:fdb6:ffe5:2bd3:ad8b::1
        Realm local all Thread Nodes(MCast): ff33:40:fdb6:ffe5:2bd3:ad8b::1
$  Mesh local address (ML16): fdb6:ffe5:2bd3:ad8b::ff:fe00:400


2. 设备类型发现
Zigbee协议中定义了设备类型, 用户可以查询特定设备的功能, 而Thread则没发现这个功能。
现在问题是Thread有没有一种比较通用的方法来查询特定设备的类型? 比如设备通过实现 “COAP CONN GET ... /DeviceTypeGuid”这种类似的方法来获取设备类型GUID, 然后通过网络查询这个id就可以获取到设备的具体信息了?

3. 多DHCP Server支持
Thread是否支持多个DHCP Server以实现No Single Node Failure? 在active DHCP Server离线的情况下其他后备的Server能够取代其工作? 或者是NXP thread sdk能否支持把DHCP的角 {MOD}转接到HOST上来通过上位机控制? (查看了NXP的代码发现相应的函数实现并未公开。)

此帖出自小平头技术问答
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
13条回答
gogoer
2019-03-27 18:09
1:
Mesh local address (ML16): fdb6:ffe5:2bd3:ad8b::ff:fe00:400   
b6:ffe5:2bd3:ad8b 这个是基于 extend PAN ID 而来
ML64, Mcast 都包含这块地址。

2: Thread 协议本身不包含 APP层的设备类型发现

3: Thread 协议本身不包含DHCP Server, 你看到的 ML16 后面的16位地址不是 DHCP Server 分配的。

一周热门 更多>