CN103856350B - 面向对象的网络 - Google Patents
面向对象的网络 Download PDFInfo
- Publication number
- CN103856350B CN103856350B CN201310596320.3A CN201310596320A CN103856350B CN 103856350 B CN103856350 B CN 103856350B CN 201310596320 A CN201310596320 A CN 201310596320A CN 103856350 B CN103856350 B CN 103856350B
- Authority
- CN
- China
- Prior art keywords
- network
- rule
- strategy
- end points
- policy object
- 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.)
- Expired - Fee Related
Links
- 238000006243 chemical reaction Methods 0.000 claims abstract description 10
- 230000009471 action Effects 0.000 claims description 51
- 230000004044 response Effects 0.000 claims description 34
- 238000000034 method Methods 0.000 claims description 24
- 230000008859 change Effects 0.000 claims description 7
- 238000004590 computer program Methods 0.000 claims description 7
- 230000004048 modification Effects 0.000 claims description 7
- 238000012986 modification Methods 0.000 claims description 7
- 230000005012 migration Effects 0.000 claims description 4
- 238000013508 migration Methods 0.000 claims description 4
- 238000013459 approach Methods 0.000 abstract description 2
- 230000000875 corresponding effect Effects 0.000 description 36
- 238000012545 processing Methods 0.000 description 35
- 238000010586 diagram Methods 0.000 description 28
- 238000003860 storage Methods 0.000 description 19
- 230000006870 function Effects 0.000 description 11
- 230000003287 optical effect Effects 0.000 description 6
- 230000006855 networking Effects 0.000 description 5
- 230000008569 process Effects 0.000 description 5
- 238000012546 transfer Methods 0.000 description 5
- 238000004891 communication Methods 0.000 description 4
- 238000007906 compression Methods 0.000 description 4
- 230000006835 compression Effects 0.000 description 4
- 238000005516 engineering process Methods 0.000 description 4
- 238000007726 management method Methods 0.000 description 4
- 238000013507 mapping Methods 0.000 description 3
- RTZKZFJDLAIYFH-UHFFFAOYSA-N Diethyl ether Chemical compound CCOCC RTZKZFJDLAIYFH-UHFFFAOYSA-N 0.000 description 2
- 230000008901 benefit Effects 0.000 description 2
- 238000002955 isolation Methods 0.000 description 2
- 210000003127 knee Anatomy 0.000 description 2
- 230000005291 magnetic effect Effects 0.000 description 2
- 238000004519 manufacturing process Methods 0.000 description 2
- 239000000463 material Substances 0.000 description 2
- 238000000926 separation method Methods 0.000 description 2
- 230000005540 biological transmission Effects 0.000 description 1
- 238000012512 characterization method Methods 0.000 description 1
- 238000013144 data compression Methods 0.000 description 1
- 230000003111 delayed effect Effects 0.000 description 1
- 238000001514 detection method Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 230000005611 electricity Effects 0.000 description 1
- 230000010365 information processing Effects 0.000 description 1
- 230000000977 initiatory effect Effects 0.000 description 1
- 230000003993 interaction Effects 0.000 description 1
- 230000014759 maintenance of location Effects 0.000 description 1
- 230000005055 memory storage Effects 0.000 description 1
- 239000013307 optical fiber Substances 0.000 description 1
- 230000002093 peripheral effect Effects 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
- 238000013519 translation Methods 0.000 description 1
- 239000011800 void material 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/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/08—Configuration management of networks or network elements
- H04L41/0803—Configuration setting
-
- 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/0895—Configuration of virtualised networks or elements, e.g. virtualised network function or OpenFlow elements
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
- Computer Hardware Design (AREA)
- Theoretical Computer Science (AREA)
- Software Systems (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
Abstract
本发明的各实施例涉及面向对象的网络。提供一种方式,在该方式中,系统创建网络应用模型,该网络应用模型包括网络策略对象和与在网络策略对象之间发送数据对应的连接规则。该系统将网络应用模型转换成网络配置信息,该网络配置信息将网络策略对象链接到连接规则。转而,基于网络配置信息配置网络控制平面以将网络应用模型映射到物理基础结构。
Description
技术领域
本公开内容涉及基于网络策略对象对网络应用进行建模并且通过网络应用模型翻译来配置网络控制平面。
背景技术
硬件和软件销售商提供允许将单个物理机器分割成多个独立网络部件(例如,虚拟机)的平台。这些平台已经变得在小企业级或者在企业级上在行业市场中被接受。可以在虚拟基础和/或物理基础上根据应用级联网要求定义网络部件连通。在一些情况下,互连定义可以复杂,比如具有使用虚拟化联网技术的虚拟化数据中心。虚拟化联网计数带来与连通策略(例如,压缩、服务质量、安全等)以及管理和控制网络、比如管理处于多个位置、多租户隔离的大量端点(例如,虚拟机)以及支持跨越不同物理主机的动态端点移动有关的复杂要求。
发明内容
根据本公开内容的一个实施例,提供一种方式,在该方式中,系统创建网络应用模型,该网络应用模型包括网络策略对象和与在网络策略对象之间发送数据对应的连接规则。该系统将网络应用模型转换成网络配置信息,该网络配置信息将网络策略对象链接到连接规则。转而,基于网络配置信息配置网络控制平面以将网络应用模型映射到物理基础结构。
前文是发明内容并且因此必要地包含细节的简化、概括和省略;因而,本领域技术人员将领会到,发明内容仅为例示性而未旨在于以任何方式限制。如仅由权利要求限定的本公开内容的其它方面、发明特征和优点将在以下阐述的非限制具体描述中变得清楚。
附图说明
可以通过参照附图更好地理解本公开内容并且使它的许多目的、特征和优点为本领域技术人员所清楚,在附图中:
图1是示出网络应用模型的示图,该网络应用模型包括网络策略对象和用于在策略对象之间发送数据的连通规则;
图2A至图2C是示出网络策略对象的示图,这些网络策略对像使用面向对象的网络建模语言原语来扩展现有网络策略对象;
图3是示出转换模块的示图,该转换模块将网络应用转换成用于配置网络控制平面的配置信息;
图4是示出利用通过转换网络应用模型而生成的配置信息填充的各种表的示图;
图5是示出在基于网络策略对象定义网络应用模型、将网络应用模型转换成配置信息、向网络策略对象指派端点以及分辨(resolve)策略请求以在向各种网络策略对象指派的端点之间发送数据时采用的步骤的高级流程图;
图6是示出在将网络应用模型转换成配置信息时采用的步骤的流程图;
图7是示出在向网络应用模型中实例化端点时采用的步骤的流程图;
图8是示出控制平面的各种表的示图,这些表用来在向网络应用模型中实例化端点之后配置网络应用模型以及存储控制信息;
图9是示出实例化网络应用模型内的端点以及将它们对应映射到物理基础结构的示图;
图10是示出网络控制平面的示图,该网络控制平面接收策略分辨请求(policyresolution response)并且传达用于源端点通过物理网络向目的地端点发送数据的控制指令;
图11A是示出策略分辨请求的示例的示图;
图11B是示出策略分辨响应的示例的示图,该策略分辨响应包括形式为动作的连通指令;
图12是示出在由网络控制平面执行的分辨策略分辨请求时采用的步骤的流程图;
图13是其中可以实施这里描述的方法的数据处理系统的框图;以及
图14提供图13中所示的信息处置系统环境的扩展以图示可以在操作于联网环境中的广泛多种信息处置系统上执行这里描述的方法。
具体实施方式
这里所用的术语仅出于描述具体实施例的目的而未旨在于限制公开内容。如这里所用,除非上下文另有明示,否则单数形式的“一个”和“该”旨在于也包括复数形式。还将理解,术语“包括”当在本说明书中使用时指定存在陈述的特征、整件(integer)、步骤、操作、单元和/或部件、但是并未排除存在或者添加一个或者多个其它特征、整件、步骤、操作、单元、部件和/或其分组。
以下权利要求中的所有装置或者步骤加上功能要素的对应结构、材料、动作和等效物旨在于包括用于与如具体要求保护的其它要求保护的要素组合执行该功能的任何结构、材料或者动作。已经出于例示和描述的目的呈现了本公开内容的描述,但是该描述并不旨在于是穷举的或者限于采用公开的形式的公开内容。许多修改和变化将为本领域普通技术人员所清楚而未脱离公开内容的范围和精神实质。选择和描述实施例以便最好地说明公开内容的原理和实际应用以及使本领域其他普通技术人员能够对于具有如与设想的特定使用相配的各种修改的各种实施例理解公开内容。
所属技术领域的技术人员知道,本发明的各个方面可以实现为系统、方法或计算机程序产品。因此,本发明的各个方面可以具体实现为以下形式,即:完全的硬件实施方式、完全的软件实施方式(包括固件、驻留软件、微代码等),或硬件和软件方面结合的实施方式,这里可以统称为“电路”、“模块”或“系统”。此外,在一些实施例中,本发明的各个方面还可以实现为在一个或多个计算机可读介质中的计算机程序产品的形式,该计算机可读介质中包含计算机可读的程序代码。
可以采用一个或多个计算机可读介质的任意组合。计算机可读介质可以是计算机可读信号介质或者计算机可读存储介质。计算机可读存储介质例如可以是——但不限于——电、磁、光、电磁、红外线、或半导体的系统、装置或器件,或者任意以上的组合。计算机可读存储介质的更具体的例子(非穷举的列表)包括:具有一个或多个导线的电连接、便携式计算机盘、硬盘、随机存取存储器(RAM)、只读存储器(ROM)、可擦式可编程只读存储器(EPROM或闪存)、光纤、便携式紧凑盘只读存储器(CD-ROM)、光存储器件、磁存储器件、或者上述的任意合适的组合。在本文件中,计算机可读存储介质可以是任何包含或存储程序的有形介质,该程序可以被指令执行系统、装置或者器件使用或者与其结合使用。
计算机可读的信号介质可以包括在基带中或者作为载波一部分传播的数据信号,其中承载了计算机可读的程序代码。这种传播的数据信号可以采用多种形式,包括——但不限于——电磁信号、光信号或上述的任意合适的组合。计算机可读的信号介质还可以是计算机可读存储介质以外的任何计算机可读介质,该计算机可读介质可以发送、传播或者传输用于由指令执行系统、装置或者器件使用或者与其结合使用的程序。
计算机可读介质上包含的程序代码可以用任何适当的介质传输,包括——但不限于——无线、有线、光缆、RF等等,或者上述的任意合适的组合。
可以以一种或多种程序设计语言的任意组合来编写用于执行本发明操作的计算机程序代码,所述程序设计语言包括面向对象的程序设计语言—诸如Java、Smalltalk、C++等,还包括常规的过程式程序设计语言—诸如“C”语言或类似的程序设计语言。程序代码可以完全地在用户计算机上执行、部分地在用户计算机上执行、作为一个独立的软件包执行、部分在用户计算机上部分在远程计算机上执行、或者完全在远程计算机或服务器上执行。在涉及远程计算机的情形中,远程计算机可以通过任意种类的网络——包括局域网(LAN)或广域网(WAN)—连接到用户计算机,或者,可以连接到外部计算机(例如利用因特网服务提供商来通过因特网连接)。
下面将参照根据本发明实施例的方法、装置(系统)和计算机程序产品的流程图和/或框图描述本发明。应当理解,流程图和/或框图的每个方框以及流程图和/或框图中各方框的组合,都可以由计算机程序指令实现。这些计算机程序指令可以提供给通用计算机、专用计算机或其它可编程数据处理装置的处理器,从而生产出一种机器,使得这些计算机程序指令在通过计算机或其它可编程数据处理装置的处理器执行时,产生了实现流程图和/或框图中的一个或多个方框中规定的功能/动作的装置。
也可以把这些计算机程序指令存储在计算机可读介质中,这些指令使得计算机、其它可编程数据处理装置、或其他设备以特定方式工作,从而,存储在计算机可读介质中的指令就产生出包括实现流程图和/或框图中的一个或多个方框中规定的功能/动作的指令的制造品(article of manufacture)。
也可以把计算机程序指令加载到计算机、其它可编程数据处理装置或其它设备上以使得在计算机、其它可编程数据处理装置或其它设备上执行一系列操作步骤以产生计算机实现的过程,从而使得在计算机或其它可编程装置上执行的指令提供用于实现流程图和/或框图中的一个或多个方框中指定的功能/动作的过程。
附图中的流程图和框图显示了根据本发明的多个实施例的系统、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段或代码的一部分,所述模块、程序段或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。也应当注意,在有些作为替换的实现中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个连续的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图和/或流程图中的每个方框、以及框图和/或流程图中的方框的组合,可以用执行规定的功能或动作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。
以下具体描述将主要遵循如以上阐述的公开内容的发明内容,从而如必要的那样进一步说明和展开公开内容的各种方面和实施例的定义。
图1是示出网络应用模型的示图,该网络应用模型包括网络策略对象和用于在策略对象之间发送数据的连通规则。网络应用模型100包括网络策略对象A 110、网络策略对象B 120和网络策略对象C 130,这些网络策略对象是根据面向对象的网络建模语言定义的对象并且包括对等体(例如,其它网络策略对象)和用于连接到对等体的对应的连接规则。指定网络应用模型100允许系统管理员从下层物理基础结构分离网络应用模型的定义/抽象化。这一分离使定制和可适配的网络应用模型的高效定义能够例如在虚拟化的多租户数据中心内被自动配置、部署和控制,因此实现独立于下层物理基础结构。
网络虚拟化在这里被描述为向通信计算端点提供的服务,其中通信模式由按照逻辑性质的术语和概念制定的规则和动作(比对按照线缆、端口和网络中介定义的网络)定义和支配。这样,虚拟网络系统可以支持大量独立的隔离的租户和每个租户中的在租户专属策略之下通信的大量网络客户端,从而始终实现独立于物理基础结构拓扑实现方式。
在一个实施例中,开发者使用面向对象的网络建模语言,该网络建模语言包括网络策略对象要求和原语。开发者转而可以利用网络策略对象创建网络应用模型(基于网络应用要求)并且使用面向对象的语言原语以“扩展”网络策略对象中的一些网络策略对象。在这一实施例中,面向对象的网络建模语言可以包括原语,比如“扩展”、“追加(append)”和“覆盖(override)”,管理员可以利用这些以便网络策略对象继承对等体并且向继承的网络策略对象的规则添加或者覆盖这些规则(更多细节见图2、图6和对应文字)。
图1示出网络策略对象标识符对等体(例如,其它网络策略对象)和用于连接到对等体的连接规则(表115、125和135)中的每个网络策略对象标识符对等体和连接规则。连接规则指示在向网络策略对象指派的端点向与特定对等体对应的目的地端点发送数据时采用/应用的动作/策略(例如,图4和图8中所示的规则表420)。
图1中所示的示例示出网络策略对象A 110定义两个规则,这些规则中的一个规则对应于网络策略对象B 120而另一规则对应于网络策略对象C 130。在管理员向网络策略对象指派端点时,端点履行它的特定网络策略对象的特性(更多细节见图7、图8和对应文字)。这样,在向网络策略对象A 110指派的端点将数据发送到向网络策略对象B 120指派的端点时,网络控制平面提供控制指令,这些控制指令指示系统应当执行与规则Y(规则Y 140)对应的动作,比如数据压缩。同样地,在向网络策略对象A 110指派的端点将数据发送到向网络策略对象C 130指派的端点时,网络控制平面提供控制指令,这些控制指令指示系统应当执行与规则X(规则X 150)对应的动作。
参照网络策略对象B 120,在指派的端点将数据发送到向网络策略对象A 110指派的端点时,网络控制平面提供控制指令,这些控制指令指示系统应当执行与规则W(规则W160)对应的动作。以及,在指派的端点将数据发送到向网络策略对象C 130指派的端点时,网络控制平面提供控制指令,这些控制指令指示系统应当执行与规则X(规则X 170)对应的动作。
参照网络策略对象C 130,在指派的端点将数据发送到向网络策略对象A 110指派的端点时,网络控制平面提供控制指令,这些控制指令指示系统应当执行与规则Y(规则Y190)对应的动作。以及,在指派的端点将数据发送到向网络策略对象B 120指派的端点时,网络控制平面提供控制指令,这些控制指令指示系统应当执行与规则Z(规则Z 180)对应的动作。
在一个实施例中,目的地网络策略对象列表可以包括未不相交的实体。例如,策略域和在策略域内的端点可以均表现为对等体列表中的实体。在这一示例中,当在连接规则列表中包括端点专属的条目时,端点专属规则在向端点发送数据时覆盖包含网络策略对象的规则。换言之,目的地端点的最具体条目优先于更不具体的条目(更多细节见图2和对应文字)。
图2A至图2C是示出扩展现有网络策略对象的网络策略对象的示图。图2A示出包括三个网络策略对象的初始网络应用模型,这些网络策略对象是网络策略对象外部210、网络策略对象域1 220和网络策略对象开账单服务230。网络策略对象域1 220定义用于与其它两个网络策略对象交互的两个连接规则,这些连接规则是1)向开账单服务230转发(FW)数据和2)拒绝向外部实体(网络策略对象外部210)的请求。
图2B示出由三个其它网络策略对象扩展的网络策略对象域1220,这些网络策略对象是网络策略对象DMZ 240、网络策略对象数据库250和网络策略对象应用260。在一个实施例中,开发者可以基于在面向对象的网络建模语言中定义的原语创建其它网络策略对象,这些网络策略对象是现有网络策略对象(父代)的扩展(子代)。在这一实施例中,子代网络策略对象按照对等体和对应的规则采用父代网络策略对象的属性。
此外,开发者可以使用子代网络策略对象定义中的原语(比如“覆盖”)以便在子代网络策略对象级定义的规则覆盖为相同对等体在父代网络策略对象级定义的规则(更多细节见图6、图12和对应文字)。开发者可以使用的另一原语是用于添加未在父代网络策略对象中出现的新对等体(以及对应的规则)的“追加”。图2B中的示例定义网络策略对象域1220的三个扩展(子代)网络策略对象,这些网络策略对象是1)DMZ/域1、2)数据库/域1和3)应用/域1。
每个扩展的网络策略对象添加用于与其它两个扩展的策略对象通信的两个附加规则(对应于追加原语)。例如,网络策略对象数据库250添加DMZ:拒绝和应用:压缩这两个连接规则(例如,使用“追加”原语)。此外,网络策略对象DMZ 240添加对外部210的规则“转发”,该规则覆盖网络策略对象域1 220的对网络策略对象外部210的规则“拒绝”(来自图2A)。
图2C向图2B添加并且定义扩展网络策略DMZ/域的两个不同类型的DMZ网络策略对象,这些网络策略对象是网络策略对象视频服务270和网络策略对象web服务280。每个网络策略对象包括用于连接到网络策略对象外部210的不同规则,因此覆盖网络策略对象DMZ/域1的对网络策略对象外部210的先前规则“转发”。如可见,网络策略对象视频服务270执行CBR以连接到网络策略对象外部210,并且网络策略对象web服务280执行SSL以连接到网络策略对象外部210。
图3是示出转换模块的示图,该转换模块将网络应用模型转换成为了配置网络控制平面而需要的配置信息。网络应用模型300包括网络策略对象和用于在网络策略对象之间连接的对应的连接规则。可以是基于硬件和/或基于软件的转换模块310将网络应用模型300转换成在表存储库330中存储的配置信息。在一个实施例中,配置信息320存储于表存储库330中的多个表中,比如用于跟踪网络策略对象的网络策略对象表、用于匹配网络策略对象与它们的对应的规则的规则表以及匹配规则与对应的动作的动作表(更多细节见图4、图8和对应文字)。
根据配置信息320配置网络控制平面340,并且转而在向特定网络策略对象指派端点并且开始发送数据之后发起策略请求。响应于策略请求,网络控制平面340基于请求端点的指派的网络策略对象和目的地端点的指派的网络策略对象提供策略分辨(更多细节见图10、图12和对应文字)。
图4是示出存储通过转换网络应用模型而生成的配置信息的各种表的示图。表存储库330包括网络策略对象表410、规则表420和动作表430。如本领域技术人员可以领会到的那样,表存储库330可以包括比图4中所示的表更多或者更少的表以存储配置信息。
网络策略对象表410包括定义网络策略对象的条目。每个条目包括向每个特定网络策略对象指派的唯一网络策略对象标识符(列412)、网络策略对象名称(列414)和成员标识符(例如,端点)。
在一个实施例中,网络策略对象标识符和网络策略对象名称可以由它们从其扩展的网络策略对象表征。例如,网络策略对象表410包括与具有对应的网络策略对象标识符P87、P873和P8734的网络策略对象“A”、“E/A”和“G/E/A”对应的表条目。如本领域可以领会到的那样,网络策略对象表410可以具有比图4中所示的列更多或者更少的列。
规则表420包括用于每个个别网络策略对象的规则表。图4示出规则表“EA”,该规则表是与网络策略对象“E/A”对应的规则表并且包括目的地网络策略对象(列426)和对应的连接规则(列428)。这样,在代表向网络策略对象E/A指派的端点接收策略请求时,处理访问规则表E/A以标识包括与目的地端点对应的目的地网络策略对象的表条目,并且转而标识待遵循的连接规则以便向目的地端点发送数据。换言之,从“更”具体到“更不”具体搜索规则,从而使得搜索过程使用与目的地匹配(例如,在目的地比策略对象更具体时)的第一条目(更多细节见图12和对应文字)。
规则表420中的每个规则表包括网络策略对象的唯一标识符(列422)并且在网络策略对象是另一网络策略对象(列424)(例如,基本/祖代网络策略对象)的扩展的情况下包括扩展的网络策略对象的标识符。如可见,网络策略对象E/A的唯一标识符是“P873”(来自表410)并且是唯一标识符为“P87”的网络策略对象A的扩展。分布式策略服务使用网络策略对象扩展标识符以按照向上分级方式搜索规则表以对包括正确目的地网络策略对象的条目定位,因此标识如果可用的用于所需目的地的更加新近的覆盖规则(更多细节见图12和对应文字)。
动作表430包括连接规则(列432)和对应的动作(列434)。处理在从规则表420标识规则之后访问动作表430以便向请求实体提供动作。动作可以包括连通服务(IDS、压缩等)和/或连通策略(QoS、SSL等)。在一个实施例中,动作表430可以包括策略动作的有序集合,比如{SSL(安全套接字层),QoS 1ms延时}或者{IDS(入侵检测系统),压缩}。
图5是示出在基于网络策略对象定义网络应用模型、将网络应用模型转换成用于配置网络控制平面的配置信息、管理端点以及分辨策略请求以在向各种网络策略对象指派的端点之间发送数据时采用的步骤的高级流程图。
处理始于500,其中开发者根据面向对象的网络建模语言通过网络策略对象、原语和连接规则定义网络应用模型300。在一个实施例中,网络应用模型是网络策略对象及其对应的连接规则/动作的建模/规范(步骤510)。
这样,处理将网络应用模型300转换成配置信息并且在各种表中存储配置信息(预定义的过程块520,更多细节见图6和对应文字)。系统管理员通过向网络策略对象指派端点来实例化端点(例如,虚拟机、子网络等)。在端点指派时,系统相应地更新网络控制平面,因此在表存储库330中创建附加端点配置信息(预定义的过程块530,更多细节见图7和对应文字)。
在网络操作期间,网络控制平面基于在表存储库330中包括的配置信息分辨代表端点接收的策略请求(预定义的过程块540,更多细节见图12和对应文字)。
在550关于是否继续(例如,网络是否仍然有效)进行确定。如果处理应当仍然继续,则判决550转向“是”分支,其中处理继续处理策略请求和/或管理端点。这一循环继续直至处理应当终止,在该点,判决500转向“否”分子,其中处理结束于560。
在一个实施例中,处理可以执行其它生命周期事件,这些生命周期事件可以是在操作时间期间的操作改变,比如配置更新、对现有端点的改变、端点的迁移和/或去除端点。
图6是示出在将网络应用模型转换成配置信息时采用的步骤的流程图。处理始于600,其中处理在步骤610从网络应用模型300取回定义。在一个实施例中,网络应用模型300包括不同类型的定义,比如网络策略对象定义、连接规则定义和动作定义。
关于取回的定义的类型进行确定(判决620)。如果定义类型是网络策略对象定义,则判决620转向“网络策略对象”分支,其中处理在网络策略对象表(图4中所示的表410)中创建网络策略对象条目并且包括可以均在网络策略对象定义中包括的网络策略对象名称和唯一策略对象标识符(步骤625)。
在步骤630,处理创建用于新网络策略对象的规则表。规则表包括网络策略对象的对等体(以下讨论的目的地网络策略对象、虚拟机、子网等)和对应的连接规则,这些连接规则指向在向网络策略对象指派的端点将数据发送到向特定目的地网络策略对象指派的目的地端点时将采用的动作(例如,图4中所示的规则表420)。
关于网络策略对象是否为另一网络策略对象的扩展进行确定(判决635)。例如,开发者可以添加用于“扩展”现有网络策略对象并且覆盖或者添加与现有网络策略对象对应的规则的原语。如果网络策略对象是另一网络策略对象的扩展,则判决635转向“是”分支,其中处理在步骤640向规则表(例如,规则表420中的列424)添加扩展的网络策略对象标识符(标识扩展的网络策略对象)。在另一方面,如果网络策略对象不是另一网络策略对象的扩展,则判决635转向“否”分支从而绕过步骤640。
回顾判决620,如果定义类型是与网络策略对象对应的规则定义,则判决620转向“规则”分支,其中处理在步骤650标识与网络策略对象对应的规则表(例如,规则表E/A对应于网络策略对象E/A)。在步骤655,处理在标识的规则表中创建规则条目并且包括均可以在规则定义中提供的目的地(例如,“目的地”网络策略对象)和规则(例如,规则表420中的列426和428)。也可以执行这一步骤以覆盖现有规则。
回顾判决620,如果定义类型是新动作定义,则判决620转向“动作”分支,其中处理在步骤660在动作表中创建包括连接规则和对应的动作的动作条目。在一个实施例中,动作可以对应于连通服务动作或者连通策略(例如,图4中所示的动作表430)。
关于网络应用模型300是否包括待转换的更多定义进行确定(判决670)。如果是,则判决670转向循环回到取回和转换另一定义的“是”分支。这一循环继续直至没有待处理的更多定义,届时判决670转向“否”分支,其中处理在680返回。
图7是示出在向网络应用模型中实例化端点时采用的步骤的流程图。在一个实施例中,处理可以执行除了实例化端点之外的动作,比如从网络策略对象去除端点、向不同网络策略对象迁移端点、重新配置端点等。
处理始于700,其中处理接收用于向网络策略对象指派端点(例如,虚拟机)的请求(步骤710)。关于是否当前向网络策略对象指派端点进行确定(判决715)。如果当前向网络策略对象指派端点,则判决715转向“是”分支,其中处理在步骤718生成错误。
在另一方面,如果当前未向网络策略对象指派端点,则判决715转向“否”分支,其中处理在步骤720中向指派的网络策略对象的在网络策略对象表410中的表条目添加成员的唯一标识符(更多细节见图4和对应文字)。
在步骤730,处理在步骤720在端点表740中创建端点条目。端点条目包括端点的虚拟地址、物理地址、指派的网络策略对象标识符和唯一成员标识符(更多细节见图8和对应文字)。
关于管理员是否希望向网络策略对象指派更多端点进行确定(判决750)。如果是,则判决750转向循环回到接收和处理另一端点指派请求的“是”分支。这一循环继续直至没有待处理的更多端点指派请求,届时,判决750转向“否”分支,其中处理在760返回。
图8是示出由网络控制平面用来配置网络应用模型以及向网络应用模型中实例化端点的各种表的示图。图8与图4相似而例外在于图8包括端点表740和网络策略对象表410的用成员标识符(例如,向各种网络策略对象指派的端点)填充的列810。
端点表740包括端点(例如,虚拟机)及其指派的网络策略对象的列表。端点可以被称为“成员”并且具有与网络策略对象表410的列416中所示的唯一成员标识符相似的唯一成员标识符(列810)。每个条目包括端点的虚拟IP地址(列820)和物理地址(列830)。列840示出向每个特定端点指派的网络策略对象。这样,在接收策略请求时,策略服务/控制器访问端点表740以匹配目的地端点(经由列820中的虚拟IP地址)与它们的在列840中的对应的指派的网络策略对象(更多细节见图12和对应文字)。
图9是示出实例化网络应用模型内的端点以及将它们对应映射到物理基础结构的示图,并且这样在网络控制平面内存储映射控制信息。网络应用模型端点实例化900包括向网络策略对象910-930中的一个网络策略对象指派的端点932-942,844,846。
网络控制平面850利用表存储库330中存储的配置信息以向端点932-946(或者对应的虚拟交换机)提供分辨响应,这些分辨响应允许端点通过物理基础结构950在相互之间发送数据。如可见,物理基础结构950可以包括创建多个子网的多个服务器(970、976、978、982和986)、多个交换机(974、980)和多个路由器(972、984)。
在一个实施例中,虚拟网络抽象化支持在不同虚拟网络之间的地址独立。例如,在两个不同虚拟网络中操作的两个不同端点可以具有相同IP地址。作为另一示例,虚拟网络抽象化支持向位于不同物理子网(包括在物理实体之间的交换机和/或路由器)中的不同主机上部署属于相同虚拟网络的端点。在另一实施例中,可以在相同物理主机上托管属于不同虚拟网络的端点。在又一实施例中,虚拟网络抽象化支持在数据中心中别处的端点迁移而未改变端点的网络地址和失去它的网络连接。
图10是示出网络控制平面的示图,该网络控制平面接收策略分辨请求并且传达用于源端点通过物理网络向目的地端点发送数据的控制指令。在一个实施例中,网络控制平面850包括策略服务1000,该策略服务1000访问表存储库330中的各种表以向数据平面实体提供动作(更多细节见图12和对应文字)。
在接收代表源端点1010(例如,虚拟交换机)发起的分辨请求时,策略服务1000使用端点表740以标识目的地端点1060的指派的网络策略对象。然后,使用从策略分辨请求1020提取的源网络策略对象标识符(最具体),策略服务1000访问源网络策略对象的规则表以寻找包括目的地网络策略对象标识符的条目。如果未发现这一条目,则策略服务1000选择与下一更高扩展路径对应的表(例如,在Web服务/DMZ/域1的规则表的情况下,待搜索的下一规则表是DMZ/域1)。这样,首先对在最具体级的规则表条目进行定位(例如,覆盖更高级扩展的规则)。
策略服务1000转而访问动作表430以取回与规则对应的动作,并且在策略分辨响应1030中包括该动作(配置指令)。策略服务1000向源端点1010发送策略分辨响应1030,该源端点1010遵循该动作(例如,SSL、压缩等)以通过计算机网络1050向目的地端点1060发送消息1040。
图11A是示出策略分辨请求的示例的示图。在一个实施例中,数据平面实体在源端点希望向目的地端点发送数据时向策略服务发送策略分辨请求。策略分辨请求1020包括字段1100-1140。如本领域技术人员可以领会到的那样,策略分辨请求可以包括比图11A中所示的字段更多或者更少的字段。字段1100包括请求序列号,策略服务在向源端点的响应中包括该请求序列号以便源端点将响应与对应的请求相关(更多细节见图11B和对应文字)。
字段1110包括与源端点对应的源虚拟地址,并且字段1120包括与源端点对应的源虚拟网络。字段1130包括源端点被指派到的网络策略对象标识符。策略服务使用这一信息以标识源网络策略对象的规则表(更多细节见图11和对应文字)。字段1140包括目的地虚拟地址,策略服务将该目的地虚拟地址映射到目的地网络策略对象->规则表->动作(更多细节见图12和对应文字)。
图11B是示出策略分辨响应的示例,该策略分辨响应包括形式为动作的配置指令。策略服务响应于代表源端点接收策略分辨请求(比如图11A中所示的策略分辨请求1020)向数据平面实体发送策略分辨响应。
策略分辨响应1030包括字段1150-1170。如本领域技术人员可以领会到的那样,策略分辨响应可以包括比图11B中所示的字段更多或者更少的字段。字段1150包括在策略服务接收的策略分辨请求中包括的序列号。这允许源端点将策略分辨响应与它的策略分辨请求相关。
字段1160包括(由策略服务基于以上讨论的目的地虚拟地址标识的)目的地端点的目的地物理地址。字段1170包括动作(配置指令),源端点应当调用该动作以向目的地端点发送数据(比如连通服务动作和/或与连接关联的策略)。
图12是示出在通过在控制平面中访问信息并且在策略分辨答复内提供控制指令来分辨策略分辨请求时采用的步骤的流程图。处理始于1200(例如,图9中所示的策略服务900),其中处理接收策略分辨请求,比如图11A中所示的策略分辨请求1020(步骤1210)。策略分辨请求可以是从虚拟交换机发送的,并且包括与源的指派的网络策略对象对应的源网络策略对象标识符。策略分辨请求也包括标识目的地端点的目的地虚拟地址。
在步骤1220,处理访问端点表740并且对端点条目进行定位,该端点条目包括在策略分辨请求中包括的目的地虚拟地址。处理从定位的端点条目提取目的地物理地址和目的地网络策略对象,该端点条目标识目的地端点的指派的网络策略对象。
处理在步骤1230选择与源网络策略对象对应的规则表。在一个实施例中,选择的规则表是源网络策略对象专属的规则表。例如,如果源网络策略对象是D/C/B,则处理首先选择“规则表D/C/B”。在步骤1235,处理搜索(在规则表420中包括的)选择的规则表以寻找与目的地网络策略对象匹配的表条目。使用以上示例并且假设目的地网络策略对象是Z/Y,处理在网络策略对象D/C/B规则表中搜寻Z/Y目的地网络策略对象标识符(更多细节见图4和对应文字)。
关于是否在选择的规则表中发现匹配进行确定(判决1240)。如果未发现匹配,则判决1240转向“否”分支,其中关于选择的规则表是否为更高级规则表的扩展进行确定(判决1245)。在一个实施例中,处理访问选择的规则表网络策略对象扩展标识符字段(图4中的列424)以确定新近搜索的规则表是否为另一规则表的扩展(例如,源网络策略对象是另一网络策略对象的扩展)。
如果选择的表不是扩展,则判决1245转向“是”分支,其中处理选择与下一更高源路径扩展对应的规则表,这是来自以上示例的“规则表C/B”。这一循环继续直至处理已经搜索最高级规则表并且未发现匹配,届时判决1245转向“否”分支,其中处理在步骤1255拒绝策略分辨请求并且处理在1260返回。
然而,在处理在选择的规则表之一中标识匹配时,判决1240转向“是”分支,其中处理从匹配的规则表条目提取规则(或者规则标识符)(步骤1270),并且访问动作表430以标识与提取的规则对应的动作(步骤1275)。动作可以例如是与连通关联的具体策略(例如,服务质量策略)。处理转而在策略分辨响应(例如,图11B中所示的策略分辨响应1030)中包括该动作,并且在步骤1280向成员发送策略分辨响应。处理在1290返回。
图13图示信息处置系统1300,该信息处置系统1300是能够执行这里描述的计算操作的计算机系统的简化示例。信息处置系统1300包括耦合到处理器接口总线1312的一个或者多个处理器1310。处理器接口总线1312将处理器1310连接到北桥1315,该北桥1315也被称为存储器控制器集线器(MCH)。北桥1315连接到系统存储器1320并且提供用于处理器1310访问系统存储器的手段。图像控制器1325也连接到北桥1315。在一个实施例中,PCI快速总线1318将北桥1315连接到图形控制器1325。图形控制器1325连接到显示设备1330,比如计算机监视器。
北桥1315和南桥1335使用总线1319来相互连接。在一个实施例中,总线是在北桥1315与南桥1335之间在每个方向上高速传送数据的直接介质接口(DMI)总线。在另一实施例中,外围部件互连(PCI)总线连接北桥和南桥。也被称为I/O控制器集线器(ICH)的南桥1335是芯片,该芯片一般实施以比北桥提供的能力更慢的速度操作的能力。南桥1335通常提供用来连接各种部件的各种总线。这些总线例如包括PCI和PCI快速总线、ISA总线、系统管理总线(SM总线或SMB)和/或低管脚计数(LPC)总线。LPC总线经常连接低带宽设备,比如引导ROM 1396和“旧式”I/O设备(使用“超级I/O”芯片)。“旧式”I/O设备(1398)可以例如包括串行和并行端口、键盘、鼠标和/或软盘控制器。LPC总线也将南桥1335连接到可信平台模块(TPM)195。在南桥1335中经常包括的其它部件包括直接存储器访问(DMA)控制器、可编程中断控制器(PIC)和存储设备控制器,该存储设备控制器使用总线1384将南桥1335连接到非易失性存储设备1385,比如硬盘驱动。
快速卡1355是将可热插设备连接到信息处置系统的插槽。快速卡1355支持PCI快速和USB连通二者,因为它使用通用串行总线(USB)和PCI快速总线二者来连接到南桥1335。南桥1335包括向连接到USB的设备提供USB连通的USB控制器1340。这些设备包括摄像头(相机)1350、红外线(IR)接收器1348、键盘和跟踪板1344以及提供无线个人区域网络(PAN)的蓝牙设备1346。USB控制器1340也向其它杂项USB连接设备1342(比如鼠标、USB存储设备145、调制解调器、网络卡、ISDN连接器、传真机、打印机、USB集线器和许多其它类型的USB连接设备)提供USB连通。尽管USB存储设备145被示出为USB连接设备,但是可以使用不同接口(比如火线接口等)来连接USB存储设备145。
无线局域网(LAN)设备1375经由PCI或者PCI快速总线1372连接到南桥1335。LAN设备1375通常实施空中调制技术的IEEE802.11标准之一,这些标准都使用相同协议以在信息处置系统1300与另一计算机系统或者设备之间无线通信。光学存储设备1390使用串行ATA(SATA)总线1388连接到南桥1335。串行ATA适配器和设备通过高速串行链路通信。串行ATA总线也将南桥1335连接到其它形式的存储设备,比如硬盘驱动。音频电路1360(比如声卡)经由总线1358连接到南桥1335。音频电路1360也提供功能,比如音频线输入和光学数字音频输入端口1362、光学数字输出和头戴式受话器插孔1364、内部扬声器1366和内部麦克风1368。以太网控制器1370使用总线(比如PCI或者PCI快速总线)连接到南桥1335。以太网控制器1370将信息处置系统1300连接到计算机网络,比如局域网(LAN)、因特网以及其它公共和专有计算机网络。
尽管图13示出一个信息处置系统,但是信息处置系统可以采用许多形式。例如,信息处置系统可以采用台式、服务器、便携式、膝上型、笔记本或者其它形式因子的计算机或者数据处理系统的形式。此外,信息处置系统可以采用其它形式因子,比如个人数字助理(PDA)、游戏设备、ATM机、便携电话设备、通信设备或者包括处理器和存储器的其它设备。
图13中所示和这里描述的用于提供安全功能的可信平台模块(TPM 195)仅为硬件安全模块(HSM)的一个示例。因此,这里描述和要求保护的TPM包括任何类型的HSM,该HSM包括但不限于符合可信计算组(TCG)标准的硬件安全设备并且被命名为“可信平台模块(TPM)规范版本1.2”。TPM是可以向任何数目的信息处置系统(比如图14中概述的信息处置系统)中并入的硬件安全子系统。
图14提供图13中所示的信息处置系统环境的扩展以图示可以在联网环境中操作的广泛多种信息处置系统上执行这里描述的方法。信息处置系统的类型范围从小型的手持设备(比如手持计算机/移动电话1410)到大型的大型机系统(比如大型机计算机1470)。手持计算机1410的示例包括个人数字助理(PDA)、个人娱乐设备,比如MP3播放器、便携电视和紧致盘播放器。信息处置系统的其它示例包括笔或者平板计算机1420、膝上型或者笔记本计算机1430、工作站1440、个人计算机系统1450和服务器1460。在图4中未个别示出的其它类型的信息处置系统由信息处置系统1480代表。如所示,可以使用计算机网络1400将各种信息处置系统联网在一起。可以用来互连各种信息处置系统的计算机网络的类型包括局域网(LAN)、无线局域网(WLAN)、因特网、公共交换电话网络(PSTN)、其它无线网络和可以用来互连信息处置系统的任何其它网络拓扑。信息处置系统中的许多信息处置系统包括非易失性数据存储库,比如硬盘驱动和/或非易失性存储器。图14中所示的信息处置系统中的一些信息处置系统描绘分离的非易失性数据存储库(服务器1460利用非易失性数据存储库1465,大型机计算机1470利用非易失性数据存储库1475,并且信息处置系统1480利用非易失性数据存储库1485)。非易失性数据存储库可以是在各种信息处理系统外部的部件或者可以是在信息处置系统之一内部。此外,可以使用各种技术(比如将USB存储设备145连接到信息处置系统的USB端口或者其它连接器)在两个或者更多信息处置系统之间共享USB存储设备145。
尽管已经示出和描述了本公开内容的特定实施例,但是本领域技术人员将清楚,基于这里的教导可以进行改变和修改而未脱离本公开内容及其更广义方面。因此,所附权利要求将在它们的范围内涵盖如在本公开内容的真实精神和范围内的所有这样的改变和修改。另外,将理解,公开内容仅由所附权利要求限定。本领域技术人员将理解,如果旨在于具体数目的引入的权利要求要素,则将在权利要求中明确地记载这样的意图,并且在没有这样的记载时,这样的限制不存在。对于非限制示例,作为对理解的辅助,所附权利要求包含使用引入性短语“至少一个”和“一个或者多个”以引入权利要求要素。然而,这样的短语的使用不应被理解为意味着由不定冠词“一个”引入权利要求要素使包含这样的引入的权利要求要素的任何特定权利要求限于仅包含一个这样的要素的公开内容,即使在相同权利要求包括引入性短语“一个或者多个”或者“至少一个”和不定冠词(比如“一个”)时;这对于在权利要求中使用定冠词同样成立。
Claims (12)
1.一种信息处置方法,包括:
由一个或者多个处理器创建网络应用模型,所述网络应用模型包括多个网络策略对象和与在向所述网络策略对象指派的多个端点之间发送数据对应的多个连接规则;
由所述处理器中的一个或者多个处理器将所述网络应用模型转换成网络配置信息,所述网络配置信息将所述多个网络策略对象链接到所述多个连接规则;以及
由所述处理器中的一个或者多个处理器基于所述网络配置信息配置网络控制平面以将所述网络应用模型映射到物理基础结构,其中在创建所述网络应用模型之前,所述方法还包括:
定义包括一个或者多个网络策略对象要求和一个或者多个语言原语的面向对象的网络建模语言;
基于所述一个或者多个网络策略对象要求来创建所述多个网络策略对象;以及
根据所述语言原语中的一个语言原语将所述第一网络策略对象扩展成所述第二网络策略对象,所述第一网络策略对象和所述第二网络策略对象被包括在所述多个网络策略对象中,其中所述转换还包括:
生成与所述第一网络策略对象对应的第一规则表中的一个或者多个第一表条目,其中所述第一规则表包括一个或者多个第一目的地网络策略对象标识符和一个或者多个第一连接规则;
生成与所述第二网络策略对象对应的第二规则表中的一个或者多个第二表条目,其中所述第二规则表包括一个或者多个第二目的地网络策略对象标识符和一个或者多个第二连接规则,其中:
所述第二连接规则中的一个第二连接规则在所述一个第二连接规则的对应的第二目的地网络策略对象标识符与所述第一连接规则中的一个第一连接规则的对应的第一网络策略对象标识符匹配时覆盖所述一个第一连接规则;以及
所述第二连接规则中的一个第二连接规则在所述一个第二连接规则的对应的第二目的地网络策略对象标识符未能与所述第一网络策略对象标识符中的一个网络策略对象标识符匹配时向所述第一连接规则添加,还包括:
从请求者接收与源端点对应的包括源网络策略对象标识符和目的地虚拟地址的策略分辨请求;
标识与所述目的地虚拟地址对应的目的地网络策略对象标识符;
确定所述源网络策略对象标识符对应于所述第二网络策略对象;
搜索所述第二规则表以寻找所述目的地网络策略对象标识符;
响应于在所述第二规则表中对所述目的地网络策略对象标识符定位:
从所述第二规则表提取与定位的所述目的地网络策略对象标识符对应的所述第二规则表中的一个第二规则;
标识与提取的所述第二规则对应的动作;
在策略分辨响应中包括所述动作;以及
向所述请求者发送所述策略分辨响应,其中所述请求者根据所述策略分辨响应重新配置所述网络控制平面。
2.根据权利要求1所述的方法,还包括:
响应于未能在所述第二规则表中对所述目的地网络策略对象标识符定位:
搜索所述第一规则表以寻找所述目的地网络策略对象标识符;
在所述第一规则表中对所述目的地网络策略对象标识符定位;
从所述第一规则表提取与定位的所述目的地网络策略对象标识符对应的所述第一规则表中的一个第一规则;
标识与提取的所述第一规则对应的不同动作;
在不同策略分辨响应中包括所述不同动作;以及
向所述请求者发送所述不同策略分辨响应,其中所述请求者根据所述不同策略分辨响应重新配置所述网络控制平面。
3.根据权利要求1所述的方法,还包括:
在所述第二规则表中包括标识所述第一网络策略对象的扩展的网络策略对象标识符。
4.根据权利要求1所述的方法,还包括:
接收用于向所述多个网络策略对象中的一个网络策略对象指派端点的请求;
在端点表中创建端点条目,所述端点条目包括标识所述端点的端点标识符和标识所述多个网络策略对象中的所述一个网络策略对象的网络策略对象标识符;以及
响应于向所述多个网络策略对象中的所述一个网络策略对象指派所述端点来更新所述网络配置信息。
5.根据权利要求1所述的方法,还包括:
接收端点生命周期事件,其中从由配置更新、现有端点改变、端点迁移和端点去除构成的组选择所述生命周期事件;以及
根据所述端点生命周期事件更新所述网络配置信息。
6.根据权利要求1所述的方法,还包括:
接收一个或者多个网络应用模型更新;以及
根据接收的所述一个或者多个网络应用模型更新来更新所述网络配置信息。
7.根据权利要求1所述的方法,其中从由覆盖原语、扩展原语和追加原语构成的组选择所述一个或者多个面向对象的网络语言原语。
8.一种信息处置系统,包括:
一个或者多个处理器;
存储器,耦合到所述处理器中的至少一个处理器;
计算机程序指令集,存储于所述存储器中并且由所述处理器中的至少一个处理器执行以便执行以下动作:
创建网络应用模型,所述网络应用模型包括多个网络策略对象和与在向所述网络策略对象指派的多个端点之间发送数据对应的多个连接规则;
将所述网络应用模型转换成网络配置信息,所述网络配置信息将所述多个网络策略对象链接到所述多个连接规则;以及基于所述网络配置信息配置网络控制平面以将所述网络应用模型映射到物理基础结构,其中在创建所述网络应用模型之前,所述处理器中的一个或者多个处理器执行附加动作,所述附加动作包括:
定义包括一个或者多个网络策略对象要求和一个或者多个语言原语的面向对象的网络建模语言;
基于所述一个或者多个网络策略对象要求来创建所述多个网络策略对象;以及
根据所述语言原语中的一个语言原语将所述第一网络策略对象扩展成所述第二网络策略对象,所述第一网络策略对象和所述第二网络策略对象被包括在所述多个网络策略对象中,其中所述处理器中的一个或者多个处理器执行附加动作,所述附加动作包括:
生成与所述第一网络策略对象对应的第一规则表中的一个或者多个第一表条目,其中所述第一规则表包括一个或者多个第一目的地网络策略对象标识符和一个或者多个第一连接规则;
生成与所述第二网络策略对象对应的第二规则表中的一个或者多个第二表条目,其中所述第二规则表包括一个或者多个第二目的地网络策略对象标识符和一个或者多个第二连接规则,其中:
所述第二连接规则中的一个第二连接规则在所述一个第二连接规则的对应的第二目的地网络策略对象标识符与所述第一连接规则中的一个第一连接规则的对应的第一网络策略对象标识符匹配时覆盖所述一个第一连接规则;以及
所述第二连接规则中的一个第二连接规则在所述一个第二连接规则的对应的第二目的地网络策略对象标识符未能与所述第一网络策略对象标识符中的一个第一网络策略对象标识符匹配时向所述第一连接规则添加,其中所述处理器中的一个或者多个处理器执行附加动作,所述附加动作包括:
从请求者接收与源端点对应的包括源网络策略对象标识符和目的地虚拟地址的策略分辨请求;
标识与所述目的地虚拟地址对应的目的地网络策略对象标识符;
确定所述源网络策略对象标识符对应于所述第二网络策略对象;
搜索所述第二规则表以寻找所述目的地网络策略对象标识符;
响应于在所述第二规则表中对所述目的地网络策略对象标识符定位:
从所述第二规则表提取与定位的所述目的地网络策略对象标识符对应的所述第二规则表中的一个第二规则;
标识与提取的所述第二规则对应的动作;
在策略分辨响应中包括所述动作;以及
向所述请求者发送所述策略分辨响应,其中所述请求者根据所述策略分辨响应重新配置所述网络控制平面。
9.根据权利要求8所述的信息处置系统,其中所述处理器中的一个或者多个处理器执行附加动作,所述附加动作包括:
响应于未能在所述第二规则表中对所述目的地网络策略对象标识符定位:
搜索所述第一规则表以寻找所述目的地网络策略对象标识符;
在所述第一规则表中对所述目的地网络策略对象标识符定位;
从所述第一规则表提取与定位的所述目的地网络策略对象标识符对应的所述第一规则中的一个第一规则;
标识与提取的所述第一规则对应的不同动作;
在不同策略分辨响应中包括所述不同动作;以及
向所述请求者发送所述不同策略分辨响应,其中所述请求者根据所述不同策略分辨响应重新配置所述网络控制平面。
10.根据权利要求8所述的信息处置系统,其中所述处理器中的一个或者多个处理器执行附加动作,所述附加动作包括:
接收用于向所述多个网络策略对象中的一个网络策略对象指派端点的请求;
在端点表中创建端点条目,所述端点条目包括标识所述端点的端点标识符和标识所述多个网络策略对象中的所述一个网络策略对象的网络策略对象标识符;以及
响应于向所述多个网络策略对象中的所述一个网络策略对象指派所述端点来更新所述网络配置信息。
11.根据权利要求8所述的信息处置系统,其中所述处理器中的一个或者多个处理器执行附加动作,所述附加动作包括:
接收端点生命周期事件,其中从由配置更新、现有端点改变、端点迁移和端点去除构成的组选择所述生命周期事件;以及
根据所述端点生命周期事件更新所述网络配置信息。
12.根据权利要求8所述的信息处置系统,其中所述处理器中的一个或者多个处理器执行附加动作,所述附加动作包括:
接收一个或者多个网络应用模型更新;以及
根据接收的所述一个或者多个网络应用模型更新来更新所述网络配置信息。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US13/693,216 US9313096B2 (en) | 2012-12-04 | 2012-12-04 | Object oriented networks |
US13/693,216 | 2012-12-04 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN103856350A CN103856350A (zh) | 2014-06-11 |
CN103856350B true CN103856350B (zh) | 2017-07-28 |
Family
ID=50826608
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201310596320.3A Expired - Fee Related CN103856350B (zh) | 2012-12-04 | 2013-11-21 | 面向对象的网络 |
Country Status (2)
Country | Link |
---|---|
US (2) | US9313096B2 (zh) |
CN (1) | CN103856350B (zh) |
Families Citing this family (44)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9286047B1 (en) | 2013-02-13 | 2016-03-15 | Cisco Technology, Inc. | Deployment and upgrade of network devices in a network environment |
US9712439B2 (en) * | 2013-02-28 | 2017-07-18 | Texas Instruments Incorporated | Packet processing match and action unit with configurable memory allocation |
DE102014201234A1 (de) * | 2014-01-23 | 2015-07-23 | Siemens Aktiengesellschaft | Verfahren, Verwaltungsvorrichtung und Gerät zur Zertifikat-basierten Authentifizierung von Kommunikationspartnern in einem Gerät |
US9571300B2 (en) | 2014-04-28 | 2017-02-14 | International Business Machines Corporation | Reducing encapsulation overhead in overlay-based networks |
US9529619B2 (en) * | 2014-09-30 | 2016-12-27 | Nicira, Inc. | Method of distributing network policies of virtual machines in a datacenter |
US9575794B2 (en) | 2014-09-30 | 2017-02-21 | Nicira, Inc. | Methods and systems for controller-based datacenter network sharing |
US10740287B2 (en) * | 2015-01-05 | 2020-08-11 | Iguazio Systems Ltd. | System and method of managing service oriented data |
US10374904B2 (en) | 2015-05-15 | 2019-08-06 | Cisco Technology, Inc. | Diagnostic network visualization |
US9800497B2 (en) | 2015-05-27 | 2017-10-24 | Cisco Technology, Inc. | Operations, administration and management (OAM) in overlay data center environments |
US10142353B2 (en) | 2015-06-05 | 2018-11-27 | Cisco Technology, Inc. | System for monitoring and managing datacenters |
US9967158B2 (en) | 2015-06-05 | 2018-05-08 | Cisco Technology, Inc. | Interactive hierarchical network chord diagram for application dependency mapping |
US10536357B2 (en) | 2015-06-05 | 2020-01-14 | Cisco Technology, Inc. | Late data detection in data center |
US10089099B2 (en) | 2015-06-05 | 2018-10-02 | Cisco Technology, Inc. | Automatic software upgrade |
US10033766B2 (en) | 2015-06-05 | 2018-07-24 | Cisco Technology, Inc. | Policy-driven compliance |
US10931629B2 (en) | 2016-05-27 | 2021-02-23 | Cisco Technology, Inc. | Techniques for managing software defined networking controller in-band communications in a data center network |
US10171357B2 (en) | 2016-05-27 | 2019-01-01 | Cisco Technology, Inc. | Techniques for managing software defined networking controller in-band communications in a data center network |
US10289438B2 (en) | 2016-06-16 | 2019-05-14 | Cisco Technology, Inc. | Techniques for coordination of application components deployed on distributed virtual machines |
US10708183B2 (en) | 2016-07-21 | 2020-07-07 | Cisco Technology, Inc. | System and method of providing segment routing as a service |
US10972388B2 (en) | 2016-11-22 | 2021-04-06 | Cisco Technology, Inc. | Federated microburst detection |
US10171344B1 (en) * | 2017-02-02 | 2019-01-01 | Cisco Technology, Inc. | Isolation of endpoints within an endpoint group |
US10708152B2 (en) | 2017-03-23 | 2020-07-07 | Cisco Technology, Inc. | Predicting application and network performance |
US10523512B2 (en) | 2017-03-24 | 2019-12-31 | Cisco Technology, Inc. | Network agent for generating platform specific network policies |
US10594560B2 (en) | 2017-03-27 | 2020-03-17 | Cisco Technology, Inc. | Intent driven network policy platform |
US10250446B2 (en) | 2017-03-27 | 2019-04-02 | Cisco Technology, Inc. | Distributed policy store |
US10764141B2 (en) | 2017-03-27 | 2020-09-01 | Cisco Technology, Inc. | Network agent for reporting to a network policy system |
US10873794B2 (en) | 2017-03-28 | 2020-12-22 | Cisco Technology, Inc. | Flowlet resolution for application performance monitoring and management |
US10572322B2 (en) | 2017-04-27 | 2020-02-25 | At&T Intellectual Property I, L.P. | Network control plane design tool |
US10680887B2 (en) | 2017-07-21 | 2020-06-09 | Cisco Technology, Inc. | Remote device status audit and recovery |
US10554501B2 (en) | 2017-10-23 | 2020-02-04 | Cisco Technology, Inc. | Network migration assistant |
US10523541B2 (en) | 2017-10-25 | 2019-12-31 | Cisco Technology, Inc. | Federated network and application data analytics platform |
US10594542B2 (en) | 2017-10-27 | 2020-03-17 | Cisco Technology, Inc. | System and method for network root cause analysis |
US10944723B2 (en) * | 2017-11-17 | 2021-03-09 | ShieldX Networks, Inc. | Systems and methods for managing endpoints and security policies in a networked environment |
US11233821B2 (en) | 2018-01-04 | 2022-01-25 | Cisco Technology, Inc. | Network intrusion counter-intelligence |
US11765046B1 (en) | 2018-01-11 | 2023-09-19 | Cisco Technology, Inc. | Endpoint cluster assignment and query generation |
US10873593B2 (en) | 2018-01-25 | 2020-12-22 | Cisco Technology, Inc. | Mechanism for identifying differences between network snapshots |
US10574575B2 (en) | 2018-01-25 | 2020-02-25 | Cisco Technology, Inc. | Network flow stitching using middle box flow stitching |
US10917438B2 (en) | 2018-01-25 | 2021-02-09 | Cisco Technology, Inc. | Secure publishing for policy updates |
US10826803B2 (en) | 2018-01-25 | 2020-11-03 | Cisco Technology, Inc. | Mechanism for facilitating efficient policy updates |
US10999149B2 (en) | 2018-01-25 | 2021-05-04 | Cisco Technology, Inc. | Automatic configuration discovery based on traffic flow data |
US10798015B2 (en) | 2018-01-25 | 2020-10-06 | Cisco Technology, Inc. | Discovery of middleboxes using traffic flow stitching |
US11128700B2 (en) | 2018-01-26 | 2021-09-21 | Cisco Technology, Inc. | Load balancing configuration based on traffic flow telemetry |
US11212322B2 (en) * | 2018-10-10 | 2021-12-28 | Rockwelll Automation Technologies, Inc. | Automated discovery of security policy from design data |
CN112738114B (zh) * | 2020-12-31 | 2023-04-07 | 四川新网银行股份有限公司 | 一种网络安全策略的配置方法 |
US11757888B2 (en) | 2021-06-15 | 2023-09-12 | Fortinet, Inc. | Systems and methods for fine grained forward testing for a ZTNA environment |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102687462A (zh) * | 2009-11-12 | 2012-09-19 | 微软公司 | 基于模型的虚拟联网 |
CN102780601A (zh) * | 2011-05-13 | 2012-11-14 | 国际商业机器公司 | 管理虚拟网络的方法与系统 |
Family Cites Families (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8225313B2 (en) | 2005-10-19 | 2012-07-17 | Ca, Inc. | Object-based virtual infrastructure management |
US20070220451A1 (en) * | 2006-03-16 | 2007-09-20 | Arizona Public Service Company | Method for modeling and documenting a network |
WO2009146165A1 (en) | 2008-04-15 | 2009-12-03 | Blade Network Technologies, Inc. | Network virtualization for a virtualized server data center environment |
US8213336B2 (en) | 2009-02-23 | 2012-07-03 | Cisco Technology, Inc. | Distributed data center access switch |
US8442048B2 (en) | 2009-11-04 | 2013-05-14 | Juniper Networks, Inc. | Methods and apparatus for configuring a virtual network switch |
US20110110377A1 (en) | 2009-11-06 | 2011-05-12 | Microsoft Corporation | Employing Overlays for Securing Connections Across Networks |
JP5710928B2 (ja) | 2010-10-07 | 2015-04-30 | 株式会社日立製作所 | ネットワークシステム、仮想ネットワーク管理方法及びルータ |
US20120290695A1 (en) | 2011-05-13 | 2012-11-15 | International Business Machines Corporation | Distributed Policy Service |
US20130091261A1 (en) | 2011-10-05 | 2013-04-11 | International Business Machines Corporation | Defining And Managing Virtual Networks In Multi-Tenant Virtualized Data Centers |
-
2012
- 2012-12-04 US US13/693,216 patent/US9313096B2/en not_active Expired - Fee Related
-
2013
- 2013-01-14 US US13/741,344 patent/US9313097B2/en not_active Expired - Fee Related
- 2013-11-21 CN CN201310596320.3A patent/CN103856350B/zh not_active Expired - Fee Related
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102687462A (zh) * | 2009-11-12 | 2012-09-19 | 微软公司 | 基于模型的虚拟联网 |
CN102780601A (zh) * | 2011-05-13 | 2012-11-14 | 国际商业机器公司 | 管理虚拟网络的方法与系统 |
Also Published As
Publication number | Publication date |
---|---|
US20140156811A1 (en) | 2014-06-05 |
US9313097B2 (en) | 2016-04-12 |
US9313096B2 (en) | 2016-04-12 |
CN103856350A (zh) | 2014-06-11 |
US20140156814A1 (en) | 2014-06-05 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN103856350B (zh) | 面向对象的网络 | |
CN105074692B (zh) | 使用基于逻辑多维标签的策略模型的分布式网络管理系统 | |
CN111049796B (zh) | 一种基于Open vSwitch实现Overlay多租户CNI容器网络的方法 | |
CN106790660B (zh) | 一种实现分布式存储系统的部署方法及装置 | |
CN104685500B (zh) | 在覆盖网络中应用安全性策略的方法和系统 | |
CN103748558B (zh) | 用于在物理网络上覆盖虚拟网络的系统和方法 | |
CN104718723B (zh) | 用于虚拟网络中的联网和安全服务的框架 | |
CN103946834B (zh) | 虚拟网络接口对象 | |
CN105684357B (zh) | 虚拟机中地址的管理 | |
KR101650832B1 (ko) | 네트워크 자원 모니터링 | |
CN110392999A (zh) | 分布式计算系统中的虚拟过滤平台 | |
CN104221331B (zh) | 用于以太网交换机的没有查找表的第2层分组交换 | |
CN108616578A (zh) | 跨区块链平台的业务处理方法、设备及计算机可读存储介质 | |
CN102017544B (zh) | 卸载网络处理的方法和系统 | |
CN102780601A (zh) | 管理虚拟网络的方法与系统 | |
CN107005471A (zh) | 通用客户驻地设备 | |
CN104583955A (zh) | 用于编配计算环境中的ip授权与解除授权的方法和设备 | |
CN104038401A (zh) | 用于分布式覆盖虚拟环境的互操作性 | |
CN105095023B (zh) | 一种云主机创建装置、方法和计算设备 | |
CN108780410A (zh) | 计算系统中的容器的网络虚拟化 | |
CN110247784A (zh) | 确定网络拓扑结构的方法和装置 | |
CN109937400A (zh) | 用于虚拟机的实时迁移的流状态传送 | |
CN103095574A (zh) | 网络系统的管理方法、网络系统以及管理服务器 | |
CN106155264B (zh) | 管理存储子系统的电力消耗的计算机方法与计算机系统 | |
CN109587281A (zh) | 容器配置方法和计算节点 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant | ||
CF01 | Termination of patent right due to non-payment of annual fee | ||
CF01 | Termination of patent right due to non-payment of annual fee |
Granted publication date: 20170728 |