CN101656679B - 一种组播快速收敛方法、路由器和通信*** - Google Patents

一种组播快速收敛方法、路由器和通信*** Download PDF

Info

Publication number
CN101656679B
CN101656679B CN2009101778349A CN200910177834A CN101656679B CN 101656679 B CN101656679 B CN 101656679B CN 2009101778349 A CN2009101778349 A CN 2009101778349A CN 200910177834 A CN200910177834 A CN 200910177834A CN 101656679 B CN101656679 B CN 101656679B
Authority
CN
China
Prior art keywords
multicast
subsequent use
path
outgoing interface
router
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.)
Expired - Fee Related
Application number
CN2009101778349A
Other languages
English (en)
Other versions
CN101656679A (zh
Inventor
刘毅松
赵大赫
阴元斌
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Huawei Technologies Co Ltd
Original Assignee
Huawei Technologies Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Huawei Technologies Co Ltd filed Critical Huawei Technologies Co Ltd
Priority to CN2009101778349A priority Critical patent/CN101656679B/zh
Publication of CN101656679A publication Critical patent/CN101656679A/zh
Priority to EP10818393A priority patent/EP2437444A4/en
Priority to PCT/CN2010/077022 priority patent/WO2011035699A1/zh
Priority to US13/339,402 priority patent/US20120099422A1/en
Application granted granted Critical
Publication of CN101656679B publication Critical patent/CN101656679B/zh
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/02Details
    • H04L12/16Arrangements for providing special services to substations
    • H04L12/18Arrangements for providing special services to substations for broadcast or conference, e.g. multicast
    • H04L12/185Arrangements for providing special services to substations for broadcast or conference, e.g. multicast with management of multicast group membership
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/02Details
    • H04L12/16Arrangements for providing special services to substations
    • H04L12/18Arrangements for providing special services to substations for broadcast or conference, e.g. multicast
    • H04L12/1863Arrangements for providing special services to substations for broadcast or conference, e.g. multicast comprising mechanisms for improved reliability, e.g. status reports
    • H04L12/1877Measures taken prior to transmission
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/16Multipoint routing
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/22Alternate routing
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/28Routing or path finding of packets in data switching networks using route fault recovery

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

本发明实施例公开了一种组播快速收敛方法、路由器和通信***。本发明实施例采用计算出到达组播源的每条单播路由的主备用出接口和下一跳,然后分别根据计算出的主备用出接口和下一跳构建主备用路径,当主用路径发生故障时,通过备用路径接收组播源下发的组播流并转发组播流;由于该方案中的节点可以动态地根据单播路由计算出的主备用出接口和下一跳(即根据选路结果),并发送PIM Join报文以构建主备用路径,因此无需在设备上静态配置组播的主备入接口和下一跳,可以适应网络的动态拓扑变化,大大扩充了组播流保护的场景。

Description

一种组播快速收敛方法、路由器和通信***
技术领域
本发明涉及通信技术领域,具体涉及一种组播快速收敛方法、路由器和通信***。
背景技术
网际协议(IP,Internet Protocol)组播是指在IP网络中将数据包以尽力传送(best-effort)的形式发送到网络中的某个确定节点子集的技术,其中,这个子集称为组播组(multicast group)。利用IP组播技术可以实现一些网络业务,比如在线直播、网络电视、远程教育和实时视频会议等等,但是,由于这些业务对实时性的要求都较高,丢包将会对这些业务产生严重的影响,所以,为了保证业务数据的正常传输,在网络发生故障时,需要对路径进行快速收敛。
目前组播的收敛一般采用协议无关组播(PIM,Protocol IndependentMulticast)协议,在现有的方案中,一般会预先为主用链路指定一条备用链路,同时分别配置PIM加入(Join)的接口,即分别配置主用链路的上游接口和备用链路的上游接口,此后,主用链路的上游接口和备用链路的上游接口分别发送PIM Join给各自的上一跳节点以建立到组播源的组播树,最终分别形成到组播源的主用路径(即主组播树)和备用路径(即备组播树),组播源通过主用路径和备用路径同时下发组播流,正常情况下,各节点均只会接收主用路径上的组播流,而丢弃备用路径上的组播流,当主用路径出现故障时,则将转发表项切换到备用路径以接收备用路径上的组播流,并将该组播流进行转发。
需说明的是,该PIM协议的收敛性能远不如单播收敛,这是因为单播收敛只需要扩散一个故障消息,然后每个网络节点本地完成路由计算,就可以把所有路由收敛到新的路径上,而组播却不然。当然,单播需要每条路由下发转发,因此性能瓶颈主要在计算和下发。而PIM协议相当于是一个建隧道的协议,每条组播路由相当于是一条隧道,这样,当本地处理完路由变化并下发转发后,还需要逐跳路由通知上游节点,上游节点同样要进行计算一次并下发转发的过程,因此,PIM Join报文的传输量是重要开销,而且由于这部分开销发生在网络节点之间,所以要远大于设备本身下发转发的开销。
在对现有技术的研究和实践过程中,本发明的发明人发现,现有技术所提供的方案,由于需要在设备上静态配置组播的主备入接口和下一跳,因此无法适应网络的动态拓扑变化,组播流保护的场景受到较大限制。
发明内容
本发明实施例提供一种组播快速收敛方法、路由器和通信***,可以适应网络的动态拓扑变化。
一种组播快速收敛方法,包括:
计算出到达组播源的每条单播路由的主用出接口、备用出接口、主用下一跳和备用下一跳;
将计算出的主用出接口作为组播的主用入接口发送PIM Join报文给主用下一跳以建立主用路径;
将计算出的备用出接口作为组播的备用入接口发送PIM Join报文给备用下一跳以建立备用路径;
当主用路径发生故障时,通过备用路径接收组播源下发的组播流并转发组播流。
一种路由器,包括:
计算单元,用于计算出到达组播源的每条单播路由的主用出接口、备用出接口、主用下一跳和备用下一跳;
主发送单元,用于将计算单元计算出的主用出接口作为组播的主用入接口发送PIM Join报文给主用下一跳以建立主用路径;
备发送单元,用于将计算单元计算出的备用出接口作为组播的备用入接口发送PIM Join报文给备用下一跳以建立备用路径;
第一处理单元,用于当主发送单元发起建立的主用路径发生故障时,通过备发送单元发起建立的备用路径接收组播源下发的组播流并转发组播流。
一种通信***,包括本发明实施例提供的任意一种路由器,例如,包括:
第一路由器,用于计算出到达组播源的每条单播路由的主用出接口、备用出接口、主用下一跳和备用下一跳;将计算出的主用出接口作为组播的主用入接口发送协议无关组播加入PIM Join报文给所述主用下一跳以建立主用路径;将计算出的备用出接口作为组播的备用入接口发送PIM Join报文给所述备用下一跳以建立备用路径;当所述主用路径发生故障时,通过所述备用路径接收组播源下发的组播流并转发组播流;
第二路由器,作为主用下一跳,用于接收第一路由器发送的PIM Join报文,发送PIM Join报文给第四路由器以建立主用路径,在接收到第四路由器发送的组播流后,将组播流转发给第一路由器;
第三路由器,作为备用下一跳,用于接收第一路由器发送的PIM Join报文,发送PIM Join报文给第四路由器以建立备用路径,在接收到第四路由器发送的组播流后,将组播流转发给第一路由器;
第四路由器,用于接收第二路由器发送的PIM Join报文,以及接收第三路由器发送的PIM Join报文,在主用路径和备用路径建立完成后,通过主用路径发送组播流给第二路由器,通过备用路径发送组播流给第三路由器。
本发明实施例采用计算出到达组播源的每条单播路由的主备用出接口和下一跳,然后分别根据计算出的主备用出接口和下一跳构建主备用路径,当主用路径发生故障时,通过备用路径接收组播源下发的组播流并转发组播流;由于该方案中的节点可以动态地根据计算出的主备用出接口和下一跳(即根据选路结果)发送PIM Join报文以构建主备用路径,因此无需在设备上静态配置发送PIM Join报文的组播的主备入接口和下一跳,可以适应网络的动态拓扑变化,大大扩充了组播流保护的场景。
附图说明
为了更清楚地说明本发明实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本发明实施例一所提供的方法的方法流程图;
图2是本发明实施例二提供的网络拓扑示意图;
图3是本发明实施例二提供的网络拓扑场景示意图;
图4是本发明实施例三提供的网络拓扑场景示意图;
图5是本发明实施例所提供的路由器的结构示意图;
图6是本发明实施例所提供的通信***的结构示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
本发明实施例提供一种组播快速收敛方法、路由器和通信***。以下分别进行详细说明。
实施例一、
本实施例将从宿节点的角度来描述,在本发明实施例中,宿节点指的是直连接收者的节点,源节点指的是直连组播源的节点,另外,单播路由的出接口对于组播应用来说为入接口。
一种组播快速收敛方法,包括:计算出到达组播源的每条单播路由的主用出接口、备用出接口、主用下一跳和备用下一跳;将计算出的主用出接口作为组播的主用入接口发送PIM Join报文给主用下一跳以建立主用路径;将计算出的备用出接口作为组播的备用入接口发送PIM Join报文给备用下一跳以建立备用路径;当主用路径发生故障时,通过备用路径接收组播源下发的组播流并转发组播流。其中,本发明实施例中所描述的PIM Join报文,均指的是PIM双向Join报文,以下均简称PIM Join报文。如图1所示,具体流程可以如下:
101、计算出到达组播源的每条单播路由的主用出接口、备用出接口、主用下一跳和备用下一跳;
例如,可以利用启动单播IP快速重路由(FRR,Fast Reroute)计算出到达组播源的每条单播路由的主用出接口、备用出接口、主用下一跳和备用下一跳。一般的,到达特定的组播源只有一条最优的单播路由,但是,如果启动单播IP FRR,则还会存在其他的备用单播路由,即存在备用出接口和下一跳,因此,此时,可以计算出到达组播源的每条单播路由的主用出接口、备用出接口、主用下一跳和备用下一跳。
其中,IP FRR指的是在故障发生时,在和故障链路或故障节点相邻的路由器上通过直接更改转发表项的下一跳使其绕过故障节点而达到业务不中断的效果,并且要求转发流量不会造成环路的相关技术。这种做法不要求在控制层面进行收敛,仅仅依赖于故障感知时间和切换下一跳的时间,因此可以实现快速重路由的目的,目前主要应用于单播领域,本发明实施例将该技术结合PIM双向加入(Join)应用在组播中,以适应网络的动态拓扑变化,关于这一点,在以下的实施例中将会进行详细地描述。
102、将计算出的主用出接口作为组播的主用入接口发送PIM Join报文给主用下一跳以建立主用路径;
例如,通过计算出的主用出接口发送PIM Join报文给主用下一跳,以触发协议无关组播-稀松模式(PIM-SM,Protocol Independent Multicast-SparseMode)构建主共享树(RPT,Rendezvous Point Tree),其中,主共享树包括主用路径;或者,
通过计算出的主用出接口发送PIM Join报文给主用下一跳,以触发PIM-SM或协议无关组播-特定源组播(PIM-SSM,Protocol IndependentMulticast-Source-Specific Multicast)构建主最短路径树(SPT,Shortest PathTree),其中,主最短路径树包括主用路径。
103、将计算出的备用出接口作为组播的备用入接口发送PIM Join报文给备用下一跳以建立备用路径;
例如,通过计算出的备用出接口发送PIM Join报文给备用下一跳,以触发PIM-SM构建备共享树,其中,备共享树包括备用路径;或者,
通过计算出的备用出接口发送PIM Join报文给备用下一跳,以触发PIM-SM或PIM-SSM构建备最短路径树,其中,备最短路径树包括备用路径。
其中,步骤102和步骤103的执行顺序可以不分先后。
104、当主用路径发生故障时,通过备用路径接收组播源下发的组播流并转发组播流。
例如,通过备用路径接收组播源下发的组播流,然后根据转发表项和出接口转发组播流。
需说明的是,当主用路径使用正常时,通过主用路径接收组播源下发的组播流并转发组播流,丢弃备用路径上的组播流。即,在网络没有发生故障时,一般只接收来自主用路径上的组播流,而丢弃来自备用路径上的组播流,只有在网络出现故障,且该故障是主用路径发生故障时,才将主用路径切换到备用路径,从备用路径上接收组播流并进行组播流的转发。其中,可以通过快速故障检测,比如双向转发检测(BFD,Bidirectional Forwarding Detection)等技术来快速感知是否发生故障,如果主用路径发生故障,则执行步骤104。
另外,还需说明的是,若网络拓扑发生变化,则单播路由收敛以后,IP FRR会重新计算出主用出接口、主用下一跳、备用出接口和备用下一跳,由此PIM选路结果也会随之动态变化,那么,此时宿节点会根据新计算出来的主用出接口、主用下一跳、备用出接口和备用下一跳分别发送PIM Join以建立新的主用路径和备用路径,从而实现灵活适应网络部署的不同情况。
由上可知,本发明实施例采用计算出到达组播源的每条单播路由的主备用出接口和下一跳(即主用出接口、主用下一跳、备用出接口和备用下一跳,以下均简称主备用出接口和下一跳),然后分别根据计算出的主备用出接口和下一跳构建到达组播源的主备用路径(即主用路径和备用路径,以下均简称主备用路径),当主用路径发生故障时,通过备用路径接收组播源下发的组播流并转发组播流;由于该方案中的节点可以动态地根据计算出的主备用出接口和下一跳(即根据选路结果)发送PIM Join报文以构建主备用路径,因此无需在设备上静态配置发送PIM Join报文的组播的主备入接口和下一跳,可以适应网络的动态拓扑变化,大大扩充了组播流保护的场景;而且由于本发明实施例采用了PIM双向Join的技术,因此相对于现有技术的单向Join来说,可以减少节点间的传输开销,有利于。
实施例二、
根据实施例一所描述的方法可知,单播FRR可以为每条单播路由计算出主用出接口、主用下一跳、备用出接口和备用下一跳,根据计算出的主用出接口、主用下一跳、备用出接口和备用下一跳,与单播联动发送双向PIM Join建立到组播源的主用路径和备用路径,引下双份组播流,在网络运行正常的情况下,组播网络中的节点只接收主用路径的组播流,对于备用路径上的组播流则予以丢弃,当主用路径发生故障时,则直接切换到备用路径,接收备用路径上的组播流并转发该组播流。
当然,若网络拓扑发生变化,则单播路由收敛以后,IP FRR会重新计算主备用出接口和下一跳,然后根据重新计算出来的主备用出接口和下一跳分别发送PIM Join以建立新的主备用路径。
例如,如图2所示,节点C为宿节点,节点A为源节点,节点B和节点C为中间节点,其中,节点B分别和节点A、节点C和节点D相连,节点D分别和节点C和节点B相连。则可以如下:
(1)宿节点C启动IP FRR,计算出宿节点C到源节点A的主用出接口为E0/0/0,主用下一跳为节点B、备用出接口为E0/0/1,备用下一跳为节点D。
(2)宿节点C根据组播PIM协议将PIM Join报文分别从E0/0/0发向节点B和从E0/0/1发向节点D,逐跳建立到源节点A的主用路径C-B-A和备用路径C-D-B-A,以便源节点A下发组播流,需说明的是,当节点B接收到接收A下发的组播流后,将会把组播流复制成两份,然后分别通过主用路径和备用路径进行发送。
(3)网络正常运行情况下,节点C对于E0/0/1接收的组播流直接丢弃。当节点B和节点C之间的链路发生故障时,节点C直接将主用路径C-B-A切换到备用路径C-D-B-A上,从E0/0/1接收组播流,此时备用路径生效。
为了更清楚地说明以上方法,本实施例将以PIM-SM RPT发送双向PIMJoin以进行保护的方案为例作进一步详细说明。
如图3所示,假设节点E为源节点,直连组播源,节点D1为宿节点,直连接收者,在节点A1上配置汇聚点,节点B1和节点C1为中间节点,这些节点具体可以为路由器(RT,Rerouter),且这些节点上均运行PIM-SM,节点D1直连接收者的接口运行组管理协议(IGMP,Internet Group ManagementProtocol Internet)。则流程可以如下:
201、节点D1启动单播IP FRR,为每条单播路由计算主用出接口、主用下一跳、备用出接口和备用下一跳,确定到RP的主路由为D1-C1-A1,备用路由为D1-B1-A1;此时,节点D1还可以建立到节点C1的快速故障检测机制,例如利用BFD等技术建立该快速故障检测机制。
202、节点D1所连接收者比如某个用户发送IGMP(*,G)报告(report)报文给节点D1,请求组播组G的数据(即组播流),节点D1接收到该IGMP(*,G)report后,生成PIM(*,G)表项,添加出接口,并根据汇聚点,即节点A1的地址查找节点D1的上游节点。PIM查找结果为主用路径上的上游节点(即本发明实施例所说的主用下一跳)为节点C1,备用路径上的上游节点(即本发明实施例所说的备用下一跳)为节点B1。
203、节点D1向节点C1和节点B1分别发送PIM(*,G)Join报文,触发PIM SM构建主共享树和备共享树。
204、节点C1收到PIM(*,G)Join以后,生成(*,G)表项,添加出接口,并继续逐跳向汇聚点,即节点A1发送PIM(*,G)Join报文;
同理,节点B1收到PIM(*,G)Join以后,也生成(*,G)表项,添加出接口,并继续逐跳向汇聚点,即节点A1发送PIM(*,G)Join报文;
节点A1从节点C1和节点B1均收到PIM(*,G)Join,于是生成(*,G)表项并添加两个出接口。
205、节点E1向RP单播注册(register)报文,创建PIM(S,G)表项,并将(*,G)的出接口添加为(S,G)的出接口,通过该出接口向节点E1的下游节点B1和节点C1转发组播流。
206、节点C1和节点B1均接收组播流,并根据接收到的组播流创建PIM(S,G)表项,并将已有(*,G)的出接口添加为(S,G)的出接口,继续向下游转发组播流,比如在本实施例中即为向节点D转发组播流。
207、节点D1直连接收者,接收来自主路径上的节点C1的组播流,根据接收到的组播流创建PIM(S,G)转发表项,并将已有(*,G)的出接口添加为(S,G)的出接口,向其下游的接收者转发组播流;
对于来自备用路径上的节点B的组播流,则节点D予于直接丢弃。
208、当节点D1与节点C1之间的链路发生故障时,节点D1根据BFD等技术快速感知,直接切换至备用路径上,从备用路径上的节点B1接收组播流,并将接收到的组播流转发给其下游的接收者。
需说明的是,单播路由收敛后,节点D1的单播IP FRR会重新计算新的路由,包括到汇聚点地址在内的每条路由的主用出接口、主用下一跳、备用出接口和备用下一跳,然后利用PIM协议根据计算出来的新的路由查找到汇聚点的主用路径上的上游节点和备用路径上的上游节点,重新触发构建主共享树和备共享树。
另外,需说明的是,在图3,实线箭头表示PIM Join报文,虚线箭头表示组播流。
由上可知,本发明实施例采用在各个节点上运行PIM-SM,利用单播IP FRR计算出到达组播源的每条单播路由的主备用出接口和下一跳,然后分别根据计算出的主备用出接口和下一跳通过发送PIM Join报文构建主备用路径,在网络运行正常时,只接收主用路径上的组播流,丢弃备用路径上的组播流,当主用路径发生故障时,则切换至备用路径,通过备用路径接收组播源下发的组播流并转发组播流;由于该方案中的节点可以动态地根据计算出的主备用出接口和下一跳(即根据选路结果)对发送PIM Join报文的组播的主备入接口进行配置,并发送PIM Join报文以构建主备用路径,因此无需在设备上静态配置发送PIMJoin报文的组播的主备入接口和下一跳,可以适应网络的动态拓扑变化,大大扩充了组播流保护的场景,而且由于本发明实施例采用了PIM双向Join的技术,因此相对于现有技术的单向Join来说,可以减少节点间的传输开销,有利于保证在故障发生后的组播转发性能。
实施例三、
本实施例将以PIM-SSM SPT发送双向PIM Join以进行保护的方案为例作进一步详细说明。
如图4所示,假设节点A2为源节点,直连组播源,节点D2为宿节点,直连接收者,节点B2和节点C2为中间节点,这些节点具体可以为路由器(RT,Rerouter),且这些节点上均运行PIM-SSM,节点D2直连接收者的接口运行IGMP。则流程可以如下:
301、节点D2启动单播IP FRR,为每条单播路由计算主用出接口、主用下一跳、备用出接口和备用下一跳,确定到源节点A2的主路由为D2-B2-A2,备用路由为D2-C2-A2;此时,节点D2还可以建立到节点B2的快速故障检测机制,例如利用BFD等技术建立该快速故障检测机制。
302、节点D2所连接收者比如某个用户发送IGMP(S,G)report报文,请求指定组播源组(S,G)的数据,节点D2接收到该IGMP(S,G)report报文后,生成PIM(S,G)转发表项,添加出接口,并根据源节点A的地址查找节点D的上游节点。PIM查找结果为主用路径上的上游节点(即本发明实施例所说的主用下一跳)为节点B2,备用路径上的上游节点(即本发明实施例所说的备用下一跳)为节点C2。
303、节点D2向节点C2和节点B2均发送PIM(S,G)join报文,触发PIM SSM构建主最短路径树和备最短路径树。
304、节点C2收到PIM(S,G)Join以后,生成(S,G)表项,添加出接口,并继续逐跳向上游节点发送PIM(S,G)Join报文;
同理,节点B2收到PIM(S,G)Join以后,也生成(S,G)表项,添加出接口,并继续逐跳向上游节点发送PIM(S,G)Join报文;
节点A2从节点C2和节点B2均收到PIM(S,G)Join,于是生成(S,G)表项并添加两个出接口。
305、节点A2直连组播源,根据创建的PIM(S,G)表项,向节点A2的下游节点B2和节点C2转发组播流。
306、节点C2和节点B2均接收组播流,并根据已有的(S,G)表项的出接口继续向下游转发组播流。
307、节点D2直连接收者,接收来自主用路径上的节点B2的组播流,并向其(即节点D2)下游的接收者转发;
对于来自备用路径上的节点C的组播流,则节点D2予于直接丢弃。
308、当节点D2和节点B2之间的链路发生故障后,节点D2根据BFD等技术快速感知,直接切换至备用路径上,从备路径节点C2接收组播流,并转发到其下游的接收者。
需说明的是,单播路由收敛后,节点D2的单播IP FRR会重新计算新的路由,包括到组播源地址在内的每条路由的主用出接口、主用下一跳、备用出接口和备用下一跳,然后利用PIM协议根据计算出来的新的路由查找到组播源的主用路径上的上游节点和备用路径上的上游节点,重新触发构建主最短路径树和备最短路径树。
另外,需说明的是,在图4,实线箭头表示PIM Join报文,虚线箭头表示组播流。
由上可知,本发明实施例采用在各个节点上运行PIM-SSM,利用单播IPFRR计算出到达组播源的每条单播路由的主备用出接口和下一跳,然后分别根据计算出的主备用出接口和下一跳通过发送PIM Join报文构建到达组播源的主备用路径,在网络运行正常时,只接收主用路径上的组播流,丢弃备用路径上的组播流,当主用路径发生故障时,则切换至备用路径,通过备用路径接收组播源下发的组播流并转发组播流;由于该方案中的节点可以动态地根据计算出的主备用出接口和下一跳(即根据选路结果)发送PIM Join报文以构建主备用路径,因此无需在设备上静态配置发送PIM Join报文的组播的主备用入接口,可以适应网络的动态拓扑变化,大大扩充了组播流保护的场景,而且由于本发明实施例采用了PIM双向Join的技术,因此相对于现有技术的单向Join来说,可以减少节点间的传输开销,有利于保证在故障发生后的组播转发性能。
实施例四、
为了更好地实施以上方法,本发明实施例还相应地提供一种路由器,如图5所示,该路由器包括计算单元401、主发送单元402、备发送单元403和第一处理单元404;
计算单元401,用于计算出到达组播源的每条单播路由的主用出接口、备用出接口、主用下一跳和备用下一跳;例如,可以利用启动单播IP FRR计算出到达组播源的单播路由的主用出接口、备用出接口、主用下一跳和备用下一跳;
主发送单元402,用于将计算单元401计算出的主用出接口作为组播的主用入接口发送PIM Join报文给主用下一跳以建立主用路径;例如,通过计算出的主用出接口发送PIM Join报文给主用下一跳,以触发PIM-SM构建主共享树,其中,主共享树包括主用路径;或者,通过计算出的主用出接口发送PIM Join报文给主用下一跳,以触发PIM-SM或PIM-SSM构建主最短路径树,其中,主最短路径树包括主用路径;
备发送单元403,用于将计算单元401计算出的备用出接口作为组播的主用入接口发送PIM Join报文给备用下一跳以建立备用路径;例如,通过计算出的备用出接口发送PIM Join报文给备用下一跳,以触发PIM-SM构建备共享树,其中,备共享树包括备用路径;或者,通过计算出的备用出接口发送PIM Join报文给备用下一跳,以触发PIM-SM或PIM-SSM构建备最短路径树,其中,备最短路径树包括备用路径;
第一处理单元404,用于当主发送单元402发起建立的主用路径发生故障时,通过备发送单元403发起建立的备用路径接收组播源下发的组播流并转发组播流。
其中,第一处理单元404可以包括接收子单元和转发子单元;
接收子单元,用于通过备发送单元发起建立的备用路径接收组播源下发的组播流;
转发子单元,用于转发接收子单元接收到的组播流。
如图5所示,该路由器还可以包括第二处理单元405;
第二处理单元405,用于当主发送单元402发起建立的主用路径使用正常时,通过主用路径接收组播源下发的组播流并转发组播流,丢弃备用路径上的组播流。
如图5所示,该路由器还可以包括感知单元406;
感知单元406,用于通过快速故障检测来感知主用路径发生故障;
第一处理单元404,还用于当感知单元406感知主用路径发生故障时,通过备发送单元403发起建立的备用路径接收组播源下发的组播流并转发组播流。
需说明的是,若网络拓扑发生变化,则单播路由收敛以后,计算单元401会重新计算出主用出接口、主用下一跳、备用出接口和备用下一跳,由此PIM选路结果也会随之动态变化,那么,此时主发送单元402和备发送单元403会根据新计算出来的主用出接口、主用下一跳、备用出接口和备用下一跳分别发送PIM Join以建立新的主用路径和备用路径,从而实现灵活适应网络部署的不同情况。
以上各个单元的具体实施可参见前面实施例,在此不再赘述。
由上可知,本发明实施例的路由器的计算单元401可以计算出到达组播源的单播路由的主备用出接口和下一跳,然后由主发送单元402和备发送单元403分别根据计算出的主备用出接口和下一跳构建主备用路径,当感知单元406感知到主用路径发生故障时,第一处理单元404通过备用路径接收组播源下发的组播流并转发组播流;由于该方案中的节点可以动态地根据计算出的主备用出接口和下一跳(即根据选路结果)发送PIM Join报文以构建主备用路径,因此无需在设备上静态配置发送PIM Join报文的组播的主备入接口和下一跳,可以适应网络的动态拓扑变化,大大扩充了组播流保护的场景;而且由于本发明实施例采用了PIM双向Join的技术,因此相对于现有技术的单向Join来说,可以减少节点间的传输开销,有利于。
实施例五、
相应地,本发明实施例还提供一种通信***,包括本发明实施例提供的任意一种路由器。
该路由器可以包括计算单元401、主发送单元402、备发送单元403和第一处理单元404,还可以包括第二处理单元405和感知单元406,其中,第一处理单元404可以包括接收子单元和转发子单元,具体可参见实施例四,在此不再赘述。
该通信***中的路由器的单播FRR可以为每条单播路由计算出主用出接口、主用下一跳、备用出接口和备用下一跳,然后根据计算出的主用出接口、主用下一跳、备用出接口和备用下一跳,与单播联动发送双向PIM Join建立到组播源的主用路径和备用路径,引下双份组播流,在网络运行正常的情况下,该通信***中的路由器只接收主用路径的组播流,对于备用路径上的组播流则予以丢弃,当主用路径发生故障时,则直接切换到备用路径,接收备用路径上的组播流并转发该组播流。具体可参见前面的实施例,在此不再赘述。
当然,若网络拓扑发生变化,则单播路由收敛以后,路由器的IP FRR会重新计算主备用出接口和下一跳,然后根据重新计算出来的主备用出接口和下一跳分别发送PIM Join以建立新的主备用路径。
以下将举例作简略说明,如图6所示,该通信***可以包括第一路由器501、第二路由器502、第三路由器503和第四路由器504;假设第一路由器501在此作为宿节点;
第一路由器501,用于计算出到达组播源的每条单播路由的主用出接口、备用出接口、主用下一跳和备用下一跳;将计算出的主用出接口作为组播的主用入接口发送协议无关组播加入PIM Join报文给所述主用下一跳以建立主用路径;将计算出的备用出接口作为组播的备用入接口发送PIM Join报文给所述备用下一跳以建立备用路径;当所述主用路径发生故障时,通过所述备用路径接收组播源下发的组播流并转发组播流;
第二路由器502,作为主用下一跳,用于接收第一路由器501发送的PIMJoin报文,发送PIM Join报文给第四路由器504以建立主用路径,在接收到第四路由器504发送的组播流后,将组播流转发给第一路由器501;
第三路由器503,作为备用下一跳,用于接收第一路由器501发送的PIMJoin报文,发送PIM Join报文给第四路由器504以建立备用路径,在接收到第四路由器504发送的组播流后,将组播流转发给第一路由器501;
第四路由器504,用于接收第二路由器502发送的PIM Join报文,以及接收第三路由器503发送的PIM Join报文,在主用路径和备用路径建立完成后,通过主用路径发送组播流给第二路由器502,通过备用路径发送组播流给第三路由器503。
以上实施具体可参见前面实施例,在此不再赘述。
由上可知,本发明实施例的通信***采用利用单播IP FRR计算出到达组播源的每条单播路由的主备用出接口和下一跳,然后分别根据计算出的主备用出接口和下一跳通过发送PIM Join报文构建主备用路径,在网络运行正常时,只接收主用路径上的组播流,丢弃备用路径上的组播流,当主用路径发生故障时,则切换至备用路径,通过备用路径接收组播源下发的组播流并转发组播流;由于该方案中的节点可以动态地根据计算出的主备用出接口和下一跳(即根据选路结果)发送PIM Join报文以构建主备用路径,因此无需在设备上静态配置发送PIM Join报文的组播的主备入接口和下一跳,可以适应网络的动态拓扑变化,大大扩充了组播流保护的场景,而且由于本发明实施例采用了PIM双向Join的技术,因此相对于现有技术的单向Join来说,可以减少节点间的传输开销,有利于保证在故障发生后的组播转发性能。
本领域普通技术人员可以理解上述实施例的各种方法中的全部或部分步骤是可以通过程序来指令相关的硬件来完成,该程序可以存储于一计算机可读存储介质中,存储介质可以包括:只读存储器(ROM,Read Only Memory)、随机存取记忆体(RAM,Random Access Memory)、磁盘或光盘等。
以上对本发明实施例所提供的一种组播快速收敛方法、路由器和通信***进行了详细介绍,本文中应用了具体个例对本发明的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本发明的方法及其核心思想;同时,对于本领域的一般技术人员,依据本发明的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本发明的限制。

Claims (9)

1.一种组播快速收敛方法,其特征在于,包括:
宿节点利用启动单播网际协议快速重路由IP FRR,计算出到达组播源的每条单播路由的主用出接口、备用出接口、主用下一跳和备用下一跳,所述宿节点为直连接收者的节点;
将计算出的所述主用出接口作为组播的主用入接口发送协议无关组播加入PIM Join报文给所述主用下一跳以建立主用路径;
将计算出的所述备用出接口作为组播的备用入接口发送PIM Join报文给所述备用下一跳以建立备用路径;
当所述主用路径发生故障时,通过所述备用路径接收组播源下发的组播流并转发组播流。
2.根据权利要求1所述的方法,其特征在于,
所述将计算出的所述主用出接口作为组播的主用入接口发送PIM Join报文给所述主用下一跳以建立主用路径,具体包括:
通过计算出的所述主用出接口发送PIM Join报文给所述主用下一跳,以触发协议无关组播-稀松模式PIM-SM构建主共享树,所述主共享树包括主用路径;
所述将计算出的所述备用出接口作为组播的备用入接口发送PIM Join报文给所述备用下一跳以建立备用路径包括:
通过计算出的备用出接口发送PIM Join报文给备用下一跳,以触发PIM-SM构建备共享树,所述备共享树包括备用路径。
3.根据权利要求1所述的方法,其特征在于,
所述根据计算出的所述主用出接口发送PIM Join报文给所述主用下一跳以建立主用路径,具体包括:
通过计算出的所述主用出接口发送PIM Join报文给主用下一跳,以触发协议无关组播-稀松模式PIM-SM或协议无关组播-特定源组播PIM-SSM构建主最短路径树,所述主最短路径树包括主用路径;
所述将计算出的备用出接口作为组播的备用入接口发送PIM Join报文给备用下一跳以建立备用路径包括:
通过计算出的备用出接口发送PIM Join报文给备用下一跳,以触发PIM-SM或PIM-SSM构建备最短路径树,所述备最短路径树包括备用路径。
4.根据权利要求1所述的方法,其特征在于,还包括:
当主用路径使用正常时,通过主用路径接收组播源下发的组播流并转发组播流,丢弃备用路径上的组播流。
5.根据权利要求1所述的方法,其特征在于,
通过快速故障检测BFD来感知主用路径发生故障。
6.一种路由器,其特征在于,作为宿节点,所述宿节点为直连接收者的节点,包括:
计算单元,用于利用启动单播网际协议快速重路由IP FRR,计算出到达组播源的每条单播路由的主用出接口、备用出接口、主用下一跳和备用下一跳;
主发送单元,用于将计算单元计算出的所述主用出接口作为组播的主用入接口发送协议无关组播加入PIM Join报文给所述主用下一跳以建立主用路径;
备发送单元,用于将计算单元计算出的所述备用出接口作为组播的备用入接口发送PIM Join报文给所述备用下一跳以建立备用路径;
第一处理单元,用于当所述主发送单元发起建立的所述主用路径发生故障时,通过所述备发送单元发起建立的所述备用路径接收组播源下发的组播流并转发组播流。
7.根据权利要求6所述的路由器,其特征在于,还包括第二处理单元;
第二处理单元,用于当所述主发送单元发起建立的所述主用路径使用正常时,通过所述主用路径接收组播源下发的组播流并转发组播流,丢弃所述备用路径上的组播流。
8.根据权利要求6或7所述的路由器,其特征在于,还包括感知单元;
感知单元,用于通过快速故障检测BFD来感知主用路径发生故障;
第一处理单元,还用于当所述感知单元感知所述主用路径发生故障时,通过所述备发送单元发起建立的所述备用路径接收组播源下发的组播流并转发组播流。
9.一种通信***,其特征在于,包括:
第一路由器,作为宿节点,所述宿节点为直连接收者的节点,所述第一路由器包括计算单元、主发送单元、备发送单元和第一处理单元;
计算单元,用于利用启动单播网际协议快速重路由IP FRR,计算出到达组播源的每条单播路由的主用出接口、备用出接口、主用下一跳和备用下一跳;
主发送单元,用于将计算单元计算出的所述主用出接口作为组播的主用入接口发送协议无关组播加入PIM Join报文给所述主用下一跳以建立主用路径;
备发送单元,用于将计算单元计算出的所述备用出接口作为组播的备用入接口发送PIM Join报文给所述备用下一跳以建立备用路径;
第一处理单元,用于当所述主发送单元发起建立的所述主用路径发生故障时,通过所述备发送单元发起建立的所述备用路径接收组播源下发的组播流并转发组播流;
第二路由器,作为主用下一跳,用于接收第一路由器发送的PIM Join报文,发送PIM Join报文给第四路由器以建立主用路径,在接收到第四路由器发送的组播流后,将组播流转发给第一路由器;
第三路由器,作为备用下一跳,用于接收第一路由器发送的PIM Join报文,发送PIM Join报文给第四路由器以建立备用路径,在接收到第四路由器发送的组播流后,将组播流转发给第一路由器;
第四路由器,用于接收第二路由器发送的PIM Join报文,以及接收第三路由器发送的PIM Join报文,在主用路径和备用路径建立完成后,通过主用路径发送组播流给第二路由器,通过备用路径发送组播流给第三路由器。
CN2009101778349A 2009-09-25 2009-09-25 一种组播快速收敛方法、路由器和通信*** Expired - Fee Related CN101656679B (zh)

Priority Applications (4)

Application Number Priority Date Filing Date Title
CN2009101778349A CN101656679B (zh) 2009-09-25 2009-09-25 一种组播快速收敛方法、路由器和通信***
EP10818393A EP2437444A4 (en) 2009-09-25 2010-09-17 METHOD, ROUTER AND COMMUNICATION SYSTEM FOR FAST MULTICAST CONVERGENCE
PCT/CN2010/077022 WO2011035699A1 (zh) 2009-09-25 2010-09-17 一种组播快速收敛方法、路由器和通信***
US13/339,402 US20120099422A1 (en) 2009-09-25 2011-12-29 Fast convergence method, router, and communication system for multicast

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN2009101778349A CN101656679B (zh) 2009-09-25 2009-09-25 一种组播快速收敛方法、路由器和通信***

Publications (2)

Publication Number Publication Date
CN101656679A CN101656679A (zh) 2010-02-24
CN101656679B true CN101656679B (zh) 2012-04-04

Family

ID=41710776

Family Applications (1)

Application Number Title Priority Date Filing Date
CN2009101778349A Expired - Fee Related CN101656679B (zh) 2009-09-25 2009-09-25 一种组播快速收敛方法、路由器和通信***

Country Status (4)

Country Link
US (1) US20120099422A1 (zh)
EP (1) EP2437444A4 (zh)
CN (1) CN101656679B (zh)
WO (1) WO2011035699A1 (zh)

Families Citing this family (30)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101656679B (zh) * 2009-09-25 2012-04-04 华为技术有限公司 一种组播快速收敛方法、路由器和通信***
CN102244602B (zh) 2010-05-11 2014-12-31 华为技术有限公司 在协议无关组播双重加入下转发数据的方法、装置及***
CN102316016B (zh) * 2010-07-05 2014-12-31 华为技术有限公司 组播流量的转发方法及装置
CN101902403A (zh) * 2010-07-30 2010-12-01 中国联合网络通信集团有限公司 一种增强组播源可靠性的方法及其装置
CN102726000B (zh) * 2011-07-22 2017-06-16 华为技术有限公司 故障通告方法、检测装置、转发装置及***
CN102299847B (zh) * 2011-08-19 2014-06-04 北京星网锐捷网络技术有限公司 组播分发树切换方法、装置、***、源设备和目的设备
CN102315951B (zh) 2011-09-19 2015-05-27 华为技术有限公司 一种组播报文的传输方法、相关设备及***
WO2012149755A1 (zh) * 2011-09-20 2012-11-08 华为技术有限公司 一种转发方法及转发装置
CN102447569B (zh) * 2011-12-29 2015-06-03 中兴通讯股份有限公司 一种点对多点组播业务的保护方法及网络设备
US8948051B2 (en) * 2012-05-30 2015-02-03 Alcatel Lucent System and method for efficient MVPN source redundancy with S-PMSI
CN103259721B (zh) * 2013-04-16 2016-08-17 杭州华三通信技术有限公司 Spbm网络中的报文转发方法及装置
CN104348736A (zh) * 2013-07-31 2015-02-11 北京华为数字技术有限公司 组播负载场景下选路的方法和路由器
CN103490951A (zh) * 2013-09-09 2014-01-01 神州数码网络(北京)有限公司 基于bfd的多跳链路中双向转发检测方法
CN104579945B (zh) * 2013-10-18 2019-07-02 中兴通讯股份有限公司 一种冗余保护方法及装置
CN103795626B (zh) 2014-02-19 2017-07-07 华为技术有限公司 组播快速保护倒换的方法与装置
US9674075B1 (en) * 2014-12-22 2017-06-06 Juniper Networks, Inc. Multicast only fast re-route for PIM ASM mode
CN104901893B (zh) * 2015-06-11 2018-05-11 新华三技术有限公司 组播流量保护方法及装置
WO2016202385A1 (en) * 2015-06-17 2016-12-22 Huawei Technologies Co., Ltd. Method and apparatus for handling data flow in wireless communication networks
CN106470162B (zh) * 2015-08-19 2019-06-25 ***通信集团公司 一种业务报文的组播方法及装置
US10051022B2 (en) * 2016-03-30 2018-08-14 Juniper Networks, Inc. Hot root standby support for multicast
CN107800547A (zh) * 2016-09-07 2018-03-13 华为技术有限公司 一种用于处理组播加入消息的方法及其设备
US10425458B2 (en) 2016-10-14 2019-09-24 Cisco Technology, Inc. Adaptive bit rate streaming with multi-interface reception
US10735248B2 (en) * 2018-02-12 2020-08-04 Futurewei Technologies, Inc. Cloudified N-way routing protection at hyper scale
CN109189549A (zh) * 2018-08-01 2019-01-11 新华三技术有限公司 虚拟机迁移方法及装置
CN109495320B (zh) * 2018-12-24 2021-12-24 新华三技术有限公司 一种数据报文的传输方法和装置
CN111385213B (zh) * 2018-12-29 2021-10-22 华为技术有限公司 一种组播转发表项生成方法及装置
CN112134776B (zh) * 2019-06-25 2022-08-26 华为技术有限公司 生成组播转发表项的方法和接入网关
CN112822097B (zh) * 2019-11-15 2024-06-18 华为技术有限公司 报文转发的方法、第一网络设备以及第一设备组
US11695685B2 (en) * 2020-06-16 2023-07-04 Nokia Solutions And Networks Oy Supporting candidate path selection
CN114363114B (zh) * 2020-09-29 2023-07-07 华为技术有限公司 转发流量的方法及设备

Family Cites Families (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6751747B2 (en) * 2000-05-02 2004-06-15 Nortel Networks Limited System, device, and method for detecting and recovering from failures in a multicast communication system
US20020150094A1 (en) * 2000-10-27 2002-10-17 Matthew Cheng Hierarchical level-based internet protocol multicasting
US6973024B1 (en) * 2001-02-28 2005-12-06 Utstarcom, Inc. Method for modem element switchover using multicast groups
GB2395629B (en) * 2002-11-20 2006-06-21 Motorola Inc Wireless communications systems and methods
JP4516496B2 (ja) * 2005-07-27 2010-08-04 株式会社日立製作所 マルチキャスト配信方法及びシステム、コンテンツサーバ
US20070174483A1 (en) * 2006-01-20 2007-07-26 Raj Alex E Methods and apparatus for implementing protection for multicast services
US8004960B2 (en) * 2006-04-28 2011-08-23 Cisco Technology, Inc. Method and apparatus for forwarding label distribution protocol multicast traffic during fast reroute
JP2008028714A (ja) * 2006-07-21 2008-02-07 Hitachi Ltd ネットワークおよびマルチキャスト転送装置
US8279749B2 (en) * 2006-11-27 2012-10-02 Cisco Technology, Inc. Failure protection for P2MP tunnel head-end node
US7826348B2 (en) * 2007-04-26 2010-11-02 Cisco Technology, Inc. Multicast fast reroute
CN101094175B (zh) * 2007-06-14 2011-06-01 华为技术有限公司 一种组播流量保护方法、装置及***
US7830785B2 (en) * 2008-01-25 2010-11-09 At&T Labs, Inc. System and method for restoration in a multimedia IP network
CN101656679B (zh) * 2009-09-25 2012-04-04 华为技术有限公司 一种组播快速收敛方法、路由器和通信***

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
JP特开2008-28714A 2008.02.07

Also Published As

Publication number Publication date
WO2011035699A1 (zh) 2011-03-31
EP2437444A4 (en) 2012-08-15
EP2437444A1 (en) 2012-04-04
CN101656679A (zh) 2010-02-24
US20120099422A1 (en) 2012-04-26

Similar Documents

Publication Publication Date Title
CN101656679B (zh) 一种组播快速收敛方法、路由器和通信***
US10129075B2 (en) Multicast only fast re-route over remote loop-free alternate backup path
US8218429B2 (en) Method and device for multicast traffic redundancy protection
US7684316B2 (en) Multicast fast reroute for network topologies
US8009671B2 (en) Multicast method and multicast routing method
Kotani et al. A design and implementation of OpenFlow controller handling IP multicast with fast tree switching
CN101094175B (zh) 一种组播流量保护方法、装置及***
EP3340550B1 (en) Service message multicast method and device
Zhang et al. On fundamental issues in IP over WDM multicast
CN102137000B (zh) 一种建立切换组播分发树的方法、装置及***
KR101870475B1 (ko) 링 네트워크 토폴로지를 위한 멀티캐스트 듀얼 조인
KR20150028784A (ko) 다운스트림 통지 패킷들에 의한 pim 고속 리라우팅 방법론의 향상
CN103795626A (zh) 组播快速保护倒换的方法与装置
WO2010111956A1 (zh) 一种组播转发路径收敛的方法和***
KR20150028260A (ko) 계층적, 중복적, 멀티캐스트 라우팅에서의 장애 커버리지 증가
CN101163103A (zh) 一种实现快速重路由的方法
CN104901893A (zh) 组播流量保护方法及装置
CN101247252A (zh) 一种组播快速重路由的方法、装置和***
CN101610200B (zh) 组播路由的切换方法及装置
CN103178976A (zh) 组播树组建及故障恢复方法
CN109005109A (zh) 路由设置方法及组播组网
WO2012136062A1 (zh) 组播路径切换方法及路由器
CN101286925B (zh) 检测是否会出现重复的组播数据包的方法及装置
Gautam et al. Multicast Routing and Data Mining in Wired Networks: A Comprehensive Study
Rosenberg et al. Dynamic Routing Methods

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
CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20120404

Termination date: 20190925

CF01 Termination of patent right due to non-payment of annual fee