CN107534578B - 用于配置逻辑路由器的介质、设备、系统和方法 - Google Patents

用于配置逻辑路由器的介质、设备、系统和方法 Download PDF

Info

Publication number
CN107534578B
CN107534578B CN201680017516.4A CN201680017516A CN107534578B CN 107534578 B CN107534578 B CN 107534578B CN 201680017516 A CN201680017516 A CN 201680017516A CN 107534578 B CN107534578 B CN 107534578B
Authority
CN
China
Prior art keywords
routing
logical
machine
router
control plane
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
CN201680017516.4A
Other languages
English (en)
Other versions
CN107534578A (zh
Inventor
S·拉文努塔拉
张荣华
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.)
Nicira Inc
Original Assignee
Nicira Inc
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 Nicira Inc filed Critical Nicira Inc
Priority to CN202011020064.XA priority Critical patent/CN112152922B/zh
Publication of CN107534578A publication Critical patent/CN107534578A/zh
Application granted granted Critical
Publication of CN107534578B publication Critical patent/CN107534578B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

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/64Routing or path finding of packets in data switching networks using an overlay routing layer
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/42Centralised 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/28Routing or path finding of packets in data switching networks using route fault recovery
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L49/00Packet switching elements
    • H04L49/35Switches specially adapted for specific applications
    • H04L49/354Switches specially adapted for specific applications for supporting virtual local area networks [VLAN]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L49/00Packet switching elements
    • H04L49/70Virtual switches

Landscapes

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

Abstract

一些实施例提供了用于配置与外部网络对接的逻辑路由器的方法。该方法接收到逻辑网络的配置,该逻辑网络包括具有连接至逻辑网络外部的至少一个物理路由器的多个接口的逻辑路由器。该方法选择单独的主机机器来为接口中的每个接口托管集中式路由部件。该方法选择主机机器中的特定主机机器以用于操作动态路由协议控制平面,该动态路由协议控制平面从集中式路由部件中的每一个接收路由协议数据并且更新集中式路由部件中的每一个的路由表。

Description

用于配置逻辑路由器的介质、设备、系统和方法
技术领域
本申请一般而言涉及网络技术,并且尤其涉及用于配置逻辑路由器的方法和系统。
背景技术
典型的物理网络包含若干物理路由器来执行L3转发(即,路由)。当第一机器想要将分组发送到位于不同IP子网上的第二机器时,分组被发送到路由器,该路由器使用该分组的目的地IP地址来确定应当通过它的物理接口中的哪个物理接口发送该分组。较大的网络将包含多个路由器,以使得如果这些路由器中的一个路由器发生故障,那么可以沿着第一机器和第二机器之间的不同路径来路由分组。在所包含的网络内以及跨网络边界,路由协议都被用来通过网络通告路由。即,第一路由器与第二路由器对等,并且向第二路由器发送指示它可以通过它的其它接口到达哪些地址以及那些地址有多远的消息。第一路由器还接收来自第二路由器的对应的信息,并使用该信息来确定如何路由分组。
在数据中心中实现的逻辑网络中,不同子网上的用户定义的数据计算节点(例如,虚拟机)可能需要彼此通信,以及与数据中心外部的机器通信。在这种情况下,租户可以定义包括逻辑交换机和逻辑路由器的用于虚拟化的网络。需要用于实现逻辑路由器以在数据中心中为这种虚拟化逻辑网络充分地提供服务的方法,包括允许与外部物理网络的路由器进行类似路由交换的方法。
发明内容
一些实施例提供了用于实现用于与(例如,在其中实现逻辑路由器的数据中心的外部的)外部网络对接的逻辑路由器的动态路由协议的方法。在一些实施例中,逻辑路由器具有与外部网络的多个接口,这些接口中的每个接口在分开的网关主机机器中实现。当选择网关主机机器来实现这些接口时,一些实施例的网络控制器选择这些网关主机机器中的一个网关主机机器以还实现动态路由协议控制平面。接口中的每个接口作为单独的部件操作,从而向外部网络通告路由并接收动态路由协议信息(例如,BGP或OSPF分组、或用于任何其它动态路由协议的数据)。在网关主机机器处的各种接口向单个控制平面转发动态路由协议分组,该单个控制平面执行路由计算,以更新网关主机机器的在实现逻辑路由器接口时使用的路由表。
在一些实施例中,逻辑路由器以分布式和集中式两种方式在受管理的网络(例如,数据中心)中实现。具体而言,一些实施例的(例如,在网络控制器中实现的)管理平面(例如,通过API)接收逻辑路由器配置并且为逻辑路由器定义多个路由部件。在一些实施例中,当逻辑路由器连接到外部网络时,管理平面定义用于逻辑路由器的一个分布式路由部件,以及用于逻辑路由器的连接到外部网络的每个接口的一个集中式路由部件。然后将这些集中式路由部件中的每一个指派给实现对应接口的网关主机机器。在一些实施例中,管理平面为集中式路由部件中的每个集中式路由部件生成路由表,并且利用这些路由表来配置它们。
此外,配置逻辑路由器的用户(例如,网络管理员)可以指定路由器向外部网络通告一个或多个公开IP子网,以便吸引指向该子网的业务(traffic)。如所提到的,一些实施例选择网关主机机器中实现集中式路由部件的网关主机机器来(例如,在实现集中式路由部件的同一个虚拟机或其它数据计算节点中、在不同的虚拟机或其它数据计算节点中等)实现动态路由协议控制平面。
所有集中式路由部件通告指定的公开IP子网,并且从它们连接到的外部路由器接收通告路由的动态路由协议分组。集中式部件被配置为将这些分组传递到移除重复信息并更新相应的路由表的所选择的网关主机机器,而不是本地处理这些分组(这常常会导致重复处理)。
在一些实施例中,为逻辑路由器实现集中式部件的所有网关主机机器都被配置为具有运行动态路由协议控制平面的能力。运行在所选择的网关主机机器上的协议栈作为主设备(master)操作,并且仅当该机器发生故障时,其它机器中的一个机器才接管。在这种情况下,备用的控制平面以与用于标准路由器的优雅(graceful)重启类似的方式进行接管。即,新确定的主设备将(通过从若干集中式路由部件发送的分组)指示物理外部路由器发送它的路由中的所有路由,这将使控制平面能够为集中式部件重新计算更新的路由表。
前面的发明内容旨在充当对本发明的一些实施例的简要介绍。它并不意味着是本文档中所公开的所有发明性主题的介绍或概述。随后的具体实施方式和在具体实施方式中提到的附图将进一步描述在发明内容中描述的实施例以及其它实施例。因而,为了理解本文档描述的所有实施例,需要对发明内容、具体实施方式和附图进行全面审查。此外,要求保护的主题不受发明内容、具体实施方式和附图中的说明性细节限制,而是由所附权利要求定义,因为要求保护的主题可以以其它具体形式体现而不背离主题的精神。
附图说明
本发明的新颖特征在所附权利要求中阐述。然而,为了解释的目的,本发明的若干实施例在以下附图中阐述。
图1示出了包括逻辑路由器的逻辑网络的配置视图,该逻辑网络表示由用户设计的逻辑网络。
图2示出了图1的逻辑网络的管理平面视图。
图3示出了图1的逻辑路由器的物理实现。
图4概念性地示出了用于配置SR以实现逻辑路由器的上行链路的一些实施例的过程,其中SR中的一个SR被指派为操作用于动态路由协议的控制平面。
图5示出了BGP操作的开始以及与外部路由器的邻接关系的建立。
图6概念性地示出了在接收到分组时由不托管路由协议控制平面的SR执行的一些实施例的过程。
图7示出了由图5的三个SR对BGP更新的接收。
图8概念性地示出了由作为路由服务器操作的动态路由协议控制平面执行的用于更新用于逻辑路由器的所有SR的路由表的一些实施例的过程。
图9示出了基于接收到的更新,由在一个SR上操作的路由协议控制平面向其它SR分发的数据。
图10示出了由SR使用新分发的路由信息对分组的处理。
图11示出了用于一组SR的BGP控制平面的故障转移。
图12概念性地示出了利用其实现本发明的一些实施例的电子系统。
具体实施方式
一些实施例提供了用于实现用于与(例如,在其中实现逻辑路由器的数据中心的外部的)外部网络对接的逻辑路由器的动态路由协议的方法。在一些实施例中,逻辑路由器具有与外部网络的多个接口,这些接口中的每个接口在单独的网关主机机器中实现。当选择网关主机机器来实现这些接口时,一些实施例的网络控制器选择网关主机机器中的一个网关主机机器以还实现动态路由协议控制平面。接口中的每个接口作为单独的部件操作,从而向外部网络通告路由并接收动态路由协议信息(例如,边界网关协议(BGP)或开放最短路径优先 (OSPF)分组)。在网关主机机器处的各种接口向单个控制平面转发动态路由协议分组,该单个控制平面执行路由计算,以更新用于网关主机机器的在实现逻辑路由器接口时使用的路由表。
在一些实施例中,逻辑路由器以分布式和集中式两种方式在受管理的网络(例如,数据中心)中实现。具体而言,一些实施例的(例如,在网络控制器中实现的)管理平面(例如,通过应用编程接口(API))接收逻辑路由器配置并且为逻辑路由器定义多个路由部件。在一些实施例中,当逻辑路由器连接到外部网络时,管理平面定义用于逻辑路由器的一个分布式路由部件(被称为分布式路由器或DR),以及用于逻辑路由器的连接到外部网络的每个接口的一个集中式路由部件(被称为服务路由器或SR)。然后将这些SR中的每一个指派给实现对应接口的网关主机机器。在一些实施例中,管理平面为SR 中的每个SR生成路由表,并利用这些路由表来配置它们。在2015 年1月30日提交的美国临时申请62/110,061和2015年7月30日提交的美国专利申请14/814,473中更详细地描述定义用于逻辑路由器的多个路由部件的管理平面操作。
此外,配置逻辑路由器的用户(例如,网络管理员)可以对于路由器指定向外部网络通告一个或多个公开IP子网,以便吸引指向该子网的业务。如所提到的,一些实施例选择网关主机机器中实现SR 的网关主机机器来(例如,在实现SR的同一个虚拟机或其它数据计算节点中、在不同的虚拟机或其它数据计算节点中等)实现动态路由协议控制平面。
所有SR通告指定的公开IP子网,并且从它们连接到的外部路由器接收通告路由的动态路由协议分组。SR被配置为将这些分组传递到移除重复信息并更新相应的路由表的所选择的网关主机机器,而不是本地处理这些分组(这常常会导致重复处理)。
在一些实施例中,为逻辑路由器实现SR的所有网关主机机器都被配置为具有运行动态路由协议控制平面的能力。运行在所选择的网关主机机器上的协议栈作为主设备操作,并且仅当该机器发生故障时,其它机器中的一个机器才接管。在这种情况下,备用的控制平面以与用于标准路由器的优雅重启类似的方式进行接管。即,新确定的主设备将(通过从若干SR发送的分组)指示物理外部路由器发送它的路由中的所有路由,这将使控制平面能够为SR重新计算更新的路由表。
上文介绍了使逻辑网络和外部物理网络之间的若干网关中的一个网关充当用于与外部物理网络对接的逻辑路由器的路由服务器的概念。在下文中,第1节介绍一些实施例的逻辑路由器及其物理实现。接下来,第II节描述根据一些实施例的在路由服务器模式下集中式路由部件的操作。最后,第III节描述利用其实现本发明的一些实施例的电子系统。
I.逻辑路由器和物理实现
以下讨论描述用于一些实施例的逻辑路由器的设计以及由一些实施例的网络控制器对这样的逻辑路由器的实现。在一些实施例中,逻辑路由器以三种不同的形式存在。这些形式中的第一种形式是API 视图或配置视图,该API视图或配置视图是逻辑路由器如何由用户 (例如,数据中心提供者或租户)定义。第二种视图是控制平面(或管理平面)视图,该控制平面视图是网络控制器如何在内部定义逻辑路由器。最后,第三种视图是逻辑路由器的物理实现或实施,该第三种视图是逻辑路由器实际如何在数据中心中实现。即,逻辑路由器是描述用户为逻辑路由器配置的一组功能(例如,路由、NAT等)的抽象。然后,逻辑路由器由数据中心中的各种机器基于由一组网络控制器分发给这些机器的指令以及由网络控制器根据用户提供的配置生成的指令来实现。
在控制平面视图中,一些实施例的逻辑路由器可以包括单个DR 以及一个或多个SR中的一者或两者。在一些实施例中,DR跨越直接耦接到VM的受管理的转发元件(MFE)或者直接或间接地逻辑连接到逻辑路由器的其它数据计算节点。一些实施例的DR还跨越逻辑路由器绑定到的网关。在一些实施例中,DR负责逻辑交换机和/或逻辑连接到该逻辑路由器的其它逻辑路由器之间的第一跳分布式路由。一些实施例的SR负责交付未以分布式方式实现的服务(例如,一些有状态服务)。
在一些实施例中,逻辑路由器的物理实现总是具有DR(即,以用于第一跳路由)。如果或者(i)逻辑路由器连接到外部物理网络,或者(ii)逻辑路由器被配置有不具有分布式实现的服务(例如,在一些实施例中的NAT、负载平衡、DHCP)或者两者都满足,那么逻辑路由器将具有SR。本主题涉及连接到外部物理网络并且以一致 (uniform)的方式进行这样的连接(即,逻辑路由器与外部物理网络的所有接口都具有相同的L3连接性)的逻辑路由器。
图1-图3示出了用于连接到外部网络120的逻辑路由器115的实现的三种不同视图。图1具体示出了配置视图,该配置视图表示由用户设计的逻辑网络100。如图所示,逻辑路由器115是包括逻辑路由器115以及两个逻辑交换机105和110的逻辑网络100的一部分。两个逻辑交换机105和110各自具有连接到逻辑端口的VM。虽然在这些图中被示为VM,但是应当理解,在一些实施例中,其它类型的数据计算节点(例如,命名空间等)可以连接到逻辑交换机。在一些实施例中,事实上,用户可以简单地将这些VM配置为工作负载,从而允许系统确定如何实现工作负载(例如,作为VM、命名空间、物理机器等的工作负载)。
逻辑路由器115还包括连接到外部物理网络120的三个端口(被称为上行链路)。具体而言,这三条上行链路中的每一条上行链路连接到同一对路由器125和130。如所提到的,一些实施例对于逻辑路由器的所有上行链路要求相同的L3连接性。然而,其它实施例允许不同的上行链路连接到外部路由器的不同集合,外部路由器的不同集合可能在不同的子网上(并且因此上行链路在彼此不同的子网上)。在各种不同的实施例中,逻辑路由器115的三条上行链路可以在相同的VLAN或不同的VLAN上。
图2示出了图1的逻辑网络100的管理平面视图200。逻辑交换机105和110在这个视图中与在配置视图中相同,但是网络控制器已经创建了用于逻辑路由器115的三个服务路由器205-215、以及分布式路由器220和中转(transit)逻辑交换机225。DR 220包括用于逻辑交换机105和110中的每一个的南向接口、以及到中转逻辑交换机 225(并且通过它到SR)的单个北向接口。SR 205-215各自包括到中转逻辑交换机225的单个南向接口(被用来与DR220通信以及在某些情况下彼此通信)。每个SR 205-215还与(连接到外部网络的) 的逻辑路由器的上行链路端口对应,因此SR中的每个SR具有单个这样的接口。这些北向接口中的每个北向接口连接到物理路由器125 和130两者,如在逻辑网络100的配置视图中那样。
在美国临时申请62/110,061和美国专利申请14/814,473中、以及在2015年9月30日提交的美国专利申请14/871,968中详细描述了各种路由器构造205-220的北向接口和南向接口以及它们与中转逻辑交换机225的连接的详细配置。在一些实施例中,管理平面为路由器构造205-220中的每个路由器构造生成单独的路由信息库(RIB)。即,除了具有在管理/控制平面中创建单独的对象之外,路由器构造 205-220中的每个路由器构造还被视为具有单独路由表的单独路由器。一些实施例从供内部使用的可用子网池中定义用于中转逻辑交换机的子网,并且将路由器构造205-220的内部接口定义为具有在该子网中的IP地址。此外,管理平面向内部接口中的每个内部接口指派 MAC地址。用于一些实施例的DR 220的RIB(以及因此在RIB到 FIB转换之后,FIB)被定义为具有指向SR 205-215的三个南向接口中的任何南向接口的缺省路由(实现将使用等价多路径(ECMP)原则在这些南向接口中进行选择)。此外,用户将通常为逻辑路由器配置指向外部路由器125和130的静态缺省路由,该静态缺省路由将被自动添加到用于三个SR 205-215中的每个SR的RIB(以及因此在 RIB到FIB转换之后,被添加到FIB)。
图3示出了图1的逻辑网络100的物理实现。如图所示,耦接到逻辑网络中的逻辑交换机105和110之一的VM中的每个VM驻留在主机机器305上。尽管在这种情况下这些VM在分开的主机机器上被示出,但是在一些情况下它们可以驻留在少于四台主机机器上 (即,在同一主机机器上具有两个或更多个VM)。
受管理的转发元件(MFE)310也在这些主机机器305上操作,以便实现逻辑网络的分布式方面。在一些实施例中,这些MFE 310 是在主机机器上的管理程序(hypervisor)或其它虚拟化软件内操作的软件虚拟交换机(例如,Open vSwitch(OVS)、ESX)。尽管 MFE是软件虚拟交换机,但是它们可以被称为物理转发元件,以便将它们与逻辑转发元件105-115区分开,逻辑转发元件105-115是被定义为网络配置的抽象元件并且在物理转发元件上实现。这些MFE 310执行第一跳交换和路由,以便对于由逻辑网络的VM发送的分组实现逻辑交换机105和110、以及逻辑路由器115。如果其它逻辑网络也具有驻留在主机机器305上的VM,那么MFE 310(或它们的子集)还可以为这些其它逻辑网络实现逻辑交换机(和分布式逻辑路由器)。
图2的三个SR 205-215各自在不同的网关机器315-325上操作。在一些实施例中,网关机器315-325是类似于机器305的主机机器 (例如,x86机箱(box)),但是网关机器315-325托管SR而不是用户VM。在一些实施例中,MFE 310还在网关机器315-325上操作,以处理用于DR 220的逻辑交换以及路由。例如,从外部网络120发送的分组可以通过网关机器中的一个网关机器上的SR路由表被路由,并且然后随后由同一网关上的MFE(根据DR路由表)交换和路由。此外,MFE提供到网关机器315-325上的物理NIC的连接。网关机器315-325中的MFE 310中的每个MFE既连接到外部路由器125和 130两者又连接到在数据中心中(例如,通过隧道)实现逻辑网络的其它MFE。在这个图中为了区分的目的,在(直接连接到用户VM 的)边缘MFE与(SR VM 330-340直接连接到的)网关MFE之间的隧道被示为直的点线,而网关MFE之间的隧道被示为正交 (orthogonal)实线。此外,从网关MFE到外部路由器125和130 的连接被示为直的虚线/点线。
在不同的实施例中,SR可以在命名空间、虚拟机中实现或者被实现为VRF。在这个示例中,SR 205-215被实现为虚拟机330-340。虽然一些实施例允许(例如,当SR提供诸如防火墙之类的有状态服务时)两个SR以活动-备用模式操作,但是本文描述的示例以活动- 活动模式操作(从而实现对于入口业务和出口业务二者的ECMP路由)。
如图所示,SR VM之一(具体而言,托管图2的SR 210的VM 335)还托管BGP控制平面。这个BGP控制平面是BGP协议栈,该BGP协议栈(i)从其它SR中的每个SR接收路由协议数据(当 SR从外部路由器125和130接收这种数据时),并且(ii)使用路由协议数据来更新所有SR的路由表。在一些实施例中,SR 205-215 中的每个SR打开与外部路由器125和130中的每一个的BGP(或其它路由协议)会话。SR发起它们自己的BGP分组以通告路由(例如,如果公开的话,那么通告针对为逻辑交换机105和110定义的子网的路由),从而使得路由器125和130能够使用针对指向这些子网的分组的ECMP路由。
此外,作为BGP会话的一部分,外部路由器125和130向SR 205-215中的每个SR发送BGP分组,从而通告用于它们后面的网络的路由。例如,两个路由器125和130的北向端口可能在不同的子网上,并且因此将通告到不同子网的不同管理距离。SR VM 330和340 接收这些分组并将它们传递到BGP控制平面在其上操作的VM 335。 VM 335还从路由器125和130接收这些分组,并且在内部处理它们。在VM 335中操作的BGP协议栈使用这些BGP分组中的所有BGP 分组来识别用于SR 205-215的新路由,并且除了向其它VM 330和 340发送路由表更新之外,还更新它的用于SR 210的本地路由表。
在一些实施例中,为了从集中式网络控制器接收(例如,作为一组格式化的数据元组的)配置数据并将这些数据元组转换成MFE和 SR VM可用的配置数据,本地网络控制器(未示出)在网关主机机器中的每个网关主机机器上操作。在一些实施例中,网关机器中的特定网关机器上的本地网络控制器从网络控制器接收用于它的本地SR 的RIB,并将该RIB转换成转发信息库(FIB),该本地网络控制器使用FIB将路由表安装在VM上,以实现SR。在一些这样的实施例中,当从路由器125和130接收到更新时,在VM 335上操作的 BGP控制平面向这些本地控制器中的每一个发送更新后的RIB。然后,本地控制器计算更新的FIB并且利用更新后的路由表来配置它们的相应SR VM的路由表。
在图1-图3所示的示例中,连接到外部网络的逻辑路由器还直接连接到逻辑交换机。在一些实施例中,在逻辑网络内定义两层的逻辑路由器。提供者逻辑路由器(PLR)提供在数据中心中实现的逻辑网络与外部网络之间的连接,并且PLR常常由数据中心的所有者管理。多租户逻辑路由器(TLR)可以连接到PLR的南向接口,从而允许数据中心的不同租户配置它们自己的逻辑路由器(和逻辑交换机)。在一些实施例的两层的情况下,PLR以本文描述的方式实现 BGP(或其它路由协议),以便与外部网络交换路由。在一些这样的情况下,连接到TLR的逻辑交换机可以是公开子网,并且PLR通告用于这些逻辑交换机子网的路由。在美国临时申请62/110,061和美国专利申请14/814,473中进一步详细描述了两层的逻辑路由器。
II.在路由服务器模式下SR的操作
如上面所指示的,在一些实施例中,网络控制器为与外部网络对接(interface)的逻辑路由器的多个SR选择多个网关主机机器。此外,一些实施例选择这些网关主机机器之一来充当用于所有SR的主路由协议控制平面。其它实施例使用在网关主机机器外部的实体(例如,中央控制器)充当用于所有SR的主路由协议控制平面。这些SR中的每个SR对于外部网络作为单独的接口(例如,单独的线路卡)出现,从而向外部网络通告路由并从外部网络接收动态路由协议信息。然而,所有SR不是处理路由协议数据本身,而是将数据转发到主控制平面,主控制平面基于该数据识别任何更新并且更新SR路由表。
A.SR配置
图4概念性地示出了用于配置SR以实现逻辑路由器的上行链路的一些实施例的过程400,其中这些SR中的一个SR被指派为操作用于动态路由协议(例如,BGP)的控制平面。在一些实施例中,过程400由管理逻辑路由器的网络控制器执行。即,在一些实施例中,用于管理数据中心中的网络的网络控制系统可以包括许多网络控制器,其中不同的控制器被指派为管理不同的逻辑网络或不同的逻辑转发元件。在这种情况下,管理特定逻辑路由器的网络控制器将生成用于特定逻辑路由器的逻辑路由构造(DR、SR、中转逻辑交换机)的配置数据,并且将配置数据分发到实现逻辑路由器的主机机器。在一些实施例中,网络控制器将配置数据分发到在主机机器上操作的本地控制器,本地控制器将配置数据转换成被用来配置本地软件交换机或VM 路由表的格式。
如图所示,过程400开始于(在405处)接收用于具有连接到外部物理网络的多条上行链路的逻辑路由器的配置。在一些实施例中,网络管理员通过管理应用用户接口来定义逻辑路由器,逻辑路由器又基于用户配置生成到网络控制器的API命令。因此,网络控制器接收作为一个或多个API命令(例如,创建逻辑路由器、创建接口、创建静态路由等)的逻辑路由器配置。在一些实施例中,逻辑路由器可以具有0条或更多条上行链路(例如,具有最多8条、16条等上行链路)。具有0条上行链路的逻辑路由器将不会与外部网络或者其它逻辑路由器通信;在这种情况下,路由器将主要充当用于让若干逻辑交换机或其它逻辑路由器彼此通信的手段。
一些实施例要求上行链路都具有相同的L3连接性,而其它实施例对于不同的上行链路允许不同的L3连接性。然而,如果不同的上行链路连接到不同的外部路由器,那么不仅不同的SR将接收不同的路由协议信息,而且单个控制平面将需要为不同的SR创建不同的路由表更新,并且仅具有单个控制平面的计算益处将减少。即,单个路由协议控制平面将基于从第一SR所连接到的路由器接收的路由协议数据来执行针对第一SR的一组更新,然后基于从第二SR所连接到的路由器接收的路由协议数据来执行针对第二SR的第二组更新,等等。但是,当多条上行链路共享相同的L3连接性时,那么即使逻辑路由器的其它上行链路具有不同的L3连接性并且运行单独的控制平面,一些实施例也将聚合用于这些SR的路由协议控制平面。
在接收到配置之后,过程400(在410处)定义并配置用于逻辑路由器的DR和用于逻辑路由器的每条上行链路的一个SR。尽管这里没有详细讨论,但是一些实施例允许将多条上行链路指派给相同的 SR。在所有上行链路都具有相同配置(例如,在这些上行链路中的任何上行链路上都没有定义有状态服务)和相同的L3连接性的情况下,将两条上行链路指派给相同的SR将只会导致SR接收两倍于其它SR的业务,而没有任何益处。DR和SR的定义和配置(包括路由表配置)在美国临时专利申请62/110,061以及美国专利申请 14/814,473和14/871,968中更详细地描述。
该过程还(在415处)选择托管每个SR的主机机器。在一些实施例中,数据中心包括具体被分配为网关主机机器的主机机器的集合 (例如,集群),以用于托管SR。一些实施例允许(用于不同的逻辑路由器的)许多SR在每个网关主机机器上被托管,而其它实施例仅允许每个网关主机机器托管一个(或少量)SR。在一些实施例中,网络控制器跨集群中的网关主机机器对用于许多逻辑路由器的SR进行负载平衡。然而,当仅为数据中心定义单个PLR时,假设用于具体逻辑路由器的SR都被指派给不同的主机机器,那么仅一个SR将被指派给每个网关主机机器。
在选择用于SR的主机机器的集合之后,过程400(在420处) 选择主机机器之一(即,被选择为托管SR的主机机器之一)来运行用于逻辑路由器的动态路由协议控制平面。在一些实施例中,这个选择是随机的,或被设计为近似于随机分布(例如,通过计算一组配置输入的散列值并且使用该散列值来将路由协议控制平面指派给主机机器之一)。其它实施例使用主机机器相对于彼此的位置来将路由协议控制平面指派给具有到为SR选择的集合中的所有其它主机机器的最短距离的主机机器。如所提到的,一些实施例使用控制器(例如,执行过程400的控制器)来代替SR的主机机器之一运行动态路由协议控制平面。
在选择了主机机器以及生成了所需的配置数据之后,该过程然后(在425处)将用于各个SR的SR配置数据分发给所选择的主机机器中的每个主机机器并且(在430处)将动态路由协议配置和SR位置信息分发给被选择为操作动态路由协议控制平面的特定主机机器。如上面所指示的,一些实施例将用于特定SR的SR配置数据分发给在向其指派了SR的主机机器上操作的本地控制器。这个本地控制器负责在主机机器上配置SR,这可以包括基于接收到的RIB来计算用于供SR使用的路由表。在一些实施例中,本地控制器还在主机机器上配置MFE,以(基于从集中式网络控制器接收的配置数据)实现逻辑路由器的DR以及网络中的任何其它逻辑转发元件(例如,其它逻辑路由器、逻辑交换机等)。
在一些实施例中,分发给所选择的主机机器的动态路由协议配置包括用于SR的路由信息库。如果L3连接性对于所有SR都相同,那么SR应当全都具有相同的RIB,除非管理员将某些静态路由配置为经由上行链路中的特定上行链路输出。南向路由都具有DR的北向接口作为它们的下一跳地址,并且在不同的SR中北向路由也应当相同。照此,在这些情况下,网络控制器分发用于配置动态路由协议控制平面的一个RIB、以及指示RIB更新将被分发到的其它SR的位置的信息。
此外,网络控制器分发向特定主机机器上的本地控制器指示该网络控制器将托管路由协议控制平面的配置数据。如所提到的,在一些实施例中,SR被实现为VM,其中路由协议在相同的VM内操作。在其它实施例中,第二VM在主机机器上被实例化,以执行路由协议操作。其它实施例除了VM还以其它形状因子实现SR(例如,作为直接在MFE的数据路径中的VRF、作为命名空间或其它非VM 数据计算节点等)。在这些实施例的一些实施例中,控制平面可以作为单独的VM或其它数据计算节点来操作。
B.路由协议操作
一旦配置了SR,逻辑路由器(和逻辑网络的其余部分)就可以开始操作。图5概念性地示出了将贯穿本节作为示例被使用的网络 500的一部分。具体而言,图5示出了在两个阶段501-502上BGP 操作的开始以及与外部路由器的邻接关系的建立。在这种情况下,网络500包括逻辑路由器的三个SR 505-515。这三个SR 505-515在数据中心中的分开的主机机器上(例如,作为VM)操作。为了简单起见,在一些实施例中,未示出主机机器,也未示出在主机机器上操作的MFE。在这个示例中,基于管理这些SR所属的逻辑路由器的网络控制器的选择,BGP控制平面在SR 510上操作。
SR 505-515包括到彼此的连接以及到物理路由器520的连接,其中物理路由器520提供到数据中心外部的网络(例如,到互联网) 的连接。如上所述,在一些实施例中,SR之间的连接实际上是在SR 的相应主机机器上操作的MFE之间的隧道。类似地,在这些主机机器上,SR与外部路由器之间的连接也通过SR的主机机器上的MFE (其中MFE处理分组向NIC的分组递送和从NIC的分组接收)。
为了开始操作并且与外部路由器建立邻接关系,在一些实施例中, BGP控制平面在其上操作的SR发起与SR所连接到的每个外部路由器的路由协议会话。在这个示例的第一阶段501中,SR 510向外部路由器520发送BGP Open(打开)消息525,其中在该消息中有它自己的IP地址。此外,SR 510生成用于SR 505和515的BGP Open消息530和535,以被发送到路由器。但是,这些消息在这个阶段被隧道发送到相应的SR(封装在图中未示出)。在第二阶段502中,SR 505和515分别解封装BGP Open消息530和535,并且将它们转发到外部路由器520上。一旦SR检测到这些是BGP分组, SR就跳过任何进一步的处理并将它们转发到对等的路由器,以使得 SR有效地仅充当用于在SR 510处操作的单个路由器与控制平面的接口。
这个过程假设BGP控制平面已经与外部路由器520协商了成功的TCP连接,因此BGP控制平面处于标准BGP状态机的连接状态。在发送BGP Open消息之后,BGP状态机转移到OpenSent(打开已发送)状态。在一些实施例中,BGP控制平面为每个SR管理分开的 BGP状态机,而在其它实施例中,BGP控制平面管理用于它与外部路由器的邻接关系的单个状态机。假设没有错误,则SR 505和515 将各自接收到返回的Open消息,它们将该返回的Open消息经由隧道转发到SR 510(SR 510也应当接收到这样的消息)。然后,在SR 510处的BGP控制平面将通过每个SR向外部路由器520发送 Keepalive(保活)消息(从而转移到OpenConfirm(打开确认)状态),并且监听来自外部路由器的Keepalive消息(此时它将转移到Established状态,因此路由可以在对等体之间交换)。
从SR到外部路由器的路由交换如对于BGP来说正常的那样发生。即,SR发送指示可达子网的Update(更新)消息(或转发由控制平面生成的消息),这些可达子网是逻辑网络的(一个或多个)用户选择进行公开的子网(并且已经为这些子网指派了公开的IP地址)。这些消息指示发送SR上行链路作为下一跳IP地址,并且具有低的管理距离(假设逻辑网络都在单个自治系统内),因为它们仅包括用于逻辑网络子网的路由。即使SR连接到多个路由器,在一些实施例中,SR也将不向另一个路由器通告从一个路由器学习的路由,以避免必须处理未发送到逻辑网络或从逻辑网络发送的业务。照此,通过SR发送的BGP更新应当仅在新的公开子网被添加到逻辑网络时才会改变。
然而,可以从外部路由器定期接收BGP更新,因为外部网络一般将较多地经受影响所通告的路由的改变。图6概念性地示出了在接收到分组时由不托管路由协议控制平面的SR执行的一些实施例的过程600。虽然这个过程600由SR执行,但是在一些实施例中,区分用于由SR处理的数据分组与路由协议分组的类似过程可以由操作具有SR的主机机器的MFE执行。例如,如果MFE是基于流的虚拟交换机(例如,Open vSwitch),那么一些实施例包括在指示分组是BGP(或其它路由协议)更新分组的字段上匹配的流条目,并且通过隧道将这些分组自动地转发到正确的主机机器。在其它实施例中, MFE基于它的目的地地址将分组转发到SR,并且SR识别出分组是更新并将分组(经由MFE)发送到正确的主机机器。
如图所示,过程600(在605处)在SR处从外部网络接收分组。这个分组可以是旨在用于特定用户VM的数据分组(或者与多个用户VM对应的公开IP地址)。例如,如果数据中心租户操作数据中心中的web服务器,那么这个web服务器将有可能与外部网络中的客户端发送和接收大量业务。在这种情况下,传入业务将通过SR以进行路由。此外,BGP控制平面已通过SR与其建立邻接关系的外部路由器也将向SR发送BGP分组(例如,Open消息、Keepalive消息、更新等)。
该过程(在610处)确定接收到的分组是否是路由协议分组。在一些实施例中,在执行任何附加的处理之前,SR执行检查,以确定分组是否应当是应当一直被传递到运行用于路由协议的控制平面的 SR的路由协议分组。BGP分组(或用于其它路由协议的分组)将 (i)具有SR本身的目的地地址,而不是逻辑网络中的工作负载(例如,用户VM),以及(ii)识别它的报头中的路由协议。因此, Update(更新)、Open、Keepalive等消息将由SR接收(当路由协议是BGP时),并且应当被转发到控制平面(因为这些消息与对等体的建立和维护相关)。
因此,当接收到的分组不是路由协议分组时,过程600(在615 处)在SR处处理分组。如果分组是用于在该SR处维护的另一个路由协议的分组,那么SR基于这种分组来执行所需的动作。分组还可以是标准数据分组(例如,TCP片段、UDP数据报等),在这种情况下,SR根据它的FIB来路由分组并且执行任何其它所需的处理。
另一方面,当分组是路由协议分组时,该过程(在620处)通过隧道将分组转发到路由协议控制平面在其处操作的主机机器。即,一旦SR(通过查看分组的报头)识别出分组是BGP分组,SR就封装并转发分组,而不进行任何进一步的处理。在一些实施例中,SR被配置为利用控制平面将分组的目的地IP和/或MAC地址修改为SR 的目的地IP和/或MAC地址。然后,SR将分组发送回它的本地 MFE,该本地MFE将分组隧道发送到在路由协议控制平面所驻留的远程主机机器处的MFE。然后,该过程结束。
图7示出了在两个阶段705和710上由三个SR 505-515对BGP 更新的接收。在第一阶段705中,外部物理路由器520向三个SR 505-515发送BGP更新。第一SR 505接收更新715,更新715具有关于针对前缀1.1.10.0/28的路由的信息,而第二SR510 和第三SR 515分别接收更新720和725,更新720和725两者都提供关于前缀1.1.11.0/28的相同信息。与任何标准BGP更新一样,这些更新提供关于所指示的IP前缀的可达性的信息,从而指出通过发送更新消息的路由器(即,路由器520)到达IP地址所需的跳数(或自治系统的数量)。
如第二阶段710中所示,第一SR 505和第三SR 515将它们的更新分组715和725发送到操作用于这三个SR的BGP控制平面的第二SR 510。即,因为这些SR自身不处理对路由表的动态路由更新,所以,除了将分组715和725转发到SR 510之外,这些SR对分组 715和725不做任何事情。SR 510不必转发它从外部路由器520接收的分组720,因为它将在内部处理分组(连同它从其它SR接收的其它更新)。
图8概念性地示出了由作为路由服务器操作的动态路由协议控制平面执行以更新逻辑路由器的所有SR的路由表的一些实施例的过程 800。在一些实施例中,该过程可以在逻辑路由器的SR之一(例如,上面的示例中的SR 510)处执行,或者在其它实施例中,该过程在管理SR的中央控制器处执行。当路由协议控制平面在SR内操作时,这个过程由SR本身执行。但是,在一些实施例中,该过程还可以由在与SR相同的主机机器上操作以执行路由协议控制平面操作的分开的VM执行。此外,在其它实施例中,主机机器上的本地网络控制器执行路由协议控制平面操作。
如图所示,过程800开始于(在805处)在协议控制平面处接收路由协议更新分组。这可以是从外部路由器直接接收到的分组(例如,分组720)或者由不同的SR接收并被转发到运行路由协议控制平面的SR的分组。对于BGP协议,更新分组指示数据业务可以针对其被发送到从其接收分组的路由器的可路由前缀(或多个可路由前缀)、发送路由器的自治系统数量(number)以及用于每个可路由前缀的可达性距离。
基于接收到的更新分组,该过程(在810处)更新它的路由表。如上面参考图4所描述的,在一些实施例中,路由协议控制平面被配置为具有由集中式网络控制器生成的、用于SR的初始路由表(即, RIB)。当路由协议控制平面从外部路由器学习到路由时,它更新该路由表。
当接收到新的路由时,一些实施例的控制平面确定路由表是否已经具有带相同前缀和下一跳的路由(即,是否已经从同一外部路由器接收到对于相同前缀的通告)。当确定是这种情况时,控制平面更新这个路由条目,以反映新的数据(例如,不同的管理距离)。如果控制平面路由表具有用于相同前缀的路由但是具有不同的下一跳,那么在一些实施例中,它存储这两条路由(因为,如果管理距离相同,那么路由可能都被使用)。然而,一些实施例还通过选择具有最低成本 (例如,最低管理距离)的路由来识别用于路由的最佳路径。因此,当SR连接到多个外部路由器时,维护一个控制平面以比较用于相同前缀的路由的计算节省被增加。通过在单个路由协议控制平面处执行所有更新,不需要分开处理重复的更新。
该过程然后(在815处)将更新的路由配置(即,路由表更新) 分发给所有的SR。这包括在执行过程800的控制平面本地的SR、向控制平面发送更新的任何远程SR以及用于逻辑路由器的任何其它远程SR。在一些实施例中,路由协议控制平面向托管SR的所有网关主机机器处的本地网络控制器提供更新的路由表,这允许这些本地网络控制器计算更新的FIB,以利用这些更新的FIB来配置(provision)它们各自的本地SR。在其它实施例中,SR本身(例如, VM)执行路由遍历过程,以基于更新的RIB生成FIB。在还有其它实施例中,路由协议控制平面实际上执行路由遍历过程,以生成更新的FIB,并且该更新的FIB是然后被分发给SR中的每个SR的东西。
除了将更新的路由配置分发给SR,过程800还(在820处)将更新的路由信息提供给集中式网络控制器,以用于结合到逻辑路由器的DR的路由表中并且随后分发到实现DR的MFE(包括SR驻留在其上的网关主机机器上的MFE)。一些实施例使用运行路由协议控制平面的网关主机机器上的本地控制器将这个信息向上传递到管理逻辑路由器的网络控制器,该网络控制器将路由更新结合到用于DR的 RIB中。然后,这个信息被发送到在实现逻辑网络的各个主机机器 (例如,图3中的机器305)处的本地控制器,这些本地控制器配置实现DR的MFE(例如,MFE 310)。此外,集中式控制器将关于 DR路由表的信息发送到在具有SR的主机机器处的本地控制器,这些本地控制器配置在那里还实现DR的MFE。
图9示出了基于在图7中接收到的更新,由在SR 510上操作的路由协议控制平面分发到其它SR 505和515的数据。具体而言,如图7中所示,路由协议控制平面接收关于前缀1.1.10.0/28和 1.1.11.0/28的更新。然后,BGP控制平面确定这些更新是否反映新信息,并且如果是的话就执行计算,以更新它的路由表。例如,在这种情况下,控制平面丢弃针对路由1.1.11.0/28的重复更新,并且添加用于两个前缀的新路由。然后,BGP控制平面将这些更新分发到SR 505-515。具体而言,在一些实施例中,BGP控制平面将这些更新分发到在这些SR驻留在其上的主机机器上操作的本地控制器(未示出)。这些本地网络控制器然后重新计算用于它们各自的SR的FIB,并且利用新的路由配置来配置它们的SR。
图10示出了在两个阶段1005和1010上由SR 505-515之一使用新分发的路由信息对分组1000的处理。如图所示,在第一阶段1005 中,SR 505接收由用户VM 1015(例如,逻辑地附连到逻辑交换机的VM,其中该逻辑交换机又附连到SR 505-515所属的逻辑路由器) 发送的分组。为了让SR 505接收分组1000,在一些实施例中,用户 VM将分组发送到它的本地MFE,该本地MFE对分组执行第一跳处理。在MFE处的该第一跳处理通过用于VM所连接到的逻辑交换机、然后DR、然后中转逻辑开关的管线(pipeline)来处理分组。中转逻辑交换机将南向SR接口识别为分组的目的地,并且因此识别出将分组隧道发送(tunnel)到SR 505驻留在其上的主机机器。然后, SR 505本地的MFE完成中转逻辑交换机处理,以将分组输送到SR。一些实施例的数据处理管线在美国临时申请62/110,061和美国专利申请14/814,473中更详细地描述。
一SR 505接收到分组1000,它就根据它的路由表来路由分组。在这种情况下,路由表现在具有指示目的地IP在1.1.11.0/28范围中的分组应当被发送到外部路由器520的路由。照此,在第二阶段 1010中,SR(在一些实施例中,同样通过它的本地MFE)将分组发送出与上行链路对应的物理接口并且发送到外部路由器。在这个示例中,在仅单个外部路由器的情况下,将很可能不需要动态路由,因为逻辑路由器(以及因此SR)通常将被配置有缺省的静态路由(即,对于0.0.0.0/0的缺省的静态路由),以将所有否则不被路由的分组发送到外部路由器。但是,当SR连接到多个路由器时,用于特定 SR的缺省路由可能指向路由器中的第一个路由器,而用于特定子网 (诸如,1.1.11.0/28)的路由可能指向第二个路由器。
C.控制平面的故障转移
由于路由协议控制平面仅在逻辑路由器的若干SR中的一个SR 上运行但是路由协议控制平面控制其它SR,因此控制平面的故障影响其它仍在操作的SR。在每个SR操作它自己的BGP(或其它协议) 控制平面的情况下,特定SR上的BGP过程的故障仅意味着该SR 将不会吸引来自外部路由器的业务,而其它SR将接收附加的业务。类似地,SR本身的故障将导致用于逻辑路由器的其它SR接管入口业务和出口业务、以及在由发生故障的SR实现的上行链路上配置的任何策略。在美国临时申请62/110,061和美国专利申请14/814,473 中描述了更详细的故障场景。
当操作控制平面的SR出故障时,一些实施例选择其它SR中的一个SR来操作路由协议控制平面。如上所述,路由协议过程已经在其它SR上运行,以便与外部路由器建立邻接关系;然而,这些过程不存储要基于传入的路由进行更新的路由表。相反,如在前面部分中所描述的,路由表仅由在SR中的一个SR上操作的协议控制平面更新。相反,新选择的SR通过使用大多数路由协议的优雅重启能力来开始更新控制平面。即,所有SR重新建立它们的邻接关系,就好像它们已经崩溃并重新启动一样,这使得外部路由器将它们的路由中的所有路由重新发送到SR,从而使新的协议控制平面能够快速建立它的路由表。在其它实施例中,备份SR也运行路由协议控制平面,但是在发出更新时使用较高的成本。以这种方式,外部物理路由器将已经具有用于与作为主控制平面的其它SR(或其它多个SR)的邻接关系的路由,但是,由于成本较高,直到与原始主设备的邻接关系丢失才将使用这些路由。
图11示出了在两个阶段1105和1110上用于SR 505-515的 BGP控制平面的故障转移。如第一阶段1105中所示,操作用于三个 SR的BGP控制平面的SR 510已经发生故障。这可能是由于VM崩溃、整个网关主机崩溃、将SR连接到其它SR(或用户VM)的隧道中的一个或多个隧道失效(go down)、到物理网络的连接失效,等等。
在这个时候,其它两个SR 505和515识别出第二SR 510已经崩溃,并且它们不仅需要接管第二SR 510的接口,而且还需要接管 BGP控制平面。一些实施例使用排名系统来识别其它SR中的哪个 SR接管发生故障的SR。在一些实施例中,SR中的每个SR在它们被建立时(例如,由在集中控制器中运行的管理平面)被指派排名。然后,从发生故障的SR起具有次高排名的SR接管发生故障的SR 的接口以及路由协议控制平面。在这种情况下,与发生故障的SR 510相比,第一SR 505具有次高的排名,并且因此第一SR 505接管 BGP控制平面。
因此,如在第二阶段1110所示,用于第一SR 505的VM现在操作用于两个剩余SR的BGP控制平面。在一些实施例中,在SR 505驻留在其上的主机机器上的本地控制器识别出SR510的故障并且配置控制平面过程开始在VM上运行。此外,用于剩余SR 505和 515的两台主机机器上的本地控制器发起用于它们各自的路由协议过程的重启过程。因此,如图所示,两个SR 505和515通过发送新的 BGP Open消息来重新建立与外部路由器520的邻接关系。这些消息包括重启状态位,该重启状态位指示这是优雅的重启。在一些实施例中,这使得路由器520将其完整的路由列表发送到SR中的每个SR,从而允许在第一SR处操作的控制平面更新其路由表。
III.电子系统
上文描述的特征和应用中的许多特征和应用被实现为被指定为记录在计算机可读存储介质(还被称为计算机可读介质)上的指令集合的软件过程。当这些指令由一个或多个处理单元(例如,一个或多个处理器、处理器的核心或其它处理单元)执行时,它们使(一个或多个)处理单元执行指令中指示的动作。计算机可读介质的示例包括但不限于CD-ROM、闪存驱动器、RAM芯片、硬盘驱动器、EPROM 等。计算机可读介质不包括无线地或经有线连接传递的载波和电子信号。
在这个说明书中,术语“软件”意在包括可以被读入存储器中以供处理器处理的、驻留在只读存储器中的固件或存储在磁存储装置中的应用。另外,在一些实施例中,多个软件发明可以被实现为较大程序的子部分,同时保持不同的软件发明。在一些实施例中,多个软件发明还可以被实现为单独的程序。最后,一起实现这里描述的软件发明的单独程序的任何组合都在本发明的范围内。在一些实施例中,当被安装以在一个或多个电子系统上操作时,软件程序定义执行和实现软件程序的操作的一个或多个特定机器实现。
图12概念性地示出了利用其实现本发明的一些实施例的电子系统1200。电子系统1200可以被用来执行上文描述的控制、虚拟化或操作系统应用中的任何应用。电子系统1200可以是计算机(例如,台式计算机、个人计算机、平板计算机、服务器计算机、大型机、刀片计算机等)、电话、PDA或任何其它种类的电子设备。这样的电子系统包括各种类型的计算机可读介质和用于各种其它类型的计算机可读介质的接口。电子系统1200包括总线1205、(一个或多个)处理单元1210、系统存储器1225、只读存储器1230、永久存储设备 1235、输入设备1240和输出设备1245。
总线1205总体表示可通信地连接电子系统1200的许多内部设备的所有系统、外围设备和芯片集总线。例如,总线1205将(一个或多个)处理单元1210与只读存储器1230、系统存储器1225和永久存储设备1235可通信地连接。
(一个或多个)处理单元1210从这些各种存储器单元检索要执行的指令和要处理的数据,以便执行本发明的过程。在不同的实施例中,(一个或多个)处理单元可以是单个处理器或多核处理器。
只读存储器(ROM)1230存储(一个或多个)处理单元1210 和电子系统的其它模块所需的静态数据和指令。另一方面,永久存储设备1235是读写存储器设备。该设备是即使当电子系统1200关闭时也存储指令和数据的非易失性存储器单元。本发明的一些实施例使用大容量存储设备(诸如磁盘或光盘及其对应的盘驱动器)作为永久存储设备1235。
其它实施例使用可移动存储设备(诸如软盘、闪存驱动器等)作为永久存储设备。像永久存储设备1235一样,系统存储器1225是读写存储器设备。然而,与存储设备1235不同,系统存储器是易失性读写存储器,诸如随机存取存储器。系统存储器存储处理器在运行时需要的指令和数据中的一些指令和数据。在一些实施例中,本发明的过程被存储在系统存储器1225、永久存储设备1235和/或只读存储器 1230中。(一个或多个)处理单元1210从这些各种存储器单元检索要执行的指令和要处理的数据,以便执行一些实施例的过程。
总线1205还连接到输入设备1240和输出设备1245。输入设备使得用户能够向电子系统传送信息和选择命令。输入设备1240包括字母数字键盘和指向设备(还被称为“光标控制设备”)。输出设备 1245显示由电子系统生成的图像。输出设备包括打印机和显示设备,诸如阴极射线管(CRT)或液晶显示器(LCD)。一些实施例包括诸如既充当输入设备又充当输出设备的触摸屏之类的设备。
最后,如图12中所示,总线1205还通过网络适配器(未示出) 将电子系统1200耦接到网络1265。以这种方式,计算机可以是计算机网络(诸如局域网(“LAN”)、广域网(“WAN”)或内联网、或者网络的网络(诸如互联网))的一部分。电子系统1200的任何部件或所有部件可以与本发明结合使用。
一些实施例包括在机器可读介质或计算机可读介质(可替代地被称为计算机可读存储介质、机器可读介质或机器可读存储介质)中存储计算机程序指令的电子部件(诸如微处理器、存储装置和存储器)。这种计算机可读介质的一些示例包括RAM、ROM、只读光盘(CD-ROM)、可记录光盘(CD-R)、可重写光盘(CD-RW)、只读数字通用光盘(例如,DVD-ROM、双层DVD-ROM)、各种可记录/ 可重写DVD(例如DVD-RAM、DVD-RW、DVD+RW等)、闪存存储器(例如,SD卡、迷你SD卡、微SD卡等)、磁性和/或固态硬盘驱动器、只读和可记录
Figure GDA0002580822030000251
盘、超密度光盘、任何其它光学介质或磁性介质、以及软盘。计算机可读介质可以存储可由至少一个处理单元执行并且包括用于执行各种操作的指令集的计算机程序。计算机程序或计算机代码的示例包括诸如由编译器产生的机器代码以及包括由计算机、电子部件或微处理器使用解释器执行的更高级代码的文件。
虽然上面的讨论主要涉及执行软件的微处理器或多核处理器,但是一些实施例由一个或多个集成电路(诸如专用集成电路(ASIC) 或现场可编程门阵列(FPGA))执行。在一些实施例中,这样的集成电路执行存储在电路本身上的指令。
如本说明书中所使用的,术语“计算机”、“服务器”、“处理器”和“存储器”都指代电子设备或其它技术设备。这些术语不包括人或人的群体。为了说明书的目的,术语“显示”是指在电子设备上显示。如在本说明书中使用的,术语“计算机可读介质”、“计算机可读媒介”和“机器可读介质”完全限于存储以计算机可读的形式的信息的有形物理对象。这些术语不包括任何无线信号、有线下载信号以及任何其它短暂信号。
本说明书全文涉及包括虚拟机(VM)的计算环境和网络环境。但是,虚拟机仅是数据计算节点(DCN)或数据计算端节点(还被称为可寻址节点)的一个示例。DCN可以包括非虚拟化的物理主机、虚拟机、在主()操作系统之上运行而不需要管理程序或单独的操作系统的容器、以及管理程序内核网络接口模块。
在一些实施例中,VM使用由虚拟化软件(例如,管理程序、虚拟机监视器等)虚拟化的主机的资源在主机上利用它们自己的访客操作系统来操作。租户(即,VM的所有者)可以选择哪些应用在访客操作系统之上进行操作。另一方面,一些容器是在主操作系统之上运行而不需要管理程序或单独的访客操作系统的构造。在一些实施例中,主操作系统使用命名空间将容器彼此隔离,并且因此提供在不同容器内操作的不同应用组的操作系统级隔离。这种隔离类似于在使系统硬件虚拟化的管理程序虚拟化环境中提供的VM隔离,并且因此可以被视为隔离在不同容器中操作的不同应用组的一种虚拟化形式。这种容器比VM更轻量级。
在一些实施例中,管理程序内核网络接口模块是包括具有管理程序内核网络接口和接收/发送线程的网络堆栈的非VM DCN。管理程序内核网络接口模块的一个示例是作为VMware公司的ESXiTM管理程序的一部分的vmknic模块。
应当理解的是,虽然说明书涉及VM,但是给出的示例可以是任何类型的DCN,包括物理主机、VM、非VM容器和管理程序内核网络接口模块。事实上,在一些实施例中,示例网络可以包括不同类型的DCN的组合。
虽然已经参考许多具体细节描述了本发明,但是本领域普通技术人员将认识到,在不背离本发明的精神的情况下,本发明可以以其它具体形式体现。此外,附图中的若干图(包括图4、图6和图8)概念性地示出了过程。这些过程的具体操作可以不按照所示出和所描述的确切次序来执行。具体操作可以不在操作的连续序列中执行,并且在不同的实施例中可以执行不同的具体操作。此外,该过程可以使用若干子过程来实现,或者作为较大的宏过程的一部分来实现。因此,本领域普通技术人员将理解的是,本发明不受前述说明性细节的限制,而是由所附权利要求限定。

Claims (20)

1.一种用于配置与外部网络对接的逻辑路由器的方法,所述方法包括:
接收用于逻辑网络的配置,所述逻辑网络包括逻辑路由器,所述逻辑路由器具有各自连接到所述逻辑网络外部的至少一个物理路由器的多个接口;
对于所述逻辑路由器的每个接口,选择单独的主机机器来托管与外部物理路由器交换数据业务的集中式路由部件;以及
选择主机机器中的特定主机机器来操作动态路由协议控制平面,所述动态路由协议控制平面(i)基于所述集中式路由部件与所述外部物理路由器的交互从集中式路由部件中的每个集中式路由部件接收路由协议数据并且(ii)基于所述路由协议数据更新集中式路由部件中的每个集中式路由部件的路由表。
2.如权利要求1所述的方法,其中用于所述逻辑网络的配置包括要经由所述动态路由协议向所述至少一个物理路由器通告的一组逻辑交换机子网。
3.如权利要求1所述的方法,其中所述接口中的每个接口连接到同一组外部物理路由器。
4.如权利要求1所述的方法,其中多个单独的主机机器位于被指定为用于托管逻辑路由器的集中式路由部件的主机机器的集群内。
5.如权利要求1所述的方法,还包括为所述集中式路由部件中的每个集中式路由部件生成初始路由表。
6.如权利要求1所述的方法,其中所述集中式路由部件在所述主机机器上作为虚拟机操作。
7.如权利要求6所述的方法,其中所述动态路由协议控制平面在操作于所述特定主机机器上的虚拟机上操作。
8.如权利要求6所述的方法,其中所述动态路由协议控制平面在第二虚拟机上操作,其中所述第二虚拟机在所述特定主机机器上操作,所述第二虚拟机与在所述特定主机机器上操作的所述集中式路由部件分离。
9.如权利要求1所述的方法,其中,当在不是所述特定主机机器的第一主机机器上操作的第一集中式路由部件从外部物理路由器接收到路由协议分组时,第一集中式路由部件通过第一主机机器和所述特定主机机器之间的隧道将所述分组转发到所述特定主机机器。
10.如权利要求1所述的方法,其中,在从(i)外部物理路由器和(ii)转发来自外部物理路由器的路由协议分组的集中式路由部件中的至少一者接收到路由协议分组时,所述动态路由协议控制平面计算对集中式路由部件中的每个集中式路由部件的路由表的更新并且将所述更新分发到所述集中式路由部件。
11.如权利要求1所述的方法,其中所述特定主机机器被指定为用于所述动态路由协议控制平面的活动机器,其中,其它的主机机器中的每个主机机器被指定为用于所述动态路由协议控制平面的备用机器。
12.如权利要求11所述的方法,其中,当所述特定主机机器崩溃时,所述备用机器中指定的备用机器作为活动机器操作所述动态路由协议控制平面。
13.一种存储程序的机器可读介质,所述程序在由至少一个处理单元执行时配置与外部网络对接的逻辑路由器,所述程序包括用于以下操作的指令集:
接收用于逻辑网络的配置,所述逻辑网络包括逻辑路由器,所述逻辑路由器具有各自连接到所述逻辑网络外部的至少一个物理路由器的多个接口;
对于所述逻辑路由器的每个接口,选择单独的主机机器来托管与外部物理路由器交换数据业务的集中式路由部件;以及
选择主机机器中的特定主机机器来操作动态路由协议控制平面,所述动态路由协议控制平面(i)基于所述集中式路由部件与所述外部物理路由器的交互从集中式路由部件中的每个集中式路由部件接收路由协议数据并且(ii)基于所述路由协议数据更新集中式路由部件中的每个集中式路由部件的路由表。
14.如权利要求13所述的机器可读介质,其中用于所述逻辑网络的配置包括要经由所述动态路由协议向所述至少一个物理路由器通告的一组逻辑交换机子网。
15.如权利要求13所述的机器可读介质,其中所述程序还包括用于为所述集中式路由部件中的每个集中式路由部件生成初始路由表的指令集。
16.如权利要求13所述的机器可读介质,其中,当在不是所述特定主机机器的第一主机机器上操作的第一集中式路由部件从外部物理路由器接收到路由协议分组时,第一集中式路由部件通过第一主机机器和所述特定主机机器之间的隧道将所述分组转发到所述特定主机机器。
17.如权利要求13所述的机器可读介质,其中,在从(i)外部物理路由器和(ii)转发来自外部物理路由器的路由协议分组的集中式路由部件中的至少一者接收到路由协议分组时,所述动态路由协议控制平面计算对集中式路由部件中的每个集中式路由部件的路由表的更新并且将所述更新分发到所述集中式路由部件。
18.如权利要求13所述的机器可读介质,其中:
所述特定主机机器被指定为用于所述动态路由协议控制平面的活动机器,
其它的主机机器中的每个主机机器被指定为用于所述动态路由协议控制平面的备用机器,以及
当所述特定主机机器崩溃时,所述备用机器中指定的备用机器作为活动机器操作所述动态路由协议控制平面。
19.一种电子设备,包括:
一组处理单元;以及
机器可读介质,所述机器可读介质存储程序,所述程序当由所述处理单元中的至少一个处理单元执行时实现如权利要求1-12中任一项所述的方法。
20.一种用于配置逻辑路由器的系统,所述系统包括用于实现如权利要求1-12中任一项所述的方法的装置。
CN201680017516.4A 2015-04-04 2016-04-01 用于配置逻辑路由器的介质、设备、系统和方法 Active CN107534578B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202011020064.XA CN112152922B (zh) 2015-04-04 2016-04-01 用于配置逻辑路由器的介质、设备、系统和方法

Applications Claiming Priority (5)

Application Number Priority Date Filing Date Title
US201562143086P 2015-04-04 2015-04-04
US62/143,086 2015-04-04
US15/007,165 US10038628B2 (en) 2015-04-04 2016-01-26 Route server mode for dynamic routing between logical and physical networks
US15/007,165 2016-01-26
PCT/US2016/025689 WO2016164277A1 (en) 2015-04-04 2016-04-01 Route server mode for dynamic routing between logical and physical networks

Related Child Applications (1)

Application Number Title Priority Date Filing Date
CN202011020064.XA Division CN112152922B (zh) 2015-04-04 2016-04-01 用于配置逻辑路由器的介质、设备、系统和方法

Publications (2)

Publication Number Publication Date
CN107534578A CN107534578A (zh) 2018-01-02
CN107534578B true CN107534578B (zh) 2020-10-02

Family

ID=57017818

Family Applications (2)

Application Number Title Priority Date Filing Date
CN201680017516.4A Active CN107534578B (zh) 2015-04-04 2016-04-01 用于配置逻辑路由器的介质、设备、系统和方法
CN202011020064.XA Active CN112152922B (zh) 2015-04-04 2016-04-01 用于配置逻辑路由器的介质、设备、系统和方法

Family Applications After (1)

Application Number Title Priority Date Filing Date
CN202011020064.XA Active CN112152922B (zh) 2015-04-04 2016-04-01 用于配置逻辑路由器的介质、设备、系统和方法

Country Status (4)

Country Link
US (4) US10038628B2 (zh)
EP (2) EP3621249B1 (zh)
CN (2) CN107534578B (zh)
WO (1) WO2016164277A1 (zh)

Families Citing this family (74)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9607336B1 (en) * 2011-06-16 2017-03-28 Consumerinfo.Com, Inc. Providing credit inquiry alerts
US10348767B1 (en) * 2013-02-26 2019-07-09 Zentera Systems, Inc. Cloud over IP session layer network
US9225638B2 (en) 2013-05-09 2015-12-29 Vmware, Inc. Method and system for service switching using service tags
US9577845B2 (en) 2013-09-04 2017-02-21 Nicira, Inc. Multiple active L3 gateways for logical networks
US9419855B2 (en) 2014-03-14 2016-08-16 Nicira, Inc. Static routes for logical routers
US9590901B2 (en) 2014-03-14 2017-03-07 Nicira, Inc. Route advertisement by managed gateways
US9647883B2 (en) 2014-03-21 2017-05-09 Nicria, Inc. Multiple levels of logical routers
US9531590B2 (en) 2014-09-30 2016-12-27 Nicira, Inc. Load balancing across a group of load balancers
US9774537B2 (en) 2014-09-30 2017-09-26 Nicira, Inc. Dynamically adjusting load balancing
US10225137B2 (en) 2014-09-30 2019-03-05 Nicira, Inc. Service node selection by an inline service switch
US10079779B2 (en) 2015-01-30 2018-09-18 Nicira, Inc. Implementing logical router uplinks
US10609091B2 (en) 2015-04-03 2020-03-31 Nicira, Inc. Method, apparatus, and system for implementing a content switch
US10038628B2 (en) * 2015-04-04 2018-07-31 Nicira, Inc. Route server mode for dynamic routing between logical and physical networks
US9787575B2 (en) * 2015-05-28 2017-10-10 Arista Networks, Inc. Method and system for programming equal-cost multi-path routes on network devices
US9825851B2 (en) 2015-06-27 2017-11-21 Nicira, Inc. Distributing routing information in a multi-datacenter environment
US10505846B2 (en) * 2015-07-22 2019-12-10 Cisco Technology, Inc. Resilient segment routing service hunting with TCP session stickiness
US10230629B2 (en) 2015-08-11 2019-03-12 Nicira, Inc. Static route configuration for logical router
US10057157B2 (en) 2015-08-31 2018-08-21 Nicira, Inc. Automatically advertising NAT routes between logical routers
US10095535B2 (en) 2015-10-31 2018-10-09 Nicira, Inc. Static route types for logical routers
US10313271B2 (en) * 2016-03-16 2019-06-04 At&T Intellectual Property I, L.P. Providing and using a distributed forwarding service
US10333849B2 (en) 2016-04-28 2019-06-25 Nicira, Inc. Automatic configuration of logical routers on edge nodes
US10091161B2 (en) 2016-04-30 2018-10-02 Nicira, Inc. Assignment of router ID for logical routers
US10153973B2 (en) 2016-06-29 2018-12-11 Nicira, Inc. Installation of routing tables for logical router in route server mode
US10560320B2 (en) 2016-06-29 2020-02-11 Nicira, Inc. Ranking of gateways in cluster
US10454758B2 (en) 2016-08-31 2019-10-22 Nicira, Inc. Edge node cluster network redundancy and fast convergence using an underlay anycast VTEP IP
US10341236B2 (en) 2016-09-30 2019-07-02 Nicira, Inc. Anycast edge service gateways
US10237123B2 (en) 2016-12-21 2019-03-19 Nicira, Inc. Dynamic recovery from a split-brain failure in edge nodes
US10616045B2 (en) 2016-12-22 2020-04-07 Nicira, Inc. Migration of centralized routing components of logical router
CN111866064B (zh) * 2016-12-29 2021-12-28 华为技术有限公司 一种负载均衡的方法、装置和系统
US10797966B2 (en) 2017-10-29 2020-10-06 Nicira, Inc. Service operation chaining
US11012420B2 (en) 2017-11-15 2021-05-18 Nicira, Inc. Third-party service chaining using packet encapsulation in a flow-based forwarding element
FR3074388A1 (fr) * 2017-11-28 2019-05-31 Orange Procede d'etablissement automatique par un premier dispositif d'une session conforme a un protocole de routage dynamique avec un deuxieme dispositif
FR3074387A1 (fr) * 2017-11-28 2019-05-31 Orange Procede de configuration destine a etre mis en oeuvre dans un reseau utilisant un protocole de routage dynamique
CN109981455A (zh) * 2017-12-28 2019-07-05 中兴通讯股份有限公司 一种隧道实现方法及装置
US10797910B2 (en) 2018-01-26 2020-10-06 Nicira, Inc. Specifying and utilizing paths through a network
US10819685B2 (en) * 2018-03-02 2020-10-27 Futurewei Technologies, Inc. Lightweight secure autonomic control plane
US10728174B2 (en) 2018-03-27 2020-07-28 Nicira, Inc. Incorporating layer 2 service between two interfaces of gateway device
US10805192B2 (en) 2018-03-27 2020-10-13 Nicira, Inc. Detecting failure of layer 2 service using broadcast messages
FR3079987A1 (fr) * 2018-04-06 2019-10-11 Orange Procede de traitement d'une transaction entre un terminal source et un terminal destinataire, systeme de services bancaires, terminal et programme d'ordinateur correspondants.
US10812337B2 (en) 2018-06-15 2020-10-20 Vmware, Inc. Hierarchical API for a SDDC
US10942788B2 (en) 2018-06-15 2021-03-09 Vmware, Inc. Policy constraint framework for an sddc
CN110784403B (zh) * 2018-07-30 2022-07-15 中兴通讯股份有限公司 路径标识传输方法、装置和计算机可读存储介质
US11595250B2 (en) 2018-09-02 2023-02-28 Vmware, Inc. Service insertion at logical network gateway
US10944673B2 (en) 2018-09-02 2021-03-09 Vmware, Inc. Redirection of data messages at logical network gateway
CN116319541A (zh) * 2018-09-02 2023-06-23 Vm维尔股份有限公司 逻辑网关处的服务插入方法、设备和系统
CN111131044B (zh) * 2018-10-30 2021-10-22 华为技术有限公司 路由管理方法和装置
US10931560B2 (en) 2018-11-23 2021-02-23 Vmware, Inc. Using route type to determine routing protocol behavior
US10797998B2 (en) 2018-12-05 2020-10-06 Vmware, Inc. Route server for distributed routers using hierarchical routing protocol
US10938788B2 (en) 2018-12-12 2021-03-02 Vmware, Inc. Static routes for policy-based VPN
US11360796B2 (en) 2019-02-22 2022-06-14 Vmware, Inc. Distributed forwarding for performing service chain operations
JP7230729B2 (ja) * 2019-08-01 2023-03-01 日本電信電話株式会社 経路制御装置、経路制御方法、及びプログラム
US11095557B2 (en) * 2019-09-19 2021-08-17 Vmware, Inc. L3 underlay routing in a cloud environment using hybrid distributed logical router
US11153420B2 (en) 2019-10-18 2021-10-19 Arista Networks, Inc. Neighbor equivalence groups
US11283717B2 (en) 2019-10-30 2022-03-22 Vmware, Inc. Distributed fault tolerant service chain
US11140218B2 (en) 2019-10-30 2021-10-05 Vmware, Inc. Distributed service chain across multiple clouds
US11223494B2 (en) 2020-01-13 2022-01-11 Vmware, Inc. Service insertion for multicast traffic at boundary
US11411777B2 (en) 2020-01-14 2022-08-09 Vmware, Inc. Port mapping for bonded interfaces of ECMP group
CN117221214A (zh) * 2020-01-14 2023-12-12 Vm维尔股份有限公司 在物理和逻辑网络之间提供有状态服务的透明隔离区
US11153406B2 (en) 2020-01-20 2021-10-19 Vmware, Inc. Method of network performance visualization of service function chains
US11659061B2 (en) 2020-01-20 2023-05-23 Vmware, Inc. Method of adjusting service function chains to improve network performance
US11272042B2 (en) * 2020-01-21 2022-03-08 Cisco Technology, Inc. Methods and systems to track protocol and hardware resource state transitions
CN115380514B (zh) 2020-04-01 2024-03-01 威睿有限责任公司 为异构计算元件自动部署网络元件
US11870679B2 (en) 2020-04-06 2024-01-09 VMware LLC Primary datacenter for logical router
US11212356B2 (en) 2020-04-06 2021-12-28 Vmware, Inc. Providing services at the edge of a network using selected virtual tunnel interfaces
CN113726651B (zh) * 2020-05-25 2022-12-13 华为技术有限公司 一种路由管理方法、设备及系统
US11803408B2 (en) 2020-07-29 2023-10-31 Vmware, Inc. Distributed network plugin agents for container networking
US11863352B2 (en) 2020-07-30 2024-01-02 Vmware, Inc. Hierarchical networking for nested container clusters
US11734043B2 (en) 2020-12-15 2023-08-22 Vmware, Inc. Providing stateful services in a scalable manner for machines executing on host computers
US11611625B2 (en) 2020-12-15 2023-03-21 Vmware, Inc. Providing stateful services in a scalable manner for machines executing on host computers
US11606254B2 (en) 2021-06-11 2023-03-14 Vmware, Inc. Automatic configuring of VLAN and overlay logical switches for container secondary interfaces
CN114531393B (zh) * 2021-12-30 2023-11-28 百果园技术(新加坡)有限公司 分段路由策略下发方法、装置、设备及介质
US11902245B2 (en) 2022-01-14 2024-02-13 VMware LLC Per-namespace IP address management method for container networks
US11848910B1 (en) 2022-11-11 2023-12-19 Vmware, Inc. Assigning stateful pods fixed IP addresses depending on unique pod identity
US11831511B1 (en) 2023-01-17 2023-11-28 Vmware, Inc. Enforcing network policies in heterogeneous systems

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6754220B1 (en) * 1999-05-31 2004-06-22 International Business Machines Corporation System and method for dynamically assigning routers to hosts through a mediator
CN101442442A (zh) * 2008-12-17 2009-05-27 华为技术有限公司 管理装置、控制装置、管理控制装置及路由器系统

Family Cites Families (287)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US3014278A (en) 1959-08-21 1961-12-26 We Mar Inc Dental handpiece
JPH06501118A (ja) 1990-09-17 1994-01-27 ケーブルトロン・システムス・インコーポレーテッド モデル準拠のインテリジェンスを使用するネットワーク管理システム
US5742760A (en) 1992-05-12 1998-04-21 Compaq Computer Corporation Network packet switch using shared memory for repeating and bridging packets at media rate
SE9402059D0 (sv) 1994-06-13 1994-06-13 Ellemtel Utvecklings Ab Sätt och anordning vid telekommunikation
US5751967A (en) 1994-07-25 1998-05-12 Bay Networks Group, Inc. Method and apparatus for automatically configuring a network device to support a virtual network
US5550816A (en) 1994-12-29 1996-08-27 Storage Technology Corporation Method and apparatus for virtual switching
US6035105A (en) 1996-01-02 2000-03-07 Cisco Technology, Inc. Multiple VLAN architecture system
US6108304A (en) 1996-03-08 2000-08-22 Abe; Hajime Packet switching network, packet switching equipment, and network management equipment
JPH09307587A (ja) 1996-05-09 1997-11-28 Fujitsu Ltd 交換機
US6456624B1 (en) 1997-10-29 2002-09-24 Enterasys Networks, Inc. Network address resolve blocker
JP3609256B2 (ja) 1998-05-19 2005-01-12 株式会社日立製作所 ネットワーク管理装置,ノード装置及びネットワーク管理システム
US6424659B2 (en) 1998-07-17 2002-07-23 Network Equipment Technologies, Inc. Multi-layer switching apparatus and method
US6584102B1 (en) 1998-12-21 2003-06-24 At&T Corp. Communication network apparatus and method
US6950428B1 (en) 1998-12-30 2005-09-27 Hewlett-Packard Development Company, L.P. System and method for configuring adaptive sets of links between routers in a system area network (SAN)
US6963585B1 (en) 1999-10-21 2005-11-08 International Business Machines Corporation Method and system for establishing a virtual path capability in a frame relay network
US6680934B1 (en) 1999-12-02 2004-01-20 Nortel Networks Limited System, device and method for expediting control flow in a communication system
US20020095498A1 (en) 2000-06-05 2002-07-18 Accordion Networks Network architecture for multi-client units
US20020093952A1 (en) 2000-06-30 2002-07-18 Gonda Rumi Sheryar Method for managing circuits in a multistage cross connect
US7389358B1 (en) 2000-09-13 2008-06-17 Fortinet, Inc. Distributed virtual system to support managed, network-based services
WO2002061599A1 (en) 2001-01-25 2002-08-08 Crescent Networks, Inc. Extension of address resolution protocol (arp) for internet protocol (ip) virtual networks
US6999454B1 (en) 2001-02-09 2006-02-14 Nortel Networks Limited Information routing system and apparatus
US6785843B1 (en) 2001-02-23 2004-08-31 Mcrae Andrew Data plane restart without state change in a control plane of an intermediate network node
US7069337B2 (en) 2001-03-20 2006-06-27 Mci, Inc. Policy-based synchronization of per-class resources between routers in a data network
US7209439B2 (en) 2001-03-20 2007-04-24 Mci, Llc Pool-based resource management in a data network
US7102996B1 (en) 2001-05-24 2006-09-05 F5 Networks, Inc. Method and system for scaling network traffic managers
US7483411B2 (en) 2001-06-04 2009-01-27 Nec Corporation Apparatus for public access mobility LAN and method of operation thereof
US7126944B2 (en) 2001-07-05 2006-10-24 Intel Corporation Routing packets across multiple forwarding elements
JP2003069609A (ja) 2001-08-23 2003-03-07 Fujitsu Ltd 仮想私設網サービスを提供するシステム
JP3879471B2 (ja) 2001-10-10 2007-02-14 株式会社日立製作所 計算機資源割当方法
US7200144B2 (en) 2001-10-18 2007-04-03 Qlogic, Corp. Router and methods using network addresses for virtualization
US7133365B2 (en) 2001-11-02 2006-11-07 Internap Network Services Corporation System and method to provide routing control of information over networks
US7616552B2 (en) 2002-02-18 2009-11-10 Koninklijke Philips Electronics, N.V. Phase-change optical recording medium having first and second track pitches
US7801155B2 (en) 2002-03-01 2010-09-21 Verizon Business Global Llc Resource allocation in virtual routers
US6941487B1 (en) 2002-03-07 2005-09-06 Riverstone Networks, Inc. Method, system, and computer program product for providing failure protection in a network node
JP3904968B2 (ja) 2002-04-19 2007-04-11 日本電信電話株式会社 Vpnシステムおよびルータ
US7197572B2 (en) 2002-05-06 2007-03-27 Qlogic, Corporation System and method for implementing logical switches in a network system
US6907039B2 (en) 2002-07-20 2005-06-14 Redback Networks Inc. Method and apparatus for routing and forwarding between virtual routers within a single network element
US7152179B1 (en) 2002-09-19 2006-12-19 Cisco Technology, Inc. IP redundancy with improved failover notification
US20040073659A1 (en) 2002-10-15 2004-04-15 Carl Rajsic Method and apparatus for managing nodes in a network
US20040098505A1 (en) 2002-11-20 2004-05-20 Clemmensen Daniel G. Forwarding system with multiple logical sub-system functionality
US7224668B1 (en) 2002-11-27 2007-05-29 Cisco Technology, Inc. Control plane security and traffic flow management
JP4157409B2 (ja) 2003-03-31 2008-10-01 富士通株式会社 仮想パス構築装置および仮想パス構築方法
US7283473B2 (en) 2003-04-10 2007-10-16 International Business Machines Corporation Apparatus, system and method for providing multiple logical channel adapters within a single physical channel adapter in a system area network
US7792987B1 (en) 2003-04-21 2010-09-07 Juniper Networks, Inc. Supporting virtual private networks using a first network topology for forwarding and a subset of the first network topology or a smaller topology for signaling
EP1625489A2 (en) 2003-04-21 2006-02-15 Netcell Corp. Disk array controller with reconfigurable data path
US7710874B2 (en) 2003-06-04 2010-05-04 International Business Machines Corporation System and method for automatic management of many computer data processing system pipes
JP4278445B2 (ja) 2003-06-18 2009-06-17 株式会社日立製作所 ネットワークシステム及びスイッチ
US7356818B2 (en) 2003-06-24 2008-04-08 International Business Machines Corporation Virtual machine communicating to external device without going through other virtual machines by using a list of IP addresses managed only by a single virtual machine monitor
US7463579B2 (en) 2003-07-11 2008-12-09 Nortel Networks Limited Routed split multilink trunking
US20050018669A1 (en) 2003-07-25 2005-01-27 International Business Machines Corporation Infiniband subnet management queue pair emulation for multiple logical ports on a single physical port
US7697527B2 (en) 2003-07-30 2010-04-13 Nortel Networks Limited Method and apparatus for direct frame switching using frame contained destination information
US8776050B2 (en) 2003-08-20 2014-07-08 Oracle International Corporation Distributed virtual machine monitor for managing multiple virtual resources across multiple physical nodes
US7366181B2 (en) 2003-09-06 2008-04-29 Fujitsu Limited Virtual private network (VPN) with channelized ethernet over sonet (EoS) interface and method
US7342916B2 (en) 2003-09-10 2008-03-11 Intel Corporation Method, apparatus and system for optimizing routing of mobile IP packets
US20050074003A1 (en) * 2003-10-02 2005-04-07 Ball David Alexander Distributed software architecture for implementing BGP
EP1678617A4 (en) 2003-10-08 2008-03-26 Unisys Corp COMPUTER SYSTEM PARAVIRTUALIZATION BY USING A HYPERVISOR IMPLEMENTED IN A PARTITION OF THE HOST SYSTEM
EP1673683A4 (en) 2003-10-14 2010-06-02 Raptor Networks Technology Inc MEDIATION SYSTEM WITH DISTRIBUTED COUPLING FIELD
US8009556B2 (en) 2003-10-17 2011-08-30 Ip Infusion, Inc. System and method for providing redundant routing capabilities for a network node
US7555002B2 (en) 2003-11-06 2009-06-30 International Business Machines Corporation Infiniband general services queue pair virtualization for multiple logical ports on a single physical port
US8146148B2 (en) 2003-11-19 2012-03-27 Cisco Technology, Inc. Tunneled security groups
US8095640B2 (en) 2003-12-12 2012-01-10 Alcatel Lucent Distributed architecture for real-time flow measurement at the network domain level
US7450598B2 (en) 2003-12-15 2008-11-11 At&T Intellectual Property I, L.P. System and method to provision MPLS/VPN network
US7478173B1 (en) 2003-12-18 2009-01-13 Wmware, Inc. Method and system for sharing a network connection in a virtual computer system
US7391771B2 (en) 2004-01-23 2008-06-24 Metro Packet Systems Inc. Method of sending information through a tree and ring topology of a network system
EP1745631A1 (en) 2004-05-12 2007-01-24 Alcatel Automated containment of network intruder
US8422500B2 (en) 2004-07-02 2013-04-16 Rockstar Consortium Us Lp VLAN support of differentiated services
US7787360B2 (en) 2004-07-23 2010-08-31 Cisco Technology, Inc. System and method for preserving multicast data forwarding during control failures in a router
DE602004011928T2 (de) 2004-08-02 2009-02-12 Alcatel Lucent Verfahren zur Steuerung einer gemeinsamen genutzten Ressource durch verschiedene Manager
US7706302B2 (en) 2004-09-14 2010-04-27 Alcatel Lucent Optimization of routing forwarding database in a network processor
US20060069782A1 (en) 2004-09-16 2006-03-30 Michael Manning Method and apparatus for location-based white lists in a telecommunications network
US7450498B2 (en) 2004-10-27 2008-11-11 Morgan Stanley Fault tolerant network architecture
GB2419703A (en) 2004-10-29 2006-05-03 Hewlett Packard Development Co Isolated virtual overlay infrastructures each having an interface to control interaction with others
US9014181B2 (en) 2004-11-01 2015-04-21 Alcatel Lucent Softrouter separate control network
US8068408B2 (en) 2004-11-01 2011-11-29 Alcatel Lucent Softrouter protocol disaggregation
US8458467B2 (en) 2005-06-21 2013-06-04 Cisco Technology, Inc. Method and apparatus for adaptive application message payload content transformation in a network infrastructure element
EP1829295B1 (en) 2004-12-21 2009-09-23 TELEFONAKTIEBOLAGET LM ERICSSON (publ) An arrangement and a method relating to flow of packets in communication systems
US20080049621A1 (en) 2004-12-31 2008-02-28 Mcguire Alan Connection-Oriented Communications Scheme For Connection-Less Communications Traffic
JP4733399B2 (ja) 2005-01-28 2011-07-27 株式会社日立製作所 計算機システム、計算機、ストレージ装置及び管理端末
US7428220B1 (en) 2005-02-10 2008-09-23 Sun Microsystems, Inc. Method and apparatus for data aggregation in a distributed system
US8254285B2 (en) 2005-02-25 2012-08-28 Ip Infusion, Inc. Hardware abstraction layer
US7990888B2 (en) 2005-03-04 2011-08-02 Cisco Technology, Inc. System and methods for network reachability detection
US7936770B1 (en) 2005-03-08 2011-05-03 Enterasys Networks, Inc. Method and apparatus of virtual class of service and logical queue representation through network traffic distribution over multiple port interfaces
WO2006099296A2 (en) 2005-03-10 2006-09-21 Nexthop Technologies, Inc. Flexible, scalable, wireless data forwarding and mobility for secure wireless networks
FR2883437B1 (fr) 2005-03-16 2007-08-03 Wavestorm Sarl Dispositif et procede de communication dans un reseau
US7715312B2 (en) 2005-04-25 2010-05-11 Verizon Services Corp. Methods and systems for maintaining quality of service (QOS) levels for data transmissions
US7802000B1 (en) 2005-08-01 2010-09-21 Vmware Virtual network in server farm
US8149737B2 (en) 2005-08-09 2012-04-03 Motorola Solutions, Inc. Method and system for data transmission in a wireless network
CN100558051C (zh) 2005-08-10 2009-11-04 华为技术有限公司 对双向转发链路进行故障检测的方法
US8799431B2 (en) 2005-08-15 2014-08-05 Toutvirtual Inc. Virtual systems management
JP2007135109A (ja) 2005-11-11 2007-05-31 Hitachi Ltd 仮想ネットワーク管理方法、仮想ネットワーク管理プログラム、仮想ネットワーク管理システムおよび仮想ネットワーク管理手段
US20070140235A1 (en) 2005-12-21 2007-06-21 Nortel Networks Limited Network visible inter-logical router links
US8762507B1 (en) 2005-12-23 2014-06-24 Hewlett-Packard Development Company, L.P. Method and system for managing an information technology system
US7647426B2 (en) 2006-01-12 2010-01-12 Cisco Technology, Inc. Method and apparatus for achieving Border Gateway Protocol convergence using alternate route information
US7519734B1 (en) 2006-03-14 2009-04-14 Amazon Technologies, Inc. System and method for routing service requests
US8619771B2 (en) 2009-09-30 2013-12-31 Vmware, Inc. Private allocated networks over shared communications infrastructure
US8838756B2 (en) 2009-07-27 2014-09-16 Vmware, Inc. Management and implementation of enclosed local networks in a virtual lab
US7839847B2 (en) 2006-05-08 2010-11-23 Cisco Technology, Inc. Methods and apparatus providing VPN traffic matrix construction
US7953089B1 (en) 2006-05-16 2011-05-31 Cisco Technology, Inc. Systems and methods for multicast switching in a private VLAN
US8060875B1 (en) 2006-05-26 2011-11-15 Vmware, Inc. System and method for multiple virtual teams
JP4714081B2 (ja) 2006-06-01 2011-06-29 アラクサラネットワークス株式会社 ネットワーク接続装置
US7706303B2 (en) 2006-06-26 2010-04-27 Cisco Technology, Inc. Port pooling
US7643482B2 (en) 2006-06-30 2010-01-05 Sun Microsystems, Inc. System and method for virtual switching in a host
US7916682B2 (en) 2006-07-14 2011-03-29 Symbol Technologies, Inc. Wireless switch network architecture implementing layer 3 mobility domains
US7580417B2 (en) 2006-08-07 2009-08-25 Cisco Technology, Inc. Method and apparatus for load balancing over virtual network links
US20080059556A1 (en) 2006-08-31 2008-03-06 Egenera, Inc. Providing virtual machine technology as an embedded layer within a processing platform
US7643488B2 (en) 2006-09-29 2010-01-05 Nortel Networks Limited Method and apparatus for supporting multiple customer provisioned IPSec VPNs
US7996835B2 (en) 2006-10-10 2011-08-09 International Business Machines Corporation System, method and program for managing communication with multiple configurations for virtual machine
JP5244332B2 (ja) 2006-10-30 2013-07-24 株式会社日立製作所 情報システム、データ転送方法及びデータ保護方法
US7826482B1 (en) 2006-11-17 2010-11-02 Juniper Networks, Inc. Service-specific forwarding in an LDP-RSVP hybrid network
US7761612B2 (en) 2006-12-07 2010-07-20 International Business Machines Corporation Migrating domains from one physical data processing system to another
US8223668B2 (en) 2006-12-14 2012-07-17 Rockstar Bidco Lp Method and apparatus for exchanging routing information and the establishment of connectivity across multiple network areas
US7738457B2 (en) 2006-12-20 2010-06-15 Oracle America, Inc. Method and system for virtual routing using containers
CN100579072C (zh) 2006-12-22 2010-01-06 华为技术有限公司 一种在ip设备之间进行通信的方法和系统
US20080159301A1 (en) 2006-12-29 2008-07-03 De Heer Arjan Arie Enabling virtual private local area network services
US20080189769A1 (en) 2007-02-01 2008-08-07 Martin Casado Secure network switching infrastructure
WO2008093174A1 (en) 2007-02-02 2008-08-07 Groupe Des Ecoles Des Telecommuinications (Get) Institut National Des Telecommunications (Int) Autonomic network node system
US7796594B2 (en) 2007-02-14 2010-09-14 Marvell Semiconductor, Inc. Logical bridging system and method
US8050267B2 (en) 2007-02-19 2011-11-01 Cisco Technology, Inc. Simple virtual private network for small local area networks
CN101018159A (zh) 2007-03-12 2007-08-15 杭州华为三康技术有限公司 多网关环境下负载均衡的方法及dhcp服务器
US8055789B2 (en) 2007-03-27 2011-11-08 Amazon Technologies, Inc. Configuring intercommunications between computing nodes
US8111707B2 (en) 2007-12-20 2012-02-07 Packeteer, Inc. Compression mechanisms for control plane—data plane processing architectures
US8594085B2 (en) 2007-04-11 2013-11-26 Palo Alto Networks, Inc. L2/L3 multi-mode switch including policy processing
US8868626B2 (en) 2007-04-12 2014-10-21 Rutgers, The State University Of New Jersey System and method for controlling a file system
US20080259797A1 (en) 2007-04-18 2008-10-23 Aladdin Knowledge Systems Ltd. Load-Balancing Bridge Cluster For Network Nodes
US7903655B2 (en) 2007-04-19 2011-03-08 Hewlett-Packard Development Company, L.P. Marked packet forwarding
US7948874B2 (en) 2007-05-24 2011-05-24 World Wide Packets, Inc. Transitioning a virtual interface from one tunnel to another tunnel
US8547844B2 (en) 2007-07-10 2013-10-01 Telefonaktiebolaget L M Ericsson (Publ) System and method for balancing IP gateway services
US8031633B2 (en) 2007-08-13 2011-10-04 Honeywell International Inc. Virtual network architecture for space data processing
US8798056B2 (en) 2007-09-24 2014-08-05 Intel Corporation Method and system for virtual port communications
EP2201474B1 (en) 2007-10-03 2020-05-06 NTT Global Networks Incorporated Virtualized application acceleration infrastructure
US8848544B2 (en) 2007-11-08 2014-09-30 Cisco Technology, Inc. Event correlation using network data flow simulation over unmanaged network segments
US7984123B2 (en) 2007-12-10 2011-07-19 Oracle America, Inc. Method and system for reconfiguring a virtual network path
US8014278B1 (en) 2007-12-17 2011-09-06 Force 10 Networks, Inc Adaptive load balancing between ECMP or LAG port group members
US8199750B1 (en) 2007-12-18 2012-06-12 World Wide Packets, Inc. Communicating with a control plane using a forwarding information format and control plane processing of packets devoid of a virtual switch identifier
US8194674B1 (en) 2007-12-20 2012-06-05 Quest Software, Inc. System and method for aggregating communications and for translating between overlapping internal network addresses and unique external network addresses
US9432213B2 (en) 2007-12-31 2016-08-30 Rpx Clearinghouse Llc IP forwarding across a link state protocol controlled ethernet network
US8489750B2 (en) 2008-02-28 2013-07-16 Level 3 Communications, Llc Load-balancing cluster
GB2458157B (en) 2008-03-07 2012-04-25 Hewlett Packard Development Co Virtual machine liveness check
GB2459433B (en) 2008-03-07 2012-06-06 Hewlett Packard Development Co Distributed network connection policy management
GB2458154B (en) 2008-03-07 2012-06-27 Hewlett Packard Development Co Routing across a virtual network
US8155028B2 (en) 2008-03-17 2012-04-10 Alcatel Lucent Method and apparatus for providing full logical connectivity in MPLS networks
EP2253124B1 (en) 2008-03-20 2016-03-16 Telefonaktiebolaget LM Ericsson (publ) Method and apparatus for communication of data packets between local networks
US8146147B2 (en) 2008-03-27 2012-03-27 Juniper Networks, Inc. Combined firewalls
US8429739B2 (en) 2008-03-31 2013-04-23 Amazon Technologies, Inc. Authorizing communications between computing nodes
US20110032843A1 (en) 2008-04-10 2011-02-10 Oktavian Papp Setting up a virtual private network using virtual lan identifiers
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
US8195774B2 (en) 2008-05-23 2012-06-05 Vmware, Inc. Distributed virtual switch for virtualized computer systems
US8849971B2 (en) 2008-05-28 2014-09-30 Red Hat, Inc. Load balancing in cloud-based networks
US8503305B2 (en) 2008-06-03 2013-08-06 Tejas Israel Ltd Automatic signaling method and device for telecommunication services
US8160063B2 (en) 2008-06-09 2012-04-17 Microsoft Corporation Data center interconnect and traffic engineering
JP5074327B2 (ja) 2008-08-21 2012-11-14 株式会社日立製作所 経路制御システム
US7885276B1 (en) 2008-09-30 2011-02-08 Emc Corporation Isolating network traffic in multi-tenant virtualization environments
US9762537B1 (en) 2008-10-14 2017-09-12 Juniper Networks, Inc. Secure path selection within computer networks
US7962647B2 (en) 2008-11-24 2011-06-14 Vmware, Inc. Application delivery control module for virtual network switch
US8055770B2 (en) 2008-12-15 2011-11-08 At&T Intellectual Property I, L.P. Method and apparatus for providing network virtualization
US8271775B2 (en) 2008-12-17 2012-09-18 Cisco Technology, Inc. Layer two encryption for data center interconnectivity
WO2010071882A2 (en) 2008-12-19 2010-06-24 Watchguard Technologies, Inc. Cluster architecture for network security processing
US8255496B2 (en) 2008-12-30 2012-08-28 Juniper Networks, Inc. Method and apparatus for determining a network topology during network provisioning
US8331362B2 (en) 2008-12-30 2012-12-11 Juniper Networks, Inc. Methods and apparatus for distributed dynamic network provisioning
US8054832B1 (en) 2008-12-30 2011-11-08 Juniper Networks, Inc. Methods and apparatus for routing between virtual resources based on a routing location policy
US7995483B1 (en) 2009-01-20 2011-08-09 Juniper Networks, Inc. Simultaneously testing connectivity to multiple remote maintenance endpoints of the same maintenance association
US20100192225A1 (en) 2009-01-28 2010-07-29 Juniper Networks, Inc. Efficient application identification with network devices
US7948986B1 (en) 2009-02-02 2011-05-24 Juniper Networks, Inc. Applying services within MPLS networks
EP3544231A1 (en) 2009-02-19 2019-09-25 Huawei Technologies Co., Ltd. System and method for point to multipoint inter-domain multiprotocol label switching traffic engineering path calculation
US8213336B2 (en) 2009-02-23 2012-07-03 Cisco Technology, Inc. Distributed data center access switch
EP2408155A4 (en) 2009-03-09 2015-01-28 Nec Corp OPENFLOW COMMUNICATION SYSTEM AND OPENFLOW COMMUNICATION METHOD
US8265075B2 (en) 2009-03-16 2012-09-11 International Business Machines Corporation Method and apparatus for managing, configuring, and controlling an I/O virtualization device through a network switch
WO2010108165A1 (en) 2009-03-20 2010-09-23 The Trustees Of Princeton University Systems and methods for network acceleration and efficient indexing for caching file systems
US8391303B2 (en) 2009-04-16 2013-03-05 Futurewei Technologies, Inc. Border gateway protocol (BGP) grouped route withdrawals
WO2010121216A1 (en) 2009-04-17 2010-10-21 Viasat, Inc. System, method and apparatus for providing end-to-end layer 2 connectivity
US8589919B2 (en) 2009-04-28 2013-11-19 Cisco Technology, Inc. Traffic forwarding for virtual machines
US8027354B1 (en) 2009-04-29 2011-09-27 Cisco Technology, Inc. Network consolidation for virtualized servers
US8867349B2 (en) 2009-05-18 2014-10-21 Cisco Technology, Inc. Regulation of network traffic in virtual private networks
US20100318609A1 (en) 2009-06-15 2010-12-16 Microsoft Corporation Bridging enterprise networks into cloud
US9210065B2 (en) 2009-06-22 2015-12-08 Alcatel Lucent Providing cloud-based services using dynamic network virtualization
US8644188B1 (en) 2009-06-25 2014-02-04 Amazon Technologies, Inc. Providing virtual networking functionality for managed computer networks
US8904028B2 (en) 2009-07-17 2014-12-02 Intel Corporation Scalable cluster router
US20110032830A1 (en) 2009-08-06 2011-02-10 Jacobus Van Der Merwe Live Router Migration
US8339994B2 (en) 2009-08-27 2012-12-25 Brocade Communications Systems, Inc. Defining an optimal topology for a group of logical switches
US8218454B2 (en) 2009-09-21 2012-07-10 At&T Intellectual Property I, L.P. Methods and apparatus to implement scalable routing in network communication systems
US8619779B2 (en) 2009-09-30 2013-12-31 Alcatel Lucent Scalable architecture for enterprise extension in a cloud topology
US8599864B2 (en) 2009-10-08 2013-12-03 Brocade Communications Systems, Inc. Transit switches in a network of logical switches
US20110085557A1 (en) 2009-10-08 2011-04-14 Brocade Communications Systems, Inc. Partitioning of Switches and Fabrics into Logical Switches and Fabrics
EP2497234B1 (en) 2009-11-02 2018-09-19 Marvell World Trade Ltd. Network device and method based on virtual interfaces
JP5392034B2 (ja) 2009-12-01 2014-01-22 富士通株式会社 通信装置および通信方法
US7937438B1 (en) 2009-12-07 2011-05-03 Amazon Technologies, Inc. Using virtual networking devices to manage external connections
US20110134931A1 (en) 2009-12-08 2011-06-09 Jacobus Van Der Merwe Virtual router migration
US8705513B2 (en) 2009-12-15 2014-04-22 At&T Intellectual Property I, L.P. Methods and apparatus to communicatively couple virtual private networks to virtual machines within distributive computing networks
US7991859B1 (en) 2009-12-28 2011-08-02 Amazon Technologies, Inc. Using virtual networking devices to connect managed computer networks
US8224971B1 (en) 2009-12-28 2012-07-17 Amazon Technologies, Inc. Using virtual networking devices and routing information to initiate external actions
US7953865B1 (en) 2009-12-28 2011-05-31 Amazon Technologies, Inc. Using virtual networking devices to manage routing communications between connected computer networks
US8612627B1 (en) 2010-03-03 2013-12-17 Amazon Technologies, Inc. Managing encoded multi-part communications for provided computer networks
US8259571B1 (en) 2010-03-26 2012-09-04 Zscaler, Inc. Handling overlapping IP addresses in multi-tenant architecture
US8224931B1 (en) 2010-03-31 2012-07-17 Amazon Technologies, Inc. Managing use of intermediate destination computing nodes for provided computer networks
CN102215158B (zh) 2010-04-08 2015-04-15 杭州华三通信技术有限公司 实现vrrp流量传输的方法和路由设备
JP5519387B2 (ja) 2010-04-22 2014-06-11 富士通株式会社 伝送装置、伝送プログラム及び伝送方法
US8345692B2 (en) 2010-04-27 2013-01-01 Cisco Technology, Inc. Virtual switching overlay for cloud computing
US8504718B2 (en) 2010-04-28 2013-08-06 Futurewei Technologies, Inc. System and method for a context layer switch
US8989186B2 (en) 2010-06-08 2015-03-24 Brocade Communication Systems, Inc. Virtual port grouping for virtual cluster switching
US8625616B2 (en) 2010-05-11 2014-01-07 Brocade Communications Systems, Inc. Converged network extension
US8407366B2 (en) 2010-05-14 2013-03-26 Microsoft Corporation Interconnecting members of a virtual network
CA2781060C (en) 2010-05-28 2016-03-08 Huawei Technologies Co., Ltd. Virtual layer 2 and mechanism to make it scalable
US8374183B2 (en) 2010-06-22 2013-02-12 Microsoft Corporation Distributed virtual network gateways
US8902743B2 (en) 2010-06-28 2014-12-02 Microsoft Corporation Distributed and scalable network address translation
CN103270736B (zh) 2010-06-29 2016-08-10 华为技术有限公司 一种网络设备
CN102971992B (zh) 2010-06-29 2016-03-09 华为技术有限公司 虚拟专用局域网设备、网络组件和数据帧转发方法
US8239572B1 (en) 2010-06-30 2012-08-07 Amazon Technologies, Inc. Custom routing decisions
US9680750B2 (en) * 2010-07-06 2017-06-13 Nicira, Inc. Use of tunnels to hide network addresses
US8456984B2 (en) 2010-07-19 2013-06-04 Ciena Corporation Virtualized shared protection capacity
US8363656B2 (en) 2010-09-15 2013-01-29 International Business Machines Corporation Multiple virtual machines sharing a single IP address
US8565108B1 (en) 2010-09-28 2013-10-22 Amazon Technologies, Inc. Network data transmission analysis
US8755283B2 (en) 2010-12-17 2014-06-17 Microsoft Corporation Synchronizing state among load balancer components
US20120182993A1 (en) 2011-01-14 2012-07-19 International Business Machines Corporation Hypervisor application of service tags in a virtual networking environment
US10142218B2 (en) 2011-01-14 2018-11-27 International Business Machines Corporation Hypervisor routing between networks in a virtual networking environment
US9019865B2 (en) 2011-03-04 2015-04-28 Juniper Networks, Inc. Advertising traffic engineering information with the border gateway protocol
US9015709B2 (en) 2011-03-08 2015-04-21 Rackspace Us, Inc. Hypervisor-agnostic method of configuring a virtual machine
US8665739B2 (en) 2011-03-16 2014-03-04 Juniper Networks, Inc. Packet loss measurement at service endpoints of a virtual private LAN service
EP2515507A1 (en) 2011-04-19 2012-10-24 Siemens Aktiengesellschaft Auto-configuration of network devices
CN103534987B (zh) 2011-06-07 2016-05-04 国际商业机器公司 用于配置虚拟网络配置的方法和系统
JP5824911B2 (ja) 2011-06-29 2015-12-02 富士通株式会社 情報処理装置、情報処理プログラムおよび管理方法
EP2740242B8 (en) 2011-08-04 2019-01-23 Mido Holdings Ltd. System and method for implementing and managing virtual networks
US9203703B2 (en) 2011-08-17 2015-12-01 Nicira, Inc. Packet conflict resolution
AU2012296329B2 (en) 2011-08-17 2015-08-27 Nicira, Inc. Logical L3 routing
AU2012296330B2 (en) 2011-08-17 2016-03-17 Nicira, Inc. Hierarchical controller clusters for interconnecting different logical domains
JP5836042B2 (ja) 2011-10-04 2015-12-24 株式会社日立製作所 管理サーバプログラム
US9154433B2 (en) 2011-10-25 2015-10-06 Nicira, Inc. Physical controller
US9015823B2 (en) * 2011-11-15 2015-04-21 Nicira, Inc. Firewalls in logical networks
US8750099B2 (en) 2011-12-16 2014-06-10 Cisco Technology, Inc. Method for providing border gateway protocol fast convergence on autonomous system border routers
CN102594664B (zh) 2012-02-02 2015-06-17 杭州华三通信技术有限公司 流量转发方法和装置
US8660129B1 (en) 2012-02-02 2014-02-25 Cisco Technology, Inc. Fully distributed routing over a user-configured on-demand virtual network for infrastructure-as-a-service (IaaS) on hybrid cloud networks
US8892936B2 (en) 2012-03-20 2014-11-18 Symantec Corporation Cluster wide consistent detection of interconnect failures
US9154416B2 (en) 2012-03-22 2015-10-06 Brocade Communications Systems, Inc. Overlay tunnel in a fabric switch
US8856339B2 (en) 2012-04-04 2014-10-07 Cisco Technology, Inc. Automatically scaled network overlay with heuristic monitoring in a hybrid cloud environment
US8923149B2 (en) * 2012-04-09 2014-12-30 Futurewei Technologies, Inc. L3 gateway for VXLAN
EP2748993B1 (en) 2012-04-18 2015-09-02 Nicira Inc. Using transactions to compute and propagate network forwarding state
US20130305344A1 (en) 2012-05-14 2013-11-14 Alcatel-Lucent India Limited Enterprise network services over distributed clouds
US8953441B2 (en) 2012-06-06 2015-02-10 Juniper Networks, Inc. Re-routing network traffic after link failure
US9094308B2 (en) 2012-06-06 2015-07-28 Juniper Networks, Inc. Finding latency through a physical network in a virtualized network
US8972602B2 (en) 2012-06-15 2015-03-03 Citrix Systems, Inc. Systems and methods for using ECMP routes for traffic distribution
US8775599B2 (en) 2012-06-19 2014-07-08 Microsoft Corporation Multi-tenant middleware cloud service technology
US8997094B2 (en) 2012-06-29 2015-03-31 Pulse Secure, Llc Migrating virtual machines between computing devices
US9451056B2 (en) 2012-06-29 2016-09-20 Avaya Inc. Method for mapping packets to network virtualization instances
US9094459B2 (en) 2012-07-16 2015-07-28 International Business Machines Corporation Flow based overlay network
US9008085B2 (en) 2012-08-15 2015-04-14 International Business Machines Corporation Network interface card having overlay gateway functionality
EP2800303B1 (en) 2012-08-17 2015-11-04 Huawei Technologies Co., Ltd. Switch method, device and system for virtual application dual machine in cloud environment
US9270581B2 (en) 2012-08-24 2016-02-23 Centurylink Intellectual Property Llc Stability site for VPLS multi-homing
US9417922B2 (en) 2012-12-03 2016-08-16 Cutting Edge Consulting Associates, Inc. Systems and methods for protecting an identity in network communications
US9116727B2 (en) 2013-01-15 2015-08-25 Lenovo Enterprise Solutions (Singapore) Pte. Ltd. Scalable network overlay virtualization using conventional virtual switches
US20140229945A1 (en) 2013-02-12 2014-08-14 Contextream Ltd. Network control using software defined flow mapping and virtualized network functions
US9291357B1 (en) 2013-02-15 2016-03-22 EnTouch Controls Inc. Redundant and selectable gateway and control elements for remote connected thermostats
US9201837B2 (en) 2013-03-13 2015-12-01 Futurewei Technologies, Inc. Disaggregated server architecture for data centers
US9197551B2 (en) 2013-03-15 2015-11-24 International Business Machines Corporation Heterogeneous overlay network translation for domain unification
US9225636B2 (en) 2013-04-04 2015-12-29 Telefonaktiebolaget L M Ericsson (Publ) Method and apparatus for exchanging IP packets among network layer 2 peers
US9391906B2 (en) 2013-04-19 2016-07-12 International Business Machines Corporation Overlay network priority inheritance
US20140337517A1 (en) * 2013-05-08 2014-11-13 Connectloud Method and Apparatus To Enable Liquid Applications Roll Outs Across Data Centers and Clouds
CN103312605B (zh) 2013-05-29 2017-06-20 华为技术有限公司 一种网关设备身份设置的方法及管理网关设备
US9471356B2 (en) 2013-06-12 2016-10-18 Dell Products L.P. Systems and methods for providing VLAN-independent gateways in a network virtualization overlay implementation
US9325630B2 (en) 2013-07-05 2016-04-26 Red Hat, Inc. Wild card flows for switches and virtual switches based on hints from hypervisors
JP6008801B2 (ja) 2013-07-08 2016-10-19 株式会社日立製作所 伝送システム、送信方法、及び伝送装置
CN103441936B (zh) 2013-08-22 2017-02-22 华为技术有限公司 转发邻接链路的发布方法
US9577845B2 (en) 2013-09-04 2017-02-21 Nicira, Inc. Multiple active L3 gateways for logical networks
US9503371B2 (en) 2013-09-04 2016-11-22 Nicira, Inc. High availability L3 gateways for logical networks
CN103607432B (zh) 2013-10-30 2019-08-27 南京中兴软件有限责任公司 一种网络创建的方法和系统及网络控制中心
US9450852B1 (en) 2014-01-03 2016-09-20 Juniper Networks, Inc. Systems and methods for preventing split-brain scenarios in high-availability clusters
US9225597B2 (en) 2014-03-14 2015-12-29 Nicira, Inc. Managed gateways peering with external router to attract ingress packets
CN111478852B (zh) 2014-03-14 2022-05-24 Nicira股份有限公司 受管理网关的路由通告
US9590901B2 (en) 2014-03-14 2017-03-07 Nicira, Inc. Route advertisement by managed gateways
EP3624407B1 (en) 2014-03-21 2023-05-17 Nicira Inc. Dynamic routing for logical routers
US9503321B2 (en) 2014-03-21 2016-11-22 Nicira, Inc. Dynamic routing for logical routers
WO2015147942A1 (en) 2014-03-27 2015-10-01 Nicira, Inc. Ingress ecmp in virtual distributed routing environment
US9423956B2 (en) 2014-04-29 2016-08-23 Vmware, Inc. Emulating a stretched storage device using a shared storage device
US10019278B2 (en) 2014-06-22 2018-07-10 Cisco Technology, Inc. Framework for network technology agnostic multi-cloud elastic extension and isolation
US10924408B2 (en) 2014-11-07 2021-02-16 Noction, Inc. System and method for optimizing traffic in packet-switched networks with internet exchanges
US10491546B2 (en) 2015-02-25 2019-11-26 At&T Intellectual Property I, L.P. Provider edge router system and provider edge router system controller for hybrid virtualization of provider edge router functions
US10038628B2 (en) 2015-04-04 2018-07-31 Nicira, Inc. Route server mode for dynamic routing between logical and physical networks
KR101703088B1 (ko) 2015-04-10 2017-02-22 쿨클라우드(주) Sdn 기반의 통합 라우팅 방법 및 그 시스템
US10536357B2 (en) 2015-06-05 2020-01-14 Cisco Technology, Inc. Late data detection in data center
US9755958B2 (en) 2015-07-02 2017-09-05 Telefonaktiebolaget Lm Ericsson (Publ) Fast convergence in VRRP with multipoint bidirectional forwarding detection
US9948503B2 (en) 2015-10-23 2018-04-17 Hughes Network Systems, Llc Gateway redundancy protocol for communications networks
US9916214B2 (en) 2015-11-17 2018-03-13 International Business Machines Corporation Preventing split-brain scenario in a high-availability cluster
US10237142B2 (en) 2016-04-04 2019-03-19 Nicira, Inc. Troubleshooting virtual network reachability
CN109076006B (zh) 2016-04-13 2021-10-15 诺基亚技术有限公司 基于覆盖网络的多租户虚拟专用网络
US10333849B2 (en) 2016-04-28 2019-06-25 Nicira, Inc. Automatic configuration of logical routers on edge nodes
US10091161B2 (en) 2016-04-30 2018-10-02 Nicira, Inc. Assignment of router ID for logical routers
US10560320B2 (en) 2016-06-29 2020-02-11 Nicira, Inc. Ranking of gateways in cluster
US10237123B2 (en) 2016-12-21 2019-03-19 Nicira, Inc. Dynamic recovery from a split-brain failure in edge nodes
US10616045B2 (en) 2016-12-22 2020-04-07 Nicira, Inc. Migration of centralized routing components of logical router

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6754220B1 (en) * 1999-05-31 2004-06-22 International Business Machines Corporation System and method for dynamically assigning routers to hosts through a mediator
CN101442442A (zh) * 2008-12-17 2009-05-27 华为技术有限公司 管理装置、控制装置、管理控制装置及路由器系统

Also Published As

Publication number Publication date
US10038628B2 (en) 2018-07-31
US20180324088A1 (en) 2018-11-08
CN112152922A (zh) 2020-12-29
US20200274797A1 (en) 2020-08-27
CN112152922B (zh) 2022-08-16
CN107534578A (zh) 2018-01-02
EP3621249A1 (en) 2020-03-11
US20160294612A1 (en) 2016-10-06
US10652143B2 (en) 2020-05-12
EP3281367A1 (en) 2018-02-14
EP3621249B1 (en) 2020-12-30
US11601362B2 (en) 2023-03-07
EP3281367B1 (en) 2019-10-30
WO2016164277A1 (en) 2016-10-13
US20230208755A1 (en) 2023-06-29

Similar Documents

Publication Publication Date Title
CN107534578B (zh) 用于配置逻辑路由器的介质、设备、系统和方法
US11799800B2 (en) Logical router with multiple routing components
US10805212B2 (en) Static route configuration for logical router
US20220360530A1 (en) Installation of routing tables for logical router in route server mode
CN115442302B (zh) 具有多个路由部件的逻辑路由器
CN115442303B (zh) 具有多个路由部件的逻辑路由器
CN114726786A (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
GR01 Patent grant
GR01 Patent grant