基于AODV 且考虑延时能量节省的路由协议
扫描二维码
随时随地手机看文章
摘要:重点研究基于节能要求兼低延时效应的AODV路由协议的改进。节能以延长无线传感器网络的工作时间,降低延时效应来保证数据传输的实时性,这是评价一个无线传感器网络的两个重要指标。在总结国内外研究成果的基础上,提出了更适用于低速运动的Ad Hoc网络的低延时节能的路由改进策略,包括在低于能量阈值时的动态功率调整、能量意识的路由选择、广播控制、被动路由更新和CMMBCR的引入。节能策略更是引入了位置信息和网络平均能量的概念,而且更适用于项目的实际情况(低速运动网络)。在用NS-2工具对该低延时节能策略进行仿真测试后,得出在最佳情况下网络传输延时和网路寿命两项指标都能得到大幅度的改进。
关键词:无线传感器网络;Ad Hoc;AODV;ZigBee CMMBCR;CC2420
0 引言
随着移动计算平台和小型无线设备的普及,Ad Hoc无线网络因其无物理位置限制而且能随时随地自组网络而得到越来越多的关注。智能雷场作为此项研究的应用平台,Ad Hoc更是显示出其特有的优势。实际战争环境中的雷场因其地理环境的多变性和不确定性,所以对无线数据通信网络的自组性提出了很高的要求,又由于无线通信结点自身携带的电池供电能力有限,因此,在保证结点间数据通信及时性和可靠性的基础上,高效地管理能量,延长结点及整个网络的工作时间。
AODV是在Ad Hoc网络中较常用的一种通信传输协议。在硬件或软件设计上,前人已经提出了很多适用于AODV的节能方法,像AODVjr,AOD Vsimpli-fied,自适应AODV,适用于低速运动网络的低功耗AODV协议等,但是这里发现前人的这些改进算法在智能雷场环境中,表现效果并不是很理想,因为低能耗往往是以牺牲网络的数据传输率和提高数据传输延时为代价的,虽然延长了整个智能雷场的网络工作时间,但是数据传输延时过久,在实际工作中是非常危险的。
在本文中,提出了一种新的自动调节的能量控制协议。为了在保持结点响应速度的基础上,延长智能雷场网络的工作时间,根据结点电池的剩余能量,结点会根据具体情况调节自身的传输协议。在能量充足时,会以减小数据传输延时为重点,保证雷场工作的高反应性;在低能量状态时,会转换到能量保护状态,用蚁群节能算法来延长网络的工作时间。
1 低速运动Ad Hoc网络的AODV改进协议
1.1 网络环境
在假定的网络环境中,50 m×50 m的正方形场地内有20~30个结点,结点间的普遍距离是10~20m。由于网络环境空间的可扩展性,用IEEE 802.15.4标准作为物理层和MAC层协议。IEEE 802.15.4的信号发射的能量模型采用了Chipeon CC2420,其默认发射频率为2.4 GHz。在NS-2的Two-ray-ground传播模型中,CC2420最大的传输距离为17 m。网络中的每个结点都知道自己的位置和剩余能量。
AODV是最基本的路由协议架构,即适合低速运动网络的按需分配路由协议。在此基础上,加入了CMMBCR(条件性电池能量大小调节协议)算法来实现网络的智能调节,在网络结点拥有充足能量时,提高网络的处理速度以减小数据传输时延,保证数据传输的高效性;在网络结点的能量不足时,启用能量保护方案,通过修改广播控制和路由选择算法以延长网络的工作寿命。
1.2 网络平均能量的估计和自适应路由
这里AODV算法旨在延长网络的工作时间,即网络中第一个因为电池能量耗尽而停止工作的结点的时间。为了达到这个目的,提出了两种改进措施:首先,应该不选择那些剩余能量远小于网络平均能量的结点,其次,在新的路由代价评价函数中,把跳数、剩余能量还有能量消耗等三个因素都考虑进去,这样有助于选择一条能耗相对最小的路由。
1.2.1 新的路由代价评价函数
式中Pt_consumei是结点i到它的下一跳结点传送信息所需要消耗的能量;Ei是结点i的剩余能量;E是网络的平均剩余能量;α是调节剩余能量的权重系数;ηi是结点热噪声;G是整条路由代价评价。式(1)是计算结点i到它的下一跳结点的连接功率消耗,整条路由的消耗如式(2)所示,源结点会选择G值较小的路由。需要特别注意的是,Pt_consumei不同于Pt。它表示的是收发模块内部实际能量的消耗,而Pt是发射出去的电磁波的能量。在式(2)中,考虑了三个因素:传输所需能量、结点剩余能量、跳数。
1.2.2 RREQ广播控制和被动路由更新
RREQ的广播控制和被动路由更新则是进一步平衡网络结点间的能量消耗,从而延长网络寿命。
当一个结点接收到一个RREQ时,它不是判断这个是不是重复的RREQ,而是计算自己剩余能量和网络平均剩余能量的比值,如果该值小于某一预设值A,结点不再将RREQ广播出去,它也将不参于此次路由发现。这个策略和文献中提出的结点能量小于初始值的10%时便绕过有所不同,举例说,如果一个网络中绝大多数的结点能量都小于初始值的10%,本文的策略仍然可以选择有相对高剩余能量的路由,而文献中的策略将使网络陷入瘫痪。
当一个路由建立后,一个名为established_energy的域会在相应路由表项中建立,用来记录当前结点建立路由时的剩余能量。随着时间过去,结点不断地收发数据包,如果当前剩余能量和established_energy的比值小于一个预设值B,比如B=0.7,该路由项会宣布为不活动状态,并启动RERR来触发该路由的源结点启动路由重新更新,这称为被动路由更新。相比AODV中的主动路由更新,它是使用剩余能量而不是时间来触发路由更新,更有利于路由更新随着能量消耗的多少来调节。如果某条路由上的数据包很少,它可以有效减少不必要的路由更新(也是对于低速运动的网络而言),如果某条路由上的数据包太多,它可以及时切换到能量更多的路由上去。
1.2. 3 网络平均能量的估计
在文献中,Gil,HR等提出了估计网络平均能量的算法。该算法的缺陷在于,当一个节点M持续不断地向节点N发送数据包时,他们的能量消耗要远比网络平均多,但是它的一跳邻居P也许只从M接收到RREQ,从而P对网络平均能量的估计很可能十分接近M的能量值,从而大大低于实际的网络平均能量值。本文对该算法的改进在于,加了一个域到RREP中,而任何节点接收到RREP时所做的计算和接收到RREQ时一样。通过这种方法,提供给节点更全面的信息去估计网络的平均能量,使得估计更精确。
1.3 基于CMMBR的自调节传输协议
在文献中提到,如果源结点、目的结点以及路由可能经过的结点都有充足的剩余能量(比如都大于某个阈值),则只要挑选总体传输能量最小的路由即可,这样可减小路由选择算法的计算复杂度,从而减小数据传输的延时,保证数据传输的及时性。然而,当路由上某些结点都处于较低能量时(比如小于某个阈值),就需要用到上述的被动能量调节,从而来延长这些结点的工作时间,从来保证整个无线传输网络不会过早的衰亡。具体的算法实现如下:
式(3)为结点nj和结点ni之间的传输功率,式(4)为路由的总传输功率,式(5)是最理想的路由K所满足的条件,其中Ptransmit是结点ni和nj之间的传输功率,Preceiver是结点nj接收数据的接收功率,A是所有可能路由的集合。
如果最小结点剩余能量,则说明部分结点的能量已经消耗过快,这时要启动上述的能量相关的代价评价函数来均衡网络中的结点能量分布,延长路由的工作时间。
2 仿真模型
用NS-2对改进的AODV和经典AODV的表现进行仿真比较。25个点以10 m的横向和纵向间隔在网络中平均分布,如图1所示。随后,又利用CBR工具产生了16个UDP对话。每个对话以恒定的速率连续发送30s的数据包。
对话中的源节点和目的结点对如图1所示,并以逆时针方向转动,如5-19,0-24,1-23,依此类推并循环。这种场景设计的目的有两个,一是平均结点之间数据收发任务的分配,尽量不使作为源节点和目的结点的角色任务过重而死掉,二是有意识地增加中央区域的路由负担,形成“过热”区域,以显示改进的算法对于在低能量时对“过热”区域的处理能力。场景的预设测试时间为5 000 s,同时也让每个结点有低速度的运动,平均速度为0.5 m/s,数据的速率为5帧/s。根据之前在这方面的工作,在式(1)中的α设为3。测试网络在不同的暂停时间下各方面的表现,并和原AODV比较。
这里为网络设计了2种初始能量,分别为5 J和20 J。前者是不够让网络运行5 000 s的,而后者则是足够的。在5 J的情形下测试网络的寿命和网络平均数据传输延时,网络的寿命即是第一个结点死掉的时间;在20 J的情况下,测试网络的平均吞吐量、发送成功率、剩余能量的方差、平均每个数据包消耗的能量和平均延时。
3 仿真结果
图2给出了在能量不足的情况(初始能量是5 J)下,改进的AODV和原AODV的网络寿命随暂停时间的变化比较。从图中很明显看出,改进的AODV相对原AODV在网络寿命的延长方面随着暂停时间的变长而变大。暂停时间为5 000 s时为静止网络。这个时候改进的AODV的表现是最好的。而当网络的静止时间为250 s的时候,网络寿命的延长效果最差。这是因为在静止网络中,由于拓扑结构的静止不变,个别结点就承担了过重的数据转发任务,从而结点间的能量消耗就更不均匀,从而导致个别结点任务过重而过快衰竭。图3给出了在暂停时间为2 000 s时,网络工作在不同阶段的数据传输的平均延时。取γ=0.4,即CurrentEnergy/InitialEnergy=0.4,从图中可以看到在40%之前改进后的AODV算法比原AODV的延时时间缩短了20%~34%,而之后,延时缩短时间也有10%左右,这是符合设计初衷的。
在实际应用场景中,即雷场中,暂停时间为2 000 s比较具有代表性,即结点的平均移动速度大约为0.5 m/s。表1给出了在暂停时间为2000s的运动网络中,改进的AODV和原AODV在性能上比较。可以清楚看到在此条件下,平均吞吐量基本没有变化,平均延时降低了29.9%,剩余能量方差降低了11.3%,发送成功率提高了0.7%,其中每个数据包消耗的能量提高了。每个数据包消耗能量的增加主要是因为在结点能量充足的阶段,采用了总体路由能量最小的路由选择算法,没有采取任何广播控制和能量节省算法所致,这是改进的AODV机制中需要付出的代价,但是在能量充足的情况下,这一点消耗能量的增加并不会影响网络整体的工作寿命,而且达到了降低数据传输时延的目的,这正是希望看到的。
在这个改进的AODV传输协议中,其关键作用就是阈值γ,阈值取的太大则网络工作寿命会减少,阈值取的过小则数据传输延时会过大,所以这里对各种阈值都进行了仿真比较,结果如图4所示。由图4可以看到,延时随着阈值的增大而减小,在0.4处出现缓和并趋向平稳;网络工作寿命随着阈值的增大而变小,在0.4处出现了一次大幅度的下滑,据此分析可得,阈值γ=0.4是个关键点,也是符合要求的值。
4 总结
本文在叙述AODV路由协议原理的基础上,指出其在智能雷场环境中对于传输延时和节能要求的不足,并在回顾了国内外节能路由协议研究现状之后,提出了本文的算法,主要包括:动态发射功率调整,能量和延时相关的代价评价函数,RREQ广播控制,被动路由更新和CMMBCR的引入。这些算法的提出是基于该项目中具有GPS模块,并且是一个低速运动的无线网络。随后,利用NS-2网络仿真工具对算法进行了仿真测试。从结果可以看到,算法不仅提高了网络寿命,而且减小了数据的平均传输延时,并且吞吐量等其他方面没有很显著的下降。最后讨论了不同传输协议算法之间转换阈值γ的取值问题。