一种实现任意播汇聚点机制的方法和系统的制作方法

文档序号:7745392阅读:223来源:国知局
专利名称:一种实现任意播汇聚点机制的方法和系统的制作方法
技术领域
本发明涉及数据通信领域中网络协议组播技术,尤其涉及一种实现任意播汇聚点 机制的方法和系统。
背景技术
网络协议(IP,Internet Protocol)组播技术提供了一种网络层点到多点的数据 转发方式,在网络数据传送的应用领域中,组播具有高效的带宽和一次向多个接收站点传 递相同内容的能力,降低了网络和服务器的负载。到目前为止,IP组播技术已经广泛的应 用于视频点播、交互式网络电视(IPTV,InternetProtocol Television)、视频会议、远程教 育、网络电台、网络游戏等增值业务。由于IP组播技术本身的特性,使得IP组播技术在IP 网络领域有着巨大的发展前景。稀疏模式独立组播协议(PIM-SM,ProtocolIndependent Multicast-SparseMode)的含义是组播路由与采用单播路由协议的种类是没有相关性的, 这个协议具备天然的协议的无关性、易用性、高效性及可扩展性,已成为目前及下一代IP 组播技术的优选方案。汇聚点(RP,Rendezvous Point)是PIM-SM中重要的概念,是一种名为RP的路由 器,直连组播源指定路由器(DR,Designated Router)负责向RP注册组播源信息,从而建立 RP到直连组播源DR之间的最短路径树(SPT,Shortest-Path Tree)。最后一个DR连接组 播接收者,负责向RP方向发起加入组播共享树(RPT,Rendezvous Point Tree),从而建立 组播源到组播接收者之间的组播分发树。因此RP成为连接组播源和组播接收者之间的中 枢,也是PIM-SM中组播流量转发的关键节点。下面称直连组播源的DR为SDR,直连组播接 收者的DR为UDR。在标准PIM-SM中,每个组播组只能映射到唯一的一个活动RP,这个特点带来如 下缺陷一、控制报文和数据报文都要经过RP,不仅加重了 RP的负担,也形成了网络瓶颈; 二、活动RP失效后,需要重新进行RP选举,重新发起注册和加入过程,导致组播路由收敛 慢;其中活动RP是多个RP中最终被选举出的RP ;三、单一的RP可靠性较差。为了增强 PIM-SM中RP的可靠性,以及对网络中的组播流量进行分担,可以在骨干网上选取若干RP 运行Anycast-RP机制,以达到冗余备份和负载分担的目的。任意播汇聚点(Anycast-RP, AnycastRendezvous Point)机制指的是在PIM-SM域内选取某个单播地址作为RP地址 (RPA, Rendezvous Point Address), RP信息可以通过静态配置也可以通过PM-SM动态发 布,RP信息包括RP的优先级和RP的RPA ;在PIM-SM域内选择一组节点作为RP,这组节点 称为Anycast-RP集,Anycast-RP集内所有成员都启用一个地址作为RPA的本地环回接口 (Loopback),并发布到单播路由系统中。Anycast-RP集内各成员称为Anycast-RP成员。 Anycast-RP成员之间通过一定的手段共享组播源信息,每个Anycast-RP成员只承担其周 围区域的中枢角色。在现有技术中,通过在Anycast-RP成员之间建立组播源发现协议(MSDP,
3Multicast Source Discovery Protocol)对等体,利用源活动(SA, Source-Active)消息 共享组播源信息,如图1所示,Anycast-RP机制在PIM-SM中的工作流程以及作用如下1、RP1和RP2互为MSDP对等体,并启用相同的IP地址,作为RPA。2、连接组播源S1的指定路由器SDR1选择较近的汇聚点RP1注册。3、Anycast-RP成员RP1通过MSDP向Anycast-RP集内的另一成员RP2通告组播 源{曰息。4、连接组播接收者USER2的指定路由器UDR2选择较近的汇聚点RP2加入SPT,RP2 向指定路由器SDR1方向发起加入,创建RPT。5、创建从指定路由器SDR1到汇聚点RP1再到指定路由器UDR2的组播转发路径。6、组播接收者USER1接收组播源S2的流程同上述步骤。7、如果汇聚点RP1失效或者指定路由器SDR1到RP1的单播路径失效,等待单播路 由收敛后,SDR1会重新选择RP2作为汇聚点;同样,如果汇聚点RP2失效或者指定路由器 SDR2到RP2的单播路径失效,等待单播路由收敛后,SDR2会重新选择RP1作为汇聚点,从而 实现组播转发路径的快速收敛。在上述现有技术实现Anycast-RP机制的方法中,需要在所有Anycast-RP成员节 点上运行MSDP,这样需要维护Anycast-RP成员节点之间大量的MSDP对等体;因为MSDP 对等体与多个PIM-SM域相连,从而发现其它PIM-SM域内的组播源信息,所以PIM-SM域和 多个MSDP对等体之间存在交互,从而增加了 Anycast-RP机制的复杂度。另外,下一代网 络的研究和规划中,IP组播体系已经放弃了 MSDP。由此可见,无论是为了优化当前网络, 还是为了完善下一代网络中IP组播路由协议,都需要考虑在去除MSDP的条件下如何保留 Anycast-RP 机制。

发明内容
有鉴于此,本发明的主要目的在于提供一种实现任意播汇聚点机制的方法和系 统,简单的实现了 Anycast-RP机制。为达到上述目的,本发明的技术方案是这样实现的本发明提供一种实现任意播汇聚点机制的方法,包括组播源发送组播流给直连组播源的指定路由器(SDR),SDR将封装的注册报文发 送给汇聚点(RP);RP加入组播源方向的最短路径树(SPT),建立组播源到组播接收者的SPT ;由组播共享树(RPT)切换为SPT,SDR通过SPT将组播流发送给直连组播接收者的 指定路由器(UDR)。上述方法中,该方法进一步包括在每个任意播汇聚点(Anycast-RP)成员上配置汇聚点地址(RPA)和汇聚点通信 地址(RPCA)。上述方法中,所述在每个Anycast-RP成员上配置RPA和RPCA具体为在每个Anycast-RP成员上都配置相同的RPA,并且在每个Anycast-RP成员上都配 置一个RPCA,每个RP上都保存其他Anycast-RP成员的RPCA。上述方法中,所述组播源发送组播流给SDR,SDR将封装的注册报文发送给RP具体
4为组播源发送组播流给SDR,根据候选RP的优先级和RP的RPA选举出一个RP,通过 查找目的地址为RPA的单播路由,SDR向RP的出接口方向发送封装了组播数据报文的注册 报文。上述方法中,所述RP加入组播源方向的SPT,建立组播源到组播接收者的SPT具体 为RP加入组播源方向的SPT,向SDR发送注册停止报文,向其他所有Anycast-RP成 员转发注册报文;SDR停止发送注册报文,并在注册抑制定时器超时后,向RP发送空注册报 文;其他Anycast-RP成员向RP发送注册停止报文,并加入组播源方向的SPT。上述方法中,所述SDR停止发送注册报文,并在注册抑制定时器超时后,向RP发送 空注册报文之后还包括RP发送注册停止报文给SDR,向其他所有Anycast-RP成员转发空注册报文; Anycast-RP成员中的其他RP向发送空注册报文的RP发送注册停止报文。本发明还提供一种实现任意播汇聚点机制的系统,该系统包括SDR、RP、切换模 块、UDR,其中,SDR,用于接收组播源发送的组播流,并将封装的注册报文发送给RP ;通过SPT将 组播流发送给UDR;RP,用于接收封装的注册报文,并加入组播源方向的SPT,建立组播源到组播接收 者的SPT ;切换模块,用于将RPT切换为SPT ;UDR,用于接收SDR通过SPT发送的组播流。上述系统中,该系统进一步包括配置模块,用于在每个Anycast-RP成员上配置RPA和RPCA。本发明所提供的实现任意播汇聚点机制的方法和系统,在去除现有技术中的MSDP 的基础上,简单的实现Anycast-RP机制,以及RP的冗余备份、组播流量的负荷分担和组播 转发路径的快速收敛,进一步完善了下一代网络中IP组播路由协议和当前网络。


图1为现有技术中实现任意播汇聚点机制的典型应用组网示意图;图2为本发明实现任意播汇聚点机制的方法的流程示意图;图3为本发明RP进行注册并加入组播源方向的SPT的方法的流程示意图;图4为本发明实现任意播汇聚点机制的方法的实施例的组网示意图;图5为本发明实现任意播汇聚点机制的方法的第一实施例的流程示意图;图6为本发明实现任意播汇聚点机制的系统的结构示意图。
具体实施例方式本发明提出PIM-SM域内实现任意播汇聚点机制的方法和系统,本发明的基本思 想是组播源发送组播流给SDR,SDR将封装的注册报文发送给RP ;RP加入组播源方向的 SPT,建立组播源到组播接收者的SPT ;由RPT切换为SPT,SDR通过SPT将组播流发送给UDR。
下面通过附图及具体实施例对本发明再做进一步的详细说明。图2是本发明实现任意播汇聚点机制的方法的流程示意图,如图2所示,该方法包 括以下步骤步骤201,在每个Anycast-RP成员上配置RPA和RPCA ;具体的,在PIM-SM域中的每个Anycast-RP成员上都配置相同的RPA,并且在 每个Anycast-RP成员上都配置一个汇聚点通信地址(RPCA,RendezvousPoint Contact Address),每个RP上都保存其他Anycast-RP成员的RPCA,这样Anycast-RP成员都可以知 道相互之间的存在以及其他Anycast-RP成员的RPCA,这样就可以进行相互通信;本实施例 中,启用Anycast-RP的设备都称为Anycast-RP成员;步骤202,组播源发送组播流给SDR,SDR将封装的注册报文发送给RP ;具体的,组播源发送组播流给SDR,SDR根据候选RP的优先级和RP的RPA选举出 一个RP,通常选出的RP是距离SDR最近的RP,该距离指的是物理距离,该RP的地址为RPA, 通过查找目的地址为RPA的单播路由,SDR向RP的出接口方向发送封装了组播数据报文的 注册报文,该注册报文的源地址是SDR的地址,目的地址是RPA ;步骤203,RP加入组播源方向的SPT,建立组播源到组播接收者的SPT ;步骤204,由RPT切换为SPT,SDR通过SPT将组播流发送给UDR ;具体的,在上述步骤中,已经形成了组播源到组播接收者的SPT,因此组播流沿着 RP和RPT到达UDR的转发路径就不是最优的转发路径,需要将RPT切换为SPT,切换之后形 成了组播源到组播接收者的最短路径转发树,SDR通过SPT将组播流发送给UDR ;因为在建 立组播源到组播接收者的SPT后,RPT和SPT同时存在,因此组播路由表中的最后一跳利用 协议无关组播(PIM,Protocol Independent Multicast)剪断RPT,原来在RPT中传输的组 播流就可以自动切换到SPT中进行传输;由RPT切换为SPT只是单播路径的改变,只会引起RP上的处理逻辑发生变化,不 会引起SDR和UDR上逻辑的改变。图3是实现图2中步骤203的具体方法,是本发明RP加入组播源方向的SPT,建立 组播源到组播接收者的SPT的方法的流程示意图,如图3所示,该方法包括以下步骤步骤301,RP加入组播源方向的SPT,向SDR发送注册停止报文,向其他所有 Anycast-RP成员转发注册报文;具体的,RP收到封装的注册报文后解封装该注册报文,将内层组播数据报文发给 RPT,发起加入组播源方向的SPT,RP加入SPT之后,向SDR发送注册停止报文,向其他所有 Anycast-RP成员转发注册报文;步骤302,SDR停止发送注册报文,并在注册抑制定时器超时后,向RP发送空注册 报文;其他Anycast-RP成员向RP发送注册停止报文,并加入组播源方向的SPT ;具体的,SDR收到注册停止报文后,刷新注册抑制定时器,并停止发送注册报文, 当注册抑制定时器超时后,向RP发送空注册报文;Anycast-RP成员中的其他RP收到来自 RP的注册报文后解封装注册报文,将内层组播数据报文发给RPT,发起加入组播源方向的 SPT,RP加入SPT之后,向发送注册报文的RP发送注册停止报文;步骤303,RP发送注册停止报文给SDR,向其他所有Anycast-RP成员转发空注册 报文;
6
具体的,RP收到SDR发送的空注册报文后,刷新(S,G)存活时间定时器时间,向 SDR发送注册停止报文,拷贝空注册报文,并向Anycast-RP成员中的其他RP发送拷贝的空 注册报文;(S,G)表示组播组G和组播源S的组播路由表,包括组播源地址、组播组地址、入 接口、出接口列表、定时器等;(S,G)存活时间定时器是用于进行组播组路由表更新的,每 次刷新(S,G)存活时间定时器时间,就进行组播组路由表的更新;SDR收到RP发送的注册停止报文后,会再次刷新注册抑制定时器,该定时器超时 后,SDR会继续向RP发送空注册报文;步骤304,Anycast-RP成员中的其他RP向发送空注册报文的RP发送注册停止报 文;具体的,Anycast-RP成员中的其他RP收到来自RP的空注册报文后,向发送空注 册报文的RP发送注册停止报文,刷新(S,G)存活时间定时器时间。图4是本发明实现任意播汇聚点机制的方法的实施例的组网图,如图4所示,RP1 和RP2属于非直连源DR的RP,RP3属于直连源DR的RP,SDR1直连组播源Sl,UDR1直连组 播接收者USER1,SDR1和UDR1与RP1配置为具有距离最近的单播距离关系,UDR2直连组播 接收者USER2,UDR2与RP2配置为具有距离最近的单播距离关系,RP3直连组播源S3,RP3 同时作为SDR3,下面针对非直连源DR的RP和直连源DR的RP,分别说明实现Anycast-RP 机制的方法。图5是本发明实现任意播汇聚点机制的方法的第一实施例的流程示意图,该实施 例是以非直连源DR设备中RP1为例进行说明,如图5所示,该方法包括以下步骤步骤501,配置 RPA 和 RPCA ;具体的,在RP1、RP2、RP3上配置同一个RPA,并且在RP1、RP2、RP3上分别配置 RPCA1、RPCA2、RPCA3,每个RP上都保存其他RP的RPCA,例如RP1保存了 RP2和RP3的RPCA, 这样RP1就知道RP2和RP3的存在并知道RP2和RP3的RPCA,利用RPCA,RP1可以同RP2和 RP3进行通信;步骤502,建立 RP 到 UDR 的 RPT ;具体的,组播接收者USER1向UDR1发送加入组播组G的请求,根据配置的单播距 离关系、候选RP的优先级和RP的RPCA选举出RP1,RP1是距离SDR1最近的RP,UDR1向RP1 的出接口方向发起PIM加入,经过PIM的逐跳加入方式到达RP1,建立RP1到UDR1的RPT ; 同样,组播接收者USER2首先向UDR2发送加入组播组G的请求,然后建立RP2到UDR2的 RPT ;步骤503,组播源S1发送组播组G的数据给SDR1,SDR1向RP1发送注册报文;具体的,组播源S1发送组播组G的数据给SDR1,SDR1向RP1的出接口方向发送封 装了组播数据报文的PIM注册报文,该注册报文的源地址为SDR1,目的地址为RPA ;步骤504,将解封装注册报文得到的组播数据报文转发给RPT,加入组播源方向的 SPT,RP1向SDR1发送注册停止报文;转发注册报文给RP2和RP3 ;具体的,注册报文到达RP1后,因为注册报文的源地址不是其他RP的RPCA,RP1判 断该注册报文来自SDR,RP1解封装出注册报文中的组播数据报文并转发到已经建立起来 的RPT,发起加入组播源S1方向的SPT ;RP1向SDR1发送注册停止报文,然后继续执行步骤 509 ;因为RP1保存了其他RP的RPCA,RP1复制注册报文后向RP2和RP3转发该注册报文,被转发的注册报文的源地址为RPCA1,目的地址为RPCA2和RPCA3,RP2收到注册报文就执 行步骤505,RP3收到注册报文就执行步骤506 ;步骤505,解封装注册报文得到组播数据报文并转发给RPT,加入组播源方向的 SPT ;具体的,注册报文到达RP2后,因为该注册报文的源地址是RP1的RPCA,所以RP2 判断该报文来自RP1,RP2解封装出注册报文中的组播数据报文并转发给已经建立起来的 RPT,并发送注册停止报文给RP1,发起加入组播源S1方向的SPT ;步骤506,RP3创建路由表,丢弃注册报文,并发送注册停止报文给RP1 ;具体的,注册报文到达RP3后,在步骤502中RP3上没有建立RPT,所以RP3仅仅创 建(S,G)路由表,以备接收报文的RP快速加入组播源SI方向的SPT,RP3丢弃注册报文,并 发送注册停止报文给RP1 ;步骤507,RP1丢弃注册停止报文;具体的,RP1收到RP2和RP3发送的注册停止报文后,因为RP1不是直连源设备, 不具备维护注册状态机,所以RP1丢弃注册停止报文;步骤508,由RPT切换为SPT,组播组G的数据通过SPT到达UDR ;具体的,在上述步骤中,已经形成了组播源S1到组播接收者UDR1的SPT,因此RPT 不是最优的转发路径,需要将RPT切换为SPT,切换之后形成了组播源到组播接收者的最短 路径转发树,SDR通过SPT将组播组G的数据发送给UDR ;步骤509,SDR1收到注册停止报文后,停止发送注册报文;具体的,SDR1收到RP1发送的注册停止报文后,会刷新注册抑制定时器,停止发送 注册报文,该定时器超时后,SDR1会向RP1发送空注册报文;步骤510,RP1收到SDR1的空注册报文后,向SDR1发送注册停止报文,转发空注册 报文给RP2和RP3 ;具体的,RP1收到SDR1的空注册报文后,刷新相关组播路由转发表的存活时间定 时器,并向SDR1发送注册停止报文,向RP2和RP3转发该空注册报文;SDR1收到RP1发送 的注册停止报文后,会再次刷新注册抑制定时器,该定时器超时后,SDR1会继续向RP1发送 空注册报文;步骤511,RP2和RP3刷新存活时间定时器,向RP1发送注册停止报文;具体的,RP2和RP3收到来自RP1的空注册报文后,刷新相关组播路由转发表的存 活时间定时器,并向RP1发送注册停止报文。以RP3为代表的直连源DR,与RP1处理方法不同的仅在于,当组播源S3发送组播 组G的数据给SDR3时,因为SDR3与RP3位置相同,所以SDR3直接向RP1和RP2发送封装 了组播数据报文的注册报文,不需要通过RP3进行转发。本发明还提供一种实现任意播汇聚点机制的系统,图6是本发明实现任意播汇聚 点机制的系统的结构示意图,如图6所示,该系统包括SDR 31、RP 32、切换模块33、UDR34 ; 其中,SDR 31,用于接收组播源发送的组播流,并将封装的注册报文发送给RP33 ;通过 SPT将组播流发送给UDR 35 ;RP 32,用于接收封装的注册报文,并加入组播源方向的SPT,建立组播源到组播接收者的SPT ;切换模块33,用于将RPT切换为SPT ;UDR 34,用于接收SDR32通过SPT发送的组播流;该系统进一步包括配置模块35,用于在每个Anycast-RP成员上配置RPA和RPCA。以上所述,仅为本发明的较佳实施例而已,并非用于限定本发明的保护范围,凡在 本发明的精神和原则之内所作的任何修改、等同替换和改进等,均应包含在本发明的保护 范围之内。
9
权利要求
一种实现任意播汇聚点机制的方法,其特征在于,该方法包括组播源发送组播流给直连组播源的指定路由器(SDR),SDR将封装的注册报文发送给汇聚点(RP);RP加入组播源方向的最短路径树(SPT),建立组播源到组播接收者的SPT;由组播共享树(RPT)切换为SPT,SDR通过SPT将组播流发送给直连组播接收者的指定路由器(UDR)。
2.根据权利要求1所述的方法,其特征在于,该方法进一步包括在每个任意播汇聚点(Anycast-RP)成员上配置汇聚点地址(RPA)和汇聚点通信地址 (RPCA) ο
3.根据权利要求2所述的方法,其特征在于,所述在每个Anycast-RP成员上配置RPA 和RPCA具体为在每个Anycast-RP成员上都配置相同的RPA,并且在每个Anycast-RP成员上都配置一 个RPCA,每个RP上都保存其他Anycast-RP成员的RPCA。
4.根据权利要求1所述的方法,其特征在于,所述组播源发送组播流给SDR,SDR将封 装的注册报文发送给RP具体为组播源发送组播流给SDR,根据候选RP的优先级和RP的RPA选举出一个RP,通过查找 目的地址为RPA的单播路由,SDR向RP的出接口方向发送封装了组播数据报文的注册报文。
5.根据权利要求1至4任一所述的方法,其特征在于,所述RP加入组播源方向的SPT, 建立组播源到组播接收者的SPT具体为RP加入组播源方向的SPT,向SDR发送注册停止报文,向其他所有Anycast-RP成员转 发注册报文;SDR停止发送注册报文,并在注册抑制定时器超时后,向RP发送空注册报文; 其他Anycast-RP成员向RP发送注册停止报文,并加入组播源方向的SPT。
6.根据权利要求5所述的方法,其特征在于,所述SDR停止发送注册报文,并在注册抑 制定时器超时后,向RP发送空注册报文之后还包括RP发送注册停止报文给SDR,向其他所有Anycast-RP成员转发空注册报文; Anycast-RP成员中的其他RP向发送空注册报文的RP发送注册停止报文。
7.一种实现任意播汇聚点机制的系统,其特征在于,该系统包括SDR、RP、切换模块、 UDR,其中,SDR,用于接收组播源发送的组播流,并将封装的注册报文发送给RP ;通过SPT将组播 流发送给UDR;RP,用于接收封装的注册报文,并加入组播源方向的SPT,建立组播源到组播接收者的SPT ;切换模块,用于将RPT切换为SPT ;UDR,用于接收SDR通过SPT发送的组播流。
8.根据权利要求7所述的系统,其特征在于,该系统进一步包括配置模块,用于在每个Anycast-RP成员上配置RPA和RPCA。
全文摘要
本发明公开一种实现任意播汇聚点机制的方法,该方法包括组播源发送组播流给SDR,SDR将封装的注册报文发送给RP;RP加入组播源方向的SPT,建立组播源到组播接收者的SPT;由RPT切换为SPT,SDR通过SPT将组播流发送给UDR;本发明还公开了一种实现任意播汇聚点机制的系统。根据本发明的技术方案,简单的实现了Anycast-RP机制。
文档编号H04L12/56GK101808004SQ20101014059
公开日2010年8月18日 申请日期2010年3月23日 优先权日2010年3月23日
发明者沈洋 申请人:中兴通讯股份有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1