CN114365462B - 使用混合分布式逻辑路由器的云环境中的l3底层路由 - Google Patents

使用混合分布式逻辑路由器的云环境中的l3底层路由 Download PDF

Info

Publication number
CN114365462B
CN114365462B CN202080063211.3A CN202080063211A CN114365462B CN 114365462 B CN114365462 B CN 114365462B CN 202080063211 A CN202080063211 A CN 202080063211A CN 114365462 B CN114365462 B CN 114365462B
Authority
CN
China
Prior art keywords
host
routing table
vci
entry
router
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.)
Active
Application number
CN202080063211.3A
Other languages
English (en)
Other versions
CN114365462A (zh
Inventor
D·德维雷迪
A·帕马
S·C·马修
R·蒂瓦里
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Weirui LLC
Original Assignee
Weirui LLC
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Weirui LLC filed Critical Weirui LLC
Publication of CN114365462A publication Critical patent/CN114365462A/zh
Application granted granted Critical
Publication of CN114365462B publication Critical patent/CN114365462B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/54Organization of routing tables
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/02Topology update or discovery
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/02Topology update or discovery
    • H04L45/04Interdomain routing, e.g. hierarchical routing
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/58Association of routers
    • H04L45/586Association of routers of virtual routers
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/64Routing or path finding of packets in data switching networks using an overlay routing layer

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

本公开提供了一种用于在具有软件定义的网络和多个主机(每个主机具有多个虚拟机)的数据中心在云提供商网络上运行时克服云提供商网络的限制的方法。单主机感知路由器和多主机感知分布式路由器在每个主机中组合成混合路由器。混合路由器从数据中心的控制平面接收路由表,并基于VM的位置更新接收到的表,例如每个主机上的边缘VM和管理VA。每个主机中的代理还基于主机上的虚拟机的位置来更新云提供商网络中的路由器。因此,混合路由器为数据中心中主机上的虚拟机维护本地路由信息和全局路由信息。

Description

使用混合分布式逻辑路由器的云环境中的L3底层路由
相关申请
要求VMware公司于2019年9月19日提交的名称为“使用混合分布式逻辑路由器的云环境中的L3底层路由(L3 UNDERLAY ROUTING IN A CLOUD ENVIRONMENT USINGHYBRIDDISTRIBUTED LOGICAL ROUTER)”的美国专利申请号第16/575,638号的权益,该专利申请的全部内容以引用的方式并入本文用于所有目的。
背景技术
软件定义的联网(SDN)包括通过数据中心(例如,本地数据中心或云数据中心)的物理网络基础设施进行通信的多个主机,每个主机具有一个或更多个虚拟化端点,例如虚拟机(VM)、容器或其他虚拟计算实例(VCI)。这些VCI可以以与底层物理网络基础设施解耦的方式跨多个主机连接,底层物理网络基础设施通常是使用IP寻址的第3层(L3)网络。在一个示例中,VCI可以连接到逻辑覆盖网络,其可以跨越多个主机并且与底层物理网络基础设施解耦。
SDN涉及管理平面(MP)和控制平面(CP)的使用。管理平面负责接收来自例如管理员的网络配置输入,并生成指定逻辑网络应如何在物理基础设施中实现的期望状态数据。
控制平面负责确定逻辑覆盖网络拓扑并维护有关网络实体(诸如逻辑交换机、逻辑路由器、端点等)的信息。指定网络的期望状态的逻辑拓扑信息由控制平面转换成网络配置数据,然后将其传送到每个主机的网络元件。例如,网络配置数据包括转发表条目以填充由部署在每个主机上的管理程序(即,虚拟化软件)提供的一个或更多个虚拟交换机和/或一个或更多个虚拟路由器处的转发表。示例控制平面逻辑网络控制器在名称为“用于创建和修改逻辑交换元件的网络控制设备和方法(Network Control Apparatus and Methodfor Creating and Modifying Logical Switching Elements)”的美国专利9,525,647中进行了描述,该专利通过引用完全并入本文。
例如,数据中心中的任意一组VM可以通过将它们连接到逻辑交换机而跨第2逻辑层链路进行通信。每个逻辑交换机对应一个虚拟网络标识符(VNI)。逻辑交换机由每个主机上的至少一个虚拟交换机共同实现,每个主机都有一个连接到逻辑交换机的VM。每个主机上的虚拟交换机作为受管边缘交换机运行,其由每个主机上的管理程序以软件实现。虚拟交换机上的转发表指示主机封装数据包,使用虚拟隧道端点(VTEP)进行从参与VM到在逻辑网络上但在不同(目的地)主机上的另一个VM的通信。来自VM的原始数据包在VTEP处用外部IP报头进行封装,外部IP报头使用VM IP地址到主机IP地址的映射而寻址到目的地主机。在目的地主机处,第二VTEP对数据包进行解封装,然后将数据包定向到目的地VM。逻辑路由器使用逻辑域中的IP路由跨子网或其他网络边界而扩展逻辑网络。逻辑路由器由每个主机上的至少一个虚拟路由器共同实现,每个主机具有连接到逻辑路由器的VM或虚拟交换机。
上述SDN具有许多能力,其中之一是适应VM从一个主机到另一主机的移动的能力,其中VM可以是专用于管理工作负载的那些和专用于计算工作负载的那些。
然而,当如上所述将灵活的SDN引入公共云基础设施时,就会出现困难,因为虽然公共云提供商提供第3层(L3)连接,但其第2层(L2)功能受到限制。例如,一个云提供商仅允许公共云提供商网络的给定接口使用固定数量的L2地址,并且不为VM所连接的L2链路提供SDN内的L2地址的自学习。因此,当需要将VM从当前主机移动到不同的主机或当需要检查网络是否存在重复的功能VM时,云提供商网络没有适当的信息来将流量从一个VM路由到已被移动的VM。
尽管云提供商对L3和L2基础设施施加了限制,但仍希望保持SDN中将VM从一个主机移动到另一主机的灵活性。
附图说明
图1示出了可以在其中实现本公开的实施例的联网环境。
图2描绘了现有技术中数据中心中的各个主机、路由器和虚拟机的物理视图。
图3描绘了在一个实施例中数据中心中具有虚拟机和路由器的各个主机的物理视图,所述虚拟机包括边缘服务网关(ESG)虚拟机。
图4描绘了在一个实施例中L3数据包在主机H1中的源VM和主机H2中的目的地VM之间的示例路由。
图5描绘了在一个实施例中数据中心中具有ESG虚拟机的移动的各个主机的物理视图。
图6描绘了用于为每个主机配置路由表的操作流程。
图7描绘了在ESG虚拟机被移动之后为主机配置路由表的操作流程。
图8描绘了在一个实施例中在数据中心中具有管理虚拟机和路由器的各个主机的物理视图。
图9描绘了在一个实施例中数据中心中具有管理虚拟机的移动的各个主机的物理视图。
图10描绘了用于为主机配置路由表的操作流程,该路由表反映了各个管理虚拟机在被移动之后的物理位置。
具体实施方式
本文描述的第3层(L3)底层路由解决方案的一个实施例提供了一种管理数据中心中的路由表的方法,其中路由表为覆盖网络的逻辑路由器和数据中心所连接的底层网络中的一个或更多个路由器提供下一跳路由。数据中心包括多个主机,每个主机都支持多个虚拟计算实例,例如虚拟机或虚拟设备。在该方法中,控制平面从每个主机接收用于每个主机上的各个计算实例的位置的IP地址,并生成包括提供下一跳到底层网络路由器的条目的路由表。然后控制平面将生成的路由表传输到数据中心的所有主机。在接收到生成的路由表后,每个主机然后基于虚拟计算实例是否存在于主机上(即在主机本地)来决定是否覆盖条目。每个主机还更新底层路由器的路由表中的条目,使得底层路由器将虚拟计算实例目的地流量路由到包含虚拟计算实例的主机。
进一步的实施例包括被配置为执行上述方法的一个或更多个方面的计算机系统,以及非暂时性计算机可读存储介质,其包含可由一个或更多个计算机处理器执行以执行上述方法的一个或更多个方面的计算机可读代码。
图1描绘了已经配置有SDN解决方案的主机105的框图。主机105是数据中心102的一部分,数据中心102可以是本地数据中心或云数据中心。尽管未示出,但在一些示例中数据中心102包括使用网络146(诸如局域网(LAN))互连的其他主机。网络146用作数据中心102的具有底层路由器147的物理底层网络。数据中心102中的主机105可以是在同一机架上或在数据中心102中任意位置的不同机架上的地理上共同定位的服务器。
此外,数据中心102包括管理平面和控制平面。例如,如图所示,主机105中的管理平面包括SDN虚拟设备128,其包括SDN管理器131。控制平面包括SDN虚拟设备129,其包括SDN控制器132。管理平面与通过网络或API接口从管理员或其他实体接收网络配置输入并生成期望的状态数据有关,使得控制平面可以为数据中心102确定一个或更多个逻辑网络,包括拓扑。控制平面涉及确定逻辑覆盖网络拓扑和维护关于网络实体(例如逻辑交换机、逻辑路由器和端点等)的信息。从管理平面接收的逻辑拓扑信息由控制平面转换为网络配置数据,然后网络配置数据被传送到每个主机105的网络元件。例如,网络配置数据包括由部署在每个主机105上的管理程序提供的用于填充一个或更多个虚拟交换机处的转发表、一个或更多个虚拟路由器处的路由表等的转发表条目,以及用于接口(诸如VNIC和虚拟接口等)的配置信息(诸如第2层(MAC)地址)。管理平面和控制平面分别可以被实现为单个实体,或者可以实现为分布式或集群式应用程序或组件。例如,管理平面可以包括实现管理平面功能的多个计算设备或VCI,并且控制平面可以包括多个中央(或分布式)控制器计算机、VCI或实现控制平面功能的进程。
主机105被配置为提供虚拟化层,也称为管理程序116,其将硬件平台106的处理器、存储器、存储装置和联网资源抽象为多个虚拟机,例如VM 120。同一主机105上的VM可以同时运行。在一个示例中,VM 120a-n被称为执行工作负载(例如web(网络)应用程序等)的计算资源。
管理程序架构可以变化。在一些实施例中,虚拟化软件可以作为系统级软件直接安装在服务器硬件上(通常称为“裸机”安装),并且在概念上插入在物理硬件和在虚拟机中执行的客户操作系统之间。或者,虚拟化软件可以在服务器中的常规主机操作系统“的顶部上”概念地运行。在一些实现方式中,管理程序可以包括系统级软件以及“域0”或“根分区”虚拟机,其是能够访问主机的物理硬件资源的特权机器。尽管参考VM描述了本公开的部分,但本文的教导也适用于其他类型的VCI,例如容器、Docker容器、数据计算节点、隔离的用户空间实例、命名空间容器等。
主机105可以构建在服务器级硬件平台106上,例如x86架构平台。主机105的硬件平台106可以包括计算设备的组件,例如一个或更多个处理器(CPU)108、系统存储器110、物理网络接口控制器(PNIC)112、存储系统114、本地主机总线适配器(HBA)115,以及其他I/O设备,诸如,例如USB接口(未示出)。每个CPU 108被配置为执行指令,例如,执行本文描述的一个或更多个操作的指令,并且这些指令存储在系统存储器110和存储系统114中。PNIC112使主机105能够通过通信介质与其他设备通信,例如连接数据中心102和/或外部网络中的主机的网络146中的链路。
存储系统114代表本地永久存储设备(例如,一个或更多个硬盘、闪存模块、固态盘和/或光盘)。主机总线适配器(HBA)115将主机105耦合到一个或更多个外部存储网络(未示出),例如存储区域网络(SAN)或分布式虚拟SAN。可以使用的其他外部存储网络包括网络附加存储(NAS)和其他网络数据存储系统,它们可通过PNIC 112访问。系统存储器110是用于存储和检索信息的硬件,例如可执行指令、配置和其他数据。当CPU 108主动使用它们时,系统存储器110包含程序和数据。系统存储器110可以是易失性存储器或非易失性存储器。
如上所述,图1示出了处于说明主机105配置有SDN解决方案的状态的主机105。使用SDN解决方案配置主机105允许VM 120作为逻辑覆盖网络的一部分进行通信,这些逻辑覆盖网络是使用数据包封装技术(例如VXLAN)以将链路与底层物理网络基础设施解耦的逻辑网络,并且可以跨越位于数据中心102内或数据中心102之外的多个主机。使用SDN解决方案配置主机105涉及部署多个组件,例如SDN管理器131和SDN控制器132,以及未示出的其他组件。
SDN管理器131实现管理平面功能并且可以是在数据中心102中的各个主机上执行的多个SDN管理器之一,它们一起以分布式方式实现管理平面的功能。SDN控制器132实现控制平面功能并且可以是在数据中心102中的各个主机上执行的多个SDN控制器之一,它们一起以分布式方式实现控制平面的功能。在某些方面,SDN管理器和SDN控制器可以作为不同VM上的进程执行,如图1所示,并且在相同或不同的主机上。在一些实施例中,SDN管理器131和SDN控制器132都可以作为单个SDN虚拟设备(VA)中的进程执行,例如SDN VA 128,它是被配置为运行这样的组件的管理VA的示例。
管理VA可以不同于工作负载VM(例如,VM 120a-n)。工作负载VM 120a-n是SDN的数据平面的一部分并且被配置为通过逻辑覆盖网络传送数据。管理VA 128、129被配置为管理逻辑覆盖网络。因此,管理VA 128、129可以不是覆盖网络本身的一部分,因此发送到管理VA128、129或从管理VA 128、129接收的数据包不经受VXLAN封装。在某些方面,管理VA可以是一种类型的虚拟机(VM)。例如,虚拟设备可以是不属于覆盖网络本身的一部分的VM。
网关设备向主机105上的VM 120a-n和数据中心102中的其他组件提供与数据中心102外部的网络(未示出)的连接(例如,直接链路、局域网(LAN)、广域网(WAN)(例如Internet)、其他类型的网络或这些网络的组合)。例如,网关设备可以管理VM 120的外部公共IP地址,并将传入流量路由到数据中心102和从数据中心102传出流量。网关设备还可以提供其他联网服务,例如防火墙、网络地址转换(NAT)、动态主机配置协议(DHCP)和负载平衡。在图1的示例中,网关设备被实现为VCI(例如,VM),其被配置为在主机105上执行,其被示为边缘服务网关(ESG)VM 136。应当注意,ESG VM 136虽然被示出在与图1中的SDN管理器131和SDN控制器132相同的主机上,但可以在不同的主机上。
管理程序116包括虚拟路由器119、一个或更多个虚拟交换机118、隧道端点(TEP)121、路由器守护进程123和本地控制平面(LCP)122。
虚拟路由器119和虚拟交换机118是管理程序116中的模块,它们用作PNIC 112与主机105上可用的其他物理资源和包括SDN虚拟设备128、129、ESG VM 136、VM 120a-n和/或其他管理VA(未示出)的许多组件之间的基于软件的接口。在一些实施例中,虚拟路由器119和/或虚拟交换机118是分布式虚拟路由器和/或分布式虚拟交换机。作为分布式实体,多个主机上的分布式虚拟路由器/交换机的多个实例可以作为单个路由器或交换机进行配置和管理。每个实例可以连接到不同的PNIC 112。例如,在每个主机上实现的分布式虚拟路由器/交换机可以跨在其上配置分布式虚拟路由器/交换机的每个主机而共享相同的配置,并且共享状态。术语“虚拟交换机”在本文中用于指代非分布式虚拟交换机和分布式虚拟交换机二者及其实例。术语“虚拟路由器”在本文中用于指代非分布式虚拟路由器和分布式虚拟路由器二者及其实例。
在主机105上运行的每个VM,例如VM 120、ESG VM 136和SDN虚拟设备128、129,可以包括虚拟网络接口控制器(VNIC),例如VNIC 130a-130d,其负责通过管理程序116在VM120之间转发L2帧。VNIC 130a-d是PNIC类型设备的虚拟化。此外,每个VM连接到由虚拟交换机(诸如虚拟交换机118)提供的虚拟端口(vport)。例如,ESG VM 136、SDN虚拟设备128、VM120和SDN虚拟设备129连接到由虚拟交换机118提供的虚拟端口,尽管VM 120通常连接到单独的交换机(未示出)。
在某些方面,虚拟路由器119被配置为在主机105内执行L3路由。例如,虚拟路由器119可以被配置有路由表以基于在数据包中包括的目的地IP地址来路由数据包。例如,如果数据包的目的地IP地址对应于不在主机105上的目的地,则虚拟路由器119可以被配置为在PNIC 112耦合到的上行链路虚拟端口上路由数据包,从而将数据包发送出主机105并进一步在网络146中路由到其目的地。如果数据包的目的地IP地址对应于主机105上的目的地,则虚拟路由器119可以被配置为将数据包路由到与目的地IP地址相关联的虚拟端口。例如,虚拟路由器119可以耦合到一个或更多个虚拟交换机118(VM与其耦合)和/或通过虚拟路由器119的不同虚拟端口直接耦合到VM。虚拟路由器119可以相应地将网络层数据包路由到虚拟交换机118,虚拟交换机118包括具有对应于目的地IP地址的IP地址的VM,或直接路由到那个VM。
TEP 121是管理程序模块,其处理对到覆盖网络上的TEP的数据包的封装和解封装。例如,如所讨论的,虚拟交换机118处的转发表指示虚拟交换机118使用TEP 121封装数据包,用于从参与VM到在相同逻辑链路上但在不同(目的地)主机上的另一个VM的通信。
路由器守护进程123是负责更新虚拟路由器119的路由表的管理程序守护进程。
LCP 122是与数据中心102中的控制平面通信的代理。
图2描绘了现有技术中数据中心中的各个主机、路由器和虚拟机的物理视图。图中包括网络146、三个主机H1 105a(H1)、H2 105b、H3 105c,它们是图1中的主机105的实例,以及包括网络控制器的控制平面142。网络146可以由云提供商提供,例如公共云提供商,例如亚马逊网络服务。每个主机H1-H3 105a-c包括驻留在一个或更多个虚拟网络段上的一个或更多个VCI(例如VM),每个虚拟网络段由每个主机H1-H3 105a-c中的虚拟化软件提供。在该图中,VM 120a-b驻留在主机H1 105a中的子网202上,而虚拟设备(VA)128驻留在主机H1105a中的子网204上。VA 129驻留在主机H2 105b中的子网206上,ESG VM 136驻留在主机H2105b中的子网208上。VM 120c驻留在主机H3 105c中的子网210上,VM 120d驻留在主机H3105c中的子网212上。在IPv4范例中,子网的特征是“x.x.x.x/y”,其中前缀由值y控制。例如,如果y=24,则前缀是网络地址的前24位。在IPv6中实现了类似的无类域间路由(CIDR)机制。
图2还示出了上面描述的单个主机感知或主机本地虚拟分布式路由器(HLVDR)119和多个主机感知分布式逻辑路由器(DLR)214a-c(由每个DLR周围的虚线指示)。HLVDR 119通过该主机中的子网在主机内执行L3路由,而DLR 214a-c是L3逻辑路由器,其在主机H1-H3105a-c之间的逻辑覆盖中执行路由。在一个实施例中,控制平面142包含为主机H1-H3105a-c提供联网控制功能(包括配置DLR 214a-c)的容错控制器集群。
图3描绘了在一个实施例中数据中心中具有虚拟机和路由器的各个主机的物理视图。如图3所示,每个主机中的HLVDR 119和DLR 214a-c被组合成单个实体,称为混合逻辑路由器(HLR)302a、302b、302c。图3还示出了用于网络146的路由表RTU 308,每个主机H1-H3105a-c中的路由器守护进程123a-c和路由表RT1 304a、RT2 304b和RT3 304c,和控制平面142中的网络控制器中的路由表RTC 306。特别地,HLR 302a-c被配置为分别根据路由表RT1-RT3 304a-c路由数据包。此外,底层的路由器,例如底层路由器147,被配置为根据路由表RTU 308路由数据包。路由器守护进程123a-c、HLR 302a-c和路由表RT1-RT3 304a-c、RTC306、RTU 308的操作参考图4-8描述。
图4描绘了在一个实施例中L3数据包在主机H1中的源VM(诸如VA 128)和主机H2中的目的地VM(诸如VA 129)之间的示例路由。
图4中的步骤402-408假设路由表RT1 304a、RT2 304b和RTU 308已配置并且所有地址解析协议(ARP)学习已发生。
在步骤402中,主机H1 105a中的VA 128(H1.VA 128)是向主机H1105a上的HLR302a(H1.HLR 302a)发送L3数据包(其目的地是H2上的VA 129(H2.VA))的源。当H1.VA 128创建新的L3数据包,将L3数据包发送到H1上的VA 128的VNIC 130b(H1.VA.VNIC 130b),H1.VA.VNIC 130b将L3数据包发送到H1 105a上的VSWITCH 118(H1.VSWITCH 118),并且H1.VSWITCH 118将L3数据包发送到主机H1 105a上的HLR 302a(H1.HLR 302a)时,步骤402发生。
在步骤404中,H1.HLR 302a使用路由表RT1 304a通过主机H1 105a上的PNIC 112(H1.PNIC 112)将L3数据包转发到底层路由器(UL.Router)147。步骤404发生是因为根据RT1 304a,目的地IP地址不在主机H1 105a上。
在步骤406中,UL.Router 147使用路由表RTU 308将L3数据包转发到H2.HLR302b。当UL.Router 147通过底层链路从主机H1 105a接收到L3数据包,通过底层链路发送L3数据包到主机H2 105b,H2.PNIC接收L3数据包并通过H2.VSWITCH将其发送到H2.HLR302b时,步骤406发生。
在步骤408中,H2.HLR 302b使用RT2 304b将L3数据包转发到目的地H2.VA 129。当H2.HLR 302b将数据包发送到H2.VSWITCH,H2.VSWITCH将数据包转发到H2.VA.VNIC,并且H2.VA.VNIC将数据包转发到目的地H2.VA 129时,步骤408发生。
在一个实施例中,源VM和目的地VM在相同的VLAN上。在VLAN中,设备组被隔离到广播域中,其中VLAN被分配给IP子网并且所有主机都具有该子网的唯一IP地址。因此,子网204和子网206可以是同一VLAN的子网。
在另一示例中,源VM和目的地VM在相同的逻辑L2上(例如,耦合到相同的逻辑交换机)并且是逻辑覆盖网络的一部分。例如,VM 120a和VM 120c具有相同的VNI。为了在VM120a和VM 120b之间进行路由,需要使用TEP,其使用外部报头执行数据包封装和数据包解封装。外部报头包括外IP报头和外L2报头。外IP报头包括源TEP的IP地址和目的地TEP的IP地址。外L2报头基于使用常规L3查找协议对外IP报头进行路由查找。因此,封装的数据包在TEP之间通过网络146作为L2帧被路由,而网络146不知道L2帧的内部有效载荷。
图5描绘了在一个实施例中数据中心中的具有ESG VM 136的移动的各个主机的物理视图。如图所示,ESG VM 136从主机H2 105b移动到主机H3 105c,因此不仅驻留在不同主机上,而且驻留在主机H3 105c中的不同子网210上。因此,ESG VM 136的L2地址(MAC地址)现在与不同的子网相关联。如上所解释的,网络146不会自学到ESG VM 136的MAC地址现在与不同的子网相关联。
图6描绘了用于为每个主机配置路由表的操作流程600。在步骤602中,管理平面(例如,SDN管理器131)将ESG VM 136和任何虚拟设备128、129的IP地址通知控制平面142。
在步骤604中,控制平面(CP)142基于ESG VM 136和虚拟设备128、129的IP地址来生成路由表RTC 306。生成的路由表RTC 306用于配置与SDN中的逻辑路由器相关联的路由表,例如与HLR 302a-302c关联的路由表RT1-RT3 304a-304c。路由表RTC 306因此包括条目,每个条目将VCI(例如,VA或VM)的IP地址与作为路由中的下一跳的底层路由器147的IP地址相关联。在可以具有默认IP地址的ESG VM 136的情况下,默认IP地址与作为下一跳的底层路由器147的IP地址相关联。在每个在主机内具有IP地址的VA的情况下,主机内的VA的IP地址与作为下一跳的底层路由器147的IP地址相关联。因此,路由表RTC 306通常将所有VCI路由到底层路由器147的IP地址。
在步骤606中,CP 142根据在步骤604中生成的路由表RTC 306为具有路由表RT1-RT3 304a-c的每个主机H1-H3 105a-c配置HLR 302a-c。
在步骤608中,每个主机H1-H3 105a-c的路由器守护进程123a-c基于是该主机本地的任何VCI的IP地址来重新配置其对应HLR 302a-c的对应路由表RT1-RT3 304a-304c。因此,在配置之后,每个路由表RT1-RT3304a-c具有被修改的条目以指示驻留在主机上的VCI的IP地址将被本地路由(即,不离开主机)。每个路由表RT1 304a、RT2 304b、RT3 304c中的不是主机本地的VCI的条目没有改变,并且仍然将VCI的IP地址与底层路由器147的IP地址相关联。因此,如果VCI是在主机本地的ESG VM,那么该主机的路由器守护进程修改其路由表以指示ESG VM是本地的。如果VCI是管理虚拟设备,则该主机的路由器守护进程会修改其路由表以指示管理虚拟设备是主机本地的。
在步骤610中,每个主机中的路由器守护进程123a-c配置网络146中的底层路由器147中的路由表RTU 308。在配置之后,底层路由器147将每个VCI的本地IP地址与作为路由中的下一跳的VCI所在的主机的IP地址相关联。在VCI是ESG VM并且ESG VM具有默认IP地址的情况下,具有ESG VM的主机105a-c的路由器守护进程123a-c修改底层路由器147的路由表RTU 308以将默认IP地址与ESG VM所在的主机的IP地址相关联。在VCI是管理设备的情况下,路由器守护进程123a-c修改底层路由器147的路由表RTU 308以将VCI的IP地址与作为下一跳的VCI所在的主机相关联。因此,底层路由表RTU 308将VCI的IP地址与它们所在的主机相关联。
步骤602-610的结果是路由表RTU 308和路由表RT1 304a、RT2 304b、RT3 304c的组合给特定主机上的每个VCI提供正确路由。在配置之后,RTU 308提供VCI所在的主机,并且如果VCI是主机本地的,则每个主机中的路由表RT1 304a、RT2 304b、RT3 304c提供到VCI的本地路由,如果VCI不是主机本地的,则提供到底层路由器147的本地路由。
为了说明VCI的特定配置的路由表的状态,在图6的操作之后,假设主机H1 105a、主机H2 105b和主机H3 105c的网络接口在底层网络146中分别驻留在网络IP地址192.168.1.1、192.168.1.2和192.168.1.3,并且底层路由器147的网络IP地址在192.168.1.10。此外,假设ESG VM 136的IP地址是它所在的主机H2 105b中的10.10.1.1。
表1示出了路由表RTC 306。该表指示默认IP地址0.0.0.0/0下一跳是到在IP地址192.168.1.10的网络146中的底层路由器147,并且允许本地覆盖下一跳,例如通过主机H1105a、主机H2 105b、主机H3 105c中的路由器守护进程123a-c。
表2示出了路由表RTU 308。该表指示默认IP地址0.0.0.0/0被路由到192.168.1.2,其是ESG VM 136所在的主机H2 105b的IP地址。因此,具有默认IP地址的所有目的地都被路由到主机H2 105b。
表3示出了路由表RT1 304a和RT3 304c。RT1 304a和RT3 304c指示IP地址0.0.0.0/0(默认地址,用于路由到ESG VM 136)应路由到192.168.1.10,它是网络146中的底层路由器147。因此,对于主机H1 105a和主机H2 105b,具有默认IP地址的所有目的地都被路由到底层路由器147,因为具有默认IP地址的VCI不存在于主机H1 105a和主机H3 105c上。
表4示出了路由表RT2 304b并且指示ESG VM 136位于主机H2 105b中的子网208上。特别地,如关于步骤608所讨论的,由于ESG VM 136驻留在主机H2 105b上,因此路由器守护进程123b将RT2 304b中的ESG VM 136的默认路由覆盖为ESG VM 136的IP地址,即10.10.1.1。
因此,路由表RTU 308和RT1 304a、RT2 304b和RT3 304c的组合导致具有默认IP地址的目的地的路由被路由到主机H2 105b。路由表RTU 308将具有默认IP地址的目的地路由到主机H2 105b。路由表RT1 304a将具有默认IP地址的目的地路由到底层路由器147,因为默认地址不在主机H1 105a上。路由表RT3 304c将具有默认IP地址的目的地路由到底层路由器147,因为默认IP地址不在主机H3 105c上。路由表RT2 304b将具有默认IP地址的目的地路由到主机H2 105b上的ESG VM 136,因为ESG VM 136在主机H2 105b上。
图7描绘了在ESG VM 136从H2 105b移动到H3 105c之后为每个主机配置路由表的操作流程。步骤702引起图6的步骤发生,以便控制平面被通知该变化并将更新的路由表传输到RT1-RT3 304a-c和RTU 308。在步骤704中,主机H3 105c的路由器守护进程123c检测到ESG VM 136存在于主机H3 105c的子网210上。在步骤704,主机H3 105c的路由器守护进程123c更新对应的路由表RT3 304c以反映ESG VM 136在子网210上主机H3 105c的本地,用ESG VM 136的IP地址10.10.1.1覆盖默认路由条目下一跳192.168.1.10。在步骤706中,主机H2 105b的路由器守护进程123b检测到ESG VM 136的移除并且用192.168.1.10的默认路由下一跳更新对应的路由表RT2 304b。在步骤708中,每个主机H1-H3 105a-c中的路由器守护进程123a-c更新路由表RTU 308中的条目。
表5、6和7分别示出了在ESG VM 136被移动之后的路由表RT2 304b、RTU 308和RT3304c。对应于在步骤706中被路由器守护进程123b修改了的路由表RT2 304b的表5,现在指示到ESG VM 136的默认路由是到网络146中的底层路由器147。对应于在步骤708中被路由器守护进程123b修改了的路由表RTU 308的表6,指示到ESG VM 136的路由是到主机H3105c。因此,RT2 304b和RTU 308现在组合以将ESG VM 136目的地流量发送到主机H3105c。对应于在步骤704中被路由器守护进程123c修改了的路由表RT3 304c的表7,现在指示其目的地为ESG VM 136的流量被本地路由到ESG VM 136的IP接口。路由表RT1 304a未更改。
图8描绘了在一个实施例中在数据中心中具有管理虚拟机和路由器的各个主机的物理视图。在该图中,主机H1 105a包括位于IP 10.10.1.5的子网204上的VA 128(例如,网络管理器VM)。主机H2 105b包括在10.10.1.6的子网206上的VA 129。由于图6中的步骤,管理平面被通知主机H1 105a、主机H2 105b和主机H3 105c中的VA 128、129的当前IP地址。因此,控制平面生成的路由表RTC 306如表8中所示。
表9示出了路由表RTU 308。
因此,RTU 308指示VA 128位于主机H1 105a中;并且VA 129位于主机H2 105b中。
表10示出了路由表RT1 304a。RT1 304a指示VA 128对于主机H1105a是本地的。
表11示出了路由表RT2 304b。该表指示VA 129对于主机H2 105b是本地的。
表12示出了路由表RT3 304c,其指示VA 128和VA 129经由网络146是可访问的。
因此,表8-12中描绘的路由表指示了在图6中描绘的操作流程之后的管理设备的位置,以便路由表反映管理设备的当前位置。
图9描绘了VA从主机H1 105a到主机H2 105b的移动。在图8中,VA 128驻留在主机H1 105a中的子网204上,但已被移动到主机H2 105b上的子网206。
图10描绘了用于为主机配置路由表的操作流程,该路由表反映了在各个管理虚拟机被移动之后的物理位置,如图9中所描绘的。步骤1002触发图6的操作,其然后生成新的RTC 306并将新的RTC 306发送到HLR 302a-c。在步骤1004,路由器守护进程123b检测到VA128在主机H2 105b中的存在并更新路由表RT2 304b以指示指定VA 128的目的地将被本地路由。在步骤1006中,路由器守护进程123a检测到主机H1 105a中的VA 128的移除并且更新路由表RT1 304a以指示指定VA 128的目的地将被路由到底层。在步骤1008,路由器守护进程123b更新RTU 308中的条目以指示指定VA 128的目的地将被路由到主机H2 105b。
表13示出了在移动VA 129之后和在图6的操作之后的路由表RTC 306的状态。
表14示出了路由表RT1 304a,在移动之后它在步骤1006中被路由器守护进程123a修改。该表指示VA 128和VA 129的目的地地址被路由到底层路由器147,因为VA 128和VA129对于主机H1 105a不是本地的。
表15示出了路由表RT2 304b,在移动之后在步骤1004中它被路由器守护进程123b修改。该表指示VA 128和VA 129对于主机H2 105b都是本地的。
表16示出了路由表RT3 304c。该表指示VA 128和VA 129的目的地地址被路由到底层路由器147。如图所示,没有对RT3 304c进行更新。
表17示出了网络146中的底层路由器147的路由表。该表指示VA 128和VA 129的目的地地址被路由到主机H2 105b。
因此,表14-17中描述的路由表示出了VA 128被移动后的结果。路由表RT2 304b和路由表RTU 308组合以将具有VA 128的IP地址的目的地路由到主机H2 105b。路由表RT1304a、RT3 304c和RTU 308组合以将具有VA 128的IP地址的目的地路由到底层路由器147,底层路由器147又将这些目的地路由到VA 128现在所在的主机H2 105b。
因此,本文描述的各方面提供了对与在由云提供商提供的网络上实现的数据中心中的主机之间移动VCI相关的技术问题的技术解决方案。更具体地,实现本文的各方面允许VCI在数据中心中的主机之间自由移动,即使云提供商的网络不跟踪各个主机上的VCI的第2层地址。
应当理解,对于本文所述的任何过程,在与本文的教导一致的各个实施例的范围内,可以有以类似或替代顺序或并行执行的额外或更少步骤,除非另有说明。
本文描述的各个实施例可以采用涉及存储在计算机系统中的数据的各种计算机实现的操作。例如,这些操作可能需要对物理量进行物理操纵——通常,但不一定,这些量可以采用电信号或磁信号的形式,它们或它们的表示能够被存储、传输、组合、比较或以其他方式被操纵。此外,此类操纵通常以诸如产生、识别、确定或比较之类的术语来指代。本文描述的形成本发明的一个或更多个实施例的一部分的任何操作可以是有用的机器操作。此外,本发明的一个或更多个实施例还涉及用于执行这些操作的设备或装置。该装置可以为特定的需要目的而专门构造,或者它可以是由存储在计算机中的计算机程序选择性地激活或配置的通用计算机。特别地,各种通用机器可以与根据本文的教导编写的计算机程序一起使用,或者它对于构建更专业的设备来执行所需的操作可能更方便。
本文描述的各种实施例可以用其他计算机系统配置来实践,包括手持设备、微处理器系统、基于微处理器的或可编程的消费电子产品、小型计算机、大型计算机等。
本发明的一个或更多个实施例可以实现为一个或更多个计算机程序,或者实现为被包含在一个或更多个计算机可读介质中的一个或更多个计算机程序模块。术语计算机可读介质是指可以存储随后可以输入到计算机系统的数据的任何数据存储设备——计算机可读介质可以基于任何现有的或随后开发的技术用于以使计算机程序能够被计算机读取的方式体现计算机程序。计算机可读介质的示例包括硬盘驱动器、网络附加存储(NAS)、只读存储器、随机存取存储器(例如,闪存设备)、CD(光盘)CD-ROM、CD-R或CD-RW、DVD(数字多功能光盘)、磁带和其他光学和非光学数据存储设备。计算机可读介质还可以分布在网络耦合的计算机系统上,使得计算机可读代码以分布式方式存储和执行。
尽管为了理解清楚而详细描述了本发明的一个或更多个实施例,但显然可以在权利要求的范围内进行某些改变和修改。因此,所描述的实施例被认为是说明性的而不是限制性的,并且权利要求的范围不限于本文给出的细节,而是可以在权利要求的范围和等同物内进行修改。在权利要求中,元件和/或步骤不暗示任何特定的操作顺序,除非在权利要求中明确说明。
根据各种实施例的虚拟化系统可以被实现为托管实施例、非托管实施例或倾向于模糊两者之间的区别的实施例,都是可以预见的。此外,各种虚拟化操作可以全部或部分在硬件中实现。例如,硬件实现可以使用查找表来修改存储访问请求以保护非磁盘数据。
如上所述的某些实施例涉及主机计算机顶部的硬件抽象层。硬件抽象层允许多个环境共享硬件资源。在一个实施例中,这些环境彼此隔离,每个环境至少有一个用户应用程序在其中运行。因此,硬件抽象层提供了环境之间的资源隔离和分配的好处。在上述实施例中,以虚拟机作为环境的示例,以管理程序作为硬件抽象层的示例。如上所述,每个虚拟机包括客户操作系统,在该客户操作系统中运行至少一个应用程序。应当注意,这些实施例还可以应用于环境的其他示例,例如不包括客户操作系统的容器,在本文中称为“无操作系统(OS-less)容器”(例如,参见www.docker.com)。无操作系统容器实现操作系统级别的虚拟化,其中在主机上的操作系统内核之上提供了一个抽象层。抽象层支持多个无操作系统容器,每个容器都包含一个应用程序及其依赖项。每个无操作系统容器在主机操作系统的用户空间中作为一个独立的进程运行,并与其他容器共享内核。无操作系统容器依靠内核的功能来利用资源隔离(CPU、内存、块I/O、网络等)和单独的命名空间,并完全隔离应用程序对操作环境的视图。通过使用无操作系统容器,可以隔离资源,限制服务,并提供进程以拥有操作系统的私有视图,并具有自己的进程ID空间、文件系统结构和网络接口。多个容器可以共享同一个内核,但每个容器可以被限制为只能使用定义数量的资源,例如CPU、内存和I/O。本文使用的术语“虚拟化计算实例”旨在涵盖VM和无操作系统容器两者。
无论虚拟化程度如何,许多变化、修改、添加和改进都是可能的。因此,虚拟化软件可以包括执行虚拟化功能的主机、控制台或客户操作系统的组件。可以为本文描述的组件、操作或结构提供多个实例作为单个实例。各种组件、操作和数据存储之间的边界在某种程度上是任意的,并且在特定说明性配置的上下文中说明了特定操作。可以设想其他功能分配并且可以落入本发明的范围内。通常,在示例性配置中呈现为单独组件的结构和功能可以实现为组合的结构或组件。类似地,作为单个组件呈现的结构和功能可以实现为单独的组件。这些和其他变化、修改、添加和改进可能落入所附权利要求的范围内。

Claims (20)

1.一种在数据中心中为覆盖网络的虚拟路由器和底层网络的底层网络路由器管理路由表的方法,所述数据中心包括多个主机,所述多个主机中的每一个主机包括一个或更多个虚拟计算实例(VCI)和虚拟路由器,所述多个主机耦合到所述底层网络,每个VCI和所述多个主机中的每一个主机具有对应的IP地址,所述方法包括:
生成路由表,所述路由表包括至少一个条目,所述至少一个条目包括将与第一主机上的第一VCI对应的第一路由与指示所述底层网络路由器的IP地址的第一下一跳相关联的第一条目;以及
将生成的路由表发送到所述多个主机中的每一个主机,
其中所述多个主机中的每一个主机都接受所述生成的路由表作为其对应的虚拟路由器的路由表,
其中所述第一主机更新其对应的虚拟路由器的路由表中的所述第一条目,以更新所述第一下一跳以指示所述第一VCI对于所述第一主机是本地的,并且
其中所述第一主机用将所述第一路由与指示所述第一主机的IP地址的下一跳相关联的条目来更新所述底层网络路由器的路由表。
2.如权利要求1所述的方法,其中所述生成的路由表在所述第一条目中包括允许主机覆盖其对应的路由表中的所述第一条目的字段。
3.如权利要求1所述的方法,其中所述生成的路由表是基于从每个主机接收的VCI的IP地址生成的,所述VCI对于每个主机是本地的。
4.如权利要求1所述的方法,其中在所述第一主机更新所述第一条目之后:
所述第一VCI从所述第一主机移动到第二主机;
所述第一主机基于所述生成的路由表更新其对应的虚拟路由器的所述路由表中的所述第一条目,以更新所述第一下一跳以指示所述底层网络路由器的所述IP地址;
所述第二主机更新其对应的虚拟路由器的生成的路由表中的所述第一条目,以更新所述第一下一跳以指示所述第一VCI对于所述第二主机是本地的;以及
所述第二主机用将所述第一路由与指示所述第二主机的IP地址的下一跳相关联的条目来更新所述底层网络路由器的路由表。
5.如权利要求1所述的方法,其中所述第一路由指示所述第一VCI的IP地址,并且其中,所述第一VCI是被配置为管理所述覆盖网络的VCI。
6.如权利要求1所述的方法,其中所述第一路由指示默认路由,并且其中,所述第一VCI是边缘服务网关。
7.如权利要求6所述的方法,其中所述第一主机的所述对应的虚拟路由器的所述路由表中的所述第一条目用所述第一下一跳更新,以指示所述第一VCI的所述IP地址。
8.一种数据中心,包括:
包括底层路由器的底层网络;
耦合到所述底层网络的多个主机,每个主机具有一个或更多个CPU和耦合到所述一个或更多个CPU的RAM,每个主机包括一个或更多个虚拟计算实例(VCI)和加载在所述RAM中并由所述一个或更多个CPU运行的虚拟路由器,所述虚拟路由器在覆盖网络中进行路由,每个VCI和所述多个主机中的每一个主机具有对应的IP地址;
控制平面中的控制器,其中所述控制器被配置为:
生成路由表,所述路由表包括至少一个条目,所述至少一个条目包括将与第一主机上的第一VCI对应的第一路由与指示所述底层网络路由器的IP地址的第一下一跳相关联的第一条目;以及
将生成的路由表发送到所述多个主机中的每一个主机,
其中所述多个主机中的每一个主机都接受所述生成的路由表作为其对应的虚拟路由器的路由表,
其中所述第一主机更新其对应的虚拟路由器的路由表中的所述第一条目,以更新所述第一下一跳以指示所述第一VCI对于所述第一主机是本地的,并且
其中所述第一主机用将所述第一路由与指示所述第一主机的IP地址的下一跳相关联的条目来更新所述底层网络路由器的路由表。
9.如权利要求8所述的数据中心,其中所述生成的路由表在所述第一条目中包括允许主机覆盖其对应的路由表中的所述第一条目的字段。
10.如权利要求8所述的数据中心,其中所述生成的路由表是基于从每个主机接收的VCI的IP地址生成的,所述VCI对于每个主机是本地的。
11.如权利要求8所述的数据中心,其中在所述第一主机更新所述第一条目之后:
所述第一VCI从所述第一主机移动到第二主机;
所述第一主机基于所述生成的路由表更新其对应的虚拟路由器的生成的路由表中的所述第一条目,以更新所述第一下一跳以指示所述底层网络路由器的所述IP地址;
所述第二主机更新其对应的虚拟路由器的生成的路由表中的所述第一条目,以更新所述第一下一跳以指示所述第一VCI对于所述第二主机是本地的;以及
所述第二主机用将所述第一路由与指示所述第二主机的IP地址的下一跳相关联的条目来更新所述底层网络路由器的路由表。
12.如权利要求8所述的数据中心,
其中所述第一路由指示所述第一VCI的IP地址,并且
其中所述第一VCI是被配置为管理所述覆盖网络的VCI。
13.如权利要求8所述的数据中心,
其中所述第一路由指示默认路由,并且
其中所述第一VCI是边缘服务网关。
14.如权利要求8所述的数据中心,其中所述第一主机的所述对应的虚拟路由器的路由表中的所述第一条目用所述第一下一跳更新,以指示所述第一VCI的所述IP地址。
15.一种非暂时性计算机可读介质,其包括在计算机系统中可执行的指令,其中当所述指令在所述计算机系统中执行时,使所述计算机系统执行在数据中心中为覆盖网络的虚拟路由器和底层网络的底层网络路由器管理路由表的方法,所述方法包括:
生成路由表,所述路由表包括至少一个条目,所述至少一个条目包括将与第一主机上的第一VCI对应的第一路由与指示所述底层网络路由器的IP地址的第一下一跳相关联的第一条目;以及
将生成的路由表发送到多个主机中的每一个主机,
其中所述多个主机中的每一个主机都接受所述生成的路由表作为其对应的虚拟路由器的路由表,
其中所述第一主机更新其对应的虚拟路由器的所述路由表中的所述第一条目,以更新所述第一下一跳以指示所述第一VCI对于所述第一主机是本地的,并且
其中所述第一主机用将所述第一路由与指示所述第一主机的IP地址的下一跳相关联的条目来更新所述底层网络路由器的路由表。
16.如权利要求15所述的非暂时性计算机可读介质,其中所述生成的路由表在所述第一条目中包括允许主机覆盖其对应的路由表中的所述第一条目的字段。
17.如权利要求15所述的非暂时性计算机可读介质,其中在所述第一主机更新所述第一条目之后:
所述第一VCI从所述第一主机移动到第二主机;
所述第一主机基于所述生成的路由表更新其对应的虚拟路由器的所述生成的路由表中的所述第一条目,以更新所述第一下一跳以指示所述底层网络路由器的所述IP地址;
所述第二主机更新其对应的虚拟路由器的所述路由表中的所述第一条目,以更新所述第一下一跳以指示所述第一VCI对于所述第二主机是本地的;以及
所述第二主机用将所述第一路由与指示所述第二主机的IP地址的下一跳相关联的条目来更新所述底层网络路由器的路由表。
18.如权利要求15所述的非暂时性计算机可读介质,
其中所述第一路由指示所述第一VCI的IP地址,并且
其中所述第一VCI是被配置为管理所述覆盖网络的VCI。
19.如权利要求15所述的非暂时性计算机可读介质,
其中所述第一路由指示默认路由,并且
其中所述第一VCI是边缘服务网关。
20.如权利要求15所述的非暂时性计算机可读介质,其中所述第一主机的对应的虚拟路由器的所述路由表中的所述第一条目用所述第一下一跳更新,以指示所述第一VCI的所述IP地址。
CN202080063211.3A 2019-09-19 2020-09-17 使用混合分布式逻辑路由器的云环境中的l3底层路由 Active CN114365462B (zh)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US16/575,638 US11095557B2 (en) 2019-09-19 2019-09-19 L3 underlay routing in a cloud environment using hybrid distributed logical router
US16/575,638 2019-09-19
PCT/US2020/051320 WO2021055634A1 (en) 2019-09-19 2020-09-17 L3 underlay routing in a cloud environment using hybrid distributed logical router

Publications (2)

Publication Number Publication Date
CN114365462A CN114365462A (zh) 2022-04-15
CN114365462B true CN114365462B (zh) 2024-05-14

Family

ID=72670846

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202080063211.3A Active CN114365462B (zh) 2019-09-19 2020-09-17 使用混合分布式逻辑路由器的云环境中的l3底层路由

Country Status (4)

Country Link
US (1) US11095557B2 (zh)
EP (1) EP3984181B1 (zh)
CN (1) CN114365462B (zh)
WO (1) WO2021055634A1 (zh)

Families Citing this family (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111865801B (zh) * 2019-04-24 2021-10-22 厦门网宿有限公司 一种基于Virtio端口传输数据的方法和系统
US11689455B2 (en) 2020-05-28 2023-06-27 Oracle International Corporation Loop prevention in virtual layer 2 networks
US11178041B1 (en) * 2020-07-07 2021-11-16 Juniper Networks, Inc. Service chaining with physical network functions and virtualized network functions
JP2023535149A (ja) * 2020-07-14 2023-08-16 オラクル・インターナショナル・コーポレイション Vlanスイッチングおよびルーティングサービスのためのシステムおよび方法
US11765037B2 (en) * 2020-08-19 2023-09-19 Hewlett Packard Enterprise Development Lp Method and system for facilitating high availability in a multi-fabric system
US11909636B2 (en) 2020-12-30 2024-02-20 Oracle International Corporation Layer-2 networking using access control lists in a virtualized cloud environment
US20220224638A1 (en) * 2021-01-08 2022-07-14 Hewlett Packard Enterprise Development Lp Preventing generation of duplicate network routes in a software defined wide area network
US11671355B2 (en) 2021-02-05 2023-06-06 Oracle International Corporation Packet flow control in a header of a packet
US11777897B2 (en) 2021-02-13 2023-10-03 Oracle International Corporation Cloud infrastructure resources for connecting a service provider private network to a customer private network
CN113364691B (zh) * 2021-05-31 2022-11-29 广州趣丸网络科技有限公司 一种数据交互系统、方法、设备和存储介质
US11570097B1 (en) * 2021-07-22 2023-01-31 Vmware, Inc> Overlay broadcast network for management traffic
CN113839876B (zh) * 2021-10-28 2023-05-02 上海云轴信息科技有限公司 一种内部网络的传输路径优化方法及设备
US20230344744A1 (en) * 2022-04-21 2023-10-26 Vmware, Inc. Mitigating oversubscription of traffic to edge nodes in a data center
US20240039813A1 (en) * 2022-07-27 2024-02-01 Vmware, Inc. Health analytics for easier health monitoring of a network

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102577270A (zh) * 2009-09-30 2012-07-11 阿尔卡特朗讯公司 用于云拓扑中企业扩展的可伸缩架构
CN106797351A (zh) * 2014-07-21 2017-05-31 大交换机网络股份有限公司 使用控制器执行逻辑网络转发的系统和方法
CN107534578A (zh) * 2015-04-04 2018-01-02 Nicira股份有限公司 用于逻辑网络与物理网络之间的动态路由的路由服务器模式
CN109863720A (zh) * 2016-08-27 2019-06-07 Nicira股份有限公司 网络控制系统到公共云中的扩展

Family Cites Families (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8170123B1 (en) * 2008-04-15 2012-05-01 Desktone, Inc. Media acceleration for virtual computing services
US9525647B2 (en) 2010-07-06 2016-12-20 Nicira, Inc. Network control apparatus and method for creating and modifying logical switching elements
US20140006585A1 (en) * 2012-06-29 2014-01-02 Futurewei Technologies, Inc. Providing Mobility in Overlay Networks
US9397946B1 (en) 2013-11-05 2016-07-19 Cisco Technology, Inc. Forwarding to clusters of service nodes
US10419340B2 (en) 2016-08-29 2019-09-17 Vmware, Inc. Stateful connection optimization over stretched networks using specific prefix routes
US10911397B2 (en) * 2017-07-31 2021-02-02 Nicira, Inc. Agent for implementing layer 2 communication on layer 3 underlay network
US11070470B2 (en) * 2019-01-22 2021-07-20 Vmware, Inc. Host router in a virtual computing instance

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102577270A (zh) * 2009-09-30 2012-07-11 阿尔卡特朗讯公司 用于云拓扑中企业扩展的可伸缩架构
CN106797351A (zh) * 2014-07-21 2017-05-31 大交换机网络股份有限公司 使用控制器执行逻辑网络转发的系统和方法
CN107534578A (zh) * 2015-04-04 2018-01-02 Nicira股份有限公司 用于逻辑网络与物理网络之间的动态路由的路由服务器模式
CN109863720A (zh) * 2016-08-27 2019-06-07 Nicira股份有限公司 网络控制系统到公共云中的扩展

Also Published As

Publication number Publication date
EP3984181B1 (en) 2023-12-13
US20210092057A1 (en) 2021-03-25
EP3984181A1 (en) 2022-04-20
CN114365462A (zh) 2022-04-15
WO2021055634A1 (en) 2021-03-25
US11095557B2 (en) 2021-08-17

Similar Documents

Publication Publication Date Title
CN114365462B (zh) 使用混合分布式逻辑路由器的云环境中的l3底层路由
EP2982097B1 (en) Method and apparatus for exchanging ip packets among network layer 2 peers
US11070470B2 (en) Host router in a virtual computing instance
US10715419B1 (en) Software defined networking between virtualized entities of a data center and external entities
US11258729B2 (en) Deploying a software defined networking (SDN) solution on a host using a single active uplink
US10367733B2 (en) Identifier-based virtual networking
US20200036675A1 (en) Migration of virtual machine located on its own network
US11509581B2 (en) Flow-based local egress in a multisite datacenter
US11671358B2 (en) Disambiguating traffic in networking environments with multiple virtual routing and forwarding (VRF) logical routers
US11533259B2 (en) Building a platform to scale control and data plane for virtual network functions
US11005745B2 (en) Network configuration failure diagnosis in software-defined networking (SDN) environments
US11394647B1 (en) Seamless hand-off of data traffic in public cloud environments with reverse path filtering
US11516125B2 (en) Handling packets travelling towards logical service routers (SRs) for active-active stateful service insertion
US11936721B2 (en) Seamless hand-off of data traffic in public cloud environments
US10999196B2 (en) Global replication mode for overlay runtime state migration
US10938632B2 (en) Query failure diagnosis in software-defined networking (SDN) environments
US11570097B1 (en) Overlay broadcast network for management traffic
US20220353180A1 (en) Inter-tunneling endpoint (inter-tep) overlay forwarding
US11722336B2 (en) Selection of tunneling protocol

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
CB02 Change of applicant information
CB02 Change of applicant information

Country or region after: U.S.A.

Address after: California, USA

Applicant after: Weirui LLC

Address before: California, USA

Applicant before: VMWARE, Inc.

Country or region before: U.S.A.

GR01 Patent grant
GR01 Patent grant