CN103905283B - 基于可扩展虚拟局域网的通信方法及装置 - Google Patents
基于可扩展虚拟局域网的通信方法及装置 Download PDFInfo
- Publication number
- CN103905283B CN103905283B CN201210570461.3A CN201210570461A CN103905283B CN 103905283 B CN103905283 B CN 103905283B CN 201210570461 A CN201210570461 A CN 201210570461A CN 103905283 B CN103905283 B CN 103905283B
- Authority
- CN
- China
- Prior art keywords
- address
- message
- addressable
- destination node
- vlan
- 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
- 230000006854 communication Effects 0.000 title claims abstract description 52
- 238000004891 communication Methods 0.000 title claims abstract description 50
- 230000004044 response Effects 0.000 claims abstract description 46
- 238000000034 method Methods 0.000 claims abstract description 28
- 239000000284 extract Substances 0.000 claims abstract description 19
- 230000005540 biological transmission Effects 0.000 claims description 16
- 230000004048 modification Effects 0.000 abstract description 8
- 238000012986 modification Methods 0.000 abstract description 8
- 238000010586 diagram Methods 0.000 description 23
- 230000013016 learning Effects 0.000 description 20
- 238000012545 processing Methods 0.000 description 12
- 230000008569 process Effects 0.000 description 11
- 238000004458 analytical method Methods 0.000 description 9
- 238000005538 encapsulation Methods 0.000 description 9
- 230000006870 function Effects 0.000 description 9
- 238000005516 engineering process Methods 0.000 description 7
- 239000010410 layer Substances 0.000 description 7
- 230000008859 change Effects 0.000 description 5
- 238000012423 maintenance Methods 0.000 description 5
- 230000006855 networking Effects 0.000 description 5
- 238000013461 design Methods 0.000 description 3
- 239000000203 mixture Substances 0.000 description 3
- 239000011800 void material Substances 0.000 description 3
- RTZKZFJDLAIYFH-UHFFFAOYSA-N Diethyl ether Chemical compound CCOCC RTZKZFJDLAIYFH-UHFFFAOYSA-N 0.000 description 2
- 230000002708 enhancing effect Effects 0.000 description 2
- 238000000605 extraction Methods 0.000 description 2
- 230000001960 triggered effect Effects 0.000 description 2
- 230000009471 action Effects 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 239000012792 core layer Substances 0.000 description 1
- 238000013497 data interchange Methods 0.000 description 1
- 230000006872 improvement Effects 0.000 description 1
- 238000007726 management method Methods 0.000 description 1
- 230000007246 mechanism Effects 0.000 description 1
- 238000004806 packaging method and process Methods 0.000 description 1
- 230000008439 repair process Effects 0.000 description 1
- 238000005728 strengthening Methods 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
Landscapes
- Data Exchanges In Wide-Area Networks (AREA)
- Small-Scale Networks (AREA)
Abstract
本发明涉及一种基于可扩展虚拟局域网的通信方法及装置,所述方法包括:接收源节点发送的第一报文;提取所述第一报文中的目的IP地址;根据所述第一报文中的目的IP地址,确定所述目的节点属于的虚拟局域网;在所述***内广播所述第一报文给所述目的节点;接收所述目的节点发送的所述第一报文的应答报文,所述第一报文的应答报文携带目的寻址地址;将所述第一报文的应答报文发送给所述源节点,使得所述源节点获取到所述第一报文的应答报文中携带的目的寻址地址。本发明免去了在网络中增加额外网络设备或修改现有网络设备的问题。
Description
技术领域
本发明涉及计算机网络通信技术领域,尤其涉及一种基于可扩展虚拟局域网VXLAN的通信方法及装置。
背景技术
虚拟局域网(Virtual Local Area Network,VLAN),是一种将局域网设备从逻辑上划分成一个个网段,从而实现虚拟工作组的数据交换技术。VLAN 允许处于不同物理位置的计算机在逻辑上构成一个局域网(Local Area Network,LAN),一个VLAN即是一个广播域。管理员根据实际应用需求,把同一物理局域网内的不同用户逻辑地划分成不同的广播域,每一个VLAN都包含一组有着相同需求的计算机工作站,与物理上形成的局域网有着相同的属性。一个VLAN内部的广播和单播流量都不会转发到其他VLAN中,从而有助于控制流量、减少设备投资,简化网络管理、提高网络的安全性。
可扩展虚拟局域网(Virtual eXtensible Local Area Network,VXLAN)的基本思路与VLAN类似,但功能更强。VXLAN是一种将二层报文用三层协议进行封装的技术,可以对二层网络在三层范围进行扩展。它应用于数据中心内部,使虚拟机可以在互相连通的三层网络范围内迁移,而不需要改变IP (Internet Protocol,互联网协议)地址和MAC(MediumAccess Control,介质访问控制)地址,保证业务的连续性。VXLAN用VNI(VXLAN NetworkIdentifier,VXLAN网络序号)来标识每个广播域(VXLAN子网),VNI共有 24位,最多能够提供近16M个广播域,相比VLAN只能提供4K个广播域。
VXLAN是一种新兴的重要的网络虚拟化技术,还处于起步阶段。因此,对 VXLAN中的虚拟机(Virtual Machine,VM)而言,不得不面临的一个问题是如何与既有的没有部署VXLAN的内部或外部的其他PM(Physical Machine,物理机)/VM进行互通。现有的解决办法是在交换机等设备上采用软件或硬件部署VXLAN Gateway(网关),通过VXLAN Gateway在VXLAN和VLAN间进行数据包的转发。
图1为现有的一种VXLAN Gateway部署的***框图,如图1所示,包括 VXLAN服务器、网关Gateway和VLAN服务器,VXLAN服务器通过Gateway与 VLAN服务器进行通信。具体地,当从VXLAN接口输入数据帧时,Gateway会剥去VXLAN头进行解封装,并将内部的Ethernet帧根据内部目的MAC转发到对应的物理端口。解封装后的帧如果存在内部VLANID,除非在对应的输出接口上做了明确配置,否则应该丢弃该VLAN ID。当从VLAN接口输入数据帧时, Gateway则基于帧中的VLAN ID来将其映射到特定的VXLAN网络。
现有的这种采用VXLAN Gateway的方式,需要增加额外的网络设备或在现有网络设备(交换机)上进行修改,增加了网络的部署和维护成本。而且, VXLAN Gateway需要维护所辖所有VXLAN的VNI、虚拟机VM的IP以及VXLAN 与VLAN的对应关系等众多信息,容易造成VXLAN Gateway的实现和维护较复杂、代价较高,有可能成为互通中的性能瓶颈,适用的网络环境有限;也使得VXLAN Gateway对网络拓扑或配置的变化响应不够灵活,可扩展性受限。
发明内容
有鉴于此,本发明实施例提供了一种基于可扩展虚拟局域网VXLAN的通信方法及装置,免去了在网络中增加额外网络设备或修改现有网络设备的问题。
为实现上述目的,本发明第一方面提供了一种基于可扩展虚拟局域网的通信方法,所述方法应用于虚拟机***,所述***包括多个物理服务器,每个物理服务器上包括多个虚拟机,所述多个虚拟机组成多个虚拟局域网,所述虚拟局域网包括至少一个可扩展虚拟局域网VXLAN,包括:
第一VXLAN对应的第一端口接收源节点发送的第一报文,其中,所述第一报文携带发端互联网协议IP地址、发端寻址地址和目的IP地址,所述第一报文携带的发端IP地址为所述源节点的IP地址,发端寻址地址为所述源节点的寻址地址,目的IP地址为目的节点的IP地址;
所述第一端口提取所述第一报文中的目的IP地址;
所述第一端口根据所述第一报文中的目的IP地址,确定所述目的节点属于的虚拟局域网;
若所述目的节点属于的虚拟局域网与所述第一VXLAN属于不同的虚拟局域网,所述第一端口在所述***内广播所述第一报文,使得所述目的节点接收到所述第一报文并获取到所述第一报文中的发端IP地址和发端寻址地址;
所述第一端口接收所述目的节点发送的所述第一报文的应答报文,所述第一报文的应答报文携带目的寻址地址,所述第一报文的应答报文携带的目的寻址地址为所述目的节点的寻址地址或者为所述目的节点属于的虚拟局域网对应的第二端口的寻址地址;
所述第一端口将所述第一报文的应答报文发送给所述源节点,使得所述源节点获取到所述第一报文的应答报文中携带的目的寻址地址。
结合第一方面,在第一方面的第一种可能的实施方式中,所述方法还包括:
建立数据库,所述数据库存储所述***中的虚拟机的IP地址与虚拟局域网的对应关系;
则所述第一端口根据所述第一报文中的目的IP地址,确定所述目的节点属于的虚拟局域网包括:
查询所述数据库中存储的虚拟机的IP地址与虚拟局域网的对应关系,确定所述目的节点属于的虚拟局域网。
结合第一方面,在第一方面的第二种可能的实施方式中,所述第一端口在所述***内广播所述第一报文之前,还包括:
所述第一端口将所述第一报文中的发端寻址地址由所述源节点的寻址地址替换为所述第一端口的寻址地址。
结合第一方面或第一方面的第二种可能的实施方式,在第一方面的第三种可能的实施方式中,当所述目的节点属于的虚拟局域网为第二VXLAN时,所述第一端口在所述***内广播所述第一报文,使得所述目的节点接收到所述第一报文并获取所述第一报文中的发端IP地址和发端寻址地址,包括:
所述第一端口在所述***内广播所述第一报文;
所述第二VXLAN对应的第二端口接收到所述第一报文,根据所述第一报文中携带的目的IP地址将所述第一报文发送给所述目的节点,所述目的节点接收到所述第一报文后,记录所述第一报文携带的发端IP地址和发端寻址地址。
结合第一方面的第三种可能的实施方式,在第一方面的第四种可能的实施方式中,所述第一端口接收所述目的节点发送的所述第一报文的应答报文之前,还包括:
所述目的节点根据记录的所述第一报文中的发端IP地址和发端寻址地址,发送第一报文的应答报文,所述第二端口接收到所述第一报文的应答报文后,将所述第一报文的应答报文发送到所述第一端口。
结合第一方面的第四种可能的实施方式,在第一方面的第五种可能的实施方式中,所述第二端口将所述第一报文的应答报文发送到所述第一端口之前,还包括:
所述第二端口将所述第一报文的应答报文中的目的寻址地址由所述目的节点的寻址地址替换为所述第二端口的寻址地址;
则所述源节点获取到所述第一报文的应答报文中携带的目的寻址地址为所述第二端口的寻址地址。
结合第一方面,在第一方面的第六种可能的实施方式中,当所述目的节点属于的虚拟局域网为第二VLAN时,所述第一端口在所述***内广播所述第一报文,使得所述目的节点接收到所述第一报文并获取所述源节点的IP地址和寻址地址,包括:
所述第一端口在所述***内广播所述第一报文;
所述目的节点接收到所述第一报文,所述目的节点接收到所述第一报文后,记录所述第一报文携带的发端IP地址和发端寻址地址。
结合第一方面,在第一方面的第七种可能的实施方式中,还包括:
所述第一端口接收所述源节点根据获取的所述目的寻址地址发送的第二报文,其中,所述第二报文携带源IP地址、源寻址地址、目的IP地址和目的寻址地址,所述第二报文携带的源IP地址为所述源节点的IP地址,源寻址地址为所述源节点的寻址地址,目的IP地址为目的节点的IP地址,目的寻址地址为获取到的目的寻址地址;
所述第一端口根据所述第二报文中的目的寻址地址,发送所述第二报文到所述目的节点或所述目的节点属于的虚拟局域网对应的第二端口。
结合第一方面的第七种可能的实施方式,在第一方面的第八种可能的实施方式中,所述第一端口在发送所述第二报文之前,还包括:
所述第一端口将所述第二报文中的源寻址地址由所述源节点的寻址地址替换为所述第一端口的寻址地址。
结合第一方面的第七种可能的实施方式或第八种可能的实施方式,在第一方面的第九种可能的实施方式中,所述第一报文为地址解析协议ARP报文,所述第二报文为单播报文。
第二方面,本发明还提供了一种基于可扩展虚拟局域网的通信装置,所述装置应用于虚拟机***,所述***包括多个物理服务器,每个物理服务器上包括多个虚拟机,所述多个虚拟机组成多个虚拟局域网,所述虚拟局域网包括至少一个可扩展虚拟局域网VXLAN,包括:接收单元、解析单元、确定单元和发送单元;
接收单元,用于接收源节点发送的第一报文,其中,所述第一报文携带发端互联网协议IP地址、发端寻址地址和目的IP地址,所述第一报文携带的发端IP地址为所述源节点的IP地址,发端寻址地址为所述源节点的寻址地址,目的IP地址为目的节点的IP地址;
解析单元,用于提取所述接收单元接收的所述第一报文中的目的IP地址;
确定单元,用于根据所述解析单元中提取的所述第一报文中的目的IP地址,确定所述目的节点属于的虚拟局域网;
发送单元,用于当所述确定单元确定的所述目的节点属于的虚拟局域网与所述第一VXLAN属于不同的虚拟局域网时,在所述***内广播所述第一报文,使得所述目的节点接收到所述第一报文并获取到所述第一报文中的发端 IP地址和发端寻址地址;
所述接收单元还用于接收所述目的节点发送的所述第一报文的应答报文,所述第一报文的应答报文携带目的寻址地址,所述第一报文的应答报文携带的目的寻址地址为所述目的节点的寻址地址或者为所述目的节点属于的虚拟局域网对应的通信装置的寻址地址;
所述发送单元还用于将所述接收单元接收的所述第一报文的应答报文发送给所述源节点,使得所述源节点获取到所述第一报文的应答报文中携带的目的寻址地址。
结合第二方面,在第二方面的第一种可能的实施方式中,所述装置还包括:
存储单元,用于建立数据库,所述数据库存储所述***中的虚拟机的IP 地址与虚拟局域网的对应关系;
所述确定单元具体用于查询所述存储单元建立的数据库中存储的虚拟机的IP地址与虚拟局域网的对应关系,确定所述目的节点属于的虚拟局域网。
结合第二方面,在第二方面的第二种可能的实施方式中,所述装置还包括:
替换单元,用于将所述接收单元接收到的所述第一报文中的发端寻址地址由所述源节点的寻址地址替换为当前通信装置的寻址地址。
结合第二方面,在第二方面的第三种可能的实施方式中,所述接收单元还用于接收所述源节点根据获取的所述目的寻址地址发送的第二报文,其中,所述第二报文携带源IP地址、源寻址地址、目的IP地址和目的寻址地址,所述第二报文携带的源IP地址为所述源节点的IP地址,源寻址地址为所述源节点的寻址地址,目的IP地址为目的节点的IP地址,目的寻址地址为获取到的目的寻址地址;
所述发送单元还用于根据所述第二报文中的目的寻址地址,发送所述第二报文到所述目的节点或所述目的节点属于的虚拟局域网对应的第二端口。
结合第二方面的第三种可能的实施方式,在第二方面的第四种可能的实施方式中,所述装置还包括:
替换单元,用于将所述接收单元接收到的所述第二报文中的源寻址地址由所述源节点的寻址地址替换为当前通信装置的寻址地址。
结合第二方面的第三种可能的实施方式或第四种可能的实施方式,在第二方面的第五种可能的实施方式中,所述第一报文为地址解析协议ARP报文,所述第二报文为单播报文。
本发明提供的基于可扩展虚拟局域网VXLAN的通信方法及装置,通过增强VXLAN部署的在各个服务器上VTEP的功能,利用增加数据库DB或内存表的维护信息,对传输的报文数据加以分析判断以及简单的报文修改,即可实现VXLAN与VLAN之间以及不同VXLAN之间的互通,具有分布式实现方式,简单易行,不受网络拓扑、规模等限制,使用灵活,而且无需增加额外的网络设备,免去了在网络中增加额外网络设备或修改现有网络设备的问题,节约了网络部署和维护的成本。
附图说明
图1为现有的一种VXLAN Gateway部署的***框图;
图2为可扩展虚拟局域网VXLAN报文格式的示意图;
图3为一种虚拟数据中心VDC的***架构图;
图4为本发明实施例所基于的VDC组网和场景示意图;
图5为本发明实施例提供的一种利用ARP数据报文进行ARP地址学习的方法流程图;
图6为本发明实施例提供的一种通信方法的流程图;
图7为本发明实施例提供的又一种利用ARP数据报文进行ARP地址学习的方法流程图;
图8为本发明实施例提供的又一种通信方法的流程图;
图9为本发明实施例提供的VXLAN隧道端点VTEP的功能模块示意图;
图10为本发明实施例提供的VXLAN与VLAN之间进行ARP地址学习的时序图;
图11为本发明实施例提供的VXLAN与VLAN之间通信的时序图;
图12为本发明实施例提供的不同VXLAN之间进行ARP地址学习的时序图;
图13为本发明实施例提供的不同VXLAN之间通信的时序图;
图14为本发明实施例提供的基于VXLAN的通信装置示意图;
图15为本发明实施例提供的基于VXLAN的通信装置的结构组成示意图。
具体实施方式
下面通过附图和实施例,对本发明的技术方案做进一步的详细描述。
可扩展虚拟局域网VXLAN采用的是MAC-in-UDP(User Datagram Protocol,用户数据报协议)封装机制,在MAC帧基础上由里到外分别封装了VXLAN头(VXLAN header)、UDP头(UDP header)、IP头(IP header)和以太网头(Ethernet header),就如同构建一个隧道,MAC帧作为隧道内的实际传输内容,外部封装部分作为数据在隧道内传输的标识,保证数据正确到达目的地。图2为一种可扩展虚拟局域网VXLAN报文格式的示意图,如图2所示,VXLAN报文是在原始以太网帧(Original Ethernet Frame)中,增加VXLAN封装部分(VXLANEncapsulation)。VXLAN中将隧道的端点称为 VTEP(VXLAN Tunnel End Point,VXLAN隧道端点)。VTEP的主要功能是接收本地VM发来的以太网Ethernet帧时为其加上封装头并发送出去;在接收到远程VTEP发来的带有封装头报文时,去除封装头并转发给相应VM。
本发明提供的基于可扩展虚拟局域网VXLAN的通信方法及装置,可以应用于部署虚拟机***中,例如VXLAN的虚拟数据中心(Virtual Data Center, VDC)中,以构建云计算中关键的计算资源共享池,其中资源包括网络、服务器、存储、应用软件及服务等。虚拟化技术主要包括:服务器虚拟化、存储虚拟化以及网络虚拟化。VDC的核心技术是服务器虚拟化,主要是将一台物理机的物理资源虚拟成多个虚拟机(Virtual Machine,VM),使得每个VM都可以实现物理机(Physical Machine,PM)的功能。
图3是一个虚拟数据中心VDC的***架构图,如图3所示,VDC一般采用分层架构,最底层是各个物理服务器Server,每个Server中创建多个VM,并通过虚拟交换机vSwitch将这些VM在服务器内部组成小型的虚拟局域网络。每个Server也是VXLAN隧道的端点,因此涉及本发明实施例应用的VXLAN 隧道端点VTEP(VXLAN Tunnel End Point)就是部署在各个Server上,并且 VTEP作为Server内部VM与Server外部其他PM/VM通信的出入口。VTEP可以是Server内的独立组件,也可以与vSwitch联合部署。Server外部的网络则根据VDC的规模进行分层组网。Server首先连接到接入交换机,通常为ToR,接入交换机ToR再连入汇聚交换机Switch,再连到核心交换机L3Switch。当然,汇聚层和核心层也可以合并,通常采用三层(L3)交换机。最后,VDC 通过路由器与外网Internet网络相连。
根据Server内VM所需通信的对端PM/VM所处的网络位置,完成VXLAN 与VLAN或者不同VXLAN间互通的过程,可能会经过ToR、L3Switch或Router。由于VXLAN不对这些外部网络设备产生影响,即这些设备均按照常规方式工作,因此可以将外部网络设备都抽象化表示,以突出本发明实施例的关键技术。
图4是本发明实施例所基于的VDC组网和场景示意图,如图4所示,该 VDC组网中包括服务器Server-1201、服务器Server-2202、服务器Server-3 203和网络交换机204。在服务器Server-1201中创建虚拟机VM-12011,服务器Server-1201部署了VXLAN,因此其上的虚拟机VM-12011和其他虚拟机都要通过VTEP-12012与外部网络通信。虚拟机VM-12011加入了VXLAN100 的子网,也就是虚拟机VM-12011对应的VXLAN的VNI为100。当VM-12011 与同一个VXLAN内的VM通信时,VTEP-12012为VM-12011发出的数据包封装VXLAN头;当VM-12011与VLAN或者不同VXLAN内的VM进行通信时,VTEP-1 2012将对VM-12011发出的数据包进行修改,然后将修改后的数据包发送给网络交换机204,例如发送到ToR或Switch等网络设备上,通过L2/L3网络的转发到达对端服务器的VTEP或者VM。本发明对具体采用的L2/L3网络设备不作限定。
本发明主要针对VM-12011与VLAN或者不同VXLAN内的VM进行通信的场景。即,一是VM-12011与VLAN300中VM-32031的通信,二是VM-12011 与VXLAN200中的VM-22021的通信,分别对应为本发明的VXLAN与VLAN互通以及不同VXLAN间互通的场景。VLAN中的服务器Server-3203没有部署 VTEP,不考虑其他虚拟化步骤时,可以认为转发给服务器的数据包直接发给对应的VM-32031。VM-22021创建在Server-2201上,属于VXLAN200,也就是VM-22021的VNI为200。从网络设备转发来的数据包需要经过VTEP-2 2022进行修改等处理,再转发给VM-22021。同VM-12011,VM-22021发出的数据包也需要经过VTEP-22022的处理,再发往网络交换机204。
在VXLAN与VLAN之间或者不同VXLAN之间的VM之间通信开始时,先利用地址解析协议(Address Resolution Protocol,ARP)数据报文进行所述源节点与目的节点之间的ARP地址学习。
图5是本发明利用ARP数据报文进行ARP目的节点的寻址地址的学习的方法流程图,首先需要说明的是,利用ARP数据报文进行ARP目的节点的寻址地址的学习,即获取目的节点寻址地址的过程,由于源节点并不知晓目的节点的寻址地址,现有技术采用Gateway的方式来实现源节点和目的节点之间的通信,而本发明实施例为了避免在组网中增加Gateway,则需要首先获取目的节点的寻址地址,本发明实施例则采用了利用ARP数据报文的广播发送来获取目的节点的寻址地址,在ARP数据报文的发送过程中可以学习到目的节点的寻址地址,一般来说寻址地址用来定义网络设备的位置,包括 MAC(Media AccessControl)地址,或称为MAC位址、硬件位址。
如图5所示,该ARP目的节点的地址学习过程包括:步骤S101、源节点对应的VTEP(源节点对应的第一端口)接收源节点发送的ARP请求报文。
所述ARP请求报文中携带有以太网Ethernet头的源MAC地址、ARP报文的发端MAC地址、发端IP地址及目的IP地址,其中,所述ARP请求报文中的发端地址即所述源节点的IP或MAC地址,所述ARP请求报文中的目的IP 地址即目的节点的IP地址。
步骤S102、源节点对应的VTEP提取所述ARP请求报文中的目的IP地址,利用数据库DB查询得到所述目的IP地址所在的第二虚拟网络,即第二VLAN 或第二VXLAN。
具体地,源节点对应的VTEP对接收到的ARP请求报文进行解析,先得到源节点的MAC地址、源节点的IP地址和目的IP地址。
在进行ARP目的节点的寻址地址的学习之前,还包括:建立数据库DB的步骤,数据库DB存储所述***中的虚拟机的IP地址与虚拟局域网的对应关系。数据库DB中包括预先配置的本地VM对应的IP、所属VXLAN的VNI和组播地址、端口信息以及全部VXLAN对应的VM的IP地址范围,还有动态学习的本地VM的MAC地址、通信VM的MAC地址和所在VTEP的IP地址。在源节点对应的VTEP解析到源节点的MAC地址和IP地址时,VTEP会将其记录在数据库DB中,对数据库DB进行动态更新。当然,本发明实施例不限于采用数据库DB来存储该些配置信息和地址学习信息,例如还可以采用Hash表等内存表的方式来存储。
步骤S103、源节点对应的VTEP将所述ARP请求报文广播发送到所述目的 IP地址所在第二VLAN的目的节点,或者广播发送ARP请求报文到所述第二 VXLAN对应的第二端口,以转发给所述目的节点。
源节点对应的VTEP直接将ARP请求报文经由网络广播发送给目的IP地址所在VLAN或VXLAN。如果目的IP地址属于VLAN,可以认为直接转发给目的节点。
如果目的IP地址属于不同的VXLAN,则发送ARP请求报文至对端的VTEP,即目的节点对应的VTEP。目的节点对应的VTEP接收到ARP请求报文,分析为 ARP请求报文,则广播到目的节点。
对于目的IP地址属于与源节点所在VXLAN相同VXLAN时,与现有的VXLAN 协议的处理方式相同,在对原始报文添加VXLAN封装后发送目的IP所在VTEP,其报文格式如图2所示。
步骤S104、源节点对应的VTEP接收所述目的节点或目的节点所在VXLAN 的对端VTEP返回的ARP应答报文。
目的节点接收到ARP请求报文后,判断目的IP为自身,则学习并记录ARP 报文中的发端IP及发端MAC地址,即记录所述源节点的IP地址及源节点的 MAC地址,目的节点还生成ARP应答报文,该ARP应答报文中ARP报文的目的 MAC地址为该目的节点的MAC地址,目的IP地址为该目的节点的IP地址,发端IP地址为源节点的IP地址,发端MAC地址为源节点的MAC地址,目的节点发送所述ARP应答报文给源节点对应的VTEP。
如果目的节点在不同的VXLAN中,目的节点在生成ARP应答报文后,先发送给目的节点对应的VTEP,由该目的节点对应的VTEP将ARP应答报文返回给所述源节点对应的VTEP。
步骤S105、源节点对应的VTEP提取所述ARP应答报文中的发端IP地址。
步骤S106、源节点对应的VTEP根据所述ARP应答报文中的发端IP地址,判断所述ARP应答报文是否发送给本机的所述源节点,如果是,则进入步骤 S107,否则进入步骤S108,丢弃该ARP应答报文。
步骤S107、源节点对应的VTEP将所述ARP应答报文转发到所述源节点,以使所述源节点获得并记录所述ARP应答报文中携带目的寻址地址,即所述目的节点的寻址地址。
源节点对应的VTEP提取ARP应答报文中发端IP地址,查询数据库DB,判断发端IP地址为本机的源节点对应的IP地址,则将ARP应答报文转发到源节点,源节点获得ARP应答报文中目的MAC地址,完成对目的节点的MAC 地址的学习过程。
在学习到目的节点的寻址地址之后,两个虚拟机之间即可以开始互通正常的单播通信报文,如图6所示,该两个虚拟机之间互通单播报文的通信过程具体包括:
步骤S201、源节点对应的VTEP接收源节点发送的第一单播报文。
第一单播报文即为单播通信报文,携带有源IP地址、源寻址地址、目的 IP地址和目的寻址地址。其中,源IP地址为源节点的IP地址,源寻址地址为源节点的寻址地址,目的IP地址为目的节点的IP地址,目的寻址地址为步骤S107获取到的目的寻址地址。
步骤S202、源节点对应的VTEP提取所述第一单播报文中的目的IP地址,并利用数据库DB查询得到所述目的IP地址所在的第二虚拟网络,即第二VLAN 或第二VXLAN。
步骤S203、源节点对应的VTEP将所述第一单播报文转发到所述目的IP 地址所在第二VLAN的目的节点,或者转发单播报文到所述第二VXLAN对应的第二端口,以转发给所述目的节点。
源节点对应的VTEP直接将第一单播报文经由网络转发给目的IP地址所在VLAN或VXLAN。如果目的IP地址属于VLAN,可以认为直接转发给目的节点。
如果目的IP地址属于不同的VXLAN,则发送第一单播报文至目的节点对应的VTEP,目的节点对应的VTEP接收到第一单播报文,分析为单播通信报文,则提取目的IP地址,查询目的节点对应的VTEP中的数据库DB,判断到该目的IP属于本机的节点,则转发到目的节点。目的节点则可以获得源节点发来的数据。
对于目的IP地址属于与源节点所在VXLAN相同VXLAN时,与现有的VXLAN 协议的处理方式相同,在对原始报文添加VXLAN封装后发送目的IP所在VTEP,其报文格式如图2所示。
目的节点在接收到源节点发送的单播报文后,目的节点也可以向源节点发送单播报文进行通信。具体如下:
步骤S204、源节点对应的VTEP接收所述目的节点在接收到所述第一单播报文后发送的第二单播报文。
第二单播报文具体为单播通信报文,携带有源IP地址、源寻址地址、目的IP地址和目的寻址地址。此时,第二单播报文由目的节点发送,则第二单播报文中的源IP地址为目的节点的IP地址,源寻址地址为目的节点的寻址地址,目的IP地址为源节点的IP地址,目的寻址地址为源节点的寻址地址。
步骤S205、源节点对应的VTEP提取所述第二单播报文中的目的IP地址。
步骤S206、源节点对应的VTEP判断所述第二单播报文是否发送给本机的所述源节点,如果是,则进入步骤S207,否则,进入步骤S208,丢弃该第二单播报文。
步骤S207、源节点对应的VTEP将所述第二单播报文转发给所述源节点。
源节点对应的VTEP对接收到的第二单播报文进行解析,得到源节点的 MAC地址、源节点的IP地址和目的IP地址和目的MAC地址。根据目的IP地址,查询数据库DB,判断目的IP地址是否属于本机的节点,如果是则转发给所述源节点,以使所述源节点获得所述目的节点发来的数据。
这样,本发明无需采用VXLAN Gateway,即可实现VXLAN与VLAN以及不同VXLAN的互通。上述实施例中VTEP未对收发的报文信息进行修改,使得VM 的MAC暴露到L2网络设备上。如果VM的MAC地址暴露到L2网络设备上,对于服务器创建大量VM的场景则存在ToR或交换机上需要维护的MAC转发表过大过复杂的问题,因而该方法适用于VM规模较小的小型网络。
而对于大规模的虚拟局域网,优选地,本发明在源节点对应的VTEP收发的报文信息进行修改,由VTEP的MAC地址代替其所辖的VM的MAC地址来与 VLAN以及不同VXLAN进行互通,使各个VM的MAC不暴露到L2网络设备上,降低网络设备部署的难度。
具体地,图7是本发明提供利用ARP数据报文进行ARP目的节点的寻址地址的学习的方法流程图,同样地,本实施例采用了利用ARP数据报文的广播发送来获取目的节点的寻址地址,在ARP数据报文的发送过程中可以学习到目的节点的寻址地址。
如图7所示,该ARP目的节点的地址学习过程包括:
步骤S301、源节点对应的VTEP(源节点对应的第一端口)接收源节点发送的ARP请求报文。
所述ARP请求报文中携带有以太网Ethernet头的源MAC地址、ARP报文的发端MAC地址、发端IP地址及目的IP地址,其中,所述ARP请求报文中的发端地址即所述源节点的IP或MAC地址,所述ARP请求报文中的目的IP 地址即目的节点的IP地址。
步骤S302、源节点对应的VTEP提取所述ARP请求报文中的目的IP地址,利用数据库DB查询得到所述目的IP地址所在的第二虚拟网络,即第二VLAN 或第二VXLAN。
具体地,源节点对应的VTEP对接收到的ARP请求报文进行解析,先得到源节点的MAC地址、源节点的IP地址和目的IP地址,并记录源节点的MAC 地址和IP地址到所述数据库DB中。
步骤S303、源节点对应的VTEP判断ARP请求报文请求的目的IP地址是否属于VLAN或VXLAN,如果是VLAN,进入步骤S304,如果是与源节点在不同的VXLAN,进入步骤S306,如果是与源节点在相同的VXLAN,则进入步骤S309,与现有的VXLAN协议的处理方式相同,封装VXLAN后发送目的IP所在VTEP。
步骤S304、源节点对应的VTEP将ARP请求报文中以太网Ethernet头的源寻址地址和ARP报文的发端寻址地址由源节点的寻址地址替换为源节点对应的VTEP的寻址地址。
也就是说,利用VTEP的MAC地址替代内部虚拟机VM(源节点)的MAC 地址与外部网络进行通信。从外部网络来看,网络交换机及其他虚拟局域网仅能获得该源节点所在的VXLAN的VTEP的MAC地址。这样可以使得VM的MAC 地址不暴露到网络设备上,有利于网络信息的维护。
步骤S305、源节点对应的VTEP将替换后的ARP请求报文经由网络广播发送到目的IP地址所在VLAN中的目的节点,VLAN中的目的节点接收到ARP请求报文。
在目的节点接收到ARP请求报文,判断目的IP为自身,则学习并记录ARP 报文中的发端IP及发端MAC地址,即记录所述源节点的IP地址及源节点的 MAC地址,目的节点还生成ARP应答报文,该ARP应答报文中ARP报文的目的 MAC地址为该目的节点的MAC地址,目的IP地址为该目的节点的IP地址,发端IP地址为源节点的IP地址,发端MAC地址为源节点的MAC地址,目的节点发送所述ARP应答报文给源节点所在VXLAN的VTEP,进入步骤S310。
步骤S306、源节点对应的VTEP将ARP请求报文中以太网Ethernet头的源寻址地址和ARP报文的发端寻址地址由源节点的寻址地址替换为源节点对应的VTEP的寻址地址。
步骤S307、源节点对应的VTEP将替换后的ARP请求报文经由网络广播发送到目的节点对应的VTEP(第二端口)。
步骤S308、目的节点对应的VTEP根据ARP请求报文发送给目的节点。
目的节点对应的VTEP接收到ARP请求报文,分析为ARP请求报文,则广播到目的节点。
目的节点接收到ARP请求报文后,判断目的IP为自身,则学习并记录ARP 报文中的发端IP及发端MAC地址,即记录所述源节点的IP地址及源节点的 MAC地址,目的节点还生成ARP应答报文,该ARP应答报文中ARP报文的目的 MAC地址为该目的节点的MAC地址,目的IP地址为该目的节点的IP地址,发端IP地址为源节点的IP地址,发端MAC地址为源节点的MAC地址,目的节点发送所述ARP应答报文给目的节点对应的VTEP。
目的节点对应的VTEP在将ARP应答报文发送给源节点对应的VTEP之前,还会将ARP应答报文中Ethernet头中源MAC地址和ARP报文中目的MAC地址替换为所述对端VTEP的MAC地址,而后再将替换后的ARP应答报文发送给源节点对应的VTEP,进入步骤S310。
步骤S310、源节点对应的VTEP接收所述目的节点在接收到所述ARP请求报文后发送的ARP应答报文。
步骤S311、源节点对应的VTEP提取所述ARP应答报文中的发端IP地址。
步骤S312、源节点对应的VTEP根据所述ARP应答报文中的发端IP地址,判断ARP应答报文是否发送给本机的源节点,如果是,则进入步骤S313,否则进入步骤S315、丢弃该ARP应答报文。
步骤S313、源节点对应的VTEP将ARP应答报文中Ethernet头的目的寻址地址和ARP报文的发端寻址地址由源节点对应的VTEP的寻址地址替换为源节点的寻址地址。
步骤S314、源节点对应的VTEP将所述ARP应答报文转发到所述源节点。
源节点对应的VTEP从接收到的ARP应答报文中提取发端IP地址,查询数据库DB,判断发端IP地址为本机的源节点对应的IP地址,则将ARP应答报文转发到源节点,源节点获得ARP应答报文中目的MAC地址,完成对目的节点的MAC地址的学习过程。
同样地,在学习到目的节点的寻址地址之后,两个虚拟机之间即可以开始互通正常的单播通信报文,如图8所示,该两个虚拟机之间互通单播报文的通信过程具体包括:
步骤S401、源节点对应的VTEP接收源节点发送的第一单播报文。
第一单播报文即为单播通信报文,携带有源IP地址、源MAC地址、目的 IP地址和目的MAC地址。其中,源IP地址为源节点的IP地址,源寻址地址为源节点的寻址地址,目的IP地址为目的节点的IP地址,目的寻址地址为步骤S314获取到的目的寻址地址。
步骤S402、源节点对应的VTEP提取所述第一单播报文中的目的I P地址,并利用数据库DB查询得到所述目的IP地址所在的第二虚拟网络,即第二VLAN 或第二VXLAN。
源节点对应的VTEP对接收到的第一单播报文进行解析,得到源节点的 MAC地址、源节点的IP地址和目的IP地址和目的MAC地址。
步骤S403、源节点对应的VTEP判断第一单播报文请求的目的IP地址是否属于VLAN或VXLAN,如果是VLAN,进入步骤S404,如果是与源节点在不同的VXLAN,进入步骤S406,如果是与源节点在相同的VXLAN,则进入步骤S409,与现有的VXLAN协议的处理方式相同,将第一单播报文封装VXLAN后发送给目的IP所在VTEP。
步骤S404、源节点对应的VTEP将第一单播报文中Ethernet头的源寻址地址由源节点的寻址地址替换为源节点对应的VTEP的寻址地址。
也就是说,利用VTEP的MAC地址替代内部虚拟机VM(源节点)的MAC 地址与外部网络进行通信。从外部网络来看,网络交换机及其他虚拟局域网仅能获得该源节点所在的VXLAN的VTEP的MAC地址。这样可以使得VM的MAC 地址不暴露到网络设备上,有利于网络信息的维护。
步骤S405、源节点对应的VTEP将替换后的第一单播报文经由网络转发到目的IP地址所在VLAN中的目的节点,VLAN中的目的节点接收到第一单播报文,获得源节点发送来的数据。
步骤S406、源节点对应的VTEP将第一单播报文中Ethernet头的源寻址地址由源节点的寻址地址替换为源节点对应的VTEP的寻址地址。
步骤S407、源节点对应的VTEP将替换后的第一单播报文经由网络转发到目的节点对应的VTEP。
步骤S408、目的节点对应的VTEP根据第一单播报文中的目的IP地址,查询获得所述目的节点的寻址地址,将第一单播报文发送给目的节点。
目的节点对应的VTEP接收到第一单播报文,提取目的IP,查询目的节点对应的VTEP中的DB,获得目的节点的MAC地址,将第一单播报文中Ethernet 头的目的MAC地址由目的节点对应的VTEP的MAC地址替换为目的节点的MAC 地址,并将再次替换后的第一单播报文发送给目的节点。目的节点获得从源节点发送来的数据。
在目的节点获得源节点发送来的数据之后,目的节点也可以向源节点发送单播报文进行通信,进入步骤S410。
如果目的节点处于与源节点不同的VXLAN中,目的节点返回的第二单播报文先发送给目的节点对应的VTEP,由该目的节点对应的VTEP将第二单播报文返回给所述源节点对应的VTEP。同样地,目的节点对应的VTEP在将第二单播报文返回给所述源节点对应的VTEP之前,还会将所述目的节点的第二报文中Ethernet头的源MAC地址替换为所述目的节点对应的VTEP的MAC地址,而后再将第二单播报文发送给源节点对应的VTEP,进入步骤S410。
步骤S410、源节点对应的VTEP接收所述目的节点在接收到所述第一单播报文后发送的第二单播报文。
步骤S411、源节点对应的VTEP提取所述第二单播报文中的目的IP地址。
步骤S412、源节点对应的VTEP判断第二单播报文是否发送给本机的源节点,如果是,则进入步骤S413,否则进入步骤S415、丢弃该第二单播报文。
步骤S413、源节点对应的VTEP将第二单播报文中Ethernet头的目的MAC 地址替换为源节点的MAC地址。
步骤S414、源节点对应的VTEP将所述第二单播报文转发到所述源节点。
源节点对应的VTEP对接收到的第二单播报文进行解析,得到源节点的 MAC地址、源节点的IP地址和目的IP地址和目的MAC地址。根据目的IP地址,查询数据库DB,判断目的IP地址是否属于本机的节点,如果是,则将第二报文中Ethernet头的目的MAC地址替换为源节点的MAC地址,转发给所述源节点,以使所述源节点获得所述目的节点发来的数据。
本发明通过对VXLAN中部署在各个服务器上的VTEP进行功能增强,达到实现VXLAN与VLAN以及不同VXLAN间互通的目的。图9是本发明提供的VXLAN 隧道端点VTEP的功能模块示意图,如图9所示,该VTEP30包括:包分析(Packet Analysis,PA)模块301、数据库(DataBase,DB)模块302和包处理(Packet Process,PP)模块303。
包分析模块PA301用于接收数据包,包括从物理网卡和VM两个方向收到的数据包。PA301对收到的报文头信息进行分析,根据不同协议类型,从报文头或者报文载荷中提取出源/目的IP信息。PA301以此源/目的IP作为键值向DB302进行查询,来判断当前报文的是否发往本地VM或者是否发往 VLAN中的VM或不同VXLAN。PA301将报文和判断结果发给PP303进行处理。当PP303处理报文完成后,PA301或者PP303会将报文转发到对应的端口,在本发明中以PA301进行转发为例进行说明。
数据库模块DB302用于存储配置信息和地址学习信息,具体包括预先配置的本地VM对应的IP、所属VXLAN的VNI和组播地址、端口信息以及全部 VXLAN对应的VM的IP地址范围,还有动态学习的本地VM的IP和MAC、通信 VM的MAC地址及其所在VTEP的IP地址。本发明对配置信息和地址学习信息的存储形式不作限定,也可以采用Hash表等方式。
包处理模块PP303用于对报文进行处理,根据从PA312传来的报文以及判断结果,从DB311中获取修改所需的信息,对报文头或载荷进行对应字段的修改。
当VXLAN100中的VM-12011与VLAN300中的VM-32031进行互通时,由于VM不感知VXLAN的存在,因此其按照正常通信流程发送报文。当VM-3 与VM-1属于同一IP网段时,VM-1需要通过发送ARP广播请求学习VM-3的 MAC地址,然后才能发送单播报文进行互通。
当VM-3与VM-1不在同一网段时,VM-1将会将数据报文发往L3的网关,通过路由协议转发。这个过程可以分解为VM-1对网关MAC的ARP学习、网关对VM-3的MAC的ARP学习、VM-1发单播报文到网关和网关转发单播报文到 VM-3这四个过程。将网关看作是VLAN中的PM,这四个过程相当于是VXLAN 与VLAN互通(VM-1与网关)和一组VLAN互通(网关与VM-3)的互通,所使用的方法与同网段的互通一致,因此这里不单独分析加入网关的不同网段互通的情况。同样地,不同VXLAN中VM处于不同网段时,例如VM-2与VM-1不在同一网段,其处理过程与此相类似,于此也不单独分析不同网段互通的情况。
图10是VM-1与VM-3之间ARP地址学习的时序图,如图10所示,包括以下步骤:
S51、VM-1发送ARP请求报文,具体ARP请求报文格式如表1所示:
表1
S52、ARP报文到达VTEP-1,由PA-1分析报文,提取ARP请求报文中的目的IP,访问DB-1查询,判断其请求的目的IP是属于VLAN中的节点。同时 DB-1记录VM-1的IP和MAC。
S53、PA-1将ARP报文和判断结论发给PP-1处理,PP-1进行报文修改。
具体地,将ARP请求的Ethernet头中的源MAC替换为当前VTEP的MAC;将ARP请求报文中的发端MAC替换为当前VTEP的MAC。修改后的ARP请求报文如表2所示:
表2
S54、PA-1将修改后的ARP请求报文发送到网络L2设备上转发到VM-3 所在的服务器。
S55、VM-3接收到ARP请求报文,判断目的IP为自身,学习到VM-1IP 对应的MAC地址为VTEP-1的MAC,即认为VTEP-1的MAC就是VM-1的MAC。 VM-3将自身的MAC地址作为ARP报文的目的MAC,生成ARP应答报文。
VM-3发送的ARP应答报文如表3所示:
表3
S56、ARP应答报文经L2网络设备转发到VTEP-1。
S57、VTEP-1的PA-1接收并分析ARP应答报文,提取发端IP,查询DB-1,判断发端IP为本机的VM-1的IP。
S58、PA-1将接收的ARP应答报文和判断结果交给PP-1进行处理。PP-1 根据发端IP从DB-1中获取VM-1的MAC,并修改报文。
具体地,将ARP应答报文的Ethernet头中的目的MAC替换为与发端IP 匹配的VM的MAC;将ARP应答报文中的发端MAC替换为与发端IP匹配的VM 的MAC。修改后的ARP应答报文如表4所示:
表4
S59、PA-1将修改后的ARP应答报文转发给VM-1,完成VM-1对VM-3的 MAC地址学习。
当VM-1学得VM-3的MAC地址后,便可以开始互通正常的单播通信报文。
图11是VM-1与VM-3之间进行单播通信的时序图,如图11所示,包括以下步骤:
S61、VM-1向VM-3发送单播报文到VTEP-1,具体单播报文的格式如表5 所示:
表5
S62、VTEP-1的PA-1收到单播报文后,分析得到目的IP,查询DB-1,判断目的VM处于VLAN中。
S63、PA-1将单播报文和判断结果发给PP-1,PP-1进行修改。
具体地,将Ethernet头中的源MAC替换为当前VTEP的MAC。修改后的单播报文如表6所示:
表6
S64、PA-1将修改后的单播报文发送到网络L2设备上转发到VM-3。VM-3 收到修改后的单播报文,收到从VM-1发来的数据。
S65、VM-3向VM-1发送单播报文,发送的单播报文格式如表7所示:
表7
S66、经网络L2设备转发,VTEP-1收到报文,PA-1分析报文,取得目的 IP,查询DB-1,判断报文是发送给本机的VM-1。
S67、PA-1将报文和判断结果发送给PP-1,PP-1对报文进行修改。
具体地,将Ethernet头中的目的MAC替换为目的IP对应的VM的MAC。修改后的单播报文如表8所示:
表8
S68、PA-1将修改后的单播报文转发给VM-1,VM-1收到VM-3发来的数据。这样,即实现了VXLAN与VLAN间的互通。
当VXLAN100中的VM-12011与VXLAN200中的VM-22021进行互通时,与VXLAN与VLAN互通相类似,本发明仅以VM-1与VM-2属于同一IP网段时进行说明。同样地,VM-1首先需要通过发送ARP请求学习VM-2的MAC地址。
图12是VM-1与VM-2之间ARP地址学习的时序图,如图12所示,包括以下步骤:
S71、VM-1发送ARP请求报文,具体ARP请求报文如表9所示:
表9
S72、ARP请求报文到达VTEP-1,由PA-1分析报文,提取ARP报文中的目的IP,访问DB-1查询,判断其请求的目的IP是属于不同的VXLAN中的节点。同时DB-1记录VM-1的IP和MAC。
S73、PA-1将ARP报文和判断结论发给PP-1处理,PP-1对报文进行修改,修改后的ARP请求报文如表10所示:
表10
S74、PA-1将修改后的ARP请求报文发送到网络L2设备上转发到VM-2 所在的服务器的VTEP-2。
S75、VTEP-2接收到修改后的ARP请求报文,PA-2分析报文为ARP请求报文,广播到VM-2。
S76、VM-2收到ARP请求报文,判断目的IP为自身,学习到VM-1IP对应的MAC地址为VTEP-1的MAC,即认为VTEP-1的MAC就是VM-1的MAC。
VM-2发送ARP应答报文如表11所示:
表11
S77、VTEP-2收到VM-2发出的ARP应答报文,PA-2分析报文,获取发端 IP和目的IP,查询DB-2,判断该应答报文是回复给不同VXLAN的VM。同时 DB-2记录VM-2的IP和MAC。
S78、PA-2将ARP应答报文和判断结果发给PP-2,PP-2对ARP应答报文进行修改。
具体地,将ARP应答中的Ethernet头中的源MAC替换为当前VTEP的MAC;将ARP应答报文中的目的MAC替换为当前VTEP的MAC。修改后的ARP应答报文如表12所示:
表12
S79、PA-2将修改后的ARP应答报文发送给网络L2设备,转发到VTEP-1。
S710、VTEP-1的PA-1接收并分析修改后的ARP应答报文,提取发端IP,查询DB-1,判断发端IP为本机的VM-1的IP。
S711、PA-1将修改后的ARP应答报文和判断结果交给PP-1进行处理。PP-1 根据发端IP从DB-1中获取VM-1的MAC,再次修改报文,再次修改后的ARP 应答报文如表13所示:
表13
S712、PA-1将再次修改后的ARP应答报文转发给VM-1。VM-1学习到VM-2 的MAC实际为VTEP-2的MAC。完成VM-1对VM-2的MAC地址学习。
当VM-1学得VM-2的MAC地址后,便可以开始互通正常的单播通信报文。
图13是VM-1与VM-3之间进行单播通信的时序图,如图13所示,包括以下步骤:
S81、VM-1向VM-2发送单播报文到VTEP-1,具体单播报文的格式如表14 所示:
表14
S82、VTEP-1的PA-1收到报文后,分析得到目的IP,查询DB-1,判断目的VM是处于不同VXLAN中。
S83、PA-1将报文和判断结果发给PP-1,PP-1对报文进行修改,修改后的单播报文如表15所示:
表15
S84、PA-1将修改后的单播报文发送到网络L2设备上转发到VTEP-2。
S85、PA-2接收到修改后的单播报文,提取目的IP,查询DB-2,判断目的IP属于本机的VM-2。
S86、PA-2将报文和判断结果发给PP-2,PP-2根据目的IP查询DB-2,获得VM-2的MAC,再次修改报文,再次修改后的单播报文如表16所示:
表16
S87、PA-2将再次修改后的单播报文转发给VM-2,VM-2收到VM-1发来的数据。
由VM-2向VM-1发送单播报文的方法与VM-1向VM-2发送的方法一致,于此不再赘述。这样,本发明实现了不同VXLAN间的互通。
需要说明的是,本发明的VTEP也不一定是一个完整的独立的模块形态部署的服务器上,它可能与虚拟交换机vSwitch等软体结合开发、同享DB,本发明并不对VTEP的实现形态进行限定。
以上是对本发明所提供的基于VXLAN的通信方法进行的详细描述,下面对本发明提供的基于VXLAN的通信装置进行详细描述。
图14是本实施例提供的基于VXLAN的通信装置示意图,如图14 所示,本发明的通信装置包括:接收单元401、解析单元402、存储单元403、确定单元404、发送单元405和替换单元406。
在通信开始时,本发明的通信装置需要进行建立通信的动作,即利用ARP 数据报文进行ARP地址学习,在此过程中,具体为:
接收单元401用于接收所述源节点发送的ARP请求报文。
所述ARP请求报文中携带有以太网Ethernet头的源MAC地址、ARP报文的发端MAC地址、发端IP地址及目的IP地址,其中,所述ARP请求报文中的发端地址即所述源节点的IP或MAC地址,所述ARP请求报文中的目的IP 地址即目的节点的IP地址。
解析单元402用于提取接收单元401接收的所述ARP请求报文中的目的IP地址。
具体地,解析单元402对接收单元401接收到的ARP请求报文进行解析,先得到源节点的MAC地址、源节点的IP地址和目的IP地址。
确定单元403用于根据解析单元402提取的目的IP地址,确定所述目的节点属于的虚拟局域网。
存储单元404用于建立数据库DB,所述数据库DB存储所述***中的虚拟机的IP地址与虚拟局域网的对应关系。
数据库DB中包括预先配置的本地VM对应的IP、所属VXLAN的VNI和组播地址、端口信息以及全部VXLAN对应的VM的IP地址范围,还有动态学习的本地VM的MAC地址、通信VM的MAC地址和所在VTEP的IP地址。在解析单元402解析到源节点的MAC地址和IP地址时,存储单元404会将其记录在数据库DB中,对数据库DB进行动态更新。
确定单元403利用存储单元404建立的所述数据库DB,查询得到所述目的IP地址所在的VLAN或VXLAN。
发送单元405用于当确定单元403确定的目的节点属于的虚拟局域网与所述第一VXLAN属于不同的虚拟局域网时,将所述ARP请求报文广播发送到所述目的IP地址所在第二VLAN的目的节点,或者广播发送ARP请求报文到所述第二VXLAN对应的第二端口,以转发给所述目的节点。
如果确定单元403判断ARP请求报文请求的目的IP地址属于VLAN,则触发发送单元405将所述ARP请求报文经由网络广播到所述目的IP地址所在 VLAN中的目的节点。
如果解析单元402判断ARP请求报文请求的目的IP地址属于与所述源节点所在VXLAN不同的VXLAN,则触发发送单元405将所述ARP请求报文经由网络广播到所述目的节点对应的VTEP。
目的节点对应的VTEP接收到ARP请求报文,分析为ARP请求报文,则广播到目的节点。
目的节点接收到ARP请求报文后,判断目的IP为自身,则学习并记录ARP 报文中的发端IP及发端MAC地址,即记录所述源节点的IP地址及源节点的 MAC地址,目的节点还生成ARP应答报文,该ARP应答报文中ARP报文的目的 MAC地址为该目的节点的MAC地址,目的IP地址为该目的节点的IP地址,发端IP地址为源节点的IP地址,发端MAC地址为源节点的MAC地址,目的节点发送所述ARP应答报文给源节点对应的VTEP。
如果目的节点在不同的VXLAN中,目的节点在生成ARP应答报文后,先发送给目的节点对应的VTEP,由该目的节点对应的VTEP将ARP应答报文返回给所述源节点。
当目的节点发来ARP应答报文时,接收单元401接收ARP应答报文。解析单元402提取所述ARP应答报文中的发端IP地址,确定单元403根据所述 ARP应答报文中的发端IP地址,判断所述ARP应答报文是否发送给本机的所述源节点,如果是,则触发发送单元405将所述ARP应答报文转发到所述源节点,以使所述源节点获得并记录所述ARP应答报文中携带目的寻址地址,即所述目的节点的寻址地址。
优选地,本发明通信装置还包括替换单元406,用于对ARP请求报文进行修改,具体的,替换单元406将ARP请求报文中以太网Ethernet头的源MAC 地址和ARP报文的发端MAC地址由所述源节点的MAC地址替换为源节点对应的VTEP的MAC地址;发送单元405将替换单元406替换后的ARP请求报文转发到所述目的IP地址所在VLAN或VXLAN对应的端口。
相应地,替换单元406在接收单元401接收到ARP应答报文时,也会对 ARP应答报文进行修改,具体的,替换单元406将所述ARP应答报文中Ethernet 头的目的MAC地址和ARP报文的发端MAC地址由所述源节点对应的VTEP的MAC 地址替换为所述发端IP地址对应的MAC地址,即所述源节点的MAC地址;发送单元405将替换单元406替换后的ARP应答报文转发到所述源节点。
在建立通信后,本发明的通信装置则用于处理源节点和目的节点之间的单播报文传输。
具体地,接收单元401用于接收源节点发送的第一单播报文。
所述第一单播报文包括:源节点的源IP地址、源寻址地址,目的节点目的IP地址、目的寻址地址,以及传输的数据。其中,源IP地址为源节点的 IP地址,源寻址地址为源节点的寻址地址,目的IP地址为目的节点的IP地址,目的寻址地址为步骤S107获取到的目的寻址地址。
解析单元402用于提取所述第一单播报文中的目的互联网协议IP地址。
解析单元402对接收单元401接收到的第一单播报文进行解析,得到源节点的MAC地址、源节点的IP地址和目的IP地址和目的MAC地址。
确定单元403用于根据解析单元402提取的目的IP地址,确定所述目的节点属于的虚拟局域网。
确定单元403利用存储单元404建立的数据库DB查询得到所述目的IP 地址所在的VLAN或VXLAN。
确定单元403根据目的IP地址,查询数据库DB中的数据,得到目的IP 地址所在的VLAN或VXLAN,并将结果发送给发送单元405。
发送单元405用于将所述第一单播报文转发到所述目的IP地址所在VLAN 或VXLAN对应的端口,以转发给所述目的节点,使目的节点获得源节点的数据。
当确定单元403判断到所述第一单播报文请求的目的IP地址属于VLAN 时,触发发送单元405将所述第一单播报文经由网络转发到所述目的IP地址所在VLAN中的目的节点。当确定单元403判断到所述第一单播报文请求的目的IP地址属于与所述源节点所在VXLAN不同的VXLAN,触发发送单元405将所述第一单播报文经由网络转发到所述目的IP地址所在VXLAN的对端VTEP。
优选的,替换单元406还可以对接收到的源节点发送的第一单播报文进行修改,具体的,替换单元406将第一单播报文中以太网Ethernet头的源介质访问控制MAC地址替换为源节点对应的VTEP的MAC地址。发送单元405将替换单元406修改后的第一单播报文转发到所述目的IP地址所在VLAN或 VXLAN对应的端口。
对应地,替换单元406在接收单元401接收到目的节点发送第二单播报文时,也会对第二单播报文进行修改,具体地,替换单元406将第二单播报文中Ethernet头的目的MAC地址替换为所述第二单播报文中目的IP地址对应的节点的MAC地址,即所述源节点的MAC地址。发送单元405将替换单元 406修改后的第二单播报文转发给所述源节点,使得源节点获得目的节点发送来的数据。
图15为本发明实施例的基于可扩展虚拟局域网的通信装置的结构组成示意图。本发明实施例的基于可扩展虚拟局域网的通信装置部署在虚拟机***中,所述虚拟机***多个物理服务器,每个物理服务器上包括多个虚拟机,所述多个虚拟机组成多个虚拟局域网,所述虚拟局域网包括至少一个可扩展虚拟局域网VXLAN;
该基于可扩展虚拟局域网的通信装置可包括:
处理器501、存储器502、***总线503和通信接口504。处理器501、存储器502和通信接口504之间通过***总线503连接并完成相互间的通信。
处理器501可能为单核或多核中央处理单元(Central Processing Unit, CPU),或者为特定集成电路(Application Specific Integrated Circuit, ASIC),或者为被配置成实施本发明实施例的一个或多个集成电路。
存储器502可以为高速RAM存储器,也可以为非易失性存储器(non-volatilememory),例如至少一个磁盘存储器。
存储器502用于存放程序505。具体的,程序505中可以包括程序代码,所述程序代码包括计算机执行指令。
当基于可扩展虚拟局域网的通信装置运行时,处理器501运行程序505,以执行以下指令:
第一VXLAN对应的第一端口接收源节点发送的第一报文,其中,所述第一报文携带发端互联网协议IP地址、发端寻址地址和目的IP地址,所述第一报文携带的发端IP地址为所述源节点的IP地址,发端寻址地址为所述源节点的寻址地址,目的IP地址为目的节点的IP地址;
所述第一端口提取所述第一报文中的目的IP地址;
所述第一端口根据所述第一报文中的目的IP地址,确定所述目的节点属于的虚拟局域网;
若所述目的节点属于的虚拟局域网与所述第一VXLAN属于不同的虚拟局域网,所述第一端口在所述***内广播所述第一报文,使得所述目的节点接收到所述第一报文并获取到所述第一报文中的发端IP地址和发端寻址地址;
所述第一端口接收所述目的节点发送的所述第一报文的应答报文,所述第一报文的应答报文携带目的寻址地址,所述第一报文的应答报文携带的目的寻址地址为所述目的节点的寻址地址或者为所述目的节点属于的虚拟局域网对应的第二端口的寻址地址;
所述第一端口将所述第一报文的应答报文发送给所述源节点,使得所述源节点获取到所述第一报文的应答报文中携带的目的寻址地址。
具体地,基于可扩展虚拟局域网的通信装置还根据所述指令执行上述图 5-8,10-13所示的通信方法,具体在此不再赘述。
本发明提供的基于VXLAN的通信方法及装置,无需使用VXLAN Gateway,通过增强VXLAN部署的在各个服务器上VTEP的功能,利用增加数据库DB的维护信息,对传输的报文数据加以分析判断以及简单的报文修改,即可实现 VXLAN与VLAN之间以及不同VXLAN之间的互通,具有分布式实现方式,简单易行,不受网络拓扑、规模等限制,使用灵活,而且无需增加额外的网络设备,免去了在网络中增加额外网络设备或修改现有网络设备的问题,节约了网络部署和维护的成本。
专业人员应该还可以进一步意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、计算机软件或者二者的结合来实现,为了清楚地说明硬件和软件的可互换性,在上述说明中已经按照功能一般性地描述了各示例的组成及步骤。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本发明的范围。
结合本文中所公开的实施例描述的方法或算法的步骤可以用硬件、处理器执行的软件模块,或者二者的结合来实施。软件模块可以置于随机存储器(RAM)、内存、只读存储器(ROM)、电可编程ROM、电可擦除可编程ROM、寄存器、硬盘、可移动磁盘、CD-ROM、或技术领域内所公知的任意其它形式的存储介质中。
以上所述的具体实施方式,对本发明的目的、技术方案和有益效果进行了进一步详细说明,所应理解的是,以上所述仅为本发明的具体实施方式而已,并不用于限定本发明的保护范围,凡在本发明的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
Claims (16)
1.一种基于可扩展虚拟局域网的通信方法,其特征在于,所述方法应用于虚拟机***,所述***包括多个物理服务器,每个物理服务器上包括多个虚拟机,所述多个虚拟机组成多个虚拟局域网,所述虚拟局域网包括至少一个可扩展虚拟局域网VXLAN,包括:
第一VXLAN对应的第一端口接收源节点发送的第一报文,其中,所述第一报文携带发端互联网协议IP地址、发端寻址地址和目的IP地址,所述第一报文携带的发端IP地址为所述源节点的IP地址,发端寻址地址为所述源节点的寻址地址,目的IP地址为目的节点的IP地址;
所述第一端口提取所述第一报文中的目的IP地址;
所述第一端口根据所述第一报文中的目的IP地址,确定所述目的节点属于的虚拟局域网;
若所述目的节点属于的虚拟局域网与所述第一VXLAN属于不同的虚拟局域网,所述第一端口在所述***内广播所述第一报文,使得所述目的节点接收到所述第一报文并获取到所述第一报文中的发端IP地址和发端寻址地址;
所述第一端口接收所述目的节点发送的所述第一报文的应答报文,所述第一报文的应答报文携带目的寻址地址,所述第一报文的应答报文携带的目的寻址地址为所述目的节点的寻址地址或者为所述目的节点属于的虚拟局域网对应的第二端口的寻址地址;
所述第一端口将所述第一报文的应答报文发送给所述源节点,使得所述源节点获取到所述第一报文的应答报文中携带的目的寻址地址。
2.根据权利要求1所述的通信方法,其特征在于,所述方法还包括:
建立数据库,所述数据库存储所述***中的虚拟机的IP地址与虚拟局域网的对应关系;
则所述第一端口根据所述第一报文中的目的IP地址,确定所述目的节点属于的虚拟局域网包括:
查询所述数据库中存储的虚拟机的IP地址与虚拟局域网的对应关系,确定所述目的节点属于的虚拟局域网。
3.根据权利要求1所述的通信方法,其特征在于,所述第一端口在所述***内广播所述第一报文之前,还包括:
所述第一端口将所述第一报文中的发端寻址地址由所述源节点的寻址地址替换为所述第一端口的寻址地址。
4.根据权利要求1或3所述的通信方法,其特征在于,当所述目的节点属于的虚拟局域网为第二VXLAN时,所述第一端口在所述***内广播所述第一报文,使得所述目的节点接收到所述第一报文并获取所述第一报文中的发端IP地址和发端寻址地址,包括:
所述第一端口在所述***内广播所述第一报文;
所述第二VXLAN对应的第二端口接收到所述第一报文,根据所述第一报文中携带的目的IP地址将所述第一报文发送给所述目的节点,所述目的节点接收到所述第一报文后,记录所述第一报文携带的发端IP地址和发端寻址地址。
5.根据权利要求4所述的通信方法,其特征在于,所述第一端口接收所述目的节点发送的所述第一报文的应答报文之前,还包括:
所述目的节点根据记录的所述第一报文中的发端IP地址和发端寻址地址,发送第一报文的应答报文,所述第二端口接收到所述第一报文的应答报文后,将所述第一报文的应答报文发送到所述第一端口。
6.根据权利要求5所述的通信方法,其特征在于,所述第二端口将所述第一报文的应答报文发送到所述第一端口之前,还包括:
所述第二端口将所述第一报文的应答报文中的目的寻址地址由所述目的节点的寻址地址替换为所述第二端口的寻址地址;
则所述源节点获取到所述第一报文的应答报文中携带的目的寻址地址为所述第二端口的寻址地址。
7.根据权利要求1所述的通信方法,其特征在于,当所述目的节点属于的虚拟局域网为第二VLAN时,所述第一端口在所述***内广播所述第一报文,使得所述目的节点接收到所述第一报文并获取所述源节点的IP地址和寻址地址,包括:
所述第一端口在所述***内广播所述第一报文;
所述目的节点接收到所述第一报文,所述目的节点接收到所述第一报文后,记录所述第一报文携带的发端IP地址和发端寻址地址。
8.根据权利要求1所述的通信方法,其特征在于,还包括:
所述第一端口接收所述源节点根据获取的所述目的寻址地址发送的第二报文,其中,所述第二报文携带源IP地址、源寻址地址、目的IP地址和目的寻址地址,所述第二报文携带的源IP地址为所述源节点的IP地址,源寻址地址为所述源节点的寻址地址,目的IP地址为目的节点的IP地址,目的寻址地址为获取到的目的寻址地址;
所述第一端口根据所述第二报文中的目的寻址地址,发送所述第二报文到所述目的节点或所述目的节点属于的虚拟局域网对应的第二端口。
9.根据权利要求8所述的通信方法,其特征在于,所述第一端口在发送所述第二报文之前,还包括:
所述第一端口将所述第二报文中的源寻址地址由所述源节点的寻址地址替换为所述第一端口的寻址地址。
10.根据权利要求8或9所述的通信方法,其特征在于,所述第一报文为地址解析协议ARP报文,所述第二报文为单播报文。
11.一种基于可扩展虚拟局域网的通信装置,其特征在于,所述装置应用于虚拟机***,所述***包括多个物理服务器,每个物理服务器上包括多个虚拟机,所述多个虚拟机组成多个虚拟局域网,所述虚拟局域网包括至少一个可扩展虚拟局域网VXLAN,包括:
接收单元,用于接收源节点发送的第一报文,其中,所述第一报文携带发端互联网协议IP地址、发端寻址地址和目的IP地址,所述第一报文携带的发端IP地址为所述源节点的IP地址,发端寻址地址为所述源节点的寻址地址,目的IP地址为目的节点的IP地址;
解析单元,用于提取所述接收单元接收的所述第一报文中的目的IP地址;
确定单元,用于根据所述解析单元中提取的所述第一报文中的目的IP地址,确定所述目的节点属于的虚拟局域网;
发送单元,用于当所述确定单元确定的所述目的节点属于的虚拟局域网与第一VXLAN属于不同的虚拟局域网时,在所述***内广播所述第一报文,使得所述目的节点接收到所述第一报文并获取到所述第一报文中的发端IP地址和发端寻址地址;
所述接收单元还用于接收所述目的节点发送的所述第一报文的应答报文,所述第一报文的应答报文携带目的寻址地址,所述第一报文的应答报文携带的目的寻址地址为所述目的节点的寻址地址或者为所述目的节点属于的虚拟局域网对应的通信装置的寻址地址;
所述发送单元还用于将所述接收单元接收的所述第一报文的应答报文发送给所述源节点,使得所述源节点获取到所述第一报文的应答报文中携带的目的寻址地址。
12.根据权利要求11所述的通信装置,其特征在于,所述装置还包括:
存储单元,用于建立数据库,所述数据库存储所述***中的虚拟机的IP地址与虚拟局域网的对应关系;
所述确定单元具体用于查询所述存储单元建立的数据库中存储的虚拟机的IP地址与虚拟局域网的对应关系,确定所述目的节点属于的虚拟局域网。
13.根据权利要求11所述的通信装置,其特征在于,所述装置还包括:
替换单元,用于将所述接收单元接收到的所述第一报文中的发端寻址地址由所述源节点的寻址地址替换为当前通信装置的寻址地址。
14.根据权利要求11所述的通信装置,其特征在于,所述接收单元还用于接收所述源节点根据获取的所述目的寻址地址发送的第二报文,其中,所述第二报文携带源IP地址、源寻址地址、目的IP地址和目的寻址地址,所述第二报文携带的源IP地址为所述源节点的IP地址,源寻址地址为所述源节点的寻址地址,目的IP地址为目的节点的IP地址,目的寻址地址为获取到的目的寻址地址;
所述发送单元还用于根据所述第二报文中的目的寻址地址,发送所述第二报文到所述目的节点或所述目的节点属于的虚拟局域网对应的第二端口。
15.根据权利要求14所述的通信装置,其特征在于,所述装置还包括:
替换单元,用于将所述接收单元接收到的所述第二报文中的源寻址地址由所述源节点的寻址地址替换为当前通信装置的寻址地址。
16.根据权利要求14或15所述的通信装置,其特征在于,所述第一报文为地址解析协议ARP报文,所述第二报文为单播报文。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201210570461.3A CN103905283B (zh) | 2012-12-25 | 2012-12-25 | 基于可扩展虚拟局域网的通信方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201210570461.3A CN103905283B (zh) | 2012-12-25 | 2012-12-25 | 基于可扩展虚拟局域网的通信方法及装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN103905283A CN103905283A (zh) | 2014-07-02 |
CN103905283B true CN103905283B (zh) | 2017-12-15 |
Family
ID=50996441
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201210570461.3A Active CN103905283B (zh) | 2012-12-25 | 2012-12-25 | 基于可扩展虚拟局域网的通信方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN103905283B (zh) |
Families Citing this family (37)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9785455B2 (en) | 2013-10-13 | 2017-10-10 | Nicira, Inc. | Logical router |
US9893988B2 (en) | 2014-03-27 | 2018-02-13 | Nicira, Inc. | Address resolution using multiple designated instances of a logical router |
CN104301446B (zh) * | 2014-08-08 | 2019-04-09 | 新华三技术有限公司 | 一种报文处理方法、交换机设备及*** |
CN104243265B (zh) * | 2014-09-05 | 2018-01-05 | 华为技术有限公司 | 一种基于虚拟机迁移的网关控制方法、装置及*** |
EP3202098B1 (en) * | 2014-09-30 | 2020-05-06 | Nicira Inc. | Virtual distributed bridging module |
US10511458B2 (en) | 2014-09-30 | 2019-12-17 | Nicira, Inc. | Virtual distributed bridging |
CN105490995B (zh) * | 2014-09-30 | 2018-04-20 | 国际商业机器公司 | 一种在nvo3网络中nve转发报文的方法和设备 |
US10250443B2 (en) | 2014-09-30 | 2019-04-02 | Nicira, Inc. | Using physical location to modify behavior of a distributed virtual network element |
CN104320267B (zh) * | 2014-10-29 | 2017-11-17 | 武汉绿色网络信息服务有限责任公司 | 基于SDN框架实现VxLAN的ARP广播抑制***及方法 |
CN104468384B (zh) * | 2014-12-22 | 2018-01-30 | 武汉绿色网络信息服务有限责任公司 | 一种实现多业务优先级的***及方法 |
CN104486246B (zh) * | 2014-12-23 | 2018-05-01 | 上海斐讯数据通信技术有限公司 | 一种基于SDN架构的VXLAN的QoS机制实现方法 |
CN104660479A (zh) * | 2015-02-13 | 2015-05-27 | 南京华讯方舟通信设备有限公司 | 一种组网方法以及网络*** |
CN106210157B (zh) * | 2015-04-30 | 2019-07-23 | 中国电信股份有限公司 | 抑制地址解析协议消息的方法与***、控制器 |
CN105099922B (zh) * | 2015-06-18 | 2018-10-09 | 新华三技术有限公司 | 一种跨虚拟可扩展局域网的数据报文转发方法和装置 |
US10225184B2 (en) | 2015-06-30 | 2019-03-05 | Nicira, Inc. | Redirecting traffic in a virtual distributed router environment |
CN106549780B (zh) * | 2015-09-18 | 2020-05-08 | 华为技术有限公司 | 一种网络配置方法、装置及*** |
CN105306335B (zh) * | 2015-11-11 | 2019-10-22 | 杭州数梦工场科技有限公司 | 报文的转发方法和装置 |
CN106888275B (zh) * | 2015-12-16 | 2019-06-14 | 中国电信股份有限公司 | 虚拟网络隧道终点映射表管理方法和*** |
CN106921551A (zh) * | 2015-12-24 | 2017-07-04 | 中国电信股份有限公司 | 虚拟通信方法、***及设备 |
CN106921553B (zh) * | 2015-12-28 | 2020-04-17 | 中移(苏州)软件技术有限公司 | 在虚拟网络中实现高可用的方法及*** |
CN112422393B (zh) * | 2015-12-31 | 2022-03-25 | 华为技术有限公司 | 可扩展虚拟局域网报文发送方法、计算机设备和可读介质 |
CN105871676B (zh) * | 2016-03-17 | 2019-02-12 | 广东微云科技股份有限公司 | 一种桌面云中远端虚拟机的网络连接方法及*** |
CN106161603B (zh) * | 2016-06-28 | 2019-09-20 | 华为技术有限公司 | 一种组网的方法、设备及架构 |
CN107770072B (zh) * | 2016-08-18 | 2021-01-08 | 阿里巴巴集团控股有限公司 | 一种发送和接收报文的方法和设备 |
CN106230749B (zh) * | 2016-08-30 | 2019-07-23 | 锐捷网络股份有限公司 | 一种在虚拟可扩展局域网中转发报文的方法和汇聚交换机 |
CN107800628B (zh) * | 2016-09-07 | 2020-12-01 | 华为技术有限公司 | 用在软件定义网络中的数据转发装置及数据转发方法 |
CN107959613B (zh) * | 2016-10-18 | 2020-06-02 | 华为技术有限公司 | 报文转发方法及装置 |
CN106878199B (zh) * | 2016-12-20 | 2020-02-11 | 新华三技术有限公司 | 一种接入信息的配置方法和装置 |
CN107786410B (zh) * | 2016-12-29 | 2020-08-28 | 平安科技(深圳)有限公司 | 一种基于以太网封装的vxlan实现方法及终端 |
CN108270878A (zh) * | 2016-12-31 | 2018-07-10 | ***通信集团江西有限公司 | 在vxlan中发送arp报文的方法、vtep设备 |
CN106888144B (zh) * | 2017-01-16 | 2019-11-12 | 新华三技术有限公司 | 一种报文转发方法及装置 |
CN107579900B (zh) * | 2017-10-13 | 2020-07-28 | 锐捷网络股份有限公司 | 从vlan网络接入vxlan网络的方法、装置及*** |
US10511459B2 (en) | 2017-11-14 | 2019-12-17 | Nicira, Inc. | Selection of managed forwarding element for bridge spanning multiple datacenters |
CN107733800A (zh) * | 2017-11-29 | 2018-02-23 | 郑州云海信息技术有限公司 | 一种sdn网络报文传输方法及其装置 |
CN108600074B (zh) * | 2018-04-20 | 2021-06-29 | 新华三技术有限公司 | 组播数据报文的转发方法及装置 |
CN111556102B (zh) * | 2020-04-14 | 2023-02-28 | 深圳震有科技股份有限公司 | 一种数据通道建立方法、以太网交换机及存储介质 |
CN113132364A (zh) * | 2021-04-07 | 2021-07-16 | 中国联合网络通信集团有限公司 | Arp拟制表项的生成方法、电子设备 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1457178A (zh) * | 2002-05-10 | 2003-11-19 | 华为技术有限公司 | 多个虚拟局域网共用一个网际协议子网网段时的通信方法 |
CN101924707A (zh) * | 2010-09-27 | 2010-12-22 | 杭州华三通信技术有限公司 | 地址解析协议报文的处理方法和设备 |
CN102598591A (zh) * | 2009-11-06 | 2012-07-18 | 微软公司 | 采用用于保护跨网络的连接的覆盖 |
-
2012
- 2012-12-25 CN CN201210570461.3A patent/CN103905283B/zh active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1457178A (zh) * | 2002-05-10 | 2003-11-19 | 华为技术有限公司 | 多个虚拟局域网共用一个网际协议子网网段时的通信方法 |
CN102598591A (zh) * | 2009-11-06 | 2012-07-18 | 微软公司 | 采用用于保护跨网络的连接的覆盖 |
CN101924707A (zh) * | 2010-09-27 | 2010-12-22 | 杭州华三通信技术有限公司 | 地址解析协议报文的处理方法和设备 |
Non-Patent Citations (1)
Title |
---|
A Management Method of IP Multicast in Overlay Networks using OpenFlow;Yukihiro Nakagawa,etc.;《HotSCN’12 Proceedings of the first workshop on Hot topics in software defined networks》;20120813;全文 * |
Also Published As
Publication number | Publication date |
---|---|
CN103905283A (zh) | 2014-07-02 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN103905283B (zh) | 基于可扩展虚拟局域网的通信方法及装置 | |
CN104935516B (zh) | 基于软件定义网络的通信***及方法 | |
CN104285416B (zh) | 在存储区域网络中端接覆盖隧道的虚拟路由器 | |
CN103200069B (zh) | 一种报文处理的方法和设备 | |
CN104869042B (zh) | 报文转发方法和装置 | |
CN107911258A (zh) | 一种基于sdn网络的安全资源池的实现方法及*** | |
CN104396192B (zh) | 不对称网络地址封装 | |
CN103227757B (zh) | 一种报文转发方法及设备 | |
CN103997414B (zh) | 生成配置信息的方法和网络控制单元 | |
CN104734963B (zh) | 一种基于SDN的IPv4和IPv6网络互连方法 | |
CN103841028B (zh) | 一种报文转发方法及设备 | |
CN105847069B (zh) | 针对虚拟网络分组流的物理路径确定 | |
CN109660443A (zh) | 基于sdn的物理设备与虚拟网络通信方法和*** | |
CN103401952B (zh) | 配置计算机节点之间的通信 | |
CN104010049B (zh) | 基于sdn的以太网ip报文封装方法及网络隔离和dhcp实现方法 | |
CN112468383B (zh) | 混合云环境中的通信方法及网关、管理方法及装置 | |
CN106712988B (zh) | 一种虚拟网络管理方法及装置 | |
CN104243302B (zh) | 业务路由报文处理方法、装置及网络*** | |
EP3197107B1 (en) | Message transmission method and apparatus | |
CN104135446B (zh) | 基于SDN实现IPv4向IPv6过渡的***及方法 | |
CN103404084B (zh) | Mac地址强制转发装置及方法 | |
CN103650424A (zh) | 一种家庭网关服务功能的实现方法和服务器 | |
CN101321383A (zh) | 一种通信***和方法、家用基站网关及归属用户服务器 | |
CN108199958A (zh) | 一种通用的安全资源池服务链实现方法及*** | |
CN102739502B (zh) | 一种实现网络标识转换的方法、装置及*** |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant | ||
TR01 | Transfer of patent right | ||
TR01 | Transfer of patent right |
Effective date of registration: 20220210 Address after: 550025 Huawei cloud data center, jiaoxinggong Road, Qianzhong Avenue, Gui'an New District, Guiyang City, Guizhou Province Patentee after: Huawei Cloud Computing Technologies Co.,Ltd. Address before: 518129 Bantian HUAWEI headquarters office building, Longgang District, Guangdong, Shenzhen Patentee before: HUAWEI TECHNOLOGIES Co.,Ltd. |