高效的AdHoc网络AODV改进路由协议研究
2015-10-19陆彩霞
陆彩霞
摘要:Ad Hoc网络是一个自治系统,有临时多跳的特点,目前应用广泛,是当前研究热点之一。因为Ad Hoc网络拓扑结构变化频繁,本文对AODV路由协议进行了改进,研究出R_EAODV路由协议。
关键词:Ad Hoc网络;AODV路由协议;按需距离矢量路由
中图分类号:TP311 文献标识码:A 文章编号:1009-3044(2015)20-0031-02
Study on the Improvement of Ad Hoc Network Routing Protocol AODV Efficient
LU Cai-xia
(Huai'an College of Information Technology, Huaian 223003, China)
Abstract: Ad Hoc network is a multi hop temporary autonomous system, has the characteristics of wide application, at present, is one of the hottest research topics. Because the Ad Hoc network topology changes frequently, this paper presents an improved AODV routing protocol, R_EAODV routing protocol research.
Key words: Ad Hoc network; AODV routing protocol; on-demand distance vector routing
目前,Ad Hoc网络路由协议得到了广泛研究,因Ad Hoc的临时多跳,常用的按需路由协议已无法适应网络拓扑结构频繁变化的特性。所以,Ad Hoc路由协议应当起到及时维护与路径重建的作用。再有,路由协议应当以Ad Hoc网络带宽要求及高误码特性为依据,因此设计出适合Ad Hoc网络的路由协议十分必要。
1 AODV路由协议
AODV路由协议由路由发现及路由维护两种机制组成,利用DSDV计算和DSR计算,采取序列号机制,对网络中环路进行查看。运用洪泛法向邻节点传送RREQ路由进行分组请求。AODV路由协议被MANET工作组看作第一个RFC标准的路由协议。
1.1 AODV路由发现
在实际通信过程中,AODV对路由表中路由进行查看,如果有没过期且能到的目标节点的路由就直接转发,否则就开始路由发现过程。AODV路由协议通过中间节点创建和维护路由表,源节点向邻节点广播RREQ,邻节点接收后查看接收记录,若有过接受记录则丢弃,若没有则查看是否目标节点,是的话跳数加1并继续转发。邻节点对给节点发送多个RREQ副本,节点分析RREQ后找出所需的节点信息。目标节点受到来自源点的消息后,就会进行应答,创建一条路径。
1.2 AODV路由维护
AODV路由协议以向邻节点广播传送HELLO消息的方式维护链路。具体流程为:节点定期向邻节点发送HELLO消息,超时重传寄存器会设定一定时间,在这个时间内若未收到消息则判断此链路已断开。修复链路后,先给中断节点发送一个RREQ,如果不可到达的节点受到了RREQ,则会进行应答,发送RREP,不可达中间节点进行路由重建。若未收到RREQ,就认为链路没有修好,节点向全部邻节点发送RERR消息,是通过RERR由中断节点IP及邻居节点IP进行广播,以此通知其他节点链路断开。
2 AODV路由协议改进
AODV利用洪泛广播RREQ分组形式寻找路由。但是如果Ad Hoc网络中所有有传送任务的节点都以这种方式寻找目标节点,就会导致网络堵塞及分组遗失等结果,使网络性能受到严重影响。为了改善网络性能,本文对AODV进行改进,提出R_EAODV。
R_EAODV的改进方案是以对各节点剩余能量进行查看的途径来修复了链路。如果节点剩余能量小到一定程度,不需要报告源节点,再重选路由,而是直接在该节点修复链路,从而能够在链路中断后快速发现可以传输数据的路由,不仅节约时间,还节省了重新找路由的开销,因此R_EAODV适用于较高移动性的网络。
根据上述方案,R_EAODV具体如下。基于能量消耗模型,如果节点不在数据传输过程中,就不消耗能量。在该模型中,假设节点在信息传输中能量消耗为Eelec,且与传输距离d的平方成正比。
ETx(k,d)=(Eelec+Eamp×d2)×k (1)
ERx ( k )=Eelec×k (2)
式中,k为发送的比特数,ETx为节点发送数据的能量消耗,ERx为节点接收数据的能量消耗。
另外,节点能量消耗与接收转发的分组数量成正比,通过上述公式可以计算出节点发送k位元需要的能量:
ETotal(l,k,d)=Eelec×l+(Eelec+Eamp×d2)×k (3)
R_EAODV在原来的RREQ路由请求分组中扩展了两个字段,把节点剩余能量分成两个级别:节点剩余能量值大于20%为Normal级别,节点剩余能量小于10%为Danger级别。
2.1 R_EAODV路由发现算法
在通信过程中,R_EAODV要先查看路由表,查询下一节点是否目标节点以及是否过期。若不是就启动路由发现。在源节点进行路由发现,节点收到RREQ时,首先查看自身是否目标节点,如果是就不管节点处于哪个能量等级,必须返回RREP,正常工作;如果节点是中间节点,先用能量模型断定节点能量状态,若为Normal,则依据AODV协议进行转发;若为Danger,则拒绝服务,并且将此节点作为链路中断节点要求进行修复。
2.2 R_EAODV路由修复算法
AODV协议的节点检测网络连通性是依靠广播发送HELLO消息进行。若发现链路中断,则给上游发送RERR,向源节点报告链路中断,开始路由发现程序。以增加能量值Es的方式扩充路由表。将Es分成两个阶段:节点剩余能量值大于20%为Normal级别,节点剩余能量小于10%为Danger级别。节点剩余能量处于Danger值,将Es设为2,标为红色。节点剩余能量处于Normal与Danger之间,Es设为1,标为黄色。节点剩余能量充足,Es设为0,标为绿色。R_EAODV算法描述:1)当发现链路中断或即将中断的节点时,在NAT中找出能够代替的邻节点。2)当找到多个代替节点时,选其中时间戳最高的节点。若时间戳相同,选的节点应是剩余能量较高的。3)选好代替节点后,中断节点数据包会将路由信息转移到代替节点,使路由恢复。
3 仿真与分析
利用Windows XP系统在NS2.34仿真环境下,对R_EAODV进行测试,用以评价协议改进后的性能。
3.1 分组传送效率
端到端分组传送率的值为成功接收的分组数和传输的总分组数的比。当移动速率增大时,链路出现中断的可能性提高,数据交付成功的概率降低。R_EAODV找出剩余能量最高的节点为代替节点,修复链路,提高了修复效率。如图1。
图1
3.2 端到端时延
节点移动速度越大,端到端时延就会越大,但改进的R_EAODV协议端到端时延小于AODV。这是由于路由协议改进后剩余能量值增加,查看链路有没有中断只需依据节点的状态,避免了因修复增加的时延。如图2。
图2
3.3 路由开销
路由开销指的是网络的拥堵情况和节点的能量状态。它的值为传输的总分组数比上接受的分组数的值。移动速度越大,R_EAODV路由开销越小。这是由于R_EAODV发送路由请求RREQ控制包比AODV小,使主路由能够在失效的状态下,马上利用路由修复,路由效率得到有效提高,链路修复的次数也降低,使网络的路由开销大大减少。如图3。
图3
4 总结
Ad Hoc网络应用较广泛,是目前的热门研究内容。本文对Ad Hoc网络的AODV路由协议在网络拓扑结构变化的情况下具有的性能上的不足进行了改进,提出了R_EAODV。R_EAODV路由协议利用查询剩余能量值的方法实现修复过程,避免频繁路由重建。仿真结果可以发现R_EAODV改善了分组传送有效率、平均端到端时延以及路由开销等各种性能,尤其是可以在节点能量缺乏时进行链路修复,从而发现新路由,在拓扑结构变化较快的网络环境中非常适用。
参考文献:
[1] 王忠恒, 张曦煌. 移动Ad Hoc网络AODV路由协议的改进[J].计算机应用,2010(2).
[2] 陈哲愚, 张建, 陈燕. 一种基于节点移动性的AODV改进协议[J].微电子学与计算机.2010(9).
[3] 沈奔, 秦军, 万丽. 无线Ad Hoc网络中AODV路由算法的研究与改进[J].计算机技术与发展,2011(3).
[4] 沈明玉, 杨帆. Ad Hoc网络中改进的能量意识的多径AODV算法研究[J].计算机工程与应用,2011(14).