首页> 中国专利> 一种适用于无线传感器网络的组播路由的组播树调整方法

一种适用于无线传感器网络的组播路由的组播树调整方法

摘要

本发明公开了一种适用于无线传感器网络的组播路由的组播树调整方法,该方法一方面通过增叶策略对组播树结构进行优化,在不影响无线传感器网络连通性的情况下,增加组播树中叶节点数目,从而减少报文转发次数,降低了无线传感器网络的总能耗;另一方面采用旁路休眠策略进行节点休眠定制,从而达到能量均衡。通过两个策略有效的降低了组播路由的能耗,同时实现了节点间的能耗均衡。本发明的调整方法可以对通过任意策略构建的无线传感器网络组播路由的组播树进行优化。

著录项

  • 公开/公告号CN101699903A

    专利类型发明专利

  • 公开/公告日2010-04-28

    原文格式PDF

  • 申请/专利权人 北京航空航天大学;

    申请/专利号CN200910236516.5

  • 申请日2009-10-23

  • 分类号H04W52/02;H04W84/18;

  • 代理机构北京永创新实专利事务所;

  • 代理人赵文利

  • 地址 100083 北京市海淀区学院路37号

  • 入库时间 2023-12-17 23:40:01

法律信息

  • 法律状态公告日

    法律状态信息

    法律状态

  • 2016-12-21

    未缴年费专利权终止 IPC(主分类):H04W52/02 授权公告日:20111026 终止日期:20151023 申请日:20091023

    专利权的终止

  • 2011-10-26

    授权

    授权

  • 2010-07-14

    实质审查的生效 IPC(主分类):H04W52/02 申请日:20091023

    实质审查的生效

  • 2010-04-28

    公开

    公开

说明书

技术领域

本发明涉及一种组播路由方法,更特别地说,是指一种适用于无线传感器网络的组播路由的组播树调整方法。

背景技术

随着微传感器技术、微电子技术、无线通信技术以及计算技术的进步,极大地推动了集信息采集、处理、无线传输等功能于一体的无线传感器网络(wireless sensornetworks,WSN)的发展。无线传感器网络可以使人们在任何时间、地点和任何环境条件下,获取大量详实而可靠的信息,因此传感器网络可以被广泛地应用于国防军事、国家安全、环境监测、交通管理、医疗卫生、制造业、反恐抗灾等领域。无线传感器网络是计算机科学技术的一个新的研究领域,已经引起了学术界和工业界的高度重视。

无线传感器网络对能耗的限制非常严格,而组播路由在资源节省、时延等方面有较好的优势,所以在无线传感器网络应用中还经常要求提供组播(multicast)技术的支持。从实际应用中传感器节点能量的消耗中可以看出,节点用于通信的能量开销要远远大于用于数据计算的能量开销。因此,组播在无线传感器网络“一对多”场景中的应用可以大幅减少传感器网络中的数据包的发送量,可以显著的节省节点能量的消耗,从而延长传感器节点的生命周期。另外组播路由在时效等方面也有较好的优势。组播路由转发数据的高效率可以有效降低网络能耗,从而进一步扩大无线传感器网络的应用领域。

组播路由协议的作用是要寻找一个源节点和一组接收节点之间的一棵组播树,信息以并行方式沿这棵树的树枝发送到不同的接收节点,信息只需在树的分枝处进行复制转发,这样网络中需要传送的报文分组数最小。组播技术不仅减少了报文分组的重复发送,减轻了网络工作负载,而且也提高了网络带宽使用效率,对于提高数据报文到达率和延长网络整体工作时间有重要影响。

现有的基于树的组播路由协议,如EMRS(efficient multicast routingprotocol for wireless sensor networks)、VLM2(a very lightweight mobilemulticast system for wireless sensor networks)和DPTB(Dynamic proxytree-based data dissemination schemes for wireless sensor networks)等,均存在如下的缺点:1、在建立组播树时,仅是考虑节点的移动性和网络的覆盖性,没有能耗最小化的概念。如VLM2协议的节点选择父节点时具有随机性;而EMRS协议在选择父节点时也没有考虑能耗问题;2、没有涉及能耗均衡的概念。在组播的过程中,能耗不均衡会使有的节点能耗过快,最终致使网络瘫痪。

发明内容

为了解决无线传感器网络中节点能耗,以及能耗均衡的问题,本发明提出一种能耗均衡的无线传感器网络组播路由方法。该组播树调整方法一方面通过增叶策略对组播树结构进行优化,在不影响无线传感器网络连通性的情况下,增加组播树中叶节点数目,从而减少报文转发次数,降低了无线传感器网络的总能耗;另一方面采用旁路休眠策略进行节点休眠定制,从而达到能量均衡。通过两个策略有效的降低了组播路由的能耗,同时实现了节点间的能耗均衡。

本发明的一种适用于无线传感器网络的组播路由的组播树调整方法优点在于:

(1)对已创建的路由树采用增叶策略进行优化,减小节点转发组播报文的总体数量,从而降低整个网络的能耗。

(2)通过旁路休眠策略,可以保证不影响其他节点接收组播报文的前提下休眠部分节点,实现了节点之间的能耗均衡,从而增加了整个网络的存活时间。

附图说明

图1是一种具有分层结构的组播树结构示意图。

图2是经本发明增叶策略优化后的组播树结构示意图。

具体实施方式

下面结合附图对本发明做进一步的说明。

本发明是一种适用于无线传感器网络的组播路由的组播树调整方法,该调整方法可以对通过任意策略构建的无线传感器网络组播路由的组播树进行调整优化,首先使用增叶策略来优化该组播树,以减少组播过程的能耗;最后使用旁路休眠策略实现该组播树中各节点的能耗均衡,延长整个无线传感器网络的存活时间。

为了方便陈述本发明的组播树调整方法,对于组播树中的任意一个节点Ni(简称为任意节点Ni)将存储如下信息:

①父节点在本发明中,该父节点是任意节点Ni的父节点。

在本发明中,如果任意节点Ni为根节点,则表明该Ni不会有父节点。

②子节点集

在本发明中,该子节点集中存储的是任意节点Ni的所有子节点编号,用数学表达形式为其中,表示节点Ni的第一个子节点,表示节点Ni的第二个子节点,表示节点Ni的第l个子节点,也表示节点Ni的任意一个子节点。

在本发明中,如果节点Ni是叶节点,则节点Ni的子节点集为空集合。相应地,当节点Ni的子节点集不为空集合时,又称节点Ni为非叶节点。

③备用父节点集

在组播树维护过程中,备用父节点集中存储的是任意节点Ni的备用父节点编号,用数学表达形式为其中,表示节点Ni的第一个备用父节点,表示节点Ni的第二个备用父节点;表示节点Ni的第m个备用父节点,也表示节点Ni的任意一个备用父节点。

在本发明中,当任意节点Ni没有备用父节点时,则节点Ni的备用父节点集为空集合。

在本发明中,任意节点Ni在加入组播树之前,子节点集和备用父节点集都为空集合。当任意节点Ni为根节点时,可用TNode标记,如图1所示。

一般地,在一棵组播树中,节点可能会存在多重身份,即一个节点可能是另外一个节点的子节点,同时,又可能是其他某些节点的父节点或备用父节点。

参见图1所示的一个具有分层结构的组播树结构,在该组播树中:

A节点是根节点(代表传感器网络中的基站节点),B1节点、B2节点、Nj节点、节点、……、Bb节点分别为A节点的子节点,相应地,A节点就是B1节点、B2节点、Nj节点、节点、……、Bb节点的父节点;

C1节点、C2节点、……、Cc节点分别是B1节点的子节点,相应地,B1节点就是C1节点、C2节点、……、Cc节点的父节点;

D1节点、D2节点分别是B2节点的子节点,相应地,B2节点就是D1节点、D2节点的父节点;

Ee节点是Nj节点的子节点,相应地,Nj节点就是Ee节点的父节点;

Ni节点是节点的子节点,相应地,节点就是Ni节点的父节点;

Ff节点是Bb节点的子节点,相应地,Bb节点就是Ff节点的父节点;

G1节点、G2节点分别是Ee节点的子节点,相应地,Ee节点就是G1节点、G2节点的父节点;

节点、节点、……、节点分别是Ni节点的子节点,相应地,Ni节点就是节点、节点、……、节点的父节点;

G1节点和G2节点在D2节点的通信范围内,但D2节点并不是G1节点和G2节点的父节点,则D2节点为G1和G2节点的备用父节点;

C1节点、C2节点、……、Cc节点、D1节点、D2节点、Ff节点以及节点、节点、……、节点都没有子节点,则它们是叶节点;

A节点、B1节点、B2节点、节点、……、Bb节点以及Ni节点都有一个或多个子节点,则它们是非叶节点。

在本发明中,对于网络中的任意两个节点Ni和Nj,组播树的维护执行如下维护执行步骤:

维护执行步骤1):网络中的任意节点Ni,如果Ni是某些节点的父节点(简称父节点Ni),即Ni的子节点集不为空集合,则Ni会周期性地通过广播的方式发送子节点维护报文以及接收其任意子节点的应答报文并根据在该周期内收到子节点应答报文的情况不同,执行维护执行步骤5);同时,网络中的每个节点都会接收网络中的子节点维护报文,当收到子节点维护报文时,执行如下的维护执行步骤2);当一个维护周期结束时,执行维护执行步骤6);

维护执行步骤2):当另一任意节点Nj收到子节点维护报文时,首先根据CMT报文中的判断节点Ni是否为自己的父节点如果是,则执行维护执行步骤3),否则执行维护执行步骤4);维护执行步骤3):节点Nj检查所收到的子节点维护报文中的子节点集判断自己的编号是否在子节点集中,如果是,表示节点Ni是节点Nj的父节点,则节点Nj向节点Ni发送一个应答报文用于维持组播树结构;否则,执行维护执行步骤7),加入组播树;

维护执行步骤4):发送子节点维护报文的节点Ni不是节点Nj的父节点,节点Nj将节点Ni加入到它的备用父节点集中;

在本发明中,由于父节点对子节点发送子节点维护报文是采用广播的方式,所以每个节点都有可能接收到不是自己的父节点(非父节点)发送的子节点维护报文。所以,对于任意另一节点Nj,如果Nj接收到了Ni发送的子节点维护报文CMT,那么能够得知Nj在Ni的通信范围之内。如果Nj不在Ni的通信路径(在本发明中,节点Ni的通信路径是指组播报文从根节点传至Ni所经过的节点序列)里,称Ni为Nj的一个备用父节点。

维护执行步骤5):当节点Ni收到了其它任意子节点的应答报文,则维持Ni与的父子关系不变;

维护执行步骤6):在一个维护周期结束后,节点Ni扫描其子节点集对于在该维护周期内未收到应答报文的子节点该Ni将把从中删除,结束与这些子节点的父子关系;如果子节点在一个维护周期内没有收到来自其父节点Ni的子节点维护报文,则子节点执行“节点加入组播树”的处理方式。

在本发明中,对于网络中的任意节点Ni,当其需要加入一个组播树时,则执行如下处理步骤:

步骤001:设置节点Ni的子节点集和备用父节点集均为空集合;

步骤002:节点Ni广播父节点请求报文其中,TYPEPRQ表示报文类型为父节点请求报文,表示节点Ni的编号;

步骤003:组播树中的另一任意节点Nj收到报文后,向节点Ni发送子请求报文其中,TYPECRQ表示报文的类型为子请求报文,是节点Nj的编号。

步骤004:节点Ni收到后,向节点Nj回复应答ACK,并将设置为Nj,从而节点Ni成为节点Nj的子节点。

在本发明的组播过程中,所有非叶节点既发送组播报文也接收组播报文,但基站、非叶节点除外,因为基站仅发送组播报文,叶节点只接受而不转发组播报文。本发明采用增叶策略对组播树的结构进行优化,在不影响网络连通性的情况下,将非叶节点转换为叶节点,从而减少组播报文的转发次数,减低系统的总能耗。

组播树维持一段时间后,部分节点能量过低。在本发明中,采用组播树的能量均衡策略进行休眠状态判断。如果节点是可替代的,则进入休眠状态,从而防止节点过早死亡,以增加整个无线传感器网络的存活时间。

在本发明中,通过以下算法实现组播树的优化。对于网络中的任意节点Ni,它有l(l=2,即节点G,节点H)个子节点其优化步骤如下:

步骤101:节点Ni检查其备用父节点集是否为空集合,如果不是,表示节点Ni存在备用父节点,则节点Ni向它的父节点发送发现备用父节点报文其中,TYPEBPD表示报文类型为发现备用父节点报文,是节点Ni的节点编号。同时,如果节点Ni的任意子节点也会检查的备用父节点集如果不为空,会向它的父节点(即节点Ni)发送发现备用父节点报文,节点Ni会接收来自它的所有子节点的发现备用父节点报文;

在本发明中,由于父节点对子节点发送子节点维护报文是采用广播的方式,所以每个节点都有可能接收到非父节点发送的子节点维护报文。所以,对于任意节点N,如果N接收到了其他任意节点Q发送的子节点维护报文CMT,那么能够得知N在Q的通信范围之内,Q为非叶节点(只有父节点发送子节点维护报文CMT)。如果N不在Q的通信路径(在本发明中,节点Q的通信路径是指组播报文从根节点传至Q所经过的节点序列)里,称Q为N的备用父节点BP。

步骤102:当节点Ni收到它的任意子节点的发现备用父节点报文BPD后,在Ni的子节点集中标记为可释放状态。

步骤103:如果节点Ni的所有子节点均处于可释放状态的,那么节点Ni向其所有子节点发送释放请求报文其中,TYPERRQ表示报文类型为释放请求报文,是Ni的节点编号,进入等待释放状态。

步骤104:子节点收到节点Ni的广播释放请求报文RRQ后,向其备用父节点集中的所有备用父节点发送父请求报文其中,TYPEPRQ表示报文类型为父请求报文,是节点的节点编号。

步骤105:对于节点的任意备用父节点如果它并非自由节点且未处于等待释放状态,则向节点回复应答报文ACK;否则,向节点回复否定回答报文NAK。

步骤106:如果子节点收到备用父节点发送的应答报文ACK,则向父节点Ni发送应答报文ACK,并将收到的第一个应答报文ACK的发送备用父节点标记为如果节点收到的所有备用父节点的报文均为否定回答报文NAK,向Ni发送否定回答报文NAK。

步骤107:节点Ni收到所有子节点的应答报文ACK后,向其所有子节点发送释放子节点报文其中,TYPERNF表示报文类型为释放子节点报文,是节点Ni的节点编号。子节点收到释放子节点报文RNF后成为备用父节点的子节点。优化前是非叶节点的节点Ni则成为叶节点。由于为非叶节点且消息广播发送,让节点做节点的子节点,并不增加BPi能量消耗。Ni节点变为叶节点,降低了能耗。所以系统总能耗降低了。

对于无线传感器网络组播路由而言,有以下几个特点:(1)发送报文远比接收报文消耗能量,能耗正比于报文发送次数;(2)可以采用广播的方式,将消息一次发给自己所有的子节点;(3)广播报文和单播报文具有相同的能耗。对于每一个组播报文的转发,每个中间节点需要广播一次报文,而叶节点只需要接收报文。因此,为了降低系统的总能耗,需要让尽可能多的节点成为叶节点。如图2所示,图中非叶节点的数目比图1减小了1个,当有组播报文需要通过该网络的时候,图2所示的组播树将比图1中组播树少转发1次报文,从而减小了能耗。

当网络中某些节点由于长期工作能量过低时,为了防止节点过早的死亡,需要调整组播树,使该节点进入休眠状态,或者仅接收组播报文。

在本发明中,采用旁路休眠策略进行能量均衡处理,对于网络中的任意节点Nj,步骤如下:

步骤201:节点Nj发现自己能量低于预设的阈值时,向根节点TNode发送休眠请求报文其中,TYPESRQ表示报文类型为休眠请求报文,为Nj的节点编号,为节点Nj的剩余能量值。

步骤202:根节点TNode收到休眠请求报文SRQ后,广播该条SRQ报文。

对于组播树中的任意一个节点Ni,节点Ni收到SRQ报文后(该报文来自根节点TNode的广播,或者来自步骤202-2、步骤202-3和步骤202-4的广播),有如下处理子步骤:

步骤202-1:如果Ni就是节点Nj,则丢弃报文;否则,转步骤202-2。

步骤202-2:如果Ni为非叶节点,广播该报文;否则,转步骤202-3。

步骤202-3:Ni为叶节点,如果节点Ni的剩余能量值不大于SRQ报文中的即丢弃该报文;否则广播该报文。转步骤202-4。

步骤202-4:如果Ni为Nj的子孙节点,且不是Nj的子节点,则广播该报文;否则,转步骤202-5。

节点Ni为节点Nj的子孙节点是指,从根节点TNode到节点Ni的组播路径中包含节点Nj。由于节点Nj不对SRQ转发,所以该报文不可能通过组播得到。

步骤202-5:如果Ni为Nj的子节点,则广播该报文,并向Nj节点回复应答报文ACK。

步骤203:如果Nj收到所有子节点的应答报文ACK,进入休眠状态,执行步骤204;否则节点Nj不能进入休眠状态而继续工作。

步骤204:Nj的子孙节点脱离了组播树,重新申请加入组播树。

在本发明中,节点可能收到多个节点发送的CRQ报文,此时只能向一个节点发送应答报文。可以选择通讯路径最短且接收到CRQ报文时间最早的节点。通过使用以上方法,当节点Nj进入休眠状态前,可以使Nj的每个子孙节点都能找到新的父节点,保证了网络的覆盖度。

经过旁路休眠策略调整后,组播树的变化如图2中虚线所示:B2节点成为叶节点,D2节点成为Nj节点的子节点,Ee节点成为D2节点的子节点。图中可以看出叶节点的个数增加了,减少了报文转发次数,从而降低了无线传感器网络的总能耗。

本发明中各个字母的物理意义为:

去获取专利,查看全文>

相似文献

  • 专利
  • 中文文献
  • 外文文献
获取专利

客服邮箱:kefu@zhangqiaokeyan.com

京公网安备:11010802029741号 ICP备案号:京ICP备15016152号-6 六维联合信息科技 (北京) 有限公司©版权所有
  • 客服微信

  • 服务号