使用路由设备建立分布式网络,4个终端加入此网络。请问:
1、如果终端1掉点了,路由设别是否会清除终端1的设备信息,防止占用网络地址。
2、如果会清除,多长时间之后清除和其他相关参数在哪可以设置?
3、是否需要使能对应的预编译选项?还是zstack3.0协议栈默认执行这个清除掉线子节点的功能?
Viki Shi:
1、会。设备入网时会发送EndDeviceTimeout命令,包含超时时间。并且每隔一段时间发送 polling。假如父设备在超时时间内没有收到polling消息,则会删除关联表中的相关节点信息,并给该节点发送leave。
2、父节点设置的超时时间是NWK_END_DEV_TIMEOUT_DEFAULT,如果加入的子设备包含超时时间,则会被覆盖父节点的值。子设备的超时时间由END_DEV_TIMEOUT_VALUE【zglobals.h】定义,
3、默认
user4711142:
回复 Viki Shi:
您好,一个路由器建立网络,7个终端加入网络。
问题是
1、有些终端过一段时间就会掉线,是否可以更改某些参数,来防止或者减小这种可能
YiKai Chen:
回复 user4711142:
终端掉线後会一直試著rejoin,你终端掉线会回連嗎?
user4711142:
回复 YiKai Chen:
1、会重新回连,但是重连随机时间才会成功。
2、我让7个设备休眠后,也会掉线,回连成功的事件就会更长。
请问
1、终端设备检测掉线的状态机是什么?
2、是否可以更改某些参数,来降低终端设备电线的可能性
3、休眠状态下,更改哪些参数,可以加快终端回连的速度
YiKai Chen:
回复 user4711142:
1. 會在zclXXX_ProcessCommissioningStatus觸發case BDB_COMMISSIONING_PARENT_LOST:
2&3. 可以修改下列f8wconfig.cfg參數
/* The maximum number of retries allowed after a transmission failure */
-DAPSC_MAX_FRAME_RETRIES=3/* Max number of times retry looking for the next hop address of a message */
-DNWK_MAX_DATA_RETRIES=2/* Number of times retry to poll parent before indicating loss of synchronization* with parent. Note that larger value will cause longer delay for the child to* rejoin the network.*/
-DMAX_POLL_FAILURE_RETRIES=2
user4711142:
回复 YiKai Chen:
1、END_DEV_TIMEOUT_VALUE是否会影响终端掉线?
2、默认END_DEV_TIMEOUT_VALUE = 8,这个和timeoutValue[15]对应,代表8分钟没接收到poll,路由删除终端节点信息?
/timeoutValue[15]// 10, // 0 10 seconds// 2, // 1 2 minutes// 4, // 2 4 minutes// 8, // 3 8 minutes// 16, // 4 16 minutes// 32, // 5 32 minutes// 64, // 6 64 minutes// 128, // 7 128 minutes// 256, // 8 256 minutes// 512, // 9 512 minutes// 1024, // 10 1024 minutes// 2048, // 11 2048 minutes// 4096, // 12 4096 minutes// 8192, // 13 8192 minutes// 16384 // 14 16384 minutes
YiKai Chen:
回复 user4711142:
END_DEV_TIMEOUT_VALUE = 8对应是timeoutValue[8]也就是256分钟