《电子技术应用》
您所在的位置:首页 > 通信与网络 > 设计应用 > 无线传感器网络LEACH协议的改进
无线传感器网络LEACH协议的改进
2015年微型机与应用第7期
牛建兵,刘广钟
(上海海事大学 信息工程学院,上海 201306)
摘要: 针对无线传感器网络典型分簇协议LEACH簇首随机选择和频繁分簇的问题,提出一种基于LEACH的改进协议。簇首的选择分为奇数轮和偶数轮,在奇数轮簇首的选择时,节点生成一个随机数,将此随机数和阈值进行比较,小于阈值的节点成为簇首节点,其中阈值的生成考虑了节点的能量。在偶数轮簇首选择时,每个簇选择上轮中簇内能量最高的节点作为本轮簇首。协议能够有效均衡网络的能量,延长了网络的生命周期。
Abstract:
Key words :

  摘  要: 针对无线传感器网络典型分簇协议LEACH簇首随机选择和频繁分簇的问题,提出一种基于LEACH的改进协议。簇首的选择分为奇数轮和偶数轮,在奇数轮簇首的选择时,节点生成一个随机数,将此随机数和阈值进行比较,小于阈值的节点成为簇首节点,其中阈值的生成考虑了节点的能量。在偶数轮簇首选择时,每个簇选择上轮中簇内能量最高的节点作为本轮簇首。协议能够有效均衡网络的能量,延长了网络的生命周期。

  关键词: 无线传感器网络;分簇;LEACH;剩余能量

0 引言

  无线传感器网络(Wireless Sensor Network,WSN)是由部署在监测区域内大量的廉价微型传感器节点通过无线通信方式连接形成的一个多跳的自组织的网络系统,其目的是协作地感知、采集和处理网络覆盖区域中感知对象的信息,并发送给观察者[1]。WSN不需要固定的网络支持,具有快速展开、抗毁性强等特点,可广泛应用于军事侦察、环境监测、医疗监护和其他商业领域[1]。

  在WSN体系结构中,网络层的路由技术对WSN性能的好坏有重要影响。随着国内外对WSN的研究,许多路由协议被提了出来,从网络拓扑结构可以分为两类:平面路由协议和分簇路由协议。在WSN的实际应用中,由于通信损耗能量与传送的数据量和到达目标的距离平方成正比,因此采用基于分簇的路由协议相对平面路由协议具有更好的适应性和节能性[2]。

  本文提出的路由协议是基于最经典的分簇路由协议LEACH(Low Energy Adaptive Clustering Hierarchy)提出的,协议中簇首的选择分为奇数和偶数轮。奇数轮簇首选择中引入节点能量等参数,避免低能量的节点成为簇首。簇首确定后,簇首广播自己为簇首的消息,其他节点根据接收到的信号强度加入不同的簇。在偶数轮簇首的选择时,网络不再大规模地动态生成簇,只是选择上一轮中簇内节点能量最大的节点作为本轮的簇首节点,簇首节点选择后,通过广播通知其簇内节点自己成为簇首节点。通过能量参数的引入使得簇首选择避免了低能量节点成为簇首节点,而且引入奇数和偶数轮降低了簇的生成开销,有效节省了网络的能量,延长了网络的生命周期。

1 LEACH协议

  该协议使用自适应成簇和簇首节点轮换技术,周期性地执行任务,每一个周期分为两个阶段,分别是簇的建立阶段和稳定运行阶段,这两个阶段的时间比在协议中是1:19,稳定运行时间要远远长于建簇时间,这可避免分簇过于频繁造成过多的能量损失。在稳定运行阶段,各个非簇首节点将按簇首分给的时隙来发送数据给簇首,簇首收到各个簇成员发来的数据进行综合处理后再发给Sink节点。

  LEACH[3]协议选择簇首策略具体如下:在建簇中的簇首选择阶段,每个节点在0~1之间随机选择一个数与阈值T(n)进行大小比较,如果小于阈值,则其将被选中成为新一轮的簇首,并广播自己是簇首的消息。如果节点已经被当选过簇首,则将T(n)置为0,这样将不可能再当选簇首了。阈值T(n)表示为:

  1.png

  其中,n表示传感器节点数,k表示簇头节点数,r为轮数,G为网络生存期的总回合数。

  LEACH协议适用于大型的无线传感器网络,与平面路由协议相比,LEACH协议在节能方面有比较突出的表现,但也存在一些问题,比如LEACH算法簇头的选择没有考虑到节点的能量问题,如果一些能量较低的节点成为了簇首节点,那么此节点很快就会将能量耗尽而退出网络,降低了网络的寿命;同时LEACH算法簇的生成过于频繁,按照轮的方式运行,每轮完成后,网络将重新进入簇的生成阶段,簇的频繁生成将会增大网络的能量消耗。

2 LEACH-OE

  在研究了LEACH协议存在的一些问题后,本文提出了一种基于奇偶轮选择簇首的协议LEACH-OE(Odd and Even number round of LEACH)。该协议大大降低了成簇的轮数,只有在奇数轮才会进行簇首的随机选择和簇内节点入簇操作,而且簇首选择时,考虑了能量因素,使得能量高的节点成为簇首节点的概率更大,在偶数轮仅仅是选择簇内能量最高的节点作为本轮的簇首节点,之后通知其他簇内节点自己为簇首节点,节省了成簇时的能量消耗。

  2.1 模型介绍

  (1)网络模型:基站(BS)固定且能量供应充足;各节点同构且具有节点编号;各节点可感知它的剩余能量;各节点可以与基站直接通信;各节点可根据接收者距离调整发射功率[4]。

  (2)信道模型:传感器节点发送k bit消息d距离时消耗的能量ETX(k,d):

  2.jpg

  接收k bit消息消耗的能量ETR(k)是:

  ETR(k)=ERXelec(k)=kEelec(3)

  在式(2)中,发送与接收节点距离大于临界值d0=%96VD7@][AJ{DNOBE2@CYOG.png时,使用多路径模型;否则使用自由空间模型。Eelec是发射电路和接收电路消耗的能量,εfs和εamp都是发射放大器所消耗的能量。

  2.2 算法思想

  (1)基于剩余能量的簇首选举

  本协议在簇首的选择和成簇机制上进行了改进,簇首选择时,分为奇数轮和偶数轮。当奇数轮时(r mod 2==1)采用簇首的随机生成,此过程中,不但考虑节点是否当选过簇首节点,还考虑节点的能量因素,降低了低能量节点优先成为簇首节点的概率。由各个传感器节点随机生成一个[0,1]之间的随机数,比较此随机数与阈值F(n)的大小,如果小于F(n)则成为簇首节点,然后广播自己成为簇首节点的信息,而其他节点根据接收到的信息的强度自主加入相应的簇。阈值F(n)表示如下:

  4.jpg

  当偶数轮(r mod 2==0)时,根据各个簇内节点的能量信息,由上轮簇首节点决定本轮簇首节点的选择,上轮簇首根据簇内节点能量Ecur(i)的大小将簇内节点进行排序,然后簇首将能量最大节点的编号ID向簇内进行广播,簇内各个节点根据接收到的信息和自己节点ID进行比较,当节点ID与接收到的信息中的节点ID相同时,该节点广播自己成为本轮簇首节点的信息,各个簇仅仅是改变了簇首而簇内节点不发生变化。图1是簇首选择流程图。

001.jpg

  (2)数据发送阶段

  在簇首选择成功后,簇首根据成员节点数目创建TDMA时间表,并告知成员节点发送数据的时隙,成员节点只有在所分配的时隙内发送数据,其余时间则处于休眠状态以节约能量,成员节点发送的数据在簇首处融合并最终由簇首发送至基站。在数据的传送中为了防止簇与簇之间的通信干扰,每个簇都使用一个特殊的代码,簇头到基站的数据发送采用载波检测多址接入技术(CSMA)。当簇头有数据发送时,先检测信道是否空闲,当信道有数据传送时节点等待,直到信道空闲一段时间后再进行数据的发送。

  (3)能耗分析

  在M×M的区域部署N个无线传感器节点,分为k个簇,每个簇中有N/K个节点(一个簇首节点,其余为非簇首节点),传感器节点发送l bit数据,簇首在一轮中消耗的能量为:

  58.jpg

  从以上可知,传感器网络中,网络的能耗主要是簇传输数据能量消耗和成簇的能量消耗。在已知网络中,节点数N、发送和接收电路的能耗Eelec、功率放大系数εamp和εfs、数据融合能耗EDA都是一定的,而簇数k、簇首节点到基站的距离dtoBS、簇内成员到簇首的距离dtoCH是不确定的,但是在本文讨论的网络中因为都是随机的,假设其差别不大。现在能量消耗的节省主要从成簇方面进行考虑,Etotal是一定的,因为引入奇数、偶数轮成簇机制,每两轮才产生一轮成簇的能量消耗,很显然延长了总的网络寿命,同时,在簇首的选择时,只有那些剩余能量较高的节点优先选为簇首节点,可以有效均衡网络能耗,进一步延长网络寿命。

3 仿真结果及其分析

  3.1 仿真环境

  为了验证本文算法的性能,在MATLAB平台上进行仿真比较。100个无线传感器节点随机分布在100 m×100 m的区域内,根据参考文献[5]的分析,LEACH算法每轮最佳簇首个数I@(34H5G@`[_[@QT_`~[WZO.jpg,约为节点总数的5%,仿真中选择k为5,仿真参数如表1所示。

004.jpg

  3.2 LEACH和LEACH-OE性能的比较

002.jpg


  在MATLAB环境下仿真LEACH-OE与LEACH协议,两种协议运行5 000轮后生存和死亡节点的分布如图2所示。LEACH协议在1 127轮开始有节点死亡,而LEACH-OE在1 435轮开始有节点死亡,这是因为在簇首选择时LEACH-OE考虑了能量因素。而节点完全死亡LEACH-OE达到了2 782轮,远远大于LEACH的2 237轮,轮数提高了24.5%左右。因为LEACH-OE协议引入了奇数轮成簇机制,更节省网络的整体能量,延缓节点死亡的时间,从而使网络生命周期得到延长。

003.jpg

  两种协议能量的消耗如图3所示,比较可知在运行同等轮数的情况下,LEACH-OE能量的消耗明显比LEACH要小,在运行轮数为1 000的情况下,LEACH-OE比LEACH能量消耗要少21%左右,如图可知,最终网络中节点全部死亡的时候网络总的能量消耗是相等的,运行的时间越长,网络更有优势。

4 结论

  为提高网络的生存时间,平衡节点的能量消耗,本文提出了一种基于能量和奇偶轮的分簇式无线传感器网络路由协议(LEACH-OE),在奇数轮成簇的过程中,簇首的选择考虑到节点的能量因素,选择能量更高的节点作为簇首,在偶数轮直接选择能量最高节点作为簇首节点。通过MATLAB仿真实验,对LEACH和LEACH-OE在能量消耗、运行轮数方面进行比较。结果表明,LEACH-OE协议在负载均衡和能量消耗方面有很大的改善,可以有效地延长网络生存时间。

参考文献

  [1] 孙利民,李建中,陈渝,等.无线传感器网络[M].北京:清华大学出版社,2005.

  [2] AKYKLDIZ I F. Wireless sensor networks: a survey[J]. Computer Network, 2002,38(4):393-422.

  [3] HEINZELMAN W, CHANDRAKASAN A, BALAKRISHNAN H. An application-specific protocol architecture for wireless microsensor networks[J]. IEEE Transaction on Wireless Communications,2002,1(4):660-670.

  [4] BANDYOPADHYAY S, COYLE E J. Minimizing communication costs in hierarchically clustered networks of wireless sensors[J]. Wireless Communications and Networking,2003(2):1274-1279.

  [5] 张辉,许峰.WSN中基于权值的Leach协议的研究与改进[J].微计算机信息,2010,26(8):199-201.


此内容为AET网站原创,未经授权禁止转载。