CN117834437A - 基于互联网路由配置的量化属性验证方法 - Google Patents
基于互联网路由配置的量化属性验证方法 Download PDFInfo
- Publication number
- CN117834437A CN117834437A CN202410026721.3A CN202410026721A CN117834437A CN 117834437 A CN117834437 A CN 117834437A CN 202410026721 A CN202410026721 A CN 202410026721A CN 117834437 A CN117834437 A CN 117834437A
- Authority
- CN
- China
- Prior art keywords
- route
- network
- router
- attribute
- formula matrix
- 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
- 238000000034 method Methods 0.000 title claims abstract description 51
- 238000012795 verification Methods 0.000 title claims abstract description 20
- 239000011159 matrix material Substances 0.000 claims abstract description 59
- 238000013139 quantization Methods 0.000 claims abstract description 19
- 238000004088 simulation Methods 0.000 claims abstract description 17
- 238000012545 processing Methods 0.000 claims description 27
- 230000008569 process Effects 0.000 claims description 19
- 230000006870 function Effects 0.000 claims description 16
- 239000013256 coordination polymer Substances 0.000 claims description 15
- 235000008694 Humulus lupulus Nutrition 0.000 claims description 12
- 238000004590 computer program Methods 0.000 claims description 6
- 230000008676 import Effects 0.000 claims description 6
- 230000006399 behavior Effects 0.000 claims description 4
- 238000010586 diagram Methods 0.000 description 8
- 238000003491 array Methods 0.000 description 2
- 239000000463 material Substances 0.000 description 2
- 230000003287 optical effect Effects 0.000 description 2
- ABEXEQSGABRUHS-UHFFFAOYSA-N 16-methylheptadecyl 16-methylheptadecanoate Chemical compound CC(C)CCCCCCCCCCCCCCCOC(=O)CCCCCCCCCCCCCCC(C)C ABEXEQSGABRUHS-UHFFFAOYSA-N 0.000 description 1
- 241001596816 Halieutaea stellata Species 0.000 description 1
- 241000764238 Isis Species 0.000 description 1
- ODCKICSDIPVTRM-UHFFFAOYSA-N [4-[2-hydroxy-3-(propan-2-ylazaniumyl)propoxy]naphthalen-1-yl] sulfate Chemical compound C1=CC=C2C(OCC(O)CNC(C)C)=CC=C(OS(O)(=O)=O)C2=C1 ODCKICSDIPVTRM-UHFFFAOYSA-N 0.000 description 1
- 230000015556 catabolic process Effects 0.000 description 1
- 238000006731 degradation reaction Methods 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 239000012634 fragment Substances 0.000 description 1
- 238000005417 image-selected in vivo spectroscopy Methods 0.000 description 1
- 238000012739 integrated shape imaging system Methods 0.000 description 1
- 238000011835 investigation Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 239000013307 optical fiber Substances 0.000 description 1
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L41/00—Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
- H04L41/08—Configuration management of networks or network elements
- H04L41/0866—Checking the configuration
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L41/00—Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
- H04L41/12—Discovery or management of network topologies
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L41/00—Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
- H04L41/14—Network analysis or design
- H04L41/145—Network analysis or design involving simulating, designing, planning or modelling of a network
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L43/00—Arrangements for monitoring or testing data switching networks
- H04L43/16—Threshold monitoring
-
- 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/03—Topology update or discovery by updating link state protocols
-
- 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/54—Organization of routing tables
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/10—Network architectures or network communication protocols for network security for controlling access to devices or network resources
- H04L63/101—Access control lists [ACL]
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Computer Hardware Design (AREA)
- Computer Security & Cryptography (AREA)
- Computing Systems (AREA)
- General Engineering & Computer Science (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本申请提出了一种基于互联网路由配置的量化属性验证方法,涉及网络验证技术领域,其中,该方法包括:根据待验证网络中路由器的网络配置、拓扑信息进行符号模拟执行,生成符号化的路由表;根据符号化的路由表生成网络控制平面的逻辑公式矩阵;根据网络控制平面的逻辑公式矩阵和访问控制列表ACL配置生成网络数据平面的逻辑公式矩阵;根据网络数据平面的逻辑公式矩阵,对待验证网络中k链路失效的情况下的量化属性进行验证。采用上述方案的本发明实现了路由器配置的快速、准确的验证。
Description
技术领域
本申请涉及网络验证技术领域,尤其涉及基于互联网路由配置的量化属性验证方法和装置。
背景技术
网络控制平面管理着各种路由协议(例如BGP,OSPF,RIP,ISIS协议)的运行,决定了数据包从源地址沿哪一条转发路径被转发至目的地址。其可以被看作是综合网络拓扑、路由配置信息后建立数据平面转发表的程序。为了实现用户各种业务需求的网络策略(例如,“报文是不可以从A到达B”),网络管理员必须正确地更新各个路由器上的配置。然而,路由器多使用低级配置语言,而且配置片段之间关系非常复杂。这使得正确地更新各路由器上的配置极具挑战。配置更新错误可能会导致用户的策略被违反,还可能导致网络中断等重大事故的发生。根据调查可知,由于业务变更、网络升级、新的商业部署、安全升级等等需求,配置更新在网络中是频繁发生的,而且超过56%的网络事故是由配置更新引起的。因此,在将更新后的网络配置部署到路由器等路由器之前,应先对其进行验证,保证网络配置的正确性。近来,越来越多的网络配置验证工作被提出,例如,Batfish、ARC、ERA、Minesweeper。基于这些配置验证工具,用户可输入待验证的可达性语句(例如,“报文是不可以从A到达B”),验证网络配置是否满足所输入的可达性语句。然而,以上这些验证工作存在以下两个问题,(i)无法验证数据包转发的量化属性是否满足用户预期,无法防范路由配置错误导致的服务质量下降问题(例如,某些链路出现拥塞);(ii)可扩展性差。对于具有数十个路由器的网络,最先进的控制平面验证工具执行单个可达性查询需要500秒,验证时间随着网络大小呈指数增长。
发明内容
本申请旨在至少在一定程度上解决相关技术中的技术问题之一。
为此,本申请的第一个目的在于提出一种基于互联网路由配置的量化属性验证方法,解决了现有方法无法满足用户需求、准确率低、可扩展性差的问题,能够在快速对路由器配置进行验证时,保证验证的准确率。
本申请的第二个目的在于提出一种计算机设备。
为达上述目的,本申请第一方面实施例提出了一种基于互联网路由配置的量化属性验证方法,包括:根据待验证网络中路由器的网络配置、拓扑信息进行符号模拟执行,生成符号化的路由表;根据符号化的路由表生成网络控制平面的逻辑公式矩阵;根据网络控制平面的逻辑公式矩阵和访问控制列表ACL配置生成网络数据平面的逻辑公式矩阵;根据网络数据平面的逻辑公式矩阵,对待验证网络中k链路失效的情况下的量化属性进行验证。
本申请实施例的基于互联网路由配置的量化属性验证方法,根据网络配置、拓扑以及路由宣告信息来进行符号模拟执行生成符号化的路由表,根据符号化的路由表可生成全网的逻辑公式矩阵,根据逻辑公式矩阵计算量化属性是否通过验证。
可选地,在本申请的一个实施例中,根据待验证网络中路由器的网络配置、拓扑信息进行符号模拟执行,生成符号化的路由表,包括:
获取待验证网络中路由器的配置文件和拓扑信息;
基于配置文件和拓扑信息,将路由器建模为路由处理函数,并通过路由处理函数建模路由器处理路由宣告时的行为;
采用队列的形式进行全局模拟,利用队列维护全局所有更新的路由宣告。
可选地,在本申请的一个实施例中,路由处理函数的输入输出单元为路由宣告,路由器处理路由宣告时的行为包括路由导入策略处理、路由排序选择策略处理和路由导出策略处理,在路由宣告到达路由器之后,该路由器执行的操作包括:
基于路由导入策略处理路由宣告,判断对应路由是否能够被自身路由器接收,并且对路由宣告的属性进行修改;
基于路由排序选择策略、将接收到的路由宣告和自身已有的路由表中的路由进行比较,判断优选关系,更新本地的路由表;
使用对应的路由导出策略对路由宣告进行处理,判断路由是否能够向外发送,在确定能够向外发送时将更新后的路由宣告发送至邻居路由器,并对路由宣告相应属性值进行修改。
可选地,在本申请的一个实施例中,队列中的元素为路由宣告,采用队列的形式进行全局模拟,利用队列维护全局所有的更新的路由宣告,包括:
不断取出队首元素进行处理,直至队列为空,其中,对取出的队首元素进行处理,包括:
将对应的路由宣告传递至相应的路由器上,通过路由器根据路由处理函数对路由宣告进行处理,并将新生成的路由宣告作为新消息插入队尾。
可选地,在本申请的一个实施例中,根据符号化的路由表生成网络控制平面的逻辑公式矩阵,包括:
构建初始逻辑公式矩阵CP,其中,CP中的元素CPij包含元素(N,cond),N表示目的地子网,cond表示由节点vj到目的地子网的网关路由器vi的路由条件;
遍历全网路由器,为初始逻辑公式矩阵CP中的每个元素赋值,得到网络控制平面的逻辑公式矩阵。
可选地,在本申请的一个实施例中,根据网络控制平面的逻辑公式矩阵和访问控制列表ACL配置生成网络数据平面的逻辑公式矩阵,包括:
步骤S1:构建初始逻辑公式矩阵DP,其中,DP中的元素DPij包含元素(N,cond),N表示目的地子网,cond表示来自路由器vj的数据包到达目的地子网的网关路由器vi的路由条件;
步骤S2:获取CPji包含元素(N,cond)的值,赋值给DPij,并根据cond的值确定路由传播路径,在配置文件中获取该路径上的与子网N相关的ACL列表;
步骤S3:根据ACL列表中的每个规则更新DPij中两个元素(N,cond)的值;
步骤S4:重复步骤S2、S3,确定初始逻辑公式矩阵DP中每个元素的值,得到网络数据平面的逻辑公式矩阵。
可选地,在本申请的一个实施例中,对待验证网络中k链路失效的情况下的量化属性进行验证,包括:
验证特定流量tc是否总能在n跳到达其目的地;
验证特定流量tc是否总能在theta时间内达其目的地;
验证用户所选择的待验证网络中的链路e上的负载是否超过阈值tau。
可选地,在本申请的一个实施例中,验证特定流量tc是否总能在n跳到达其目的地,包括:
从网络数据平面的逻辑公式矩阵中提取匹配条目ri,并使用ri.cond构建BDD;
计算BDD中从根节点到终端节点false的最短路径的长度t,若k>(t-1),确定k链路失效的情况下,特定流量tc不能在n跳到达其目的地,属性成立;
查询BDD中从根节点到终端节点true的路径,若存在长度大于n的路径,确定k链路失效的情况下,特定流量tc不能在n跳到达其目的地,属性不成立;
验证特定流量tc是否总能在theta时间内达其目的地,包括:
从网络数据平面的逻辑公式矩阵中提取匹配条目ri,并使用ri.cond构建BDD;
计算BDD中从根节点到终端节点各路径上所对应的总时延,若计算出的总时延大于theta,确定k链路失效的情况下,特定流量tc不是总能在theta时间内达其目的地,属性不成立,否则,属性成立。
可选地,在本申请的一个实施例中,验证链路e上的负载是否超过阈值tau,包括:
遍历DP中的所有路由属性,获得子集合R0,R1,…,Rj,其中,每一个子集合中任意两个路由属性ri和rj的路由条件有交集,ri和rj的路由条件有交集表示ri和rj在至少一个故障场景下能够共存;
遍历每个子集合,对于子集合Rj,根据其中的路由属性条件,判断链路e的状态,若链路e状态为真,则累加该路由属性对应的流量负载,若最终链路e上的累加负载超过阈值tau,则属性不成立,否则,属性成立。
为达上述目的,本发明第二方面实施例提出了一种计算机设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,处理器执行计算机程序时,实现上述施例所述的基于互联网路由配置的量化属性验证方法。
本申请附加的方面和优点将在下面的描述中部分给出,部分将从下面的描述中变得明显,或通过本申请的实践了解到。
附图说明
本申请上述的和/或附加的方面和优点从下面结合附图对实施例的描述中将变得明显和容易理解,其中:
图1为本申请实施例一所提供的一种基于互联网路由配置的量化属性验证方法的流程示意图;
图2为本申请实施例的第一符号仿真示例图;
图3为本申请实施例的第二符号仿真示例图;
图4为本申请实施例的控制平面逻辑公式矩阵与数据平面逻辑公式矩阵示例图;
图5为本申请实施例的子网BDD示例图;
图6为本申请实施例的条件BDD示例图。
具体实施方式
下面详细描述本申请的实施例,所述实施例的示例在附图中示出,其中自始至终相同或类似的标号表示相同或类似的元件或具有相同或类似功能的元件。下面通过参考附图描述的实施例是示例性的,旨在用于解释本申请,而不能理解为对本申请的限制。
下面参考附图描述本申请实施例的基于互联网路由配置的量化属性验证方法和装置。
图1为本申请实施例一所提供的一种基于互联网路由配置的量化属性验证方法的流程示意图。
如图1所示,该基于互联网路由配置的量化属性验证方法包括以下步骤:
步骤101,根据待验证网络中路由器的网络配置、拓扑信息进行符号模拟执行,生成符号化的路由表;
在一些实施例中,生成符号化的路由表的过程包括:
(1)收集待验证网络中路由器上的配置文件。
(2)每个路由器被建模为一个路由处理函数,该函数的输入输出单元为路由宣告。路由宣告r包括以下变量:prefix为路由前缀,Iength为前缀长度,ad为管理距离,met为协议度量,rid为路由器ID,lp为BGP的本地优先属性,med为BGP多出口鉴别器属性,comm为BGP团体属性值,cond为该路由宣告的生效条件。其中cond变量为符号变量。
(3)路由处理函数建模路由器的路由导入策略处理、路由排序选择和路由导出策略处理这三种行为。这些行为均是对路由宣告进行相关操作:当一个路由宣告到达一个路由器之后,路由器首先使用对应的路由导入策略(根据路由器上的配置信息可获得)对其进行处理,判断该路由是否能够被该路由器接收,并且对路由宣告的属性进行一定的修改;然后,路由器会将新受到的路由宣告和自己已有的路由表中的路由进行比较,判断优选关系,更新本地的路由表;最后,路由器将更新的路由宣告再发邻居路由器,过程中需要使用对应的路由导出策略(根据路由器上的配置信息可获得)对其进行处理,判断路由是否能够向外发送,并且对路由宣告相应属性值进行修改。
(4)采用队列的形式进行全局模拟,利用队列维护全局所有的更新的路由宣告。每次取出队首元素进行处理,对应路由宣告传递到了相应的路由器上,路由器根据路由处理函数对路由宣告进行处理,这些新生成的路由宣告就作为新消息被插入队尾。消息队列如上述过程进行循环处理,直到队列为空,代表网络到达了收敛状态。此时,每个路由器都完成了路由表项的学习,包含r1,r2,r3,...,rn等若干表项。
步骤102,根据符号化的路由表生成网络控制平面的逻辑公式矩阵;
在一些实施例中,生成网络控制平面的逻辑公式矩阵的过程包括:
(1)逻辑公式矩阵CP中的元素CPij包含两个元素(N,cond),其中N表示目的地子网,cond表示由节点vj上到目的地子网的网关路由器vi的路由条件。在节点vj上获取所有目的地子网的网关路由器vi的路由表项r1,r2,r3,...,rk。
(2)CPij中cond的值则为
(3)遍历全网路由器,为逻辑公式矩阵CP中的每个元素赋值。
步骤103,根据网络控制平面的逻辑公式矩阵和访问控制列表ACL配置生成网络数据平面的逻辑公式矩阵;
在一些实施例中,生成网络数据平面的逻辑公式矩阵的过程包括:
(1)逻辑公式矩阵DP中的元素DPij包含两个元素(N,cond),其中N表示目的地子网,cond表示来自路由器vj的数据包可以到达目的地子网的网关路由器vi的条件。
(2)为确定元素DPij的值,首先获取CPji包含两个元素(N,cond)的值,赋值给DPij。根据cond的值确定路由传播路径,在配置文件中获取该路径上的与子网N相关的ACL列表。
(3)根据ACL列表中的每个规则更新DPij中两个元素(N,cond)的值。
(4)按照以上步骤计算逻辑公式矩阵DP中的每个元素的值。
步骤104:根据网络数据平面的逻辑公式矩阵,对待验证网络中k链路失效的情况下的量化属性进行验证。
在一些实施例中,对待验证网络中k链路失效的情况下的量化属性进行验证包括:
根据网络数据平面的逻辑公式矩阵,验证当前网络中k链路失效的情况下,特定流量tc是否总能在n跳到达其目的地;
根据网络数据平面的逻辑公式矩阵,验证当前网络中k链路失效的情况下,特定流量tc是否总能在theta时间内达其目的地;
根据网络数据平面的逻辑公式矩阵,验证当前网络中k链路失效的情况下,链路e上的负载是否超过阈值tau。
在一些实施例中,验证当前网络中k链路失效的情况下,特定流量tc是否总能在n跳到达其目的地,包括:
(1)对于要验证的流量tc,从数据平面矩阵中提取匹配条目ri,并使用ri.cond构建BDD。
(2)计算BDD中从根节点到终端节点false的最短路径的长度t。如果k>(t-1),可确定k链路失效的情况下,特定流量tc不能在n跳到达其目的地,属性成立,否则执行步骤(2)。
(3)查BDD中从根节点到终端节点true的路径。如果存在长度大于n的路径,可确定k链路失效的情况下,特定流量tc不能在n跳到达其目的地,属性不成立;否则,属性成立。
在一些实施例中,验证当前网络中k链路失效的情况下,特定流量tc是否总能在theta时间内达其目的地,包括:
(1)对于要验证的流量tc,从数据平面矩阵中提取匹配条目ri,并使用ri.cond构建BDD。
(2)计算BDD中从根节点到终端节点各路径上所对应的总时延。如果该值大于theta,可确定k链路失效的情况下,特定流量tc可确定不是总能在theta时间内达其目的地,属性不成立。否则,属性成立。
在一些实施例中,验证当前网络中k链路失效的情况下,用户所选择的网络中的任意一个链路e上的负载是否超过阈值tau,包括:
(1)如果路由属性ri的条件和路由属性rj的条件有交集,则表明ri和rj,在某些故障场景下,可共存。
(2)遍历DP中的所有路由属性,获得子集合R0,R1,…,Rj,其中每一个子集合中任意两个路由属性ri和rj,ri的条件和路由属性rj的条件有交集。
(3)遍历每个子集合。对于子集合Rj,根据其中的路由属性条件,判断链路e的状态,如果链路e状态为真,则累加该路由属性对应的流量负载,如果最终链路e上的累加负载超过阈值tau,则属性不成立。否则,属性成立。
本申请实施例的基于互联网路由配置的量化属性验证方法,根据网络配置、拓扑以及路由宣告信息来进行符号模拟执行生成符号化的路由表,根据符号化的路由表可生成全网的逻辑公式矩阵,根据逻辑公式矩阵计算量化属性是否通过验证。
图2、图3为符号仿真示例图,如图2、图3所示,网络中有5台路由器。路由器R1到R5运行BGP协议,其中,R2和R3路由器分别配置了路由策略,R2为路由消息打把标签(200:1),R3匹配标签为(200:1)的路由消息,并把该路由消息相对应的本地偏好属性(localpreference)值设为200。在路由器R4上配置了一个ACL,阻止去往192.0.0.0/2的流量。图2、图3展示了路由仿真的过程,R5的符号化路由表如图3所示。
图4为控制平面逻辑公式矩阵与数据平面逻辑公式矩阵示例图,如图4所示,cp15中条件 表示由节点R5上到目的地子网的网关路由器R1的路由条件,dp51中来自路由器R5的数据包可以到达目的地子网的网关路由器R1的条件。
图5为子网BDD示例图,如图5所示,左一表示128.0.0.0/1,左二表示192.0.0.0/2,右一表示128.0.0.0/2。
图6为条件BDD示例图,如图6所示,为条件 的BDD。
根据网络数据平面的逻辑公式矩阵,验证当前网络中1(k=1)链路失效的情况下,从R5到子网128.0.0.0/2的特定流量是否总能在4(n=4)跳到达其目的地。从数据平面矩阵中提取匹配条目并根据/>构建BDD。计算BDD中从根节点到终端false节点的最短路径的长度1(t=1)。k>(t-1),可确定1链路失效的情况下,特定流量tc不能在4跳到达其目的地,属性不成立。
为了实现上述实施例,本发明还提出了一种计算机设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,处理器执行计算机程序时,实现上述施例所述的基于互联网路由配置的量化属性验证方法。
在本说明书的描述中,参考术语“一个实施例”、“一些实施例”、“示例”、“具体示例”或“一些示例”等的描述意指结合该实施例或示例描述的具体特征、结构、材料或者特点包含于本申请的至少一个实施例或示例中。在本说明书中,对上述术语的示意性表述不必须针对的是相同的实施例或示例。而且,描述的具体特征、结构、材料或者特点可以在任一个或多个实施例或示例中以合适的方式结合。此外,在不相互矛盾的情况下,本领域的技术人员可以将本说明书中描述的不同实施例或示例以及不同实施例或示例的特征进行结合和组合。
此外,术语“第一”、“第二”仅用于描述目的,而不能理解为指示或暗示相对重要性或者隐含指明所指示的技术特征的数量。由此,限定有“第一”、“第二”的特征可以明示或者隐含地包括至少一个该特征。在本申请的描述中,“多个”的含义是至少两个,例如两个,三个等,除非另有明确具体的限定。
流程图中或在此以其他方式描述的任何过程或方法描述可以被理解为,表示包括一个或更多个用于实现定制逻辑功能或过程的步骤的可执行指令的代码的模块、片段或部分,并且本申请的优选实施方式的范围包括另外的实现,其中可以不按所示出或讨论的顺序,包括根据所涉及的功能按基本同时的方式或按相反的顺序,来执行功能,这应被本申请的实施例所属技术领域的技术人员所理解。
在流程图中表示或在此以其他方式描述的逻辑和/或步骤,例如,可以被认为是用于实现逻辑功能的可执行指令的定序列表,可以具体实现在任何计算机可读介质中,以供指令执行系统、装置或设备(如基于计算机的系统、包括处理器的系统或其他可以从指令执行系统、装置或设备取指令并执行指令的系统)使用,或结合这些指令执行系统、装置或设备而使用。就本说明书而言,"计算机可读介质"可以是任何可以包含、存储、通信、传播或传输程序以供指令执行系统、装置或设备或结合这些指令执行系统、装置或设备而使用的装置。计算机可读介质的更具体的示例(非穷尽性列表)包括以下:具有一个或多个布线的电连接部(电子装置),便携式计算机盘盒(磁装置),随机存取存储器(RAM),只读存储器(ROM),可擦除可编辑只读存储器(EPROM或闪速存储器),光纤装置,以及便携式光盘只读存储器(CDROM)。另外,计算机可读介质甚至可以是可在其上打印所述程序的纸或其他合适的介质,因为可以例如通过对纸或其他介质进行光学扫描,接着进行编辑、解译或必要时以其他合适方式进行处理来以电子方式获得所述程序,然后将其存储在计算机存储器中。
应当理解,本申请的各部分可以用硬件、软件、固件或它们的组合来实现。在上述实施方式中,多个步骤或方法可以用存储在存储器中且由合适的指令执行系统执行的软件或固件来实现。如,如果用硬件来实现和在另一实施方式中一样,可用本领域公知的下列技术中的任一项或他们的组合来实现:具有用于对数据信号实现逻辑功能的逻辑门电路的离散逻辑电路,具有合适的组合逻辑门电路的专用集成电路,可编程门阵列(PGA),现场可编程门阵列(FPGA)等。
本技术领域的普通技术人员可以理解实现上述实施例方法携带的全部或部分步骤是可以通过程序来指令相关的硬件完成,所述的程序可以存储于一种计算机可读存储介质中,该程序在执行时,包括方法实施例的步骤之一或其组合。
此外,在本申请各个实施例中的各功能单元可以集成在一个处理模块中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个模块中。上述集成的模块既可以采用硬件的形式实现,也可以采用软件功能模块的形式实现。所述集成的模块如果以软件功能模块的形式实现并作为独立的产品销售或使用时,也可以存储在一个计算机可读取存储介质中。
上述提到的存储介质可以是只读存储器,磁盘或光盘等。尽管上面已经示出和描述了本申请的实施例,可以理解的是,上述实施例是示例性的,不能理解为对本申请的限制,本领域的普通技术人员在本申请的范围内可以对上述实施例进行变化、修改、替换和变型。
Claims (10)
1.一种基于互联网路由配置的量化属性验证方法,其特征在于,包括以下步骤:
根据待验证网络中路由器的网络配置、拓扑信息进行符号模拟执行,生成符号化的路由表;
根据符号化的路由表生成网络控制平面的逻辑公式矩阵;
根据网络控制平面的逻辑公式矩阵和访问控制列表ACL配置生成网络数据平面的逻辑公式矩阵;
根据网络数据平面的逻辑公式矩阵,对待验证网络中k链路失效的情况下的量化属性进行验证。
2.如权利要求1所述的方法,其特征在于,所述根据待验证网络中路由器的网络配置、拓扑信息进行符号模拟执行,生成符号化的路由表,包括:
获取待验证网络中路由器的配置文件和拓扑信息;
基于所述配置文件和拓扑信息,将路由器建模为路由处理函数,并通过路由处理函数建模路由器处理路由宣告时的行为;
采用队列的形式进行全局模拟,利用队列维护全局所有更新的路由宣告。
3.如权利要求2所述的方法,其特征在于,所述路由处理函数的输入输出单元为路由宣告,所述路由器处理路由宣告时的行为包括路由导入策略处理、路由排序选择策略处理和路由导出策略处理,在路由宣告到达路由器之后,该路由器执行的操作包括:
基于路由导入策略处理所述路由宣告,判断对应路由是否能够被自身路由器接收,并且对路由宣告的属性进行修改;
基于路由排序选择策略、将接收到的路由宣告和自身已有的路由表中的路由进行比较,判断优选关系,更新本地的路由表;
使用对应的路由导出策略对所述路由宣告进行处理,判断路由是否能够向外发送,在确定能够向外发送时将更新后的路由宣告发送至邻居路由器,并对路由宣告相应属性值进行修改。
4.如权利要求2所述的方法,其特征在于,所述队列中的元素为路由宣告,所述采用队列的形式进行全局模拟,利用队列维护全局所有的更新的路由宣告,包括:
不断取出队首元素进行处理,直至队列为空,其中,对取出的队首元素进行处理,包括:
将对应的路由宣告传递至相应的路由器上,通过路由器根据路由处理函数对路由宣告进行处理,并将新生成的路由宣告作为新消息插入队尾。
5.如权利要求1所述的方法,其特征在于,所述根据符号化的路由表生成网络控制平面的逻辑公式矩阵,包括:
构建初始逻辑公式矩阵CP,其中,CP中的元素CPij包含元素(N,cond),N表示目的地子网,cond表示由节点vj到目的地子网的网关路由器vi的路由条件;
遍历全网路由器,为所述初始逻辑公式矩阵CP中的每个元素赋值,得到网络控制平面的逻辑公式矩阵。
6.如权利要求5所述的方法,其特征在于,所述根据网络控制平面的逻辑公式矩阵和访问控制列表ACL配置生成网络数据平面的逻辑公式矩阵,包括:
步骤S1:构建初始逻辑公式矩阵DP,其中,DP中的元素DPij包含元素(N,cond),N表示目的地子网,cond表示来自路由器vj的数据包到达目的地子网的网关路由器vi的路由条件;
步骤S2:获取CPji包含元素(N,cond)的值,赋值给DPij,并根据cond的值确定路由传播路径,在配置文件中获取该路径上的与子网N相关的ACL列表;
步骤S3:根据ACL列表中的每个规则更新DPij中两个元素(N,cond)的值;
步骤S4:重复步骤S2、S3,确定初始逻辑公式矩阵DP中每个元素的值,得到网络数据平面的逻辑公式矩阵。
7.如权利要求6所述的方法,其特征在于,所述对待验证网络中k链路失效的情况下的量化属性进行验证,包括:
验证特定流量tc是否总能在n跳到达其目的地;
验证特定流量tc是否总能在theta时间内达其目的地;
验证用户所选择的待验证网络中的链路e上的负载是否超过阈值tau。
8.如权利要求7所述的方法,其特征在于,所述验证特定流量tc是否总能在n跳到达其目的地,包括:
从网络数据平面的逻辑公式矩阵中提取匹配条目ri,并使用ri.cond构建BDD;
计算BDD中从根节点到终端节点false的最短路径的长度t,若k>(t-1),确定k链路失效的情况下,特定流量tc不能在n跳到达其目的地,属性成立;
查询BDD中从根节点到终端节点true的路径,若存在长度大于n的路径,确定k链路失效的情况下,特定流量tc不能在n跳到达其目的地,属性不成立;
所述验证特定流量tc是否总能在theta时间内达其目的地,包括:
从网络数据平面的逻辑公式矩阵中提取匹配条目ri,并使用ri.cond构建BDD;
计算BDD中从根节点到终端节点各路径上所对应的总时延,若计算出的总时延大于theta,确定k链路失效的情况下,特定流量tc不是总能在theta时间内达其目的地,属性不成立,否则,属性成立。
9.如权利要求7所述的方法,其特征在于,所述验证链路e上的负载是否超过阈值tau,包括:
遍历DP中的所有路由属性,获得子集合R0,R1,…,Rj,其中,每一个子集合中任意两个路由属性ri和rj的路由条件有交集,所述ri和rj的路由条件有交集表示ri和rj在至少一个故障场景下能够共存;
遍历每个子集合,对于子集合Rj,根据其中的路由属性条件,判断链路e的状态,若链路e状态为真,则累加该路由属性对应的流量负载,若最终链路e上的累加负载超过阈值tau,则属性不成立,否则,属性成立。
10.一种计算机设备,其特征在于,包括存储器、处理器及存储在所述存储器上并可在所述处理器上运行的计算机程序,所述处理器执行所述计算机程序时,实现如权利要求1-9中任一所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202410026721.3A CN117834437A (zh) | 2024-01-08 | 2024-01-08 | 基于互联网路由配置的量化属性验证方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202410026721.3A CN117834437A (zh) | 2024-01-08 | 2024-01-08 | 基于互联网路由配置的量化属性验证方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN117834437A true CN117834437A (zh) | 2024-04-05 |
Family
ID=90519007
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202410026721.3A Pending CN117834437A (zh) | 2024-01-08 | 2024-01-08 | 基于互联网路由配置的量化属性验证方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN117834437A (zh) |
-
2024
- 2024-01-08 CN CN202410026721.3A patent/CN117834437A/zh active Pending
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP7108674B2 (ja) | 故障根本原因決定方法及び装置並びにコンピュータ記憶媒体 | |
JP4112492B2 (ja) | Ipネットワーク・トポロジ発見のためのリンク状態情報の使用 | |
US6567380B1 (en) | Technique for selective routing updates | |
US8902755B2 (en) | Discovering network topology from routing information | |
US10075371B2 (en) | Communication system, control apparatus, packet handling operation setting method, and program | |
US10164862B2 (en) | Communication system, control device, communication method and program | |
EP1560379A1 (en) | Methods and systems for unnumbered network link discovery | |
CN112491707B (zh) | 一种转发路径的确定方法及装置 | |
CN113055297B (zh) | 网络拓扑发现方法及装置 | |
US10560367B2 (en) | Bidirectional constrained path search | |
US20120170486A1 (en) | Hiding a service node in a network from a network routing topology | |
CN113347059B (zh) | 基于固定探针位置的带内网络遥测最优探测路径规划方法 | |
US20150023173A1 (en) | Systems And Methods For Managing A Network | |
CN109672562B (zh) | 数据处理方法、装置、电子设备及存储介质 | |
EP1762053B1 (en) | Method and system for network topology updating using topology perturbation | |
US11595267B2 (en) | Methods and systems for distributed network verification | |
CN108924011A (zh) | 用于ospf+路由协议的监测系统、相关设备、方法及介质 | |
CN102882787A (zh) | 确定流量工程隧道的转发路径的方法和装置 | |
CN110311828B (zh) | 一种网络验证的方法、装置、计算机存储介质及电子设备 | |
CN117201365A (zh) | 流量确定方法、装置、电子设备及存储介质 | |
CN117834437A (zh) | 基于互联网路由配置的量化属性验证方法 | |
US12095648B2 (en) | Routing table anomaly detection using unsupervised machine learning | |
CN115277418A (zh) | 一种bgp网络运维系统 | |
EP1657859A1 (en) | Protocol speed increasing device | |
CN111478808B (zh) | 协助配置更新验证的方法、系统、电子设备及存储介质 |
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 |