CN102026330A - 一种提高自组织网络可用性的方法 - Google Patents
一种提高自组织网络可用性的方法 Download PDFInfo
- Publication number
- CN102026330A CN102026330A CN2009101901485A CN200910190148A CN102026330A CN 102026330 A CN102026330 A CN 102026330A CN 2009101901485 A CN2009101901485 A CN 2009101901485A CN 200910190148 A CN200910190148 A CN 200910190148A CN 102026330 A CN102026330 A CN 102026330A
- Authority
- CN
- China
- Prior art keywords
- route
- node
- source node
- message
- destination
- 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.)
- Pending
Links
Images
Landscapes
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
一种提高自组织网络可用性的方法,属于网络通信技术领域,以在现有自组织网络路由协议中存在的从当前路由失效到建立新的路由的过程中会造成数据中断的问题。本发明包括在源节点与目的节点建立路由的过程中,源节点保存多个指向目的节点的路由,并选择其中一条最优路由作为当前路由;若当前路由失效时,源节点选择一条保存的路由作为源节点指向目的节点的当前路由。本发明通过自组织网络路由协议在路由建立过程中积累的信息,建立多条路由,当源节点与目的节点之间所有最优路由都失效时,源节点总是可以立即启用一条次优路由作为缺省路由,使得数据流不被中断,保证网络的可用性。
Description
技术领域
本发明涉及一种改进的自组织网络路由协议,属于网络通信技术领域。
背景技术
路由协议通常分为两种:主动式和被动式。
主动式路由,是指网络中,一条路由,在被请求之前就已经建立好。如OLSR(RFC3626)协议,每个路由设备,定时广播发送HELLO消息、拓扑(TC)消息、主机与网络关联(HNA)消息。除HELLO消息外,其余消息向全网络发送(flood);任意一个路由设备,根据HELLO消息确定到达邻居节点和两跳邻居的路由,而根据两跳邻居的TC消息确定到三跳节点的路由,并且依此顺序,确定到达网络上所有节点的路由;根据每一个节点的HNA消息,确定与每个节点相连的子网的路由。
被动路由,是指只有当一条路由被明确请求,设备才会发送路由消息,并且建立此路由。如AODV(RFC3561)协议,当本路由器需要转发一个数据包并且没有所需要的路由时,才会向全网广播发送路由请求(REQ)消息;收到路由请求消息的节点,首先建立到达源节点的路由,然后判断如果不存在目的节点对应的路由,则继续广播此消息,否则,该路由设备(包括目的节点),会向源节点发送路由应答(REP)消息;收到路由应答消息的路由设备,首先更新到达目的节点的路由,然后向源节点转发此路由应答消息,直到源节点不再转发;当一条正在使用的路由失效时,检测到该路由失效的节点,需要向使用该条路由的节点发送路由失败(RERR)消息;收到RERR消息的节点,标记本节点已经存在的相应路由失效,并且可能生成新的RERR消息。
AODV协议中,为了减少RERR广播消息,要求每个节点在转发REP消息时,作如下处理:因为REP消息是要向路由的源节点转发,所以本节点应该首先检查是否已经建立了到达源节点的路由,如果不存在此路由则不转发此REP消息,如果存在则此REP消息就转发到该路由的下一跳节点,并且把该节点作为该REP消息所对应的到达目的节点路由的前驱节点。当节点上一条路由失效,需要检索该路由所关联的所有前驱节点,如果没有前驱节点,则不发送RERR,如果只有一个前驱节点,则向此前驱节点单播发送RERR,否则广播发送RERR。
上述所有的路由消息,只能被转发,不能被路由。也就是说,从一个路由器发送出去的路由消息,其IP报文头中的源地址,都被填充为该路由器的IP地址(普通数据被路由时,源IP地址不会被路由器更改)。更进一步,收到一条路由消息,就可以从该消息IP报文头中获知是该消息由哪一个路由器发送,并且可以把它当作一个邻居。尽管这里提到IP,但是也可以其它协议作为消息承载体,比如802.11s草案中,在MAC层上实现类似AODV的协议,这时被填充的IP地址就是发送消息的节点的MAC地址。
因此,在常规的自组织网络路由协议中,在源节点与目的节点之间,只建立一条路由,或者只记录最短跳数的路由,把这样的路由称为最优路由。当此最优路由失效时,需要依赖主动或者被动路由方式,建立新的最优路由。但是路由失效时刻与新路由建立成功时刻之间有不定时间的延迟,在此延迟时间段内,源节点与目的节点之间没有可用的路由,会造成数据中断。
发明内容
为解决在现有自组织网络路由协议中存在的从当前路由失效到建立新的路由的过程中会造成数据中断的问题,本发明提供了一种提高自组织网络可用性的方法,它包括:
步骤1、在源节点与目的节点建立路由的过程中,源节点保存多个指向目的节点的路由,并选择其中一条最优路由作为当前路由;
步骤2、若当前路由失效时,源节点选择一条保存的路由作为源节点指向目的节点的当前路由。
本发明通过自组织网络路由协议在路由建立过程中积累的信息,建立多条路由,并未引入多余的开销;当源节点与目的节点之间所有最优路由都失效时,源节点总是可以立即启用一条次优路由作为缺省路由,使得数据流不被中断,保证网络的可用性。
附图说明
图1是本发明的方法流程示意图;
图2是在具体实施方式中两个节点之间的多路由连接关系示意图;
图3是在具体实施方式中增加寻找并建立最优路由的方法流程示意图。
具体实施方式
在本具体实施方式提供的一种提高自组织网络可用性的方法的技术方案中,如图1所示,具体可以包括:
步骤1、在源节点与目的节点建立路由的过程中,源节点保存多个指向目的节点的路由,并选择其中一条最优路由作为当前路由;
步骤2、若当前路由失效时,源节点选择一条保存的路由作为源节点指向目的节点的当前路由。
进一步地,源节点保存多个指向目的节点的路由包括源节点指向目的节点的最优路由和次优路由,最优路由和次优路由,都可以提供给QoS(服务质量管理)管理单元,QoS的实现可以更灵活。以及,如图3所示,在步骤2之后还可以包括:步骤3、源节点重新继续寻找并建立最优路由作为当前路由。使用次优路由后,源节点仍然可以继续寻找并建立最优路由,不会影响网络的性能,将最优路由作为当前路由以后还能提升网络的性能。
为了更清楚的说明本具体实施方式提供的技术方案,现结合图2对该方法进行详细说明:
从节点1到节点5,至少存在3条可能的路由:
A路由,从节点1经过节点2、3和4,到达节点5,共4跳;
B路由,从节点1经过节点6、7、8和4,到达节点5,共5跳;
C路由,从节点1经过节点9、3和4,到达节点5,共4跳。
在现有技术中,只记录最短路由A,或者最短路由A和C。在本具体实施方式中,源节点同时记录路由A、B和C,以备节点3失效时,从路由A或C转换到路由B。
若路由建立过程为被动式,则节点1广播发送路由请求消息,其它节点,除了节点5,都转发此路由请求消息,而节点5接收此路由请求消息不再转发。此过程中,所有节点都建立目的地址为节点1的路由。节点5向节点1发送路由应答消息,节点4接收后转发此路由应答消息。节点4据此消息建立目的地址为节点5的路由。节点4向节点3和节点8转发路由应答消息,并且把节点3和节点8记录为目的地址为节点5的路由的前驱节点。节点3和节点8继续向节点1转发路由应答消息,直到节点1接收到路由应答消息。节点1可能从节点9,节点6和节点2上收到此路由应答消息。节点1据此3条消息,建立上述A、B和C三条路由。而节点9,节点6和节点2,分别把节点1记录为目的节点为5的路由的A、B和C。
当节点2与节点3的连接断开时,节点2检索它的路由表,发现仅存在一条目的节点为5的路由,它的下一跳为节点3,该路由的前驱节点包含了节点1。节点2向节点1发送路由失效消息。节点1收到此路由失效消息,删除它的路由表中,到达节点5的三条路由中,下一跳节点为节点2的那一条路由。剩下的两条路由中,下一跳为节点9的路由的跳数最少,节点1使用该路由作为目的地址为节点5的缺省路由。当节点9与节点3的连接也断开时,同理,节点1删除目的地址为节点5的两条路由中,下一跳为节点9的路由,并且采用下一跳为节点6的路由作为到达目的节点5的路由。
上述建立路由的过程具体可以为:
A:在某些使用主动式路由方式的自组织网络路由协议中,每个节点定期发布HELLO消息,消息中携带该节点的邻居节点信息。收到HELLO消息的节点,根据HELLO消息中携带的节点信息,建立本节点到HELLO消息中所有节点的路由。节点在根据HELLO消息建立路由的过程中,可能会获得到达某一个节点的多条路径。
B:在某些使用被动式路由方式的自组织网络路由协议中,当节点有数据发送,并且路由表中不存在到达目的节点的路由,该节点会广播发送路由请求消息,此消息携带所述目的节点的地址。收到路由请求消息的节点,如果不是目的节点,可能会转发此路由请求消息。
在建立路由的过程中,对于一个节点,可能会从多条路径上收到源节点发送的路由请求消息。收到路由请求消息的节点,如果已经存在指向目的节点的路由,则会向源节点发送路由应答消息,消息中携带目的节点信息、源节点信息,以及本节点信息。目的节点收到路由请求消息,必须向源节点发送路由应答消息。收到路由应答消息的节点,如果不是源节点,可能会向源节点转发路由应答消息。对于一个节点,还可能会从多条路径上收到指向同一目的地址的路由应答消息。
进一步地,在建立路由的过程中,节点可以获得到达另一个节点的多条路径。通过HELLO、路由请求和路由应答消息建立路由,只是一种实施方式的实例。本发明不限制使用何种实施方式。本发明适用于任何可能获得多条路径的情形,只要满足:1,向外发送路由消息的节点,在信息中包含对自己的标识,命名为sender(对于收到此消息的节点来说,消息中的sender,是本节点的一个邻居,也就是说,路由消息不可以被路由,只可以被转发,并且在转发过程中,sender标识被相应节点填充);2,用来创建路由的信息中,包含目标节点的标识,命名为dest;3,用来创建路由的信息中,包含该sender节点到达dest节点的跳数,命名为hcnt。
另外,节点可以获知哪些节点把自己作为路由的下一跳:
A:采用定期发送HELLO消息的机制中,所有邻居都把自己当作路由的下一跳;
B:在转发路由应答消息的过程中,本节点要把路由应答消息转发到的下一跳节点,这个下一跳节点,会把自己当作路由的下一跳。
对于到达某个目的节点的路由,如果邻居节点上也存在相同目的节点的路由,并且后者的路由把自己当作路由的下一跳,则这些邻居节点,称为本节点对应路由的前驱节点。在上述过程中节点可以获得与该路由相关的前驱节点,前驱节点可以称为上一跳节点。
对于多条路由的记录过程具体可以为:
一个节点获得可能用来创建路由的信息后,提取其中的sender,dest和hcnt元素,以dest作为路由目的节点,以sender作为路由的下一跳节点,记录在一个与该dest节点相关的表格中。在表格中,按照hcnt的大小,从小到大排序;相同hcnt的路由,则按照获取时间从旧到新排序;相同sender的路由,只记录排序后的第一条,其余条目删除。表格中的第一条路由,用作该节点到达目的节点的缺省路由。本发明不规定一个节点获得一条可用来创建路由的信息后,会否为其创建路由,只描述当需要为其创建路由时的行为。
一个目的节点关联的路由条目的数目,可以由管理员配置。如果只允许记录hcnt最小的路由,则此发明与其它技术有相同效果。本发明允许记录不同hcnt的路由,作为备份路由。
节点在记录路由时,也可以同时记录该路由相关的前驱节点信息,可以把这些信息保存在与该目的节点相关的表格中。如果不记录此信息,也不影响本发明的实现,但是记录此信息,相比于不记录此信息,有助于以更小的开销维护路由表的正确性。
当节点断定一个连接失效,它必须标记所有已记录的使用此连接的路由失效。它可以检查是否存在经过此连接的路径,如果存在,可以向此路径的上一节点发送路由失效消息,消息中包含所有因为此连接失效所标记失效的路由的目的节点信息,并且以本节点的信息作为sender。
节点收到从sender节点发送的路由失效消息后,依次检索路由失效消息中包含的每一个目的节点对应的表格,如果存在一条路由,它的下一跳为该sender,则标记此路由为无效路由。如果被标记的路由是缺省路由,则使用表格中的下一条路由作为缺省路由。如果表格中不存在备份路由,则也向它的上一节点发送路由失效消息,消息中包含此路由的目的节点。
如果设备保存了与此路由相关的前驱节点,则发送路由失效消息到此前驱节点表格中的所有节点,这是开销最小的方式,否则以广播的方式发送路由失效消息。
如图2中所示的,当节点2与节点3的连接失效后,节点2向节点1发送路由失效消息,节点1删除经由节点2到达节点5的路由,并且把经过节点9的路由作为到达节点5的缺省路由。当节点9与节点3的连接失效后,节点1删除经由节点9到达节点5的路由,并且把经过节点6的路由作为到达节点5的路由。在以上过程中,现有技术会在节点9与节点3连接失效后,触发路由建立新的路由,而在此过程中,节点1到达节点5是没有路由可用的。而在本具体实施方式中,节点1总是有可以到达节点5的有效路由,最大可能的保证网络的可用性。
以上所述,仅为本发明较佳的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到的变化或替换,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应该以权利要求书的保护范围为准。
Claims (3)
1.一种提高自组织网络可用性的方法,其特征在于,它包括:
步骤1、在源节点与目的节点建立路由的过程中,源节点保存多个指向目的节点的路由,并选择其中一条最优路由作为当前路由;
步骤2、若当前路由失效时,源节点选择一条保存的路由作为源节点指向目的节点的当前路由。
2.根据权利要求1所述的一种提高自组织网络可用性的方法,其特征在于,所述源节点保存多个指向目的节点的路由包括源节点指向目的节点的最优路由和次优路由。
3.根据权利要求1或2所述的一种提高自组织网络可用性的方法,其特征在于,当源节点选择一条保存的路由作为源节点指向目的节点的路由以后还包括:
步骤3、源节点重新继续寻找并建立最优路由作为当前路由。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN2009101901485A CN102026330A (zh) | 2009-09-10 | 2009-09-10 | 一种提高自组织网络可用性的方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN2009101901485A CN102026330A (zh) | 2009-09-10 | 2009-09-10 | 一种提高自组织网络可用性的方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN102026330A true CN102026330A (zh) | 2011-04-20 |
Family
ID=43867019
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN2009101901485A Pending CN102026330A (zh) | 2009-09-10 | 2009-09-10 | 一种提高自组织网络可用性的方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN102026330A (zh) |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103621144A (zh) * | 2011-06-27 | 2014-03-05 | 三菱电机株式会社 | 用于在网络中发现路由集合的方法 |
CN103973558A (zh) * | 2014-05-21 | 2014-08-06 | 杭州华三通信技术有限公司 | 一种路由通告方法和装置 |
CN104394076A (zh) * | 2014-12-01 | 2015-03-04 | 苏州市欧博锐自动化科技有限公司 | 一种多节点间消息传递方法 |
CN108770031A (zh) * | 2018-03-21 | 2018-11-06 | 深圳市海司恩科技有限公司 | 动态路径规划方法、动态路径规划***及存储介质 |
-
2009
- 2009-09-10 CN CN2009101901485A patent/CN102026330A/zh active Pending
Cited By (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103621144A (zh) * | 2011-06-27 | 2014-03-05 | 三菱电机株式会社 | 用于在网络中发现路由集合的方法 |
CN103621144B (zh) * | 2011-06-27 | 2017-03-29 | 三菱电机株式会社 | 用于在网络中发现路由集合的方法 |
CN103973558A (zh) * | 2014-05-21 | 2014-08-06 | 杭州华三通信技术有限公司 | 一种路由通告方法和装置 |
CN103973558B (zh) * | 2014-05-21 | 2017-09-15 | 新华三技术有限公司 | 一种路由通告方法和装置 |
CN104394076A (zh) * | 2014-12-01 | 2015-03-04 | 苏州市欧博锐自动化科技有限公司 | 一种多节点间消息传递方法 |
CN104394076B (zh) * | 2014-12-01 | 2018-06-22 | 苏州市欧博锐自动化科技有限公司 | 一种多节点间消息传递方法 |
CN108770031A (zh) * | 2018-03-21 | 2018-11-06 | 深圳市海司恩科技有限公司 | 动态路径规划方法、动态路径规划***及存储介质 |
CN108770031B (zh) * | 2018-03-21 | 2022-05-17 | 洪贵顺 | 动态路径规划方法、动态路径规划***及存储介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP5199061B2 (ja) | ハイブリッド型メッシュ・ルーティング・プロトコル | |
US8270302B2 (en) | System and method for providing an adaptive value of TTL (time to live) for broadcast/multicast messages in a mesh network using a hybrid wireless mesh protocol | |
EP1966961B1 (en) | Method and system for improving a wireless communication route | |
CN100574252C (zh) | 用于移动路由器之间拓扑更新的部署 | |
CN100428711C (zh) | 蓝牙按请求进行路由和网络形成的方法、及通信方法 | |
US7668173B2 (en) | Method and system for an adaptive wireless routing protocol in a mesh network | |
US11445430B2 (en) | Data forwarding method and apparatus | |
CN103260211B (zh) | 一种改进的aomdv路由方法 | |
EP2392158B1 (en) | Method for supporting routing decisions in a wireless mesh network and wireless mesh network | |
KR20090030320A (ko) | 고장 방지 능력을 위해 다중 경로를 실행하기 위한 방법 및모바일 에드-호크 네트워크 | |
JP4369459B2 (ja) | 複数のサービスノードへのディスジョイントなルートを発見する方法および装置 | |
KR20040053392A (ko) | 무선 메시 네트워크들에서의 어드레싱 및 라우팅 | |
EP1102509B1 (en) | Data routing using a location server in a mobile communication network | |
CN101102283A (zh) | 一种在无线接入点上优化未知单播转发的方法及设备 | |
US20040233847A1 (en) | Routing system for establishing optimal route in wireless personal area network (WPAN) and method thereof | |
CN106954243A (zh) | 基于无线链状网的路由实现方法 | |
JP2010074691A (ja) | アドホックネットワーク無線通信方法 | |
US20120163233A1 (en) | Method for transmitting routing information and routing apparatus in wireless network | |
JP5004999B2 (ja) | ハイブリッド型メッシュ・ルーティング・プロトコル | |
JP4927658B2 (ja) | ルーチング方法及びノード装置 | |
CN102026330A (zh) | 一种提高自组织网络可用性的方法 | |
KR20140124116A (ko) | 이동 통신 네트워크에서 데이터-패스를 최적화시키는 장치 및 방법 | |
JP4767329B2 (ja) | ネットワークシステムおよび通信方法 | |
JP2007243932A (ja) | 無線データ通信システム | |
CN101636980A (zh) | 运行具有多个网络节点的无线网状数据网络的方法和网络节点 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C12 | Rejection of a patent application after its publication | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20110420 |