在接入设备中管理组播业务的方法

文档序号:7589480阅读:140来源:国知局
专利名称:在接入设备中管理组播业务的方法
技术领域
本发明涉及一种在网络中管理组播业务的方法,尤其涉及在通讯网的边缘-接入设备中对组播业务的管理。
背景技术
IGMP Snooping(Internet Group Management Protocol Snooping网际网组管理协议侦听)能够在二层网络设备上“侦听”主机和组播路由设备间的IGMP协议报文,对用户的组播请求进行跟踪。尽管IGMP Snooping通过动态配置设备端口限制组播数据仅向特定的端口转发,控制组播数据在网络设备上不再通过向VLAN(Virtual Local Area Network虚拟局域网)中洪泛的方式发送给用户。但随着组播业务对于接入设备在组播业务安全、业务传输效率、业务切换低延迟、QoS(Quality of Service服务质量)实施、易于管理以及多样组网等方面需求的提高,现有IGMP Snooping的实现方法都显现出一些不足。
首先,通常IGMP Snooping的实现是基于组播用户侧端口与组播网络侧端口同属一个组播VLAN中的,也就是用户的单播业务与组播业务将使用公共通道进行传输,这使得网络设备难以为具有较高质量需要的组播业务数据提供有效的QoS保障。此外,组播用户对组播VLAN可能的恶意访问也给组播业务网络带来了潜在安全隐患。而且,组播用户需要加入组播VLAN中才能接收组播业务的方式,限制了接入设备上的组播用户只能通过动态方式请求特定的组播业务数据,否则对于未知组播数据将可能向组播VLAN中的其它非请求用户洪泛,这为实施组播业务向组播用户靠近带来了困难,增加了网络设备控制用户组播请求处理的延迟的难度。其次,如果用户需要分布在不同的VLAN中并且申请了组播业务,那么上联组播设备必须针对各个VLAN进行组播业务数据的复制,使得本应仅对下行网络设备复制一次的数据不得不进行多次复制、分发,无疑加重了组播路由设备的负担、降低了其综合处理能力,影响了为用户提供高质量服务。第三,IGMP Snooping实际上承担着对用户组播请求的识别、处理和资源分配的任务,是用户组播请求的直接管理者,但现有实现技术对组播成员的管理都采取“不加以区分的接受和处理”的态度,这很难适应开展组播业务时在网络边缘组成员管理得需要。

发明内容
本发明所要解决的技术问题是提供一种在接入设备中管理组播业务的方法,用于解决现有IGMP Snooping实现技术中存在业务安全隐患、切换延迟难控制和业务QoS难实施等缺点,也同时解决了现有技术中组播业务不易管理、业务复制效率低和组网单一的问题。
为达到上述目的,本发明提供了一种在接入设备中管理组播业务的方法,其特点在于,包括如下步骤步骤一,为组播业务建立一个或多个独立的基础虚拟局域网,基础虚拟局域网中的组播业务端口仅包括网络侧的组播业务端口,不包括用户侧端口;步骤二,通过组播虚拟局域网创建模块建立与基础虚拟局域网对应的一个或多个包括有所述组播虚拟局域网的用户、所述组播虚拟局域网管理的组播业务范围和与所述组播虚拟局域网对应的基础虚拟局域网的标识的对应信息;步骤三,通过组访问控制模块为每个用户侧端口建立一个控制列表,并且建立用于遍历所述控制列表的控制规则;步骤四,接收IGMP协议报文,并将所述报文的报文相关信息传递给所述控制模块,所述控制模块按照所述控制规则并通过一个控制过程来遍历相应用户的控制列表,并返回控制结果;步骤五,根据所述控制结果判断所述用户是否通过了组访问控制,是则执行步骤六,否则转到步骤四;步骤六,将所述IGMP协议报文和所述报文相关信息传递给IGMP协议处理模块,所述处理模块根据所述报文的类型以及所述报文的获取端口对所述报文进行相应处理;步骤七,将包含组地址、组播虚拟局域网标识和接收端口信息的用户请求传递给组播转发表设置模块,所述设置模块对以所述组播虚拟局域网标识和所述组地址进行索引的组播转发表项进行用户端口的添加或删除操作。
上述的在接入设备中管理组播业务的方法,其特点在于,在所述步骤四中,所述报文相关信息包括报文的接收端口、虚拟局域网标识和组地址信息。
上述的在接入设备中管理组播业务的方法,其特点在于,在所述步骤六中,所述报文的类型为查询、报告或离开,所述端口为用户侧端口或网络侧端口。
上述的在接入设备中管理组播业务的方法,其特点在于,在所述步骤六中,对于用户侧接收到的报文的进行如下处理对于查询类型报文直接丢弃;对于报告类型报文,首先由所述报文的报文相关信息确定相应的组播虚拟局域网,再根据所述组播虚拟局域网的配置信息,在所述组播虚拟局域网中增加该用户请求组播组的记录,并将所述报文向所述组播虚拟局域网中的所有端口转发,之后执行步骤七;对于离开类型报文,首先由所述报文的报文相关信息确定相应的组播虚拟局域网,再根据所述组播虚拟局域网的配置信息,在所述组播虚拟局域网中删除该用户请求组播组的记录,并将所述报文向所述组播虚拟局域网中的所有端口转发,之后执行步骤七。
上述的在接入设备中管理组播业务的方法,其特点在于,在所述步骤六中,对于网络侧接收到的报文的进行如下处理对于查询类型报文,首先由所述报文的报文相关信息确定相应的组播虚拟局域网,再将所述报文向所有属于对应所述组播虚拟局域网的用户端口和所述组播虚拟局域网中的所有端口转发;对于报告类型报文,首先由所述报文的报文相关信息确定相应的组播虚拟局域网,再将所述报文向对应所述组播虚拟局域网中的所有端口转发;对于离开类型报文,首先由所述报文的报文相关信息确定相应的组播虚拟局域网,再将所述报文向对应所述组播虚拟局域网中的所有端口转发。
上述的在接入设备中管理组播业务的方法,其特点在于,在所述步骤七中,所述设置模块添加用户端口的操作包括步骤a,获取所述转发表项的内容;步骤b,添加用户端口;步骤c,添加所有属于组播虚拟局域网的网络侧端口;步骤d,写入组播转发表。
上述的在接入设备中管理组播业务的方法,其特点在于,在所述步骤七中,所述设置模块删除用户端口的操作包括步骤A,获取所述转发表项的内容;步骤B,删除用户端口;步骤C,判断当前转发表项是否还有用户端口,是转步骤E,否则转步骤D;步骤D,删除该组播转发表项并结束流程;步骤E,写入组播转发表,结束流程。
上述的在接入设备中管理组播业务的方法,其特点在于,所述组播虚拟局域网通过接入服务器或者直接向网络的接入设备发送组播业务数据。
上述的在接入设备中管理组播业务的方法,其特点在于,所述接入设备之间为链型或环形组网。
本发明的技术效果在于与现有技术相比,采用本发明所述方法能够使接入设备有效的支持组播业务直接送抵的模式,使组播业务的数据和控制点更加向用户靠近,提高了对组播业务切换延迟的控制,同时本方法也提高了对组播业务的可管理性。而且,在不影响为用户提供组播业务的同时使用独立的VLAN有效的隔离的用户与组播业务网络,提高了接入设备管理组播业务的安全性。也可以在接入设备实施针对该独立VLAN的高优先转发策略,从而方便地实施组播业务的QoS。此外,采用本发明系统和实现方法还能够增强接入设备适应多种组网方式需要的能力。
下面结合附图进一步详细说明本发明的具体实施例。


图1是本方法的主体流程图;图2是MVLAN的创建模块流程图;图3是组播组访问控制模块流程图;图4a是IGMP协议处理模块的用户侧对Query类型报文处理流程图;图4b是IGMP协议处理模块的用户侧对Report类型报文处理流程图;图4c是IGMP协议处理模块的用户侧对Leave类型报文处理流程图;图5a是IGMP协议处理模块的网络侧对Query类型报文处理流程图;图5b是IGMP协议处理模块的网络侧对Report类型报文处理流程图;图5c是IGMP协议处理模块的网络侧对Leave类型报文处理流程图;图6是典型的组播转发表的结构示意图;图7a是组播转发表的设置模块添加用户端口的流程图;图7b是组播转发表的设置模块删除用户端口的流程图;图8a是本方法提供的典型组网应用示意图,是组播业务直接送抵接入设备的应用示意图;图8b是本方法提供的典型组网应用示意图,是组播业务送抵接入服务器,接入设备向接入服务器动态请求的应用示意图;图9a是本方法提供的链型组网拓扑示意图;图9b是本方法提供的环型组网拓扑示意图。
具体实施例方式
如图1所示,本发明一种在接入设备中管理组播业务的方法,包括如下步骤步骤101,为组播业务建立一个或多个独立的基础VLAN,基础VLAN中仅包括网络侧的组播业务端口,不包括用户侧端口;步骤102,通过MVLAN(Multicast Virtual Local Area Network组播虚拟局域网)创建模块建立与基础VLAN对应的一个或多个MVLAN信息;这些信息包括与MVLAN对应基础VLAN的标识,MVLAN管理的组播业务范围和该MVLAN的用户等。
步骤103,通过组访问控制模块为每个用户侧端口建立一个控制列表,以及建立用于遍历控制列表的控制规则;步骤104,接收IGMP协议报文,并将报文的接收端口、VLAN标识和组地址等信息传递给组访问控制模块。该模块按照步骤三的规则由控制过程遍历相应用户的控制列表,并最终返回控制结果;步骤105,如果结果表明用户通过了组访问控制则进行步骤106,否则继续步骤104。
步骤106,将IGMP报文和报文相关信息传递给IGMP协议处理模块。该模块根据报文的Query(查询)、Report(报告)或Leave(离开)的类型以及报文从用户侧或网络侧端口获取的不同进行不同的处理。
步骤107,判断是否为用户侧组请求,是则转步骤108,否则转步骤104。
步骤108,将用户请求的有关信息(如组地址、MVLAN标识和接收端口等)传递给组播转发表设置模块,由该模块对以MVLAN标识和组地址索引的组播转发表项进行用户端口的添加或删除操作,并转步骤104。尽管MVLAN将用户侧端口与组播业务网络侧端口进行了隔离,但设置模块仍能将不属于MVLAN的用户端口从相应转发表项中添加或删除。设置模块在添加用户端口时将所有属于MVLAN的网络侧端口同时加入表项;在删除用户端口后若表项中不存在其它用户侧端口则认为该表项已无成员而删除。
以下结合其它附图对包括MVLAN的创建模块、组播组访问控制模块、IGMP协议处理模块和组播转发表设置模块在内的流程各部分做详细的描述。
MVLAN是被指定用于承载和传输组播业务和组播协议的VLAN及其管理结构。如图2所示,MVLAN的创建过程分为基础VLAN的创建201和MVLAN的确立202两个子过程,以及保存MVLAN信息到数据库203。无论是组播业务数据还是普通业务数据都受到VLAN划分的限制,某个VLAN中的数据默认应只在该VLAN中转发,除非对有关转发表项进行特殊设置。一个MVLAN的创建模块首先需要创建一个特定的基础VLAN,在该VLAN中组播业务和协议是主要的或唯一的传输内容。典型的这个基础VLAN的创建通常是由手动配置生成的,但也可以动态创建(比如根据网络侧的IGMP Query报文或组播路由报文的VLAN标签创建)。基础VLAN创建后最终形成一组与之相关的数据,这些数据包括基础VLAN的ID(Identifier标识),属于该VLAN的端口以及各个端口在这个基础VLAN中的TAG(标签)属性。本发明中组播基础VLAN只包含有网络侧端口,即不包含发出组播请求并等待接收组播业务数据的用户端口。MVLAN创建的第二个过程就是在基础VLAN之上确立相应的MVLAN。同样,典型的可以由手动配置生成的但也可以如上相应地动态生成。这一子过程为支持组成员管理和组播业务建立了一组专用数据信息并进行保存(如MVLAN信息数据库)。这些信息包括MVLAN所对应基础VLAN的ID,希望从该MVLAN中接收组播业务的用户端口(用户端口可以静态配置也可以通过用户发送的IGMP请求动态学习)以及该MVLAN能提供哪些服务(即组地址)地址等信息。创建好的MVLAN有关信息将被最终保存并提供给后续的IGMP协议处理模块使用。当然在需要时可以通过本模块对MVLAN信息数据库中的内容进行更新。
组播组访问控制是指网络设备能通过某种方式控制用户可以访问的组播业务资源。如图3所示,本发明的组播组访问控制模块由组播组控制列表301、列表访问的控制规则302和控制过程303组成。组播组访问控制列表是为每个用户端口建立的用于保存该端口用户组播访问权限的数据结构。典型的访问列表中含有该用户端口能够访问哪些组播组业务的IP地址以及该端口下用户不能访问的组播组IP地址的信息,也可以包括用户在什么时间可以访问等其它信息。典型的访问列表可以是手工配置的,但也通过其它(如通过认证授权服务器获取或特殊协议直接从特殊服务器获取)方式动态地生成和更新。控制规则是检查访问控制列表时遵循的约定顺序和裁决方法,典型的可以采用最先匹配的规则(即找到最近一条设置的该组的控制项便认为找到匹配项),但也可以采用最后匹配等其它规则。组播组访问控制过程实质也就是当用户提出接收某个组播业务请求时根据用户请求信息和用户自身的信息按照访问规则检查控制列表并最终返回是否允许为用户提供该业务的结果。在本发明所提供的组播业务管理方法中,用户组播请求必须首先接受访问控制模块的处理,只有通过了访问控制的用户请求才能有之后的IGMP协议模块处理。
IGMP协议报文是组播组管理的标准协议,定义了组播组成员管理的报文格式和含义。IGMP报文包括Query、Report和Leave三种类型。用户希望接收某个组播组业务时,需要使用Report来请求数据。但这三种类型的报文在接入设备的用户侧和网络侧都可能出现。本发明中的IGMP协议处理模块包括用户侧IGMP报文处理和网络侧IGMP报文处理两个子过程。Query报文通常是组播路由或代理设备发送的,用于查询是否存在任何或特定组成员。接入网设备的用户侧通常是组播业务的最终用户,所以如图4a所示,包括接收步骤411和丢弃步骤412,本发明对于从用户侧接收到的Query报文不作处理和转发。
如图4b所示,是用户侧对Report类型报文处理流程步骤421,收到用户的Report报文并通过了组播组访问控制模块,步骤422,IGMP协议处理模块首先根据组播组请求的特征(如组IP地址等)访问MVLAN信息数据库,以确定一个有效的MVLAN。
步骤423,如果可以确定则在该MVLAN的信息数据库中记录该组播组以及该用户申请了该组播组的信息。在记录过程中若没有该组则首先创建该组,否则在已存在的记录中添加用户端口。
步骤424,最后根据MVLAN信息数据库中有关参数,决定是否将该用户的Report报文向网络侧转发。如果转发则转发的方法是将属于该MVLAN所对应基础VLAN的所有端口作为目的端口,如果其中某些端口被聚合在一起则仅选择其之一进行转发。转发的同时处理模块根据端口在基础VLAN中的TAG情况决定是否为转发的IGMP报文携带MVLAN的特征信息。
步骤425,最后通过组播转发表设置模块设置接入系统的组播转发表项。
如图4c对于用户侧Leave报文的处理与Report类似,只是在通过控制模块后,如果MVLAN的配置允许用户立刻离开组播组,则将该端口从MVLAN信息数据库中删除,然后通过组播转发表设置模块清除该组中用户的端口位。
如图5a、5b、5c所示,在网络侧接收到Query,IGMP报文处理模块将该报文向所有MVLAN中已知的组播业务用户端口和MVLAN对应基础VLAN中的其它端口转发。当在网络侧接受到Report和Leave报文时,这两类报文的信息就将不记录如MVLAN信息数据库也不据此对组播转发表进行设置,处理模块仅将这两类报文向MVLAN对应基础VLAN中的所有其它端口转发。
网络接入设备通过专用的交换引擎完成数据报文的交换,也为组播数据的转发提供特定的转发表。如图6是典型的组播转发表的结构示意图;所示该转发表通常以组播MAC地址601和VLAN ID 602作为索引,表项包括端口位图603和UNTAG(非标签)端口位图604。
如图7a、7b所示,本发明对组播转发表的设置模块包括添加端口过程和删除端口过程。
图7a中添加端口过程包括步骤701获取当前转发表项的内容;步骤702添加用户端口;步骤703添加MVLAN对应基础VLAN中的端口;步骤704写入组播转发表。
在添加端口过程702中如果不存在该组播组则使用组播组MAC和MVLAN的ID作为索引创建一条空表项,以同样的索引获取该表项并存储在临时结构中,然后将用户端口加入到该表项的端口位图中,同时也将MVLAN中的其它端口加入到该表项的端口位图中,最后将该表项写回到组播转发表中。
图7b中删除端口过程包括步骤711获取当前转发表项的内容;步骤712删除用户端口;步骤713判断当前转发表项是否已经没有用户端口,没有用户端口转步骤714,有用户端口转步骤715;步骤714删除该组播转发表项;步骤715写入组播转发表。
在删除端口过程中,首先从组播转发表中以组播MAC和MVLAN的ID作为索引获取该表项并存放在临时结构中。从表项中清除相应的用户端口位,然后检查位图中是否只有MVLAN中的端口,如果是则说明没有用户在该MVLAN的该组播组中则将该表项从组播转发表中清除,否则将处理完的临时表项写回组播转发表中。从组播表设置过程可以看出,设入表项的用户端口并不属于MVLAN,但在设置成功后组播业务数据在MVLAN中到达接入设备后就可以根据转发表项的设置转发给请求该业务的用户。而MVLAN对用户是相对透明的,用户不能随意访问MVLAN,而用户的组播请求在MVLAN的控制下提供。
本发明在设置用户端口的同时对MVLAN对应基础VLAN中端口的设置使得组播业务数据可以在MVLAN中发送,提供了对多种组网方式的支持。而且,本发明中对于网络侧IGMP协议处理过程也直接决定了可以实现多种组网方式的能力,如图8a、8b为两种典型组网应用,组播业务数据802可以直接送到接入设备,也可以通过服务器转送,不影响普通业务数据801。
图9a、9b所示为本发明方法的其它组网拓扑结构,可以链型组网也可以环形组网。
以上所述仅为本发明的较佳实施例,并非用来限定本发明的实施范围;凡是依本发明所作的等效变化与修改,都被本发明的专利范围所涵盖。
权利要求
1.一种在接入设备中管理组播业务的方法,其特征在于,包括如下步骤步骤一,为组播业务建立一个或多个独立的基础虚拟局域网,基础虚拟局域网中的组播业务端口仅包括网络侧的组播业务端口;步骤二,通过组播虚拟局域网创建模块建立与基础虚拟局域网对应的一个或多个包括有所述组播虚拟局域网的用户、所述组播虚拟局域网管理的组播业务范围和与所述组播虚拟局域网对应的基础虚拟局域网的标识的对应信息;步骤三,通过组访问控制模块为每个用户侧端口建立一个控制列表,并且建立用于遍历所述控制列表的控制规则;步骤四,接收IGMP协议报文,并将所述报文的报文相关信息传递给所述控制模块,所述控制模块按照所述控制规则并通过一个控制过程来遍历相应用户的控制列表,并返回控制结果;步骤五,根据所述控制结果判断所述用户是否通过了组访问控制,是则执行步骤六,否则转到步骤四;步骤六,将所述IGMP协议报文和所述报文相关信息传递给IGMP协议处理模块,所述处理模块根据所述报文的类型以及所述报文的获取端口对所述报文进行相应处理;步骤七,将包含组地址、组播虚拟局域网标识和接收端口信息的用户请求传递给组播转发表设置模块,所述设置模块对以所述组播虚拟局域网标识和所述组地址进行索引的组播转发表项进行用户端口的添加或删除操作。
2.根据权利要求1所述的在接入设备中管理组播业务的方法,其特征在于,在所述步骤四中,所述报文相关信息包括报文的接收端口、虚拟局域网标识和组地址信息。
3.根据权利要求1或2所述的在接入设备中管理组播业务的方法,其特征在于,在所述步骤六中,所述报文的类型为查询、报告或离开,所述端口为用户侧端口或网络侧端口。
4.根据权利要求3所述的在接入设备中管理组播业务的方法,其特征在于,在所述步骤六中,对于用户侧接收到的报文的进行如下处理对于查询类型报文直接丢弃;对于报告类型报文,首先由所述报文的报文相关信息确定相应的组播虚拟局域网,再根据所述组播虚拟局域网的配置信息,在所述组播虚拟局域网中增加该用户请求组播组的记录,并将所述报文向所述组播虚拟局域网中的所有端口转发,之后执行步骤七;对于离开类型报文,首先由所述报文的报文相关信息确定相应的组播虚拟局域网,再根据所述组播虚拟局域网的配置信息,在所述组播虚拟局域网中删除该用户请求组播组的记录,并将所述报文向所述组播虚拟局域网中的所有端口转发,之后执行步骤七。
5.根据权利要求4所述的在接入设备中管理组播业务的方法,其特征在于,在所述步骤六中,对于网络侧接收到的报文的进行如下处理对于查询类型报文,首先由所述报文的报文相关信息确定相应的组播虚拟局域网,再将所述报文向所有属于对应所述组播虚拟局域网的用户端口和所述组播虚拟局域网中的所有端口转发;对于报告类型报文,首先由所述报文的报文相关信息确定相应的组播虚拟局域网,再将所述报文向对应所述组播虚拟局域网中的所有端口转发;对于离开类型报文,首先由所述报文的报文相关信息确定相应的组播虚拟局域网,再将所述报文向对应所述组播虚拟局域网中的所有端口转发。
6.根据权利要求3所述的在接入设备中管理组播业务的方法,其特征在于,在所述步骤七中,所述设置模块添加用户端口的操作包括步骤a,获取所述转发表项的内容;步骤b,添加用户端口;步骤c,添加所有属于组播虚拟局域网的网络侧端口;步骤d,写入组播转发表。
7.根据权利要求3所述的在接入设备中管理组播业务的方法,其特征在于,在所述步骤七中,所述设置模块删除用户端口的操作包括步骤A,获取所述转发表项的内容;步骤B,删除用户端口;步骤C,判断当前转发表项是否还有用户端口,是转步骤E,否则转步骤D;步骤D,删除该组播转发表项并结束流程;步骤E,写入组播转发表,结束流程。
8.根据权利要求3所述的在接入设备中管理组播业务的方法,其特征在于,所述组播虚拟局域网通过接入服务器或者直接向网络的接入设备发送组播业务数据。
9.根据权利要求8所述的在接入设备中管理组播业务的方法,其特征在于,所述接入设备之间为链型或环形组网。
全文摘要
本发明公开了一种在接入设备中管理组播业务的方法,包括为组播业务建立一个或多个独立的基础虚拟局域网;通过组播虚拟局域网创建模块建立与基础虚拟局域网对应的一个或多个对应信息;通过组访问控制模块为每个用户侧端口建立一个控制列表和控制规则;接收IGMP协议报文,控制模块按照控制规则遍历相应用户的控制列表,并返回控制结果;如果所述用户是通过了组访问控制,将所述报文和报文相关信息传递处理模块,处理模块对报文进行相应处理;设置模块对组播转发表项进行用户端口的添加或删除操作。本发明克服了现有技术存在安全隐患、切换延迟难控制和业务质量难实施等缺点。
文档编号H04L12/56GK1735050SQ200410009420
公开日2006年2月15日 申请日期2004年8月11日 优先权日2004年8月11日
发明者杨文军, 吕朋伟 申请人:中兴通讯股份有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1