CN101087246B - 一种实现网络层组播业务及业务管理的***与方法 - Google Patents
一种实现网络层组播业务及业务管理的***与方法 Download PDFInfo
- Publication number
- CN101087246B CN101087246B CN2006100912741A CN200610091274A CN101087246B CN 101087246 B CN101087246 B CN 101087246B CN 2006100912741 A CN2006100912741 A CN 2006100912741A CN 200610091274 A CN200610091274 A CN 200610091274A CN 101087246 B CN101087246 B CN 101087246B
- Authority
- CN
- China
- Prior art keywords
- multicast
- user
- source
- module
- authentication
- 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.)
- Active
Links
Images
Landscapes
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本发明提出了一个通用的可运营的组播业务***,主要包括组播接收者、组播源、组播用户控制设备、组播源控制设备、纯组播中继设备和组播业务管理平台;同时提出了相关的组播业务管理方法。利用该***和方法,能够实现组播业务的管理和运营。本发明解决了基于组模式通信的各种组播业务的管理和运营问题,尤其是提供了用户鉴权和计费的功能。
Description
技术领域
本发明属于互联网和通信领域,适用于基于组模式通信的各种业务,描述了一个能够达到基本业务运营要求的组播业务***,并针对该组播业务***,提出相关业务管理的方法。
背景技术
组播是一种与点到点单播不同的通信模式,是一种基于组的通信模式,基于IP协议的数据互联网上,已经制定了支持组播通信的相关控制协议,如主机与组播路由器之间的IGMP协议、组播路由器之间的组播路由协议等。
基本组播业务的工作模型图如附图1所示。
图1的***中主要包含3类实体,一类是组播接收者100、一类是组播中继设备200、一类是组播源300。其中组播接收者和组播源在一个组中是对等的,即都看作组播的主机host,而组播中继设备常被看作路由器Router。
组播源300和组播接收者100,主要完成组播组的创建、加入、离开,并实时与组播中继设备200通过IGMP(Internet GroupManagement Protocol)消息来交互组播通信状态;而组播中继设备200主要与组播主机(100与300)通过IGMP消息交互来获得组播状态变化信息,维护本地组播转发表,并对组播流量根据组播转发表进行端口复制,同时组播中继设备之间要通过组播路由协议,互相交换组播状态信息,维护组播路由域内的组播树信息。
现有组播通信业务的基本流程如附图2所示:
(1)组播源通过IGMP创建组播组;
(2)连接组播源的组播路由器更新组播转发表;
(3)组播路由器之间交换该组的组播信息,生成组播树;
(4)组播接受者即组播用户通过IGMP消息加入该组播组;
(5)连接用户的组播路由器更新组播转发表;
(6)组播路由器之间交换组播信息,更新组播树;
(7)组播数据从组播源发送到组播路由器;
(8)组播路由器间根据组播树对组播数据进行复制;
(9)接入组播用户的组播路由器针对用户端口进行组播数据复制;
(10)组播接收者收到组播数据;
(11)组播接收者离开组播组;
(12)连接用户的组播路由器更新组播表;
(13)组播路由器之间交换组播信息,更新组播树;
(14)周期性地检查,该组播路由器下,是否还有针对该组播组的用户?
(15)如果没有针对该组的组播用户,则删除针对该组的组播转发表。
(16)组播路由器之间交换组播信息,更新组播树。
存在的主要问题
如上所述的基于标准的IGMP协议和组播路由协议,主要规范了组通信的流程和处理方法,但由于缺乏对组播用户和组播源的鉴权和计费功能,不能实现区分业务、区分用户的组播策略管理和控制,所有主机均可以自由创建、加入和离开组播通信组。所以说通过基本的IGMP和组播路由协议,组播主机、组播路由器组网之后,无法形成一个可运营的组播业务***。
尽管目前,已经有一些试验运营的组播业务***,例如IPTV等流媒体直播业务***,可以通过对接入组播用户的组播中继设备进行静态配置的方式,来控制组播用户的组播加入、离开等操作,但业务开通、变更和管理的效率都比较低。
发明内容
本发明提出了一个通用的可运营的组播业务***,主要包括组播接收者、组播源、组播用户控制设备、组播源控制设备、纯组播中继设备和组播业务管理平台;同时提出了相关的组播业务管理方法。利用该***和方法,能够实现组播业务的管理和运营。
本发明解决了基于组模式通信的各种组播业务的管理和运营问题,尤其是提供了用户鉴权和计费的功能。
本发明提供了一种组播***,包括组播接收者(100)、组播源(300)、纯组播中继设备(600),其特征在于所述***还包括:组播用户控制设备(400),所述组播用户控制设备(400)连接到一个或多个组播接收者(100);组播源控制设备(500),所述组播源控制设备(500)连接到一个或多个组播源(300);纯组播中继设备(600)被连接到组播用户控制设备(400)、组播源控制设备(500),并且纯组播中继设备(600)彼此相互连接;组播业务管理平台(700),包括组播用户管理模块(7001)、组播源管理模块(7003);其中组播源控制设备(500)截获组播源(300)的组播创建请求,并针对组播源(300)的请求对组播源(300)进行认证,其中组播源控制设备(500)向组播业务管理平台(700)的组播源管理模块(7003)发起认证请求,并根据认证结果来确定是否允许该组播源(300)创建该组播组;以及,其中所述组播用户控制设备(400)截获组播用户(100)的组播加入请求,并针对组播用户(100)的组播加入请求对组播用户(100)发起认证要求,其中所述组播用户控制设备(400)向组播业务管理平台(700)的组播用户管理模块(7001)发起组播用户认证请求,并根据认证结果来确定是否允许该组播用户(100)加入一个组播组。
本发明还提供了一种用于组播的方法,包括如下步骤:
(1)组播源(300)向组播源控制设备(500)发送请求以创建一个新的组播组;
(2)组播源控制设备(500)接收组播源(300)的创建请求, 收集该组播源(300)的认证信息,以及向组播源管理模块(7003)发起一个创建组播组的认证请求;
(3)组播源管理模块(7003)对认证请求进行验证处理,以及向组播源控制设备(500)返回认证结果:如果验证失败,则返回认证失败消息和失败原因;如果验证成功,则返回验证成功消息;
(4)组播源(300)认证成功之后,该组播源(300)被发布,以便于组播用户(100)选择和加入;
(5)组播用户(100)选择一个已经发布的组播源(300),其中组播用户(100)向组播业务用户控制设备(400)发送一个加入请求;
(6)组播用户控制设备(400)接收组播用户(100)的加入请求,收集该组播用户(100)的认证信息,以及向组播用户管理模块(7001)发起认证请求;
(7)组播用户管理模块(7001)收到组播用户控制设备(400)发起的认证请求,对请求中的认证信息进行验证,以及向组播用户控制设备(400)返回验证结果:如果验证失败,则返回验证失败消息和失败原因;如果验证成功,则返回验证成功消息;
(8)组播用户控制设备(400)与上游的组播中继设备(600)进行组播消息交换,更新相应的组播信息;以及
(9)所述组播用户(100)接收相应的组播源(300)的组播数据。
附图说明
图1显示了现有技术中的基本的组播业务的***的模型图。
图2显示了现有组播业务的基本业务流程图。
图3显示了本发明的可运营的组播业务***的一种优选实施例。
图4显示了本发明的可运营的组播业务***的一种基本业务流程。
图5显示了发明的组播用户控制设备的一种优选实施例。
这里所公开的***和方法在其各种实施例中克服了上述现有技术的缺点,并且实现了这种***和方法之前不可能存在的优点。
以下将参考附图更完整地描述本发明,附图中示出了本发明的优选实施例。但是本发明可体现在许多其他的形式中,而不应当被理解为限于这里所述的实施例;相反提供这些实施例是为了公开内容将会详尽和完整,并且将会完整地将本发明的范围传达给本领域的技术人员。从始至终类似的标号都表示类似的元件。
在前述描述和相关附图中给出的教导的帮助下,本发明所属领域的技术人员将会想到本发明的许多修改和其他实施例。因此,要理解本发明不限于所公开的特定实施例,修改和其他实施例想要被包括在所附权利要求书的范围内。虽然这里采用了特定术语,但是它们只是在一般的描述性意义上使用的,而不是用于限制目的。
具体实施方式
以下参考根据本发明的一个实施例的方法、装置(即***)框图和流程图描述本发明。要理解框图和流程图的每个块以及框图和流程图中的块的组合分别可由计算机程序指令实现。这些计算机程序指令可被加载到通用计算机、专用计算机或其他可编程数据处理装置上,以产生机器,以便在计算机或其他可编程数据处理装置上执行的指令产生用于执行***或流程图块中指定的框图的装置。
这些计算机程序指令也可被存储在计算机可读存储器中,该计算机可读存储器可指导计算机或其他可编程数据处理装置按特定方式工作,以便存储在计算机可读存储器中的指令产生一件产品,其中包含实现一个或多个流程图块中指定的功能的指令装置。计算机程序指令也可被加载到计算机或其他可编程数据处理装置上,以致使一系列操作步骤在计算机或其他可编程装置上被执行,以产生计算机实现的过程,以便在计算机或其他可编程装置上执行的指令提供用于实现一个或多个流程图块中指定的功能的步骤。
因此,框图和流程图的块支持用于执行指定功能的装置的组合、用于执行指定功能的步骤的组合以及用于执行指定功能的程序指令装置。还要理解,框图和流程图的每个块以及框图和流程图中的块的组合可由执行指定功能或步骤的基于硬件的专用计算机***或专用硬件和计算机指令的组合实现。
图3示例性的显示了根据本发明的一个实施例的一种通用的可运营的组播业务***。
如图3所示,本***可以包括以下装置:
组播接收者100:主要发起组播加入请求、组播离开请求、能够响应组播用户管理设备对其发起的用户认证要求。
组播接收者100与组播用户控制设备400相连接。
组播源300:主要创建组播组,能够响应组播源管理设备对其发起的组播源认证要求。
组播源300连接到组播源控制设备500。
组播用户控制设备400:所述组播用户控制设备400连接到一个或多个组播接收者100。组播用户控制设备400能够截获用户的组播加入、离开消息包,并针对用户的组播加入和离开消息,向用户发起认证要求,或自动提取用户的认证信息和组播组信息。
组播用户控制设备400还连接到组播业务管理平台700中的组播用户管理模块7001,其能够向组播业务管理平台700的组播用户管理模块7001发起用户认证请求,并接收授权响应,按照认证结果,来确定是否允许该用户加入特定组播组。组播用户控制设备400最少应支持组播中继设备的基本功能。
组播源控制设备500:所述组播源控制设备500连接到一个或多个组播源300。组播源控制设备500能够截获组播源的组播创建消息包,并针对组播源的发布,向组播源发起认证要求,或自动提取组播源的认证消息和组播组信息。
同时,组播源控制设备500还连接到组播业务管理平台700中的组播源管理模块7003,以向组播业务管理平台700的组播源管理模块 7003发起认证请求,并接收授权响应,按照认证结果,来确定是否允许该组播源创建该组播组。组播源控制设备500最少应支持组播中继设备的基本功能。
纯组播中继设备600:其连接到组播用户控制设备400、组播源控制设备500,并且可以彼此相互链接。纯组播中继设备600能够通过IGMP或组播路由协议来更新组播信息、并能够创建和维护组播树与转发表,并能够按照组播转发表进行组播复制的设备。
组播业务管理平台700:包括组播用户管理模块7001、组播设备管理模块7002、组播源管理模块7003、组播计费管理模块7004、组播业务管理模块7005。所述组播业务管理平台能够完成与组播业务运营与管理相关的用户管理、计费管理、业务管理、设备管理和组播源管理。其中子模块7001-7005可以通过多种方式实现,例如通过软件实现。
参见附图4,示例性的显示了上述***所支持的组播业务的使用流程。
(1)组播源的主机300向组播源控制设备500发送IGMPReport消息来申请创建新的组播组,以请求发布新的组播源;
(2)组播源控制设备500接收到组播源的新创建组的IGMP消息,采集组播源的部分认证信息,并要求组播源输入其它相关认证信息,汇总这些认证信息后,向组播源管理模块7003发起组播组创建的认证请求;
(3)组播源管理模块7003对组播认证请求中的认证信息进行验证处理。此外,还可以记录相关验证信息,如时间、结果、认证参数等,供未来计费和查询使用。
(4)组播源管理模块7003向组播源控制设备500返回认证结果。如果是验证失败,则返回认证失败消息和失败原因,7003将丢弃组播源300发送的该条申请创建组的IGMP消息;如果验证成功,则返回验证成功消息;
(5)验证成功后,需要对纯组播中继设备600进行该组播组的 许可参数配置,由7003将相关的组播配置信息发送给组播设备管理模块7002,由组播设备管理模块7002实现对组播中继设备的实际参数配置更改;
(6)在组播源创建认证成功之后,组播源管理模块7003通知组播业务管理模块7005对此组播源进行发布,便于组播用户选择和加入;
(7)组播用户100通过点击已经发布的组播源,进行组播加入。加入时,组播用户100会向组播业务用户控制设备400发送一条IGMP report加入消息,请求加入该组播组;
(8)组播业务用户控制设备400接收到组播用户100请求加入组播组的IGMP report加入消息后,采集相关用户认证信息,并要求用户输入其它相关认证信息,汇总这些认证信息后,向组播用户管理模块7001发起认证请求;
(9)组播用户管理模块7001收到400发起的组播用户认证请求之后,对请求中的认证信息进行验证处理。此外,可以记录相关验证信息,如时间、结果、认证参数等,供未来计费和查询使用。
(10)组播用户管理模块7001向组播用户控制设备400返回验证结果。如果验证失败,则返回验证失败消息和失败原因;如果验证成功,则返回验证成功消息,并记录该用户加入该组的起始时间,供未来计费使用;
(11)如果认证成功,该组播用户控制设备400对该用户的IGMP Report加入消息,进行IGMP代理和汇总处理,更新组播表;
(12)组播用户控制设备400与上游组播中继设备600进行组播消息交换,更新组播信息;
(13)组播中继设备之间通过标准的组播路由协议交换组播更新信息,最终保证用户正常加入到该组的组播树;
(14)该组播源300的用户便可以正常接收和处理该组的组播数据了。
(15)此外,组播接收者100在使用组播业务的过程中,应该按 照90秒的周期,定期向组播用户控制设备400发送IGMP report维持消息,一旦组播用户控制设备400接收到此消息后,则针对性重置该组播表项的定时器1为120秒,重新开始倒计时;
(16)此外,组播接收者100在使用组播业务的过程中,组播用户控制设备400会维持该用户针对该组的组播状态,并设置2个定时器,定时器1设置为120秒,即如果120秒倒计时回零,还没有收到该用户自动上报针对该组的Report维持消息,则发起一个向该用户针对该组的IGMP查询消息,同时设置定时器2为10秒;如果10秒内无应答,则重发查询消息,并充值定时器2为10秒;
(17)如果连续三次无应答,则删除该组播状态项目;同时向组播用户管理模块7001发送“该用户离开该组”消息;组播用户管理模块7001记录用户离开时间,供未来计费和查询使用;
(18)此外,在使用过程中,组播用户也可以主动发送IGMPleave离开消息,通知组播用户控制设备400,离开该组;
(19)此外,组播用户控制设备400收到该离开消息后,进行组播代理和汇总处理,更新组播表;
(20)组播用户控制设备400向组播用户管理模块7001上报用户离开信息,组播用户管理模块7001记录用户离开时间,供未来计费和查询使用。
上述***的各个模块之间的连接关系和信号传输方法可以采用以下方法实现:
(一)
接口1——100与400之间的接口、接口2--300与500间的接口、接口3--500与600间接口、接口4----400与600之间的接口的一种实施方式:
上述接口均采用IETF的IGMP,Internet Group ManagementProtocol协议,协议版本可采用v1和v2版本,IGMP是一种工作在主机host和组播路由器之间的组播控制协议,是承载在IP层上的网 络层协议,如下表1所示。
MAC header | IP header | IGMP packet |
表1
迄今为止,IETF针对IGMP共发布了v1(rfc1112)、v2(rfc2236)和V3(rfc3376)三个版本,其中广泛应用的主要包括IGMP v1和IGMPv2版本。
(1)IGMP v1介绍
消息格式定义如表2所示:
0123 4567 89012345 6789012345678901
++++ ++++ ++++++++ +++++++++++++++++
|Version|Type|Unused|Checksum|
+++++++++++++++++++++++++++++++++
| Group Address |
+++++++++++++++++++++++++++++++++
表2
其中:
Version设置为0001,标识IGMP版本1;
Type设置为1=Host Membership Query,2=HostMembership Report;
Unused设置为0,接收者忽略此位;
Checksum16比特,设置为IGMP整体消息内容的校验和;
Group Address,在query消息中设置为0,report消息中设置被报告的组地址;
采用该版本协议时,本发明的主要工作流程描述如下:
加入过程:首先主机Host发送IGMP Membership Report消息,该IGMP包的源IP地址为本主机地址,目的IP地址为224.0.0.2(代表所有组播路由器),IGMP消息的Version设为1,Type设置为2,Group Address设置为主机想加入的组的组播地址;然后与其相连的组播路由器接收到该Report包之后,就认为该主机已经加入了该组 播组。
查询过程:组播路由器定期通过指定端口发送IGMP query消息,源IP地址设置为该组播路由器的接口地址,目的IP地址设置为224.0.0.1(代表所有组播),IGMP消息中version设为1,Type设为1,Group Address设为0。
查询响应过程:主机接收到来自路由器的Query消息,则必须在10秒内,向上发送带有自己已加入的组地址的Report消息作为对此条Query消息的回答。
离开过程:组播路由器定期通过指定端口发送query消息,如果几个查询周期都没有主机响应针对已经缓存在某个组的Report消息,则认为此接口下所有主机都已经离开了该组。
(2)IGMP v2背景介绍
消息格式定义如表3所示:
01234567 89012345 6 7 8 901234567890 1
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|Type |Max Resp Time | Checksum |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Group Address |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
表3
其中:
Type可以设置为:
0x11=Membership Query,包含两种查询消息,一种是通用查询消息,此时查询消息的目的IP地址设置为224.0.0.1,Group Address设置为0.0.0.0;一种是特定组查询消息,查询消息的目的IP地址设置为接收到Leave消息的源IP地址,Group Address设置为希望查询的组的组播地址;
0x16=Version 2 Membership Report;
0x17=Leave Group;
0x12=Version 1 Membership Report。
Max Response Time可以设置为:允许被查询主机返回Report消息的最大等待时间。
Checksum16比特,设置为IGMP整体消息内容的校验和;
Group Address可以设置为:在通用查询query消息中设置为0,在特定组查询消息中设置为被查询的组地址,在report和leave消息中设置为被报告和离开的组地址。
采用该版本协议时,本发明的工作流程描述如下:
加入过程:首先主机Host发送IGMP Membership Report消息,该IGMP包的源IP地址为本主机地址,目的IP地址为224.0.0.2(代表所有组播路由器),IGMP消息的Type设置为0x12或0x16,GroupAddress设置为主机想加入的组的组播地址;然后与其相连的组播路由器接收到该Report包之后,就认为该主机已经加入了该组播组。
查询过程:同一个网段的组播路由器通过选择,制定接口IP地址最小的一个为指定的查询路由器,可以定期通过指定端口发送IGMP通用query消息或接收到某个离开某组的消息后,发起针对该组的特定组query消息。源IP地址设置为该组播路由器的接口地址,目的IP地址设置为224.0.0.0(代表所有组播主机),IGMP消息中Type设为0x11,Group Address设为0或特定组。
查询响应过程:主机接收到来自路由器的通用Query消息,则必须在10秒内,向上发送带有自己已加入的组地址的Report消息作为对此条Query消息的回答,接收到特定组的查询消息,则已经加入该组的主机发送Report消息来应答。
离开过程:主机希望离开某个组播组时,发送Leave消息,组播路由器接收到组播消息后,就认为该主机已经离开了该组,但同时会针对该组发起一个特定组查询消息,如果有其它主机响应,则表示该接口下还有该组的组播用户,如果指定的几个周期内没有其它主机响应,则认为该接口下已经没有了该组播组的用户。
上述接口之间的实现方式仅仅是示例性的,本领域的技术人员可 以采取多种现有技术进行实现,只要不背离本发明的主旨。
(二)接口5——400与7001之间的接口的一种实施方式:
本发明将在400与7001之间,通过对Radius标准协议进行字段扩展,来实现对组播用户的认证。其中400设备作为Radius协议的客户端,而7001作为Radius协议的服务器端。
Radius是远程拨号访问接入控制协议,是现有标准,但本发明对其进行了扩展,如下所述。
Radius是工作在UDP/IP之上的一种消息格式,消息格式符合TLV格式,即字段类型、字段长度、字段值;400设备作为认证请求者Client,按照TLV格式组织需要认证的各个字段,并发送给7001用户管理模块Server,7001解释出T和V值,查询本地预先配置的用户数据,进行相应验证。
扩展字段的规范如下表4所示:
Type代码 | Type含义 | Length | Value属性 |
1 | UserName | <=20,>=6 | String/用户名 |
2 | UserPassword | >=18.<=130 | String/密码 |
99 | LineID | >=18,<=130 | String/线路ID |
98 | UserIP | 6 | String/用户IP地址 |
97 | GroupIp | 6 | String/组IP地址 |
96 | Operation | <=10 | String/加入,离开 |
表4
(三)接口6——不同600设备之间的接口的一种实施方式
600设备作为纯组播中继设备,可以由支持组播的路由器来承担,组播路由器之间运行组播路由协议,如PIM(协议独立的组播)、MOSPF(组播最短路径优先协议)等。
上述接口之间的实现方式仅仅是示例性的,本领域的技术人员可以采取多种现有技术进行实现,只要不背离本发明的主旨。
(四)接口7——500设备与7003之间的接口的一种实施方式
可以采用标准的Radius协议,通过协议扩展实现对组播源的认证,其中500设备作为Radius协议的客户端,而7003作为Radius协议的服务器端。
Radius是远程拨号访问接入控制协议,是现有标准,但本发明对其进行了扩展,如下所述。
Radius是工作在UDP/IP之上的一种消息格式,消息格式符合TLV格式,即字段类型、字段长度、字段值;500设备作为认证请求者Client,按照TLV格式组织需要认证的各个字段,并发送给7003组播源管理模块Server,7003解释出T和V值,查询本地预先配置的组播源管理数据,进行相应验证。
要求认证的字段规范如下表5:
Type代码 | Type含义 | Length | Value属性 |
1 | SourceName | <=20,>=6 | String/组播源名称 |
2 | SourcePassword | >=18,<=130 | String/组播源密码 |
99 | LineID | >=18,<=130 | String/接入线路ID |
98 | SourceIP | 6 | String/组播源IP地址 |
97 | GroupIp | 6 | String/组播组IP地址 |
96 | Operation | <=10 | String/发布,删除 |
表5
(五)接口8——7002与400间的接口、接口9--7002与600间的接口、接口10--7002与500间的接口的一种实施方式:
可以根据具体设备对网络管理下协议的支持程度,选择接口协议,如SNMP简单网络管理协议、CLI命令行协议、TL1协议等。
上述接口之间的实现方式仅仅是示例性的,本领域的技术人员可以采取多种现有技术进行实现,只要不背离本发明的主旨。
图5显示了根据本发明的一个实施例的一种可以实现IGMP代 理和汇总的组播用户控制设备400的模块图。
如图5所示,组播用户控制设备400可以由以下模块组成,包括下行组播包分拣模块、下行组播包处理模块、上行组播包分拣模块、上行组播包处理模块、Router仿真模块、Host仿真模块、组播代理控制模块和组播数据通信控制模块。
应该注意,本发明的上述诸个方面可在软件和/或软件和硬件的组合中实现,例如用专用集成电路(ASIC)、通用计算机或其他硬件等同物来实现。在一个实施例中,所述诸个模块可被加载到存储器中并由处理器执行,以实现上述功能。这样,本发明的模块以及进程(包括相关联的数据结构)可被存储在计算机可读介质或载波上,例如RAM存储器、磁驱动或光驱动或磁盘等等。
将会理解,在一个实施例中,所讨论的方法步骤是由执行存储在存储装置中的指令(代码段)的处理(即计算机)***的(一个或多个)适当的处理器来执行的。还将理解,本发明并不局限于任何特定的实现方式或编程技术,并且本发明可以用任何适当的用于实现这里所描述的功能的技术来实现。本发明并不局限于任何特定的编程语言或操作***。
虽然这里已详细示出和描述了结合了本发明的教导的各种实施例,但是本领域的技术人员易于设计许多其他仍结合了这些教导的各种实施例。
Claims (18)
1.一种组播***,包括组播接收者(100)、组播源(300)、纯组播中继设备(600),其特征在于所述***还包括:
组播用户控制设备(400),所述组播用户控制设备(400)连接到一个或多个组播接收者(100);
组播源控制设备(500),所述组播源控制设备(500)连接到一个或多个组播源(300);
纯组播中继设备(600)被连接到组播用户控制设备(400)、组播源控制设备(500),并且纯组播中继设备(600)彼此相互连接;
组播业务管理平台(700),包括组播用户管理模块(7001)、组播源管理模块(7003),
其中组播源控制设备(500)截获组播源(300)的组播创建请求,并针对组播源(300)的请求对组播源(300)进行认证,其中组播源控制设备(500)向组播业务管理平台(700)的组播源管理模块(7003)发起认证请求,并根据认证结果来确定是否允许该组播源(300)创建组播组;
其中所述组播用户控制设备(400)截获组播用户(100)的组播加入请求,并针对组播用户(100)的组播加入请求对组播用户(100)发起认证要求,其中所述组播用户控制设备(400)向组播业务管理平台(700)的组播用户管理模块(7001)发起组播用户认证请求,并根据认证结果来确定是否允许该组播用户(100)加入一个组播组。
2.根据权利要求1所述的组播***,其中组播业务管理平台(700)还包括组播设备管理模块(7002),用于为纯组播中继设备(600)进行被许可认证的组播组的许可参数配置,
其中组播源管理模块(7003)将相关的组播配置信息发送给组播设备管理模块(7002),由组播设备管理模块(7002)实现对纯组播中继设备(600)的实际参数配置。
3.根据权利要求1所述的组播***,其中组播业务管理平台(700)还包括组播业务管理模块(7005),其中在组播源(300)认证成功之后,组播源管理模块(7003)通知组播业务管理模块(7005)对此组播源进行发布,便于组播用户(100)选择加入。
4.根据权利要求1所述的组播***,其中组播业务管理平台(700)还包括组播计费管理模块(7004),其中组播源管理模块(7003)记录组播源(300)和/或组播用户(100)的相关信息,包括认证参数、加入时间、离开时间、业务流量、速率等至少之一,并传输给组播计费管理模块(7004)以对组播源(300)和/或组播用户(100)进行计费。
5.根据权利要求1所述的组播***,纯组播中继设备(600)通过IGMP或组播路由协议来更新组播信息,并创建和维护组播树与转发表,以及按照组播转发表进行组播复制。
6.根据权利要求1所述的组播***,其中组播用户控制设备(400)还支持组播中继设备的基本功能。
7.根据权利要求1所述的组播***,其中组播源控制设备(500)还支持组播中继设备的基本功能。
8.根据权利要求1所述的组播***,其中组播用户(100)与组播用户控制设备(400)之间、组播源(300)与组播源控制设备(500)之间、组播源控制设备(500)与纯组播中继设备(600)之间、以及组播用户控制设备(400)与纯组播中继设备(600)之间都采用IGMPv1或IGMP v2协议进行交互。
9.根据权利要求1所述的组播***,其中组播用户控制设备(400)与组播用户管理模块(7001)之间、组播源控制设备(500)与组播源管理模块(7003)之间采用扩展的Radius协议进行交互。
10.一种使用在如权利要求1所述的组播***中的组播用户控制设备(400),所述组播用户控制设备(400)连接到组播用户(100),其特征在于
所述组播用户控制设备(400)包括下行组播包分拣模块、下行组播包处理模块、上行组播包分拣模块、上行组播包处理模块、Router仿真模块、Host仿真模块、组播代理控制模块和组播数据通信控制模块,其中,所述下行组播包分拣模块连接到所述下行组播包处理模块,所述下行组播包处理模块连接到所述组播代理控制模块、所述Router仿真模块和所述组播数据通信控制模块,所述组播代理控制模块连接到所述Router仿真模块、所述Host仿真模块、所述组播数据通信控制模块和所述上行组播包处理模块,所述Host仿真模块连接到所述上行组播包处理模块,所述组播数据通信控制模块连接到所述上行组播包处理模块,所述上行组播包处理模块连接到所述上行组播包分拣模块。
11.一种用于组播的方法,包括如下步骤:
(1)组播源(300)向组播源控制设备(500)发送请求以创建一个新的组播组;
(2)组播源控制设备(500)接收组播源(300)的创建请求,收集该组播源(300)的认证信息,以及向组播源管理模块(7003)发起一个创建组播组的认证请求;
(3)组播源管理模块(7003)对认证请求进行验证处理,以及向组播源控制设备(500)返回认证结果:如果验证失败,则返回认证失败消息和失败原因;如果验证成功,则返回验证成功消息;
(4)组播源(300)认证成功之后,该组播源(300)被发布,以便于组播用户(100)选择和加入;
(5)组播用户(100)选择一个已经发布的组播源(300),其中组播用户(100)向组播用户控制设备(400)发送一个加入请求;
(6)组播用户控制设备(400)接收组播用户(100)的加入请求,收集该组播用户(100)的认证信息,以及向组播用户管理模块(7001)发起认证请求;
(7)组播用户管理模块(7001)收到组播用户控制设备(400)发起的认证请求,对请求中的认证信息进行验证,以及向组播用户控制设备(400)返回验证结果:如果验证失败,则返回验证失败消息和失败原因;如果验证成功,则返回验证成功消息;
(8)组播用户控制设备(400)与上游的组播中继设备(600)进行组播消息交换,更新相应的组播信息;以及
(9)所述组播用户(100)接收相应的组播源(300)的组播数据。
12.根据权利要求11的方法,其中步骤(3)还包括步骤,
组播源管理模块(7003)记录相关组播源(300)的验证信息,包括认证参数、认证时间、认证结果,以用于计费和查询使用。
13.根据权利要求11的方法,其中步骤(7)还包括步骤,
组播用户管理模块(7001)记录组播用户(100)的相关验证信息,包括认证参数、认证时间、认证结果,以用于计费和查询。
14.根据权利要求11的方法,其中还包括步骤:
组播源(300)发送一个离开消息到组播源控制设备(500),以离开该组;
组播源管理模块(7003)记录组播源(300)的离开时间,以用于计费和查询。
15.根据权利要求11的方法,其中还包括:
组播用户(100)主动发送离开消息到组播用户控制设备(400),以离开该组;
组播用户管理模块(7001)记录组播用户(100)的离开时间,以用于计费和查询。
16.根据权利要求11的方法,其中还包括步骤:
组播用户控制设备(400)维持该组播用户针对该组的组播状态,设置第一和第二定时器,第一定时器被设置为计时第一时间段,第二定时器设置为计时第二时间段,其中
组播用户(100)被许可加入后,按照一定的周期,定期向组播用户控制设备(400)发送一个维持消息;
组播用户控制设备(400)接收到此消息后,则重置该组的第一定时器为第一时间段,重新开始计时;
如果在第一时间段期满之前还没有收到该组播用户(100)发送的针对该组的维持消息,则发起一个向该组播用户(100)针对该组的查询消息,同时设置第二定时器为第二时间段,开始计时;如果在第二时间段期满之前无应答,则重发一个查询消息,并重新设置第二定时器为所述第二时间段;如果连续三次无应答,则删除组播项目;同时向组播用户管理模块(7001)发送“该用户离开该组”消息;
组播用户管理模块(7001)记录该组播用户(100)的离开时间,以用于计费和查询。
17.根据权利要求11的方法,其中组播用户(100)与组播用户控制设备(400)之间、组播源(300)与组播源控制设备(500)之间、组播源控制设备(500)与组播中继设备(600)之间、以及组播用户控制设备(400)与组播中继设备(600)之间都使用IGMP v1或IGMP v2协议进行交互。
18.根据权利要求11的方法,其中组播用户控制设备(400)与组播用户管理模块(7001)之间、组播源控制设备(500)与组播源管理模块(7003)之间采用扩展的Radius协议进行交互。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN2006100912741A CN101087246B (zh) | 2006-06-08 | 2006-06-08 | 一种实现网络层组播业务及业务管理的***与方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN2006100912741A CN101087246B (zh) | 2006-06-08 | 2006-06-08 | 一种实现网络层组播业务及业务管理的***与方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN101087246A CN101087246A (zh) | 2007-12-12 |
CN101087246B true CN101087246B (zh) | 2011-04-20 |
Family
ID=38938017
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN2006100912741A Active CN101087246B (zh) | 2006-06-08 | 2006-06-08 | 一种实现网络层组播业务及业务管理的***与方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN101087246B (zh) |
Families Citing this family (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101547100B (zh) * | 2009-05-07 | 2011-01-19 | 杭州华三通信技术有限公司 | 组播接收控制方法及*** |
CN101562613B (zh) * | 2009-05-26 | 2012-07-04 | 杭州华三通信技术有限公司 | 一种控制组播源的方法和一种网络接入服务器 |
CN102118254A (zh) * | 2010-01-05 | 2011-07-06 | 上海贝尔股份有限公司 | 一种上行组播控制方法及其装置 |
CN102694663A (zh) * | 2011-03-25 | 2012-09-26 | ***通信集团公司 | 中转多播传输方法、***、中转选择服务器、中转节点及终端 |
WO2015196361A1 (zh) * | 2014-06-24 | 2015-12-30 | 华为技术有限公司 | 一种软件定义网络的多播方法、装置及*** |
CN105657671B (zh) * | 2014-11-14 | 2019-08-23 | 电信科学技术研究院 | 一种实现组播的方法和设备 |
CN105871566A (zh) * | 2016-03-29 | 2016-08-17 | 上海斐讯数据通信技术有限公司 | 网络认证方法和设备 |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1414759A (zh) * | 2002-01-30 | 2003-04-30 | 华为技术有限公司 | 受控组播的***及其实现方法 |
CN1567837A (zh) * | 2003-06-26 | 2005-01-19 | 华为技术有限公司 | 一种组播源控制的方法和*** |
-
2006
- 2006-06-08 CN CN2006100912741A patent/CN101087246B/zh active Active
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1414759A (zh) * | 2002-01-30 | 2003-04-30 | 华为技术有限公司 | 受控组播的***及其实现方法 |
CN1567837A (zh) * | 2003-06-26 | 2005-01-19 | 华为技术有限公司 | 一种组播源控制的方法和*** |
Also Published As
Publication number | Publication date |
---|---|
CN101087246A (zh) | 2007-12-12 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN101087246B (zh) | 一种实现网络层组播业务及业务管理的***与方法 | |
JP4165196B2 (ja) | パケット中継装置 | |
JP3845086B2 (ja) | 制御されたマルチキャストのシステム及び実行方法 | |
US8539088B2 (en) | Session monitoring method, apparatus, and system based on multicast technologies | |
US7756072B1 (en) | System and method for passively monitoring customer control messages in a multicast VPN | |
US20050243824A1 (en) | Systems and methods for managing multicast data transmissions | |
US20080232368A1 (en) | Network system | |
CN101605103A (zh) | 一种组播数据静态转发的方法及装置 | |
CN100477635C (zh) | 一种域间组播的传输方法及边缘设备 | |
CN101335637A (zh) | 一种组播控制的方法及装置 | |
WO2010111956A1 (zh) | 一种组播转发路径收敛的方法和*** | |
US8102870B2 (en) | System, server and method for optimizing a group management protocol | |
CN103716169B (zh) | 点到多点的组播实现方法、网络节点和*** | |
Yang et al. | A service-centric multicast architecture and routing protocol | |
WO2008138248A1 (fr) | Procédé, carte d'interface et routeur destinés à transmettre un message | |
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 | |
WO2009030143A1 (fr) | Système et procédé de routage multidiffusion, passerelle multimédia et contrôleur de passerelle multimédia | |
CN101163002B (zh) | 一种高效组播认证方法 | |
WO2008141516A1 (fr) | Procédé de transmission d'un message, dispositif de transmission et système de transmission | |
JP2000349818A (ja) | 情報通信システム、情報提供装置、情報中継装置及び情報通信方法 | |
JP2004129159A (ja) | パケット変換方法、パケット通信システム、パケット変換装置、パケット変換プログラムおよび記録媒体 | |
CN103780503B (zh) | 一种负载均衡的实现方法和设备 | |
CN112769581A (zh) | 数据组播方法、装置、电子设备、介质和程序产品 | |
KR20030046978A (ko) | 유니캐스트 망을 이용한 그룹 캐스트 전송 방법 및 시스템 | |
WO2012103694A9 (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 | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant |