《电子技术应用》
您所在的位置:首页 > 通信与网络 > 业界动态 > 移动Ad Hoc网络中一种节能路由协议

移动Ad Hoc网络中一种节能路由协议

《电子技术应用》2007年第1期
2007-11-09
作者:王申涛, 周 熙, 杨 浩

摘 要: 提出一种可以延长移动Ad Hoc网络寿命的节能路由协议" title="路由协议">路由协议ESR。它集成了传输功率控制" title="功率控制">功率控制和负载均衡" title="负载均衡">负载均衡两种方式的优点来实现节能路由协议。在通过负载均衡确定路由后,根据传输功率控制来调整链路" title="链路">链路间数据包的传输功率。仿真结果表明,与DSR相比,ESR协议可以有效地节能并延长Ad Hoc网络的寿命。
关键词:Ad Hoc网络  路由  节能  功率调整

 

移动Ad Hoc网络作为一种即时的无中心、自组织、多跳网络得到了飞速的发展。网络中的节点一般借助电池供电,因此节点的可用性对于成功传递数据包非常重要。任意一个节点失效都会影响整个网络的性能。由于节点均由电池提供能量,节点失效的一个重要原因就是电量耗尽。为了延长节点的生存时间,有必要减少节点在传输数据包时所消耗的能量。
近年来,对于Ad Hoc网络如何节能已经作了一系列的研究,这些研究可以分为两类:传输功率控制和负载均衡。其中,传输功率控制决定了从源端到目的端传输数据包所需要最小能量的路径。负载均衡主要通过将负载均匀地分配到各个节点来使网络耗能均匀。但并没有一种或一系列专门的协议适合所有的场景。
文献[1]提出了从源端到目的端耗能最小的路由协议。它的缺点:总是选择功率最小的路由,致使这条路径上的节点过早地消亡。文献[2]中给出了基于GPS信息的传输功率调整,但是GPS信息不包括诸如噪声、干扰和冲突等环境信息。许多学者试图用负载均衡来克服传输功率控制的缺陷。文献[3]提到了最小电量消耗路由协议,它以传输所需电量最小为衡量路由的尺度。文献[4]中,节点是否转发路由请求包取决于它剩余电量的多少,如果剩余电量超过门限值,则可以转发;否则,就丢弃该请求包。负载均衡的缺点:假定所有节点以相同的功率进行传输而不考虑接收端的位置是否会造成能量的浪费。因为当发送端与接收端相距较近时,就可以很小的功率进行传输,从而节省很多能量。
本文提出的节能路由协议ESR集成了以上两种方法的优点,在其路由查找阶段,可以避免节点过早地消亡。节点的消亡趋势可以通过剩余能量和当前传输功率来描述,称为节点的期望时间。当路径确定后,即可根据接收端接收到的数据包的信号强度来调整链路间的功率。
1 DSR协议
动态源路由协议DSR[5]是一种基于源路由的按需路由协议,它使用源路由算法,发送方知道应该经过哪些中间节点逐跳到达目的地,这些路由存储在一个缓存中。数据包在包头携带所需的源路由信息。DSR路由协议主要包括两个过程:路由发现和路由维持。
路由发现:当节点S向节点D发送数据时,它首先检查缓存是否存在未过期的到目的节点的路由,如果存在,则直接使用可用的路由,否则启动路由发现过程。具体过程如下:源节点S将使用洪泛法发送路由请求消息(RREQ),RREQ包含源和目的节点地址以及惟一的标志号,中间节点转发RREQ,并附上自己的节点标识。当RREQ消息到达目的节点D或任何一个到目的节点路由的中间节点时(此时,RREQ中已记录了从S到D或该中间节点所经过的节点标识),D或该中间节点将向S发送路由应答消息(RREP),该消息中将包含S到D的路由信息,并反转S到D的路由供RREP消息使用。源节点将此路由写入自己的缓存中以备今后使用。
路由维持:一旦某个节点在发送数据时发现需要使用的邻接链路断开,它立即发送一个路由错误(RERR)包给源节点S,源节点S收到这一错误包后在缓存中删除所有使用到这条链路的路由,并在必要时再启动路由发现过程。而沿途转发这一错误包的节点也从自己的路由表中删除该断开链路的所有路由。
DSR协议以最小跳数为路由衡量尺度。路由确定以后,源端以默认的最大功率传输数据包,但没有考虑节能问题。
2 ESR协议
在ESR协议的路由查找阶段,可以避免节点过早地消亡。在确定路由时,综合考虑了节点的剩余能量和传输功率。剩余能量与传输功率之比显示了节点的耗能趋势。源端在时间t发现路由,并选择具有最大值的那条路由。

其中,Rj(t)为路径j的能量与传输功率比的最小值;Ei为这条路径上节点i的剩余能量;Pti为节点i的传输功率。
 ESR协议中的路由查询机制如图1所示。节点1为源端,节点5为目的端。假定所有节点的缓存都为空,t时刻,当源端发起路由查询时,各节点的能量和传输功率如图1所示。源端通过广播一个路由请求包来启动路由查询机制。节点2和节点4都在节点1的传输范围内。因为中间节点2和4都非目的节点,这两个节点必须把自己的ID写入路由请求包中,继续广播该路由包。当目的节点5接收到该路由请求包时,通过反转节点1到节点5的路由,立即向节点1发送一个路由回复包。

 


假定目的节点5通过路由5-3-2-1回复到节点1。当中间节点3收到该路由回复包时,它通过来估计自己的“生存时间”。假定这个值为 0.2,节点3在路由回复包里记录这个值,然后转发该路由回复包到节点2。节点2用同样的公式来估计其“生存时间”,假定为0.1。同时,节点2读取路由回复包里记录的上一个节点的“生存时间”值(此时这个值为0.2)。由于节点2的生存时间相对节点3的生存时间要小,因此,它将取代路由回复包中节点3的“生存时间”。此时,路径1-2-3-5的路由回复包中携带的“生存时间”为0.1。源节点1将在路由缓存中记录这一路由。假定此时源节点1也发现了另一条路径1-4-5,这条路径的“生存时间”为0.005。在这两条路径中,源节点1将选择1-2-3-5,因为这条路径的“生存时间”高于路径1-4-5。但是以最小跳数为衡量尺度的DSR协议将会选择路径1-4-5。
当源节点查询完路径并按照上述方法选择完路径后,开始在这条路径上发送数据。此时,链路间的功率调整根据以下的步骤来完成:每一个节点都在数据包中记录自己的发送功率,然后将数据发送到下一跳节点。当下一跳节点以功率Precv接收到数据包时,同时读取数据包内上一节点的传输功率Ptx,然后为上一跳节点重新计算发送功率。
Pmin=Ptx-Precv+Pthreshold                          (3)
其中,所有单位都为dbW。Pthreshold为接收节点所能成功接收该数据包所要求的功率门限。在LAN 802.11中,Pthreshold为3.652×10-10 W。为了克服由于信道波动带来的链路不稳定性,在等式3中加入一个差值Pmargin
Pmin=Ptx-Precv+Pthreshold+Pmargin                 (4)
重新计算得到的传输功率记录在功率表" title="功率表">功率表中。每一个节点都包含一个功率表,用来记录目标节点的ID和到目标节点的传输功率。重新计算的传输功率记录在ACK包中。当ACK包被发送节点接收到时,在功率表中更新传输功率,并且以更新后的传输功率来传送数据包。
在本次试验中,假定差值为1dB,通常差值为3dB[6]。因为在本次试验中,传输功率的监视是通过数据包来实现的,所以差值采用1dB。数据包监视的目的是:当数据包传输过程中信道状况发生改变时,传输功率也能随之改变。同时,因为本试验的功率采用了一个很小的差值,因此相比文献[6]中提到的协议能节省很多的能量。
当节点接收到来自邻居节点的数据包时,功率表将随之更新。当一个节点需要发送数据包到另一个节点时,它就会查找功率表中到该节点的发送功率,若查询到,就以该功率发送数据包。若没有查询到相应的功率值,则以默认的功率传输(默认功率为280mW,传输范围为250m)。为了体现DSR协议的查询功能,所有路由包(路由请求包、路由回复包)都以默认的功率传输。另外,为了维持MAC层操作的一般性,所有MAC层的包(TRS、CTS、ACK)都以默认的功率传输。
为了观察功率调整对能量消耗的影响,应用了文献[6]中的模型。在给定链路上,每D字节数据包消耗的能量为: 

E(D,Pt)=K1PtD+K2                                          (5)
在数据传输速率为2Mbps的802.11MAC环境中,K1、K2分别为
3 仿真模型
因为接收功率是一个常数,当节点接收数据包时会有一部分固定的能量被消耗,故令接收功率为0。媒体接入控制(MAC)协议为IEEE802.11,信道速率为2Mbps。802.11分布式协调功能利用请求发送(RTS)和清除发送(CTS)来控制数据包的发送。利用虚拟载波监听和信道预留来减少隐藏终端带来的影响。无线传输模型为双向路径损耗。在仿真中,不考虑信道的衰落。业务源为固定比特率(CBR),数据包长为512B,发送速度为4包/秒。每个节点都包含一个功率表。包头结构增加传输功率域和接收功率门限域。
在一个静态场景中,40个节点随机分布在正方形的仿真区域内。仿真区域为200m×200m、300m×300m、400m×400m和500m×500m;源节点和目的节点随机组合。仿真周期为250s;计算所有节点消耗的能量和仿真结束前节点的消亡数。每个节点的初始化能量为1.0J。
为了与DSR协议的性能作比较,需关注以下性能参数:
成功投递的数据包数:在仿真结束时,成功到达目的端的所有数据包的总和。
每个数据包的耗能:网络中消耗的总能量与成功到达目的端的数据包的数目之比。
消亡的节点数:在仿真结束时,由于能量耗尽而过早消亡的节点数总和。
4 仿真结果分析
图2显示了成功投递的数据包数。ESR协议中成功投递的数据包数明显大于DSR协议。原因是:DSR协议在仿真阶段有一些节点电量过早地耗尽而消亡,因此,它们不能发送和转发数据包。但在ESR协议中,节点的生存时间却很长,所有节点都有能力发送和转发数据包。每个数据包的能量消耗如图3所示。当网络范围是200m×200m时,每个数据包的耗能约在0.75mJ。但在同样的场景下,DSR协议中每个数据包却消耗约1.25mJ。当扩大网络范围时,每个数据包的耗能也在增加。因为在大的网络范围内,数据要经过多跳才能到达目的节点,所以每个数据包的耗能就会增加。当网络范围为500m×500m时,ESR与DSR中数据包耗能基本相同。ESR中节能百分比如图4所示,ESR与DSR相比可以节能37%。仿真结束时,节点消亡的个数如图5所示,当ESR中有一个节点消亡时,DSR中就有5个节点消亡。但当网络范围扩大为200m×200m时,节点消亡个数趋于相等。这是因为网络范围变大时,ESR中的传输功率与DSR中的传输功率基本相等,所以ESR与DSR有相同的消亡节点数。

 

 

 

 


文章提出了一个节能路由协议(ESR)。仿真结果表明:与DSR相比,ESR协议可以有效地节能、延长Ad Hoc网络的寿命。同时ESR协议也带来开销:数据包头部附加的信息改变了数据包的结构,增加了数据包的长度。传输功率控制的引进将会导致无线设备的硬件改动。由于数据包不是通过最小跳数传送的,所以平均跳数就会增加,因此,ESR中的延迟将会大于DSR。
参考文献
[1] SINGH S, WOO M, RAGHAVENDRA C S. Power-aware routing in mobile Ad Hoc networks. In:Proc.of the Fourth
      Annual ACM/IEEE International Conference on Mobile Computing and Networking, October, 1998:181-190.
[2] IVAN S, LIN X.Power-aware localized routing in wireless networks. In: Proc.of the 14th International Symposium on  Parallel and Distributed Processing, May 1-5,2000:371.
[3]  TOH C K. Maximum battery life routing to support ubiquitous mobile computing in wireless Ad Hoc networks.
 IEEE Communication Magazine, 2001,6:138-147.
[4]  WOO K, YU C, YOUN H Y et al. Non-Blocking localized routing  algorithm for balanced energy consumption
 in mobile Ad Hoc networks. In:Proc. of International Symp.On Modeling,Analysis and Simulation of Computer and  Telecommunication Systems (MASCOTS 2001):117-124.
[5]  BROCH J, JOHNSON D B, MALTZ D A. The dynamic source routing protocol for mobile Ad Hoc networks. IETF   Internet-Draft, draft-ietf-manet-dsr-00.txt, March 1998.
[6] SHEETAL K D, TIMOTHY X B.An on demand minimum energy routing protocol for a wireless Ad Hoc network.
 Proc. of ACM SIGMOBILE Mobile Computing and Communication Review.2002,6(3):50-66.

本站内容除特别声明的原创文章之外,转载内容只为传递更多信息,并不代表本网站赞同其观点。转载的所有的文章、图片、音/视频文件等资料的版权归版权所有权人所有。本站采用的非本站原创文章及图片等内容无法一一联系确认版权者。如涉及作品内容、版权和其它问题,请及时通过电子邮件或电话通知我们,以便迅速采取适当措施,避免给双方造成不必要的经济损失。联系电话:010-82306118;邮箱:aet@chinaaet.com。