大家好 有个问题请教一下:
使用zstack home1.2.2a 现在有A(协调器)B(路由)C(路由)D(终端节点)4个节点。D与A之间绑定,D的父亲节点是B,每次D给A发送消息后,A会给D回复相应消息。问题是当D的父亲节点变为C以后,D可以把消息发送到A节点,但是D收不到A的消息了,这是为什么呢?
YiKai Chen:
有沒有抓包看看
斌斌有礼:
回复 YiKai Chen:
您好 抓包目前可以确定A是把包发送出来的,但是D是一定没有收到包的。因为在实际应用中不会是这么简单的一个结构,我只是举个简单的例子,不过当D换回原先的父亲节点后就可以收到相应的数据包。
YiKai Chen:
回复 斌斌有礼:
附上你的抓包档來说明你的問題
斌斌有礼:
回复 YiKai Chen:
你好 这是一个终端节点改变父亲地址后,导致数据不能正常接收的抓包文档。
1 主要涉及到的节点有0xF069(终端节点1) 0x8024(路由节点1) 0xF58E(路由节点2)0xB2E3(终端节点2)
2 通常情况下终端节点1和终端节点2父亲节点都是路由节点1,每次终端节点1发消息给终端节点2都可以将消息顺利发送到
3 如果这时终端节点1的父亲节点变为路由节点2,通过抓包文件就可看出,终端节点1要发消息给终端节点2时,先将消息发送到路由节点2,路由节点2收到消息后发送的目的地址为0xFFFF和0x0000,终端节点2不能再像以前一样收到消息。
4 查看路由节点2的邻居列表是有路由节点1的。
5 文件中终端节点2收到的那3条消息不是由终端节点1发出,是由其他节点发出,被他接收到的。
终端节点改变父亲节点.psd
斌斌有礼:
回复 YiKai Chen:
感谢 您的帮助 方便告诉一下为什么加了APS层ACK之后就不会出现改变父亲地址就收不到相应的包的这种现象吗?
YiKai Chen:
回复 斌斌有礼:
APS ack使能後如果沒有收到ack就會開始作route request 修正路由、所以比較不会出现改变父亲地址就收不到相应的包的这种现象吗
斌斌有礼:
回复 YiKai Chen:
谢谢
TI中文支持网