CN101345641B - 一种组播接入设备及方法 - Google Patents
一种组播接入设备及方法 Download PDFInfo
- Publication number
- CN101345641B CN101345641B CN2008102130396A CN200810213039A CN101345641B CN 101345641 B CN101345641 B CN 101345641B CN 2008102130396 A CN2008102130396 A CN 2008102130396A CN 200810213039 A CN200810213039 A CN 200810213039A CN 101345641 B CN101345641 B CN 101345641B
- Authority
- CN
- China
- Prior art keywords
- multicast source
- multicast
- group address
- information
- address
- 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
Abstract
本发明提供一种组播接入设备及方法,该方法包括:接入设备存储承载节目的组地址及与之对应的允许接收的组播源的信息;当接入设备收到用户的组加入请求,且接收组加入请求的接口使能源特定组播映射功能时,查询存储的承载节目的组地址,若有与组加入请求中的组地址相匹配的承载节目的组地址,但与该匹配的组地址对应的允许接收的组播源的信息为空,则接入设备向核心网发送包含所述组地址但不包含组播源信息的加入消息。采用本发明的技术方案,实现了源特定组播/源无关模式共存的组播方法,降低了接入设备实现的复杂程度,节省了开发成本,还可以提高组播业务的服务质量,并且还提供了一种安全防卫功能,可成功阻止存在危险的组播源。
Description
技术领域
本发明涉及网络通信技术领域,更具体的说,是一种源特定模式和源无关模式共存的组播方法及其实现该组播方法的接入设备。
背景技术
组播是指信源将信息发向所有网络节点的某个确定子集的点到多点的通信形式,其应用中主要有三个实体,如图1所示:组播路由器,组播源,组播接收者(用户)。就数据转发层面来看,组播路由器主要负责转发组播数据报文,组播源负责向网络中发送组播数据报文,组播接收者则是要接收组播数据报文。在组播路由器和组播接收者之前运行IGMP(IPv4)/MLD(IPv6)协议,用户运行主机侧协议,路由器运行路由侧协议。担当查询器的路由器向用户发送的查询报文,用户以报告报文响应,路由器根据用户的响应来刷新组成员情况,并向组播协议通告组播组情况,用户可以随意的加入和离开组播组。组播路由器之间通常运行稀疏模式协议无关组播协议(PIM-SM协议),维护组播路由状态。
传统的组播方法一般以IGMPv1/v2(MLDv1)协议和PIM-SM协议来实现源无关(Any-Source Multicast,ASM)组播业务的。这种传统的组播方法使用组播组来标示一个组播会话,即用(*,G)来标示一个组播会话。对于某个组播组来说,子网中所有路由器按照共同的方法选举唯一的路由器作为汇聚点(Rendezvous Point,RP),也就是说,组播网络中所有路由器都知道对于某个组播组来说唯一的RP的位置。直连源的路由器收到组播流后向RP注册数据报文,用户端发起一个IGMP/MLD组加入后,组播路由器逐跳向RP方向发送PIM的(*,G)加入消息,直到RP收到这样的(*,G)加入消息,这样就建立了从接收端到RP的共享树(Rendezvous Point Tree,RPT),并最终发现了源位置,实现组播流转发。由此看来,上述ASM模式组播方法中至少存在复杂的源发现过程的缺点。
另外,实际的组播服务中(例如视频点播),为了保证业务的可靠性,不仅要支持点到多点,还要支持多点到多点的组播业务模式,也就是说,组播一般会希望建立多个源服务器,实现冗余备份。但是用户端只被通知到关于组播组的信息,而不知道源的信息。在视频点播过程中,一旦正在接收的源服务器发生故障,整个组播系统就必须重新再来一次上述的源发现过程,用户必然会感受到一小段时间的断流。
源特定组播(SSM:Source Specific Multicast)是一种区别于传统组播的新的业务模型,它使用组播组地址和组播源地址同时来标识一个组播会话,而不是像传统的组播服务那样只使用组播组地址来标识一个组播会话。SSM保留了传统PIM-SM模式中的主机显示加入组播组的高效性,但是跳过了PIM-SM模式中的共享树和RP过程。SSM直接建立由(S,G)标识的一个组播最短路径树(SPT:Shortest Path Tree),SSM的一个(S,G)对也被称为一个频道(Channel),其中(G)表示一个特定的IP组播组地址,而(S)表示发向组播组G的特定组播源的IP地址。通常PIM-SSM和IGMPv3/MLDv2配合,实现SSM模式组播。IGMPv3/MLDv2协议在兼容前面版本基础上进一步增强了主机的控制能力,不仅可以指定加入的组播组G,还能明确要求从哪个指定组播源S接收或不接收信息,这也就是指定源组播功能。但目前大量用户还没有升级到这个版本,也就是说,用户端不支持(S,G)加入,只支持(*,G)加入。如果想让还未升级的用户也能加入SSM通道,就需要在边缘路由器上把收到的低版本(IGMPv2/MLDv1)的(*,G)报告报文转化成一个或多个高版本(IGMPv3/MLDv2)的(S,G)报告报文,就相当于收到IGMPv3/MLDv2的报告报文。通常在边缘路由器上配置SSM-MAPPING(源特定组播映射)规则,通过查找SSM-MAPPING映射表,将(*,G)加入转化成一个或多个(S,G)加入。
发明内容
本发明要解决的技术问题是提供一种组播接入设备及方法,降低了接入设备实现的复杂程度,以及实现SSM/ASM模式共存的组播方法。
为了解决上述问题,本发明提供了一种组播接入设备,包括:SSM-MAPPING模块,用于存储承载节目的组地址及与之对应的允许接收的组播源的信息;
IGMP模块,用于接收用户的组加入请求,当接收组加入请求的接口使能SSM-MAPPING功能时,还用于根据组加入请求中的组地址查询所述SSM-MAPPING模块;
所述IGMP模块还用于当SSM-MAPPING模块存储有与所述组地址匹配的承载节目的组地址,且该匹配的组地址对应的允许接收的组播源的信息为空时,向PIM-SSM模块发送包含所述组地址但不包含组播源信息的加入通告;
PIM-SSM模块,用于收到包含所述组地址但不包含组播源信息的加入通告向核心网发送包含所述组地址但不包含组播源信息的加入消息。
进一步地,所述SSM-MAPPING模块还用于存储与所述承载节目的组地址对应的阻止接收的组播源的信息;
所述IGMP模块还用于向PIM-SSM模块发送了不包含组播源信息的加入通告后,遍历SSM-MAPPING模块中与所述匹配的组地址对应的阻止接收的组播源的信息,并向PIM-SSM模块发送阻止所述阻止接收的组播源的加入通告,其中携带阻止接收的组播源的IP地址及所述组地址;
PIM-SSM模块还用于收到阻止所述阻止接收的组播源的加入通告后,向核心网发送包含所述阻止接收的组播源的IP地址及所述组地址的剪枝消息;
所述组播源的信息包括所述组播源的IP地址。
进一步地,IGMP模块还用于当接收组加入请求的接口使能SSM-MAPPING功能,SSM-MAPPING模块中存储有与加入请求中的组地址相匹配的承载节目的组地址,且该匹配的组地址对应的允许接收的组播源的信息不为空时,从所述允许接收的组播源的信息中选择一个或多个组播源,并向PIM-SSM模块发送包含所述选择的组播源IP地址及所述组地址的加入通告。
进一步地,IGMP模块还用于在下列情况下向PIM-SSM模块包含所述组地址但发送不包含组播源信息的加入通告:
接收组加入请求的接口使能SSM-MAPPING功能,但SSM-MAPPING模块中没有存储与加入请求中的组地址相匹配的承载节目的组地址,或
接收组加入请求的接口未使能SSM-MAPPING功能。
进一步地,所述组播源的信息还包括所述组播源的优先级;
所述IGMP模块从所述匹配的组地址对应的允许接收的组播源的信息中选择一优先级最大的组播源,并向PIM-SSM模块发送包含所述优先级最大的组播源IP地址及所述组地址的加入通告。
进一步地,所述IGMP模块还用于接收节目的过程中,若所述匹配的组地址对应的允许接收的组播源的信息中存在优先级大于所述选择的组播源的优先级的其他组播源时,向PIM-SSM模块发送包含当前优先级最大的组播源的IP地址及所述组地址的加入通告,并用于收到所述当前优先级最大的组播源提供的组播数据流后,向PIM-SSM模块发送包含所述选择的组播源的IP地址及组地址的离开通告;
所述PIM-SSM模块还用于收到包含所述选择的组播源的IP地址及组地址的离开通告后向核心网发送包含所述选择的组播源的IP地址及组地址的剪枝消息。
进一步地,所述组播源的信息还包括所述组播源的保活时间定时器;
IGMP模块还用于所述选择的组播源的保活时间定时器老化后,从所述匹配的组地址对应的允许接收的组播源的信息中删除所述选择的组播源的信息,以及选择当前优先级最大的组播源,向PIM-SSM模块发送包含所述当前优先级最大的组播源的IP地址及组地址的加入通告。
本发明还提供一种组播方法,包括:接入设备存储承载节目的组地址及与之对应的允许接收的组播源的信息;
当所述接入设备收到用户的组加入请求,且接收所述组加入请求的接口使能SSM-MAPPING功能时,查询存储的承载节目的组地址,若有与组加入请求中的组地址相匹配的承载节目的组地址,但与该匹配的组地址对应的允许接收的组播源的信息为空,则所述接入设备向核心网发送包含所述组地址但不包含组播源信息的加入消息。
进一步地,所述接入设备还存储与所述承载节目的组地址对应的阻止接收的组播源的信息;
当接入设备向核心网发送了不包含组播源信息的加入消息后,遍历存储的与所述匹配的组地址对应的阻止接收的组播源的信息,然后向核心网发送包含所述阻止接收的组播源的IP地址及所述组地址的剪枝消息;
所述组播源的信息包括所述组播源的IP地址。
进一步地,当接收组加入请求的接口使能SSM-MAPPING功能时,若接入设备中存储有与加入请求中的组地址相匹配的承载节目的组地址,且与该匹配的组地址对应的允许接收的组播源的信息不为空,接入设备则从所述允许接收的组播源的信息中选择一个或多个组播源,然后向核心网发送包含所述选择的组播源IP地址及所述组地址的加入消息。
进一步地,当接收组加入请求的接口使能SSM-MAPPING功能,但接入设备中没有存储与加入请求中的组地址相匹配的承载节目的组地址,或接收组加入请求的接口未使能SSM-MAPPING功能时,接入设备向核心网发送包含所述组地址但不包含组播源信息的加入消息。
进一步地,所述组播源的信息还包括所述组播源的优先级;
所述接入设备选择组播源的方法为,从所述承载节目的组地址对应的允许接收的组播源的信息中选择一优先级最大的组播源。
进一步地,若接收节目的过程中,所述匹配的组地址对应的允许接收的组播源的信息中存在其他组播源的优先级大于所述选择的组播源的优先级时,接入设备向核心网发送包含当前优先级最大的组播源的IP地址及所述组地址的加入消息,当收到所述当前优先级最大的组播源提供的组播数据流后,向核心网发送包含所述选择的组播源的IP地址及所述组地址的剪枝消息。
进一步地,所述组播源的信息还包括所述组播源的保活时间定时器;
所述选择的组播源的保活时间定时器老化后,接入设备从所述承载节目的组地址对应的允许接收的组播源的信息中删除所述选择的组播源的信息,然后选择当前优先级最大的组播源,向核心网发送包含当前优先级最大的组播源的IP地址及所述组地址的加入消息。
综上所述,本发明提供了一种组播接入设备及方法,实现SSM/ASM模式共存的组播方法,降低了接入设备实现的复杂程度,节省了开发成本,还可以提高组播业务的服务质量,并且还提供了一种的安全防卫功能,可成功阻止存在危险的组播源。
附图说明
图1是现有的通过宽带网络承载组播业务的网络模型的示意图;
图2是本发明接入设备的结构示意图;
图3是本发明中SSM-MAPPING表结构示意图;
图4是本发明中实施例的网络图;
图5是本发明接入设备的处理流程图。
具体实施方式
本发明提供一种组播接入设备及方法,接入设备存储承载节目的组地址及与之对应的允许接收的组播源的信息;当接入设备收到用户的组加入请求,且接收该组加入请求的接口使能SSM-MAPPING功能时,查询存储的承载节目的组地址,若有与组加入请求中的组地址相匹配的承载节目的组地址,但与该匹配的组地址对应的允许接收的组播源的信息为空,则接入设备向核心网发送包含该组地址但不包含组播源信息的加入消息。
本实施例提供一种组播接入设备,如图2所示,包括:节目接收模块、IGMP(组管理协议)模块、SSM-MAPPING模块、PIM-SSM(稀疏模式协议无关在指定源组播协议)模块;
节目接收模块用于接收核心网下发的节目通告信息,节目通告信息包括承载节目的组地址、节目内容信息以及提供该节目的组播源信息,还用于将承载节目的组地址与提供该节目的组播源信息存储到SSM-MAPPING模块,以及将承载节目的组地址、节目内容信息下发给用户;组播源信息包括该组播源的IP地址、保活时间定时器及优先级。
SSM-MAPPING模块用于存储承载节目的组地址及与之对应的允许接收的组播源的信息、阻止接收的组播源的信息,允许接收的组播源的信息可以放入include(接受)源列表,阻止接收的组播源的信息可以放入exclude(阻止)源列表,include源列表及exclude源列表中的组播源的信息包含该组播源的IP地址、保活时间定时器及优先级;每个承载节目的组地址都有与之对应的include源列表及exclude源列表。
IGMP模块用于收到用户的组加入请求(IGMPv2/v1,MLDv1),若接收组加入请求的接口使能SSM-MAPPING功能,IGMP模块还用于根据该组加入请求中的组地址(设组地址为G)查询SSM-MAPPING模块,若有与G匹配的承载节目的组地址,且与该匹配的组地址对应的include源列表不为空,则从include源列表中选择一个或多个组播源,并向PIM-SSM模块发送包含选择的组播源IP地址及该组地址的加入通告,如include(S,G)加入通告,S为选择的组播源IP地址,优选地,若该匹配的组地址与include源列表中的多个组播源对应,IGMP模块可以选择一优先级最大的组播源,如果对用户进行了分级,如分为VIP用户和普通用户,可以为VIP用户选择优先级较大的组播源,为普通用户选择优先级较小的组播源;
IGMP模块还用于若接收组加入请求的接口使能SSM-MAPPING功能,SSM-MAPPING模块中存储有与G匹配的承载节目的组地址,但与之对应的include源列表为空时,先向PIM-SSM模块发送包含该组地址G但不包含组播源信息的加入通告,如(*,G)加入通告,然后遍历该匹配的组地址对应的exclude源列表,向PIM-SSM模块发送阻止exclude源列表中的组播源的加入通告,其中携带exclude源列表中的组播源的IP地址及组地址G;上述阻止exclude源列表中的组播源的加入通告可以是exclude(S,G),其中的S为exclude源列表中组播源的IP地址;
IGMP模块还用于在下列情况下向PIM-SSM模块包含组地址但发送不包含组播源信息的加入通告,如(*,G)加入通告:接收组加入请求的接口虽然使能SSM-MAPPING功能,但SSM-MAPPING模块中没有存储与G相匹配的承载节目的组地址;或接收组加入请求的接口未使能SSM-MAPPING功能。
IGMP模块还用于接收节目的过程中,若该匹配的组地址对应的允许接收的组播源的信息中存在优先级大于选择的组播源的优先级的其他组播源时,向PIM-SSM模块发送包含当前优先级最大的组播源的IP地址及组地址G的加入通告,如include(S2,G)加入通告,并用于收到当前优先级最大的组播源提供的组播数据流后,向PIM-SSM模块发送包含之前选择的组播源的IP地址及组地址G的离开通告,如include(S1,G)离开通告;S2为当前优先级最大的组播源的IP地址,S1之前选择的组播源的IP地址。
IGMP模块还用于之前选择的组播源的保活时间定时器老化后,从与G匹配的组地址对应的允许接收的组播源的信息中删除该之前选择的组播源的信息,以及选择当前优先级最大的组播源,向PIM-SSM模块发送包含该当前优先级最大的组播源的IP地址及组地址G的加入通告,如include(S2,G)加入通告,S2为当前优先级最大的组播源的IP地址。
PIM-SSM模块用于收到IGMP模块发来的(*,G)加入通告后,按照ASM模式的组播方法,向核心网路由器发送包含该组地址G但不包含组播源信息的加入消息,如PIM协议的(*,G)加入消息;还用于收到include(S,G)加入通告后,按照SSM模式的组播方法,向核心网路由器发送包含该组地址G及包含组播源IP地址的加入消息,如PIM协议的(S,G)加入消息;还用于收到exclude(S,G)加入通告后,按照SSM模式的组播方法,向核心网路由器发送阻止接收的组播源的IP地址及组地址G的剪枝消息,如PIM协议的(S,G)rpt剪枝消息,用以阻止来自rp方向的PIM-SM。
PIM-SSM模块还用于收到include(S1,G)离开通告后,后向核心网发送包含之前选择的组播源的IP地址及组地址的剪枝消息,如(S1,G)剪枝消息。
本实施例还提供一种组播方法,接入设备存储承载节目的组地址及与之对应的允许接收的组播源的信息、阻止接收的组播源的信息,允许接收的组播源的信息可以放入include(接受)源列表,阻止接收的组播源的信息可以放入exclude(阻止)源列表,接入设备可以是根据核心网路由器下发的通告信息生成SSM-MAPPING表,如图3所示,SSM-MAPPING表包括承载节目的组地址及与之对应的include源列表和exclude源列表。
源的保活时间定时器由上述核心网路由器下发的通告信息刷新,源的优先级由QoS决定,QoS越大,优先级越大。核心网通告的组播源信息一般加入到include源列表中,而exclude源列表用于记录明确阻塞的源,例如,接入设备探测到某个组播源可能存在安全威胁,就可以加入到exclude源列表中。核心网可以是周期性地向接入设备下发节目通告信息,包括承载节目的组地址、节目内容信息以及提供该节目的组播源的信息,组播源的信息包括该组播源的IP地址、保活时间定时器及QoS(服务质量)参数;
如图5所示,接入设备收到用户的组加入请求后的操作包括以下步骤:
步骤501:接入设备的某接口收到用户的组加入请求(IGMPv2/v1,MLDv1),设组地址为G;
步骤502:判断该接收组加入请求的接口是否使能SSM-MAPPING功能,是则执行步骤503,否则执行步骤507;
步骤503:接入设备根据组地址G查询存储的承载节目的组地址,判断是否有与G匹配的承载节目的组地址,是则执行步骤504,否则执行步骤507;
步骤504:判断该匹配的组地址对应的include源列表是否为空,是则执行步骤505,否则执行步骤506;然后执行步骤508;
步骤505:接入设备先向核心网路由器发送包含组地址G但不包含组播源信息的加入消息,如PIM协议的(*,G)加入消息,然后遍历与G匹配的组地址对应的exclude源列表,并向核心网路由器发送包含阻止接收的组播源的IP地址及组地址G的剪枝消息,如(S,G)rpt剪枝消息,其中的S为exclude源列表中组播源的IP地址;然后执行步骤508;
步骤506:接入设备从include源列表中选择一个或多个组播源,并向核心网路由器发送包含选择的组播源IP地址及组地址G的加入消息,如PIM协议的(S,G)加入消息,S为选择的组播源IP地址,优选地,若该匹配的组地址与include源列表中的多个组播源对应,可以选择一优先级最大的组播源,如果对用户进行了分级,如分为VIP用户和普通用户,可以为VIP用户选择优先级较大的组播源,为普通用户选择优先级较小的组播源;然后执行步骤508;
步骤507:接入设备向核心网路由器发送包含组地址G但不包含组播源信息的加入消息,如PIM协议的(*,G)加入消息;然后执行步骤508;
步骤508:接入设备接收核心网下发的组播数据包,并向用户转发,可以按照最大长度匹配原则将组播数据包转发给用户。
最大长度匹配原则是指,接入设备的路由器首先根据组播数据包的源地址和组地址匹配(S,G)进行转发,如不能匹配,再根据组地址匹配(*,G)进行转发,如果还是不能匹配,并且路由器支持(*,*,RP),需要再匹配(*,*,RP)进行转发。承载组播业务的任意组播组的只要能匹配RP,那么组播流就能按照(*,*,RP)转发。
上述实施例中,当接入设备接收到来自用户的组播组G加入请求后,匹配SSM-MAPPING列表,如果include源列表为空,也就是说,接入设备没有被通知到关于组播组G的任何源信息,这时就必须建立传统的ASM模式组播通道,组播数据流按照(*,G)转发,即不论组播流来自哪些源,都要被转发。如果此时exclude列表有源的信息(假设不合法的源服务器地址S3在exclude源列表中),就应该阻塞来自S的组播流,所以上述接入设备向核心网发送(S3,G)rpt剪枝消息,这样组播流按照(*,G)转发过程中,除了S3以外的源都能被转发,来自S3的组播流则被成功阻塞。
本发明的源特定模式和源无关模式共存的组播方法可以应用于基于宽带网络的相关业务,如IPTV,视频点播,视频会议,网络直播和教学等。下面以视频点播业务为例进行详细描述。
本发明的组播方法首先在核心网利用源无关组播至少承载一组组播组,核心网能够通过其它途径告知接入设备各个节目(即组播组)的所有源信息,源信息中包括源的IP地址和服务质量(QoS)参数;接入设备利用源无关/源特定组播和核心网进行通信,接收来自核心网的源无关/源特定组播数据流,接入设备通过其它途径告知用户所有节目的信息,节目的信息包括各个节目对应的组地址;并且接入设备通过源无关组播和用户进行通信,并将组播数据流复制到用户。
上述用户接收节目的过程中,可能发生源切换。例如,上述接入设备匹配SSM-MAPPING表时,依据最大优先级原则选择组播源,开始时S1的优先级最大,所以选择频道(S1,G)为用户提供节目,如果在用户观看节目的过程中,组播源S1发生故障,核心网通告接入设备S1的QoS变小,接入设备就会把S1的优先级降低,一旦S1的优先级变得低于include源列表中其它某个源(假设为S2)的优先级,那么就要发生从组播源S1向组播源S2的切换。切换过程如下:
接入设备向核心网路由器发送包含当前优先级最大的组播源的IP地址及组地址G的加入消息,如(S2,G)加入消息,当收到该当前优先级最大的组播源提供的(S2,G)组播数据流后,向核心网发送包含之前选择的组播源的IP地址及组地址G的剪枝消息,如(S1,G)剪枝消息。这样就完成在用户不断流的基础上,实现源切换过程。
若之前选择的组播源的保活时间定时器老化后,也要发生源切换过程。上述实施例中,如果S1的保活时间定时器老化,接入设备把S1从include源列表中删除,然后选择当前include源列表中最大优先级的源(假设为S2),向核心网路由器发送PIM协议的(S2,G)加入消息,然后接收来自核心网复制下来的(S2,G)组播数据流,同样完成源S1向源S2的切换过程。
下面通过图4中的具体的应用实例对本发明作进一步说明。本应用实例中,核心网运行PIM-SM协议,接入设备运行上述PIM-SSM协议和IGMPv1/v2(MLDv1)网络侧协议,用户运行IGMPv1/v2(MLDv1)主机侧协议。
该应用实例中,视频点播业务系统在中提供两个源服务器(实际中可能提供更多的源),两个源服务器的IP地址不同,组播源的QoS由源服务器提供的带宽,速率,稳定性等网络性能参数综合决定。核心网利用源无关组播承载来自所有组播源的至少一组组播组(节目),例如组播源S1和S2的IP地址不同(分别为10.10.10.1和10.10.20.1),都提供某体育视频节目(用组播组225.1.1.1承载),也就是说,两个频道:(10.10.10.1,225.1.1.1)和(10.10.20.1,225.1.1.1)都支持该档节目。两个频道有不同的QoS,对于接入设备来说,就是两个组播源具有不同的优先级。核心网周期性地向接入设备下发节目通告信息,通告信息中包括承载节目的组地址,提供该节目的组播源信息,节目内容信息以及组播源的QoS参数。
接入设备收到核心网下发的节目通告信息后,配置或自动生成SSM-MAPPING表,其中的组播源信息放入include源列表中。如图3所示,SSM-MAPPING表中包含承载节目的组地址及与该组地址对应的include源列表和exclude源列表,include源列表包含允许接收的组播源的IP地址、KAT(保活时间定时器)及优先级,exclude源列表包含阻止接收的组播源的IP地址、保活时间定时器及优先级;KAT由核心网下发的节目通告信息来刷新,当某个组播源的KAT超期时,从SSM-MAPPING表的include源列表中删除该组播源信息。上述组播源的优先级由QoS参数决定,QoS越大,优先级越大,表示该组播源的服务质量越好。
当用户1点播某档节目(如上述体育节目,用225.1.1.1承载)时,向接入设备发送IGMPv1/v2组225.1.1.1的报告报文。接入设备的接口INT1收到来自用户1的组报告报文后,IGMP模块按如下所述的流程处理:
若INT1未使能SSM-MAPPING功能:
IGMP模块按照传统的ASM模式组播方法向PIM-SM模块发送(*,225.1.1.1)加入通告。
若INT1使能SSM-MAPPING功能:
用报告报文的组地址225.1.1.1查找SSM-MAPPING表,如果不能匹配SSM-MAPPING表,即没有存储与225.1.1.1相同的组地址,IGMP模块按照传统的ASM模式组播方法向PIM-SM模块发送(*,225.1.1.1)加入通告;若能匹配,即存储有与225.1.1.1相同的组地址,则从该组地址对应的include源列表选择一组播源,假设S1被选中,对应IP地址为10.10.10.1,组成include(10.10.10.1,225.1.1.1)加入通告,IGMP模块将该加入通告发送给PIM-SSM模块,选择组播源时,如果没有对用户分级,可选择优先级最大的组播源;如果对用户进行了分级,如分为VIP用户和普通用户,VIP用户可以选择优先级较大的源,普通用户选择优先级较小的源;若能匹配,即存储有与225.1.1.1相同的组地址,但该组地址对应的include源列表为空,IGMP模块先向PIM-SSM模块发送(*,225.1.1.1)加入通告,然后遍历exclude源列表后,发送exclude(S,225.1.1.1)加入通告,假如exclude源列表包含源20.10.10.1和20.10.10.2,IGMP模块向PIM-SSM发送exclude(20.10.10.1,225.1.1.1)加入通告和exclude(20.10.10.2,225.1.1.1)加入通告。
上述接入设备中,各接口是否使能SSM-MAPPING功能,可以根据需要进行配置。
上述接入设备的PIM-SSM模块收到IGMP模块的组加入通告信息后,按照以下方法处理:
收到来自IGMP模块的(*,225.1.1.1)加入通告后,按照ASM模式的组播方法,向核心网路由器发送PIM协议的(*,225.1.1.1)加入消息。
收到来自IGMP模块的include(10.10.10.1,225.1.1.1)加入通告后,按照SSM模式的组播方法,向核心网路由器发送PIM协议的(10.10.10.1,225.1.1.1)加入消息。
收到来自IGMP模块的exclude(20.10.10.1,225.1.1.1)或exclude(20.10.10.2,225.1.1.1)加入通告后,按照SSM模式的组播方法,向核心网路由器发送PIM协议的(20.10.10.1,225.1.1.1)rpt剪枝消息或(20.10.10.2,225.1.1.1)rpt剪枝消息。
当接入设备接收到来自核心网的组播数据包后,按照上述的最大优先级原则将组播数据包复制给用户,这样用户就接收到了点播的视频节目。
本发明中,接入设备根据配置SSM-MAPPING表情况,优先利用SSM模式的组播方法,如果获取组播源的信息,无法加入SSM通道,仍然可以利用ASM模式的组播方法,且提供一种安全防卫功能,可以阻塞某些被认为具有安全威胁的源。这样就实现了SSM/ASM模式共存的组播方法。既能利用SSM组播轻易建立SPT树,进行组播流转发,又能利用传统的ASM组播,尽可能让用户建立组播业务连接。
以上所述仅为本发明通常的实施案,但本发明的保护范围并不局限于此,任何熟悉该技术的人在本发明所披露的技术范围内,可轻易想到的变化,替换或扩展,都应涵盖在本发明的保护范围之内。
Claims (12)
1.一种组播接入设备,包括:源特定组播映射SSM-MAPPING模块,用于存储承载节目的组地址及与之对应的允许接收的组播源的信息;
组管理协议IGMP模块,用于接收用户的组加入请求,当接收组加入请求的接口使能SSM-MAPPING功能时,还用于根据组加入请求中的组地址查询所述SSM-MAPPING模块;
其特征在于:
所述IGMP模块还用于当SSM-MAPPING模块存储有与所述组地址匹配的承载节目的组地址,且该匹配的组地址对应的允许接收的组播源的信息为空时,向稀疏模式协议无关在指定源组播协议PIM-SSM模块发送包含所述组地址但不包含组播源信息的加入通告;当该匹配的组地址对应的允许接收的组播源的信息不为空时,从所述允许接收的组播源的信息中选择一个或多个组播源,并向PIM-SSM模块发送包含所述选择的组播源IP地址及所述组地址的加入通告;
PIM-SSM模块,用于收到包含所述组地址但不包含组播源信息的加入通告向核心网发送包含所述组地址但不包含组播源信息的加入消息;还用于收到包含所述选择的组播源IP地址及所述组地址的加入通告后,向核心网路由器发送包含该组地址及包含组播源IP地址的加入消息。
2.如权利要求1所述的设备,其特征在于:
所述SSM-MAPPING模块还用于存储与所述承载节目的组地址对应的阻止接收的组播源的信息;
所述IGMP模块还用于向PIM-SSM模块发送了不包含组播源信息的加入通告后,遍历SSM-MAPPING模块中与所述匹配的组地址对应的阻止接收的组播源的信息,并向PIM-SSM模块发送阻止所述阻止接收的组播源的加入通告,其中携带阻止接收的组播源的IP地址及所述组地址;
PIM-SSM模块还用于收到阻止所述阻止接收的组播源的加入通告后,向核心网发送包含所述阻止接收的组播源的IP地址及所述组地址的剪枝消息;
所述组播源的信息包括所述组播源的IP地址。
3.如权利要求2所述的设备,其特征在于:
IGMP模块还用于在下列情况下向PIM-SSM模块包含所述组地址但发送不包含组播源信息的加入通告:
接收组加入请求的接口使能SSM-MAPPING功能,但SSM-MAPPING模块中没有存储与加入请求中的组地址相匹配的承载节目的组地址,或
接收组加入请求的接口未使能SSM-MAPPING功能。
4.如权利要求1所述的设备,其特征在于:
所述组播源的信息还包括所述组播源的优先级;
所述IGMP模块从所述匹配的组地址对应的允许接收的组播源的信息中选择一优先级最大的组播源,并向PIM-SSM模块发送包含所述优先级最大的组播源IP地址及所述组地址的加入通告。
5.如权利要求4所述的设备,其特征在于:
所述IGMP模块还用于接收节目的过程中,若所述匹配的组地址对应的允许接收的组播源的信息中存在优先级大于所述选择的组播源的优先级的其他组播源时,向PIM-SSM模块发送包含当前优先级最大的组播源的IP地址及所述组地址的加入通告,并用于收到所述当前优先级最大的组播源提供的组播数据流后,向PIM-SSM模块发送包含所述选择的组播源的IP地址及组地址的离开通告;
所述PIM-SSM模块还用于收到包含所述选择的组播源的IP地址及组地址的离开通告后向核心网发送包含所述选择的组播源的IP地址及组地址的剪枝消息。
6.如权利要求4所述的设备,其特征在于:
所述组播源的信息还包括所述组播源的保活时间定时器;
IGMP模块还用于所述选择的组播源的保活时间定时器老化后,从所述匹配的组地址对应的允许接收的组播源的信息中删除所述选择的组播源的信息,以及选择当前优先级最大的组播源,向PIM-SSM模块发送包含所述当前优先级最大的组播源的IP地址及组地址的加入通告。
7.一种组播方法,包括:接入设备存储承载节目的组地址及与之对应的允许接收的组播源的信息;
当所述接入设备收到用户的组加入请求,且接收所述组加入请求的接口使能SSM-MAPPING功能时,查询存储的承载节目的组地址,若有与组加入请求中的组地址相匹配的承载节目的组地址,但与该匹配的组地址对应的允许接收的组播源的信息为空,则所述接入设备向核心网发送包含所述组地址但不包含组播源信息的加入消息;
若接入设备中存储有与加入请求中的组地址相匹配的承载节目的组地址,且与该匹配的组地址对应的允许接收的组播源的信息不为空,接入设备则从所述允许接收的组播源的信息中选择一个或多个组播源,然后向核心网发送包含所述选择的组播源IP地址及所述组地址的加入消息。
8.如权利要求7所述的方法,其特征在于:
所述接入设备还存储与所述承载节目的组地址对应的阻止接收的组播源的信息;
当接入设备向核心网发送了不包含组播源信息的加入消息后,遍历存储的与所述匹配的组地址对应的阻止接收的组播源的信息,然后向核心网发送包含所述阻止接收的组播源的IP地址及所述组地址的剪枝消息;
所述组播源的信息包括所述组播源的IP地址。
9.如权利要求7所述的方法,其特征在于,还包括:
当接收组加入请求的接口使能SSM-MAPPING功能,但接入设备中没有存储与加入请求中的组地址相匹配的承载节目的组地址,或接收组加入请求的接口未使能SSM-MAPPING功能时,接入设备向核心网发送包含所述组地址但不包含组播源信息的加入消息。
10.如权利要求8所述的方法,其特征在于:
所述组播源的信息还包括所述组播源的优先级;
所述接入设备选择组播源的方法为,从所述承载节目的组地址对应的允许接收的组播源的信息中选择一优先级最大的组播源。
11.如权利要求10所述的方法,其特征在于,还包括:
若接收节目的过程中,所述匹配的组地址对应的允许接收的组播源的信息中存在其他组播源的优先级大于所述选择的组播源的优先级时,接入设备向核心网发送包含当前优先级最大的组播源的IP地址及所述组地址的加入消息,当收到所述当前优先级最大的组播源提供的组播数据流后,向核心网发送包含所述选择的组播源的IP地址及所述组地址的剪枝消息。
12.如权利要求8所述的方法,其特征在于:
所述组播源的信息还包括所述组播源的保活时间定时器;
所述选择的组播源的保活时间定时器老化后,接入设备从所述承载节目的组地址对应的允许接收的组播源的信息中删除所述选择的组播源的信息,然后选择当前优先级最大的组播源,向核心网发送包含当前优先级最大的组播源的IP地址及所述组地址的加入消息。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN2008102130396A CN101345641B (zh) | 2008-08-21 | 2008-08-21 | 一种组播接入设备及方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN2008102130396A CN101345641B (zh) | 2008-08-21 | 2008-08-21 | 一种组播接入设备及方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN101345641A CN101345641A (zh) | 2009-01-14 |
CN101345641B true CN101345641B (zh) | 2011-05-25 |
Family
ID=40247537
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN2008102130396A Active CN101345641B (zh) | 2008-08-21 | 2008-08-21 | 一种组播接入设备及方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN101345641B (zh) |
Families Citing this family (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102571880B (zh) * | 2010-12-27 | 2014-11-05 | 中国移动通信集团公司 | 一种服务分发方法和系统以及一种服务分发节点 |
CN103297461B (zh) * | 2012-02-28 | 2016-05-25 | 中国移动通信集团公司 | Nat会话保活时长设置方法以及客户端和服务器 |
CN106302188A (zh) * | 2015-05-18 | 2017-01-04 | 中兴通讯股份有限公司 | 一种交换机设备的组播报文转发控制方法及装置 |
CN112671655A (zh) * | 2019-10-16 | 2021-04-16 | 中兴通讯股份有限公司 | 组播用户接入方法、电子设备以及存储介质 |
CN112511443A (zh) * | 2020-03-26 | 2021-03-16 | 中兴通讯股份有限公司 | 消息处理方法、装置、设备、存储介质及系统 |
-
2008
- 2008-08-21 CN CN2008102130396A patent/CN101345641B/zh active Active
Also Published As
Publication number | Publication date |
---|---|
CN101345641A (zh) | 2009-01-14 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP4165196B2 (ja) | パケット中継装置 | |
CN100490425C (zh) | 组播网络部署方法及组播网络 | |
CN101420362B (zh) | 组播流量切换的方法、系统及路由器 | |
EP2109260A1 (en) | Multicast method and multicast routing method | |
CN101789874B (zh) | 一种在pim-sm中实现组播树切换的方法、装置及路由设备 | |
CN101247253A (zh) | Ip网络中基于虚拟分发网的多播传送方法 | |
CN100477635C (zh) | 一种域间组播的传输方法及边缘设备 | |
CN109981308B (zh) | 报文传输方法及装置 | |
CN101252529A (zh) | 一种组播报文的转发方法和设备 | |
CN101345641B (zh) | 一种组播接入设备及方法 | |
US10225091B2 (en) | Method for implementing point-to-multipoint multicast, network node, and system | |
CN1980246B (zh) | 二层组播流转发方法 | |
EP1959637B1 (en) | Method and apparatus for session aware connectivity control | |
CN102025517A (zh) | 一种组播数据的传输方法及装置 | |
CN109039702B (zh) | 专网集群系统中组播组网的实现方法和装置 | |
CN101610200A (zh) | 组播路由的切换方法及装置 | |
CN102624604A (zh) | 一种组播控制方法、路由设备及组播系统 | |
CN101827037A (zh) | 组播数据流的发送方法、装置和二层交换设备 | |
CN101340305B (zh) | 一种源特定的组播方法、系统及其接入设备 | |
Bartczak et al. | Lightweight PIM—a new multicast routing protocol | |
CN101309286B (zh) | 强制节点退出方法和应用层组播系统 | |
CN103780503B (zh) | 一种负载均衡的实现方法和设备 | |
JP5177155B2 (ja) | パケット中継装置 | |
JP5556843B2 (ja) | パケット中継装置 | |
JP4530039B2 (ja) | パケット中継装置 |
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 |