一种组播权限控制方法

文档序号:7956855阅读:191来源:国知局
专利名称:一种组播权限控制方法
技术领域
本发明涉及IP组播技术领域,具体涉及一种组播权限控制方法。
背景技术
IP网络中的组播技术实现了点到多点的数据传输。它的基本原理是多台主机可以属于一个组(通过组播地址标识),报文目的IP对应组地址,发送到这个组的数据,能够让组内所有的成员接收,并且数据不会扩散给组外的其它主机。组播技术的优点在于能够减轻源主机负载和节省网络带宽,非常适用于需要大量带宽的网络视频业务。随着IPTV(网络电视)、远程教育等网络应用的兴起,组播技术在IP网络中的应用越来越广泛,图1给出了现有技术IP组播网络示意图。从上面的原理介绍可以看出,只有组内的用户才能接收对应这个组的数据流,所以组成员信息的管理是组播技术应用的重要环节。实际网络中,接入服务器对终端用户的组播管理是通过IGMP(Internet Group Management Protocol,互联网组管理协议)报文交互实现的,简要过程如下1、用户希望接收组播数据流时,向接入服务器发送IGMP JOIN报文申请加入指定的组;2、接入服务器将用户信息添加到组成员列表后,就向用户复制组播数据;3、用户希望停止接收组播数据流时,向接入服务器发送IGMPLEAVE报文申请离开指定的组;
4、接入服务器确认用户离开后,将用户信息从组成员列表删除,不再向用户复制组播数据。
IGMP协议提供了组中成员加入和离开等基本管理功能,协议中不对用户进行认证和控制。而在现代电信网络中,运营商对各种业务应用都提出了可运营、可管理的要求,组播应用中也涉及用户权限管理的问题。因为IGMP协议未提供此类功能,所以需要在接入服务器上提供对用户组播权限的控制方法。如图2所示,目前实现用户组播权限控制的方法之一是通过Radius(Remote Authentication Dial In User Service,远程拨入用户认证服务协议)服务器给用户下发一个组播属性,Radius服务器除了完成用户的认证计费功能,还能通过下发属性的方式告知接入服务器此用户具备的网络属性,组播属性也可以作为下发属性之一。这种方法的原理是首先在Radius服务器上对用户的帐号属性进行设置,指定用户是否具有组播属性。接入服务器在用户认证过程中,判断并记录Radius服务器下发的用户属性中是否包含组播标志。然后在收到用户发送的IGMP JOIN报文时,只允许已设置组播标志的用户加入组播组,达到对用户组播权限进行控制的目的。Radius协议中没有定义标准的组播属性,所以组播属性需要在协议扩展的私有属性中实现,这样就存在不同Radius服务器和不同接入服务器的兼容性问题,可能导致增加的组播属性无法有效识别。

发明内容
本发明要解决的技术问题是提供一种组播权限控制方法,克服现有技术的组播权限控制方法不能使用访问控制列表进行组播权限控制的缺点,提高对用户控制管理的能力,并为特色组播业务定制提供运营手段。
本发明采用如下的技术方案
一种组播权限控制方法,在接入服务器上执行如下步骤A1、设置至少一个访问控制列表,其包含用户地址序列和组播组地址序列;A2、将用户识别信息与访问控制列表进行关联;A3、等待接收互联网组管理协议加入报文,在收到所述的互联网组管理协议加入报文后,将该互联网组管理协议加入报文与不同的访问控制列表进行匹配,当首次出现互联网组管理协议加入报文与访问控制列表匹配的情形时,执行步骤A4,当没有出现匹配情形时,执行步骤A5;A4、将用户信息添加到目的地址确定的组成员列表中;A5、将互联网组管理协议加入报文丢弃。
所述的组播权限控制方法,其中所述访问控制列表还包括允许标识符或者禁止标识符,所述步骤A4包括步骤若访问控制列表中包含允许标识符,将用户信息添加到目的地址确定的组成员列表中;若包含禁止标识符,直接执行步骤A5。
所述的组播权限控制方法,其中所述步骤A2包括步骤通过属性配置命令将用户识别信息与访问控制列表进行关联。
所述的组播权限控制方法,其中所述步骤A2包括步骤通过远程拨入用户认证服务协议服务器下发访问控制列表属性将用户识别信息与访问控制列表进行关联。
所述的组播权限控制方法,其中所述步骤A3中的匹配依照的规则为当互联网组管理协议加入报文首部中的源地址和目的地址分别出现在访问控制列表的用户地址序列和组播组地址序列中时,则认为互联网组管理协议加入报文与访问控制列表匹配,否则认为互联网组管理协议加入报文与访问控制列表不匹配。
所述的组播权限控制方法,其中访问控制列表包含用于确定访问控制列表生效时间的时间段参数,在收到互联网组管理协议加入报文后,接入服务器首先根据访问控制列表时间段参数确定当前生效的访问控制列表,并对生效的访问控制列表和互联网组管理协议加入报文进行匹配操作。
本发明的技术方案,在接入服务器上设置报文过滤功能强大的访问控制列表,对IGMP JOIN报文进行过滤,不仅可以控制用户能否接收组播,避免不同Radius服务器和不同接入服务器的兼容性问题,可能导致增加的组播属性无法有效识别的问题;还进一步可以定制用户能够收看的频道,实现了对用户组播权限的精细控制,克服了现有技术的Radius服务器下发的组播权限控制只能做到针对用户区分允许加入组播组和禁止加入组播组两种情况的缺点,即结合访问控制列表的时间段管理功能,对用户能够加入组播组的时间段进行控制,实现了通过用户、组播频道、接收时间段等多个条件来灵活、精细地控制组播权限;在组播网络运营方面,大大提高了对用户控制管理的能力,并为特色组播业务定制提供了方便的运营手段。


本发明包括如下附图图1是现有技术中IP组播网络示意图;图2是现有技术利用Radius服务器下发组播属性示意图;图3是本发明接入服务器对IGMP报文进行处理的流程图。
具体实施例方式
下面结合附图和实施例对本发明作进一步详细说明ACL(Access Control List,访问控制列表)规则是网络设备上出于安全和其他方面的考虑而配置的一些规则,一条ACL规则由若干条“permit/deny”语句组成,共同构成一种判断标准。设备检查每一个接收的数据包,和配置的ACL规则相比较(如报文的协议类型、IP地址、端口号等),检查报文特征是否与ACL规则匹配,从而决定对该数据包是转发还是丢弃。Time_Range(时间段)的功能是判断某一时间点是否在某一规定的时间段范围之内,可以为其它功能模块(如ACL)提供基于时间段生效的支持。本发明针对组播权限控制提出了一种解决方案,利用ACL和Time_Range,根据用户帐号、用户加入的组(对应组播地址或组播节目频道)、用户收看节目的时间段等诸多因素在接入服务器上配置不同的组合控制方式,实现了对用户组播权限的精细控制。
本发明的核心在于接入服务器收到用户的IGMP JOIN报文(互联网组管理协议加入报文)后,先将用户关联的ACL规则与IGMP JOIN报文进行匹配,从而实现对报文的源IP和目的IP等信息的过滤,地址信息从IP报文首部中获取,源IP代表用户主机、目的IP代表组播组(实际上就是组播频道地址),与ACL规则匹配的报文,根据ACL规则中的关键字(Permit/deny)决定对IGMP JOIN报文的处理,与ACL规则不匹配的报文则被丢弃。这样通过使用ACL的相关功能,就能对用户能否加入组播的权限进行精细控制。
本发明的ACL规则采用如下的编码格式关键字(access-list)+组编号+关键字(Permit/deny)+报文协议类型+源网络号+源网络反掩码(可选)+目的网络号+目的网络反掩码(可选)+扩展控制元素(可选);其中access-list表示一条ACL规则,组编号表示ACL规则名称,Permit是允许标识符,deny是禁止标识符。
在源网络号/目的网络号参数输入为any时,表示任意网络,此时无需源网络/目的网络反掩码。
扩展控制元素表示附加的过滤元素,如IP TOS字段、Time_Range控制元素等。
下面是一组具体的ACL规则实例access-list 500 permit ip any 224.0.0.0 31.255.255.255;用于过滤所有加入组播组的报文。
access-list 500 permit ip any 224.1.1.1 0.0.0.0;用于过滤加入目的地址为224.1.1.1组播组的报文。
access-list 600 permit ip any 224.1.1.2 0.0.0.0 time-range time1;用于加时间段限制的组播权限控制方式。
如图3所示,接入服务器对IGMP报文的处理流程如下步骤301接入服务器接收用户终端发送的IGMP JOIN报文;步骤302接入服务器接判断发送IGMP JOIN报文的用户终端是否关联了ACL规则,如果是,执行步骤303,否则,执行步骤306;步骤303接入服务器查找到用户关联的ACL规则后,先根据ACL的时间段参数(Time_Range)判断在当前时刻有哪些ACL生效;步骤304将IGMP JOIN报文信息和当前所有关联生效的ACL规则依顺序匹配,遇到第一条符合的规则即停止匹配,继续执行步骤305,如果没有出现匹配情形,则转步骤307;步骤305如果IGMP JOIN报文匹配上的ACL规则中含有允许标志符Permit转步骤306处理,如果IGMP JOIN报文匹配上的ACL规则中含有Deny则转步骤307处理;步骤306IGMP JOIN报文交给IGMP单元继续处理,在对应的组播组中添加此用户终端的成员信息。
步骤307IGMP JOIN报文丢弃。
在步骤302中用户终端通过用户识别信息关联ACL规则的方式有两种(1)通过属性配置命令进行关联例如在用户所属的接口或者ISP(Internet Service Provider,互联网服务提供商)域下指定用户关联的ACL规则名称;(2)在用户认证过程中通过Radius服务器下发属性,Radius协议中定义了标准的ACL属性,无需扩展协议,在用户上线时,接入服务器会将用户关联的ACL规划记录在用户信息表中。用户识别信息可以是用户上网帐号、IP地址或用户线路识别信息。
在步骤303中Time_Range功能的时间范围设置方法有多种,例如(1)配置周期性时间段,如每天的19:00至21:00;(2)配置绝对时间段,如2000-01-01 00:00至2000-01-31 00:00。进行组播控制时,可以将Time_Range和进行组播限制的ACL规则组合使用,来实现组播权限的时间控制。举例来说,可以定义这样一条组合规则ACL规则A,如果每只允许用户在20:00到22:00之间收看电影频道,则在ACL规则A中加入“Time_Range 20:00-22:00”,将用户和规则A关联,此后用户在每天规定时间段发送JOIN报文加入电影频道正常,在规定时间段以外,用户加入电影频道的JOIN报文会被丢弃,不能加入此频道;同时对于已经上线的用户,因为维持在线的JOIN报文丢弃,会在IGMP查询超时后下线,通过这种方式实现了对用户组播权限的精细控制。
在步骤304中ACL规则匹配的报文信息主要是IGMP JOIN报文的源IP和目的IP。IGMP JOIN报文与ACL规则匹配是指互联网组管理协议加入报文首部中的源地址和目的地址分别在ACL规则的用户地址序列和组播组地址序列当中,JOIN报文中的源地址代表用户的信息,匹配源地址可以控制哪些用户可以加入组播,IGMP JOIN报文中的目的地址是组播频道地址,匹配目的地址可以控制用户接收哪些频道,通过这种方式实现了对用户组播权限的精细控制。
下面通过具体的配置实例来对本发明的实施过程进行说明(1)接入服务器配置时间段time1,每工作日19:00~22:00有效BRAS(config)#time-range time1 19:00 to 22:00 working-day
(2)接入服务器配置ACL规则组500和600,分别只允许用户加入地址为224.1.1.1和224.1.1.2的频道,且规则在时间段time1内生效BRAS(config)#access-list 500 permit ip any 224.1.1.1 0.0.0.0 time-rangetime1BRAS(config)#access-list 500 deny ip any anyBRAS(config)#access-list 600 permit ip any 224.1.1.2 0.0.0.0 time-rangetime1BRAS(config)#access-list 600 deny ip any any(3)接入服务器配置两个ACL规则组的集合(profle),名为igmp1和igmp2,分别包含ACL规则组500和600BRAS(config)#profile igmp1BRAS(config-profile-igmp1)#ip access group 500BRAS(config)#profile igmp2BRAS(config-profile-igmp2)#ip access group 600(4)Radius服务器上配置用户帐号关联的ACL集合(直接在Radius服务器的用户信息中设置Filter-Id的属性,该属性是Radius协议中的标准定义),帐号user1@163和igmp1关联,user2@163和igmp2关联。
(5)接下来用户上线时,Radius服务器将每个用户的ACL集合属性下发给接入服务器,接入服务器按照预先定义好的规则进行组播控制,在收到互联网组管理协议加入报文后,将互联网组管理协议加入报文与不同的访问控制列表进行匹配,当首次出现互联网组管理协议加入报文首部中的源地址和目的地址分别在访问控制列表的用户地址序列和组播组地址序列中的情形时,即停止匹配操作,此时若访问控制列表中包含允许标识符,则将用户信息添加到目的地址确定的组成员列表中;当互联网组管理协议加入报文首部中的源地址和目的地址并没有分别出现在访问控制列表的用户地址序列和组播组地址序列中,或者访问控制列表中包含禁止标识符,则将互联网组管理协议加入报文丢弃。
user1@163只能在每个工作日的19:00~22:00时间段内加入到组播频道224.1.1.1,而user2@163只能在每个工作日的19:00~22:00时间段内加入到组播频道224.1.1.2。
虽然通过参照本发明的优选实施例,已经对本发明进行了图示和描述,但本领域的普通技术人员应该明白,可以在形式上和细节上对其作各种各样的改变,而不偏离所附权利要求书所限定的本发明的精神和范围。
权利要求
1.一种组播权限控制方法,其特征在于,在接入服务器上执行如下步骤A1、设置至少一个访问控制列表,其包含用户地址序列和组播组地址序列;A2、将用户识别信息与访问控制列表进行关联;A3、等待接收互联网组管理协议加入报文,在收到所述的互联网组管理协议加入报文后,将该互联网组管理协议加入报文与不同的访问控制列表进行匹配,当首次出现互联网组管理协议加入报文与访问控制列表匹配的情形时,执行步骤A4,当没有出现匹配情形时,执行步骤A5;A4、将用户信息添加到目的地址确定的组成员列表中;A5、将互联网组管理协议加入报文丢弃。
2.根据权利要求1所述的组播权限控制方法,其特征在于,所述访问控制列表还包括允许标识符或者禁止标识符,所述步骤A4包括步骤若访问控制列表中包含允许标识符,将用户信息添加到目的地址确定的组成员列表中;若包含禁止标识符,直接执行步骤A5。
3.根据权利要求1所述的组播权限控制方法,其特征在于所述步骤A2包括步骤通过属性配置命令将用户识别信息与访问控制列表进行关联。
4.根据权利要求1所述的组播权限控制方法,其特征在于所述步骤A2包括步骤通过远程拨入用户认证服务协议服务器下发访问控制列表属性将用户识别信息与访问控制列表进行关联。
5.根据权利要求3或4所述的组播权限控制方法,其特征在于所述步骤A3中的匹配依照的规则为当互联网组管理协议加入报文首部中的源地址和目的地址分别出现在访问控制列表的用户地址序列和组播组地址序列中时,则认为互联网组管理协议加入报文与访问控制列表匹配,否则认为互联网组管理协议加入报文与访问控制列表不匹配。
6.根据权利要求5所述的组播权限控制方法,其特征在于访问控制列表包含用于确定访问控制列表生效时间的时间段参数,在收到互联网组管理协议加入报文后,接入服务器首先根据访问控制列表时间段参数确定当前生效的访问控制列表,并对生效的访问控制列表和互联网组管理协议加入报文进行匹配操作。
全文摘要
本发明公开了一种组播权限控制方法,在接入服务器上设置至少一个访问控制列表,其包含用户地址序列和组播组地址序列;然后将用户识别信息与访问控制列表进行关联;等待接收互联网组管理协议加入报文,在收到互联网组管理协议加入报文后,将互联网组管理协议加入报文与不同的访问控制列表进行匹配;最后根据匹配结果决定是否丢弃。利用本发明,能避免因Radius服务器和不同接入服务器的兼容性导致增加的组播属性可能无法有效识别的问题,实现了通过用户、组播频道、接收时间段等多个条件来灵活、精细地控制组播权限。
文档编号H04N7/16GK1852258SQ20061006011
公开日2006年10月25日 申请日期2006年3月30日 优先权日2006年3月30日
发明者周澜 申请人:华为技术有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1