Abstract
This paper introduces an advanced save-energy mechanism for Ad hoc network. Compare with the old energy mechanism, it could effectively reduce the energy consumption of idle nodes in the net and decline the number of Agent node to only one in each communication area, which is 50% of the old mechanism, and create Edge-Agent, which is classified by function. The experiment shows, the new mechanism could improve the life-time of the whole net, guarantee the efficiency and robustness of the
net and balance the energy of the Edge-Agent.
Keywords: Ad hoc network, QoS routing protocol, Agent, Save-energy
1. 引言
Ad hoc 网络的特点是各节点地位平等,能自由移动,并且通过无线信道进行通信[1,2]。 由于移动终端本身由电池供电,因此在 Ad hoc 网络中采用各种节能机制成为延长电池工作 时间的一种重要手段。另外,从降低网络运行成本和节约自然资源的角度来说,采用节能机 制也是一项意义重大的措施。现阶段,Ad hoc 网络的节能机制已经提出不少方案,如利用 电源休眠[3]或者设置 Agent 方式[4]节能。然而所提出的方案并不能完全解决 Ad hoc 网络的节 能问题。如利用电源休眠,虽然可以达到一定的节能效果,但休眠状态电池同样有一定的耗 损,且这部分耗损并没有做任何有效功;再如采用设置能量代理方式,现有的能量代理方式 通常选择出的数量过多,有的达到了所有网络节点数量的一半,选择代理数量过多往往对网 络资源也会造成不必要的耗损。
2. 能量消耗模型
一般的,认为只有在发送和接收分组的时候才会有功率消耗,并且在研究 MAC 协议时, 往往只考虑收发分组时消耗的能量。然而,节点在处于监听和空闲状态时,也同样消耗电量,
即:
其中, T(a,b)表示从节点 a 到节点 b 的路由路径上所有节点所消耗的能量,Ex 是节点
处于监听和空闲所消耗的能量。之所以需要将监听和空闲状态的能量消耗计入总消耗是因为电波有一个相当大的广播范围,再此范围内的所有节点都必须接收每个数据包以判断是否是本地接收,虽然多数分组都被很快丢弃,但是接收它们是也需要消耗能量,研究表明[5],空 闲、接收和发送状态三者能量消耗的比例是 1:1.2:1.7。从公式(1)可知,在不关闭节点k
然而,仅考虑全网能量消耗具有一定的片面性,因为 Ad hoc 网络中的个别节点有可能UDP 业务,该节点均不承担发送及转发任务,但能量消耗也非常严重。在未发送及转发任
何数据的情况下,节点能量状态由 0.80 下降到 0.64,消耗了 16%的能量,却未对全网的数 据传递起到作用,因此,该 16%的能量消耗为无用功。而改进后的空闲节点由于采用了关 闭电源及间歇式检测信号等机制,使得空闲消耗降低。图 3 表示了在该实验中节点 1 未改进 和改进后的性能比较。
对于非空闲节点,由于能量因素成为建立路由路径的必要条件,因此与原有的利用 AODV 建立起来的路由有所差别。改进后的路由机制重点关注全网可达的持续性及边界 Agent 节点的轮换工作,这样,每个节点的能量均可得到有效利用,而非仅仅有业务流量的 节点消耗能量,而空闲节点不做功的情况下,也消耗能量。以节点 3 至节点 6 的 UDP 业务 为例,利用 AODV 建立起来的路由路径为 3—2—6。改进机制首先建立区域 Agent 及边界 Agent,节点 3 的能量状态最大为 0.97,因此当选 Agent,负责区域内的信息传递及转发, 在该例中,节点 3 既是 Agent,又是业务起始节点;边界 Agent 由两区域信号交叉部分的能 量状态最大者担任,在该例中,节点 5 为边界 Agent,转发节点由原来的节点 2 变为节点 5, 路由路径变为 3—5—6。当节点 5 的能量仅为原来的 50%时,将重新选举边界 Agent,此时 节点 4 成为边界 Agent,路由路径变为 3—4—6。该选举过程将一直持续下去,直到边界节
点能量不足以支持业务。如图 4 所示,全网可达的时间由原来的 1178.90s 升至 3855.43s。因为节点能量不足而无法完成转发任务,即在公式(1)中忽略了节点的能量状态,其定义为: Pr e
其中,Pre 为节点现有能量,Pst 为节点理想状态下的能量最大值。
3. 改进方案
由公式(1 )可知,整个网络的消耗由两部分组成,一部分是路由部分消耗的能量
,这部分能量只有通过改善路由算法,使尽量少的节点参与到路由过程之中;
k
另一部分是其余空闲节点的待机能量 i 1 ,这部分能量可通过关闭其无线网卡实现。无线
网卡的关闭可分为两部分:一部分为路由建立过程之前网卡关闭模式,即网络中无数据流而 仅有控制流的时候,此时关闭网卡采用定时开启模式,每隔 5 秒开启检查是否有数据传输要 求,若有,则全网节点开启,建立路由,路由建立完成后,将进入网卡关闭的第二部分,即 路由建立过程之后的网卡关闭模式,此时,没有转发任务的节点可关闭无线网卡,仅留有路k
由任务的网络节点,这样,空闲节点的待机能量 i 1 从理论上可接近于 0。
另外,采用无线节点 Agent 也是提高转发效率以及提高能量利用率的一个有效途径。移动 Agent 是一段程序代码,能控制自己在网络中移动,并能在每个节点独立地完成各种不同 的任务。移动 Agent 在分布式应用中十分有效,特别适用于动态的网络环境,这些 Agent 在节点之间跳动,在节点中收集信息,并能将这些信息给新的节点和 Agent。这样,在短时 间内,每个节点都能接受到 Agent 访问他们带来的更新信息,网络开始运行时,所有节点只 知道他们自己和邻居信息,而不知道别的节点的信息,当 Agent 开始路由时,这些节点就会 得到别的节点的信息。
在本文中,每个节点均有属于自己的通信区域,在通信区域中,利用公式(2),将现有 节点能量状态最高者定为 Agent,将收到两个及以上通信区域的能量状态最高节点设为边界 Agent,这样,较文献[4]中随机设定 Agent 的方法,可大大减少网络中 Agent 的数量。例如, 如图 1 所示。
图 1 中,节点名称后表示为节点现有能量状态,由改进的能量机制可得,区域 A 中, 节点 3 为 Agent,区域 B 中,节点 6 为 Agent 节点,在交叉区域中,节点 5 为边界 Agent。 改进后的能量机制将节点空闲以及待机时消耗能量降为最低,并且引入了 Agent 模式,
有效的利用了全网能量,使能量状态高的节点得到充分利用,其工作流程如图 2 所示。
网络中转发节点的节能情况如图 5 所示。
从图 5 可知,两个通信区域之间的能量最大节点在能量状态仍然最大时,较原有的能量 消耗无异,但当能量消耗的一定水平时,启动边界能量代理(Edge-Agent)改选机制,通过 节点的轮流工作节省能量。在图 5 中,转发节点的能量消耗在 20s 之前并不能显示新能量模 型的优越性,但 20s 时发生 Edge-Agent 的改选,此时,能量状态最大的节点成为新的 Edge-Agent,开始转发数据包,这一过程在 30s 时再次发生,转发工作又一次被其它高能量 节点所替代。
由于在 Edge-Agent 切换过程中,分组的转发时间也有所延长,如图 6 所示,分组到达目的节点的时间有所滞后。
但通过对分组到达时延进行研究后发现,虽然 Edge-Agent 轮换工作方式对分组的到达时间会有一定的影响,但分组的时延并没有因此而出现提高,图 7 显示了利用新能量模型前 后分组的发送时延比较。
从图 7 中发现,在传送第 4000 个数据包之前,新能量模型的时延小于原有模型的时延;
但在传送第 5000 个包时,时延突然增大,随后的转送过程中会出现脉冲式的时延增大的情 况,但随后时延会逐渐减小,但任高于原有模型的网络时延。通过对实验的分析后得知,在 传送第 4000 号至第 5000 号包之间的时间间隔内,Edge-Agent 进行了改选,在改选过程中 的网络时延会有所增加,且随后的脉冲式时延增加也是由此所引起的,同时,在 Edge-Agent 能量状态相近时,这种轮换会非常频繁,导致时延的增加。
而且,在一定范围内的网络规模的增大和节点数量的增加会改善新能量模型的运行效果,对节省网络的能量消耗较有效,但超过一定范围后,节能效果反而会下降,如图 8 所示。
如图 8 中,网络中的节点数达到 20 时,节点剩余能量最多,若网络中节点数再继续增 大,节点剩余能量反而会减少。经研究后发现,这种节能性能的下降主要是因为 Edge-Agent 的频繁的轮换工作所致。当网络节点数增加而所在范围一定时,节点的密度也相对增加,同 时,在一定区域内出现相近能量节点的概率也增加了,而过多次的决定哪个节点是转发 Edge-Agent 时,必然会消耗更多的能量。因此,在多个能量相近节点成为或可能成为 Edge-Agent 时,这种轮换机制反而对网络的节能性能有消极影响。
另外,在新能量模型中,节点数与网络平均时延也存在着一定的关系。如图 9 所示,无论是原能量模型还是新的能量模型,其网络平均时延都会随节点数的增加而增加。但新的能 量节点的网络时延增加的更为明显。研究后发现,其主要原因仍是由于 Edge-Agent 的轮换 机制造成的。当某个 Edge-Agent 因其能量消耗而被其它节点取代时,它们之间会发生切换 过程,此时,数据包是不能被转发的。当节点数增加,其轮换工作机制会频繁发生,从而导 致网络平均时延的增大。
由以上实验所得数据可知,采用 Edge-Agent 的节能机制对小规模的 Ad hoc 网络确实能 起到一定的节省电池消耗,提高网络生存时间的效果,但不适用于网络节点数较多的 Ad hoc 网络,否则会出现网络平均时延增加和转发节点能量消耗增加等问题。
5. 小结
本文介绍了一种改进的 Ad hoc 网络节能机制。较以往的节能机制,其特点是大大降低 了空闲节点的能耗;将作为 Agent 节点的概率由原来的 50%下降为每个通信区域仅一个;并 通过功能划分,增加了边界 Agent 节点。实验表明,虽然该节能机制对 Agent 节点的依赖较 一般 Ad hoc 网络路由对单个节点的依赖有所增加,但其能有效的提高全网可达时间,保证 了网络传输的有效性及鲁棒性,使得 Edge-Agent 的能耗趋向平衡,但同时实验研究表明,该节能机制并不适用于节点数较多的大规模 Ad hoc 网络,否则会出现节能性能下降以及网络平均时延增加等问题。而且,将该节能机制加入到现有的 Ad hoc 网络路有协议中,只能 满足延长电池工作时间的要求,对网络时延等对传输多媒体数据有实质性影响的参数,并没 有太大的积极作用。因此,研究提高网络传输能力,减小时延等 QoS 参数的路由协议是下 一步的重点。
参考文献
[1] 李腊元,李春林.计算机网络技术.第 2 版,北京:国际工业出版社, 2004.7.
[2] 郑少仁,王海涛,赵志峰.Ad hoc 网络技术.北京:人民邮电出版社,2005.1
[3] PALCHAUDHURIS. Power Mode Scheduling for Ad hoc Network Routing [D].Master Thesis, ComputerScience, Rich University, 2002
[4] PHAM VA, KARMOUCH A. Mobile Agents for mobile computing[R]. Technical Report PCS-TR 96-285, Department of Computer Science, Darmouth College, Hanover NH 03755, 1996
[5] Chen B,Jamieson K, Balakrishnan H,et al. Span: An energy-efficient coordination algorithm for topology A Save-Energy QoS Routing Protocol in Ad hoc Network