首页> 中国专利> 一种基于RPL的多个sink节点的负载均衡方法

一种基于RPL的多个sink节点的负载均衡方法

摘要

本发明公开了一种基于RPL的多个sink节点的负载均衡方法,该方法的步骤包括对网络进行初始化;初始化后的网络中每一个sink节点开始进行流量监测,并定期上报给网关节点;普通终端节点一旦收到网关发出的sink节点负载不均衡的警告信息,则立即处理警告信息,使网络中的负载均衡。本发明所述技术方案在保证网络可靠性和有效性的同时,通过均衡网络的负载,能够有效地提高网络整体吞吐量,延长网络的生存时间。

著录项

  • 公开/公告号CN104243339A

    专利类型发明专利

  • 公开/公告日2014-12-24

    原文格式PDF

  • 申请/专利权人 北京交通大学;

    申请/专利号CN201410498184.9

  • 申请日2014-09-25

  • 分类号H04L12/803(20130101);H04W28/08(20090101);

  • 代理机构11257 北京正理专利代理有限公司;

  • 代理人张雪梅

  • 地址 100044 北京市海淀区上园村3号

  • 入库时间 2023-12-18 08:15:34

法律信息

  • 法律状态公告日

    法律状态信息

    法律状态

  • 2019-09-10

    未缴年费专利权终止 IPC(主分类):H04L12/803 授权公告日:20170623 终止日期:20180925 申请日:20140925

    专利权的终止

  • 2017-06-23

    授权

    授权

  • 2015-01-14

    实质审查的生效 IPC(主分类):H04L12/803 申请日:20140925

    实质审查的生效

  • 2014-12-24

    公开

    公开

说明书

技术领域

本发明涉及无线传感网络的路由协议,特别是涉及一种基于RPL的多个sink节点的负载均衡方法。 

背景技术

微型传感器节点以自组织的方式构成的无线传感器网络(Wireless Sensor Network,WSN)被广泛地应用于军事、环境监测、工业控制、智能家居、城市交通和现代化农业等领域。一些简单的小规模的应用领域如环境监测等,在网络部署中一般使用单个汇聚节点sink,以减小网络的复杂性。然而这种简单的网络组织形式使网络的可靠性和可扩展性受到限制,一旦网络数据量增大导致sink节点过载或者失效,整个网络将停止工作。因此在大规模部署的应用中,一般部署多个sink节点,这样节点可以很据链路状态等路由度量选择最优的sink作为数据传输的目的节点,从而最小化网络的能量消耗,均衡网络的负载。然而仅通过增加sink节点数量来平衡网络负载仍然无法彻底解决网络负载不均衡的问题。 

低功耗有损网络是由功率、存储空间、处理能力等资源受限的嵌入式设备所组成的网络。针对低功耗有损网络的特点,IETF的ROLL(Routing Over Low power and Lossy networks)工作组提出的一种低功耗有损网络路由协议RPL。RPL路由协议是一种距离向量路由协议,该路由协议的路由选择限制和度量标准在IETF RFC6551中被定义。RPL中没有提供存在多个sink节点时如何均衡sink节点之间的负载的机制。 

目前有很多关于如何均衡多个sink节点之间负载的研究。可以简单概括为以下两类:基于移动sink节点的负载均衡机制和基于固定sink的负载均衡机制。基于移动sink的负载均衡路由协议由于sink的移动性,容易造成路由的频繁更新与重建,从而带来额外的能源消耗和端到端的时延,因此一般采用固定sink的方法。基于能耗和开销的考虑,目前几种负载均衡路由协议不能直接应用于低功耗有损的无线传感器网络的环境中。 

本发明在RPL路由协议的基础上,结合目前存在的几种负载均衡的策略,提出一种基于RPL的多sink负载均衡路由协议(LB-RPL)。 

因此,需要提供一种多sink负载均衡路由协议,用于低功耗有损的无线传感网络环境中。 

发明内容

本发明要解决的技术问题是提供涉及一种基于RPL的多个sink节点的负载均衡方法,以克服目前在大规模低功耗无损网络环境中具有多个sink节点时存在负载不均衡的问题。 

为解决上述技术问题,本发明采用下述技术方案。 

一种基于RPL的多个sink节点的负载均衡方法,该方法的步骤包括 

S1、对网络进行初始化; 

S2、初始化后的网络中每一个sink节点开始进行流量监测,并定期上报给网关节点; 

S3、普通终端节点一旦收到网关发出的sink节点负载不均衡的警告信息,则立即处理警告信息,使网络中的负载均衡: 

S31、判断本地是否存在其他通信子网DODAG的信息,如果没有则忽略该警告信息; 

S32、判断自身在通信子网DODAG中的深度,是否满足切换条件,如果深度大于设定的阈值,则进行通信子网DODAG切换; 

S33、如果不满足切换条件则根据信息中携带的路由信息进行路由表的更新。 

优选的,所述网络初始化的步骤包括 

S11、所有sink节点广播带有不同网络前缀信息DIO消息; 

S12、普通终端节点接收所有DIO消息,并且根据DIO消息中的Rank值选择加入某一sink节点提供的DODAG; 

S13、加入DODAG的终端节点开始发送数据包。 

优选的,所述sink节点流量监测的步骤包括 

S21、网络初始化完成后,sink节点开始监测接收的数据流量状态信息; 

S22、sink节点定期将自己的的流量信息发送至网关节点; 

S23、利用网关节点计算网络的不均衡度S,作为判断网络负载失衡的标准。 

S24、监测到网络出现负载不均衡情况,发送警告信息。 

优选的,该方法进一步包括为了防止在负载均衡时造成网络的震荡,网关处理时需根据预先设定的阈值判断是否需要启动负载均衡。 

优选的,所述防止网络震荡的步骤包括 

网关进行各个sink节点信息的汇总并进行不均衡度计算; 

根据网络状况设定网络不均衡度阈值; 

网关将定期收集sink节点的信息计算所得的不均衡度和预先设定的阈值比较,如果大于阈值,则正常启动负载均衡,否则认为此时网络的负载普遍较重,不进行负载均衡处理。 

优选的,利用公式>S=1n[(F1-F)2+(F2-F)2+...+(Fn-F)2]>计算网络不平衡度,其中,Fn为第n个sink流量负载值,代表所有DODAG中sink流量负载的平均值。 

本发明的有益效果如下: 

本发明所述技术方案在保证网络可靠性和有效性的同时,通过均衡网络的负载,能够有效地提高网络整体吞吐量,延长网络的生存时间。 

附图说明

下面结合附图对本发明的具体实施方式作进一步详细的说明; 

图1示出本发明所述的一种基于软件无线电的嵌入式无线通讯装置的示意图; 

图2示出本发明所述网络初始化过程的示意图 

图3示出本发明所述sink节点不均衡度判断的示意图; 

图4示出本发明所述普通终端节点处理警告信息的示意图; 

图5示出本发明实施例中所述不同网络负载的通信子网的示意图; 

图6示出采用本发明所述负载均衡方法前后的网络拓扑变化示意图; 

图7示出本发明所述警告信息包格式的示意图。 

具体实施方式

下面结合一组实施例及附图对本发明做进一步描述。 

在网络中的节点是异构的,相同特性的节点组成一个子网,网络中存在多个子网,每个子网都由终端传感器节点和汇聚节点sink组成,子网之间通过高性能节点通信。整个网络通过RPL的控制信息进行网络初始化,初始化完成后由网络中的高性能节点进行子网内负载信息监测,并定期将该监测到的信息汇聚至网关,网关进行监测信息的判断处理,网关一旦发现网络中存在负载不均衡的情况即通知相应的汇聚节点sink,该sink节点收到通知后启动负载均衡机制 

如图1所示,网络中由多个汇聚节点sink和传感器节点组成,汇聚节点sink和传感器节点根据应用需求随机部署,终端传感器节点以均匀的速率将数据信息汇聚给sink节点,并由sink节点将数据发送给网关处理。在网络初始化阶段,sink节点广播DIO信息来通告构建通信子网DODAG所需的参数,如DODAG_ID,DODAG_Version_Number,Rank,OF函数定义等,接收到DIO信息的节点根据定义的OF函数计算自己的Rank值,同时选取Rank最小的DIO发送者作为自己的父节点,并且更新相应的DIO信息,进行转发,直至所有的传感器节点都加入某一DODAG。然而由于初始化过程并没有考虑负载均衡,构建出的DODAGs拥有不同的网络负载,如图5所示。图5中以节点S1为sink节点构建的DODAG图中包含了15个节点,以节点S2为sink节点构建的DODAG包含了7个节点,两个DODAG包含的节点数量相差大,造成了sink节点S1和S2处的负载不均衡。假设网络中所有节点以相同的速率发送,并且sink节点只能承担12个节点发送的数据量,那么sink节点S1处将出现数据拥塞的情况,导致网络整体的吞吐量下降。 

网络初始化完成后,每个sink节点开始进行流量监测,并将监测到的信息作为负载度量值F发送至网关节点。网关接收并检测所有汇聚节点sink发送过来的数据流量值,一旦检测到某一sink节点Si(i=0,1,2,3....)目前数据流量Fi高于一定预先设定的阈值,认为该sink节点过载,发送控制信息给该sink节点Si,sink节点Si接收到网关的信息后将在DIO信息中添加警告信息,使得处于中间区域的节点选取其他sink节点没有过载的DODAG中的节点作为父节点,如图6所示。如果监测到sink节点S1过载,图6中左边中间虚线框中间的节点将作出相应调整,该区域内某些节点将移除当前DODAG,并重新选择以S2为sink节点的DODAG图中的节点为父节点。 

汇聚节点sink节点通过定时器的方式计算单位时间内收到的数据包数量F,并且定期将该F值发送至网关。网关一旦检测到该值超过预先设定的阈值, 则发送控制信息给汇聚节点sink,汇聚节点sink利用RPL的DIO信息的扩展选项,发送带有警告选项的DIO。警告消息如图7所示。 

为了防止部分在两个DOGAG中间的节点来回进行父节点切换,也就是产生网络震荡,节点必须知道一个切换阈值T,用来决定该节点是继续留在原DODAG中还是加入其他DODAG。当网关节点检测到有sink节点存在过载的情况,首先判断网络不均衡度,如果网络的不均衡度超过该阈值T时,启动负载均衡机制;低于该阈值时,认为目前网络负载相对平衡,sink节点普遍存在过载情况,则不启动负载均衡机制。网络的不平衡度由网关计算,网络中所有sink定期将自己的负载值发送至网关节点,网关收集所有sink的流量值后进行网络不均衡度的计算,计算公式如(1)所示, 

>S=1n[(F1-F)2+(F2-F)2+...+(Fn-F)2]---(1)>

公式中Fn(n=1,2,3...)代表第n个sink流量负载值,代表所有DODAG中sink流量负载的平均值,s值代表了网络负载的不平衡度。 

综上所述,本发明所述技术方案是基于RPL的多sink负载均衡路由协议LB-RPL,该将负载均衡的控制信息添加到RPL路由信息交互数据包中,引入了较少的控制开销,在保证网络可靠性和有效性的同时,通过均衡网络的负载,能有效地提高网络整体吞吐量,延长网络的生存时间。 

显然,本发明的上述实施例仅仅是为清楚地说明本发明所作的举例,而并非是对本发明的实施方式的限定,对于所属领域的普通技术人员来说,在上述说明的基础上还可以做出其它不同形式的变化或变动,这里无法对所有的实施方式予以穷举,凡是属于本发明的技术方案所引伸出的显而易见的变化或变动仍处于本发明的保护范围之列。 

去获取专利,查看全文>

相似文献

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

客服邮箱:kefu@zhangqiaokeyan.com

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

  • 服务号