低功耗分簇路由算法LEACH的能耗分析

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

摘要:文章对无线传感器网络低功耗分簇路由协议的代表性算法—leach的运行机制以及性能做了详细的研究,针对该算法的分簇阶段、簇的建立阶段以及稳定的数据传输阶段的相关原理和运行情况作了深入分析。最后从正反两方面总结了leach协议的运行特性。

关键词:无线传感器网络;分簇路由算法;leach算法

中图分类号:tp393 文献标识码:a 文章编号:1006-4311(2012)33-0186-02

0 引言

1 leach协议描述

leach算法是mit的heinzelma等人设计的一种低能耗自适应集簇分层型路由算法,是为无线传感器网络量身设计的。此算法也是第一个在无线传感器网络中提出的分层次路由协议。在此之后提出的大部分层次式路由协议都是基于leach算法而来的。

1.1 leach协议运作周期 leach算法中簇的形成是分布式的,即节点在无中心控制下决定是否当选簇头。另外,簇的建立不需要在整个网络内进行通信,仅通过每个传感器节点自身的特征来决定的。

leach算法中定义了“轮”的概念,每轮又分为两个阶段:簇的建立阶段和稳定的数据通信阶段。第一阶段,节点按照某种信息自动成簇,随机产生一个簇头;第二阶段,簇内的非簇头节点把监测到的数据发送给簇头,簇头节点对集到的数据进行融合并把结果发送到远处的基站。在网络的初始化阶段,leach算法随机地选取一个传感器节点来充当簇头进行工作。

1.2 leach算法簇头选取机制在leach算法中,假设在t时刻开始第r+1轮簇头的选举,传感器节点i此时当选为簇头的概率为pi(t),簇头的节点的期望值为k,网络中的节点总数为n,确保网络中的所有节点在前n/k轮里都会当选一次簇头。则有以下两种情况:1、pi (t)=k/(n-k*(rmod(n/k)))(当ci(t)=1);2、pi(t)=0(当ci(t)=0)。

r是网络已经工作过的轮数,ci(t)=0为i节点在最近的rmod(n/k)轮当选过簇头,反之,ci(t)=1为相同情况下节点i没有当选过簇头。所以只有节点在前r轮还没有当选过簇头才会拥有相对多的能量,那么就有可能在第r+1轮成为簇头[2]。接下来进入下一个周期。

1.3 簇的建立阶段一旦网络中的节点通过以上描述的方式被选举当做簇头节点,那么这些簇头节点必须向网络中的其他节点通知它们在当前轮中充当簇头的角色。为此,每个簇头节点需要以csma的方式广播一个消息并遵循mac协议[3]。消息一般包含了本身的id号和一个辨认此消息为公告的头文件,并且这个消息必须到达网络中的所有节点。leach算法中的簇头节点扮演了协调本簇数据传输的控制中心的作用。簇头节点建立一个tdma表,并且将此表发送到簇内各成员节点。当所有节点接收到了tdma表的时隙分配情况之后,簇的建立就完成了,同时进入稳定的数据传输阶段。

1.4 稳定的数据传输阶段在稳定的数据传输阶段,一个簇中的所有节点在自己对应的时隙内将监测数据发送到簇头节点,在每一个回合的时间里数据的传送依靠大量的簇内节点。用分布式算法确定簇头节点保证了每轮簇的期望值为k,但是不能保证在每一轮中正好都是k 个簇。因而,在leach算法中每个簇中节点的数目具有高度的不确定性,并且簇内节点传送给簇头的数据量随着簇内节点数的不同会产生变化。

簇头节点要接受所有簇内节点发送数据,则必须保持自己的接收器一直处于工作状态。一旦簇头节点接收到了来自所有节点发送过来的数据之后,即进行数据融合,再将结果发送到基站。因此簇头对基站的数据传输将产生很高的能量消耗。

前面的讨论描述了无线传感器网络簇内的通信。mac协议和路由协议的设计要保证节点的低能量消耗和簇内节点数据传送无冲突。每个簇拥有一个独一无二的传播覆盖代码,簇内

的所有节点利用这个传播代码与簇头之间进行通信,并且簇头也利用这个代码对接收到的内容进行过滤。为了减少邻居簇之间的相互干扰和节点自身的能量浪费,每个节点调节自身的发射能量。这样将会减少传输重叠以及数据传送的覆盖面,同时使得发送数据过程中冲突的可能性降低了。ds-ss方式与tdma时刻表的联合使用有效地降低了簇间和簇内的信号干扰。最后,簇头节点利用csma方式以及本簇固定的传播代码将数据发送到基站,这也避免了簇头同时发送数据到基站造成通信信道的抢占和数据之间的冲突。

2 leach算法特点分析

leach算法是无线传感器网络中具有里程碑意义的一种分层次路由协议。首先,簇头选举、自适应成簇、轮换等可以说是leach的精华[4]。其次,簇头节点为减小数据的传输量而采用的数据融合技术也同样平衡了网络负载。同时算法运用了mac协议以及相关的数据处理技术,达到了比较好的节能效果,具有以下特点:①簇头的选举是随机的。那么在每一轮的运行中,簇头节点各不相同,网络中的能耗也会比较均衡,每一轮中只有节点与基站进行远距离的通信,不需要基站进行过多的控制,易于实现。比较均衡的分担了网络中的通信能耗,明显延长了网络的生命周期。②簇头节点对收集到的从簇内节点发送过来的监测数据进行融合,减少冗余,最后将有效信息传送给基站,节省了网络的能量,从而延长其生命周期。③由于是分层次路由,由簇头节点对所选路径的相关信息进行管理,这种简单明了的实现方式非常适合无线传感器网络。

另外,leach算法在其运行的很多环节上都存在一定的问题:①算法中,随机选举出的簇头不能够保证是均匀的覆盖于整个网络,假如某一区域没有产生一个簇头节点,那么该区域的节点会加入到远方的簇,那么通信能耗会加大,还很可能出现监测盲区。②网络中的节点竞选簇头仅考虑概率相等。而簇头对数据的压缩融合以及与基站通信等能都耗较大,使得剩余能量不够大的簇头,很可能在短时间内耗尽能量,影响网络的生命周期。③由于网络中的节点在成簇时仅考虑加入通信能耗较小的簇,并不考虑簇的大小,这样极容易导致各个簇中的成员节点数不均衡,会增加传感器节点较多的簇的簇头的负载,导致其能耗过大。④本算法中簇头节点都是直接和基站进行通信,那么如果网络覆盖面积很大,距离基站较远的簇头在与基站的通信中也会损失较多能量,很可能提前耗尽能量从而影响整个网络的性能。

3 结束语

leach算法的设计参考了现有的传感器网络及无线网络路由协议的一些相关参数,较为详细和完整。无线传感器网络中的很多协议尤其是分层路由协议都是在leach算法的基础上产生的,因而此算法具有重大研究价值。另外,算法也有不少缺点:簇头节点直接与基站通信,导致某些节点能耗过快;簇头的随机选取不能保证其在在网络中的均匀分布等。这些都是我们在研究和应用leach算法时需要改进的地方。

相关文档
最新文档