CN107332772A - 转发表项建立方法和装置 - Google Patents
转发表项建立方法和装置 Download PDFInfo
- Publication number
- CN107332772A CN107332772A CN201610285803.5A CN201610285803A CN107332772A CN 107332772 A CN107332772 A CN 107332772A CN 201610285803 A CN201610285803 A CN 201610285803A CN 107332772 A CN107332772 A CN 107332772A
- Authority
- CN
- China
- Prior art keywords
- address
- vtep
- mac address
- gateway device
- layer gateway
- 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
- 238000000034 method Methods 0.000 title claims abstract description 73
- 230000004044 response Effects 0.000 claims description 121
- 230000008859 change Effects 0.000 claims description 4
- 238000004891 communication Methods 0.000 abstract description 35
- 230000006870 function Effects 0.000 description 19
- 238000010586 diagram Methods 0.000 description 14
- 238000005538 encapsulation Methods 0.000 description 12
- 238000004806 packaging method and process Methods 0.000 description 8
- 230000008569 process Effects 0.000 description 6
- 230000010076 replication Effects 0.000 description 4
- 230000008878 coupling Effects 0.000 description 3
- 238000010168 coupling process Methods 0.000 description 3
- 238000005859 coupling reaction Methods 0.000 description 3
- 238000006467 substitution reaction Methods 0.000 description 2
- 230000003287 optical effect Effects 0.000 description 1
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/74—Address processing for routing
-
- 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
- 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
- H04L47/00—Traffic control in data switching networks
- H04L47/10—Flow control; Congestion control
- H04L47/12—Avoiding congestion; Recovering from congestion
- H04L47/125—Avoiding congestion; Recovering from congestion by balancing the load, e.g. traffic engineering
-
- 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/4604—LAN interconnection over a backbone network, e.g. Internet, Frame Relay
- H04L2012/4629—LAN interconnection over a backbone network, e.g. Internet, Frame Relay using multilayer switching, e.g. layer 3 switching
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L2101/00—Indexing scheme associated with group H04L61/00
- H04L2101/60—Types of network addresses
- H04L2101/618—Details of network addresses
- H04L2101/622—Layer-2 addresses, e.g. medium access control [MAC] addresses
-
- 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/58—Association of routers
- H04L45/586—Association of routers of virtual routers
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L47/00—Traffic control in data switching networks
- H04L47/10—Flow control; Congestion control
- H04L47/32—Flow control; Congestion control by discarding or delaying data units, e.g. packets or frames
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L49/00—Packet switching elements
- H04L49/35—Switches specially adapted for specific applications
- H04L49/354—Switches specially adapted for specific applications for supporting virtual local area networks [VLAN]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L49/00—Packet switching elements
- H04L49/70—Virtual switches
-
- 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]
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
本发明实施例提供了一种用于VXLAN的转发表项建立方法,VXLAN的数据中心包括第一三层网关设备、第二三层网关设备、与第一三层网关设备和第二三层网关设备相连的第一二层网关设备;第一二层网关设备与第一主机相连;第一三层网关设备和第二三层网关具有共有IP地址、共有MAC地址和共有VTEP标识,第一三层网关设备和第二三层网关分别具有独有IP地址、独有MAC地址和独有VTEP标识;方法包括:第一三层网关设备利用独有P地址,独有MAC地址和独有VTEP标识,建立用于与第一主机通信的转发表项。本申请实施例一个主机与多个三层网关设备进行直接通信时,三层网关设备和主机之间进行通信的转发表项的正确建立。
Description
技术领域
本申请实施例涉及通信领域,并且更具体地,涉及一种用于(virtualExtensible Local Area Network,VXLAN)的转发表项建立方法
背景技术
VXLAN的数据中心可以包括三层网关设备和二层网关设备。不同的三层网关设备连接不同的二层网关设备,不同的二层网关设备连接不同的主机。由此,一个主机只能通过与其相连的二层网关设备,与一个三层网关设备进行直接通信,导致数据中心的通信方式不够灵活,其中,这里的主机与三层网关设备直接进行通信是指不需要经过其他三层网关设备。
如何实现一个主机能够与多个三层网关设备进行直接通信,具体包括如何实现用于三层网关设备和主机之间进行通信的转发表项的建立,是一项亟待解决的问题。
发明内容
本申请实施例提供了一种用于VXLAN的转发表项建立方法和装置,数据中心和存储介质,可以实现在三层网关设备和主机之间进行通信的转发表项的建立,并实现在一个主机与多个三层网关设备进行直接通信。
第一方面,提供了一种在三层网关设备上实施用于VXLAN的转发表项的建立方法,所述VXLAN的数据中心包括至少两个三层网关设备、分别与所述至少两个三层网关设备相连的二层网关设备;其中,所述二层网关设备设备连接主机;各所述三层网关设备具有与其他三层网关设备共有的虚地址和虚标识,所述虚地址包括虚互联网协议IP地址以及虚媒体接入控制MAC地址,所述虚标识包括与所述虚IP地址和所述虚MAC地址对应的虚VXLAN隧道终端VTEP标识,各所述三层网关设备还具有独有的实地址和实标识,所述实地址包括实IP地址以及实MAC地址,所述实标识包括与所述实IP地址和所述实MAC地址对应的实VTEP标识;所述二层网关设备具有VTEP标识;所述主机具有IP地址以及与所述IP对应的MAC地址;所述方法包括:
所述三层网关设备利用其自己的实IP地址、实MAC地址和实VTEP标识以及所述主机的IP地址获取所述主机的MAC地址以及所述二层网关设备的VTEP标识;基于所述三层网关设备自己的实IP地址、实MAC地址和实VTEP标识,所述主机的IP地址,所述主机的MAC地址,以及所述二层网关设备的VTEP标识建立转发表项,所述转发表项的源IP地址为所述三层网关设备自己的实IP地址,源MAC地址为所述所述三层网关设备自己的实MAC地址,目的IP地址为所述主机的IP地址,目的MAC地址为所述主机的MAC地址,以及所述转发表项还包括用于指示所述主机的MAC地址对应于所述二层网关的VTEP标识的信息。
通过在三层网关设备上利用其独有的实地址(包括实IP地址和实MAC地址)和实VTEP标识,主机的IP地址和MAC地址,以及二层网关设备的VTEP标识建立转发表项,可以避免由于多个三层网关设备共有虚地址所引起的应该到达某个特定三层网关设备的报文被发送到具有共同虚拟地址的其他三层网关设备的问题,从而实现一个主机与多个三层网关设备分别进行直接通信。另外,由三层网关设备自己建立转发表项,可以不依赖于控制器建立的转发表项,从而可以避免过于依赖控制器的状况而影响主机与多个三层网关设备之间的通信。
结合第一方面,在第一方面的第一种可能的实现方式中,所述VXLAN的数据中心包括第一三层网关设备、第二三层网关设备、分别与所述第一三层网关设备和所述第二三层网关设备相连的第一二层网关设备;其中,所述第一二层网关设备设备连接第一主机;所述第一三层网关设备具有第一互联网协议IP地址、第二IP地址、与所述第一IP地址对应的第一媒体接入控制MAC地址,与所述第二IP地址对应的第二MAC地址、与所述第一IP地址和所述第一MAC地址对应的第一VXLAN隧道终端VTEP标识以及与所述第二IP地址和所述第二MAC地址对应的第二VTEP标识;所述第二三层网关设备具有所述第一IP地址、第三IP地址、所述第一MAC地址、与所述第三IP地址对应的第三MAC地址、所述第一VTEP标识以及与所述第三IP地址和所述第三MAC地址对应的第三VTEP标识;所述第一二层网关设备具有第四VTEP标识;所述第一主机具有第四IP地址和与所述第四IP地址对应的第四MAC地址;其中,所述第一IP地址、所述第二IP地址、所述第三IP地址和所述第四IP地址互不相同,所述第一MAC地址、所述第二MAC地址、所述第三MAC地址和所述第四MAC地址互不相同,所述第一VTEP标识、所述第二VTEP标识、所述第三VTEP标识和所述第四VTEP标识互不相同;所述方法包括:所述第一三层网关设备利用所述第二IP地址、所述第二MAC地址、所述第二VTEP标识和所述第四IP地址,获取所述第一主机的所述第四MAC地址,以及所述第一二层网关设备的所述第四VTEP,其中所述第二IP地址为所述第一三层网关设备所独有的IP地址,所述第二MAC地址为所述第一三层网关设备所独有的MAC地址,所述第二VTEP标识为所述第一三层网关设备所独有的VTEP标识,其中所述第二IP地址为所述第一三层网关设备所独有的IP地址,所述第二MAC地址为所述第一三层网关设备所独有的MAC地址,所述第二VTEP标识为所述第一三层网关设备所独有的VTEP标识;基于所述第二IP地址、所述第二MAC地址、所述第二VTEP标识、所述第四IP地址、所述第四MAC地址和所述第四VTEP标识,建立第一转发表项,其中,所述第一转发表项的源IP地址为所述第二IP地址,源MAC地址为所述第二MAC地址,目的IP地址为所述第四IP地址,目的MAC地址为所述第四MAC地址,以及所述第一转发表项用于指示所述第四MAC地址对应于所述第四VTEP标识。
因此,在本申请实施例中,至少两个三层网关设备具有共有的IP地址,共有的MAC地址和共有的VTEP标识,以及分别具有独有的IP地址,独有的MAC地址和独有的VTEP标识,三层网关设备基于独有的第二IP地址,独有的第二MAC地址和独有的第二VTEP标识建立转发表项,可以实现主机与第一三层网关之间的正常通信,避免由于第一和第二三层网关设备之间共有的地址和标识,而造成应该到达该第一三层网关设备的报文被发送到该第二三层网关设备。具体地,三层网关设备基于独有的IP地址,独有的MAC地址和独有的VTEP标识向主机广播地址请求报文,主机反馈的且经由二层网关设备的地址响应报文携带该三层网关设备独有的IP地址,独有的MAC地址和独有的VTEP标识,则该地址响应报文不会被发送至其他三层网关设备,从而可以正确建立转发表项,可以实现网关设备到主机设备的流量的及时发送。此外,由该第一三层网关设备自己建立转发表现,可以实现不依赖于控制器来建立转发表项,可以进步一的保障该第一三层网关设备和该主机之间的正常通信不过于依赖与控制器的转发表项。
这里的第一三层网关设备和第二三层网关设备是对等的,第二三层网关设备同样可以执行上述特征。
结合第一方面的第一种可能的实现方式,在第一方面的第二种可能的实现方式中,所述第一三层网关设备利用所述第二IP地址、所述第二MAC地址、所述第二VTEP标识和所述第四IP地址,确定所述第四IP地址对应的MAC地址为所述第四MAC地址,以及所述第四IP地址对应的VTEP标识为所述第四VTEP,包括:所述第一三层网关设备发送第一地址请求报文,所述第一地址请求报文的源IP地址为所述第二IP地址,源MAC地址为所述第二MAC地址,源VTEP标识为所述第二VTEP标识,目的IP地址为所述第四IP地址;所述第一三层网关设备接收源自所述第一主机,且经过所述第一二层网关设备的第一地址响应报文,所述第一地址响应报文的目的IP地址为所述第二IP地址,目的MAC地址为所述第二MAC地址,目的VTEP标识为所述第二VTEP标识,源IP地址为所述第四IP地址,源MAC地址为所述第四MAC地址,源VTEP标识为所述第四VTEP标识;基于所述第一地址响应报文,获取所述第一主机的所述第四MAC地址,以及所述第一二层网关设备的所述第四VTEP。
可选地,本申请实施例提到的地址请求报文可以称为ARP请求报文,地址响应报文可以称为ARP响应报文。
可选地,该第一转发表项可以分为两个转发子表项;其中一个转发子表项可以称为ARP表项,其中,该ARP表项中,源IP地址为该第二IP地址,源MAC地址为该第二MAC地址,目的IP地址为该第四IP地址,目的MAC地址为该第四MAC地址;另一个转发表项可以称为MAC转发表项,用于指示第四MAC地址对应的VTEP标识为第四VTEP标识,用于进行VXLAN的封装。
结合第一方面的第二种可能的实现方式,在第一方面的第三种可能的实现方式中,所述数据中心包括多个二层网关设备;所述多个二层网关设备中每个二层网关设备与所述第一三层网关设备相连;所述多个二层网关设备包括所述第一二层网关设备;所述第一三层网关设备发送第一地址请求报文,包括:所述第一三层网关设备发送多份所述第一地址请求报文,所述多份所述第一地址请求报文与所述多个二层网关设备一一对应,每个所述第一地址请求报文分别携带对应的所述二层网关设备的VTEP标识;或者,所述第一三层网关设备发送所述第一地址请求报文,所述第一地址请求报文的VTEP标识为第一组播VTEP标识。
结合第一方面的第二种或第三种可能的实现方式,在第一方面的第四种可能的实现方式中,该第一主机所属的服务器为静默服务器,也即不对外主动发包的服务器。
结合第一方面第一种至第四种中任一种可能的实现方式,在第一方面的第五种可能的实现方式中,该方法还包括:该第一三层网关设备利用该第一IP地址、该第一MAC地址和该第一VTEP标识,协助该第一主机建立第二转发表项以及协助该第一二层网关设备建立第三转发表项;该第二转发表项的源IP地址为该第四IP地址,源MAC地址为该第四MAC地址,目的IP地址为该第一IP地址,目的MAC地址为该第一MAC地址;该第三转发表项用于指示该第一MAC地址对应于该第一VTEP标识。
在本申请实施例中,多个三层网关设备共有IP地址,共有MAC地址和共有VTEP标识,以及每个网关设备具有各自的IP地址,各自的MAC地址和各自的VTEP标识,服务器以及二层网关设备基于共有的IP地址,共有的MAC地址和共有的VTEP标识转发表项,可以在实现流量转发的同时,也能实现双活功能。
结合第一方面的第五种可能的实现方式,在第一方面的第六种可能的实现方式中,所述协助所述第一主机建立第二转发表项以及协助所述第一二层网关设备建立第三转发表项,包括:所述第一三层网关设备接收源自所述第一主机,且经过所述第一二层网关设备的第二地址请求报文,其中,所述第二地址请求报文的源IP地址为所述第四IP地址,源MAC地址为所述第四MAC地址,源VTEP标识为所述第四VTEP标识,目的IP地址为所述第一IP地址,目的VTEP标识为所述第一VTEP标识或为第二组播VTEP标识;确定所述第二地址请求报文的目的IP地址为所述第一IP地址;确定与所述第一IP地址对应的所述第一MAC地址,以及与所述第一IP地址对应的所述第一VTEP标识;基于所述第一IP地址、所述第一MAC地址、所述第一VTEP标识、所述第四IP地址、所述第四MAC地址和所述第四VTEP标识,生成第二地址响应报文,其中,所述第二地址响应报文的源VTEP标识为所述第一VTEP标识,源IP地址为所述第一IP地址,源MAC地址为所述第一MAC地址,目的IP地址为所述第四IP地址,目的MAC地址为所述第四MAC地址,目的VTEP标识为所述第四VTEP标识;所述第一三层网关设备发送所述第二地址响应报文,以便于所述第一二层网关设备根据接收到的所述第二地址响应报文建立所述第三转发表项,以及以便于所述第一主机根据接收到的所述第一二层网关设备发送的VXLAN解封装后的所述第二地址响应报文建立所述第二转发表项。
结合第一方面的第六种可能的实现方式,在第一方面的第七种可能的实现方式中,该方法还包括:该第一三层网关设备接收源自该第一主机,且经过该第一二层网关设备的第三地址请求报文,该第三地址请求报文的源IP地址为该第四IP地址,源MAC地址为该第四MAC地址,源VTEP标识为该第四VTEP标识,目的IP地址为该第一IP地址,目的VTEP标识为该第二VTEP标识;确定所述第三地址请求报文的目的IP地址为所述第一IP地址,以及目的VTEP标识为所述第二VTEP标识;确定与所述第一IP地址对应的所述第一VTEP标识;丢弃所述第三地址请求报文。
结合第一方面的第五种可能的实现方式,在第一方面的第八种可能的实现方式中,协助该第一主机建立第二转发表项以及协助该第一二层网关设备建立第三转发表项,包括:该第一三层网关设备发送通知报文,该通知报文的源IP地址为该第一IP地址,源MAC地址为该第一MAC地址,源VTEP标识为该第一VTEP标识,以便于该第一二层网关设备接收到该通知报文后,建立该第三转发表项,以及该第一二层网关设备将该通知报文进行VXLAN解封装后发送给该第一主机,以便于该第一主机建立该第二转发表项。
结合第一方面的第八种可能的实现方式,在第一方面的第九种可能的实现方式中,该第一三层网关设备发送通知报文之前,该方法还包括:确定该第一MAC地址和/或该第一IP地址变化。
在本申请实施例中,多个三层网关设备共有IP地址(虚IP地址),共有MAC地址(虚MAC地址)和共有VTEP标识(虚VTEP标识),以及每个网关设备具有各自的IP地址(实IP地址),各自的MAC地址(实MAC地址)和各自的VTEP标识(实VTEP标识),三层网关设备可以共有的IP地址(虚IP地址),共有的MAC地址(虚MAC地址)和共有的VTEP标识(虚VTEP标识)协助主机和二层网关设备建立转发表项,从而主机和二层网关设备可以通过该转发表项发送流量,由于流量中的目的地址对应于多个三层网关设备,从而可以将流量均衡至多个三层网关设备的任一个,从而可以实现双活功能。另外,三层网关设备基于其独有的IP地址(实IP地址),独有的MAC地址(实MAC地址)和独有的VTEP标识(实VTEP标识)向主机广播地址请求报文,主机反馈的且经由二层网关设备的ARP响应报文携带该三层网关设备独有的IP地址,独有的MAC地址和独有的VTEP标识,则该地址响应报文不会被发送至其他三层网关设备,从而可以正确建立转发表项,可以实现网关设备到主机设备的流量发送。
第二方面,提供了一种用于VXLAN的转发表项建立装置,所述VXLAN的数据中心包括第一三层网关设备、第二三层网关设备、分别与所述第一三层网关设备和所述第二三层网关设备相连的第一二层网关设备;所述第一二层网关设备与第一主机相连;所述第一三层网关设备具有第一互联网协议IP地址、第二IP地址、与所述第一IP地址对应的第一媒体接入控制MAC地址,与所述第二IP地址对应的第二MAC地址、与所述第一IP地址和所述第一MAC地址对应的第一VXLAN隧道终端VTEP标识以及与所述第二IP地址和所述第二MAC地址对应的第二VTEP标识;所述第二三层网关设备具有所述第一IP地址、第三IP地址、所述第一MAC地址、与所述第三IP地址对应的第三MAC地址、所述第一VTEP标识以及与所述第三IP地址和所述第三MAC地址对应的第三VTEP标识;所述第一二层网关设备具有第四VTEP标识;所述第一主机具有第四IP地址和与所述第四IP地址对应的第四MAC地址;其中,所述第一IP地址、所述第二IP地址、所述第三IP地址和所述第四IP地址互不相同,所述第一MAC地址、所述第二MAC地址、所述第三MAC地址和所述第四MAC地址互不相同,所述第一VTEP标识、所述第二VTEP标识、所述第三VTEP标识和所述第四VTEP标识互不相同;所述转发表项建立装置为所述第一三层网关设备;所述装置包括:获取单元,用于利用所述第二IP地址、所述第二MAC地址、所述第二VTEP标识和所述第四IP地址,获取所述第一主机的所述第四MAC地址,以及所述第一二层网关设备的所述第四VTEP,其中所述第二IP地址为所述第一三层网关设备所独有的IP地址,所述第二MAC地址为所述第一三层网关设备所独有的MAC地址,所述第二VTEP标识为所述第一三层网关设备所独有的VTEP标识;建立单元,用于基于所述第二IP地址、所述第二MAC地址、所述第二VTEP标识、所述第四IP地址、所述第四MAC地址和所述第四VTEP标识,建立第一转发表项,其中,所述第一转发表项的源IP地址为所述第二IP地址,源MAC地址为所述第二MAC地址,目的IP地址为所述第四IP地址,目的MAC地址为所述第四MAC地址,以及所述第一转发表项用于指示所述第四MAC地址对应于所述第四VTEP标识。
结合第二方面,在第二方面的第一种可能的实现方式中,所述装置进一步包括发送单元和接收单元,其中,发送单元用于发送第一地址请求报文,所述第一地址请求报文的源IP地址为所述第二IP地址,源MAC地址为所述第二MAC地址,源VTEP标识为所述第二VTEP标识,目的IP地址为所述第四IP地址;所述接收单元用于接收源自所述第一主机,且经过所述第一二层网关设备的第一地址响应报文,所述第一地址响应报文的目的IP地址为所述第二IP地址,目的MAC地址为所述第二MAC地址,目的VTEP标识为所述第二VTEP标识,源IP地址为所述第四IP地址,源MAC地址为所述第四MAC地址,源VTEP标识为所述第四VTEP标识;所述获取单元用于基于所述第一地址响应报文,获取所述第一主机的所述第四MAC地址,以及所述第一二层网关设备的所述第四VTEP。
结合第二方面的第一种可能的实现方式,在第二方面的第二种可能的实现方式中,该数据中心包括多个二层网关设备;该多个二层网关设备中每个二层网关设备与该第一三层网关设备相连;该多个二层网关设备包括该第一二层网关设备;所述发送单元进一步用于:发送多份所述第一地址请求报文,所述多份所述第一地址请求报文与所述多个二层网关设备一一对应,每个所述第一地址请求报文分别携带对应的所述二层网关设备的VTEP标识;或者,发送所述第一地址请求报文,所述第一地址请求报文的VTEP标识为第一组播VTEP标识。
结合第二方面的第一种或第二种可能的实现方式,在第二方面的第三种可能的实现方式中,该第一主机所属的服务器为静默服务器。
结合第二方面或其上述任一种可能的实现方式,在第二方面的第四种可能的实现方式中,该装置还包括协助单元,用于:利用该第一IP地址、该第一MAC地址和该第一VTEP标识,协助该第一主机建立第二转发表项以及协助该第一二层网关设备建立第三转发表项;该第二转发表项的源IP地址为该第四IP地址,源MAC地址为该第四MAC地址,目的IP地址为该第一IP地址,目的MAC地址为该第一MAC地址;该第三转发表项用于指示该第一MAC地址对应于该第一VTEP标识。
结合第二方面的第四种可能的实现方式,在第二方面的第五种可能的实现方式中,所述装置进一步包括接收单元和发送单元;其中,接收单元用于接收源自该第一主机,且经过该第一二层网关设备的第二地址请求报文,其中,该第二地址请求报文的源IP地址为该第四IP地址,源MAC地址为该第四MAC地址,源VTEP标识为该第四VTEP标识,目的IP地址为该第一IP地址,目的VTEP标识为该第一VTEP标识或为第二组播VTEP标识;所述协助单元用于:确定所述第二地址请求报文的目的IP地址为所述第一IP地址;确定与所述第一IP地址对应的所述第一MAC地址,以及与所述第一IP地址对应的所述第一VTEP标识;基于所述第一IP地址、所述第一MAC地址、所述第一VTEP标识、所述第四IP地址、所述第四MAC地址和所述第四VTEP标识,生成第二地址响应报文,其中,所述第二地址响应报文的源VTEP标识为所述第一VTEP标识,源IP地址为所述第一IP地址,源MAC地址为所述第一MAC地址,目的IP地址为所述第四IP地址,目的MAC地址为所述第四MAC地址,目的VTEP标识为所述第四VTEP标识;所述发送单元用于:发送所述第二地址响应报文,以便于所述第一二层网关设备根据接收到的所述第二地址响应报文建立所述第三转发表项,以及以便于所述第一主机根据接收到的所述第一二层网关设备发送的VXLAN解封装后的所述第二地址响应报文建立所述第二转发表项。
结合第二方面的第五种可能的实现方式,在第二方面的第六种可能的实现方式中,该装置还包括丢弃单元;所述接收单元用于:接收源自该第一主机,且经过该第一二层网关设备的第三地址请求报文,该第三地址请求报文的源IP地址为该第四IP地址,源MAC地址为该第四MAC地址,源VTEP标识为该第四VTEP标识,目的IP地址为该第一IP地址,目的VTEP标识为该第二VTEP标识;所述丢弃单元用于:确定所述第三地址请求报文的目的IP地址为所述第一IP地址,以及目的VTEP标识为所述第二VTEP标识;确定与所述第一IP地址对应的所述第一VTEP标识;丢弃所述第三地址请求报文。
结合第二方面的第四种可能的实现方式,在第二方面的第七种可能的实现方式中,该装置还包括发送单元,其中,该协助单元具体用于:生成通知报文,所述通知报文的源IP地址为所述第一IP地址,源MAC地址为所述第一MAC地址,源VTEP标识为所述第一VTEP标识;该发送单元用于:发送该通知报文,以便于该第一二层网关设备接收到该通知报文后,建立该第三转发表项,以及该第一二层网关设备将该通知报文进行VXLAN解封装后发送给该第一主机,以便于该第一主机建立该第二转发表项。
结合第二方面的第七种可能的实现方式,在第二方面的第八种可能的实现方式中,该协助单元具体用于:确定该第一MAC地址和/或该第一IP地址变化时,生成该通知报文。
第三方面,提供了一种VXLAN的数据中心,该数据中心包括第一三层网关设备、第二三层网关设备、分别与该第一三层网关设备和该第二三层网关设备相连的第一二层网关设备;该第一二层网关设备与第一主机相连;该第一三层网关设备具有第一互联网协议IP地址、第二IP地址、第一媒体接入控制MAC地址,第二MAC地址、与该第一IP地址和该第一MAC地址对应的第一VXLAN隧道终端VTEP标识以及与该第二IP地址和该第二MAC地址对应的第二VTEP标识;该第二三层网关设备具有该第一IP地址、第三IP地址、该第一MAC地址、第三MAC地址、该第一VTEP标识以及与该第三IP地址和该第三MAC地址对应的第三VTEP标识;该第一二层网关设备具有第四VTEP标识;该第一主机具有第四IP地址和第四MAC地址;其中,该第一IP地址、该第二IP地址、该第三IP地址和该第四IP地址互不相同,该第一MAC地址、该第二MAC地址、该第三MAC地址和该第四MAC地址互不相同,该第一VTEP标识、该第二VTEP标识、该第三VTEP标识和该第四VTEP标识互不相同。
结合第三方面,在第三方面的第一种可能的实现方式中,所述数据中心还包括负载均衡设备,所述负载均衡设备用于将来自所述第一主机且目的IP地址为所述第一IP地址,目的MAC地址为所述第一MAC地址和目的VTEP标识为所述第一VTEP的报文负载均衡至所述第一三层网关设备或所述第二三层网关设备。
结合第三方面或其第三方面的第一种可能的实现方式中,在第三方面的第二种可能的实现方式中,该第一三层网关设备属于第二方面或其任一种可能的实现方式中的转发表项建立装置。
第四方面,提供了一种用于VXLAN的转发表项建立装置,包括:存储器和处理器,该存储器用于存储指令,该处理器用于执行该存储器存储的指令,并且当该处理器执行该存储器存储的指令时,该执行使得该处理器执行第一方面或第一方面的任意可能的实现方式中的方法。
第五方面,提供了一种计算机存储介质,该计算机存储介质中存储有程序代码,该程序代码用于指示执行上述第一方面或第一方面的任意可能的实现方式中的方法。
第六方面,一种用于VXLAN的转发表项建立方法,所述VXLAN的数据中心包括第一三层网关设备、第二三层网关设备、分别与所述第一三层网关设备和所述第二三层网关设备相连的第一二层网关设备;其中,所述第一二层网关设备设备连接第一主机;所述第一三层网关设备具有第一IP地址、第二IP地址、与所述第一IP地址对应的第一MAC地址,与所述第二IP地址对应的第二MAC地址、与所述第一IP地址和所述第一MAC地址对应的第一VXLAN隧道终端VTEP标识以及与所述第二IP地址和所述第二MAC地址对应的第二VTEP标识;所述第二三层网关设备具有所述第一IP地址、第三IP地址、所述第一MAC地址、与所述第三IP地址对应的第三MAC地址、所述第一VTEP标识以及与所述第三IP地址和所述第三MAC地址对应的第三VTEP标识;所述第一二层网关设备具有第四VTEP标识;所述第一主机具有第四IP地址和与所述第四IP地址对应的第四MAC地址;其中,所述第一IP地址、所述第二IP地址、所述第三IP地址和所述第四IP地址互不相同,所述第一MAC地址、所述第二MAC地址、所述第三MAC地址和所述第四MAC地址互不相同,所述第一VTEP标识、所述第二VTEP标识、所述第三VTEP标识和所述第四VTEP标识互不相同;
所述方法包括:所述第一主机获取与所述第一IP地址对应的所述第一MAC地址;基于所述第一IP地址,所述第一MAC地址,所述第四IP地址和所述第四MAC地址,建立第二转发表项,其中,所述第二转发表项的源IP地址为所述第四IP地址,源MAC地址为所述第四MAC地址,目的IP地址为所述第一IP地址,目的MAC地址为所述第一MAC地址。
结合第六方面,在第六方面的第一种可能的实现方式中,所述第一主机获取与所述第一IP地址对应的所述第一MAC地址,包括:利用所述第一IP地址,所述第四IP地址和所述第四MAC地址,获取与所述第一IP地址对应的所述第一MAC地址。
结合第六方面的第一种可能的实现方式,在第六方面的第二种可能的实现方式中,所述第一主机利用所述第一IP地址,所述第四IP地址和所述第四MAC地址,获取与所述第一IP地址对应的所述第一MAC地址,包括:所述第一主机向所述第一二层网关设备发送所述第二地址请求报文,所述第二地址请求报文的源IP地址为所述第四IP地址,源MAC地址为所述第四MAC地址,目的IP地址为所述第一IP地址;所述第一主机接收第二地址响应报文,其中,所述第二地址响应报文的源IP地址为所述第一IP地址,源MAC地址为所述第一MAC地址,目的IP地址为所述第四IP地址,目的MAC地址为所述第四MAC地址;从所述第二地址响应报文中,获取与所述第一IP地址对应的所述第一MAC地址。
结合第六方面的第一种可能的实现方式,在第六方面的第三种可能的实现方式中,所述第一主机获取与第一IP地址对应的第一MAC地址之前,所述方法还包括:接收通知报文,所述通知报文的源IP地址为所述第一IP地址,源MAC地址为所述第一MAC地址;所述第一主机获取第一IP地址和第一MAC地址,包括:从所述通知报文中获取与所述第一IP地址对应的所述第一MAC地址。
第七方面,提供了一种用于VXLAN的转发表项建立方法,所述VXLAN的数据中心包括第一三层网关设备、第二三层网关设备、分别与所述第一三层网关设备和所述第二三层网关设备相连的第一二层网关设备;其中,所述第一二层网关设备设备连接第一主机;所述第一三层网关设备具有第一IP地址、第二IP地址、与所述第一IP地址对应的第一MAC地址,与所述第二IP地址对应的第二MAC地址、与所述第一IP地址和所述第一MAC地址对应的第一VXLAN隧道终端VTEP标识以及与所述第二IP地址和所述第二MAC地址对应的第二VTEP标识;所述第二三层网关设备具有所述第一IP地址、第三IP地址、所述第一MAC地址、与所述第三IP地址对应的第三MAC地址、所述第一VTEP标识以及与所述第三IP地址和所述第三MAC地址对应的第三VTEP标识;所述第一二层网关设备具有第四VTEP标识;所述第一主机具有第四IP地址和与所述第四IP地址对应的第四MAC地址;其中,所述第一IP地址、所述第二IP地址、所述第三IP地址和所述第四IP地址互不相同,所述第一MAC地址、所述第二MAC地址、所述第三MAC地址和所述第四MAC地址互不相同,所述第一VTEP标识、所述第二VTEP标识、所述第三VTEP标识和所述第四VTEP标识互不相同;
所述方法包括:所述第一二层网关设备获取与所述第一MAC地址对应的所述第一VTEP标识;基于所述第一MAC地址和所述第一VTEP标识,建立第三转发表项,其中,所述第三转发表项用于指示所述第一MAC地址对应于所述第一VTEP标识。
结合第七方面,在第七方面的第一种可能的实现方式中,所述第一二层网关设备获取与所述第一MAC地址对应的所述第一VTEP标识之前,所述方法还包括:接收所述第一主机发送的第二地址请求报文,所述第二地址请求报文的源IP地址为所述第四IP地址,源MAC地址为所述第四MAC地址,目的IP地址为所述第一IP地址;所述第一二层网关设备获取与所述第一MAC地址对应的所述第一VTEP标识,包括:对所述第二地址请求报文进行VXLAN封装,并广播VXLAN封装后的所述第二地址请求报文;接收第二地址响应报文,所述第二地址响应报文的源IP地址为所述第一IP地址,源MAC地址为所述第一MAC地址,源VTEP标识为所述第一VTEP标识,目的IP地址为所述第四IP地址,目的MAC地址为所述第四MAC地址,目的VTEP标识为所述第四VTEP标识;从所述第二地址响应报文中,获取所述第一MAC地址对应于所述第一VTEP标识;所述方法还包括:对所述第二地址响应报文进行VXLAN解封装,发送给所述第一主机。
结合第七方面的第一种可能的实现方式中,在第七方面的第二种可能的实现方式中,所述对所述第二地址请求报文进行VXLAN封装,包括:所述第一二层网关设备对所述第二地址请求报文进行VXLAN封装,生成多份第二请求报文报文,所述多份第二地址请求报文携带不同的目的VTEP标识,所述多份第二地址请求报文包括目的VTEP标识为所述第一VTEP标识的报文,目的VTEP标识为所述第二VTEP标识的报文和目的VTEP标识为所述第三VTEP标识的报文;或者,
所述对所述第二地址请求报文进行VXLAN封装,包括:在所述第二地址请求报文中封装第二组播VTEP标识。
结合第七方面,在第七方面的第三种可能的实现方式中,所述第一二层网关设备获取与所述第一MAC地址对应的所述第一VTEP标识之前,所述方法还包括:接收通知报文,所述通知报文的源IP地址为所述第一IP地址,源MAC地址为所述第一MAC地址,源VTEP标识为所述第一VTEP标识;所述第一二层网关设备获取与所述第一MAC地址对应的所述第一VTEP标识,包括:从所述通知报文中,确定所述第一MAC地址对应于所述第一VTEP标识。
第八方面,提供了一种用于VXLAN的通信方法,所述VXLAN的数据中心包括第一三层网关设备、第二三层网关设备、分别与所述第一三层网关设备和所述第二三层网关设备相连的第一二层网关设备,以及分别与所述第一三层网关设备和所述第二三层网关设备相连的负载均衡设备;其中,所述第一二层网关设备设备连接第一主机;所述第一三层网关设备具有第一IP地址、第二IP地址、与所述第一IP地址对应的第一MAC地址,与所述第二IP地址对应的第二MAC地址、与所述第一IP地址和所述第一MAC地址对应的第一VXLAN隧道终端VTEP标识以及与所述第二IP地址和所述第二MAC地址对应的第二VTEP标识;所述第二三层网关设备具有所述第一IP地址、第三IP地址、所述第一MAC地址、与所述第三IP地址对应的第三MAC地址、所述第一VTEP标识以及与所述第三IP地址和所述第三MAC地址对应的第三VTEP标识;所述第一二层网关设备具有第四VTEP标识;所述第一主机具有第四IP地址和与所述第四IP地址对应的第四MAC地址;其中,所述第一IP地址、所述第二IP地址、所述第三IP地址和所述第四IP地址互不相同,所述第一MAC地址、所述第二MAC地址、所述第三MAC地址和所述第四MAC地址互不相同,所述第一VTEP标识、所述第二VTEP标识、所述第三VTEP标识和所述第四VTEP标识互不相同,所述方法包括:
负载均衡设备接收流量报文,所述流量报文的源IP地址为所述第四IP地址,源MAC地址为所述第四MAC地址,源VTEP标识为所述第四VTEP标识,目的IP地址为所述第一IP地址,目的MAC地址为所述第一MAC地址,目的VTEP标识为所述第一VTEP标识;将所述流量报文负载均衡至所述第一三层网关设备或所述第二三层网关设备。
结合第八方面,在第八方面的第一种可能的实现方式中,所述负载均衡设备与所述第一二层网关设备集成在同一设备中。
结合第八方面,在第八方面的第二种可能的实现方式中,所述负载均衡设备与所述第一二层网关设备设置在不同设备中。
第九方面,提供了一种主机,用于执行上述第六方面或第六方面的任意可能的实现方式中的方法。具体地,该主机包括用于执行上述第六方面或第六方面的任意可能的实现方式中的方法的模块单元。
第十方面,提供了一种二层网关设备,用于执行上述第七方面或第七方面的任意可能的实现方式中的方法。具体地,该设备包括用于执行上述第七方面或第七方面的任意可能的实现方式中的方法的模块单元。
第十一方面,提供了一种负载均衡设备,用于执行上述第八方面或第八方面的任意可能的实现方式中的方法。具体地,该设备包括用于执行上述第八方面或第八方面的任意可能的实现方式中的方法的模块单元。
第十二方面,提供了一种主机,包括存储器和处理器,该存储器用于存储指令,该处理器用于执行该存储器存储的指令,并且当该处理器执行该存储器存储的指令时,该执行使得该处理器执行第六方面或第六方面的任意可能的实现方式中的方法。
第十二方面,提供了一种二层网关设备,包括存储器和处理器,该存储器用于存储指令,该处理器用于执行该存储器存储的指令,并且当该处理器执行该存储器存储的指令时,该执行使得该处理器执行第七方面或第七方面的任意可能的实现方式中的方法。
第十三方面,提供了一种负载均衡设备,包括存储器和处理器,该存储器用于存储指令,该处理器用于执行该存储器存储的指令,并且当该处理器执行该存储器存储的指令时,该执行使得该处理器执行第八方面或第八方面的任意可能的实现方式中的方法。
第十四方面,提供了一种计算机存储介质,该计算机存储介质中存储有程序代码,该程序代码用于指示执行上述第六方面或第六方面的任意可能的实现方式中的方法。
第十五方面,提供了一种计算机存储介质,该计算机存储介质中存储有程序代码,该程序代码用于指示执行上述第七方面或第七方面的任意可能的实现方式中的方法。
第十六方面,提供了一种计算机存储介质,该计算机存储介质中存储有程序代码,该程序代码用于指示执行上述第八方面或第八方面的任意可能的实现方式中的方法。
附图说明
为了更清楚地说明本发明实施例的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是根据本申请实施例的应用场景图的示意性图。
图2是根据本申请实施例的用于VXLAN的转发表项建立方法的示意性流程图。
图3是根据本申请实施例的用于VXLAN的转发表项建立方法的示意性流程图。
图4是根据本申请实施例的用于VXLAN的转发表项建立方法的示意性流程图。
图5是根据本申请实施例的用于VXLAN的转发表项建立方法的示意性流程图。
图6是根据本申请实施例的用于VXLAN的转发表项建立装置的示意性框图。
图7是根据本申请实施例的用于VXLAN的转发表项建立装置的示意性框图。
图8是根据本申请实施例的主机的示意性框图。
图9是根据本申请实施例的二层网关设备的示意性框图。
图10是根据本申请实施例的负载均衡设备的示意性框图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
图1是根据本申请实施例中的通信系统100的示意性图。如图1所示,该通信系统100可以包括边界(Boundary)路由器BD#1和BD#2,本地中心(Local Center,LC)交换机LC#1和LC#2,本地接入(Local Access,LA)交换机LA#1和LA#2,服务器#1和服务器#2,其中,服务器可以包括开放式虚拟交换机(Open VSwitch,OVS)和虚拟机(Virtual machine,VM),例如,服务器#1包括OVS#1和VM#1,以及服务器#2包括OVS#2和VM#2。
BD#1和BD#2可以具有相同的自治域(Autonomous System,AS)域号X;LC#1和LC#2可以具有相同的AS域号Y;LA1和LA#2可以具有相同的AS域号,例如,AS1001。其中,两个设备之间具有相同的域号,是指该两个设备可以基于路由协议建立邻居关系进行路由通告和学习。
BD#1和BD#2可以转发通信系统100中的虚拟机与外界(即,通信系统100之外的互联网)的流量。
LC#1和LC#2可以作为VXLAN的三层网关设备,可以用于VXLAN的三层网络的数据转发。LC#1和LC#2可以具有相同的IP地址,相同的MAC地址和相同的VTEP标识,从而来自虚拟机的报文可以负载均衡至LC#1,也可以负载均衡至LC#2,或者,如果还有其他LC,该LC与LC#1和LC#2具有相同的IP地址,相同的MAC地址和相同的VTEP标识,该报文还可以负载均衡至其他LC,收到该报文的LC可以对该报文进行处理。
也就是说,通信系统可以包括具有相同的IP地址,相同的MAC地址和相同的VTEP标识的至少两个LC,该至少两个LC中的任一个可以对目的IP地址为该相同的IP地址,目的MAC地址为该相同的MAC地址和目的VTEP标识为该相同的VTEP标识的报文进行处理。可以将该至少两个LC实现的该功能称为“双活”功能,当然,也可以有别的称法,本申请实施例并不对此进行限定。
LA#1和LA#2可以作为负载均衡设备。由于LC#1和LC#2具有相同的IP地址、相同的MAC地址和相同的VTEP标识,来自虚拟机的流量可以在LA上进行负载均衡,可能会被转发到LC#1或LC#2,然后可以由LC#1或LC#2发送至BD#1或BD#2。
在通信100所示的通信场景中,VXLAN的二层网关设备可以为LA#1或LA#2,或者可以为OVS#1和OVS#2。
如果二层网关设备为LA#1和LA#2,则LA#1和LA#2可以与LC#1和LC#2建立VXLAN隧道,由LA#1或LA#2进行VXLAN的封装,也即封装VXLAN的源VTEP的标识(即,LA#1或LA#2的VTEP标识),并封装目的VTEP标识(可以为,LC#1和LC#2共有的VXLAN标识或LC#1和LC#2各自独有的VXLAN标识)。
如果二层网关设备为OVS#1和OVS#2,则OVS#1和OVS#2可以与LC#1和LC#2建立VXLAN隧道,由OVS#1或OVS#2进行VXLAN的封装,也即封装VXLAN的源VTEP的标识(即,OVS#1或OVS#2的VTEP标识),并封装目的VTEP标识(可以为,LC#1和LC#2共有的VXLAN标识或LC#1和LC#2各自独有的VXLAN标识)。此时,LA#1和LA#2不进行VXLAN的封装,而是进行流量报文的转发。
LC#1或LC#2发送给VM的流量可以基于目的IP地址、目的MAC地址,封装目的VTEP,发送至相应的LA,并到达OVS,并由OVS发送给虚拟机。假设流量的目的为VM#1,LC#1不存在ARP转发表项,也即无法确定VM#1的MAC地址,则LC#1会向外广播发出ARP请求报文,VM#1收到该ARP请求报文后,会回复ARP响应报文,具体地,VM#1在报文中封装源MAC地址,源IP地址,目的IP地址,目的MAC地址,然后由二层网关设备进行VXLAN的封装。如果LC#1和LC#2仅仅具有相同的IP地址,相同的MAC地址和相同的VTEP标识,而没有各自独有的IP,MAC以及VTEP标识的话,则该ARP响应报文经过LA#1的负载均衡后,可能会到达LC#2,而非LC#1,由此,LC#1无法基于该ARP响应报文建立ARP表项,从而无法转发目的为VM#1的流量。
由此,本申请实施例中,LC#1和LC#2除了具有相同的IP地址,相同的MAC地址和相同的VTEP标识,还为LC#1和LC#2设置不同的IP地址,不同的MAC地址和不同的VTEP标识。
在本申请实施例中,如果存在两个LC,可以为该两个LC中的每个LC分别设置两套地址(每套地址包括一个IP地址,一个MAC地址和一个VTEP标识),其中,两套地址中的每套地址包括的IP地址,MAC地址和VTEP标识与另一套地址包括的IP地址,MAC地址和VTEP标识分别不同,其中一套地址为LC独有,一套LC地址为与另一个LC共有的。如果存在不止两个LC,每个LC可以具有N套(N大于2)地址,其中一套地址为该LC独有,其他套地址可以与一个LC共有,也可以与多个LC共有。
在本申请实施例中,各个LC所具有的IP地址,MAC地址和VTEP标识可以由控制器进行设置,也即可以由控制器根据所需的通信需求进行设置,也可以进行人工设置。本申请实施例还可以根据通信需求(例如,负载均衡需求等),随时调整各个地址的配置,例如,为LC增加一套地址,该套地址可以与其他LC共有,或者,去除LC与其他LC共有的一套地址。
其中,可以采用虚拟路由冗余协议(Virtual Router Redundancy Protocol,VRRP)方式进行虚IP地址以及虚MAC地址的部署。具体地,可以为三层网关进行分组,在该组中的三层网关可以具有相同的IP地址,然后,可以基于配置的虚IP地址进行计算得到虚MAC地址。
其中,在对三层网关设备进行实IP地址,实MAC地址和实VTEP标识的配置时,可以确定数据中心中已有的IP地址(包括已有的实IP地址和虚IP地址),已有的MAC地址(包括已有的实MAC地址和已有的虚MAC地址)和已有的VTEP标识(包括已有的实MAC地址和已有的虚MAC地址),使得配置的实IP地址,实MAC地址和实VTEP标识与已有的IP地址,已有的MAC地址和已有的VTEP标识不同。
本申请实施例中,三层网关的VXLAN接口可以称为vbdif接口,当然本申请实施例并不限于此。
例如,LC#1具有IP地址192.1.1.1以及192.1.1.2.255.255.255.0,LC#2具有IP地址192.1.1.1和192.1.1.3.255.255.255.0;LC#1具有MAC地址1-1-1和2-2-2,LC#2具有MAC地址1-1-1和3-3-3;LC#1具有VTEP标识为40.1.1.1和30.1.1.1,LC#2具有VTEP标识50.1.1.1和30.1.1.1。各个虚拟机的IP地址和MAC地址各不相同,例如,VM#1的IP地址为192.1.1.101,MAC地址为4-4-4。VM#2的IP地址为192.1.1.102,MAC地址为5-5-5。
OVS用于对属于同一服务器的VM进行控制,即向VM机发送报文或转发来自VM的报文,其中,一个OVS可以管理多个VM。
如果,OVS作为二层网关设备,不同的OVS具有不同的VTEP标识,例如,OVS#1具有VTEP标识10.1.1.1,OVS#2具有VTEP标识20.1.1.1。
在本申请实施例中,IP地址和MAC地址共同对应VTEP标识,例如,IP地址192.1.1.1和MAC地址1-1-1对应的VTEP标识为30.1.1.1。
下文为了描述的方便,将至少两个三层网关的相同的IP地址称为虚IP地址;将该至少两个三层网关的不同的IP地址称为实IP地址;将相同的MAC地址称为虚MAC地址,将不同的MAC地址称为实MAC地址;将相同的VTEP标识称为虚VTEP标识,将不同的VTEP标识称为实VTEP标识。例如,LC#1和LC#2共有虚IP地址192.1.1.1,且分别具有实IP地址192.1.1.2.255.255.255.0和192.1.1.3.255.255.255.0。LC#1和LC#2共有虚MACI地址1-1-1,且分别具有实MAC地址2-2-2和实MAC地址3-3-3。LC#1和LC#2共有虚VTEP标识30.1.1.1,且分别具有实VTEP标识40.1.1.1和50.1.1.1。
应理解,图1虽然仅示出了两个BD、两个LC以及两个服务器等,但仅仅为了图示的方式,不能说明本申请所应用的通信系统仅能如此,本申请所应用的通信系统可以根据需求设置各种数量的BD、LC和服务器等。
还应理解,在同一个通信系统中,可以由作为二层网关设备的OVS,同时也存在作为二层网关设备的LA。同一个OVS可以管理多个虚拟机,对于该多个虚拟机的某一个虚拟机,可以由该OVS作为其对应的二层网关设备,而对于该多个虚拟机的另一个虚拟机,则可以由LA作为其对应的二层网关设备。
还应理解,该通信系统100可以包括数据中心和主机,其中,数据中心包括三层网关设备和二层网关设备,以及还可以进一步包括负载均衡设备。
还应理解,图1所示的通信系统100仅仅是本申请实施例的一种应用场景,不应对本申请的应用场景构成限定。例如,可以由LA作为VXLAN的三层网关设备,而由OVS作为VXLAN的二层网关设备,一个二层网关设备可以连接至少两个三层网关设备。例如,在图1所述的通信系统100中,每个三层网关设备均可以与整个通信系统的VM进行直接通信,这种三层网关设备可以称为集中式网关设备,但是本申请实施例的三层网关设备可以只与部分的VM的进行直接通信,这种三层网关设备可以称为分布式三层网关。应理解,本实施例提到的主机与三层网关设备直接进行通信是指该主机与该三层网关设备的通信不需要与经过其他三层网关设备。
图2是根据本申请实施例的用于VXLAN的转发表项建立方法200的示意性流程图。该VXLAN的数据中心包括第一三层网关设备、第二三层网关设备、分别与该第一三层网关设备和该第二三层网关设备相连的第一二层网关设备;其中,该第一二层网关设备与第一主机相连,本申请实施例提到的主机可以为虚拟机。例如,如图1所示的通信系统100中,LC#1作为此处描述的第一三层网关设备,LC#2作为此处描述的第二三层网关设备,LA#1可以作为此处描述的第一二层网关设备,VM#1可以作为第一主机。该LA#1作为VM#1与LC#1之间的二层网关设备,可以与LC#1之间建立VXLAN隧道;该LA#1也可以作为VM#1和LC#2之间的二层网关设备,可以与LC#2之间建立VXLAN隧道。
其中,该第一三层网关设备具有第一IP地址、第二IP地址、第一MAC地址,第二MAC地址、与该第一IP地址和该第一MAC地址对应的第一VXLAN隧道终端VTEP标识以及与该第二IP地址和该第二MAC地址对应的第二VTEP标识;该第二三层网关设备具有该第一IP地址、第三IP地址、该第一MAC地址、第三MAC地址、该第一VTEP标识以及与该第三IP地址和该第三MAC地址对应的第三VTEP标识;该第一二层网关设备具有第四VTEP标识;该第一主机具有第四IP地址和第四MAC地址;其中,该第一IP地址、该第二IP地址、该第三IP地址和该第四IP地址互不相同,该第一MAC地址、该第二MAC地址、该第三MAC地址和该第四MAC地址互不相同,该第一VTEP标识、该第二VTEP标识、该第三VTEP标识和该第四VTEP标识互不相同。该方法可以包括210和220。
在210中,该第一三层网关设备利用该第二IP地址、该第二MAC地址、该第二VTEP标识和该第四IP地址,获取该第一主机的该第四MAC地址,以及该第一二层网关设备的该第四VTEP。其中所述第二IP地址为所述第一三层网关设备所独有的IP地址,所述第二MAC地址为所述第一三层网关设备所独有的MAC地址,所述第二VTEP标识为所述第一三层网关设备所独有的VTEP标识。
具体地,在需要建立与第一主机的转发表项时,第一三层网关设备可以获取自身独有的IP地址为第二IP地址,自身独有的MAC地址为第二MAC地址,自身独有的VTEP标识为第二VTEP标识;并获取该第一主机的IP地址为第四IP地址,从而可以基于该第二IP地址、该第二MAC地址、该第二VTEP标识和该第四IP地址,生成第一地址请求报文,该第一地址请求报文的源IP地址为该第二IP地址,源MAC地址为该第二MAC地址,源VTEP标识为该第二VTEP标识,目的IP地址为该第四IP地址。第一二层网关设备接收到该第一地址请求报文之后,进行VXLAN解封装,并将VXLAN解封装的第一地址请求报文发送给第一主机,第一主机基于该第一地址请求报文生成第一地址响应报文,发送给第一二层网关设备。第一二层网关设备对该第一地址响应报文进行VXLAN封装,发送给第一三层网关设备。第一三层网关设备从而可以基于该第一地址响应报文,获取该第一主机的该第四MAC地址,以及该第一二层网关设备的该第四VTEP。
在220中,基于该第二IP地址、该第二MAC地址、该第二VTEP标识、该第四IP地址、该第四MAC地址和该第四VTEP标识,建立第一转发表项,其中,该第一转发表项的源IP地址为该第二IP地址,源MAC地址为该第二MAC地址,目的IP地址为该第四IP地址,目的MAC地址为该第四MAC地址,以及该第一转发表项用于指示该第四MAC地址对应于该第四VTEP标识。
可选地,在本申请实施例中,三层网关设备至少配置有两套地址(每套地址分别包括IP地址、MAC地址和VTEP标识),其中一套地址为该三层网关设备所独有的,其他至少一套地址为该三层网关设备与其他设备所共有的,其中,该三层网关设备可以与不同的三层网关设备共有不同的地址,也可以与不同的三层网关设备共有相同的地址。可选地,在本申请实施例中,各个三层网关设备所具有的IP地址,MAC地址和VTEP标识可以由控制器进行设置,也即可以由控制器根据所需的通信需求进行设置,也可以进行人工设置。本申请实施例还可以根据通信需求(例如,负载均衡需求等),随时调整各个地址的配置,例如,为一三层网关设备增加一套地址,该套地址可以与其他LC共有,或者,去除LC与其他LC共有的一套地址。
可选地,该第一主机所属的服务为静默服务器,也即不对外主动发包的服务器。
可选地,该第一地址请求报文可以称为地址解析协议(Address ResolutionProtocol,ARP)请求报文,该第一地址响应报文可以称为ARP响应报文。
可选地,该第一转发表项可以分为两个转发子表项;其中一个转发子表项可以称为ARP表项,其中,该ARP表项中,源IP地址为该第二IP地址,源MAC地址为该第二MAC地址,目的IP地址为该第四IP地址,目的MAC地址为该第四MAC地址;另一个转发表项可以称为MAC转发表项,用于指示第四MAC地址对应的VTEP标识为第四VTEP标识,用于进行VXLAN的封装。
可选地,该数据中心包括多个二层网关设备;该多个二层网关设备分别与第一三层网关设备相连;该多个二层网关设备包括该第一二层网关设备。例如,如图1所示的通信系统100中,数据中心包括多个二层网关设备OVS#1和OVS#2。
则在这种情况下,第一三层网关设备发送多份该第一地址请求报文,该多份该第一地址请求报文与该多个二层网关设备一一对应,每个该第一地址请求报文分别携带对应的该二层网关设备的VTEP标识;或者,该第一三层网关设备发送该第一地址请求报文,该第一地址请求报文的VTEP标识为第一组播VTEP标识。
在本申请实施例中,该第一组播VTEP标识可以对应于一个组播组,组播组内的成员通信时,目的VTEP标识可以携带该组播VTEP标识。组播组内的成员在接收到携带该第一组播VTEP标识的报文之后,确定该报文携带的为第一组播VTEP标识,可以对该报文进行VXLAN进行解封装,以及进行相应后续处理。该第一组播VTEP标识对应的组播组除第一三层网关设备之外,可以包括与该第一三层网关设备连接的多个二层网关设备,或者可以包括整个数据中心包括的全部二层网关设备,当然还可以进一步包括其他三层网关设备。
为了便于理解,以下将以图1所示的通信系统100为例,描述根据本申请实施例的用于VXLAN的转发表项建立方法300的示意性流程图。
在301中,LC#1确定需要获取目的IP地址为192.1.1.101的ARP转发表项,例如,LC#1在进行ARP转发表项维护时,发现缺失目的IP地址192.1.1.101的ARP转发表项,或者LC#1有流量需要转发到目的IP地址为192.1.1.101的VM。其中,该IP地址192.1.1.101可以属于静默服务器的IP地址。
在302中,LC#1发送ARP请求报文,其中,该ARP请求报文的源IP地址为LC#1的实IP地址,源MAC地址为LC#1的实MAC地址,源VTEP标识为LC#1的实VTEP标识,目的IP地址为192.1.1.101。
该ARP请求报文可以通过头端复制或组播的方式进行广播。
头端复制是指将该ARP请求报文复制成多份,每份携带一个VTEP标识,不同份报文携带不同的VTEP标识。例如,如果二层网关设备为OVS#1和OVS#2,可以将该ARP请求报文复制并分别封装目的VTEP标识,即,OVS#1的VTEP标识10.1.1.1,以及OVS#2的VTEP标识20.1.1.1。
组播是指将该ARP请求报文的目的VTEP标识封装成组播VTEP标识。例如,该组播VTEP标识对应于一个组播组,该组播组包括成员LC#1,LC#2,OVS#1和OVS#2。
在303中,LC#1发送的ARP请求报文经过LA#1转发至OVS#1和OVS#2。
例如,如果采用头端复制的方式,则将目的VTEP标识为10.1.1.1的ARP请求报文发送给OVS#1,以及将目的VTEP标识为20.1.1.1的ARP请求报文发送给OVS#2。如果采用的是组播的方式,则将携带了组播地址的ARP请求报文分别发送给OVS#1和OVS#2。
在304中,OVS#2接收到目的VTEP标识为20.1.1.1的ARP请求报文或者携带有组播VTEP标识的ARP请求报文,对该ARP请求报文进行VXLAN解封装,并将该ARP请求报文发广播给其下的VM。
在305中,VM#2接收到该ARP请求报文之后,发现该ARP请求报文的目的IP地址不是自身IP地址,丢弃该ARP请求报文。
在306,OVS#1接收到目的VTEP标识为10.1.1.1的ARP请求报文或者携带有组播VTEP标识的ARP请求报文,对该VXLAN解封装,并将该ARP请求报文发广播给其下的VM。
在307,VM#1发现该ARP请求报文的目的IP地址为自身IP地址,基于该ARP请求报文,生成ARP响应报文,其中,该ARP响应报文的源IP地址为VM#1的IP地址,源MAC地址为VM#1的MAC地址,目的IP地址为LC#1的实IP地址,目的MAC地址为LA#1的实MAC地址。
在308,VM#1将该ARP响应报文发送给OVS#1,OVS#1对该ARP响应报文进行VXLAN封装,即封装源MAC地址为OVS#1的VTEP标识,目的VTEP标识为LC#1的实VTEP标识(基于ARP请求报文,可以确定ARP响应报文,需要封装实VTEP标识),发送该VXLAN封装后的ARP响应报文,该VXLAN响应报文经由LA#1,到达LC#1。
在309,LC#1接收该ARP响应报文,该ARP响应报文的源IP地址为VM#1的IP地址,源MAC地址为VM#1的MAC地址,目的IP地址为LC#1的实IP地址,目的MAC地址为LA#1的实MAC地址,从该ARP响应报文中确定VM#1对应的二层网关设备的VTEP标识,从而建立MAC转发表项,以及从该ARP响应报文中获取VM#1的MAC地址,从而建立ARP转发表项。其中,该ARP转发表项的源IP地址为LC#1的实IP地址,MAC地址为LC#1的实MAC地址,目的IP地址为VM#1的IP地址,目的MAC地址为VM#1的MAC地址,以及MAC转发表项用于指示VM#1的MAC地址对应于OVS#1的VTEP标识。
因此,在本申请实施例中,至少两个三层网关设备具有共有的IP地址,即前面提到的虚IP地址,共有的MAC地址(虚MAC地址)和共有的VTEP标识(虚VTEP标识),以及分别具有独有的IP地址(实IP地址),独有的MAC地址(实IP地址)和独有的VTEP标识(实VTEP标识),三层网关设备基于独有的IP地址,独有的MAC地址和独有的VTEP标识向主机广播地址请求报文,主机反馈的且经由二层网关设备的地址响应报文携带该三层网关设备独有的IP地址,独有的MAC地址和独有的VTEP标识,则该地址响应报文不会被发送至其他三层网关设备,从而可以正确建立转发表项,可以实现网关设备到主机设备的流量发送。
以上具体描述了如何利用实MAC地址,实IP地址和实VTEP标识,三层网关设备建立转发表项的方法。在本申请实施例中,三层网关设备还可以利用虚IP地址、虚MAC地址和虚VTEP标识协助第一主机建立第二转发表项,以及协助第一二层网关设备建立第三转发表项。其中,所述第二转发表项的源IP地址为所述第四IP地址,源MAC地址为所述第四MAC地址,目的IP地址为所述第一IP地址,目的MAC地址为所述第一MAC地址;所述第三转发表项用于指示所述第一MAC地址对应于所述第一VTEP标识。
可选地,第一主机获取与第一IP地址对应的第一MAC地址,基于该第一IP地址和第一MAC地址,建立第二转发表项。
可选地,第一二层网关设备获取与第一MAC地址对应的第一VTEP标识,基于该第一MAC地址和第一VTEP标识,建立第三转发表项。
可选地,在本申请实施例中,在第一主机建立第二转发表项以及第二三层网关设备建立第三转发表项之后,第一主机可以基于第二转发表项,生成流量报文,该流量报文的源IP地址为第四IP地址,源MAC地址为第四MAC地址,目的IP地址为第一IP地址,目的MAC地址为第一MAC地址,第一主机可以将该流量报文发送给第一二层网关设备,第一二层网关设备在接收到该流量报文之后可以基于第三转发表项,进行VXLAN封装,源VTEP标识为第四VTEP标识,目的VTEP标识为第一VTEP标识;第一二层网关设备可以将该流量报文发送给负载均衡设备,负载均衡设备可以将该报文负载均衡至第一三层网关设备或第二三层网关设备。
可选地,第一主机建立第二转发表项以及第一二层网关设备建立第三转发表项,可以是该第一主机主动请求建立来实现,也可以是第一三层网关设备通知建立来实现。以下将对这两种实现方式进行具体说明。
第一种实现方式
第一主机有流量报文需要发送至三层网关设备,但是未存储目的为该三层网关设备的转发表项,则可以基于预配置的该三层网关设备的IP地址(预配置的为多个三层网关设备共有的IP地址),以及该第一主机的IP地址和MAC地址,生成并发送地址请求报文,其中,该地址请求报文的源IP地址为该第四IP地址,源MAC地址为该第四MAC地址,目的IP地址为该第一IP地址;该地址请求报文到达第一二层网关设备之后,第一二层网关设备对该地址请求报文进行VXLAN封装,并进行广播发送;该第一三层网关设备接收源自该第一主机,且经过该第一二层网关设备的第二地址请求报文(由第一主机发送的地址请求报文进行VXLAN封装得到),其中,该第二地址请求报文的源IP地址为该第四IP地址,源MAC地址为该第四MAC地址,源VTEP标识为该第四VTEP标识,目的IP地址为该第一IP地址,目的VTEP标识为该第一VTEP标识或为第二组播VTEP标识,其中,该第二组播VTEP标识对应的组播组包括多个三层网关设备,该多个三层网关设备包括第一三层网关设备,其中,该第一VTEP标识和该第二组播VTEP标识可以预置在所述第一二层网关设备;基于该第一IP地址,该第一MAC地址和该第一VTEP标识,生成第二地址响应报文,其中,该第二地址响应报文的源VTEP标识为该第一VTEP标识,源IP地址为该第一IP地址,源MAC地址为该第一MAC地址,目的IP地址为该第四IP地址,目的MAC地址为该第四MAC地址,目的VTEP标识为该第四VTEP标识;该第一三层网关设备发送该第二地址响应报文,该第一二层网关设备接收到该第二地址响应报文后,建立该第三转发表项,以及该第一二层网关设备将该第二地址响应报文进行VXLAN解封装后发送给该第一主机,以便于该第一主机建立该第二转发表项。
在本申请实施例中,该第二组播VTEP标识可以对应于一个组播组,组播组内的成员通信时,目的VTEP标识可以携带该组播VTEP标识。组播组内的成员在接收到携带该第二组播VTEP标识的报文之后,确定该报文携带的为第二组播VTEP标识,可以对该报文进行VXLAN进行解封装,以及进行相应后续处理。该第二组播VTEP标识对应的组播组除了该第一二层网关设备,可以包括与该第一二层网关设备连接的多个三层网关设备,或者可以包括整个数据中心包括的全部三层网关设备,当然还可以进一步包括其他二层网关设备。
可选地,该第一三层网关设备接收源自该第一主机,且经过该第一二层网关设备的第三地址请求报文(由第一主机发送的地址请求报文进行VXLAN封装得到),该第三地址请求报文的源IP地址为该第四IP地址,源MAC地址为该第四MAC地址,源VTEP标识为该第四VTEP标识,目的IP地址为该第一IP地址,目的VTEP标识为该第二VTEP标识;丢弃该第三地址请求报文。
以下为了便于理解,将以所示的通信系统100为例,并结合图4描述根据本申请实施例的用于VXLAN的转发表项建立方法400的示意性流程图。
在401中,VM#1发出ARP请求报文,该ARP请求报文的源IP地址为VM#1的IP地址,源MAC地址为VM#1的MAC地址,目的IP地址LC#1和LC#2共有的虚IP地址。
在402中,OVS#1在接收到该ARP请求报文之后,对该ARP请求报文进行VXLAN封装。
其中,OVS#1可以采用头端复制或组播的方式广播该ARP请求报文,也即进行VXLAN封装并进行广播。
头端复制是指将该ARP请求报文复制成多份,每份携带一个VTEP标识,不同份报文携带不同的VTEP标识。例如,可以将该ARP请求报文复制并分别封装目的VTEP标识,例如该各复制的ARP请求报文分别携带如下VTEP标识:LC#1和LC#2共有的虚VTEP标识30.1.1.1,LC#1的实VTEP标识40.1.1.1,LC#2的实VTEP标识50.1.1.1,以及OVS#2的VTEP标识20.1.1.1。
组播是指将该ARP请求报文的目的VTEP标识封装成组播VTEP标识。其中,该组播VTEP标识对应于组播组,组播组内的成员通信时,目的VTEP标识可以携带该组播VTEP标识,假设此处的组播组包括OVS#1,OVS#2,LC#1和LC#2,组播VTEP标识可以预置在各个组播组成员中。
403-407是采用头端复制进行ARP请求报文的广播。
在403中,由于该ARP请求报文是头端复制的多份ARP请求报文,LA1会将目的VTEP标识为20.1.1.1的ARP请求报文发送至OVS#2,将目的VTEP标识为30.1.1.1的ARP请求报文负载均衡至LC#1或LC#2,将目的VTEP标识为40.1.1.1的ARP请求报文发送至LC#1,将目的VTEP标识为50.1.1.1的ARP请求报文发送至LC#2。
在404中,假设LA#1将目的VTEP标识为30.1.1.1的ARP请求报文负载均衡至LC#1,由于该ARP请求报文的目的IP地址为虚IP地址192.1.1.1,该ARP请求报文中的VTEP标识是该虚IP地址192.1.1.1对应的虚VTEP标识30.1.1.1,则LC#1回应ARP响应报文,该ARP响应报文的源IP地址为虚IP地址192.1.1.1,源MAC地址为虚MAC地址为1-1-1,源VTEP标识为虚VTEP标识30.1.1.1,目的IP地址为VM#1的IP地址192.1.1.101,目的VTEP标识为OVS#1的VTEP标识10.1.1.1,目的MAC地址为VM#1的MAC地址4-4-4。其中,LC#1发送的响应报文可以经LA#1转发,其中,为了图示方便,图中未示出。
在405中,LC#1接收到目的为实VTEP标识40.1.1.1的ARP请求报文,由于该实VTEP标识40.1.1.1与报文中虚IP地址192.1.1.1不对应,丢弃该ARP请求报文。LC#2接收到目的为实VTEP标识50.1.1.1的ARP请求报文,由于该实VTEP标识50.1.1.1与报文中虚IP地址192.1.1.1不对应,丢弃该ARP请求报文。
应理解,OVS#2在接收到目的VTEP标识为20.1.1.1的ARP请求报文之后,可以对该ARP请求报文进行VXLAN解封装,并下发到其下管理的VM,其下管理的VM接收到该ARP请求报文之后,由于该ARP请求报文的目的IP地址不是其自身IP地址,丢弃该ARP请求报文。由于图示的方便,OVS#2接收到ARP请求报文之后的处理未示出。
在406中,OVS#1接收到LC#1发送的ARP响应报文,该ARP响应报文的源IP地址为虚IP地址192.1.1.1,源MAC地址为虚MAC地址为1-1-1,源VTEP标识为虚VTEP标识30.1.1.1,目的IP地址为VM#1的IP地址192.1.1.101,目的VTEP标识为OVS#1的VTEP标识10.1.1.1,目的MAC地址为VM#1的MAC地址4-4-4,由此可以基于该ARP响应报文,获取虚IP地址192.1.1.1对应的VTEP标识,并建立MAC表项,该MAC表项用于指示虚IP地址192.1.1.1对应的VTEP标识,即虚VTEP标识30.1.1.1。
在407中,OVS#1将VXLAN解封装的ARP响应报文发送给VM#1。
在408中,VM#1接收到该ARP响应报文,该ARP响应报文的源IP地址为虚IP地址192.1.1.1,源MAC地址为虚MAC地址为1-1-1,源VTEP标识为虚VTEP标识30.1.1.1,目的IP地址为VM#1的IP地址192.1.1.101,目的VTEP标识为OVS#1的VTEP标识10.1.1.1,目的MAC地址为VM#1的MAC地址4-4-4;可以基于该ARP响应报文,确定虚地址192.1.1.1对应的MAC地址,并建立ARP表项,其中,该ARP表项的源IP地址为VM#1的IP地址,源MAC地址为VM#1的MAC地址,目的IP地址为LC#1和LC#2共有的虚IP地址,目的MAC地址为LC#1和LC#2共有的虚MAC地址。
409-411是采用组播的方式ARP请求报文的广播。
在409中,由于该ARP请求报文的目的VTEP标识为组播VTEP标识,LA1会将该ARP请求报文发送至OVS#2,LC#1和LC#2。
在410中,LC#1接收到该ARP请求报文,由于该ARP请求报文的目的IP地址为虚IP地址192.1.1.1,则LC#1回应ARP响应报文,该ARP响应报文的源IP地址为虚IP地址192.1.1.1,源MAC地址为虚MAC地址为1-1-1,源VTEP标识为虚VTEP标识30.1.1.1,目的IP地址为VM#1的IP地址192.1.1.101,目的VTEP标识为OVS#1的VTEP标识10.1.1.1,目的MAC地址为VM#1的MAC地址4-4-4。
LC#2接收到该ARP请求报文,由于该ARP请求报文的目的IP地址为虚IP地址192.1.1.1,则LC#1回应ARP响应报文,该ARP响应报文的源IP地址为虚IP地址192.1.1.1,源MAC地址为虚MAC地址为1-1-1,源VTEP标识为虚VTEP标识30.1.1.1,目的IP地址为VM#1的IP地址192.1.1.101,目的VTEP标识为OVS#1的VTEP标识10.1.1.1,目的MAC地址为VM#1的MAC地址4-4-4。
应理解,OVS#2在接收到目的VTEP标识为组播地址的ARP请求报文之后,可以对该ARP请求报文进行VXLAN解封装,并下发到其下管理的VM,其下管理的VM接收到该ARP请求报文之后,由于该ARP请求报文的目的IP地址不是其自身IP地址,丢弃该ARP请求报文。由于图示的方便,OVS#2接收到ARP请求报文之后的处理未示出。
在411中,OVS#1接收到LC#1发送的ARP响应报文,该ARP响应报文的源IP地址为虚IP地址192.1.1.1,源MAC地址为虚MAC地址为1-1-1,源VTEP标识为虚VTEP标识30.1.1.1,目的IP地址为VM#1的IP地址192.1.1.101,目的VTEP标识为OVS#1的VTEP标识10.1.1.1,目的MAC地址为VM#1的MAC地址4-4-4,由此可以基于该ARP响应报文,获取虚IP地址192.1.1.1对应的VTEP标识,并建立MAC表项,其中,其中,该MAC表项用于指示虚IP地址192.1.1.1对应的VTEP标识,即虚VTEP标识30.1.1.1。
在412中,OVS#1将VXLAN解封装的ARP响应报文发送给VM#1。
在413中,VM#1接收到该ARP响应报文,该ARP响应报文的源IP地址为虚IP地址192.1.1.1,源MAC地址为虚MAC地址为1-1-1,源VTEP标识为虚VTEP标识30.1.1.1,目的IP地址为VM#1的IP地址192.1.1.101,目的VTEP标识为OVS#1的VTEP标识10.1.1.1,目的MAC地址为VM#1的MAC地址4-4-4,可以基于该ARP响应报文,确定虚地址192.1.1.1对应的MAC地址,并建立ARP表项,其中,该ARP表项的源IP地址为VM#1的IP地址,源MAC地址为VM#1的MAC地址,目的IP地址为LC#1和LC#2共有的虚IP地址,目的MAC地址为LC#1和LC#2共有的虚MAC地址。
第二种实现方式
由第一三层网关设备通知建立方式。第一三层网关设备发送通知报文,该通知报文的源IP地址为该第一IP地址,源MAC地址为该第一MAC地址,源VTEP标识为该第一VTEP标识,以便于该第一二层网关设备接收到该通知报文后,从该通知报文中,确定与第一IP地址对应的第一VTEP标识,并建立该第三转发表项,其中,该第三转发表项用于指示第一IP地址对应的VTEP标识为第一VTEP标识;以及该第一二层网关设备将该通知报文进行VXLAN解封装后发送给该第一主机,以便于第一主机接收到该通知报文之后,从该通知报文中,确定第一IP地址对应于第一MAC地址,并建立第二转发表项,在该第二转发表项中,源IP地址为主机的IP地址,源MAC地址为主机的MAC地址,目的IP地址为第一IP地址,目的MAC地址第一MAC地址。
可选地,第一三层网关设备在确定第一IP地址或第一MAC地址变化时,发送上述通知报文。
以下将以图1所示的场景为例,结合图5描述根据本申请实施例的用于VXLAN的转发表项建立方法500的示意性流程图。
在501中,LC#1确定需要发送ARP通知报文,例如,在虚IP地址变化或虚MAC地址变化时,LC#1确定需要发送ARP通知报文,例如,虚IP地址从172.1.1.1变化为192.1.1.1,或者虚MAC地址从5-5-5变化为1-1-1。
在502中,LC#1广播ARP通知报文。其中,该ARP通知报文用于指示该LC#1的虚IP地址、虚MAC地址和虚VTEP标识,例如,该虚IP地址为192.1.1.1,虚MAC地址为1-1-1,虚VTEP标识为30.1.1.1。
其中,LC#1可以通过头端复制或组播的方式广播该ARP通知报文。
头端复制是指将该ARP通知报文复制成多份,每份携带一个VTEP标识,不同份报文携带不同的VTEP标识。例如,可以将该ARP通知报文复制并分别封装目的VTEP标识,即,OVS#1的VTEP标识10.1.1.1,以及OVS#2的VTEP标识20.1.1.1。
组播是指将该ARP请求报文的目的VTEP标识封装成组播VTEP标识。
在503中,LC#1发送的广播通知报文经过LA#1转发至OVS#1,OVS#2。
例如,如果采用头端复制的方式,则将目的VTEP标识为10.1.1.1的ARP通知报文发送给OVS#1,以及将目的VTEP标识为20.1.1.1的ARP请求报文发送给OVS#2。如果采用的是组播的方式,则将携带了组播地址的ARP通知报文分别发送给OVS#1和OVS#2。
在504中,OVS#1和OVS#2分别从ARP通知报文,获取LC#1的虚IP地址和虚VTEP标识,并基于该虚IP地址和虚VTEP标识,建立MAC表项,其中,该MAC表项用于指示虚IP地址对应的VTEP标识为虚VTEP标识。
在505中,OVS#1和OVS#2分别将VXLAN解封装后的ARP通知报文发送给对应的VM。
在506中,VM#1和VM#2在接收到ARP通知报文之后,从该ARP通知报文中获取LC#1的虚MAC地址和虚IP地址,并基于该虚MAC地址和虚IP地址,建立ARP表项。其中,在VM#1建立的ARP表项中,源IP地址为VM#1的IP地址,源MAC地址为VM#1的MAC地址,目的IP地址为LC#1和LC#2共有的虚IP地址和共有的虚MAC地址;在VM#2建立的ARP表项中,源IP地址为VM#2的IP地址,源MAC地址为VM#2的MAC地址,目的IP地址为LC#1和LC#2共有的虚IP地址和共有的虚MAC地址。
在本申请实施例中,多个三层网关设备共有IP地址(虚IP地址),共有MAC地址(虚MAC地址)和共有VTEP标识(虚VTEP标识),以及每个网关设备具有各自的IP地址(实IP地址),各自的MAC地址(实MAC地址)和各自的VTEP标识(实VTEP标识),三层网关设备可以共有的IP地址(虚IP地址),共有的MAC地址(虚MAC地址)和共有的VTEP标识(虚VTEP标识)协助主机和二层网关设备建立转发表项,从而主机和二层网关设备可以通过该转发表项发送流量,由于流量中的目的地址对应于多个三层网关设备,从而可以将流量均衡至多个三层网关设备的任一个,从而可以实现双活功能。另外,三层网关设备基于其独有的IP地址(实IP地址),独有的MAC地址(实MAC地址)和独有的VTEP标识(实VTEP标识)向主机广播地址请求报文,主机反馈的且经由二层网关设备的ARP响应报文携带该三层网关设备独有的IP地址,独有的MAC地址和独有的VTEP标识,则该地址响应报文不会被发送至其他三层网关设备,从而可以正确建立转发表项,可以实现网关设备到主机设备的流量发送。
图6是根据本申请实施例的用于VXLAN的转发表项建立装置600的示意性框图。该转发表项建立装置600可以用于实施上述实施例中的第一三层网关设备的相应功能。其中,该VXLAN的数据中心包括第一三层网关设备、第二三层网关设备、分别与该第一三层网关设备和该第二三层网关设备相连的第一二层网关设备该第一二层网关设备与第一主机相连;该第一三层网关设备具有第一互联网协议IP地址、第二IP地址、第一媒体接入控制MAC地址,第二MAC地址、与该第一IP地址和该第一MAC地址对应的第一VXLAN隧道终端VTEP标识以及与该第二IP地址和该第二MAC地址对应的第二VTEP标识;该第二三层网关设备具有该第一IP地址、第三IP地址、该第一MAC地址、第三MAC地址、该第一VTEP标识以及与该第三IP地址和该第三MAC地址对应的第三VTEP标识;该第一二层网关设备具有第四VTEP标识;该第一主机具有第四IP地址和第四MAC地址;其中,该第一IP地址、该第二IP地址、该第三IP地址和该第四IP地址互不相同,该第一MAC地址、该第二MAC地址、该第三MAC地址和该第四MAC地址互不相同,该第一VTEP标识、该第二VTEP标识、该第三VTEP标识和该第四VTEP标识互不相同;该转发表项建立装置600包括该第一三层网关设备。
该装置600包括获取单元610和建立单元620。
其中,获取单元610,用于利用所述第二IP地址、所述第二MAC地址、所述第二VTEP标识和所述第四IP地址,获取第一主机的所述第四MAC地址,以及第一二层网关设备的所述第四VTEP;其中所述第二IP地址为所述第一三层网关设备所独有的IP地址,所述第二MAC地址为所述第一三层网关设备所独有的MAC地址,所述第二VTEP标识为所述第一三层网关设备所独有的VTEP标识;
建立单元620,用于基于所述第二IP地址、所述第二MAC地址、所述第二VTEP标识、所述第四IP地址、所述第四MAC地址和所述第四VTEP标识,建立第一转发表项,其中,所述第一转发表项的源IP地址为所述第二IP地址,源MAC地址为所述第二MAC地址,目的IP地址为所述第四IP地址,目的MAC地址为所述第四MAC地址,以及所述第一转发表项用于指示所述第四MAC地址对应于所述第四VTEP标识。
可选地,如图6所示,该装置600还包括接收单元630和发送单元640。
可选地,发送单元640用于:发送第一地址请求报文,该第一地址请求报文的源IP地址为该第二IP地址,源MAC地址为该第二MAC地址,源VTEP标识为该第二VTEP标识,目的IP地址为该第四IP地址;该接收单元630用于:接收源自该第一主机,且经过该第一二层网关设备的第一地址响应报文,该第一地址响应报文的目的IP地址为该第二IP地址,目的MAC地址为该第二MAC地址,目的VTEP标识为该第二VTEP标识,源IP地址为该第四IP地址,源MAC地址为该第四MAC地址,源VTEP标识为该第四VTEP标识;该获取单元610用于:基于所述第一地址响应报文,获取第一主机的所述第四MAC地址,以及第一二层网关设备的所述第四VTEP标识。
可选地,该数据中心包括多个二层网关设备;该多个二层网关设备中每个二层网关设备与该第一三层网关设备相连;该多个二层网关设备包括该第一二层网关设备;该发送单元640进一步用于:发送多份该第一地址请求报文,该多份该第一地址请求报文与该多个二层网关设备一一对应,每个该第一地址请求报文分别携带对应的该二层网关设备的VTEP标识;或者,发送该第一地址请求报文,该第一地址请求报文的VTEP标识为第一组播VTEP标识。
可选地,该第一主机所属的服务器为静默服务器。
可选地,如图6所示,该装置600还包括协助单元650。
其中,该协助单元650用于:协助该第一主机建立第二转发表项以及协助该第一二层网关设备建立第三转发表项;该第二转发表项的源IP地址为该第四IP地址,源MAC地址为该第四MAC地址,目的IP地址为该第一IP地址,目的MAC地址为该第一MAC地址;该第三转发表项用于指示该第一MAC地址对应于该第一VTEP标识。
可选地,接收单元630用于:接收源自该第一主机,且经过该第一二层网关设备的第二地址请求报文,其中,该第二地址请求报文的源IP地址为该第四IP地址,源MAC地址为该第四MAC地址,源VTEP标识为该第四VTEP标识,目的IP地址为该第一IP地址,目的VTEP标识为该第一VTEP标识或为第二组播VTEP标识;该协助单元650用于:获取该第二地址请求报文的目的IP地址为该第一IP地址;确定与该第一IP地址对应的第一MAC地址,以及该第一IP地址对应的该第一VTEP标识;基于该第一IP地址、该第一MAC地址、该第一VTEP标识、该第四IP地址、该第四MAC地址和该第四VTEP标识,生成第二地址响应报文,其中,该第二地址响应报文的源VTEP标识为该第一VTEP标识,源IP地址为该第一IP地址,源MAC地址为该第一MAC地址,目的IP地址为该第四IP地址,目的MAC地址为该第四MAC地址,目的VTEP标识为该第四VTEP标识;该发送单元640用于发送该第二地址响应报文,以便于该第一二层网关设备根据接收到的该第二地址响应报文建立该第三转发表项,以及以便于该第一主机根据接收到的该第一二层网关设备发送的VXLAN解封装后的该第二地址响应报文建立该第二转发表项。
可选地,如图6所示,该装置600还包括丢弃单元660.
其中,该接收单元630用于:接收源自该第一主机,且经过该第一二层网关设备的第三地址请求报文,该第三地址请求报文的源IP地址为该第四IP地址,源MAC地址为该第四MAC地址,源VTEP标识为该第四VTEP标识,目的IP地址为该第一IP地址,目的VTEP标识为该第二VTEP标识;该丢弃单元660用于:获取所述第三地址请求报文的目的IP地址为所述第一IP地址,以及目的VTEP标识为所述第二VTEP标识;确定与所述第一IP地址对应的所述第一VTEP标识;丢弃所述第三地址请求报文。
可选地,该协助单元650具体用于:生成通知报文,该通知报文的源IP地址为该第一IP地址,源MAC地址为该第一MAC地址,源VTEP标识为该第一VTEP标识。发送单元640用于发送该通知报文,以便于所述第一二层网关设备根据接收到的所述通知报文建立所述第三转发表项,以及所述第一二层网关设备将所述通知报文进行VXLAN解封装后发送给所述第一主机,以便于所述第一主机根据接收到的所述第一二层网关设备发送的VXLAN解封装后的所述通知报文建立所述第二转发表项。
可选地,该协助单元具体630用于:确定该第一MAC地址和/或该第一IP地址变化时,生成该通知报文。
图6所示的装置600可以包括前述方法实施例中的第一三层网关设备,可以实现该第一三层网关设备的相应功能,为了简洁,在此不再赘述。
图7是根据本申请实施例的用于vxlan的装置700的示意性框图。该VXLAN的数据中心包括第一三层网关设备、第二三层网关设备、分别与该第一三层网关设备和该第二三层网关设备相连的第一二层网关设备;其中,该第一二层网关设备与第一主机相连;该第一三层网关设备具有第一互联网协议IP地址、第二IP地址、第一媒体接入控制MAC地址,第二MAC地址、与该第一IP地址和该第一MAC地址对应的第一VXLAN隧道终端VTEP标识以及与该第二IP地址和该第二MAC地址对应的第二VTEP标识;该第二三层网关设备具有该第一IP地址、第三IP地址、该第一MAC地址、第三MAC地址、该第一VTEP标识以及与该第三IP地址和该第三MAC地址对应的第三VTEP标识;该第一二层网关设备具有第四VTEP标识;该第一主机具有第四IP地址和第四MAC地址;其中,该第一IP地址、该第二IP地址、该第三IP地址和该第四IP地址互不相同,该第一MAC地址、该第二MAC地址、该第三MAC地址和该第四MAC地址互不相同,该第一VTEP标识、该第二VTEP标识、该第三VTEP标识和该第四VTEP标识互不相同。该装置700包括该第一三层网关设备。
如图7所示,该装置700包括处理器710和存储器720。存储器720,用于存放程序指令。处理器710可以调用存储器720中存放的程序指令。可选地,该装置700包括收发器730,用于该装置与外界进行通信。
可选地,该装置700可以执行方法实施例中第一三层网关设备的一个或多个步骤。
具体地,处理器710可以调用存储器720中存放的程序指令,执行以下处理:所述第一三层网关设备利用所述第二IP地址、所述第二MAC地址、所述第二VTEP标识和所述第四IP地址,获取所述第一主机的所述第四MAC地址,以及所述第一二层网关设备的所述第四VTEP;基于所述第二IP地址、所述第二MAC地址、所述第二VTEP标识、所述第四IP地址、所述第四MAC地址和所述第四VTEP标识,建立第一转发表项,其中,所述第一转发表项的源IP地址为所述第二IP地址,源MAC地址为所述第二MAC地址,目的IP地址为所述第四IP地址,目的MAC地址为所述第四MAC地址,以及所述第一转发表项用于指示所述第四MAC地址对应于所述第四VTEP标识。其中所述第二IP地址为所述第一三层网关设备所独有的IP地址,所述第二MAC地址为所述第一三层网关设备所独有的MAC地址,所述第二VTEP标识为所述第一三层网关设备所独有的VTEP标识。
可选地,处理器710可以调用存储器720中存放的程序指令,进一步执行以下处理:利用收发器730发送第一地址请求报文,所述第一地址请求报文的源IP地址为所述第二IP地址,源MAC地址为所述第二MAC地址,源VTEP标识为所述第二VTEP标识,目的IP地址为所述第四IP地址;利用收发器730接收源自所述第一主机,且经过所述第一二层网关设备的第一地址响应报文,所述第一地址响应报文的目的IP地址为所述第二IP地址,目的MAC地址为所述第二MAC地址,目的VTEP标识为所述第二VTEP标识,源IP地址为所述第四IP地址,源MAC地址为所述第四MAC地址,源VTEP标识为所述第四VTEP标识;基于所述第一地址响应报文,确定第一主机的所述第四MAC地址,以及第一二层网关设备的所述第四VTEP。
可选地,所述数据中心包括多个二层网关设备;所述多个二层网关设备中每个二层网关设备与所述第一三层网关设备相连;所述多个二层网关设备包括所述第一二层网关设备;处理器710可以调用存储器720中存放的程序指令,进一步执行以下处理:利用收发器730发送多份所述第一地址请求报文,所述多份所述第一地址请求报文与所述多个二层网关设备一一对应,每个所述第一地址请求报文分别携带对应的所述二层网关设备的VTEP标识;或者,利用收发器730发送所述第一地址请求报文,所述第一地址请求报文的VTEP标识为第一组播VTEP标识。
可选地,所述第一主机所属的服务器为静默服务器。
可选地,处理器710可以调用存储器720中存放的程序指令,进一步执行以下处理:利用所述第一IP地址、所述第一MAC地址和所述第一VTEP标识,协助所述第一主机建立第二转发表项以及协助所述第一二层网关设备建立第三转发表项;所述第二转发表项的源IP地址为所述第四IP地址,源MAC地址为所述第四MAC地址,目的IP地址为所述第一IP地址,目的MAC地址为所述第一MAC地址;所述第三转发表项用于指示所述第一MAC地址对应于所述第一VTEP标识。
可选地,处理器710可以调用存储器720中存放的程序指令,进一步执行以下处理:利用收发器730接收源自所述第一主机,且经过所述第一二层网关设备的第二地址请求报文,其中,所述第二地址请求报文的源IP地址为所述第四IP地址,源MAC地址为所述第四MAC地址,源VTEP标识为所述第四VTEP标识,目的IP地址为所述第一IP地址,目的VTEP标识为所述第一VTEP标识或为第二组播VTEP标识;获取所述第二地址请求报文的目的IP地址为所述第一IP地址;
确定与所述第一IP地址对应的所述第一MAC地址,以及与所述第一IP地址对应的所述第一VTEP标识;于所述第一IP地址、所述第一MAC地址、所述第一VTEP标识、所述第四IP地址、所述第四MAC地址和所述第四VTEP标识,生成第二地址响应报文,其中,所述第二地址响应报文的源VTEP标识为所述第一VTEP标识,源IP地址为所述第一IP地址,源MAC地址为所述第一MAC地址,目的IP地址为所述第四IP地址,目的MAC地址为所述第四MAC地址,目的VTEP标识为所述第四VTEP标识;所述第一三层网关设备发送所述第二地址响应报文,以便于所述第一二层网关设备根据接收到的所述第二地址响应报文建立所述第三转发表项,以及以便于所述第一主机根据接收到的所述第一二层网关设备发送的VXLAN解封装后的所述第二地址响应报文建立所述第二转发表项。
可选地,处理器710可以调用存储器720中存放的程序指令,进一步执行以下处理:利用收发器730接收源自所述第一主机,且经过所述第一二层网关设备的第三地址请求报文,所述第三地址请求报文的源IP地址为所述第四IP地址,源MAC地址为所述第四MAC地址,源VTEP标识为所述第四VTEP标识,目的IP地址为所述第一IP地址,目的VTEP标识为所述第二VTEP标识;获取所述第三地址请求报文的目的IP地址为所述第一IP地址,以及目的VTEP标识为所述第二VTEP标识;确定与所述第一IP地址对应的所述第一VTEP标识;丢弃所述第三地址请求报文。
可选地,处理器710可以调用存储器720中存放的程序指令,进一步执行以下处理:利用收发器730发送通知报文,所述通知报文的源IP地址为所述第一IP地址,源MAC地址为所述第一MAC地址,源VTEP标识为所述第一VTEP标识,以便于所述第一二层网关设备接收到所述通知报文后,建立所述第三转发表项,以及所述第一二层网关设备将所述通知报文进行VXLAN解封装后发送给所述第一主机,以便于所述第一主机建立所述第二转发表项。
可选地,处理器710可以调用存储器720中存放的程序指令,进一步执行以下处理:确定所述第一MAC地址和/或所述第一IP地址变化时,利用收发器730发送通知报文。
可选地,如图7所示,装置700还可以包括总线系统740,处理器410、存储器420和收发器通过总线系统740相连。
在本申请实施例中,处理器710可以是中央处理器(central processingunit,CPU),网络处理器(network processor,NP)或者CPU和NP的组合。处理器410还可以进一步包括硬件芯片。上述硬件芯片可以是专用集成电路(application-specific integrated circuit,ASIC),可编程逻辑器件(programmablelogic device,PLD)或其组合。上述PLD可以是复杂可编程逻辑器件(complexprogrammable logic device,CPLD),现场可编程逻辑门阵列(field-programmable gate array,FPGA),通用阵列逻辑(generic array logic,GAL)或其任意组合。
该总线系统740除包括数据总线之外,还可以包括电源总线、控制总线和状态信号总线等。为便于表示,图中仅用一条粗线表示总线系统430,但并不表示仅有一根总线或一种类型的总线。
可选地,图7所示的装置700可以包括前述方法实施例中的第一三层网关设备,可以实现该第一三层网关设备的相应功能,为了简洁,在此不再赘述。
本申请实施例还提供一种用于VXLAN的数据中心,该数据中心包括第一三层网关设备、第二三层网关设备、分别与该第一三层网关设备和该第二三层网关设备相连的第一二层网关设备;其中,该第一二层网关设备与第一主机相连;该第一三层网关设备具有第一互联网协议IP地址、第二IP地址、第一媒体接入控制MAC地址,第二MAC地址、与该第一IP地址和该第一MAC地址对应的第一VXLAN隧道终端VTEP标识以及与该第二IP地址和该第二MAC地址对应的第二VTEP标识;该第二三层网关设备具有该第一IP地址、第三IP地址、该第一MAC地址、第三MAC地址、该第一VTEP标识以及与该第三IP地址和该第三MAC地址对应的第三VTEP标识;该第一二层网关设备具有第四VTEP标识;该第一主机具有第四IP地址和第四MAC地址;其中,该第一IP地址、该第二IP地址、该第三IP地址和该第四IP地址互不相同,该第一MAC地址、该第二MAC地址、该第三MAC地址和该第四MAC地址互不相同,该第一VTEP标识、该第二VTEP标识、该第三VTEP标识和该第四VTEP标识互不相同。
可选地,所述数据中心还包括负载均衡设备,所述负载均衡设备用于将来自所述第一主机且目的IP地址为所述第一IP地址,目的MAC地址为所述第一MAC地址和目的VTEP标识为所述第一VTEP的报文负载均衡至所述第一三层网关设备或所述第二三层网关设备。
可选地,该第一三层网关设备可以包括上述装置600或700。
在本申请实施例中,多个三层网关设备共有IP地址(虚IP地址),共有MAC地址(虚MAC地址)和共有VTEP标识(虚VTEP标识),以及每个网关设备具有各自的IP地址(实IP地址),各自的MAC地址(实MAC地址)和各自的VTEP标识(实VTEP标识),三层网关设备可以共有的IP地址(虚IP地址),共有的MAC地址(虚MAC地址)和共有的VTEP标识(虚VTEP标识)协助主机和二层网关设备建立转发表项,从而主机和二层网关设备可以通过该转发表项发送流量,由于流量中的目的地址对应于多个三层网关设备,从而可以将流量均衡至多个三层网关设备的任一个,从而可以实现双活功能。另外,三层网关设备基于其独有的IP地址(实IP地址),独有的MAC地址(实MAC地址)和独有的VTEP标识(实VTEP标识)向主机广播地址请求报文,主机反馈的且经由二层网关设备的ARP响应报文携带该三层网关设备独有的IP地址,独有的MAC地址和独有的VTEP标识,则该地址响应报文不会被发送至其他三层网关设备,从而可以正确建立转发表项,可以实现网关设备到主机设备的流量发送。
图8是根据本申请实施例的用于VXLAN的主机800的示意性框图,该主机为第一主机。所述VXLAN的数据中心包括第一三层网关设备、第二三层网关设备、分别与所述第一三层网关设备和所述第二三层网关设备相连的第一二层网关设备;其中,所述第一二层网关设备设备连接第一主机;所述第一三层网关设备具有第一IP地址、第二IP地址、与所述第一IP地址对应的第一MAC地址,与所述第二IP地址对应的第二MAC地址、与所述第一IP地址和所述第一MAC地址对应的第一VXLAN隧道终端VTEP标识以及与所述第二IP地址和所述第二MAC地址对应的第二VTEP标识;所述第二三层网关设备具有所述第一IP地址、第三IP地址、所述第一MAC地址、与所述第三IP地址对应的第三MAC地址、所述第一VTEP标识以及与所述第三IP地址和所述第三MAC地址对应的第三VTEP标识;所述第一二层网关设备具有第四VTEP标识;所述第一主机具有第四IP地址和与所述第四IP地址对应的第四MAC地址;其中,所述第一IP地址、所述第二IP地址、所述第三IP地址和所述第四IP地址互不相同,所述第一MAC地址、所述第二MAC地址、所述第三MAC地址和所述第四MAC地址互不相同,所述第一VTEP标识、所述第二VTEP标识、所述第三VTEP标识和所述第四VTEP标识互不相同;
该主机800包括获取单元810和建立单元820,其中,该获取单元810获取与所述第一IP地址对应的所述第一MAC地址;建立单元820用于基于所述第一IP地址,所述第一MAC地址,所述第四IP地址和所述第四MAC地址,建立第二转发表项,其中,所述第二转发表项的源IP地址为所述第四IP地址,源MAC地址为所述第四MAC地址,目的IP地址为所述第一IP地址,目的MAC地址为所述第一MAC地址。
可选地,该获取单元810具体用于:利用所述第一IP地址,所述第四IP地址和所述第四MAC地址,获取与所述第一IP地址对应的所述第一MAC地址;
可选地,如图8所示,该主机800还包括接收单元830和发送单元840。
可选地,该发送单元840用于:向所述第一二层网关设备发送所述第二地址请求报文,所述第二地址请求报文的源IP地址为所述第四IP地址,源MAC地址为所述第四MAC地址,目的IP地址为所述第一IP地址;该接收单元830用于:接收第二地址响应报文,其中,所述第二地址响应报文的源IP地址为所述第一IP地址,源MAC地址为所述第一MAC地址,目的IP地址为所述第四IP地址,目的MAC地址为所述第四MAC地址;该获取单元810用于:从所述第二地址响应报文中,获取与所述第一IP地址对应的所述第一MAC地址。
可选地,该接收单元830用于:接收通知报文,所述通知报文所述通知报文的源IP地址为所述第一IP地址,源MAC地址为所述第一MAC地址;该获取单元810用于从所述通知报文中获取与所述第一IP地址对应的所述第一MAC地址。
可选的,上述获取单元810、建立单元820、接收单元830和发送单元840的功能以及具体实施可以由处理器或者专用集成电路ASIC等实施。
可选地,该主机800可以对应于前述各实施例中的主机或第一主机,可以实现其相应功能,为了简洁,在此不再赘述。
本申请实施例还提供了一种服务器,所述服务器包括存储器和处理器,该存储器用于存储指令,该处理器用于执行该存储器存储的指令,并且当该处理器执行该存储器存储的指令时,该执行使得该处理器执行上述主机800所有的功能或操作。其中,该服务器的部件和连接关系和参考图7所示。
图9是根据本申请实施例的用于VXLAN的二层网关设备900的示意性框图。该二层网关设备900为第一二层网关设备。其中,所述VXLAN的数据中心包括第一三层网关设备、第二三层网关设备、分别与所述第一三层网关设备和所述第二三层网关设备相连的第一二层网关设备;其中,所述第一二层网关设备设备连接第一主机;所述第一三层网关设备具有第一IP地址、第二IP地址、与所述第一IP地址对应的第一MAC地址,与所述第二IP地址对应的第二MAC地址、与所述第一IP地址和所述第一MAC地址对应的第一VXLAN隧道终端VTEP标识以及与所述第二IP地址和所述第二MAC地址对应的第二VTEP标识;所述第二三层网关设备具有所述第一IP地址、第三IP地址、所述第一MAC地址、与所述第三IP地址对应的第三MAC地址、所述第一VTEP标识以及与所述第三IP地址和所述第三MAC地址对应的第三VTEP标识;所述第一二层网关设备具有第四VTEP标识;所述第一主机具有第四IP地址和与所述第四IP地址对应的第四MAC地址;其中,所述第一IP地址、所述第二IP地址、所述第三IP地址和所述第四IP地址互不相同,所述第一MAC地址、所述第二MAC地址、所述第三MAC地址和所述第四MAC地址互不相同,所述第一VTEP标识、所述第二VTEP标识、所述第三VTEP标识和所述第四VTEP标识互不相同。
该设备900包括获取单元910和建立单元920。其中,获取单元910用于获取与所述第一MAC地址对应的所述第一VTEP标识;建立单元920用于基于所述第一MAC地址和所述第一VTEP标识,建立第三转发表项,其中,所述第三转发表项用于指示所述第一MAC地址对应于所述第一VTEP标识。
可选地,如图9所示,该二层网关设备900还包括接收单元930和发送单元940。
可选地,接收单元930用于:接收所述第一主机发送的第二地址请求报文,所述第二地址请求报文的源IP地址为所述第四IP地址,源MAC地址为所述第四MAC地址,目的IP地址为所述第一IP地址;发送单元940用于:对所述第二地址请求报文进行VXLAN封装,并广播VXLAN封装后的所述第二地址请求报文;接收单元930用于:接收第二地址响应报文,所述第二地址响应报文的源IP地址为所述第一IP地址,源MAC地址为所述第一MAC地址,源VTEP标识为所述第一VTEP标识,目的IP地址为所述第四IP地址,目的MAC地址为所述第四MAC地址,目的VTEP标识为所述第四VTEP标识;获取单元910用于:从所述第二地址响应报文中,获取所述第一MAC地址对应于所述第一VTEP标识。
可选地,该发送单元940具体用于:对所述第二地址请求报文进行VXLAN封装,生成多份第二请求报文报文,所述多份第二地址请求报文携带不同的目的VTEP标识,所述多份第二地址请求报文包括目的VTEP标识为所述第一VTEP标识的报文,目的VTEP标识为所述第二VTEP标识的报文和目的VTEP标识为所述第三VTEP标识的报文;或者,在所述第二地址请求报文中封装第二组播VTEP标识。
可选地,该接收单元930用于:接收通知报文,所述通知报文的源IP地址为所述第一IP地址,源MAC地址为所述第一MAC地址,源VTEP标识为所述第一VTEP标识;该获取单元910用于:从所述通知报文中,确定所述第一MAC地址对应于所述第一VTEP标识。
可选的,上述获取单元910、建立单元920、接收单元930和发送单元940的功能以及具体实施可以由处理器或者专用集成电路ASIC等实施。
可选地,该设备900可以对应于方法实施例中的第一二层网关设备,可以实现其相应功能,为了简洁,在此不再赘述。
本申请实施例还提供了一种二层网关设备,包括存储器和处理器,该存储器用于存储指令,该处理器用于执行该存储器存储的指令,并且当该处理器执行该存储器存储的指令时,该执行使得该处理器执行上述二层网关设备的所有功能和操作。其中,该二层网关设备的部件和连接关系和参考图7所示。
图10是根据本申请实施例的用于VXLAN的负载均衡设备1000的示意性框图。其中,所述VXLAN的数据中心包括第一三层网关设备、第二三层网关设备、分别与所述第一三层网关设备和所述第二三层网关设备相连的第一二层网关设备,以及分别与所述第一三层网关设备和所述第二三层网关设备相连的负载均衡设备;其中,所述第一二层网关设备设备连接第一主机;所述第一三层网关设备具有第一IP地址、第二IP地址、与所述第一IP地址对应的第一MAC地址,与所述第二IP地址对应的第二MAC地址、与所述第一IP地址和所述第一MAC地址对应的第一VXLAN隧道终端VTEP标识以及与所述第二IP地址和所述第二MAC地址对应的第二VTEP标识;所述第二三层网关设备具有所述第一IP地址、第三IP地址、所述第一MAC地址、与所述第三IP地址对应的第三MAC地址、所述第一VTEP标识以及与所述第三IP地址和所述第三MAC地址对应的第三VTEP标识;所述第一二层网关设备具有第四VTEP标识;所述第一主机具有第四IP地址和与所述第四IP地址对应的第四MAC地址;其中,所述第一IP地址、所述第二IP地址、所述第三IP地址和所述第四IP地址互不相同,所述第一MAC地址、所述第二MAC地址、所述第三MAC地址和所述第四MAC地址互不相同,所述第一VTEP标识、所述第二VTEP标识、所述第三VTEP标识和所述第四VTEP标识互不相同,该设备1000包括接收单元1010和负载均衡单元1020。
其中,接收单元1010用于接收流量报文,所述流量报文的源IP地址为所述第四IP地址,源MAC地址为所述第四MAC地址,源VTEP标识为所述第四VTEP标识,目的IP地址为所述第一IP地址,目的MAC地址为所述第一MAC地址,目的VTEP标识为所述第一VTEP标识;负载均衡单元用于将所述流量报文负载均衡至所述第一三层网关设备或所述第二三层网关设备。
可选地,所述负载均衡设备与前述所有实施例中的第一二层网关设备集成在同一设备中,在这种情况下,集成该两设备的设备同时具有前述所有实施例中描述的二层网关设备的功能和操作以及此处描述的负载均衡的功能和操作。
可选地,所述负载均衡设备与所述第一二层网关设备设置在不同设备中。
本申请实施例还提供了一种负载均衡设备,包括存储器和处理器,该存储器用于存储指令,该处理器用于执行该存储器存储的指令,并且当该处理器执行该存储器存储的指令时,该执行使得该处理器执行上述负载均衡设备的所有功能和操作。其中,该负载均衡设备的部件和连接关系和参考图7所示。
本领域普通技术人员可以意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、或者计算机软件和电子硬件的结合来实现。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本发明的范围。
所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的系统、装置和单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
在本申请所提供的几个实施例中,应该理解到,所揭露的系统、装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本发明各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。
所述功能如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质。
以上所述,仅为本发明的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应所述以权利要求的保护范围为准。
Claims (21)
1.一种用于虚拟可扩展局域网VXLAN的转发表项建立方法,其特征在于,所述VXLAN的数据中心包括第一三层网关设备、第二三层网关设备、分别与所述第一三层网关设备和所述第二三层网关设备相连的第一二层网关设备;其中,所述第一二层网关设备设备连接第一主机;所述第一三层网关设备具有第一互联网协议IP地址、第二IP地址、与所述第一IP地址对应的第一媒体接入控制MAC地址,与所述第二IP地址对应的第二MAC地址、与所述第一IP地址和所述第一MAC地址对应的第一VXLAN隧道终端VTEP标识以及与所述第二IP地址和所述第二MAC地址对应的第二VTEP标识;所述第二三层网关设备具有所述第一IP地址、第三IP地址、所述第一MAC地址、与所述第三IP地址对应的第三MAC地址、所述第一VTEP标识以及与所述第三IP地址和所述第三MAC地址对应的第三VTEP标识;所述第一二层网关设备具有第四VTEP标识;所述第一主机具有第四IP地址和与所述第四IP地址对应的第四MAC地址;其中,所述第一IP地址、所述第二IP地址、所述第三IP地址和所述第四IP地址互不相同,所述第一MAC地址、所述第二MAC地址、所述第三MAC地址和所述第四MAC地址互不相同,所述第一VTEP标识、所述第二VTEP标识、所述第三VTEP标识和所述第四VTEP标识互不相同;所述方法包括:
所述第一三层网关设备利用所述第二IP地址、所述第二MAC地址、所述第二VTEP标识和所述第四IP地址,获取所述第一主机的所述第四MAC地址和所述第一二层网关设备的所述第四VTEP标识,其中所述第二IP地址为所述第一三层网关设备所独有的IP地址,所述第二MAC地址为所述第一三层网关设备所独有的MAC地址,所述第二VTEP标识为所述第一三层网关设备所独有的VTEP标识;
基于所述第二IP地址、所述第二MAC地址、所述第二VTEP标识、所述第四IP地址、所述第四MAC地址和所述第四VTEP标识,建立第一转发表项,其中,所述第一转发表项的源IP地址为所述第二IP地址,源MAC地址为所述第二MAC地址,目的IP地址为所述第四IP地址,目的MAC地址为所述第四MAC地址,以及所述第一转发表项用于指示所述第四MAC地址对应于所述第四VTEP标识。
2.根据权利要求1所述的方法,其特征在于,所述第一三层网关设备利用所述第二IP地址、所述第二MAC地址、所述第二VTEP标识和所述第四IP地址,获取所述第一主机的所述第四MAC地址和所述第一二层网关设备的所述第四VTEP标识,包括:
所述第一三层网关设备发送第一地址请求报文,所述第一地址请求报文的源IP地址为所述第二IP地址,源MAC地址为所述第二MAC地址,源VTEP标识为所述第二VTEP标识,目的IP地址为所述第四IP地址;
所述第一三层网关设备接收源自所述第一主机,且经过所述第一二层网关设备的第一地址响应报文,所述第一地址响应报文的目的IP地址为所述第二IP地址,目的MAC地址为所述第二MAC地址,目的VTEP标识为所述第二VTEP标识,源IP地址为所述第四IP地址,源MAC地址为所述第四MAC地址,源VTEP标识为所述第四VTEP标识;
基于所述第一地址响应报文,获取所述第一主机的所述第四MAC地址和所述第一二层网关设备的所述第四VTEP标识。
3.根据权利要求2所述的方法,其特征在于,所述数据中心包括多个二层网关设备;所述多个二层网关设备中每个二层网关设备与所述第一三层网关设备相连;所述多个二层网关设备包括所述第一二层网关设备;
所述第一三层网关设备发送第一地址请求报文,包括:
所述第一三层网关设备发送多份所述第一地址请求报文,所述多份所述第一地址请求报文与所述多个二层网关设备一一对应,每个所述第一地址请求报文分别携带对应的所述二层网关设备的VTEP标识;或者,
所述第一三层网关设备发送所述第一地址请求报文,所述第一地址请求报文的VTEP标识为第一组播VTEP标识。
4.根据权利要求2或3所述的方法,其特征在于,所述第一主机所属的服务器为静默服务器。
5.根据权利要求1至4中任一项所述的方法,其特征在于,所述方法还包括:
所述第一三层网关设备利用所述第一IP地址、所述第一MAC地址和所述第一VTEP标识,协助所述第一主机建立第二转发表项以及协助所述第一二层网关设备建立第三转发表项;所述第二转发表项的源IP地址为所述第四IP地址,源MAC地址为所述第四MAC地址,目的IP地址为所述第一IP地址,目的MAC地址为所述第一MAC地址;所述第三转发表项用于指示所述第一MAC地址对应于所述第一VTEP标识。
6.根据权利要求5所述的方法,其特征在于,所述协助所述第一主机建立第二转发表项以及协助所述第一二层网关设备建立第三转发表项之前,所述方法还包括:
所述第一三层网关设备接收源自所述第一主机,且经过所述第一二层网关设备的第二地址请求报文,其中,所述第二地址请求报文的源IP地址为所述第四IP地址,源MAC地址为所述第四MAC地址,源VTEP标识为所述第四VTEP标识,目的IP地址为所述第一IP地址,目的VTEP标识为所述第一VTEP标识或为第二组播VTEP标识;
所述协助所述第一主机建立第二转发表项以及协助所述第一二层网关设备建立第三转发表项,包括:
确定所述第二地址请求报文的目的IP地址为所述第一IP地址;
确定与所述第一IP地址对应的所述第一MAC地址,以及与所述第一IP地址对应的所述第一VTEP标识;
基于所述第一IP地址、所述第一MAC地址、所述第一VTEP标识、所述第四IP地址、所述第四MAC地址和所述第四VTEP标识,生成第二地址响应报文,其中,所述第二地址响应报文的源VTEP标识为所述第一VTEP标识,源IP地址为所述第一IP地址,源MAC地址为所述第一MAC地址,目的IP地址为所述第四IP地址,目的MAC地址为所述第四MAC地址,目的VTEP标识为所述第四VTEP标识;
所述第一三层网关设备发送所述第二地址响应报文,以便于所述第一二层网关设备根据接收到的所述第二地址响应报文建立所述第三转发表项,以及以便于所述第一主机根据接收到的所述第一二层网关设备发送的VXLAN解封装后的所述第二地址响应报文建立所述第二转发表项。
7.根据权利要求6所述的方法,其特征在于,所述方法还包括:
所述第一三层网关设备接收源自所述第一主机,且经过所述第一二层网关设备的第三地址请求报文,所述第三地址请求报文的源IP地址为所述第四IP地址,源MAC地址为所述第四MAC地址,源VTEP标识为所述第四VTEP标识,目的IP地址为所述第一IP地址,目的VTEP标识为所述第二VTEP标识;
确定所述第三地址请求报文的目的IP地址为所述第一IP地址,以及目的VTEP标识为所述第二VTEP标识;
确定与所述第一IP地址对应的所述第一VTEP标识;
丢弃所述第三地址请求报文。
8.根据权利要求5所述的方法,其特征在于,所述协助所述第一主机建立第二转发表项以及协助所述第一二层网关设备建立第三转发表项,包括:
所述第一三层网关设备发送通知报文,所述通知报文的源IP地址为所述第一IP地址,源MAC地址为所述第一MAC地址,源VTEP标识为所述第一VTEP标识,以便于所述第一二层网关设备根据接收到的所述通知报文建立所述第三转发表项,以及所述第一二层网关设备将所述通知报文进行VXLAN解封装后发送给所述第一主机,以便于所述第一主机根据接收到的所述第一二层网关设备发送的VXLAN解封装后的所述通知报文建立所述第二转发表项。
9.根据权利要求8所述的方法,其特征在于,所述第一三层网关设备发送通知报文之前,所述方法还包括:
确定所述第一MAC地址和/或所述第一IP地址变化。
10.一种用于虚拟可扩展局域网VXLAN的转发表项建立装置,其特征在于,所述VXLAN的数据中心包括第一三层网关设备、第二三层网关设备、分别与所述第一三层网关设备和所述第二三层网关设备相连的第一二层网关设备;所述第一二层网关设备与第一主机相连;所述第一三层网关设备具有第一互联网协议IP地址、第二IP地址、与所述第一IP地址对应的第一媒体接入控制MAC地址,与所述第二IP地址对应的第二MAC地址、与所述第一IP地址和所述第一MAC地址对应的第一VXLAN隧道终端VTEP标识以及与所述第二IP地址和所述第二MAC地址对应的第二VTEP标识;所述第二三层网关设备具有所述第一IP地址、第三IP地址、所述第一MAC地址、与所述第三IP地址对应的第三MAC地址、所述第一VTEP标识以及与所述第三IP地址和所述第三MAC地址对应的第三VTEP标识;所述第一二层网关设备具有第四VTEP标识;所述第一主机具有第四IP地址和与所述第四IP地址对应的第四MAC地址;其中,所述第一IP地址、所述第二IP地址、所述第三IP地址和所述第四IP地址互不相同,所述第一MAC地址、所述第二MAC地址、所述第三MAC地址和所述第四MAC地址互不相同,所述第一VTEP标识、所述第二VTEP标识、所述第三VTEP标识和所述第四VTEP标识互不相同;
所述转发表项建立装置为所述第一三层网关设备;所述装置包括:
获取单元,用于利用所述第二IP地址、所述第二MAC地址、所述第二VTEP标识和所述第四IP地址,获取所述第一主机的所述第四MAC地址和所述第一二层网关设备的所述第四VTEP标识,其中所述第二IP地址为所述第一三层网关设备所独有的IP地址,所述第二MAC地址为所述第一三层网关设备所独有的MAC地址,所述第二VTEP标识为所述第一三层网关设备所独有的VTEP标识;
建立单元,用于基于所述第二IP地址、所述第二MAC地址、所述第二VTEP标识、所述第四IP地址、所述第四MAC地址和所述第四VTEP标识,建立第一转发表项,其中,所述第一转发表项的源IP地址为所述第二IP地址,源MAC地址为所述第二MAC地址,目的IP地址为所述第四IP地址,目的MAC地址为所述第四MAC地址,以及所述第一转发表项用于指示所述第四MAC地址对应于所述第四VTEP标识。
11.根据权利要求10所述的装置,其特征在于,所述装置进一步包括:
发送单元,用于发送第一地址请求报文,所述第一地址请求报文的源IP地址为所述第二IP地址,源MAC地址为所述第二MAC地址,源VTEP标识为所述第二VTEP标识,目的IP地址为所述第四IP地址;
接收单元,用于接收源自所述第一主机,且经过所述第一二层网关设备的第一地址响应报文,所述第一地址响应报文的目的IP地址为所述第二IP地址,目的MAC地址为所述第二MAC地址,目的VTEP标识为所述第二VTEP标识,源IP地址为所述第四IP地址,源MAC地址为所述第四MAC地址,源VTEP标识为所述第四VTEP标识;
所述获取单元,具体用于基于所述第一地址响应报文,获取所述第一主机的所述第四MAC地址和所述第一二层网关设备的所述第四VTEP标识。
12.根据权利要求11所述的装置,其特征在于,所述数据中心包括多个二层网关设备;所述多个二层网关设备中每个二层网关设备与所述第一三层网关设备相连;所述多个二层网关设备包括所述第一二层网关设备;
所述发送单元进一步用于:
发送多份所述第一地址请求报文,所述多份所述第一地址请求报文与所述多个二层网关设备一一对应,每个所述第一地址请求报文分别携带对应的所述二层网关设备的VTEP标识;或者,
发送所述第一地址请求报文,所述第一地址请求报文的VTEP标识为第一组播VTEP标识。
13.根据权利要求11或12所述的装置,其特征在于,所述第一主机所属的服务器为静默服务器。
14.根据权利要求10所述的方法,其特征在于,所述装置还包括协助单元,用于:
利用所述第一IP地址、所述第一MAC地址和所述第一VTEP标识,协助所述第一主机建立第二转发表项以及协助所述第一二层网关设备建立第三转发表项;所述第二转发表项的源IP地址为所述第四IP地址,源MAC地址为所述第四MAC地址,目的IP地址为所述第一IP地址,目的MAC地址为所述第一MAC地址;所述第三转发表项用于指示所述第一MAC地址对应于所述第一VTEP标识。
15.根据权利要求14所述的装置,其特征在于,所述装置进一步包括:
接收单元,用于接收源自所述第一主机,且经过所述第一二层网关设备的第二地址请求报文,其中,所述第二地址请求报文的源IP地址为所述第四IP地址,源MAC地址为所述第四MAC地址,源VTEP标识为所述第四VTEP标识,目的IP地址为所述第一IP地址,目的VTEP标识为所述第一VTEP标识或为第二组播VTEP标识;
所述协助单元具体用于:
确定所述第二地址请求报文的目的IP地址为所述第一IP地址;
确定与所述第一IP地址对应的所述第一MAC地址,以及与所述第一IP地址对应的所述第一VTEP标识;
基于所述第一IP地址、所述第一MAC地址、所述第一VTEP标识、所述第四IP地址、所述第四MAC地址和所述第四VTEP标识,生成第二地址响应报文,其中,所述第二地址响应报文的源VTEP标识为所述第一VTEP标识,源IP地址为所述第一IP地址,源MAC地址为所述第一MAC地址,目的IP地址为所述第四IP地址,目的MAC地址为所述第四MAC地址,目的VTEP标识为所述第四VTEP标识;
所述装置还包括发送单元,用于发送所述第二地址响应报文,以便于所述第一二层网关设备根据接收到的所述第二地址响应报文建立所述第三转发表项,以及以便于所述第一主机根据接收到的所述第一二层网关设备发送的VXLAN解封装后的所述第二地址响应报文建立所述第二转发表项。
16.根据权利要求15所述的装置,其特征在于,
所述接收单元进一步用于接收源自所述第一主机,且经过所述第一二层网关设备的第三地址请求报文,所述第三地址请求报文的源IP地址为所述第四IP地址,源MAC地址为所述第四MAC地址,源VTEP标识为所述第四VTEP标识,目的IP地址为所述第一IP地址,目的VTEP标识为所述第二VTEP标识;
所述装置还包括丢弃单元,用于:
确定所述第三地址请求报文的目的IP地址为所述第一IP地址,以及目的VTEP标识为所述第二VTEP标识;
确定与所述第一IP地址对应的所述第一VTEP标识;
丢弃所述第三地址请求报文。
17.根据权利要求14所述的装置,其特征在于,所述协助单元具体用于:
生成通知报文,所述通知报文的源IP地址为所述第一IP地址,源MAC地址为所述第一MAC地址,源VTEP标识为所述第一VTEP标识;
所述装置进一步包括发送单元,用于发送所述通知报文,以便于所述第一二层网关设备根据接收到的所述通知报文建立所述第三转发表项,以及所述第一二层网关设备将所述通知报文进行VXLAN解封装后发送给所述第一主机,以便于所述第一主机根据接收到的所述第一二层网关设备发送的VXLAN解封装后的所述通知报文建立所述第二转发表项。
18.根据权利要求17所述的装置,其特征在于,所述协助单元具体用于:
确定所述第一MAC地址和/或所述第一IP地址变化时,生成所述通知报文。
19.一种虚拟可扩展局域网VXLAN的数据中心,其特征在于,所述数据中心包括第一三层网关设备、第二三层网关设备、分别与所述第一三层网关设备和所述第二三层网关设备相连的第一二层网关设备;其中,所述第一二层网关设备设备连接第一主机;所述第一三层网关设备具有第一互联网协议IP地址、第二IP地址、第一媒体接入控制MAC地址,第二MAC地址、与所述第一IP地址和所述第一MAC地址对应的第一VXLAN隧道终端VTEP标识以及与所述第二IP地址和所述第二MAC地址对应的第二VTEP标识;所述第二三层网关设备具有所述第一IP地址、第三IP地址、所述第一MAC地址、第三MAC地址、所述第一VTEP标识以及与所述第三IP地址和所述第三MAC地址对应的第三VTEP标识;所述第一二层网关设备具有第四VTEP标识;所述第一主机具有第四IP地址和第四MAC地址;其中,所述第一IP地址、所述第二IP地址、所述第三IP地址和所述第四IP地址互不相同,所述第一MAC地址、所述第二MAC地址、所述第三MAC地址和所述第四MAC地址互不相同,所述第一VTEP标识、所述第二VTEP标识、所述第三VTEP标识和所述第四VTEP标识互不相同。
20.根据权利要求19所述的数据中心,其特征在于,所述第一三层网关设备为权利要求10至18中任一项所述的转发表项建立装置。
21.根据权利要求19或20所述的数据中心,其特征在于,所述数据中心还包括负载均衡设备,所述负载均衡设备用于将来自所述第一主机且目的IP地址为所述第一IP地址,目的MAC地址为所述第一MAC地址和目的VTEP标识为所述第一VTEP的报文负载均衡至所述第一三层网关设备或所述第二三层网关设备。
Priority Applications (5)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201610285803.5A CN107332772B (zh) | 2016-04-29 | 2016-04-29 | 转发表项建立方法和装置 |
PCT/CN2016/111942 WO2017185780A1 (zh) | 2016-04-29 | 2016-12-24 | 转发表项建立方法和装置 |
EP16900284.7A EP3337109B1 (en) | 2016-04-29 | 2016-12-24 | Forwarding table entry establishment method and apparatus |
ES16900284T ES2765804T3 (es) | 2016-04-29 | 2016-12-24 | Método y aparato de establecimiento de entrada de tabla de reenvío |
US15/933,274 US10419341B2 (en) | 2016-04-29 | 2018-03-22 | Forwarding entry establishment method and apparatus |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201610285803.5A CN107332772B (zh) | 2016-04-29 | 2016-04-29 | 转发表项建立方法和装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN107332772A true CN107332772A (zh) | 2017-11-07 |
CN107332772B CN107332772B (zh) | 2020-02-14 |
Family
ID=60160629
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201610285803.5A Active CN107332772B (zh) | 2016-04-29 | 2016-04-29 | 转发表项建立方法和装置 |
Country Status (5)
Country | Link |
---|---|
US (1) | US10419341B2 (zh) |
EP (1) | EP3337109B1 (zh) |
CN (1) | CN107332772B (zh) |
ES (1) | ES2765804T3 (zh) |
WO (1) | WO2017185780A1 (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108881024A (zh) * | 2018-05-31 | 2018-11-23 | 新华三技术有限公司 | 一种组播流量转发方法及装置 |
CN108924028A (zh) * | 2018-06-28 | 2018-11-30 | 新华三技术有限公司 | 一种非已知单播报文在隧道间的切换方法及装置 |
Families Citing this family (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10581962B2 (en) * | 2017-11-01 | 2020-03-03 | Alibaba Group Holding Limited | Direct communication between physical server and storage service |
US11240160B2 (en) * | 2018-12-28 | 2022-02-01 | Alibaba Group Holding Limited | Method, apparatus, and computer-readable storage medium for network control |
US11245750B2 (en) * | 2019-02-16 | 2022-02-08 | International Business Machines Corporation | File server load balancing |
EP4068705A4 (en) * | 2020-01-08 | 2023-01-04 | Huawei Technologies Co., Ltd. | METHOD AND APPARATUS FOR TRANSMITTING PACKETS AND STORAGE MEDIA |
Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103546374A (zh) * | 2012-07-10 | 2014-01-29 | 杭州华三通信技术有限公司 | 一种边缘二层网络中转发报文的方法和装置 |
CN103814554A (zh) * | 2013-12-11 | 2014-05-21 | 华为技术有限公司 | 一种虚拟可扩展局域网的通信方法、装置和系统 |
CN104243269A (zh) * | 2014-09-24 | 2014-12-24 | 杭州华三通信技术有限公司 | 一种虚拟扩展局域网报文的处理方法及装置 |
CN104283980A (zh) * | 2014-10-09 | 2015-01-14 | 杭州华三通信技术有限公司 | 一种地址解析协议代答方法和装置 |
US20150058470A1 (en) * | 2013-08-20 | 2015-02-26 | Arista Networks, Inc. | System and method for sharing vxlan table information with a network controller |
US20150063353A1 (en) * | 2013-09-04 | 2015-03-05 | Cisco Technology, Inc. | Implementation of virtual extensible local area network (vxlan) in top-of-rack switches in a network environment |
CN105515992A (zh) * | 2014-09-26 | 2016-04-20 | 杭州华三通信技术有限公司 | Vxlan网络中的流表项处理方法及装置 |
Family Cites Families (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8923149B2 (en) * | 2012-04-09 | 2014-12-30 | Futurewei Technologies, Inc. | L3 gateway for VXLAN |
US9210079B2 (en) * | 2012-08-14 | 2015-12-08 | Vmware, Inc. | Method and system for virtual and physical network integration |
US8931046B2 (en) * | 2012-10-30 | 2015-01-06 | Stateless Networks, Inc. | System and method for securing virtualized networks |
US9036639B2 (en) * | 2012-11-29 | 2015-05-19 | Futurewei Technologies, Inc. | System and method for VXLAN inter-domain communications |
US9374323B2 (en) * | 2013-07-08 | 2016-06-21 | Futurewei Technologies, Inc. | Communication between endpoints in different VXLAN networks |
US9374294B1 (en) * | 2013-11-05 | 2016-06-21 | Cisco Technology, Inc. | On-demand learning in overlay networks |
WO2015100656A1 (zh) * | 2013-12-31 | 2015-07-09 | 华为技术有限公司 | 一种实现虚拟机通信的方法和装置 |
-
2016
- 2016-04-29 CN CN201610285803.5A patent/CN107332772B/zh active Active
- 2016-12-24 EP EP16900284.7A patent/EP3337109B1/en active Active
- 2016-12-24 ES ES16900284T patent/ES2765804T3/es active Active
- 2016-12-24 WO PCT/CN2016/111942 patent/WO2017185780A1/zh active Application Filing
-
2018
- 2018-03-22 US US15/933,274 patent/US10419341B2/en active Active
Patent Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103546374A (zh) * | 2012-07-10 | 2014-01-29 | 杭州华三通信技术有限公司 | 一种边缘二层网络中转发报文的方法和装置 |
US20150058470A1 (en) * | 2013-08-20 | 2015-02-26 | Arista Networks, Inc. | System and method for sharing vxlan table information with a network controller |
US20150063353A1 (en) * | 2013-09-04 | 2015-03-05 | Cisco Technology, Inc. | Implementation of virtual extensible local area network (vxlan) in top-of-rack switches in a network environment |
CN103814554A (zh) * | 2013-12-11 | 2014-05-21 | 华为技术有限公司 | 一种虚拟可扩展局域网的通信方法、装置和系统 |
CN104243269A (zh) * | 2014-09-24 | 2014-12-24 | 杭州华三通信技术有限公司 | 一种虚拟扩展局域网报文的处理方法及装置 |
CN105515992A (zh) * | 2014-09-26 | 2016-04-20 | 杭州华三通信技术有限公司 | Vxlan网络中的流表项处理方法及装置 |
CN104283980A (zh) * | 2014-10-09 | 2015-01-14 | 杭州华三通信技术有限公司 | 一种地址解析协议代答方法和装置 |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108881024A (zh) * | 2018-05-31 | 2018-11-23 | 新华三技术有限公司 | 一种组播流量转发方法及装置 |
CN108881024B (zh) * | 2018-05-31 | 2021-03-23 | 新华三技术有限公司 | 一种组播流量转发方法及装置 |
CN108924028A (zh) * | 2018-06-28 | 2018-11-30 | 新华三技术有限公司 | 一种非已知单播报文在隧道间的切换方法及装置 |
CN108924028B (zh) * | 2018-06-28 | 2020-11-10 | 新华三技术有限公司 | 一种非已知单播报文在隧道间的切换方法及装置 |
Also Published As
Publication number | Publication date |
---|---|
WO2017185780A1 (zh) | 2017-11-02 |
CN107332772B (zh) | 2020-02-14 |
EP3337109B1 (en) | 2019-10-30 |
ES2765804T3 (es) | 2020-06-11 |
US20180219775A1 (en) | 2018-08-02 |
US10419341B2 (en) | 2019-09-17 |
EP3337109A4 (en) | 2018-10-24 |
EP3337109A1 (en) | 2018-06-20 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN107332772B (zh) | 转发表项建立方法和装置 | |
US20240179022A1 (en) | Replicating broadcast, unknown-unicast, and multicast traffic in overlay logical networks bridged with physical networks | |
US20190068544A1 (en) | Communications Method and Apparatus for Virtual Extensible Local Area Network | |
US8948179B2 (en) | Method of multiprotocol label switching encapsulation for united router farm forwarding | |
EP3197107B1 (en) | Message transmission method and apparatus | |
CN103036809B (zh) | 用于具有有效链路利用的可伸缩网络的方法和装置 | |
US20140006585A1 (en) | Providing Mobility in Overlay Networks | |
US20180097658A1 (en) | Virtual local area network mismatch detection in networks | |
EP3069471B1 (en) | Optimized multicast routing in a clos-like network | |
CN104869013B (zh) | 一种基于sdn的网关配置方法及sdn控制器 | |
CN103081418A (zh) | 计算机系统和计算机系统中的通信方法 | |
US11310081B2 (en) | Packet transmission method and apparatus | |
CN107317752B (zh) | 一种转发数据报文的方法及装置 | |
CN108718269B (zh) | 报文处理方法及装置 | |
KR101694223B1 (ko) | 패킷을 전송하는 방법, 라우팅 브리지, 및 시스템 | |
KR20230101903A (ko) | Bier 패킷 포워딩 방법, 디바이스 및 시스템 | |
CN107659484B (zh) | 从vlan网络接入vxlan网络的方法、装置及系统 | |
CN104253698B (zh) | 报文组播的处理方法和设备 | |
CN113507425B (zh) | 一种Overlay组播方法、装置及设备 | |
CN104717117A (zh) | 在虚拟端口通道(vPC)上的以太网光纤通道(FCoE) | |
CN107306215A (zh) | 一种数据处理方法、系统及节点 | |
US10171259B2 (en) | Network system and relay device | |
CN107623636B (zh) | 一种用户隔离方法和交换机 | |
CN105493454A (zh) | 双活接入多链接透明互联(trill)边缘 | |
JP6574142B2 (ja) | ネットワークシステムおよび中継装置 |
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 |