一种无线自组网按需距离矢量路由方法

文档序号:7859975阅读:242来源:国知局
专利名称:一种无线自组网按需距离矢量路由方法
技术领域
本发明适用于较大规模的无线传感器网络的中,利用多级邻居表以及“追捕”方式解决路由请求(RREQ)广播泛洪问题,并利用多级邻居表计算网络通信稳定性。属于无线传感器网络的技术领域。
背景技术
无线自组网按需距离矢量路由协议(Ad-hoc On-Demand Distance VectorRouting, AODV)是在动态源路由(DSR)和目的编号距离矢量路由(DSDV)两者的基础上发展起来的,它的特点是采用了目的编号距离矢量路由编号的方式结合动态源路由按需路由的思想。在寻路阶段,源节点会广播一个包含目的节点地址的路由请求帧,其中间结点采取泛洪的方式将有编号的路由请求转发到目的节点或能够到达目的节点的其他结点,并在此 过程中建立反向路由(目的节点到源节点路由)。当有能够到达目的节点的中间结点或者目的节点收到路由请求后,则会以单播的方式将路由回复(RREP)同样有编号的路由回复沿着第一个路由请求广播到达的路径发给源节点并在单播路由回复的过程中建立正向路由(源节点到目的节点)。一旦发生断路,发现断路的节点则重新发起路由请求以打到修复路由的目的。虽然无线自组网按需距离矢量路由协议性能优于动态源路由和目的编号距离矢量路由,但是在路由开销、功耗、断路发生的频率以及路由最优方面仍存在不足。目前已有的无线自组网按需距离矢量路由协议的在降低路由开销以及功耗方面改进一般是从两个方面着手
第一种对无线自组网按需距离矢量路由协议的改进需要结合硬件本身提供的功能,如通过根据网络拓扑结构、网络规模和自身能量水平动态的调节发射功率或者使节点定期进入休眠状态。若当前网络密度较大,则可以降低发射功率从而减少数据发送方面的功耗;若当前网络数据业务不多,则可以周期性的使节点进入休眠状态,对于整体提高网络寿命也有极大的提高。在已有方案中有利用节点进入休眠状态时告知邻居节点自己已休眠并通知一跳范围内的节点自己将休眠T时。一旦有路由请求发起,邻居节点会暂时回复源节点目的节点已进入休眠状态,并保存本次RREQ等待目的节点恢复正常。另外还增加全球定位系统(Global Positioning System,GPS)芯片解决无线自组网按需距离矢量路由协议路由最优化的方法。第二种解决方案是从无线自组网按需距离矢量路由协议本身的缺陷进行改进,如限制广播跳数、评估节点能量进行转发选择以及延迟等。在已有方案中,有利用接收的信号强度指不(Received Signal Strength Indication, RSSI)决定路由请求/路由回复是否转发,来减少无效的路由请求/路由回复转发。还有其他如采用了路由回复捕获的方式获得将来“可能”需要的路由路径。在现有的无线自组网按需距离矢量路由协议改进技术方案里,第一种方案受硬件、成本限制,如在路由最优方面需要增加全球定位系统芯片,而接收的信号强度指示信号近几年的研究表明其稳定性仍然需要进行评估。

发明内容
技术问题本发明的目的是提供一种无线自组网按需距离矢量路由方法,是一种 基于无线自组网按需距离矢量路由协议的改进通信方法,以期解决路由发现过程中广
播泛洪、路由开销、通 信稳定性等问题。在较大规模传感器网络中通过建立二级甚至多级邻居解决网络通信稳定性,通过路由回复追捕路由请求的方式解决路由请求包的泛洪问题。技术方案本发明的目的是为了解决以上罗列的几个问题,即网络通信稳定性以及路由请求泛洪问题,提供了一种基于二级邻居和路由回复追捕的无线自组网按需距离矢量路由协议的改进协议。为实现上述目的,其具体方法为
该方法在握手Hello消息中增加一层邻居信息,通过Hello消息建立二级邻居表;在发起路由请求RREQ中加入邻居信息及其邻居稳定值,各个转发节点根据一层和二层邻居差异度决定路由请求的转发延迟;对于路由回复RREP则采用广播的方式,通过评估路由请求转发时差、一、二层邻居差异度和剩余跳数来决定是否进行追捕,其具体方法为
1). 二级邻居建立方法
无线传感器网络中各个节点周期性广播Hello消息,节点在收到其它节点的Hello消息后将该节点存入自己的一层邻居表中,并剖析出其携带的一层邻居信息并与自身一层邻居相比较,将本节点没有而Hello包中有的邻居放入接收节点的二层邻居中;在广播Hello消息期间,任何数据的发送可将下一周期要发送的Hello消息取消,任意节点一旦侦听到某个邻居节点所发出的数据,则认为该邻居正常在网;
在节点建立好二级邻居表后,则开始对一层邻居进行稳定性评估,一层邻居需要增加稳定值P和邻居信息侦听次数η ;假设Hello消息周期为Τ,节点在T时刻内侦听到某个邻居的信息时η累加I并且认为该周期内该邻居在网;假设经过N个周期Τ,节点在Ν-3个周期内侦听到某邻居信息,则P= (Ν-3)/Ν ;ρ越接近I标明该邻居约稳定,而η/Ν值越大则标明该邻居越繁忙;
2).一层和二层邻居差异度决定路由请求的转发延迟率具体步骤
源节点需要发送数据却没有到达目的地址的路径后,则发起路由请求包,在节点收到由上一节点转发的路由请求包以后,首先查询上一节点转发的路由请求包的邻居表本节点稳定率决定是否转发,从而保证路由的稳定性,若转发则再计算一层邻居差异度
P和二层邻居差异度P加权值决定转发延迟;其中,邻居差异度为
US ^ ITi Si *7"
P=--1
Si U
31和82分别为路由请求中和本节点中的对应层邻居,P计算方法同P ;
RREQ广播包延时率公式为
Y为调节值,该值需要根据网络实际情况设置,P为邻居差异度;
转发延时为
权利要求
1.ー种无线自组网按需距离矢量路由方法,其特征在于,该方法在握手Hello消息中増加一层邻居信息, 通过Hello消息建立ニ级邻居表;在发起路由请求RREQ中加入邻居信息及其邻居稳定值,各个转发节点根据ー层和ニ层邻居差异度决定路由请求的转发延迟;对于路由回复RREP则采用广播的方式,通过评估路由请求转发时差、一、ニ层邻居差异度和剰余跳数来决定是否进行追捕,其具体方法为 1). ニ级邻居建立方法 无线传感器网络中各个节点周期性广播Hello消息,节点在收到其它节点的Hello消息后将该节点存入自己的一层邻居表中,并剖析出其携帯的一层邻居信息并与自身ー层邻居相比较,将本节点没有而Hello包中有的邻居放入接收节点的ニ层邻居中;在广播Hello消息期间,任何数据的发送可将下一周期要发送的Hello消息取消,任意节点一旦侦听到某个邻居节点所发出的数据,则认为该邻居正常在网; 在节点建立好ニ级邻居表后,则开始对ー层邻居进行稳定性评估,一层邻居需要増加稳定值P和邻居信息侦听次数η ;假设Hello消息周期为Τ,节点在T时刻内侦听到某个邻居的信息时η累加I并且认为该周期内该邻居在网;假设经过N个周期Τ,节点在Ν-3个周期内侦听到某邻居信息,则P= (Ν-3)/Ν ;ρ越接近I标明该邻居约稳定,而η/Ν值越大则标明该邻居越繁忙; 2).一层和ニ层邻居差异度决定路由请求的转发延迟率具体步骤 源节点需要发送数据却没有到达目的地址的路径后,则发起路由请求包,在节点收到由上ー节点转发的路由请求包以后,首先查询上一节点转发的路由请求包的邻居表本节点稳定率决定是否转发,从而保证路由的稳定性,若转发则再计算ー层邻居差异度P和ニ层邻居差异度P加权值决定转发延迟;其中,邻居差异度为 S1 LI — S1 Π SnP =---S1 U S1和S2分别为路由请求中和本节点中的对应层邻居,P计算方法同P ; RREQ广播包延时率公式为 Y为调节值,该值需要根据网络实际情况设置,P为邻居差异度; 转发延时为 ηdelay = μ iT —"N P为路由请求广播包延时率,T为延时阈值,η/Ν为邻居拥塞度; ー层邻居差异度可以理解为节点的覆盖范围的异同,该值越大,说明转发节点的广播可扩散的范围越大;而ニ级节点差异度则说明了该节点在转发路由请求后的扩散成功率; 在成功转发路由请求后,转发节点需要记录该节点的转发时刻、转发后该节点的剰余跳数,以及一二层的邻居差异度,同时建立反向路由以及该路径的稳定率; 3).路由回复采用广播的方式,通过评估路由请求转发时差来决定是否进行追捕的具体步骤 路由回复包的网络层目的地址为反向路由地址,MAC层地址为广播地址;当路由请求广播到达含有有到达目的节点的路径的中间结点或者目的节点时,该节点立即广播路由回复包,该路由回复包的主方向为路由请求到达该节点的路径,即反向路由,而反向路由上的节点收到路由回复包后需要建立正向路由;路由回复包的追捕也主要是针对反向路由上的支路,对于非反向路由的节点在收到路由回复广播包后要将追捕标志位置一,以表示该包进入追捕模式;此时,对于路由回复包的处理分为两种情况 a )对于已经收到路由请求包的节点,需要根据实际信息综合评估是否进行追捕该节点发出的路由请求,若该节点是反向路由的一跳节点,建议立即转发,此时它的一层邻居可能在做延迟,对于反向路由上其他节点,在收到路由回复追捕包后首先要计算该节点路由请求的生存时间TTL是否小于源节点设置的TTL值的一半来判断是否值得追捕,然后再根据路由请求的转发时刻决定是否转发路由回复,如果超过阈值δ ,则不转发,否则转发直至追捕到未收到路由请求的节点;其中,要根据网络规模决定δ的值; b)对于未收到路由请求包的节点,在收到路由回复包后做记录防止以后收到转发的路由请求包; 4).路由维护的具体步骤 当路由的某个节点发生断链,其维护过程为 若当前路由没有数据收发或者数据量不大,则可以通过Hello包进行修复首先在Hello包中加入路由修复数据,即该路由目的地址和发现断链的节点到达目的节点的跳数;当其他节点收到这种类型的Hello包则根据跳数决定是否在自己的Hello包加入相关路由修复数据,一旦某个节点发现自己有到达目的节点的路由,就更新自己的路由表,并通过Hello包告知发起路由修复的节点;若当前路由有数据拥塞,进行正常的路由修复。
全文摘要
本发明是一种用于降低无线网络整体功耗的基于无线自组网按需距离矢量路由协议的改进方法,适用于较大规模无线传感器网络。该方法利用改进的握手周期广播建立二级邻居表,并在基于该邻居表的信息上决定路由请求帧广播方向及其延迟。同时,通过路由回复帧广播来追捕广播的方式从而达到抑制路由请求泛洪的效果,利用采用广播的方式回复还能选择出一条最稳定的双向链路而不是在某个时刻广播路由请求的最佳路径。本发明利用二级邻居表和路由回复追捕广播结合邻居稳定性算法来进行协议的优化,从而使得路由开销和网络寿命得到进一步提升。
文档编号H04W40/02GK102821437SQ20121028682
公开日2012年12月12日 申请日期2012年8月13日 优先权日2012年8月13日
发明者徐平平, 余自然 申请人:东南大学
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1