本发明属于软件定义网络,具体涉及一种适用于意图驱动的软件定义网络的通用意图提取方法。
背景技术:
1、随着网络技术的迅速发展,传统的网络架构逐渐在灵活性和可扩展性方面展现出其局限性。为应对这些挑战,软件定义网络和意图驱动网络代表了网络管理和操作的一种革命性变化。其中,软件定义网络的核心思想在于将网络控制层从数据转发层中分离出来,使网络控制更加集中和灵活。意图驱动网络进一步抽象了网络管理的过程,允许网络管理员通过声明高级自然语言意图的方式来直接控制和知道网络的配置和操作。然而,随着意图驱动网络的发展,新的挑战也随之出现。其中最主要的挑战之一就是如何确保高级意图与网络设备的实际配置之间的准确性和一致性。该问题的核心在于,现有技术往往难以桥接高级意图和底层网络配置之间存在的语义偏差,导致实际网络操作(配置)与预期目标(意图)之间存在语义偏差。
2、现有技术一:在传统网络环境中,分析和溯源底层网络配置通常依赖于配置反编译工具。这类工具通常利用算法及求解器对配置文件进行解析,进而将高级网络行为以表格等形式进行抽象描述,使得网络管理员能够更加直观地把握当前网络的配置状况。尽管这种方法能在一定程度上解析传统网络设备的行为,但它却往往局限于对单个网络设备的逐一分析,缺乏对于大规模网络设备集群行为的灵活分析与高级抽象表征能力。此外,由于这类方法往往采用z3求解器等工具来解决配置逻辑问题。然而,随着配置项数量的增加,计算复杂度随着分析规模的增大而显著提高,导致分析网络配置所需的时间会大幅增加。因此,在应对现代大规模且高度动态的网络环境时,这些方法的效率和可靠性将受到挑战。
3、现有技术二:在意图驱动网络领域,自底向上的意图提取技术主要依赖于成熟的网络反编译工具。这些工具大多设计用于处理传统网络设备的需求。因此,目前自底向上的意图提取技术主要应用于传统网元设备,如路由器和交换机。虽然这些方法在一定程度上能够分析和提取网络配置情况,但它们往往受到反编译工具本身限制的约束,导致目前的意图提取技术缺乏必要的灵活性和自适应能力,尤其在软件定义网络场景等更加灵活的网络环境时显得尤为明显。此外,在意图驱动网络中,策略下发后通常需要同时配置多个网元设备,但现有的自底向上的意图提取技术仅能针对单一网元(交换机)进行分析和溯源,这限制了其在进行意图逆向溯源时的有效性,难以确保溯源意图的准确性。目前尚缺乏专门针对软件定义网络的意图提取技术。
4、综上所述,传统的网络意图提取技术主要针对传统网络架构而设计,因此在效率和灵活性方面存在局限,难以满足基于软件定义网络的主流意图驱动网络实际需求。这些传统的意图提取技术通常局限于单一网元的配置文件进行分析和意图溯源,即一次只能处理单个网络设备的分析。这在软件定义网络中显得尤为不足,因为软件定义网络环境下提取一条高级连通性意图往往需要同时对多个交换机设备进行综合分析,以准确提取这些设备的原始意图。这种局限性导致传统技术难以有效应对软件定义网络中的高级网络配置需求,无法同时分析多个设备以提取网络级别的复杂意图。此外,传统网络意图提取技术依赖于求解器等工具来解决意图溯源过程中的配置逻辑问题,因此,随着配置项的增多,溯源设备原始意图所需的时间急剧增加,进一步降低了意图溯源的效率。
技术实现思路
1、为了克服上述现有技术存在的不足,本发明的目的在于提供一种适用于意图驱动的软件定义网络的通用意图提取方法,该方法不仅克服了传统技术在处理传统网络架构时的局限性,还能够有效地适应软件定义网络架构,有效地对大规模网元设备进行原始意图的提取。通过采用确定性的分析方法,避免了对求解器的依赖,有效地解决了传统意图提取技术在效率和时间消耗上的问题。能够更加高效和准确地从配置文件中分析和提取网络的高级意图,满足现代网络环境下的复杂需求。
2、为了实现上述目的,本发明采用的技术方案是:
3、一种适用于意图驱动的软件定义网络的通用意图提取方法,包括以下步骤;
4、s101,采集网络拓扑和交换机配置流表,分别为交换机和网络拓扑进行初始化处理;
5、s102,独立分析单个交换机内的流表项,根据流表中的源ip地址和目的ip地址(即端点二元组)的特征,对每个交换机的流表项进行聚合,以此构建基于意图的抽象表征模型;其中所述源ip地址和目的ip地址构成端点二元组;
6、s103,综合分析所有交换机的意图抽象表征模型,对相同端点二元组信息的流表项进行语义链接,构建意图聚合表征模型;
7、s104,通过调用onos控制器提供的拓扑信息api获取网络拓扑数据,以此验证意图聚合表征模型,并提取高级网络意图。
8、所述s101具体为:
9、通过控制器的北向api接口周期性地从南向获取网络实时的交换机配置流表信息以及网络拓扑连接信息;获取信息初始化过程包括两部分,交换机和网络拓扑。
10、所述交换机初始化处理为,每个交换机对应一个单独的配置流表文件,首先去除输出端口为控制器的流表条目,并将其余的流表项转换为python的字典类型;
11、所述网络拓扑的初始化处理为,将json格式的网络拓扑信息使用python的networkx库来处理,转换为图形结构,在此结构中,交换机作为节点,链路作为双向边,形成一个双向图。
12、进一步的,交换机的初始化包括处理每个交换机对应的配置流表文件,包括从流表中移除只想控制器的输出端口流表条目,并将其余的流表项转换为python的字典类型,以便于进行后续处理。
13、所述字典类型的数据结构便于快速访问和修改流表项的详细信息,同时,所述网络拓扑的初始化处理将json格式的网络拓扑信息转换为图形结构,其中每个交换机和链路分别对应图中的节点和双向边。这种图结构简化了表示和分析网络的连接状态和路径信息。这两种数据结构都是为了实现高效的网络配置和管理。
14、所述s102具体为:
15、s102,单独分析每个交换机配置流表文件,对具有相同源ip地址和目的ip地址的流表条目进行聚合,构建意图抽象表征模型;
16、在聚合过程中,保持源ip地址和目的ip地址不变,而将流表条目中的其他属性,如端口号,聚合到一个列表中;经过流表聚合,原先可能因不同属性(如不同端口号)而分开的流表条目,现在通过属性的聚合,被聚合为一个单一的流表条目,流表聚合有效地减少同一交换机内流表的冗余,提升了原始配置文件的抽象等级,简化从底层到高层意图的提取过程。
17、所述s103具体为:
18、s103,综合分析所有交换机的所述意图抽象表征模型,并对具备相同源ip地址和目的ip地址的意图抽象表征模型中的流表条目进行分类,构建意图聚合表征模型,意图聚合表征模型将原始的、具体的流表信息的抽象等级进一步提升,使其更加贴近于自然语言意图。
19、所述s104具体为:
20、结合网络拓扑双向图,判断意图聚合表征模型中的源ip地址和目的ip地址在无向图上的连通性,经过判断的意图聚合表征模型称为元意图模型,最终,根据每个元意图模型中的源ip地址、目的ip地址、端口号信息,按照nile(网络意图语言)模板实现网络高级意图的提取。
21、(1)连通性的定义
22、在图论中,连通性定义可以表示为一个条件表达式:
23、
24、其中u和v分别代表网络拓扑图的源节点和目标节点,即源ip地址和目的ip地址;
25、(2)连通性的判断方法:
26、a.图结构构建:首先将网络拓扑处理为图结构,这用到了python中的networkx包,每个交换机和链路信息均已表示为了图中的节点和边;
27、b.连通性判断:使用networkx库中的连通性函数,如“has_path”,来直接检查图中的两个节点(源ip地址和目的ip地址对应的节点)之间是否存在路径。调用方法例如:“nx.has_path(g,source,target)”,其中“g”是网络拓扑的图结构,“source”是源节点,“target”是目标节点。
28、c.返回结果:如果“has_path”函数返回“true”,则表示源节点和目标节点之间在网络图中是连通的。如果返回“false”,则表示两个节点之间不存在通路。
29、本发明的有益效果:
30、1、高级意图提取效率:通过对流表条目进行聚合和语义连接两次聚类操作,实现了配置文件从较低抽象等级向较高抽象等级的转变。相较于基于使用求解器的网络意图提取技术,在网络意图的提取时间和提取效率上具备明显优势。首先,通过对流表条目进行聚合,将多个相关的流表条目合并为一个聚合条目。这减少了需要处理的数据量。接下来语义连接操作将流表条目之间的语义关系(如源ip和目的ip的关联性)将聚合后的流表条目进一步分类。这不仅提高了数据的结构化程度,也使得提取特定网络意图时更加直接和高效。相较于传统基于求解器的网络意图提取技术,本方法通过减少必须解析和处理的数据量直接提升了效率。求解器方法通常涉及大量的计算和逻辑校验,这在处理大规模网络数据时变得非常耗时。相较于本发明的两部聚类操作使得网络数据更加集中和有序,从而在执行意图提取操作时,能够更快地定位到相关信息,从而显著地减少了意图提取所需的时间。
31、2、提升普适性和适应性:针对灵活的软件定义网络设计,克服了传统技术对特定设备厂商的依赖,使其更适应于软件定义网络等灵活和动态的网络架构。本发明针对软件定义网络(sdn)设计,特别关注于网络的灵活性和动态配置能力。sdn允许网络管理员通过软件应用来中央话和动态地控制网络资源,而非依赖固定的硬件设备和配置。传统网络常常依赖特定硬件或设备厂商的解决方案,这限制了技术的应用范围和灵活性。本技术不依赖于任何特定的硬件或者厂商,提高了技术的灵活性和普适性。例如,在sdn网络环境中,如果需要快速扩展或修改服务,如添加新的应用优先级或调整安全策略,本技术可以迅速重新配置相关的网络设备,以支持这些更改,而不受硬件限制。
32、3、网络级别的意图提取和分析:与传统技术仅仅能够在设备级提取高级意图相比,本发明能够在网络级别对网络整体意图进行提取和溯源。具备应对全面理解和管理整个网络动态需求的能力,大幅提升网络系统的灵活性、效率和智能化水平。