CN108476179A - 简化的正交网络策略集选择 - Google Patents
简化的正交网络策略集选择 Download PDFInfo
- Publication number
- CN108476179A CN108476179A CN201580085378.9A CN201580085378A CN108476179A CN 108476179 A CN108476179 A CN 108476179A CN 201580085378 A CN201580085378 A CN 201580085378A CN 108476179 A CN108476179 A CN 108476179A
- Authority
- CN
- China
- Prior art keywords
- strategies
- strategy
- quadrature network
- quadrature
- simplified
- 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
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/0895—Configuration of virtualised networks or elements, e.g. virtualised network function or OpenFlow elements
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L49/00—Packet switching elements
- H04L49/50—Overload detection or protection within a single switching element
- H04L49/501—Overload detection
- H04L49/503—Policing
-
- 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/0803—Configuration setting
- H04L41/0806—Configuration setting for initial configuration or provisioning, e.g. plug-and-play
-
- 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/0893—Assignment of logical groups to network elements
-
- 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/0894—Policy-based network configuration management
-
- 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/40—Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks using virtualisation of network functions or resources, e.g. SDN or NFV entities
-
- 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/64—Routing or path finding of packets in data switching networks using an overlay routing layer
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L47/00—Traffic control in data switching networks
- H04L47/10—Flow control; Congestion control
- H04L47/20—Traffic policing
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L47/00—Traffic control in data switching networks
- H04L47/10—Flow control; Congestion control
- H04L47/24—Traffic characterised by specific attributes, e.g. priority or QoS
-
- 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
- H04L41/0869—Validating the configuration within one network element
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
在一些示例中,一种方法包括:访问表示基于第一意图的网络策略和基于第二意图的网络策略的正交网络策略集。该方法还可以包括:从该正交网络策略集确定多个简化的正交网络策略集。多个简化的正交网络策略集可以彼此不同,并且每个简化的正交网络策略集表示基于第一意图的网络策略和基于第二意图的网络策略。该方法进一步可以包括:在多个简化的正交网络策略集之中选择特定的简化的正交网络策略集以在目标交换设备上实施。
Description
背景技术
高速通信网络构成了世界范围内已经不可缺少的数据连接的骨干的一部分。在这样的通信网络内,包括端点设备和交换设备的各种网络设备指引从源端口到目的地端口的网络流量,帮助最终将数据包从源引导到目的地。这些通信网络的效率的提高将增强通信数据的有效性。
附图说明
在下述详细说明中并且关于附图描述特定示例。
图1示出支持简化的正交网络策略集选择的系统的示例。
图2示出通过正交策略简化引擎选择简化的正交网络策略集的示例。
图3示出通过正交策略简化引擎选择简化的正交网络策略集的另一示例。
图4示出针对不同交换设备选择简化的正交网络策略集的示例。
图5示出系统和设备可以实施以支持简化的正交网络策略集选择的逻辑的示例。
图6示出支持简化的正交网络策略集选择的设备的示例。
具体实施方式
本文的公开描述了可以支持在多个不同的简化的正交网络策略集之中选择特定的简化的正交网络策略集的系统、方法、装置和逻辑,多个不同的简化的正交网络策略集中的每一个代表用于在通信网络之间对传送的网络流量强制执行的网络策略。如下面更详细地描述的,特定的简化的正交网络策略集的选择可以基于目标交换设备的特性,诸如目标交换设备的交换能力。本文描述的选择特征可以增加网络操作效率和网络吞吐量,诸如通过选择特定的简化的正交网络策略集,目标交换设备可以以提高的效率实现该特定的简化的正交网络策略集。
图1示出支持简化的正交网络策略集选择的系统100的示例。系统100可以采用计算系统的形式,包括单个或多个计算设备(诸如应用服务器)、交换设备、网络控制器、计算节点、台式或膝上型计算机、智能电话或其他移动设备、平板设备、嵌入式控制器以及更多。系统100可以是通信网络的一部分,并且因此可以采取端点设备的形式、可以采取管理通信网络中的交换功能的控制器设备的形式、可以采取交换设备的形式、可以采取路由器的形式、可以采取边缘设备的形式、或可以采取传输、接收或另外通过通信网络控制数据路由的任何其它网络设备的形式。在一些示例中,通信网络通过软件定义的联网(SDN)架构来实现、控制或管理,并且系统100可以在这样的示例中实现SDN控制器。
系统100可在通信网络中实现基于意图(intent-based)的网络策略。基于意图的网络策略可以参照或采取网络流量匹配准则的任何表达的形式,并且可以参照或采取针对满足匹配准则的网络流量采取的相应动作的形式。基于意图的网络策略的匹配准则可以通过各种策略维度来指定,并且匹配准则可以因此包括在网络流量之中匹配的特定维度值。
作为一个示例,基于意图的网络策略可以根据源、目的地、分类器和环境维度指定网络策略,其中与策略结果的特定维度值相匹配的网络流量导致执行相应的动作。源维度可以包括网络流量源的指示(例如,传输包的端点设备的源因特网协议(IP)地址),并且目的地维度可以包括网络流量的目的地的指示。分类器维度可以指特定类型的网络流量、网络流量从其路由或路由到其的特定类型的设备,或网络流量通过其可以被分类的任何其他类型的标识符。例如,分类器可以包括涉及IP协议、以太网类型、L4源端口以及其他类型的表达的逻辑表达式的组合。环境维度可以指在其期间网络策略应该应用的全局条件(例如,在特定的时间帧期间、当网络消耗超过阈值水平时、或者根据任何其他环境标准)。
系统100可以从通信网络的端点设备上执行的应用程序识别基于意图的网络策略。例如,特定应用程序可以指定基于第一意图的网络策略,以“检查发送到数据中心的所有流量”,并且另一应用程序可以指定基于第二意图的网络策略,以“在8am到5pm期间记录来自承包商的所有IP流量”。当通信网络内的应用程序想要控制网络中的相同交换设备而以特定方式处理网络流量时,可能会在特定交换设备的一个应用程序的指令与另一个应用程序的指令之间发生冲突。在这种情况下,系统100可以支持在基于不同的意图的网络策略之间出现的策略冲突的检测和解决,例如,当网络流量满足多于一个基于意图的网络策略的匹配准则(例如,指定的维度值)时采取哪种动作。
具体地,系统100可以将多个基于意图的网络策略转换成正交网络策略集。正交网络策略集可以指一组相互正交的多个网络策略(也称为正交网络策略),因为正交网络策略集中没有正交网络策略与正交网络策略集中的任何其它正交网络策略相冲突。换句话说,正交网络策略可能不具有任何重叠的策略空间,因为正交网络策略的维度值不重叠。在下面进一步详细描述正交网络策略集的冲突检测和确定、以及在2015年2月10日提交的、标题为“网络策略冲突检测和解决”的、编号为US2015/015122的PCT申请,该申请通过引用整体合并于此。正如下面更详细地描述的,系统100可以进一步将正交网络策略集简化为多个简化的正交网络策略集,并选择特定的简化的正交网络策略集以在目标交换设备上实施,例如,通过转换成由目标交换设备支持的特定于协议的(protocol-specific)格式。
作为一个示例,图1所示的系统100包括冲突解决引擎108和正交策略简化引擎110。系统100可以以各种方式(例如硬件和编程)实施引擎108和110(及其组件)。引擎108和110的编程可以采取存储在非瞬态机器可读存储介质上的处理器可执行指令的形式,并且引擎108和110的硬件可以包括执行这些指令的处理资源。处理资源可以采取单处理器或多处理器系统的形式,并且在一些示例中,系统100使用相同的计算系统特征或硬件组件(例如,公共处理资源)实现多个引擎。
如图1所示的示例中所看到的,冲突解决引擎108可以包括引擎组件,用于获得表示基于第一意图的网络策略和基于第二意图的网络策略的正交网络策略集。还如图1中所看到的,正交策略简化引擎110可以包括引擎组件,用于确定第一简化的正交网络策略集,该第一简化的正交网络策略集将来自正交网络策略集的一对正交网络策略组合成第一简化的正交网络策略;确定第二简化的正交网络策略集,该第二简化的正交网络策略集将来自正交网络策略集的不同的一对正交网络策略组合成第二简化的正交网络策略;以及基于目标交换设备的特性而选择第一简化的正交网络策略集而不是第二简化的正交策略集以在目标交换设备上实施。
接下来更详细地描述与简化的正交网络策略集选择有关的一些示例特征和具体说明。
图2示出通过正交策略简化引擎110选择简化的正交网络策略集的示例。图2中的示例包括交换设备201,交换设备201可以是传送网络流量的任何设备,例如路由器、交换机、集线器或各种其他网络设备。在图2中还示出了控制器210,控制器210可以管理交换设备201。控制器210可以实施冲突解决引擎108、正交策略简化引擎110、以及任何数量的其他引擎,以支持通信网络的交换设备中的冲突解决和基于意图的网络策略的实施。如上所述,例如,引擎可以采用硬件和编程的形式。
在一些示例中,控制器210是SDN控制器。因此,控制器210可以与由控制器210所管理的交换设备物理分离,与对网络流量从底层系统发送到何处做出决定(这可以被称为控制平面)的系统解耦,然后该底层系统转发网络流量到选定的目的地(可以称为数据平面)。控制器210可以控制数据在数据平面上如何穿过,例如通过在通信网络中确定和分配用于流量流的数据路由,并配置被管理的交换设备根据确定的数据路由来路由特定的流量流(也称为数据流)。因此,控制器210可以将网络交换功能分配给目标交换设备,诸如图2中所示的交换设备201。
控制器210可以识别由各种应用程序指定的基于意图的网络策略,诸如在SDN架构的应用层中执行的应用程序。作为响应,控制器210可以在被管理的通信网络中实施基于意图的网络策略,具体地,通过指示交换设备当网络流量满足基于意图的网络策略的匹配准则(例如,维度值)时采取何种动作。针对在多个基于意图的网络策略之间出现的冲突,控制器210可以识别和解决这种冲突。在这样做时,冲突解决引擎108可以获得表示多个基于意图的网络策略的正交网络策略集220,包括以编号为US2015/015122的PCT申请中描述的任何方式。
冲突解决引擎108可以确定多个基于意图的策略之间的策略重叠,多个基于意图的策略具有以下四个维度:源维度、目的地维度、分类器维度和环境维度。为了通过基于意图的网络策略“A”和“B”来说明,冲突解决引擎108可以识别正交策略空间“A和B”(或“A&&B”)、“A和非B”(或“A&&!B”),以及“非A和B”(或“!A&&B”),并且在特定维度的基础上这样做。因此,针对基于意图的4维度策略“A”和“B”,多达总共81个没有重叠策略空间的正交网络策略是可能的。下面的表1说明了冲突解决引擎108可以针对基于意图的4维度网络策略“A”和“B”所识别的81种可能的正交网络策略。
表1:针对基于意图的4维度网络策略A和B的可能的正交网络策略
如上所述,正交网络策略中的一些被标记为“无效”。冲突解决引擎108可以识别这种无效的正交网络策略,并且从正交网络策略集220中排除无效的正交网络策略。无效的正交网络策略可以指表示唯一匹配第一策略的一个维度并且唯一匹配第二策略的另一维度的策略空间的正交网络策略。由于在至少一个维度中排除了这两个策略,所以既不满足第一策略的匹配准则,也不满足第二策略的匹配准则。因此,整个正交策略不适用,并且因此可以被视为无效。
例如,网络策略#10-#18中的每一个网络策略包括:(i)仅基于意图的网络策略“B”的源维度匹配准则,和(ii)仅基于意图的网络策略“A”的目的地维度匹配准则。因此,对于这些网络策略#10-#18中的每一个,基于意图的网络策略“A”和“B”,排除了网络策略“A”的一个维度(源维度),并且排除了网络策略“B”的一个维度(目的地维度),而不管针对这些基于意图的网络策略的分类器和环境维度。也就是说,对于策略#10-#18,不满足策略“A”和“B”两者的匹配准则,因此没有可以执行的动作。因此,这些策略#10-#18被冲突解决引擎108识别为无效。冲突解决引擎108可以类似地识别其他无效的正交网络策略以从正交网络策略集220中排除。
上面的表1包括“有效?”列,其指示冲突解决引擎108可以从正交网络策略集220中排除的无效的正交网络策略。表2使用与表1一致的策略引用编号来说明冲突解决引擎108可以针对基于意图的4维度网络策略“A”和“B”识别31种可能的有效的正交网络策略。
表2:针对基于意图的4维度网络策略A和B的可能的有效的正交网络策略
如上所看到的,上面的表2图示针对每个可能的有效的正交网络策略执行的相应动作。执行的相应动作可以反映基于意图的网络策略“A”或“B”,其具有满足特定的正交网络策略的匹配准则中的每一个匹配准则。例如,正交网络策略#69对于策略“A”的源、目的地、分类器和环境维度中的每一个都具有“1”(或满意)值,并且因此执行基于意图的网络策略“B”的动作(表示为动作B)。对于正交网络策略#81,冲突解决引擎108可以确定执行网络策略“A”和“B”两者的相应动作,因为策略#81包括针对策略“A”和“B”两者的维度中的每一个维度的满意值。
因此,对于基于意图的4维度网络策略“A”和“B”的示例,冲突解决引擎108可以获得多达31个正交网络策略以包括在正交网络策略集220中。然而,包括在正交网络策略集220中指定的正交网络策略的确切数量可以根据基于意图的网络策略“A”和“B”的特定匹配准则(例如,维度值)而变化。为了说明,基于意图的网络策略“A”和“B”针对特定的策略维度(例如,源维度)可以有一些或没有重叠的策略空间。因此,冲突解决引擎108可以确定在正交网络策略集220中不包括表2中列出的可能的正交网络策略中的一些。因此,正交网络策略集220中包含的正交网络策略的数量可以根据由正交网络策略集220表示的基于意图的网络策略之间的重叠程度而变化。
为了提供连续的、具体的说明以帮助解释本文描述的特征,控制器210可以控制通信网络中的交换设备(例如,根据SDN架构)来实施基于意图的网络策略P1,以“检查发送到数据中心的所有流量”,以及实施基于意图的网络策略P2,以“记录在8am-5pm期间来自承包商的所有IP流量”。在这个具体说明中,控制器210可以将在基于意图的4维度网络策略框架中的基于意图的网络策略P1识别为:
源P1 | 目的地P1 | 分类器P1 | 环境P1 | 动作P1 |
* | 数据中心 | * | * | 检查 |
因此,控制器210可以识别源、目的地、分类器和环境维度的匹配准则以及满足匹配准则的网络流量的相应动作。基于意图的网络策略P1中的*匹配准则值可以是表示源、分类器和环境维度的任何值、未指定值或“不关心”值的通配符值。也就是说,*通配符值可以指示特定维度的任何值都将满足网络策略的匹配准则。对于基于意图的网络策略P2,控制器210可以将在基于意图的4维度网络策略框架中的基于意图的策略P2识别为:
源P2 | 目的地P2 | 分类器P2 | 环境P2 | 动作P2 |
承包商 | * | IP | 8am-5pm | 记录 |
从基于意图的网络策略P1和P2,冲突解决引擎108可以确定包括多个正交网络策略的正交网络策略集220,多个正交网络策略一起表示策略P1和P2(以及解决重叠策略空间之间的冲突)。
因此,将这些具体的网络策略P1和P2应用到上面表2中的有效的正交网络策略,冲突解决引擎108可以识别有效的正交网络策略的以下维度值(与动作一起示出),如下面的表3中所示:
表3:示例网络策略P1和P2的维度值
注意,表示“任何”值的相反值的表达式(非*)或(!*),针对源、目的地和分类器维度简化为“无”值,并且针对环境维度简化为“从不”值。此外,任何匹配准则与“无”或“从不”值的逻辑组合都简单地简化为“无”或“从不”。例如,源维度表达式(承包商和&!*)简化为无,因为没有满足表达式的维度值。同样,环境维度表达式(8am-5pm&&!*)简化为“从不”,因为“任何”环境维度值(或“未指定”)的相反值是从不(或无),并且任何匹配准则与“从不”值的逻辑组合简单地简化为“从不”。此外,还要注意,通配符值*和特定维度值的逻辑组合恰好简化为特定维度值。例如,正交网络策略#50的源维度值可以表示为表达式(源P1&&!源P2)。在具体的说明中,这个表达式采用形式(*&&!承包商),并简单地简化为(!承包商),如上所示。
针对任何维度具有“无”或“从不”值的正交网络策略,冲突解决引擎108可以从正交网络策略220中排除、忽略或删除这些策略。因此,对于这个特定的具体说明,冲突解决引擎108可以确定正交网络策略集220包括9个正交网络策略,而不是上面列出的所有可能的31个正交网络策略。具体地,冲突解决引擎108可以识别表4中所示的以下正交网络策略,从而以这种具体说明表示基于意图的网络策略P1和P2:
表4:针对示例网络策略P1和P2的示例正交网络策略集220(具有动作)
因此,冲突解决引擎108可以在这个具体说明中确定正交网络策略集220,以包括上面的9个正交网络策略。
从正交网络策略集220中,正交策略简化引擎110可以确定多个简化的正交网络策略集,诸如图2中所示的简化的正交网络策略集221和222。简化的正交网络策略集可以指一组正交网络策略,其包括至少一个组合的正交网络策略,至少一个组合的正交网络策略组合了两个或多个正交网络策略,例如,来自正交网络策略集220的网络策略或先前组合的网络策略。简化的正交网络策略集可以在其包含比原来的正交网络策略集220更少的正交网络策略的意义上被简化。
正交策略简化引擎110能够以不同组合而组合正交网络策略集220中的各种正交网络策略,以生成多个不同的简化的正交网络策略集。简化的正交网络策略集中的每一个可以表示基于相同意图的网络策略,但是以不同的方式实现。图2中的示例显示了正交策略简化引擎110确定的两个简化的正交网络策略集(分别标记为简化的正交网络策略集221和222),尽管正交策略简化引擎110可以确定多于两个的更多的简化的正交网络策略集。
正交策略简化引擎110可以通过通配符值(这里表示为*值)组合正交网络策略。例如,正交策略简化引擎110可以识别一对正交网络策略,该一对正交网络策略在是否满足特定策略维度的匹配准则方面不同,并将这对正交网络策略组合为针对不同维度值而利用通配符值的组合的正交网络策略。该对正交网络策略可以是来自正交网络策略集220的两个正交网络策略、来自正交网络策略集220的正交网络策略和先前组合的正交网络策略,或者两个先前组合的正交网络策略。作为一个示例,正交策略简化引擎110可以确定,表示特定的一组基于意图的网络策略(例如,基于意图的网络策略P1和P2)的正交网络策略集220包括以下三个正交网络策略,该三个正交网络策略对应于来自表1、表2、表3和表4的以上策略引用编号#78、#77、#80:
正交网络策略#78、#77和#80可以是正交网络策略集220的子集,例如,如在连续的具体说明的上下文中的表4中所示。如上所述,正交网络策略#78和#77仅在是否满足基于意图的网络策略P2的环境维度的匹配准则(或准则)方面不同。正交网络策略#77和#80仅在是否满足基于意图的网络策略P2的分类器维度值的匹配准则(或准则)方面不同。
在上述示例中,正交策略简化引擎110可以确定第一简化的正交网络策略集,其包括被组合成以下组合的正交网络策略的正交策略#78和#77:
以一致的方式,正交策略简化引擎110可以确定第二简化的正交网络策略集,其组合不同的一对正交网络策略,诸如正交网络策略#77和#80,其可以被组合成以下组合的正交网络策略:
在本示例中,第一简化的正交网络策略集和第二简化的正交网络策略集每个表示相同的基于意图的网络策略,但是以正交和组合的正交网络策略的不同组合来实施。
为了利用基于意图的网络策略P1和P2在继续具体说明的上下文中阐释,正交策略简化引擎110可以获得以下三个正交网络策略作为正交网络策略集220的子集(使用与表1、表2、表3和表4一致的引用编号):
引用编号 | 源 | 目的地 | 分类器 | 环境 | 动作 |
#78 | 承包商 | 数据中心 | !IP | (8am-5pm) | 检查 |
#77 | 承包商 | 数据中心 | !IP | !(8am-5pm) | 检查 |
#80 | 承包商 | 数据中心 | IP | !(8am-5pm) | 检查 |
因此,正交策略简化引擎110可以组合策略#78和#77来确定第一简化的正交网络策略集,并将策略#77和#78组合起来,以确定不同的第二正交网络策略集(甚至超过这两个,如下面详细说明)。然后,正交策略简化引擎110可以选择特定的简化的正交网络策略集以在目标交换设备上实施。下面给出了利用基于意图的网络策略P1和P2在持续具体说明的上下文中,详细阐释简化的正交网络策略集的确定。
在一些示例中,正交策略简化引擎110将具有相同的相应动作的正交网络策略组合,但是确定不组合具有不同的相应动作的正交网络策略。例如,正交策略简化引擎110可以确定不将具有相应动作(例如,检查)的第一正交网络策略与具有不同相应动作(例如,记录或记录+检查)的第二正交网络策略组合。
虽然上面描述了正交网络策略的示例组合,但正交策略简化引擎110可以以多种不同的方式和针对多个不同的维度来组合正交网络策略。正交策略简化引擎110可通过进一步将先前组合的正交网络策略与其他正交网络策略(或其他先前组合的正交网络)组合来产生多个不同的组合,从而以迭代、顺序或并行的方式来确定简化的正交网络策略集。正交策略简化引擎110从正交网络策略集220确定简化的正交网络策略集的过程也可以被称为正交网络策略集220的简化。
因此,正交策略简化引擎110可以生成多个简化的正交网络策略集,每个正交网络策略集包括单个或多个组合的正交网络策略,多个简化的正交网络策略集由多个正交网络策略的不同组合产生。在一些示例中,控制器210可以针对发生组合的数量设置组合限制从而控制资源消耗(例如,通过限制针对特定组合的正交网络策略所包括的组合的数量或以各种其他方式)。
正交策略简化引擎110可以从多个简化的正交网络策略集选择特定的简化的正交网络策略集以在目标交换设备上实施。在图2中,交换设备201是正交策略简化引擎110针对其从简化的正交网络策略集221和222以及确定的任何其他简化的正交网络策略集中选择特定的简化正交网络策略集的目标交换设备。
在某些实施方式中,正交策略简化引擎110在将多个简化的正交网络策略集中的一些或全部转换成由目标交换设备支持的特定于协议的格式之后,选择用于实施的特定的简化的正交网络策略集。特定于协议的格式可以指交换设备使用的协议的配置消息格式或交换配置格式,以实施匹配准则并执行相应动作。示例协议包括针对SDN架构或访问控制列表(ACL)的OpenFlow协议。简化的正交网络策略集的转换因此可以采取特定于协议的消息的形式(例如,OpenFlow消息或ACL消息)。
在图2中所示的示例中,正交策略简化引擎110将简化的正交网络策略集221和222传递给转换引擎230,转换引擎230也可以是控制器210的一部分。转换引擎230可以将简化的正交网络策略集221和222转换成由交换机设备201支持的特定于协议的格式,包括根据编号US 2015/015122的美国PCT申请中描述的任何方式。在这个示例中,正交策略简化引擎110从转换的特定于协议的消息231和232中选择特定的简化正交网络策略集以在交换设备201上实施。也就是说,正交策略简化引擎110在该特定示例中选择简化的正交网络策略集221。在这样做时,正交策略简化引擎110可以基于各种因素或因素组合的来进行选择,下面给出这样的一些示例。
正交策略简化引擎110可以基于目标交换设备的特性来选择特定的简化的正交网络策略集。例如,正交策略简化引擎110可以识别资源消耗率、特定交换能力、表实现(tableimplemmetation)、数据包处理特性或目标交换设备的任何其他属性,以在选择特定的简化正交网络策略集而进行转换时考虑。通过考虑目标交换设备本身的特定特性,正交策略简化引擎110可以选择特定的简化的正交网络策略集,当转换成特定于协议的格式时,特定的简化的正交网络策略集支持以提高的效率来实现表示基于意图的网络策略,例如,以减少的资源消耗或增加的网络吞吐量。
在一些示例中,在简化的正交网络策略集选择中所考虑的目标交换设备的特性是针对正交网络策略集220中的特定匹配字段的通配符处理能力。匹配字段可以指与正交网络策略集220的维度值相对应的特定数据包特性,例如,与正交网络策略集220的源维度值对应的数据包的源IP地址。因此,当目标交换设备支持针对特定匹配字段的通配符处理能力而不是其他匹配字段时,正交策略简化引擎110可以选择包括针对特定匹配字段(例如,针对相应的维度值)的通配符值的简化的正交网络策略集。
作为另一个示例,在简化的正交网络策略集选择中所考虑的目标交换设备的特性可以是目标交换设备的表能力。表可以指任何查找机制或逻辑,交换设备通过该查找机制或逻辑分析网络流量,例如识别满足数据包转发或安全动作的匹配准则的网络流量等。因此,交换设备的表能力可以指关于交换设备如何处理数据包数据的任何能力。目标交换设备的示例表能力包括由目标交换设备实施的多个表,由目标交换设备实施的表的表大小,由目标交换设备实施的表支持的动作的数量、类型或组合,由目标交换设备实施的表以增加的效率实施的特定动作,或它们的任何组合。
作为另一个示例,正交策略简化引擎110可以基于表或其他数据包处理逻辑的实施来选择特定的简化的正交网络策略集。例如,目标交换设备可以使用三态内容可寻址存储器(TCAM)来实施针对特定动作的表,其中正交策略简化引擎110可以选择用于实施的简化的正交网络策略集,该简化的正交网络策略集在多个字段上匹配并且具有用于匹配的较少数量的流表项。另一方面,当目标交换设备使用散列表实施针对特定应用程序的表时,正交策略简化引擎110可以选择简化的正交网络策略集,其可以具有更大数量的流表项,但匹配于单个字段(而不是多个字段)。
在考虑目标交换设备的特性时,正交策略简化引擎110可以选择简化的正交策略网络集,以保持在目标交换设备的流表之间的特定动作分布。例如,目标交换设备可以为特定动作(例如,复制数据包)分配高性能表,并为具有较小性能要求的其他动作(例如,丢弃数据包)分配其他低性能表。高性能表可以指表或其他数据包处理逻辑,该表或其他数据包处理逻辑以高于阈值速率或者以比由交换设备实施的其他表(例如,低性能表)大的速率来处理网络流量。在这个示例中,正交策略简化引擎110可以选择特定的简化的正交网络策略集,其维持用于高性能表、低性能表或两者的动作分布。例如,正交策略简化引擎110可以通过选择具有较少数量的流的特定的简化的正交网络策略集来这样做。
在这方面,正交策略简化引擎110可以考虑目标交换设备的任意数量的表的表规模(table scale)。表规模可以指交换设备的特定表的使用容量或未使用容量。正交策略简化引擎110可以根据特定的表规模准则来选择特定的简化的正交网络策略集,诸如增加特定的低性能表的使用容量超过阈值水平(例如,大于90%的使用容量)或不增加超过阈值量的高性能表的使用容量或在其他方面(例如,仅针对高性能表或任何其他可配置的值或度量实施30个附加表项目)。因此,考虑表规模可以允许正交策略简化引擎110具体地选择简化的正交网络策略集来实施,同时降低性能影响,例如,当简化的正交网络策略集实施的网络策略不包括性能密集的动作时,这允许保留高性能表以用于具有更高性能利用率的其他策略。
用于匹配的数据流或表项目的数量可能是正交策略简化引擎110在选择多个简化的正交网络策略集之中的简化的正交网络策略集时所考虑的因素。数据流可以指在源和目的地之间传递的数据流,源和目的地中的任一个可以是单个端点实体或端点实体的集合(例如,设备、IP地址等)。在这方面,数据流可以指一类网络流量。表项目可以指交换设备识别数据流(或数据流集)的任何数据包处理机制。因此,交换设备的表项目可以指定特定匹配准则,以在网络流量中进行识别,作为示例,包括源和目的地IP地址、以太网类型、数据包优先级或从数据包解析的各种其他数据字段。在考虑数据流或表项目的数量时,正交策略简化引擎110可以确定,从特定的简化的正交网络策略集转换的特定于协议的消息导致用于在目标交换设备中实施的最少数量的表项目,或者从或将从多个简化的正交网络策略集中的每一个简化的正交网络策略集转换的特定于协议的消息之中导致用于匹配的最少数量的数据量。
作为另一个示例,特定的简化的正交网络策略集的选择可以基于针对正交网络策略集中的特定匹配字段的若干数据值。为了说明,第一简化的正交网络策略集可以指定匹配“承包商”的分类器维度值和匹配源维度值的通配符,并且第二简化的正交网络策略集可以指定匹配“数据中心”的源维度值和分类器维度值的通配符。在这个示例中,承包商的数量(例如满足“承包商”维度值的数据值)和数据中心的数量(例如,满足“数据中心”维度值的数据值)可以由正交策略简化引擎110来解释。因此,如果存在200个承包商,但只有2个数据中心访问通信网络,则正交策略简化引擎110可以选择第二简化的正交网络策略集在目标交换设备上实施。
在某些实施方式中,正交策略简化引擎110考虑目标交换设备中实施的各种表的表性能和效率。交换设备可以实施支持相同动作的不同表,并且不同表可以具有不同的性能特性(例如,更高性能的表可以处理具有特定动作或具有增加的吞吐量、速度或效率的动作组合的数据包)。在这方面,正交策略简化引擎110可以选择比另一个简化的正交网络策略集具有更多表项目的特定的简化的正交网络策略集,但是可以在交换设备中在较高性能的表中(部分或全部)实施。当较高性能的表不具有未使用容量以支持从简化的正交网络策略集转换的所有表项目时,正交网络策略可以选择具有映射到数据流的表项目的特定的简化的正交网络策略集,其中该数据流具有优先级、消耗的带宽、关联的终端主机的数量、或超过预定阈值的任何其他数据流特性(例如,高优先级、高水平的预期带宽消耗等)。
在上述示例中,正交策略简化引擎110可以选择特定的简化的正交网络策略集,与从正交网络策略集220确定的其他简化的正交网络策略集相比,所选择的特定的简化的正交网络策略集转换为用于实施的更多数量的表项目或者用于匹配的更多数量的数据流。然而,正交策略简化引擎110仍然可以做出这样的选择,因为特定的简化的正交网络策略集可以产生更好的性能(例如吞吐量、速度等),尽管具有用于实施的更多的表项目或用于匹配的更多数量的数据流。当正交策略简化引擎110选择具有针对维度的通配符值的特定的简化的正交网络策略集时,这种情况可能发生,较高性能表(例如,TCAM)具有针对该维度的通配符处理能力,但与另一个简化的正交网络策略集(例如,其具有针对维度的通配符值,较高性能表不支持针对该维度的通配符处理能力)相比,转换成较大数量的表项目或用于匹配的数据流。
换句话说,正交策略简化引擎110可以选择特定的简化的正交网络策略集,即使当不同的简化的正交网络策略集转换成比特定的简化的正交网络策略集更少数量的特定于协议的消息时。正交策略简化引擎110可以这样做,因为目标交换设备包括特定表,与不同的简化的正交网络策略集相比,该特定表以更大的速度处理特定的简化的正交网络策略集。在该示例中,特定表(例如,高性能表)可以包括针对特定的简化的正交网络策略集的特定匹配字段的通配符处理能力,但不包括不同的简化的正交网络策略集的不同匹配字段的通配符处理能力。
作为又一个示例,正交策略简化引擎110可以选择考虑动作组合的特定的简化的正交网络策略集,在目标交换设备中的表支持该动作组合。在涉及网络策略P1和P2的具体说明的上下文中,正交策略简化引擎110可以选择特定的简化的正交网络策略集,该特定的简化的正交网络策略集包括能够在支持“记录”和“检查”的动作的表中实施的更大数量的项目,因此,这可以减少被复制到第一表中以执行“记录”动作和被复制到第二表中以执行“检查”动作的表项目的数量。在这方面,正交网络简化引擎110可以考虑目标交换设备的表所支持的动作的丰富性(例如,组合的程度)。
虽然上面已经给出了交换设备特性和其他选择因素的一些示例,但是正交策略简化引擎110可以以任何数量的方式选择特定的简化的正交网络策略集,以在目标交换设备上实施。正交策略简化引擎110可以考虑上述因素的任何组合,并且在一些示例中根据可配置的或用户指定的权重来对不同的特性进行加权。
如上所述,在选择用于在目标交换设备中实施的简化的正交网络策略集时,正交策略简化引擎110可以考虑各种因素。正交策略简化引擎110还可以应用多个迭代或正交策略组合的实例来确定简化的正交网络策略集以从其中进行选择。这些特征中的一些在接下来的涉及网络策略P1和P2的具体说明的上下文中示出。
具体地,详细说明正交策略简化引擎110可以在正交网络策略集220上执行的三个不同组的简化。针对简化中的每一个,正交策略简化引擎110可以开始于网络策略P1和P2的正交网络策略集220,如上表4中所示。在该图示中,由正交策略简化引擎110执行的组的简化分别被称为简化A、简化B和简化C。
针对简化A,正交策略简化引擎110可以通过组合正交网络策略集220中的正交网络策略来执行第一组简化,如下面表5中所示:
表5:针对简化A的第一组简化
从第一组简化,正交策略简化引擎110可以通过进一步组合正交网络策略来执行第二组简化,如下面表6中所示:
表6:针对简化A的第二组简化
在表6中所示的第二组简化之后,正交策略简化引擎110可以确定针对简化A不可能进一步简化,并且因此可以将表6中的正交网络策略识别为由执行简化A所导致的简化的正交网络策略集(在该具体说明的上下文中也称为简化的正交网络策略集A)。因此,简化的正交网络策略集A可以被实施为(例如,转换成)5个表项目,2个表项目总是由目标交换设备(例如,具有*的环境维度值)应用,2个表项目从8am-5pm应用,并且1个表项目在8am-5pm之外应用。因此,当实施时,简化的正交网络策略集A可以要求在任何给定时间点应用至少3个表项目,从8am-5pm应用4个表项目。
转向简化B,正交策略简化引擎110可以通过组合正交网络策略集220中的正交网络策略来执行第一组简化,如下面表7中所示:
表7:针对简化B的第一组简化
注意,针对简化A和简化B的第一组简化仅在下述方面不同:简化A组合策略#77和#78(策略#80不与另一个策略组合),而简化B组合策略#77和#80(策略#78不组合)。从针对简化B的第一组简化,正交策略简化引擎110可以通过进一步组合正交网络策略来执行第二组简化,如下面表8中所示:
表8:针对简化B的第二组简化
在表8中所示的第二组简化之后,正交策略简化引擎110可以确定针对简化B不可能进一步简化,并且因此可以将表8中的正交网络策略识别为由执行简化B所导致的简化的正交网络策略集(在该具体说明的上下文中也称为简化的正交网络策略集B)。因此,简化的正交网络策略集B可以被实施为(例如,转换成)5个表项目,1个表项目总是由目标交换设备应用(例如,具有*的环境维度值),3个表项目从8am-5pm应用,并且1个项目在8am-5pm之外应用。因此,当实施时,简化的正交网络策略集B可以要求在任何给定时间点应用至少2个表项目,从8am-5pm应用4个表项目。
接下来,关于简化C,正交策略简化引擎110可以通过组合正交网络策略集220中的正交网络策略来执行第一组简化,如下面表9中所示:
表9:针对简化C的第一组简化
注意,针对简化C,正交策略简化引擎110不执行分别针对简化A和简化B执行的(i)#77和#80或者(ii)#77和#80的策略组合。相反,正交策略简化引擎110以不同的方式组合正交网络策略集220的网络策略,而仍然表示网络策略P1和P2。从针对简化C的第一组简化,正交策略简化引擎110可以通过进一步组合正交网络策略来执行第二组简化,如下面表10所示:
表10:针对简化C的第二组简化
在表10中所示的第二组简化之后,正交策略简化引擎110可以确定针对简化C不可能进一步简化,并且因此可以将表10中的正交网络策略识别为由执行简化C所导致的简化正交网络策略集(在该具体说明的上下文中也称为简化的正交网络策略集C)。因此,简化的正交网络策略集C可以被实施为(例如,转换成)5个表项目,1个项目总是由目标交换设备应用(例如,具有*的环境维度值),3个项目从8am-5pm应用,并且1个项目在8am-5pm之外应用。因此,当实施时,简化的正交网络策略集C可以要求在任何给定的时间点应用至少2个表项目,从8am-5pm应用4个表项目。
正交策略简化引擎110可在简化的正交网络策略集A、B和C之间选择以在目标交换设备上实施。如上所述,正交策略简化引擎110在评估各种简化的正交网络策略集时,可以考虑用于匹配的数据流的数量或者用于实施的表项目的数量。针对具有NC个数量的承包商端点、ND个数量的数据中心端点和NT个总数量的端点的公司,正交策略简化引擎110可以确定简化的正交网络策略集A、B和C产生用于匹配的如下数量的数据流,分别如表11、表12和表13中所示:
表11:针对简化的正交网络策略集A用于匹配的数据流的数量
表12:针对简化的正交网络策略集B用于匹配的数据流的数量
表13:针对简化的正交网络策略集C用于匹配的数据流的数量
为了针对选择而评估简化的正交网络策略集A、B和C,正交策略简化引擎110可以识别或引用通信网络的特定元素,诸如参考通信网络中的特定端点设备集合而做出选择。具体地,正交策略简化引擎110可以跟踪或识别通信网络中的特定网络元素的数量。为了用明确的数字来阐释,样本通信网络可以包括10个承包商端点、5个数据中心端点和100个总端点。在这种情况下,正交策略简化引擎110可以确定简化的正交网络策略集在8am-5pm时间段和在8am-5pm时间段之外用于匹配的数据流的特定数量,如下面的表14和表15中所示:
表14:在8am-5pm期间针对简化A、简化B、简化C用于匹配的数据流的数量
表15:在8am-5pm之外针对简化A、简化B、简化C用于匹配的数据流的数量
在上面的表14和表15中,还示出了参照简化A的节省比较。因此,在这个示例中,正交策略简化引擎110可以选择简化的正交网络策略集C以在目标交换设备上实施,因为这样做可以导致用于匹配的最少数量的数据流或用于在目标交换设备上实施的最少数量的表项目。在这个示例中,假设目标交换设备针对在简化的正交网络策略集A、B和C的策略中的各种通配符维度值包括通配符处理能力,则确定数据流的数量和节省比较。当目标交换设备针对在简化的正交网络策略集A、B、C中的网络策略的一些维度值而不是所有维度值包括通配符处理能力时,正交策略简化引擎110可以确定用于不同地匹配的数据流的数量,并且可以选择不同的简化的正交网络策略集以在目标交换设备上实施。
在一些示例中,正交策略简化引擎110可以预先计算计算结果以测量用于匹配的表项目或数据流的数量,并且在参照特定组的基于意图的网络策略或正交网络策略集220之前这样做。为了进一步解释,正交策略简化引擎110可以认识到,针对一组基于意图的网络策略,根据每个维度的维度值是否被指定而存在一定的组合集合(并且当没有不指定时,可以采取未指定值或通配符值的形式)。作为说明,基于意图的网络策略P1和P2的源维度可以根据以下组合之一分类:
源P1 | 源P2 |
* | * |
* | 指定 |
指定 | * |
指定 | 指定 |
因此,上述组合包括当(i)当基于意图的网络策略P1的源维度值和基于意图的网络策略P2的源维度值均未指定时(例如,任何一个或通配符);(ii)当基于意图的网络策略P1的源维度值未指定且基于意图的网络策略P2的源维度值被指定时(例如,“所有承包商”、“具有为192.168、25.*的源地址”等);(iii)当基于意图的网络策略P1的源维度值被指定且基于意图的网络策略P2的源维度值未被指定时;以及(iv)当基于意图的网络策略P1的源维度值和基于意图的网络策略P2的源维度值都被指定时。
在本示例中,正交策略简化引擎110可以识别维度组合的总集合,其可以基于包含在基于意图的网络策略中的维度数量而变化。当网络策略P1和P2是4维度(例如,源、目的地、分类器和环境)时,正交策略简化引擎110可以识别256个维度组合(例如,44个数)。针对维度组合的总集合中的每个维度组合,正交策略简化引擎110可以确定正交网络策略集220和多个简化的正交网络策略集,其可以根据特定维度组合的哪种维度值包括通配符值而变化。正交策略简化引擎110可以这样做,因为特定维度的通配符值可以导致针对各种可能的正交网络策略的“无”或“从不”值,允许正交策略简化引擎110从正交策略集220中删除这种正交网络策略。
为了说明,正交策略简化引擎110可以识别的维度组合中的一个如下:
基于意图的网络策略A:
源A | 目的地A | 分类器A | 环境A | 动作 |
* | Specified | * | * | 动作A |
基于意图的网络策略B:
源B | 目的地B | 分类器B | 环境B | 动作 |
Specified | * | Specified | Specified | 动作B |
注意,上面的维度组合与上面给出的具体说明中的基于意图的网络策略P1和P2对应,并且正交策略简化引擎110甚至可以在从通信网络的应用程序接收到实际基于意图的网络策略P1和P2之前确定该维度组合。
由于通配符值的逻辑逆和组合可以导致“无”或“从不”值,因此正交策略简化引擎110(或冲突解决引擎108)可为每个维度组合确定正交网络策略集220。也就是说,即使在接收基于意图的网络策略P1和P2之前,正交策略简化引擎110也可以确定将应用于基于意图的网络策略P1和P2的正交网络策略集220,例如,在应用于256个维度组合中的每一个维度组合的正交策略集220之中。正交策略简化引擎110可以基于包括通配符值的每个维度组合的特定维度来这样做。
针对上面指定的基于意图的网络策略A和B的示例维度组合(基于意图的网络策略P1和P2所对应的),正交策略简化引擎110可以从可能的有效的正交策略预先计算以下正交网络策略,如表16中所示:
表16:针对示例维度组合预先计算的正交网络策略
从针对特定维度组合的预先计算的正交网络策略,正交策略简化引擎110可以删除包括“从不”或“无”维度值的任何正交网络策略,其可以针对根据逻辑维度值(例如,源B或者目的地A)指定的维度组合产生正交网络策略220。在上述示例中,正交策略简化引擎110可以删除策略#1、#3、#7、#9、#19、#21、#25、#27、#41、#42、#44、#45、#55、#57、#61、#68、#69、#71、#72、#73、#75和#79。当正交策略简化引擎110接收与该特定维度组合匹配的基于意图的网络策略时,正交策略简化引擎110(或冲突引擎108)可以通过用策略的具体值替换逻辑维度值而确定正交网络策略集220(例如,用“承包商”替换源B或者用“数据中心”替换“目的地A”)。
针对每个维度组合,正交策略简化引擎110可以进一步对以逻辑值表达的正交网络策略集220执行各种简化。正交策略简化引擎110可以预先计算该简化,甚至在接收到实际的基于意图的网络策略之前。作为使用上述特定维度组合的示例,正交策略简化引擎110可以使用逻辑值而不是具体的策略值,以与上述针对简化A、B和C一致的方式来确定对以逻辑值表达的正交网络策略集220的简化。与上述简化C类似,正交策略简化引擎110可以预先计算针对特定维度组合的以下简化的正交网络策略集,如表17中所示:
表17:针对示例维度组合的预先计算的简化的正交网络策略集
因此,正交策略简化引擎110可以确定以逻辑值表达的多个简化的正交网络策略集,并且可以针对每个维度组合这样做。
按照类似的方式,正交策略简化引擎110可以预先计算逻辑表达式,该逻辑表达式指示来自所确定的简化的正交网络策略集的用于匹配的数据流的数量或者用于实施的表项目的数量。例如,正交网络策略简化引擎110可以包括逻辑表达式中的数字指示符,其指示逻辑数值,而不是具体的数值。数字指示符可以表示通信网络中的多个端点,例如端点的特定类、类型或集合。继续上述特定维度组合示例,正交策略简化引擎110可以预先计算表17中所示的简化的正交网络策略集的逻辑表达式,如下表18中所示:
表18:针对示例维度组合的预先计算的逻辑表达式
在表18中的上述示例中,数字指示符NTotal可以表示通信网络中的端点总数,数字指示符NDestinationA可以表示与基于意图的网络策略A的目的地维度值匹配的端点数量,并且数字指示符NSourceB可以表示与基于意图的网络策略B的源维度值匹配的端点的数量。因此,针对每个维度组合,正交策略简化引擎110可以预先计算正交网络策略集220、多个简化的正交网络策略集、以及多个简化的正交网络策略集的具有数字指示符的逻辑表达式。
一旦接收到基于意图的网络策略集,正交策略简化引擎110可确定基于意图的策略的特定维度值,识别所接收的基于意图的策略对应的特定维度组合,并且检索和填充(利用具体值)正交网络策略集220、简化的正交网络策略集、逻辑表达式或它们的任何组合。因此,正交策略简化引擎110可以根据预先计算的数字指示符的具体数值来计算用于匹配的数据流的数量和用于实施的表项目的数量。然后,正交策略简化引擎110可以选择用于在目标交换设备上实施的特定的简化的正交网络策略集,例如基于用具体值替换预先计算的数字指示符。
通过预先计算维度组合和针对每个维度组合预先计算正交网络策略集220(用逻辑值表达)、简化的正交网络策略集(也用逻辑值表达)和用数字指示符表示的逻辑表达式,正交策略简化引擎110可以增加通过其选择用于实施的特定的简化的正交网络策略集的速度和效率。
在某些情况下,预先计算的简化的正交网络策略集可以假设目标交换设备包括针对网络策略的一些或全部维度的通配符处理能力。当目标交换设备不包括针对在具有通配符值的预先计算的简化的正交网络策略集中的维度的通配符处理能力时,正交策略简化引擎110可以确定不使用预先计算的逻辑表达式来比较在多个简化的正交网络策略集之中用于匹配的数据流的数量或者用于实施的表项目的数量。
如上所述,正交策略简化引擎110可以基于目标交换设备本身的特性选择在目标交换设备上实施的特定的简化的正交网络策略集(例如,以特定于协议的格式传输到目标交换设备)。在这样做时,正交策略简化引擎110可以选择目标交换设备可以更有效或快速实现的特定的简化的正交网络策略集,这可以导致增加的网络吞吐量和增加的通信速度。此外,简化的正交网络策略集选择特征可以支持针对不同类型的交换设备的灵活性,允许SDN控制器或其他管理实体以更大的灵活性、效率和有效性来管理通信网络的交换功能。
图3示出通过正交策略简化引擎110选择简化的正交网络策略集的另一个示例。在图3中所示的示例中,正交策略简化引擎110在策略转换之前选择特定的简化的正交网络策略集以传输到目标交换设备。在这样做时,正交策略简化引擎110可以利用先前识别的目标交换设备的特征来选择特定的简化的正交网络策略集,以用于转换成特定于协议的格式并传输到目标交换设备。
正交策略简化引擎110可以以各种方式识别目标交换设备的设备特性。在一些示例中,控制器210从由控制器210管理的各种交换设备接收能力通信。能力通信可以指示由交换设备提供的特定交换特性,包括数据包处理能力、通配符处理能力(例如,交换设备可以通配的特定数据包字段或匹配字段)或表能力,包括:由目标交换设备实施的表的数量,由目标交换设备实施的表的大小,由目标交换设备实施的表支持的动作数量,由目标交换设备实施的表以增加的效率实施的特定动作,或者其任何组合。在图3中所示的示例中,交换设备201发送表能力通信310,其可以向控制器210指示交换设备201的交换设备特性(包括以上描述的任何特性)。
使用目标交换设备(例如,交换设备201)的先前识别的特性,正交策略简化引擎110可以从多个简化的正交网络策略集之中选择特定的简化的正交策略网络集,与在考虑目标交换设备的特性方面所描述的是一致地。也就是说,正交策略简化引擎110可以选择特定的简化的正交网络策略集,用于目标交换设备能够更有效地处理的转换和传输,无论是基于特定匹配字段的通配符处理能力,还是目标交换设备可以更有效地处理的特定表或动作,或者根据任何其他因素或因素的组合。如图3中所示,正交策略简化引擎110通过转换引擎230选择简化的正交网络策略集221以将其转换成特定于协议的格式,并将特定于协议的消息231传输到目标交换设备,其中与正交策略简化引擎110已经选择的用于转换的简化的正交网络策略集222相比,交换设备201能够更有效率或更高效地实施。
虽然上面图2和图3中的示例描绘了单个交换设备,但是控制器210可以管理具有多个具有不同特性、能力、资源可用性、网络带宽等的交换设备的通信网络。正交策略简化引擎110可以选择简化的正交网络策略集以传输到一些或所有被管理的交换设备,并且针对每个不同的交换设备分别执行这样的选择。接下来,在图4中更详细地描述这些特征。
图4示出针对不同交换设备选择简化的正交网络策略集的示例。在图4中,控制器210管理交换设备201(继续图2和3的示例)、交换设备402和交换设备403。交换设备201、402和403可以具有不同的交换特性,例如,不同的表能力。因此,特定的简化的正交网络策略集可以更有效地在交换设备201上实施,而不是在交换设备402和403上,并且不同的简化的正交网络策略集可以更有效地在交换设备403上实施,而不是在交换设备201和402上。正交策略简化引擎110可以选择特定的简化的正交网络策略集以分别传输到交换设备201、402和403,并且基于交换设备的各自特性。
在图4中,正交策略简化引擎110将特定于协议的消息231传输到交换设备201(例如,如上所述,从简化的正交网络策略集221转换)。对于交换设备403,正交策略选择引擎110选择不同的简化的正交网络策略集。也就是说,当交换设备403是目标交换设备时,正交策略简化引擎110可以基于交换设备403的特性来选择简化的正交网络策略集222以用于转换,例如,基于交换设备403,交换设备403包括用于在简化的正交网络策略集222中具有通配符值的匹配字段的通配符处理能力,而不包括用于在简化的正交网络策略集221中具有通配符值的不同匹配字段的通配符处理能力。在该示例中,正交策略简化引擎110将简化的正交网络策略集222传递到转换引擎230,以将其转换成特定于协议的消息232,控制器210可以将其传输到交换设备403以进行实施。
因此,正交策略简化引擎110可以为不同的交换设备选择不同的简化的正交网络策略集,这可以利用不同交换设备的特定能力。由于不同的交换设备在能力、硬件和带宽方面的不同,因此简化正交网络策略集选择可以灵活地提供处理效率方面的特定设备的增加。
图5示出系统或设备可以实施以支持简化的正交网络策略集选择的逻辑500的示例。例如,系统100可以将逻辑500实施为硬件、存储在机器可读介质上的可执行指令,或者作为它们的组合。在一些示例中,系统或网络控制器(例如,控制器210)经由正交策略简化引擎110实施逻辑500,通过该逻辑,系统或网络控制器可以执行逻辑500作为方法或过程,该方法或过程选择特定的简化的正交网络策略集以便针对目标交换设备转换成特定于协议的格式。
逻辑500包括访问表示基于第一意图的网络策略和基于第二意图的网络策略的正交网络策略集(502)。例如,可以通过冲突解决引擎108获得正交网络策略集。逻辑500还包括从正交网络策略集确定多个简化的正交网络策略集(504)。多个简化的正交网络策略集可以彼此不同,但是每个表示基于第一意图的网络策略和基于第二意图的网络策略。逻辑500可以进一步包括在多个简化的正交网络策略集之中选择特定的简化的正交网络策略集,以采用由目标交换设备(506)支持的特定于协议的格式传输到目标交换设备,包括根据本文描述的任何选择特征。
在一些示例中,选择特定的简化的正交网络策略集包括:将多个简化的正交网络策略集中的每一个转换为特定于协议的消息,并且确定从特定的简化的正交网络策略集转换的特定于协议的消息针对从多个简化的正交网络策略集中的每一个网络策略集转换的匹配准则而言,具有用于匹配的最少数量的数据流。作为另一个示例,特定的简化的正交网络策略集的选择可以基于针对正交网络策略集中的特定匹配字段的数据值的数量。
作为又一个示例,逻辑500还可以包括从目标交换设备接收表能力的指示,并且基于表能力选择特定的简化的正交网络策略。在该示例中,表能力可以包括:用于正交网络策略集中的特定匹配字段的通配符处理能力,并且选择特定的简化的正交网络策略集可以包括:确定特定的简化的正交网络策略包括用于特定匹配字段的通配符值。
关于性能,作为在选择特定的简化的正交网络策略集时考虑的因素,在某些示例中,逻辑500可以包括:即使当不同的简化的正交网络策略集与该特定的简化的正交网络策略集相比转换成较少数量的特定于协议的消息时,也选择特定的简化的正交网络策略集,而目标交换设备包括特定的表,该表与该不同的简化的正交网络策略集相比,以更大的速度处理特定的简化的正交网络策略集。在这个示例中,逻辑500可以进一步包括:确定目标交换的特定表包括用于特定的简化的正交网络策略集的特定匹配字段的通配符处理能力,而不包括该不同的简化的正交网络策略集的不同匹配字段的通配符处理能力。
图6示出支持简化的正交网络策略集选择的设备600的示例。设备600可以包括处理资源610,其可以采取单个或多个处理器的形式。处理器可以包括中央处理单元(CPU)、微处理器或适于执行存储在机器可读介质(诸如图6中所示的机器可读介质620)上的指令的任何硬件设备。机器可读介质620可以采取任何非瞬态的电子、磁、光或其他存储可执行指令的物理存储设备的形式,诸如图6中所示的指令622、624、626、628和630。因此,机器可读介质620可以是例如随机存取存储器(RAM)(诸如动态RAM(DRAM))、闪存、忆阻器存储器、自旋力矩存储器、电可擦除可编程只读存储器(EEPROM)、存储驱动器、光盘等。
设备600可通过处理资源610执行存储在机器可读介质620上的指令。执行指令可以导致设备600执行本文所描述的任何特征,包括根据正交网络策略简化引擎110的任何特征。例如,由处理资源610执行指令622、624、626、628和630可以使设备600访问表示基于第一意图的网络策略和基于第二意图的网络策略的正交网络策略集(指令622);确定第一简化的正交网络策略集,其将来自正交网络策略集的一对正交网络策略组合成第一简化的正交网络策略(指令624);确定第二简化的正交网络策略集,其将来自该正交网络策略集的不同的一对正交网络策略组合成第二简化的正交网络策略(指令626);基于第一目标交换设备的特性而选择第一简化的正交网络策略集而不是第二简化的正交网络策略集,以用于传输(例如,用于以特定于协议的格式的转换和传输)到第一目标交换设备(指令628);以及基于第二目标交换设备的特性而选择第二简化的正交网络策略集而不是第一简化的正交网络策略集,以用于以特定协议的格式传输(例如,用于以特定于协议的格式的转换和传输)到第二目标交换设备(指令630)。
在一些示例中,第一简化的正交网络策略可以包括用于第一简化的正交网络策略的特定匹配字段的通配符值,并且指令628可以由处理资源610执行以基于第一目标交换设备而选择第一简化的正交网络策略集,第一目标交换设备包括用于特定匹配字段的通配符处理能力。
上述系统、方法、设备和逻辑,包括冲突解决引擎108、正交策略简化引擎110、转换引擎220和控制器210,可以以许多不同的方式在硬件、逻辑、电路以及存储在机器可读介质上的可执行指令的许多不同组合中实施。例如,冲突解决引擎108、正交策略简化引擎110、转换引擎220、控制器210或它们的任何组合,可以包括控制器、微处理器或专用集成电路(ASIC)中的电路,或者可以利用离散逻辑或组件、或者其它类型的模拟或数字电路的组合来实施,或者可以被组合在单个集成电路上或分布在多个集成电路中。产品(诸如计算机程序产品)可以包括存储介质和存储在该介质上的机器可读指令,当在端点、计算机系统或其他设备中执行时,指令使设备按照上述任何描述执行操作,包括根据冲突解决引擎108、正交策略简化引擎110、转换引擎220、控制器210或它们的任何组合的任何特征。
本文所描述的系统、设备和引擎的处理能力,包括冲突解决引擎108、正交策略简化引擎110、转换引擎220、控制器210或其任何组合,可以分布在多个系统组件中,诸如在多个处理器和存储器之中,可选地包括多个分布式处理系统。参数、数据库和其他数据结构可以单独存储和管理,可以被合并到单个存储器或数据库中,可以以许多不同的方式在逻辑上和物理上组织,并且可以以多种方式实施,包括诸如链表、散列表的数据结构,或者内隐存储机构。程序可以是分布在多个存储器和处理器上或者以许多不同的方式实施的单个程序的部分(例如子程序)、单独的程序,诸如在库(例如,共享库)中。
虽然上面已经描述了各种示例,但是更多的实施方式是可能的。
Claims (15)
1.一种系统,包括:
冲突解决引擎,所述冲突解决引擎用于获得表示基于第一意图的网络策略和基于第二意图的网络策略的正交网络策略集;以及
正交策略简化引擎,所述正交策略简化引擎用于:
确定第一简化的正交网络策略集,所述第一简化的正交网络策略集将来自所述正交网络策略集的一对正交网络策略组合成第一简化的正交网络策略;
确定第二简化的正交网络策略集,所述第二简化的正交网络策略集将来自所述正交网络策略集的不同的一对正交网络策略组合成第二简化的正交网络策略;
以及
基于目标交换设备的特性而选择所述第一简化的正交网络策略集而不是所述第二简化的正交网络策略集,以在所述目标交换设备上实施。
2.根据权利要求1所述的系统,其中所述第一简化的正交网络策略包括用于所述第一简化的正交网络策略的特定匹配字段的通配符值;并且
其中,所述正交策略简化引擎基于包括用于所述特定匹配字段的通配符处理能力的所述目标交换设备而选择所述第一简化的正交网络策略集。
3.根据权利要求1所述的系统,其中所述第二简化的正交网络策略包括用于所述第二简化的正交网络策略的特定匹配字段的通配符值;并且
其中,所述正交策略简化引擎基于不包括用于所述第二简化的正交网络策略的所述特定匹配字段的通配符处理能力的所述目标交换设备而选择所述第一简化的正交网络策略集而不是所述第二简化的正交网络策略集。
4.根据权利要求1所述的系统,其中所述正交策略简化引擎基于所述目标交换设备的表能力而选择所述第一简化的正交网络策略集。
5.根据权利要求4所述的系统,其中所述目标交换设备的所述表能力包括:由所述目标交换设备实施的表的数量,由所述目标交换设备实施的表的表大小,由所述目标交换设备实施的表支持的动作的数量、类型或组合,由所述目标交换设备实施的表以增加的效率实施的特定动作,或者它们的任何组合。
6.根据权利要求1所述的系统,其中所述正交策略简化引擎将以由所述目标交换设备支持的特定于协议的格式传输所述第一简化的正交网络策略集。
7.一种方法,包括:
访问表示基于第一意图的网络策略和基于第二意图的网络策略的正交网络策略集;
从所述正交网络策略集确定多个简化的正交网络策略集,所述多个简化的正交网络策略集彼此不同,并且每个简化的正交网络策略集表示所述基于第一意图的网络策略和所述基于第二意图的网络策略;以及
在所述多个简化的正交网络策略集之中选择特定的简化的正交网络策略集,以在目标交换设备上以由所述目标交换设备支持的特定于协议的格式实施。
8.根据权利要求7所述的方法,其中选择特定的简化的正交网络策略集包括:
将所述多个简化的正交网络策略集中的每一个简化的正交网络策略集转换成特定于协议的消息;并且
确定从所述特定的简化的正交网络策略集转换的所述特定于协议的消息针对从所述多个简化的正交网络策略集中的每一个简化的正交网络策略集转换的特定于协议的消息具有用于匹配的最少数量的数据流。
9.根据权利要求7所述的方法,进一步包括:从所述目标交换设备接收表能力的指示;并且
其中,选择包括:基于所述表能力而选择所述特定的简化的正交网络策略。
10.根据权利要求9所述的方法,其中所述表能力包括:用于所述正交网络策略集中的特定匹配字段的通配符处理能力;并且
其中,选择特定的简化的正交网络策略集包括:确定所述特定的简化的正交网络策略包括用于所述特定匹配字段的通配符值。
11.根据权利要求7所述的方法,其中选择包括:基于用于所述正交网络策略集中的特定匹配字段的数据值的数量而选择所述特定的简化的正交网络策略集。
12.根据权利要求7所述的方法,包括:即使当不同的简化的正交网络策略集与所述特定的简化的正交网络策略集相比转换成更少数量的特定于协议的消息时,也选择所述特定的简化的正交网络策略集,而所述目标交换设备包括特定表,所述特定表与所述不同的简化的正交网络策略集相比,以更大的速度处理所述特定的简化的正交网络策略集。
13.根据权利要求12所述的方法,进一步包括:确定所述目标交换的所述特定表包括用于所述特定的简化的正交网络策略集的特定匹配字段的通配符处理能力,而不包括用于所述不同的简化的正交网络策略集的不同匹配字段的通配符处理能力。
14.一种包括指令的非瞬态计算机可读介质,所述指令由处理资源可执行,使得:
访问表示基于第一意图的网络策略和基于第二意图的网络策略的正交网络策略集;
确定第一简化的正交网络策略集,所述第一简化的正交网络策略集将来自所述正交网络策略集的一对正交网络策略组合成第一简化的正交网络策略;
确定第二简化的正交网络策略集,所述第二简化的正交网络策略集将来自所述正交网络策略集的不同的一对正交网络策略组合成第二简化的正交网络策略;
基于第一目标交换设备的特性而选择所述第一简化的正交网络策略集而不是所述第二简化的正交网络策略集,以在所述第一目标交换设备上实施;以及
基于第二目标交换设备的特性而选择所述第二简化的正交网络策略集而不是所述第一简化的正交网络策略集,以在所述第二目标交换设备上实施。
15.根据权利要求14所述的非瞬态计算机可读介质,其中所述第一简化的正交网络策略包括用于所述第一简化的正交网络策略的特定匹配字段的通配符值;并且
其中,所述指令由所述处理资源可执行,使得:基于包括用于所述第一简化的正交网络策略的所述特定匹配字段的通配符处理能力的所述第一目标交换设备而选择所述第一简化的正交网络策略集。
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
PCT/US2015/066262 WO2017105452A1 (en) | 2015-12-17 | 2015-12-17 | Reduced orthogonal network policy set selection |
Publications (1)
Publication Number | Publication Date |
---|---|
CN108476179A true CN108476179A (zh) | 2018-08-31 |
Family
ID=59057153
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201580085378.9A Pending CN108476179A (zh) | 2015-12-17 | 2015-12-17 | 简化的正交网络策略集选择 |
Country Status (4)
Country | Link |
---|---|
US (1) | US10623339B2 (zh) |
EP (1) | EP3366014A4 (zh) |
CN (1) | CN108476179A (zh) |
WO (1) | WO2017105452A1 (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114640590A (zh) * | 2022-01-26 | 2022-06-17 | 北京邮电大学 | 意图网络中策略集冲突检测方法及相关设备 |
Families Citing this family (68)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9781004B2 (en) | 2014-10-16 | 2017-10-03 | Cisco Technology, Inc. | Discovering and grouping application endpoints in a network environment |
EP3366014A4 (en) * | 2015-12-17 | 2019-05-01 | Hewlett-Packard Enterprise Development LP | REDUCED SET OF ORTHOGONAL NETWORK POLICY SELECTIONS |
US10523512B2 (en) * | 2017-03-24 | 2019-12-31 | Cisco Technology, Inc. | Network agent for generating platform specific network policies |
US10560328B2 (en) | 2017-04-20 | 2020-02-11 | Cisco Technology, Inc. | Static network policy analysis for networks |
US10623264B2 (en) | 2017-04-20 | 2020-04-14 | Cisco Technology, Inc. | Policy assurance for service chaining |
US10826788B2 (en) | 2017-04-20 | 2020-11-03 | Cisco Technology, Inc. | Assurance of quality-of-service configurations in a network |
US10693738B2 (en) | 2017-05-31 | 2020-06-23 | Cisco Technology, Inc. | Generating device-level logical models for a network |
US10812318B2 (en) | 2017-05-31 | 2020-10-20 | Cisco Technology, Inc. | Associating network policy objects with specific faults corresponding to fault localizations in large-scale network deployment |
US10505816B2 (en) | 2017-05-31 | 2019-12-10 | Cisco Technology, Inc. | Semantic analysis to detect shadowing of rules in a model of network intents |
US10581694B2 (en) | 2017-05-31 | 2020-03-03 | Cisco Technology, Inc. | Generation of counter examples for network intent formal equivalence failures |
US10439875B2 (en) | 2017-05-31 | 2019-10-08 | Cisco Technology, Inc. | Identification of conflict rules in a network intent formal equivalence failure |
US10554483B2 (en) | 2017-05-31 | 2020-02-04 | Cisco Technology, Inc. | Network policy analysis for networks |
US20180351788A1 (en) | 2017-05-31 | 2018-12-06 | Cisco Technology, Inc. | Fault localization in large-scale network policy deployment |
US10623271B2 (en) | 2017-05-31 | 2020-04-14 | Cisco Technology, Inc. | Intra-priority class ordering of rules corresponding to a model of network intents |
US11469986B2 (en) | 2017-06-16 | 2022-10-11 | Cisco Technology, Inc. | Controlled micro fault injection on a distributed appliance |
US11150973B2 (en) | 2017-06-16 | 2021-10-19 | Cisco Technology, Inc. | Self diagnosing distributed appliance |
US10547715B2 (en) | 2017-06-16 | 2020-01-28 | Cisco Technology, Inc. | Event generation in response to network intent formal equivalence failures |
US11645131B2 (en) | 2017-06-16 | 2023-05-09 | Cisco Technology, Inc. | Distributed fault code aggregation across application centric dimensions |
US10587621B2 (en) | 2017-06-16 | 2020-03-10 | Cisco Technology, Inc. | System and method for migrating to and maintaining a white-list network security model |
US10904101B2 (en) | 2017-06-16 | 2021-01-26 | Cisco Technology, Inc. | Shim layer for extracting and prioritizing underlying rules for modeling network intents |
US10574513B2 (en) | 2017-06-16 | 2020-02-25 | Cisco Technology, Inc. | Handling controller and node failure scenarios during data collection |
US10498608B2 (en) | 2017-06-16 | 2019-12-03 | Cisco Technology, Inc. | Topology explorer |
US10686669B2 (en) | 2017-06-16 | 2020-06-16 | Cisco Technology, Inc. | Collecting network models and node information from a network |
US10218572B2 (en) | 2017-06-19 | 2019-02-26 | Cisco Technology, Inc. | Multiprotocol border gateway protocol routing validation |
US11343150B2 (en) | 2017-06-19 | 2022-05-24 | Cisco Technology, Inc. | Validation of learned routes in a network |
US10560355B2 (en) | 2017-06-19 | 2020-02-11 | Cisco Technology, Inc. | Static endpoint validation |
US10623259B2 (en) | 2017-06-19 | 2020-04-14 | Cisco Technology, Inc. | Validation of layer 1 interface in a network |
US10644946B2 (en) | 2017-06-19 | 2020-05-05 | Cisco Technology, Inc. | Detection of overlapping subnets in a network |
US10505817B2 (en) | 2017-06-19 | 2019-12-10 | Cisco Technology, Inc. | Automatically determining an optimal amount of time for analyzing a distributed network environment |
US10700933B2 (en) | 2017-06-19 | 2020-06-30 | Cisco Technology, Inc. | Validating tunnel endpoint addresses in a network fabric |
US10341184B2 (en) | 2017-06-19 | 2019-07-02 | Cisco Technology, Inc. | Validation of layer 3 bridge domain subnets in in a network |
US10333787B2 (en) | 2017-06-19 | 2019-06-25 | Cisco Technology, Inc. | Validation of L3OUT configuration for communications outside a network |
US10411996B2 (en) | 2017-06-19 | 2019-09-10 | Cisco Technology, Inc. | Validation of routing information in a network fabric |
US10348564B2 (en) | 2017-06-19 | 2019-07-09 | Cisco Technology, Inc. | Validation of routing information base-forwarding information base equivalence in a network |
US10554493B2 (en) | 2017-06-19 | 2020-02-04 | Cisco Technology, Inc. | Identifying mismatches between a logical model and node implementation |
US10536337B2 (en) | 2017-06-19 | 2020-01-14 | Cisco Technology, Inc. | Validation of layer 2 interface and VLAN in a networked environment |
US10437641B2 (en) | 2017-06-19 | 2019-10-08 | Cisco Technology, Inc. | On-demand processing pipeline interleaved with temporal processing pipeline |
US10432467B2 (en) | 2017-06-19 | 2019-10-01 | Cisco Technology, Inc. | Network validation between the logical level and the hardware level of a network |
US11283680B2 (en) | 2017-06-19 | 2022-03-22 | Cisco Technology, Inc. | Identifying components for removal in a network configuration |
US10567229B2 (en) | 2017-06-19 | 2020-02-18 | Cisco Technology, Inc. | Validating endpoint configurations between nodes |
US10547509B2 (en) | 2017-06-19 | 2020-01-28 | Cisco Technology, Inc. | Validation of a virtual port channel (VPC) endpoint in the network fabric |
US10652102B2 (en) | 2017-06-19 | 2020-05-12 | Cisco Technology, Inc. | Network node memory utilization analysis |
US10812336B2 (en) | 2017-06-19 | 2020-10-20 | Cisco Technology, Inc. | Validation of bridge domain-L3out association for communication outside a network |
US10673702B2 (en) | 2017-06-19 | 2020-06-02 | Cisco Technology, Inc. | Validation of layer 3 using virtual routing forwarding containers in a network |
US10567228B2 (en) | 2017-06-19 | 2020-02-18 | Cisco Technology, Inc. | Validation of cross logical groups in a network |
US10528444B2 (en) | 2017-06-19 | 2020-01-07 | Cisco Technology, Inc. | Event generation in response to validation between logical level and hardware level |
US10805160B2 (en) | 2017-06-19 | 2020-10-13 | Cisco Technology, Inc. | Endpoint bridge domain subnet validation |
US10587484B2 (en) | 2017-09-12 | 2020-03-10 | Cisco Technology, Inc. | Anomaly detection and reporting in a network assurance appliance |
US10587456B2 (en) | 2017-09-12 | 2020-03-10 | Cisco Technology, Inc. | Event clustering for a network assurance platform |
US10554477B2 (en) | 2017-09-13 | 2020-02-04 | Cisco Technology, Inc. | Network assurance event aggregator |
US10333833B2 (en) | 2017-09-25 | 2019-06-25 | Cisco Technology, Inc. | Endpoint path assurance |
US11102053B2 (en) | 2017-12-05 | 2021-08-24 | Cisco Technology, Inc. | Cross-domain assurance |
US10873509B2 (en) | 2018-01-17 | 2020-12-22 | Cisco Technology, Inc. | Check-pointing ACI network state and re-execution from a check-pointed state |
US10572495B2 (en) | 2018-02-06 | 2020-02-25 | Cisco Technology Inc. | Network assurance database version compatibility |
US10812315B2 (en) | 2018-06-07 | 2020-10-20 | Cisco Technology, Inc. | Cross-domain network assurance |
CN110611578B (zh) * | 2018-06-15 | 2021-08-27 | 华为技术有限公司 | 用于分配网络资源的方法及装置 |
US10911495B2 (en) | 2018-06-27 | 2021-02-02 | Cisco Technology, Inc. | Assurance of security rules in a network |
US11218508B2 (en) | 2018-06-27 | 2022-01-04 | Cisco Technology, Inc. | Assurance of security rules in a network |
US10659298B1 (en) | 2018-06-27 | 2020-05-19 | Cisco Technology, Inc. | Epoch comparison for network events |
US11019027B2 (en) | 2018-06-27 | 2021-05-25 | Cisco Technology, Inc. | Address translation for external network appliance |
US11044273B2 (en) | 2018-06-27 | 2021-06-22 | Cisco Technology, Inc. | Assurance of security rules in a network |
US10904070B2 (en) | 2018-07-11 | 2021-01-26 | Cisco Technology, Inc. | Techniques and interfaces for troubleshooting datacenter networks |
US10826770B2 (en) | 2018-07-26 | 2020-11-03 | Cisco Technology, Inc. | Synthesis of models for networks using automated boolean learning |
US10616072B1 (en) | 2018-07-27 | 2020-04-07 | Cisco Technology, Inc. | Epoch data interface |
US10880210B2 (en) * | 2018-12-26 | 2020-12-29 | Juniper Networks, Inc. | Cloud network having multiple protocols using virtualization overlays across physical and virtualized workloads |
US11451514B2 (en) * | 2019-01-03 | 2022-09-20 | Illumio, Inc. | Optimizing rules for configuring a firewall in a segmented computer network |
US20220321604A1 (en) * | 2021-03-30 | 2022-10-06 | Juniper Networks, Inc. | Intent-based enterprise security using dynamic learning of network segment prefixes |
US11792230B2 (en) * | 2021-09-13 | 2023-10-17 | Cisco Technology, Inc. | Resolving access policies between intent-based network architectures and cloud native architectures |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102760076A (zh) * | 2012-06-05 | 2012-10-31 | 华为技术有限公司 | 一种系统的策略冲突处理方法及策略冲突处理系统 |
US20130163427A1 (en) * | 2011-12-22 | 2013-06-27 | Ludovic Beliveau | System for flexible and extensible flow processing in software-defined networks |
US8693344B1 (en) * | 2011-09-27 | 2014-04-08 | Big Switch Network, Inc. | Systems and methods for generating packet forwarding rules based on network policy |
EP2955884A1 (en) * | 2013-03-28 | 2015-12-16 | Huawei Technologies Co., Ltd. | Method, apparatus and system for configuring flow table in openflow network |
Family Cites Families (94)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5889953A (en) * | 1995-05-25 | 1999-03-30 | Cabletron Systems, Inc. | Policy management and conflict resolution in computer networks |
US6691168B1 (en) * | 1998-12-31 | 2004-02-10 | Pmc-Sierra | Method and apparatus for high-speed network rule processing |
US6839766B1 (en) * | 2000-01-14 | 2005-01-04 | Cisco Technology, Inc. | Method and apparatus for communicating cops protocol policies to non-cops-enabled network devices |
US7688727B1 (en) * | 2000-04-17 | 2010-03-30 | Juniper Networks, Inc. | Filtering and route lookup in a switching device |
US7154888B1 (en) * | 2002-02-08 | 2006-12-26 | Cisco Technology, Inc. | Method for classifying packets using multi-class structures |
US7433304B1 (en) * | 2002-09-06 | 2008-10-07 | Packeteer, Inc. | Classification data structure enabling multi-dimensional network traffic classification and control schemes |
US20040177139A1 (en) * | 2003-03-03 | 2004-09-09 | Schuba Christoph L. | Method and apparatus for computing priorities between conflicting rules for network services |
US8453196B2 (en) * | 2003-10-14 | 2013-05-28 | Salesforce.Com, Inc. | Policy management in an interoperability network |
US7545748B1 (en) * | 2004-09-10 | 2009-06-09 | Packeteer, Inc. | Classification and management of network traffic based on attributes orthogonal to explicit packet attributes |
EP1825412A1 (en) * | 2004-10-25 | 2007-08-29 | Rick L. Orsini | Secure data parser method and system |
US7742406B1 (en) * | 2004-12-20 | 2010-06-22 | Packeteer, Inc. | Coordinated environment for classification and control of network traffic |
JP4662080B2 (ja) * | 2005-02-24 | 2011-03-30 | 日本電気株式会社 | フィルタリングルール分析方法及びシステム |
US20060221967A1 (en) * | 2005-03-31 | 2006-10-05 | Narayan Harsha L | Methods for performing packet classification |
US8631483B2 (en) * | 2005-06-14 | 2014-01-14 | Texas Instruments Incorporated | Packet processors and packet filter processes, circuits, devices, and systems |
US7643496B1 (en) * | 2005-09-30 | 2010-01-05 | Nortel Networks Limited | Application specified steering policy implementation |
US20070268514A1 (en) * | 2006-05-19 | 2007-11-22 | Paul Zeldin | Method and business model for automated configuration and deployment of a wireless network in a facility without network administrator intervention |
US20070268516A1 (en) * | 2006-05-19 | 2007-11-22 | Jamsheed Bugwadia | Automated policy-based network device configuration and network deployment |
US7610294B2 (en) * | 2007-05-31 | 2009-10-27 | International Business Machines Corporation | Multidimensional data cube validation |
US8339959B1 (en) * | 2008-05-20 | 2012-12-25 | Juniper Networks, Inc. | Streamlined packet forwarding using dynamic filters for routing and security in a shared forwarding plane |
US8832777B2 (en) * | 2009-03-02 | 2014-09-09 | Headwater Partners I Llc | Adapting network policies based on device service processor configuration |
US8812714B2 (en) * | 2008-11-12 | 2014-08-19 | Citrix Systems, Inc. | Systems and methods for application fluency policies |
US20100274772A1 (en) | 2009-04-23 | 2010-10-28 | Allen Samuels | Compressed data objects referenced via address references and compression references |
US8462786B2 (en) * | 2009-08-17 | 2013-06-11 | Board Of Trustees Of Michigan State University | Efficient TCAM-based packet classification using multiple lookups and classifier semantics |
US8495725B2 (en) * | 2009-08-28 | 2013-07-23 | Great Wall Systems | Methods, systems, and computer readable media for adaptive packet filtering |
CN102648455B (zh) * | 2009-12-04 | 2015-11-25 | 日本电气株式会社 | 服务器和流控制程序 |
US8401006B2 (en) * | 2010-08-19 | 2013-03-19 | Unwired Planet, Inc. | Method and system for enforcing traffic policies at a policy enforcement point in a wireless communications network |
US8509071B1 (en) * | 2010-10-06 | 2013-08-13 | Juniper Networks, Inc. | Multi-dimensional traffic management |
US8909751B2 (en) * | 2010-12-28 | 2014-12-09 | Microsoft Corporation | Flexible policy based network decision making |
US9641403B2 (en) * | 2011-04-26 | 2017-05-02 | Openet Telecom Ltd. | Systems, devices and methods of decomposing service requests into domain-specific service requests |
US8612612B1 (en) * | 2011-09-28 | 2013-12-17 | Juniper Networks, Inc. | Dynamic policy control for application flow processing in a network device |
US8711860B2 (en) * | 2011-12-22 | 2014-04-29 | Telefonaktiebolaget L M Ericsson (Publ) | Controller for flexible and extensible flow processing in software-defined networks |
US8718064B2 (en) * | 2011-12-22 | 2014-05-06 | Telefonaktiebolaget L M Ericsson (Publ) | Forwarding element for flexible and extensible flow processing software-defined networks |
EP2803168B1 (en) * | 2012-01-09 | 2015-10-21 | Telefonaktiebolaget LM Ericsson (PUBL) | Network device control in a software defined network |
US8705536B2 (en) * | 2012-03-05 | 2014-04-22 | Telefonaktiebolaget L M Ericsson (Publ) | Methods of operating forwarding elements including shadow tables and related forwarding elements |
US9571523B2 (en) * | 2012-05-22 | 2017-02-14 | Sri International | Security actuator for a dynamically programmable computer network |
US8805767B1 (en) * | 2012-05-23 | 2014-08-12 | Amazon Technologies, Inc. | Machine learning memory management and distributed rule evaluation |
US10541926B2 (en) | 2012-06-06 | 2020-01-21 | The Trustees Of Columbia University In The City Of New York | Unified networking system and device for heterogeneous mobile environments |
US9098601B2 (en) * | 2012-06-27 | 2015-08-04 | Futurewei Technologies, Inc. | Ternary content-addressable memory assisted packet classification |
US9276838B2 (en) * | 2012-10-05 | 2016-03-01 | Futurewei Technologies, Inc. | Software defined network virtualization utilizing service specific topology abstraction and interface |
US9071529B2 (en) * | 2012-10-08 | 2015-06-30 | Telefonaktiebolaget L M Ericsson (Publ) | Method and apparatus for accelerating forwarding in software-defined networks |
CN103795602B (zh) * | 2012-10-30 | 2017-05-10 | 华为技术有限公司 | 虚拟网络的网络策略配置方法及装置 |
US10373066B2 (en) * | 2012-12-21 | 2019-08-06 | Model N. Inc. | Simplified product configuration using table-based rules, rule conflict resolution through voting, and efficient model compilation |
US9253035B2 (en) * | 2013-02-21 | 2016-02-02 | International Business Machines Corporation | Reducing switch state size in flow-based networks |
US8964752B2 (en) * | 2013-02-25 | 2015-02-24 | Telefonaktiebolaget L M Ericsson (Publ) | Method and system for flow table lookup parallelization in a software defined networking (SDN) system |
US9826067B2 (en) * | 2013-02-28 | 2017-11-21 | Texas Instruments Incorporated | Packet processing match and action unit with configurable bit allocation |
US9460172B2 (en) * | 2013-03-13 | 2016-10-04 | Sas Institute Inc. | Method to reduce large OLAP cube size using cell selection rules |
US9219694B2 (en) * | 2013-03-15 | 2015-12-22 | Wisconsin Alumni Research Foundation | Content addressable memory with reduced power consumption |
US9742666B2 (en) * | 2013-07-09 | 2017-08-22 | Nicira, Inc. | Using headerspace analysis to identify classes of packets |
EP3028401A1 (en) * | 2013-08-01 | 2016-06-08 | Hewlett-Packard Development Company, L.P. | Address resolution rewriting |
EP3029894B1 (en) * | 2013-08-28 | 2020-08-19 | Huawei Technologies Co., Ltd. | Packet processing method, device and system |
US9350607B2 (en) * | 2013-09-25 | 2016-05-24 | International Business Machines Corporation | Scalable network configuration with consistent updates in software defined networks |
US9356818B2 (en) * | 2013-10-30 | 2016-05-31 | Telefonaktiebolaget Lm Ericsson (Publ) | Method and computing device for packet classification |
CN105684391B (zh) * | 2013-11-04 | 2019-06-07 | 伊尔拉米公司 | 基于标签的访问控制规则的自动生成 |
WO2015066878A1 (zh) * | 2013-11-07 | 2015-05-14 | 华为技术有限公司 | Sdn网络中的控制设备和控制方法 |
KR20150053620A (ko) * | 2013-11-08 | 2015-05-18 | 한국전자통신연구원 | 패킷 전송 장치 및 방법 |
CN104639451B (zh) * | 2013-11-14 | 2019-03-22 | 中兴通讯股份有限公司 | 数据流分流方法及控制器 |
US9461923B2 (en) * | 2013-12-06 | 2016-10-04 | Algoblu Holdings Limited | Performance-based routing in software-defined network (SDN) |
CN104734872B (zh) | 2013-12-19 | 2018-02-23 | 中国科学院沈阳自动化研究所 | 一种基于软件定义网络的工业回程网实现方法与系统 |
US9544402B2 (en) * | 2013-12-31 | 2017-01-10 | Cavium, Inc. | Multi-rule approach to encoding a group of rules |
EP3091708B1 (en) * | 2014-01-28 | 2019-01-23 | Huawei Technologies Co., Ltd. | Processing rule modification method and apparatus |
US9215214B2 (en) * | 2014-02-20 | 2015-12-15 | Nicira, Inc. | Provisioning firewall rules on a firewall enforcing device |
US9755969B2 (en) * | 2014-03-04 | 2017-09-05 | International Business Machines Corporation | Route tracing in software defined networks |
EP3117642B1 (en) * | 2014-03-11 | 2019-05-08 | Telefonaktiebolaget LM Ericsson (publ) | Methods, devices and computer programs for subjecting traffic associated with a service to a specific treatment |
US9590901B2 (en) * | 2014-03-14 | 2017-03-07 | Nicira, Inc. | Route advertisement by managed gateways |
US9660913B2 (en) * | 2014-03-14 | 2017-05-23 | Network Critical Solutions Limited | Network packet broker |
US9729512B2 (en) * | 2014-06-04 | 2017-08-08 | Nicira, Inc. | Use of stateless marking to speed up stateful firewall rule processing |
WO2016018181A1 (en) * | 2014-07-28 | 2016-02-04 | Telefonaktiebolaget L M Ericsson (Publ) | Automated flow devolvement in an aggregate flow environment |
US10129181B2 (en) * | 2014-08-16 | 2018-11-13 | New York University | Controlling the reactive caching of wildcard rules for packet processing, such as flow processing in software-defined networks |
WO2016038139A1 (en) * | 2014-09-12 | 2016-03-17 | Voellmy Andreas R | Managing network forwarding configurations using algorithmic policies |
WO2016044413A1 (en) * | 2014-09-16 | 2016-03-24 | CloudGenix, Inc. | Methods and systems for business intent driven policy based network traffic characterization, monitoring and control |
US10462626B2 (en) * | 2014-09-23 | 2019-10-29 | Nokia Solutions And Networks Oy | Control of communication using service function chaining |
US10194345B2 (en) * | 2014-10-15 | 2019-01-29 | Fortinet, Inc. | Self-provisioning of a wireless communication network using coordination of data plane behavior to steer stations to preferred access points |
US9369744B2 (en) * | 2014-10-15 | 2016-06-14 | Fortinet, Inc. | Optimizing multimedia streaming in WLANs (wireless local access networks) |
GB2539365A (en) * | 2014-11-28 | 2016-12-21 | Vodafone Ip Licensing Ltd | User experience policy management and optimisation of telecommunications networks |
US10135670B2 (en) * | 2014-12-22 | 2018-11-20 | Hewlett Packard Enterprise Development Lp | Response to an inoperative network device managed by a controller |
US11792033B2 (en) * | 2014-12-30 | 2023-10-17 | Fortinet, Inc. | Restricting control of an output resource advertising services openly over a wireless network for playing media |
WO2016130108A1 (en) * | 2015-02-10 | 2016-08-18 | Hewlett Packard Enterprise Development Lp | Network policy conflict detection and resolution |
US9590898B2 (en) * | 2015-02-17 | 2017-03-07 | Telefonaktiebolaget L M Ericsson (Publ) | Method and system to optimize packet exchange between the control and data plane in a software defined network |
US9509574B2 (en) * | 2015-04-03 | 2016-11-29 | Illumio, Inc. | End-to-end policy enforcement in the presence of a traffic midpoint device |
US9705694B2 (en) * | 2015-04-24 | 2017-07-11 | Fortinet, Inc. | Extension of Wi-Fi services multicast to a subnet across a Wi-Fi network using software-defined networking (SDN) to centrally control data plane behavior |
US20160315866A1 (en) * | 2015-04-27 | 2016-10-27 | Telefonaktiebolaget L M Ericsson (Publ) | Service based intelligent packet-in mechanism for openflow switches |
US9674081B1 (en) * | 2015-05-06 | 2017-06-06 | Xilinx, Inc. | Efficient mapping of table pipelines for software-defined networking (SDN) data plane |
US10530684B2 (en) * | 2015-05-19 | 2020-01-07 | International Business Machines Corporation | Management of unreachable OpenFlow rules |
US9806997B2 (en) * | 2015-06-16 | 2017-10-31 | At&T Intellectual Property I, L.P. | Service specific route selection in communication networks |
US9787641B2 (en) * | 2015-06-30 | 2017-10-10 | Nicira, Inc. | Firewall rule management |
US10797992B2 (en) * | 2015-07-07 | 2020-10-06 | Cisco Technology, Inc. | Intelligent wide area network (IWAN) |
US10298489B2 (en) * | 2015-07-24 | 2019-05-21 | International Business Machines Corporation | Adding multi-tenant awareness to a network packet processing device on a software defined network (SDN) |
US20170053058A1 (en) * | 2015-08-21 | 2017-02-23 | Taiwan Semiconductor Manufacturing Company, Ltd. | Model-based rule table generation |
US10154062B2 (en) * | 2015-09-25 | 2018-12-11 | Nxp Usa, Inc. | Rule lookup using predictive tuples based rule lookup cache in the data plane |
US9729582B2 (en) * | 2015-09-29 | 2017-08-08 | The Trustees Of The University Of Pennsylvania | Methods, systems, and computer readable media for generating software defined networking (SDN) policies |
CN107615710B (zh) * | 2015-10-20 | 2020-11-17 | 华为技术有限公司 | Sdn交换机中的直接回复动作 |
EP3366014A4 (en) * | 2015-12-17 | 2019-05-01 | Hewlett-Packard Enterprise Development LP | REDUCED SET OF ORTHOGONAL NETWORK POLICY SELECTIONS |
US9917775B2 (en) * | 2015-12-22 | 2018-03-13 | Mcafee, Llc | Intelligent devices in a software-defined network |
US20180069786A1 (en) * | 2016-09-02 | 2018-03-08 | Argela Yazilim ve Bilisim Teknolojileri San. ve Tic. A.S. | Randomized route hopping in software defined networks |
-
2015
- 2015-12-17 EP EP15910924.8A patent/EP3366014A4/en not_active Withdrawn
- 2015-12-17 US US16/063,475 patent/US10623339B2/en not_active Expired - Fee Related
- 2015-12-17 CN CN201580085378.9A patent/CN108476179A/zh active Pending
- 2015-12-17 WO PCT/US2015/066262 patent/WO2017105452A1/en active Application Filing
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8693344B1 (en) * | 2011-09-27 | 2014-04-08 | Big Switch Network, Inc. | Systems and methods for generating packet forwarding rules based on network policy |
US20130163427A1 (en) * | 2011-12-22 | 2013-06-27 | Ludovic Beliveau | System for flexible and extensible flow processing in software-defined networks |
CN102760076A (zh) * | 2012-06-05 | 2012-10-31 | 华为技术有限公司 | 一种系统的策略冲突处理方法及策略冲突处理系统 |
EP2955884A1 (en) * | 2013-03-28 | 2015-12-16 | Huawei Technologies Co., Ltd. | Method, apparatus and system for configuring flow table in openflow network |
Non-Patent Citations (1)
Title |
---|
CHAITHAN PRAKASH等: "PGA: Using Graphs to Express and Automatically Reconcile Network Policies", 《ACM SPECIAL INTEREST GROUP ON DATA COMMUNICATION(SIGCOMM 15)》 * |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114640590A (zh) * | 2022-01-26 | 2022-06-17 | 北京邮电大学 | 意图网络中策略集冲突检测方法及相关设备 |
CN114640590B (zh) * | 2022-01-26 | 2023-02-10 | 北京邮电大学 | 意图网络中策略集冲突检测方法及相关设备 |
Also Published As
Publication number | Publication date |
---|---|
WO2017105452A1 (en) | 2017-06-22 |
US20180375802A1 (en) | 2018-12-27 |
EP3366014A1 (en) | 2018-08-29 |
EP3366014A4 (en) | 2019-05-01 |
US10623339B2 (en) | 2020-04-14 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN108476179A (zh) | 简化的正交网络策略集选择 | |
US10728176B2 (en) | Ruled-based network traffic interception and distribution scheme | |
EP3593503B1 (en) | Packet processor in virtual filtering platform | |
EP3596600B1 (en) | Systems and methods for compute node management protocols | |
Cao et al. | Traffic steering in software defined networks: Planning and online routing | |
EP3815327A1 (en) | Assurance of security rules in a network | |
US10003529B2 (en) | Method and system for memory allocation in a software-defined networking (SDN) system | |
US20210092191A1 (en) | Session management in a forwarding plane | |
US10805241B2 (en) | Database functions-defined network switch and database system | |
WO2018133782A1 (en) | Best-efforts database functions | |
US9270605B2 (en) | Method and system of setting network traffic flow quality of service by modifying port numbers | |
CN106487769B (zh) | 一种访问控制列表acl的实现方法及装置 | |
US8316151B1 (en) | Maintaining spatial ordering in firewall filters | |
US11075840B1 (en) | Disaggregation of network traffic | |
CN117201365A (zh) | 流量确定方法、装置、电子设备及存储介质 | |
Schiff et al. | Orange: Multi field openflow based range classifier | |
EP3342113B1 (en) | Dynamic allocation of resources within network devices | |
US9378784B1 (en) | Security device using high latency memory to implement high update rate statistics for large number of events | |
US20210111958A1 (en) | Identifying a path for interconnecting endpoint resources to construct logical systems | |
Guo-Hong | Network resource scheduling mechanism of cloud computing based on SDN | |
Hammad et al. | Novel methods for virtual network composition | |
Korikawa et al. | Memory network architecture for packet processing in functions virtualization | |
CN117692379A (zh) | 面向高性能计算的多态路由表划分方法、装置和程序产品 | |
TW201926958A (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 | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20180831 |
|
RJ01 | Rejection of invention patent application after publication |