Login| Sign Up| Help| Contact|

Patent Searching and Data


Title:
PROCESSING METHOD, APPARATUS AND SYSTEM FOR MULTICAST
Document Type and Number:
WIPO Patent Application WO/2014/067280
Kind Code:
A1
Abstract:
The present invention is applicable to the communication field, and provides a processing method, apparatus and system for multicast. The method includes: virtual extensible local area network tunnel end point (VTEP) receiving configuration information transmitted from the management layer; the VTEP receiving multicast packets transmitted from virtual machine (VM) managed by the VTEP, and after ensuring that the VM matches the VM tenant identity, while encapsulating the multicast packets to virtual extensible local area network (VXLAN), encapsulating the source address and the destination address of multicast packets to multicast address of the three-layer network according to the mapping relationship of VM multicast address and the three-layer network multicast address, and encapsulating the multicast packets VXLAN source address to the three-layer network multicast source address according to the mapping relationship of VM multicast source address and the three-layer network multicast source address, and transmitting the encapsulated multicast packets to the three-layer network. The technical solution provided by the present invention can make the VM choose multicast source correctly.

Inventors:
KANG YUDONG (CN)
Application Number:
PCT/CN2013/075566
Publication Date:
May 08, 2014
Filing Date:
May 13, 2013
Export Citation:
Click for automatic bibliography generation   Help
Assignee:
HUAWEI TECH CO LTD (CN)
International Classes:
H04L45/74; H04L45/16
Foreign References:
CN101013950A2007-08-08
CN101374069A2009-02-25
CN102215172A2011-10-12
Other References:
YUKIHIRO, NAKAGAWA ET AL.: "A Management Method of IP Multicast in Overlay Networks Using OpenFlow", HOTSDN' 12 PROCEEDINGS OF THE FIRST WORKSHOP ON HOT TOPICS IN SOFTWARE DEFINED NETWORKS, 13 August 2012 (2012-08-13), pages 91 - 96, XP058008070
See also references of EP 2905930A4
Download PDF:
Claims:
权利要求

1、 一种组播处理方法, 其特征在于, 所述方法包括:

VXLAN隧道端点 VTEP接收管理层发送的配置信息;所述配置信息包 括: VM租户标识、 VM组播地址与三层网络上的组播地址的映射关系、 VM组播源地址与三层网络组播源地址的映射关系;

VTEP接收其管理的 VM发送的组播报文,在确定所述 VM与所述 VM 租户标识匹配后对所述组播报文进行 XVLAN封装时, 根据所述 VM组播 地址与三层网络上的组播地址的映射关系将该组播 ^艮文的源地址和目的地 址封装成三层网络上的组播地址, 根据 VM组播源地址与三层网络组播源 地址的映射关系将组播>¾文的 VXLAN源地址封装成三层网络组播源地址, 将封装后的组播报文发送给三层网络。

2、 根据权利要求 1所述的方法, 其特征在于, 所述方法还包括: 所述 VTEP接收其管理的 所述 VM发送的组播数据报文,在确定所述

VM与所述 VM租户标识匹配后对所述组播数据报文进行 XVLAN封装时 , 根据所述 VM组播地址与三层网络上的组播地址的映射关系将所述组播数 据报文的目的地址封装成三层网络上的组播地址, 根据 VM组播源地址与 三层网络组播源地址的映射关系将所述组播数据报文的 VXLAN源地址封 装成三层网络组播源地址, 将封装后的组播数据报文发送给三层网络。

3、 根据权利要求 1所述的方法, 其特征在于, 所述将封装后的组播数 据报文发送给三层网络之后, 所述方法还包括: 在组播业务结束时, VTEP接收管理层发送的所述配置信息的删除命令, 并根据所述删除命令删除所述配置信息。

4、 一种组播处理方法, 其特征在于, 所述方法包括:

虚拟扩展局域网 VXLAN隧道端点 VTEP接收管理层发送的配置信息; 所述配置信息包括: VM租户标识、 VM组播地址与三层网络上的组播地址 的映射关系, VM组播源地址与三层网络组播源地址的映射关系; 所述 VTEP接收其管理的 VM发送的加入 VM组播的 IGMP v3报文, 所述 IGMPv3报文携带 VM组播地址和 VM组播源地址;

所述 VTEP确定所述 VM与所述 VM租户标识匹配时, 根据所述 VM 组播地址与三层网络上的组播地址的映射关系将该 IGMP v3报文内的 VM 组播地址修改成三层网络上的组播地址, 根据 VM组播源地址与三层网络 组播源地址的映射关系将 IGMP v3报文内的组播源地址修改成三层网络上 的组播源地址, 将修改后的 IGMP v3报文发送给三层网络。

5、 根据权利要求 4所述的方法, 其特征在于, 所述方法还包括: 所述 VTEP接收所述 VXLAN中其他 VTEP通过所述三层网络发送的 组播数据报文, 所述组播数据报文的源地址为所述三层网络上的组播源地 址, 目的地址为所述三层网络上的组播地址;

所述 VTEP根据所述配置信息将所述组播数据报文解封装后获取所述 组播数据报文内的数据, 并将所述组播数据报文内的数据发送给所述 VM。

6、 根据权利要求 4所述的方法, 其特征在于, 所述将所述组播数据报 文内的数据发送给所述 VM之后, 所述方法还包括: 在组播业务结束时, VTEP接收管理层发送的所述配置信息的删除命令, 并根据所述删除命令删除所述配置信息。

7、 一种组播处理装置, 其特征在于, 所述组播处理装置包括: 接收单元, 用于接收管理层发送的配置信息; 所述配置信息包括: VM 租户标识、 VM组播地址与三层网络上的组播地址的映射关系、 VM组播源 地址与三层网络组播源地址的映射关系;

所述接收单元, 还用于接收其管理的 VM发送的组播报文;

封装单元, 用于在确定所述 VM与所述 VM租户标识匹配后对所述组 播报文进行 XVLAN封装时, 根据从所述接收单元处获取的所述 VM组播 地址与三层网络上的组播地址的映射关系将该组播 ^艮文的源地址和目的地 址封装成三层网络上的组播地址, 根据从所述接收单元处获取的 VM组播 源地址与三层网络组播源地址的映射关系将所述组播 ^艮文的 VXLAN源地 址封装成三层网络组播源地址;

发送单元, 用于将从所述封装单元处获取的封装后的组播报文发送给 三层网络。

8、 根据权利要求 7所述的装置, 其特征在于,

所述接收单元, 还用于接收其管理的所述 VM发送的组播数据报文; 所述封装单元, 还用于在确定所述 VM与所述 VM租户标识匹配后对 所述组播数据报文进行 XVLAN封装时, 根据所述 VM组播地址与三层网 络上的组播地址的映射关系将所述组播数据报文的目的地址封装成三层网 络上的组播地址, 根据 VM组播源地址与三层网络组播源地址的映射关系 将所述组播数据报文的 VXLAN源地址封装成三层网络组播源地址; 报文发送给三层网络。

9、 根据权利要求 8所述的装置, 其特征在于, 还包括: 删除单元, 用于在组播业务结束时, 接收管理层发送的所述配置信息 的删除命令, 并根据所述删除命令删除所述配置信息。

10、 一种组播处理装置, 其特征在于, 所述装置包括:

接收单元, 用于接收管理层发送的配置信息; 所述配置信息包括: VM 租户标识、 VM组播地址与三层网络上的组播地址的映射关系、 VM组播源 地址与三层网络组播源地址的映射关系;

所述接收单元,还用于接收其管理的 VM发送的加入 VM组播的 IGMP v3报文, 所述 IGMPv3报文携带 VM组播地址和 VM组播源地址;

修改单元 , 用于确定所述 VM与所述 VM租户标识匹配时, 根据从所 述接收单元处获取的所述 VM组播地址与三层网络上的组播地址的映射关 系将所述 IGMP v3 ^艮文内的 VM组播地址修改成三层网络上的组播地址, 根据从所述接收单元处获取的 VM组播源地址与三层网络组播源地址的映 射关系将 IGMP v3报文内的组播源地址修改成三层网络上的组播源地址; 发送单元, 用于将从修改单元处获取的修改后的 IGMP v3报文发送给 三层网络。

11、 根据权利要求 10所述的装置, 其特征在于, 所述装置还包括: 所述接收单元, 还用于接收所述 VXLAN中其他 VTEP通过所述三层 网络发送的组播数据报文, 所述组播数据报文的源地址为所述三层网络上 的组播源地址, 目的地址为所述三层网络上的组播地址;

解封装单元, 用于根据所述配置信息将从所述接收单元处获取的所述 组播数据报文解封装后获取所述组播数据报文内的数据;

发送单元, 用于将从所述接封装单元处获取的所述组播数据报文内的 数据发送给所述 VM。

12、 根据权利要求 11所述的装置, 其特征在于, P还包括: 删除单元, 用于在组播业务结束时, 接收管理层发送的所述配置信息 的删除命令, 并根据所述删除命令删除所述配置信息。

13、一种组播处理系统,其特征在于, 所述系统包括: 组播源侧 VTEP、 组播接收侧 VTEP和管理层;

其中, 组播源侧 VTEP和组播接收侧 VTEP分别用于接收管理层发送 的配置信息; 所述配置信息包括: VM租户 ID、 VM组播地址与三层网络 上的组播地址的映射关系、 VM组播源地址与三层网络组播源地址的映射关 系;

组播接收侧 VTEP, 还用于接收其管理的第一 VM发送的加入 VM组 播的 IGMP v3报文, 所述 IGMPv3报文携带 VM组播地址和 VM组播源地 址; 在确定所述第一 VM与所述 VM租户标识匹配时, 根据所述 VM组播 地址与三层网络上的组播地址的映射关系将所述 IGMP v3 ^艮文内的 VM组 播地址修改成三层网络上的组播地址, 根据 VM组播源地址与三层网络组 播源地址的映射关系将 IGMP v3报文内的组播源地址修改成三层网络上的 组播源地址; 将修改后的 IGMP v3 4艮文发送给三层网络;

组播源侧 VTEP,还用于接收其管理的第二 VM发送的组播报文;在确 定所述第二 VM与所述 VM租户标识匹配后对所述组播报文进行 XVLAN 封装时, 根据所述 VM组播地址与三层网络上的组播地址的映射关系将该 组播 文的源地址和目的地址封装成三层网络上的组播地址, 根据 VM组 播源地址与三层网络组播源地址的映射关系将所述组播 4艮文的 VXLAN源 地址封装成三层网络组播源地址; 将封装后的组播报文发送给所述三层网 络。

14、 根据权利要求 13所述的系统, 其特征在于,

所述组播源侧 VTEP,还用于接收其管理的所述第一 VM发送的组播数 据报文; 在确定所述第一 VM与所述 VM租户标识匹配后对所述组播数据 报文进行 XVLAN封装时, 根据所述 VM组播地址与三层网络上的组播地 址的映射关系将所述组播数据报文的目的地址封装成三层网络上的组播地 址, 根据 VM组播源地址与三层网络组播源地址的映射关系将所述组播数 据报文的 VXLAN源地址封装成三层网络组播源地址; 将封装后的组播数 据报文发送给所述三层网络;

所述组播接收侧 VTEP, 还用于接收三层网络发送的所述组播数据报 文, 所述组播数据报文的源地址为三层网络上的组播源地址, 目的地址为 三层网络上的组播地址; 根据所述配置信息所述组播数据报文解封装后获 取所述组播数据报文内的数据; 将所述组播数据报文内的数据发送给所述 第二 VM。

15、 根据权利要求 14所述的系统, 其特征在于,

所述组播源侧 VTEP, 还用于在组播业务结束时,接收管理层发送的所 述配置信息的删除命令, 并根据所述删除命令删除所述配置信息; 所述组播接收侧 VTEP,还用于在组播业务结束时,接收管理层发送的所述 配置信息的删除命令, 并根据所述删除命令删除所述配置信息。

Description:
组播处理方法、 装置及系统

本申请要求于 2012年 1 1月 2日提交中国专利局、 申请号为 201210433236.5、 发明名称为 "组播处理方法、 装置及系统" 的中国专利 申请的优先权, 其全部内容通过引用结合在本申请中。

技术领域 本发明属于通信领域, 尤其涉及一种 VXLAN中的组播处理方法、 装 置及系统。 背景技术 虚拟扩展局域网 ( Virtual extensible Local Area Network, VXLAN)是网 络虚拟化研究的热点, 它能够在物理网络上创建一个逻辑网络 (或扩展 VLAN) , 支持地理分散的数据中心之间实现远距离虚拟 机 (Virtual

Machine , VM)迁移。 VXLAN最终会实现多租户云网络所需要的远距离 割支持。 VXLAN主要解决数据中心租户隔离问题, 现有的隔离方法一般釆 用 VLAN进行隔离, 但是 VLAN只有 4096个, 不能满足数据中心多租户 的隔离需求。 VXLAN标准使用一个名为 VXLAN网络标识符 (VXLAN Network Identifier , VNI)的 24位标识符,每一个管理域能够定义多达 1600 万个 VNI , 客户数据会保证分离, 因为只有运行在同一个 VNI的 VM可以 进行通信。 现有技术提供的 VXLAN的组网示意图如图 1所示, 其中, 图 1中的服务 器 SERVER上虚拟出了多个 VM, 服务器支持 VXLAN 隧道终点 (VXLAN Tunnel End Point, VTEP )功能, 其中 VNI22是 VXLAN的一个网络标示符, 被分配给一个租户使用, 这个租户的 VM分布在 SERVER1、 SERVER3、 SERVER4、 SERVER5上, SERVER2和 SERVER6上没有该租户的 VM。 当 VMl-1需要和 VM5-1通信时候, VMl-1发送 ARP请求报文, 所述 ARP请求报 文首先被发送到了 VTEP1上, 当 VTEP1上没有学习到 VM5-1的地址时, VTEP1将所述 ARP请求报文封装成为 VXLAN广播报文, 在 Layer3 Network 上进行三层广播,使用的广播地址是 VNI22对应的一个三层组播地址; 如果 某个 VTEP所在的服务器上没有 VNI22的租户,这个 VTEP不会收到这个广播 报文; 有 VNI22租户的服务器上的 VTEP, 会收到这个广播报文, 比如 SERVER5上的 VTEP5会收到该广播报文, 之后, VTEP5剥掉该广播报文的 VLXAN头, 得到 ARP报文,并将该 ARP报文广播给 SERVER5上的所有 VM, 由于 ARP报文的目标( target )为 VM5-1 , 所以只有 VM5-1会响应该 ARP请 求报文, 其它 VTEP上没有 VM响应该 ARP请求报文。 VM5-1发送的 ARP响 应报文在 VTEP5上同样被封装为 VXLAN报文 , VTEP5将封装后的 VXLAN 报文发送给 VTEP1 , VTEP1剥掉 VXLAN头, 得到 ARP响应报文并发送给 VM1-1。 并且, VETP1会进行 ARP学习, 生成相应的 ARP表项, 保证后续 VM1-1和 VM5-1的通信。

VXLAN的管理层 Management Layer为每一个 VTEP分配固定的 IP地 址和固定的三层组播地址, 这个固定的 IP地址或三层组播地址用来在封装 VXLAN单播报文或组播报文的时候使用,但是这 分配对 VM的组播应用 的某些场景却不太合适, 存在以下的缺陷: 现有的 VXLAN不支持 IGMPv3的组播选源功能, IGMPv3的一个显著 特点就是组播源选择功能, 即客户端可以根据自己的需求选择组播源。 而 现有的 VXLAN技术中, 只分配一个 IP地址和一个或多个组播地址给 VTEP, VTEP在处理组播报文时, 将所有的组播报文使用同一个组播地址 封装在 VXLAN报文头中, VXLAN报文的源地址使用的是 VTEP的单播地 址, 当多个组播源在同一个 SERVER上, 并且组播源和发送组播请求的客 户端不在同一个 SERVER上的时候, 组播源所在的服务器的 VTEP根据接 收到的 VXLAN报文, 无法区分客户端请求的是该 SERVER下的哪个组播 源, 这样就造成组播客户端无法接收到所选择的组 播源发送的组播报文。

发明内容

本发明实施例的目的在于提供一种 VXLAN环境中的组播处理方法、 装置和系统, 旨在解决现有技术的组播客户端无法正确的选 择组播源的问 题。

一方面, 本发明提供一种组播处理的方法, 所述方法包括:

VXLAN隧道端点 VTEP接收管理层发送的配置信息;所述配置信 包 括: VM租户标识、 VM组播地址与三层网络上的组播地址的映射关 、 VM组播源地址与三层网络组播源地址的映射关 ;

VTEP接收其管理的 VM发送的组播报文,在确定所述 VM与所述 VM 租户标识匹配后对所述组播报文进行 XVLAN封装时, 根据所述 VM组播 地址与三层网络上的组播地址的映射关系将该 组播 ^艮文的源地址和目的地 址封装成三层网络上的组播地址, 根据 VM组播源地址与三层网络组播源 地址的映射关系将组播>¾文的 VXLAN源地址封装成三层网络组播源地址, 将封装后的组播报文发送给三层网络。

可选的, 所述方法还包括:

所述 VTEP接收其管理的 所述 VM发送的组播数据报文,在确定所述 VM与所述 VM租户标识匹配后对所述组播数据报文进行 XVLAN封装时 , 根据所述 VM组播地址与三层网络上的组播地址的映射关 将所述组播数 据报文的目的地址封装成三层网络上的组播地 址, 根据 VM组播源地址与 三层网络组播源地址的映射关系将所述组播数 据报文的 VXLAN源地址封 装成三层网络组播源地址, 将封装后的组播数据报文发送给三层网络。 可选的, 所述将封装后的组播数据报文发送给三层网络 之后, 所述方 法还包括: 在组播业务结束时, VTEP接收管理层发送的所述配置信息的删除命 , 并根据所述删除命令删除所述配置信息。

另一方面, 提供一种组播处理方法, 所述方法包括:

虚拟扩展局域网 VXLAN隧道端点 VTEP接收管理层发送的配置信息; 所述配置信息包括: VM租户标识、 VM组播地址与三层网络上的组播地址 的映射关系, VM组播源地址与三层网络组播源地址的映射关 ;

所述 VTEP接收其管理的 VM发送的加入 VM组播的 IGMP v3报文, 所述 IGMPv3报文携带 VM组播地址和 VM组播源地址;

所述 VTEP确定所述 VM与所述 VM租户标识匹配时, 根据所述 VM 组播地址与三层网络上的组播地址的映射关系 将该 IGMP v3报文内的 VM 组播地址修改成三层网络上的组播地址, 根据 VM组播源地址与三层网络 组播源地址的映射关系将 IGMP v3报文内的组播源地址修改成三层网络上 的组播源地址, 将修改后的 IGMP v3报文发送给三层网络。

可选的, 所述方法还包括:

所述 VTEP接收所述 VXLAN中其他 VTEP通过所述三层网络发送的 组播数据报文, 所述组播数据报文的源地址为所述三层网络上 的组播源地 址, 目的地址为所述三层网络上的组播地址;

所述 VTEP根据所述配置信息将所述组播数据报文解 装后获取所述 组播数据报文内的数据, 并将所述组播数据报文内的数据发送给所述 VM。

可选的, 所述将所述组播数据报文内的数据发送给所述 VM之后, 所 述方法还包括: 在组播业务结束时, VTEP接收管理层发送的所述配置信息的删除命 , 并根据所述删除命令删除所述配置信息。 下一方面, 提供一种组播处理装置, 所述组播处理装置包括: 接收单元, 用于接收管理层发送的配置信息; 所述配置信息包括: VM 租户标识、 VM组播地址与三层网络上的组播地址的映射关 、 VM组播源 地址与三层网络组播源地址的映射关系;

所述接收单元, 还用于接收其管理的 VM发送的组播报文;

封装单元, 用于在确定所述 VM与所述 VM租户标识匹配后对所述组 播报文进行 XVLAN封装时, 根据从所述接收单元处获取的所述 VM组播 地址与三层网络上的组播地址的映射关系将该 组播 ^艮文的源地址和目的地 址封装成三层网络上的组播地址, 根据从所述接收单元处获取的 VM组播 源地址与三层网络组播源地址的映射关系将所 述组播 ^艮文的 VXLAN源地 址封装成三层网络组播源地址;

发送单元, 用于将从所述封装单元处获取的封装后的组播 报文发送给 三层网络。

可选的, 所述接收单元, 还用于接收其管理的所述 VM发送的组播数 据报文;

所述封装单元, 还用于在确定所述 VM与所述 VM租户标识匹配后对 所述组播数据报文进行 XVLAN封装时, 根据所述 VM组播地址与三层网 络上的组播地址的映射关系将所述组播数据报 文的目的地址封装成三层网 络上的组播地址, 根据 VM组播源地址与三层网络组播源地址的映射关 将所述组播数据报文的 VXLAN源地址封装成三层网络组播源地址; 报文发送给三层网络。

可选的, 所述装置还包括: 删除单元, 用于在组播业务结束时, 接收管理层发送的所述配置信息 的删除命令, 并根据所述删除命令删除所述配置信息。

还一方面, 提供一种组播处理装置, 所述装置包括: 接收单元, 用于接收管理层发送的配置信息; 所述配置信息包括: VM 租户标识、 VM组播地址与三层网络上的组播地址的映射关 、 VM组播源 地址与三层网络组播源地址的映射关系;

所述接收单元,还用于接收其管理的 VM发送的加入 VM组播的 IGMP v3报文, 所述 IGMPv3报文携带 VM组播地址和 VM组播源地址;

修改单元 , 用于确定所述 VM与所述 VM租户标识匹配时, 根据从所 述接收单元处获取的所述 VM组播地址与三层网络上的组播地址的映射关 系将所述 IGMP v3 ^艮文内的 VM组播地址修改成三层网络上的组播地址, 根据从所述接收单元处获取的 VM组播源地址与三层网络组播源地址的映 射关系将 IGMP v3报文内的组播源地址修改成三层网络上的组 源地址; 发送单元, 用于将从修改单元处获取的修改后的 IGMP v3报文发送给 三层网络。

可选的, 所述装置还包括:

所述接收单元, 还用于接收所述 VXLAN中其他 VTEP通过所述三层 网络发送的组播数据报文, 所述组播数据报文的源地址为所述三层网络上 的组播源地址, 目的地址为所述三层网络上的组播地址;

解封装单元, 用于根据所述配置信息将从所述接收单元处获 取的所述 组播数据报文解封装后获取所述组播数据报文 内的数据;

发送单元, 用于将从所述接封装单元处获取的所述组播数 据报文内的 数据发送给所述 VM。

可选的, 还包括: 删除单元, 用于在组播业务结束时, 接收管理层发送的所述配置信息 的删除命令, 并根据所述删除命令删除所述配置信息。

最后一方面,提供一种组播处理系统,所述系 统包括:组播源侧 VTEP、 组播接收侧 VTEP和管理层;

其中, 组播源侧 VTEP和组播接收侧 VTEP分别用于接收管理层发送 的配置信息; 所述配置信息包括: VM租户 ID、 VM组播地址与三层网络 上的组播地址的映射关系、 VM组播源地址与三层网络组播源地址的映射关 系;

组播接收侧 VTEP, 还用于接收其管理的第一 VM发送的加入 VM组 播的 IGMP v3报文, 所述 IGMPv3报文携带 VM组播地址和 VM组播源地 址; 在确定所述第一 VM与所述 VM租户标识匹配时, 根据所述 VM组播 地址与三层网络上的组播地址的映射关系将所 述 IGMP v3 ^艮文内的 VM组 播地址修改成三层网络上的组播地址, 根据 VM组播源地址与三层网络组 播源地址的映射关系将 IGMP v3报文内的组播源地址修改成三层网络上的 组播源地址; 将修改后的 IGMP v3 4艮文发送给三层网络;

组播源侧 VTEP,还用于接收其管理的第二 VM发送的组播报文;在确 定所述第二 VM与所述 VM租户标识匹配后对所述组播报文进行 XVLAN 封装时, 根据所述 VM组播地址与三层网络上的组播地址的映射关 将该 组播 文的源地址和目的地址封装成三层网络上的组 播地址, 根据 VM组 播源地址与三层网络组播源地址的映射关系将 所述组播 4艮文的 VXLAN源 地址封装成三层网络组播源地址; 将封装后的组播报文发送给所述三层网 络。

可选的,所述组播源侧 VTEP,还用于接收其管理的所述第一 VM发送 的组播数据报文; 在确定所述第一 VM与所述 VM租户标识匹配后对所述 组播数据报文进行 XVLAN封装时, 根据所述 VM组播地址与三层网络上 的组播地址的映射关系将所述组播数据报文的 目的地址封装成三层网络上 的组播地址, 根据 VM组播源地址与三层网络组播源地址的映射关 将所 述组播数据报文的 VXLAN源地址封装成三层网络组播源地址; 将封装后 的组播数据报文发送给所述三层网络;

所述组播接收侧 VTEP, 还用于接收三层网络发送的所述组播数据报 文, 所述组播数据报文的源地址为三层网络上的组 播源地址, 目的地址为 三层网络上的组播地址; 根据所述配置信息所述组播数据报文解封装后 获 取所述组播数据报文内的数据; 将所述组播数据报文内的数据发送给所述 第二 VM。

可选的, 所述组播源侧 VTEP, 还用于在组播业务结束时, 接收管理层 发送的所述配置信息的删除命令, 并根据所述删除命令删除所述配置信息; 所述组播接收侧 VTEP,还用于在组播业务结束时,接收管理层发 的 所述配置信息的删除命令, 并根据所述删除命令删除所述配置信息。

在本发明实施例中, 本发明提供的技术方案具有使正确选择组播源 的 优点。 附图说明

图 1是现有技术提供的 VXLAN的组网结构图;

图 2是本发明具体实施方式提供的一种 VXLAN中组播处理方法的流 程图;

图 3是本发明具体实施方式提供的一种 VXLAN中处理组播处理方法 的流程图;

图 4是本发明具体实施方式提供的一种组播处理 置的结构图; 图 5是本发明具体实施方式提供的另一种组播处 装置的结构图; 图 6是本发明一实施例提供的 VXLAN的组网结构图;

图 7是本发明一实施例提供的 VXLAN中组播处理方法的流程图。 具体实施方式

为了使本发明的目的、 技术方案及优点更加清楚明白, 以下结合附图 及实施例, 对本发明进行进一步详细说明。 应当理解, 此处所描述的具体 实施例仅仅用以解释本发明, 并不用于限定本发明。

本发明具体实施方式提供一种 VXLAN 中组播处理的方法, 该方法如 图 2所示, 包括

本发明具体实施方式提供一种 VXLAN 中处理组播报文的方法, 该方 法如图 2所示, 包括

S21、 VXLAN隧道端点 VTEP接收管理层发送的配置信息; 所述配置 信息包括: VM租户标识、 VM组播地址与三层网络上的组播地址的映射关 系、 VM组播源地址与三层网络组播源地址的映射关 ;

522、 VTEP接收其管理的 VM发送的组播 4艮文;

523、在确定所述 VM与所述 VM租户标识匹配后对所述组播报文进行 XVLAN封装时,根据所述 VM组播地址与三层网络上的组播地址的映射关 系将该组播报文的源地址和目的地址封装成三 层网络上的组播地址, 根据 VM组播源地址与三层网络组播源地址的映射关 将组播 ^艮文的 VXLAN 源地址封装成三层网络组播源地址;

524、 VTEP将封装后的组播报文发送给三层网络。

S25、 VTEP接收其管理的 VM发送的组播数据报文;

S26、在确定所述 VM与所述 VM租户标识匹配后对所述组播数据报文 进行 XVLAN封装时, 根据所述 VM组播地址与三层网络上的组播地址的 映射关系将所述组播数据报文的目的地址封装 成三层网络上的组播地址, 根据 VM组播源地址与三层网络组播源地址的映射关 将所述组播数据报 文的 VXLAN源地址封装成三层网络组播源地址;

S27、 将封装后的组播数据报文发送给三层网络。

需要说明的是, 上述方法中的 S25-S27 属于可选步骤, S25-S27 属于 XVLAN环境中数据传输的操作, S21-S24属于 XVLAN环境中控制信令的 操作。

本发明具体实施方式提供的方法中, VTEP在接收到 VM发送的组播报 文时, 根据配置信息将该组播^艮文的 VM组播地址和 VM组播源地址替换 成三层网络上的组播组地址和三层网络上的组 播源地址, 这样三层网络就 根据该配置信息区分三层网络的组播源地址和 组播地址对应那个 VM(组播 源侧), 当组播接收侧的 VM发送加入 VM组播的 IGMP v3报文时(其中 携带了接收侧 VM所选择的 VM组播源 ), 组播接收侧 VTEP根据配置将 IGMP v3 ^艮文的源地址和目的地址修改为三层组播地 和组播源地址, 将 该 IGMP v3 ^艮文发送到三层网络上,这样三层网络就可 将组播源侧的 VM 与组播加入侧的 VM对应起来, 如三层网络接收到组播源侧发送的组播数 据报文, 将组播数据报文发送给 VTEP后, VTEP就能根据该配置信息判断 该组播数据报文是否属于其管理的 VM, 如是, 则解封装后发送, 如否, 直 接丟弃, 这样 VXLAN 中的组播客户端就可以选择组播源, 以达到正确的 过滤组播源的目的。

可选的, 上述方法在 S27之后还可以包括: 在组播业务结束时, VTEP接收管理层发送的所述配置信息的删除命 , 并根据所述删除命令删除所述配置信息。 可选的, 上述判断 VM是否与 VM租户标识匹配的具体方法可以为: 判 断 VM是否与 VM租户标识对应的运营商匹配, 如匹配, 则确定 VM与 VM租 户标识匹配, 否则为不匹配。 这里的 VM租户标识具体可以为: 中国移动的 VM租户标识或中国联通 VM租户标识,则 VTEP判断该 VM是否属于中国联通或中国移动即可获知该 VM是否与 VM租户标识匹配。

本发明实施例提供一种 VXLAN环境中组播处理方法, 该方法如图 3 所示, 包括如下步骤:

S31、第一 VTEP接收 Management Layer发送的配置信息; 所述配置信 息包括: VM租户 ID、 VM组播地址与三层网络上的组播地址的映射关 , VM组播源地址与三层网络组播源地址的映射关 ;

S32、 所述第一 VTEP接收其管理的 VM发送的加入 VM组播的 IGMP v3报文, 所述 IGMPv3报文携带 VM组播地址以及 VM组播源地址;

S33、所述第一 VTEP确定所述 VM与所述 VM租户标识匹配时(如确 定不匹配, 直接丟弃该 IGMPv3报文) , 所述第一 VTEP根据所述配置信 息将该 IGMP v3 ^艮文内的 VM组播地址修改成三层网络上的组播地址, 将 该 IGMP v3 ^艮文内的 VM组播源地址修改成三层网络上的组播源地址 将 修改后的 IGMP v3报文发送给三层网络。

534、 所述第一 VTEP接收所述第二 VTEP (这里的第二 VTEP也可以 为多个, 这里仅用一个举例说明)通过三层网络发送的 组播数据报文, 所 述组播数据报文的源地址为三层网络上的组播 源地址, 目的地址为三层网 络上的组播地址;

535、 所述第一 VTEP根据所述配置信息将所述组播数据报文解 装后 获取所述组播数据报文内的数据, 并将所述组播数据报文内的数据发送给 所述 VM。 具体来说, 所述第一 VTEP接收到所述第二 VTEP通过三层网络发送的组 播数据报文后,判断是否有其管理的 VM请求过所述组播数据报文,如果是, 则将所述组播数据报文根据所述配置信息解封 装, 获取所述组播数据报文 内的数据, 将所述组播数据报文内的数据发送给请求所述 组播数据报文的 VM租户; 如否, 丟弃所述组播数据报文。

所述第一 VTEP和第二 VTEP可以集成在服务器、 交换机或路由器上。 本发明具体实施方式提供方法, 第一 VTEP接收到组播接收侧的 VM 发送的加入 VM组播的 IGMP v3报文时(其中携带了接收侧 VM所选择的 VM组播源 ) , VTEP根据配置将 IGMP v3报文的源地址和目的地址修改为 三层组播地址和组播源地址, 将该 IGMP v3 ^艮文到三层网络上, 这样三层 网络就可以将组播源侧的 VM与组播加入侧的 VM对应起来, 如三层网络 接收到组播源侧发送的组播数据报文, 将组播数据报文发送给 VTEP后, VTEP就能根据该配置信息判断该组播数据报文 否属于其管理的 VM,如 是, 则解封装后发送, 如否, 直接丟弃, 这样对应的 VXLAN 中组播客户 端就可以选择组播源, 以达到正确的选择组播源的目的。 可选的, 上述方法在 S35之后还可以包括: 在组播完成后, 接收 Management Layer发送的上述配置信息的删除命 令, 并根据删除命令删除上述配置信息。

本发明具体实施方式还提供一种组播处理装置 , 该 VTEP如图 4所示, 包括:

接收单元 41 , 用于接收管理层发送的配置信息; 所述配置信息包括: VM租户标识、 VM组播地址与三层网络上的组播地址的映射关 、 VM组 播源地址与三层网络组播源地址的映射关系;

接收单元 41 , 还用于接收其管理的 VM发送的组播报文;

封装单元 42 , 用于在确定所述 VM与所述 VM租户标识匹配后对所述 组播报文进行 XVLAN封装且时,根据从接收单元 41处获取的所述 VM组 播地址与三层网络上的组播地址的映射关系将 该组播 ^艮文的源地址和目的 地址封装成三层网络上的组播地址,根据从接 收单元 41处获取的 VM组播 源地址与三层网络组播源地址的映射关系将所 述组播 ^艮文的 VXLAN源地 址封装成三层网络组播源地址;

发送单元 43 ,用于将从封装单元 42处获取的封装后的组播报文发送给 三层网络。

本发明具体实施方式提供的组播处理装置在接 收到 VM发送组播报文 时, 根据配置信息将该组播^艮文的 VM组播地址和 VM组播源地址替换成 三层网络上的组播组地址和三层网络上的组播 源地址, 这样三层网络就根 据该配置信息区分三层网络的组播源地址和组 播地址对应那个 VM(组播源 侧), 当组播接收侧的 VM发送加入 VM组播的 IGMP v3报文时(即发送 选源请求),组播接收侧 VTEP根据配置将 IGMP v3 文的源地址和目的地 址修改为三层组播地址和组播源地址, 将该 IGMP v3 ^艮文到三层网络上, 这样三层网络就可以将组播源侧的 VM与组播加入侧的 VM对应起来 , 如 三层网络接收到组播源侧发送的组播数据报文 , 将组播数据报文发送给组 播处理装置后, 组播处理装置就能根据该配置信息判断该组播 数据报文是 否属于其管理的 VM, 如是, 则解封装后发送, 如否, 直接丟弃, 这样对应 的 VXLAN 中组播客户端就可以选择组播源, 以达到正确的选择组播源的 目的。

可选的,接收单元 41 ,还用于接收其管理的 VM发送的组播数据报文; 封装单元 42 , 还用于在确定所述 VM与所述 VM租户标识匹配后对所 述组播数据报文进行 XVLAN封装时, 根据所述 VM组播地址与三层网络 上的组播地址的映射关系将所述组播数据报文 的目的地址封装成三层网络 上的组播地址, 根据 VM组播源地址与三层网络组播源地址的映射关 将 所述组播数据报文的 VXLAN源地址封装成三层网络组播源地址;

发送单元 43 ,还用于将从封装单元 42处获取的封装后的组播数据报文 发送给三层网络。

可选的, 上述组播处理装置还可以包括: 删除单元 44, 用于在组播业务结束时, 接收管理层发送的所述配置信 息的删除命令, 并根据所述删除命令删除所述配置信息。

本发明具体实施方式还提供另一种组播处理装 置, 该 VTEP如图 5所 示, 包括:

接收单元 51 , 用于接收管理层发送的配置信息; 所述配置信息包括: VM租户标识、 VM组播地址与三层网络上的组播地址的映射关 、 VM组 播源地址与三层网络组播源地址的映射关系;

接收单元 51 ,还用于接收其管理的 VM发送的加入 VM组播的 IGMP v3 报文, 所述 IGMPv3报文携带 VM组播地址和 VM组播源地址;

修改单元 52, 用于确定所述 VM与所述 VM租户标识匹配时, 根据从 接收单元 51处获取的所述 VM组播地址与三层网络上的组播地址的映射关 系将所述 IGMP v3 ^艮文内的 VM组播地址修改成三层网络上的组播地址, 根据从接收单元 51处获取的 VM组播源地址与三层网络组播源地址的映射 关系将 IGMP v3报文内的组播源地址修改成三层网络上的组 源地址; 发送单元 53 , 用于将从修改单元 52处获取的修改后的 IGMP v3报文 发送给三层网络。

本发明具体实施方式提供组播处理装置接收到 组播接收侧的 VM发送 加入 VM组播的 IGMP v3 ^艮文时(即发送选源请求 ),组播处理装置根据配 置将 IGMP v3 文的源地址和目的地址修改为三层组播地址和 组播源地 址, 将该 IGMP v3 ^艮文到三层网络上, 这样三层网络就可以将组播源侧的 VM与组播加入侧的 VM对应起来, 如三层网络接收到组播源侧发送的组 播数据报文, 将组播数据报文发送给组播处理装置后, 组播处理装置就能 根据该配置信息判断该组播数据报文是否属于 其管理的 VM,如是,则解封 装后发送, 如否, 直接丟弃, 这样对应的 VXLAN 中组播客户端就可以选 择组播源, 以达到正确的选择组播源的目的。

可选的, 接收单元 51 , 还用于接收 VXLAN中其他组播处理装置通过 三层网络发送的组播数据报文, 所述组播数据报文的源地址为三层网络上 的组播源地址, 目的地址为三层网络上的组播地址;

解封装单元 54,用于根据所述配置信息将从接收单元 51处获取的所述 组播数据报文解封装后获取所述组播数据报文 内的数据;

发送单元 53 ,用于将从接封装单元 54处获取的所述组播数据报文内的 数据发送给所述 VM。

可选的, 上述组播处理装置还可以包括: 删除单元 55, 用于在组播业务结束时, 接收管理层发送的所述配置信 息的删除命令, 并根据所述删除命令删除所述配置信息。

本发明具体实施方式还提供一种组播处理系统 , 该处理系统包括: 组 播源侧 VTEP、 组播接收侧 VTEP和管理层;

其中, 组播源侧 VTEP和组播接收侧 VTEP分别用于接收管理层发送 的配置信息; 所述配置信息包括: VM租户 ID、 VM组播地址与三层网络 上的组播地址的映射关系、 VM组播源地址与三层网络组播源地址的映射关 系;

组播源侧 VTEP,还用于接收其管理的第一 VM发送的组播报文;在确 定所述第一 VM与所述 VM租户标识匹配后对所述组播报文进行 XVLAN 封装且时, 根据所述 VM组播地址与三层网络上的组播地址的映射关 将 该组播报文的源地址和目的地址封装成三层网 络上的组播地址, 根据 VM 组播源地址与三层网络组播源地址的映射关系 将所述组播 ^艮文的 VXLAN 源地址封装成三层网络组播源地址; 将封装后的组播报文发送给三层网络; 组播接收侧 VTEP, 还用于接收其管理的第二 VM发送的加入 VM组 播的 IGMP v3报文, 所述 IGMPv3报文携带 VM组播地址和 VM组播源地 址; 确定所述 VM与所述 VM租户标识匹配时, 根据所述 VM组播地址与 三层网络上的组播地址的映射关系将所述 IGMP v3 ^艮文内的 VM组播地址 修改成三层网络上的组播地址, 根据 VM组播源地址与三层网络组播源地 址的映射关系将 IGMP v3报文内的组播源地址修改成三层网络上的组 源 地址; 将修改后的 IGMP v3 4艮文发送给三层网络。

可选的,所述组播源侧 VTEP,还用于接收其管理的第一 VM发送的组 播数据报文; 在确定所述 VM与所述 VM租户标识匹配后对所述组播数据 报文进行 XVLAN封装时, 根据所述 VM组播地址与三层网络上的组播地 址的映射关系将所述组播数据报文的目的地址 封装成三层网络上的组播地 址, 根据 VM组播源地址与三层网络组播源地址的映射关 将所述组播数 据报文的 VXLAN源地址封装成三层网络组播源地址; 将封装后的组播数 据报文发送给三层网络;

所述组播接收侧 VTEP, 还用于接收三层网络发送的所述组播数据报 文, 所述组播数据报文的源地址为三层网络上的组 播源地址, 目的地址为 三层网络上的组播地址; 根据所述配置信息所述组播数据报文解封装后 获 取所述组播数据报文内的数据; 将所述组播数据报文内的数据发送给所述 第二 VM。

可选的, 所述组播源侧 VTEP, 还用于在组播业务结束时, 接收管理层 发送的所述配置信息的删除命令, 并根据所述删除命令删除所述配置信息; 所述组播接收侧 VTEP,还用于在组播业务结束时,接收管理层发 的 所述配置信息的删除命令, 并根据所述删除命令删除所述配置信息。

实施例 本发明一实施例提供一种 VXLAN环境中处理 IGMPv3报文的方法, 该 方法的组网场景如图 6所示,其中如图 6所示的所有的 VM归属于 VNI22,当然 在实际情况中, 上述 VNI22也可以更改成其他的 VNI, 例如 VNI 21。 如图 4 所示, VMl-l和VMl-2为组播地址为224.1.1.1 (这里的组播地址仅仅是为了 方便说明进行的举例, 在实际情况中, 也可以为其他的组播地址) 的两个 不同的组播源,并且都在 SERVER1上, VM1-1发送( S,G )=(1.1.1.1 , 224.1.1.1) 的组播报文, VM1-2发送(S,G ) =(1.1.1.2, 224.1.1.1)的组播报文, 另外还 有一个组播组地址为 224.1.1.1的组播源 VM2- 1在 SERVER2上,它发送( S,G ) =(1.1.2.1 , 224.1.1.1)的组播报文。 如上所述, 这三个 VM都在发送组播地址 为 224.1.1.1的组播报文, 其中 VM1-1和 VM1-2位于同一个 SERVER1上。 本 实施例中的 VM5-1、 VM6-l和VM6-2需要加入组播组224.1.1.1 , 但是 VM5-1 需要加入组播源为 1.1.2.1的组播组, VM6-1需要加入组播源为 1.1.1.1的组播 组, VM6-2需要加入组播源为 1.1.1.2的组播组, 本实施例提供的方法如图 7 所示, 包括:

S71、 Management Layer发送配置信息给 VNI22的所有 VTEP; 上述配置信息具体可以为: "VNI22 ( 1.1.1.1 , 224.1.1.1 ) <―— > ( 2.2.2.2, 225.10.5.5 )

"VNI22 : ( 1.1.1.2 , 224.1.1.1 ) <—— > ( 2.2.2.3 , 225.10.5.5 ) "

"VNI22 : ( 1.1.2.1 , 224.1.1.1 ) <—— > ( 2.2.2.4, 225.10.5.5 ) " 其中, l.l.l.l表示VMl-l的组播源地址, 1.1.1.2表示VMl-2的组播源地 址; 1.1.2.1表示 VM2-1的组播源地址; 224.1.1.1表示 VM组播地址; <—— > 表示映射关系, 225.10.5.5表示 VM组播地址 224.1.1.1在三层网络( Layer3 Network )映射的组播地址, 2.2.2.2表示 VM1-1的组播源地址 1.1.1.1在三层 网络( Layer3 Network ) 映射的组播源地址; 2.2.2.3表示 VM1-2的组播源地 址 1.1.1.2在三层网络( Layer3 Network ) 映射的组播源地址; 2.2.2.4表示 VM2-1的组播源地址 1.1.2.1在三层网络( Layer3 Network ) 映射的组播源地 址;

572、 VTEP ( IP5 )接收 VM5-1发送的加入组播的 IGMPv3报文(该报文 内包含的 VM组播源地址为 1.1.2.1 , VM组播组地址 224.1.1.1 ) , VTEP ( IP6 ) 接收 VM6-1发送的加入组播的 IGMPv3报文( VM组播源地址为 1.1.1.1 , VM 组播地址为 224.1.1.1 ) , VTEP ( IP6 )接收 VM6-2发送的加入组播的 IGMPv3 报文( VM组播源地址为 1.1.1.2 , VM组播地址为 224.1.1.1 ) ; 需要说明的是, 上述加入组播的 IGMPv3报文的具体格式如下:

"VM5-1 : IGMPv3: JOIN 1.1.2.1, 224.1.1.1"

"VM6-1 : IGMPv3: JOIN 1.1.1.1, 224.1.1.1" "VM6-2 : IGMPv3: JOIN 1.1.1.2, 224.1.1.1"

573、 VTEP ( IP5 )根据上述配置信息将 IGMPv3: JOIN 1.1.2.1, 224.1.1.1 修改成 IGMPv3: JOIN 2.2.2.4, 225.10.5.5; VTEP ( IP6 )根据上述配置信息将 IGMPv3: JOIN 1.1.1.1, 224.1.1.1修改成 IGMPv3: JOIN 2.2.2.2, 225.10.5.5; VTEP ( IP6 )根据上述配置信息将 IGMPv3: JOIN 1.1.1.2, 224.1.1.1修改成 IGMPv3: JOIN 2.2.2.3, 225.10.5.5。 本发明实施例提供的 VM向 VTEP发送加入组播 IGMPv3报文加入组播 后, VTEP将加入组播 IGMPv3报文根据配置信息对 IGMPv3报文的 VM组播 地址和 VM组播源地址修改后发送给三层网络, 三层网络就会获知 VTEP所 请求加入的组播源, 当接收到对应组播源的组播 4艮文时, 三层网络就会将 该组播报文发送到对应的 VTEP上, VTEP根据代理的 VM情况, 将 VXLAN 解封装后, 发送到对应的 VM上。 这样对应的 VXLAN中组播客户端就可以 选择组播源, 以达到正确的选择组播源的目的。

上述单元和系统实施例中, 所包括的各个模块或单元只是按照功能逻 辑进行划分的, 但并不局限于上述的划分, 只要能够实现相应的功能即可; 另外, 各功能模块的具体名称也只是为了便于相互区 分, 并不用于限制本 发明的保护范围。

本领域技术人员可以理解, 本发明实施例提供的技术方案全部或部分 步骤是可以通过程序指令相关的硬件来完成。 比如可以通过计算机运行程 来完成。 该程序可以存储在可读取存储介质, 例如, 随机存储器、 磁盘、 光盘等。

以上所述仅为本发明的较佳实施例而已, 并不用以限制本发明, 凡在 本发明的原则之内所作的任何修改、 等同替换和改进等, 均应包含在本发 明的保护范围之内。