CN111542096B - 一种基于请求域扩展和空洞处理的路由方法 - Google Patents
一种基于请求域扩展和空洞处理的路由方法 Download PDFInfo
- Publication number
- CN111542096B CN111542096B CN202010356993.1A CN202010356993A CN111542096B CN 111542096 B CN111542096 B CN 111542096B CN 202010356993 A CN202010356993 A CN 202010356993A CN 111542096 B CN111542096 B CN 111542096B
- Authority
- CN
- China
- Prior art keywords
- node
- request
- packet
- rreq
- routing
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W40/00—Communication routing or communication path finding
- H04W40/02—Communication route or path selection, e.g. power-based or shortest path routing
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W40/00—Communication routing or communication path finding
- H04W40/02—Communication route or path selection, e.g. power-based or shortest path routing
- H04W40/20—Communication route or path selection, e.g. power-based or shortest path routing based on geographic position or location
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W84/00—Network topologies
- H04W84/18—Self-organising networks, e.g. ad-hoc networks or sensor networks
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Mobile Radio Communication Systems (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本发明提供一种基于请求域扩展和空洞处理的路由方法,涉及无线传感器网络技术领域。本发明步骤如下:进行路由发现和请求域选择过程;广播数据包RREQ;收到数据包的节点若是目的节点执行路由回复过程;若否判断节点是否在请求域内,若否丢弃数据包;若是获取该节点的邻居节点,邻居节点中若有邻居节点到期望域圆心的距离小于节点到圆心的距离则广播RREQ,若否进行空洞处理过程;若局部空洞处理失败,向重发现源节点Sn发送ERROR包,重发现源节点Sn收到ERROR后根据新的角度求出请求域,更新RREQ中的请求域值,广播RREQ;该方法能够处理遇到路由空洞时转发节点选择问题,同时依据节点稳定度和链路稳定度设计节点间信任值,将其用于链路断裂预警处理。
Description
技术领域
本发明涉及无线传感器网络技术领域,尤其涉及一种基于请求域扩展和空洞处理的路由方法。
背景技术
针对大型火灾中救援人员的安全问题,可采用可穿戴无线传感器网络对其生理信息进行监测和数据传输,以保障他们的生命安全。然而,在数据传输过程中,用户的移动性和火灾现场的特殊性,对WWSN的路由问题提出了巨大的挑战。一方面,拓扑变化快,节点移动极易导致链路断裂;另一方面,在火灾救援中,因为火焰的存在可能会出现路由空洞。因此,这种特殊的场景需要网络路由算法具有高可靠性并且能够处理路由空洞问题,而现有的路由算法并不能达到这些要求。
发明内容
本发明要解决的技术问题是针对上述现有技术的不足,提供一种基于请求域扩展和空洞处理的路由方法,能够处理遇到路由空洞时转发节点选择问题,同时依据节点稳定度和链路稳定度设计节点间信任值,并将其用于链路断裂预警处理和链路断裂后的路由修复。
为解决上述技术问题,本发明所采取的技术方案是:
本发明提供一种基于请求域扩展和空洞处理的路由方法,包括如下步骤:
步骤1:进行路由发现过程,获取重发现源节点Sn,其中n为重发现次数,初始重发现次数n=0,根据从位置服务系统获取的目的节点D的位置坐标(xD,yD)及获取该位置的时刻tD,计算目的节点所在的期望区域半径Rt并确定Sn与期望区域的圆心O的距离d(Sn,O);
步骤2:根据Sn进行请求区域选择过程,即RZS过程;
步骤3:设置路由请求数据包RREQ的内容,所述请求数据包RREQ包括数据包类型,重发现源节点SnID号,目的节点D的ID号,路由跳数h和重发现次数n,以及存储的期望域半径和获得目的节点的时间,请求包数据部分是路由列表pathlist(Sn),每经过一个节点pathlist(Sn)会在表中添加此节点;
步骤4:重发现源节点Sn广播数据包RREQ;
步骤5:当节点收到数据包RREQ后,判断该节点是否为目的节点?若是,则执行步骤10;若否,则判断该节点是否位于请求域内,若是,则定义该节点为中间节点,执行步骤6;若否,则丢弃数据包RREQ;
步骤6:获取中间节点的所有邻居节点,若所有邻居节点中存在任一邻居节点到期望域圆心的距离d小于中间节点到期望域圆心的距离d′,则中间节点广播数据包RREQ,执行步骤5;若所有邻居节点中的任一邻居节点到期望区域圆心的距离d都要大于中间节点到期望区域圆心的距离d′,则进入空洞处理过程,该中间节点广播空洞处理请求包HOLE_SOUR_RREQ,并执行步骤7;
步骤7:邻居节点收到HOLE_SOUR_RREQ请求包后,进行空洞处理过程执行局部空洞处理算法,即LHH;
中间节点发现在请求域内遇到路由空洞无法发送,则找到该节点在非请求域内的邻居节点J,并向节点J发送数据请求包HOLE_SOUR_RREQ,数据请求包HOLE_SOUR_RREQ的内容包括遭遇此空洞之前路由发现过程中传输的目的节点D的信息以及重发现次数n;将n的值加上1,将节点J设置为重发现源节点Sn,将节点J存储器中目的节点D的信息与中间节点向J发送的HOLE_SOUR_RREQ进行比较,选择最近时刻目的节点D的信息作为当前目的节点D的信息,执行步骤1;若节点J也无法跨越这个空洞,即节点J的邻居节点到目的节点的距离大于节点J到目的节点的距离,则向中间节点发送ERROR包,执行步骤8;
步骤8:中间节点收到ERROR包,说明局部空洞处理失败,向重发现源节点Sn发送ERROR包,告知重发现源节点Sn扩大原请求域的角度,执行步骤9;
扩大请求域原则为重新扩大角度后的请求域需包含节点J;
步骤10:路由回复过程;当目的节点D接收到RREQ时,沿请求包中记录的路由折返,向原始源节点S0发送路由回复消息包RREP,所述路由回复消息包RREP包括原始源节点S0的位置信息及获取该位置的时刻,目的节点位置信息及获取该位置的时刻,路由列表以及当前时刻目的节点D的位置坐标(xd,yd);
步骤11:节点收到路由回复消息包RREP,判断该节点是否为重发现源节点Sn,若否,则按路由列表继续转发,重复本步骤,若是,判断n是否等于零,若否,则令n-1,按路由列表继续转发重复本步骤;若是,则说明该节点就是原始源节点S0,执行步骤12;
步骤12:原始源节点S0根据接收到的路由回复消息包RREP确定传输路径,暂时的路由消息传输列表建立完成,按此列表进行第一次的信息传输;而后进入路由维护阶段,原始源节点S0将自身节点稳定度与移动速度和方向传输给下一跳节点,由下一跳节点计算链路稳定度,综合节点和链路状态计算信任值,路由当中每个节点都如此计算信任值,信任值为维护阶段的唯一指标。
所述步骤1中重发现源节点Sn计算目的节点出现的范围,此范围即设为期望区域,期望区域的圆心O为上一时刻目的节点D的坐标,具体公式如下:
Rt=V×(t1-to)+η
其中V代表半径通过人最大移动速度,η代表定位误差,tO为上一次进行数据传输时获得目的节点的时间,即存储器中存储的时间,t1为重发现源节点Sn将要发包的时刻。
所述步骤2中三角形请求区域是为以重发现源节点Sn为顶点,包含期望域在内的最小三角形区域,其中初始时刻三角形请求区域的三线与期望域相切。
所述步骤8中新的请求域角度α′计算公式为:
其中,(xs,ys),(xj,yj)为上级重发现源节点Sn和节点J的横纵坐标,α为上级重发现源节点Sn的三角形请求区域角度。
所述步骤12中路由维护阶段的具体步骤如下:
步骤a:当前跳节点应与邻居节点周期性进行节点之间的数据包交换以维持节点稳定度,执行步骤b;
步骤b:当有数据包经过当前跳节点时,当前跳节点获取其上一跳节点的稳定度,结合上一跳节点与当前跳节点之间的链路质量计算当前跳节点对上一跳节点的信任值Tv,执行步骤c;
步骤c:判断信任值Tv是否大于阈值F,若是,则当前跳节点对上一跳节点为信任状态,转入步骤e;若否,则当前跳节点对上一跳节点为不信任状态,转入步骤d;
步骤d:当前跳节点与上一跳之间通过简单的路由发现在两节点之间建立若干段路径,确保每段路径都处于信任状态,并断开二者之间的直接连接,执行步骤e;
步骤e:当前跳节点更换数据包头部的移动状态部分,所述移动状态部分包括移动速度和方向,为了计算上一跳节点与当前跳节点之间的信任值,节点稳定度为上一跳节点计算所得,将上一跳节点的节点稳定度和上一跳节点的移动速度和方向告知当前跳节点用来计算链路稳定度和信任值,将上一跳节点的移动状态替换为当前跳节点的移动状态,并转发数据包。
所述信任值Tv计算过程如下所示:
采用群组移动模型的计算方法得到的体上节点稳定度为:
其中,Tp(t)为剩余时间参数,SP(t)为相对稳定性参数,ε1、ε2为权重因子;p代表节点,t代表时间;采用随机步行移动模型的计算方法得到的体间节点稳定度为下式:
其中RP(t)为相对移动参数;β1,β2为权重因子;
链路稳定度考虑链路质量和链路维持时间;采用RSSI评估方式,对RSSI归一处理得到评估值链路维持时间LET根据稳定传输范围和两个节点的移动参数,所述移动参数包括移动速度、方向角和距离,结合运动学知识计算出LET的值,维持时间的参数模型为:
L(p,q)=LET×f
f为节点数据发送频率;
因此,链路稳定度Mp,q(t)为:
其中,γ1,γ2为权重系数且γ1+γ2=1;q代表节点;
通过以上的计算根据实际情况将两种稳定度加权确定信任值Tv:
Tv=σWp(t)+μMp,q(t)
其中,σ、μ代表权重系数。
采用上述技术方案所产生的有益效果在于:本发明提供的一种基于请求域扩展和空洞处理的路由方法,本方法借助于请求域扩展和空洞处理解决面向大型火灾救援的可穿戴无线传感器网络的节能问题,实现火灾场景下长距离路由选择,能够处理遇到路由空洞时转发节点选择问题,有效寻找到通往经常移动的目的节点的多条路径并从中选择一条耗时最短的;同时依据节点稳定度和链路稳定度设计节点间信任值,并将其用于链路断裂预警处理,降低链路断裂的概率,提高路由的可靠性。
附图说明
图1为本发明实施例提供的方法流程图;
图2为本发明实施例提供的路由回复过程方法流程图;
图3为本发明实施例提供的三种请求域对比示意图;
图4为本发明实施例提供的空洞处理过程示意图;
图5为本发明实施例提供的重发现源节点Sn扩大请求域示意图;
图6为本发明实施例提供的节点移动速度对分组投递率的影响示意图;
图7为本发明实施例提供的端到端时延与移动速度关系示意图;
图8为本发明实施例提供的链路质量对丢包率的影响示意图。
具体实施方式
下面结合附图和实施例,对本发明的具体实施方式作进一步详细描述。以下实施例用于说明本发明,但不用来限制本发明的范围。
本发明实施的环境为大型火灾救援。在火灾救援过程中,有若干消防员和一个通信员。消防员随身携带若干可穿戴设备,这些可穿戴设备内嵌传感器,可以用于检测生理信息(如心跳、血压、血氧等)、环境信息(温度、湿度、有毒气体等)和运动信息(位置、速度、移动方向)。另外,消防员还携带一个控制器,负责收集身体上传感器感知的数据,并负责与通信员的无线设备进行通信。所有消防员的控制器和通信员的无线设备构成一个自组织网络,其中,任意一个消防员为重发现源节点Sn,通信员为目的节点,其他消防员为中间节点。可实施本发明的算法,以保障数据传输的可靠性,实现对消防员即时状态的监测和远程指挥,从而减免消防员伤亡情况发生。
如图1所示,本实施例的方法如下所述。
本发明提供一种基于请求域扩展和空洞处理的路由方法,包括如下步骤:
步骤1:进行路由发现过程,获取重发现源节点Sn,其中n为重发现次数,初始重发现次数n=0,用以辨别原始源节点S0与产生的重发现源节点Sn;根据从位置服务系统获取的目的节点D的位置坐标(xD,yD)及获取该位置的时刻tD,计算目的节点所在的期望区域半径Rt并确定Sn S0与期望区域的圆心O的距离d(Sn,O);
重发现源节点Sn计算判断目的节点可能出现的范围,此范围即设为期望区域,期望区域的圆心O为上一时刻目的节点D的坐标(在一个网络中,救援人员从网络的初始时刻存储了目的节点的初始位置,随着时间的推移目的节点虽然位置发生了改变,但是数据包也将目的节点的位置带到了网络中,所以只要和目的节点进行过通信的节点,其节点内都会有目的节点的上一时刻信息。节点数据采集传输间隔不会过长,因此存储的信息是有效的。),具体公式如下:
Rt=V×(t1-to)+η
其中V代表半径通过人最大移动速度,η代表定位误差,tO为上一次进行数据传输时获得目的节点(期望域的圆心就是上一次的目的节点位置)的时间,即存储器中存储的时间,t1为重发现源节点Sn将要发包的时刻;
步骤2:根据Sn进行请求区域选择过程,即RZS过程(Request Zone Selection);
在现有基于节点预测的位置路由技术下,依据重发现源节点Sn和目的节点之间距离进行请求域划分,近距离采用距离策略,请求域为圆形;中等距离采用区域策略,请求域为矩形。然而,这两种策略不适合长距离情况,因此,本发明提出采用三角形请求区域,因为三角形请求区域面积小,造成的数据碰撞概率低,占用资源小,它限制了信息沿着最窄的空间传输。这意味着请求消息被强制以尽可能沿直线的方向传播,这为路由提供了更大选择较短路线的机会。
所述三角形请求区域是为以重发现源节点Sn为顶点,包含期望域在内的最小三角形区域,其中初始时刻三角形请求区域的三线与期望域相切;
步骤3:设置路由请求数据包RREQ的内容,所述请求数据包RREQ包括数据包类型,重发现源节点SnID号,目的节点D的ID号,所述ID号代表对应节点的信息(即用来确定收发节点是谁的);路由跳数h和重发现次数n,以及存储的期望域半径和获得目的节点的时间,请求包数据部分是pathlist(Sn),每经过一个节点pathlist(Sn)会在表中添加此节点。
步骤4:重发现源节点Sn广播数据包RREQ;
步骤5:当节点I收到数据包RREQ后,判断该节点是否为目的节点?若是,则执行步骤10;若否,则判断该节点是否位于请求域内,若是,则定义该节点为中间节点,执行步骤6;若否,则丢弃数据包RREQ;
步骤6:中间节点I需判断自己是否处于请求域方向上的路由空洞处,获取中间节点I的所有邻居节点,若所有邻居节点中存在任一邻居节点到期望域圆心的距离d(N,O)小于中间节点到期望域圆心的距离d′(I,O),即则中间节点广播数据包RREQ,执行步骤5;若所有邻居节点中的任一邻居节点到期望区域圆心的距离d(N,O)都要大于中间节点到期望区域圆心的距离d′(I,O),即则进入空洞处理过程,该中间节点广播空洞处理请求包HOLE_SOUR_RREQ,并执行步骤7;
步骤7:邻居节点收到HOLE_SOUR_RREQ请求包后,进行空洞处理过程执行局部空洞处理算法,即LHH(Local hole handle);
中间节点I发现在请求域内遇到路由空洞无法发送,则找到该节点在非请求域内的邻居节点J,并向节点J发送数据请求包HOLE_SOUR_RREQ,数据请求包HOLE_SOUR_RREQ的内容包括遭遇此空洞之前路由发现过程中传输的目的节点D的信息以及重发现次数n;节点J以自己为新的重发现源节点Sn,将n的值加上1,将节点J设置为重发现源节点Sn,将节点J存储器中目的节点D的信息与中间节点向J发送的HOLE_SOUR_RREQ进行比较,选择最近时刻目的节点D的信息作为当前目的节点D的信息,执行步骤1,并将n的值加上1。最终目的节点D收到数据包进行原路回复时,每到一个重发现源节点Sn,n的值减1,直到减到0为止。这样目的节点D和原始源节点S0就会知道遇到几次路由空洞,并确保回复包最终到达正确的原始源节点S0而不是到达中间的重发现源节点Sn。其过程如图4所示;若节点J也无法跨越这个空洞,即节点J的邻居节点到目的节点的距离大于节点J到目的节点的距离,则向中间节点发送ERROR包,即错误包,ERROR包内容简短,无重要数据,执行步骤8;
步骤8:中间节点I收到ERROR包,说明局部空洞处理失败,向重发现源节点Sn发送ERROR包,告知重发现源节点Sn扩大原请求域的角度,执行步骤9;
扩大请求域原则为重新扩大角度后的请求域需包含节点J;
根据本发明所支持网络人数,将新的角度α′重新计算为,其中(xs,ys),(xj,yj)为上级重发现源节点Sn和节点J的横纵坐标;α为上级重发现源节点Sn的三角形请求区域角度。如图5所示,但根据网络大小密度不同可适当更改。
步骤10:路由回复过程,如图2所示;当目的节点D接收到RREQ时,沿请求包中记录的路由折返,向原始源节点S0发送路由回复消息包RREP,所述路由回复消息包RREP包括原始源节点S0的位置信息及获取该位置的时刻,目的节点位置信息及获取该位置的时刻,路由列表pathlist(Sn)以及当前时刻目的节点D的位置坐标(xd,yd);
步骤11:节点收到路由回复消息包RREP,判断该节点是否为重发现源节点Sn,若否,则按路由列表pathlist(Sn)继续转发,重复本步骤,若是,判断n是否等于零,若否,则令n-1,则按路由列表pathlist(Sn)继续转发重复本步骤;若是,则说明该节点就是原始源节点S0,执行步骤12;
步骤12:原始源节点S0根据接收到的路由回复消息包RREP确定传输路径,暂时的路由消息传输列表建立完成,按此列表进行第一次的信息传输;而后进入路由维护阶段,原始源节点S0将自身节点稳定度与移动速度和方向传输给下一跳节点,由下一跳节点计算链路稳定度,综合节点和链路状态计算信任值,路由当中每个节点都如此计算信任值,信任值为维护阶段的唯一指标。信任值计算出来是为下一包准备的;所述信任值是用自身节点稳定度计算出来的;目的节点回复采用先到达先回复的原则,洪泛产生的多条路径只建立一条最先到达目的节点的路径;
假设节点A为原始源节点S0,途径节点B、节点C、节点G到节点U;路由维护基于节点间信任值,若节点间信任值较低,则提前寻找信任值较高的下一跳节点,避免出现链路断裂,降低传输时延。若节点间信任值较高,但依然由于节点不稳定造成链路断裂,则启动本地修复。
路由维护阶段的具体步骤如下:
步骤a:当前跳节点G应与邻居节点周期性进行节点之间的数据包交换以维持节点稳定度,执行步骤b;
步骤b:当有数据包经过当前跳节点G时,当前跳节点G获取其上一跳节点C的稳定度,结合上一跳节点C与当前跳节点D之间的链路质量计算当前跳节点G对上一跳节点C的信任值Tv,执行步骤c;
信任值Tv计算过程如下所示:
信任值Tv和节点稳定度与链路稳定度有关。
节点稳定度计算分为体上节点稳定度和体间节点稳定度。体上节点与邻节点的关系遵循群组移动模型,在群组移动模型中形成一个参考点(设为控制节点),其他节点与参考点之间具有一定的逻辑关系,联系较为紧密,采用群组移动模型的计算方法得到的体上节点稳定度(所述体上指的是在火场救火人员移动的位置。)为:
其中,Tp(t)为剩余时间参数,SP(t)为相对稳定性参数,ε1、ε2为权重因子;p代表节点,t代表时间;体间节点与邻节点之间遵循随机步行移动模型,体间节点移动是由在火场移动导致的,人员移动具有主观性,随机步行移动模型用于描述节点的随机步行移动性,采用随机步行移动模型的计算方法得到的体间节点稳定度为下式:
其中RP(t)为相对移动参数;β1,β2为权重因子;
链路维持时间LET根据稳定传输范围和两个节点的移动参数,所述移动参数包括移动速度、方向角和距离,结合运动学知识可简单计算出LET的值,本发明将维持时间的参数模型定义为
L(p,q)=LET×f
f为节点数据发送频率;
因此,链路稳定度Mp,q(t)为:
其中,γ1,γ2为权重系数且γ1+γ2=1;q代表节点;
通过以上的计算就可以根据实际情况将两种稳定度加权确定信任值Tv。本发明在人移动速度最大12m/s,控制节点数在50个时测得网络最优权值为:链路稳定度权值为24%左右,因此信任值
Tv=σWp(t)+μMp,q(t)
其中,σ、μ代表权重系数。
本实施例中σ=0.76,μ=0.24;p和q分别代表上一跳节点和当前跳节点;
步骤c:判断信任值Tv是否大于阈值F(0<F<1),若是,则当前跳节点G对上一跳节点C为信任状态,转入步骤e;若否,则当前跳节点G对上一跳节点C为不信任状态,转入步骤d;
本实施例中F=0.85;
步骤d:当前跳节点与上一跳之间通过简单的路由发现在两节点之间建立若干段路径,确保每段路径都处于信任状态,并断开二者之间的直接连接,执行步骤e;
步骤e:当前跳节点G更换数据包头部的移动状态部分,所述移动状态部分包括移动速度和方向,为了计算C与G之间的信任值,节点稳定度为C计算所得,将C的节点稳定度和C的移动速度和方向告知G用来计算链路稳定度和信任值,将上一跳节点C的移动状态替换为当前跳节点G的移动状态,并转发数据包。
两节点之间一旦链路断开连接,进入路由修复过程,由于是在信任范围内断连,大概率不是因为节点和链路不够稳定,而是产生的突发性故障情况导致的节点损坏或突发性信号中断,因此需注意局部修复绕过C,为了减少数据包的数量,采用反向修复作为本发明维护阶段的修复。
如图6所示,展示了节点的移动速度对分组投递率的影响。随着速度的增加三种算法(其中AODV为流行非位置算法,GPSR为较流行位置算法,MARA为本发明所述方法)的分组投递率大致呈现下降的趋势。因为移动速度增加,导致节点链路动态变化,进而使得节点的稳定性降低,数据包丢失的可能性增大。但是节点移动速度降低时,本文算法分组投递率有小幅度上升,这主要是因为随着节点移动速度增加,导致在发现阶段由于节点移动而填补了部分路由空洞,使本来无法到达的分组由于出现了中间节点而产生可用路径。同样可以看出虽然本文算法随着移动速度增加分组投递率的下降速度略快于其他算法,但是在人运动速度的极限(约12m/s)内还是比其他算法要高。因此相对于其他两种算法,本算法更适合于低速移动的WWSN网络。
从图7中可以看出,随着节点最大移动速度的不断增加,三种算法的时延整体上都呈现增大的趋势。节点最大移动速度为6m/s时GPSR算法的端到端时延突然增大是遇到路由空洞现象,而其进入周边转发状态,而这种状态处理空洞问题较为低效,从而影响了端到端的时延。而本文算法效果较好,因为本文在发现阶段处理空洞时局部算法可以有效降低参与处理空洞节点的数量和路由跳数。在正常人移动速度范围内,本文算法表现良好,时延较低。
如图8所示,链路质量(LQI,link quality indicator)测量在ZigBee无线传输中已经实现,他能侧面反映出无线链路的好坏。为了检验本网络在恶劣环境下的适应程度,通过改变无线链路质量来查看对丢包率的影响。在链路质量大于90时,三者表现较为同步,但当小于90时,本文算法充分显示其优势,丢包率明显小于其他两种,甚至在链路质量仅有30的时候未曾超过50%,这是因为本算法制定了完善的路由维护机制。因此总结出本算法比较适用于较为恶劣的火场环境。
最后应说明的是:以上实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述实施例所记载的技术方案进行修改,或者对其中部分或者全部技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明权利要求所限定的范围。
Claims (5)
1.一种基于请求域扩展和空洞处理的路由方法,其特征在于:包括如下步骤:
步骤1:进行路由发现过程,获取重发现源节点Sn,其中n为重发现次数,初始重发现次数n=0,根据从位置服务系统获取的目的节点D的位置坐标(xD,yD)及获取该位置的时刻tD,计算目的节点所在的期望区域半径Rt并确定Sn与期望区域的圆心O的距离d(Sn,O);
步骤2:根据Sn进行请求区域选择过程,即RZS过程;
步骤3:设置路由请求数据包RREQ的内容,所述请求数据包RREQ包括数据包类型,重发现源节点SnID号,目的节点D的ID号,路由跳数h和重发现次数n,以及存储的期望域半径和获得目的节点的时间,请求包数据部分是路由列表pathlist(Sn),每经过一个节点pathlist(Sn)会在表中添加此节点;
步骤4:重发现源节点Sn广播数据包RREQ;
步骤5:当节点收到数据包RREQ后,判断该节点是否为目的节点?若是,则执行步骤10;若否,则判断该节点是否位于请求域内,若是,则定义该节点为中间节点,执行步骤6;若否,则丢弃数据包RREQ;
步骤6:获取中间节点的所有邻居节点,若所有邻居节点中存在任一邻居节点到期望域圆心的距离d小于中间节点到期望域圆心的距离d′,则中间节点广播数据包RREQ,执行步骤5;若所有邻居节点中的任一邻居节点到期望区域圆心的距离d都要大于中间节点到期望区域圆心的距离d′,则进入空洞处理过程,该中间节点广播空洞处理请求包HOLE_SOUR_RREQ,并执行步骤7;
步骤7:邻居节点收到HOLE_SOUR_RREQ请求包后,进行空洞处理过程执行局部空洞处理算法,即LHH;
中间节点发现在请求域内遇到路由空洞无法发送,则找到该节点在非请求域内的邻居节点J,并向节点J发送数据请求包HOLE_SOUR_RREQ,数据请求包HOLE_SOUR_RREQ的内容包括遭遇此空洞之前路由发现过程中传输的目的节点D的信息以及重发现次数n;将n的值加上1,将节点J设置为重发现源节点Sn,将节点J存储器中目的节点D的信息与中间节点向J发送的HOLE_SOUR_RREQ进行比较,选择最近时刻目的节点D的信息作为当前目的节点D的信息,执行步骤1;若节点J也无法跨越这个空洞,即节点J的邻居节点到目的节点的距离大于节点J到目的节点的距离,则向中间节点发送ERROR包,执行步骤8;
步骤8:中间节点收到ERROR包,说明局部空洞处理失败,向重发现源节点Sn发送ERROR包,告知重发现源节点Sn扩大原请求域的角度,执行步骤9;
扩大请求域原则为重新扩大角度后的请求域需包含节点J;
步骤10:路由回复过程;当目的节点D接收到RREQ时,沿请求包中记录的路由折返,向原始源节点S0发送路由回复消息包RREP,所述路由回复消息包RREP包括原始源节点S0的位置信息及获取该位置的时刻,目的节点位置信息及获取该位置的时刻,路由列表以及当前时刻目的节点D的位置坐标(xd,yd);
步骤11:节点收到路由回复消息包RREP,判断该节点是否为重发现源节点Sn,若否,则按路由列表继续转发,重复本步骤,若是,判断n是否等于零,若否,则令n-1,按路由列表继续转发重复本步骤;若是,则说明该节点就是原始源节点S0,执行步骤12;
步骤12:原始源节点S0根据接收到的路由回复消息包RREP确定传输路径,暂时的路由消息传输列表建立完成,按此列表进行第一次的信息传输;而后进入路由维护阶段,原始源节点S0将自身节点稳定度与移动速度和方向传输给下一跳节点,由下一跳节点计算链路稳定度,综合节点和链路状态计算信任值,路由当中每个节点都如此计算信任值,信任值为维护阶段的唯一指标,采用群组移动模型的计算方法得到的体上节点稳定度为:
其中,Tp(t)为剩余时间参数,SP(t)为相对稳定性参数,ε1、ε2为权重因子;p代表节点,t代表时间;采用随机步行移动模型的计算方法得到的体间节点稳定度为下式:
其中RP(t)为相对移动参数;β1,β2为权重因子;
链路稳定度考虑链路质量和链路维持时间;采用RSSI评估方式,对RSSI归一处理得到评估值链路维持时间LET根据稳定传输范围和两个节点的移动参数,所述移动参数包括移动速度、方向角和距离,结合运动学知识计算出LET的值,维持时间的参数模型为:
L(p,q)=LET×f
f为节点数据发送频率;
因此,链路稳定度Mp,q(t)为:
其中,γ1,γ2为权重系数且γ1+γ2=1;q代表节点;
通过以上的计算根据实际情况将两种稳定度加权确定信任值Tv:
Tv=σWp(t)+μMp,q(t)
其中,σ、μ代表权重系数。
2.根据权利要求1所述的一种基于请求域扩展和空洞处理的路由方法,其特征在于:所述步骤1中重发现源节点Sn计算目的节点出现的范围,此范围即设为期望区域,期望区域的圆心O为上一时刻目的节点D的坐标,具体公式如下:
Rt=V×(t1-to)+η
其中V代表半径通过人最大移动速度,η代表定位误差,tO为上一次进行数据传输时获得目的节点的时间,即存储器中存储的时间,t1为重发现源节点Sn将要发包的时刻。
3.根据权利要求1所述的一种基于请求域扩展和空洞处理的路由方法,其特征在于:所述步骤2中三角形请求区域是为以重发现源节点Sn为顶点,包含期望域在内的最小三角形区域,其中初始时刻三角形请求区域的三线与期望域相切。
5.根据权利要求1所述的一种基于请求域扩展和空洞处理的路由方法,其特征在于:所述步骤12中路由维护阶段的具体步骤如下:
步骤a:当前跳节点应与邻居节点周期性进行节点之间的数据包交换以维持节点稳定度,执行步骤b;
步骤b:当有数据包经过当前跳节点时,当前跳节点获取其上一跳节点的稳定度,结合上一跳节点与当前跳节点之间的链路质量计算当前跳节点对上一跳节点的信任值Tv,执行步骤c;
步骤c:判断信任值Tv是否大于阈值F,若是,则当前跳节点对上一跳节点为信任状态,转入步骤e;若否,则当前跳节点对上一跳节点为不信任状态,转入步骤d;
步骤d:当前跳节点与上一跳之间通过简单的路由发现在两节点之间建立若干段路径,确保每段路径都处于信任状态,并断开二者之间的直接连接,执行步骤e;
步骤e:当前跳节点更换数据包头部的移动状态部分,所述移动状态部分包括移动速度和方向,为了计算上一跳节点与当前跳节点之间的信任值,节点稳定度为上一跳节点计算所得,将上一跳节点的节点稳定度和上一跳节点的移动速度和方向告知当前跳节点用来计算链路稳定度和信任值,将上一跳节点的移动状态替换为当前跳节点的移动状态,并转发数据包。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010356993.1A CN111542096B (zh) | 2020-04-29 | 2020-04-29 | 一种基于请求域扩展和空洞处理的路由方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010356993.1A CN111542096B (zh) | 2020-04-29 | 2020-04-29 | 一种基于请求域扩展和空洞处理的路由方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN111542096A CN111542096A (zh) | 2020-08-14 |
CN111542096B true CN111542096B (zh) | 2022-02-11 |
Family
ID=71977282
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010356993.1A Active CN111542096B (zh) | 2020-04-29 | 2020-04-29 | 一种基于请求域扩展和空洞处理的路由方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN111542096B (zh) |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108495249A (zh) * | 2018-02-05 | 2018-09-04 | 西安电子科技大学 | 基于位置信息低功耗的自组网路由方法 |
CN109874147A (zh) * | 2019-03-06 | 2019-06-11 | 天津理工大学 | 一种基于贪婪转发优化策略的移动自组织网络的路由方法 |
Family Cites Families (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8578054B2 (en) * | 2008-03-07 | 2013-11-05 | Cisco Technology, Inc. | Computing disjoint paths for reactive routing mesh networks |
CN103634871A (zh) * | 2013-01-05 | 2014-03-12 | 北京邮电大学 | 一种平衡稳定性和有效性的车载网地理路由协议 |
CN104703245B (zh) * | 2015-04-02 | 2016-09-14 | 湘潭大学 | 基于德洛内三角剖分的空洞绕行地理路由方法 |
FR3047383B1 (fr) * | 2016-01-29 | 2018-03-02 | Maple High Tech | Reseau de capteurs reconfigurable. |
-
2020
- 2020-04-29 CN CN202010356993.1A patent/CN111542096B/zh active Active
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108495249A (zh) * | 2018-02-05 | 2018-09-04 | 西安电子科技大学 | 基于位置信息低功耗的自组网路由方法 |
CN109874147A (zh) * | 2019-03-06 | 2019-06-11 | 天津理工大学 | 一种基于贪婪转发优化策略的移动自组织网络的路由方法 |
Also Published As
Publication number | Publication date |
---|---|
CN111542096A (zh) | 2020-08-14 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Raffelsberger et al. | A hybrid MANET-DTN routing scheme for emergency response scenarios | |
Raffelsberger et al. | Evaluation of MANET routing protocols in a realistic emergency response scenario | |
JP2005537762A (ja) | モバイルアドホックネットワークにおける知的通信ノードオブジェクトビーコンフレームワーク | |
CN105848243B (zh) | 一种基于节点位置的中继选择及功率控制联合优化方法 | |
Arbia et al. | Behavior of wireless body-to-body networks routing strategies for public protection and disaster relief | |
CN112929940A (zh) | 一种基于链路生存时间预测的无人机自组网组播路由协议 | |
CN111542096B (zh) | 一种基于请求域扩展和空洞处理的路由方法 | |
Zhang et al. | Large‐scale fire rescue in wearable wireless sensor networks: A hole processing and trust value‐based mobile adaptive routing algorithm | |
CN116321345A (zh) | 应用于室内消防通信的路由方法 | |
Ramesh et al. | Modified DSR (Preemptive) to reduce link breakage and routing overhead for MANET using Proactive Route Maintenance (PRM) | |
Anbarasan et al. | Improving performance in mobile ad hoc networks by reliable path selection routing using RPS-LEACH | |
Xiaochuan et al. | Link reliability based hybrid routing for tactical mobile ad hoc network | |
CN102883398A (zh) | 一种用于无线传感网的低时延且能耗平衡的路由方法 | |
CN114390631A (zh) | 一种无人机自组网络移动性预测的多径路由协议方法 | |
CN114449608A (zh) | 一种基于Q-Learning的无人机自组网自适应路由方法 | |
Gruber et al. | Ad hoc routing for cellular coverage extension | |
KR101467115B1 (ko) | 빌딩 내 소방방재 시스템 및 방법 | |
Amel et al. | Routing technique with cross-layer approach in ad hoc network | |
Atiq et al. | A reliable energy-balancing multi-group (REM) routing protocol for firefighter communication networks | |
CN111148175B (zh) | 一种无线自组织网络中自适应路由修复方法 | |
KR101639149B1 (ko) | 무선 모바일네트워크에서 측정오차가 있는 위치정보를 이용한 정보 전송방법 | |
Guo et al. | Reliable data collection from mobile users with high data rates in wireless sensor networks | |
Zhang et al. | Body-to-body network routing algorithm based on link comprehensive stability | |
Wang et al. | A robust and energy efficient routing scheme for wireless sensor networks | |
Ali et al. | Signal strength based link sensing for mobile ad-hoc networks |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |