CN102215172A - 一种实现跨虚拟专用局域网组播的方法和系统 - Google Patents
一种实现跨虚拟专用局域网组播的方法和系统 Download PDFInfo
- Publication number
- CN102215172A CN102215172A CN2011101679302A CN201110167930A CN102215172A CN 102215172 A CN102215172 A CN 102215172A CN 2011101679302 A CN2011101679302 A CN 2011101679302A CN 201110167930 A CN201110167930 A CN 201110167930A CN 102215172 A CN102215172 A CN 102215172A
- Authority
- CN
- China
- Prior art keywords
- multicast
- user
- vfi
- group
- multicast group
- 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
Images
Landscapes
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本发明公开了一种实现跨虚拟专用局域网组播的方法和系统,可配置组播组、组播源和组播VFI的映射关系;根据所述映射关系查找组播用户所请求的组播组所属的组播VFI;根据查找到的组播VFI维护组播转发表。本发明方法和系统,可以在二层网络设备中实现跨VFI组播,并可以准确区分用户请求的组播源和组播VFI的组播组,从而解决当组播用户点播同一个组播组的不同组播源的组播数据时,组播数据流无法准确转发给组播用户的问题;有效降低了组播源服务器复制组播数据流的网络负载和系统开销,提高了网络设备的带宽利用率等性能;并且,通过组播组、组播源映射到相应的组播VFI,保证了组播数据流传输的准确性。
Description
技术领域
本发明涉及通信领域,具体涉及一种实现跨虚拟专用局域网组播的方法和系统。
背景技术
VPN(Virtual Private Network,虚拟专用网)是一种利用公网资源来建立专用通信网络的技术,用于实现远程的广域连接。VPLS(Virtual Private Lan Service,虚拟专用网服务)是基于MPLS(Multi-Protocol Label Switch,多协议标签交换)/IP网络和以太网技术的二层虚拟专用局域网技术,属于L2VPN(Layer 2 Virtual Private Network,二层虚拟专用网)。VPLS使处于不同站点的用户通过广域网或城域网连接,由此形成虚拟的局域网,每个虚拟局域网称为VFI(Virtual Forward Instance,虚拟转发实例)。VPLS能够有效地连接各个接入点,并在网络拓扑上实现点到点、点到多点、多点到多点的以太网业务。
由于组播技术实现了IP网络中点到多点的高效数据传送,能够有效地节约网络带宽,并降低网络负载,所以在实时数据传送、多媒体会议、数据拷贝、游戏和仿真等诸多方面都有广泛的应用。同时,随着VPLS技术的应用和普及,越来越多的运营商采用VPLS技术为用户提供组播业务;而且在实际的网络应用中,组播用户和组播源往往不在同一个虚拟专用局域网内,如视频会议、安全监控等,因此如何实现跨虚拟专用局域网的组播业务是一个必须解决的重要问题。
现有技术中,常用的一种技术是基于组播组的跨VFI组播,即指定组播组所接入的组播VFI,如图1所示,所述二层网络设备接收到组播用户1和组播用户点播同一个组播组的加入报文时,只通过组播VFI1通知上游网络设备(如二层网络设备和/或三层网络设备)。这样,上游网络设备只复制一份组播数据流到二层网络设备,由二层网络设备通过跨VFI复制两份拷贝给相应的用户。上述现有技术的应用场景是二层网络设备上的用户只点播一个组播源所提供的组播数据。
但是,在有些应用场景下,二层网络设备需要支持多个组播源的组播复制,并且,对于同一个组播组可以有不同组播源,不同组播源所属的组播VFI是不同的,所以不同组播数据流的组播VFI也是不相同的。由于存在多个组播源,二层网络设备上组播用户可能会点播不同组播源的数据,如在支持SSM(Specific Source Multicast,特定源组播)或因特网组管理协议版本3(IGMP v3Internet Group Management Protocol Version 3)的网络环境中,用户可以指定组播源点播组播组的数据流,即用户所加入的组播组相同,但是请求的组播源不同;因此,用户所加入的组播组可能会属于不同的VFI。对于这种基于组播源的跨VFI组播场景,利用上述现有技术将无法实现。
发明内容
有鉴于此,本发明的主要目的在于提供一种实现跨虚拟专用局域网组播的方法和系统,以解决组播用户和组播源在不同的虚拟专用局域网中,且一个组播组有多个组播源时,由于无法实现跨VFI转发,导致同一组播源复制多份组播数据流,造成带宽资源浪费的问题。
为解决上述问题,本发明的技术方案是这样实现的:
一种实现跨虚拟专用局域网组播的方法,该方法包括:
配置组播组、组播源和组播虚拟转发实例VFI的映射关系;根据所述映射关系查找组播用户所请求的组播组所属的组播VFI;根据查找到的组播VFI维护组播转发表。
所述配置组播组、组播源和组播VFI的映射关系的过程包括:
先配置组播源和访问控制列表ACL绑定,然后再将组播组和ACL以及组播VFI绑定,从而将组播组、组播源和组播VFI绑定。
维护所述组播转发表时,根据配置信息以及接收到的组播用户的加入和/或离开请求,创建、删除或更新组播转发表,该过程包括:
接收组播用户的加入和/或离开报文并解析,根据所解析到的组播组地址、组播源地址以及配置信息,创建、删除或更新组播转发表。
所述根据所解析到的组播组地址、组播源地址以及配置信息,创建、删除或更新组播转发表的过程包括:
根据从所述加入报文中解析到的组播源地址,查找组播源所属的ACL,然后再根据查找到的ACL及组播组地址,查找所对应的组播VFI;如果查找不到,则认为该用户加入报文为非法报文,直接丢弃;
接收到组播用户的加入报文时,如果用户所请求的组播组不存在,创建组播转发表;如果组播组存在,则更新组播转发表;
接收到组播用户的离开报文时,如果用户存在,则更新组播转发表;如果所述组播组中没有其它用户点播,则删除组播转发表中的组播组条目。
所述创建组播转发表的过程包括:
将所述组播组加入到所查找到的组播VFI中,将所解析到的用户端口及用户VFI添加到所述组播组中,建立用户VFI和组播VFI的映射关系;
所述更新组播转发表的过程包括:
根据解析到的组播组地址和组播VFI,查找组播组是否存在,如果组播组不存在,则执行创建组播转发表流程;如果组播组存在,则根据解析到的用户端口及用户VFI查找组播用户是否存在,如果组播用户不存在,则将所述用户端口及用户VFI添加到所述组播组的出接口中;如果组播用户已经存在,则不处理;
接收到组播用户的离开报文时,根据组播组、组播源信息,查找到该组播用户所加入的组播VFI,如果查找到,则将组播用户端口及用户VFI从组播组的出端口中删除;如果查找不到,则不处理;
所述删除组播转发表的过程包括:
将所述组播用户端口从所述组播组中删除后,查找该组播组中是否还有其它用户,如果没有,则将该组播组条目删除;如果还有其它用户点播,则不能删除。
还包括组播VFI和加入/离开报文中的用户VFI的转换过程:
二层网络设备收到组播加入和/或离开报文时,将组播用户加入报文和/或离开报文中的用户VFI替换成组播VFI,并向组播源方向的上游网络设备转发;
并且,所述二层网络设备接收到组播数据流后,根据所述组播转发表中用户VFI和组播VFI的映射关系,将该组播流的组播VFI转换为对应的用户VFI,并通过用户VFI中的用户端口将所述组播组数据流转发给用户;
所述二层网络设备,指用户侧与组播用户相连的接入设备;所述上游网络设备,指网络侧与组播源相连的路由设备。
一种实现跨虚拟专用局域网组播的系统,该系统包括组播VFI配置和显示模块、组播VFI查找模块、组播用户管理模块;其中,
所述组播VFI配置和显示模块,用于配置组播组、组播源和组播VFI的映射关系;
所述组播VFI查找模块,用于根据所述映射关系查找组播用户所请求的组播组所属的组播VFI;
所述组播用户管理模块,用于根据查找到的组播VFI维护组播转发表。
所述组播用户管理模块组播VFI配置和显示模块,在配置组播组、组播源和组播VFI的映射关系时,用于:
先配置组播源和ACL绑定,然后再将组播组和ACL以及组播VFI绑定,从而将组播组、组播源和组播VFI绑定。
所述组播用户管理模块,在维护所述组播转发表时,用于根据配置信息以及接收到的组播用户的加入和/或离开请求,创建、删除或更新组播转发表:
接收组播用户的加入和/或离开报文并解析,根据所解析到的组播组地址、组播源地址以及配置信息,创建、删除或更新组播转发表。
所述组播用户管理模块,根据所解析到的组播组地址、组播源地址以及配置信息,创建、删除或更新组播转发表时,用于:
根据从所述加入报文中解析到的组播组地址,查找组播源所属的ACL,然后再根据查找到的ACL及组播组地址,查找所对应的组播VFI;如果查找不到,则认为该用户加入报文为非法报文,直接丢弃;
接收到组播用户的加入报文时,如果用户所请求的组播组不存在,创建组播转发表;如果组播组存在,则更新组播转发表;
接收到组播用户的离开报文时,如果用户存在,则更新组播转发表;如果所述组播组中没有其它用户点播,则删除组播转发表中的组播组条目。
所述组播用户管理模块,在创建组播转发表时用于:
将所述组播组加入到所查找到的组播VFI中,将所解析到的用户端口及用户VFI添加到所述组播组中,建立用户VFI和组播VFI的映射关系;
所述组播用户管理模块,在更新组播转发表时用于:
根据解析到的组播组地址和组播VFI,查找组播组是否存在,如果组播组不存在,则执行创建组播转发表流程;如果组播组存在,则根据解析到的用户端口及用户VFI查找组播用户是否存在,如果组播用户不存在,则将所述用户端口及用户VFI添加到所述组播组的出接口中;如果组播用户已经存在,则不处理;
接收到组播用户的离开报文时,根据组播组、组播源信息,查找到该组播用户所加入的组播VFI,如果查找到,则将组播用户端口及用户VFI从组播组的出端口中删除;如果查找不到,则不处理;
所述组播用户管理模块,在删除组播转发表时用于:
将所述组播用户端口从所述组播组中删除后,查找该组播组中是否还有其它用户,如果没有,则将该组播组条目删除;如果还有其它用户点播,则不能删除。
该系统还包括组播报文发送模块,用于进行组播VFI和加入/离开报文中的用户VFI的转换过程:
收到组播加入和/或离开报文时,将组播用户加入报文和/或离开报文中的用户VFI替换成组播VFI,并向组播源方向的上游网络设备转发;
并且,接收到组播数据流后,根据所述组播转发表中用户VFI和组播VFI的映射关系,将该组播流的组播VFI转换为对应的用户VFI,并通过用户VFI中的用户端口将所述组播组数据流转发给用户;
所述上游网络设备,指网络侧与组播源相连的路由设备。
本发明方法和系统,可以在二层网络设备中实现跨VFI组播,并可以准确区分用户请求的组播源和组播VFI的组播组,从而解决当组播用户点播同一个组播组的不同组播源的组播数据时,组播数据流无法准确转发给组播用户的问题;有效降低了组播源服务器复制组播数据流的网络负载和系统开销,提高了网络设备的带宽利用率等性能;并且,通过组播组、组播源映射到相应的组播VFI,保证了组播数据流传输的准确性。
附图说明
图1为现有技术中实现跨虚拟专用局域网组播的组网示意图;
图2为本发明实施例实现跨虚拟专用局域网组播的组网示意图;
图3为本发明实施例配置组播组、组播源和组播VFI之间映射关系的流程图;
图4a和图4b为本发明实施例的组播组、组播源和组播VFI的映射关系表的示意图;
图5为本发明实施例的二层网络设备处理用户加入报文的流程图;
图6为本发明实施例的二层网络设备处理用户离开报文的流程图;
图7为本发明实施例实现跨虚拟专用局域网组播的流程简图;
图8为本发明实施例实现跨虚拟专用局域网组播的系统图。
具体实施方式
为了实现跨虚拟专用局域网组播,可以执行如下步骤:
1)在二层网络设备上配置组播组、组播源和组播VFI(组播虚拟转发实例)的映射关系。
2)所述二层网络设备根据接收到的组播用户的加入和/或离开报文,根据配置信息创建、删除或更新组播转发表。
3)所述二层网络设备根据配置的组播VFI信息,将组播用户的加入和/或离开报文发送给上游网络设备(如二层网络设备和/或三层网络设备)。
4)所述二层网络设备根据所述组播转发表进行组播数据流的转发。
所述二层网络设备,指用户侧与组播用户相连的接入设备,可以是二层交换机等。所述上游网络设备,指网络侧与组播源相连的路由设备,可以是路由器等。
进一步地,在二层网络设备上配置组播组、组播源和组播VFI的映射关系时,可以先配置组播源和ACL(Access Control List,访问控制列表)绑定,然后再将组播组和ACL以及组播VFI绑定,从而将组播组、组播源和组播VFI绑定。在所述二层网络设备上配置组播组和ACL以及组播VFI绑定时,可以给组播组、组播源所属的ACL配置对应的组播VFI,从而实现组播组、组播源和组播VFI的映射关系。
所述二层网络设备根据接收到组播用户的加入和/或离开请求,以及所述配置信息,创建、删除或更新组播转发表时,可以进行如下操作:
所述二层网络设备接收组播用户的加入和/或离开报文。
所述二层网络设备对接收到的组播用户的加入和/或离开报文进行解析。
所述二层网络设备根据所解析到的组播组地址、组播源地址以及配置信息,创建、删除或更新组播转发表。
所述二层网络设备实现用户VFI和组播VFI的转换。
进一步地,所述二层网络设备对接收到的组播用户的加入和/或离开报文进行解析,解析的信息主要包括:收到报文的用户端口、端口所属的用户VFI、组播组地址、组播源地址等。
进一步地,所述二层网络设备根据所解析到的组播组地址、组播源地址以及所述配置信息,创建、删除或更新组播转发表,包括:
所述二层网络设备接收到组播用户的加入报文时,如果用户所请求的组播组不存在,会创建组播转发表;如果组播组存在,则会更新组播转发表。
所述二层网络设备接收到组播用户的离开报文时,如果用户存在,则会更新组播转发表;如果所述组播组中没有其它用户点播,则会删除组播转发表中的组播组条目。
进一步地,所述二层网络设备根据所解析到的组播组地址、组播源地址以及所述配置信息,创建、删除或更新组播转发表,包括:
根据所述加入报文中解析到的组播源地址,查找组播源所属的ACL,然后再根据查找到的ACL及组播组地址,查找所对应的组播VFI。如果查找不到,则认为该用户加入报文为非法报文,直接丢弃。
进一步地,所述二层网络设备根据所解析到的组播组地址、组播源地址以及所述配置信息,创建组播转发表,包括:
将所述组播组加入到所查找到的组播VFI中,将所解析到的用户端口及用户VFI添加到所述组播组中,建立用户VFI和组播VFI的映射关系。
进一步地,所述二层网络设备根据所解析到的组播组地址、组播源地址以及所述配置信息,更新组播转发表,包括:
所述二层网络设备根据解析到的组播组地址和组播VFI,查找组播组是否存在,如果组播组不存在,则执行创建组播转发表流程;如果组播组存在,则根据解析到的用户端口及用户VFI查找组播用户是否存在,如果组播用户不存在,则将所述用户端口及用户VFI添加到所述组播组的出接口中;如果组播用户已经存在,则不处理;
所述二层网络设备接收到组播用户的离开报文时,根据组播组、组播源信息,查找到该组播用户所加入的组播VFI,如果查找到,则将组播用户端口及用户VFI从组播组的出端口中删除;如果查找不到,则不处理。
进一步地,所述二层网络设备根据所解析到的组播组地址、组播源地址以及所述配置信息,删除组播转发表,包括:
所述二层网络设备将所述组播用户端口从所述组播组中删除后,查找该组播组中是否还有其它用户,如果没有,则将该组播组条目删除;如果还有其它用户点播,则不能删除。
进一步地,所述二层网络设备实现用户VFI和组播VFI的转换包括:
所述二层网络设备收到组播加入和/或离开报文时,将组播用户加入报文和/或离开报文中的用户VFI替换成组播VFI,并向组播源方向的上游网络设备转发。并且,所述二层网络设备接收到组播数据流后,根据所述组播转发表中用户VFI和组播VFI的映射关系,将该组播流的组播VFI转换为对应的用户VFI,并通过用户VFI中的用户端口将所述组播组数据流转发给用户。
另外,为了实现跨虚拟专用局域网组播,还可以应用包括组播VFI配置和显示模块、组播VFI查找模块、组播用户管理模块的系统。当然,还可以包括组播报文发送模块。
所述组播VFI配置和显示模块,用于配置组播组、组播源和组播VFI的映射关系,如:通过配置命令绑定组播组、组播源和组播VFI的映射关系,并查看所配置的信息。
所述组播VFI查找模块,用于根据所述映射关系查找组播用户所请求的组播组所属的组播VFI,如:根据组播用户的加入和/或离开请求报文中的组播组地址和组播源地址,查找所对应的组播VFI。
所述组播用户管理模块,用于根据查找到的组播VFI维护组播转发表,如:对接收到的组播用户的加入和/或离开请求消息进行解析处理,并根据解析后的内容与配置信息,创建、删除或更新组播转发表。
所述组播报文发送模块,用于当二层网络设备收到组播用户的加入和/或离开报文时,根据报文中的组播组地址和组播源地址查找组播VFI,然后将组播用户的加入和/或离开报文中的用户VFI替换成组播VFI,并转发给上游设备;以及当二层网络设备接收到上游设备的组播数据流时,根据所维护的组播转发表,将组播VFI替换成用户VFI,并转发给点播的用户端口。
下面结合附图和具体实施实施例对本发明的技术方案进一步详细阐述。
图2为实现跨VFI组播的组网示意图,图2所示的网络包括组播源服务器201、组播源服务器202、上游网络设备203,二层网络设备204、组播用户205和组播用户206。其中,组播源服务器201和组播源服务器202是两个不同的组播源,但是具有相同组播组的组播数据流。
所述跨虚拟专用局域网组播的实现方式如下:在所述二层网络设备上配置组播组、组播源和组播VFI的映射关系,包括:组播组、组播源、以及所对应的组播VFI;当所述二层网络设备接收到组播用户的加入和/或离开报文时,所述二层网络设备根据用户加入和/或离开报文中的组播组地址和组播源地址,将加入和/或离开报文中的VFI替换成组播VFI,并转发给上游网络设备;当所述二层网络设备接收到组播数据流时,根据所述组播转发表中的组播组、组播源及组播VFI,将组播数据流的组播VFI转换成用户VFI,并转发给点播的用户。
图3是本发明实施例配置组播组、组播源和组播VFI的映射关系的方法流程图,图4a和图4b为本发明实施例的组播组、组播源和组播VFI的映射关系表。下面结合图3和图4,对本发明配置组播组、组播源和组播VFI的映射关系的过程进行详细说明,该过程主要包括以下步骤:
步骤301:配置组播组、组播源和组播VFI的映射关系,如:在二层网络设备上配置组播组、组播源和组播VFI的映射关系,这里以组播组225.1.1.1为例,有两个组播源1.1.1.1和2.2.2.2,对应的组播VFI分别为VFI1和VFI2。
步骤302:配置组播源和ACL绑定,如:在所述二层网络设备上配置组播源1.1.1.1和ACL1绑定,组播源2.2.2.2和ACL2绑定。由于一个组播组会有多个组播源,而一部分组播源的组播VFI是相同的,另一部分组播源的组播VFI是相同的;因此,将组播源和ACL绑定。
步骤303:配置组播组、ACL和组播组VFI绑定,如:在所述二层网络设备上配置组播组225.1.1.1,ACL1和组播VFI1绑定,配置组播组225.1.1.1,ACL2和组播VFI2绑定。
步骤304:实现组播组、组播源和组播VFI的绑定,如:所述二层网络设备上实现了组播组、组播源和组播VFI的绑定,绑定的映射关系如图4a和图4b所示。
其中,根据图4a可知,ACL1包括组播源1.1.1.1-1.1.1.10,ACL2包括组播源2.2.2.2-2.2.2.10;根据图4b可知,组播组225.1.1.1和ACL1对应的组播VFI为VFI1,组播组225.2.2.2和ACL2对应的组播VFI为VFI2;根据图4a和图4b可知,根据映射关系,当用户点播组播源1.1.1.1-1.1.1.10的组播组225.1.1.1时,对应的组播VFI为VFI1,点播组播源2.2.2.2-2.2.2.10的组播组225.2.2.2时,对应的组播VFI为VFI2。
图5是本发明实施例的二层网络设备处理用户加入报文的方法流程图,下面结合图5,对本发明实施例的实现过程进行详细说明,该过程主要包括以下步骤:
步骤501:二层网络设备接收到组播组225.1.1.1的用户加入报文。
步骤502:所述二层网络设备解析接收到的组播组加入报文,据此获知点播的用户分别为用户1和用户2,用户VFI分别为VFI3和VFI4,用户点播的组播源地址分别为1.1.1.1和2.2.2.2。
步骤503:所述二层网络设备根据组播组和组播源,查找组播用户所接入的组播VFI,据此获知用户1和用户2分别接入组播VFI1和组播VFI2。如果此时没有配置相应的组播VFI,则查找失败,执行步骤506;如果查找到组播VFI,则执行步骤504。
步骤504:所述二层网络设备根据用户加入报文中的组播组、组播源、查找到的组播VFI,查找组播组是否存在,如果不存在,则创建组播组条目,并添加到组播转发表中,对应的组播组条目分别为(225.1.1.1,VFI1,1.1.1.1)和(225.1.1.1,VFI2,2.2.2.2);如果组播组条目已经存在,则执行步骤505;
步骤505:所述二层网络设备根据用户加入报文中的组播组、组播源、查找到的组播VFI、组播用户端口和用户VFI,查找组播用户是否存在,如果不存在,则更新组播转发表,将组播用户添加到组播组的出端口中,对应的组播条目(其中只描述主要的组播条目信息)分别为(225.1.1.1,VFI1,1.1.1.1,用户1,VFI3)和(225.1.1.1,VFI2,2.2.2.2,用户2,VFI4);如果组播用户已经存在,则不处理;执行步骤507;
步骤506:组播报文非法,丢弃不处理。流程结束。
步骤507:如果请求加入的组播用户为组播组中点播组播源的第一个用户,所述二层网络设备将用户加入报文中的VFI3和VFI4分别替换成组播VFI1和组播VFI2,并发送给上游网络设备。
步骤508:所述二层网络设备接收到组播数据流时,根据组播组转发表项,将组播VFI1和组播VFI2分别替换成用户VFI3和用户VFI4,并分别转发给组播用户1和组播用户2。
图6是本发明实施例的二层网络设备处理用户离开报文的方法流程图,下面结合图6,对本发明实施例的实现过程进行详细说明,该过程主要包括以下步骤:
步骤601:二层网络设备接收到组播组225.1.1.1的用户离开报文。
步骤602:所述二层网络设备解析接收到的组播组离开报文,据此获知请求离开的用户分别为用户1和用户2,用户VFI分别为VFI3和VFI4,用户请求离开的组播源地址分别为1.1.1.1和2.2.2.2。
步骤603:所述二层网络设备根据组播组和组播源,查找组播组所属的组播VFI,根据配置信息获知用户离开的组播组对应的组播VFI分别为组播VFI1和组播VFI2;如果此时没有相应的配置信息,则查找失败,执行步骤606;如果查找到组播VFI,则执行步骤604。
步骤604:所述二层网络设备根据用户离开报文中的组播组、组播源、查找到的组播VFI,查找组播组是否存在,如果存在,则执行步骤605;如果不存在,则不处理;
步骤605:所述二层网络设备根据用户离开报文中的组播用户端口和用户VFI,查找请求离开的组播用户是否存在,如果组播用户存在,向用户发送三次特定组查询和/或特定组源查询,如果没有收到用户的响应报告,则将组播用户从组播组的出端口中删除;如果组播用户不存在,则不处理。如果所述组播组中没有其它用户点播,则将组播组条目删除,否则,不处理;执行步骤607;
步骤606:组播报文非法,丢弃不处理。流程结束。
步骤607:如果请求离开的组播用户为组播组中点播组播源的最后一个用户,所述二层网络设备将用户离开报文中的VFI3和VFI4分别替换成组播VFI1和组播VFI2,并发送给上游网络设备。
结合以上描述可见,本发明实现跨虚拟专用局域网组播的操作思路可以表示如图7所示的流程,该流程包括以下步骤:
步骤710:配置组播组、组播源和组播VFI的映射关系。
步骤720:根据所述映射关系查找组播用户所请求的组播组所属的组播VFI。
步骤730:根据查找到的组播VFI维护组播转发表。
为了保证上述技术描述以及操作思路能够顺利实现,还可以设置如图8所示的系统,该系统包括:组播VFI配置和显示模块801、组播VFI查找模块802、组播用户管理模块803。当然,还可以进一步包括组播报文发送模块804。其中,
组播VFI配置和显示模块801:用于配置组播组、组播源和组播VFI的映射关系,如:配置组播组、组播源和组播VFI的映射关系,通过配置命令指定特定组播源和组播组所接入的组播VFI,也可以通过显示命令查看所配置的信息。
组播VFI查找模块802:用于根据所述映射关系查找组播用户所请求的组播组所属的组播VFI,如:根据组播组地址和组播源地址,查找用户所接入的组播VFI。
组播用户管理模块803:用于根据查找到的组播VFI维护组播转发表,如:处理组播用户的加入和/或离开请求,创建、更新和删除组播转发表;
组播报文发送模块804:用于进行组播VFI和加入/离开报文中的用户VFI的转换过程,如:将用户VFI转换成组播VFI,并向上游设备发送IGMP加入和/或离开报文;并且,负责转发组播数据流。
综上所述可见,无论是方法还是系统,本发明实现跨虚拟专用局域网组播的技术,通过配置组播组、组播源和组播VFI的映射关系,根据所述组播组地址和组播源地址查找组播用户所请求的组播组所属的组播VFI,并根据查找到的组播VFI创建、删除或更新组播转发表。因此,本发明可以在二层网络设备中实现跨VFI组播,并可以准确区分用户请求的组播源和组播VFI的组播组,从而解决当组播用户点播同一个组播组的不同组播源的组播数据时,组播数据流无法准确转发给组播用户的问题。如:当收到组播用户点播同一个组播组的不同组播源的数据流时,将组播用户准确接入到所请求的组播VFI中,从而实现组播跨虚拟专用局域网组播。通过组播跨虚拟专用局域网组播,有效降低了组播源服务器复制组播数据流的网络负载和系统开销,提高了网络设备的带宽利用率等性能;并且,通过组播组、组播源映射到相应的组播VFI,保证了组播数据流传输的准确性。
此外,本发明也适用于支持MLD(Multicast Listener Discovery,组播侦听者发现协议)的二层网络设备,同时也适用于VLAN(Virtual Local Area Network,虚拟局域网)环境下的跨VLAN组播。
以上所述,仅为本发明的较佳实施例而已,并非用于限定本发明的保护范围。
Claims (12)
1.一种实现跨虚拟专用局域网组播的方法,其特征在于,该方法包括:
配置组播组、组播源和组播虚拟转发实例VFI的映射关系;根据所述映射关系查找组播用户所请求的组播组所属的组播VFI;根据查找到的组播VFI维护组播转发表。
2.根据权利要求1所述的方法,其特征在于,所述配置组播组、组播源和组播VFI的映射关系的过程包括:
先配置组播源和访问控制列表ACL绑定,然后再将组播组和ACL以及组播VFI绑定,从而将组播组、组播源和组播VFI绑定。
3.根据权利要求1所述的方法,其特征在于,维护所述组播转发表时,根据配置信息以及接收到的组播用户的加入和/或离开请求,创建、删除或更新组播转发表,该过程包括:
接收组播用户的加入和/或离开报文并解析,根据所解析到的组播组地址、组播源地址以及配置信息,创建、删除或更新组播转发表。
4.根据权利要求3所述的方法,其特征在于,所述根据所解析到的组播组地址、组播源地址以及配置信息,创建、删除或更新组播转发表的过程包括:
根据从所述加入报文中解析到的组播源地址,查找组播源所属的ACL,然后再根据查找到的ACL及组播组地址,查找所对应的组播VFI;如果查找不到,则认为该用户加入报文为非法报文,直接丢弃;
接收到组播用户的加入报文时,如果用户所请求的组播组不存在,创建组播转发表;如果组播组存在,则更新组播转发表;
接收到组播用户的离开报文时,如果用户存在,则更新组播转发表;如果所述组播组中没有其它用户点播,则删除组播转发表中的组播组条目。
5.根据权利要求4所述的方法,其特征在于,
所述创建组播转发表的过程包括:
将所述组播组加入到所查找到的组播VFI中,将所解析到的用户端口及用户VFI添加到所述组播组中,建立用户VFI和组播VFI的映射关系;
所述更新组播转发表的过程包括:
根据解析到的组播组地址和组播VFI,查找组播组是否存在,如果组播组不存在,则执行创建组播转发表流程;如果组播组存在,则根据解析到的用户端口及用户VFI查找组播用户是否存在,如果组播用户不存在,则将所述用户端口及用户VFI添加到所述组播组的出接口中;如果组播用户已经存在,则不处理;
接收到组播用户的离开报文时,根据组播组、组播源信息,查找到该组播用户所加入的组播VFI,如果查找到,则将组播用户端口及用户VFI从组播组的出端口中删除;如果查找不到,则不处理;
所述删除组播转发表的过程包括:
将所述组播用户端口从所述组播组中删除后,查找该组播组中是否还有其它用户,如果没有,则将该组播组条目删除;如果还有其它用户点播,则不能删除。
6.根据权利要求3至5任一项所述的方法,其特征在于,还包括组播VFI和加入/离开报文中的用户VFI的转换过程:
二层网络设备收到组播加入和/或离开报文时,将组播用户加入报文和/或离开报文中的用户VFI替换成组播VFI,并向组播源方向的上游网络设备转发;
并且,所述二层网络设备接收到组播数据流后,根据所述组播转发表中用户VFI和组播VFI的映射关系,将该组播流的组播VFI转换为对应的用户VFI,并通过用户VFI中的用户端口将所述组播组数据流转发给用户;
所述二层网络设备,指用户侧与组播用户相连的接入设备;所述上游网络设备,指网络侧与组播源相连的路由设备。
7.一种实现跨虚拟专用局域网组播的系统,其特征在于,该系统包括组播VFI配置和显示模块、组播VFI查找模块、组播用户管理模块;其中,
所述组播VFI配置和显示模块,用于配置组播组、组播源和组播VFI的映射关系;
所述组播VFI查找模块,用于根据所述映射关系查找组播用户所请求的组播组所属的组播VFI;
所述组播用户管理模块,用于根据查找到的组播VFI维护组播转发表。
8.根据权利要求7所述的系统,其特征在于,所述组播用户管理模块组播VFI配置和显示模块,在配置组播组、组播源和组播VFI的映射关系时,用于:
先配置组播源和ACL绑定,然后再将组播组和ACL以及组播VFI绑定,从而将组播组、组播源和组播VFI绑定。
9.根据权利要求7所述的系统,其特征在于,所述组播用户管理模块,在维护所述组播转发表时,用于根据配置信息以及接收到的组播用户的加入和/或离开请求,创建、删除或更新组播转发表:
接收组播用户的加入和/或离开报文并解析,根据所解析到的组播组地址、组播源地址以及配置信息,创建、删除或更新组播转发表。
10.根据权利要求9所述的系统,其特征在于,所述组播用户管理模块,根据所解析到的组播组地址、组播源地址以及配置信息,创建、删除或更新组播转发表时,用于:
根据从所述加入报文中解析到的组播组地址,查找组播源所属的ACL,然后再根据查找到的ACL及组播组地址,查找所对应的组播VFI;如果查找不到,则认为该用户加入报文为非法报文,直接丢弃;
接收到组播用户的加入报文时,如果用户所请求的组播组不存在,创建组播转发表;如果组播组存在,则更新组播转发表;
接收到组播用户的离开报文时,如果用户存在,则更新组播转发表;如果所述组播组中没有其它用户点播,则删除组播转发表中的组播组条目。
11.根据权利要求10所述的系统,其特征在于,
所述组播用户管理模块,在创建组播转发表时用于:
将所述组播组加入到所查找到的组播VFI中,将所解析到的用户端口及用户VFI添加到所述组播组中,建立用户VFI和组播VFI的映射关系;
所述组播用户管理模块,在更新组播转发表时用于:
根据解析到的组播组地址和组播VFI,查找组播组是否存在,如果组播组不存在,则执行创建组播转发表流程;如果组播组存在,则根据解析到的用户端口及用户VFI查找组播用户是否存在,如果组播用户不存在,则将所述用户端口及用户VFI添加到所述组播组的出接口中;如果组播用户已经存在,则不处理;
接收到组播用户的离开报文时,根据组播组、组播源信息,查找到该组播用户所加入的组播VFI,如果查找到,则将组播用户端口及用户VFI从组播组的出端口中删除;如果查找不到,则不处理;
所述组播用户管理模块,在删除组播转发表时用于:
将所述组播用户端口从所述组播组中删除后,查找该组播组中是否还有其它用户,如果没有,则将该组播组条目删除;如果还有其它用户点播,则不能删除。
12.根据权利要求9至11任一项所述的系统,其特征在于,该系统还包括组播报文发送模块,用于进行组播VFI和加入/离开报文中的用户VFI的转换过程:
收到组播加入和/或离开报文时,将组播用户加入报文和/或离开报文中的用户VFI替换成组播VFI,并向组播源方向的上游网络设备转发;
并且,接收到组播数据流后,根据所述组播转发表中用户VFI和组播VFI的映射关系,将该组播流的组播VFI转换为对应的用户VFI,并通过用户VFI中的用户端口将所述组播组数据流转发给用户;
所述上游网络设备,指网络侧与组播源相连的路由设备。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201110167930.2A CN102215172B (zh) | 2011-06-21 | 2011-06-21 | 一种实现跨虚拟专用局域网组播的方法和系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201110167930.2A CN102215172B (zh) | 2011-06-21 | 2011-06-21 | 一种实现跨虚拟专用局域网组播的方法和系统 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN102215172A true CN102215172A (zh) | 2011-10-12 |
CN102215172B CN102215172B (zh) | 2017-08-11 |
Family
ID=44746308
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201110167930.2A Active CN102215172B (zh) | 2011-06-21 | 2011-06-21 | 一种实现跨虚拟专用局域网组播的方法和系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN102215172B (zh) |
Cited By (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103457821A (zh) * | 2013-08-28 | 2013-12-18 | 杭州华三通信技术有限公司 | 基于trill网络的跨vlan组播实现方法和装置 |
WO2014067280A1 (zh) * | 2012-11-02 | 2014-05-08 | 华为技术有限公司 | 组播处理方法、装置及系统 |
CN105791109A (zh) * | 2014-12-25 | 2016-07-20 | 中兴通讯股份有限公司 | 多协议标签交换中间节点组播转发的方法、装置和节点 |
CN103457821B (zh) * | 2013-08-28 | 2016-11-30 | 杭州华三通信技术有限公司 | 基于trill网络的跨vlan组播实现方法和装置 |
CN106341737A (zh) * | 2016-08-18 | 2017-01-18 | 中央电视台 | Ip组播流处理方法、交换机组、服务器及系统 |
CN108076114A (zh) * | 2016-11-15 | 2018-05-25 | 天津慧康溢德科技发展有限公司 | 一种技术服务用数据转换器 |
CN109495370A (zh) * | 2018-12-29 | 2019-03-19 | 瑞斯康达科技发展股份有限公司 | 一种基于vpls的报文传输方法及装置 |
CN109981302A (zh) * | 2017-12-28 | 2019-07-05 | 北京华为数字技术有限公司 | 组播通信的方法和装置 |
CN111786873A (zh) * | 2020-07-13 | 2020-10-16 | 浙江捷创方舟数字技术有限公司 | 支持plc冗余的远程控制方法、系统及网关 |
CN112751682A (zh) * | 2020-12-28 | 2021-05-04 | 武汉长光科技有限公司 | 一种基于vxlan技术扩张pon局域网组群的组播通信控制方法 |
CN114448740A (zh) * | 2022-01-14 | 2022-05-06 | 绿盟科技集团股份有限公司 | 一种组播方法、装置、介质、产品和设备 |
CN115334037A (zh) * | 2022-08-10 | 2022-11-11 | 杭州云合智网技术有限公司 | Vxlan组播转发表项更新系统方法及系统 |
Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1791054A (zh) * | 2004-12-14 | 2006-06-21 | 华为技术有限公司 | 一种虚拟路由器方式的虚拟专用网络的组播方法 |
US20060182121A1 (en) * | 2005-02-17 | 2006-08-17 | Cisco Technology, Inc. | System and method for regulating data traffic in a network |
US20080291914A1 (en) * | 2005-11-17 | 2008-11-27 | Huawei Technologies Co., Ltd. | Method for Implementing Multicast |
CN101534209A (zh) * | 2009-04-20 | 2009-09-16 | 杭州华三通信技术有限公司 | 一种组播报文发送的方法和装置 |
CN101557425A (zh) * | 2009-05-08 | 2009-10-14 | 中兴通讯股份有限公司 | 源特定组播网络的路由更新方法与路由设备 |
CN101616014A (zh) * | 2009-07-30 | 2009-12-30 | 中兴通讯股份有限公司 | 一种实现跨虚拟专用局域网组播的方法 |
CN101621467A (zh) * | 2009-08-13 | 2010-01-06 | 华为技术有限公司 | 一种实现组播vsi的方法、装置及系统 |
-
2011
- 2011-06-21 CN CN201110167930.2A patent/CN102215172B/zh active Active
Patent Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1791054A (zh) * | 2004-12-14 | 2006-06-21 | 华为技术有限公司 | 一种虚拟路由器方式的虚拟专用网络的组播方法 |
US20060182121A1 (en) * | 2005-02-17 | 2006-08-17 | Cisco Technology, Inc. | System and method for regulating data traffic in a network |
US20080291914A1 (en) * | 2005-11-17 | 2008-11-27 | Huawei Technologies Co., Ltd. | Method for Implementing Multicast |
CN101534209A (zh) * | 2009-04-20 | 2009-09-16 | 杭州华三通信技术有限公司 | 一种组播报文发送的方法和装置 |
CN101557425A (zh) * | 2009-05-08 | 2009-10-14 | 中兴通讯股份有限公司 | 源特定组播网络的路由更新方法与路由设备 |
CN101616014A (zh) * | 2009-07-30 | 2009-12-30 | 中兴通讯股份有限公司 | 一种实现跨虚拟专用局域网组播的方法 |
CN101621467A (zh) * | 2009-08-13 | 2010-01-06 | 华为技术有限公司 | 一种实现组播vsi的方法、装置及系统 |
Cited By (20)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2014067280A1 (zh) * | 2012-11-02 | 2014-05-08 | 华为技术有限公司 | 组播处理方法、装置及系统 |
US9565033B2 (en) | 2012-11-02 | 2017-02-07 | Huawei Technologies Co., Ltd. | Multicast processing method, apparatus and system |
CN103457821B (zh) * | 2013-08-28 | 2016-11-30 | 杭州华三通信技术有限公司 | 基于trill网络的跨vlan组播实现方法和装置 |
CN103457821A (zh) * | 2013-08-28 | 2013-12-18 | 杭州华三通信技术有限公司 | 基于trill网络的跨vlan组播实现方法和装置 |
CN105791109B (zh) * | 2014-12-25 | 2020-03-10 | 中兴通讯股份有限公司 | 多协议标签交换中间节点组播转发的方法、装置和节点 |
CN105791109A (zh) * | 2014-12-25 | 2016-07-20 | 中兴通讯股份有限公司 | 多协议标签交换中间节点组播转发的方法、装置和节点 |
CN106341737B (zh) * | 2016-08-18 | 2020-05-19 | 中央电视台 | Ip组播流处理方法、交换机组、服务器及系统 |
CN106341737A (zh) * | 2016-08-18 | 2017-01-18 | 中央电视台 | Ip组播流处理方法、交换机组、服务器及系统 |
CN108076114A (zh) * | 2016-11-15 | 2018-05-25 | 天津慧康溢德科技发展有限公司 | 一种技术服务用数据转换器 |
CN109981302A (zh) * | 2017-12-28 | 2019-07-05 | 北京华为数字技术有限公司 | 组播通信的方法和装置 |
CN109495370B (zh) * | 2018-12-29 | 2020-11-24 | 瑞斯康达科技发展股份有限公司 | 一种基于vpls的报文传输方法及装置 |
CN109495370A (zh) * | 2018-12-29 | 2019-03-19 | 瑞斯康达科技发展股份有限公司 | 一种基于vpls的报文传输方法及装置 |
CN111786873B (zh) * | 2020-07-13 | 2021-11-26 | 浙江捷创方舟数字技术有限公司 | 支持plc冗余的远程控制方法、系统及网关 |
CN111786873A (zh) * | 2020-07-13 | 2020-10-16 | 浙江捷创方舟数字技术有限公司 | 支持plc冗余的远程控制方法、系统及网关 |
CN112751682A (zh) * | 2020-12-28 | 2021-05-04 | 武汉长光科技有限公司 | 一种基于vxlan技术扩张pon局域网组群的组播通信控制方法 |
CN112751682B (zh) * | 2020-12-28 | 2023-04-07 | 武汉长光科技有限公司 | 一种基于vxlan技术扩张pon局域网组群的组播通信控制方法 |
CN114448740A (zh) * | 2022-01-14 | 2022-05-06 | 绿盟科技集团股份有限公司 | 一种组播方法、装置、介质、产品和设备 |
CN114448740B (zh) * | 2022-01-14 | 2023-11-07 | 绿盟科技集团股份有限公司 | 一种组播方法、装置、介质、产品和设备 |
CN115334037A (zh) * | 2022-08-10 | 2022-11-11 | 杭州云合智网技术有限公司 | Vxlan组播转发表项更新系统方法及系统 |
CN115334037B (zh) * | 2022-08-10 | 2023-05-23 | 杭州云合智网技术有限公司 | Vxlan组播转发表项更新系统方法及系统 |
Also Published As
Publication number | Publication date |
---|---|
CN102215172B (zh) | 2017-08-11 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN102215172A (zh) | 一种实现跨虚拟专用局域网组播的方法和系统 | |
EP1424806B1 (en) | Multicast Router with Translation Function for Protocols according to Any-Source-Multicast and Source-Specific-Multicast | |
US7746859B2 (en) | Method for implementing multicast | |
US9876706B2 (en) | Relay system and switching device for a layer 3 network | |
US7593402B2 (en) | Method of multicast source filtering | |
US8189582B2 (en) | Multicast supported virtual local area network switching system and method thereof | |
WO2018205982A1 (zh) | 软件定义网络中广播、组播实现方法、装置及存储介质 | |
CN100433730C (zh) | 组播点播方法及系统 | |
CN102201999B (zh) | 一种实现组播业务负荷分担的方法和系统 | |
CN109474715B (zh) | 一种基于视联网的资源配置方法和装置 | |
WO2015196361A1 (zh) | 一种软件定义网络的多播方法、装置及系统 | |
CN100477635C (zh) | 一种域间组播的传输方法及边缘设备 | |
CN102263646A (zh) | 交换机的分布式控制平面内的多播 | |
WO2009082905A1 (fr) | Procédé système et dispositif commutateur permettant l'établissement dynamique de réseau local virtuel de multidiffusion | |
US10225091B2 (en) | Method for implementing point-to-multipoint multicast, network node, and system | |
US9008118B2 (en) | Multicast data delivery over mixed multicast and non-multicast networks | |
JP2008103864A (ja) | Ipマルチキャストサービスシステム、スイッチ装置及びそれらに用いるグループ選択送信方法 | |
KR20110095948A (ko) | 멀티캐스트 서비스 품질 모듈 및 방법 | |
WO2011020346A1 (zh) | 组播数据转发方法及装置 | |
WO2007054006A1 (fr) | Station de base de système d’accès sans fil large bande et système pour réaliser un service de diffusion de groupe | |
WO2009094921A1 (fr) | Procédé de renvoi de multidiffusion et routeur de multidiffusion | |
WO2009024054A1 (fr) | Procédé, dispositif et système pour réaliser l'agent de protocole de gestion pour des membres dans un groupe de multidiffusion | |
CN109257190B (zh) | 一种基于sdn的组播处理方法、控制器、交换机及系统 | |
JP2012533959A (ja) | マルチキャスト対応ルータにおいて効果的なホスト・マネジメント・プロトコル | |
CN1543132A (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 |