面向链式无线传感器网络的分簇路由系统及方法

文档序号:8530833阅读:872来源:国知局
面向链式无线传感器网络的分簇路由系统及方法
【技术领域】
[0001]本发明涉及无线网络技术,具体地说是一种面向链式无线传感器网络的分簇路由系统及方法。
【背景技术】
[0002]近年来,无线传感器网络广泛应用。输电线路监测、铁路监测、地铁监测、边境监测等应用,具有分散性大、距离长、难以维护等特点。前较广泛采用的周期性人工、直升机、机器人巡检的方式,不仅需要高开销、高劳动强度,也难于持续地对整个系统进行监测。为此,基于网络的监控系统成为这类应用实现的必然。然而,基于有线网络的监测系统具有布设困难、成本高、维护不便等问题。那么,基于无线技术的监测系统是未来的发展趋势。但是,GSM、WIMAX、CDMA等移动通信技术,对于全方位的监测系统来说依旧过于昂贵,因此现有的系统仅用于部分关键的环节。无线传感器网络以其实时在线、大面积覆盖、自配置自组织、低成本、灵活、维护方便等优点,成为这类应用的首选技术。
[0003]对于上述输电线路监测、铁路监测、地铁监测、边境监测等应用,无线传感器网络通常部署在无人值守的区域,更换电池困难或电池成本较高。为此,低能耗成为该类无线传感器网络的首要需求,系统一般要求电池供电的节点工作5年以上。此外,这类应用对无线传感器网络的实时性也提出了要求。以智能电网中的数据采集与监控系统(SupervisoryControl and Data Acquisit1n, SCADA)为例,数据采集周期通常为4?8秒,特别当异常事件或警告产生时,需要及时传输到监控中心。
[0004]链式或者带状的网络拓扑结构对路由算法的设计提出如下挑战:
[0005](I)漏斗效应严重,越靠近汇聚节点(Sink),数据积累越多,因此越靠近Sink的节点的能量耗散越快,需要充分考虑位置对于路由的影响。
[0006](2)输电线路监测、铁路监测、地铁监测、边境监测等应用的特殊性,使得网络的拓扑结构还呈现局部相对集中的特点。分簇路由算法因其支持数据聚合、减少节点接入信道次数、提升网络性能的优势,而成为广泛采用的路由算法。分簇路由算法可以通过簇首来保证实时性,同时网络中大部分节点都处于低能耗状态。再者,相对于平面路由,它不需要复杂的路由维护,具有可扩展性强的特点。但是,分簇路由算法也存在能耗不均的问题,具体包括两方面:1)簇内能耗不均。同一个簇内,簇成员数据量大小不同,导致簇首进行簇内数据收集、簇间路由计算以及数据转发所需的能耗不同;2)簇间能耗不均,具体表现在簇内节点数不一致导致不同簇首的能耗不均匀。
[0007]现有典型的分簇路由算法中,LEACH采用了随机簇首选择机制,但未考虑节点的剩余能量,有可能导致部分簇首能耗消耗过快,进而影响网络寿命;此外,LEACH算法面向单跳通信,可扩展性差。LEACH_C和LEACH-F都是由基站负责挑选簇首,计算量较大、可扩展性差,并且基站需要收集全局信息,控制开销大。PEGASIS算法采用贪心算法,根据每个节点的地理位置信息选择簇首,需要知道每个节点的位置信息,并且由于平均通信距离较短导致跳数增加,进而增加了延迟。HEED是一种分布式成簇算法,节点依据剩余能量和簇内通信代价计算成为簇首的概率。综上,现有典型的分簇路由算法都是针对平面拓扑结构设计,没有考虑输电线路等应用中链式拓扑结构带来的漏斗效应、能耗不均等影响。

【发明内容】

[0008]针对现有典型的分簇路由算法都是面向平面拓扑结构设计,没有考虑输电线路等应用中链式拓扑结构带来的漏斗效应、能耗不均等影响,本发明提出了一种面向链式无线传感器网络的分簇路由系统及方法,利用链式拓扑潜在的位置信息,设计了节点地址命名机制及分簇路由算法,在减少了路由建立和路由维护的开销同时,解决了漏斗效应和能耗不均的问题。
[0009]为解决上述技术问题,本发明采用的技术方案是:一种面向链式无线传感器网络的分簇路由系统,包括根据节点之间的距离划分的若干个紧密集,每个紧密集包括若干个基本传感器节点和/或数据中继节点;所述每个基本传感器节点安装有传感器,用于采集该紧密集中的数据;所述数据中继节点不安装传感器,用于数据的转发;所述基本传感器节点和/或数据中继节点安装中低功率收发器;所述每个紧密集中的一个节点设置为簇首,其余节点为普通簇成员,其中普通簇成员用于将数据发送给簇首;
[0010]还包括增强中继节点,安装大功率收发器,用于与各个紧密集中的簇首进行通信。
[0011]所述每个紧密集中的节点按照其地理位置信息分配有一个地址。
[0012]一种面向链式无线传感器网络的分簇路由方法,包括以下步骤:
[0013]节点紧密集构造阶段,按照多个基本传感器节点和/或数据中继节点之间的距离将无线传感器网络划分为若干个紧密集,并基于地理位置信息,为紧密集中的节点分配地址;利用现有的LEACH算法,选取紧密集中的一个节点作为簇首,紧密集中的其余节点作为普通簇成员,簇首和普通簇成员构成一个簇;一个紧密集中的簇首也充当其他簇的普通簇成员;
[0014]数据收集阶段,普通簇成员以多跳传输方式,采用基于命名机制的分簇路由算法将无线传感器网络中的数据发送给簇首,再由簇首转发到增强中继节点。
[0015]还包括:
[0016]簇首轮换阶段,当普通簇成员检测到簇首的剩余能量低于预设的阈值,或者簇首失效时,紧密集内重新选取簇首。
[0017]所述簇首轮换阶段具体包括以下实现过程:
[0018]簇首以时间T为周期,周期性广播包含自身剩余能量的簇首更新报文;
[0019]普通簇成员若发现当前簇首的剩余能量与自身能量的比值低于阈值l/α,则向紧密集内广播簇首变更请求;
[0020]紧密集中的所有节点收到簇首变更请求信息后,向当前簇首报告其自身能量;
[0021]当前簇首收集完所有普通簇成员的能量信息后,按照能量从高到低的顺序排序,选择剩余能量最多的普通簇成员作为新簇首,并向新簇首发送簇首变更报文,随后向无线传感器网络广播簇首变更消息;
[0022]若当前簇首失效,普通簇成员在T时间内收不到簇首变更请求,则普通簇成员广播簇首变更请求,收集同一紧密集中所有节点的剩余能量信息,选择同一紧密集中剩余能量最大的节点作为簇首,并广播新簇首信息。
[0023]所述节点紧密集构造阶段具体包括以下实现过程:
[0024]当节点加入网络时,广播一个加入请求,获取周围节点的紧密集信息;
[0025]当加入节点收到包含紧密集信息的加入响应后,通过响应报文RSSI值从高到低的顺序决定待加入的紧密集;加入节点选择RSSI值最高项对应的紧密集,并向此紧密集广播自身地址信息;
[0026]基于链式拓扑信息,按照紧密集中节点的加入顺序,为紧密集中的节点分配地址;
[0027]紧密集中的所有成员更新自身的紧密集成员表;如果没有待选择的紧密集,则力口入节点建立一个新的紧密集,并且自动成为该紧密集的簇首。
[0028]所述紧密集信息包括紧密集编号以及紧密集成员表;所述紧密集成员表包括同一紧密集中节点的地址。
[0029]所述基于链式拓扑信息,按照紧密集中节点的加入顺序,为紧密集中的节点分配地址,具体包括以下过程:
[0030]地址命名方法:节点地址包括三个域:ERN_ADDR域、DENSESET_ADDR域以及BASIC_ADDR域;其中,ERN_ADDR域表示节点所属的ERN节点的地址;DENSESET_ADDR域表示节点所隶属的紧密集的地址,若节点不属于任何簇,则表示最邻近的紧密集地址;BASIC_ADDR域用来区分同一紧密集内的不同节点;
[0031 ] 地址分配过程:包括ERN_ADDR域、DENSESET_ADDR域以及BASIC_ADDR域的地址分配;
[0032]所述ERN_ADDR域的地址分配:按照增强中继节点加入的顺序,从I开始,依次为ERN节点顺序分配地址,隶属于该增强中继节点的其他节点的ERN_ADDR域即为对应的增强中继节点的地址;
[0033]DENSESET_ADDR域的地址分配:增强中继节点处的紧密集称为O号簇,簇内节点的DENSESET_ADDR域为0,随后左右最邻近它的紧密集被加入网络,依次表示为I号簇和2号簇;
[0034]BASIC_ADDR域的地址分配:按节点加入的先后顺序为紧密集内的所有节点分配BASIC_ADDR 域地址。
[0035]所述数据收集阶段的基于命名机制的分簇路由算法包括下行路由和上行路由两个过程;
[0036]所述下行路由的具体实现过程包括:如果报文目的地址的DENSESET_ADDR域
当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1