CN103957160B - 一种发送报文的方法及设备 - Google Patents
一种发送报文的方法及设备 Download PDFInfo
- Publication number
- CN103957160B CN103957160B CN201410199711.6A CN201410199711A CN103957160B CN 103957160 B CN103957160 B CN 103957160B CN 201410199711 A CN201410199711 A CN 201410199711A CN 103957160 B CN103957160 B CN 103957160B
- Authority
- CN
- China
- Prior art keywords
- source
- places
- vdc
- interface
- vxlan
- 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
Landscapes
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本发明公开了一种发送报文的方法及设备,涉及通信领域,解决了由于无法将位于某个VDC的源VM向跨物理数据中心的目的VM发送的报文通过该VDC自己专有的VPN隧道进行传输,导致的该VDC的QOS得不到保障的问题。具体方案为:源CE设备接收源VTEP发送的VXLAN报文;VXLAN报文包含源VM需要发送至目的VM的原始数据报文和源VM所在逻辑网络的VXLAN标识;源CE设备根据源VM所在逻辑网络的VXLAN标识,获取源VM所在源VDC对应使用的第一接口的信息;源CE设备通过第一接口发送VXLAN报文,以利用第一接口对应绑定的源VDC的VPN隧道,将VXLAN报文提供给目的VM。本发明用于发送报文。
Description
技术领域
本发明涉及通信领域,尤其涉及一种发送报文的方法及设备。
背景技术
在数据中心网络中,需要通过不同的虚拟局域网(Virtual Local Area Network,VLAN)来隔离不同租户的二层网络数据流,但随着通信技术的快速发展,VLAN的数目已无法满足超过4000的租户的隔离要求,因此业界提出了虚拟可扩展局域网(Virtualextensible Local Area Network,VXLAN)技术,其将VLAN中的仅支持12位的分段网络标识拓展到24位,也就是说,从VLAN中最大支持4096个逻辑网络拓展到最大支持16000000个逻辑网络。
在现有的VXLAN技术中,一个虚拟数据中心(Virtual Data Center,VDC)可以包括多个逻辑网络,每个逻辑网络对应一个VXLAN标识(identification,ID),且每个逻辑网络中可以包含多个虚拟机(Virtual Machine,VM)。处于某个VDC的源VM需要与跨物理数据中心的目的VM之间进行基于二层、三层网络的通信时,该源VM向目的VM发送的报文需通过虚拟专用网(Virtual Private Network,VPN)隧道进行传输。处于同一个物理数据中心的VM对跨物理数据中心的目的VM进行访问时,均利用同一个共用的VPN隧道。
由于,现有技术在实现上述报文传输的过程中,对于同一个物理数据中心的处于不同VDC的源VM来说,向跨物理数据中心的目的VM发送的报文均是通过同一个共用的VPN隧道进行传输,无法将位于某个VDC的源VM向跨物理数据中心的目的VM发送的报文通过该VDC自己专有的VPN隧道进行传输,导致该VDC的服务质量(Quality of Service,QOS)得不到保障。
发明内容
为了解决现有技术的问题,本发明提供一种发送报文的方法及设备。
为达到上述目的,本发明采用如下技术方案:
本发明的第一方面,提供一种发送报文的方法,预先为源虚拟机VM所在物理数据中心中的每个虚拟数据中心VDC分配虚拟专用网VPN隧道,为所述源VM所在物理数据中心中的每个VDC分配的VPN隧道不同,所述为所述源VM所在物理数据中心中的VDC分配的VPN隧道与所述源VM所在物理数据中心中的VDC对应使用的源用户边界CE设备的接口对应绑定,其中,为源VM所在的源VDC分配的VPN隧道与所述源CE设备的第一接口对应绑定,所述第一接口为所述源VM所在源VDC对应使用的接口;所述方法包括:
所述源CE设备接收源虚拟通道终点VTEP发送的虚拟可拓展局域网VXLAN报文;其中,所述VXLAN报文包含所述源VM需要发送至目的VM的原始数据报文和所述源VM所在逻辑网络的VXLAN标识;
所述源CE设备根据所述源VM所在逻辑网络的VXLAN标识,获取所述源VM所在源VDC对应使用的所述第一接口的信息;
所述源CE设备通过所述第一接口发送所述VXLAN报文,以利用所述第一接口对应绑定的所述源VDC的VPN隧道,将所述VXLAN报文提供给所述目的VM。
结合第一方面,在一种可能的实现方式中,所述源CE设备根据所述源VM所在逻辑网络的VXLAN标识,获取所述源VM所在源VDC对应使用的所述第一接口的信息,包括:
所述源CE设备查找映射关系转发表中是否包含有所述源VM所在逻辑网络的VXLAN标识;
若所述映射关系转发表中包含有所述源VM所在逻辑网络的VXLAN标识,所述源CE设备将与所述源VM所在逻辑网络的VXLAN标识对应的接口信息作为所述第一接口的信息。
结合第一方面和上述可能的实现方式,在另一种可能的实现方式中,还包括:
若所述映射关系转发表中未包含有所述源VM所在逻辑网络的VXLAN标识,所述源CE设备向控制器发送携带所述源VM所在逻辑网络的VXLAN标识的请求消息;所述请求消息用于请求获取与所述源VM所在逻辑网络的VXLAN标识对应的接口信息;
所述源CE设备接收所述控制器发送的与所述源VM所在逻辑网络的VXLAN标识对应的接口信息;
所述源CE设备将与所述源VM所在逻辑网络的VXLAN标识对应的接口信息作为所述第一接口的信息。
结合第一方面和上述可能的实现方式,在另一种可能的实现方式中,所述接口信息为逻辑接口信息或物理接口信息。
本发明的第二方面,提供一种发送报文的方法,预先为源虚拟机VM所在物理数据中心中的每个虚拟数据中心VDC分配虚拟专用网VPN隧道,为所述源VM所在物理数据中心中的每个VDC分配的VPN隧道不同,所述为所述源VM所在物理数据中心中的VDC分配的VPN隧道与所述源VM所在物理数据中心中的VDC对应使用的源用户边界CE设备的接口对应绑定,其中,为源VM所在的源VDC分配的VPN隧道与所述源CE设备的第一接口对应绑定,所述第一接口为所述源VM所在源VDC对应使用的接口,所述方法包括:
控制器接收所述源CE设备发送的携带所述源VM所在逻辑网络的虚拟可拓展局域网VXLAN标识的请求消息;所述请求消息用于请求获取与所述源VM所在逻辑网络的VXLAN标识对应的接口信息;
所述控制器根据所述源VM所在逻辑网络的VXLAN标识,获取所述源VM所在源VDC的标识;
所述控制器根据所述源VM所在源VDC的标识,获取为所述源VM所在源VDC分配的VPN隧道,并根据所述源VDC的VPN隧道获取所述源VM所在源VDC对应使用的接口的信息,以得到与所述源VM所在逻辑网络的VXLAN标识对应的接口信息;
所述控制器将与所述源VM所在逻辑网络的VXLAN标识对应的接口信息发送至所述源CE设备。
结合第二方面,在一种可能的实现方式中,所述接口信息为逻辑接口信息或物理接口信息。
本发明的第三方面,提供一种源用户边界CE设备,预先为源虚拟机VM所在物理数据中心中的每个虚拟数据中心VDC分配虚拟专用网VPN隧道,为所述源VM所在物理数据中心中的每个VDC分配的VPN隧道不同,所述为所述源VM所在物理数据中心中的VDC分配的VPN隧道与所述源VM所在物理数据中心中的VDC对应使用的所述源CE设备的接口对应绑定,其中,为源VM所在的源VDC分配的VPN隧道与所述源CE设备的第一接口对应绑定,所述第一接口为所述源VM所在源VDC对应使用的接口,包括:
接收单元,用于接收源虚拟通道终点VTEP发送的虚拟可拓展局域网VXLAN报文;其中,所述VXLAN报文包含所述源VM需要发送至目的VM的原始数据报文和所述源VM所在逻辑网络的VXLAN标识;
获取单元,用于根据所述接收单元接收到的所述源VM所在逻辑网络的VXLAN标识,获取所述源VM所在源VDC对应使用的所述第一接口的信息;
发送单元,用于通过所述第一接口发送所述VXLAN报文,以利用所述第一接口对应绑定的所述源VDC的VPN隧道,将所述VXLAN报文提供给所述目的VM。
结合第三方面,在一种可能的实现方式中,所述获取单元,包括:
查找模块,用于查找映射关系转发表中是否包含有所述源VM所在逻辑网络的VXLAN标识;
第一处理模块,用于若所述映射关系转发表中包含有所述源VM所在逻辑网络的VXLAN标识,将与所述源VM所在逻辑网络的VXLAN标识对应的接口信息作为所述第一接口的信息。
结合第三方面和上述可能的实现方式,在另一种可能的实现方式中,所述获取单元,还包括:
发送模块,用于若所述映射关系转发表中未包含有所述源VM所在逻辑网络的VXLAN标识,向控制器发送携带所述源VM所在逻辑网络的VXLAN标识的请求消息;所述请求消息用于请求获取与所述源VM所在逻辑网络的VXLAN标识对应的接口信息;
接收模块,用于接收所述控制器发送的与所述源VM所在逻辑网络的VXLAN标识对应的接口信息;
第二处理模块,用于将所述接收模块接收到的与所述源VM所在逻辑网络的VXLAN标识对应的接口信息作为所述第一接口的信息。
结合第三方面和上述可能的实现方式,在另一种可能的实现方式中,所述接口信息为逻辑接口信息或物理接口信息。
本发明的第四方面,提供一种控制器,预先为源虚拟机VM所在物理数据中心中的每个虚拟数据中心VDC分配虚拟专用网VPN隧道,为所述源VM所在物理数据中心中的每个VDC分配的VPN隧道不同,所述为所述源VM所在物理数据中心中的VDC分配的VPN隧道与所述源VM所在物理数据中心中的VDC对应使用的源用户边界CE设备的接口对应绑定,其中,为源VM所在的源VDC分配的VPN隧道与所述源CE设备的第一接口对应绑定,所述第一接口为所述源VM所在源VDC对应使用的接口,包括:
接收单元,用于接收所述源CE设备发送的携带所述源VM所在逻辑网络的虚拟可拓展局域网VXLAN标识的请求消息;所述请求消息用于请求获取与所述源VM所在逻辑网络的VXLAN标识对应的接口信息;
第一获取单元,用于根据所述接收单元接收到的所述源VM所在逻辑网络的VXLAN标识,获取所述源VM所在源VDC的标识;
第二获取单元,用于根据所述第一获取单元获取到的所述源VM所在源VDC的标识,获取为所述源VM所在源VDC分配的VPN隧道,并根据所述源VDC的VPN隧道获取所述源VM所在源VDC对应使用的接口的信息,以得到与所述源VM所在逻辑网络的VXLAN标识对应的接口信息;
发送单元,用于将所述第二获取单元获取到的与所述源VM所在逻辑网络的VXLAN标识对应的接口信息发送至所述源CE设备。
结合第四方面,在一种可能的实现方式中,所述接口信息为逻辑接口信息或物理接口信息。
本发明提供的发送报文的方法及设备,预先为源VM所在的源VDC分配VPN隧道,且该源VDC的VPN隧道预先绑定在源CE设备的第一接口上,并在源CE设备接收到源VTEP发送的包含有源VM所在逻辑网络的VXLAN标识的VXLAN报文之后,根据源VM所在逻辑网络的VXLAN标识获取源VM所在源VDC对应使用的第一接口的信息,然后通过第一接口发送VXLAN报文,以利用第一接口对应绑定的源VDC的VPN隧道,将VXLAN报文提供给目的VM,从而使得源VM发送至跨物理数据中心的目标VM的报文,通过为该源VM所处源VDC分配的VPN隧道进行传输,从而解决了无法将位于某个VDC的源VM向跨物理数据中心的目的VM发送的报文通过该VDC自己专有的VPN隧道进行传输,导致的该VDC的QOS得不到保障的问题。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1为本发明提供的VXLAN技术中的一种网络结构示意图;
图2为本发明实施例1提供的一种发送报文的方法流程图;
图3为本发明实施例2提供的一种发送报文的方法流程图;
图4为本发明实施例3提供的一种发送报文的方法流程图;
图5为本发明实施例3提供的另一种发送报文的方法流程图;
图6为本发明实施例4提供的一种源CE设备的组成示意图;
图7为本发明实施例4提供的另一种源CE设备的组成示意图;
图8为本发明实施例5提供的一种控制器的组成示意图;
图9为本发明实施例6提供的一种源CE设备的组成示意图;
图10为本发明实施例7提供的一种控制设备的组成示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
另外,本文中术语“系统”和“网络”在本文中常被可互换使用。本文中术语“和/或”,仅仅是一种描述关联对象的关联关系,表示可以存在三种关系,例如,A和/或B,可以表示:单独存在A,同时存在A和B,单独存在B这三种情况。另外,本文中字符“/”,一般表示前后关联对象是一种“或”的关系。
在VXLAN技术中,如图1所示,一个物理数据中心对应一个用户边界(CustomerEdge,CE)设备,该物理数据中心中可以包含至少一个VDC,每个VDC可以包含多个逻辑网络,每个逻辑网络中可以包含多个VM,且一个物理数据中心可以对应多个虚拟通道终点(Virtual Tunnel End Point,VTEP),该VTEP用于对至少一个逻辑网络中的源VM需要发送至目的VM的原始数据报文进行封装,并将封装后的报文发送至CE设备,CE设备用于接收VTEP封装后的报文,并将接收到的报文通过VPN隧道传输至目的VM。其中,当VTEP用于对多个逻辑网络中的VM发送的原始数据报文进行封装时,该多个逻辑网络可以包含于不同的VDC。且CE设备、VTEP及VM之间的连接关系可以如图1所示。需要说明的是,VTEP与VM之间的连接关系具体的可以根据实际应用场景的需求而定,本发明图1中所示的VTEP与VM之间的连接关系仅是一种示例,并未对其进行限定。
在如图1所示的架构中,在处于某个VDC的源VM(例如,如图1所示的处于VDC1中的VM1)需要与跨物理数据中心的目的VM之间进行基于二层、三层网络的通信时,该源VM发送至目的VM的原始数据报文首先需经过对应的源VTEP(相应的如图1所示的VTEP1)进行封装,然后将封装后得到的报文发送至对应的源CE设备(相应的如图1所示的CE设备),以便源CE设备将封装后的报文发送至目的CE设备,并由对应目的CE设备将接收到的报文发送至对应的目的VTEP进行解封装,然后将解封装后得到的原始数据报文发送至目的VM,其中,源CE设备为源VM所处物理数据中心对应的CE设备,目的CE设备为目的VM所处物理数据中心对应的CE设备。在现有技术中,由于源CE设备和目的CE设备之间仅建立了一个VPN隧道,所以,处于同一个物理数据中心的不同VDC的VM向跨物理数据中心目的VM发送报文时,均需经过该VPN隧道进行传输,从而无法将位于某个VDC的源VM向跨物理数据中心的目的VM发送的报文通过该VDC自己专有的VPN隧道进行传输,导致该VDC的QOS得不到保障。
在本发明提供的技术方案中,通过在源CE设备和目的CE设备之间建立至少一个VPN隧道,并针对该源CE设备对应的物理数据中心包含的所有VDC中的每个VDC,预先为该VDC分配一个VPN隧道(其中,为该物理数据中心中的每个VDC分配的VPN隧道均不相同),作为该VDC专有的VPN隧道,且针对源CE设备与目的CE设备之间建立的至少一个VPN隧道中的每个VPN隧道,该VPN隧道与源CE设备对应的接口存在绑定关系,也就是说为每个VDC分配的VPN隧道与该VDC对应使用的源CE设备的接口对应绑定,以便该VDC的源VM需要向跨物理数据中心的目的VM发送报文时,可以根据该源VM所在VDC对应使用的源CE设备的接口的信息,通过该VDC专有的VPN隧道进行报文传输,从而使得该VDC的QOS能够得到保障。需要说明的是,在本发明实施例的一种可能的实现方式中,源CE设备与目的CE设备之间建立的至少一个VPN隧道,可以是管理员根据实际应用场景的需求预先规划并手动发起的建立流程,以便源CE设备与目的CE设备之间完成VPN隧道的建立,且在本发明实施例中,源CE设备与目的CE设备之间建立的VPN隧道的个数可以根据实际应用场景的需求进行确定,本发明实施例在此并不做具体限制。且,在本发明实施例中,为每个VDC分配的VPN隧道的个数可以是一个,也可以是多个,本发明实施例在此并不做具体限制,当为某个VDC分配了多个VPN隧道时,为VDC分配的每个VPN隧道分别与源CE设备的对应接口存在绑定关系,而针对处于该VDC的源VM需向跨物理数据中心的目的VM发送报文时,可以从为该VDC分配的多个VPN隧道中任选一个VPN隧道进行报文的传输,当然,优选的,为了便于对该VDC的QOS进行控制,可以仅为每个VDC分配一个VPN隧道即可。
为了便于本领域技术人员的理解,在本发明实施例中以为一个VDC分配一个VPN隧道为例进行说明,本发明提供的技术方案具体的实施过程具体可以参考本发明提供的以下实施例。
实施例1
本发明实施例1提供一种发送报文的方法,预先为源VM所在物理数据中心中的每个VDC分配VPN隧道,为源VM所在物理数据中心中的每个VDC分配的VPN隧道不同,为源VM所在物理数据中心中的VDC分配的VPN隧道与源VM所在物理数据中心中的VDC对应使用的源CE设备的接口对应绑定,其中,为源VM所在的源VDC分配的VPN隧道与源CE设备的第一接口对应绑定,第一接口为源VM所在源VDC对应使用的接口,如图2所示,该方法可以包括:
101、源CE设备接收源VTEP发送的VXLAN报文。
其中,该VXLAN报文包含源VM需要发送至目的VM的原始数据报文和源VM所在逻辑网络的VXLAN标识。
具体的,在一种可能的实现方式中,该VXLAN报文可以是源VTEP在接收到的源VM发送的原始数据包之后,对该原始数据包、目的VM对应的目的VTEP的互联网协议(InternetProtocol,IP)地址以及源VM所在逻辑网络的VXLAN标识进行封装得到的,其中,该原始数据包中可以包含有源VM需要发送至目的VM的原始数据报文以及目的VM的IP地址,该目的VTEP的IP地址可以是源VTEP根据目的VM的IP地址查询流表获得的,该流表中包含有目的VM的IP地址与目的VTEP的IP地址的映射关系。
102、源CE设备根据源VM所在逻辑网络的VXLAN标识,获取源VM所在源VDC对应使用的第一接口的信息。
其中,由于源VDC包含源VM所在的逻辑网络,且该源VM所在源VDC与源CE设备的第一接口存在对应关系,因此在源CE设备接收到源VTEP发送的VXLAN报文之后,源CE设备可以根据VXLAN报文中包含的源VM所在逻辑网络的VXLAN标识,获取该源VM所在源VDC对应使用的第一接口的信息。
103、源CE设备通过第一接口发送VXLAN报文,以利用第一接口对应绑定的源VDC的VPN隧道,将VXLAN报文提供给目的VM。
其中,在源CE设备根据源VM所在逻辑网络的VXLAN标识,获取源VM所在源VDC对应使用的第一接口的信息之后,源CE设备可以根据获取到的该源VM所在源VDC对应使用的第一接口的信息,通过源CE设备的第一接口发送VXLAN报文,也就是说,源CE设备根据获取到的该源VM所在源VDC对应使用的第一接口的信息,便可以通过第一接口对应绑定的该源VDC专有的VPN隧道将VXLAN报文提供给目的VM。
需要说明的是,在本发明实施例中,包含于源VDC的VM需要与跨物理数据中心的目标VM之间进行基于二层、三层网络的通信时,均需要通过为该源VDC分配的该源VDC专有的VPN隧道向跨物理数据中心的目标VM传输报文,以使得该源VDC的QOS能够得到保障。
本发明提供的发送报文的方法,预先为源VM所在的源VDC分配VPN隧道,且该源VDC的VPN隧道预先绑定在源CE设备的第一接口上,并在源CE设备接收到源VTEP发送的包含有源VM所在逻辑网络的VXLAN标识的VXLAN报文之后,根据源VM所在逻辑网络的VXLAN标识获取源VM所在源VDC对应使用的第一接口的信息,然后通过第一接口发送VXLAN报文,以利用第一接口对应绑定的源VDC的VPN隧道,将VXLAN报文提供给目的VM,从而使得源VM发送至跨物理数据中心的目标VM的报文,通过为该源VM所处源VDC分配的VPN隧道进行传输,从而解决了无法将位于某个VDC的源VM向跨物理数据中心的目的VM发送的报文通过该VDC自己专有的VPN隧道进行传输,导致的该VDC的QOS得不到保障的问题。
实施例2
本发明实施例2提供一种发送报文的方法,预先为源VM所在物理数据中心中的每个VDC分配VPN隧道,为源VM所在物理数据中心中的每个VDC分配的VPN隧道不同,为源VM所在物理数据中心中的VDC分配的VPN隧道与源VM所在物理数据中心中的VDC对应使用的源CE设备的接口对应绑定,其中,为源VM所在的源VDC分配的VPN隧道与源CE设备的第一接口对应绑定,第一接口为源VM所在源VDC对应使用的接口,如图3所示,该方法可以包括:
201、控制器接收源CE设备发送的携带源VM所在逻辑网络的VXLAN标识的请求消息。
其中,该请求消息用于请求获取与源VM所在逻辑网络的VXLAN标识对应的接口信息。
202、控制器根据源VM所在逻辑网络的VXLAN标识,获取源VM所在源VDC的标识。
其中,在控制器接收到源CE设备发送的携带源VM所在逻辑网络的VXLAN标识的请求消息之后,控制器可以根据该源VM所在逻辑网络的VXLAN标识,获取与该源VM所在逻辑网络的VXLAN标识对应的该源VM所在源VDC的标识。
203、控制器根据源VM所在源VDC的标识,确定为源VM所在源VDC分配的VPN隧道,并根据源VDC的VPN隧道获取源VM所在源VDC对应使用的接口的信息,以便得到与源VM所在逻辑网络的VXLAN标识对应的接口信息。
其中,由于预先为源VM所在的源VDC分配了VPN隧道,且针对源CE设备与目的CE设备之间建立的至少一个VPN隧道中的每个VPN隧道,该VPN隧道预先与源CE设备对应的接口存在绑定关系,且该绑定关系预先存储在控制器中,因此在控制器根据源VM所在逻辑网络的VXLAN标识,获取到源VM所在源VDC的标识之后,可以先根据源VM所在源VDC的标识,获取到为该源VM所在的源VDC分配的VPN隧道,然后根据源VDC的VPN隧道以及预先存储的VPN隧道与源CE设备对应的接口的绑定关系,获取该源VM所在源VDC对应使用的接口的信息,这样便得到了与该源VM所在逻辑网络的VXLAN标识对应的接口信息。
204、控制器将与源VM所在逻辑网络的VXLAN标识对应的接口信息发送至源CE设备。
其中,在控制器根据源VM所在源VDC的标识,获取到与该源VM所在源VDC对应使用的接口的信息,即获取到与源VM所在逻辑网络的VXLAN标识对应的接口信息之后,便可以将获取到的与源VM所在逻辑网络的VXLAN标识对应的接口信息发送至源CE设备,以便源CE设备将与源VM所在逻辑网络的VXLAN标识对应的接口信息作为源CE设备的第一接口的信息,从而利用第一接口对应绑定的源VDC的VPN隧道将VXLAN报文提供给目的VM。
需要说明的是,在本发明实施例中,包含于源VDC的VM需要与跨物理数据中心的目标VM之间进行基于二层、三层网络的通信时,均需要通过为该源VDC分配的该源VDC专有的VPN隧道向跨物理数据中心的目标VM传输报文,以使得该源VDC的QOS能够得到保障。
本发明提供的发送报文的方法,当源CE设备查找到映射关系转发表中未包含源VM所在逻辑网络的VXLAN标识时,源CE设备需向控制器发送用于请求获取与源VM所在逻辑网络的VXLAN标识对应的接口信息的请求消息,这样控制器在接收到请求消息之后,根据请求消息中携带的源VM所在逻辑网络的VXLAN标识获取与源VM所在逻辑网络的VXLAN标识对应的接口信息,并将与源VM所在逻辑网络的VXLAN标识对应的接口信息反馈至源CE设备,以便源CE设备根据与源VM所在逻辑网络的VXLAN标识对应的接口信息,利用对应绑定的源VDC的VPN隧道将VXLAN报文提供给目的VM,从而解决了无法将位于某个VDC的源VM向跨物理数据中心的目的VM发送的报文通过该VDC自己专有的VPN隧道进行传输,导致的该VDC的QOS得不到保障的问题。
实施例3
本发明实施例3提供一种发送报文的方法,预先为源VM所在物理数据中心中的每个VDC分配VPN隧道,为源VM所在物理数据中心中的每个VDC分配的VPN隧道不同,为源VM所在物理数据中心中的VDC分配的VPN隧道与源VM所在物理数据中心中的VDC对应使用的源CE设备的接口对应绑定,其中,为源VM所在的源VDC分配的VPN隧道与源CE设备的第一接口对应绑定,第一接口为源VM所在源VDC对应使用的接口,如图4所示,该方法可以包括:
301a、源CE设备接收源VTEP发送的VXLAN报文。
其中,该VXLAN报文包含源VM需要发送至目的VM的原始数据报文和源VM所在逻辑网络的VXLAN标识。
具体的,在一种可能的实现方式中,当源VM需要向目的VM发送原始数据报文时,源VM首先通过地址解析协议(Address Resolution Protocol,ARP)请求获取到目的VM的IP地址,然后将原始数据报文、源VM的IP地址以及目的VM的IP地址携带在原始数据包中发送至源VTEP,在源VTEP接收到源VM发送的原始数据包之后,可以根据原始数据包中包含的目的VM的IP地址,查询流表获得目的VTEP的IP地址,并将原始数据包、目的VTEP的IP地址以及源VM所在逻辑网络的VXLAN标识进行封装得到VXLAN报文,然后将封装得到的VXLAN报文通过三层路由转发至源CE设备,此时源CE设备便可以接收源VTEP发送的VXLAN报文。
在源CE设备接收到源VTEP发送的VXLAN报文之后,可以根据VXLAN报文中包含的源VM所在逻辑网络的VXLAN标识获取源VM所在源VDC对应使用的第一接口的信息,其中,该接口信息可以为逻辑接口信息或物理接口信息。具体的,在本发明实施例中,源CE设备根据源VM所在逻辑网络的VXLAN标识,获取源VM所在源VDC对应使用的第一接口的信息,可以包括以下步骤302a-步骤310a。
302a、源CE设备查找映射关系转发表中是否包含有源VM所在逻辑网络的VXLAN标识。
其中,在源CE设备接收到源VTEP发送的VXLAN报文之后,源CE设备可以根据VXLAN报文中包含的源VM所在逻辑网络的VXLAN标识,查找映射关系转发表中是否包含有该源VM所在逻辑网络的VXLAN标识,若映射关系转发表中包含有该源VM所在逻辑网络的VXLAN标识,则执行以下步骤303a、若映射关系转发表中未包含有该源VM所在逻辑网络的VXLAN标识,则执行以下步骤304a-310a。
303a、源CE设备将与源VM所在逻辑网络的VXLAN标识对应的接口信息作为第一接口的信息。
其中,当源CE设备查找到映射关系转发表中包含有源VM所在逻辑网络的VXLAN标识时,则可以将与该源VM所在逻辑网络的VXLAN标识对应的接口信息作为第一接口的信息,该源CE设备的第一接口即为源VM所在的源VDC对应使用的接口,该第一接口的信息可以是逻辑接口信息,也可以是物理接口信息。
304a、源CE设备向控制器发送携带源VM所在逻辑网络的VXLAN标识的请求消息。
其中,请求消息用于请求获取与源VM所在逻辑网络的VXLAN标识对应的接口信息。当源CE设备查找到映射关系转发表中未包含有源VM所在逻辑网络的VXLAN标识时,源CE设备可以向控制器发送用于请求获取与源VM所在逻辑网络的VXLAN标识对应的接口信息的请求信息,其中该请求信息中携带有该源VM所在逻辑网络的VXLAN标识。
305a、控制器接收源CE设备发送的携带源VM所在逻辑网络的VXLAN标识的请求消息。
306a、控制器根据源VM所在逻辑网络的VXLAN标识,获取源VM所在源VDC的标识。
其中,由于源VM所在的逻辑网络包含于源VDC中,因此在控制器接收到源CE设备发送的携带源VM所在逻辑网络的VXLAN标识的请求消息之后,控制器可以根据该源VM所在逻辑网络的VXLAN标识,获取与该源VM所在逻辑网络的VXLAN标识对应的该源VM所在的源VDC的标识。
307a、控制器根据源VM所在源VDC的标识,获取为源VM所在源VDC分配的VPN隧道,并根据源VDC的VPN隧道获取源VM所在源VDC对应使用的接口的信息,以便得到与源VM所在逻辑网络的VXLAN标识对应的接口信息。
其中,由于预先为源VM所在的源VDC分配了VPN隧道,且针对源CE设备与目的CE设备之间建立的至少一个VPN隧道中的每个VPN隧道来说,该VPN隧道预先与源CE设备对应的接口存在绑定关系,且该绑定关系预先存储在控制器中,因此在控制器根据源VM所在逻辑网络的VXLAN标识,获取到源VM所在源VDC的标识之后,可以先根据源VM所在源VDC的标识,获取到为该源VM所在的源VDC分配的VPN隧道,然后根据源VDC的VPN隧道以及预先存储的VPN隧道与源CE设备对应的接口的绑定关系,获取该源VM所在源VDC对应使用的接口的信息,该与源VM所在源VDC对应使用的接口的信息便为与源VM所在逻辑网络的VXLAN标识对应的接口信息。
可选的,在控制器执行步骤306a根据源VM所在逻辑网络的VXLAN标识,获取源VM所在源VDC的标识之后,控制器可以根据源VM所在源VDC的标识获取与该源VDC的标识对应的VXLAN标识列表(该VXLAN标识列表中包含至少一个VXLAN标识,针对至少一个VXLAN标识中的每个VXLAN标识来说,该VXLAN标识对应一个逻辑网络,且该VXLAN标识列表中包含源VM所在逻辑网络的VXLAN标识,每个VXLAN标识对应的逻辑网络包含于该源VDC),且由于预先为源VM所在的源VDC分配了VPN隧道,以及控制器中预先存储有该源VDC的VPN隧道与源CE设备的第一接口的绑定关系,因此,控制器便可得到VXLAN标识列表与第一接口的信息的对应关系,并将VXLAN标识列表与第一接口的信息的对应关系保存在控制器中,这样,当控制器再次接收到包含有该VXLAN标识列表中的某个VXLAN标识(除源VM所在逻辑网络的VXLAN标识)的请求信息之后,可以直接查找该VXLAN标识是否包含于该VXLAN标识列表中,若该VXLAN标识包含于该VXLAN标识列表中,则可以直接获知与该VXLAN标识列表对应的第一接口的信息即为该VXLAN标识对应的接口信息。
308a、控制器将与源VM所在逻辑网络的VXLAN标识对应的接口信息发送至源CE设备。
其中,在控制器根据源VM所在源VDC的标识,获取到与源VM所在源VDC对应使用的接口的信息,即得到与源VM所在逻辑网络的VXLAN标识对应的接口信息之后,控制器可以将获取到的该与源VM所在逻辑网络的VXLAN标识对应的接口信息发送至原CE设备。
309a、源CE设备接收控制器发送的与源VM所在逻辑网络的VXLAN标识对应的接口信息。
310a、源CE设备将与源VM所在逻辑网络的VXLAN标识对应的接口信息作为第一接口的信息。
其中,该第一接口的信息可以是逻辑接口信息,也可以是物理接口信息。
311a、源CE设备通过第一接口发送VXLAN报文,以利用第一接口对应绑定的源VDC的VPN隧道,将VXLAN报文提供给目的VM。
其中,在源CE设备根据源VM所在逻辑网络的VXLAN标识,获取源VM所在源VDC对应使用的第一接口的信息之后,源CE设备可以根据获取到源VM所在源VDC对应使用的第一接口的信息,通过第一接口发送VXLAN报文,也就是说,源CE设备根据获取到源VM所在源VDC对应使用的第一接口的信息,便可以通过第一接口对应绑定的该源VDC专有的VPN隧道将VXLAN报文提供给目的VM。其中,源CE设备利用第一接口对应绑定的源VDC的VPN隧道将VXLAN报文提供给目的VM具体的可以是:源CE设备利用第一接口对应绑定的源VDC的VPN隧道将VXLAN报文发送至目的CE设备,目的CE设备在接收到VXLAN报文之后,将VXLAN报文发送至目的VTEP,以便目的VTEP对VXLAN报文进行解封装得到原始数据报文和目的VM的IP地址,并根据目的VM的IP地址将原始数据报文发送至目的VM。
为了便于本领域技术人员的理解,本发明实施例在此对本发明的具体的实施过程进行详细的说明,如图5所示,具体的可以包括以下步骤301b-步骤315b。
301b、源VM获取目的VM的IP地址,并将原始数据报文、源VM的IP地址以及目的VM的IP地址携带在原始数据包中发送至源VTEP。
302b、源VTEP根据原始数据包中包含的目的VM的IP地址,查询流表获得目的VTEP的IP地址。
303b、源VTEP将原始数据包、目的VTEP的IP地址以及源VM所在逻辑网络的VXLAN标识进行封装得到VXLAN报文。
304b、源VTEP将VXLAN报文发送至源CE设备。
305b、源CE设备查找映射关系转发表中是否包含有源VM所在逻辑网络的VXLAN标识。
若映射关系转发表中包含有该源VM所在逻辑网络的VXLAN标识,则执行以下步骤306b、若映射关系转发表中未包含有该源VM所在逻辑网络的VXLAN标识,则执行以下步骤307b-311b。
306b、源CE设备将与源VM所在逻辑网络的VXLAN标识对应的接口信息作为第一接口的信息。
307b、源CE设备向控制器发送携带源VM所在逻辑网络的VXLAN标识的请求消息。
308b、控制器根据源VM所在逻辑网络的VXLAN标识,获取源VM所在源VDC的标识。
309b、控制器根据源VM所在源VDC的标识,获取为源VM所在源VDC分配的VPN隧道,并根据源VDC的VPN隧道获取源VM所在源VDC对应使用的接口的信息,以便得到与源VM所在逻辑网络的VXLAN标识对应的接口信息。
310b、控制器将与源VM所在逻辑网络的VXLAN标识对应的接口信息发送至源CE设备。
311b、源CE设备将与源VM所在逻辑网络的VXLAN标识对应的接口信息作为第一接口的信息。
312b、源CE设备通过第一接口对应绑定的源VDC的VPN隧道将VXLAN报文发送至目的CE设备。
313b、目的CE设备将VXLAN报文发送至目的VTEP。
314b、目的VTEP对VXLAN报文进行解封装得到原始数据报文和目的VM的IP地址。
315b、目的VTEP根据目的VM的IP地址将原始数据报文发送至目的VM。
需要说明的是,在本发明实施例中,包含于源VDC的VM需要与跨物理数据中心的目标VM之间进行基于二层、三层网络的通信时,均需要通过为该源VDC分配的该源VDC专有的VPN隧道向跨物理数据中心的目标VM传输报文,以使得该源VDC的QOS能够得到保障。
本发明提供的发送报文的方法,预先为源VM所在的源VDC分配VPN隧道,且该源VDC的VPN隧道预先绑定在源CE设备的第一接口上,并在源CE设备接收到源VTEP发送的包含有源VM所在逻辑网络的VXLAN标识的VXLAN报文之后,根据源VM所在逻辑网络的VXLAN标识获取源VM所在源VDC对应使用的第一接口的信息,然后通过第一接口发送VXLAN报文,以利用第一接口对应绑定的源VDC的VPN隧道,将VXLAN报文提供给目的VM,从而使得源VM发送至跨物理数据中心的目标VM的报文,通过为该源VM所处源VDC分配的VPN隧道进行传输,从而解决了无法将位于某个VDC的源VM向跨物理数据中心的目的VM发送的报文通过该VDC自己专有的VPN隧道进行传输,导致的该VDC的QOS得不到保障的问题。
实施例4
本发明实施例4提供一种源CE设备,如图6所示,预先为源VM所在物理数据中心中的每个VDC分配VPN隧道,为所述源VM所在物理数据中心中的每个VDC分配的VPN隧道不同,所述为所述源VM所在物理数据中心中的VDC分配的VPN隧道与所述源VM所在物理数据中心中的VDC对应使用的源CE设备的接口对应绑定,其中,为源VM所在的源VDC分配的VPN隧道与所述源CE设备的第一接口对应绑定,所述第一接口为所述源VM所在源VDC对应使用的接口,该源CE设备可以包括:接收单元41、获取单元42、发送单元43。
接收单元41,用于接收源VTEP发送的VXLAN报文;其中,所述VXLAN报文包含所述源VM需要发送至目的VM的原始数据报文和所述源VM所在逻辑网络的VXLAN标识。
获取单元42,用于根据所述接收单元41接收到的所述源VM所在逻辑网络的VXLAN标识,获取所述源VM所在源VDC对应使用的所述第一接口的信息。
发送单元43,用于通过所述第一接口发送所述VXLAN报文,以利用所述第一接口对应绑定的所述源VDC的VPN隧道,将所述VXLAN报文提供给所述目的VM。
在本发明实施例中,进一步可选的,如图7所示,所述获取单元42可以包括:查找模块421、第一处理模块422。
查找模块421,用于查找映射关系转发表中是否包含有所述源VM所在逻辑网络的VXLAN标识。
第一处理模块422,用于若所述映射关系转发表中包含有所述源VM所在逻辑网络的VXLAN标识,将与所述源VM所在逻辑网络的VXLAN标识对应的接口信息作为所述第一接口的信息。
在本发明实施例中,进一步可选的,所述获取单元42还可以包括:发送模块423、接收模块424、第二处理模块425。
发送模块423,用于若所述映射关系转发表中未包含有所述源VM所在逻辑网络的VXLAN标识,向控制器发送携带所述源VM所在逻辑网络的VXLAN标识的请求消息;所述请求消息用于请求获取与所述源VM所在逻辑网络的VXLAN标识对应的接口信息。
接收模块424,用于接收控制器发送的与所述源VM所在逻辑网络的VXLAN标识对应的接口信息。
第二处理模块425,用于将接收模块424接收到的与所述源VM所在逻辑网络的VXLAN标识对应的接口信息作为所述第一接口的信息。
在本发明实施例中,进一步可选的,所述接口信息为逻辑接口信息或物理接口信息。
需要说明的是,本发明实施例提供的源CE设备中功能模块的具体描述可以参考方法实施例中对应内容的具体描述,本发明实施例在此不再详细赘述。
本发明提供的源CE设备,在接收到源VTEP发送的包含有源VM所在逻辑网络的VXLAN标识的VXLAN报文之后,根据源VM所在逻辑网络的VXLAN标识获取源VM所在源VDC对应使用的第一接口的信息,然后通过第一接口发送VXLAN报文,以利用第一接口对应绑定的源VDC的VPN隧道,将VXLAN报文提供给目的VM,从而使得源VM发送至跨物理数据中心的目标VM的报文,通过为该源VM所处源VDC分配的VPN隧道进行传输,从而解决了无法将位于某个VDC的源VM向跨物理数据中心的目的VM发送的报文通过该VDC自己专有的VPN隧道进行传输,导致的该VDC的QOS得不到保障的问题。
实施例5
本发明实施例5提供一种控制器,如图8所示,预先为源VM所在物理数据中心中的每个VDC分配VPN隧道,为所述源VM所在物理数据中心中的每个VDC分配的VPN隧道不同,所述为所述源VM所在物理数据中心中的VDC分配的VPN隧道与所述源VM所在物理数据中心中的VDC对应使用的源CE设备的接口对应绑定,其中,为源VM所在的源VDC分配的VPN隧道与所述源CE设备的第一接口对应绑定,所述第一接口为所述源VM所在源VDC对应使用的接口,该控制器可以包括:接收单元51、第一获取单元52、第二获取单元53、发送单元54。
接收单元51,用于接收所述源CE设备发送的携带所述源VM所在逻辑网络的虚拟可拓展局域网VXLAN标识的请求消息;所述请求消息用于请求获取与所述源VM所在逻辑网络的VXLAN标识对应的接口信息。
第一获取单元52,用于根据所述接收单元51接收到的所述源VM所在逻辑网络的VXLAN标识,获取所述源VM所在源VDC的标识。
第二获取单元53,用于根据所述第一获取单元52获取到的所述源VM所在源VDC的标识,获取为所述源VM所在源VDC分配的VPN隧道,并根据所述源VDC的VPN隧道获取所述源VM所在源VDC对应使用的接口的信息,以得到与所述源VM所在逻辑网络的VXLAN标识对应的接口信息。
发送单元54,用于将所述第二获取单元53获取到的与所述源VM所在逻辑网络的VXLAN标识对应的接口信息发送至所述源CE设备。
在本发明实施例中,进一步可选的,所述接口信息为逻辑接口信息或物理接口信息。
需要说明的是,本发明实施例提供的控制器中功能模块的具体描述可以参考方法实施例中对应内容的具体描述,本发明实施例在此不再详细赘述。
本发明提供的控制器,当源CE设备查找到映射关系转发表中未包含源VM所在逻辑网络的VXLAN标识时,源CE设备需向控制器发送用于请求获取与源VM所在逻辑网络的VXLAN标识对应的接口信息的请求消息,这样控制器在接收到请求消息之后,根据请求消息中携带的源VM所在逻辑网络的VXLAN标识获取与源VM所在逻辑网络的VXLAN标识对应的接口信息,并将与源VM所在逻辑网络的VXLAN标识对应的接口信息反馈至源CE设备,以便源CE设备根据与源VM所在逻辑网络的VXLAN标识对应的接口信息,利用对应绑定的源VDC的VPN隧道将VXLAN报文提供给目的VM,从而解决了无法将位于某个VDC的源VM向跨物理数据中心的目的VM发送的报文通过该VDC自己专有的VPN隧道进行传输,导致的该VDC的QOS得不到保障的问题。
实施例6
本发明实施例6提供一种源CE设备,预先为源虚拟机VM所在物理数据中心中的每个虚拟数据中心VDC分配虚拟专用网VPN隧道,为所述源VM所在物理数据中心中的每个VDC分配的VPN隧道不同,所述为所述源VM所在物理数据中心中的VDC分配的VPN隧道与所述源VM所在物理数据中心中的VDC对应使用的源用户边界CE设备的接口对应绑定,其中,为源VM所在的源VDC分配的VPN隧道与所述源CE设备的第一接口对应绑定,所述第一接口为所述源VM所在源VDC对应使用的接口,如图9所示,该源CE设备包括:至少一个处理器61、存储器62、通信接口63和总线64,该至少一个处理器61、存储器62和通信接口63通过总线64连接并完成相互间的通信,其中:
所述总线64可以是工业标准体系结构(Industry Standard Architecture,ISA)总线、外部设备互连(Peripheral Component Interconnect,PCI)总线或扩展工业标准体系结构(Extended Industry Standard Architecture,EISA)总线等。该总线64可以分为地址总线、数据总线、控制总线等。为便于表示,图9中仅用一条粗线表示,但并不表示仅有一根总线或一种类型的总线。
所述存储器62用于存储可执行程序代码,该程序代码包括计算机操作指令。存储器62可能包含高速RAM存储器,也可能还包括非易失性存储器(non-volatile memory),例如至少一个磁盘存储器。
所述处理器61可能是一个中央处理器(Central Processing Unit,CPU),或者是特定集成电路(Application Specific Integrated Circuit,ASIC),或者是被配置成实施本发明实施例的一个或多个集成电路。
所述通信接口63,主要用于实现本实施例的设备之间的通信。
所述处理器61,用于执行所述存储器62中存储的可执行程序代码,具体的用于执行以下操作:
所述处理器61,用于接收源VTEP发送的虚拟VXLAN报文;其中,所述VXLAN报文包含所述源VM需要发送至目的VM的原始数据报文和所述源VM所在逻辑网络的VXLAN标识;根据所述源VM所在逻辑网络的VXLAN标识,获取所述源VM所在源VDC对应使用的所述第一接口的信息;通过所述第一接口发送所述VXLAN报文,以利用所述第一接口对应绑定的所述源VDC的VPN隧道,将所述VXLAN报文提供给所述目的VM。
在本发明实施例中,进一步可选的,所述处理器61,具体用于查找映射关系转发表中是否包含有所述源VM所在逻辑网络的VXLAN标识;若所述映射关系转发表中包含有所述源VM所在逻辑网络的VXLAN标识,将与所述源VM所在逻辑网络的VXLAN标识对应的接口信息作为所述第一接口的信息。
在本发明实施例中,进一步可选的,所述处理器61,具体用于若所述映射关系转发表中未包含有所述源VM所在逻辑网络的VXLAN标识,向控制器发送携带所述源VM所在逻辑网络的VXLAN标识的请求消息;所述请求消息用于请求获取与所述源VM所在逻辑网络的VXLAN标识对应的接口信息;接收所述控制器发送的与所述源VM所在逻辑网络的VXLAN标识对应的接口信息;将与所述源VM所在逻辑网络的VXLAN标识对应的接口信息作为所述第一接口的信息。
在本发明实施例中,进一步可选的,所述接口信息为逻辑接口信息或物理接口信息。
需要说明的是,本发明实施例提供的源CE设备中功能模块的具体描述可以参考方法实施例中对应内容的具体描述,本发明实施例在此不再详细赘述。
本发明提供的源CE设备,在接收到源VTEP发送的包含有源VM所在逻辑网络的VXLAN标识的VXLAN报文之后,根据源VM所在逻辑网络的VXLAN标识获取源VM所在源VDC对应使用的第一接口的信息,然后通过第一接口发送VXLAN报文,以利用第一接口对应绑定的源VDC的VPN隧道,将VXLAN报文提供给目的VM,从而使得源VM发送至跨物理数据中心的目标VM的报文,通过为该源VM所处源VDC分配的VPN隧道进行传输,从而解决了无法将位于某个VDC的源VM向跨物理数据中心的目的VM发送的报文通过该VDC自己专有的VPN隧道进行传输,导致的该VDC的QOS得不到保障的问题。
实施例7
本发明实施例7提供一种控制设备,预先为源虚拟机VM所在物理数据中心中的每个虚拟数据中心VDC分配虚拟专用网VPN隧道,为所述源VM所在物理数据中心中的每个VDC分配的VPN隧道不同,所述为所述源VM所在物理数据中心中的VDC分配的VPN隧道与所述源VM所在物理数据中心中的VDC对应使用的源用户边界CE设备的接口对应绑定,其中,为源VM所在的源VDC分配的VPN隧道与所述源CE设备的第一接口对应绑定,所述第一接口为所述源VM所在源VDC对应使用的接口,如图10所示,该控制器包括:至少一个处理器71、存储器72、通信接口73和总线74,该至少一个处理器71、存储器72和通信接口73通过总线74连接并完成相互间的通信,其中:
所述总线74可以是ISA线、PCI总线或EISA总线等。该总线74可以分为地址总线、数据总线、控制总线等。为便于表示,图9中仅用一条粗线表示,但并不表示仅有一根总线或一种类型的总线。
所述存储器72用于存储可执行程序代码,该程序代码包括计算机操作指令。存储器72可能包含高速RAM存储器,也可能还包括非易失性存储器(non-volatile memory),例如至少一个磁盘存储器。
所述处理器71可能是一个CPU,或者是ASIC,或者是被配置成实施本发明实施例的一个或多个集成电路。
所述通信接口73,主要用于实现本实施例的设备之间的通信。
所述处理器71,用于执行所述存储器72中存储的可执行程序代码,具体的用于执行以下操作:
所述处理器71,用于接收所述源CE设备发送的携带所述源VM所在逻辑网络的VXLAN标识的请求消息;所述请求消息用于请求获取与所述源VM所在逻辑网络的VXLAN标识对应的接口信息;根据所述源VM所在逻辑网络的VXLAN标识,获取所述源VM所在源VDC的标识;根据所述源VM所在源VDC的标识,获取为所述源VM所在源VDC分配的VPN隧道,并根据所述源VDC的VPN隧道获取所述源VM所在源VDC对应使用的接口的信息,以得到与所述源VM所在逻辑网络的VXLAN标识对应的接口信息;将获取的与所述源VM所在逻辑网络的VXLAN标识对应的接口信息发送至所述源CE设备。
在本发明实施例中,进一步可选的,所述接口信息为逻辑接口信息或物理接口信息。
需要说明的是,本发明实施例提供的控制设备中功能模块的具体描述可以参考方法实施例中对应内容的具体描述,本发明实施例在此不再详细赘述。
本发明提供的控制设备,当源CE设备查找到映射关系转发表中未包含源VM所在逻辑网络的VXLAN标识时,源CE设备需向控制器发送用于请求获取与源VM所在逻辑网络的VXLAN标识对应的接口信息的请求消息,这样控制器在接收到请求消息之后,根据请求消息中携带的源VM所在逻辑网络的VXLAN标识获取与源VM所在逻辑网络的VXLAN标识对应的接口信息,并将与源VM所在逻辑网络的VXLAN标识对应的接口信息反馈至源CE设备,以便源CE设备根据与源VM所在逻辑网络的VXLAN标识对应的接口信息,利用对应绑定的源VDC的VPN隧道将VXLAN报文提供给目的VM,从而解决了无法将位于某个VDC的源VM向跨物理数据中心的目的VM发送的报文通过该VDC自己专有的VPN隧道进行传输,导致的该VDC的QOS得不到保障的问题。
通过以上的实施方式的描述,所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,仅以上述各功能模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能模块完成,即将装置的内部结构划分成不同的功能模块,以完成以上描述的全部或者部分功能。上述描述的装置的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
在本申请所提供的几个实施例中,应该理解到,所揭露的装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述模块或单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个装置,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是一个物理单元或多个物理单元,即可以位于一个地方,或者也可以分布到多个不同地方。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本发明各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
所述集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该软件产品存储在一个存储介质中,包括若干指令用以使得一个设备(可以是单片机,芯片等)或处理器(processor)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质。
以上所述,仅为本发明的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应所述以权利要求的保护范围为准。
Claims (12)
1.一种发送报文的方法,其特征在于,预先为源虚拟机VM所在物理数据中心中的每个虚拟数据中心VDC分配虚拟专用网VPN隧道,为所述源VM所在物理数据中心中的每个VDC分配的VPN隧道不同,所述为所述源VM所在物理数据中心中的VDC分配的VPN隧道与所述源VM所在物理数据中心中的VDC对应使用的源用户边界CE设备的接口对应绑定,其中,为源VM所在的源VDC分配的VPN隧道与所述源CE设备的第一接口对应绑定,所述第一接口为所述源VM所在源VDC对应使用的接口;所述方法包括:
所述源CE设备接收源虚拟通道终点VTEP发送的虚拟可拓展局域网VXLAN报文;其中,所述VXLAN报文包含所述源VM需要发送至目的VM的原始数据报文和所述源VM所在逻辑网络的VXLAN标识;
所述源CE设备根据所述源VM所在逻辑网络的VXLAN标识,获取所述源VM所在源VDC对应使用的所述第一接口的信息;
所述源CE设备通过所述第一接口发送所述VXLAN报文,以利用所述第一接口对应绑定的所述源VDC的VPN隧道,将所述VXLAN报文提供给所述目的VM。
2.根据权利要求1所述的方法,其特征在于,所述源CE设备根据所述源VM所在逻辑网络的VXLAN标识,获取所述源VM所在源VDC对应使用的所述第一接口的信息,包括:
所述源CE设备查找映射关系转发表中是否包含有所述源VM所在逻辑网络的VXLAN标识;
若所述映射关系转发表中包含有所述源VM所在逻辑网络的VXLAN标识,所述源CE设备将与所述源VM所在逻辑网络的VXLAN标识对应的接口信息作为所述第一接口的信息。
3.根据权利要求2所述的方法,其特征在于,还包括:
若所述映射关系转发表中未包含有所述源VM所在逻辑网络的VXLAN标识,所述源CE设备向控制器发送携带所述源VM所在逻辑网络的VXLAN标识的请求消息;所述请求消息用于请求获取与所述源VM所在逻辑网络的VXLAN标识对应的接口信息;
所述源CE设备接收所述控制器发送的与所述源VM所在逻辑网络的VXLAN标识对应的接口信息;
所述源CE设备将与所述源VM所在逻辑网络的VXLAN标识对应的接口信息作为所述第一接口的信息。
4.根据权利要求1-3中任一项所述的方法,其特征在于,所述接口信息为逻辑接口信息或物理接口信息。
5.一种发送报文的方法,其特征在于,预先为源虚拟机VM所在物理数据中心中的每个虚拟数据中心VDC分配虚拟专用网VPN隧道,为所述源VM所在物理数据中心中的每个VDC分配的VPN隧道不同,所述为所述源VM所在物理数据中心中的VDC分配的VPN隧道与所述源VM所在物理数据中心中的VDC对应使用的源用户边界CE设备的接口对应绑定,其中,为源VM所在的源VDC分配的VPN隧道与所述源CE设备的第一接口对应绑定,所述第一接口为所述源VM所在源VDC对应使用的接口,所述方法包括:
控制器接收所述源CE设备发送的携带所述源VM所在逻辑网络的虚拟可拓展局域网VXLAN标识的请求消息;所述请求消息用于请求获取与所述源VM所在逻辑网络的VXLAN标识对应的接口信息;
所述控制器根据所述源VM所在逻辑网络的VXLAN标识,获取所述源VM所在源VDC的标识;
所述控制器根据所述源VM所在源VDC的标识,获取为所述源VM所在源VDC分配的VPN隧道,并根据所述源VDC的VPN隧道获取所述源VM所在源VDC对应使用的接口的信息,以得到与所述源VM所在逻辑网络的VXLAN标识对应的接口信息;
所述控制器将与所述源VM所在逻辑网络的VXLAN标识对应的接口信息发送至所述源CE设备。
6.根据权利要求5所述的方法,其特征在于,所述接口信息为逻辑接口信息或物理接口信息。
7.一种源用户边界CE设备,其特征在于,预先为源虚拟机VM所在物理数据中心中的每个虚拟数据中心VDC分配虚拟专用网VPN隧道,为所述源VM所在物理数据中心中的每个VDC分配的VPN隧道不同,所述为所述源VM所在物理数据中心中的VDC分配的VPN隧道与所述源VM所在物理数据中心中的VDC对应使用的所述源CE设备的接口对应绑定,其中,为源VM所在的源VDC分配的VPN隧道与所述源CE设备的第一接口对应绑定,所述第一接口为所述源VM所在源VDC对应使用的接口,所述设备包括:
接收单元,用于接收源虚拟通道终点VTEP发送的虚拟可拓展局域网VXLAN报文;其中,所述VXLAN报文包含所述源VM需要发送至目的VM的原始数据报文和所述源VM所在逻辑网络的VXLAN标识;
获取单元,用于根据所述接收单元接收到的所述源VM所在逻辑网络的VXLAN标识,获取所述源VM所在源VDC对应使用的所述第一接口的信息;
发送单元,用于通过所述第一接口发送所述VXLAN报文,以利用所述第一接口对应绑定的所述源VDC的VPN隧道,将所述VXLAN报文提供给所述目的VM。
8.根据权利要求7所述的源CE设备,其特征在于,所述获取单元,包括:
查找模块,用于查找映射关系转发表中是否包含有所述源VM所在逻辑网络的VXLAN标识;
第一处理模块,用于若所述映射关系转发表中包含有所述源VM所在逻辑网络的VXLAN标识,将与所述源VM所在逻辑网络的VXLAN标识对应的接口信息作为所述第一接口的信息。
9.根据权利要求8所述的源CE设备,其特征在于,所述获取单元,还包括:
发送模块,用于若所述映射关系转发表中未包含有所述源VM所在逻辑网络的VXLAN标识,向控制器发送携带所述源VM所在逻辑网络的VXLAN标识的请求消息;所述请求消息用于请求获取与所述源VM所在逻辑网络的VXLAN标识对应的接口信息;
接收模块,用于接收所述控制器发送的与所述源VM所在逻辑网络的VXLAN标识对应的接口信息;
第二处理模块,用于将所述接收模块接收到的与所述源VM所在逻辑网络的VXLAN标识对应的接口信息作为所述第一接口的信息。
10.根据权利要求7-9中任一项所述的源CE设备,其特征在于,所述接口信息为逻辑接口信息或物理接口信息。
11.一种控制器,其特征在于,预先为源虚拟机VM所在物理数据中心中的每个虚拟数据中心VDC分配虚拟专用网VPN隧道,为所述源VM所在物理数据中心中的每个VDC分配的VPN隧道不同,所述为所述源VM所在物理数据中心中的VDC分配的VPN隧道与所述源VM所在物理数据中心中的VDC对应使用的源用户边界CE设备的接口对应绑定,其中,为源VM所在的源VDC分配的VPN隧道与所述源CE设备的第一接口对应绑定,所述第一接口为所述源VM所在源VDC对应使用的接口,所述控制器包括:
接收单元,用于接收所述源CE设备发送的携带所述源VM所在逻辑网络的虚拟可拓展局域网VXLAN标识的请求消息;所述请求消息用于请求获取与所述源VM所在逻辑网络的VXLAN标识对应的接口信息;
第一获取单元,用于根据所述接收单元接收到的所述源VM所在逻辑网络的VXLAN标识,获取所述源VM所在源VDC的标识;
第二获取单元,用于根据所述第一获取单元获取到的所述源VM所在源VDC的标识,获取为所述源VM所在源VDC分配的VPN隧道,并根据所述源VDC的VPN隧道获取所述源VM所在源VDC对应使用的接口的信息,以得到与所述源VM所在逻辑网络的VXLAN标识对应的接口信息;
发送单元,用于将所述第二获取单元获取到的与所述源VM所在逻辑网络的VXLAN标识对应的接口信息发送至所述源CE设备。
12.根据权利要求11所述的控制器,其特征在于,所述接口信息为逻辑接口信息或物理接口信息。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201410199711.6A CN103957160B (zh) | 2014-05-12 | 2014-05-12 | 一种发送报文的方法及设备 |
PCT/CN2015/070033 WO2015172574A1 (zh) | 2014-05-12 | 2015-01-04 | 一种发送报文的方法及设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201410199711.6A CN103957160B (zh) | 2014-05-12 | 2014-05-12 | 一种发送报文的方法及设备 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN103957160A CN103957160A (zh) | 2014-07-30 |
CN103957160B true CN103957160B (zh) | 2017-04-19 |
Family
ID=51334387
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201410199711.6A Active CN103957160B (zh) | 2014-05-12 | 2014-05-12 | 一种发送报文的方法及设备 |
Country Status (2)
Country | Link |
---|---|
CN (1) | CN103957160B (zh) |
WO (1) | WO2015172574A1 (zh) |
Families Citing this family (23)
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 |
CN103957160B (zh) * | 2014-05-12 | 2017-04-19 | 华为技术有限公司 | 一种发送报文的方法及设备 |
CN105471693B (zh) * | 2014-08-18 | 2019-02-05 | 华为技术有限公司 | 一种报文发送方法和网络节点 |
US10511458B2 (en) | 2014-09-30 | 2019-12-17 | Nicira, Inc. | Virtual distributed bridging |
US10250443B2 (en) | 2014-09-30 | 2019-04-02 | Nicira, Inc. | Using physical location to modify behavior of a distributed virtual network element |
CN105634770B (zh) * | 2014-10-29 | 2019-05-07 | 新华三技术有限公司 | 部署虚拟扩展局域网的方法和装置 |
CN105634942B (zh) * | 2014-10-31 | 2020-01-03 | 华为技术有限公司 | 转发报文的方法和交换机 |
CN105812221B (zh) * | 2014-12-31 | 2019-07-12 | 华为技术有限公司 | 虚拟可扩展本地区域网络中数据传输的设备和方法 |
US10225184B2 (en) | 2015-06-30 | 2019-03-05 | Nicira, Inc. | Redirecting traffic in a virtual distributed router environment |
CN106559302A (zh) * | 2015-09-30 | 2017-04-05 | 中兴通讯股份有限公司 | 单播隧道建立方法、装置和系统 |
CN107342925B (zh) | 2016-04-29 | 2020-03-06 | 新华三技术有限公司 | 一种报文传输方法及装置 |
CN107770072B (zh) * | 2016-08-18 | 2021-01-08 | 阿里巴巴集团控股有限公司 | 一种发送和接收报文的方法和设备 |
CN107770095B (zh) * | 2016-08-22 | 2021-07-06 | 阿里巴巴集团控股有限公司 | 一种用于控制虚拟机元数据访问的方法与设备 |
CN107786410B (zh) * | 2016-12-29 | 2020-08-28 | 平安科技(深圳)有限公司 | 一种基于以太网封装的vxlan实现方法及终端 |
CN107547395B (zh) * | 2017-06-27 | 2020-12-04 | 新华三技术有限公司 | 一种报文传输方法、装置及机器可读存储介质 |
US10511459B2 (en) | 2017-11-14 | 2019-12-17 | Nicira, Inc. | Selection of managed forwarding element for bridge spanning multiple datacenters |
CN110034993B (zh) * | 2018-01-11 | 2020-12-25 | 华为技术有限公司 | 传输数据的方法、设备和网络系统 |
CN110391961B (zh) * | 2018-04-18 | 2021-03-23 | 华为技术有限公司 | 一种隧道绑定方法、设备及系统 |
CN110474829B (zh) * | 2018-05-10 | 2021-07-20 | 华为技术有限公司 | 传输报文的方法和装置 |
CN110838966B (zh) * | 2019-11-20 | 2022-03-01 | 紫光华山科技有限公司 | 一种设备连接控制方法及装置 |
CN113726632B (zh) * | 2021-07-31 | 2023-04-18 | 新华三信息安全技术有限公司 | 一种报文转发方法及设备 |
CN114465981B (zh) * | 2021-12-29 | 2023-04-11 | 华为技术有限公司 | 数据传输方法以及通信装置 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102137173A (zh) * | 2010-12-27 | 2011-07-27 | 华为技术有限公司 | 路由信息发布方法、设备及虚拟专用网系统 |
CN103379010A (zh) * | 2012-04-20 | 2013-10-30 | 中兴通讯股份有限公司 | 一种虚拟网络实现方法及系统 |
CN103634217A (zh) * | 2013-11-13 | 2014-03-12 | 华为技术有限公司 | 路由信息发布的方法、传输报文的方法及装置 |
Family Cites Families (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7467215B2 (en) * | 2002-09-09 | 2008-12-16 | Nortel Networks Limited | SVC-L2.5 VPNs: combining Layer-3 VPNs technology with switched MPLS/IP L2VPNs for ethernet, ATM and frame relay circuits |
CN103957160B (zh) * | 2014-05-12 | 2017-04-19 | 华为技术有限公司 | 一种发送报文的方法及设备 |
-
2014
- 2014-05-12 CN CN201410199711.6A patent/CN103957160B/zh active Active
-
2015
- 2015-01-04 WO PCT/CN2015/070033 patent/WO2015172574A1/zh active Application Filing
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102137173A (zh) * | 2010-12-27 | 2011-07-27 | 华为技术有限公司 | 路由信息发布方法、设备及虚拟专用网系统 |
CN103379010A (zh) * | 2012-04-20 | 2013-10-30 | 中兴通讯股份有限公司 | 一种虚拟网络实现方法及系统 |
CN103634217A (zh) * | 2013-11-13 | 2014-03-12 | 华为技术有限公司 | 路由信息发布的方法、传输报文的方法及装置 |
Also Published As
Publication number | Publication date |
---|---|
WO2015172574A1 (zh) | 2015-11-19 |
CN103957160A (zh) | 2014-07-30 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN103957160B (zh) | 一种发送报文的方法及设备 | |
EP2840743B1 (en) | Method and system for realizing virtual network | |
CN113411243B (zh) | 数据传输方法及装置 | |
CN102447752B (zh) | 基于二层隧道协议的业务访问方法、系统和装置 | |
JP2019527988A (ja) | パケット伝送 | |
CN104871483A (zh) | 对于基于mpls的虚拟私有云联网的ip组播服务加入过程 | |
CN104823405A (zh) | 对于基于mpls的虚拟私有云联网的ip组播服务离开过程 | |
CN107733795B (zh) | 以太网虚拟私有网络evpn与公网互通方法及其装置 | |
CN103731349B (zh) | 一种以太网虚拟化互联邻居间报文转发方法和边缘设备 | |
CN105763385A (zh) | 流量调度方法及装置 | |
WO2015149253A1 (zh) | 数据中心的虚拟网络管理方法及数据中心系统 | |
CN107547349A (zh) | 一种虚拟机迁移的方法及装置 | |
CN107645433B (zh) | 报文转发方法及装置 | |
CN104580029B (zh) | 地址分配方法及装置 | |
CN106059923A (zh) | 一种报文转发方法及装置 | |
CN102571375B (zh) | 组播转发方法、装置及网络设备 | |
CN104919762A (zh) | 软件定义网络中的控制方法,控制设备和处理器 | |
CN104796338A (zh) | 虚拟机迁移方法及装置 | |
CN105554176A (zh) | 发送报文的方法、装置和通信系统 | |
CN107819685A (zh) | 一种数据处理的方法以及网络设备 | |
CN102904814B (zh) | 数据传输方法、源pe、目的pe和数据传输系统 | |
CN110351135B (zh) | 多dc中的网络设备配置方法及装置 | |
CN108259297B (zh) | 一种报文处理方法及装置 | |
CN103269300B (zh) | 一种实现异构网络互联的方法和设备 | |
CN101808038B (zh) | 一种vpn实例的划分方法和设备 |
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: 20220216 Address after: 550025 Huawei cloud data center, jiaoxinggong Road, Qianzhong Avenue, Gui'an New District, Guiyang City, Guizhou Province Patentee after: Huawei Cloud Computing Technology Co.,Ltd. Address before: 518129 Bantian HUAWEI headquarters office building, Longgang District, Guangdong, Shenzhen Patentee before: HUAWEI TECHNOLOGIES Co.,Ltd. |