IMAODV路由协议在高速移动的网络中的应用
传统的AODV(Ad-hoc On-demand Distance Vector)路由协议只以路由跳数为度量,没有考虑到链路稳定情况,因此,无法更好地适应节点高速移动的网络环境。
本文引用地址:http://www.amcfsurvey.com/article/157291.htm为此,提出了一种改进的AODV路由协议,即IMAODV(Improved AODV)路由协议。该协议主要从路由度量值、HELLO消息的发送频率、邻居节点的监听方式等几个方面对AODV进行改进,使之在移动网络中具有较好的扩展性和鲁棒性。仿真结果表明,IMAODV协议能够较好地适应高速移动的网络环境,并在一定程度上降低网络时延和增加网络吞吐量。
移动自组网(MANET)是由一系列移动终端组成的无固定基础设施的多跳自组织网络系统[1],其拓扑结构因为节点电量不足或是移动而变化,所以MANET的路由协议与传统网络的路由协议有着很大的区别。
目前,移动网络中较成熟、较典型的路由协议有DSDV、DSR、AODV、ZRP等[2]。其中,AODV路由协议[3]是一种经典的按需路由协议,它在一定程度上比其他协议有较小的路由开销和更好的扩展性能,但是这种路由协议在网络拓扑频繁变化的情况下,路由断链的几率很大,其网络性能下降很快,无法保证较高要求的服务质量。
针对高速移动自组网的特性,本文提出一种基于AODV的改进路由协议,即IMAODV,它在路由度量值、断链修复策略以及HELLO消息机制上做了修改,使之能有效地降低网络延迟,提高网络的吞吐量。通过NS2仿真可以看到,本文提出的IMAODV路由协议与传统的AODV路由协议相比具有一定的优势:它既能降低中高速移动自组网的网络延时,又能在一定程度上提高网络吞吐量;同时,IMAODV路由协议能够较好地适应无线网络环境,有效提高网络性能。
1 IMAODV路由算法
1.1 AODV
传统自组网路由协议可分为主动路由协议和按需路由协议[4],由于移动自组网存在着动态多变特性,主动路由协议应用在移动网络中有着明显的缺陷,所以实际中经常使用的都是按需路由协议[5]。
AODV是Ad-hoc网络的经典路由协议,它是由路由发现和路由维护组成。路由发现过程如图1所示。而在路由维护中,节点通过周期性地发送HELLO包维持与邻居节点的连接,若一段时间后还未收到邻居节点的HELLO包,则开始链路修复过程。若本节点离目的节点较近,则进行本地修复,发送RREQ进行路由重建,当中间节点有到不可达节点的有效路由或者不可达节点收到此RREQ后就发送一个路由回复RREP给源节点,这样路由就得到了重建。若链路修复失败,则节点向所有的邻居节点广播RERR包,RERR包中的不可达节点列表不仅包括了链路断开的邻居节点,还包括了以此邻居节点作为下一跳的所有目的节点。通过RERR的广播,其他节点便知道链路断开了,当此包传到源节点时,将进行新一轮的路由发现。
1.2 IMAODV路由算法
AODV虽然也能适应动态变化的网络,但是它的机制并不灵活,不能根据网络环境动态调节发送频率,再者路由度量值仅仅考虑了跳数信息,且路由单一,所以不能满足移动环境较为复杂或移动速度较高的网络环境。为了更好地满足移动自组网的服务要求,本文将针对高速移动环境提出的IMAODV,在AODV协议的基础上做出以下改进,以改善网络的吞吐量和平均端到端延迟。
1.2.1节点度量值的选取
以跳数为度量的AODV,容易造成大量数据通过少量节点传输引起网络的阻塞,而导致分组延时过大,吞吐量下降[6]。为了缓解这种情况,本文在路由度量值的选取中将考虑以下因素:
节点移动速度:节点的移动速度越大,链路越不稳定,所以在选择路由时要选移动速度较低的中间节点,避免因节点移动造成断链的路由重启过程,以降低网络开销。
延迟:路由过程中,延迟越小,数据传输才能显示其时效性。
跳数:跳数越少,在某种程度上,所消耗的网络资源越少。
考虑到节点的计算复杂度,路由度量值:
其中hop代表跳数,nodenum表示网络总的节点数,delay代表上一跳节点到本节点的延迟,speed代表本节点的移动速度,max speed代表网络中节点的最大移动速度,w1、w2和w3分别代表权值,其中,w1+w2+w3=1,本协议中w1、w2和w3的值分别取为0.7、0.2和0.1。当metric的值越小,路由链路的稳定度越高,网络延迟越小。
1.2.2 节点功能的改进
传统AODV中源节点只保留一条到目的节点的路由,当主路由上的链路断开时,源节点重新开始进行路由发现几率较大,容易造成过大的路由开销和较大时延。为改善这种情况,本文提出的IMAODV,利用无线通信中广播信道侦听到的相邻节点发给其他节点的RREP信息建立备用路由[7-8],通过增加节点的功能,使之具有监听路由控制信息的能力。
1.2.3 Hello机制的改进
IMAODV中对HELLO消息做两方面改进: (1)是为HELLO消息设置了一个标志。初始化为TURE,节点发送HELLO消息,当节点有路由或数据信息需要广播时,标志设为FALSE。如果HELLO发送周期再次到来,先检查标志,如果为FALSE,则改变状态为TURE后不作任何处理,直至下一个周期的到来,再继续检查标志;当标志为TURE时,则发送HELLO消息,同时每个节点在接收路由包或是数据包的时候,要更新邻居的生存时间,这样可以降低发送HELLO消息的开销。(2)由于节点的移动,会造成网络拓扑的变化,HELLO消息的固定发送肯定不能有效地捕捉到网络拓扑信息,为了保证链路的有效性,本文将根据节点自身的速度来调节HELLO包的发送频率,发送频率与节点的移动速度成正比,流程如图2所示。
评论