CN114363191A - 一种基于节点与ip地址的路由扩散模拟方法及装置 - Google Patents
一种基于节点与ip地址的路由扩散模拟方法及装置 Download PDFInfo
- Publication number
- CN114363191A CN114363191A CN202111603310.9A CN202111603310A CN114363191A CN 114363191 A CN114363191 A CN 114363191A CN 202111603310 A CN202111603310 A CN 202111603310A CN 114363191 A CN114363191 A CN 114363191A
- Authority
- CN
- China
- Prior art keywords
- node
- route
- routing
- nodes
- target
- 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
- 238000009792 diffusion process Methods 0.000 title claims abstract description 152
- 238000004088 simulation Methods 0.000 title claims abstract description 131
- 238000000034 method Methods 0.000 title claims abstract description 69
- 239000011159 matrix material Substances 0.000 claims abstract description 116
- 238000013507 mapping Methods 0.000 claims abstract description 39
- 238000012545 processing Methods 0.000 claims description 44
- 230000015654 memory Effects 0.000 claims description 21
- 230000009466 transformation Effects 0.000 claims description 18
- 230000002776 aggregation Effects 0.000 claims description 11
- 238000004220 aggregation Methods 0.000 claims description 11
- ABEXEQSGABRUHS-UHFFFAOYSA-N 16-methylheptadecyl 16-methylheptadecanoate Chemical compound CC(C)CCCCCCCCCCCCCCCOC(=O)CCCCCCCCCCCCCCC(C)C ABEXEQSGABRUHS-UHFFFAOYSA-N 0.000 claims 5
- 241000764238 Isis Species 0.000 claims 5
- 238000005417 image-selected in vivo spectroscopy Methods 0.000 claims 5
- 238000012739 integrated shape imaging system Methods 0.000 claims 5
- 238000004891 communication Methods 0.000 abstract description 5
- 238000005259 measurement Methods 0.000 abstract description 2
- 230000008569 process Effects 0.000 description 16
- 238000010586 diagram Methods 0.000 description 12
- 230000006870 function Effects 0.000 description 9
- 230000003068 static effect Effects 0.000 description 9
- 238000013461 design Methods 0.000 description 8
- 238000004422 calculation algorithm Methods 0.000 description 7
- 230000000694 effects Effects 0.000 description 4
- 238000004364 calculation method Methods 0.000 description 3
- 230000004931 aggregating effect Effects 0.000 description 2
- 238000004590 computer program Methods 0.000 description 2
- 238000005516 engineering process Methods 0.000 description 2
- 230000003287 optical effect Effects 0.000 description 2
- 238000005192 partition Methods 0.000 description 2
- 238000006467 substitution reaction Methods 0.000 description 2
- 235000019800 disodium phosphate Nutrition 0.000 description 1
- 230000003370 grooming effect Effects 0.000 description 1
- 239000013307 optical fiber Substances 0.000 description 1
- 230000008520 organization Effects 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
- 239000007787 solid Substances 0.000 description 1
Images
Classifications
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D30/00—Reducing energy consumption in communication networks
- Y02D30/70—Reducing energy consumption in communication networks in wireless communication networks
Landscapes
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本申请公开了一种基于节点与IP地址的路由扩散模拟方法及装置,涉及通信领域,能够解决现阶段网络路由模拟方案中运算量较大、运算效率低下,且应用场景不足的问题。包括:根据节点的序号,确定下一跳矩阵;其中,节点用于模拟域内的设备,下一跳矩阵用于模拟域内路由的设备至设备层面;确定可达地址映射列表,可达地址映射列表用于表征域内的节点与节点可达的IP地址之间的映射关系、以及节点与可达的IP地址之间可达路由的度量值;根据下一跳矩阵和可达地址映射列表,模拟域内路由。本申请用于网络路由模拟仿真。
Description
技术领域
本申请涉及通信领域,尤其涉及一种基于节点与IP地址的路由扩散模拟方法及装置。
背景技术
网络架构设计对于运营商来说意义重大。其中,网络路由模拟仿真是大型网络架构设计的重要辅助手段,用于进行不同网络路由设计方案之间的对比,从而找出承载效率更高、负载分配更均衡、容灾能力更好的网络路由拓扑。从网络架构设计层面来看,在进行网络路由模拟时通常要解决的问题是,如何进行更好的流量疏导,获取网络中最优的路由拓扑设计,而并非是尽可能高度还原真实网络运行情况。
而现阶段常用的网络路由模拟仿真方案,绝大多数是尽可能高的还原网络,并没有高度将网络路由抽象化。由于现阶段方案普遍大量还原了网络运行细节,因而运行起来会同时运算着网络设计者并不关注的数据,使得运算量巨大,运算效率不高。另外少量的现有网络路由模拟仿真方案,没有将尽可能高的还原网络作为目标,而是采用图论中最短路径算法进行模拟,则导致无法针对路由技术中特有场景进行网络路由模拟,如针对静态路由、缺省路由、聚合路由或网络互联协议(Internet Protocol,IP)最长前缀匹配这些问题时,针对中间系统到中间系统(Intermediate system to intermediate system,ISIS)的多域场景、ISIS的等级1(Level 1,L1)和等级2(Level 2,L2)分级这些问题时,都无法进行模拟。
发明内容
本申请提供一种基于节点与IP地址的路由扩散模拟方法及装置,用以解决现阶段网络路由模拟方案中运算量较大、运算效率低下,且应用场景不足的问题。
为达到上述目的,本申请采用如下技术方案:
第一方面,本申请提供一种路由扩散模拟方法,包括:根据节点的序号,确定下一跳矩阵;其中,所述节点用于模拟域内的设备,所述下一跳矩阵用于模拟域内路由的设备至设备层面。确定可达地址映射列表,所述可达地址映射列表用于表征域内的节点与所述节点可达的IP地址之间的映射关系、以及所述节点与所述可达的IP地址之间可达路由的度量值。根据所述节点和所述可达地址映射列表,模拟域内路由。
基于上述技术方案,本申请中由于下一跳矩阵中的度量值直接选取IGP路由表中节点之间路由的最低参数,且可达地址映射列表省去了各节点IP地址对路由模拟的影响,使得本申请的技术方案相较于现阶段的模拟方法,能够在模拟过程中脱离IGP路由表并省去IP地址影响的同时,具备运算量较低、运算效率高的优点。同时,由于路由扩散模拟表能够针对ISIS的多域场景和分级场景,来具体对节点之间的ISIS邻居关系进行区分,使得本申请实施例能够应对针对ISIS的多域场景和分级场景的特殊场景,应用范围较广,实用性较高。
第二方面,本申请提供一种路由扩散模拟装置,该路由扩散模拟装置包括:处理单元。处理单元,用于根据节点的序号,确定下一跳矩阵;其中,节点用于模拟域内的设备,下一跳矩阵用于模拟域内路由的设备至设备层面.处理单元,还用于确定可达地址映射列表,可达地址映射列表用于表征域内的节点与节点可达的IP地址之间的映射关系、以及节点与可达的IP地址之间可达路由的度量值.处理单元,还用于根据节点和可达地址映射列表,模拟域内路由。
此外,第二方面所述的路由扩散模拟方法的技术效果可以参考上述第一方面所述的路由扩散模拟方法的技术效果,此处不再赘述。
第三方面,本申请提供一种存储一个或多个程序的计算机可读存储介质,该一个或多个程序包括指令,上述指令当被本申请的电子设备执行时使电子设备执行如第一方面和第一方面的任一种可能的实现方式中所描述的路由扩散模拟方法。
第四方面,本申请提供一种电子设备,包括:处理器以及存储器;其中,存储器用于存储一个或多个程序,一个或多个程序包括计算机执行指令,当电子设备运行时,处理器执行存储器存储的计算机执行指令,以使电子设备执行如第一方面和第一方面的任一种可能的实现方式中所描述的路由扩散模拟方法。
第五方面,本申请提供一种包含指令的计算机程序产品,当该指令在计算机上运行时,使得本申请的电子设备执行如第一方面和第一方面的任一种可能的实现方式中所描述的路由扩散模拟方法。
第六方面,本申请提供一种芯片系统,该芯片系统应用于路由扩散模拟装置;所述芯片系统包括一个或多个接口电路,以及一个或多个处理器。所述接口电路和所述处理器通过线路互联;所述接口电路用于从所述路由扩散模拟装置的存储器接收信号,并向所述处理器发送所述信号,所述信号包括所述存储器中存储的计算机指令。当所述处理器执行所述计算机指令时,所述路由扩散模拟装置执行如第一方面及其任一种可能的设计方式所述的路由扩散模拟方法。
附图说明
图1为现有ISIS协议的网络分层结构示意图;
图2为本申请的实施例提供的一种路由扩散模拟方法的流程示意图;
图3为本申请的实施例提供的一种基于节点号的下一跳矩阵的示意图;
图4为本申请的实施例提供的一种下一跳矩阵的扩散示意图;
图5为本申请的实施例提供的另一种基于节点号的下一跳矩阵的示意图;
图6为本申请的实施例提供的另一种路由扩散模拟方法的流程示意图;
图7为本申请的实施例提供的一种路由节点的拓扑关系示意图;
图8为本申请的实施例提供的另一种基于节点号的下一跳矩阵的示意图;
图9为本申请的实施例提供的一种路由示意图;
图10为本申请的实施例提供的另一种路由节点的拓扑关系示意图;
图11为本申请的实施例提供的另一种路由示意图;
图12为本申请的实施例提供的一种路由扩散模拟装置的结构示意图;
图13为本申请的实施例提供的另一种路由扩散模拟装置的结构示意图。
具体实施方式
下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其它实施例,都属于本申请保护的范围。
本文中字符“/”,一般表示前后关联对象是一种“或者”的关系。例如,A/B可以理解为A或者B。
本申请的说明书和权利要求书中的术语“第一”和“第二”是用于区别不同的对象,而不是用于描述对象的特定顺序。例如,第一边缘服务节点和第二边缘服务节点是用于区别不同的边缘服务节点,而不是用于描述边缘服务节点的特征顺序。
此外,本申请的描述中所提到的术语“包括”和“具有”以及它们的任何变形,意图在于覆盖不排他的包含。例如包含了一系列步骤或单元的过程、方法、系统、产品或设备没有限定于已列出的步骤或单元,而是可选地还包括其他没有列出的步骤或单元,或可选地还包括对于这些过程、方法、产品或设备固有的其它步骤或单元。
另外,在本申请实施例中,“示例性的”、或者“例如”等词用于表示作例子、例证或说明。本申请中被描述为“示例性的”或“例如”的任何实施例或设计方案不应被解释为比其它实施例或设计方案更优选或更具优势。确切而言,使用“示例性的”、或者“例如”等词旨在以具体方式呈现概念。
中间系统到中间系统(Intermediate system to intermediate system,ISIS)是一种内部网关协议,是电信运营商普遍采用的内部网关协议之一。标准的ISIS协议是由国际标准化组织制定的ISO/IEC 10589:2002所规范的。
如图1所示,ISIS采用2级分层结构。路由区域被分为多个子区域和骨干区域,子区域内通过L1路由节点进行管理,子区域之间路由通过L2路由节点进行管理。需要说明,每个子区域内的出口路由节点(也即用于与其他骨干区域相连的路由节点)为L1/L2路由节点。
以上,对本申请涉及到的一些技术术语进行了介绍。
现阶段,IGP协议制定的核心思路都是基于最短距离算法,例如迪克斯特拉(Dijkstra)算法、佛洛依德(Floyd)算法。在此情况下,路由器设备中对于这些IGP路由的路由表,通常是以路由条目为单位。其中,每个路由条目主要包括以下几项:目标(Destination)、下一跳(next hop)、出接口(out interface)、度量值(metric)。同时,每个路由设备还具有其可达的IP条目信息,包括:IP地址、掩码、节点与IP地址之间的抵达的度量值。
基于上述IGP协议现状,现有技术中对于IGP路由的模拟仿真主要有两大方案。一种是以Dijkstra算法为基础的仿真方案,借助图论中的抽象形式将设备抽象为节点,利用度量值构建邻接关系矩阵,从而模拟IGP协议中对于最短路径的计算。然而,由于该种方案中设备的抽象是基于数学中的图论理论,因此该种方案在针对大部分路由技术中的特有设置时,有无法兼容的问题,例如静态路由、缺省路由、IP最长前缀等问题。此外,图论相关算法中的矩阵迭代模式无法省去有关IP地址的考量,使得矩阵变换过程较为繁琐,运算量大。
另一种方案是以路由表为基础的仿真思路,通常构建较为完整的IGP路由表,包括网际互连协议(internet protocol,IP)地址、中间系统到中间系统(intermediate systemto intermediate system,ISIS)的网络实体名称、ISIS的等级level-1/level-2、开放式最短路径优先(Open Shortest Path First,OSPF)的区域等多种数据。然而,路由表过多的数据,导致模拟过程中参与计算的数据量过大,使得运算量大幅上升。
因此,为解决上述现有技术中在对IGP路由进行模拟时,不能兼顾静态路由、缺省路由、IP最长前缀匹配等特定路由情形,以及ISIS多域分级场景和运算效率的问题,本申请提供一种基于节点与IP地址的路由扩散模拟方法。
本申请中,首先根据节点与节点可达的IP地址,建立可达地址映射列表,由此在之后的路由扩散模拟的迭代矩阵变换中,只基于节点的编号,而不再有IP地址的参与,以精简模拟过程,提高运算效率。在此之后,根据路由设备之间的IGP邻居关系,以及邻居关系的类型,建立路由扩散关系表。再构建下一跳矩阵用于模拟IGP路由表中的路由条目。构建下一跳矩阵时,矩阵元素中的信息包括当前节点至目的节点的下一跳节点、当前节点的出接口、以及对应的度量值。由此,通过对下一跳矩阵进行迭代的矩阵变换,实现对路由扩散的模拟,应用范围广且运算效率高。
本申请中路由扩散模拟方法的执行主体是路由扩散模拟装置,该路由扩散模拟装置可以是用于模拟路由扩散的电子设备,也可以是电子设备中的中央处理器(centralprocessing unit,CPU),还可以是电子设备中用于进行路由扩散模拟的客户端。本申请实施例以电子设备作为路由扩散模拟装置来执行路由扩散模拟方法为例,对本申请提供的路由扩散模拟方法进行说明。
下面结合说明书附图,对本申请所提供的技术方案进行具体阐述。
实施例一:
为了解决现有技术方案中,在对IGP路由进行模拟时,不能兼顾静态路由、缺省路由、IP最长前缀匹配等特定路由情形,以及ISIS多域分级场景和运算效率的问题,本申请实施例提供一种路由扩散模拟方法。如图2所示,本申请实施例提供的路由扩散模拟方法包括以下步骤:
S101、路由扩散模拟装置根据节点的序号,确定下一跳矩阵。
其中,节点用于模拟域内的设备,下一跳矩阵用于模拟域内路由的设备至设备层面。
示例性的,如图3所示,下一跳矩阵中的元素Hs,d表示以第s个节点为源节点,以第d个节点为目标节点时,第s个节点与第d个节点之间的最优路由的下一跳节点、第s个节点的出接口、以及此路由条目的度量值。需要指出,最优路由为第s个节点与第d个节点之间度量值最小的路由。示例性的,下一跳矩阵中每个元素具体设置为{下一跳节点编号,出接口编号,度量值}。
需要指出,下一跳矩阵可以是N×N或N×(N+1)维矩阵,N为待模拟网络中的节点数量。示例性的,当下一跳矩阵是N×(N+1)维矩阵时,是由于第0列元素用于表示目标路由节点为缺省路由。可以理解,若待模拟网络中不存在缺省路由,则可以将表示目标路由节点为缺省路由的第0列元素设为空,此时下一跳矩阵为N×N维的矩阵。
可选的,以下一跳路由路由矩阵为N×(N+1)维为例,扩散模拟装置对下一跳矩阵的确定包括以下步骤:
(1)根据所述节点的数量N,构建N×(N+1)维的下一跳矩阵,将行号与列号相等的元素的初始参数设为{行号,0,0},其余元素的初始参数设为空{空,空,∞}。
(2)在节点s与节点d之间存在直连路由关系的情况下,则将初始下一跳矩阵中元素Hs,d的参数,修改为{d,直连出接口编号,直连路由的度量值},将修改后的初始下一跳矩阵确定为下一跳矩阵。
需要说明的是,当节点s存在缺省路由时,将元素Hs,0的内容修改为缺省路由的下一跳节点、出接口和度量值。
以上对路由扩散模拟装置确定下一跳矩阵的方法进行了说明。
可选的,若两个路由节点之间存在静态路由配置,则这两个节点之间的静态路由可以不参与步骤S103中的路由节点的模拟。具体来说,若节点s和节点d之间配置有静态路由,则下一跳矩阵中的元素Hs,d的参数设为节点s与节点d之间静态路由的下一跳节点、出接口以及静态路由对应的度量值。
S102、路由扩散模拟装置确定可达地址列表。
其中,可达地址列表用于表征域内的节点与节点可达的IP地址之间的映射关系,以及节点与此可达的IP地址的度量值。
可以理解,路由扩散模拟装置根据节点与节点可达的IP地址,建立可达地址列表,由此在之后的路由扩散模拟的迭代矩阵变换中,只基于节点的编号,而不再基于IP地址,以精简模拟过程。在对模拟结果进行选路时,只要针对目标IP地址,查询可达地址列表,即可获知该目标IP地址对应的节点,进而在模拟结果中查询到最优的路由。
示例性的,下表1示出了本实施例中一种可达地址列表的格式。
表1可达地址列表
需要说明的是,在上表1中,度量值选取为metric值。需要指出,度量值的表现形式不局限于metric一种,本申请下述实施例仅以metric的形式来进行示例性的说明,不代表度量值只有metric这一种表现形式。具体对于度量值的表现形式,本申请实施例不做限定。
S103、路由扩散模拟装置根据路由扩散关系信息,对下一跳矩阵进行迭代矩阵变换,以模拟域内路由的扩散。
在一种可能的实现方式中,步骤S103具体包括以下步骤:
S1031、路由扩散模拟装置确定路由扩散关系信息。
其中,路由扩散关系信息用于模拟路由协议中节点之间的邻居关系,邻居关系包括当前节点的对端邻居节点和此对端邻居节点的路由类型。
需要说明的是,路由类型能够体现在ISIS多域多级结构中,一对路由邻居节点的分级。
示例性的,路由扩散模拟装置通过扩散关系表,来确定路由扩散关系信息,如下表2所示:
表2扩散关系表
如上表2所示,模拟ISIS对于区域的划分和L1、L2功能的划分,构建扩散关系表,用于控制节点间的路由扩散。
具体的,节点可以具有等级标记其L1、L2、L1/2类型,用于模拟设备在ISIS协议中的Level类型;
进一步的,节点可以具有区域标记其所属区域,用于模拟设备在ISIS协议中的所属Area信息;
进一步的,路由扩散关系信息可以具有等级标记其L1、L2类型,用于模拟ISIS协议中邻居关系中的Level类型;其中,扩散关系的等级标记,可以由外部导入,也可以根据节点的所属等级标记进行判别,具体参照ISIS协议。
可选的,拓扑相连的两节点,可形成邻居关系,邻居关系分为L1邻居和L2邻居。示例性的,邻居关系的Level类型的具体判断流程如下:
(1)若两邻居节点属于同一区域(相同Area ID),且都有L1等级(L1或L1/L2),则该两节点为L1邻居;
(2)若两邻居节点都有L2等级(L2或L1/L2),则该两节点为L2邻居,不论其是否属于同区域(不关注Area ID);
(3)纯L1节点与纯L2节点,不构成邻居关系;
(4)两节点间若同时满足L1邻居和L2邻居,则将其定为L2邻居。
S1032、路由扩散模拟装置根据路由扩散关系信息,对下一跳矩阵进行迭代矩阵变换,模拟域内路由的扩散。
如图4所示,通过扩散关系解决ISIS的多Area和L1/L2问题,使得待模拟网络能够使用同一个下一跳矩阵,而无需由于多Area问题使用多个下一跳矩阵。
具体的,对于L1邻居的扩散,如图左侧,仅扩散目标节点同为本区域内节点的相关路由,而不扩散目标节点为本区域外节点的相关路由;
进一步的,对于L2邻居的扩散,如图右侧,扩散所有目标节点的相关路由,而不限定目标节点是否位于同区域。
由此,实现由下一跳矩阵模拟域内的设备的域内路由信息;其中,域内路由信息为设备至设备之间的最短路由的信息。
在一种可能的实现方式中,根据扩散标识对下一跳矩阵进行矩阵变换。其中,扩散标识用于表征每个元素是否参与本次矩阵变换。示例性的,若扩散标识的参数为0,则表征下一跳矩阵中的元素不参与本次矩阵变换;若扩散标识的参数为1,则表征下一跳矩阵中的元素参与本次矩阵变换;若扩散标识的参数为2,则表征下一跳矩阵中的元素参与下一次矩阵变换。
在一种可能的实现方式中,路由扩散模拟装置在确定迭代矩阵变换结束后,输出当前下一跳矩阵,作为模拟结果。
可选的,若在一次矩阵变换之后,下一跳矩阵中所有元素对应的扩散标识的参数皆为0,则路由扩散模拟装置确定矩阵变换结束。可以理解,当下一跳矩阵中所有元素对应的扩散标识的参数为0,则表示待模拟网络中已经不存在能够继续扩散的新路由。此时,路由扩散模拟装置将当前的下一跳矩阵输出,作为路由扩散模拟结果。
基于上述技术方案,本申请中路由扩散模拟装置确定可达地址映射列表,由此后续对路由扩散的模拟中省去对IP地址的考量,之后,路由扩散模拟装置确定路由扩散关系信息,根据节点的序号和路由扩散关系信息构建下一跳矩阵,并对下一跳矩阵进行迭代矩阵变换,以模拟待模拟网络中路由条目的扩散。由于下一跳矩阵中的度量值直接选取IGP路由表中节点之间路由的最低参数,且可达地址映射列表省去了各节点IP地址对路由模拟的影响,使得本申请的技术方案相较于现阶段的模拟方法,能够在模拟过程中脱离IGP路由表并省去IP地址影响,使本方案具备运算量较低、运算效率高的优点。同时,由于路由扩散模拟表能够针对ISIS的多域场景和分级场景,因而相比于当前基于图论中最短路径算法的模拟方案,使得本申请实施例能够应对ISIS的多域场景和分级场景的特殊场景,应用范围较广,实用性较高。
实施例二:
示例性的,针对ISIS中L1的缺省路由问题,本申请提供的路由扩散模拟方法还包括:
标准ISIS中由于L1节点仅知道本区域内链路(仅有L1 LSDB,而没有跨域的L2LSDB),因而对域外的目标IP,若L1路由发现不可达,L1节点会将其路由到最近的L1/L2节点。在实际实现中,设备是通过让L1/L2节点生成缺省路由的方式,将缺省路由扩散入L1中,从而将不可达流量全部引向最近的L1/L2节点。本申请中也通过缺省路由的思路仿真此情况。
具体的,构建“基于节点号的下一跳矩阵”时,目标节点额外构建第0列,用于表示缺省路由,也即此时下一跳矩阵为N×(N+1)维矩阵。
进一步的,在路由扩散结束后,对于各L1节点,将所在区域内metric最低的L1/L2出口路由复制到缺省路由列。
如图5所示,利用“基于节点号的下一跳矩阵”的第0列表示缺省路由。
需要说明的是,缺省路由的处理,仅对于当前节点(也即矩阵中行号表示的节点)为纯L1节点时进行,并且仅用于仿真区域出口L1/L2设备启动了生成缺省路由的场景。
需要指出,对于纯L1节点所在行,将目标节点(也即矩阵中列号表示的节点)为本区域内L1/L2节点的路由条目,复制到缺省路由中;若此区域中有多个L1/L2节点,则在逐个复制至缺省路由时,仅保留最低metric对应的缺省路由,在metric相等时应合并为等价路由。
实施例三:
结合实施例一,如图6所示,本申请提供的路由扩散模拟方法中还包括:IP路由仿真被分割成IP与节点号两部分,从而每个节点在执行基于IP的路由选路时,也分割成为两个步骤:
S201、根据目标IP(也即IP地址+掩码),在可达地址列表中,查询此目标IP对应的节点号,作为目标节点号。
其中,在根据目标IP查询目标节点时,允许查询到多个目标节点都可达此目标IP,此时根据以下规则处理:
规则1:当多个目标节点中有与当前节点同区域的节点时,去除所有非同区域的目标节点;
规则2:若无同区域的目标节点,当多个目标节点中有L1/L2节点或L2节点时,去除所有纯L1的目标节点;
规则3:经过上述两条规则判别后,若还存在多个目标节点,则按照IP的最长前缀匹配规则优选,即剔除所有非最大掩码对应的目标节点;
规则4:在经过上述三条规则判别后,若还存在多个目标节点,则多个目标节点都将可选的目标节点。即虽然可达地址列表中记录有metric,但并不在S201中进行metric对比。
S202、根据目标节点号,在下一跳矩阵中,以当前节点号为矩阵行号,以目标节点号为矩阵列号,查询下一跳信息,包括:下一跳节点、当前节点的出接口和对应的metric。
可选的,若步骤S201的结果是多个目标节点,则步骤S202执行时是分别针对多个目标节点查询下一跳矩阵,所得结果合并形成多条路由条目,并根据以下规则处理:
规则1:对于每一条路由,将S201中得到的此目标节点对应的metric,叠加查询下一跳矩阵得到的节点至节点的metric,两者之和作为本条路由的metric;
规则2:对于多条路由条目,根据上述每条路由的叠加metric,得到最低metric,剔除非最低metric对应的路由条目;
规则3:经过上述两条规则判别后,若还存在多条路由条目,则将作为等价路由进行处理,流量将进行复杂分担。
S203、对于每个节点,重复执行前述步骤S201和S202,其中步骤S202得到的下一跳,作为下一个节点,循环直至到达步骤S201中得到的目标节点。
需要指出,在循环执行步骤S201和步骤S202时,如果本次循环的当前节点与上一次循环的当前节点属于同一区域,则本次循环可以跳过步骤S201,直接采用上一次循环中S201的结果。
实施例四:
结合实施例一,本申请提供的路由扩散模拟方法,还能够在每个节点上宣告本节点的可达IP条目,L1/L2节点作为一个区域的出口,可以将本区域内的可达IP进行聚合,然后以聚合IP的形式作为在本节点的可达IP进行宣告。
应理解,L1/L2节点在生成聚合IP时,也有对应的metric。此metric可以采用被聚合的多个IP的最低metric,也可以人为重置为一个指定值。
当存在聚合IP时,在选路过程会分为以下2个阶段:
(1)阶段一:此阶段为跨区域阶段。从源节点路由到目标IP所在区域的L1/L2出口节点。对于与目标IP不处在同一区域的源节点而言,由于上述步骤S201中的规则2,将使得优选到生成聚合IP的L1/L2节点,而并不会基于上述步骤S201中的规则3的最长前缀匹配,被优选到实际IP所在的纯L1节点。
(2)阶段二:此阶段为区域内阶段。从目标IP所在区域的L1/L2出口节点到目标IP实际所在节点。在到达目标IP所在区域的L1/L2出口节点之后,则会基于上述步骤S201中的规则3进行最长前缀匹配,从而选到实际IP所在的纯L1节点,而不再被将优选到生成聚合IP的L1/L2节点。
实施例五:
结合实施例一,如图7所示,本申请提供的一种路由节点的拓扑关系,在此拓扑关系中,存在节点1、节点2、节点3、节点4、节点5共五个路由节点。
其中,节点1、2、3、4同属于区域1,节点5属于另一骨干区域。节点1和节点2为路由子区域内部的纯L1路由设备,节点3和节点4为路由子区域的出口L1/L2路由设备,节点5为路由子区域外的L2路由设备。
此外,此拓扑关系中,可以设置缺省路由,该缺省路由用于使得纯L1节点(即节点1和节点2)通过缺省路由的方式抵达最近的L1/L2节点(也即节点3和节点4)。并且,对于一个纯L1节点,在路由扩散模拟结束之后,将该纯L1节点所在路由子区域内,与其路由中度量值最低的L1/L2节点的节点编号、出接口编号和对应的度量值作为缺省路由列(也即前文举例中的第0列)中对应的元素的参数。示例性的,通过L1/L2节点为节点1和节点2生成缺省路由,对于节点1来说,由于与节点1的路由最短的L1/L2节点是节点3,因此下一跳矩阵中标识缺省路由的元素H1,0的参数为{3,GE2,100}。同理,对于节点2来说,由于与节点2的路由最短的L1/L2节点是节点4,因此下一跳矩阵中标识缺省路由的元素H2,0的参数为{4,GE2,100}。
每个节点挂载有可达的IP地址网段。其中,节点1可达的IP地址网段为“10.0.0.0/30”,节点2可达的IP地址网段为“10.0.0.4/30”,节点3可达的IP地址网段为“10.0.1.0/30”,节点4可达的IP地址网段为“10.0.1.4/30”,节点5可达的IP地址网段为“10.0.10.0/30”,上述5个可达的IP地址网段的对应metric均为10。
此网络拓扑中有6条直连链路,且均启用了ISIS协议并配有metric:节点1的出接口GE1与节点2的出接口GE1直连,对应metric配为50;节点1的出接口GE2与节点3的出接口GE2直连,对应metric配为100;节点2的出接口GE2与节点4的出接口GE2直连,对应metric配为50;节点3的出接口GE1与节点4的出接口GE1直连,对应metric配为100;节点3的出接口GE3与节点5的出接口GE1直连,对应metric配为100;节点4的出接口GE3与节点5的出接口GE2直连,对应metric配为105。
下面结合实施例一和图7,对本申请中模拟域内路由的过程进行具体说明,步骤如下:
S301、路由扩散模拟装置确定五个节点的可达地址列表。
示例性的,本实施例中五个节点的可达地址列表如下表3所示:
表3可达地址列表
节点名称 | 可达IP地址网段 |
节点1 | 10.0.0.0/30,10 |
节点2 | 10.0.0.4/30,10 |
节点3 | 10.0.1.0/30,10 |
节点4 | 10.0.1.4/30,10 |
节点5 | 10.0.10.0/30,10 |
S302、路由扩散模拟装置根据网络拓扑,确定五个节点之间的路由扩散关系信息。
示例性的,采用路由扩散关系表的形式来表示路由扩散关系信息。易得图7中示出的五个节点之间的路由扩散关系表如表4所示:
表4路由扩散关系表
S303、路由扩散模拟装置确定下一跳矩阵。
示例性的,根据图7所示的网络拓扑,构建的基于节点号的下一跳矩阵如图8所示。其中,图8的上部分为初始状态的下一跳矩阵,下部分为路由扩散完成后且生成缺省路由后最终状态的下一跳矩阵。应理解,这里的下一跳矩阵完全是基于节点序号的,与IP地址无关,接口序号是用于区分链路。
示例性的,现有一报文位于节点5且目标IP地址为“10.0.0.1”,则本实施例在步骤S303之后,还包括以下步骤S304-S307。
S304、路由扩散模拟装置根据可达地址映射列表,确定目标IP地址对应的目标节点。
需要说明的是,当查询可达地址映射列表后存在多个节点与目标IP地址对应时,结合前述步骤中S201-S202中的规则,具体根据以下步骤S3041-S3043来进行目标节点的判断:
S3041、将目标IP地址对应的多个节点中,与源节点不属于同一区域的节点去除。
若经过步骤S3041后,IP地址仍旧对应多个节点,则执行步骤S3042。
S3042、将目标IP地址对应的多个节点中,属于纯L1节点的节点去除。
若经过步骤S3042后,IP地址仍旧对应多个节点,则执行步骤S3043。
S3043、根据IP地址的最长前缀匹配规则,将将目标IP地址对应的多个节点中,所有非最大掩码对应的节点去除。可以理解的是,若经过步骤S3043后,IP地址仍旧对应多个节点,则将这多个节点都确定为目标节点。需要指出,虽然此时存在多个目标节点,并且这些目标节点可能在可达地址映射列表中,与IP地址之间的可达地址具有不同的度量值,但是此处先不进行度量值的对比。这是由于,一个目标节点与IP地址之间的可达地址的度量值,与该目标节点与源节点之间的最优路由的度量值之间没有必然的联系,前述两个度量值相加后,才是判断源节点至目标IP地址最优路由的依据。
示例性的,对应前述举例,此时报文位于节点5且目标IP地址为“10.0.0.1”,以在图7示出的网络中进行路由查询为例。易知此时源节点为节点5,目标IP地址为“10.0.0.1”。查询表3可知,与目标IP地址“10.0.0.1”匹配的条目为“10.0.0.0/30,10”,相对应的目标节点为节点1。
S305、路由扩散模拟装置查询路由扩散模拟结果,确定源节点与目标节点之间最优路由的下一跳节点和出接口。
示例性的,对应于步骤S304中的举例,继续查询图8所示的下一跳矩阵可知,元素H5,1的参数为{3,GE1,200},即表明节点5至节点1之间最优路由中,下一跳节点为节点3,出接口为GE1。
由此,将此时的路径表示为:【5,GE1】→【3,-】。
可以理解的是,接下来的路由查询转换为节点3至节点1。
S306、路由扩散模拟装置判断下一跳节点与源节点是否属于同一路由子区域。
若下一跳节点与源节点属于不同区域,则需要对该下一跳节点重新执行步骤S304;
若下一跳节点与源节点属于同一区域,则直接再次重复执行步骤S305。
示例性的,对应于步骤S304-S305中的举例,易得本举例中节点3与节点5不属于同一区域,因此,针对节点3(即此时为查询节点3至节点1的路由,且目标IP地址为10.0.0.1)重新执行步骤S304。重新执行步骤S304的结果仍为:目标IP地址“10.0.0.1”对应的节点为节点1。
此时,以源节点为节点3且目标节点为节点1,重复步骤S305,确定节点3至节点1之间最优路由的下一跳节点和出接口。
查询图8可知,元素H3,1的参数为{1,GE2,100},即表明节点3至节点1之间最优路由中,下一跳节点为节点1,出接口为GE2。
由此,将此时的路径表示为:【5,GE1】→【3,GE2】→【1,-】。
此时,针对节点1,需要再次执行步骤S306,判断此时的下一跳节点(也即节点1)与节点3是否属于同一路由子区域。
需要说明的是,在下一跳节点为节点1,且目标节点也为节点1的情况下,仍旧针对节点1执行步骤S306,是因为:由于可能存在聚合IP的场景,且本次查询最终的目的是获取节点5至目标IP地址之间的最优路径,因此,下一跳节点为目标节点不代表当前路径已经到达最终的目标IP地址,经过步骤S304的重复,目标节点可能会发生改变。
S307、若当前源节点与目标节点相同,则路由扩散模拟装置确定查询结束,输出当前路由并将其确定为源节点与目标IP地址之间的最优路由。
示例性的,对应于步骤S304-S306中的举例,针对节点1,再次执行步骤S306后,判断节点1与节点3属于同一区域。因此之后执行步骤S305,当前节点1即为目标节点1,路由的查询完成。
由此,最终的路径如图9所示,具体为:【5,GE1】→【3,GE2】→【1,10.0.0.1】。即节点5至目标IP地址“10.0.0.1”的最优路径为节点5的GE1→节点3的GE2→节点1的可达地址10.0.0.1。
需要强调的是,若在步骤S304中确定出多个目标节点,则在查询结束后,会存在多个查询结果(也即多条路由结果)。此时,将每条路由结果的整体的度量值,与目标IP与该路由结果对应的目标节点之间的可达地址的度量值,进行相加。最终获取查询结果对应的源节点与目标IP地址之间每条路由的总度量值,将总度量值最小的路由确定为最优路由。可以理解,若在前述总度量值的对比中,存在总度量值相同的路由,则将这些总度量值相同的路由,皆确定为源节点与目标IP地址的最优路由。
以上结合网络拓扑举例,对本申请中模拟域内路由的过程进行了说明。
实施例六:
示例性的,结合实施例一与图7,如图10所示,本申请提供另一种路由扩散模拟方法,能够对待模拟网络中存在的聚合路由情况进行模拟,本实施例具体包括以下步骤:
在本实施例中,节点之间的拓扑关系如图10所示,节点之间路由的度量值和节点的类型不变。与实施例五产生区别的是,节点3和节点4作为路由子区域的出口节点,配置有聚合IP地址的功能。也即,节点3和节点4能够将可达IP地址“10.0.0.0/30”和“10.0.0.4/30”聚合为“10.0.0.0/24”。
S401、路由扩散模拟装置确定路由子区域中,L1/L2节点的可达聚合IP地址。
可选的,结合图10,节点3与节点4为路由子区域中的出口节点,也即L1/L2节点。路由扩散模拟装置为节点3和节点4配置聚合路由,也即此时节点3和节点4具备聚合IP地址“10.0.0.0/24”。此时,节点3根据被配置的聚合路由功能,能够将节点1的可达IP地址“10.0.0.0/30”聚合为“10.0.0.0/24”,且将节点2的可达IP地址“10.0.0.4/30”聚合为“10.0.0.0/24”。
S402、路由扩散模拟装置确定L1/L2节点与可达聚合IP地址之间的度量值。
可选的,对于节点3,其聚合了路由子区域内的IP地址“10.0.0.0/30”和“10.0.0.4/30”。根据图8,分别对源节点为节点3,目标IP地址为“10.0.0.0/30”和“10.0.0.4/30”的最优路由的度量值进行查询。此处所用的路由查询方法如上文S304至S306所述,在此不再赘述。
进一步的,由图8查询到节点3至目标IP地址“10.0.0.0/30”的最优路由的度量值为110,节点3至目标IP地址“10.0.0.4/30”的最优路由的度量值为160。在此之后,路由扩散模拟装置将节点3至目标IP地址“10.0.0.0/30”的最优路由的度量值110,确定为节点3与可达聚合IP地址“10.0.0.0/24”之间的度量值。
同理,路由扩散模拟装置将节点4至目标IP地址“10.0.0.4/30”的最优路由的度量值110,确定为节点4与可达聚合IP地址“10.0.0.0/24”之间可达的度量值。
可选的,路由扩散模拟装置也可对节点3或节点4与可达聚合IP地址之间的可达地址的度量值进行人为预设,设置为一个指定数值。
S403、路由扩散模拟装置对可达地址列表进行更新。
示例性的,结合前述步骤S301,路由扩散模拟装置将表3更新为表5:
表5根据聚合路由更新后的可达地址映射列表
示例性的,现有一报文位于节点5且目标IP地址为“10.0.0.1”,本实施例在步骤S403之后具体包括以下步骤S404-S407:
S404、路由扩散模拟装置根据可达地址映射列表,确定目标IP地址对应的目标节点。
需要说明的是,当查询可达地址映射列表后存在多个节点与目标IP地址对应时,根据以下步骤S4041-S4043来进行目标节点的判断:
S4041、将目标IP地址对应的多个节点中,与源节点不属于同一区域的节点去除。
若经过步骤S4041后,IP地址仍旧对应多个节点,则执行步骤S4042。
S4042、将目标IP地址对应的多个节点中,属于纯L1节点的节点去除。
若经过步骤S4042后,IP地址仍旧对应多个节点,则执行步骤S4043。
S4043、根据IP地址的最长前缀匹配规则,将将目标IP地址对应的多个节点中,所有非最大掩码对应的节点去除。
示例性的,现有一报文位于节点5且目标IP地址为“10.0.0.1”,以在图10示出的网络中进行路由查询为例。易知此时源节点为节点5,目标IP地址为“10.0.0.1”。查询根据聚合路由更新后的可达地址映射列表5可知,与目标IP地址“10.0.0.1”匹配的条目为节点1与其可达的“10.0.0.0/30,10”、节点3与其可达的“10.0.0.0/24,110”、以及节点4与其可达的“10.0.0.0/24,110”。由于节点5与节点1、3、4不在同一区域并且节点1为纯L1节点,因此经过步骤S404后,剩下条目节点3与其可达的“10.0.0.0/24,110”、以及节点4与其可达的“10.0.0.0/24,110”,即此时目标节点有两个,分别为节点3和节点4。
S405、路由扩散模拟装置查询路由扩散模拟结果,确定源节点与目标节点之间最优路由的下一跳节点和出接口。
若确定的下一跳节点和出接口为多个(也即目标节点为多个),则执行步骤S406;
若确定的下一跳节点和出接口为1个(也即目标节点为1个),则执行步骤S407。
示例性的,对应于步骤S404中的举例,继续查询图8可知,元素H5,3和元素H5,4的参数为{3,GE1,100}和{4,GE2,105},结果为多个,则执行后续步骤S406。
S406、路由扩散模拟装置将源节点与下一跳节点之间度量值最小的路由,确定为最优路由。
示例性的,对应于步骤S405中的举例,两条路径对应的元素为元素H5,3和元素H5,4的参数为{3,GE1,100}和{4,GE2,105},元素H5,3对应的路由的度量值为110+100=200,元素H5,4对应的路由的度量值为110+105=200,因此将元素H5,3对应的路由确定为最优路由,继续执行后续步骤。
由此,此时的路由为:【5,GE1】→【3,-】。
S407、路由扩散模拟装置判断下一跳节点与源节点是否属于同一路由子区域。
若下一跳节点与源节点属于不同区域,则需要对该下一跳节点重新执行步骤S404;
若下一跳节点与源节点属于同一区域,则直接再次重复执行步骤S405。
示例性的,对应于步骤S404-S406中的举例,由于节点3与节点5属于不同区域,因此对节点3执行步骤S404。具体的,查询表5后,匹配的条目为节点1和与其对应的“10.0.0.0/30,10”、节点3和与其对应的“10.0.0.0/24,110”、以及节点4和与其对应的“10.0.0.0/24,110”。经过步骤S4041至S4043后,S4043将非最大掩码的节点3和与其对应的“10.0.0.0/24,110”、以及节点4和与其对应的“10.0.0.0/24,110”去除。此时只剩下条目节点1和与其对应的“10.0.0.0/30,10”,因而得到节点3与目标IP地址为“10.0.0.1”的路由对应的下一跳节点为节点1。
进一步的,再次执行步骤S405:针对节点3至节点1的路由,查询图8可知,元素H3,1为{1,GE2,100},即当前下一跳节点变为节点1。进一步的,再次执行步骤S406。
S408、若当前源节点与目标节点相同,则路由扩散模拟装置确定查询结束,输出当前路由并将其确定为源节点与目标IP地址之间的最优路由。
示例性的,对应于步骤S404-S407中的举例,由于节点1与节点3属于同一区域,因此直接再次执行步骤S405即可,确定当前的下一跳节点和目标节点都为节点1,因此路由的查询流程结束。
由此,最终的路径如图11所示,具体为:【5,GE1】→【3,GE2】→【1,10.0.0.1】。即节点5至目标IP地址“10.0.0.1”的最优路径为节点5的GE1→节点3的GE2→节点1的可达地址10.0.0.1。
以上针对如何在本申请实施例的路由扩散模拟结果中,存在聚合路由的情况时,对某节点至某IP地址之间的最优路由进行查询进行了说明。
本申请实施例可以根据上述方法示例对路由扩散模拟装置进行功能模块或者功能单元的划分,例如,可以对应各个功能划分各个功能模块或者功能单元,也可以将两个或两个以上的功能集成在一个处理模块中。上述集成的模块既可以采用硬件的形式实现,也可以采用软件功能模块或者功能单元的形式实现。其中,本申请实施例中对模块或者单元的划分是示意性的,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式。
示例性的,如图12所示,为本申请实施例所涉及的一种路由扩散模拟装置的一种可能的结构示意图。该路由扩散模拟装置500包括:处理单元501。
处理单元501,用于根据节点的序号,确定下一跳矩阵。
处理单元501,还用于确定可达地址映射列表。
处理单元501,还用于根据下一跳矩阵和可达地址映射列表,模拟域内路由。
可选的,处理单元501,还用于确定数据包或数据流的当前所在设备对应的当前节点。
可选的,处理单元501,还用于根据数据包或数据流的目标IP地址和可达地址映射表,确定目标节点和目标节点与目标IP地址之间可达路由的度量值。
可选的,处理单元501,还用于根据下一跳矩阵、当前节点和每一个目标节点,确定当前节点至目标节点的最优节点路由。
可选的,处理单元501,还用于根据可达地址映射表和下一跳矩阵,确定每一条最优节点路由对应的数据包或数据流当前所在设备至目标IP的总度量值。
可选的,处理单元501,还用于将总度量值最小的最优节点路由,确定为最终选路结果。
可选的,处理单元501,还用于根据下一跳矩阵模拟域内的设备的域内路由信息。
可选的,处理单元501,还用于根据下一跳矩阵的迭代矩阵变换,模拟域内路由的扩散
可选的,处理单元501,还用于根据路由扩散关系信息,确定下一跳矩阵中待扩散元素的扩散目标元素
可选的,处理单元501,还用于将下一跳矩阵中的待扩散元素,向每个扩散目标元素进行扩散。
可选的,处理单元501,还用于根据节点的等级标记,模拟设备在中间系统到中间系统ISIS协议中的等级Level类型。
可选的,处理单元501,还用于根据节点的区域标记,模拟设备在ISIS协议中的所属区域信息。
可选的,处理单元501,还用于根据路由扩散关系信息中包括的等级标记,模拟ISIS协议中邻居关系的Level类型。
可选的,处理单元501,还用于根据L1/2类型的节点的区域标记,确定相同区域内与其他L1类型的节点的最优路由。
可选的,处理单元501,还用于根据指定的掩码长度,为L1/2类型的节点生成聚合路由。
可选的,路由扩散模拟装置500还可以包括存储单元(图12中以虚线框示出),该存储单元存储有程序或指令。当处理单元501执行该程序或指令时,使得路由扩散模拟装置可以执行上述方法实施例所述的路由扩散模拟方法。
此外,图12所述的路由扩散模拟装置的技术效果可以参考上述实施例所述的路由扩散模拟方法的技术效果,此处不再赘述。
示例性地,图13为上述实施例中所涉及的路由扩散模拟装置的又一种可能的结构示意图。如图13所示,路由扩散模拟装置600包括:处理器602。
其中,处理器602,用于对该路由扩散模拟装置的动作进行控制管理,例如,执行上述处理单元501执行的步骤,和/或用于执行本文所描述的技术方案的其它过程。
上述处理器602可以是实现或执行结合本申请内容所描述的各种示例性的逻辑方框,模块和电路。该处理器可以是中央处理器,通用处理器,数字信号处理器,专用集成电路,现场可编程门阵列或者其他可编程逻辑器件、晶体管逻辑器件、硬件部件或者其任意组合。其可以实现或执行结合本申请公开内容所描述的各种示例性的逻辑方框,模块和电路。所述处理器也可以是实现计算功能的组合,例如包含一个或多个微处理器组合,DSP和微处理器的组合等。
可选地,路由扩散模拟装置600还可以包括通信接口603、存储器601和总线606。其中,通信接口603用于支持路由扩散模拟装置600与其他网络实体的通信。存储器601用于存储该路由扩散模拟装置的程序代码和数据。
其中,存储器601可以是路由扩散模拟装置中的存储器,该存储器可以包括易失性存储器,例如随机存取存储器;该存储器也可以包括非易失性存储器,例如只读存储器,快闪存储器,硬盘或固态硬盘;该存储器还可以包括上述种类的存储器的组合。
总线604可以是扩展工业标准结构(Extended Industry StandardArchitecture,EISA)总线等。总线804可以分为地址总线、数据总线、控制总线等。为便于表示,图13中仅用一条粗线表示,但并不表示仅有一根总线或一种类型的总线。
通过以上的实施方式的描述,所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,仅以上述各功能模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能模块完成,即将装置的内部结构划分成不同的功能模块,以完成以上描述的全部或者部分功能。上述描述的系统,装置和模块的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
本申请实施例提供一种包含指令的计算机程序产品,当所述计算机程序产品在本申请的电子设备上运行时,使得所述计算机执行上述方法实施例所述的路由扩散模拟方法。
本申请实施例还提供一种计算机可读存储介质,计算机可读存储介质中存储有指令,当计算机执行该指令时,该本申请的电子设备执行上述方法实施例所示的方法流程中路由扩散模拟装置执行的各个步骤。
其中,计算机可读存储介质,例如可以是但不限于电、磁、光、电磁、红外线、或半导体的系统、装置或器件,或者任意以上的组合。计算机可读存储介质的更具体的例子(非穷举的列表)包括:具有一个或多个导线的电连接、便携式计算机磁盘、硬盘。随机存取存储器(Random Access Memory,RAM)、只读存储器(Read-Only Memory,ROM)、可擦式可编程只读存储器(Erasable Programmable Read Only Memory,EPROM)、寄存器、硬盘、光纤、便携式紧凑磁盘只读存储器(Compact Disc Read-Only Memory,CD-ROM)、光存储器件、磁存储器件、或者上述的人以合适的组合、或者本领域数值的任何其他形式的计算机可读存储介质。一种示例性的存储介质耦合至处理器,从而使处理器能够从该存储介质读取信息,且可向该存储介质写入信息。当然,存储介质也可以是处理器的组成部分。处理器和存储介质可以位于特定用途集成电路(Application Specific Integrated Circuit,ASIC)中。在本申请实施例中,计算机可读存储介质可以是任何包含或存储程序的有形介质,该程序可以被指令执行系统、装置或者器件使用或者与其结合使用。
以上所述,仅为本申请的具体实施方式,但本申请的保护范围并不局限于此,任何在本申请揭露的技术范围内的变化或替换,都应涵盖在本申请的保护范围之内。因此,本申请的保护范围应该以权利要求的保护范围为准。
以上所述,仅为本申请的具体实施方式,但本申请的保护范围并不局限于此,任何在本申请揭露的技术范围内的变化或替换,都应涵盖在本申请的保护范围之内。因此,本申请的保护范围应该以权利要求的保护范围为准。
Claims (14)
1.一种基于节点与IP地址的路由扩散模拟方法,其特征在于,所述方法包括:
根据节点的序号,确定下一跳矩阵;其中,所述节点用于模拟域内的设备,所述下一跳矩阵用于模拟域内路由的设备至设备层面;
确定可达地址映射列表,所述可达地址映射列表用于表征域内的节点与所述节点可达的IP地址之间的映射关系、以及所述节点与所述可达的IP地址之间可达路由的度量值;
根据所述下一跳矩阵和所述可达地址映射列表,模拟域内路由;
其中,所述下一跳矩阵中的元素Hs,d表示,以第s个节点为当前节点,第d个节点为目标节点时,所述第s个节点与所述第d个节点之间的最优路由中所述第s个节点的下一跳信息。
2.根据权利要求1所述的方法,其特征在于,在模拟数据包或数据流的选路时,所述方法还包括:
确定所述数据包或数据流的当前所在设备对应的当前节点;
根据所述数据包或数据流的目标IP地址和所述可达地址映射表,确定目标节点和所述目标节点与所述目标IP地址之间可达路由的度量值;其中,目标节点的数量为一个或多个;
根据所述下一跳矩阵、所述当前节点和每一个所述目标节点,确定所述当前节点至所述目标节点的最优节点路由;其中,所述最优节点路由可以为具有相同度量值的一条或多条路由;
根据所述可达地址映射表和所述下一跳矩阵,确定每一条所述最优节点路由对应的所述数据包或数据流当前所在设备至所述目标IP的总度量值;其中,所述总度量值为所述最优节点路由的度量值,或将所述最优节点路由的度量值与所述目标IP对应的度量值相加后的度量值;
将所述总度量值最小的所述最优节点路由,确定为最终选路结果。
3.根据权利要求2所述的方法,其特征在于,所述方法还包括:
根据所述下一跳矩阵模拟所述域内的设备的域内路由信息;其中,所述域内路由信息为设备至设备之间的最短路由的信息;
根据所述下一跳矩阵的迭代矩阵变换,模拟域内路由的扩散。
4.根据权利要求3所述的方法,其特征在于,所述根据所述下一跳矩阵的迭代矩阵变换,模拟域内路由的扩散,具体包括:
根据路由扩散关系信息,确定所述下一跳矩阵中所述待扩散元素的扩散目标元素;其中,所述路由扩散关系信息用于模拟路由协议中所述节点之间的邻居关系,所述邻居关系包括所述节点之间的直连路由关系和所述节点之间的直连路由类型;
将所述下一跳矩阵中的所述待扩散元素,向每个所述扩散目标元素进行扩散。
5.根据权利要求4所述的方法,其特征在于,所述方法还包括:
根据所述节点的等级标记,模拟所述设备在中间系统到中间系统ISIS协议中的等级Level类型;其中,所述节点的等级标记包括L1类型、L2类型、L1/2类型;
根据所述节点的区域标记,模拟所述设备在ISIS协议中的所属区域信息;
根据所述路由扩散关系信息中包括的等级标记,模拟ISIS协议中邻居关系的Level类型;所述路由扩散关系信息中包括的等级标记包括L1类型、L2类型。
6.根据权利要求1-5任一项所述的方法,其特征在于,所述方法还包括:
根据所述L1/2类型的节点的区域标记,确定相同区域内与其他所述L1类型的节点的最优路由;
根据指定的掩码长度,为所述L1/2类型的节点生成聚合路由,所述聚合路由将作为所述L1/2类型的节点的可达的IP地址;其中,所述聚合路由对应的度量值由外部导入,或者根据所述聚合路由对应明细路由的度量值确定。
7.一种路由扩散模拟装置,其特征在于,所述路由扩散模拟装置包括:处理单元;
所述处理单元,用于根据节点的序号,确定下一跳矩阵;其中,所述节点用于模拟域内的设备,所述下一跳矩阵用于模拟域内路由的设备至设备层面;
所述处理单元,还用于确定可达地址映射列表,所述可达地址映射列表用于表征域内的节点与所述节点可达的IP地址之间的映射关系、以及所述节点与所述可达的IP地址之间可达路由的度量值;
所述处理单元,还用于根据所述节点和所述可达地址映射列表,模拟域内路由;其中,所述下一跳矩阵中的元素Hs,d表示,以第s个节点为当前节点,第d个节点为目标节点时,所述第s个节点与所述第d个节点之间的最优路由中所述第s个节点的下一跳信息。
8.根据权利要求7所述的路由扩散模拟装置,其特征在于,
所述处理单元,还用于确定所述数据包或数据流的当前所在设备对应的当前节点;
所述处理单元,还用于根据所述数据包或数据流的目标IP地址和所述可达地址映射表,确定目标节点和所述目标节点与所述目标IP地址之间可达路由的度量值;其中,目标节点的数量为一个或多个;
所述处理单元,还用于根据所述下一跳矩阵、所述当前节点和每一个所述目标节点,确定所述当前节点至所述目标节点的最优节点路由;其中,所述最优节点路由可以为具有相同度量值的一条或多条路由;
所述处理单元,还用于根据所述可达地址映射表和所述下一跳矩阵,确定每一条所述最优节点路由对应的所述数据包或数据流当前所在设备至所述目标IP的总度量值;其中,所述总度量值为所述最优节点路由的度量值,或将所述最优节点路由的度量值与所述目标IP对应的度量值相加后的度量值;
所述处理单元,还用于将所述总度量值最小的所述最优节点路由,确定为最终选路结果。
9.根据权利要求8所述的路由扩散模拟装置,其特征在于,
所述处理单元,还用于根据所述下一跳矩阵模拟所述域内的设备的域内路由信息;其中,所述域内路由信息为设备至设备之间的最短路由的信息;
所述处理单元,还用于根据所述下一跳矩阵的迭代矩阵变换,模拟域内路由的扩散。
10.根据权利要求9所述的路由扩散模拟装置,其特征在于,
所述处理单元,还用于根据路由扩散关系信息,确定所述下一跳矩阵中所述待扩散元素的扩散目标元素;其中,所述路由扩散关系信息用于模拟路由协议中所述节点之间的邻居关系,所述邻居关系包括所述节点之间的直连路由关系和所述节点之间的直连路由类型;
所述处理单元,还用于将所述下一跳矩阵中的所述待扩散元素,向每个所述扩散目标元素进行扩散。
11.根据权利要求10所述的路由扩散模拟装置,其特征在于,
所述处理单元,还用于根据所述节点的等级标记,模拟所述设备在中间系统到中间系统ISIS协议中的等级Level类型;其中,所述节点的等级标记包括L1类型、L2类型、L1/2类型;
所述处理单元,还用于根据所述节点的区域标记,模拟所述设备在IS IS协议中的所属区域信息;
所述处理单元,还用于根据所述路由扩散关系信息中包括的等级标记,模拟ISIS协议中邻居关系的Level类型;所述路由扩散关系信息中包括的等级标记包括L1类型、L2类型。
12.根据权利要求7-11所述的路由扩散模拟装置,其特征在于,
所述处理单元,还用于根据所述L1/2类型的节点的区域标记,确定相同区域内与其他所述L1类型的节点的最优路由;
所述处理单元,还用于根据指定的掩码长度,为所述L1/2类型的节点生成聚合路由,所述聚合路由将作为所述L1/2类型的节点的可达的IP地址;其中,所述聚合路由对应的度量值由外部导入,或者根据所述聚合路由对应明细路由的度量值确定。
13.一种电子设备,其特征在于,包括:处理器以及存储器;其中,所述存储器用于存储计算机执行指令,当所述电子设备运行时,所述处理器执行所述存储器存储的所述计算机执行指令,以使所述电子设备执行权利要求1-6中任一项所述的路由扩散模拟方法。
14.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质包括指令,所述指令当被电子设备执行时使所述计算机执行如权利要求1-6中任一项所述的路由扩散模拟方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111603310.9A CN114363191B (zh) | 2021-12-24 | 2021-12-24 | 一种基于节点与ip地址的路由扩散模拟方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111603310.9A CN114363191B (zh) | 2021-12-24 | 2021-12-24 | 一种基于节点与ip地址的路由扩散模拟方法及装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN114363191A true CN114363191A (zh) | 2022-04-15 |
CN114363191B CN114363191B (zh) | 2023-11-10 |
Family
ID=81100436
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202111603310.9A Active CN114363191B (zh) | 2021-12-24 | 2021-12-24 | 一种基于节点与ip地址的路由扩散模拟方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN114363191B (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116192657A (zh) * | 2022-12-29 | 2023-05-30 | 中国联合网络通信集团有限公司 | 一种网络isis路由扩散模拟方法及装置 |
Citations (17)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2004055615A2 (en) * | 2002-12-17 | 2004-07-01 | Saraph Girish P | Routing scheme based on virtual space representation |
CN1588917A (zh) * | 2004-09-30 | 2005-03-02 | 西安西电捷通无线网络通信有限公司 | 一种解决柔性ip网络技术体系网段冲突的方法 |
US20060114916A1 (en) * | 2004-12-01 | 2006-06-01 | Jean-Philippe Vasseur | Inter-domain TE-LSP with IGP extensions |
CN101138206A (zh) * | 2005-03-08 | 2008-03-05 | 艾利森电话股份有限公司 | 用于多跳网络中的高级路由选择度量的方法及装置 |
US20140281715A1 (en) * | 2013-03-12 | 2014-09-18 | Tellabs Operations, Inc. | Method and apparatus for scaling network simulation |
WO2015043327A1 (zh) * | 2013-09-30 | 2015-04-02 | 华为技术有限公司 | 路由方法、设备和系统 |
CN104601485A (zh) * | 2015-02-12 | 2015-05-06 | 清华大学 | 网络流量的分配方法及实现网络流量分配的路由方法 |
US20170346727A1 (en) * | 2014-11-28 | 2017-11-30 | Aria Networks Limited | Modeling a border gateway protocol network |
CN108418757A (zh) * | 2018-02-12 | 2018-08-17 | 北京容联易通信息技术有限公司 | 媒体平台的智能路由方法及系统 |
CN108965137A (zh) * | 2018-07-20 | 2018-12-07 | 新华三技术有限公司 | 一种报文处理方法和装置 |
CN110224936A (zh) * | 2019-06-12 | 2019-09-10 | 四川灵通电讯有限公司 | 基于mac地址和网络接口的路由方法 |
CN110971527A (zh) * | 2019-11-29 | 2020-04-07 | 新华三半导体技术有限公司 | 路由信息确定方法及装置 |
CN112437008A (zh) * | 2020-11-26 | 2021-03-02 | 锐捷网络股份有限公司 | 网络路由收敛处理和报文处理方法、装置及设备 |
CN112511431A (zh) * | 2020-11-12 | 2021-03-16 | 中国科学院计算技术研究所 | 一种用于虚拟化网络仿真的路由流量融合方法 |
CN113014489A (zh) * | 2020-12-31 | 2021-06-22 | 腾讯科技(深圳)有限公司 | 数据转发方法及装置、服务器、存储介质 |
CN113542099A (zh) * | 2021-07-21 | 2021-10-22 | 北京字跳网络技术有限公司 | 数据的传输方法、装置、电子设备、介质和产品 |
CN113615133A (zh) * | 2019-03-20 | 2021-11-05 | 华为技术有限公司 | 一种区域间srmpls igp网络中进行最优路由的方法、节点及其系统 |
-
2021
- 2021-12-24 CN CN202111603310.9A patent/CN114363191B/zh active Active
Patent Citations (17)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2004055615A2 (en) * | 2002-12-17 | 2004-07-01 | Saraph Girish P | Routing scheme based on virtual space representation |
CN1588917A (zh) * | 2004-09-30 | 2005-03-02 | 西安西电捷通无线网络通信有限公司 | 一种解决柔性ip网络技术体系网段冲突的方法 |
US20060114916A1 (en) * | 2004-12-01 | 2006-06-01 | Jean-Philippe Vasseur | Inter-domain TE-LSP with IGP extensions |
CN101138206A (zh) * | 2005-03-08 | 2008-03-05 | 艾利森电话股份有限公司 | 用于多跳网络中的高级路由选择度量的方法及装置 |
US20140281715A1 (en) * | 2013-03-12 | 2014-09-18 | Tellabs Operations, Inc. | Method and apparatus for scaling network simulation |
WO2015043327A1 (zh) * | 2013-09-30 | 2015-04-02 | 华为技术有限公司 | 路由方法、设备和系统 |
US20170346727A1 (en) * | 2014-11-28 | 2017-11-30 | Aria Networks Limited | Modeling a border gateway protocol network |
CN104601485A (zh) * | 2015-02-12 | 2015-05-06 | 清华大学 | 网络流量的分配方法及实现网络流量分配的路由方法 |
CN108418757A (zh) * | 2018-02-12 | 2018-08-17 | 北京容联易通信息技术有限公司 | 媒体平台的智能路由方法及系统 |
CN108965137A (zh) * | 2018-07-20 | 2018-12-07 | 新华三技术有限公司 | 一种报文处理方法和装置 |
CN113615133A (zh) * | 2019-03-20 | 2021-11-05 | 华为技术有限公司 | 一种区域间srmpls igp网络中进行最优路由的方法、节点及其系统 |
CN110224936A (zh) * | 2019-06-12 | 2019-09-10 | 四川灵通电讯有限公司 | 基于mac地址和网络接口的路由方法 |
CN110971527A (zh) * | 2019-11-29 | 2020-04-07 | 新华三半导体技术有限公司 | 路由信息确定方法及装置 |
CN112511431A (zh) * | 2020-11-12 | 2021-03-16 | 中国科学院计算技术研究所 | 一种用于虚拟化网络仿真的路由流量融合方法 |
CN112437008A (zh) * | 2020-11-26 | 2021-03-02 | 锐捷网络股份有限公司 | 网络路由收敛处理和报文处理方法、装置及设备 |
CN113014489A (zh) * | 2020-12-31 | 2021-06-22 | 腾讯科技(深圳)有限公司 | 数据转发方法及装置、服务器、存储介质 |
CN113542099A (zh) * | 2021-07-21 | 2021-10-22 | 北京字跳网络技术有限公司 | 数据的传输方法、装置、电子设备、介质和产品 |
Non-Patent Citations (3)
Title |
---|
ADNAN AIJAZ: "Opportunistic Routing in Diffusion-Based Molecular Nanonetworks", IEEE WIRELESS COMMUNICATIONS LETTERS * |
王亚刚;: "IP路由器片上系统的设计与性能仿真", 系统仿真学报, no. 12 * |
王大伟;陈志刚;赵明;李阳辉;: "MANET中基于动态地址的机会路由算法", 计算机工程, no. 06 * |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116192657A (zh) * | 2022-12-29 | 2023-05-30 | 中国联合网络通信集团有限公司 | 一种网络isis路由扩散模拟方法及装置 |
Also Published As
Publication number | Publication date |
---|---|
CN114363191B (zh) | 2023-11-10 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Garcia-Luna-Aceves et al. | Distributed, scalable routing based on vectors of link states | |
Ghaffari et al. | New distributed algorithms in almost mixing time via transformations from parallel algorithms | |
CN111064763B (zh) | 一种用于转发分组的方法及网络设备 | |
CN105830403A (zh) | 高性能lfa路径算法 | |
Amiri et al. | Congestion-free rerouting of flows on dags | |
Feldmann et al. | Fast hybrid network algorithms for shortest paths in sparse graphs | |
US10791034B2 (en) | Telecommunications network planning | |
CN114024900A (zh) | 一种数据处理方法及相关设备 | |
CN114363191B (zh) | 一种基于节点与ip地址的路由扩散模拟方法及装置 | |
CN114285783B (zh) | 一种基于多矩阵的路由扩散模拟方法及装置 | |
Karna et al. | Performance Analysis of Interior Gateway Protocols (IGPs) using GNS-3 | |
CN114024859A (zh) | 基于设备和链路发现的网路拓扑生成方法、存储介质及终端 | |
CN105656781B (zh) | 一种链路状态数据包的传输方法及网络设备 | |
CN114145002B (zh) | 网络验证系统的可达矩阵 | |
CN108183862B (zh) | 软件定义交换网的通信方法/系统、可读存储介质及设备 | |
CN112491605B (zh) | 路由仿真方法和装置 | |
Ghosh et al. | A centralized hybrid routing model for multicontroller SD‐WANs | |
Sahu et al. | Application mapping onto mesh-of-tree based network-on-chip using discrete particle swarm optimization | |
JP3949696B2 (ja) | プロトコル高速化装置 | |
Pioro et al. | Topological design of MPLS networks | |
US10924382B1 (en) | Rapid and verifiable network configuration repair | |
CN116192657A (zh) | 一种网络isis路由扩散模拟方法及装置 | |
CN111478808A (zh) | 协助配置更新验证的方法、系统、电子设备及存储介质 | |
Shcherba | Boolean-valued models of telecommunication systems in some problems of network security | |
Chen et al. | When Configuration Verification Meets Machine Learning: A DRL Approach for Finding Minimum k-Link Failures |
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 |