CN104620544A - 通信网络中的覆盖服务 - Google Patents
通信网络中的覆盖服务 Download PDFInfo
- Publication number
- CN104620544A CN104620544A CN201380046890.3A CN201380046890A CN104620544A CN 104620544 A CN104620544 A CN 104620544A CN 201380046890 A CN201380046890 A CN 201380046890A CN 104620544 A CN104620544 A CN 104620544A
- Authority
- CN
- China
- Prior art keywords
- address
- layer
- edge device
- location identifier
- database
- 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.)
- Pending
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/64—Routing or path finding of packets in data switching networks using an overlay routing layer
-
- 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]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L12/00—Data switching networks
- H04L12/28—Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
- H04L12/46—Interconnection of networks
- H04L12/4633—Interconnection of networks using encapsulation techniques, e.g. tunneling
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L12/00—Data switching networks
- H04L12/28—Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
- H04L12/46—Interconnection of networks
- H04L12/4641—Virtual LANs, VLANs, e.g. virtual private networks [VPN]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L12/00—Data switching networks
- H04L12/64—Hybrid switching systems
- H04L12/6418—Hybrid transport
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Computer Security & Cryptography (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
在一个实施例中,方法包括在第一边缘设备处从第一主机接收分组,分组包括与第二边缘设备通信的第二主机的第3层地址;使用第二主机的第3层地址以从可从核心网访问的数据库接收第二主机的第2层地址和位置标识符,数据库包括第3层主机地址到第2层主机地址和位置标识符的映射;以及在第一边缘设备处存储第2层地址到位置标识符的映射,用于将分组转发到第二主机。在由通过核心网互连的边缘设备定义的覆盖网络中,第一边缘设备与第二边缘设备进行通信。本文还公开了一种装置和一种逻辑。
Description
相关申请的声明
本申请要求于2012年10月19日提交的、名称为“OVERLAYSERVICES IN COMMUNICATION NETWORKS(通信网络中的覆盖服务)”的美国临时申请No.61/716,284(代理案号CISCP1239+)的优先权。该临时申请的内容通过引用以其整体合并于此。
技术领域
本公开一般地涉及通信网络,并且更具体地,本公开涉及覆盖服务。
背景技术
包括第2层和第3层覆盖服务的覆盖技术对于通信网络中的很多应用来说是需要的。
附图说明
图1示出了可以实现本文描述的实施例的网络的示例。
图2示出了可用于实现本文描述的实施例的网络设备的示例。
图3A示出了被维护在图1的网络中的边缘设备处的覆盖映射表的示例。
图3B示出了被维护在图1的网络中的数据库节点处的映射表的示例。
图4是根据一个实施例示出了用于提供可扩展的第2层覆盖服务的过程的流程图。
图5根据一个实施例示出了供用在第2层和第3层覆盖服务中的数据平面封装格式。
贯穿附图的几个视图,相应的标记表示相应的部分。
具体实施方式
概览
在一个实施例中,方法通常包括:在第一边缘设备处从第一主机接收分组,分组包括与第二边缘设备通信的第二主机的第3层地址;使用第二主机的第3层地址以从可从核心网访问的数据库接收第二主机的第2层地址和位置标识符,数据库包括第3层主机地址到第2层主机地址和位置标识符的映射;以及在第一边缘设备处存储第2层地址到位置标识符的映射,用于将分组转发到第二主机。在由通过核心网互连的边缘设备定义的覆盖网络中第一边缘设备与第二边缘设备进行通信。
在另一实施例中,一种装置通常包括:存储器,该存储器用于存储包括多个条目的数据库,每个条目各自包括被映射到第2层地址和位置标识符的第3层地址;处理器,该处理器用于接收主机第3层地址并且针对主机的第2层地址和位置标识符搜索数据库、将第2层地址和位置标识符发送到位于覆盖网络内的边缘设备,覆盖网络由通过核心网互连的多个边缘设备定义;以及接口,该接口用于与核心网通信。第3层地址被用在控制平面中以搜索数据库,并且第2层地址到所述位置标识符的映射被用在数据平面中。
在另一实施例中,逻辑被编码在一个或多个有形计算机可读介质上用于执行,当逻辑被执行时能操作来执行以下处理:接收包括第3层报头的分组,该第3层报头包含针对源端点和目的地端点的信息;在边缘设备处***覆盖字段和第3层外部报头;以及在由通过核心网互连的多个边缘设备定义的第3层覆盖上从边缘设备发送分组。从边缘设备被发送的分组包括第2层内部报头。
示例实施例
呈现下面的描述以使得本领域的普通技术人员能够做出和使用这些实施例。具体实施例和应用的描述仅作为示例被提供,并且各种修改对于本领域的技术人员来说是显而易见的。在不脱离实施例的范围的情况下,本文描述的一般原则可以被应用到其它应用中。因此,实施例不限于示出的那些,而是被赋予与本文描述的原则和特征相一致的最宽的范围。为了清楚的目的,未详细描述关于与实施例相关的技术领域中已知的技术材料的细节。
覆盖网络
覆盖传输虚拟化(OTV)是用于提供覆盖服务的方法的示例。OTV可以被用于例如在第2层(L2)或第3层(L3)基础设施上支持第2层(L2)和第3层(L3)虚拟专用网(VPN)。OTV在位于网络站点处的边缘设备处操作以创建覆盖网络。在很多应用中都需要第2层以太网覆盖服务。在第2层处使用的MAC(介质访问控制)地址族是不能被概述的平面地址空间。MAC地址空间中的聚集性的缺乏是提供可扩展的L2覆盖服务中的持续的挑战。第一实施例(在下面被称为可扩展的第2层覆盖服务)给L2覆盖解决方案带来了地址空间聚集性的规模效益。
第一实施例提高了第2层覆盖的控制平面可扩展性。该实施例可以被用在第3层控制平面中以提供可扩展的第2层覆盖服务。如下所述,数据库被使用来掌握主机的L2和L3地址。L3信息被用于给出数据库聚集性和等级并且作为查找密匙以查找L2地址的映射。实施例提高了不能实现L3查找的硬件上的L2覆盖实施方式,以提供完全的L2覆盖。这给L2覆盖带来了一些L3覆盖的规模效益。与本地处理MAC地址族的方法相对比,控制平面的可扩展性的改善是重要的。
覆盖技术上的焦点主要在L2覆盖上,但针对L3覆盖也有需求。由于覆盖景观演变并且工业包含覆盖模型,针对L3覆盖数据平面可以有硬件支持间隙。第二实施例(在下面被称为L2和L3覆盖中的数据平面封装的联合)允许使用L2覆盖数据平面格式来实施L3覆盖。
第二实施例提供可以被用于递送L2和L3覆盖服务的数据平面封装。对于L3覆盖情况来说,用于L2内部报头的字段被保留,但是在转发过程中被忽略。这允许使用常用的硬件和标准封装来递送L2和L3覆盖服务。
现在参照附图,并且首先参照图1,图1示出了网络的一个示例,在该网络中可以实现本文描述的实施例。为了简化,仅示出了少量的节点。在图1中所示出的示例中,两个服务器(主机、端点、物理机)10A、10B经由网络站点16A和16B以及传输网(核心网、主干)14通信。网络站点16A、16B可以属于虚拟专用网(VPN),虚拟专用网(VPN)可以包括任意数量的网络站点。网络16A、16B可以被配置用作数据中心或任何其它类型的网络。传输网14可以是例如,L3 IP(互联网协议)网络核心、L2城域以太网核心、MPLS核心或任何其它类型的网络。传输网14也可以被称为底层网络。
在图1所示出的示例中,每个网络站点16A、16B分别包括边缘设备18A、18B。在一个实施例中,边缘设备18A、18B被配置为运行OTV,OTV定义被耦合到每个边缘设备的覆盖网络15。网络站点16A、16B经由边缘设备18A、18B被连接在一起,边缘设备18A、18B在覆盖网络15中操作并且在各站点之间提供L2和L3连接。OTV可以被用于例如将MAC地址目的地映射到通过传输网14可达的IP下一跳。目的地为特定MAC地址的流量被封装在IP中并且通过IP网络被运载到它的MAC地址路由下一跳。覆盖映射被维持在下面关于图3A描述的覆盖映射表30中。OTV独立于核心网14中采用的技术。
OTV网络中的边缘设备18A、18B在面向站点的接口(内部接口26)上执行L2学习和转发并且在面向传输的接口(覆盖接口28)上执行基于IP的虚拟化。边缘设备的双重功能提供了将L2网络、L3网络或混合(L2和L3)网络连接在一起的能力。边缘设备18A、18B被配置为执行如下所进一步描述的封装和解封装。在一个示例中,OTV如2012年4月24日授权的、美国专利No.8,166,205中所描述的一样进行操作,该美国专利通过引用以其整体合并于此。
每个网络14、16A、16B可以包括任意数量的边缘设备或中间(核心)节点(例如,路由器、交换机、访问层设备、聚集层设备或其它网络设备),其促进了数据在网络内的传递。另外,每个边缘设备18A、18B可以在每个网络站点16A、16B处与任意数量的主机进行通信并且可以在不只一个覆盖网络15中进行操作。
边缘设备18A、18B可以是交换机、路由器或被配置为执行转发功能的任何其它网络设备(例如,L2、L3或L2/L3设备)。边缘设备例如可以是NEXUS系列交换机,NEXUS系列交换机可从加利福尼亚圣何塞的思科***公司获得。应该理解的是这仅是可以被用于实现本文描述的实施例的网络设备的一个示例。例如,边缘设备还可以是位于主机处的软交换机,而不是物理网络设备。在一个示例中,边缘设备可以被实现为主机管理程序中的软交换机。
服务器10A、10B例如可以是刀片式服务器、机架式服务器或任何其它类型的网络设备并且可以被配置为托管一个或多个虚拟机(VM)(未示出)。虚拟机共享硬件资源而不互相干扰,因此使得多个操作***和应用能够在单一计算机上同时执行。虚拟机可以基于流量模式、硬件资源或其它准则跨第2层或第3层边界在服务器之间被移除。本文使用的术语‘主机’或‘端点’可以参照物理机(例如,服务器)或在物理机上操作的虚拟机。
主机10A、10B可以通过第3层(IP)地址和第2层(MAC)地址二者标识。在第一实施例中,分布式数据库被用于存储L3和L2主机地址。数据库包括主机L3地址到主机L2地址和位置标识符(例如,与主机相关联的边缘设备的地址)的映射。分布式数据库包括多个数据库节点。在图1中所示出的示例中,每个边缘设备18A、18B都分别具有相关联的数据库节点32A、32B。数据库节点A拥有MAC和IP地址以及它们针对站点A的***的详细状态。类似地,数据库节点B拥有MAC和IP地址以及它们针对站点B的***的详细状态。该信息被维护在图1中的映射表34(下面关于图3B所描述的)。映射表34可以跨任意数量的节点被分布。
数据库节点32A、32B例如可以是服务器、交换机、路由器或任何其它网络设备。数据库节点32A、32B可从核心网14(例如,位于核心网内或相对核心网远程地布置并且与核心网通信)访问。数据库节点32A、32B还互相通信(例如,直接通信或经由任意数量的节点或网络进行通信)。
数据库还可以包括被存储在边缘设备处的信息,其是数据库树的叶子。例如,数据库节点32A、32B可以包含被映射到位置标识符的主机第3层地址,具有被存储在边缘设备处的MAC地址。在此示例中数据库在数据库节点和边缘设备上被分布。
应该理解的是上述图1中所示出的网络仅是示例并且在不脱离实施例的范围的情况下,实施例可以在具有不同网络拓扑结构和网络设备的网络中被实现。
图2示出了可以被用于实现本文描述的实施例的网络设备40(例如,图1中的边缘设备18A、18B、数据库节点32A、32B)的示例。在一个实施例中,网络设备40是可以在硬件、软件或任何其组合中被实现的可编程机器。网络设备40包括一个或多个处理器42、存储器44和网络接口46。
存储器44可以是易失性存储器或非易失性存储器,其存储各种应用、操作***、模块和数据用于由处理器42执行和使用。例如,存储器44可以包括映射表48(例如,边缘设备18A、18B处的映射表30或数据库节点32A、32B处的映射表34)。
逻辑可以被编码在一个或多个有形的介质中,以供处理器42执行。例如,处理器42可以执行被存储在诸如存储器44之类的计算机可读介质中的代码。计算机可读介质例如可以是电子的(例如,RAM(随机存取存储器)、ROM(只读存储器)、EPROM)、EPROM(可擦除可编程只读存储器))、磁的、光的(例如,CD、DVD)、电磁的、半导体技术的、或任何其它适当的介质。
网络接口46可以包括任意数量的接口(线卡、端口),以接收数据或向其它设备发送数据。网络接口46例如可以包括用于连接到计算机或网络的以太网接口。
应该理解的是上述图2中示出的网络设备40仅是示例并且可以使用网络设备的不同配置。例如,网络设备40还可以包括可操作以促进本文中描述的功能的硬件、软件、算法、处理器、设备、组件或元件的任何适当的组合。
可扩展的第2层覆盖服务
再次参照图1中所示出的网络,网络覆盖(覆盖网络15)由通过主干网底层(核心网14)互相连接并且将两个地址空间映射到彼此的一系列边缘设备(虚拟化通道端点-VTEP)18A、18B定义;两个地址空间即端点地址空间和主干网地址空间。基于流量流的方向,边缘设备18A、18B起封装或解封装设备的作用。当边缘设备封装时,它将接收的流量的端点目的地地址映射到主干网中的站点地址,该站点地址标识解封装边缘设备。具有该映射知识,边缘设备18A、18B将报头添加到流量,被用于封装流量并且跨主干网14将流量转发到目的地的位置(解封装边缘设备)。
第2层覆盖将端点的L2地址(在以太网中这些将是MAC地址)映射到标识主干中可以驻留端点的不同位置的地址。位置地址可以是IP主干中的IP地址、或可以由MPLS网络中的标签交换路径(LSP)和标签交换路由器(LSR)定义、或可以另外在其它类型的主干中定义。
在L2覆盖中,数据库被用于维护L2端点地址到主干位置地址的映射。该数据库是不可以被聚集或概述的平面结构,不可以被聚集或概述这是由于L2地址族(以太网中这是MAC地址族)的本质,并且因此影响可扩展性。
如上所指出的,网络端点可以通过L3(IP)地址和L2(MAC)地址二者标识。如果L3和L2端点地址都被包括在包含端点和位置之间的映射的数据库中,聚集性可以被带到L2覆盖服务。L3端点地址的包含允许数据库以能够享受聚集性的好处的方式被构成并且因此允许状态按有序的层次结构分布。如下所述,L3信息被用于导航数据库34和它的有序的层次结构并且将跨分布式数据库的节点所共享的信息最小化(进行概述)。仅L3端点信息被概述并且跨数据库节点32A、32B被共享。L2端点信息被维护为数据的叶节点内并且不向任何其它数据库节点公开。因此,只有可以被聚集并且被概述的信息才能跨数据库节点被共享。未概述的L2信息被保持对每个数据库节点是本地的并且因此是分布的和可扩展的。
第一实施例通过将L2目的地的查找转移到L3数据库中的L3密匙来允许使用基于L3的控制平面的L2覆盖服务。查找的结果是L2目的地端点的位置。解封装设备(边缘设备18A、18B)使用获得的位置来封装位置报头中的L2帧并且提供必要的L2覆盖服务。对由覆盖提供的网络模型或数据路径不要求改变。边缘设备(VTEP)18A、18B继续交换由端点10A、10B生成的流量。
在一个实施例中,***使用基于需求的信息请求模型。这样的基于需求的信息模型的一个示例是DNS(域名***),其中当必要的时候,映射被请求(并且在被请求之后被缓存起来)。通过使得地址空间的概述成为可能,可扩展性还能应用到基于“推送”的网络数据库(诸如BGP(边界网关协议)或ISIS(中间***到中间***))。
图3A和图3B分别示出了边缘设备18A、18B和数据库节点32A、32B处的映射表。应该理解的是这些表仅是示例,并且在不脱离实施例的范围的情况下,可以使用其它格式、数据或数据结构。
图3A中所示出的覆盖映射表30被维护在边缘设备处。第一列包括用于远程主机的第2层地址。第二列包括相应的覆盖网络地址。覆盖网络地址是主干位置地址(本文被称为位置标识符)。如上所述,位置标识符可以是IP地址或可以由MPLS网络中的标签交换路径(LSP)和标签交换路由器(LSR)定义、或可以另外在其它类型的主干中定义。在图3A中所示出的示例中,覆盖网络地址是位于与远程主机相同的网络站点中的远程边缘设备的IP地址。
主机L2地址作为密匙被用于搜索表30。该表提供边缘设备在转发在其接口所接收的分组时使用的信息。图3A中所示出的示例中的第一条目包括用于主机10B(MAC HB)的第2层(MAC)地址和相应的用于边缘设备18B(IP EDB)的IP地址。基于表30中的查找,在边缘设备18A处接收的并且目的地为主机10B(MAC HB)的分组被封装在具有IP报头(具有边缘设备18B(IP EDB)的目的地地址)的IP分组中。该分组在核心网14上被发送到边缘设备18B。在边缘设备18B处被接收并且目的地为主机10B的分组被剖离了它的覆盖IP报头并且被转发到主机10B。当数据库节点32A、32B向应映射请求时,条目可以被存储在表30中。
图3B示出了被存储在分布式数据库的数据库节点处的映射表34的示例。第一列包括主机(端点)L3地址。在一个示例中,第3层主机地址是被称为端点标识符(EID)的IP地址。第二列包括主机第2层地址和主干位置地址(位置标识符)。图3B的示例中所示出的条目包括被映射到主机10B(MAC HB)的第2层地址和边缘设备18B(IP EDB)的IP地址的主机10B(IP HB)的IP地址。第二列中的主机MAC地址和边缘设备地址可以被称为***。IP主机地址被用作表中的查找密匙。
如上面关于图3A和图3B所描述的,控制平面使用用于主机的第3层(IP)地址并且数据平面使用第2层(MAC)地址用于查找。如之前所讨论的,控制平面中的第3层地址的使用提供了可扩展性和潜在的地址聚集性。
图4是根据一个实施例示出了在边缘设备处被执行的用于利用第3层控制平面提供可扩展的第2层覆盖服务的过程的流程图。
在步骤50处第一边缘设备18A从第一主机10A接收包括针对第二主机10B的第3层地址的分组。该分组例如可以是控制分组(例如,ARP(地址解决方案协议)请求)或数据分组(例如,IP报头中的目的地地址指向主机10B的分组)。边缘设备18A不具有用于主机10B的第2层地址(高速缓存缺失)。边缘设备18A使用主机10B的第3层地址来从分布式数据库接收主机10B的第2层地址和位置标识符(步骤52和54)。如上所述,分布式数据库可从核心网14访问并且包括第3层主机地址到第2层主机地址和位置标识符的映射。当接收到来自分布式数据库的响应时,边缘设备18A将主机10B的第2层地址发送给主机10A(步骤56)。边缘设备18A还存储主机10B的L2地址和位置标识符(步骤58)。例如,边缘设备可以将主机IP地址到边缘设备IP地址(位置标识符)的映射存储在映射缓存控制平面条目中并且将具有主机MAC地址到边缘设备IP地址的映射的硬件编程到数据平面条目中。如果在步骤50处接收的分组是数据分组,分组可以被存储并且可以在查找(步骤52-54)之后被转发。
当边缘设备18A接收目的地为远程主机的分组(即,目的地为主机B或另一远程主机的数据分组)时,它使用目的地的MAC(L2)地址来查找它的本地映射表30中的相应的覆盖网络地址(位置标识符)(步骤60和步骤62)。如果MAC地址在该表中,则根据映射分组在覆盖上被转发(步骤64)。如果目的地的MAC地址未在本地映射表30中被找到,则如之前所述的,边缘设备查询数据库节点(步骤66)。一旦它接收了映射信息,则根据第2层主机地址到位置标识符(例如,边缘设备地址)的映射在覆盖网络上转发分组(步骤64)。
应该理解的是上述图4中所示出的过程仅是示例,并且在不脱离实施例的范围的情况下,这些步骤可以被添加、移除、修改、或重新排序。例如,边缘设备可以接收主机L2地址来响应被发送到分布式数据库的第一请求和接收位置标识符来响应第二查询(例如,步骤66)。
应该注意的是ARP仅是控制分组的一个示例并且可以使用其它协议,包括IPv6节点发现或可以与IPv4、IPv6或任何其它地址格式相关联的任何其它主机解决方案协议。
下面根据一个实施例提供了图4中所示出的过程的一个示例。在此示例中,主机A和B在核心网14上进行通信(如图1中所示)。主机A位于网络站点A内并且经由边缘设备A被连接到覆盖网络15。主机B位于网络站点B内并且经由边缘设备B被连接到覆盖。数据库节点A和数据节点B是分布式数据库的节点。
主机A具有下面的地址:
IP:IPHA
MAC:MHA
主机B具有下面的地址:
IP:IPHB
MAC:MHB
边缘设备A和边缘设备B分别具有面向地址IPEDA和IPEDB的主干。边缘设备可以在主干上互相到达并且提供位置A和位置B之间的L2覆盖服务。主机A和B在相同的子网内。
数据库节点A对于站点A是有权威的并且数据库节点B对于站点B是有权威的。权威的数据库节点针对位置(它对这些位置是权威的)保持MAC和IP地址(和它们的位置标识符)的详细状态。节点仅保持针对其它站点的地址的概要信息以及对要查阅的节点的指示,以便得到那些概要前缀内的地址的细节。例如,数据库节点A将具有到包含IPHB的前缀的概要路由。
下面描述了当主机A想要将分组发送到主机B时所采取的步骤:
1)主机A(IPHA)发送针对主机B(IPHB)的ARP(地址解决方案协议)请求。
2)边缘设备A拦截ARP请求并且就IPHB在数据库节点处查阅映射数据库。
2.1)为了查阅数据库,边缘设备A将针对IPHB的解决方案的请求发送到数据库节点A。
2.2)数据库节点A不具有IPHB的详细的信息,但它知道数据库节点B对于包含IPHB的前缀是有权威的,所以数据库节点A将该请求转发到数据库节点B。
2.3)数据库节点B具有包括IPHB的MAC地址(MHB)和它的位置(IPEDB)的IPHB的完整的信息。
2.4)数据库节点B以所请求的信息来回复来自边缘设备18A的请求。
3)边缘设备A从数据库回复学习到主机B(IPHB)具有MHB的MAC地址。
4)边缘设备A代表IPHB回复ARP请求(来自步骤(1))。边缘设备A用MAC地址MHB进行回复。
5)主机A缓存ARP回复并且开始发送流量到MHB。
6)边缘设备A接收目的地到MHB的分组并且在它的映射表中启动对于MHB的查找。
6.1)边缘设备A是处于混杂模式(作为L2交换机)从而使得它接收被寻址到MAC地址而不是它自己的地址的分组。边缘设备A得到目的地为主机B(MHB)的流量,因为MHB是未知的(并且洪泛的)或因为MHB之前已经被学习为源自覆盖(并且因此源自边缘设备A)。
7)使用MHB作为密匙以在边缘设备A处搜索本地映射缓存(映射表30)来完成主机B的位置的查找。如果发现匹配,流量根据被发现的映射被转发。
8)如果在映射缓存中未发现匹配,IPHB被用作密匙来将查询发送到数据库。IPHB被称为分组中的L3报头的一部分。此处步骤(2.1)-步骤(2.4)发生。
9)边缘设备A接收来自数据库的响应并且将端点MHB到位置IPEDB的映射缓存。应该注意的是该步骤可以在请求主机MAC地址的同时在步骤(2)处被完成。
10)随后的目的地为MHB的帧将匹配本地映射表中的条目并且将被封装和转发到IPEDB而不用在数据库中重复查找。
在另一示例中,数据库节点A和B包含被映射到位置标识符的主机第3层地址,并且主机第2层地址被存储在边缘设备处。在此示例中,来自上面的步骤2-2.4被下面的步骤所替代:
2)边缘设备A拦截ARP请求并且就IPHB查阅数据库节点处的映射数据库。
2.1)为了查阅数据库,边缘设备A将针对IPHB的解决方案的请求发送到数据库节点A。
2.2)数据库节点A不具IPHB的详细信息,但它知道数据库节点B针对包含IPHB的前缀是有权威的,所以数据库节点A将该请求转发到数据库节点B。
2.3)数据库节点B具有IPHB的位置信息。IPEDB(IPHB的位置或边缘设备)对IPHB是有权威的。数据库节点B将该请求转发到IPEDB。
2.4)IPEDB具有包括IPHB的MAC地址(MHB)和IPHB的位置(IPEDB)的IPHB的完整的信息。
2.5)IPEDB以所请求的信息回复来自边缘设备18A的请求。
如上所述,第一实施例通过使用包含主机的第2层和第3层地址二者的分布式数据库来允许使用第3层控制平面来提供可扩展的第2层覆盖服务。
第2层和第3层覆盖中的数据平面封装的联合
下面描述了可以被用于递送L2和L3覆盖服务的数据平面封装。在L3覆盖的情况中,用于L2内部报头的字段被保留,但是在转发过程中被忽略。这允许使用常用的硬件和标准封装来递送L2和L3覆盖服务。
针对L2覆盖的封装可以按如下构成:
<IP-外部-报头><覆盖-垫片><L2-内部-报头><有效载荷>
在L2覆盖中,L2内部报头包含关于在覆盖中通信的端点的源和目的地的重要的信息。
L3覆盖的等价的封装将不包括L2内部报头,而是仅具包含通信端点的源和目的地地址的重要信息的IP内部报头:
<IP-外部-报头><覆盖-垫片><IP-内部-报头><有效载荷>
该后一报头格式可以在应用平台中得到支持,但最流行的格式将是L2覆盖数据平面格式。
第二实施例可以被用于通过使用如图5中所示出的L2覆盖数据平面格式来实施L3覆盖。分组包括有效载荷字段70、IP内部报头72、L2内部报头74、覆盖垫片(标识传输类型的覆盖字段)76以及IP外部报头78。该报头格式允许硬件以常见封装支持L2和L3覆盖。当使用该格式用于L2覆盖时,可以包括或者不包括IP内部报头72,这依赖于有效载荷流量(不是IP分组)的性质。
当边缘设备18A、18B从主机10A、10B接收分组时,边缘设备添加覆盖垫片76和IP外部报头78,并且在保留L2内部报头74和IP内部报头72的情况下传送分组。
L2封装格式被用作L3覆盖的数据平面。在L3覆盖情况中,L2内部报头74仍然被包括,但是关于流源和目的地的重要的信息实际在IP内部报头72中。由于L3覆盖是基于路由的原则,其意味着在每个IP跳处重写源/目的地MAC地址,L2内部报头74的内容变得与转发操作不相关。这些字段被适当保持,仅为了任一服务(L2或L3)的数据平面之间的一致性的目的并且为了使用针对L2设计的硬件数据平面和提供L3服务。
提供L2或L3覆盖服务的控制平面机制与数据平面变体的使用是正交的,因此保持不受影响。
由于L2内部报头信息与转发不相关(并且不论如何对于最终的递送将必须重写),L2内部报头字段74中的比特可以被设为虚设值并且可以被忽略或可选择地被赋予新用途。在一个实施例中,L2内部报头74中的源和目的地地址(SA、DA)被设为0(0000.0000.0000)以指示“未使用”并且针对未来使用情况可以使用非零比特。IEEE 802.1Q字段可以可选地被包括作为L2内部报头74的一部分,并且当提供L3服务时它也是不相关的并且可以被归零或可选地赋予新用途。该L2内部报头74中的以太类型字段指示有效载荷70的性质(在L3服务的情况中,有效载荷70在IP报头后,在L2服务的情况中,在数据后)。
应该被指出的是,通过借助L3地址的聚集和概述,虚拟通道端点的实施可以做到对本地映射缓存(在底层网络上映射虚拟化(L3)地址)更有效的利用。
虽然根据示出的实施例描述了方法和装置,但是本领域的普通技术人员将容易理解的是在不脱离实施例的范围的情况下,可以做出变化。因此,旨在上述描述中包含的和附图中示出的所有事物应该被理解为说明性的而不是限制意义的。
Claims (20)
1.一种方法,包括:
在第一边缘设备处从第一主机接收分组,该分组包括与第二边缘设备通信的第二主机的第3层地址,在由通过核心网互连的所述边缘设备定义的覆盖网络中所述第一边缘设备与所述第二边缘设备进行通信;
使用所述第二主机的所述第3层地址以从可从所述核心网访问的数据库接收所述第二主机的第2层地址和位置标识符,所述数据库包括第3层主机地址到第2层主机地址和位置标识符的映射;以及
在所述第一边缘设备处存储所述第2层地址到所述位置标识符的映射,用于将分组转发到所述第二主机。
2.如权利要求1所述的方法,其中,所述位置标识符包括所述第二边缘设备的地址。
3.如权利要求1所述的方法,还包括:将所述第二主机的所述第2层地址发送到所述第一主机。
4.如权利要求1所述的方法,其中,所述分组包括控制分组。
5.如权利要求1所述的方法,其中,使用所述第3层地址以接收所述第2层地址和所述位置标识符包括:将来自所述第一边缘设备的包含所述第3层地址的请求发送到所述数据库。
6.如权利要求5所述的方法,其中,发送所述请求包括:针对所述第2层地址和所述位置标识符发送单独的请求。
7.如权利要求1所述的方法,其中,所述第3层主机地址到所述位置标识符的映射被存储在控制平面条目中。
8.如权利要求1所述的方法,还包括:封装从具有所述位置标识符的所述第一主机接收的流量并且解封装从所述第二边缘设备接收的流量。
9.如权利要求1所述的方法,其中,所述数据库包括分布式数据库,该分布式数据库包括多个数据库节点。
10.一种装置,包括:
存储器,所述存储器用于存储包括多个条目的数据库,每个所述条目各自包括被映射到第2层地址和位置标识符的第3层地址;
处理器,所述处理器用于接收主机的所述第3层地址并且针对主机的第2层地址和位置标识符搜索数据库、将所述第2层地址和所述位置标识符发送到位于覆盖网络内的边缘设备,所述覆盖网络由通过核心网互连的多个边缘设备定义;以及
接口,所述接口用于与所述核心网通信;
其中所述第3层地址被用在控制平面中以搜索数据库,并且所述第2层地址到所述位置标识符的映射被用在数据平面中。
11.如权利要求10所述的装置,其中,所述数据库是具有跨多个数据库节点共享的概述的第3层信息的分布式数据库的一部分。
12.如权利要求11所述的装置,其中,所述处理器被配置为识别所述第3层地址的前缀并且从所述数据库节点中的一个数据库节点请求所述第2层地址和所述位置标识符。
13.如权利要求11所述的装置,其中,每个所述数据库节点都与所述边缘设备中的一个边缘设备相关联。
14.如权利要求10所述的装置,其中,所述位置标识符包括所述边缘设备中的一个边缘设备的地址。
15.如权利要求10所述的装置,其中,所述第3层地址在来自所述边缘设备的请求中被接收。
16.如权利要求10所述的装置,其中,所述处理器被配置为将所述第2层地址和所述位置标识符以单独的消息发送到所述边缘设备。
17.一种被编码在一个或多个有形计算机可读介质上用于执行的逻辑,并且当所述逻辑被执行时能操作来执行以下处理:
接收包括第3层报头的分组,所述第3层报头包含针对源端点和目的地端点的信息;
在边缘设备处***覆盖字段和第3层外部报头;以及
在由通过核心网互连的多个边缘设备定义的第3层覆盖中,从所述边缘设备发送所述分组;
其中,从所述边缘设备被发送的所述分组包括第2层内部报头。
18.如权利要求17所述的逻辑,其中,所述外部第3层报头包括被用在转发所述分组中的源和目的地信息。
19.如权利要求17所述的逻辑,其中,所述第2层报头中的源和目的地信息被设为指示内容未使用的值。
20.如权利要求17所述的逻辑,其中,所述分组被配置为在被配置用于第2层覆盖服务的硬件数据平面中被发送。
Applications Claiming Priority (5)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US201261716284P | 2012-10-19 | 2012-10-19 | |
US61/716,284 | 2012-10-19 | ||
US13/751,717 | 2013-01-28 | ||
US13/751,717 US9240944B2 (en) | 2012-10-19 | 2013-01-28 | Overlay services in communication networks |
PCT/US2013/064882 WO2014062584A1 (en) | 2012-10-19 | 2013-10-14 | Overlay services in communication networks |
Publications (1)
Publication Number | Publication Date |
---|---|
CN104620544A true CN104620544A (zh) | 2015-05-13 |
Family
ID=50485284
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201380046890.3A Pending CN104620544A (zh) | 2012-10-19 | 2013-10-14 | 通信网络中的覆盖服务 |
Country Status (4)
Country | Link |
---|---|
US (1) | US9240944B2 (zh) |
EP (1) | EP2909978A1 (zh) |
CN (1) | CN104620544A (zh) |
WO (1) | WO2014062584A1 (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112703717A (zh) * | 2018-09-19 | 2021-04-23 | 思科技术公司 | 跨层3网络的端点的唯一身份 |
Families Citing this family (29)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9565034B2 (en) * | 2013-12-11 | 2017-02-07 | Cisco Technology, Inc. | System and method for scalable inter-domain overlay networking |
US10698569B2 (en) | 2014-04-03 | 2020-06-30 | Centurylink Intellectual Property Llc | System and method for implementing customer control point or customer portal |
US10356225B2 (en) * | 2014-04-03 | 2019-07-16 | Centurylink Intellectual Property Llc | System and method for implementing isolated service overlays between provider network service point and customer premises |
US9560174B2 (en) | 2014-06-18 | 2017-01-31 | Southwest Research Institute | Network routing overlay |
US9769088B2 (en) | 2014-07-31 | 2017-09-19 | Arista Networks, Inc. | Method and system for VTEP redundancy in a multichassis link aggregation domain |
US10038629B2 (en) | 2014-09-11 | 2018-07-31 | Microsoft Technology Licensing, Llc | Virtual machine migration using label based underlay network forwarding |
US9923800B2 (en) | 2014-10-26 | 2018-03-20 | Microsoft Technology Licensing, Llc | Method for reachability management in computer networks |
US9936014B2 (en) | 2014-10-26 | 2018-04-03 | Microsoft Technology Licensing, Llc | Method for virtual machine migration in computer networks |
US9747249B2 (en) * | 2014-12-29 | 2017-08-29 | Nicira, Inc. | Methods and systems to achieve multi-tenancy in RDMA over converged Ethernet |
US9967231B2 (en) * | 2015-03-18 | 2018-05-08 | Cisco Technology, Inc. | Inter-pod traffic redirection and handling in a multi-pod network environment |
JP6721869B2 (ja) * | 2015-03-24 | 2020-07-15 | 日本電気株式会社 | ネットワークシステム、ネットワーク制御方法および制御装置 |
US10541888B2 (en) * | 2015-03-24 | 2020-01-21 | Nec Corporation | Network system, network control method, and control apparatus |
US10481938B2 (en) | 2015-05-06 | 2019-11-19 | Centurylink Intellectual Property Llc | System and method for implementing network experience shifting |
US10673978B2 (en) | 2015-05-06 | 2020-06-02 | Centurylink Intellectual Property Llc | Method and system for implementing network experience shifting using shared objects |
US9800497B2 (en) | 2015-05-27 | 2017-10-24 | Cisco Technology, Inc. | Operations, administration and management (OAM) in overlay data center environments |
US10044502B2 (en) | 2015-07-31 | 2018-08-07 | Nicira, Inc. | Distributed VPN service |
US10567347B2 (en) * | 2015-07-31 | 2020-02-18 | Nicira, Inc. | Distributed tunneling for VPN |
JP6512990B2 (ja) * | 2015-08-05 | 2019-05-15 | アラクサラネットワークス株式会社 | 転送装置及び転送システム |
US10432520B2 (en) * | 2015-08-28 | 2019-10-01 | Nicira, Inc. | Traffic forwarding between geographically dispersed sites |
US20190044755A1 (en) * | 2016-03-02 | 2019-02-07 | Nec Corporation | Network system, control apparatus, method and program for building virtual network function |
US10110483B2 (en) | 2016-03-18 | 2018-10-23 | Cisco Technology, Inc. | Method and apparatus for creation of global network overlay with global parameters defining an end-to-end network |
EP3541116B1 (en) * | 2016-11-16 | 2021-04-28 | Huawei Technologies Co., Ltd. | Data migration method and device |
US11025539B1 (en) * | 2017-10-04 | 2021-06-01 | Cisco Technology, Inc. | Overlay network hardware service chaining |
US10516648B2 (en) | 2018-01-29 | 2019-12-24 | Hewlett Packard Enterprise Development Lp | Address translation |
US10999197B2 (en) * | 2018-11-30 | 2021-05-04 | Cisco Technology, Inc. | End-to-end identity-aware routing across multiple administrative domains |
US11153169B2 (en) * | 2019-02-28 | 2021-10-19 | Western Digital Technologies, Inc. | Distributed storage system with overlay network |
US11284298B2 (en) * | 2019-10-11 | 2022-03-22 | Qualcomm Incorporated | Header compression and decompression management |
US11637775B2 (en) * | 2021-02-19 | 2023-04-25 | Pensando Systems Inc. | Methods and systems for location identifier based forwarding |
US11716305B2 (en) * | 2021-06-29 | 2023-08-01 | Cisco Technology, Inc. | Control embedded data packet for efficient ARP query in SDA environment |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101765827A (zh) * | 2007-07-31 | 2010-06-30 | 思科技术公司 | 交叠传送虚拟化 |
Family Cites Families (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
GB2422515B (en) * | 2005-01-21 | 2009-05-27 | King S College London | A method of discovering multi-mode mobile terminals |
CN102971992B (zh) * | 2010-06-29 | 2016-03-09 | 华为技术有限公司 | 虚拟专用局域网设备、网络组件和数据帧转发方法 |
US9112804B2 (en) * | 2012-05-31 | 2015-08-18 | International Business Machines Corporation | Network congestion notification preservation and modification during transmission of network data between physical network and virtual network |
-
2013
- 2013-01-28 US US13/751,717 patent/US9240944B2/en active Active
- 2013-10-14 CN CN201380046890.3A patent/CN104620544A/zh active Pending
- 2013-10-14 EP EP13785701.7A patent/EP2909978A1/en not_active Withdrawn
- 2013-10-14 WO PCT/US2013/064882 patent/WO2014062584A1/en active Application Filing
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101765827A (zh) * | 2007-07-31 | 2010-06-30 | 思科技术公司 | 交叠传送虚拟化 |
US8645576B2 (en) * | 2007-07-31 | 2014-02-04 | Cisco Technology, Inc. | Overlay transport virtualization |
Non-Patent Citations (2)
Title |
---|
D.FARINACCI 等: "《LISP Map Server draft-fuller-lisp-ms-00》", 《IETF NETWORK WORKING GROUP》 * |
F.MAINO 等: "《LISP Control plane for network virtualization Overlays,draft-maino-nvo3-lisp-cp-01》", 《IETF NETWORK WORKING GROUP》 * |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112703717A (zh) * | 2018-09-19 | 2021-04-23 | 思科技术公司 | 跨层3网络的端点的唯一身份 |
CN112703717B (zh) * | 2018-09-19 | 2023-08-11 | 思科技术公司 | 跨层3网络的端点的唯一身份 |
Also Published As
Publication number | Publication date |
---|---|
US20140112349A1 (en) | 2014-04-24 |
EP2909978A1 (en) | 2015-08-26 |
WO2014062584A1 (en) | 2014-04-24 |
US9240944B2 (en) | 2016-01-19 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN104620544A (zh) | 通信网络中的覆盖服务 | |
CN102577270B (zh) | 用于云拓扑中企业扩展的可伸缩架构 | |
US9825847B2 (en) | System and method for enabling services chaining in a provider network | |
CN102971992B (zh) | 虚拟专用局域网设备、网络组件和数据帧转发方法 | |
CN103546374B (zh) | 一种边缘二层网络中转发报文的方法和装置 | |
CN104412551B (zh) | 具有虚拟机移动性的分组转发最优化 | |
CN102577255B (zh) | 云计算中企业的第2层无缝站点扩展 | |
JP6426879B2 (ja) | データパケット転送 | |
CN104052666B (zh) | 实现主机路由可达的方法和装置 | |
US8898334B2 (en) | System for network deployment and method for mapping and data forwarding thereof | |
CN102170386B (zh) | 身份标识与位置分离的实现方法、***及数据封装方法 | |
US9143429B2 (en) | Identifying an egress point to a network location | |
CN102088390B (zh) | 用户移动性的实现方法 | |
US9647923B2 (en) | Network device mobility | |
CN103841028A (zh) | 一种报文转发方法及设备 | |
JP2013504959A (ja) | バーチャルプライベートネットワークの実現方法及びシステム | |
CN105591907B (zh) | 一种路由获取方法和装置 | |
US10841211B2 (en) | End point mapping service to assist transport segment routing | |
WO2021014204A1 (en) | Domain name system-over-hypertext transfer protocol secure with edge cloud or content delivery network localization | |
WO2014207725A1 (en) | Method for enabling services chaining in a provider network | |
CN103490968B (zh) | 一种FCoE网络中跨数据中心互联的方法和设备 | |
Xu et al. | Hierarchical routing architecture (HRA) | |
CN101383758B (zh) | 多地址空间移动网络架构、路由器及数据发送方法 | |
CN105682073B (zh) | 一种基于lisp技术的移动ip分组的传输方法 | |
CN102638390A (zh) | 基于dhcp snooping的三层交换装置及方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
RJ01 | Rejection of invention patent application after publication | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20150513 |