CN104040527B - 通过三层网络连接二层域 - Google Patents
通过三层网络连接二层域 Download PDFInfo
- Publication number
- CN104040527B CN104040527B CN201380005373.1A CN201380005373A CN104040527B CN 104040527 B CN104040527 B CN 104040527B CN 201380005373 A CN201380005373 A CN 201380005373A CN 104040527 B CN104040527 B CN 104040527B
- Authority
- CN
- China
- Prior art keywords
- layer
- address
- interchanger
- data center
- address resolution
- 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
Links
Classifications
-
- 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
- H04L45/00—Routing or path finding of packets in data switching networks
-
- 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
-
- 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/74—Address processing for routing
- H04L45/742—Route cache; Operation thereof
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
在一个实施例中,一种方法包括:为第一二层数据中心中的三层路由器建立地址解析缓存,其中,所述地址解析缓存包括多个条目,每个条目包含主机网络地址、主机硬件地址、以及为主机服务的交换机的交换机标识符;在第一二层数据中心内拦截地址解析洪泛,所述地址解析洪泛为第二二层数据中心中的主机寻求地址解析;以及生成对地址解析洪泛的响应,所述响应指示第二二层数据中心中的源,其中,指示第二二层数据中心中的源的数据是从地址解析缓存中获取的。
Description
技术领域
本公开总地涉及通过三层连接来扩大二层域。
背景技术
创建大二层域(layer-2domain)是当前的行业趋势。例如,主计算机使用以太网或其他二层技术相互连接的数据中心是一种二层域的示例。在这样的数据中心中,主计算机使用它们的媒体访问控制(MAC)地址相互通信。这些计算机之间的通信由交换机提供,这些交换机将帧传递到它们期望的目的地MAC地址。更大的二层域可以通过利用诸如因特网之类的三层网络(layer-3network)连接多个二层数据中心来创建。
当前,诸如FabricPathTM/多链路透明互连(TRILL)和覆盖传输虚拟化(OTV)之类的联网技术尝试使得二层的大小超过当前极限成为现实。每种技术都有一系列优点,这些优点使得这种技术成为网络中的最理想的特定角色。通常,FabricPathTM技术适用于数据中心,而OTV适用于通过因特网协议(IP)使能的任意传输进行数据中心的互连。FabricPathTM技术通过仅基于会话学习将主机地址仅映射到边缘设备中的交换机标识符(IDs),来管理二层交换机内的信息。因此,核心交换机不建立MAC地址表,边缘交换机仅为与它们通信的主机建立MAC地址表。
在FabricPathTM技术中,与源主机相关联的交换机从源主机接收数据,并且封装该数据来创建帧。交换机通过添加报头来创建帧,该报头指定与目的地相关联的交换机的交换机ID。目的地处(在相同的二层域内)的交换机拆封该数据,并且将该数据传递给目的地主机。
OTV通过在二层域的边缘放置路由器来提供两个或更多个二层域之间的二层连接,其中,所述路由器维护已知主机的MAC地址表。这种OTV使能的三层路由器(layer-3router)通过互连的三层网络(使用合适的开销)将帧发送至另一个二层域处的另一个OTV路由器。这被称为“MAC路由”。不同二层域内的主机使用MAC地址来与充当三层部分中的中介的三层路由器进行通信。
目前这两种技术是松散耦合的,这导致网络的FabricPathTM技术和OTV部分之间的切换效率低下。例如,可以将相对大量的MAC地址信息存储于OTV和FabricPathTM技术之间的边界设备处。传统的OTV使用专用集成电路(ASIC)硬件存储器来在数据面上建立并维护MAC地址表,这是相对昂贵的。OTV路由器将寻求建立包含每个所连接的二层域中的所有主机的MAC地址的MAC地址表,但是在存在许多主机和/或许多二层域的场景中,该表的大小可以增长很大。此外,传统的二层地址解析协议(ARP)洪泛可能会导致大量二层域被连接的场景中的流量的过量。
发明内容
在一个实施例中,一种方法包括:为第一二层数据中心中的三层路由器建立地址解析缓存,其中,所述地址解析缓存包括多个条目,每个条目包含主机网络地址、主机硬件地址、以及为主机服务的交换机的交换机标识符;在第一二层数据中心内拦截地址解析洪泛,所述地址解析洪泛为第二二层数据中心中的主机寻找地址解析;以及生成对地址解析洪泛的响应,所述响应指示第二二层数据中心中的源,其中指示第二二层数据中心中的源的数据是从地址解析缓存中获取的。
在另一个实施例中,一种装置包括第一二层数据中心中的第一三层网络路由器。第一三层网络路由器包括:二层端口,所述二层端口与第一数据中心中的二层交换机通信;三层端口,所述三层端口与三层网络和第二二层数据中心处的第二三层路由器通信;处理器,所述处理器与三层端口和二层端口通信;以及存储器,所述存储器与处理器通信,所述存储器包括能够由处理器执行以执行以下操作的指令:(a)存储地址解析信息,所述地址解析信息为位于第一数据中心和第二数据中心中的多个主机提供以下信息:(i)硬件地址,(ii)网络地址,以及(iii)交换机标识符;(b)响应于接收到来自第一数据中心中的主机的地址解析请求,从地址解析缓存中检索针对第二数据中心中的主机的地址解析数据;(c)生成响应于地址解析请求并且包括指示第二数据中心中的源的源数据的帧;以及(d)经由二层端口将该帧转发至第一数据中心中的主机。
在另一个实施例中,逻辑被编码在一个或多个有形媒体上以供执行,当逻辑被执行时可操作来:为三层路由器建立地址解析缓存,其中,所述地址解析缓存包括多个条目,每个条目包含主机网络地址、主机硬件地址、以及为主机服务的交换机的交换机标识符;在本地二层域内拦截来自第一主机的地址解析请求,其中,第一主机位于本地二层域中,地址解析请求为位于远程二层域中的第二主机寻求地址解析;以及通过本地域中的三层路由器生成对地址解析请求的响应,该响应模拟来自第二主机的响应,其中,所述响应是通过从地址解析缓存访问与第二主机相关联的地址数据来创建帧生成的。
在另一个实施例中,一种方法包括:通过第一二层域中的三层路由器检查该三层路由器处的用于三层交换机硬件地址的流量;在三层路由器中实现交换机硬件地址列表的表格;以及访问至少一个交换机硬件地址,以通过三层网络将帧从第一二层域中的第一交换机发送至第二二层域中的第二交换机。
在另一个实施例中,一种方法包括:通过二层域中的三层路由器从二层域中的源交换机接收帧,所述帧包括MAC-in-MAC封装,其中,内部封装包括源硬件地址和目的地硬件地址,外部封装包括源交换机ID和目的地交换机ID;以及通过将三层报头添加至所述帧并且保存其MAC-in-MAC封装,来通过三层域将所述帧路由至第二二层域。
附图说明
图1是根据一个实施例的示例系统的图解。
图2是根据一个实施例的示例网络布局的图解。
图3是根据实施例的示例方法的图解。
图4是根据实施例的示例方法的图解。
具体实施方式
为了扩大二层域,各种实施例提高了三层连接功能。因而,在一个示例中,二层域(layer-2domain)包括其边缘处的三层路由器(layer-3router),该三层路由器将该二层域连接至其他二层域。如在使用FabricPathTM技术的传统系统中一样,在二层域内,边缘交换机使用会话学习来建立主机MAC地址表,并且核心交换机建立交换机ID表。三层路由器建立并维护交换机ID表,而不是主机MAC地址表。在典型配置中,交换机比主机少,因而在传统的OTV系统中通常认为交换机ID表比主机MAC地址表小。在一个特定示例中,就这一点而言,三层路由器通过保持交换机ID的硬件表并且从其中删除主机MAC地址,来类似于使用FabricPathTM技术的核心交换机进行操作。
在进一步的示例实施例中,用于特定二层域的三层路由器将来自ARP请求的数据缓存在存储器中。ARP缓存中的每个条目包括主机IP地址、主机MAC地址、以及与该主机相关联的交换机ID。三层路由器将其ARP缓存条目通知给其他三层路由器,以使这些三层路由器建立并维护相当全面的ARP缓存。ARP缓存被用来避免通过多个域的二层洪泛。因而,在一个示例中,三层路由器接收来自其域内的主机的ARP请求。三层路由器在其自身的ARP缓存内查看,而不是将ARP洪泛传递至其他二层域,并且如果ARP缓存具有请求主机需要的信息,那么三层路由器生成帧以发送回请求主机,该请求主机声称是来自地址将被解析的目的地的。
相比传统的二层扩大,上述实施例可以提供一个或多个优点。鉴于传统的OTV接口将创建大型的主机MAC地址表,上述实施例通过在存储器中实现ARP缓存并将交换机ID存储在硬件表中,来在三层路由器处提供全面的地址信息。因此,节省了硬件存储器。而且,可以通过利用二层域内的ARP缓存信息来最小化通过二层域的ARP洪泛。下面参考图1-4,更详细地描述示例实施例。
图1是根据一个实施例的示例系统100的图解。三层路由器110包括二层端口115和三层端口116。路由器110通过将数据中心150连接至三层网络160(三层网络160可以被连接至其他数据中心处的其他三层路由器,为了图解的方便没有在图1中示出),来为二层数据中心150服务。在该示例中,路由器110是为数据中心150服务的边缘路由器。网络160可以包括任意三层网络,诸如但不限于因特网。在一个示例中,数据中心150可以包括为诸如企业或消费者家庭之类的实体服务的企业网络或局域网(LAN),其中,数据中心150内的流量根据二层协议(诸如但不限于以太网)被交换。如在该示例中使用的,三层路由器110通过三层网络进行通信,并且还能够在二层数据中心150内进行通信。在一些实施例中,这样的三层路由器110也可以被称为OTV边缘设备。
路由器110经由端口115和116分别与数据中心150和网络160进行双向通信。路由器110被示出为仅具有两个端口115、116,但是应当明白,实施例的范围不限于两个端口。给定的实施例可以包括任意合适数目的二层端口和三层端口。
路由器110包括指令存储器111,该指令存储器111具有计算机可执行代码,所述计算机可执行代码由处理器112访问和执行。处理器112通过执行代码来提供本文描述的动作。
与传统的OTV路由器相比,路由器110在硬件存储器中建立并维护交换机ID列表,并且在RAM或其他廉价的可写存储器中建立并维护ARP缓存114。在其他实施例中,用来存储列表113和ARP缓存114的特定类型的存储器可以是不同的,所以实施例的范围不限于任何特定类型的存储器。然而,一些实施例可以通过修改其他传统的OTV路由器来实现,其中,硬件ASIC存储器中的主机MAC地址表被交换机ID表113代替,并且其中,现有的RAM或附加的RAM被用来存储ARP缓存114。下面对交换机ID列表113和ARP缓存114进行更详细的描述。
在图1的示例中,列表113用作转发表,并且其中的条目被限制为二层交换机的交换机ID(在一些实施例中也称为网桥ID)。当路由器110与二层数据中心处的另一个路由器进行通信时,路由器110接收经MAC-in-MAC封装的流量。在传统的OTV中,路由器110将外部报头去掉,学习内部源MAC地址,并将这些内部源MAC地址通知给其他三层路由器。然而,在该示例实施例中,路由器110只学习并通知(关于列表113)外部报头中的源MAC地址,其中,这些源MAC地址是二层交换机的交换机ID。
进一步在该示例中,路由器110在软件中创建ARP缓存114,该ARP缓存114具有二层网络中的主机的IP地址和MAC地址之间的映射(在一些实施例中,除路由器110的本地站点上的主机以外)。可以采用多种方式对ARP缓存114进行填充。在一个实施例中,通过在路由器110处监听ARP应答对ARP缓存114进行填充。在另一个实施例中,路由器110在学习时通过控制面来建立ARP缓存114,其中,路由器110在学习时通知针对内部报头的MAC到IP映射。
两种技术均为传统的OTV功能定义的一部分,并且它们的细节不在本公开的范围内。通过并在传统的OTV功能上,本实施例包括利用(交换机ID、主机MAC、主机IP)的三元组而不是传统的(主机MAC、主机IP)的两元组来填充缓存的概念。三元组中的交换机ID是被直接连接到特定主机的远程二层交换机的交换机ID。此外,路由器110可以通过对ARP应答的监听、通过OTV控制面中的明确通知、或通过任何其他合适的方法来填充ARP缓存114。实施例的范围不局限于用于填充ARP缓存114的任何特定方法。
在路由器110利用(交换机ID、主机MAC、主机IP)的三元组建立ARP缓存114之后,路由器110可以对一些针对远程MAC发布的ARP请求(即,针对不同数据中心处的由远程交换机服务的主机的MAC的ARP请求)进行应答。具体地,在一个实施例中,路由器110在发布这些应答时从二层的角度模拟远程交换机。路由器110使用缓存114中的交换机ID作为外部二层报头的源MAC地址,其中,外部二层报头封装了ARP应答。通过模拟远程交换机,路由器110生成了本地二层交换机利用正确的远程交换机ID来完成远程MAC地址的会话学习所必需的流量。
图2是根据一个实施例的示例网络布局200的图解。图2在数据中心150中包括路由器110。通过使用二层协议,路由器110被连接到核心交换机151和边缘交换机152。在该示例中,核心交换机指的是仅被直接连接到其他交换机的交换机,并且边缘交换机指的是被直接连接到至少一个主机(例如,主机153)的交换机。
数据中心150可以通过使用FabricPathTM技术来实现,FabricPathTM技术使用如上所述的会话学习来在边缘路由器中建立并维护交换机ID至主机MAC地址表。然而,实施例的范围不局限于严格根据FabricPathTM技术来实现数据中心150(或数据中心250),因为可以采用任意合适的二层数据中心实现,诸如TRILL或其他技术。
数据中心150通过三层网络160被连接到二层数据中心250。考虑到交换机151、152、251、252提供二层交换,路由器110、210提供通过三层网络160在数据中心150、250之间传递帧的能力。路由器110、210可以使用任何合适的三层开销和协议(诸如,传统的OTV所使用的)来中继二层数据中心150、250之间的通信。各种实施例不局限于任何用于三层通信的具体技术。
数据中心150包括主机设备153,数据中心250包括主机设备253。主机设备153、253可以包括任意类型的联网设备,诸如个人计算机、台式计算机、服务器计算机、视频会议控制台、游戏控制台等。而且,尽管为了简单,数据中心150、250被示出为分别仅具有两个交换机和一个主机,但是实施例的范围不限于此。各种实施例可以包括任意合适数目的核心交换机、边缘交换机、主机、以及路由器。而且,数据中心150被示出为仅连接到一个其他数据中心(数据中心250),但是实施例可以通过网络160和/或其他三层网络将任意合适数目的数据中心连接在一起。本文所述的原理可以扩展到更大数目的数据中心。
下面是在假设表格为空的初始状态下网络配置200中的各种设备的行为示例。主机153发送针对主机253的ARP请求。在该示例中,ARP请求被作为广播发送,因为主机153不知道主机253的MAC地址。
交换机152利用交换机152的源指示和被标记为洪泛的目的地来对ARP请求广播进行MAC封装。任何诸如交换机151之类的中间交换机接收广播帧,并且将其中继给端点。
路由器110最终接收该广播帧。响应于接收该帧,路由器110通过将交换机152的交换机ID添加到其转发表(例如,图1中的表113)来学习交换机152,并且将交换机152的交换机ID通知给其三层对等方(例如,路由器210,以及其他没有示出的对等方)。另外,路由器110还将ARP请求分组发送至其OTV对等方。
路由器210然后通过三层(layer-3)从路由器110接收广播。所述帧仍具有含有交换机152的源和广播目的地的外部MAC报头。路由器210贯穿数据中心250,通过核心交换机251将该帧中继至边缘交换机252。
交换机252接收该广播,移除外部MAC封装,并且将ARP请求递送至主机253。在一些实施例中,与会话学习更严格的观点一致,交换机252此时将不会安排绑定(交换机152、主机153),因为流量不是明确去往主机253的。但是其他实施例可以依据会话学习的具体规则安排绑定。
主机253然后采用单播帧对主机153进行ARP应答。交换机252接收该ARP应答,并且将该ARP应答封装至二层洪泛树。在一些实施例中,交换机252此时通过将其MAC地址和交换机ID添加至其表中来学习主机153(如果交换机252在接收该广播之后还没有做这些)。交换机252使用该洪泛树,因为此时主机153对于交换机252而言是一个未知的单播目的地。
该洪泛通过任意中间交换机(诸如交换机251)去往路由器210。路由器210通过将交换机252的交换机ID保存在其转发表来学习交换机252,并且将交换机252通知给其三层对等方。路由器210此时丢弃洪泛。
另外,路由器210监听来自交换机252的ARP应答,并且将ARP应答元组(主机253MAC,交换机252ID,主机253IP)通知给包括路由器110在内的三层对等方。路由器110从路由器210接收ARP应答通知,并且用三元组(主机253MAC,交换机252ID,主机253IP)来填充其ARP缓存。
主机153处的ARP过程随后针对主机253进行重试(例如,依照TCP协议),并且再次发送ARP请求。ARP请求被路由器110拦截,路由器110将ARP应答发送回主机153。路由器110通过用外部源地址(SA)=交换机252,外部目的地地址(DA)=交换机152,内部SA=主机253MAC,以及内部DA=主机153MAC对数据进行MAC封装来生成帧。
交换机152依照二层会话学习规则,接收经封装的ARP应答,对所述帧进行拆封,并且安排其转发表示出主机235MAC可经由交换机252获得。
主机153然后将单播帧发送给主机253,其中,所述单播帧不是ARP请求或应答。所述单播帧具有包括源主机MAC地址和目的地主机MAC地址的MAC封装。交换机152然后用外部 DA=交换机252和外部SA=交换机152对该帧进行封装。这是MAC-in-MAC封装,其中,内部MAC地址是源主机地址和目的地主机地址,外部MAC地址是源交换机ID和目的地交换机ID。
经封装的帧到达路由器110,并且现在被三层封装到路由器210。在该示例中,二层帧封装(上述MAC-in-MAC封装)保持不变。路由器210接收经封装的帧,移除三层报头,并且依照二层封装报头将该帧转发至交换机252。此时,MAC-in-MAC封装仍被保留。
交换机252接收该帧,然后移除指代交换机ID的外部二层封装,并且将该帧递送至主机253。基于二层封装的MAC-in-MAC报头内容,交换机252现在将在其转发表中将主机153安排为可经由交换机152到达。与早前发送至主机253的洪泛帧相比,该单播帧的接收使得交换机252依照二层会话学习的规则更新其转发表,因为所接收的分组被具体导向到被本地连接至交换机252的主机253。
根据图2的示例,两个或更多个二层域可以通过使得路由器在其转发表中仅学习交换机ID并对代理-ARP功能进行平衡来限制不同网络间的广播和未知的单播洪泛,来使用路由器(诸如,路由器110、210)进行互连。该实施例将会话学习(例如,FabricPathTM技术中的会话学习)的优点扩展超出了单个二层网络的范围。该实施例还通过限制三层转发表中的信息量解决了三层路由器的可扩缩性限制,从而避免了三层路由器穿过大量域学习所有二层主机的传统场景。
上述的示例行为仅示出了路由器110、210填充ARP缓存并响应ARP请求的一种方式。在另一个示例中,路由器110终止了来自数据中心150内的所有ARP请求。在接收到来自主机153的解析主机253地址的ARP请求后,路由器1101)将交换机152添加至其转发表,2)将交换机152转发表条目通知给路由器210,3)将三元组(主机153MAC,交换机152ID,主机153IP)缓存在其ARP缓存中,4)将该三元组通知给路由器210,并且5)丢弃洪泛。
假设路由器210以同样的方式运行,在一段时间后,由于正常操作,路由器210将把交换机252添加到其转发表中,学习三元组(主机253MAC,交换机252ID,主机253IP),并且将转发表条目和ARP缓存三元组二者通知给路由器110。这样,来自主机153的针对主机253的后续ARP请求将由路由器110基于路由器110的ARP缓存中的条目进行答复。这样的示例实施例削减了二层域之间的所有或几乎所有的洪泛。
因此,上述的两个示例实施例提供了一种ARP应答被缓存的技术,并且提供了一种ARP请求被缓存的技术。其他实施例可以以任意合适的方式填充ARP缓存,丢弃或传递ARP请求洪泛,并且答复ARP请求。
图3是根据实施例的示例方法300的图解。方法300可以由诸如,图2的路由器110的路由器执行。具体地,在一些实施例中,方法300由路由器处的硬件和/或由路由器处的处理器上执行的一个或多个软件过程执行。除了传统的二层和三层功能外,可以实现方法300中描述的功能。
在框310中,路由器建立地址解析缓存。在该示例中,地址解析缓存包括多个条目,并且每个条目包括主机的硬件地址(例如,MAC地址)、主机的网络地址(例如,IP地址)、以及与主机相关联的交换机的交换机ID(例如,交换机的MAC地址)。
如以上解释的,各种实施例可以以任意合适的方式填充地址解析缓存。一个示例实施例对发送ARP请求的本地主机的地址信息进行缓存。另一个示例实施例对包含在地址解析应答中的信息进行缓存。在一些实施例中,路由器通知新的缓存条目,以使其他二层域中的路由器可以利用所通知的信息来填充其缓存。在框310中可以使用任何合适的技术来填充地址解析缓存。
在框320中,路由器拦截其本地二层数据中心内的地址解析洪泛。该地址解析洪泛为远程二层数据中心中的主机寻求解析地址。在一个示例中,本地二层数据中心中的主机发送ARP请求作为该数据中心内的洪泛。路由器接收该洪泛并且在其地址解析缓存中对将满足该请求的数据进行查核。
在框330中,路由器生成对地址解析洪泛的响应。在该示例中,路由器在其地址解析缓存内进行查核,并且识别地址解析缓存中满足该洪泛中承载的地址解析请求的数据。
然后,路由器使用来自缓存的信息生成地址解析响应。这样,路由器模拟远程二层数据中心中的源。所述响应可以采用二层帧的形式,所述二层帧具有这样的报头数据,该报头数据指示与所请求的主机相同的源主机以及支持所请求的主机的边缘交换机的源交换机ID。因此,即使该帧由本地路由器生成,该帧看起来也是由远程主机生成的,该远程主机是地址解析请求的目标。
实施例的范围不局限于图3中所示的具体方法。例如,各种实施例可以添加、删除、重新安排、或修改一个或多个动作。例如,如果附加的地址被请求解析,那么各种实施例可以多次执行方法300。在一些实施例中,路由器可以响应于解析所请求的地址或简单地学习发送端的地址然后丢弃该请求,在本地终止洪泛。在其他实施例中,本地路由器可以通过三层中继其不能在本地满足的那些地址解析请求。
图4是根据实施例的示例方法400的图解。方法400可以由诸如,图2的路由器110的路由器执行。具体地,在一些实施例中,方法400由路由器处的硬件和/或由路由器处的处理器上执行的一个或多个软件过程执行。除了传统的二层和三层功能外,可以实现方法400中描述的功能。
在框410中,路由器通过检查流量来建立交换机ID的转发列表。路由器可以捕获(sniff)地址解析应答、地址解析请求、数据分组、和/或该路由器接收到的其他通信。在一些示例中,路由器在硬件存储器中(例如,诸如在ASIC中)建立并维护交换机ID的列表,尽管各种实施例可以在任何合适的存储器设备中维护交换机ID的列表。
在框420中,路由器将交换机ID通知给远程数据中心中的其他三层路由器。所述其他三层路由器也可以将数据保存在它们的转发表中。
在框430中,路由器访问其转发表中的至少一个交换机标识符,以通过三层网络将帧从其本地数据中心发送至远程数据中心。因而,路由器使用其转发表来将帧转发至远程交换机。在该示例中,路由器接收经MAC-in-MAC封装的帧,其中,内部MAC封装包括源主机MAC地址和目的地主机MAC地址,并且外部MAC封装包括源交换机ID和目的地交换机ID。MAC-in-MAC封装被保存在路由器处,该路由器将附加的三层报头放置在该帧上,并且将该帧作为三层分组转发至接收路由器。尽管不是方法400的一部分,但是应该注意的是,MAC-in-MAC封装被保留,直到该帧到达目的地交换机为止。
方法400可以通过修改传统的OTV路由器来实现,或者可以通过使用任意的为本地二层数据中心服务的三层路由器实现。换句话说,尽管方法400的实施例可以采用源学习和通知,但是各种实施例可以或者可以不建立在OTV上。
方法300和400可以一起被实现,以使三层路由器比传统路由器更有效。例如,不是在转发表中存储主机地址,方法400存储交换机ID。在大多数实例中,交换机ID的数目将比主机的数目少,因而通常可以认为存储交换机ID更加具有空间有效性。然而,主机地址仍然被路由器存储,但是这些地址被存储在作为地址解析缓存的较便宜的存储器中。
因而,各种实施例通过将主机地址移至软件存储设备来更加有效地使用路由器存储器。但是这样的改变不会牺牲会话学习或二次域的隔离的优点。如上述示例中所示,会话学习可以用来填充地址解析缓存,并且各种二次域仍可以彼此隔离。
当经由计算机可执行指令实现本公开的实施例的各种元件时,这些元件实际上是定义这些各种元件的操作的软件代码。这些可执行指令或软件代码可以从有形可读介质(例如,硬驱动媒体、光学媒体、RAM、EPROM、EEPROM、磁带媒体、盒(cartridge)媒体、闪速存储器、ROM、记忆棒、网络存储设备,等等)中获得。实际上,可读媒体可以包括任何可以存储信息的介质。
计算机可执行指令可以由处理器来执行,该处理器可以包括通用中央处理器(CPU)、专用CPU(例如,数字信号处理器)、现场可编程门阵列(FPGA)、ASIC等。事实上,本领域技术人员可以使用能够根据本公开的实施例执行逻辑操作的任意数目的合适结构。
应当明白,可以利用所附权利要求的精神和范围内的修改和替换来实施本发明。本说明书不是详尽无遗的,也不用来将本发明限制到所公开的精确形式。应当明白,本发明可以通过修改和替换来实施,并且本发明只能由权利要求及其等同来限定。
Claims (12)
1.一种通过三层网络来连接二层域的方法,包括:
在第一二层数据中心中的三层路由器中执行以下动作:
为所述第一二层数据中心中的所述三层路由器建立地址解析缓存,其中,所述地址解析缓存包括多个条目,所述条目中的每个条目包含主机网络地址、主机硬件地址、以及为主机服务的交换机的交换机标识符;
在所述第一二层数据中心内拦截地址解析洪泛,所述地址解析洪泛为第二二层数据中心中的主机寻求地址解析;以及
生成对所述地址解析洪泛的响应,该响应指示所述第二二层数据中心中的源,其中,指示所述第二二层数据中心中的源的数据是从所述地址解析缓存中获取的。
2.如权利要求1所述的方法,还包括:
在所述三层路由器中实现交换机标识符列表的表格;以及
访问所述交换机标识符中的至少一个,以通过三层网络将帧从所述第一二层数据中心中的第一交换机发送至所述第二二层数据中心中的第二交换机。
3.如权利要求2所述的方法,还包括:
通过在所述三层路由器处检查用于所述交换机标识符的流量,建立所述交换机识别符列表;以及
将所述交换机标识符通知给所述第二二层数据中心中的三层路由器。
4.如权利要求1所述的方法,其中,所述三层路由器包括覆盖传输虚拟化(OTV)路由器。
5.如权利要求1所述的方法,其中,所述硬件地址包括MAC地址。
6.如权利要求1所述的方法,其中,所述网络地址包括IP地址。
7.如权利要求1所述的方法,还包括:
将所述地址解析缓存通知给所述第二二层数据中心中的三层路由器。
8.如权利要求1所述的方法,其中,建立所述地址解析缓存包括:
响应于在所述三层路由器处从没有被包括在所述地址解析缓存中的源主机接收到地址解析请求,缓存所述源主机的硬件地址、网络地址、以及交换机ID;以及
缓存由所述第二二层数据中心中的三层路由器通知的地址解析数据。
9.如权利要求1所述的方法,其中,建立所述地址解析缓存包括:
缓存来自地址解析响应的数据,其中,所述地址解析响应是从所述第二二层数据中心接收的。
10.一种通过三层网络来连接二层域的方法,包括:
在二层域中的三层路由器中执行以下动作:
通过所述二层域中的所述三层路由器从所述二层域中的源交换机接收帧,所述帧包括MAC-in-MAC封装,其中,内部封装包括源硬件地址和目的地硬件地址,并且外部封装包括源交换机ID和目的地交换机ID;
通过将三层报头添加至所述帧并且保存其MAC-in-MAC封装来通过三层域将所述帧路由至第二二层域;以及
为所述三层路由器建立地址解析缓存,其中,所述地址解析缓存包括多个条目,所述条目中的每个条目包含主机网络地址、主机硬件地址、以及为主机服务的交换机的交换机标识符,其中,所述地址解析缓存被建立在与存储交换机硬件地址列表的存储器不同的存储器中。
11.如权利要求10所述的方法,还包括:
检查所述帧;以及
将所述源交换机ID和所述目的地交换机ID中的至少一个添加至存储交换机硬件地址列表的存储器中。
12.如权利要求11所述的方法,其中,所述交换机硬件地址列表被作为在专用集成电路(ASIC)中实现的转发表来存储。
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US13/349,376 US9363225B2 (en) | 2012-01-12 | 2012-01-12 | Connecting layer-2 domains over layer-3 networks |
US13/349,376 | 2012-01-12 | ||
PCT/US2013/020943 WO2013106513A1 (en) | 2012-01-12 | 2013-01-10 | Connecting layer-2 domains over layer-3 networks |
Publications (2)
Publication Number | Publication Date |
---|---|
CN104040527A CN104040527A (zh) | 2014-09-10 |
CN104040527B true CN104040527B (zh) | 2017-10-27 |
Family
ID=48779893
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201380005373.1A Active CN104040527B (zh) | 2012-01-12 | 2013-01-10 | 通过三层网络连接二层域 |
Country Status (4)
Country | Link |
---|---|
US (1) | US9363225B2 (zh) |
EP (1) | EP2802995B1 (zh) |
CN (1) | CN104040527B (zh) |
WO (1) | WO2013106513A1 (zh) |
Families Citing this family (21)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9525564B2 (en) | 2013-02-26 | 2016-12-20 | Zentera Systems, Inc. | Secure virtual network platform for enterprise hybrid cloud computing environments |
US9699034B2 (en) | 2013-02-26 | 2017-07-04 | Zentera Systems, Inc. | Secure cloud fabric to connect subnets in different network domains |
US10382401B1 (en) | 2013-02-26 | 2019-08-13 | Zentera Systems, Inc. | Cloud over IP for enterprise hybrid cloud network and security |
US10348767B1 (en) | 2013-02-26 | 2019-07-09 | Zentera Systems, Inc. | Cloud over IP session layer network |
US10484334B1 (en) | 2013-02-26 | 2019-11-19 | Zentera Systems, Inc. | Distributed firewall security system that extends across different cloud computing networks |
US10356037B2 (en) * | 2013-08-01 | 2019-07-16 | Hewlett Packard Enterprise Development Lp | Address resolution rewriting |
CN104378297B (zh) * | 2013-08-15 | 2018-01-16 | 新华三技术有限公司 | 一种报文转发方法及设备 |
US9485115B2 (en) | 2014-04-23 | 2016-11-01 | Cisco Technology, Inc. | System and method for enabling conversational learning in a network environment |
US20160352731A1 (en) * | 2014-05-13 | 2016-12-01 | Hewlett Packard Enterprise Development Lp | Network access control at controller |
CN104168213A (zh) * | 2014-08-18 | 2014-11-26 | 福建星网锐捷网络有限公司 | 二层互联网络中数据报文处理方法、装置及网络设备 |
US9497200B2 (en) | 2015-02-16 | 2016-11-15 | International Business Machines Corporation | Managing limited network access configuration |
WO2017052602A1 (en) * | 2015-09-25 | 2017-03-30 | Nokia Solutions And Networks Oy | Proximity services layer-2 id collision detection |
CN106936939B (zh) * | 2015-12-31 | 2020-06-02 | 华为技术有限公司 | 一种报文处理方法、相关装置及nvo3网络系统 |
CN108702338B (zh) * | 2016-02-24 | 2022-11-29 | 哈曼国际工业有限公司 | 具有第2层和第3层保留的数据流式传输 |
US10454877B2 (en) * | 2016-04-29 | 2019-10-22 | Cisco Technology, Inc. | Interoperability between data plane learning endpoints and control plane learning endpoints in overlay networks |
US10516645B1 (en) | 2017-04-27 | 2019-12-24 | Pure Storage, Inc. | Address resolution broadcasting in a networked device |
US10965593B2 (en) | 2019-06-12 | 2021-03-30 | Cisco Technology, Inc. | Optimizations for PE-CE protocol session handling in a multi-homed topology |
US11575594B2 (en) | 2020-09-10 | 2023-02-07 | Mellanox Technologies, Ltd. | Deadlock-free rerouting for resolving local link failures using detour paths |
US11411911B2 (en) * | 2020-10-26 | 2022-08-09 | Mellanox Technologies, Ltd. | Routing across multiple subnetworks using address mapping |
US11870682B2 (en) | 2021-06-22 | 2024-01-09 | Mellanox Technologies, Ltd. | Deadlock-free local rerouting for handling multiple local link failures in hierarchical network topologies |
US11765103B2 (en) | 2021-12-01 | 2023-09-19 | Mellanox Technologies, Ltd. | Large-scale network with high port utilization |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101765827A (zh) * | 2007-07-31 | 2010-06-30 | 思科技术公司 | 交叠传送虚拟化 |
WO2011150396A1 (en) * | 2010-05-28 | 2011-12-01 | Huawei Technologies Co., Ltd. | Virtual layer 2 and mechanism to make it scalable |
Family Cites Families (14)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP3846625B2 (ja) * | 2001-10-23 | 2006-11-15 | Kddi株式会社 | モバイルipを利用したデータ転送方式 |
US7415028B1 (en) | 2003-02-11 | 2008-08-19 | Network Equipment Technologies, Inc. | Method and system for optimizing routing table changes due to ARP cache invalidation in routers with split plane architecture |
KR20060000342A (ko) * | 2004-06-28 | 2006-01-06 | 주식회사 이지브로네트웍스 | 에지 내 라우팅 없는 프레미시스(premises)ip통신 장치 및 이를 이용한 통신 방법 |
US20060126614A1 (en) * | 2004-12-09 | 2006-06-15 | International Business Machines Corporation | Automatic network configuration |
EP1780943A1 (en) | 2005-10-31 | 2007-05-02 | Hewlett-Packard Development Company, L.P. | Discovery of ISO Layer-2 Topology |
US8259720B2 (en) | 2007-02-02 | 2012-09-04 | Cisco Technology, Inc. | Triple-tier anycast addressing |
JP4717909B2 (ja) * | 2008-08-14 | 2011-07-06 | 富士通株式会社 | フレームスイッチング装置、通信システム、コンピュータプログラム及びアドレス学習方法 |
US7787480B1 (en) | 2009-03-04 | 2010-08-31 | Juniper Networks, Inc. | Routing frames in a trill network using service VLAN identifiers |
US8259726B2 (en) * | 2009-05-28 | 2012-09-04 | Force10 Networks, Inc. | Method and apparatus for forwarding table reduction |
US8363666B2 (en) * | 2010-02-22 | 2013-01-29 | Cisco Technology, Inc. | Multiple network architecture providing for migration of devices |
US8897303B2 (en) * | 2010-06-29 | 2014-11-25 | Futurewei Technologies, Inc. | Delegate gateways and proxy for target hosts in large layer 2 and address resolution with duplicated internet protocol addresses |
CN102971992B (zh) * | 2010-06-29 | 2016-03-09 | 华为技术有限公司 | 虚拟专用局域网设备、网络组件和数据帧转发方法 |
US8681802B2 (en) * | 2011-08-15 | 2014-03-25 | Cisco Technology, Inc. | Proxy FHRP for anycast routing service |
JP5870192B2 (ja) * | 2011-08-17 | 2016-02-24 | ニシラ, インコーポレイテッド | 論理l3ルーティング |
-
2012
- 2012-01-12 US US13/349,376 patent/US9363225B2/en active Active
-
2013
- 2013-01-10 WO PCT/US2013/020943 patent/WO2013106513A1/en active Application Filing
- 2013-01-10 EP EP13735784.4A patent/EP2802995B1/en active Active
- 2013-01-10 CN CN201380005373.1A patent/CN104040527B/zh active Active
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101765827A (zh) * | 2007-07-31 | 2010-06-30 | 思科技术公司 | 交叠传送虚拟化 |
WO2011150396A1 (en) * | 2010-05-28 | 2011-12-01 | Huawei Technologies Co., Ltd. | Virtual layer 2 and mechanism to make it scalable |
Also Published As
Publication number | Publication date |
---|---|
EP2802995A1 (en) | 2014-11-19 |
US9363225B2 (en) | 2016-06-07 |
US20130182604A1 (en) | 2013-07-18 |
EP2802995A4 (en) | 2015-11-18 |
CN104040527A (zh) | 2014-09-10 |
EP2802995B1 (en) | 2019-05-15 |
WO2013106513A1 (en) | 2013-07-18 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN104040527B (zh) | 通过三层网络连接二层域 | |
CN104935516B (zh) | 基于软件定义网络的通信系统及方法 | |
CN104396192B (zh) | 不对称网络地址封装 | |
US9749230B2 (en) | Method of sending address correspondence in a second layer protocol of applying link state routing | |
CN103227757B (zh) | 一种报文转发方法及设备 | |
CN105453523B (zh) | 用于确保流量的无缝流动的方法和装置 | |
CN103947160B (zh) | 通过基于trill的网络承载fcoe帧的方法 | |
US20130259050A1 (en) | Systems and methods for multi-level switching of data frames | |
CN102859973A (zh) | 一种地址解析的方法,装置和系统 | |
JP2006524974A5 (zh) | ||
CN102025658B (zh) | 身份标识网络与互联网互通的实现方法和系统 | |
CN102647487B (zh) | 一种节约ip地址的方法及接入代理设备 | |
CN104852855B (zh) | 拥塞控制方法、装置及设备 | |
US8724630B2 (en) | Method and system for implementing network intercommunication | |
CN105556916A (zh) | 网络流的信息统计方法和装置 | |
CN107770072A (zh) | 一种发送和接收报文的方法和设备 | |
CN109547452A (zh) | Linux网桥设备上实现TCP透明代理的方法及系统 | |
CN104486227B (zh) | 通过VxLAN技术实现IPv6灵活部署的系统及方法 | |
CN107181681A (zh) | Sdn二层转发方法及系统 | |
KR20180025944A (ko) | Sdn 기반의 arp 구현 방법 및 장치 | |
CN106209616A (zh) | 一种泛洪抑制方法及装置 | |
CN102891903A (zh) | 一种nat转换方法及设备 | |
CN102821020B (zh) | 通过复制中转ip包来透传vpn通信的方法 | |
CN104579704B (zh) | 组播数据报文的转发方法及装置 | |
CN103152265B (zh) | 一种spb网络中的报文转发方法和设备 |
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 |