网络控制系统到公共云中的扩展技术方案

技术编号:34188516 阅读:58 留言:0更新日期:2022-07-17 14:50
本发明专利技术公开涉及网络控制系统到公共云中的扩展。一些实施例提供了用于管理在数据中心中实现的逻辑网络的第一网络控制器的方法,该数据中心包括第一网络控制器不能访问的转发元件。该方法识别数据中心中的被配置为执行第二网络控制器的第一数据计算节点(DCN)。该方法将定义逻辑网络的配置数据分发给第一DCN。第二网络控制器将配置数据集合分发给在数据中心中的附加DCN上执行的通过逻辑网络发送和接收消息的本地代理。受管理转发元件和本地代理两者都在每个附加DCN上执行。特定DCN上的每个本地代理用于从第二网络控制器接收一配置数据集合,并根据该配置数据集合配置特定DCN上的受管理转发元件以实现逻辑网络。上的受管理转发元件以实现逻辑网络。上的受管理转发元件以实现逻辑网络。

【技术实现步骤摘要】
网络控制系统到公共云中的扩展
[0001]本申请是申请日为2017年1月17日、申请号为201780063156.6、专利技术名称为“网络控制系统到公共云中的扩展”的专利技术专利申请的分案申请。


[0002]本专利技术公开通常涉及网络控制系统到公共云中的扩展。

技术介绍

[0003]公共数据中心设置包括托管虚拟机或其它数据计算节点的许多服务器,其中服务器的虚拟化软件中的转发元件(例如,软件虚拟交换机)处理这些数据计算节点的分组转发和网络安全性。在私有数据中心(例如,企业网络)中,存在允许数据中心的所有者控制主机服务器的管理程序从而实现其自己的安全性和分组转发规则的技术。
[0004]公共数据中心为公司提供了将其网络扩展或移出其自己的私有数据中心的能力,从而降低物理服务器以及它们所需的常规维护的成本和其它负担。但是,公共数据中心拥有其自己的所有者来控制虚拟化软件,并且可能没有强健或透明的安全功能。由此,由于无法实施直接的安全控制,一些公司对将其网络迁移到这些公共数据中心犹豫不决。

技术实现思路

[0005]本专利技术的一些实施例提供了一种具有管理逻辑网络的能力的网络管理和控制系统,该逻辑网络跨越(i)私有数据中心,其中该系统可以访问和控制转发元件,以及(ii)一个或多个公共多租户数据中心,其中该系统不能访问转发元件。在一些实施例的私有数据中心中,网络管理和控制系统(本文称为网络控制系统)管理在主机机器的虚拟化软件(例如,管理程序)中执行的软件转发元件,因此可以实现管理员期望的网络转发和安全策略。但是,在公共数据中心中,网络控制系统不能访问虚拟化软件,因此可能无法对在公共数据中心中操作的工作负载实现相同的联网策略。
[0006]一些实施例使用分层网络控制系统来将私有数据中心管理和控制扩展到公共数据中心中。具体而言,一些实施例在公共数据中心中操作的虚拟机(VM)或其它数据计算节点(DCN)内部操作网络控制器和受管理转发元件,以便为发送到这些DCN和从这些DCN发送的分组强制执行网络安全性和转发规则。在一些实施例中,(一个或多个)公共数据中心向租户提供租户对其具有控制的一个或多个隔离的资源(即,数据计算节点)集合,也称为虚拟私有云(VPC)。对于一些云提供商,租户可以定义具有网络子网和路由表的虚拟网络,和/或将他们的DCN置于由公共云提供商定义的安全组中。
[0007]为了实现分层网络控制系统,一些实施例在每个VPC中的第一DCN(或者作为每个VPC中的主用

备用网关控制器的DCN集合)中实现第一级网络控制器(称为网关控制器)。在一些实施例中,这些网关DCN还操作网关数据路径,以便与相同数据中心的其它VPC或其它数据中心(或者私有数据中心或者另一个公共数据中心)中的逻辑网络通信,以及与外部网络通信。在每个工作负载DCN(即,执行工作负载应用的DCN,诸如web服务器、应用服务器、数
据库服务器等)内,受管理转发元件(MFE)被插入到DCN的工作负载应用和网络接口之间的数据路径中。此外,本地控制代理在每个工作负载DCN上执行,以配置它们各自的MFE。
[0008]在私有数据中心中(或在单独的VPC中)操作的中央控制平面集群基于规则的跨度将配置规则分发到在私有数据中心中的主机机器上操作的本地控制器(即,将需要基于规则的类型和规则适用的逻辑端口实现规则的MFE)。为了将这些规则分发给在公共数据中心VPC中操作的控制系统,中央控制器将与VPC中的DCN对应的所有逻辑端口视为连接到由网关控制器控制的MFE。由此,所有这些规则都由中央控制器推送到网关控制器。
[0009]然后,网关控制器进行其自己的单独跨度计算,以便识别VPC中需要从中央控制器接收的每个规则的MFE,并将这些规则分发给操作以控制MFE的本地控制代理。本地控制代理在接收到规则后,将规则转换为特定于在其DCN上操作的MFE的格式。例如,一些实施例使用基于流的MFE,诸如在公共数据中心VPC中的DCN上执行的Open vSwitch(OVS)实例,在这种情况下,本地控制代理将规则转换为OVS实例的流条目和/或其它配置数据。
[0010]在一些实施例中,网关控制器还负责管理其VPC内的覆盖隧道。因为中央控制器将整个VPC视为单个MFE,因此它仅为网关控制器节点(即,在网关DCN上配置的数据路径)配置隧道端点。但是,对于在VPC内的工作负载应用之间(以及工作负载应用和网关数据路径之间)的通信,中央控制器不配置覆盖。由此,网关控制器通过为每个MFE配置MAC到虚拟隧道端点(VTEP)IP绑定来建立这些DCN之间的隧道(例如,STT、GENEVE等隧道)。该信息还被传递到工作负载DCN上的各种本地控制代理,使得每个MFE都能够将分组隧道传输到同一VPC中的其它MFE。
[0011]如上所述,网关DCN包括网关控制器和数据路径。在一些实施例中,数据路径作为网关操作,以将其VPC中的工作负载连接到(i)连接到在其它VPC和其它数据中心中操作的逻辑网络的工作负载,以及(ii)外部网络。在一些实施例中,网关DCN包括三个网络接口:从外部网络接收分组和向外部网络发送分组(经由云提供商互联网网关)的上行链路接口,具有本地VPC子网上的地址的VTEP接口,以及专用于控制流量的控制接口。除了数据路径和网关控制器之外,一些实施例可以包括用于处理用于保护VPC内的MFE(在一些情况下,包括网关数据路径)的流量的加密密钥的分布式网络加密(DNE)管理器、用于处理VPC内的DHCP的DHCP模块,以及使得管理平面和网关控制器能够与公共云管理系统交互的公共云管理器(PCM)。
[0012]例如,PCM具有轮询公共云管理器以识别新的DCN(包括与DCN相关联的指示DCN将属于的逻辑交换机和/或安全组的标签)的能力。此外,一些实施例的PCM可以在接收到DCN已被破坏的通知后与公共云管理系统交互以隔离DCN。例如,如果黑客获得对执行MFE的DCN的访问,那么该黑客可以(i)卸载本地控制代理和/或MFE,(ii)创建不通过MFE发送流量的新接口,(iii)断开现有接口与MFE的连接,或(iv)通过断开MFE与本地控制代理的连接直接重新编程MFE。如果接口被编辑,或者控制代理与MFE断开连接,那么代理将检测到变化并向网关控制器通知该问题。如果代理本身被移除,那么网关控制器将检测到与代理的连接丢失并识别出DCN被破坏。在任一种情况下,网关控制器都向PCM通知受破坏的DCN。PCM具有与公共云管理系统交互以将受破坏的DCN置于隔离安全组中的能力,使得公共云转发元件(例如,在主机机器的管理程序中)可以阻止来自受破坏的DCN的流量。
[0013]分层网络控制系统使得能够实现从私有数据中心延伸到公共数据中心中的逻辑
网络。在不同的实施例中,可以跨数据中心以不同的方式实现不同的逻辑拓扑。例如,一些实施例将附接到给定逻辑交换机的DCN约束到私有数据中心中的单个VPC,或者同一数据中心内进行对等(peered)以便类似于单个VPC操作的多个VPC(虽然本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种方法,包括:在被配置为执行用于数据中心中的逻辑网络的第一网关转发元件的第一数据计算节点处:从由数据中心的管理员配置的第二转发元件接收数据分组,其中数据分组由第二转发元件从数据中心外的源接收,其中所述第二转发元件在将所述数据分组发送到所述第一数据计算节点在其上操作的主机计算机之前,对所述数据分组执行第一网络地址转换(NAT)操作;根据用于第一网关转发元件的逻辑网络配置,对数据分组执行第二NAT操作,其中不能访问数据中心的第二转发元件和其他管理员配置的转发元件的网络控制器将第一网关转发元件的配置分发给第一数据计算节点;和封装数据分组并将其发送到在数据中心中的第二数据计算节点上执行的第三转发元件,所述第三转发元件根据网络控制器分发的逻辑网络配置数据进行配置,其中第三转发元件对数据分组进行解封装,并将数据分组传送到在第二数据计算节点上执行的应用。2.根据权利要求1所述的方法,其中网络控制器通过向在第一数据计算节点上执行的控制器模块提供配置数据来配置第一网关转发元件,其中所述控制器模块根据提供的配置数据配置在第一数据计算节点上执行的网关转发元件。3.根据权利要求1所述的方法,其中所述第三转发元件被配置为基于由所述网络控制器分配给在所述第一数据计算节点上执行的控制器模块的配置数据来实现所述逻辑网络,其中在所述第一数据计算节点上执行的控制器模块将所述配置数据的子集分配给所述第二数据计算节点。4.根据权利要求1所述的方法,其中:当由第二转发元件接收时,数据分组具有公共第一网络地址作为其目的地地址;第一NAT操作将公共第一网络地址转换为与第一数据计算节点相关联的第二网络地址;和第二转发元件还封装数据分组以便传送到第一数据计算节点连接的第四转发元件。5.根据权利要求4所述的方法,其中第四转发元件(i)在第一数据计算节点在其上操作的主机计算机上操作,(ii)由数据中心的管理员配置,并且(iii)在将数据分组传送给第一数据计算节点的接口之前解封数据分组。6.根据权利要求4所述的方法,其中执行第二NAT操作包括将第二网络地址转换为与在第二数据计算节点上执行的应用相关联的第三网络地址。7.根据权利要求6所述的方法,其中:将数据分组发送到第三转发元件包括将封装的分组发送到第四转发元件;第四转发元件从第三转发元件接收封装的分组,再次封装所述分组,并将两次封装的分组发送到在第二数据计算节点在其上操作的主机计算机上操作的第五转发元件;和第五转发元件移除由第四转发元件添加的封装,并将封装的分组传送到第二数据计算节点。8.根据权利要求6所述的方法,还包括:从第三转发元件接收第二数据分组,第二数据分组具有外部源的网络地址作为其目的地地址并且具有第三网络地址作为其源地址;
对所述第二数据分组执行第三NAT操作以将所述第三网络地址转换为所述第二网络地址;和将所述第二数据分组发送到所述第二转发元件,其中所述第二转发元件对所述第二数据分组执行第四NAT操作以将所述第二网络地址转换为所述第一网络地址。9.根据权利要求6所述的方法,其中第二网络地址是由数据中心的管理员分配的专用网络地址,而第三网络地址是与逻辑网络的逻辑转发元件的逻辑端口相关联的专用网络地址。10.根据权利要求4所述的方法,其中多个网络地址与第一数据计算节点的同一接口相关联,所述方法还包括:从所述第二转发元件接收第二数据分组,其中由具有公共第四网络地址作为其目的地地址的第二转发元件从所述数据中心外部的第二源接收所述第二数据分组,其中所述第二转发元件对所述第二数据分组执行第三NAT操作以将所述公共第四网络地址转换为也与所述第一数据计算节点相关联的第五网络地址;对第二数据分组执行第四NAT操作;和封装所述第二数据分组并将其发送到在所述数据中心中的第三数据计算节点上执行的第五转发元件,所述第五转发元件根据由所述网络控制器分发的逻辑网络配置数据配置,其中所述第五转发元件对所述第二数据分组解封装,并将所述第二数据分组传送给在所述第三数据计算节点上执行的第二应用。11.根据权利要求1...

【专利技术属性】
技术研发人员:G
申请(专利权)人:NICIRA股份有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1