一种监测路径节点能量和队列长度的路由方法与流程

文档序号:15261964发布日期:2018-08-24 21:53阅读:156来源:国知局
本发明涉及一种属于无线传感器网络路由协议领域的方法,更确切地说,本发明涉及一种监测路径节点能量和队列长度的路由方法。
背景技术
:无线传感器网络(wirelesssensornetwork,wsn)是由大量分布在目标监测区域内的传感器节点组成的,传感器节点通过周期性感知周围环境的有用信息并进行简单处理,通过自组织方式与其周围相邻的传感器节点进行通信,采用无线传输形式通过单跳或多跳将源微型传感器节点采集的信息传送给基站进行最终处理。wsn具有大规模、自组织、以数据为中心、协同工作等优点,具有广阔的应用前景。但wsn也有其自身缺陷,由于微型传感器节点能量和网络带宽资源有限、网络部署环境复杂等特点,可能导致网络出现负载不均甚至网络分割。路由协议作为wsn的核心技术,主要实现网络通信路径的建立和维护,因此如何设计有效的路由协议来调整负载分配,实现网络负载均衡具有重要意义。目前针对路由协议已经有很多成熟的研究成果,按照建立路径的数目可分为单路径路由协议和多路径路由协议,单路径路由协议实现简单,但其容错性和健壮性差,代表性单路径路由协议有aodv(adhocon-demanddistancevectorrouting)协议、dsr(dynamicsourcerouting)协议。多路径路由协议实现复杂,但是可以提高网络容错性和资源利用率,因此多径路由协议更适合无线传感器网络。代表性多路径路由协议有aomdv(adhocon-demandmultipathdistancevectorrouting)协议,该协议是在aodv(adhocon-demanddistancevector)协议基础上发展来的。aomdv协议通过利用序列号机制和首跳及最后一跳信息来获取多条无环路且节点不相交的路径。相比于aodv,aomdv在路由控制开销、分组投递率、路由发起频率等性能上有明显改善。但是aomdv协议也存在一些不足,列举如下:(1)aomdv协议在路由发现时,只依据跳数的大小作为路由判据,所建立的路径往往是最短路径,而最短路径不一定就是最优路径,如果最短路径上存在有能量不足或负载过重的节点,可能导致网络拥塞甚至网络失效;(2)路由发现过程中路由分组转发时延固定不利于建立最优路径;(3)网络一旦建立路由,源节点不能有效更新路径信息使得一直沿固定路径传输,造成网络能量和负载分布不均。技术实现要素:本发明所要解决的技术问题是克服了现有技术存在建立路径不是最优路径和负载不均容易导致网络失效的问题,提供了一种监测路径节点能量和队列长度的路由方法。为解决上述技术问题,本发明是采用如下技术方案实现的:所述的一种监测路径节点能量和队列长度的路由方法包括步骤如下:1)相关路由控制分组的扩展(1)扩展路由请求分组rreq,在aomdv协议的rreq分组原有的分组类型、保留位、请求跳数、请求广播标识号、请求目的地址、请求目的序列号、请求源地址、请求源序列号、请求时间戳、请求首跳地址的基础上,添加请求能量标志位、请求队列标志位与请求合适度值标志位;(2)扩展路由应答分组rrep,在aomdv协议的rrep分组原有的分组类型、保留位、应答跳数、应答广播标识号、应答目的地址、应答目的序列号、应答源地址、应答消息寿命、应答时间戳、应答首跳地址的基础上,添加应答能量标志位、应答队列标志位、应答合适度值标志位与应答累计跳数;(3)扩展hello分组的格式,在aomdv协议的hello分组原有的分组类型、保留位、hello跳数、hello广播标识号、hello目的地址、hello目的序列号、hello源地址、hello消息寿命、hello时间戳的基础上,添加最小合适度路径目的地址、最小合适度路径能量标志位、最小合适度路径队列标志位最小合适度值与最小合适度路径跳数;2)路径状态信息的扩展aomdv协议原有的路径状态信息包括路径链表、路径下一跳、路径跳数、路径期限、当前时间、路径最后一跳、路径出错标志,在aomdv协议原有的路径状态信息基础上,对于路径状态信息增加用于记录路径的所有中间节点能量和的路径能量标志位、用于记录路径上所有中间节点总负载量的路径队列标志位、用于存储路径合适度值的路径合适度值,当节点接收路由控制分组rreq或rrep建立路径时,分别用rreq或rrep的能量标志位、队列标志位以及合适度标志位来分别更新路径的路径能量标志位、路径队列标志位以及路径合适度值;3)路由请求过程;4)路由应答过程;5)节点间利用hello分组进行动态监测网络路径信息。技术方案中所述的路由请求过程的步骤如下:1)源节点发起路由请求:源节点通过初始化并广播rreq分组来发起路由请求;所述的源节点是指网络中数据起始发送的节点,目的节点是指网络最终接收数据的节点,中间节点是指网络中转发数据的节点;2)中间节点根据接收的rreq建立反向路径:这里反向路径是指网络中从目的节点到源节点方向的路径;中间节点接收到rreq分组,根据rreq分组信息来建立反向路径,当该中间节点到达源节点的反向路径数目小于3时,直接建立反向路径,当该中间节点到达源节点的反向路径数目等于3条时,查找已有的3条路径中的最小路径合适度值是否小于rreq分组的请求合适度值,如果小于,则删除最小合适度值的路径,并将rreq转发经过的路径添加至路由表,然后判断rreq传输到存在到达目的节点有效路由的中间节点传输或者目的节点,如果是,则进入路由应答过程步骤,否则进入下一步骤3);3)中间节点更新rreq分组信息;4)中间节点根据自身能量和队列长度自适应延时转发rreq:当更新完rreq分组信息后,此时依据当前节点剩余能量和缓存队列大小来自适应设置rreq分组的转发时延,转发时延的计算公式如下:式中:delayrreq表示rreq分组的转发时延,qnode表示node的缓存队列大小,enode表示node的剩余能量,kq表示队列调整因子,此处取值为0.5×qfull,ke表示能量调整因子,此处取值1.0;通过网络的中间节点重复循环2)步骤、3)步骤、4)步骤,最终可以将rreq传输目的节点或者传输到存在到达目的节点有效路由的中间节点,此时建立了网络的反向路径,而后进入路由应答过程步骤。技术方案中所述的中间节点更新rreq分组信息是指:当中间节点没有到达目的节点的有效路由时,需要继续转发rreq分组,此时需要先更新rreq分组的信息,包括扩展的请求能量标志位、请求队列标志位和请求合适度值标志位,rreq分组更新包括以下步骤:(1)rreq分组的请求跳数自增1;(2)请求能量标志位累加当前节点的剩余能量;(3)请求队列标志位累加当前节点的缓存队列长度与rreq请求跳数的乘积;(4)rreq分组的请求合适度值标志位的更新公式如下:式中:rq_fit为rreq分组的请求合适度值标志位,rq_energy为rreq的请求能量标志位,rq_queue为rreq的请求队列标志位,hrreq为rreq分组的转发跳数,einit表示节点的初始能量值,qfull表示节点的缓存队列的容量。技术方案中所述的路由应答过程包括以下步骤:1)目的节点或存在到达目的节点有效路由的中间节点发送rrep分组:当目的节点接收到rreq分组时,或者存在到达目的节点有效路由的中间节点接收rreq时,此时目的节点或该中间节点将初始化并单播rrep分组进行路由应答,rrep分组的扩展标志位的初始化如下:rp_energy=epath+enode(3)rp_queue=qpath+qnode×hpath(4)rp_hop=hpath(5)式中:rp_energy表示rrep的应答能量标志位,rp_queue表示rrep的应答队列标志位,rp_hop表示rrep的应答累计跳数,rp_fit表示应答合适度值标志位,path表示当前节点到达目的节点的正向转发路径,node表示当前节点,epath表示path的路径能量标志位,enode表示node的剩余能量,qpath表示path的路径队列标志位,qnode表示node的缓存队列大小,hpath表示path的路径跳数,einit表示节点的初始能量值,qfull表示节点的缓存队列的容量。2)中间节点接收rrep分组:这里前向路径,是指从源节点到目的节点方向的路径,中间节点接收到rrep分组后,根据rrep分组信息来建立前向路径,当该中间节点到达目的节点的前向路径数目小于3时,直接建立前向路径,当该中间节点到达目的节点的前向路径数目等于3条时,查找已有的3条路径中的最小路径合适度值是否小于rrep分组的请求合适度值,如果小于,则删除最小合适度值的路径,并将rrep转发经过的路径添加至路由表,最后判断rrep传输到源节点或者传输到存在有效正向路径的中间节点,如果是,则进入步骤4),否则进入步骤3);3)中间节点转发rrep分组:如果源节点不具有到达当前中间节点的前向路径,则当前中间节点更新并转发rrep分组,rrep分组更新过程如下:(1)rrep分组的应答跳数自增1,(2)应答能量标志位累加当前节点的剩余能量,(3)应答队列标志位累加当前节点的缓存队列长度与rrep应答跳数的乘积,(4)rrep分组的应答合适度值标志位的更新公式如下:式中:rp_fit为rrep分组的应答合适度值标志位,rp_energy是rrep的应答能量标志位,rp_queue是rrep的应答队列标志位,hrrep为rrep分组的转发跳数,einit表示节点的初始能量值,qfull表示节点的缓存队列的容量;通过网络中间节点重复循环2)步骤、3)步骤,最终可以将rrep传输到源节点或者传输到存在有效正向路径的中间节点,此时建立了网络的正向路径,4)源节点向目的节点发送数据:源节点向目的节点发送数据时,选择合适度值最大的路径作为主路径传输数据,这是因为合适度值越大的路径越适合传输数据,其它两条路径作为备用路径,当合适度值最大路径失效后,选择剩下合适度值大的路径作为主路径,当所有路径均失效后,重新发起路由请求来建立路由。5.按照权利要求1所述的一种监测路径节点能量和队列长度的路由方法,其特征在于,所述的节点间利用hello分组进行动态监测网络路径信息包括以下步骤:1)发送hello分组:首先网络中节点检查是否在一定时间内广播过hello分组,如果没有则广播hello分组,当网络中节点广播hello分组时,首先初始化hello分组信息,通过遍历当前节点中存储的路由信息,找到路径合适度值最小的路径path(minfit),然后初始化hello分组的扩展标志位和原有标志位,hello分组扩展的标志位分别做如下初始化:hello_energy=epath(minfit)+enode(8)hello_queue=qpath(minfit)+qnode×hpath(minfit)(9)hello_hop=hpath(minfit)(10)式中:hello_energy是最小合适度路径能量标志位,hello_queue是最小合适度路径队列标志位,hello_hop是最小合适度路径跳数,enode是当前节点的剩余能量,epath(minfit)是path(minfit)的路径能量标志位,qpath(minfit)是path(minfit)的路径队列标志位,qnode是当前节点的缓存队列长度,hpath(minfit)是path(minfit)的跳数,hello分组的最小合适度路径目的地址为path(minfit)的目的地址,hello应答合适度值标志位的初始化值由式(8)、(9)、(10)所求的值代入式(6)中求得:初始化结束后在当前节点一跳范围内广播hello分组;2)接收hello分组。技术方案中所述的接收hello分组是指:节点接收到相邻节点广播的hello分组后,首先提取hello分组的头部信息,然后进行如下处理:(1)hello分组的源节点是否在当前节点的邻居列表中,如果在,则更新该邻居节点的信息,否则将该hello分组源节点信息的添加到邻居列表中;(2)再判断当前节点是否有到hello最小合适度路径目的地址的路由,如果没有,则丢弃hello分组,否则进入(3)步骤;(3)判断当前节点是否存在下一跳为hello源节点的路径,如果不存在,则丢弃hello分组,否则进入(4)步骤;(4)判断该路径合适度是否大于hello分组中最小合适度值,如果不大于则丢弃hello分组,否则更新路径信息,路径信息更新过程如下:a.路径能量标志位更新为hello分组的最小合适度路径能量标志位和path的路径能量标志位中的较小者;b.路径队列标志位和路径合适度值分别更新为hello分组的最小合适度路径队列标志位和最小合适度值;通过网络中所有节点周期性的重复发送hello分组步骤、接收hello分组步骤,可以实现源节点周期性监测并更新网络中合适度值最小的路径状态信息,然后根据更新后的路径信息重新选择合适度值最大的路径作为主路径进行数据传输。与现有技术相比本发明的有益效果是:1.对比aomdv路由方法,本发明所述的一种监测路径节点能量和队列长度的路由方法,自适应调整路由请求分组rreq转发时延,选择能量较大、负载较轻的节点加入路径,使得建立的路径更适合数据传输;2.对比aomdv路由方法,本发明所述的一种监测路径节点能量和队列长度的路由方法,在选择建立路径时综合考虑平均节点能量和队列负载大小,避免了aomdv建立的最短路径上存在能量较小或负载过重的节点而造成路径过早失效甚至网络分割的后果,增强了建立路径的有效性和稳定性;3.对比aomdv路由方法,本发明所述的一种监测路径节点能量和队列长度的路由方法在网络建立路由后,通过周期性hello分组来监测网络路径信息,使得源节点可以依据更新后的路径信息重新选择主路径,避免了aomdv一直使用最短路径作为主路径传输造成网络负载不均的现象。附图说明下面结合附图对本发明作进一步的说明:图1为本发明所述的一种监测路径节点能量和队列长度的路由方法的功能流程示意框图;图2为本发明所述的一种监测路径节点能量和队列长度的路由方法中路由请求流程框图;图3为本发明所述的一种监测路径节点能量和队列长度的路由方法中路由应答流程框图;图4为本发明所述的一种监测路径节点能量和队列长度的路由方法中发送hello分组流程框图;图5为本发明所述的一种监测路径节点能量和队列长度的路由方法中接收hello分组流程框图;图6为本发明所述的一种监测路径节点能量和队列长度的路由方法和原方法建立路径示意图。具体实施方式下面结合附图对本发明作详细的描述:参阅图1,本发明提供了一种监测路径节点能量和队列长度的路由方法,该方法可以自适应调整路由请求转发时延,综合考虑了节点能量和缓存队列长度等因素选择建立路径,并利用hello分组周期性监测更新路径状态信息,调整源节点选择传输数据的主路径,该方法所包含的步骤如下:1.相关路由控制分组的扩展1)扩展路由请求分组rreq,如表1,在aomdv协议的rreq分组基础上,添加请求能量标志位、请求队列标志位与请求合适度值标志位;表12)扩展路由应答分组rrep,如表2,在aomdv协议的rrep分组基础上,添加应答能量标志位、应答队列标志位、应答合适度值标志位与应答累计跳数;表23)扩展hello分组的格式,如表3,在aomdv协议的hello分组基础上,添加最小合适度路径目的地址、最小合适度路径能量标志位、最小合适度路径队列标志位最小合适度值与最小合适度路径跳数。表32.路径状态信息的扩展在aomdv协议的路径状态信息基础上,对于路径状态信息增加用于记录路径的所有中间节点能量和的路径能量标志位、用于记录路径上所有中间节点总负载量的路径队列标志位、用于存储路径合适度值的路径合适度值,当节点接收路由控制分组rreq或rrep建立路径时,分别用rreq或rrep的能量标志位、队列标志位以及合适度标志位来分别更新路径的路径能量标志位、路径队列标志位以及路径合适度值,如表4。表4路径链表路径下一跳路径跳数路径期限当前时间路径最后一跳路径出错标志路径队列标志位路径能量标志位路径合适度值3.路由请求过程:参阅图2,是本发明提出的一种监测路径节点能量和队列长度的路由方法中路由请求过程,具体包括以下4个步骤:1)源节点发起路由请求:源节点通过初始化并广播rreq分组来发起路由请求;本发明提出的一种监测路径节点能量和队列长度的路由方法中的源节点是指网络中数据起始发送的节点,目的节点是指网络最终接收数据的节点,中间节点是指网络中转发数据的节点;2)中间节点根据接收的rreq建立反向路径:这里反向路径是指网络中从目的节点到源节点方向的路径;中间节点接收到rreq分组,根据rreq分组信息来建立反向路径,当该中间节点到达源节点的反向路径数目小于3时,直接建立反向路径,当该中间节点到达源节点的反向路径数目等于3条时,查找已有的3条路径中的最小路径合适度值是否小于rreq分组的请求合适度值,如果小于,则删除最小合适度值的路径,并将rreq转发经过的路径添加至路由表,然后判断rreq传输到存在到达目的节点有效路由的中间节点传输或者目的节点,如果是,则进入步骤4路由应答过程,否则进入下一步骤3);3)中间节点更新rreq分组信息当中间节点没有到达目的节点的有效路由时,需要继续转发rreq分组,此时需要先更新rreq分组的信息,包括扩展的请求能量标志位、请求队列标志位和请求合适度值标志位,rreq分组更新过程包括以下步骤:(1)rreq分组的请求跳数自增1,(2)请求能量标志位累加当前节点的剩余能量,(3)请求队列标志位累加当前节点的缓存队列长度与rreq请求跳数的乘积,(4)rreq分组的请求合适度值标志位的更新公式如下:式中:rq_fit为rreq分组的请求合适度值标志位,rq_energy为rreq的请求能量标志位,rq_queue为rreq的请求队列标志位,hrreq为rreq分组的转发跳数,einit表示节点的初始能量值,qfull表示节点的缓存队列的容量,4)中间节点根据自身能量和队列长度自适应延时转发rreq:当更新完rreq分组信息后,此时依据当前节点剩余能量和缓存队列大小来自适应设置rreq分组的转发时延,转发时延的计算公式如下:式中:delayrreq表示rreq分组的转发时延,qnode表示node的缓存队列大小,enode表示node的剩余能量,kq表示队列调整因子,此处取值为0.5×qfull,ke表示能量调整因子,此处取值1.0;通过网络的中间节点重复循环2)步骤、3)步骤、4)步骤,最终可以将rreq传输到目的节点,或者是传输到存在到达目的节点有效路由的中间节点,此时建立了网络的反向路径,而后进入步骤4路由应答过程。4.路由应答过程:参阅图3,是本发明提出的一种监测路径节点能量和队列长度的路由方法中路由应答过程,具体包括以下步骤:1)目的节点或存在到达目的节点有效路由的中间节点发送rrep分组:当目的节点接收到rreq分组时,或者存在到达目的节点有效路由的中间节点接收rreq时,此时目的节点或该中间节点将初始化并单播rrep分组进行路由应答,rrep分组的扩展标志位的初始化如下:rp_energy=epath+enode(3)rp_queue=qpath+qnode×hpath(4)rp_hop=hpath(5)式中:rp_energy表示rrep的应答能量标志位,rp_queue表示rrep的应答队列标志位,rp_hop表示rrep的应答累计跳数,rp_fit表示应答合适度值标志位,path表示当前节点到达目的节点的正向转发路径,node表示当前节点,epath表示path的路径能量标志位,enode表示node的剩余能量,qpath表示path的路径队列标志位,qnode表示node的缓存队列大小,hpath表示path的路径跳数,einit表示节点的初始能量值,qfull表示节点的缓存队列的容量。2)中间节点接收rrep分组:这里前向路径,是指从源节点到目的节点方向的路径,中间节点接收到rrep分组后,根据rrep分组信息来建立前向路径,当该中间节点到达目的节点的前向路径数目小于3时,直接建立前向路径,当该中间节点到达目的节点的前向路径数目等于3条时,查找已有的3条路径中的最小路径合适度值是否小于rrep分组的请求合适度值,如果小于,则删除最小合适度值的路径,并将rrep转发经过的路径添加至路由表,最后判断rrep传输到源节点或者传输到存在有效正向路径的中间节点,如果是,则进入步骤4),否则进入步骤3);3)中间节点转发rrep分组:如果源节点不具有到达当前中间节点的前向路径,则当前中间节点更新并转发rrep分组,rrep分组更新过程如下:(1)rrep分组的应答跳数自增1,(2)应答能量标志位累加当前节点的剩余能量,(3)应答队列标志位累加当前节点的缓存队列长度与rrep应答跳数的乘积,(4)rrep分组的应答合适度值标志位的更新公式如下:式中:rp_fit为rrep分组的应答合适度值标志位,rp_energy是rrep的应答能量标志位,rp_queue是rrep的应答队列标志位,hrrep为rrep分组的转发跳数,einit表示节点的初始能量值,qfull表示节点的缓存队列的容量;通过网络中间节点重复循环2)步骤、3)步骤,最终可以将rrep传输到源节点或者传输到存在有效正向路径的中间节点,此时建立了网络的正向路径;4)源节点向目的节点发送数据:源节点向目的节点发送数据时,选择合适度值最大的路径作为主路径传输数据,这是因为合适度值越大的路径越适合传输数据,其它两条路径作为备用路径,当合适度值最大路径失效后,选择剩下合适度值大的路径作为主路径,当所有路径均失效后,重新发起路由请求来建立路由。5.节点间利用hello分组进行动态监测网络路径信息:本发明提出的一种监测路径节点能量和队列长度的路由方法中节点间利用hello分组进行动态监测网络路径信息的过程,具体包括以下步骤:1)发送hello分组:参阅图4,是本发明提出的一种监测路径节点能量和队列长度的路由方法中发送hello分组的过程。首先网络中节点检查是否在一定时间内广播过hello分组,如果没有则广播hello分组,当网络中节点广播hello分组时,首先初始化hello分组信息,通过遍历当前节点中存储的路由信息,找到路径合适度值最小的路径path(minfit),然后初始化hello分组的扩展标志位和原有标志位,hello分组扩展的标志位分别做如下初始化:hello_energy=epath(minfit)+enode(8)hello_queue=qpath(minfit)+qnode×hpath(minfit)(9)hello_hop=hpath(minfit)(10)式中:hello_energy是最小合适度路径能量标志位,hello_queue是最小合适度路径队列标志位,hello_hop是最小合适度路径跳数,enode是当前节点的剩余能量,epath(minfit)是path(minfit)的路径能量标志位,qpath(minfit)是path(minfit)的路径队列标志位,qnode是当前节点的缓存队列长度,hpath(minfit)是path(minfit)的跳数,hello分组的hello应答合适度值标志位的初始化值由式(8)、(9)、(10)所求的值代入式(6)中求得,最小合适度路径目的地址为path(minfit)的目的地址,初始化结束后在当前节点一跳范围内广播hello分组;2)接收hello分组:参阅图5,是本发明提出的一种监测路径节点能量和队列长度的路由方法中接收hello分组的过程。节点接收到相邻节点广播的hello分组后,首先提取hello分组的头部信息,然后进行如下处理:(1)hello分组的源节点是否在当前节点的邻居列表中,如果在,则更新该邻居节点的信息,否则将该hello分组源节点信息的添加到邻居列表中;(2)再判断当前节点是否有到hello最小合适度路径目的地址的路由,如果没有,则丢弃hello分组,否则进入(3)步骤;(3)判断当前节点是否存在下一跳为hello源节点的路径,如果不存在,则丢弃hello分组,否则进入(4);(4)判断该路径合适度是否大于hello分组中最小合适度值,如果不大于则丢弃hello分组,否则更新路径信息,路径信息更新过程如下:a.路径能量标志位更新为hello分组的最小合适度路径能量标志位和path的路径能量标志位中的较小者;b.路径队列标志位和路径合适度值分别更新为hello分组的最小合适度路径队列标志位和最小合适度值;通过网络中所有节点周期性的重复1)步骤、2)步骤,可以实现源节点周期性监测并更新网络中合适度值最小的路径状态信息,然后根据更新后的路径信息重新选择合适度值最大的路径作为主路径进行数据传输。实施例参阅图6,为本发明所述的一种监测路径节点能量和队列长度的路由方法和原方法建立路径示意图参阅图6,这里设置每个节点初始能量为30j,每个节点队列容量为qfull。原方法是aomdv,我们称本发明所述的一种监测路径节点能量和队列长度的路由方法为deqdaomdv。由于aomdv依据跳数信息作为唯一路由判据建立最短路径作为主路径,从图6中可以看出,s-a-b-c-d为源节点到目的节点最短路径,跳数为4,其它路径均为5跳,所以aomdv建立的主路径为s-a-b-c-d。deqdaomdv在建立路由时,首先扩展相关路由控制分组以及路径状态信息,然后进行路由请求,路由请求依据平均节点能量和缓存队列长度定义合适度值作为路由判据,建立合适度值最大的路径作为主路径,针对图6,首先源节点s广播rreq,然后节点e、a、i分别收到rreq,由于这三个节点不是目的节点,且不具有到达目的节点的有效路由,所以三个节点更新rreq,并自适应延时转发路由请求,具体过程如下:节点e更新rreq:首先rreq的请求跳数自增1后变为1,然后能量请求标志位累加当前节点能量即为10.5j,请求队列标志位由于是第一跳,所以为qfull/4,请求合适度值根据公式(1),计算得然后按照公式(2)计算转发时延:最后到达时延后转发rreq。同理,节点a更新rreq:首先rreq的请求跳数自增1后变为1,然后能量请求标志位累加当前节点能量即为5.0j,请求队列标志位由于是第一跳,所以为2qfull/3,请求合适度值根据公式(1),计算得然后按照公式(2)计算转发时延:最后到达时延后转发rreq。同理i节点按照相同过程进行转发rreq。由于e转发rreq的时延小于a的转发时延,所以f先收到来自e转发的rreq,然后f判断自己不是目的节点且不具有到达目的节点的有效路由,所以f需要更新rreq,并延时转发rreq,其过程如下:首先rreq的请求跳数自增1后变为2,然后能量请求标志位累加当前节点能量10.0j,即为10.5j+10.0j=20.5j,请求队列标志位累加当前节点缓存队列长度与跳数的乘积,即为qfull/4+2*qfull/5,请求合适度值根据公式(1),计算得:然后按照公式(2)计算转发时延:最后到达时延后转发rreq。对于部分节点先后收到两个rreq,会判断后收到的rreq的请求合适度值是否更大,如果后收到的更大,则依据后收到的rreq建立路径,否则直接丢弃后收到的rreq。如图6,节点f先收到来自e的rreq,后收到来自a的rreq,因为来自a的rreq的请求合适度值小于来自e的rreq请求合适度值,0.25<0.4188,故节点f直接丢弃后收到的a的rreq。所有节点接收到rreq后都经过相同处理过程,最终目的节点d接收多个rreq,针对本实施例,d先后收到来自h、l、c的rreq,来自h的rreq转发路径为s→e→f→g→h→d,来自l的rreq转发路径为s→e→f→g→c→d,来自c的rreq转发路径为s→i→j→k→l→d,由于deadaomdv建立的是节点不相交路径,因此收到来自c的路由请求后将不对此rreq进行路由应答。然后进行路由应答。在deqdaomdv路由应答过程中,目的节点对最先收到的rreq进行路由应答,因此d首先对来自h的rreq进行路由应答,d先初始化rrep,然后向h单播rrep,由于此时节点d中没有已建好的路径,因此节点d根据式(3)、(4)、(5)、(6)对rrep的初始化过程如下:rp_energy=0rp_queue=0rp_hop=0rp_fit=0节点h收到来自d的rrep后,首先判断自己是不是源节点或有到源节点的有效路由,没有则更新并转发rrep。h处理rrep的过程如下,其中应答合适度值由公式(7)求得。rp_energy=9.5rp_hop=1然后h单播rrep给g,然后同样对rrep进行和h相同的处理继续单播rrep,所有中间节点进行相同的处理过程,最终源节点可以接收到rrep,从而建立源节点到目的节点的路径。如图6所示,deqdaomdv最终建立的主路径为s→e→f→g→h→d,备用路径有s→i→j→k→l→d。本发明所述的一种监测路径节点能量和队列长度的路由方法通过考虑链路上节点平均能量和缓存队列长度定义合适度值来作为路由判据,使得合适度值最大的路径作为主路径。本发明所述的一种监测路径节点能量和队列长度的路由方法建立的多路径在有效性和稳定性上优于原aomdv方法,可以有效减少因路径过早失效而频繁发起路由请求的次数,均衡网络负载并延长网络寿命。当前第1页12
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1