实现组播负载分担的方法及装置的制作方法

文档序号:7918602阅读:158来源:国知局
专利名称:实现组播负载分担的方法及装置的制作方法
技术领域
本发明涉及通信技术领域,尤其涉及组播技术领域中实现组播负载分担 的方法及装置。
背景技术
IP组播是指在IP网络中将数据包以尽力传送(best-effort)的形式发送到 网络中的某个确定节点子集,这个子集称为组播组(multicast group ) 。 IP组 播的基本思路是,源主机只发送一份数据,这份数据中的目的地址为组播组 地址,组播组中的所有接收者都可以接收到同样的数据拷贝,并且只有组播 组内的主机(目标主机)可以接收该数据,网络中其他主机不能收到。牙希發u才莫式十办i义无关纟且4番(Protocol Independent Multicast-Parse Mode, PIM-SM)和特定源组播(Source-Specific Multicast, SSM)是两种常用的域 内组播模式。对于PIM-SM,其工作过程可以概括为邻居发现、指定路由器 (Designated Router, DR)选举、汇聚点(Rendezvous Point, RP )发现、RP 树(RPT)生成、组播源注册,以及,RPT向最短路径树(Shortest-Path Tree, SPT)切换。对于PIM-SSM,直接通过SPT进行转发,不需要RP。下面着重对DR选举进行介绍。借助握手报文(Hello报文)可以为共享网络(如Ethemet)选举DR,共 享媒介网络上的各路由器相互之间发送携带DR优先级选项的Hello报文,拥 有最高DR优先级的路由器将被选举为本网络中的DR。假如优先级相同或网 络中至少 一 台路由器不支持在Hello报文中携带优先级,则拥有最大IP地址 的路由器被选举为DR。当DR出现故障时,接收Hello报文将会超时,邻居 路由器之间会触发新的DR选举过程。参见图1,为DR选举示意图。假设通过选举,Router_A被选举为组播 源侧的DR,其余与组播源相连的路由器为备用DR (Backup DR, BDR), Router—B被选举为接收端的DR,其余与接收端相连的路由器为BDR。 DR将 作为本网段中组播信息的唯一转发者。无论是和组播源S连接的网络,还是 和接收者连接的网络,只要网络为共享媒介则需要选举DR,接收端DR向 RP发送加入报文(Join报文),组播源侧DR向RP发送注册报文(Register 才艮文)。可见,DR对于PIM-SM网络意义重大,它作为本网^:的唯一凄史据转 发者,主要充当因特网组管理协议(Internet Group Management Protocol Internet, IGMP)查询器的角色。如果路由器接口不支持PIM-SM、 PIM-SSM 的情况,可通过IGMP机制选举出一个查询器,由该查询器负责向此网段转 发数据。
通过上述介绍可知,目前方案是釆用单一 DR作为某网段的唯一转发者, 本申请的发明人在研究过程中发现,在表项较多的情况下,DR负担向RP发 送所有表项的注册报文或加入报文,这对DR的性能要求是一个极大考验, 以图1为例,在组播源侧,仅依赖作为DR的Router—A向RP发送大量的 Register消息,也就是说,目前单一的DR机制对于DR压力过大。

发明内容
本发明实施例提供一种实现组播负载分担的方法及装置,以解决DR或 查询器压力过大的问题。
为此,本发明实施例采用如下技术方案
一种实现组播负载分担的方法,包括确定路由器和组播组集合的对应 关系,所述组播组集合包括至少一个组播组;选取与所述组播组所属的所述 组播组集合对应的路由器作为指定路由器,由所述指定路由器处理该组播组 业务。
一种实现组播负责分担的装置,包括对应关系确定单元,用于确定与 所述装置对应的组播组集合,所述组播组集合包括至少一个组播组;指定路由器执行单元,用于作为所述装置对应的组播组集合的指定路由器处理所述 组、潘组的业务。
可见,本发明实施例针对各组播组,确定与其对应的指定路由器,例如, 对于某些组播组,某个路由器为DR/查询器,对于其余组播组的报文,则是另
一个路由器为DR/查询器,由此,实现了负载分担,减轻了原有单一DR/查询
器的压力。
可见,采用本发明实施例的方案,为接收端和组播源端的路由器提供了
一种基于DR/查询器的负载分段解决方案,在多个备用路由器之间均衡负载, 避免了 DR/查询器负载过重的问题。


图1为现有技术DR选举示意图2为本发明实现组播负载负担的方法流程图3为本发明扩展PIM Hello报文中组地址选项示意图4为本发明中的DR切换报文结构示意图5为本发明实现组播负载负担的方法实施例示意图6为本发明实现组播负载负担的装置结构示意图。
具体实施例方式
参见图2,为本发明实施例提供的实现组播负载负担的方法流程图,该流 程包括
S201:确定各路由器和组播组集合的对应关系,所述组播组集合包括至 少一个组播-纟且;
S202:选举组播组所属集合对应的路由器作为指定路由器,由所述指定 路由器处理该组播组业务。
8其中,可通过静态配置方式或动态配置方式确定各路由器和组播组集合 的对应关系。
下面仍以图l为例,分析现有方案和本发明方案的区别。 在现有方案中,在组播源端虽然有三台路由器,但是对于所有组播组,
Router一A都为DR,其余两台路由器为BDR,只有在Router—A故障等情况下, 才启动BDR为DR,这样对Router—A负载过重。可见,现有技术中的PIM 协议中的DR是接口级的,即与表项无关,无论有多少表项,仅依靠唯一的 DR负责转发某网段的数据或发送注册报文。
而采用本发明实施例后,可通过静态或动态配置的方式,确定各路由器 与组^"组集合的对应关系,例如,目前组#"系统配置的组#"组为{1, 2, 3, 4, 5, 6},那么,就可以配置其中的第一个路由器作为组播组集合U, 2)的DR, 配置第二个路由器作为组播组集合{3, 4, 5}的DR,配置第三个路由器作为 组播组集合{6}的DR,由组播组集合对应的DR处理该组播组集合的组播业 务。可见,为了改变现有方案负载不均衡的状况,本发明实施例对DR进行 负载分担,增加一个表项级DR的概念,即,不存在接口级的DR,而是对组 播组的某些表项是DR,对其余表项不是DR而是BDR,也就是说,在DR和 BDR之间进行负载分担。
上述已提到,可通过静态配置或动态配置方式确定各路由器和组播组集 合的对应关系,其中,静态配置方式比较容易理解,不多作赘述。对于动态 配置方式,主要是通过实时解析的组播协议报文确定各路由器和组播组集合 的对应关系,它的具体过程为:各个路由器互相发送扩展Hello报文,所述扩展Hello报文携带发送 方路由器所服务的组地址;:路由器建立包含组地址和路由器接口地址的映射表;:当接收到携带有组地址的组播协议报文,路由器查找所述映射表并 利用所述组l番协议才艮文中的组地址和所述映射表进^"匹配;:根据匹配结果,确定DR,并由DR负责转发所述组播协议报文。需要说明的是,上述[l]是可选的。在不执行[l]时,可预先设置各路由器 所服务的组地址,例如,默认各路由器为组播组内所有组地址服务。
其中的组播协议报文,优选地,在IPv4中是指IGMP REPORT报文,在 IPv6中是指组播监听者发现协议(Multicast Listener Discovery, MLD )REPORT报文。
下面进一步详细介绍本发明实施例提供的实现组播负载负担的方法。
当收到IGMP REPORT或者组播源的数据,需要向上游发送( G)/( S,G) 加入或者发送注册报文,并可通过以下方式选举DR:
1、 配置路由器服务的组地址范围,缺省情况下各个路由器为所有组服务, 优选地,还可以配置路由器的路由器服务优先级。
2、 扩展现有的Hello报文,扩展Hello报文中新增了一个选项,格式参 见图3,其中,该新增的选项包括类型(Type )、长度(Length )和组地址(Encoded Group Address )字段,其中的Encoded Group Address字段可采用现有PIM协 议中的定义。
3、 路由器向邻居路由器发送扩展PIM Hello报文,该扩展PIM Hello报 文中携带其所服务的组地址。
4、 该路由器还收集邻居路由器发送的扩展PIM Hello报文,并生成一个 <Group, DR〉映射表。
5、 当收到IGMP加入信息(组播协议报文),按照最长匹配原则,通过 IGMP加入信息中的组地址匹配〈Group, DR〉映射表,并通过如下方式选择 DR (表项级DR):
① 如果没有匹配到表项,则使用默认的路由器为DR,例如,直接采用现 有方案中的接口级DR作为DR,或者,通过路由器服务优先级,确定优先级 最高的^各由器作为DR;
② 如果匹配到唯一的匹配表项,则使用此匹配表项中的路由器作为DR;③如果匹配到至少两个匹配表项,则以<组地址、路由器接口地址、路由 器服务优先级、源/RP地址 >中的参数,为各匹配表项中的路由器计算出一 个匹配项值,选择匹配项值最大的路由器为DR。需要说明的是,上述参数中 的"组地址"和"路由器接口地址"是必选的,"路由器服务优先级,,和"源 /RP地址,,为可选的。另外,当多个匹配项值相同时,可通过与现有技术类似
的比较路由器接口地址的方式来确定唯一的DR,对此不多赘述。
由此通过上述步骤,即实现了组播负载负担。与现有方案采用固定的接
口级DR负责某网段的所有报文相比,本发明实施例针对各组播组,动态选 取表项级DR,即,对于某些报文,某个路由器A为DR,对于其余报文,则 可能是路由器B为DR,由此,实现了负载分担,减轻了原有单一DR的压力。
另外,为了增强可靠性,本发明实施例提供的实现组播负载负担方法还 执行以下步骤所述DR在确定组播源端、接收端或RP不可达时,向邻居路由器发 送服务取消报文(DR Cancel/Restore报文);如果仅一个路由器接收到所述服务取消报文,则将该路由器设置为新 的DR;如果至少两个路由器接收到所述服务取消报文,则按照上述③介绍的 几个参数选举出一个路由器作为新的DR。
具体地,对于某个表项对应的DR,如果检测到组播源端、接收端或RP 不可达时,DR给BDR发送DR Cancel/Restore l艮文,BDR收到此DR Cancel/Restore报文后,将收到报文的接口状态变为DR,并向上游发送PIM Join报文,获取数据并在此DR所在组播组的共享网段中转发。
其中,DRCancel/Restore报文结构示意图参见图4,它主要携带组播源端、 接收端或RP的单播地址(Encoded-Source Address ),另外,还包括PIM版本 (PIM version )、广播地址(Num Unicast Address )、校验和(Checksum)和 保留位(Reserved)等字段。其中,Encoded-Source Address字段可采用PIM 协议中定义的格式。
本发明实施例可应用到配置了 PIM-SM/SSM的组播系统中,另外,如果接口不配置PIM-SM/SSM,则由IGMP查询器和非查询器耳又代DR和BDR来完成各功能。
为了对本发明实施例有一个更直观的理解,下面以各种网络场景为例具体介绍本发明实施例的应用。
参见图5,为实施例组播系统示意图。其中,源端网段内与组播服务器Sender通信的路由器包括路由器RTA和RTB,接收端网段内与终端HostA、HostB和HostC通信的包括路由器RTD和RTE。
下面介绍实施例一 PIM-SM DR负载分担
假设在实施例一的图5中,所有接口均配置PIM SM, RTD/RTE和接收者相连的接口配置IGMP, RTB和RTD分别为其所在网段的接口级DR。
场景一源端DR负载分担一
1. 组播服务器发送3个组播数据源,配置RTA为G1服务,RTB为G2、 G3服务。
2. RTA收到这些组的数据后,在intf4上,根据上述介绍的最长匹配原则,选举其中的G1为DR,因此为G1向其对应的RP发送注册报文。
3. 同样,RTB为G2、 G3向其对应的RP发送注册净艮文。下面就场景一举一个更加具体的实例
1)配置RTD的intf2 (IP地址为10.1.1.2 )为225丄0.0/16月l务,RTE的intfl(IP:l也址为10.1丄l )为226.0.0.0/16和225.1.0.0/16月l务,4尤先级不配置。
2 ) RTD和RTE通过扩展HELLO报文交换邻居信息,形成如下〈GROUP,DR〉映射表
<225.1.0.0/16, 10.1.1.2>、 <226.0.0.0/16, 10.1.1.1>、 < 225.1.0.0/16, 10.1.1.1>
3 ) HostA发送IGMP V2 REPORT加入226.0,0.1 , RTD和RTE收到
此才艮文,在各自的〈GROUP,DR〉映射表进行最长匹配查找,有且只有一个匹配项<226.0.0.0/16, 10.1丄1>,则由RTE的intfl (IP地址为10.1.1.1 )向上游
12发送PIMJOIN报文。
4 ) HostB发送IGMP V2 REPORT加入228.0.0.1 , RTD和RTE收到此净艮文,在各自的〈GROUP,DR〉映射表进行最长匹配查找,没有找到匹配项,则由接口 DR RTD的intf2 (IP地址为10.1.1.2 )向上游发送PIM JOIN报文。
5 ) HostC发送IGMP V2 REPORT加入225.0.0.1, RTD和RTE收到此
报文,在各自的〈GROUP,DR〉映射表进行最长匹配查找,找到两个匹配项〈225.1.0.0/16, 10.1.1.2>、 〈225.1.0.0/16, 10.1.1.1>,此时还需要继续按照上述③中介绍的方式计算这两个匹配项的值
Value(225.1.0.1,10.1丄l) = ((1103515245) *((0xe100000)) + (12345UL) ) A (0x0a00000))((0x80000000UL));
Value(225丄0.1,10.1.1.2) = ((1103515245) * (((1103515245) *((0xel000001)) + (12345UL) ) A (0x0a00000)) + (12345UL)) %((0x80000000UL));
如果Value(225.1.0.1,10.1.1.1)大于Value(225.1.0.1,10.1.1.2),则由RTE的intfl (IP地址为10.1.1.1 )向上游发送PIM JOIN报文。
如果Value(225.1.0.1,10.1丄l)等于Value(225.1.0.1,10.1.1.2),则由接口DRRTD的intf2 (IP地址为10.1.1.2)向上游发送PIM JOIN净艮文。
场景二源端DR负载分担二
1. 组播服务器发送3个组播数据源,配置RTA、 RTB为所有组服务。
2. RTA收到这些组的数据后,在intf4上成为其中2个组的DR,因此向其对应的RP发送注册报文。
3. 同样,RTB为剩下的表项向其对应的RP发送注册报文。场景三接收端DR负载分担一
1. HostA、 HostB、 HostC发送IGMP V2REPORT加入不同的组Gl, G2,
13
(((1103515245) *+ (12345UL)) %G3。配置RTD为G1服务,RTE为G2、 G3服务。
2. RTD收到这些IGMPV2 REPORT,成为G1的DR,向其对应的RP发送(、G)加入,获耳又数据并向接收端进行转发。
3. RTE为组G2、 G3向其对应的RP发送( G)加入,获取数据并向接收端进行转发。
场景四接收端DR负载分担二
1. HostA、 HostB、 HostC发送IGMP V2REPORT加入不同的组Gl, G2,G3。配置RTD、 RTE为所有组服务。
2. RTD收到这些IGMPV2 REPORT,成为其中两个组的
DR,向其对应的RP发送( G)加入,获取数据并向接收端进行转发。
3. RTE为剩下的组向其对应的RP发送(、G)加入,获取数据并向接收端进行转发。
下面介绍实施例二 PIM-SSM DR负载分担
假设在实施例二的图5中,所有接口均配置PIM SSM, RTD/RTE和接收者相连的接口配置IGMP, RTD为其所在网段的接口级DR。
对于SSM,直接通过SPT进行转发,不需要RP。
场景一接收端DR负载分担一
1. HostA、 HostB、 HostC发送IGMP V3REPORT加入不同的源组(Sl,Gl),(S1,G2), (S1,G3)。配置RTD为G1服务,RTE为G2、 G3服务。
2. RTD收到这些IGMPV3 REPORT,成为组G1的DR,向其对应的源发送(S,G)加入,获取数据并向接收端进行转发。
3. RTE为组G2、 G3向其对应的源发送(S,G)加入,获取数据并向接收端进行转发。场景二接收端DR负载分担二
1. HostA、 HostB、 HostC发送IGMPV3REPORT加入不同的源组(Sl,Gl),(S1,G2), (S1,G3)。配置RTD、 RTE为所有组服务。
2. RTD收到这些IGMPV3 REPORT,成为其中两个组的
DR,向其对应的源发送(S,G)加入,获取数据并向接收端进行转发。
3. RTE为剩下的组向其对应的源发送(S,G)力口入,获取数据并向接收端进行转发。
下面介绍实施例三IGMP查询器负载分担
假设在实施例三的图5中,RTD/RTE和接收端相连的接口只配置IGMP,其他所有接口均配置PIM-SM/SSM, RTD为其所在网段内的IGMP查询器。
在接口没有配置PIM-SM/SSM的情况下,由共享网段上的路由器选举一个IGMP查询器来负责此网段的数据转发。
场景一查询器负载分担一
1. HostA、 HostB 、 HostC发送IGMP V2/V3 REPORT加入不同的组G1, G2,G3。配置RTD为G1服务,RTE为G2、 G3服务。
2. RTD收到这些IGMPV2/V3 REPORT,成为其中组G1
的IGMP查询器,向其对应的RP发送( G)加入或者向其对应的源发送(S,G)加入,获取数据并向接收端进行转发。
3. 同样,RTE为组G2、 G3向其对应的RP发送( G)加入或者向其对应的源发送(S,G)力。入,获取数据并向4妄收端进行转发。
场景二查询器负载分担二
1. HostA、 HostB 、 HostC发送IGMP V2/V3 REPORT加入不同的组G1 , G2,G3。配置RTD、 RTE为所有组服务。
2. RTD收到这些IGMPV2/V3 REPORT,成为其中两个组的IGMP查询器,向其对应的RP发送。G)加入或者向其对应的源发送(S,G)加入,获取数据并向接收端进行转发。
3.同样,RTE为除RTD服务组之外的组对应的RP发送。,G)加入
或者向其对应的源发送(S,G)加入,获取数据并向接收端进行转发。
需要说明的是,上述实施例仅是以IPV4进行说明,实际上,本发明方案同样可适用于IPV6中,区别仅在与,IPV4中的IGMP功能通过IPV6中的组播监听者发现协议(Multicast Listener Discovery, MLD )实施。
可见,采用本发明实施例的方案,为接收端和组播源端的路由器提供了一种基于DR的负载分段解决方案,在多个备用路由器之间均衡负载,避免DR负载过重。
与上述方法相对应,本发明实施例还提供一种实现组播负载分担的装置,该装置可通过软件、硬件或软硬件结合实现。优选地,所述装置是指PIM-SM中组播源端的DR或BDR,或者,所述装置是指PIM-SM中接收端的DR或BDR,或者,所述装置是指PIM-SSM中接收端的DR或BDR,或者,所述装置是指因特网组管理协议IGMP中接收端的查询器。
参见图6,为该装置结构示意图。该装置包括对应关系确定单元601和指定路由器执行单元602,
其巾
对应关系确定单元601,用于确定与所述装置对应的组播组集合,所述组播组集合包括至少 一个组播组;
指定路由器执行单元602,用于作为所述装置对应的组播组集合的指定路由器处理该组播组的业务。
其中,
所述对应关系确定单元601,通过静态配置确定各路由器和组播组集合的对应关系,或者,通过实时解析的组播协议报文确定各路由器和组播组集合的对应关系。
16在所述对应关系确定单元601通过实时解析的组播协议报文确定各路由
器和组播组集合的对应关系时,所述对应关系确定单元601进一步包括
组播协议报文接收解析子单元6011,用于接收组播协议报文,并解析所
述组播协议报文获取其中的组地址;
映射表匹配子单元6012,用于利用所述组地址和预置的映射表进行匹配,
所述映射表包含组地址和路由器接口地址的对应关系;指定路由器确定子单
元6013,用于根据匹配表项情况确定与组播协议报文所属组播组集合对应的
^各由器为指定^各由器。 其中,
所述指定路由器确定子单元6013,用于当没有匹配表项时,采用默认的 路由器作为指定路由器;当匹配表项仅为一条时,确定该唯一的匹配表项中 的路由器为指定路由器;当匹配表项为两条或更多时,利用各匹配表项中的 组地址和路由器接口地址,确定指定路由器。
优选地,该装置还包括
服务取消报文发送单元603,用于在所述装置作为指定路由器并确定组播 源端、接收端或汇聚点不可达时,向其余路由器发送服务取消报文;
服务取消报文接收单元604,用于接收当前指定路由器发送的服务取消报
文;
指定路由器重选单元605,用于在所述服务取消报文接收单元接收到服务 取消报文时,启动所述装置为指定路由器。
本发明实施例针对各组播组,动态选取表项级DR,即,对于某些组播组, 某个路由器A为DR,对于其余组播组,则另外选择路由器B为DR,由此,实 现了负载分担,减轻了原有某个路由器作为所有组播组的单一DR的压力。
可见,采用本发明实施例的方案,为接收端和组播源端的路由器提供了 一种基于DR的负载分段解决方案,在多个备用路由器之间均衡负载,避免DR 负载过重。
而且,本发明实施例可同时适用于IPV4和IPV6的应用场景。
17本领域普通技术人员可以理解,实现上述实施例的方法的过程可以通过 程序指令相关的硬件来完成,所述的程序可以存储于可读取存储介质中,该 程序在执行时执行上述方法中的对应步骤。所述的存储介质可以如
ROM/RAM、磁碟、光盘等。
以上所述仅是本发明的优选实施方式,应当指出,对于本技术领域的普 通技术人员来说,在不脱离本发明原理的前提下,还可以做出若干改进和润 饰,这些改进和润饰也应视为本发明的保护范围。
权利要求
1、一种实现组播负载分担的方法,其特征在于,包括确定路由器和组播组集合的对应关系,所述组播组集合包括至少一个组播组;选取与所述组播组所属的所述组播组集合对应的路由器作为指定路由器,由所述指定路由器处理所述组播组业务。
2、 根据权利要求l所述方法,其特征在于,所述确定路由器和组播组集 合的对应关系,具体为通过静态配置,确定路由器和组播组集合的对应关系, 或者,通过实时解析的组播协议报文,确定路由器和组播组集合的对应关系。
3、 根据权利要求2所述方法,其特征在于,所述通过实时解析的组播协 议报文,确定路由器和组播组集合的对应关系,具体为接收组播协议报文,所述组播协议报文携带有组地址;利用所述组地址和预置的映射表进行匹配,所述映射表包含组地址和路由器接口地址的对应关系;根据匹配结果确定与所述组播协议报文所属的所述组播组集合对应的路由器为所述指定路由器。
4、 根据权利要求3所述方法,其特征在于,所述利用匹配结果确定与所 述组播协议报文所属的所述组播组集合对应的路由器为所述指定路由器,具 体为若没有匹配表项,采用默认的路由器作为所述指定路由器; 若有一条匹配表项,确定所述匹配表项中的路由器为所述指定路由器; 若有至少两条匹配表项,利用所述匹配表项中的组地址和路由器接口地 址,确定所述指定路由器。
5、 根据权利要求4所述方法,其特征在于,所述若有至少两条匹配表项, 利用所述匹配表项中的组地址和路由器接口地址确定所述指定路由器,具体 为利用匹配表项中的组地址和路由器接口地址计算出匹配项值; 选取匹配项值最大的匹配表项中的路由器作为所述指定路由器。
6、 根据权利要求3所述方法,其特征在于,所述映射表还包括路由器服 务优先级;利用所述匹配表项中的组地址和路由器接口地址,以及,所述路由器服 务优先级,确定所述指定路由器。
7、 根据权利要求3所述方法,其特征在于,还包括各路由器互相发送扩展握手Hdlo报文,所述扩展Hello报文携带发送方 路由器所服务的组地址;述映射表。
8、 根据权利要求l所述方法,其特征在于,还包括 所述指定路由器在确定组播源端、接收端或汇聚点不可达时,向邻居路由器发送服务取消报文;如果仅一个路由器接收到所述服务取消报文,则将该路由器设置为新的 指定路由器;如果至少两个路由器接收到所述服务取消报文,则从所述至少两个路由 器中选取出一个路由器作为新的指定路由器。
9、 根据权利要求l所述方法,其特征在于,所述指定路由器处理所述组 播组业务,具体为所述指定路由器负责转发组播协议报文或者发送组播注 册报文。
10、 根据权利要求1至9任一项所述方法,其特征在于,所述方法是针 对协议无关组播-稀松模式PIM-SM中源端指定路由器进行负载分担、是针对 PIM-SM中接收端指定路由器进行负载分担、是针对协议无关-特定源组播 PIM-SSM中接收端指定路由器进行负载分担,或者,是针对因特网组管理协 议IGMP中接收端查询器进行负载分担。
11、 一种实现组播负责分担的装置,其特征在于,包括 对应关系确定单元,用于确定与所述装置对应的组播组集合,所述组播组集合包括至少 一个组播组;指定路由器执行单元,用于作为所述装置对应的组播组集合的指定路由 器处理所述组播组的业务。
12、 根据权利要求11所述装置,其特征在于,所述对应关系确定单元,通过静态配置确定路由器和组播组集合的对应 关系,或者,通过实时解析的组播协议报文确定路由器和组播组集合的对应 关系。
13、 根据权利要求12所述装置,其特征在于,所述对应关系确定单元通 过实时解析的组播协议报文确定路由器和组播组集合的对应关系,所述对应 关系确定单元进一步包括组播协议报文接收解析子单元,用于接收组播协议报文,并获取所述组 播协议报文中携带的组地址;< 映射表匹配子单元,用于利用所述组地址和预置的映射表进行匹配,所 述映射表包含组地址和路由器接口地址的对应关系;指定路由器确定子单元,用于根据匹配结果确定与所述组播协议报文所 属的所述组播组集合对应的路由器为所述指定路由器。
14、 根据权利要求13所述装置,其特征在于,所述指定路由器确定子单元,若没有匹配表项时,用于采用默认的路由 器作为所述指定路由器;若有一条匹配表项时,用于确定所述匹配表项中的 路由器作为所述指定路由器;若有至少两条匹配表项时,用于利用所述匹配 表项中的组地址和路由器接口地址,确定所述指定路由器。
15、 根据权利要求11所述装置,其特征在于,还包括 服务取消报文发送单元,用于在所述装置作为指定路由器并确定组播源端、接收端或汇聚点不可达时,向邻居路由器发送服务取消报文;服务取消报文接收单元,用于接收当前指定路由器发送的服务取消报文; 指定路由器重选单元,用于在所述服务取消报文接收单元接收到服务取消报文时,启动所述装置为指定路由器。
16、 根据权利要求11至15任一项所述装置,其特征在于, 所述装置是指协议无关组播-稀松模式PIM-SM中组播源端的指定路由器或备用指定路由器;或者,所述装置是指PIM-SM中接收端的指定路由器或备用指定路由器;或者,所述装置是指协议无关-特定源组播PIM-SSM中接收端的指定路由器或备用指定路由器;或者,所述装置是指因特网组管理协议IGMP中接收端的查询器。
全文摘要
本发明公开了一种实现组播负载分担的方法和装置,其中的方法包括确定路由器和组播组集合的对应关系,所述组播组集合包括至少一个组播组;选取组播组所属集合对应的路由器作为指定路由器,由所述指定路由器处理该组播组业务。本发明为接收端和组播源端的路由器提供了一种基于DR的负载分担解决方案,对于各组播组的业务在多个路由器之间均衡负载,避免单一DR负载过重的问题。
文档编号H04L12/56GK101651609SQ200810146259
公开日2010年2月17日 申请日期2008年8月14日 优先权日2008年8月14日
发明者铷 梁, 段少雄, 苏海洋 申请人:华为技术有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1