第36卷 第1期 计算机工程 2010年1月 VoL36 No.1 Computer Engineering January 2010 ・网络与:通信・ 文章编号:l00o__3428(2010)0l—_0134—_o2 文献标识码:A 中圈分类号:TP393 无线传感器网络的能量均衡路由算法 张海洋,曾凡仔,罗娟,李仁发 (湖南大学计算机与通信学院,长沙410012) 摘要:针对大部分无线传感器网络路由协议只能实现局部能量均衡的问题,提出一种改进的能量均衡路由算法,把传感器网络构建成按 最小跳数分层的网络,利用节点直接传输和逐跳转发相结合的混合传输策略,在多跳传输时,使用改进的基于多路径路由的最大能量路径 算法。仿真结果表明,该算法能有效延长网络的生存时间。 关键词:无线传感器网络;能量均衡;网络寿命;多路径路由 Energy Balance Routing Algorithm for Wireless Sensor Networks ZHANG Hai—yang,ZENG Fan—zi,LUO Juan,LI Ren-fa (School ofComputer and Communication,Hunan University,Changsha 410012) [Abstract]Most current protocols just achieve the local energy balance of Wireless Sensor Networks(WSNs).To solve this problem,a modiifed energy balance routing algorithm is proposed.It constructs a layered network by minimum hop count,and uses a mixed transmission mode resulting from hop—by—hop forwarding combined with direct forwarding.In hop—by—hop transmission.it uses the modiifed multi—path routing scheme based on maximum energy path.Simulation results show the lifetime ofthe networks is prolonged efifciently. [Key wordsl Wireless Sensor Networks(WSNs);energy balanee;longevity ofnetworks;multi—path routing 1概述 的到sink的最小跳数。初始时,sink设置为hs=0,其他节 在无线传感器网络中,节点能量有限且一般没有能量补 点 的 为无穷大。sink向网络广播带 的路由创建消息。 充。保持每个节点的能耗均衡对避免网络失效具有重要意义。 节点“从v接收到一个路由创建消息后,取出h 进行以下 多路径路由在路由过程中可以选择不同的路径,能够平衡节 比较: 点能量的消耗,成为无线传感器网络路由研究的热点。 (1)如果 >hu一1,“什么都不做。 文献[1]提出高弹性能量有效多路径路由(HREEMR),构 (2)如果hv= 一1,“把v加入到它的路由表中。 造并维护少数几条备份路径,主路径失效后,可以从备份路 径中选择一条替代,但该协议在发现和维护多条路径方面开 (3) ̄11果矗,<h一1,“清空路由表中已有内容,并将v加 销很大。文献[2]提出负载平衡多路径路由(LBMPR),依赖传 入路由表中。然后, 设置 = +1,重新广播带 的路由 感器节点的地理位置生成从源节点到汇聚节点(sink)的多条 创建消息。 路径,数据通信均匀分布于不同路径,以达到节点问的负载 3层内能量均衡多跳路由机制 平衡,该算法的性能依赖于2个参数的选取,但较难合适地 在上述分层网络中,每个节点到sink可能存在多条最小 选取。文献[3]提出能量感知路由(EAR),通过一定的概率选 跳数路径。本文的算法在多条最小跳数路径中选择能量最大 择和维护多条路径来均衡网络能量的消耗,但该机制没有考 的进行路由。路径能量指该路径中所有节点的剩余能量的最 虑对距离(跳数)的优化,且需周期性地实施洪泛查询来进行 小值。 路由维护,增加协议开销。文献[4]提出一个基于多路径路由 定义节点W到sink的路径为所有最小跳数路径中能量最 的最大容量路由机¥1](MCP),选择能量最大的路径进行路由, 大的路径,设该路径能量为p(w),则p(w)=min(e(w),p(u )), 能较好地实现局部区域的能量均衡问题,但未解决sink附近 其中, (w)为节点W的剩余能量;p(u )为下一跳节点到sink 区域能量消耗热点问题,且该算法在路由维护时每次选择的 所有最小跳数路径的能量的最大值。多路径分层网络如 不是最大能量路径。 图1所示。其中,h代表节点跳数;e代表节点能量。节点e 本文提出一个基于文献[4]的改进算法,改进了MCP的 到sink有2条最小跳数路径: 路由维护算法,使其每次都能选取最大能量路径。 e b_÷a s.e_÷d_÷C—》S 2算法网络模型 其中,路径b a s的能量为节点a的剩余能量值, 本文研究的网络由一个sink和多个随机均匀分布的节点 p(b)=35;路径d_÷C S的能量为节点C的剩余能量值, 构成。当网络工作时,节点既可以一定的概率将数据转发给 基金项目:国家自然科学基金资助项目(60673061);湖南省自然科学 下一跳节点,又可以直接把数据传送给sink,多跳传输时节 基金资助项目(06JJ50113) 点的通信半径相同。在网络工作前,通过初始化把网络构造 作者倚介:张海洋(1983--),男,硕士研究生,主研方向:无线传感 成按最小跳数分层的网络。 器网络;曾凡仔、罗娟,副教授;李仁发,教授、博士生导师 基于最小跳数的分层网络实现方法如下:令h.,为节点v 收稿日期:2009・05—20 E—mail:jiuziheima@1 63.com 134一 p(d)=10。因此, 决上述问题。基本思想为:每个节点以概率选择直接传输或 p(u )=max(p(b),p( )),p(P)=min(e(e),p(u )) 逐跳转发数据,最外围区域的节点,由于无须转发或转发的 节点e没有选择剩余能量最大的节点d为下一跳节点, 数据较少,因此可以较大概率选择直接传输,从而减轻中间 而选择路径e b一÷a_÷s来传输数据,避免了节点c过早死 区域节点负载;中间区域的节点基本以逐跳转发数据;靠近 亡导致网络的不连通。 sink区域的节点与sink距离较小,直接与sink通信消耗的能 量有限,也可以较低概率直接与sink通信。计算节点直接与 sink通信的概率P 是实现层间能量均衡使用的关键。 计算p 的算法如下 J:令S 为第i层消耗的总能量,为 实现各层之间能量的均衡,每层节点消耗的能量满足: E[3 】E【S ] 一he) 1,Pfc):10 s S1 图1多路径分层罔络 其中, 为各层的区域面积,即: 3.1层内能量均衡多跳路由的创建 每个节点v维护一个路由表,表中记录可能的下一跳路 E 由节点(“。,,/g:,…, ),及其到sink路径的能量值 ), ),…, 其中, 为i层要处理的负载数;a 为处理每个负载消耗的 p(u )),并记录p(u ),p(u )=max(p(u.),p(u2),…,p(u ))。构 能量。 造分层网络的同时进行路由的创建。sink节点向网络广播带 定义:E[g ]=N、 ,其中,Ⅳ为节点总数;E[g 】为第 =0,p(s)=。。的路由创建消息。节点v把“加入路由表时, i层节点发送自己产生的负载消耗的平均能量。 记录p(u)的值,同时与p(u )进行比较,如果其值大于p(u ), 定义: 则令p(u )=p( )。 3.2层内能量均衡多耽路由的维护 E =一∑ MCP机制的路由维护通过数据包来更新节点的能量,不 (∑?: (a/E[g/卜aj“E[g/+1】)+a1 ̄Elf1) 能保证每次选取的都是能量最大的路径。本文对此进行了改 进。节点U发送数据时在数据包中加入它的更新的路径能量。 其中,q= , = 等 ;研 】为第 层节点转发其他 利用无线通信的侦听机制,路由表中包含“的节点v更新 层节点消耗的平均能量,可由式(1)推导求得。 p(u),同时更新p(u’),并查看p(v)是否有所变化,有则广 定义: 播带p(v)的消息。路由表中含有v且收到广播消息的节点做 E[红]=E[g 】+E[f] (2) 同样检测,依次类推。路由的维护示例如图2所示,其中,P E[f一】J=P E 】 (3) 代表路径能量;e代表节点的剩余能量。节点b发送数据给汇 由式(2)、式(3)可得: 聚节点,消耗8个单位能量,b在发送数据时把更新的路径 : ! 能量p(b)=40—8加入数据包中,节点c的路由表里有b,它 ~ E[g 】十E[f] 能侦听到p(b)的变化,更新路由表中的p(b)值,同时更新 5性能分析 p(u ),此时p(c)=32,其值发生了变化,因此,C发送带p(c) 5.1仿真环境 的广播消息,d收到此消息后更新路由表里面的p(c)值,同 使用omnet进行算法仿真,将本文的算法和文献[4]的 时更新其p(u ),d检测到原来的路径不再是最大能量路径 MCP算法进行比较。网络寿命用来评价路由算法的性能,定 后,选择e所在的路径传输数据。 义为网络中第1个节点消耗完能量时网络延续的时间。用轮 表示网络的寿命。一轮定义为网络中所有节点完成一次对 sink节点的数据发送。两轮之间的时间间隔足够大,使得最 后一个节点能向sink发送完数据。 在6 km×6 km的长方形区域中,分别随机均匀部署 100个和200个节点。仿真时拓扑变化100次。节点多跳传 e,p(P)=35 c,p( =40 输半径为700 m,且都能和sink通信。节点部署后位置不再 p( --40 e(d)=50 发生变化。前一轮数据发送完成后,后一轮才开始发送。节 点的初始化能量均匀分布在[2 000,3 000]中。假设数据包的 长度是固定的。节点多跳传输时单跳消耗能量3个单元,与 sink通信消耗的能量与距离平方成正比,节点接收数据时消 图2路由维护示倒 耗能量0.1个单元。假设信道是无噪声的,数据丢失率为0, 4层间能量均衡的数据传输方法 节点传输覆盖区域为理想的圆,使用对称通信信道。 上述方法构建的多跳路由只在同一层节点中(即局部区 5.2效据结果 域)较好地实现了能量的均衡使用,而没在层间节点实现。例 本文算法和MCP算法的比较结果如图3、图4所示。本 如在能量消耗热点区域(sink附近区域),没有实现与其他区 文算法既考虑了层内区域能量的均衡使用,又考虑了层间区 域节点能量的均衡使用,这些节点会因能量消耗过多过早死 域能量的均衡使用,因此,在95%以上的拓扑中,本文算法 亡。本文采用逐跳转发和直接转发相结合的混合传输模式解 (下转第138页) 系统自动撤销是一个自触发的过程,不管用户是否完成 授过程结束。 转授权任务,系统都根据任务转授的有效时间自动撤销。 (4)Userl将任务转授给User2,同时Delegator对授权步 3应用案例 数和最大角色差度进行相应的调整,即转授权步数减1且最 本文以某公司办公自动化系统中收发文流程为例,阐述 大授权角色差度变为RL =RLmax-RL(此时的授权步数变为2 文件审核过程的转授权问题。部门经理Userl将某发文审核 且RL =2—1=1)。 任务转授予部门副经理User2,该过程如图4所示。 至此,Delegator完成了一次任务转授过程。 4结束语 本文提出的DR—TRBAC转授权模型,通过控制转授步数 和遍历转授权树,可以解决任务的循环转授和重复转授问题, 并根据角色差度约束有效地控制了权限扩散。下一步的主要 工作是如何解决转授过程中的双边协议问题。 参考文献 [1]Barka E,San ̄u R.A Role—based Delegation Model and Some Extensions[C]//Proc.of the 23rd National Information Systems Security Conference.Baltimore,MD,USA:[S.n.】,2000:101—1 14. 图4 DR-TRBAC模型的任务转授实例 [2]Zhang Xinwen,Sejong 0,Sandhu R.PBDM:A Flexible Delegation 具体步骤如下: Model in RBAC[CJ//Proc.of SACMAT’03.Como,Italy:【S.n.】, (1)Userl将任务转授权信息 ul,task,u2, 3,2)向 2003:149—157. Delegator提交,其中3,2分别表示任务可被转授的次数、初 [3 Jacques、3]v'Akhil K,Paulo B.DW-RBAC:A Formal Securiyt Model 始授权用户与被授权用户间的最大角色差度。 of Delegation and Revocation in Workflow Systems[J].Information (2)Delegator根据转授信息进行授权步数和角色差度约 Systems,2007,32(3):365—384. 束验证。本案例中设置授权步数为3,用户角色差度RL= [4]马学彬.工作流中基于D—TRBAC的转授权问题的研究[D].大 RH(u1)一RH(u2)=3—2=1。 连:大连理工大学,2007. (3)Delegator查找是否存在任务的转授权树。若不存在, [5]高利军,徐 蕾.TRBAC中翻转点选择和安全恢复算法的研 则创建该任务的转授权树;否则,根据此次任务转授关系对 究[J].计算机工程,2007,33(9):154—156. 转授权树进行遍历。若找到相同任务转授关系,则此任务转 编辑金胡考 (上接第135页) 比MCP算法的性能好20%左右。MCP算法个别拓扑的轮数 6结束语 高于本文算法,这是因为本文算法以概率选择单跳和多跳传 本文提出一种改进的能量均衡路由算法,能较好地实现 输,会出现偶然的极端现象。在绝大多数情形中本文的算法 局部区域能量均衡与全局区域能量均衡。仿真实验表明该算 性能优于MCP算法。 法有良好的性能。但由于传感器节点的传输半径有限,因此 4O 本文算法只适用于无线传感器网络覆盖区域较小的情形。 35 I二三= l1 .—3O 一 T + - 参考文献 g 25 .. J I蛰 r酣 。 。【1】Ganesan D,Govindan R,Shenker S,et a1.Highly-resilient,Energy— 20 蓬15 ’ y efifcient Multipath Routing in Wireless Sensor Networks[J].Mobile 10 Computing and Communications Review,2001,5(4):251-254. 5 【2】黄刘生,李虹,徐宏力,等.无线传感器网络中基于负载平衡 O 的多路路由[J】.中国科技大学学报,2006,36(8):887—892. 0 20 40 6O 8O 100 拓扑次数 [3]Shah R C,Rabaey J M.Energy Aware Routing for Low Energy Ad 图3随机均匀部署100个节点的实验结果 hoc Sensor Networks[C]//Proc.of the IEEE Wireless Communi— cations and Networking Conference.New York,USA:[S.n.】,2002. l: I. [4】Huang Shih—chang,Jan Rong-hong.Energy—aware,Load Balanced + ^・, Routing Schemes for Sensor Netwerks[C]//Proceedings of the 10th ■—_. 一 ‘. International Conference on Parallel and Distributed Systems. ¥ ,- Newport Beach,CA,USA:[S.n.],2004. [5]Efthymiou C,Nikoletseas S,Rolim J.Energy Balnaced Data Propagation in Wierless Sensor Networks[C]//Proc.of the 4th 0 20 40 60 80 1O0 International Workshop on Mobile,Ad hoc and Sensor Networks. 拓扑次数 Santa Fe,NM,USA:[S.n.],2004. 图4随机均匀部署200个节点的实验结果 编辑顾姣健 138一