墨 麦旦 doi:10.3969/j.issn.1671—1041.2010.06.006 口研究报告口 一种分层无线传感器网络数据收集方法研究 李宏魁 ,邬群辉 (1.中原油田,濮阳457001;2.荆州市卓誉电子技术有限公司,荆州434100) 摘要:无线传感器网络是资源受限的网络,而基于移动sink节点进行 数据收集是提高网络性能的有效机制。我们研究了求解移动节点的调 度的MES算法,提出了基于簇结构和移动sink节点调度相结合的分 层数据收集算法,该算法基于簇结构计算移动sink节点移动路径。最 后。通过仿真验证分析了该算法的性能。结果表明算法能在能量高效的 前提下,显著提升网络时延等Qos性能,且对网络结构和应用环境具 有良好的适应性。 关键词:无线传感器网络;簇;移动sikn调度;QoS 中图分类号:TP393.11;TP273 文献标志码:A The research of a hierarchical data collection approach for wireless sensor networks LI Hong-kui .WU Qun-hui (1.Zhongyuan Oilifeld,Puyang 457001。China;2.Zhuoyu Electronic Technologies Ltd.。Jingzhou 434100,China) Abstract:Wireless Sensor Networks(WSNs)are resource.1imited networks,especially the resources of enemy.Using mobile sink as a solution for collecting the data is an effective way of improving net— work performance.1n this paper。firstly。we analyze the Mobile Ele- ment Scheduling(MES)algorithms such as PBS.Subsequently。a new energY and delay aware Hierarchical Data Collection based on Clusters and Mobile sink(HDCCM)algorithm iS presented which computes the path of mobile sink basing on cluster。not basing on every sensor directly.Last ̄,a simultaion to analyze and evaluate their performances iS implemented.The result show that the pro- posed algorithm not only can enhance Quality of Service(QoS)per- fromances such as delay and data Ioss rate。but also has excellence flexibility to networks topoloqy and size. Key words:wimless sensor network;cluster;mobile sink schedu— ling;QoS O 引言 随着无线传感器网络的发展,出现了移动sinks和移动a— gents的概念。移动sinks节点的加入能够较好的解决网络的 连通性和生存时间问题。目前,移动sinks节点已经应用在一 些场合,如战争监测应用中的战士,环境监测应用中的动物, 交通监测应用中的公共汽车等。我们把这种引入了移动sinks 节点的传感器网络叫做移动sinks无线传感器网络 (mobile sinks Wireless Sensor Networks,mWSNs)。相比静态的无线传 感器网络,mwsNs在能量的高效使用、信道容量、传感器节点 的通讯质量、网络生存周期、网络覆盖度及连通性等方面有着 明显的优势 J,研究表明,凭借少量的移动sinks节点能够明 显改善网络QoS(Quality of Service)性能 』。 数据收集是无线传感器网络的主要功能 J。自然地,如 何使这些数据高效、准确的传送到基站去进行处理和应用是 设计数据收集协议的主要任务。而能量效率、数据丢包率、时 延等指标是设计数据收集方法要主要考虑的QoS指标。因 此,本文通过分析移动sinks无线传感器网络结构,讨论其数据 采集的特点,提出了一种新的基于分层簇结构和移动sink调 度的分层数据收集(Hierarchical Data Collection based on Clus. ters and Mobile sink,HDCCM)算法,该算法平衡了网络能量消 欢迎订阅欢迎撰稿欢迎发布产品广告信息 耗、提高了网络的时延性能和数据包传输成功率。 1分层数据收集算法(HDCCM) 1.1网络模型 引入移动节点是有效提高网络能量效率,提升网络性能 的有效途径。典型分层移动sink无线传感器网络结构 如图 1所示。 基站层 . \ 移动层 传感器层 图1典型的三层mWSNs网络结构 移动sink无线传感器网络最显著的特点在于,它由物理 结构或者功能不同的节点即传感器层节点和移动sink节点组 成。其中,传感器层节点能量和存储空间有限,主要作用是数 据感知和数据局部中继传输。移动sink节点功能相对强大, 通常充当网络中的数据收集者和承担数据的转发任务。为了 叙述方便,我们合理设定传感器层节点均分分布在监测区域, 初始能量相同,部署在不同区域的传感器节点有不同的采样 率。移动sink节点功能强大,存储空间无限,且能量可补充。 在此类型的网络中,移动sink节点在监测区域内移动收 集传感器节点感测的数据,避免网络负载不均匀,保证了网络 的连通性,能有效延长网络寿命。自然地,如何调度移动节点 使网络能耗高效、传感器节点不发生数据溢出,以及较低的端 到端时延是此类数据收集算法所追求的目标,一般地,我们把 这个问题称之为移动节点调度MES(Mobile Element Schedu— ling)问题 J。典型的算法有JMRl4 J,PDC¨4 J,MWSF_4 J, RDC_4 J,PBS J。已有的研究表明:基于移动节点调度的数据 收集算法的性能要普遍好于FloodingI3 J,SHN 等平面结构数 据收集算法和TFDD ,LEACH 3 ,HEED 等分层结构数据收 集算法。但基于移动节点的数据收集算法也有其固有的缺点。 以PBS算法为例,就存在以下两方面的不足:一方面是移动节 点直接和采集数据的传感器节点通讯,使传感器层数据不能 进行数据融合,大量的原始信息浪费了大量的通讯资源和节 点能量,而且当网络规模很大时,需要提高移动节点的移动速 度来满足时延要求和保证节点数据不溢出,但过快的移动速 度同时也会带来数据丢包率的增加,在实际应用中,移动节点 的移动速度也不能无限制的提高。另外一方面,PBS调度算法 都是全局的调度算法,当网络拓扑结构发生变化时,需要重新 计算移动节点的调度路径,特别是当网络较大时,网络性能将 迅速恶化。 1.2基于三层mWSNs网络结构的HDCCM算法 在HDCCM算法中,传感器层节点选举若干簇头来缓存节 点感知的数据,移动sink节点通过移动调度,收集簇头节点中 EIC VO1.17 2O10 No.6 17 口研究报告口 缓存的数据,然后转发给基站,最后用户通过基站或移动sink 节点使用这些数据,并控制网络。其数据收集示意图如图2 仪器仪表用户 根据簇信息数据包计算簇内路径,具体如下: a.分簇信息发布:移动sink向各簇发布其相应的簇信息 所示。 ’★移动节点 0传感器节点 ●糍苜 _- 敏掘中魅路程 … 移动节点路径 图2 HDCCM多跳传输数据图示 具体来说,HDCCM算法包括二个主要阶段:初始化阶段、 数据收集阶段。初始化阶段包括分簇和移动sink节点调度两 部分,其中分簇是指基于监测区域的地理位置、数据发生率及 能量效率把传感器节点分成若干个簇,选举簇头,并建立簇内 多跳传输路径。而移动sink节点调度是指基于簇头的计算机 移动sink节点的移动路径和速度,以保证簇头节点数据不溢 出,从而建立簇间数据传输路径。数据收集阶段则是指传感 器层节点感知监测区域数据,对周期性数据通过多跳传输至 簇头进行融合和缓存,等待移动sink节点到来收集数据,然后 由移动sink节点传送至基站;对非周期性的紧急数据,通过多 跳向移动节点路径方向传送,当遇到移动sink节点时,传送给 移动sink节点,再由其立即传送至基站。若在移动sink节点 路径方向上未遇见移动sink节点,则一直通过多跳传输至 基站。 1.2.1簇内通讯 建立簇内通讯路径主要包括传感器层节点分组与簇内路 径计算两个阶段。 1)传感器层节点分组 在mWSNs中,分簇工作一般有移动sink节点来发起。具 体如下: a.确定簇的规模:移动sink节点根据网络规模和应用要 求,确定每个簇的最大规模(最多节点数)。 b.收集网络信息:如果移动sink节点或基站不知道网络 的初始全局信息,则移动sink节点在全网络内移动收集每个 节点的位置信息、产生的数据类型及频率、剩余能量和内存容 量等基本信息。一旦网络初始化建立数据收集路径后,就可 以通过这些路径来采集网络状态信息。 e.分簇计算:移动sink节点根据这些信息和簇的规模,把 网络分成若干个簇。先根据数据类型把节点分成若干组,然 后再根据地理位置把这些组进一步分成簇规模大小的若干子 组。并根据节点剩余能量和内存空间选举簇头,最终形成簇 的基本信息包,如图3(a)所示。 (a)簇信息包结构 (b)簇头数据包结构 图3簇信息包和数据包结构 图3(a)中Cid表示簇编号;num表示簇成员数;D表示簇 内成员间的平均距离,即节点浓度;Mx表示簇成员节点的基本 信息包括是否是簇头CH,节点编号ID,节点剩余能量E,节点 位置P,节点感测的数据类型DT,节点的数据采集频率DF,节 点的存储空间Ms等。 2)计算簇内路径 18 ElC VoI.17 2010 No.6 帧,传感器节点接受到簇信息帧后,建立实际的分簇。 b.建立基于树结构 的簇内多跳路径:如图4所示。 首先,簇内传感器节点i根据簇信息帧判断自己是否簇 头,若不是,则计算与簇头节点(Cluster Head)的物理距离D , 并向邻居节点发送Join—req数据包,该数据包包含节点 和 距离簇头的距离D 。 然后,当簇内任何一节点j接收到Join-req数据包后,若此 节点 无下一跳节点(父节点)或者其距簇头节点的距离 D >=D“,则丢弃此该Join—req数据包,否则,进一步检查节 点 的子节点容量限制(定义为节点度,图4(b)设置为2,簇头 除外),若节点 的子节点数已满,则丢弃Join—req数据包,否 则,回复Join—ack数据包,节点 把节点i加人其子节点列表, 并且子节点计数加1。节点i收到Join.aek后,把节点 加入其 父节点列表。 一包I—【a)JoL ̄ req broadcasted 一—I(b}Retumed Join.ack 包 图4簇内路径建立示意图 图4中,节点的度表示节点最多能够接纳的子节点数,通 过度来平衡能量消耗。 C.重复第b步,直至整个簇内节点形成一个完成的分 层树。 1.2.2簇间通讯 建立簇间通讯路径就通过移动节点调度MES来计算移动 sink的移动路径和速度,MES已经被证明是NP完全问题。现 有的算法中,pBs(Partitioning Based Scheduling)…调度算法性 能好,能保证每个簇头节点不发生缓存溢出,能量效率较高。 HDCCM算法的移动sink节点调度路径采用PBS来计算,其包 括二个主要阶段:分组和计算TSP路径。其中分组阶段中,首 先根据簇头节点的缓存溢出时间把所有簇头节点分成若干小 组。然后再根据簇头节点间的物理距离把所有小组分别划分 成若干个子组。在计算TSP路径阶段中,首先计算每个子组 的TSP(货郎担)路径。然后连接所有子组的TSP路径,形成基 于簇头的全局移动sink节点的路径。 1.2.3路径维护与优化策略 1)簇头轮换:为了保持网络路由拓扑结构的相对稳定,把 节点的能量划分为n级,当簇头节点的能量低于某等级时,簇 头才发起簇头轮换动作,即当前簇头按顺序通知移动sink节 点、下一任簇头及簇内成员。新簇头的选择由当前簇头根据簇 内节点状态(能量剩余情况、与当前簇头的物理距离)来综合 确定新簇头。 2)簇内路径更新:由于节点损坏失效点等原因使网络拓 扑结构变化,特别是造成孤立的节点时,由孤立节点向所有邻 居节点发送Join—req数据包,若所有邻居节点都丢弃Join-req 数据包,则通过增大发射功率,扩大通讯半径再向上一层节点 发送Join—req数据包,直到收到Join-ack数据包,当收到多个 Join—ack数据包,根据节点的距离选择父节点。 3)移动sink节点调度路径更新:每一轮数据收集结束后, 根据收集的附加信息(包含在簇头数据包中,如图3(b)所示) 欢迎光临本刊网站http://www.eic。com.cn 仪器仪表用户 判断是否需要更新移动sink的调度路径,如果有簇头节点轮 换,则计算新的移动sink调度路径。 图3(b)中Cid表示簇编号;Bum表示簇成员数;P表示簇 头节点位置;DATA表示缓存在簇头内存中的数据;U为移动 sink调度路径更新标志,当更新标志有效时,查看P ,P 表示 新簇头的位置。 4)设置线性缓存区:把在移动sink调度路径附近的传感 口研究报告口 而发生缓存溢出,造成数据包丢失。从图中看到,当移动节点 的速度增加到一定程度,数据丢包率可以降至零。而且,在 MWSF、PBS和HDCCM三种算法中,HDCCM的最小需要速度 最小。这与分簇机制有关系,因为移动节点的移动路径长度就 减少=了,速度自然也就要降低,这给提升时延性能留下了更大 的空间。 图5(b)描述了移动节点速度对时延的影响,移动节点速 器节点划为缓存区,紧急数据不需要等到移动sink节点的到 来,而可以先把数据转发到缓存区节点上,并向移动sink运动 方向多跳传输,一旦遇到移动sink节点时,单跳传送给移动 sink节点,再立即传送至基站。若在移动sink节点路径方向上 未遇见移动sink节点,则一直多跳传输至基站,有效的减少了 数据包时间延迟。由于突发数据的频率很低,因而转发这些 突发数据不会对能量消耗有很大影响。 2性能分析与评价 通过仿真验证MWSF、PBS、HDCCM的性能差别。物理层 采用ZigBee无线网络技术,传感器节点的MAC层使用S-MAC 协议。在10,000m×10,000m的一维场景中均匀部署1000个 静态传感器节点,传感器节点数据包产生率为1个数据包/每 周期,仿真运行100个周期。其他参数使用默认的参数。主要 考察平均时延、数据丢包率和能量消耗等三个性能指标。数 据丢包率定义为丢失的数据包数与总的产生的数据包数的比 例。平均时延定义为数据从生成到被移动sink节点成功接收 所经历的时问,主要考虑等待时间。能量消耗定义为一个周 期内,收集lbit数据消耗的能量。性能分析比较结果如图5 所示。 (a)移动节点移动速度对 (b)移动节点速度对 数据丢包率的影响 时延的影响 (c)MWSF、PBS与HDCCM路由算法的能量消耗对比 图5 MWSF、PBS及HDCCM算法性能比较 图5(a)描述了不同速度下的数据丢包率的大小,数据包 丢失主要原因是缓冲区节点发生数据溢出。即如果一个数据 包或数据包的其中一部分数据被缓存很长时间而无法转发给 移动sink节点,而簇头节点的存储空间不足够存放更多地数 据,因此当有新数据包的到来是,就必须丢弃一些数据包,从 欢迎订阅欢迎撰稿欢迎发布产品广告信息 度越大,时间延迟越小。但当移动节点速度超过一定值后,时 延反而增加。结果告诉我们要选择合适的移动节点速度,当移 动节点的速度过低时,传感器节点需要等待较长时间才能得 到移动节点的数据传输服务,容易造成丢包和较大的时延,而 当移动节点的速度过快时,尽管移动节点和缓冲区传感器节 点相遇的概率增加了,但导致了长数据包不能在一次服务期 间内传输完毕,那么数据只能以分片传输,这无形增加了数据 包重组等额外的负担,间接的增加了时延和能量消耗,也增加 了丢包的可能性。 图5(C)描述了MWSF、PBS与HDCCM路由算法的能量消 耗对比,HDCCM算法的能耗最高。很明显,HDCCM算法采用 多跳转发和融合数据,消耗了一定的能量,但通过较少的能量 消耗,换取较好的网络性能。 3 总结 移动sink节点是有效提高大规模无线传感器网络数据收 集性能的有效方法,能很好改善能量效率,提高网络生命周期, 但导致了较大的时延。本文基于分簇结构来调度移动sink节 点,提出了HDCCM算法,研究了相关优化策略,通过仿真实 验,比较了MWSF、PBS与HDCCM算法,结果表明用有限的能 量消耗能有效的降低了移动sink节点的移动速度,减少了数 据丢包率和提高了时延性能。同时,HDCCM是一个分布式的 算法,具有更大的灵活性。口 参考文献 [1]Wei Wang,Vikram Srinivasan,et a1.Using Mobile Relays to Prolong the Lifetime of Wireless Sensor Networks[c].//Proc. of MobiCom,Cologne,Germany,2005:270 ̄83. [2]Biao Ren,Jian Ma,Canfeng Chen.The Hybrid Mobile Wireless Sensor Networks for Data Gathering[C].//Proc.of the 2006 in- temational conference on Wireless communications and mobile computing,July,2006:1085-1090. [3]K.Akkaya,M.Younis.A survey on Routing Protocols for Wire— less Sensor Networks[J].Ad Hoe Networks,2005,3(3): 325-349. [4]E Ekici,Y Gu,D,Bozdag.Mobility-Based Communication in wireless sensor network[J].Ad Hoc Networks,2006,44(7): 56_62. [5]0 Younis,S Fahmy.HEED:a hybrid,energy-efifcient,distributed clustering approach for ad hoc sensor networks[J].Transactions on Mobile Computing,2004,3(4):366-379. [6]Mrityunjay Singh et a1.A Tree Based Routing Protocol for Mobile Sensor Networks[J].Computer Science and Engineering,2010,2 (1):55-60. [7]Y.Gu et a1.,Partitioning—Based Mobile Element Scheduling in Wireless Sensor Networks r C 1//Proc.of IEEE ComSoc Conf. Sensor and Ad Hoe Commun.and Net.,2005. 作者简介:李宏魁(1964一)。男,硕士研究生,研究方向:仪器仪表、控制 系统、嵌入式技术;邬群辉(1980一),男。工程师。研究方向:仪器仪表及 控制技术。 收稿日期:2010-06-24 EIC VOI.17 2010 No.6 19