RPL如何在开始时没有数据包(UDP / TCP)的节点之间计算ETX?

时间:2017-08-22 11:15:19

标签: routing wireless contiki

我想知道RPL如何在没有数据包的节点的初始化阶段计算ETX链路度量。谢谢。

1 个答案:

答案 0 :(得分:1)

RPL查看邻居统计模块。模块可能有多种选择

  1. 如果您提供LINK_STATS_CONF_INIT_ETX(stats)宏的自定义定义,它将用于初始化ETX。
  2. 否则(ETX_INIT * ETX_DIVISOR)用作默认值。 ETX_INIT默认定义为2。 ETX_DIVISOR只是Contiki特定的缩放因子,可以避免浮点运算。
  3. 节点通常在发送数据包之前从邻居接收数据包。在那种情况下,RSSI估计是已知的,但ETX是未知的。要从RSSI初始化ETX的初始估计值,请将此行添加到project-conf.h

    #define LINK_STATS_CONF_INIT_ETX(stats) guess_etx_from_rssi(stats) 
    

    通过这种方式,在没有其他信息的情况下,具有强信号的节点将优选用于路由。请查看net/link-stats.c了解详细信息。