无线传感器网络LEACH协议的研究
摘要:无线传感器网络因其在军事、经济、民生等方面广阔的应用前景成为21世纪的前沿热点研究领域[1]。在传感器节点能量有限的情况下,提高路由效率,延长网络寿命成为无线传感器网络需考虑的问题。由于采取分簇,数据融合的思想,LEACH协议有着较高的路由效率,但在实际应用,尤其是大规模网络中,仍存在负载不均衡等问题。本文主要分析了LEACH协议的基本思想及优缺点,随后针对大规模的网络环境对其分簇算法进行改进。前人提出一种有效的方法计算最优簇首个数,本文推算出适合本文中网络环境的公式并加以应用。本文用NS2进行仿真,仿真后的结果表明,改进后的分簇算法更为有效,延长了网络寿命,增大了网络传送数据量。
关键词:无线传感器网络;路由协议;LEACH;分簇思想
Research on Routing Protocol of LEACH in WSN
Shen Y uanyi
Dept. of Information and Telecommunication,NUPT
ABSTRACT:Nowadays, wireless sensor network has become a hot spot of 21st century because of its wide application on military, economy and human life. On the condition that the energy of a sensor node is limited, how to improve the routing efficiency and expand the network’s lifespan has been an important issue to consider. LEACH maintains quite high routing efficiency for its idea of clustering and data gathering. But in practical, it still has problems such as load unbalance especially in large scale network. The article mainly analyses the basic idea of LEACH, the benefits and drawbacks of it and later introduce an improvement on clustering algorithm according to large scale network.
Key words:WSN;routing protocol; LEACH; clustering
1LEACH协议介绍与分析
1.1 LEACH算法思想
算法基本思想[2]是:以循环的方式随机选择簇头节点,将整个网络的能量负载平均分配到每个传感器节点中,从而达到降低网络能源消耗、提高网络整体生存时间的目的。LEACH在运行过程中不断的循环执行簇的重构过程,每个簇重构过程可以用回合的概念来描述[3]。每个回合可以分成两个阶段:簇的建立阶段和传输数据的稳定阶段。
1.2 LEACH算法的分析
LEACH协议的优点[4]有: (1)LEACH 通过减少参与路由计算的节点数目,减少了路由表尺寸。(2)LEACH协议是一种分簇路由协议,降低了非簇首节点的任务复杂度,不必对通信路由进行维护。(3)协议不需要周期性的传输数据。(4)在给定的时间间隔后,协议重新选举簇首节点,以保证无线传感器网络获取同意的能量分布。
由于LEACH算法是建立在一些假设上,所以在实际应用中LEACH协议存在一些问题:(1)在LEACH协议中,簇头的选举是随机产生的,这样的随机性可能会导致簇头
分布不均。簇头节点可能会集中分布在某一区域,分簇就失去了意义。(2)在小规模的网络中,LEACH的表现较为理想,而在大规模的网络中,距离基站较远的节点总要比距离基站较近的节点消耗更多的能量,因而会较早的死亡,使整个网络负载不均衡。(3)簇首选择的时候没有考虑节点的剩余能量,如果某个节点的剩余能量比较小,而它又恰巧被选为簇首节点,由于簇首的能量消耗比较大,那么一旦簇首的能量耗尽,那么该簇所收集的信息将不能传回汇聚节点,从而影响网络的生命周期。
2 LEACH协议的改进
2.1 门限的改进
LEACH在小规模的网络中性能表现较佳,但在大规模的网络环境中,就会出现能量负载不均,性能明显下降的情况。
进一步分析可以发现,在大规模网络中,远距离的节点距离基站的距离较远,无论如何分簇,传输数据要消耗更多的能量。因此在网络中的边缘节点总是较快的耗尽能量。而靠近基站较近的节点,相反的,因为传输数据所要消耗的能量较小,所以通常是最后死亡。结合前人实验的结果,可以得到LEACH协议节点大致的死亡时间分布,见图,最外围的节点死亡的概率最大,次外圈的其次,而最里圈的死亡概率最小。
由于LEACH算法中,在每一
轮中,簇首节点负责数据融合和与
基站通信,比非簇首节点需要消耗
更多的能量。网络中的边缘簇首节点与基站通信本身就要消耗大量的能量,再加上进行数据融合,会很快死亡,甚至有可能在与基站通信时能量就消耗殆尽,造成数据的丢失。可以看出,在大规模的网络环境中,对边缘节点进行分簇,反而会加速边缘节点的死亡,分簇失去了它的意义。因此本文LEACH的改进中,考虑在边缘区域内,不进行分簇,即边缘区域的门限设为0。而为了使整个网络簇首节点的期望值保持不变,相应的,增大边缘区域以外节点的门限值。
为了便于描述,假设d为网络覆盖区域边长的一半,如图2,
为网络覆盖区域内到基站最
d表示基站
到边缘线的距离,距基站大于(1α
-
的范围就是边缘区域;
γ为门限值增大的系数。
2.2 最优簇首节点个数
层次路由协议的第一步就是分簇、选择簇首,簇的个数影响着整个网络的性能和生存周期。若簇首数目过少,每个簇所覆盖的区域过大,
成员节点到簇首节点的距离就会
图1节点死亡概率分布图