一种实现跨虚拟专用局域网组播的方法和系统的制作方法

文档序号:7700215阅读:130来源:国知局
专利名称:一种实现跨虚拟专用局域网组播的方法和系统的制作方法
技术领域
本发明涉及通信领域,具体涉及一种实现跨虚拟专用局域网组播的方法和系统。
背景技术
VPN(Virtual Private Network,虚拟专用网)是一种利用公网资源来建立专用通信网络的技术,用于实现远程的广域连接。VPLS(Virtual Private Lan krvice,虚拟专用网服务)是基于MPLS (Multi-Protocol Label Switch,多协议标签交换)/IP网络和以太网技术的二层虚拟专用局域网技术,属于L2VPN(Layer 2 Virtual Private Network,二层虚拟专用网)。VPLS使处于不同站点的用户通过广域网或城域网连接,由此形成虚拟的局域网,每个虚拟局域网称为VFI (Virtual Forward hstance,虚拟转发实例)。VPLS能够有效地连接各个接入点,并在网络拓扑上实现点到点、点到多点、多点到多点的以太网业务。由于组播技术实现了 IP网络中点到多点的高效数据传送,能够有效地节约网络带宽,并降低网络负载,所以在实时数据传送、多媒体会议、数据拷贝、游戏和仿真等诸多方面都有广泛的应用。同时,随着VPLS技术的应用和普及,越来越多的运营商采用VPLS技术为用户提供组播业务;而且在实际的网络应用中,组播用户和组播源往往不在同一个虚拟专用局域网内,如视频会议、安全监控等,因此如何实现跨虚拟专用局域网的组播业务是一个必须解决的重要问题。现有技术中,常用的一种技术是基于组播组的跨VFI组播,即指定组播组所接入的组播VFI,如图1所示,所述二层网络设备接收到组播用户1和组播用户点播同一个组播组的加入报文时,只通过组播VFIl通知上游网络设备(如二层网络设备和/或三层网络设备)。这样,上游网络设备只复制一份组播数据流到二层网络设备,由二层网络设备通过跨 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从组播组的出端口中删除;如果查找不到,则不处理;所述组播用户管理模块,在删除组播转发表时用于
7
将所述组播用户端口从所述组播组中删除后,查找该组播组中是否还有其它用户,如果没有,则将该组播组条目删除;如果还有其它用户点播,则不能删除。该系统还包括组播报文发送模块,用于进行组播VFI和加入/离开报文中的用户 VFI的转换过程收到组播加入和/或离开报文时,将组播用户加入报文和/或离开报文中的用户 VFI替换成组播VFI,并向组播源方向的上游网络设备转发;并且,接收到组播数据流后,根据所述组播转发表中用户VFI和组播VFI的映射关系,将该组播流的组播VFI转换为对应的用户VFI,并通过用户VFI中的用户端口将所述组播组数据流转发给用户;所述上游网络设备,指网络侧与组播源相连的路由设备。本发明方法和系统,可以在二层网络设备中实现跨VFI组播,并可以准确区分用户请求的组播源和组播VFI的组播组,从而解决当组播用户点播同一个组播组的不同组播源的组播数据时,组播数据流无法准确转发给组播用户的问题;有效降低了组播源服务器复制组播数据流的网络负载和系统开销,提高了网络设备的带宽利用率等性能;并且,通过组播组、组播源映射到相应的组播VFI,保证了组播数据流传输的准确性。


图1为现有技术中实现跨虚拟专用局域网组播的组网示意图;图2为本发明实施例实现跨虚拟专用局域网组播的组网示意图;图3为本发明实施例配置组播组、组播源和组播VFI之间映射关系的流程图;图如和图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查找模块,用于根据所述映射关系查找组播用户所请求的组播组所属的组播VFIjn 根据组播用户的加入和/或离开请求报文中的组播组地址和组播源地址,查找所对应的组播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和
10图4,对本发明配置组播组、组播源和组播VFI的映射关系的过程进行详细说明,该过程主要包括以下步骤步骤301 配置组播组、组播源和组播VFI的映射关系,如在二层网络设备上配置组播组、组播源和组播VFI的映射关系,这里以组播组225. 1. 1. 1为例,有两个组播源 1. 1. 1. 1和2. 2. 2. 2,对应的组播VFI分别为VFIl和VFI2。步骤302 配置组播源和ACL绑定,如在所述二层网络设备上配置组播源
1.1. 1. 1和ACLl绑定,组播源2. 2. 2. 2和ACL2绑定。由于一个组播组会有多个组播源,而一部分组播源的组播VFI是相同的,另一部分组播源的组播VFI是相同的;因此,将组播源和ACL绑定。步骤303 配置组播组、ACL和组播组VFI绑定,如在所述二层网络设备上配置组播组225. 1.1.1,ACLl和组播VFIl绑定,配置组播组225. 1.1.1,ACL2和组播VFI2绑定。步骤304 实现组播组、组播源和组播VFI的绑定,如所述二层网络设备上实现了组播组、组播源和组播VFI的绑定,绑定的映射关系如图如和图4b所示。其中,根据图乜可知,ACLl包括组播源1. 1. 1. 1-1. 1. 1. 10,ACL2包括组播源
2.2. 2. 2-2. 2. 2. 10 ;根据图4b可知,组播组225. 1. 1. 1和ACLl对应的组播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分别接入组播VFIl和组播VFI2。如果此时没有配置相应的组播VFI,则查找失败,执行步骤506 ;如果查找到组播VFI,则执行步骤504。步骤504 所述二层网络设备根据用户加入报文中的组播组、组播源、查找到的组播VFI,查找组播组是否存在,如果不存在,则创建组播组条目,并添加到组播转发表中,对应的组播组条目分别为(225. 1. 1. 1,VFILl. 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 所述二层网络设备接收到组播数据流时,根据组播组转发表项,将组播 VFIl和组播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分别为组播VFIl和组播VFI2 ;如果此时没有相应的配置信息,则查找失败,执行步骤606 ;如果查找到组播VFI,则执行步骤 604。步骤604:所述二层网络设备根据用户离开报文中的组播组、组播源、查找到的组播VFI,查找组播组是否存在,如果存在,则执行步骤605 ;如果不存在,则不处理;步骤605 所述二层网络设备根据用户离开报文中的组播用户端口和用户VFI,查找请求离开的组播用户是否存在,如果组播用户存在,向用户发送三次特定组查询和/或特定组源查询,如果没有收到用户的响应报告,则将组播用户从组播组的出端口中删除;如果组播用户不存在,则不处理。如果所述组播组中没有其它用户点播,则将组播组条目删除,否则,不处理;执行步骤607 ;步骤606 组播报文非法,丢弃不处理。流程结束。步骤607 如果请求离开的组播用户为组播组中点播组播源的最后一个用户,所述二层网络设备将用户离开报文中的VFI3和VFI4分别替换成组播VFIl和组播VFI2,并发送给上游网络设备。结合以上描述可见,本发明实现跨虚拟专用局域网组播的操作思路可以表示如图 7所示的流程,该流程包括以下步骤步骤710 配置组播组、组播源和组播VFI的映射关系。步骤720 根据所述映射关系查找组播用户所请求的组播组所属的组播VFI。步骤730 根据查找到的组播VFI维护组播转发表。为了保证上述技术描述以及操作思路能够顺利实现,还可以设置如图8所示的系统,该系统包括组播VFI配置和显示模块801、组播VFI查找模块802、组播用户管理模块 803。当然,还可以进一步包括组播报文发送模块804。其中,组播VFI配置和显示模块801 用于配置组播组、组播源和组播VFI的映射关系, 如配置组播组、组播源和组播VFI的映射关系,通过配置命令指定特定组播源和组播组所接入的组播VFI,也可以通过显示命令查看所配置的信息。组播VFI查找模块802 用于根据所述映射关系查找组播用户所请求的组播组所属的组播VFIJn 根据组播组地址和组播源地址,查找用户所接入的组播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组播。以上所述,仅为本发明的较佳实施例而已,并非用于限定本发明的保护范围。
权利要求
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中的用户端口将所述组播组数据流转发给用户;所述上游网络设备,指网络侧与组播源相连的路由设备。
全文摘要
本发明公开了一种实现跨虚拟专用局域网组播的方法和系统,可配置组播组、组播源和组播VFI的映射关系;根据所述映射关系查找组播用户所请求的组播组所属的组播VFI;根据查找到的组播VFI维护组播转发表。本发明方法和系统,可以在二层网络设备中实现跨VFI组播,并可以准确区分用户请求的组播源和组播VFI的组播组,从而解决当组播用户点播同一个组播组的不同组播源的组播数据时,组播数据流无法准确转发给组播用户的问题;有效降低了组播源服务器复制组播数据流的网络负载和系统开销,提高了网络设备的带宽利用率等性能;并且,通过组播组、组播源映射到相应的组播VFI,保证了组播数据流传输的准确性。
文档编号H04L12/56GK102215172SQ201110167930
公开日2011年10月12日 申请日期2011年6月21日 优先权日2011年6月21日
发明者陈维花 申请人:中兴通讯股份有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1