跳到主要内容

17. RPL 常量和变量 (RPL Constants and Variables)

以下是 RPL 常量和变量摘要:

BASE_RANK: : 这是可用于协调多个根的虚拟根 Rank. BASE_RANK 的值为 0.

ROOT_RANK: : 这是 DODAG 根的 Rank. ROOT_RANK 的值为 MinHopRankIncrease (由 DODAG 根通告), 使 DAGRank(ROOT_RANK) 为 1.

INFINITE_RANK: : 这是 Rank 的最大常量. INFINITE_RANK 的值为 0xFFFF.

RPL_DEFAULT_INSTANCE: : 这是没有任何覆盖策略的节点由本协议使用的 RPLInstanceID. RPL_DEFAULT_INSTANCE 的值为 0.

DEFAULT_PATH_CONTROL_SIZE: : 这是用于在 DODAG Configuration 选项中配置 PCS 的默认值, 它决定 Transit Information 选项中 Path Control 字段的有效位数量. DEFAULT_PATH_CONTROL_SIZE 的值为 0. 该配置对应最简单情况, 将扇出限制为 1, 并限制节点只能向一个父节点发送 DAO 消息.

DEFAULT_DIO_INTERVAL_MIN: : 这是用于配置 DIO Trickle 计时器 Imin 的默认值. DEFAULT_DIO_INTERVAL_MIN 的值为 3. 该配置产生 8 ms 的 Imin.

DEFAULT_DIO_INTERVAL_DOUBLINGS: : 这是用于配置 DIO Trickle 计时器 Imax 的默认值. DEFAULT_DIO_INTERVAL_DOUBLINGS 的值为 20. 该配置产生 2.3 小时的最大间隔.

DEFAULT_DIO_REDUNDANCY_CONSTANT: : 这是用于配置 DIO Trickle 计时器 k 的默认值. DEFAULT_DIO_REDUNDANCY_CONSTANT 的值为 10. 该配置是 Trickle 抑制机制的保守值.

DEFAULT_MIN_HOP_RANK_INCREASE: : 这是 MinHopRankIncrease 的默认值. DEFAULT_MIN_HOP_RANK_INCREASE 的值为 256. 该配置产生 Rank 的 8 位宽整数部分.

DEFAULT_DAO_DELAY: : 这是 DelayDAO Timer 的默认值. DEFAULT_DAO_DELAY 的值为 1 秒. 见第 9.5 节.

DIO Timer: : 节点所属的每个 DODAG 一个实例. 到期会触发 DIO 消息传输. 它是一个可变间隔位于 [0, DIOIntervalMin..2^DIOIntervalDoublings] 的 Trickle 计时器. 见第 8.3.1 节.

DAG Version Increment Timer: : 对节点作为 DODAG 根运行的每个 DODAG, 最多一个实例. 并非所有实现都支持它. 到期会触发 DODAGVersionNumber 递增, 导致发送新一系列更新后的 DIO 消息. 间隔应根据 DODAG 传播时间并根据应用需求适当选择 (例如响应时间与开销之间的权衡).

DelayDAO Timer: : 每个 DODAG 中每个 DAO parent (被选择接收目的地通告的 DODAG parent 子集) 最多一个计时器. 到期会触发向该 DAO parent 发送 DAO 消息. 见第 9.5 节.

RemoveTimer: : 每个邻居的每个 DAO 条目最多一个计时器 (即那些已向此节点作为 DODAG parent 提供 DAO 消息的邻居). 到期可能触发 No-Path 通告, 或者如果没有 DAO parent, 则立即释放该 DAO 条目.