CN112350932A - 基于olsr路由协议的分层网络路由方法、系统和计算机设备 - Google Patents
基于olsr路由协议的分层网络路由方法、系统和计算机设备 Download PDFInfo
- Publication number
- CN112350932A CN112350932A CN202011066214.0A CN202011066214A CN112350932A CN 112350932 A CN112350932 A CN 112350932A CN 202011066214 A CN202011066214 A CN 202011066214A CN 112350932 A CN112350932 A CN 112350932A
- Authority
- CN
- China
- Prior art keywords
- node
- network
- subnet
- gateway
- 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.)
- Granted
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L45/00—Routing or path finding of packets in data switching networks
- H04L45/02—Topology update or discovery
- H04L45/04—Interdomain routing, e.g. hierarchical routing
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W40/00—Communication routing or communication path finding
- H04W40/24—Connectivity information management, e.g. connectivity discovery or connectivity update
- H04W40/30—Connectivity information management, e.g. connectivity discovery or connectivity update for proactive routing
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本申请涉及一种基于OLSR路由协议的分层网络路由方法、系统、计算机设备和存储介质。所述方法包括:分层网络中的网关节点通过分组广播获取分层网络中各个节点的节点信息,根据节点信息确定子网列表,网关节点将子网列表传输至上层网络,上层网络节点根据子网列表维护上层节点路由信息。采用本方法能够提高了整个网络的组网效率,也加快路由表的收敛,更好更快完成组网要求。
Description
技术领域
本申请涉及通信技术领域,特别是涉及一种基于OLSR路由协议的分层网络路由方法、系统、计算机设备和存储介质。
背景技术
MANET网络由于其自组织性,自愈性等特点使其广泛应用于军事通信和灾后应急通信等领域,针对MANET网络提出了许多路由算法和协议,包括按需路由协议,主动路由协议和混合路由协议等。但在移动、干扰和复杂地形等因素引起的网络拓扑动态变化的情况下,如何自适应选择和使用路由,保障端到端业务流的需求,一直是一个热点研究问题,最优化链路状态路由协议(Optimal Link State Routing,OLSR)是一种表驱动式的链路状态路由协议,节点间通过定期交换各种控制信息和利用分布式计算来更新和建立自己的路由表项。网络中由相邻节点选择其作为MPR的节点需周期性地向网络广播拓扑控制信息。拓扑控制信息包含了将其选为MPR的邻居节点信息。在OLSR协议中,只有MPR节点转发洪泛的路由控制信息,其它节点不转发,这样大大降低了网络的开销。OLSR主要包含两种控制分组,HELLO分组和拓扑控制(Topology Control,TC)分组。协议通过定期广播HELLO分组以及监听邻居的HELLO分组来建立节点的一跳和两跳邻居列表。同时通过邻居列表信息计算本节点的MPR集合。HELLO分组只能在一跳内广播,相反TC分组必须广播到整个网络。节点通过收集网络的TC分组计算网络的拓扑图,最终生成路由信息。OLSR协议适合网络规模较小的场景,虽然采用MPR节点减少洪泛消息的数量,但是随着网络的规模增大和跳数增多,路由协议开销成指数增长,而且整个网络是一张平面结构,每个节点都需要获取到整个网络节点的分布情况,不利于真实情况下对不同节点的网络权限和路由范围的管理。而且针对在大规模组网条件下,OLSR协议组网建立路由表的效率低,组网时间长,路由更新收敛慢。
针对相关技术中,OLSR路由协议效率低的问题,目前尚未提出有效的解决方案。
发明内容
基于此,有必要针对上述技术问题,提供一种基于OLSR路由协议的分层网络路由方法、系统、计算机设备和存储介质。
第一方面,本申请实施例提供了一种基于OLSR路由协议的分层网络路由方法,所述方法应用于分层网络中,所述分层网络中包括上层网络、下层网络和网关节点,所述方法包括:
网关节点通过分组广播获取所述分层网络中各个节点的节点信息,根据所述节点信息确定子网列表,其中,所述节点信息用于指示所述节点所在的网络,子网列表包括下层网络节点以及与所述下层网络对应的所述网关节点;
所述网关节点将所述子网列表传输至所述上层网络,上层网络节点根据所述子网列表维护上层节点路由信息。
在其中一个实施例中,所述网关节点通过分组广播获取节点信息,根据所述节点信息确定子网列表包括:
所述网关节点获取节点信息,所述节点信息包括所述节点的网络号,所述网络号指示所述节点所属网络的标识号;
所述网关节点根据所述网络号确定所述节点所在的网络层级,在所述节点属于所述下层网络的情况下,根据所述节点信息确定所述子网列表。
在其中一个实施例中,所述网关节点通过分组广播获取节点信息,根据所述节点信息确定子网列表还包括:
所述网关节点获取节点信息,所述节点信息包括所述节点的节点角色和网络号,所述节点角色指示所述节点所属的网络层级;
所述网关节点根据所述节点角色筛选子网节点,并根据所述子网节点的所述网络号确定所述子网列表。
在其中一个实施例中,所述网关节点将所述子网列表传输至上层网络包括:
所述网关节点周期性构造分层拓扑管理广播消息,并将所述分层拓扑管理广播消息泛洪至上层网络,其中,所述分层拓扑管理消息包括所述子网列表。
在其中一个实施例中,上层网络节点根据所述子网列表维护上层节点路由信息包括:
所述上层网络节点获取上层路由表,所述上层路由表包括所述上层网络节点间的路由信息;
所述上层网络节点根据所述子网列表生成网关成员列表;
所述上层节点根据所述上层路由表和所述网关成员列表维护所述上层节点路由信息。
在其中一个实施例中,所述网关节点获取上层路由表和子网路由表,所述上层路由表包括所述上层节点间的路由信息,所述子网路由表包括所述下层网络节点间的路由信息;
所述网关节点根据所述子网列表生成网关成员列表;
所述网关节点根据所述上层路由表、所述子网路由表和所述网关成员列表维护网关节点路由信息。
在其中一个实施例中,所述下层网络节点获取所述子网列表,根据所述子网列表维护下层网络节点路由表。
第二方面,本申请实施例还提供一种基于OLSR路由协议的分层网络路由系统,所述系统包括:网关节点、子网和上层网络:
所述网关节点通过分组广播获取节点信息,根据所述节点信息获取子网列表,其中,所述子网列表包括子网节点以及与所述子网节点对应的所述网关节点,所述网关节点将所述子网列表泛洪至所述上层网络;
所述上层网络节点根据所述子网列表维护路由表。
第三方面,本申请实施例提供了一种计算机设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现上述基于OLSR路由协议的分层网络路由方法。
第四方面,本申请实施例还提供一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现上述基于OLSR路由协议的分层网络路由方法。
上述基于OLSR路由协议的分层网络路由方法、系统、计算机设备和存储介质,分层网络中的网关节点通过分组广播获取分层网络中各个节点的节点信息,根据节点信息确定子网列表,网关节点将子网列表传输至上层网络,上层网络节点根据子网列表维护上层节点路由信息,提高了整个网络的组网效率,也加快路由表的收敛,更好更快完成组网要求。
附图说明
此处所说明的附图用来提供对本申请的进一步理解,构成本申请的一部分,本申请的示意性实施例及其说明用于解释本申请,并不构成对本申请的不当限定。在附图中:
图1是根据本发明实施例的基于OLSR路由协议的分层网络路由方法的应用场景图;
图2是根据本发明实施例中基于OLSR路由协议的分层网络路由方法的流程图;
图3是根据本发明实施例中基于OLSR路由协议的分层网络路由方法中的网络框架示意图;
图4是根据本发明实施例中基于OLSR路由协议的分层网络路由方法中的路由示意图;
图5是根据本发明一个实施例中基于OLSR路由协议的分层网络路由计算机设备的结构示意图。
具体实施方式
为了使本申请的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本申请进行描述和说明。应当理解,此处所描述的具体实施例仅仅用以解释本申请,并不用于限定本申请。基于本申请提供的实施例,本领域普通技术人员在没有作出创造性劳动的前提下所获得的所有其他实施例,都属于本申请保护的范围。
显而易见地,下面描述中的附图仅仅是本申请的一些示例或实施例,对于本领域的普通技术人员而言,在不付出创造性劳动的前提下,还可以根据这些附图将本申请应用于其他类似情景。此外,还可以理解的是,虽然这种开发过程中所做出的努力可能是复杂并且冗长的,然而对于与本申请公开的内容相关的本领域的普通技术人员而言,在本申请揭露的技术内容的基础上进行的一些设计,制造或者生产等变更只是常规的技术手段,不应当理解为本申请公开的内容不充分。
在本申请中提及“实施例”意味着,结合实施例描述的特定特征、结构或特性可以包含在本申请的至少一个实施例中。在说明书中的各个位置出现该短语并不一定均是指相同的实施例,也不是与其它实施例互斥的独立的或备选的实施例。本领域普通技术人员显式地和隐式地理解的是,本申请所描述的实施例在不冲突的情况下,可以与其它实施例相结合。
除非另作定义,本申请所涉及的技术术语或者科学术语应当为本申请所属技术领域内具有一般技能的人士所理解的通常意义。本申请所涉及的“一”、“一个”、“一种”、“该”等类似词语并不表示数量限制,可表示单数或复数。本申请所涉及的术语“包括”、“包含”、“具有”以及它们任何变形,意图在于覆盖不排他的包含;例如包含了一系列步骤或模块(单元)的过程、方法、系统、产品或设备没有限定于已列出的步骤或单元,而是可以还包括没有列出的步骤或单元,或可以还包括对于这些过程、方法、产品或设备固有的其它步骤或单元。本申请所涉及的“连接”、“相连”、“耦接”等类似的词语并非限定于物理的或者机械的连接,而是可以包括电气的连接,不管是直接的还是间接的。本申请所涉及的“多个”是指两个或两个以上。“和/或”描述关联对象的关联关系,表示可以存在三种关系,例如,“A和/或B”可以表示:单独存在A,同时存在A和B,单独存在B这三种情况。字符“/”一般表示前后关联对象是一种“或”的关系。本申请所涉及的术语“第一”、“第二”、“第三”等仅仅是区别类似的对象,不代表针对对象的特定排序。
图1是根据本发明实施例的基于OLSR路由协议的分层网络路由方法的应用场景图,基于OLSR路由协议的网络分层方法可以应用于如图1所示的分层网络中,该分层网络包括上层网络10、下层网络12以及上层网络与下层网络之间网关节点14,其中,网关节点14通过分组广播获取节点信息,根据节点信息获取下层网络12的子网列表,其中,子网列表包括下层网络12中的各个节点以及与下层网络对应的网关节点14;网关节点14将子网列表传输至上层网络10,上层网络中的各个节点根据子网列表维护上层节点路由表。本领域普通技术人员可以理解,图1所示的结构仅为示意,其并不对上述网络的架构造成限定。例如,一个上层网络可以通过不同网关连接多个下层网络,或者多层网络级联,尤其在节点数较多的情况下,网络层级可以划分更多层的划分。在多层网络中,本申请说明书中未特殊说明的上层网络和下层网络通常指相邻的两个网络层级。
在一个实施例中,图2是根据本发明实施例中基于OLSR路由协议的分层网络路由方法的流程图,如图2所示,提供了一种基于OLSR路由协议的分层网络路由方法,以该方法应用于图1中分层网络为例进行说明,包括以下步骤:
步骤S210,网关节点通过分组广播获取分层网络中各个节点的节点信息,根据节点信息确定子网列表。例如,在图1中,节点0、节点1、节点2、节点3、节点4和节点5为上层网络中的节点,节点8、节点9、节点10和节点11为下层网络中的节点,节点6为上层网络和子网之间的网关节点。节点6获取HELLO分组广播以及TC分组广播,获取到当前网络中各个节点的节点信息。对于网络中的每个节点,节点信息是针对各个节点预设的、用于指示节点所在网络的扩展信息,该扩展信息可以通过HELLO分组广播和TC分组广播传递给网关节点。网关节点本身也包括该网关节点的节点信息,网关节点根据自身的节点信息以及通过广播消息接收到的网络中的各个节点的节点信息,筛选出与网关节点本身属于相同网络的节点,确定子网列表。以图1中所示的网络为例,子网列表中包括节点8、节点9、节点10和节点11,以及该子网对应的网关节点,即节点6。
步骤S220,网关节点将子网列表传输至上层网络,上层网络节点根据子网列表维护上层节点路由表。网关节点将子网列表传输至上层网络,但是网关节点不会将上层网络的节点列表发送给下层网络中的节点。上层网络中的各个节点根据子网列表维护各自的路由信息,根据上述子网列表,上层网络中的各个节点在信息转发过程中,无需计算从自身节点到下层网络中的目标节点的路由信息,只需要根据子网列表获取到与目标节点对应的网关节点,将信息转发到网关节点即可,而下层网络中的节点则根本没有权限获知上层网络的网络拓扑,所有需要传递至上层网络的消息都将通过网关节点转发。
步骤S210至步骤S220中,分层网络中的网关节点通过分组广播获取分层网络中各个节点的节点信息,根据节点信息确定子网列表,网关节点将子网列表传输至上层网络,上层网络节点根据子网列表维护上层节点路由信息。建立路由时上层网络节点只需要计算到上层网络的路由即可,对于到下层网络节点的路由,只需要计算到该下层网络节点所在下层网络的网关节点的路由即可,而下层网络节点不需要也没有权限获得全网的网络拓扑关系,节省了很多广播消息的处理,上级网络节点只需要获取和感知上级网络内的节点包括网关节点的广播即可,子网节点只需要获取和感知子网内各个节点的广播就可以,这样就提高了整个网络的组网效率,也加快路由表的收敛,更好更快完成组网要求。
在一个实施例中,网关节点通过分组广播获取节点信息,节点信息包括节点的网络号,网络号指示该节点所属网络的标识号。网关节点根据网络号确定节点所在的网络层级,在节点属于子网的情况下,根据节点信息确定子网列表。在一些实施例中,每个节点的节点信息中包括子网号(SubNetId)可配属性,即可通过子网号判断该节点所属的网络,需要说明的是,并不是仅有下层网络有SubNetId,分层网路中各个层级的网络均有相应的SubNetId。根据预设的分配规则进行SubNetId的分配,从而使得网关节点可以根据SubNetId获知节点所在的网络以及网络层级。例如,如图1所示的分层网络包括上层网络和下层网络,预设上层网络对应的SubNetId为1,下层网络对应的SubNetId为6,那么网关节点在获取到网络中各个节点的节点信息中的SubNetId后,即可通过SubNetId筛选出SubNetId为6的节点并且确定该子网的子网列表。可选地,在分层网络中包括多个上层网络的情况下,也可以统一将上层网络中的上层节点的SubNetId设置为相同的数值,从而节约可用的SubNetId取值资源。例如,在SubNetId用4比特数据进行标识的情况下,SubNetId为0的节点均为上层节点,而下层网络节点根据其所在的不同子网,SubNetId取值为1到15,那么网关节点在确定子网列表时会先过滤掉所有SubNetId=0的节点,再根据网关节点自身的SubNetId,获取到与自身的SubNetId相同的节点,建立子网列表。通过节点的网络号对节点所属的网络层级以及子网进行分辨,能够进一步提高路由的收敛速度,提高组网效率。
在一个实施例中,网关节点获取节点信息,节点信息中除了网络号还包括节点的节点角色,节点角色指示节点所属的网络层级。可选地,预先给每个节点增加NodeRole(节点角色)和SubNetId(子网号)的可配属性,用于管理网络分层的逻辑控制。在分层网络只包括上层的一级网和下层的子网的情况下,NodeRole的取值范围为0,1,2,其中,0表示上层网络节点,1表示网关节,2表示子网节点。可选地,在网络层数多于两层的情况下,基于NodeRole字段将使得层级划分更加高效,NodeRole字段的取值可以根据网络层级进行扩展。通过NodeRole可以更加直接和高效地对节点所在的层级进行判断,进一步提高组网效率,此外还便于管理网络分层的逻辑控制。
在一个实施例中,网关节点周期性构造分层拓扑管理广播消息,并将分层拓扑管理广播消息泛洪至上层网络。在本实施例中,为了使得上层网络中的节点能定期获取并且更新子网列表,网关节点周期性构造分层拓扑管理(Hierarchical Topology Control,简称HTC)广播消息,并将网关节点及其子网列表泛洪至上层网络,针对这个广播消息,上层网络节点和网关节点都需要进行解析处理,保证上层网络的节点和其他的网关节点都掌握了网络层级关系和子网分布情况。在本实施例中,在路由过程中新增了HTC分组广播消息,类似OLSR协议中原有的HELLO分组和TC分组消息,网关节点通过周期性发送HTC分组广播消息将分层相关的子网列表和网关信息更新至上层网络中,方便上层网络中的节点以及其它网关节点进行路由信息的更新。
随着路由广播消息的周期性更新(HELLO分组,TC分组,HTC分组),节点根据本地链路表,邻居表,两跳邻居表,拓扑表,网关成员表等各自根据表项计算产生路由表,由于网络进行了分层,相应的路由算法需要进行改进,网络不分层情况下,每个节点都是等同的,产生路由表的算法一致,计算出一条可达的最短路径即可,网络分层后由于节点角色不同,构建路由算法就有了不一样的策略。
在一个实施例中,上层网络节点根据子网列表维护上层节点路由信息包括:上层网络节点获取上层路由表,上层路由表包括上层网络节点间的路由信息;上层网络节点根据子网列表生成网关成员列表;上层节点根据上层路由表和网关成员列表维护上层节点路由信息。网关成员列表用于记录分层网络中网关节点及其网关成员表项,该表用于更新并计算路由表,生成可达其他节点的路由信息。上层网络节点可以计算出和其他上层网络节点、网关节点之间的可达的最短路径,上层网络节点和下层网络节点之间的路由表是通过网关节点来完成,只需要找到和该子网节点对应的网关节点的最短路径即可。通过上述路由策略,上层网络节点只需要计算到同级网络路由即可,对于到下层网络节点的路由,只需要计算到该下层网络节点所在网络的网关节点的路由即可,提高了上层网络节点的路由信息维护成本。
在一个实施例中,网关节点获取上层路由表和子网路由表,上层路由表包括上层节点间的路由信息,子网路由表包括下层网络节点间的路由信息;网关节点根据所述子网列表生成网关成员列表;网关节点根据上层路由表、子网路由表和网关成员列表维护网关节点路由信息。网关节点产生路由表的过程较为复杂一些,一方面网关节点要找到和上层网络节点以及其他网关节点的可达最短路径,还需要构造出和该网关节点所负责的下层网络节点之间的最短路径,另外还需要能够根据本地的网关成员列表,检索出其他下层网络节点所对应的网关节点,找到与其他下层网络节点的网关节点之间的最短路径。在本实施例中,将上层网络和下层网络的路由信息均由网关节点维护,可以尽可能减少上层网络节点和下层网络节点的路由表建立时间,路由范围可控,更加适合真实组网情况。
在一个实施例中,下层网络节点获取子网列表,根据子网列表维护下层网络节点路由表。下层网络节点产生路由表过程相对较简单些,只需要构造出同一个下层网络内的节点之间的最短路径,当然也包括和该网络的网关节点之间的最短路径,因为与其他节点,如上层网络节点、其他网关节点以及其他下层网络节点之间的路由,都通过网关节点完成。在本实施例提供了一种下层网络节点的路由信息维护方式,通过这种方式下层网络节点仅进行有限范围的路由信息维护,功耗低。
上述各个类型节点的路由方式可以组合使用,也可以根据实际应用场景重新制定路由算法的策略。例如,在有必要的情况下,可以使上级网络节点根据子网路由表计算出上层网络节点到各个下层网络节点之间的路由路径,虽然计算的开销较大,但同时也提升了整个网络的可靠性,路由路径不会因为网关节点信息的丢失而丢失。
需要说明的是,本申请中的基于OLSR路由协议的分层网络路由方法不仅适用于两层网络或者多层网络的相邻两层,也适用于多层网络中的任意上层与下层网络。例如,在三层网络中,上层和下层可以指三层中构成上下层关系的任意两层。此时存在多种网络分层策略,在一些实施例中,第三层的节点可以仅将包括第三层子网节点信息的子网列表发给第二层,此外,第二层的节点也仅将包括第二层子网节点信息的子网列表发送给第一层。即第一层网络管理维护第二层的网关成员列表以及路由信息,第二层网络管理维护第三层的网关成员列表以及路由信息。各层网络节点通过节点角色和网络号进行网络层级以及子网的区分。在另一些实施例中,第三层节点也可以同时将包括第三层子网节点信息的子网列表发给第一层网络和第二层网络,这种情况下,第一层网络作为全部层级网络的管理层,管理和维护每一层的网关成员列表以及路由信息,在第二层网络丢失了第三层网络的子网信息的情况下,第一层网络和第二层网络、第一层网络和第三层网络之间都还是可以通信,第一层网络甚至可以将第三层的路由信息更新给第二层网络从而恢复第二层网络和第三层网络之间的通信。因此本发明所提供的基于OLSR路由协议的分层网络路由方法,并不局限于两层网络或者相邻网络层级,可以结合其他路由策略,根据多层网络中的实际需求进行应用。
下面通过优选实施例对本申请实施例进行描述和说明。图3是根据本发明实施例中基于OLSR路由协议的分层网络路由方法的网络框架示意图,如图3所示,该网络包括三个网络,作为上层网络的一级网,以及作为平级的下层网络的子网1和子网2.网络总共有16个节点,节点Id为0至15。网关节点6和网关节点7属于一级网,同时节点6属于子网1的网关节点,节点7为子网2的网关节点。在一些实施例中,可以根据节点所处的网络拓扑位置,或者可以根据节点权限进行网关节点的选取,例如,选择位于网络拓扑中心位置的节点作为网关节点,或者选择一组节点中作为组长角色的节点作为网关节点。
在经典OLSR路由协议实现基础上给每个节点增加NodeRole(节点角色)和SubNetId(子网号)的可配属性,用于管理网络分层的逻辑控制。NodeRole的取值范围为0、1和2。0表示一级网节点,1表示网关节点,2表示子网节点。SubNetId取值范围为1至255,255为特殊标识,其中,1至254为子网号范围,255是一级网节点子网号特殊标识。
例如,如图3所示的网络架构中,总共有16个节点(节点Id为0~15),需要进行网络分层:
设定一级网节点(0,1,2,3,4,5)的NodeRole和SubNetId取值如下:
节点0:NodeRole为0,SubNetId为255;
节点1:NodeRole为0,SubNetId为255;
节点2:NodeRole为0,SubNetId为255;
节点3:NodeRole为0,SubNetId为255;
节点4:NodeRole为0,SubNetId为255;
节点5:NodeRole为0,SubNetId为255;
设定网关节点(6,7)的NodeRole和SubNetId取值如下:
节点6:NodeRole为1,SubNetId为6;
节点7:NodeRole为1,SubNetId为7;
设定子网(8,9,10,11,12,13,14,15)的NodeRole和SubNetId取值如下:
子网1包括节点8至节点11,子网1中的节点为网关节点6的子网成员:
节点8:NodeRole为2,SubNetId为6;
节点9:NodeRole为2,SubNetId为6;
节点10:NodeRole为2,SubNetId为6;
节点11:NodeRole为2,SubNetId为6;
第二个子网:(节点12~节点15)为网关节点7的子网成员:
节点12:NodeRole为2,SubNetId为7;
节点13:NodeRole为2,SubNetId为7;
节点14:NodeRole为2,SubNetId为7;
节点15:NodeRole为2,SubNetId为7。
此外,在OLSR路由协议中增加HTC分组广播消息,用于网关节点广播其子网成员,泛洪至一级网范围,用于一级网节点和其他网关节点建立和维护网关成员表。网关节点和一级网节点本地新增网关成员维护表,用于记录分层网络中网关节点及其网关成员表项,该表用于更新并计算路由表,生成可达其他节点的路由信息,相应的路由产生算法也要进行相应的改变。
节点角色为网关节点即NodeRole为1的节点,处理收到HELLO分组或者是TC分组,解析广播,构造属于该网关节点的子网列表。例如,网关节点6随着各个节点广播自身的节点角色和子网号,根据格式{{网关节点Id,子网Id},{网关节点Id,子网Id},…},根据广播消息构建网关节点6的子网列表:{{6,8},{6,9},{6,10},{6,11}};同样地,网关节点7也构造出了它的子网列表{{7,12},{7,13},{7,14},{7,15}}。
网关节点周期性构造HTC广播消息,并将网关节点及其子网成员洪泛至一级网,针对这个广播消息,一级网和网关节点都需要进行解析处理,保证一级网节点和其他的网关节点都掌握了网络层级关系和子网1、子网2的分布情况,同时在建立路由时一级网节点只需要计算到同级网络路由即可,对于到子网节点的路由,只需要计算到该子网节点所在子网的网关节点的路由即可,网关节点负责到具体子网节点的路由,而子网节点不需要也没有权限获得全网的网络层次关系,子网只需要获取到它的网关节点信息以及和它在同一个子网内的其他子网节点的路由信息就可以,这样就达到了对子网内节点的网络权限的控制和路由范围的管控,同时节省了很多广播消息的处理和泛洪,一级网节点只需要获取和感知一级网内节点包括网关节点的广播即可,子网节点只需要获取和感知子网内各个节点的广播就可以,这样就提高了整个网络的组网效率,也加快路由表的收敛,更好更快完成组网要求。
随着HELLO分组、TC分组和HTC分组路由广播消息的周期性更新,节点根据本地链路表,邻居表,两跳邻居表,拓扑表,网关成员表等各自根据表项计算产生路由表,由于网络进行了分层,相应的路由算法需要进行改进,网络不分层情况下,每个节点都是等同的,产生路由表的算法一致,计算出一条可达的最短路径即可,网络分层后由于节点角色不同,构建路由算法就有了不一样的策略,具体实现思想如下:
一级网节点可以计算出和其他一级网节点,网关节点之间的可达的最短路径,一级网节点和子网节点之间的路由表是通过网关节点来完成,只需要找到和该子网节点对应的网关节点的最短路径即可。
网关节点产生路由表的过程较为复杂一些,一方面网关节点要找到和一级网节点以及其他网关节点的可达最短路径,还需要构造出和它的子网节点之间的最短路径,另外还需要能够根据本地网关—成员维护表,检索出其他子网节点所对应的网关节点,找到与其他子网节点的网关节点之间的最短路径。
子网节点产生路由表过程相对较简单些,只需要构造出同一个子网内的节点之间的最短路径,当然也包括和它的网关节点之间的最短路径,因为与一级节点,其他网关节点以及其他子网节点之间的路由,都需要通过它的网关节点完成。
图4是根据本发明实施例中基于OLSR路由协议的分层网络路由方法中的路由示意图,如图4所示,这里节点之间有连接,代表互为邻居节点,可以直接进行通信,没有连接,只能通过中继节点进行通信。
⑴在网内(一级网内或者子网内,同层级网络)还是按照OLSR路由协议算法计算最短可达路径,根据上图,各网内产生路由表举例如下:
对于一级网节点,如节点0,其路由表如表1所示:
表1
Dest_目的节点 | Next_下一跳 | Hop_跳数 | Path_路径 |
1 | 1 | 1 | 0->1 |
2 | 1 | 2 | 0->1->2 |
3 | 3 | 1 | 0->3 |
4 | 4 | 1 | 0->4 |
5 | 5 | 1 | 0->5 |
6 | 4 | 2 | 0->4->6 |
7 | 4 | 2 | 0->4->7 |
网关节点如节点6的路由表如表2所示:
表2
Dest_目的节点 | Next_下一跳 | Hop_跳数 | Path_路径 |
0 | 4 | 2 | 6->4->0 |
1 | 1 | 1 | 6->1 |
2 | 2 | 1 | 6->2 |
3 | 2 | 2 | 6->2->3 |
4 | 4 | 1 | 6->4 |
5 | 4 | 2 | 6->4->5 |
7 | 4 | 2 | 6->4->7 |
8 | 8 | 1 | 6->8 |
9 | 8 | 2 | 6->8->9 |
10 | 8 | 3 | 6->8->9->10 |
11 | 11 | 1 | 6->11 |
子网1节点如节点8的路由表如表3所示:
表3
Dest_目的节点 | Next_下一跳 | Hop_跳数 | Path_路径 |
6 | 6 | 1 | 8->6 |
9 | 9 | 1 | 8->9 |
10 | 9 | 2 | 8->9->10 |
11 | 11 | 1 | 8->11 |
子网2的节点如节点12路由表如表4所示:
表4
Dest_目的节点 | Next_下一跳 | Hop_跳数 | Path_路径 |
7 | 7 | 1 | 12->7 |
13 | 13 | 1 | 12->13 |
14 | 13 | 2 | 12->13->14 |
15 | 15 | 1 | 12->15 |
在子网与一级网之间的网间的路由表产生均需通过网关节点产生。例如从一级网节点1至子网1节点9,因为网关节点通过HTC分组广播了自身的子网成员列表,一级网节点本地存储了网关节点与网关成员之间的对应表项,所以节点1通过查表得知,节点9属于网关节点6所在子网的成员,所以一级网节点1只需要将路由请求发生给节点6,由节点6根据网内路由表查询可达路径。从子网1节点8到一级网节点4,因为节点4属于一级网节点,子网节点8本地路由表是没有到节点4的路径,此时只需将路由请求发生给它的网关节点6,由网关节点6去寻找到达节点4的路由。而子网节点12到子网节点9,因为节点12和节点9属于不同子网节点,所以节点12本地没有找到节点9的路由,所以只需要将路由请求发送给它的网关节点7,由网关节点7根据本地路由表查询发现没有路由信息,接着根据本地的网关成员维护表查询得知,节点9属于网关节点6的子网节点,此时只需要查询本地路由表中到网关节点6的路由信息,可以获取到,将路由请求发送给网关节点6即可,之后由网关节点6查询路由表得知到达节点9的具体路由信息。
通过上述基于OLSR路由协议的分层网络路由方法,适应于大规模节点组网,路由收敛快,组网效率更高。节点权限可控,路由范围可控,更适合真实组网情况。不同角色节点可采用不同的产品形态,降低功耗,提高续航。网络分层后由于子网节点路由范围变小,更省电,可以做成手持式节点,而网关节点由于承担更多中继功能,功耗较高,功能和权限更多可以做成背负式或者是车载式,更好的适应不同场景下的产品形态。
应该理解的是,虽然图2的流程图中的各个步骤按照箭头的指示依次显示,但是这些步骤并不是必然按照箭头指示的顺序依次执行。除非本文中有明确的说明,这些步骤的执行并没有严格的顺序限制,这些步骤可以以其它的顺序执行。而且,图2中的至少一部分步骤可以包括多个子步骤或者多个阶段,这些子步骤或者阶段并不必然是在同一时刻执行完成,而是可以在不同的时刻执行,这些子步骤或者阶段的执行顺序也不必然是依次进行,而是可以与其它步骤或者其它步骤的子步骤或者阶段的至少一部分轮流或者交替地执行。
在一个实施例中,提供了一种基于OLSR路由协议的分层网络路由系统,其特征在于,所述系统包括:网关节点、子网和上层网络,网关节点通过分组广播获取节点信息,根据节点信息获取子网列表,其中,子网列表包括子网节点以及与子网节点对应的网关节点,网关节点将子网列表泛洪至上层网络;上层网络节点根据子网列表维护路由表。
关于基于OLSR路由协议的分层网络路由系统的具体限定可以参见上文中对于基于OLSR路由协议的分层网络路由系统的限定,在此不再赘述。上述基于OLSR路由协议的分层网络路由系统中的各个部分可全部或部分通过软件、硬件及其组合来实现。上述各模块可以硬件形式内嵌于或独立于计算机设备中的处理器中,也可以以软件形式存储于计算机设备中的存储器中,以便于处理器调用执行以上各个模块对应的操作。
在一个实施例中,图5是根据本发明一个实施例中基于OLSR路由协议的分层网络路由计算机设备的结构示意图,提供了一种计算机设备,该计算机设备可以是终端,其内部结构图可以如图5所示。该计算机设备包括通过系统总线连接的处理器、存储器、网络接口、显示屏和输入装置。其中,该计算机设备的处理器用于提供计算和控制能力。该计算机设备的存储器包括非易失性存储介质、内存储器。该非易失性存储介质存储有操作系统和计算机程序。该内存储器为非易失性存储介质中的操作系统和计算机程序的运行提供环境。该计算机设备的网络接口用于与外部的终端通过网络连接通信。该计算机程序被处理器执行时以实现一种基于OLSR路由协议的分层网络路由方法。该计算机设备的显示屏可以是液晶显示屏或者电子墨水显示屏,该计算机设备的输入装置可以是显示屏上覆盖的触摸层,也可以是计算机设备外壳上设置的按键、轨迹球或触控板,还可以是外接的键盘、触控板或鼠标等。
本领域技术人员可以理解,图5中示出的结构,仅仅是与本申请方案相关的部分结构的框图,并不构成对本申请方案所应用于其上的计算机设备的限定,具体的计算机设备可以包括比图中所示更多或更少的部件,或者组合某些部件,或者具有不同的部件布置。
在一个实施例中,提供了一种计算机设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,处理器执行计算机程序时实现上述基于OLSR路由协议的分层网络路由方法。
上述基于OLSR路由协议的分层网络路由计算机,分层网络中的网关节点通过分组广播获取分层网络中各个节点的节点信息,根据节点信息确定子网列表,网关节点将子网列表传输至上层网络,上层网络节点根据子网列表维护上层节点路由信息,提高了整个网络的组网效率,也加快路由表的收敛,更好更快完成组网要求。
在一个实施例中,提供了一种计算机可读存储介质,其上存储有计算机程序,计算机程序被处理器执行时实现上述基于OLSR路由协议的分层网络路由方法。
上述基于OLSR路由协议的分层网络路由计算机可读存储介质,分层网络中的网关节点通过分组广播获取分层网络中各个节点的节点信息,根据节点信息确定子网列表,网关节点将子网列表传输至上层网络,上层网络节点根据子网列表维护上层节点路由信息,提高了整个网络的组网效率,也加快路由表的收敛,更好更快完成组网要求。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的计算机程序可存储于一非易失性计算机可读取存储介质中,该计算机程序在执行时,可包括如上述各方法的实施例的流程。其中,本申请所提供的各实施例中所使用的对存储器、存储、数据库或其它介质的任何引用,均可包括非易失性和/或易失性存储器。非易失性存储器可包括只读存储器(ROM)、可编程ROM(PROM)、电可编程ROM(EPROM)、电可擦除可编程ROM(EEPROM)或闪存。易失性存储器可包括随机存取存储器(RAM)或者外部高速缓冲存储器。作为说明而非局限,RAM以多种形式可得,诸如静态RAM(SRAM)、动态RAM(DRAM)、同步DRAM(SDRAM)、双数据率SDRAM(DDRSDRAM)、增强型SDRAM(ESDRAM)、同步链路(Synchlink)DRAM(SLDRAM)、存储器总线(Rambus)直接RAM(RDRAM)、直接存储器总线动态RAM(DRDRAM)、以及存储器总线动态RAM(RDRAM)等。
以上实施例的各技术特征可以进行任意的组合,为使描述简洁,未对上述实施例中的各个技术特征所有可能的组合都进行描述,然而,只要这些技术特征的组合不存在矛盾,都应当认为是本说明书记载的范围。
以上所述实施例仅表达了本申请的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对发明专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本申请构思的前提下,还可以做出若干变形和改进,这些都属于本申请的保护范围。因此,本申请专利的保护范围应以所附权利要求为准。
Claims (10)
1.一种基于OLSR路由协议的分层网络路由方法,其特征在于,所述方法应用于分层网络中,所述分层网络中包括上层网络、下层网络和网关节点,所述方法包括:
网关节点通过分组广播获取所述分层网络中各个节点的节点信息,根据所述节点信息确定子网列表,其中,所述节点信息用于指示所述节点所在的网络,子网列表包括下层网络节点以及与所述下层网络对应的所述网关节点;
所述网关节点将所述子网列表传输至所述上层网络,上层网络节点根据所述子网列表维护上层节点路由信息。
2.根据权利要求1所述的方法,其特征在于,所述网关节点通过分组广播获取节点信息,根据所述节点信息确定子网列表包括:
所述网关节点获取节点信息,所述节点信息包括所述节点的网络号,所述网络号指示所述节点所属网络的标识号;
所述网关节点根据所述网络号确定所述节点所在的网络层级,在所述节点属于所述下层网络的情况下,根据所述节点信息确定所述子网列表。
3.根据权利要求2所述的方法,其特征在于,所述网关节点通过分组广播获取节点信息,根据所述节点信息确定子网列表还包括:
所述网关节点获取节点信息,所述节点信息包括所述节点的节点角色和网络号,所述节点角色指示所述节点所属的网络层级;
所述网关节点根据所述节点角色筛选子网节点,并根据所述子网节点的所述网络号确定所述子网列表。
4.根据权利要求1至3任意一项所述的方法,其特征在于,所述网关节点将所述子网列表传输至上层网络包括:
所述网关节点周期性构造分层拓扑管理广播消息,并将所述分层拓扑管理广播消息泛洪至上层网络,其中,所述分层拓扑管理消息包括所述子网列表。
5.根据权利要求1至3任意一项所述的方法,其特征在于,上层网络节点根据所述子网列表维护上层节点路由信息包括:
所述上层网络节点获取上层路由表,所述上层路由表包括所述上层网络节点间的路由信息;
所述上层网络节点根据所述子网列表生成网关成员列表;
所述上层节点根据所述上层路由表和所述网关成员列表维护所述上层节点路由信息。
6.根据权利要求1至3任意一项所述的方法,其特征在于,所述方法还包括:
所述网关节点获取上层路由表和子网路由表,所述上层路由表包括所述上层节点间的路由信息,所述子网路由表包括所述下层网络节点间的路由信息;
所述网关节点根据所述子网列表生成网关成员列表;
所述网关节点根据所述上层路由表、所述子网路由表和所述网关成员列表维护网关节点路由信息。
7.根据权利要求1至3任意一项所述的方法,其特征在于,所述方法还包括:
所述下层网络节点获取所述子网列表,根据所述子网列表维护下层网络节点路由表。
8.一种基于OLSR路由协议的分层网络路由系统,其特征在于,所述系统包括:网关节点、子网和上层网络:
所述网关节点通过分组广播获取节点信息,根据所述节点信息获取子网列表,其中,所述子网列表包括子网节点以及与所述子网节点对应的所述网关节点,所述网关节点将所述子网列表泛洪至所述上层网络;
所述上层网络节点根据所述子网列表维护路由表。
9.一种计算机设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,其特征在于,所述处理器执行所述计算机程序时实现权利要求1至7中任一项所述方法的步骤。
10.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现权利要求1至7中任一项所述的方法的步骤。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011066214.0A CN112350932B (zh) | 2020-09-30 | 2020-09-30 | 基于olsr路由协议的分层网络路由方法、系统和计算机设备 |
PCT/CN2021/091396 WO2022068199A1 (zh) | 2020-09-30 | 2021-04-30 | 基于olsr路由协议的分层网络路由方法、系统和计算机设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011066214.0A CN112350932B (zh) | 2020-09-30 | 2020-09-30 | 基于olsr路由协议的分层网络路由方法、系统和计算机设备 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN112350932A true CN112350932A (zh) | 2021-02-09 |
CN112350932B CN112350932B (zh) | 2021-11-23 |
Family
ID=74361637
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202011066214.0A Active CN112350932B (zh) | 2020-09-30 | 2020-09-30 | 基于olsr路由协议的分层网络路由方法、系统和计算机设备 |
Country Status (2)
Country | Link |
---|---|
CN (1) | CN112350932B (zh) |
WO (1) | WO2022068199A1 (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2022068199A1 (zh) * | 2020-09-30 | 2022-04-07 | 浙江三维利普维网络有限公司 | 基于olsr路由协议的分层网络路由方法、系统和计算机设备 |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114866559A (zh) * | 2022-05-10 | 2022-08-05 | 杭州顶天网络有限公司 | 一种多层次的点对点网络生成方法 |
Citations (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101051972A (zh) * | 2007-05-24 | 2007-10-10 | 武汉理工大学 | 一种网格资源路由选择方法 |
CN101083624A (zh) * | 2007-07-10 | 2007-12-05 | 北京航空航天大学 | 基于树形结构的路由方法 |
US20080112326A1 (en) * | 2006-11-09 | 2008-05-15 | Avaya Technology Llc | Load-Balancing Routes In Multi-Hop Ad-Hoc Wireless Networks |
US20130034031A1 (en) * | 2011-08-03 | 2013-02-07 | Harris Corporation, Corporation Of The State Of Delaware | Ad hoc wireless communications network with node role information routing and associated methods |
WO2014167550A2 (en) * | 2013-04-12 | 2014-10-16 | Selex Es S.P.A. | Two-level routing communication method for a manet network, network node and mobile network implementing this communication method |
CN104219156A (zh) * | 2014-09-16 | 2014-12-17 | 西安电子科技大学 | 一种适用于层次化空中自组织网络的组播路由方法 |
CN105992301A (zh) * | 2015-02-12 | 2016-10-05 | 北京信威通信技术股份有限公司 | 一种基于静态编队分簇的自组网系统 |
CN110995333A (zh) * | 2019-11-29 | 2020-04-10 | 北京航空航天大学 | 一种分簇QoS路由设计方法 |
CN111526557A (zh) * | 2020-05-06 | 2020-08-11 | 无锡职业技术学院 | 一种无线自组网路由信息获取方法 |
Family Cites Families (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108540310B (zh) * | 2018-03-15 | 2021-05-11 | 南京邮电大学 | 一种基于无线网络协同感知的行为预测方法 |
CN112350932B (zh) * | 2020-09-30 | 2021-11-23 | 浙江三维利普维网络有限公司 | 基于olsr路由协议的分层网络路由方法、系统和计算机设备 |
-
2020
- 2020-09-30 CN CN202011066214.0A patent/CN112350932B/zh active Active
-
2021
- 2021-04-30 WO PCT/CN2021/091396 patent/WO2022068199A1/zh active Application Filing
Patent Citations (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20080112326A1 (en) * | 2006-11-09 | 2008-05-15 | Avaya Technology Llc | Load-Balancing Routes In Multi-Hop Ad-Hoc Wireless Networks |
CN101051972A (zh) * | 2007-05-24 | 2007-10-10 | 武汉理工大学 | 一种网格资源路由选择方法 |
CN101083624A (zh) * | 2007-07-10 | 2007-12-05 | 北京航空航天大学 | 基于树形结构的路由方法 |
US20130034031A1 (en) * | 2011-08-03 | 2013-02-07 | Harris Corporation, Corporation Of The State Of Delaware | Ad hoc wireless communications network with node role information routing and associated methods |
WO2014167550A2 (en) * | 2013-04-12 | 2014-10-16 | Selex Es S.P.A. | Two-level routing communication method for a manet network, network node and mobile network implementing this communication method |
CN104219156A (zh) * | 2014-09-16 | 2014-12-17 | 西安电子科技大学 | 一种适用于层次化空中自组织网络的组播路由方法 |
CN105992301A (zh) * | 2015-02-12 | 2016-10-05 | 北京信威通信技术股份有限公司 | 一种基于静态编队分簇的自组网系统 |
CN110995333A (zh) * | 2019-11-29 | 2020-04-10 | 北京航空航天大学 | 一种分簇QoS路由设计方法 |
CN111526557A (zh) * | 2020-05-06 | 2020-08-11 | 无锡职业技术学院 | 一种无线自组网路由信息获取方法 |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2022068199A1 (zh) * | 2020-09-30 | 2022-04-07 | 浙江三维利普维网络有限公司 | 基于olsr路由协议的分层网络路由方法、系统和计算机设备 |
Also Published As
Publication number | Publication date |
---|---|
CN112350932B (zh) | 2021-11-23 |
WO2022068199A1 (zh) | 2022-04-07 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Kharkongor et al. | A SDN controller with energy efficient routing in the Internet of Things (IoT) | |
CN112350932B (zh) | 基于olsr路由协议的分层网络路由方法、系统和计算机设备 | |
JP5812917B2 (ja) | マルチホップネットワークにおいて複数の経路を発見する方法および複数の経路を検索するノード | |
CN102291448A (zh) | 移动自组织网络中基于地理位置的ip地址自动分配方法 | |
US9197510B2 (en) | Efficient network data dissemination | |
Jung et al. | Joint operation of routing control and group key management for 5G ad hoc D2D networks | |
CN105636144A (zh) | 一种延长zigbee网络生命周期的方法 | |
Kurode et al. | MANET routing protocols with emphasis on zone routing protocol–an overview | |
Arya et al. | Optimization approach for energy minimization and bandwidth estimation of WSN for data centric protocols | |
Mahmood et al. | Hybrid on-demand greedy routing protocol with backtracking for mobile ad-hoc networks | |
Abdullah et al. | Energy Efficient MANET Routing Protocol Based on Ant Colony Optimization. | |
Choi et al. | Cell based energy density aware routing: a new protocol for improving the lifetime of wireless sensor networks | |
Chau et al. | IDRM: Inter-Domain Routing Protocol for Mobile Ad Hoc Networks | |
Onuora et al. | A Comprehensive Review of Routing Protocols for Mobile Ad Hoc Networks (Manets) | |
EP1983699B1 (en) | Multicast routing protocol for a clustered mobile ad hoc network | |
Ergenç et al. | Plane-separated routing in ad-hoc networks | |
de Amorim et al. | Routing in wireless self-organizing networks | |
Balaji et al. | Development of multipath resilience routing technique to improve the fault tolerance in mobile Ad-Hoc networks | |
Kies et al. | A connected dominating set based on connectivity and energy in mobile ad hoc networks | |
Egorova-Forster et al. | Exploiting reinforcement learning for multiple sink routing in WSNs | |
Sarkohaki et al. | A survey of routing protocols for mobile ad-hoc networks with comprehensive study of olsr | |
Kukreja et al. | Performance metrics of AODV and OLSR in wireless mesh network | |
Nwelih et al. | Analysis and performance evaluation of mobile ad-hoc network (MANET) protocols based on selected criteria | |
CN106792745B (zh) | 一种面向无线自组织网的节点分层路由调度方法及系统 | |
Shen et al. | A cross‐layer design for heterogeneous routing in wireless mesh 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 |