AODV 序列号和环路预防

网络工程 无线的 路由 路由器 协议理论 临时无线
2021-07-03 23:06:02

我正在学习 AODV(ad-hoc 按需距离向量)协议。我看到一个“序列号”,其值类似于“A 46”;但是,我不明白为什么增加这个序列号可以防止循环。为什么这有帮助?

2个回答

Mike 建议阅读RFC 3561 - Ad hoc On-Demand Distance Vector (AODV) Routing应该可以解决问题;同时,我会继续为您总结。

无线(路由)协议,例如 AODV 协议,使用序列号的方式与有线协议不同。AODV 维护一个目标 IP 地址表以及最后一个序列号。这样,如果它在更新中收到相同的路由序列号,它会检测到重复并丢弃更新;因此,避免了潜在的循环。此外,AODV 不会转发/处理它以前见过的更新数据包。发送节点(基于他们发送路由请求、路由回复的任何消息)维护自己的序列号并在发送新数据包之前递增它。

AODV 并不是唯一一个依靠序列号来避免循环的方法;RFC 4728 - 动态源路由 (DSR)也取决于序列号。另一种使用序列号来避免循环的无线(多播)路由协议是IETF 草案——用于移动自组织网络的自适应需求驱动多播路由协议(ADMR)

我们应该注意到无线网络中的第 2 层(通常)不使用生成树协议 (STP) 来防止环路。

Perkins 在他关于 AODV 的原始论文中,实际上给出了序列号如何防止循环的数学证明。有关详细信息,请参阅 A. Ad-hoc On-Demand Distance Vector Routing 中无循环特性的证明