随机分布无线传感网分簇拓扑建立与重建的跨层设计实现方法
技术领域
本发明涉及一种无线传感器网络拓扑控制的跨层实现方法。
背景技术
无线传感器网络(wireless sensor network,WSN)是当前国际上备受关注的、由多学科高度交叉的新兴前沿研究热点领域。无线传感器网络具有十分广阔的应用前景,在军事国防、工农业、城市管理、生物医疗、环境监测、抢险救灾、防恐反恐、危险区域远程控制等许多领域都有重要的科研价值和巨大实用价值,已经引起了世界许多国家军界、学术界和工业界的高度重视,并成为进入2000年以来公认的新兴前沿热点研究领域,被认为是将对二十一世纪产生巨大影响力的技术之一,它将会对人类未来的生活方式产生深远影响。
微型传感器节点一般采用电池供电使得无线传感器网络的一大特点是能量受限,为了延长网络寿命首要考虑因素是提高能量效率,使节点在无需参与网络工作或获取传感数据时尽量进入睡眠状态。同时在网络生存期间,节点会动态的加入和离开网络,因此要求网络具有良好的可扩展性。传感器网络的另一个重要特点是应用特定性,为了提高上传数据信息熵和事件准确率,网络节点间常需要多类型传感器、多节点协同信息处理,并要求实现被监测区域的无缝覆盖,因此,传感器网络具有节点布设密度高,节点感知信息具有冗余性等特点。另外,无线传感器网络不依赖于固定的基础设施,网络节点要求具有自组织能力。
分簇的网络拓扑结构已经成为无线传感网研究的重要方向之一。在规模化的无线传感网中,分簇的网络结构在拓扑管理、能量效率、数据融合与节点协同处理方面都具有明显的优势。分簇的结构将大规模的网络划分为多个小规模的网络,从而降低了拓扑管理的难度,同时可以引入节点睡眠机制而不影响网络连通性,便于数据融合,减少了信道接入的竞争从而提高网络吞吐量,对节点的协同处理提供了良好的物理支持。
由于簇头负担了簇内数据融合、转发及簇间路由与数据转发等工作,其能耗远高于簇成员节点,故需要做簇头轮换以平衡网络的能耗。早期的分簇算法如LEACH与HEED等为采用的是周期性全网重分簇的方法。这种方法可以获得每一轮较好的分簇结构,但是网络开销太大,且重分簇与路由重建需要耗费的时间较长,即网络功能中断时间长,这在许多应用场景中都是难以接受的。近期的研究则提出局部分簇重建的方法,即在触发簇与其邻居簇范围内启动重分簇进程,寻求网络开销与分簇合理性的平衡,但是,此局部区域的节点在拓扑重建过程中无法承担正常的网络功能。因此,需要寻找一种方法,实现网络的快速故障检测与拓扑重建,尽量降低对网络正常工作的影响,且开销较小。
发明内容
本发明提供一种随机分布无线传感网分簇拓扑建立与重建的跨层设计实现方法,利用MAC层超帧结构中的BEACON帧的定期广播特性,在网络拓扑建立过程中,作为NWK层组网过程的入网进程的发起消息,在网络正常工作过程中,作为备份CH节点的指定消息和网络拓扑维护消息,精简了网络协议设计,有效降低了控制开销;同时,提供一种网络拓扑快速本地重建的方法,在网络正常工作过程中,CH在簇内选择合适的CM节点作为备份CH节点,其正常工作过程中承担CM功能,在CH失效时迅速转变为CH,尽量维持网络的正常工作不受太大影响。
本发明采用的技术方案如下:
A.节点身份确定与组网进程,包含下列线程:
a1、信道侦听线程;节点初始化后,持续侦听信道一定时间,若接收到簇头消息,则转入a3,启动入网线程,若接收到其他节点的信息(如:Hello消息),则更新自身邻居表;
a2、信息交互线程:节点间通过周期性的Hello消息交互自身信息,并以此为依据竞争簇头;
a3、节点入网线程;未竞争成功的节点向其邻居簇头发送入网申请以完成分簇组网过程。
B.网络正常工作进程
节点的正常工作时间以超帧周期为单位,每个超帧周期包括簇内通信时段、簇间通信时段及簇内与簇间广播时段。CH节点在每个超帧的簇内广播时段在簇内广播BEACON帧,可用做簇内时间同步、簇成员时隙分配、备份CH节点通知等,簇间通信时段则与邻居簇头通信。在此阶段,CH需要收集簇成员信息以选择合适的备份CH节点。备份CH节点的选择步骤如下:
b1、在簇内通信时段,CH节点启动备份CH节点的选举进程,指示所有CM节点发送携带备份CH选择所需信息(如节点的能量、邻居信息等)到CH节点;
b2、收集完所需信息后,CH节点计算每一个CM节点做为备份CH节点的合格度,选择最合适的作为备份CH节点;
b3、CH节点在簇内通信时段通知合格度最高的CM节点为备份CH节点,完成备份CH节点选则任务。
减少相邻簇簇内通信干扰可通过以下两种机制实现,其一,簇间同步,相邻簇头之间的簇内时段不重叠;其二,簇间不作同步,相邻簇使用不同的频道通信。
C.网络维护与拓扑重建进程
c.拓扑重建进程的触发
(1)CH节点:能量达到阈值,在簇内通信时段广播MSG_CLUSTER_REBUILD消息,改变自身身份为UN。
(2)备份CH:备份CH在检测到CH失效(n个周期未收到CH的BEACON帧),置自身为CH,在簇内通信时段广播MSG_CLUSTER_REBUILD消息,启动拓扑重建进程;或者在接收到CH的MSG_CLUSTER_REBUILD消息后,置自身为CH,开始广播BEACON帧。
(3)CM节点接收到MSG_CLUSTER_REBUILD消息或者检测到CH失效的情况下,置自身为UN,启动重入网进程。
d.执行拓扑重建进程
在拓扑重建阶段,CH节点仍然维护超帧周期,定时广播BEACON帧,而UN节点则执行重入网进程。
本发明结合MAC层超帧调度,实现分簇拓扑的快速建立与故障恢复,在网络正常工作阶段,簇头依据某种(如:节点能量)或某些信息(如:节点能量、节点度、邻居重合度等)在簇内选择备份簇头节点,在簇头能量达到阈值或簇头意外失效的情况下,备份簇头迅速接替原簇头成为新的簇头,并接管大部分原簇成员节点,无法接入新簇头的节点选择加入邻居簇,从而在本地完成拓扑重建工作,以此尽量减小对网络正常工作的影响,降低组网与网络故障恢复的控制开销,实现轻量级高效的无线传感网网络协议设计。
附图说明
图1为网络节点身份确定与组网进程图。
图2为网络正常工作的超帧结构与控制帧结构图。
图3为簇内备份簇头节点的选择进程图。
图4为网络拓扑重建触发进程图。
图5为节点重入网进程图。
图6为网络故障检测与拓扑重建的节点状态转换图。
具体实施方式
以下结合附图与实施例对本发明做进一步说明。
本发明提供的一种跨层设计的无线传感网分簇拓扑建立与故障恢复的方法,其具体技术方案如下所述:
1)节点身份确定与组网进程
在分簇的网络拓扑结构中,存在两种节点:簇头(Cluster Head,CH)与簇成员(ClusterMember,CM)。在网络初始化时,网络中所有节点的身份是未确定的(Undefined,UN),以此启动确定节点身份进程。在本发明中,提供一种基于多权值优化的簇头选举方法,包括下述几个线程。
a.信道侦听线程。UN节点持续侦听信道nlistening个超帧周期,若接收到邻居节点的HELLO消息,则更新邻居表,计算权值,如果接收到邻居CH节点的BEACON帧,则侦听结束后设置自身簇状态为PreCM,否则设置簇状态UN,并启动消息交互线程;
b.消息交互线程。该线程持续nelectiom个超帧周期。节点以时间间隔THello周期性的发送包含自身权值的HELLO消息,若接收到邻居节点的HELLO消息,更新邻居表,更新权值,更新节点身份(若权值最小则为CH,否则为PreCM),在线程结束时,身份为CH的节点开始广播BEACON帧,作为节点入网邀请;
c.节点入网线程。在该线程中,PreCM节点持续侦听1个超帧周期,建立CH表,在下一个超帧开始向最佳的CH节点发起加入申请,若接收到加入确认消息则节点身份置为CM,完成入网线程,否则尝试其他CH,若无CH可加入,置节点身份为CH,开始广播BEACON帧。
流程图如图1所示。
2)网络正常工作进程
a.超帧周期结构
节点的正常工作时间以超帧周期为单位,以下给出其对应的节点超帧结构(见图2)与参数定义。
(1)超帧长度TSF
簇间广播时段TBC、簇间通信时段TINTER、簇内广播时段TIC、簇内通信时段TINTRA的和。
TSF=TBC+TINTER+TIC+TINTRA
(2)簇间广播时段长度TBC
簇头广播簇间同步帧和簇内信标帧均在指定时隙内完成。
(3)簇间通信时段长度TINTER
簇间通信时段长度根据簇内数据收集速率、簇内数据融合因子和最大邻居簇头数目等确定。簇内通信时段的数据发送机制如下:MAC层数据帧以DATA-ACK机制发送,应用数据帧发送机制为RTS-CTS-DATA-ACK。信道接入机制为CSMA-CA,假定初始退避时间窗为CW1,该值由最小退避指数BEmin和单位退避时间间隔TUINT计算得到,计算公式为:CW1=pow(2,BEmin)-1,假设最大退避指数BEmax,则有CWmax=pow(2,BEmax)-1。最大退避次数为NB,则宣布信道接入失败最大耗费时间TF可用如下公式表示:
(4)簇内通信时段长度TINTRA
簇内通信时段长度根据簇内数据收集速率和超帧长度确定。簇内通信时段划分为N个时隙,每个时隙长度为TSLOT,总时隙数目为竞争时隙数和调度接入时隙数之和。有如下关系式成立:TINTRA=N×TSLOT
(5)簇内广播时段的超帧偏移量TOFFSET
簇内广播时段在当前超帧起始时刻开始的时间偏移量为TOFFSET。有:TOFFSET=TBC+TINTER
b.减少相邻簇簇内通信干扰机制
减少相邻簇簇内通信干扰可通过以下两种机制实现,其一,簇间同步,相邻簇头之间的簇内时段不重叠;其二,簇间不作同步,相邻簇使用不同的频道通信。
c.备份CH的选择
由CH节点启动备份CH节点的选举进程。CH节点指示所有CM节点发送携带能量、邻居节点信息的控制帧到CH节点,CH节点计算每一个CM节点作为备份CH节点的合格度,CH节点在簇内通信时段向合格度最高的CM节点发送指示帧,CM节点应答,完成备份CH节点选则任务。其流程图如图3。在本发明中,指示帧功能由BEACON帧实现。
3)网络维护与拓扑重建进程
由于备份CH节点的存在,网络在故障发生需要轮换簇头时不需要重新作信息交互与簇头竞争,减少了网络开销,同时较少影响故障周边网络的正常工作。
a.拓扑重建进程的触发
(1)CH节点:能量达到阈值,在簇内通信时段广播MSG_CLUSTER_REBUILD消息,改变自身身份为UN。
(2)备份CH:备份CH在检测到CH失效(n个周期未收到CH的BEACON帧),置自身为CH,在簇内通信时段广播MSG_CLUSTER_REBUILD消息,启动拓扑重建进程;或者在接收到CH的MSG_CLUSTER_REBUILD消息后,置自身为CH,开始广播BEACON帧。
(3)CM节点接收到MSG_CLUSTER_REBUILD消息或者检测到CH失效的情况下,置自身为UN,启动重入网进程。
进程步骤如图4所示。
b.执行拓扑重建进程
在拓扑重建阶段,CH节点仍然维护超帧周期,定时广播BEACON帧,而UN节点则执行重入网进程,如图5所示。
以上描述的仅是本发明的一个最佳实施例,本发明的保护范围并非局限于上述具体实施例,凡本领域技术人员根据本发明所做出的显而易见的改动均落在本发明的保护范围内。