前面我们介绍了一部分Ad Hoc路由协议的内容,现在我们再来进行一下补充。重点在AODV路由协议的相关解释。希望对大家有所帮助。按需距离向量协议(AODV,Ad HocOn-Demand Distance Vector)。AODV是为具有几十个到数千个移动节点的MANET网络设计的。AODV路由协议中有三种类型的消息控制帧:路由请求RREQ,路由应答RREP和路由错误RRER。AODV主要包含路由发现、路由维护和邻居管理等过程。
当源节点需要发送数据而又没有到目的节点的有效路由时,就会启动一个路由发现过程:向网络广播一个路由请求分组(RREQ),当收到请求的中间节点或目的节点有一条足够新的路由到达目的地时,中间节点或者目的节点以单播的方式向源节点返回一个路由应答分组(RREP),源节点收到该RREP后则开始向对应目的节点发送数据。
在数据传输过程中,当中间节点检测到一条正在传输数据的活动路由的下一跳链路断开或者节点收到去往某个目的地节点的数据报文,而节点没有到该目的地节点的有效路由时,中间节点向源节点单播或多播路由错误消息RERR,源节点收到RERR后就知道存在路由错误,并根据RERR中指示的不可到达目的地重新寻找路由。
AODV通过周期性广播Hello报文来监视链路连通性。Hello包的生存时间TTL值为1,只能在相邻节点间传播。一个节点收到一个Hello包就可以新建一个邻居条目或者知道一个邻居节点与自己依然保持连接。如果在一定时间内收不到一个邻居节点的Hello包,则认为该邻居节点与自己不再连接,以这个节点为下一跳的路由都不能再用来传送数据,因此将这些路由设置为无效状态。
***传输速率的移动Ad Hoc路由协议
AODV协议和OLSR协议都没有考虑各条链路的传输速率的差别,使用的关于路径的评价标准是路径的跳数。路由协议只是尽力而为地传输数据分组,没有考虑网络中间节点的拥塞情况和无线链路的实时状态。
由于无线通信的非对称性以及MAC层机制多速率机制的影响,使用跳数的路由度量往往不能构造一条性能良好的路径。节点AB之间的距离能承受1Mbps的传输速率,AC和CB之间分别存在着5Mbps的链路,这样在最小跳数的规则下,应该选择A-B作为***路径,这条路径的***速率也不会超过1Mbps,而实际上路径A-C-B由两条高速而且误码率低的路径组成,通常它的速率要大于1Mbps。
也就是由长距离链路组成的路由可以用较少的跳数到达目的节点,但是链路只能支持低速率通信,较长的实际距离会增加路径的维护开销,降低服务质量,并且路径更容易断裂;而由短距离链路组成的路由需要更多跳才能到达目的节点,但是链路能够支持高速率进行通信。因此在多速率环境中无论是表驱动路由协议还是按需路由协议选择的路由路径会导致出现多跳低速的路径,因此对网络的吞吐量造成瓶颈。
结论
本文介绍了移动自组网的协议类型,分析了典型的表驱动路由协议OLSR和按需驱动路由协议AODV的工作原理,针对AODV协议和OLSR协议都没有考虑各条链路的传输速率的差别,使用的关于路径的评价标准是路径的跳数的问题,本文提出选择数据传输速率高的路径。通过仿真实验证明,采用传输速率高的路径后协议的性能有所改善。