CN105519080A - 用于在网络层2对等方之间交换ip分组的方法和装置 - Google Patents
用于在网络层2对等方之间交换ip分组的方法和装置 Download PDFInfo
- Publication number
- CN105519080A CN105519080A CN201480028298.5A CN201480028298A CN105519080A CN 105519080 A CN105519080 A CN 105519080A CN 201480028298 A CN201480028298 A CN 201480028298A CN 105519080 A CN105519080 A CN 105519080A
- Authority
- CN
- China
- Prior art keywords
- gateway
- physical address
- main frame
- subnet
- grouping
- 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.)
- Granted
Links
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L45/00—Routing or path finding of packets in data switching networks
- H04L45/66—Layer 2 routing, e.g. in Ethernet based MAN's
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/44—Arrangements for executing specific programs
- G06F9/455—Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
- G06F9/45533—Hypervisors; Virtual machine monitors
- G06F9/45558—Hypervisor-specific management and integration aspects
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L61/00—Network arrangements, protocols or services for addressing or naming
- H04L61/09—Mapping addresses
- H04L61/25—Mapping addresses of the same type
- H04L61/2596—Translation of addresses of the same type other than IP, e.g. translation from MAC to MAC addresses
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/44—Arrangements for executing specific programs
- G06F9/455—Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
- G06F9/45533—Hypervisors; Virtual machine monitors
- G06F9/45558—Hypervisor-specific management and integration aspects
- G06F2009/45595—Network integration; Enabling network access in virtual machine instances
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L61/00—Network arrangements, protocols or services for addressing or naming
- H04L61/09—Mapping addresses
- H04L61/10—Mapping addresses of different types
- H04L61/103—Mapping addresses of different types across network layers, e.g. resolution of network layer into physical layer addresses or address resolution protocol [ARP]
Abstract
在一个方面,这里的教导在并不使用任何中间路由功能的情况下、在属于基于云的虚拟网络环境中的相同租户的所有虚拟机(VM)之间提供点对点通信,并且同时在L2和L3层提供完全虚拟化。也就是说,该方法在L2和L3层针对每个租户保留完全隔离的地址空间并且针对每个租户支持多个子网,并且因此允许租户定义他们自己的虚拟网络,而并不像在属于该租户的VM之一中实施的基于软件的路由器的情况下所发生的那样,要求增加昂贵的集中路由而且要求针对相同租户的子网间通信遍历次优路径。此外,这里所教导的方法和装置针对属于相同虚拟或逻辑网络的子网之间的通信提供了分布式解决方案,因此避免了单一故障点的问题并且提供了改进的稳定性。
Description
技术领域
本发明总体上涉及数据网络,尤其涉及在这样的网络中的L2对等方之间交换IP分组。
背景技术
云计算的出现已经导致了大型数据中心的设计和构建,多个租户将曾经在私有企业网络中被主控(host)的复杂应用迁移至那里。针对这样的迁移而言最为重要的促成因素之一是系统虚拟化,其允许可能属于不同租户的多个服务器在相同的物理主机上被主控。包含于虚拟机或VM中的这些服务器能够在物理主机之间进行透明迁移而不会引起任何能够注意到的中断,这为云运营商提供了灵活性和弹性。为了使得该灵活性最大化,运营商应当能够在数据中心中的不同链路之间迁移VM而不被互连的拓扑所限制。
此外,租户通常会想要使用他们自己的寻址计划和范围来管理他们自己的网络,因此使得从他们的私人数字中心向云端中进行的迁移容易进行。任何网络虚拟化解决方案都应当在不同虚拟网络之间的寻址层提供隔离,同时仍然保持在属于相同租户的个体子网之间转发业务的能力。
大多数现有的网络虚拟化解决方案通过在物理网络的上部——层2(L2)或层3(L3)——创建覆盖而满足这些要求。诸如最短路径桥(SPB)和多链路透明互连(Trill)之类的L2解决方案将租户业务封装至外部的L2隧道之中(MAC报头加上附加的报头)。L2解决方案被限制于单个L2域,但是该域可能由于在交换机之间使用路由协议而不是依赖于学习和涌出(flood)来填充转发表而非常大。诸如VxLAN和使用通用路由封装的网络虚拟化(NVGRE)之类的L3解决方案使用基于IP的隧道。L3解决方案并不受到与基于L2的解决方案相关联的可扩展性限制的影响,但是它们由于更大的封装报头而带来了额外的开销。
虽然之前所提到的解决方案允许创建每个租户隔离的虚拟网络,但是这些网络是扁平的单个L2域,即一个IP子网。这样的解决方案并未解决租户将他们的虚拟网络细分为不同子网的需求以及在属于相同租户的不同虚拟子网之间进行路由的问题。
虚拟网络中的不同子网之间的路由可以使用位于数据中心内的L3网关处的虚拟网络路由器来处理。然而,该解决方案要求L3网关处的大量处理能力——在这种情况下保守估计达到通过该路由器的业务流的四倍。图1图示了VM之间使用L3网关路由的通信。
可以看到数据中心网络10具有L2交换机12以及处于L3网关层的L3路由器14。服务器16主控任意数量的VM,其中作为示例图示出VM1-VM4。VM1和VM4在通过相应的L2交换机12的一个子网通信中进行操作。对于VM2和VM3同样如此,它们在另一个子网中进行操作。然而,由于VM1和VM3之间的通信涉及到不同子网,所以VM1和VM3之间的通信经由相应的L3路由器14而通过L3网关进行路由。
图2图示了另一种已知方法,其涉及将某些VM指定为基于软件的路由器以及用于它们与之相连的虚拟网络子网的缺省网关。可以看到根据这样的配置而在服务器16之一中实施的软件路由器“R”。虽然该方法降低了成本,但是其也在网络中引入了瓶颈点,原因在于子网之间的业务受到被提供至单个VM的链路的限制。
发明内容
在一个方面,这里的教导在属于基于云的虚拟网络环境中的相同租户的所有虚拟机(VM)之间提供点对点通信,而不使用任何中间路由功能并且同时在L2和L3层提供完全虚拟化。也就是说,该方法在L2和L3层针对每个租户保留完全隔离的地址空间并且针对每个租户支持多个子网,并且因此允许租户定义他们自己的虚拟网络,而并不像在属于该租户的多个VM之一中实施的基于软件的路由器的情况下所发生的那样,要求增加昂贵的集中的路由并且要求针对相同租户的子网间通信遍历(traverse)次优路径。此外,这里所教导的方法和装置针对属于相同虚拟或逻辑网络的子网之间的通信提供了分布式解决方案,因此避免了单一故障点的问题并且提供了改进的稳定性。
在一个示例实施例中,一种在不同子网之间交换IP分组的方法包括从具有不同子网的逻辑网络的第一子网中的第一主机、例如第一VM接收IP分组,所述不同子网之间具有L2连接。该IP分组在该第一子网中的第一L2网关处被接收,并且该方法包括该网关确定该IP分组以相同逻辑网络中的第二子网中的第二主机为目标。
该方法进一步包括获得该第二子网中的第二L2网关的物理地址以及第二主机的物理地址,并且进一步包括在第一L2网关处对该IP分组进行修改以获得经修改的IP分组。分组修改包括将该IP分组中的源物理地址从该第一主机的物理地址改变为所获得的该第二L2网关的该物理地址,并且将目的地物理地址从该第一L2网关的物理地址改变为所获得的该第二主机的该物理地址。该方法继续在该L2网关处生成L2协议数据单元(PDU)并且在L2连接上发送该PDU以便在第二L2网关处进行接收。该PDU包括报头信息,该报头信息包括与该第一L2网关对应的源物理地址、与该第二L2网关对应的目的地物理地址、该逻辑网络的组织标识符(OID)、以及包括该经修改的IP分组的有效载荷。
在一种示例情形中,该第一主机和该第二主机是第一虚拟机(VM)和第二虚拟机(VM),该第一子网和该第二子网是第一虚拟子网和该第二虚拟子网,并且该逻辑网络包括虚拟网络,该虚拟网络包括该第一虚拟子网和该第二虚拟子网。进一步在该示例情形中,该第一L2网关在对该第一VM进行虚拟化并且在第一物理主机上运行的第一管理器中实施,并且该第二L2网关在对该第二VM进行虚拟化并且在第二物理主机上运行的第二管理器中实施。
在本文中,“管理器”是一种创建、运行并监管VM的计算机软件、固件和/或硬件,所述VM也可以被称作“客户机”。如本领域技术人员将会意识到的,该管理器在相同的硬件/软件资源的顶部对一个或多个VM或者客户机进行虚拟化,并且以对VM透明的方式管理在VM之间共享的资源。也就是说,每个VM表现为具有全部针对其自身的主机处理资源和存储器资源。
以上方法还可以包括在第二L2网关处执行的互补的接收侧操作。在一个示例中,该方法进一步包括在第二L2网关接收PDU,从该PDU中提取经修改的IP分组,并且根据经修改的IP分组中所包括的目的地物理地址将该经修改的IP分组转发至第二主机。有利地,该方法中针对第二L2网关的接收侧方面使用包括在该PDU中的OID来消除该经修改的IP分组中所包括的目的地物理地址的歧义。也就是说,该OID在一定意义上用作“租户标识符”以促进属于相同租户或组织的不同子网之间的子网间通信。
以上方法例如在L2网关中实施,该L2网关包括第一接口和第二接口以及与它们操作关联的处理电路。该第一接口被配置用于具有不同子网的逻辑网络中的第一子网中的数据通信,所述不同子网之间具有L2连接,并且该第二接口被配置用于经由该L2连接与该逻辑网络中的第二子网中的第二L2网关的数据通信。该处理电路例如基于存储在存储器或另一个计算机可读介质中的计算机程序指令的执行而被配置为实施以上所描述的示例方法的发送和/或接收侧。在至少一个实施例中,所预期的L2网关包括物理主机内的功能实体——即该L2网关在物理主机的处理和存储器资源内实现。
当然,本发明并不局限于以上特征和优势。实际上,本领域技术人员在阅读以下详细描述以及观看附图时将会意识到另外的特征和优势。
附图说明
图1和图2是已知网络拓扑以及不同子网之间基于层3(L3)的路由的示图;
图3是根据这里的教导的基于L2的子网间分组交换的一个实施例。
图4是逻辑网络和相应的L2连接的子网的一个实施例的框图。
图5是根据这里的教导实施具有L2网关的管理器的物理主机的一个实施例的框图。
图6A是L2网关处的处理的方法的一个实施例的逻辑流程图。
图6B是L2网关处的另外的处理的方法的一个实施例的逻辑流程图。
图7是用于在这里所教导的基于L2的分组交换的一些实施例中所使用的分布式目录服务的数据结构的示图。
具体实施方式
图3图示了整体网络20,其包括L2交换机12,处于L3网关层的L3交换机14,以及主控任意数量的虚拟机或VM18的多个服务器22。服务器22中的一个或多个服务器根据这里的教导进行配置,例如它们中的一个或多个实施管理器,该管理器包括这里作为示例进行描述的有利的L2网关实体。虽然这样的L2网关实体在图中并未明确示出,但是能够看到它们在处于相同逻辑网络的不同子网中的VM18之间提供了有效的通信交换。这样的通信在处于L2层的例如VM1和VM3之间流动,即使那些VM18在不同子网中进行操作。
该布置在图4中更容易看到,其提供了例如在基于云的系统中实施的虚拟网络的逻辑网络30的简化图示,该逻辑网络30针对潜在的大量的不同租户或组织提供网络虚拟化。逻辑网络30(此后称作“网络30”)包括在所图示的示例中被示为子网32-1、32-2和32-3的多个不同子网。不同子网32通过L2互连34相互连接,L2互连34实际上可以包括多个L2连接或链路,并且其可能涉及到多于一个的L2交换机。
图5提供了有关这里所给出的示例实施方式的更多细节以供讨论。在该图中看到第一和第二物理主机40-1和40-2。每个物理主机40可以被理解为是图3所示的服务器22之一。另外,每个物理主机40包括CPU42和存储器44,在其中可以实现多个功能处理实体或结构,包括物理主机操作系统(OS)46以及相关联的管理器48和L2网关50。每个物理主机40中的L2网关50包括处理电路52。当为了讨论的清楚而需要时,第一物理主机40-1中的L2网关50被称作L2网关50-1,而第二物理主机40-2中的L2网关50则被称作L2网关50-2。
当为了清楚而不需要后缀时并不使用它们,并且应当理解的是,无后缀的附图标记可以被用于这里的单数或复数指代,诸如单数情况下的“L2网关50”以及复数情况下的“多个L2网关50”等。另外,将要意识到的是,物理主机40内的这些和其它所图示的实体或组件在功能上是至少部分根据所存储的计算机程序指令而在相应的主机CPU42/存储器44(其可以宽泛地包含易失性和非易失性设备并且可以包括磁盘或其它存储装置)中实现的,上述计算机程序指令例如主机OS和更低级别的程序和例程,以及构成图中所示的主机54的另外的OS和/或另外的程序。
主机54包括在相应管理器48所提供的虚拟化环境中进行操作的VM或客户机。在所图示的示例中,物理主机40-1中的管理器48为多个主机54提供虚拟化,并且物理主机40-2中的管理器48则为多个其它主机54提供虚拟化。与在物理主机40-1中实现的主机54相比,在物理主机40-2中实现的主机54在不同子网中进行操作,但是出于这里讨论的目的,图5中所图示的所有主机54都被假设属于相同租户或组织。
为了便于讨论,物理主机40-1中的主机54之一被特别标示为主机54-1,并且同样地,物理主机40-2中的主机54之一被特别标示为主机54-2。这样的编号为引用针对在不同物理主机40中实现并且在相同逻辑网络30的不同子网32中进行操作的两个主机54的如这里所教导的通信提供了便利的基础。
图6A图示了在不同子网之间交换IP分组的方法600,并且例如经由与物理主机40-1中的管理器48相关联的L2网关50-1来实施。参考图6A以及图4和图5,方法600包括从具有不同子网32的逻辑网络30中的第一子网32-1中的第一主机54-1接收(框602)IP分组,上述不同子网32具有在它们之间的L2连接34。该IP分组在第一子网32-1中的第一L2网关50-1处被接收。
方法600进一步包括在第一L2网关50-1处确定(框604)该IP分组以相同逻辑网络30内的第二子网32-2中的第二主机54-2为目标,并且在第一L2网关50-1处获得(框606)用于第二子网32-2中的第二L2网关50-2的物理地址、以及用于第二主机54-2的物理地址。作为框606的处理的一个示例,目录服务查询被发送至目录服务器的IP地址。该地址通常针对云环境进行全局配置;然而,在数据中心(例如,用于租户集合的数据中心)中可能存在多个目录服务器。该查询参数是(VM2IP地址,租户ID)。响应参数是(VM2的物理位置,VM2的子网虚拟网关MAC地址,VM2MAC地址)。
相应地,方法600包括在第一L2网关50-1处对IP分组进行修改(框608)以获得经修改的IP分组,这包括将该IP分组中的源物理地址从第一主机54-1的物理地址变为所获得的用于第二L2网关50-2的物理地址,并且将目的地物理地址从第一L2网关50-1的物理地址变为所获得的用于第二主机54-2的物理地址。
此外,方法600包括在第一L2网关50-1处生成(框610)L2协议数据单元(PDU)。该PDU包括报头信息,该报头信息包括与第一L2网关50-1对应的源物理地址,与第二L2网关50-2对应的目的地物理地址,逻辑网络30的组织标识符(OID),以及包括经修改的IP分组的有效载荷。这样,方法600继续在L2连接34上从第一L2网关50-1发送该PDU以便在第二L2网关50-2处进行接收。
在一种示例情形中,在第一L2网关50-1处确定(框604)该IP分组以第二子网32-2中的第二主机54-2为目标包括检测该IP分组中所包括的目的地物理地址与针对第一L2网关50-1所定义的物理地址相匹配。就该意义而言,第一子网32-1中的主机54可以被配置为在一定意义上将第一L2网关50-1视为缺省网关并且在向不同子网32中的另一个主机54发送数据时使用针对该L2网关所保留的虚拟地址。
相应地,在该布置的至少一个示例中,L2网关50-1响应于从第一主机54-1接收到地址解析协议(ARP)请求而将其物理地址提供至第一主机54-1。特别地,第一L2网关50-1被配置为通过发送包括针对第一L2网关50-1所定义的物理地址的ARP回复而对该ARP请求作出响应。
以上有关方法600的任意示例都可以基于第一和第二主机54-1、54-2是第一和第二虚拟机(VM),其中第一和第二子网34-1、34-2是第一和第二虚拟子网,并且逻辑网络30包括虚拟网络,该虚拟网络包括该第一和第二虚拟子网32-1、32-2。另外,在该示例布置中,第一L2网关50-1在对第一VM进行虚拟化并且在第一物理主机40-1上运行的第一管理器48中实施,并且第二L2网关50-2则在对第二VM进行虚拟化并且在第二物理主机40-2上运行的第二管理器48中实施。
在方法600进一步的扩展或变化形式中,逻辑网络30的OID基于通过其从第一主机54-1接收到该IP分组的端口或连接来确定。如所提到的,在这里所预期的至少一些实施例中,该OID识别主控任意数量的租户的虚拟网络的基于云的环境中的给定租户,并且该OID在操作上、在属于相同租户但是在针对该租户在该云环境中被虚拟化的逻辑网络30的不同子网中进行操作的主机54之间进行有利的通信交换时被使用。
在框606中所给出的操作的示例中,如果本地化的目录表包括相应的条目,则第一L2网关50-1通过从该本地化的目录表中获得目录服务信息而获得用于第二L2网关50-2和第二主机54-2的物理地址,否则就通过发送包括从接收自第一主机54-1的该IP分组所获知的OID和第二主机54-2的IP地址的目录请求并且相应地接收指示用于第二L2网关50-2和第二主机54-2的物理地址的目录服务响应而获得上述物理地址。
图7图示了示例的目录表60,就以该表的不同部分可以由不同实体进行存储和维护的意义而言,该表被本地化。例如,与物理主机40-1中的管理器48相关联的第一L2网关50-1可以使用图7中所示的“P1L3表”,其中VMid=分组始发的VM的ID,Guest_dip=目的地VM的IP地址,Phys_daddr=目的地物理主机40的物理地址,smac=目的地L2网关50的物理地址,并且dmac=目的地VM54的物理地址。
在相同示例中,第二L2网关50-2可以使用“P2VM表”,其中TenantID=OID,Dmac=目的地VM54的物理地址,并且VMid=目的地VM54的ID。第二网格50-2可以进一步使用“P2L2表”,其中VMid=目的地VM54的ID,Smac=源(分组始发的)VM54的物理地址,并且MP1=第二物理主机40-2的物理地址。
当然,分布式目录表60的上述示例采用了从第一主机54-1向第二主机54-2发送IP分组的视角。针对其中第二主机54-2作为始发或源主机并且向第一主机54-1发送IP分组的情况可以形成/使用类似的条目。因此,在概括的实施例中,两个L2网关50-1和50-2都具有例如在图6A中所示出的发送功能,并且也都具有例如由图6B中另外的示例所示出的互补的接收功能。然而,为了与图6A中其中第一主机54-1发送IP分组以便传递至第二主机54-2的示例保持一致,图6B描述了在第二L2主机54-2处的接收侧处理。
图6B中所示的方法600的接收侧方面包括在第二L2网关50-2处接收(框614)该PDU,从该PDU中提取经修改的IP分组,并且根据该经修改的IP分组中所包括的目的地物理地址将该经修改的IP分组转发至第二主机54-2。在执行这些操作时,第二L2网关50-2使用该PDU中所包括的OID来消除该经修改的IP分组中所包括的目的地物理地址的歧义。另外,当该目的地物理地址是组播地址时,第二L2网关50-2将该经修改的IP分组发送至第二子网32-2中与该组播地址相关联的每个主机54。
如之前所提到的,L2网关50-1可以被实施为关联于其相应的管理器48和物理主机40的功能实体。考虑到这一点并且返回去参考图4,第一L2网关50-1包括第一接口56,其被配置用于具有不同子网32的逻辑网络30的第一子网32-1中的数据传输,上述不同子网32之间具有L2连接。第一接口56在功能上可以在管理器48内实现,并且在一个示例中将要被理解为实施适当协议和接口功能的处理电路布置,例如以太网。
第一L2网关50-1进一步包括第二接口58,其被配置用于经由该L2连接与该逻辑网络的第二子网32-2中的第二L2网关50-2的数据通信。在一种示例情形中,第二接口58被配置为用于经由图4所示的L2连接34与其它L2网关50交换L2PDU。
第一L2网关50-1进一步包括处理电路52,其同样可以以编程的方式在包括管理器48/物理主机40-1的处理资源(一个或多个CPU或其它数字处理电路)内实现。处理电路52操作地与第一和第二接口56、58相关联并且被配置为:从第一主机54-1接收IP分组;确定该IP分组以相同逻辑网络内的第二子网32-2中的第二主机54-2为目标;获得用于第二子网32-2中的第二L2网关50-2的物理地址并且获得用于第二主机54-2的物理地址;修改该IP分组以获得经修改的IP分组,这包括将该IP分组中的源物理地址从第一主机54-1的物理地址改变为所获得的用于第二L2网关50-2的物理地址,并且将目的地物理地址从第一L2网关50-1的物理地址改变为所获得的用于第二主机54-2的物理地址;在所述第二L2网关50-1处生成L2协议数据单元(PDU),其包括报头信息,该报头信息包括对应于第一L2网关50-1的源物理地址,对应于第二L2网关50-2的目的地物理地址,逻辑网络30的OID,以及包括经修改的IP分组的有效载荷;并且在L2连接上从第一L2网关50-1发送该PDU,以便在第二L2网关50-2处进行接收。
相同的分组始发功能也可以在第二L2网关50-2处关于L2网关50-1或者任意其它互连的如同L2网关50那样来实施。更宽泛地,第一L2网关50-1可以根据图6A中所示的操作或者根据其扩展或变化形式向第二L2网关50-2发送PDU。关于向第一L2网关50-1发送PDU,对于第二L2网关50-2而言同样如此,例如在第二主机54-2发出以第一主机54-1为目标的IP分组的情况下。
同样,这里例如通过图6B中所给出的示例描述的分组接收功能(接收侧操作)可以在第二L2网关50-2处关于第一L2网关50-1来执行。同样,该接收侧操作可以在第一L2网关50-1处关于从第二L2网关50-2发送的PDU来执行。在接收侧处理以该方向进行的示例中,第一L2网关50-1中的处理电路52被进一步配置为从第二L2网关50-2接收PDU,其中该第二PDU包括第二经修改的IP分组,该第二经修改的IP分组对应于以第一主机54-1为目标的并且从第二主机54-2发送的IP分组。
这里,如应用于在第一L2网关50-1处从第二L2网关50-2接收的PDU以及如应用于所接收的PDU中经修改的IP分组的术语“第二”,只是作为标记以便与在图6A的上下文中所讨论的PDU和经修改的IP分组进行清楚地区分。因此,将要理解的是,第二PDU中的报头信息包括对应于第二L2网关50-2的源物理地址,对应于第一L2网关50-1的目的地物理地址,逻辑网络30的OID,以及包括第二经修改的PDU(其由第二L2网关50-2以在图6A的上下文中针对第一L2网关50-1所描述的相同方式生成)的有效载荷。进而,第一L2网关50-1中的处理电路52被配置为从该第二PDU中提取第二经修改的IP分组,并且根据该第二经修改的IP分组中所包括的目的地物理地址将该第二经修改的IP分组转发至第一主机54-1。
在上文中,处理电路52可以被配置为使用第二PDU中所包括的OID来消除第二经修改的IP分组中所包括的目的地物理地址的歧义。另外,至少针对其中第二经修改的IP分组中的目的地物理地址为组播地址的情形而言,处理电路52被配置为将第二经修改的IP分组发送至第一子网32-1中与该组播地址相关联的每个主机54。所有这样的处理也可以由L2网关50-2中的处理电路52关于从第一L2网关50-1接收的PDU来执行,并且这一般是针对逻辑网络30中任意类似配置的L2网关50而言。
因此,L2网关50解决了整合的L2和L3交换架构的虚拟子网路由的问题,上述架构例如可以使用物理主机40之间某种形式的穿隧。这样的穿隧例如可以被实施为诸如SPB或VxLAN之类的L2或L3网络覆盖。然而,不同于单纯地使用目的地虚拟L2地址来确定目的地物理主机40,这里所教导的方法根据IP地址是否以不同子网为目标而使用虚拟L2和L3地址的组合。为了支持这样的L3转发,子网32之间的路由被扁平化并且被分布到物理主机40之中。利用该方法,这里的教导提供了在属于云主机环境中的给定租户的所有VM之间的点对点通信,而并没有使用任何中间路由功能(VRF或软件路由器),并且同时仍然在L2和L3层提供了完全虚拟化(即,在L2和L3针对每个租户完全隔离的地址空间并且支持多个子网)。
进一步要注意到,虽然多个示例关注于物理主机40,但是至少一些相同的功能能够在架顶(ToR)L2交换机中实施。该方法在其中一些数量的租户想要将他们的至少一些功能保持为非虚拟化的情况下可能是特别期望的。
在任意情况下,在一种示例情形中,这里所教导的子网间通信可以被视为具有两个上层功能或组件:“转发功能”和“目录服务”。该转发功能在每个物理主机40上运行——例如,如经由管理器48和L2网关50实施的那样——并且负责往来于在物理主机40内实现的VM或其它主机54发送/接收分组。
以补充的方式,补充的目录服务——例如如通过图7所示的分布式表60中的示例所表示的——对每个主机54的物理位置保持跟踪并且负责对针对映射虚拟和物理地址的查询作出应答,并且负责在(虚拟)主机54在任何时候发生迁移时向适当的物理主机发送失效消息。该目录服务还维护与虚拟网络拓扑相关的信息。其将该拓扑变换为扁平的点对点表,该表被用于L3查找。该目录服务还负责配置转发功能(例如,L2网关信息、组播成员等)。该目录服务优选地出于可扩展性和可用性的原因而是分布式的,但是其表现为单个逻辑实例。
如之前所提到的,这里的教导的一个或多个实施例假设在物理主机40之间存在网络覆盖,该覆盖对来自主机54的业务进行封装,主机54在相应物理主机40中被虚拟化。L2和L3层的虚拟地址并不暴露于物理网络。一旦被封装,该业务就基于物理目的地地址在物理网络中进行转发。该地址可以是利用L2覆盖的L2地址或者利用L3覆盖的L3地址。该技术还利用基础物理网络中组播的可用性来向运行属于相同虚拟子网32的主机54的所有物理主机40传送分组。另外,如多次提到的那样,这里的教导使用租户ID——例如之前所描述的OID——来消除歧义,其中该租户ID唯一地识别多个租户中的租户以及它们相应的逻辑网络30。SPB和VxLAN都支持所有这些功能。
在更为详细地查看这里所预期的分组转发功能时,L2网关50或其它适当配置的与给定物理主机40中的相应管理器48相关联的实体,按照需要为源自于在物理主机40内实现的主机54的IP分组提供转发。这些主机54有时被称作“客户机”并且所讨论的业务因此有时也被称作“客户业务”。L2网关50基于虚拟目的地介质访问控制(MAC或mac)地址或目的地虚拟IP地址——即目标主机54的IP地址——来确定目的地物理主机40。
L2网关50随后相应地封装并发送IP分组。在一种示例实施方式中,该转发操作使用两个表:L2表和L3表。这两个表都可以是图7所示的分布式表60的一部分,并且除了主关键字(诸如目的地IP地址)之外,它们还通过虚拟机(VM)ID进行编索引以消除可能重叠的虚拟地址的歧义。这里,VMID将被理解为唯一地识别在物理主机40内实现的给定主机54。
L2表在虚拟mac地址和物理主机地址之间提供映射。该表被用来找出运行位于相同虚拟子网之中的主机54(也简单地被称作VM)的物理主机40。该关键字是本地VMID和虚拟目的地mac地址。使用来自本地虚拟子网以及来自针对目录服务的请求的传入分组的虚拟源mac地址来自动填充该表。
L3表在虚拟IP地址和物理主机地址之间提供映射。该表被用来找出位于不同虚拟子网上的主机54的物理主机40。该关键字是VMID和虚拟目的地IP地址,并且该表存储目的地物理地址、接收侧的L2网关50的源mac、以及目的地主机54的mac地址的三元组。该信息对于适当仿真路由器的行为是必要的。该L3表仅使用来自目录服务的信息进行填充,以确保目录服务精确地了解哪些物理主机40在其L3表中具有具体映射并且能够仅向那些物理主机40发送失效消息。
为了传送源自于给定本地主机54的IP分组,在相应的L2网关50中实现的转发功能首先确定该IP分组是否以本地子网32为目的地。如果虚拟目的地mac地址对应于本地L2网关50的地址,则该IP分组被检测为并非以本地为目的地,而是应当被路由(即,使用其目的地IP地址进行转发)。在这方面,L2网关50的mac地址由目录服务基于虚拟网络拓扑进行配置。为L2网关50预留或定义虚拟缺省网关地址至少从主机54的角度对路由器的存在进行了仿真。
为了在L3层转发分组,该转发功能使用传出分组中的目的地IP地址而从L3表确定目的地物理地址。在未找到的情况下,从目录服务请求该信息并且将该信息插入该表中。在被转发之前,源和目的地mac地址被重写在IP分组之中,使得该分组表现为已经被目的地L2网关50所传送。该源和目的地mac地址还连同目的地物理地址一起被存储在L3表之中。一旦该物理目的地地址被确定并且mac地址已经被更新,就利用物理报头(根据基础物理网络而是L2或L3)封装该分组并且传送该分组——参见图6A中的分组修改和基于PDU的封装操作。
针对本地单播分组,在L2表中查找目的地物理地址。在未找到的情况下,从目录服务请求该信息并且将其插入表中。随后利用物理报头来封装该分组并且传送该分组。广播分组被组播至虚拟子网32上运行主机54的所有物理主机40,而一种类型的分组除外:针对L2网关50的mac地址的ARP请求。这些ARP请求由相应的L2网关50在本地进行处理——即本地转发功能形成(craft)ARP响应并且将其直接发送至发出该ARP请求的本地主机54。
考虑以下的示例传输算法,其可以由给定管理器48内的给定L2网关50-1以及相应的物理主机40-1来实施。将要理解的是,该传输关于从处于L2网关50-1本地的主机54传出的IP分组来进行——例如物理主机40-1处的主机54-1传送以另一个物理主机40-2处的主机54-2为目标的IP分组,其中该主机54-2处于不同于主机54-1的子网32中但是附属于相同租户并且处于相同的逻辑网络30之中。
考虑到这些条件,以下给出该示例分组传输算法的伪代码,其中根据所指示的源或目的地属性而使用术语“guest(客户)”、“VM”和“VMid”来指代源主机54-1或目的地主机54-2:
目的地L2网关50-2处示例的相应接收算法以伪代码给出如下:
在另外的示例中,将VM1和VM2看作表示在相同逻辑网络30中的不同子网32上运行的不同主机54,其中VM1具有在其子网32中进行操作的相应的L2网关50,并且同样地,VM2具有在其子网32中进行操作的相应的L2网关50。相应的物理主机40-1(主控VM1)和40-2(主控VM2)被表示为P1和P2。因此,VM1和VM2处于不同子网32上并且彼此进行通信。VM1在P1上运行并且VM2在P2上运行。VG1{mac,ip}是VM1的L2网关50的接口并且VG2{mac,ip}是VM2的L2网关50的接口。
利用该注释并且认识到归于P1或P2的功能可以由相应的L2网关50来执行,分步骤的传输示例被给出为:
-步骤1:VM1发送ARP请求:{smac=VM1mac,dmac=bcast,whohasVG1ip}。
-步骤2:P1通过检查该ARP请求的主体而发现该ARP请求针对VG1ip地址。P1形成ARP回复:{smac=VG1mac,dmac=VM1mac,IamVG1ip}并且将其发送至VM1。
-步骤3:VM1发送以VM2为目的地的IP分组:{smac=VM1mac,dmac=VG1mac,sip=VM1ip,dip=VM2ip}。
-步骤4:P1使用VM1的租户ID(与VM2的相同)向发现服务发送针对VM2ip的物理位置东请求。
-步骤5:该发现服务利用VM2的物理位置、VM2的子网的虚拟网关接口的mac地址以及VM2的mac地址作出回复。P1在其L3表中插入该信息:VM2ip->(MP2,VG2mac,VM2mac)。该发现服务还对谁已经接收到L3转发信息保持跟踪以在VM迁移时促成条目失效。
-步骤6:P1重写以VM2为目的地的IP分组的以太网报头:{smac=VG2mac,dmac=VM2mac,sip=VM1ip,dip=VM2ip},利用物理报头:{SourceMac=MP1,Destmac=MP2}对分组进行封装并且将其发送至P2。
-步骤7:P2接收该分组,对其解除封装并且基于目的地mac将其转发至VM2。(该租户ID被用来消除可能重叠的mac地址之间的歧义)。
-步骤8:VM2以类似于来自VM1的通信的方式作出回复,区别在于其并不需要进行ARP请求。
-步骤9:以相反方向执行步骤4-7(即,从VM2/P2向VM1/P1)。
注意到,由于上述描述和相关联附图而获益的本领域技术人员将会意识到所公开的发明的修改和其它实施例。因此,所要理解的是,发明并不局限于所公开的具体实施例并且修改和其它实施例意在包括于本公开的范围之内。虽然这里可以采用具体术语,但是它们仅是以一般且描述性的含义被使用而并非出于限制的目的。
Claims (14)
1.一种在不同子网(32)之间交换互联网协议(IP)分组的方法(600),包括:
从具有不同子网(32)的逻辑网络(30)的第一子网(32-1)中的第一主机(54-1)接收(602)IP分组,所述不同子网(32-1)之间具有L2连接(34),所述IP分组在所述第一子网(32-1)中的第一L2网关(50-1)处被接收;
在所述第一L2网关(50-1)处确定(604)所述IP分组以相同逻辑网络(30)内的第二子网(32-2)中的第二主机(54-2)为目标;
在所述第一L2网关(50-1)处获得(606)所述第二子网(32-2)中的第二L2网关(50-2)的物理地址以及第二主机(54-2)的物理地址;
在所述第一L2网关(50-1)处对所述IP分组进行修改(608)以获得经修改的IP分组,包括将所述IP分组中的源物理地址从所述第一主机(54-1)的物理地址改变为所获得的所述第二L2网关(50-2)的所述物理地址,并且将目的地物理地址从所述第一L2网关(50-1)的物理地址改变为所获得的所述第二主机(54-2)的所述物理地址;
在所述第一L2网关(50-1)处生成(610)包括报头信息的L2协议数据单元(PDU),所述报头信息包括与所述第一L2网关(50-1)对应的源物理地址、与所述第二L2网关(50-2)对应的目的地物理地址、所述逻辑网络(30)的组织标识符(OID)、以及包括所述经修改的IP分组的有效载荷;以及
在所述L2连接(34)上从所述第一L2网关(50-1)发送(612)所述PDU,以便在所述第二L2网关(50-2)处进行接收。
2.根据权利要求1所述的方法(600),其中在所述第一L2网关(50-1)处确定(604)所述IP分组以所述第二子网(32-2)中的所述第二主机(54-2)为目标包括检测所述IP分组中所包括的目的地物理地址与针对所述第一L2网关(50-1)定义的物理地址相匹配。
3.根据权利要求2所述的方法(600),进一步包括响应于从所述第一主机(54-1)接收到地址解析协议(ARP)请求而将所述第一L2网关(50-1)的所述物理地址提供至所述第一主机(54-1),包括通过发送ARP回复而对所述ARP请求进行响应,所述ARP回复包括针对所述第一L2网关(50-1)定义的所述物理地址。
4.根据权利要求1-3中任一项所述的方法(600),其中所述第一主机和所述第二主机(54-1,54-2)是第一虚拟机(VM)和第二虚拟机(VM),所述第一子网和所述第二子网(34-1,34-2)是第一虚拟子网和所述第二虚拟子网,并且所述逻辑网络(30)包括虚拟网络,所述虚拟网络包括所述第一虚拟子网和所述第二虚拟子网,并且进一步其中所述第一L2网关(50-1)在对所述第一VM进行虚拟化并且在第一物理主机(40-1)上运行的第一管理器(48)中实施,并且所述第二L2网关(50-2)在对所述第二VM进行虚拟化并且在第二物理主机(40-2)上运行的第二管理器(48)中实施。
5.根据权利要求1-4中任一项所述的方法(600),进一步包括基于通过其从所述第一主机(54-1)接收所述IP分组的端口或连接来确定所述OID。
6.根据权利要求1-5中任一项所述的方法(600),其中获得(606)所述第二L2网关(50-2)的所述物理地址以及所述第二主机(54-2)的所述物理地址包括在本地化目录表包括相应的条目的情况下从所述本地化目录表获得目录服务信息,否则通过以下来获得所述目录服务信息:发送包括所述OID和从接收自所述第一主机(54-1)的所述IP分组所获知的所述第二主机(54-2)的IP地址的目录请求、以及相应地接收指示所述第二L2网关(50-2)的所述物理地址和所述第二主机(54-2)的所述物理地址的目录服务响应。
7.根据权利要求1-6中任一项所述的方法(600),进一步包括在所述第二L2网关(50-2)处接收(614)所述PDU,从所述PDU中提取(616)所述经修改的IP分组,并且根据所述经修改的IP分组中所包括的所述目的地物理地址将所述经修改的IP分组转发(618)至所述第二主机(54-2)。
8.根据权利要求7所述的方法(600),进一步包括使用所述PDU中所包括的所述OID来消除所述经修改的IP分组中所包括的所述目的地物理地址的歧义。
9.根据权利要求7或8所述的方法(600),进一步包括当所述目的地物理地址是组播地址时,将所述经修改的IP分组发送至所述第二子网(32-2)中与所述组播地址相关联的每个主机(54)。
10.一种第一层2(L2)网关(50-1),包括:
第一接口(56),被配置用于具有不同子网(32)的逻辑网络(30)中的第一子网(32-1)中的数据通信,所述不同子网之间具有L2连接;
第二接口(58),被配置用于经由所述L2连接与所述逻辑网络中的第二子网(32-2)中的第二L2网关(50-2)的数据通信;以及
处理电路(52),与所述第一接口和所述第二接口(56,58)操作地关联并且被配置为:
从第一主机(54-1)接收IP分组,
确定所述IP分组以相同逻辑网络内的第二子网(32-2)中的第二主机(54-2)为目标;
获得所述第二子网(32-2)中的第二L2网关(50-2)的物理地址以及所述第二主机(54-2)的物理地址;
对所述IP分组进行修改以获得经修改的IP分组,包括将所述IP分组中的源物理地址从所述第一主机(54-1)的物理地址改变为所获得的所述第二L2网关(50-2)的所述物理地址、并且将目的地物理地址从所述第一L2网关(50-1)的物理地址改变为所获得的所述第二主机(54-2)的所述物理地址;
在所述第一L2网关(50-1)处生成包括报头信息的L2协议数据单元(PDU),所述报头信息包括与所述第一L2网关(50-1)对应的源物理地址、与所述第二L2网关(50-2)对应的目的地物理地址、所述逻辑网络(30)的组织标识符(OID)、以及包括所述经修改的IP分组的有效载荷;以及
在所述L2连接上从所述第一L2网关(50-1)发送所述PDU,以便在所述第二L2网关(50-2)处进行接收。
11.根据权利要求10所述的L2网关(50-1),其中所述L2网关包括物理主机(40-1)内的功能实体。
12.根据权利要求10或11所述的L2网关(50-1),其中所述处理电路(52)被配置为:
从所述第二L2网关(50-2)接收第二PDU,其中所述第二PDU包括第二经修改的IP分组,所述第二经修改的IP分组与以所述第一主机(54-1)为目标并且从所述第二主机(54-2)发送的IP分组对应,并且其中所述第二PDU包括报头信息,所述报头信息包括与所述第二L2网关(50-2)对应的源物理地址、与所述第一L2网关(50-1)对应的目的地物理地址、所述逻辑网络(30)的所述OID、以及包括所述第二经修改的PDU的有效载荷;
从所述第二PDU中提取所述第二经修改的IP分组;以及
根据所述第二经修改的IP分组中所包括的所述目的地物理地址将所述第二经修改的IP分组转发至所述第一主机(54-1)。
13.根据权利要求12所述的L2网关(50-1),其中所述处理电路(52)被配置为使用所述第二PDU中所包括的所述OID来消除所述第二经修改的IP分组中所包括的所述目的地物理地址的歧义。
14.根据权利要求11或12所述的L2网关(50-1),其中当所述第二经修改的IP分组中的所述目的地物理地址是组播地址时,所述处理电路(52)被配置为将所述第二经修改的IP分组发送至所述第一子网(32-1)中与所述组播地址相关联的每个主机(54)。
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US13/856,971 | 2013-04-04 | ||
US13/856,971 US9225636B2 (en) | 2013-04-04 | 2013-04-04 | Method and apparatus for exchanging IP packets among network layer 2 peers |
PCT/IB2014/060410 WO2014162291A1 (en) | 2013-04-04 | 2014-04-03 | Method and apparatus for exchanging ip packets among network layer 2 peers |
Publications (2)
Publication Number | Publication Date |
---|---|
CN105519080A true CN105519080A (zh) | 2016-04-20 |
CN105519080B CN105519080B (zh) | 2019-10-18 |
Family
ID=50588772
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201480028298.5A Active CN105519080B (zh) | 2013-04-04 | 2014-04-03 | 用于在网络层2对等方之间交换ip分组的方法和装置 |
Country Status (6)
Country | Link |
---|---|
US (1) | US9225636B2 (zh) |
EP (1) | EP2982097B1 (zh) |
CN (1) | CN105519080B (zh) |
ES (1) | ES2748376T3 (zh) |
HU (1) | HUE046847T2 (zh) |
WO (1) | WO2014162291A1 (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109155799A (zh) * | 2016-05-24 | 2019-01-04 | 微软技术许可有限责任公司 | 经由层三通信的子网扩展 |
Families Citing this family (57)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
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 |
US9455901B2 (en) | 2013-10-04 | 2016-09-27 | Nicira, Inc. | Managing software and hardware forwarding elements to define virtual networks |
US9575782B2 (en) | 2013-10-13 | 2017-02-21 | Nicira, Inc. | ARP for logical router |
EP2899927B1 (en) * | 2013-12-06 | 2017-04-19 | Huawei Technologies Co., Ltd. | Method, device and system for implementing packet routing in network |
US11099099B1 (en) * | 2015-01-07 | 2021-08-24 | Aviatrix Systems, Inc. | System and method for selecting virtual appliances in communications with virtual private cloud networks |
US11788924B1 (en) * | 2014-01-09 | 2023-10-17 | Aviatrix Systems, Inc. | System and method for selecting virtual appliances in communications with virtual private cloud networks |
KR102193012B1 (ko) * | 2014-02-04 | 2020-12-18 | 삼성전자주식회사 | 분산 처리 시스템 및 이의 동작 방법 |
US9590901B2 (en) * | 2014-03-14 | 2017-03-07 | Nicira, Inc. | Route advertisement by managed gateways |
US9225597B2 (en) | 2014-03-14 | 2015-12-29 | Nicira, Inc. | Managed gateways peering with external router to attract ingress packets |
US9893988B2 (en) | 2014-03-27 | 2018-02-13 | Nicira, Inc. | Address resolution using multiple designated instances of a logical router |
US10020960B2 (en) | 2014-09-30 | 2018-07-10 | Nicira, Inc. | Virtual distributed bridging |
US9768980B2 (en) | 2014-09-30 | 2017-09-19 | Nicira, Inc. | Virtual distributed bridging |
US10250443B2 (en) | 2014-09-30 | 2019-04-02 | Nicira, Inc. | Using physical location to modify behavior of a distributed virtual network element |
US10511458B2 (en) | 2014-09-30 | 2019-12-17 | Nicira, Inc. | Virtual distributed bridging |
US10437770B2 (en) * | 2015-01-28 | 2019-10-08 | Avago Technologies International Sales Pte. Limited | Method and apparatus for providing virtual machine information to a network interface |
US10038628B2 (en) | 2015-04-04 | 2018-07-31 | Nicira, Inc. | Route server mode for dynamic routing between logical and physical networks |
US9942058B2 (en) | 2015-04-17 | 2018-04-10 | Nicira, Inc. | Managing tunnel endpoints for facilitating creation of logical networks |
US10554484B2 (en) | 2015-06-26 | 2020-02-04 | Nicira, Inc. | Control plane integration with hardware switches |
US9825851B2 (en) | 2015-06-27 | 2017-11-21 | Nicira, Inc. | Distributing routing information in a multi-datacenter environment |
US10361952B2 (en) | 2015-06-30 | 2019-07-23 | Nicira, Inc. | Intermediate logical interfaces in a virtual distributed router environment |
US9819581B2 (en) | 2015-07-31 | 2017-11-14 | Nicira, Inc. | Configuring a hardware switch as an edge node for a logical router |
US9967182B2 (en) | 2015-07-31 | 2018-05-08 | Nicira, Inc. | Enabling hardware switches to perform logical routing functionalities |
US9847938B2 (en) | 2015-07-31 | 2017-12-19 | Nicira, Inc. | Configuring logical routers on hardware switches |
US10313186B2 (en) | 2015-08-31 | 2019-06-04 | Nicira, Inc. | Scalable controller for hardware VTEPS |
US9747154B2 (en) | 2015-08-31 | 2017-08-29 | International Business Machines Corporation | Isolating hardware and network failures in a computing environment |
US9935862B2 (en) | 2015-09-08 | 2018-04-03 | At&T Intellectual Property I, L.P. | Low-impact proactive monitoring of customer access to virtualized network elements in a cloud platform |
US10230576B2 (en) | 2015-09-30 | 2019-03-12 | Nicira, Inc. | Managing administrative statuses of hardware VTEPs |
US9948577B2 (en) | 2015-09-30 | 2018-04-17 | Nicira, Inc. | IP aliases in logical networks with hardware switches |
US10263828B2 (en) | 2015-09-30 | 2019-04-16 | Nicira, Inc. | Preventing concurrent distribution of network data to a hardware switch by multiple controllers |
US9998324B2 (en) | 2015-09-30 | 2018-06-12 | Nicira, Inc. | Logical L3 processing for L2 hardware switches |
US10250553B2 (en) | 2015-11-03 | 2019-04-02 | Nicira, Inc. | ARP offloading for managed hardware forwarding elements |
US9998375B2 (en) | 2015-12-15 | 2018-06-12 | Nicira, Inc. | Transactional controls for supplying control plane data to managed hardware forwarding elements |
US9992112B2 (en) | 2015-12-15 | 2018-06-05 | Nicira, Inc. | Transactional controls for supplying control plane data to managed hardware forwarding elements |
US9917799B2 (en) | 2015-12-15 | 2018-03-13 | Nicira, Inc. | Transactional controls for supplying control plane data to managed hardware forwarding elements |
US10225149B2 (en) * | 2015-12-15 | 2019-03-05 | Nicira, Inc. | Method and tool for diagnosing logical networks |
US10241820B2 (en) | 2016-03-14 | 2019-03-26 | Nicira, Inc. | Determining the realization status of logical entities in logical networks |
US10243797B2 (en) | 2016-03-14 | 2019-03-26 | Nicira, Inc. | Identifying the realization status of logical entities based on a global realization number |
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 |
US10200343B2 (en) | 2016-06-29 | 2019-02-05 | Nicira, Inc. | Implementing logical network security on a hardware switch |
US10255202B2 (en) * | 2016-09-30 | 2019-04-09 | Intel Corporation | Multi-tenant encryption for storage class memory |
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 |
CN108259379B (zh) * | 2017-05-08 | 2021-11-02 | 新华三技术有限公司 | 一种流量转发方法及装置 |
US10374827B2 (en) | 2017-11-14 | 2019-08-06 | Nicira, Inc. | Identifier that maps to different networks at different datacenters |
US10511459B2 (en) | 2017-11-14 | 2019-12-17 | Nicira, Inc. | Selection of managed forwarding element for bridge spanning multiple datacenters |
US11102079B2 (en) | 2018-04-17 | 2021-08-24 | Microsoft Technology Licensing, Llc | Cross-regional virtual network peering |
CN111182016B (zh) * | 2018-11-12 | 2022-12-27 | 中移(杭州)信息技术有限公司 | 一种PPPoE拨号报文传输方法及装置 |
US11537422B2 (en) * | 2019-11-20 | 2022-12-27 | Red Hat, Inc. | Virtual machine migration downtime reduction using a multicast address |
US11777793B2 (en) | 2020-04-06 | 2023-10-03 | Vmware, Inc. | Location criteria for security groups |
US11088919B1 (en) | 2020-04-06 | 2021-08-10 | Vmware, Inc. | Data structure for defining multi-site logical network |
US11374850B2 (en) | 2020-04-06 | 2022-06-28 | Vmware, Inc. | Tunnel endpoint group records |
US11115301B1 (en) | 2020-04-06 | 2021-09-07 | Vmware, Inc. | Presenting realized state of multi-site logical network |
US11088902B1 (en) | 2020-04-06 | 2021-08-10 | Vmware, Inc. | Synchronization of logical network state between global and local managers |
US11601474B2 (en) | 2020-09-28 | 2023-03-07 | Vmware, Inc. | Network virtualization infrastructure with divided user responsibilities |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1863129A (zh) * | 2005-12-01 | 2006-11-15 | 华为技术有限公司 | 一种基于二层vpn异种介质互通的系统和方法 |
US20110238975A1 (en) * | 2010-03-24 | 2011-09-29 | Fujitsu Limited | Information processing device, route control device, and data relay method |
CN102668463A (zh) * | 2009-11-16 | 2012-09-12 | 思科技术公司 | 在扩展子网内提供网关任意播虚拟mac可达性的方法 |
CN102726007A (zh) * | 2009-04-01 | 2012-10-10 | Nicira网络公司 | 用于实现和管理虚拟交换机的方法和装置 |
Family Cites Families (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8259593B2 (en) * | 2005-06-29 | 2012-09-04 | Honeywell International Inc. | Apparatus and method for segmenting a communication network |
CN101102264B (zh) | 2006-07-04 | 2011-07-20 | 华为技术有限公司 | 一种以太网转发数据的方法和一种以太网系统 |
CN101127696B (zh) | 2006-08-15 | 2012-06-27 | 华为技术有限公司 | 二层网络中的数据转发方法和网络及节点设备 |
JP5874354B2 (ja) * | 2011-11-30 | 2016-03-02 | 村田機械株式会社 | 中継サーバ及び中継通信システム |
-
2013
- 2013-04-04 US US13/856,971 patent/US9225636B2/en active Active
-
2014
- 2014-04-03 HU HUE14719871A patent/HUE046847T2/hu unknown
- 2014-04-03 WO PCT/IB2014/060410 patent/WO2014162291A1/en active Application Filing
- 2014-04-03 CN CN201480028298.5A patent/CN105519080B/zh active Active
- 2014-04-03 EP EP14719871.7A patent/EP2982097B1/en active Active
- 2014-04-03 ES ES14719871T patent/ES2748376T3/es active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1863129A (zh) * | 2005-12-01 | 2006-11-15 | 华为技术有限公司 | 一种基于二层vpn异种介质互通的系统和方法 |
CN102726007A (zh) * | 2009-04-01 | 2012-10-10 | Nicira网络公司 | 用于实现和管理虚拟交换机的方法和装置 |
CN102668463A (zh) * | 2009-11-16 | 2012-09-12 | 思科技术公司 | 在扩展子网内提供网关任意播虚拟mac可达性的方法 |
US20110238975A1 (en) * | 2010-03-24 | 2011-09-29 | Fujitsu Limited | Information processing device, route control device, and data relay method |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109155799A (zh) * | 2016-05-24 | 2019-01-04 | 微软技术许可有限责任公司 | 经由层三通信的子网扩展 |
US10972341B2 (en) | 2016-05-24 | 2021-04-06 | Microsoft Technology Licensing, Llc | Subnet stretching via layer three communications |
CN109155799B (zh) * | 2016-05-24 | 2021-08-06 | 微软技术许可有限责任公司 | 经由层三通信的子网扩展 |
Also Published As
Publication number | Publication date |
---|---|
US20140301391A1 (en) | 2014-10-09 |
US9225636B2 (en) | 2015-12-29 |
HUE046847T2 (hu) | 2020-03-30 |
EP2982097A1 (en) | 2016-02-10 |
WO2014162291A1 (en) | 2014-10-09 |
ES2748376T3 (es) | 2020-03-16 |
EP2982097B1 (en) | 2019-06-12 |
CN105519080B (zh) | 2019-10-18 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN105519080A (zh) | 用于在网络层2对等方之间交换ip分组的方法和装置 | |
CN109451084B (zh) | 一种服务访问方法及装置 | |
US11063819B2 (en) | Managing use of alternative intermediate destination computing nodes for provided computer networks | |
US10749742B2 (en) | Managing virtual port channel switch peers from software-defined network controller | |
US10826829B2 (en) | Scalable handling of BGP route information in VXLAN with EVPN control plane | |
US11546288B2 (en) | Techniques for managing software defined networking controller in-band communications in a data center network | |
US10659358B2 (en) | Method and apparatus for advanced statistics collection | |
US10171357B2 (en) | Techniques for managing software defined networking controller in-band communications in a data center network | |
JP6231586B2 (ja) | 分散論理l3ルーティング | |
US9231863B2 (en) | Systems and methods for a data center architecture facilitating layer 2 over layer 3 communication | |
US9137119B2 (en) | Efficient handling of multi-destination traffic in an internet protocol fabric data center | |
US8725898B1 (en) | Scalable port address translations | |
CN112470436A (zh) | 使用srv6和bgp的多云连通性 | |
CN105634770B (zh) | 部署虚拟扩展局域网的方法和装置 | |
US20150304117A1 (en) | Automatic fabric multicast group selection in a dynamic fabric automation network architecture | |
CN107770062A (zh) | 一种数据包发送方法、装置及网络架构 | |
US20200382407A1 (en) | Routing domain identifier assignment in logical network environments | |
CN105791402A (zh) | 一种云计算平台网络虚拟化实现方法及相应插件和代理 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |