CN104283796B - 一种组播分发树建立方法和装置 - Google Patents
一种组播分发树建立方法和装置 Download PDFInfo
- Publication number
- CN104283796B CN104283796B CN201410570430.7A CN201410570430A CN104283796B CN 104283796 B CN104283796 B CN 104283796B CN 201410570430 A CN201410570430 A CN 201410570430A CN 104283796 B CN104283796 B CN 104283796B
- Authority
- CN
- China
- Prior art keywords
- router
- multicast
- tunnel
- message
- interface
- 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
Landscapes
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本发明提供了一种组播分发树建立方法,该方法包括:路由器接收到组加入报文时,根据组播源地址在单播路由表中查找出接口;当查找到的出接口为非PIM邻居接口,且该出接口未绑定逻辑隧道接口时,该路由器确定上游路由器中到本路由器跳数最少,且支持组播PIM功能的远端路由器;该路由器与所述远端路由器建立隧道,并将接收到的组加入报文进行隧道封装,并通过建立的隧道发送给所述远端路由器,使所述远端路由器进行组播分发树的建立。基于同样的发明构思,本申请还提出一种组播分发树建立装置,在存在不支持组播PIM功能的路由器的网络中,能够实现组播分发树的建立。
Description
技术领域
本发明涉及通信技术领域,特别涉及一种组播分发树建立方法和装置。
背景技术
协议无关组播-指定源组播(Protocol Independent Multicast Source-Specific Multicast,PIM-SSM)是一种指定组播源的组播转发方式,该转发方式基于PIM-稀疏模式(Sparse Mode,SM),组播接收者事先知道组播组地址G所对应的组播源地址S,所以只需建立最短路径树(Shortest Path Tree,SPT),免去PIM-SM的汇集点(RendezvousPoint,RP)选举、RP 注册、共享树(Rendezvous Point Tree,RPT)建立和RPT向SPT切换等工作,在转发原理上简化了不少。但通常需要与互联网组管理协议(Internet GroupManagement Protocol,IGMP)等主机管理协议配合使用,指导组播流量的复制分发。
在PIM-SSM组播管理域中相邻的路由器之间会建立PIM邻居关系,当接收侧路由器收到IGMP通知(Report)报文或PIM加入(Join)报文时,根据组播源地址查询单播路由表,确认到上游PIM邻居的出接口,并发送组播加入消息。上游PIM邻居收到组播加入消息后,会做同样的操作,直到组播源侧路由器收到该组播加入消息,从而完成了接收侧路由器到组播源侧路由器之间组播分发树的建立。
上述实现要求组播分发树路径上的路由器都支持组播功能,若存在不支持组播功能的路由器,则该路由器无法与上下游路由器建立PIM邻居,组加入报文也就不能向上游路由器发送,组播分发树将无法建立。
发明内容
有鉴于此,本申请提供一种组播分发树建立方法和装置,以解决存在不支持组播PIM功能的路由器时,不能建立组播分发树的问题。
为解决上述技术问题,本申请的技术方案是这样实现的:
一种组播分发树建立方法,所述方法包括:
路由器接收到组加入报文时,根据组播源地址在单播路由表中查找出接口;
当查找到的出接口为非PIM邻居接口,且该出接口未绑定逻辑隧道接口时,该路由器确定上游路由器中到本路由器跳数最少,且支持组播PIM功能的远端路由器;
该路由器创建与所述出接口绑定的逻辑隧道接口,并通过所述逻辑隧道接口与所述远端路由器建立隧道;
该路由器将接收到的组加入报文进行隧道封装,并通过建立的隧道发送给所述远端路由器,使所述远端路由器进行组播分发树的建立,并将接收隧道封装的组加入报文的逻辑隧道接口加入组播表项的出接口列表。
一种组播分发树建立装置,所述装置包括:接收单元、处理单元、建立单元和发送单元;
所述接收单元,用于接收组加入报文;
所述处理单元,用于当所述接收单元接收到组加入报文时,根据组播源地址在单播路由表中查找出接口;当查找到的出接口为非协议无关组播PIM 邻居接口,且该出接口未绑定逻辑隧道接口时,确定上游路由器中到本装置跳数最少,且支持组播PIM功能的远端路由器;
所述建立单元,用于创建与所述出接口绑定的逻辑隧道接口,并通过所述逻辑隧道接口与所述远端路由器建立隧道;
所述处理单元,还用于将接收到的组加入报文进行隧道封装;
所述发送单元,用于将所述处理单元进行隧道封装的组加入报文通过建立的隧道发送给所述远端路由器,使所述远端路由器进行组播分发树的建立,并将接收隧道封装的组加入报文的逻辑隧道接口加入组播表项的出接口列表。
由上面的技术方案可知,本申请通过对组播断点间通过隧道进行嫁接,在存在不支持组播PIM功能的路由器的网络中,能够实现组播分发树的建立。
附图说明
图1为本申请实施例中组播分发树建立方法流程示意图;
图2为ICMP报文的头部结构示意图;
图3为本申请实施例中组网示意图;
图4为本申请实施例中应用于上述技术的组播分发树建立装置结构示意图。
具体实施方式
为了使本发明的目的、技术方案及优点更加清楚明白,下面结合附图并据实施例,对本发明的技术方案进行详细说明。
本申请提供的组播分发树建立方法适用于IPv4、IPv6和PIM-SSM等网络中。
参见图1,图1为本申请实施例中组播分发树建立方法流程示意图。具体步骤包括:
步骤101,路由器接收到组加入报文时,根据组播源地址在单播路由表中查找出接口。
本步骤中,该路由器在接收到组加入报文时,根据该组加入报文建立组播表项,并将接收该组加入报文的接口加入到该组播表项的出接口列表。
组加入报文包括IGMP Report报文和PIM Join报文,当该路由器连接点播设备时,接收到的组加入报文为IGMP Report报文,当该路由器连接其它路由器,接收到其它路由器发送的组加入报文为PIM Join报文。
该路由器无论接收到的是IGMP Report报文,还是PIM Join报文,在向上游路由器发送组加入报文时,均发送PIM Join报文,同现有实现,这里不再详细描述。
本步骤中根据组播源地址在单播路由表中查找出接口,查找到的出接口为物理接口。
步骤102,当查找到的出接口为非PIM邻居接口,且该出接口未绑定逻辑隧道接口时,该路由器确定上游路由器中到本路由器跳数最少,且支持组播PIM 功能的远端路由器。
在现有实现时,当查找到的出接口为非PIM邻居接口时,说明上游存在不支持组播PIM功能的路由器,则组加入报文不能继续向上游路由器发送该组加入报文,从而不能完成组播分发树的建立。本申请实施例中为了能够继续发送组加入报文,来完成组播分发树的建立,进行步骤102到步骤103的操作。通过断点嫁接的方式使存在断点(存在不支持组播PIM功能的路由器)的两个支持组播PIM功能的路由器之间能够发送组加入报文。
本步骤中该路由器确定上游路由器中到本路由器跳数最少,且支持组播PIM 功能的远端路由器,具体包括:
该路由器通过该出接口发送TTL为1的探测请求报文;
在接收到携带不支持组播PIM功能标识的探测应答报文时,通过该出接口发送TTL为前一次发送探测请求报文携带的TTL加1的探测请求报文,直到接收到携带支持PIM组播功能标识的探测应答报文,确定该探测应答报文的源IP 地址对应的路由器,为上游路由器中到本路由器跳数最少,且支持组播PIM功能的远端路由器。
在具体实现时,也可以不发送TTL为1的探测请求报文,由于该出接口为非PIM邻居接口,说明上游与本路由器相邻的路由器不支持组播路由功能,因此,可以直接发送TTL为2的探测请求报文。
当查找到的出接口为非PIM邻居接口,且该出接口绑定逻辑隧道接口时,根据该隧道接口对应的隧道相关信息封装该组加入报文,并通过该逻辑隧道接口发送。
步骤103,该路由器创建与所述出接口绑定的逻辑隧道接口,并通过所述逻辑隧道接口与所述远端路由器建立隧道。
该路由器创建的与所述出接口绑定的逻辑隧道接口的IP地址可以为所述出接口的IP地址。
本步骤中该路由器通过所述逻辑隧道接口与所述远端路由器建立隧道,包括:
该路由器通过所述逻辑隧道接口发送隧道建立请求报文,使所述远端路由器创建与接收该隧道建立请求报文的接口绑定的逻辑隧道接口,并向本路由器发送隧道建立应答报文。
其中,所述隧道建立请求报文的目的IP地址为本路由器接收到的携带支持 PIM组播功能标识的探测应答报文的源IP地址;源IP地址为所述逻辑隧道接口的IP地址。
该远端路由器接收到所述隧道建立请求报文时,创建与接收该隧道建立请求报文绑定的逻辑隧道接口,该隧道逻辑接口的IP地址为接收隧道建立请求报文的接口的IP地址,并向所述路由器发送隧道建立应答报文,其中,该隧道建立应答报文的源IP地址为该远端路由器上创建的逻辑隧道接口的IP地址,目的IP 地址为所述路由器上创建的逻辑隧道接口的IP地址。
该路由器接收到远端路由器发送的隧道建立应答报文,完成隧道的建立。
该路由器通过所述逻辑隧道接口与所述远端路由器建立隧道之后,
通过该逻辑隧道接口发送PIM握手(hello)报文给所述远端路由器;该PIM握手报文在发送时,进行隧道封装,隧道封装的源IP地址为该路由器上的创建逻辑隧道接口的IP地址,封装的目的IP地址为所述远端路由器上创建的逻辑隧道接口的IP地址。
所述远端路由器接收到该路由器发送的PIM握手报文时,向该路由器发送PIM握手报文,进行PIM邻居的建立。
该路由器与所述远端路由器通过两端建立的逻辑隧道接口建立PIM邻居, PIM邻居建立完成后,当该逻辑隧道接口成为PIM邻居逻辑接口时,可以使本路由器与所述远端路由器(PIM邻居路由器)之间正常建立组播分发树。
步骤104,该路由器将接收到的组加入报文进行隧道封装,并通过建立的隧道发送给所述远端路由器,使所述远端路由器进行组播分发树的建立,并将接收隧道封装的组加入报文的逻辑隧道接口加入组播表项的出接口列表。
本步骤中,该路由器通过建立的隧道发送给所述远端路由器之后,所述方法进一步包括:
该路由器根据该组加入报文建立组播表项,并将发送该组加入报文的逻辑隧道接口加入该组播表项的入接口列表,用于进行合法性检查。
与该路由器建立隧道的所述远端路由器在通过隧道逻辑接口接收到隧道封装的组加入报文时,进行隧道解封装,并根据该组加入报文建立组播表项,将接收该组加入报文的逻辑隧道接口加入到该组播表项的出接口列表。
所述远端路由器在接收到组播流时,根据组播源地址和组播组组地址在组播表项中查找出接口,当在组播表项中查找到的出接口中存在逻辑隧道接口时,通过该逻辑隧道接口对应的隧道封装该组播流,并通过该逻辑隧道接口发送。
该路由器在接收到所述远端路由器发送的隧道封装的组播报文时,进行隧道解封装,当确定接收所述组播报文的逻辑隧道接口与对应的组播表项的入接口列表中的接口一致时,根据该组播报文的组播源地址和组播组地址在组播表项中查找出接口,并根据查找到的出接口发送;否则,丢弃该组播报文。
本申请具体实现时,探测请求报文、探测应答报文,隧道建立请求报文,以及隧道建立应答报文均可通过扩展ICMP报文实现。参见图2,图2为ICMP 报文的头部结构示意图。图2中标识符字段、校验和字段、序列号字段等同现有实现,不再一一描述,下面详细描述类型字段和代码字段的实现过程。
当实现探测请求报文时,可以将图2中的类型字段置为0x8,代码字段置为10000000;
当实现探测应答报文时,可以将图2中的类型字段置为0x11,并将代码字段置为1000 0000时,表示该探测应答报文中携带支持组播PIM功能的标识;当代码字段置为11000000时,表示该探测应答报文中携带不支持组播 PIM功能的标识。
当实现隧道建立请求报文时,类型字段置为0X8,代码字段置为1100 0000;
当实现隧道建立应答报文时,类型字段置为0X0,代码字段置为1110 0000。
上述各报文的实现仅为本申请实施例中的一种实现方式,本申请的实现并不局限于该种实现方式。
下面结合附图,详细说明组播分发树的建立过程:
参见图3,图3为本申请实施例中组网示意图。图3中路由器3不支持组播PIM功能,其它路由器支持组播PIM功能;路由器1与路由器2之间建立PIM邻居,因此,出接口2为PIM邻居接口;由于路由器3不支持组播PIM功能,路由器2和路由器3不能建立PIM邻居关系,路由器3和路由器4也不能建立PIM邻居关系,出接口4为非PIM邻居接口。假设点播者设备发送的组加入报文中携带的组播源地址为S1,组播组地址为G。
第一步,路由器1接收到点播者设备发送的IGMP Report报文时,根据组播源地址S1在单播路由表中查找,由于路由器1与路由器2建立了PIM 邻居,因此查找到的出接口2为PIM邻居接口,则从该出接口发送PIM Join 报文,并生成组播表项,将接收IGMP Report报文的接口1加入到组播表项的出接口列表,将发送PIM Join报文的接口2加入发到组播表项的入接口列表。
第二步,路由器2接收到路由器1发送的PIM Join报文时,根据组播组地址S1在单播路由表中查找,假设查找到的出接口为出接口4,由于路由器 2与路由器3未建立PIM邻居,因此,查找到的出接口4为非PIM邻居接口,则从出接口4发送PIM探测请求报文,以确定上游路由器中距离本路由器2 跳数最少的路由器。
在具体实现时,先发送TTL为1的探测请求报文,即向下一跳的上游路由器(路由器3)发送PIM探测报文。
由于路由器2和路由器3之间未建立PIM邻居,因此,路由器3一定是不支持组播PIM功能的,路由器3发送的探测应答报文一定是携带不支持组播PIM功能的标识。
因此,具体实现时,也可以直接发送TTL为2的探测报文,即向上游路由器中距离路由器2有2跳的路由器4发送探测请求报文;由于路由器4支持组播PIM功能,路由器4在发送的探测应答报文中携带支持组播PIM功能标识。
路由器2接收到路由器4发送的探测应答报文时,获知路由器4支持组播PIM功能,从而确定上游路由器中距离本路由器2跳数最少的路由器为路由器4。
路由器2在接收到PIM Join报文时,确定是否已建立对应的组播表项 (S1,G),如果是,直接将接收该PIM Join报文的入接口3加入到建立的组播表项的出接口列表中;否则,建立组播表项(S1,G),再将接收该PIM Join报文的入接口3加入到建立的组播表项的出接口列表中。
第三步,路由器2创建一个与查找到的出接口4绑定的逻辑隧道接口A,并通过逻辑隧道接口A向路由器4发送隧道建立请求报文。该隧道建立请求的源IP地址为出接口4的IP地址,目的IP地址为路由器4发送PIM探测应答报文的源IP地址,即路由器4发送PIM探测应答报文的接口7的IP地址。
本步骤中路由器2在发送隧道建立请求报文时,开启一个定时器,在定时器定时到时时,刷新定时器,并再次发送隧道建立请求报文,以保证隧道建立请求报文的可靠传输。
由于发送的隧道建立请求报文的目的IP地址为路由器4的接口7的IP 地址,因此,该隧道建立请求报文按单播方式转发,会首先到达路由器3。
第四步,路由器3接收到该隧道建立请求报文时,根据单播路由表将该隧道建立请求报文转发给路由器4。
第五步,路由器4接收到该隧道建立请求报文时,创建与接收隧道建立请求报文的接口7绑定的逻辑隧道接口B,并向路由器2发送隧道建立应答报文。该隧道建立应答报文的源IP地址为接口7的IP地址,即逻辑隧道接口B的IP地址,目的IP地址为接口4的IP地址,即逻辑隧道接口A的IP 地址。
路由器4发送的隧道建立应答报文的目的IP地址为路由器2的接口4 的IP地址,因此,该隧道建立请求报文按单播方式转发,会首先到达路由器 3。
第六步,路由器3接收到隧道建立应答报文时,根据单播路由表转发给路由器2。
第七步,路由器2接收到该隧道建立应答报文时,完成隧道的建立。
第八步,路由器2通过建立的隧道向路由器4发送隧道封装的PIM握手报文,与路由器4通过逻辑隧道接口建立PIM邻居。
第九步,路由器4通过逻辑隧道接口接收到隧道封装的PIM握手报文时,向路由器2发送隧道封装的PIM握手报文,以建立PIM邻居。
第十步,路由器2通过逻辑隧道接口A接收到路由器发送的PIM握手报文后,将接收到的PIM Join报文进行隧道封装,通过建立的隧道发送给路由器4。
路由器2将逻辑隧道接口A加入到建立的组播表项(S1,G)的入接口列表中。如果该组播表项已在本地建立,则直接将逻辑隧道接口A加入到入接口列表中即可。
第十一步,路由器3接收到隧道封装的PIM Join报文时,根据路由单播表项转发给路由器4。
第十二步,路由器4接收到隧道封装的PIM Join报文时,进行隧道解封装,并建立组播表项(S1,G),并将接收PIM Join报文的逻辑隧道接口B 加入到组播表项的出接口中。
下面详细描述组播源设备发送组播流(S1,G)的过程:
路由器4接收到组播源设备发送的组播流时,根据组播源地址和组播组地址在组播表项中查找,若查找到的出接口中有逻辑隧道接口(如逻辑隧道接口B),则将该组播流按该逻辑隧道接口B对应的隧道进行隧道封装,并通过逻辑隧道接口B发送到远端隧道接口。
路由器 3接收到隧道封装的组播流时,确定不是通过本地的逻辑隧道接口接收到的,则查找单播路由表项,根据查找到的出接口5转发给路由器2。
路由器2通过逻辑隧道接口A接收到该隧道封装的组播流时,进行解封装,根据对应该组播流的入接口列表确定该组播流为合法组播流,则根据组播转发表项进行组播流的复制分发,假设只有出接口3,则直接通过出接口3 发送给路由器1,并由路由器1转发给点播者设备。
基于同样的发明构思,本申请还提出一种组播分发树建立装置。参见图 4,图4为本申请实施例中应用于上述技术的组播分发树建立装置结构示意图。该装置包括:接收单元401、处理单元402、建立单元403和发送单元 404;
接收单元401,用于接收组加入报文;
处理单元402,用于当接收单元401接收到组加入报文时,根据组播源地址在单播路由表中查找出接口;当查找到的出接口为非协议无关组播PIM 邻居接口,且该出接口未绑定逻辑隧道接口时,确定上游路由器中到本装置跳数最少,且支持组播PIM功能的远端路由器;
建立单元403,用于创建与所述出接口绑定的逻辑隧道接口,并通过所述逻辑隧道接口与所述远端路由器建立隧道;
处理单元402,还用于将接收到的组加入报文进行隧道封装;
发送单元404,用于将处理单元402进行隧道封装的组加入报文通过建立的隧道发送给所述远端路由器,使所述远端路由器进行组播分发树的建立,并将接收隧道封装的组加入报文的逻辑隧道接口加入组播表项的出接口列表。
较佳地,
接收单元401,进一步用于接收所述远端路由器发送的隧道封装的组播报文;
处理单元402,进一步用于发送单元404将隧道封装的组加入报文通过建立的隧道发送给所述远端路由器之后,根据该组加入报文建立组播表项,并将发送该组加入报文的逻辑隧道接口加入该组播表项的入接口列表;当接收单元401接收到所述远端路由器发送的隧道封装的组播报文时,进行隧道解封装,当确定组播表项的入接口列表中存在与接收所述组播报文的逻辑隧道接口相同的接口时,根据该组播报文的组播源地址和组播组地址在组播表项中查找出接口,并根据查找到的出接口发送;否则,丢弃该组播报文。
较佳地,
处理单元402,具体用于确定上游路由器中到本装置跳数最少,且支持组播PIM功能的远端路由器时,通过该出接口发送类型长度值TTL为1的探测请求报文;在接收到携带不支持组播PIM功能标识的探测应答报文时,通过该出接口发送TTL为前一次发送探测请求报文携带的TTL加1的探测请求报文,直到接收到携带支持PIM组播功能标识的探测应答报文,确定该探测应答报文的源因特网协议IP地址对应的路由器,为上游路由器中到本装置跳数最少,且支持组播PIM功能的远端路由器。
较佳地,
建立单元403,具体用于通过所述逻辑隧道接口与所述远端路由器建立隧道时,通过所述逻辑隧道接口发送隧道建立请求报文,使所述远端路由器创建与接收该隧道建立请求报文的接口绑定的逻辑隧道接口,并向本装置发送隧道建立应答报文;其中,所述隧道建立请求报文的目的IP地址为本装置接收到的携带支持PIM组播功能标识的探测应答报文的源IP地址。
较佳地,
发送单元404,进一步用于在建立单元403通过所述逻辑隧道接口与所述远端路由器建立隧道之后,通过该逻辑隧道接口发送PIM握手报文给所述远端路由器,使所述远端路由器向本装置发送PIM握手报文,进行PIM邻居建立。
上述实施例的单元可以集成于一体,也可以分离部署;可以合并为一个单元,也可以进一步拆分成多个子单元。
综上所述,本申请通过对组播断点间通过隧道进行嫁接,在存在不支持组播PIM功能的路由器的网络中,能够建立组播分发树,从而实现组播流的分发。
以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本发明保护的范围之内。
Claims (10)
1.一种组播分发树建立方法,其特征在于,所述方法包括:
路由器接收到组加入报文时,根据组播源地址在单播路由表中查找出接口;
当查找到的出接口为非协议无关组播PIM邻居接口,且该出接口未绑定逻辑隧道接口时,该路由器确定上游路由器中到本路由器跳数最少,且支持组播PIM功能的远端路由器;
该路由器创建与所述出接口绑定的逻辑隧道接口,并通过所述逻辑隧道接口与所述远端路由器建立隧道;
该路由器将接收到的组加入报文进行隧道封装,并通过建立的隧道发送给所述远端路由器,使所述远端路由器进行组播分发树的建立,并将接收隧道封装的组加入报文的逻辑隧道接口加入组播表项的出接口列表。
2.根据权利要求1所述的方法,其特征在于,所述通过建立的隧道发送给所述远端路由器之后,所述方法进一步包括:
根据该组加入报文建立组播表项,并将发送该组加入报文的逻辑隧道接口加入该组播表项的入接口列表;
在接收到所述远端路由器发送的隧道封装的组播报文时,进行隧道解封装,当确定组播表项的入接口列表中存在与接收所述组播报文的逻辑隧道接口相同的接口时,根据该组播报文的组播源地址和组播组地址在组播表项中查找出接口,并根据查找到的出接口发送;否则,丢弃该组播报文。
3.根据权利要求1或2所述的方法,其特征在于,所述该路由器确定上游路由器中到本路由器跳数最少,且支持组播PIM功能的远端路由器,包括:
该路由器通过该出接口发送类型长度值TTL为1的探测请求报文;
在接收到携带不支持组播PIM功能标识的探测应答报文时,通过该出接口发送TTL为前一次发送探测请求报文携带的TTL加1的探测请求报文,直到接收到携带支持PIM组播功能标识的探测应答报文,确定该探测应答报文的源因特网协议IP地址对应的路由器,为上游路由器中到本路由器跳数最少,且支持组播PIM功能的远端路由器。
4.根据权利要求1或2所述的方法,其特征在于,所述通过所述逻辑隧道接口与所述远端路由器建立隧道,包括:
通过所述逻辑隧道接口发送隧道建立请求报文,使所述远端路由器创建与接收该隧道建立请求报文的接口绑定的逻辑隧道接口,并向本路由器发送隧道建立应答报文;其中,所述隧道建立请求报文的目的IP地址为本路由器接收到的携带支持PIM组播功能标识的探测应答报文的源IP地址。
5.根据权利要求1或2所述的方法,其特征在于,所述通过所述逻辑隧道接口与所述远端路由器建立隧道之后,方法进一步包括:
通过该逻辑隧道接口发送PIM握手报文给所述远端路由器,使所述远端路由器向本路由器发送PIM握手报文,进行PIM邻居建立。
6.一种组播分发树建立装置,其特征在于,所述装置包括:接收单元、处理单元、建立单元和发送单元;
所述接收单元,用于接收组加入报文;
所述处理单元,用于当所述接收单元接收到组加入报文时,根据组播源地址在单播路由表中查找出接口;当查找到的出接口为非协议无关组播PIM邻居接口,且该出接口未绑定逻辑隧道接口时,确定上游路由器中到本装置跳数最少,且支持组播PIM功能的远端路由器;
所述建立单元,用于创建与所述出接口绑定的逻辑隧道接口,并通过所述逻辑隧道接口与所述远端路由器建立隧道;
所述处理单元,还用于将接收到的组加入报文进行隧道封装;
所述发送单元,用于将所述处理单元进行隧道封装的组加入报文通过建立的隧道发送给所述远端路由器,使所述远端路由器进行组播分发树的建立,并将接收隧道封装的组加入报文的逻辑隧道接口加入组播表项的出接口列表。
7.根据权利要求6所述的装置,其特征在于,
所述接收单元,进一步用于接收所述远端路由器发送的隧道封装的组播报文;
所述处理单元,进一步用于所述发送单元将隧道封装的组加入报文通过建立的隧道发送给所述远端路由器之后,根据该组加入报文建立组播表项,并将发送该组加入报文的逻辑隧道接口加入该组播表项的入接口列表;当所述接收单元接收到所述远端路由器发送的隧道封装的组播报文时,进行隧道解封装,当确定组播表项的入接口列表中存在与接收所述组播报文的逻辑隧道接口相同的接口时,根据该组播报文的组播源地址和组播组地址在组播表项中查找出接口,并根据查找到的出接口发送;否则,丢弃该组播报文。
8.根据权利要求6或7所述的装置,其特征在于,
所述处理单元,具体用于确定上游路由器中到本装置跳数最少,且支持组播PIM功能的远端路由器时,通过该出接口发送类型长度值TTL为1的探测请求报文;在接收到携带不支持组播PIM功能标识的探测应答报文时,通过该出接口发送TTL为前一次发送探测请求报文携带的TTL加1的探测请求报文,直到接收到携带支持PIM组播功能标识的探测应答报文,确定该探测应答报文的源因特网协议IP地址对应的路由器,为上游路由器中到本装置跳数最少,且支持组播PIM功能的远端路由器。
9.根据权利要求6或7所述的装置,其特征在于,
所述建立单元,具体用于通过所述逻辑隧道接口与所述远端路由器建立隧道时,通过所述逻辑隧道接口发送隧道建立请求报文,使所述远端路由器创建与接收该隧道建立请求报文的接口绑定的逻辑隧道接口,并向本装置发送隧道建立应答报文;其中,所述隧道建立请求报文的目的IP地址为本装置接收到的携带支持PIM组播功能标识的探测应答报文的源IP地址。
10.根据权利要求6或7所述的装置,其特征在于,
所述发送单元,进一步用于在所述建立单元通过所述逻辑隧道接口与所述远端路由器建立隧道之后,通过该逻辑隧道接口发送PIM握手报文给所述远端路由器,使所述远端路由器向本装置发送PIM握手报文,进行PIM邻居建立。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201410570430.7A CN104283796B (zh) | 2014-10-23 | 2014-10-23 | 一种组播分发树建立方法和装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201410570430.7A CN104283796B (zh) | 2014-10-23 | 2014-10-23 | 一种组播分发树建立方法和装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN104283796A CN104283796A (zh) | 2015-01-14 |
CN104283796B true CN104283796B (zh) | 2018-02-09 |
Family
ID=52258293
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201410570430.7A Active CN104283796B (zh) | 2014-10-23 | 2014-10-23 | 一种组播分发树建立方法和装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN104283796B (zh) |
Families Citing this family (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109729009B (zh) | 2017-10-31 | 2022-08-26 | 华为技术有限公司 | 用于实现组播业务的方法和装置 |
CN111181855B (zh) * | 2018-11-13 | 2021-06-04 | 北京华为数字技术有限公司 | 一种组播的方法及路由设备 |
CN114844819A (zh) * | 2022-04-27 | 2022-08-02 | 中国电信股份有限公司 | 报文发送方法、报文发送装置、产品、介质及设备 |
Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1988507A (zh) * | 2006-12-14 | 2007-06-27 | 华为技术有限公司 | 转发组播数据的方法、***及路由器 |
CN101150423A (zh) * | 2007-10-31 | 2008-03-26 | 华为技术有限公司 | 一种建立pim邻居、组播加入的方法、组播网络及路由器 |
CN101515859A (zh) * | 2009-04-02 | 2009-08-26 | 杭州华三通信技术有限公司 | 一种因特网协议安全隧道传输组播的方法及设备 |
CN101599841A (zh) * | 2008-06-03 | 2009-12-09 | 华为技术有限公司 | 实现组播的方法、路由器及*** |
US8619774B2 (en) * | 2004-10-26 | 2013-12-31 | Cisco Technology, Inc. | Method and apparatus for providing multicast messages within a virtual private network across a data communication network |
CN103973459A (zh) * | 2013-01-24 | 2014-08-06 | 中兴通讯股份有限公司 | IPv6组播孤岛间的组播报文的传输方法及装置 |
EP2784994A1 (en) * | 2013-03-28 | 2014-10-01 | British Telecommunications public limited company | Multicast routing system and method |
CN104092554A (zh) * | 2014-07-31 | 2014-10-08 | 杭州华三通信技术有限公司 | 组播分发树建立方法及装置 |
-
2014
- 2014-10-23 CN CN201410570430.7A patent/CN104283796B/zh active Active
Patent Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8619774B2 (en) * | 2004-10-26 | 2013-12-31 | Cisco Technology, Inc. | Method and apparatus for providing multicast messages within a virtual private network across a data communication network |
CN1988507A (zh) * | 2006-12-14 | 2007-06-27 | 华为技术有限公司 | 转发组播数据的方法、***及路由器 |
CN101150423A (zh) * | 2007-10-31 | 2008-03-26 | 华为技术有限公司 | 一种建立pim邻居、组播加入的方法、组播网络及路由器 |
CN101599841A (zh) * | 2008-06-03 | 2009-12-09 | 华为技术有限公司 | 实现组播的方法、路由器及*** |
CN101515859A (zh) * | 2009-04-02 | 2009-08-26 | 杭州华三通信技术有限公司 | 一种因特网协议安全隧道传输组播的方法及设备 |
CN103973459A (zh) * | 2013-01-24 | 2014-08-06 | 中兴通讯股份有限公司 | IPv6组播孤岛间的组播报文的传输方法及装置 |
EP2784994A1 (en) * | 2013-03-28 | 2014-10-01 | British Telecommunications public limited company | Multicast routing system and method |
CN104092554A (zh) * | 2014-07-31 | 2014-10-08 | 杭州华三通信技术有限公司 | 组播分发树建立方法及装置 |
Also Published As
Publication number | Publication date |
---|---|
CN104283796A (zh) | 2015-01-14 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN100456740C (zh) | 二层交换器 | |
EP1737164A1 (en) | A method for realizing multicasting in a virtual private network using a virtual router | |
JP3792940B2 (ja) | パケットのマルチキャスト配送システム | |
CN103916905A (zh) | 组播源的注册、组播路径的建立方法及装置 | |
CN101442564B (zh) | 组播数据转发的方法和nat设备 | |
CN105814838B (zh) | 一种软件定义网络的多播方法、装置及*** | |
CN102820977B (zh) | 组播方法、装置及网络设备 | |
CN102148745B (zh) | 提高虚拟专用局域网业务网络转发效率的方法和*** | |
CN106470162B (zh) | 一种业务报文的组播方法及装置 | |
CN104022936B (zh) | 一种隧道建立方法和装置 | |
CN101247210B (zh) | 一种基于组播源发现协议实现组播转发树的方法 | |
WO2008071111A1 (fr) | Procédé, système et routeur pour le réacheminement de données multidiffusion | |
CN103973459B (zh) | IPv6组播孤岛间的组播报文的传输方法及装置 | |
CN104901893B (zh) | 组播流量保护方法及装置 | |
CN104092554B (zh) | 组播分发树建立方法及装置 | |
CN104539545B (zh) | Trill网络中的组播报文转发方法和设备 | |
CN104283796B (zh) | 一种组播分发树建立方法和装置 | |
CN109981308A (zh) | 报文传输方法及装置 | |
CN105743797B (zh) | 基于接口绑定的组播vpn隧道建立方法 | |
CN104052672B (zh) | 一种基于lisp的组播实现方法和设备 | |
CN106357541A (zh) | 一种信息传递方法和装置 | |
CN110999230B (zh) | 传输组播报文的方法、网络设备和*** | |
CN103401788B (zh) | 一种spt建立方法和设备 | |
CN106059962B (zh) | 一种spbm网络中组播报文的转发方法和装置 | |
CN101197752A (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 | ||
CB02 | Change of applicant information | ||
CB02 | Change of applicant information |
Address after: 310052 Binjiang District Changhe Road, Zhejiang, China, No. 466, No. Applicant after: Xinhua three Technology Co., Ltd. Address before: 310052 Binjiang District Changhe Road, Zhejiang, China, No. 466, No. Applicant before: Huasan Communication Technology Co., Ltd. |
|
GR01 | Patent grant | ||
GR01 | Patent grant |