一种关于移动Ad-Hoc网络路径发现和选择的方法

文档序号:7842211阅读:218来源:国知局
专利名称:一种关于移动Ad-Hoc网络路径发现和选择的方法
技术领域
本发明涉及一种关于移动Ad-Hoc网络路径发现和选择的方法,属于网络通信技术领域
背景技术
Ad-Hoc网络自产生以来,路由协议便成了该领域的研究热点。到目前为止,研究人员相继提出了很多种移动Ad-Hoc网络路由协议,根据协议的触发原理,这些协议可划分为三类,即先验式路由协议、反应式路由协议和混合式路由协议。当前对Ad-Hoc网络路由协议的研究以理论研究和实验仿真相结合为主要研究方式,能实际应用的Ad-Hoc网络路由协议还不算多,虽然有些协议已经在实际网络中应用,诸如AODV、DSDV和DSR等典型协议,但协议的性能还不能满足应用需求,在传输时延和协议开销等方面还需进一步提高。AD-Hoc网络主要应用于临时通信网络,临时通信网络一般具有网络规模较小、路由跳数少和对时延要求要小等特点。然而,大多数的Ad-Hoc网络协议研究人员都专注于完备复杂的路径发现和选路算法方面的研究,忽略了小规模临时通信网络的路由跳数较少(一般情况两跳即可满足通信需求)等特点,将这些路由协议应用于临时移动通信网络必然能达到期望的效果,复杂的路由算法定会带来较高的协议开销,影响传输时延。

发明内容
为了克服现有Ad-Hoc网络路由协议在小规模临时移动通信网络中协议开销较大传输时延较高的不足,本发明提出一种关于移动Ad-Hoc网络路径发现和选择的方法,动态感知网络拓扑变化,基于拓扑更新式的路径发现算法能迅速准确发现路径,提出最小负载路径优先(SLF, Smallest Load First)选路算法作为最佳路径选择判据,降低算法复杂度,进而降低协议开销较小,属先验式路由协议范畴,尤其适用于小规模临时移动通信网络。本发明采用的技术方案是协议在设计实施上采用事件驱动机制,处理完相应的事件,若无其它事件到来,则协议返回空闲等待状态,引发协议状态转换的事件共有以下8种,即协议启动、协议退出、收到hello报文、收到response报文、收到update报文、收到delete报文、更新定时器到期和删除定时器到期,具体实施可以按照以下步骤进行
第一步、节点1开机后,网络路由协议首先进入初始化阶段,将网络拓扑表和路由表都
设置为空;
第二步、初始化完成后,节点1以洪泛方式发送两个hello报文以向四周宣告自己的存在,协议进入空闲等待状态;
第三步、当节点1收到hello报文后,会首先根据报文内容构造一个节点new,构造节点
new完成后,节点1将按照节点new的IP地址和节点new的父节点IP为索引检索本地网络拓扑,此时存在两种可能;
(一)、若节点new不在节点1的本地网络拓扑中,则节点1向其直接邻居节点(不包括
收到节点new)发送update报文,向其直接邻居报告发现了新路由,然后,节点1构造ー个
response报文,response报文构造完成后,本节点将该response报文发送给节点new,最后,本节点将节点new添加到本地网络拓扑中,至此,通过hello报文发现新路径完毕;
(1)、在网络拓扑结构中,节点I将收到节点11、111发来的hello报文,根据对hello报
文的处理规则,节点1发现ニ个邻居节点,发现1 -11和1 -111 ニ条路径、链路状况为单向链路;
节点1收到response报文后,首先根据response报文的首部构造节点pnode,节点信
息构造完成后,节点1首先查询pnode节点是否出现在本地网络拓扑中,若存在,将原拓扑
信息中对应节点的TTL、load和link_state字段的值更新为pnode对应字段的值,若不存在,则将pnode节点加入到本地网络拓扑中。然后,依次查询节点nodel至noden是否出现在本地网络拓扑中,若节点存在,将原拓扑信息中对应节点的TTL、load和link_state字段更新为node对应字段的值,若节点不存在,则将节点添加至本地网络拓扑中,至此,通过response报文发现新路径完毕;
(2)、根据协议对response报文的处理,节点1收到节点11、节点111的response报文
后,将把直接路径1 -11和1 -111之间的链路标记为双向链路,同时会发现三条新的路径,即1-11 _III、I -II -IV和I —III -II。(ニ)、若该节点已经在网络拓扑中存在,将网络拓扑中对应节点的TTL值为0,load的值更新为new节点中load字段的值。然后,节点1向其直接邻居节点(不包括收到节点new)发送ー个update报文;
(1)、假设某ー时刻,有ー节点V开机运行,假设节点V的发射功率较小,仅节点111能
收到其信号,当节点111收到节点V的hello报文后,节点111将会向其直接邻居节点发送update 报又;
(2)、当节点1收到update报文后,执行的操作与收到response报文类似,只不过update报文中仅包含一个路由条目,因此节点1收到节点111发来的update报文后将会在本地网络拓扑路径中添加至节点v的路径,即发现新路径1 -ΠΙ -ν ;
第四步、在已知网络拓扑结构后,节点间的通信,采用最小负载路径优先路由算法Smallest Load First ;
(一)、该选路算法的核心是,若到达目的节点有多条路径,当有直达路径是选择直达路径,当没有直达路径时,则计算每条路径上节点的网络负载之和,选取负载最小的路径作为最优路径,其他路径作为备选路径。设节点S到达目的节点D有為…尾η条路径,每条路径上的节点个数为AU ,因此每条链路的负载为
权利要求
1.一种关于移动Ad-Hoc网络路径发现和选择的方法,其特征在于所述的移动Ad-Hoc网络路由发现和选择的方法,按照以下步骤进行; 第一步、进入节点的网络路由协议初始化阶段,将网络拓扑表和路由表都设置为空; 第二步、初始化完成后,节点以洪泛方式发送两个hello报文以向四周宣告自己的存在,协议进入空闲等待状态; 第三步、节点收到hello报文后,首先根据报文内容构造一个节点new,构造节点new 完成后,节点按照节点new的IP地址和节点new的父节点IP为索引检索本地网络拓扑,此时存在两种情况; (一)若节点new不在节点的本地网络拓扑中,贝U节点向其直接邻居节点发送update报文,向其直接邻居报告发现了新路由,然后,节点构造一个response报文,response报文构造完成后,本节点将该response报文发送给节点new,最后,本节点将节点new添加到本地网络拓扑中,至此,通过helIo报文发现新路径完毕; (1)在网络拓扑结构中,节点收到节点11、⑴发来的hello报文后,根据对hello报文的处理规则,节点发现二个邻居节点,发现-i^p -nt二条路径、链路状况为单向链路; 节点收到response报文后,首先根据response报文的首部构造节点pnode,节点信息构造完成后,节点首先查询pnode节点是否出现在本地网络拓扑中,若存在,将原拓扑信息中对应节点的TTUload和link_state字段的值更新为pnode对应字段的值,若不存在,则将pnode节点加入到本地网络拓扑中;然后,依次查询节点nodel至noden是否出现在本地网络拓扑中,若节点存在,将原拓扑信息中对应节点的TTL、load和link_state字段更新为node对应字段的值,若节点不存在,则将节点添加至本地网络拓扑中,至此,通过response报文发现新路径完毕; (2)根据协议对response报文的处理,节点收到节点"、节点⑴的response报文后,将把直接路径-i^p -111之间的链路标记为双向链路,同时会发现三条新的路径,即-11、-II-IV和-"I-II; (二)若该节点已经在网络拓扑中存在,将网络拓扑中对应节点的TTL值为0,load的值更新为new节点中load字段的值;然后,节点向其直接邻居节点发送一个update报文;(1)假设某一时刻,有一节点v开机运行,假设节点v的发射功率较小,仅节点111能收到其信号,当节点ΙΗ收到节点¥的hello报文后,节点111将会向其直接邻居节点发送update报文;(2)当节点收到update报文后,执行的操作与收到response报文类似,只不过update报文中仅包含一个路由条目,因此节点收到节点111发来的update报文后将会在本地网络拓扑路径中添加至节Av的路径,即发现新路径-111 -v ; 第四步、在已知网络拓扑结构后,节点间的通信,采用最小负载路径优先路由算法Smallest Load First ; (一)该选路算法的核心是,若到达目的节点有多条路径,当有直达路径是选择直达路径,当没有直达路径时,则计算每条路径上节点的网络负载之和,选取负载最小的路径作为最优路径,其他路径作为备选路径; 设节点S到达目的节点D有乓為…R11 η条路径,每条路径上的节点个数为》P 2,因此每条链路的负载为 =Σ 冬,.-I j-ι I = 令£ = [Ll7Li…4},则节点S到达节点D的最优路径为 Rf。
2.根据权利要求I所述的关于移动Ad-Hoc网络路由发现和选择的方法,其特征在于所述的网络路由包括用于维护节点定期发送hello报文的一个定时刷新定时器;基本定时时间间隔到了以后,节点以MAC地址广播的方式发送hello报文,同时,节点会将本地所有路径的已经存活时间THL增加一定时间间隔;同时由节点计算定时间隔时间内节点网络负载的平局值,对节点的网络负载进行更新,根据节点对hello报文的处理规则,节点收到邻居节点的hello报文后,将对应节点的已经存活时间THL置为O。
3.根据权利要求2所述的关于移动Ad-Hoc网络路由发现和选择的方法,其特征在于本路由协议的定时刷新定时器基本定时时间间隔设定为5s。
4.根据权利要求2所述的关于移动Ad-Hoc网络路由发现和选择的方法,其特征在于所述的网络路由包括一个定期删除定时器,删除定时器用于节点删除过期路由,删除定时器的定时间隔设置为某一特定值,定时间隔到,节点就会遍历所有路径,查看节点的已经存活时间THL是否大于定时间隔,如果节点THL大于定时间隔,节点就会将该路径删除,同时,节点会向其直接邻居节点通告删除的路径信息,即发送delete报文,delete报文中标识了本节点拓扑路径信息中过期的路由条目。
5.根据权利要求4所述的关于移动Ad-Hoc网络路由发现和选择的方法,其特征在于本路由协议的删除定时器的定时间隔设置为60s。
6.根据权利要求I所述的关于移动Ad-Hoc网络路由发现和选择的方法,其特征在于当节点V关机时,节点111在每个刷新定时间隔将111至路径的已经存活时间TTL值加基本定时间隔,达到路径删除时间后,路径删除定时器到期,节点111便将路径111 _V删除,同时,节点111向其直接邻居发送delete报文,宣告删除了路径;当节点收到delete报文后,首先根据delete报文的首部构造节点pnode,然后根据delete报文中的删除路由条目构造节点nodel"noden,节点信息构造完成后,节点首先查询pnode节点是否出现在本地网络拓扑中,若存在,将原拓扑信息中对应节点的TTL、load和link_state字段的值更新为pnode对应字段的值;然后,节点依次在本地网络拓扑信息中检索节点nodel"noden,若节点存在,则将对应节点删除;若不存在不做处理。
7.根据权利要求I所述的关于移动Ad-Hoc网络路由发现和选择的方法,其特征在于所述的协议中,最大支持两跳。
8.根据权利要求6所述的关于移动Ad-Hoc网络路由发现和选择的方法,其特征在于根据本路由协议的软件层次模型,在协议软件的实现上,采用四个线程加两个定时器的构架方式,四个线程分别是路由协议主线程、原始数据包捕获线程、数据包解析线程和协议报文处理线程,其中路由协议主线程在协议启动时完成协议的初始化,之后便进入休眠状态,当协议退出时,完成协议资源的回收;原始数据包捕获线程和数据包解析线程完成原始数据包捕获和解析模块对应的功能;两个定时器即为更新定时器和删除定时器,分别完成对应的功能。
全文摘要
本发明涉及一种关于移动Ad-Hoc网络路径发现和选择的方法,属于网络通信技术领域;本发明提出一种关于移动Ad-Hoc网络路径发现和选择的方法,最大支持两跳,能动态感知网络拓扑变化,基于拓扑更新式的路径发现算法能迅速准确发现路径,提出最小负载路径优先(SLF,SmallestLoadFirst)选路算法作为最佳路径选择判据,降低算法复杂度,进而降低协议开销较小,属先验式路由协议范畴,传输时延较低,特别适用于小规模临时移动通信网络。
文档编号H04W40/24GK102625402SQ20121005144
公开日2012年8月1日 申请日期2012年3月1日 优先权日2012年3月1日
发明者董会升, 许伶俐, 邵玉斌, 龙华 申请人:昆明理工大学
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1