改进的ZigBee网络路由算法
ComputerEngineeringandApplications计算机工程与应用
2009,45(5)
95
改进的ZigBee网络路由算法
班艳丽,柴乔林,王芳
BANYan-li,CHAI
Qiao-lin,WANG
Fang
山东大学计算机科学与技术学院,济南250101
SchoolofComputerScience&Technology,ShandongUniversity,JinanShandong250101,China
E-mail:yanli_banl985@163.coin
BAN
Yah-Ii.CRAIQiao-Un。WANGFang.ImprovedroutingalgorithmforZigBeenetworks.ComputerEngineeringand
Applications,2009,45(5):95-97.
Abstract:Aimingmuting
at
theproblemof
networks
RREQ
is
packets
floodingatroutingdiscoveryphaseinZigBeeAODVjralgorithm,allimproved
algorithm
algorithmforZigBeeproposed.AODVjr
and
tree
mutingalgorithm
are
combined
to
controltherange
andthedirectionof
theRREQpacketsinthisimprovedalgorithm.Atthesametime,theresidualenergyofnodesisalsoconsid-
eredtoavoidselectingsomenodeswithlowresidualenergyinroutingselection.Thesimulationresultsindicatethattheenergy
consumptionisin
thisimproved
reducedefficiently,thealgorithm.
problem
ofunbalancebadisresolvedandthelifetimeofthewholenetworkismaximized
Keywords:ZigBee
network;AODVjr
algorithm;treemutingalgorithm;residualenergy;OMNET++simulation
摘要:针对ZigBee网络AODVjr路由算法路由发现过程中的RREQ分组大量洪泛f'-'l题,提出一种改进的ZigBee网络路由算法。改进算法中通过采用AODvjr算法和树路由算法相结合的方式,对RREQ分组的传输范围和大致方向进行控制,同时改进算法中也考虑了节点的剩余能量,路由选择的时候尽量避开剩余能量较低的节点。仿真结果表明,改进算法能有效地节省网络的总体能量消耗,实现网络负载均衡,最大化网络的生存时间。
关键词:ZigBee网络;AODVjr算法;树路由算法;剩余能量;OMNET+舫真
DOI:10.3778/j.issn.1002—8331.2009.05.027
文章编号:1002—8331(2009)05—0095-03
文献标识码:A
中图分类号:TP393
1引言
ZigBee是一种低成本、低功耗、低速率的短距离无线通信新技术,该技术主要针对低速率无线传感器和控制网络而设计,它能够满足小型化、低成本设备(如温度调节装置、照明控制器、环境检测传感器等)的无线联网要求,能广泛地应用于工
22.1
AODVjr算法和树路由算法简述AODVjr算法
AODVjr是AODV的简化版本,具有AODV的主要功能,但
考虑到降低成本、节能、使用方便等特点,简化了AODV的一些特点。
首先AODVjr舍弃了AODV中的目的节点序列号,为了保证路由无回路,AODVjr规定只有目的节点可以对RREQ分组
业、家庭以及医学等需要低功耗、低成本、对数据速率和服务质量要求不高的无线通信应用场合”。
ZigBee网络主要支持AODVjr算法唧日树路由算法M。而
在Mesh结构中一般采用AODvjr算法。AODVjr是在AODV的基础上发展而来的,支持端到端的传输。在路由发现过程中由于RREQ分组大量洪泛,从而导致大量的额外能量消耗,使网络总体耗能过大。尽可能地降低RREQ分组开销fq,也是降低网络整体耗能的途径之一。对传统的AODVjr算法进行了改进,在路由发现过程中采用AODVjr和树路由算法相结合的方法,根据树路由算法的特点对AODVjr中RREQ分组的传输范围和大致方向进行控制,从而减少网络控制开销,节约网络总体耗能。另外,还将考虑节点的剩余能量,从而避某些节点可能会因为业务量过大而过早耗尽电池能量,延长了网络寿命。
进行响应,即使中间节点存在到目的节点的路径也不允许回复
RREQ。同时AODVjr不存在AODV中的“先驱节点列表”,从而
简化了路由表结构。另外AODVjr取消了HELLO信息的发送,
由目的节点定期向源节点发送KEEP-ALIVE连接信息来维持路由。当源节点在一段时问内没有收到目的节点发来的
KEEtALIVE信号时,则认为此路径失效,必要时重新进行路
由发现。
2.2树路由算法
加入ZigBee网络的节点通过IEEE
802.15.4
MAC层提供
的关联过程组成一颗逻辑树,当网络中的节点允许—个新节点通过它加入网络时,它们之间就形成了父子关系,每个进入网
作者简介:班艳丽(1985一),女,硕士研究生,研究方向为网络与分布式技术;柴乔林(1956一),男,教授,研究方向为计算机网络;王芳(1984一),女,
硕士研究生,研究方向为网络与分布式技术。
收稿日期:2008-08-06
修回日期:2008—11-03
万方数据
改进的ZigBee网络路由算法
96
2009,45(5)ComputerEngineeringandApplications计算机工程与应用
络的节点都会得到父节点为其分配的一个在该网络中唯一的网络地址。文献【4—5】对网络地址分配机制均做了详细的描述。
按照文献【4—51中的地址分配机制,图l给出了Cm=4,Rm=3,Lm--4的网络Cskip地址分配的例子。节点内的数字为该节
点的地址,以下均用该节点地址来标示该节点。
图1网络节点地址分配
如果RFD(Reduced
Function
Device,精简功能设备)节点
要发送数据包到嘲络中的其他节点,则直接将该数据包转发给其父节点,由父节点进行转发。
如果—个路由器FFD(Full
Function
De啊ce,全功能设备)
节点要转发数据包到网络地址为D的目的节点,已知该路由器节点的网络地址和深度分别为A和d。
首先,该路由器节点会依据下述表达式判断目的节点是否是其后裔节点:
A<D<A+Cskip(d-1)
(1)
如果目的节点是其后裔节点,则下一跳节点地址为:
fD,如果目的节点是其子节点
肚{A+1+ID-(A+I)J删砌),否则
汜’
否则,如果目的节点不是其后裔节点,则下一跳节点为该
节点的父节点。
3问题的提出
虽然AODVjr可以比树路由算法找到最优路径,但是AODVjr算法在路由发现过程仍然会产生多余的RREQ分组,
这些RREQ分组虽然也参与路由发现过程,但对于最终找到一
条最优的路径并不起到太大作用。如图l所示,节点2要发送数据给节点55,按照树路由算法则需要经过4跳,但是如果按照AODVjr算法,如果RREQ分组的跳数大于4仍然继续洪泛的话,则对最终找到最优路径起不到太大作用。
另外,如果节点2要发送数据到节点107,如果节点2没有到节点107的路由表项,则发起路由发现过程,节点2向其
所有邻居节点发送RREQ分组,由于节点107并不是节点2的
后裔节点,则节点2向其后裔节点发送的RREQ分组,则对于节点2寻找到节点107的最优路径所起的作用不大。
如果节点2要发送数据到节点9,如果节点2没有到节点9的路由表项,则发起路由发现过程,节点2向其所有邻居节点发送RREQ分组,考虑到节点9是节点2的后裔节点,所以节点2向其父节点发送RREQ分组,则对于节点2寻找到节点
万
方数据9的最优路径所起的作用也不大。
另外,在ZigBee网络中,距离中心协调器越近的节点,通常需要转发的数据量就越大,所消耗的能量就越大,如果这些节点耗尽自身能量,不仅自身不能与其他节点通信,还容易造成网络分割,缩短了网络寿命。
针对以上这些问题,将综合AODVjr算法和树路由算法,适当地限制路由发现过程中的RREQ分组的洪泛,并对节点的剩余能量值加以考虑,提出了下面的改进算法。
4改进算法设计
改进算法利用AODVjr和树路由算法相结合的方法,前提是所有节点在加入网络的时候形成—颗逻辑树,每个进入网络的节点都会得到父节点为其分配的一个在该网络中唯一的网络地址。
4.1节点最小剩余能量定义
在ZigBee网络中,距离中心协调器越近的节点,通常需要转发的数据量就越大,体现在ZigBee树形结构上,即深度越小的节点,参与转发的数据量就越大,所以节点的最小剩余能量
就应与节点深度有关,深度越小的节点就应为其预留更多的最小剩余能量值,这样才能保证网络不会因为节点的失效而造成网络分割,甚至网络瘫痪。
假设节点初始能量值为energy,对任一节点i,定义节点最
小剩余能量值E。。公式如下:
‰={_×、/e地斜×了l_XIX
(3)
●
Uz
T1
其中,t表示网络运行时间,d表示节点i的深度(因为节点深度是从0开始编号,所以公式中用深度加1表示),IX为一特定
系数(仿真试验中取值Ix=2),d的作用在于减缓E…值减小的
速度。
从公式(3)可以看出节点的最小能量值与算法执行的时间、
节点的深度均成反比,当t增大到一定程度,某些被停止使用的节点可能又被继续利用,当t趋近于无穷大时,可以认为E。
值趋近于零,此时可以把剩余能量值仍低于E。。的节点看成死
亡节点。并且从时间的倒数曲线我们可以看出,k;。递减的幅度随着时间的增大越来越小,这样的设定符合网络节点能量的实
际睛况,开始节点能量比较充足,乜。递减的速度可以相对较快,但当节点能量普遍较低的情况下,E。,。递减的幅度就应该变慢。
在改进算法中,对每个具有路由功能的FFD节点设置了
变量power标识该节点的剩余能量。当发现节点的p刚er姐。;。
时,该节点停止转发并且发出警告信息alert,告知源节点该路
径上有节点能量过小,很可能引起路径失效,并且设置沿途所有
节点中该路由表项失效,让源节点在必要时重新进行路由发现。
4.2改进的路由算法
从图l的树形结构可以看出,如果使用树路由算法选择路由,可能存在的最长路径应是网络最大深度的2倍,即2Lm。因此改进算法中规定RREQ的最大传输范围为2Lm,这样当RREQ的传输范围超过2Lm时,节点便丢弃接收到的RREQ分组。
ZigBee树路由算法可以通过表达式(1)判断目的节点是否是中问转发节点的后裔节点。因此,如果目的节点是该转发节
点的后裔节点,此时如果仍然让该转发节点的父节点转发
改进的ZigBee网络路由算法
班艳丽,柴乔林,王芳:改进的ZigBee网络路由算法
2009.45(5)
97
RREQ,则通过其父节点寻找最优路径的可能性是很小的。同样,如果目的节点不是该转发节点的一个后裔节点,如果仍让该转发节点的后裔节点转发RREQ分组的话,对寻找最优路径
也没有太大意义。因此,改进算法结合树路由的基本思想,判断
出RREQ分组的大致方向,从而避免RREQ分组沿与目的节点相反的方向洪泛,节约网络总体耗能。
改进算法在AODVjr算法的基础上,对RREQ分组中增加标志位flag:flag--O表示当前节点的父节点不宜转发该RREQ分组,flag=l表示当前节点的后裔节点不宜转发该RREQ分组。
路由方法具体如下:
(1)如果RFD节点要发送数据到网络中其他节点,则RFD节点直接将数据转发给其父节点,由其父节点进行转发。
(2)当具有路由功能的FFD节点要发送数据到网络中的其他节点时,如果源节点的路由表中没有到目的节点的路由表项,则启动路由发现过程。
(3)在路由发现阶段,当节点B作为中间转发节点收到
节点A发来的RREQ分组时,首先节点B检测自身剩余能量power值。
(4)如果power<E,。,则曰丢弃RREQ。
(5)否则,节点B查看RREQ分组里的跳数值,如果跳数
hops>2Lm,丢弃RREQ。
(6)否则,节点曰查看RREQ分组里的flag值,如果flag=O,说明A的父节点不适合转发此RREQ分组。
如果曰是A的父节点,节点曰丢弃RREQ;
如果曰不是A的父节点,判断目的节点是否是节点曰的后裔节点,如果不是,更新flag=l,节点口继续转发RREQ分组,并更新自身power;否则曰直接转发RREQ,并更新自身power。
(7)如果flag=l,说明A的后裔节点不适合转发此RREQ;如果节点B是节点A的后裔节点,节点B丢弃RREQ;如果B不是A的后裔节点,判断目的节点是否是曰的后裔节点,如果
N
Y叵
图2中闯节点对RREQ处理谪程图
万
方数据是其后裔节点,则更新flag=O,节点曰继续转发RREQ,并更新自身power;否则B直接转发RREQ,并更新自身power。(8)当目的节点收到RREQ包时,不论剩余能量多少,都发回—个RREP包。
(9)源节点收到目的节点发来的RREQ分组时,则按照该路由发现的路径进行数据传输。
5算法分析和仿真实验结果5.1算法分析
本文的改进算法是在传统AODvjr算法的基础之上,结合ZigBee树路由算法并考虑到节点剩余能量,针对不同情况,对所收RREQ采用不同的处理方法。同时改进算法又通过公式(3)不断更新节点的最小剩余能量值,使部分被停止使用的节
点继续参与数据的转发,从而防止由于网络中路由节点过少而
出现的拥塞。改进算法过程简单,由各节点独立计算。算法的时问复杂度为O(,v),可以在常量时问内结束。
5.2仿真结果分析
改进算法通过仿真实验和原AODVjr进行了比较,重点是比较两者在传输时网络总体能耗及失效节点个数。仿真结果证明了改进算法的有效性。
仿真工具采用Omnet++3.2pl。网络覆盖面积为300
m×
500m,网络节点数目设置为100个,节点初始能量均为1
000J。
采用的传输信道数据传输率为250KB,数据包长度为128bit。
仿真实验结果如图3、4所示。设置Cm--4,Rm=3,Lm=4。仿真实
验结果如图3,4所示。
TimedsTimeds
图3阿络总体能量消耗随
图4网络中死亡结点个数随
时问的变化曲线
时『BJ的变化曲线
在图3中,曲线l代表AODVjr路由算法运行时网络的总体能量消耗,曲线2代表本文改进算法运行时网络的总体能量消耗。由于改进算法对路由发现过程中的RREQ分组进行了有效的控制,同时又避免把数据传送给能量较低的节点,从而节省了网络整体耗能。
在图4中,曲线l表示AODvjr路由算法运行时网络的死亡节点个数,曲线2表示本文改进算法运行时网络的死亡节点个数。初始阶段,每个节点的能量都很充足,不会产生死亡节点,随着网络运行时间的增长,有的节点频繁作为转发节点消耗很大的能量,AODVjr路由算法没有考虑节点的剩余能量值,所以出现死亡节点的时间比改进算法要早。本文的改进算法由于避开了剩余能量低的节点,选择能量多的节点进行数据转发,所以避免了个别节点过早死亡,均衡网络的负载,最大化网络的生存时间。
6结论
针对传统的ZigBee网络AODVjr路由算法,提出一种改进
(下转116页)
改进的ZigBee网络路由算法
116
2009,45(5)ComputerEngineeringandApplications计算机工程与应用
为了比较原始的最大流算法和提出的PH—MaxFlow算法,特提出了客观的评价标准,更具有说服力。实验结果表明运用所提
的页面所指向的页面,以及所有指向root集的页面,把这些网
页限制在50个以内。由3.1提出PHIST算法得到口…’值较高的
网页为种子节点,再经过3.2PH—MaxFlow算法处理得到所求的社区。用所提出的评价标准对发现的社区进行评价,得到原始最大流算法和提出的PH—MaxFlow算法的对比结果,如表1和表2所示。对比结果,可以看出,使用提出的PH—MaxFlow算法,可以发现更权威的种子节点,从而发现更大更精确的社区,并且社区的划分也比原始的最大流算法合理。
表l原始最大漉算法发现Web设区
出的算法可以发现更符合主题需要的Web社区。参考文献:
[1】1高琰。古士文,唐珊.基于链接分析的web社区发现技术的研究叨.
计算机应用研究,2006(7):183—185.
【21KleinbergJ.Authoritative
gources
in
a
hyperlinked
on
environment[C]//
Discrete
Also-
Proceedingsofthe9thACM—SIAMSymposiumrithms.San
Francisco,USA,Jan25—271998.USA,SIAM,Philadelphia,
1998:668—677.
【3】KumarR,RaghavflnP,RajagopalanS,eta1.TrawlingtheWebfh
emergingcybercommunities[C]//Procofthe8thWWWInterna-
tional
Conference。Toronto,May
11一May
14
1999.Netherlands,E1-
sevierSeiBV。1999:148l一1493.
【4】A8蛐Y,Imai
H,ToyadaM,eta1.Findingneighborcommunitiesin
theWebusinganinter-sitegraph[J].IEICETransactionsonInfor-
mationandSystems,2004,9:2163-2170.
【5】FlakeGW,LawrenceS,GilesCL,eta1.Selforganizationofthe
webandidentificationof
archive.org
connnunities[J1.IEEEComputer,2002,35
of
(3):66-71.
326
o.56
Internet舡№“攀中~
arcnlvlsls.org
【6】ImafujiN,KitsumgawaM.Effects
maximumflow
algorithm
on
archive.org/web/web.php
identifyingwebtionalWorkshoped
States。Nov
eommunity[Cl//ProceedingsoftheFourthInterna-
on
WebInformationandDataManagement.UIIit-
2002.United
States:Associationfor
8
Computing
the
Machinery,2002:43--48.
【71AsanoY,NishizekiT,ToyadaM,eta1.Miningcommunities
on
6结论
首先提出PHITS算法,在一定程度上抑制了原始的HITS算法所存在的“主题偏移”现象,运用PHITS算法发现权威值高的页面,即与主题关系更为密切的页面作为最大流算法的种子节点。采用提出的PH—MaxFlow算法,将种子节点的发现过程和Web社区的发现过程相分离,避免了原始最大流算法反
web
using
a嗽一n删f
andsite—oriented
framework[1].IEICE
Trims
OnInformation
andSystems。2006,E89-D:2606—2615.
conullu-
【8】InoH。KudoM,NakamuraA.Partitioningofwebgraphsby
laity
[9】9
tepology[Cl//ProeofWWW2005,Japan.ACM,2005:661-669.DourisboureY,GeraciF,PellegriniM.Extractionandclassification
ofdensecommunitiesintheWide
Web
Web[C]ffrhe16thInternationalWorld
Conference。Canada,May8-122007.UnitedStates:As-
复检验已发现Web社区中非种子节点的入度和出度的繁琐。
sociationforComputingMachinery.2007:461—470.
(上接97页)
的ZigBee路由算法,改进算法在传统AODVjr路由算法的基础上,结合ZigBee树路由算法,对路由发现过程中的RREQ分组进行控制,并且在数据传输过程中考虑节点剩余能量,并且及
【2】BamntP,PillaiP,ChookVWC.Wirelesssensornetworks:A
on
survey
the
state
ofthe
art
andthe802.15.4andZigBeestand-stards[J1.
Computer
Communications.2007,30(7):1655—1695.
simplified啊.Mobile
【3】ChakeresID,Klein-Bemdt.AODVjr,AODV
时对节点最小剩余能量值既.进行调整,有效地节约了网络整体耗能,并使得网络的能量消耗达到均衡。仿真结果表明,该算
法能有效地避开能量较低的节点进行数据的传输,节省了网络的总体能量消耗,延长了网络的寿命。但该算法没有考虑节点
ComputingandCommunicationReview。2002,6(3):100-101.
[41KimT,Kiln
D,ParkN,eta1.Shortcut
Ire—e
routing
in
ZigBee
network[EB/OL].[2008-02-161.http://resl.ieu.ac.kr/一damiano/proc/
iswpc2007_1.pdf.
【5】RanPeng,SenMao-heng,ZouYou—min.ZigBee
strategy
mutingselection
roll--
运动的情况,也没能提供对不同业务的QoS支持,这些方面正
是未来的研究方向。
basedondataservices
andenergy-balanced五gbee
ting[C]//Proceedingsofthe2006IEEEAsia—PacificConference
400-404.
Oil
selrvicesComputing.WashingtonDC:IEEEComputerSociety,2006:
参考文献:
【1】1
zisBceDocument053474r06[S].Vemion1.0.Zi-gBceAlliance,2004
【6】耿萌.ZigBee路由协议研究【D1.郑州:解放军信息工程大学,2006.
万方数据
改进的ZigBee网络路由算法
改进的ZigBee网络路由算法
作者:作者单位:刊名:英文刊名:年,卷(期):被引用次数:
班艳丽, 柴乔林, 王芳, BAN Yan-li, CHAI Qiao-lin, WANG Fang山东大学,计算机科学与技术学院,济南,250101计算机工程与应用
COMPUTER ENGINEERING AND APPLICATIONS2009,45(5)3次
参考文献(6条)
1.Ran Peng;Sen Mao-heng;Zou You-rain Zig,Bee routing selection strategy based ondata services andenergy-balanced zigbee routing 2006
2.Kim T;Kim D;Park N Shortcut tro-e routing in ZigBee network 20083.Chakeres I D;Klein-Berodt AODVjr,AODV simplified 2002(03)4.耿萌 ZigBee路由协议研究 2006
5.Baront P;Pillai P;Chook V W C Wireless sensor networks:A survey on the state of the art and the802.15.4 and ZigBee stand-stards[外文期刊] 2007(07)
6.ZigBee Document 053474r06 Version 1.0.Zi-gBee Alliance 2004
引证文献(4条)
1.吴凡.胡斌杰 数据融合算法在ZigBee网络中的应用研究[期刊论文]-计算机技术与发展 2011(2)2.李予东.黄宏光.向西西 基于能量均衡的ZigBee路由算法优化[期刊论文]-计算机工程与设计 2011(2)3.彭友.杨恢先.满莎 蚁群优化和能量管理的ZigBee网络路由[期刊论文]-计算机应用 2011(2)4.彭友.杨恢先.满莎 蚁群优化和能量管理的ZigBee网络路由[期刊论文]-计算机应用 2011(2)
本文链接:http:///Periodical_jsjgcyyy200905027.aspx