WSN经典路由协议比较

2014-04-29 22:55何磊郭晓军赵江波
智能计算机与应用 2014年2期
关键词:路由协议

何磊 郭晓军 赵江波

摘 要:本文首先介绍了WSN路由协议的特殊性、路由协议的分类等,然后针对WSN的几个经典路由协议,从协议的实现过程、协议特点、优缺点、适用领域等方面进行了分析,最后对这些路由协议的节能性、可扩展性、鲁棒性等方面进行了比较,以期为WSN路由协议的选用及进一步研究提供参考。

关键词:WSN;路由协议;分析与比较

中图分类号:TP393 文献标识码:A 文章编号:2095-2163(2014)02-

A Comparison of Classic Routing Protocols in WSN

HE Lei,GUO Xiaojun,ZHAO jiangbo

(Institute of Information Engineering, Tibet University for Nationalities, Xianyang Shaanxi 712082,China)

Abstract:After introducing the particularity and the classifications of WSN routing protocols, this paper analyses the realization process, the characteristics, the pros and cons and the scope of application of several classic routing protocols. Finally this article does some comparison among these routing protocols in aspect of energy saving, expandability and robustness, to provide a reference for selection and further studies.

Key words:WSN;Routing protocols;Analysis and comparison

0 引 言

WSN(Wireless Sensor Network,无线传感器网络)由部署在目标区域内的多个具有一定通信和计算能力的微型传感器节点组成,这些节点通过无线通信技术(如ZigBee技术)形成一个多跳自组织的网络系统,协作地感知处理网络覆盖区域内目标对象的信息发送给远程观测者[1]。

WSN具有组网灵活、容易部署、扩展性强、抗毁性能优、支持移动性、成本低等优点,获得了快速发展,现已广泛应用于环境监测、军事侦测、医疗健康、工业生产、抢险救灾等多个领域。WSN综合了诸如传感器技术、微机电系统、嵌入式计算技术、现代无线通信技术、分布式信息融合和处理技术等多门类的专业技术知识,是目前倍受关注的重点研究领域[2]。

1 关于WSN路由协议

路由协议是WSN的关键技术之一,负责将数据分组从源节点通过网络转发到目的节点。路由协议的功能主要涵盖两个方面:寻找源节点和目的节点的优化路径;将数据分组沿着优化路径正确转发。

不同于以往的传统网络,WSN的节点大多由电池供电,往往能量有限且不易更换,而许多场合下却需要WSN连续工作数年、甚至更长;WSN的节点结构简单,存储、处理、通信能力低;WSN单个节点可靠性差等,这些特殊性对路由协议提出以下要求:

(1)能量优先。WSN要求路由协议不仅要选择能量消耗小的消息传输路径,而且要考虑使整个网络能量均衡消耗。考虑节点的能量消耗以及网络能量均衡使用是WSN路由协议设计的重要目标。

(2)简单高效。WSN节点不能存储大量的路由信息和进行复杂的路由计算,路由协议必须简单高效地实现信息传输。

(3)快速收敛。WSN拓扑结构动态变化,通信带宽等资源有限,路由机制要能够快速收敛。

(4)具有鲁棒性。能量用尽或环境因素造成传感器节点失败,新节点加入及节点移动等使网络拓扑结构发生变化,周围环境影响无线链路的通信质量以及链路本身的缺点等不可靠性要求路由机制必须具有一定的容错能力。

WSN的路由协议除了需符合以上要求外,还具有如下的特点:

(1)以数据为中心。WSN的很多应用往往只关注监测区域的感知数据,而不看重具体是哪个节点获取的信息,而且是按照对感知数据的需求,以数据为中心形成消息的转发路径。

(2)具有明显的方向性。WSN的主要业务是汇聚节点(Sink)向其他传感器节点下达查询命令及传感器节点将采集到的信息传给汇聚节点,是典型的多对一和一对多的模式,具有明显的方向性。

(3)路由与应用相关。没有一个路由协议适合所有的WSN应用,需要针对不同的应用,选取或设计与之相适应的路由机制。

2 WSN路由协议的分类

不同的WSN应用领域,就会有对各特性不同的敏感度。针对各种特性相对应的要求,研究人员提出了多种路由协议。众多的WSN路由协议,按照各自侧重以及分类方法的不同就会有不同的分类结果。综合参考文献[1]和文献[3],分类结果及各类路由协议的优缺点如下。

(1)按路由过程是否考虑节点的剩余能量可分为能量感知路由和非能量感知路由。能量感知路由协议主要考虑数据传输上的能量消耗,以最优能量消耗路径、各节点能量的均衡消耗等争取最长网络生存时间。

(2)按节点在路由过程中的作用是否相同可分为层次路由协议和平面路由协议。层次路由协议扩展性好,适用于大规模的传感器网络,但维护簇有较大的开销,且簇头是路由的关键节点,其失效将导致路由失败;平面路由协议实现简单,健壮性好,但建立、维护路由的开销大,实现数据传输的跳数往往较多,能耗较大,因而仅适用于小规模网络。

(3)按路由计算中是否利用节点的位置信息、是否以地理信息来标识目的地可分为基于位置的路由协议和非基于位置的路由协议。在一些如目标定位、目标跟踪等应用中需要知道探测到事件发生的节点的地理位置,这类应用需要用GPS定位系统或者其他定位方法辅助节点计算其位置并进行定位。以节点的位置信息为基础,实现WSN路由、进行传输路径的选择和控制等目标性更强,可大大降低系统建立路由及维护路由的能耗,但传感器节点需具有定位模块或其他辅助定位及定位计算来实现自身的定位等。

(4)按路由建立与数据发送之间的时机关系可分为主动路由协议、按需路由协议和混合路由协议。主动路由协议在数据传送之前建立路由,建立、维护路由的开销大,对资源的要求高;按需路由协议在数据发送时才建立所需的路由,在传输前计算路由所在数据传送时延大;混合路由协议综合主动路由和按需路由,是这两种方式的折中及优化[5]。

(5)按是否对数据类型进行定义和命名可分为基于数据的路由协议和非基于数据的路由协议。大量的WSN应用是查询并要求上传某种类型的数据,这样的应用就可使用基于数据的路由,使监测到此类数据的节点才发送数据,减少不必要的数据发送,从而减少冲突,也减少了能耗,但基于数据的路由需要相关的分类机制对数据类型进行命名。

(6)按路由建立时机是否与查询有关可分为查询驱动的路由协议和非查询驱动的路由协议。在如环境监测等应用场合中,WSN以汇聚节点发出查询命令,传感器节点向查询节点报告采集的数据的形式工作。数据传输主要是汇聚节点发出的查询命令和传感器节点采集的数据,数据在路径上传输时通常要进行数据融合,以减少通信量来节省能源。查询驱动的路由协议能够缩减节点存储空间,但数据时延较大,不适合某些需紧急上报的应用。

(7)按数据在传输过程中采用路径的多少可分为单路径路由协议和多路径路由协议。WSN链路的稳定性难以保证,通信信道质量比较低,再加上节点运动拓扑变化等WSN的链路质量很差,需要采用多路径路由协议才能保证较高的网络服务质量,以满足某些需要可靠性和实时性,并对通信的QoS有较高要求的WSN应用的需要。以上两种路由也各有优缺点:单路径路由可节约存储空间,数据通信量少,因而必然节能;多路径路由容错性强,健壮性好,并可从众多路由中选择一条最优路由[5]。

3 WSN经典路由协议

在众多的无线传感器路由协议中,有一些是WSN经典路由协议,其他的很多路由协议,只是在这些路由协议的基础上,对某一方面进行了一定程度的改善,或为适应某一应用在相应特性上实现了一些提高。在此,文中只分析讨论如下最具代表性的经典协议。

3.1 扩散法(Flooding)

扩散法是WSN最经典、且简单的路由协议,该协议不需要知道网络拓扑结构。其实现过程是:节点S希望发送数据给节点D,节点S首先通过网络将数据的副本传给节点的每一个邻居节点A、B、C、E、F,而每一个邻居节点又将其传给除S外的其他邻居节点,直到满足以下三项之一停止传送,即:将数据传到D,该数据的生命期限终结,所有节点已拥有此数据的副本。扩散法的实现过程如图1所示。

图1 扩散法的实现过程

Fig.1 The implementation process of Flooding

扩散法不需要保存网络拓扑信息,也不需要用复杂的计算来实现路由算法而消耗计算资源,但存在一个节点可能得到多个数据副本的信息爆炸问题;此外,扩散法没有考虑各节点的能量,无法作出相应的自适应路由选择,网络可能早死。

该方法的优点为:不需保存网络拓扑信息和进行路由计算。简单,对计算资源依赖低。

该方法的缺点为:存在信息爆炸、信息重复问题;并未考虑各节点能量,部分节点能量会提前耗尽网络有早死可能。

该方法主要适用于:小规模,健壮性要求高的应用。

3.2 DD路由

DD(directed diffusion)定向扩散路由是一个经典的基于数据的、查询驱动的路由协议[3]。实现过程可分为兴趣扩散、梯度建立、路径加强三个阶段。对每个阶段的详尽分析如下。

(1)汇聚节点通过兴趣消息扩散发出查询任务,兴趣消息(例如监测区域内的湿度、温度信息等)采用洪泛方式传播给所有传感器节点。每个节点都在本地保存一个兴趣列表,其中专门设置一个表项用来记录发送该兴趣消息的邻居节点、数据发送速率和时间戳等相关信息。

(2)在上一阶段的消息传播过程中,路由协议逐跳地在各个传感器节点上建立反方向的从数据源节点到汇聚节点的数据传输梯度。

(3)传感器节点将采集到的数据以传输梯度选择较优的路径,并沿梯度方向传递到汇聚节点。

这一方法的优点在于:该协议的每个节点都可以进行数据融合操作,能减少数据通信量,节点只需要和邻居节点通信,使用查询驱动机制按需建立路由, 数据的发送是基于需求的等节能特性。而且采用了多路径方式,健壮性好。

该方法的缺点是:使用洪泛方式传播兴趣消息,梯度建立需一定的时间和能量开销,收到的数据可能有重复。

该法主要适用于:具有极好的健壮性,可用于军事目的。不适合多Sink网络。

3.3 谣传路由

谣传路由(Rumor Routing)使用了查询消息的单播随机转发机制。其实现过程为:每个传感器节点维护一个邻居列表和一个事件列表,当传感器节点监测到一个事件发生时,在事件列表中增加一个表项并根据概率产生一个代理消息,代理消息是一个包含事件相关信息的分组,代理消息沿随机路径向外扩散传播,邻居节点收到代理消息后检查自己的表项,并根据收到的代理消息中的事件更新和增加表项。同时,汇聚节点发送的查询消息也沿随机路径在网络中传播,当代理消息和查询消息的传输路径交叉在一起时,就会形成一条汇聚节点到事件传感器节点的完整路径。

该方法的优点是:有效地减少了路由建立的能量开销,是一个能量高效的路由。

该方法的缺点是:数据传输路径不是最优路径,可能存在路由环路问题。

该法主要适用于:多sink点、查询请求数目很大、网络事件很少的传感器网络。

3.4 SPIN路由

SPIN (Sensor Protocols for Information via Negotiation)路由协议是第一个基于数据的路由协议[3]。SPIN采用了三种数据包来通信:

(1)ADV用于新数据的广播,当节点有数据要发送时,利用该数据包向外广播;

(2)REQ用于请求发送数据,当节点希望接收数据时,发送该报文;

(3)DATA包含带有Meta-data头部数据的数据报文。

具体实现过程是:一个传感器节点在发送DATA数据包之前,先向各邻居节点以广播方式发送ADV数据包,若某个邻居节点希望接收这个DATA数据包,就向该节点发送REQ数据包,当节点接收到REQ包后即向其邻居节点发送所接收的DATA数据包。SPIN协议的实现过程如图2所示。

图2 SPIN协议的实现过程

Fig.2 The implementation process of SPIN

SPIN 协议通过协商完成资源自适应算法,即在发送真正数据之前,通过协商压缩重复的信息,避免冗余数据的发送;此外,SPIN 协议有权访问每个节点的当前能量水平,根据节点剩余能量水平调整协议,可以在一定程度上延长网络的生存期。

该方法的优点为:使用ADV消息减轻了内爆问题;通过数据命名解决了交叠问题;只发送必要的数据避免冗余;可感知节点剩余能量,延长网络的生存期。

该方法的缺点为:可能出现“数据盲点”;算法较复杂,数据传递有时延。

该法主要适用于:对网络生存期要求较高对实时性要求不高的应用。

3.5 GEAR路由

GEAR(geographical and energy aware routing,地理位置和能量感知路由)假设每个节点知道自己的位置信息和剩余能量信息,并通过一个简单的Hello消息交换机制可知道所有邻居节点的位置信息。已知事件区域的位置信息,节点间的无线链路是对称的。

具体实现过程为:GEAR路由中查询消息传播分两个阶段。首先,汇聚节点根据事件区域的地理位置发出查询命令,当节点收到查询数据包时,先检查是否有邻居比其更接近目标区域。如有就选择离目标区域最近的节点作为数据传递的下一跳节点。如果查询数据包已经到达目标区域,该节点利用受限的扩散方式发布该数据将查询命令传播到区域内的所有其他节点。相关节点则将监测数据沿查询消息的反向路径向汇聚节点传送。

该方法的优点是:避免采用洪泛方式使路由建立过程的开销过大。

该方法的缺点是:缺乏足够的拓扑信息,路由过程中可能遇到路由空洞。

该法主要适用于:节点移动性不强的应用环境。

3.6 GEM路由

GEM(graph embedding)地理位置路由的基本思想是建立一个虚拟极坐标系统(VPCS, Virtual Polar Coordinate System),网络拓扑结构是各节点形成的一个以汇聚节点为根的带环树,每个节点用到树根的跳数距离和角度范围来表示,节点间的数据路由通过这个带环树实现。

实现过程是:

⑴建立路由。

①建立虚拟极坐标系统,②由跳数建立路由,③扩展到整个网络形成生成树型结构,④从叶节点开始反馈子树的大小,即树中包含的节点数目,⑤确定每个子节点的虚拟角度范围。

⑵传送消息。节点收到一个消息就检查是否在自己的角度范围内,不在自己的角度范围内就向父节点传递,最终消息到达包含目的位置角度的节点。

⑶更新路由。当实际网络拓扑结构发生变化(比如节点加入和节点失效)时需及时更新路由。

该方法的优点是:用生成树、虚拟极坐标等使转发更有目的性,减少通信次数节约能量。

该方法的缺点是:建立虚拟极坐标系统等较复杂,需耗费时间及计算资源。

该法主要适用于:以数据中心为存储方式的传感器网络。

3.7 LEACH路由

LEACH(low energy adaptive clustering hierarchy,低功耗自适应集簇分层路由协议)是第一个提出数据聚合的层次路由协议,是一种自适应分簇路由算法。具体实现过程为:LEACH 不断地循环执行簇的重构过程,通常可以分为两个阶段。一是簇的建立阶段。在该阶段按均等的机会选举出簇头使网络中各节点相对均衡地消耗能量,选举出的簇头节点进行广播告知整个网络,未被选为簇头的普通节点根据收到的信号强弱选择加入的簇。在选举簇头时每个节点随机产生一个值,小于某阈值的节点就成为簇首节点。二是传输数据的稳定阶段。在该阶段中,簇内节点将采集的数据发送到簇首节点,簇首节点将信息融合后送给汇聚点。一段时间后,重新建立簇,不断循环。每次簇头都会由于为他家提供服务而消耗较多的能量,但簇内节点因为是都通过簇头结点与基站进行通信,而减少了直接与基站进行通信的节点数量,进而也减少了网络总体的能量消耗。

该方法的优点是:容易在簇头进行数据融合,可减少数据通信量;随机选择簇头,平均分担路由业务,能量消耗均衡,整个网络的生存时间较长;并且容易扩展。

该方法的缺点是:选举出的簇头分布不均匀;分簇有额外开销及覆盖问题。

该法主要适合于:每个节点在单位时间内需要发送的数据量基本相同,数据量较均衡的应用。不适合突发数据通信。

3.8 PEGASIS 协议

PEGASIS ( power efficient gathering in sensor information systems) 是一种基于贪婪算法的路由策略。该协议的核心思想与LEACH一致,即尽量减少直接与基站进行通信的节点数量[4]。其实现过程为:首先使用贪婪算法构成一条边长之和接近最小的链,该策略在每轮会选举一个链内簇头节点,当通信开始的时候,数据会从最远端节点开始沿链向簇首节点发送,每经过一个节点都会进行一次数据融合,直至到达簇首节点后由簇首节点将融合后的数据发送到基站。

该方法的优点是:每个节点都以最小能量、最少次数发送数据包,能量高效,能量消耗相对均衡;数据融合完备,冗余量低。

该方法的缺点是:链内簇首节点的失效将破坏整个网络的运行,容错性差;节点较多时,形成的链会很长,如此即会使数据延迟加重,实时性差。

该法主要适用于:追求网络生存时间的中等规模网络。

4 WSN经典路由协议比较

延长网络的生存时间是大多数WSN路由协议致力达到的首要目标,这就要求WSN路由协议提供节能策略,具有能量有效性以延长节点的寿命,也要求WSN路由协议能均衡地消耗能量,以及具有快速收敛性。很多应用场合对WSN路由协议的可扩展性也提出了要求,另外一些应用则对健壮性也提出了要求。根据这些标准,文中对以上WSN经典路由协议进行比较,比较结果如表1所示。

表1 各经典协议的比较

Tab.1 The comparison of classic routing protocols

协议名称 分类描述 特点 节能策略 可扩展性 健壮性 网络生存时间

Flooding 平面、多路径 采用洪泛、能量消耗快 无 只能小规模网络 很好 短

DD 平面、基于数据、查询驱动、按需、多路径 兴趣扩散采用洪泛 有限 受限 很好 稍长

Rumor Roution 平面,按需 查询消息单播随机转发、能量高效 有 受限 好 较长

SPIN 平面、能量感知、基于数据、按需 网络生存期长 有 好 好 较长

GEAR 平面、能量感知、基于地理位置、主动 根据事件区域的地理位置发出查询命令 有 好 好 较长

GEM 平面、基于地理位置、主动 利用虚拟极坐标算法发送消息 有 好 好 较长

LEACH 分层、主动 随机产生簇头能量均衡消耗、数据聚合 有 很好 簇头可能失效 长

PEGASIS 分层、主动、 能量高效、能耗均衡、数据聚合 有 好 链首可能失效、链可能断 很长

由表1可见,其中的WSN经典路由协议在设计时均有各自的侧重点和最优的方面,因而虽然可以对这些协议按一些衡量标准进行比较,但却不能得出哪个协议最好的结论。但是这些协议的出现都极大地推进和影响了WSN路由协议的发展,并且对WSN路由协议的研究和改进具有不可言喻的重大意义。

5 结束语

WSN的路由协议选用与以下几个因素密切相关:

(1)应用场合。应用场合不同,最重视的网络属性也相应不同,应选用最重视属性为优的协议。

(2)网络规模。网络中节点数量的多少决定协议的选用,节点太多要考虑分层协议,节点很少才能考虑应用某些协议,诸如Flooding协议。

(3)网络中节点是否同构。节点异构可优先考虑分层协议,并选取能量多能力强的节点作为簇头。

(4)网络的数据传输频率及数据量大小。据此可选用更合适的协议。

本文对WSN的经典路由协议进行了介绍和比较,以期对简单背景下的路由算法选用提供参考,而对复杂的应用即需要考虑对协议的改造及单独设计。本文并未考虑安全性等方面的要求,而且只是对涉及到的有限几个方面的性能进行了比较,亟需后续研究的进一步完善。

参考文献:

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

[2] 李晓维.无线传感器网络技术[M].北京:北京理工大学出版社,2007.

[3] 唐勇,周明天,张欣.无线传感器网络路由协议研究进展[J].软件学报,2006,(3):410-421.

[4] 孙扬,何建忠.WSN自适应负载均衡集簇分层路由协议[J].计算机工程与设计,2013,(2):423-427.

[5] 何永刚.无线传感网路由空洞问题的研究[D].苏州大学,2010.

猜你喜欢
路由协议
精确打击效能评估系统中路由协议的研究
中小企业多路由协议互联网络规划与实现
关于无线MESH网络路由协议的分析与研究
基于混合型智能算法的WSN路由协议优化
经典路由协议在战场环境下的仿真与评测
无线传感器网络TTDD路由协议的研究
基于PacketTracer软件的OSPF协议仿真教学实验
省级电力数据通信网优化方案研究
基于蓝牙组网的灯光控制系统研究与设计
探究无线传感器网络路由协议及数据融合技术