一种组播链路的切换方法、装置及路由设备与流程

文档序号:12623355阅读:437来源:国知局
一种组播链路的切换方法、装置及路由设备与流程

本发明涉及通信领域,特别涉及一种组播链路的切换方法、装置及路由设备。



背景技术:

组播技术有效解决了单点发送多点接收的问题,实现了网络中点到多点的高效数据传送,能够大量节约网络带宽,降低网络负载,利用网络的组播特性可以方便地提供一些新的增值业务。

随着组播技术在网络中的应用越来越广泛,对于组播技术的要求也越来越高,如对于网络发生故障时组播业务的可靠性保护等方面提出了更高的要求。现在常见的在网络中实现组播保护的方法,主要通过在主备两链路中逐跳部署BFD(Bidirectional Forwarding Detection,双向转发检测)来检测链路down,进而进行链路保护切换。这样的保护机制存在的问题是:有些场景(比如当链路不是直连的时候)BFD检测不到链路down;组播链路中BFD检测的路径双向不一致,可能导致有些路径BFD不通;BFD检测报文也会占用网络带宽,增加网络负担。



技术实现要素:

本发明要解决的技术问题是提供一种组播链路的切换方法、装置及路由设备,解决现有技术中组播业务保护机制存在检测链路不到位、增加网络负担的问题。

为解决上述技术问题,本发明的实施例提供一种组播链路的切换方法,应用于一路由设备,所述切换方法包括:

通过两个入接口,分别接收一上游设备通过主链路和备链路发送的组播流量报文,其中,所述路由设备与所述上游设备分别通过所述主链路和所述备链 路连接;

将接收所述上游设备通过所述主链路发送的组播流量报文的入接口作为主入接口,并将接收所述上游设备通过所述备链路发送的组播流量报文的入接口作为备入接口进行对应存储;

对所述主入接口接收的组播流量报文进行转发,同时对所述备入接口接收的组播流量报文进行丢弃;

定时检测所述主入接口是否接收到所述组播流量报文,若预定时间段内所述主入接口均未接收到所述组播流量报文,则将两个所述入接口与所述主入接口及所述备入接口的对应关系进行切换。

其中,所述定时检测所述主入接口是否接收到所述组播流量报文,若预定时间段内所述主入接口均未接收到所述组播流量报文,则将两个所述入接口与所述主入接口及所述备入接口的对应关系进行切换之后,所述切换方法还包括:

若检测到所述主链路恢复正常,则将两个所述入接口与所述主入接口及所述备入接口的对应关系恢复到切换前的状态。

其中,所述通过两个入接口,分别接收一上游设备通过主链路和备链路发送的组播流量报文之前,所述切换方法还包括:

根据至少一用户发送的第一组播加入报文,生成第二组播加入报文;

将所述第二组播加入报文,分别通过所述主链路和所述备链路发送给所述上游设备,由所述上游设备根据所述第二组播加入报文及与所述上游设备连接的源设备下发的流量数据,生成组播流量报文并发送给所述路由设备。

其中,所述根据至少一用户发送的第一组播加入报文,生成第二组播加入报文,具体包括:

接收至少一用户发送的第一组播加入报文,并根据所述第一组播加入报文生成组播转发表,其中,所述组播转发表包括组播路由表和组播用户表;

根据所述组播转发表,生成第二组播加入报文。

其中,所述定时检测所述主入接口是否接收到所述组播流量报文,若预定时间段内所述主入接口均未接收到所述组播流量报文,则将两个所述入接口与所述主入接口及所述备入接口的对应关系进行切换之后,所述切换方法还包括:

生成一硬件中断事件,将两个所述入接口与所述主入接口及所述备入接口 的对应关系切换的消息通知给所述路由设备的软件单元。

为解决上述技术问题,本发明的实施例还提供一种组播链路的切换装置,应用于一路由设备,所述切换装置包括:

接收模块,用于通过两个入接口,分别接收一上游设备通过主链路和备链路发送的组播流量报文,其中,所述路由设备与所述上游设备分别通过所述主链路和所述备链路连接;

存储模块,用于将接收所述上游设备通过所述主链路发送的组播流量报文的入接口作为主入接口,并将接收所述上游设备通过所述备链路发送的组播流量报文的入接口作为备入接口进行对应存储;

转发模块,用于对所述主入接口接收的组播流量报文进行转发,同时对所述备入接口接收的组播流量报文进行丢弃;

切换模块,用于定时检测所述主入接口是否接收到所述组播流量报文,若预定时间段内所述主入接口均未接收到所述组播流量报文,则将两个所述入接口与所述主入接口及所述备入接口的对应关系进行切换。

其中,所述切换装置还包括:

恢复模块,用于若检测到所述主链路恢复正常,则将两个所述入接口与所述主入接口及所述备入接口的对应关系恢复到切换前的状态。

其中,所述切换装置还包括:

第一生成模块,用于根据至少一用户发送的第一组播加入报文,生成第二组播加入报文;

发送模块,用于将所述第二组播加入报文,分别通过所述主链路和所述备链路发送给所述上游设备,由所述上游设备根据所述第二组播加入报文及与所述上游设备连接的源设备下发的流量数据,生成组播流量报文并发送给所述路由设备。

其中,所述第一生成模块具体包括:

第一生成子单元,用于接收至少一用户发送的第一组播加入报文,并根据所述第一组播加入报文生成组播转发表,其中,所述组播转发表包括组播路由表和组播用户表;

第二生成子单元,用于根据所述组播转发表,生成第二组播加入报文。

其中,所述切换装置还包括:

第二生成模块,用于生成一硬件中断事件,将两个所述入接口与所述主入接口及所述备入接口的对应关系切换的消息通知给所述路由设备的软件单元。

为解决上述技术问题,本发明的实施例还提供一种路由设备,包括:如上所述的组播链路的切换装置。

本发明的上述技术方案的有益效果如下:

本发明实施例的组播链路的切换方法,应用于一路由设备(这里为下游设备),该路由设备通过两个入接口,分别接收上游设备通过主备两条链路发送的组播流量报文;首先将接收上游设备通过主链路发送的组播流量报文的入接口作为主入接口,并将接收上游设备通过备链路发送的组播流量报文的入接口作为备入接口;对于主入接口接收的组播流量报文进行转发,同时对于备入接口接收的组播流量报文进行丢弃;然后定时检测主入接口是否接收到组播流量报文,若预定时间段内均未接收到组播流量报文,表示主链路发生故障,则将两个入接口与主入接口及备入接口的对应关系进行切换,使上游设备通过备链路发送的组播流量报文转发通过,保证组播链路的正常工作,实现了主备链路的快速切换,满足了现有网络中对组播链路高效保护性能的要求;且直接对组播流量进行监控,不需要额外采用检测报文,节省了网络资源;且不存在检测不到的场景,网络安全性高;另外解决了现有BFD等检测技术检测不到位,增加网络负担的问题。

附图说明

图1为本发明组播链路的切换方法流程图;

图2为本发明组播链路的切换方法一具体应用系统的结构示意图;

图3为本发明组播链路的切换方法一具体实施例的流程图;

图4为本发明组播链路的切换装置的结构示意图。

具体实施方式

为使本发明要解决的技术问题、技术方案和优点更加清楚,下面将结合附图及具体实施例进行详细描述。

本发明实施例的组播链路的切换方法,通过在下游设备上对主入接口的组播流量进行监控来监测主链路的状态,当在固定时间内没有收到流量报文则触发设备进行主备入接口的切换。而不需要依赖于BFD等检测手段来监控链路状态,避免了BFD等检测技术存在检测不到的场景,增加网络带宽的问题。

本发明实施例的组播链路的切换方法,具有节省带宽,网络安全性高以及切换速度快等优点。

如图1所示,本发明实施例的组播链路的切换方法,应用于一路由设备,所述切换方法包括:

步骤101,通过两个入接口,分别接收一上游设备通过主链路和备链路发送的组播流量报文,其中,所述路由设备与所述上游设备分别通过所述主链路和所述备链路连接。

这里,主链路用于工作链路,备链路用于保护链路。

步骤102,将接收所述上游设备通过所述主链路发送的组播流量报文的入接口作为主入接口,并将接收所述上游设备通过所述备链路发送的组播流量报文的入接口作为备入接口进行对应存储。

步骤103,对所述主入接口接收的组播流量报文进行转发,同时对所述备入接口接收的组播流量报文进行丢弃。

步骤104,定时检测所述主入接口是否接收到所述组播流量报文,若预定时间段内所述主入接口均未接收到所述组播流量报文,则将两个所述入接口与所述主入接口及所述备入接口的对应关系进行切换。

本发明实施例的组播链路的切换方法,定时检测主入接口是否接收到组播流量报文,若预定时间段内均未接收到组播流量报文,表示主链路发生故障,则将两个入接口进行主备切换,保证组播链路的正常工作。实现了主备链路的快速切换,满足了现有网络中对组播链路高效保护性能的要求。且直接对组播流量进行监控,不需要额外采用检测报文,节省了网络资源。且不存在检测不到的场景,网络安全性高。解决了现有BFD等检测技术检测不到位,增加网络负担的问题。

具体的,上述步骤103中,可通过mrpf(multicast reverse path forwarding,组播反向路径转发)机制,将主入接口的流量转发而备入接口的流量丢弃,保 证只有一份组播流量转发通过。

进一步的,上述步骤104之后,所述切换方法还可以包括:

步骤105,若检测到所述主链路恢复正常,则将两个所述入接口与所述主入接口及所述备入接口的对应关系恢复到切换前的状态。

此时,若主链路恢复正常,则将接收上游设备通过主链路发送的报文的入接口重新作为主入接口,使主链路上的数据转发通过。使装置可快速恢复正常工作状态,提高了实用性。

本发明的具体实施例中,上述步骤101之前,所述切换方法还可以包括:

步骤106,根据至少一用户发送的第一组播加入报文,生成第二组播加入报文;

步骤107,将所述第二组播加入报文,分别通过所述主链路和所述备链路发送给所述上游设备,由所述上游设备根据所述第二组播加入报文及与所述上游设备连接的源设备下发的流量数据,生成组播流量报文并发送给所述路由设备。

此时,上游设备根据下游设备发送的组播加入报文及源设备发送的流量数据,可准确获取下游设备的用户需求的组播流量,以生成组播流量报文并发送给下游设备,保证了数据传输的准确性,且提高了网络安全性。

其中,上述步骤107的步骤具体可以包括:

步骤1071,接收至少一用户发送的第一组播加入报文,并根据所述第一组播加入报文生成组播转发表,其中,所述组播转发表包括组播路由表和组播用户表。

这里,下游设备将发送第一组播加入报文的用户加入到组播用户表中,并为这些组播用户形成相应的出端口封装信息表。

步骤1072,根据所述组播转发表,生成第二组播加入报文。

此时,通过组播转发表可清楚、准确的获取用户及对应的数据信息,保证了数据管理的准确性和高效性。

其中,用户发送给下游设备的第一组播加入报文具体可为IGMP(Internet Group Management Protocol,网络组管理协议)组播加入报文,用户在该报文中指定希望接收具体组播组的组播报文;下游设备发送给上游设备的第二组播 加入报文具体可为PIM(Protocol Independent Multicast,协议无关组播)组播加入报文。

进一步的,上游设备根据下游设备通过主备两条链路发送的PIM组播加入报文和组播源设备发送的组播流量,可形成上游设备上的组播路由表,并将主备两条链路都作为组播用户,向主备两条链路发送流量报文。

本发明的具体实施例中,上述步骤102具体实现时,可首先在下游设备的组播路由表中形成对应主备两条链路的两个入接口,然后将两个入接口与主入接口和备入接口的对应关系存储在该组播路由表中。正常情况下,对应主链路的入接口作为主入接口,对应备链路的入接口作为备入接口;在主链路出现故障时,两个入接口的主备关系进行切换。

其中,为了保证软件上组播路由表和硬件上组播路由表的一致性,上述步骤104之后,所述切换方法还可以包括:

步骤108,生成一硬件中断事件,将两个所述入接口与所述主入接口及所述备入接口的对应关系切换的消息通知给所述路由设备的软件单元。

此时,通过硬件中断的方式可通知软件上该组播路由表中的主备入接口进行切换,从而保证了软件和硬件组播路由表项上的统一。

进一步的,上述步骤104具体实现时,可在下游设备上形成组播路由表之后,在主入接口所在的转发芯片上创建流量检测装置(比如看门狗watch dog等),并设定定时器。在主入接口上收到第一个报文后由转发芯片将流量检测装置使能激活,接下来每收到一个组播组内的报文就将相应的流量检测装置进行更新。若在定时器设定的时间内没有收到任何组播数据报文,即表示主入接口对应的主链路损坏,则转发芯片通过微码自动将硬件组播路由表中的主备入接口通过对调进行切换,使备链路的流量转发通过。同时,上述步骤108可根据流量检测装置通过硬件中断方式,通知软件上该组播路由表中的主备入接口进行切换,从而保证了软件和硬件组播路由表项的一致性。并且通过实验可知,这样全部通过硬件切换能实现50ms的快速切换,有效提高了切换速率,且降低了由于主链路损坏造成的影响,改善了对组播链路的保护性能。

下面对本发明的具体实现实施例举例说明如下:

如图2所示,本发明实施例的组播链路的切换方法,应用于一路由设备(下 游设备),该下游设备与一上游设备通过主链路和备链路连接,该上游设备与一组播源设备连接,该下游设备具有N个组播用户(N为大于或等于1的整数),如图3所示,该切换方法包括如下步骤:

步骤301,接收组播用户1~组播用户N分别发送的IGMP组播加入报文,并根据接收的IGMP组播加入报文形成组播转发表,将这些组播用户加入到该组播转发表中,并为这些组播用户形成相应的出端口封装信息表;

步骤302,根据组播转发表,生成PIM组播加入报文,并分别从主备两条链路向上游设备发送PIM组播加入报文,上游设备根据下游设备发送的PIM组播加入报文和组播源设备发送的组播流量,形成上游设备上的组播路由表,并且上游设备将主备两条链路都作为组播用户;

步骤303,上游设备从主备两条链路发送组播流量报文到下游设备,下游设备在组播路由表中形成两个入接口,并将主链路对应的入接口作为主入接口,备链路对应的入接口作为备入接口进行存储,同时,通过mrpf检查机制,将主入接口接收的组播流量报文正常转发,将备入接口接收的组播流量报文丢弃,保证链路上只有一份有效的流量通过;

步骤304,下游设备形成组播路由表后在主入接口所在的转发芯片上创建看门狗watch dog,并设定定时器,在主入接口收到第一个组播流量报文时由转发芯片将watch dog使能激活;

步骤305,主入接口每收到一个组播流量报文将改watch dog进行喂狗,若定时器设定的时间内没有喂狗,则转发芯片将组播路由表的主备入接口进行切换,同时通过硬件中断向控制面发送消息通知软件进行主备入接口切换,从而保证软件和硬件上的统一;

步骤306,当主链路恢复正常时,将主备入接口重新对应到原来的入接口上。

本发明实施例的组播链路的切换方法,实现了主备链路的快速切换,满足了现有网络中对组播链路高效保护性能的要求。且直接对组播流量进行监控,不需要额外采用检测报文,节省了网络资源。且不存在检测不到的场景,网络安全性高。解决了现有BFD等检测技术检测不到位,增加网络负担的问题。

如图4所示,本发明的实施例还提供了一种组播链路的切换装置,应用于 一路由设备,所述切换装置包括:

接收模块,用于通过两个入接口,分别接收一上游设备通过主链路和备链路发送的组播流量报文,其中,所述路由设备与所述上游设备分别通过所述主链路和所述备链路连接;

存储模块,用于将接收所述上游设备通过所述主链路发送的组播流量报文的入接口作为主入接口,并将接收所述上游设备通过所述备链路发送的组播流量报文的入接口作为备入接口进行对应存储;

转发模块,用于对所述主入接口接收的组播流量报文进行转发,同时对所述备入接口接收的组播流量报文进行丢弃;

切换模块,用于定时检测所述主入接口是否接收到所述组播流量报文,若预定时间段内所述主入接口均未接收到所述组播流量报文,则将两个所述入接口与所述主入接口及所述备入接口的对应关系进行切换。

本发明实施例的组播链路的切换装置,实现了主备链路的快速切换,满足了现有网络中对组播链路高效保护性能的要求。且直接对组播流量进行监控,不需要额外采用检测报文,节省了网络资源。且不存在检测不到的场景,网络安全性高。解决了现有BFD等检测技术检测不到位,增加网络负担的问题。

其中,所述切换装置还可以包括:

恢复模块,用于若检测到所述主链路恢复正常,则将两个所述入接口与所述主入接口及所述备入接口的对应关系恢复到切换前的状态。

进一步的,所述切换装置还可以包括:

第一生成模块,用于根据至少一用户发送的第一组播加入报文,生成第二组播加入报文;

发送模块,用于将所述第二组播加入报文,分别通过所述主链路和所述备链路发送给所述上游设备,由所述上游设备根据所述第二组播加入报文及与所述上游设备连接的源设备下发的流量数据,生成组播流量报文并发送给所述路由设备。

其中,所述第一生成模块具体可以包括:

第一生成子单元,用于接收至少一用户发送的第一组播加入报文,并根据所述第一组播加入报文生成组播转发表,其中,所述组播转发表包括组播路由 表和组播用户表;

第二生成子单元,用于根据所述组播转发表,生成第二组播加入报文。

进一步的,所述切换装置还可以包括:

第二生成模块,用于生成一硬件中断事件,将两个所述入接口与所述主入接口及所述备入接口的对应关系切换的消息通知给所述路由设备的软件单元。

本发明实施例的组播链路的切换装置,实现了主备链路的快速切换,满足了现有网络中对组播链路高效保护性能的要求。且直接对组播流量进行监控,不需要额外采用检测报文,节省了网络资源。且不存在检测不到的场景,网络安全性高。解决了现有BFD等检测技术检测不到位,增加网络负担的问题。

需要说明的是,该组播链路的切换装置是与上述组播链路的切换方法相对应的装置,其中上述方法实施例中所有实现方式均适用于该装置的实施例中,也能达到同样的技术效果。

由于本发明实施例的组播链路的切换装置应用于路由设备,因此,本发明实施例还提供了一种路由设备,包括:如上述实施例中所述的组播链路的切换装置。其中,上述组播链路的切换装置的所述实现实施例均适用于该路由设备的实施例中,也能达到相同的技术效果。

以上所述是本发明的优选实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明所述原理的前提下,还可以作出若干改进和润饰,这些改进和润饰也应视为本发明的保护范围。

当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1