- 易迪拓培训,专注于微波、射频、天线设计工程师的培养
无线传感器网络中地理能量感知路由的改进
无线传感器网络是由部署在监测区域内的大量廉价的微型传感器节点,通过无线通信的方式形成的一个多跳自组织网络系统,其目的是协作地感知、采集和处理覆盖区域内的事件信息,并发送给观察者。由于节点能量有限且补充困难,无线传感器网络的首要设计目标是能量[6]的高效利用。本文在原有GEAR[1]路由协议基础上提出改进方法,从而在路由协议[4]上节省无线传感器节点有限的能量,并提高整个网络的生存周期。
GEAR协议介绍和改进
GEAR[5](Geographical and Energy Aware Routing)路由协议是根据事件区域的地理位置信息,建立汇聚节点到事件区域的优化路径,避免了泛洪查询消息,从而减少了建立路由的开销。但是传统的GEAR路由机制由于缺乏足够的拓扑信息,路由过程中会遇到路由空洞[2]的现象。
本文提出了考虑两跳节点信息的路由机制,大大减少了路由空洞出现的概率,降低了每次成功查询的平均能耗;根据无线发射功率和通信半径的关系,由通信距离确定发射功率[3],并在路由选择时考虑发射功率,提出了更加节省能量的GPEAR路由机制。
GEAHAR路由机制
过多的路由空洞会消耗很多不必要的能量,降低整个网络的通信效率。为了减少或避免路由空洞,节点需要知道更多的拓扑信息,这就是GEAHAR(Geographical energy aware and hole avoid routing)机制提出的依据。基本思想是在查询消息时,节点选择下一跳节点不仅仅考虑邻居一跳节点的代价值最小,而是考虑两跳的信息。
邻居节点是指节点一跳通信范围内可以到达的所有节点的集合。如(1)式定义,dmax为节点最大通信距离,为所有节点的集合。
NbNi={Nj|d(Nj,Ni)}
≤dmax,Nj∈N}(1)
节点Ni选择下一跳Nnext(i)的依据如(2)式。Nbi为节点Ni的邻居节点集合,NbNbi(j)为节点Ni的邻居节点Nbi(j)的邻居节点集合。β为比例系数,取值范围为0~1。β取值为1,算法退化为一跳的GEAR路由机制。式中需要注意的是NbNbi(j)(k)≠Ni,即第二跳节点不能选择当前节点,否则将出现返回路由的现象,这将大量消耗不必要的能量。
Nnext(i)=min(βc(Nbi(j),T)+(1-β)min(c(NBNbj(j)(k),T)))Nbi(j)∈Nbi,NbNbi(j)(K)∈NbNbi(j),NbNb(j)(k)≠Ni(2)
GPEAR路由机制
在接收灵敏度一定的情况下,无线发射功率P和接收半径R之间关系是P正比于R2~R5,也就是P可能会远远大于R2。如果在节点间通信时考虑通信的距离,适当调整发射功率,而不是使用相同的发射功率(这样的话只能以最大通信距离来发射),则可以大大降低通信的能耗,延长整个网络的寿命,降低每个数据包的通信代价。
GPEAR(Geographical and physical energy aware routing)路由机制是在传统GEAR路由机制作下一跳路由选择时,考虑物理层发射功率与通信半径的关系,从而做出更加适合的选择。
假设无线通信部分能量消耗与通信距离的四次方成正比,并将发射功率分为5档,见表1。
表1 发射功率与通信半径的关系
GPEAR路由机制则是选择邻居节点中代价值和发送一跳的通信代价的联合最小的节点作为下一跳节点,如式(3)所示:
Nnext(Ni)={Nj|min(h(Ni,Nj,T)=rc(Nj,T)+(1-r)Esend(Ni,Nj)),Nj∈NbNi} (3)
式中,Nnext(Ni)为节点Ni选择的下一跳节点;h(Ni,Nj,T)为节点Ni经由Nj到事件区域T的新代价值;Esend(Ni,Nj)为节点Ni到节点Nj的通信代价,如表1中的归一化数值;NbNi为节点Ni的邻居节点集合;r为比例系数,取值范围为0~1。
仿真环境
仿真条件假设
(1)查询信息中包含了目标区域(即事件区域)的位置,此处假设用目标区域的中心位置作为目标区域的位置;
(2)每个节点都知道自己的位置信息和剩余能量,并且可以通过一个简单的Hello机制获取邻居节点的位置信息和剩余能量。节点的位置信息可以使用低成本的GPS定位机制或者其他现成的定位机制获得;
(3)节点间的链接是双向的,即如果节点可以获得邻居节点的访问,则节点也可以访问邻居节点,这对于一般的MAC协议,如IEEE 802.11,都是容易实现的;
(4)节点每消耗总能量的10%时,通知邻居节点自己的剩余能量信息,用于更新邻居节点中的邻居节点列表信息;当节点剩余能量小于一个阈值时,将通知自己的邻居节点,将自己从邻居节点列表中删除,表示该节点已经死亡。
仿真参数
在100m*100m的区域内,随机分布200个传感器节点,节点初始能量为1000J,节点死亡能量阈值为5J,最大通信距离为25m,最大通信距离通信时,每次消耗1J能量。对于GPEAR算法,通信能耗与通信距离的关系由表1给出。仿真环境假设会聚节点(Sink)在整个区域的中心(50,50)处,四个事件区域在整个区域的四个角上(0,0)、(0,100)、(100,0)和(100,100),每个事件区域做100次查询后,轮流转换。
3 测试标准
(1)查询成功次数:只有成功的查询对用户才是有用的,所以网络能够进行的成功查询次数可以体现网络的生存周期和传输可靠性。
(2)每次成功查询平均消耗的能量:该标准体现了整个网络能量的利用效率。
每次查询的平均消耗能量为整个网络消耗能量除以成功查询的次数,如式(4)所示。
仿真结果
图1 衰减指数对算法性能的影响
图1的结果表明,随着衰减指数(衰减指数为2表示发射能量和通信半径的二次方成正比,依次类推)的增长, GPEAR算法的性能则改善非常明显。
图2最大允许跳数对算法性能的影响
作者:顾康宁 张兴敢 来源:IT专家网论坛
上一篇:万兆以太网(10GE)测试解决方案
下一篇:低压差线性稳压器的拓扑结构与应用