金鼎工业资源网
您现在的位置:金鼎工业资源网>> 数据中心 H类电学电器>>正文内容

CN201510523636.9 一种主备切换方法及装置

技术领域

本发明涉及网络通信技术领域,尤其涉及一种主备切换方法及装置。

背景技术

BRAS(BroadbandRemoteAccessServer,宽带接入服务器)多机备份功能保证了关键业务节点在单点故障的情况下,用户业务不被中断。如图1所示,为现有技术中的一种典型的BRAS多机备份组网示意图,其中,该组网中包括:RouterA以及RouterB;RouterA包括与用户终端(如PC(PersonalComputer,个人计算机))连接的接口X1、与核心网路由器(CoreRouter)连接的接口X2以及与AAA(Authentication、Authorization、Accounting,验证、授权和记账)服务器连接的接口X3,各接口(包括接口X1、X2以及X3)分别配置有对应的VRRP(VirtualRouterRedundancyProtocol,虚拟路由器冗余协议)组,RouterA分别通过接口X1、X2和X3进行报文转发。

然而实践发现,现有BRAS多机备份组网中,当RouterA的某接口Down(关闭),如接口X2Down时,若接口X1、X2以及X3所属的VRRP组未能同步实现主备切换,则可能会导致报文丢失的情况发生,例如,当接口X2Down时,假设接口X1和X2所属的VRRP组完成了主备切换,而接口X3未能及时感知X2Down事件的发生,未能同步进行主备切换,则AAA服务器仍会通过接口X3与RouterA进行交互,进而导致报文丢失的情况发生。

因此,如何保证BRAS多机备份组网中发生接口Down时,各接口所属的VRRP组同步实现主备切换成为亟待解决的技术问题。

发明内容

本发明提供一种主备切换方法及装置,以解决现有技术中由于多接口中各接口对应的VRRP组主备切换不同步导致的报文丢失的情况发生的问题。

根据本发明实施例的第一方面,提供一种主备切换方法,包括:

路由器对接口组的状态进行管理,其中,当所述接口组中任意一个接口的状态为Down时,确定所述接口组的状态为Down,当所述接口组中所有接口的状态均为UP时,确定所述接口组的状态为UP;

所述路由器监测所述接口组的状态的变化;

当所述路由器通过所述接口组进行报文转发,且监测到所述接口组的状态由UP变为Down时,针对所述接口组中的每一个接口,降低该接口在该接口所属的VRRP组中的优先级或将该接口的状态修改为Down。

根据本发明实施例的第二方面,提供一种主备切换装置,应用于路由器,包括:

管理单元,用于对接口组的状态进行管理,其中,当所述接口组中任意一个接口的状态为Down时,确定所述接口组的状态为Down,当所述接口组中所有接口的状态均为UP时,确定所述接口组的状态为UP;

监测单元,用于监测所述接口组的状态的变化;

控制单元,用于当所述路由器通过所述接口组进行报文转发,且所述监测单元监测到所述接口组的状态由UP变为Down时,针对所述接口组中的每一个接口,降低该接口在该接口所属的VRRP组中的优先级或将该接口的状态修改为Down。

应用本发明实施例,路由器通过监测接口组的状态,当路由器通过该接口组进行报文转发,且监测到接口组的状态由UP变为Down,即接口组中存在至少一个状态为Down的接口时,针对该接口组中的每一个接口,降低该接口在该接口所属的VRRP组中的优先级或将该接口的状态修改为Down,以实现各接口所属的VRRP组均进行主备切换,有效地避免了由于各接口所属的VRRP组主备切换不同步导致的报文丢失的情况的发生。

附图说明

图1是现有技术中一种典型的BRAS多机备份组网的示意图;

图2是本发明实施例提供的一种主备切换方法的流程示意图;

图3是本发明实施例提供的另一种主备切换方法的流程示意图;

图4是本发明实施例提供的一种接口组对应的状态机的状态迁移示意图;

图5是本发明实施例提供的主备切换装置所在设备的一种硬件结构图;

图6是本发明实施例提供的一种主备切换装置的结构示意图;

图7是本发明实施例提供的另一种主备切换装置的结构示意图。

具体实施方式

为了使本技术领域的人员更好地理解本发明实施例中的技术方案,并使本发明实施例的上述目的、特征和优点能够更加明显易懂,下面结合附图对本发明实施例中技术方案作进一步详细的说明。

参见图2,为本发明实施例提供的一种主备切换方法的流程示意图,如图2所示,该主备切换方法可以包括以下步骤:

步骤201、路由器对接口组的状态进行管理,其中,当接口组中任意一个接口的状态为Down时,确定接口组的状态为Down,当接口组中所有接口的状态为UP时,确定接口组的状态为UP。

该路由器与其它路由器构成BRAS多机备份组网,该路由器维护的该接口组中的各接口分别所属于不同的VRRP组。

在一个例子中,该接口组中各接口可以分别与不同类型的设备相连。

以图1所示的组网举例来说,假设RouterA中接口组包括接口X1、X2和X3,则接口X1可以与用户终端(如PC)连接;接口X2可以与其它路由器(如核心路由器)连接;接口X3可以与服务器(如AAA服务器)连接。步骤202、路由器监测接口组的状态的变化。

考虑到当路由器的某个接口Down时,该路由器的其它接口均需要及时获知该接口Down的消息,以避免当路由器进行报文转发时,由于部分接口所属的VRRP组进行了主备切换,而其它接口所属的VRRP组未进行主备切换导致的报文丢失等问题发生,在本发明实施例中,针对路由器中需要进行状态监测的接口,可以创建对应的接口组,并将各需要进行状态监测的接口加入到该接口组中,进而,通过监测该接口组的状态来确定是否需要进行主备切换,并在需要进行主备切换时,对接口组中各接口所属的VRRP组均进行主备切换,有效地避免了由于主备切换不同步导致的报文丢失的情况的发生。

本发明实施例中,接口组中可以包括至少两个需要进行状态监测的接口。

路由器中可以配置一个Track模块,以在接口组创建之后监测该接口组的状态的变化,而不需要分别对应各接口配置单独的Track模块。

步骤203、当路由器通过该接口组进行报文转发,且监测到接口组的状态由UP变为Down时,针对该接口组中的每一个接口,降低该接口在该接口所属的VRRP组中的优先级或将该接口的状态修改为Down。

本发明实施例中,接口组的状态可以由接口组中包括的各接口的状态确定。例如:

当接口组中包括的所有接口的状态均为UP时,确定该接口组的状态为UP;

当接口组中包括至少一个状态为Down的接口时,确定该接口组的状态为Down;

当接口组中不包括接口时,确定该接口组的状态为Initiated(初始化)。

举例来说,以图1所示的场景为例,可以在RouterA中创建一个接口组,并将接口X1、X2以及X3加入到该接口组中。其中,接口组刚创建,接口X1、X2和X3均未加入接口组时,该接口组的状态为Initiated;当接口X1、X2、和/或X3加入接口组之后,若其状态均为UP,则接口组的状态为UP;若加入接口组中的各接口中任意一个或多个接口的状态为Down,则接口组的状态为Down。例如,当接口X1、X2以及X3均加入接口组之后,若接口X1、X2、或/和X3的状态为Down,则该接口组的状态为Down。

本发明实施例中,当路由器通过上述接口组进行报文转发,即路由器的上述接口组中各接口在各自所属的VRRP组中优先级最高,且监测到接口组的状态由UP变为Down时,则表明该接口中存在至少一个状态为Down的接口,此时,路由器可以认为需要对各接口所属的VRRP组均进行主备切换,以保证业务的正常进行,因而,路由器可以针对接口组中每一个接口,降低该接口在该接口所属的VRRP组中的优先级或将该接口的状态修改为Down,以实现各接口所属的VRRP组的主备切换。

本发明实施例中,路由器降低接口在接口所属的VRRP组中的优先级时,具体的降低幅度可以根据具体应用场景预先设定,且不同接口的优先级需要降低的幅度可以相同也可以不相同。

举例来说,仍以图1所示的场景为例,假设RouterA和RouterB中接口X1和X1’属于同一VRRP组,接口X2和X2’属于同一VRRP组,接口X3和X3’属于同一VRRP组;接口X1和X1’的在VRRP组中的优先级分别为102和100,接口X2和X2’在VRRP组中的优先级分别为100和95,接口X3和X3’在VRRP组中的优先级分别为100和90,则为了实现主备切换,RouterA降低各接口在相应VRRP组中的优先级时,接口X1的优先级的降低幅度需要不低于2,接口X2的优先级的降低幅度需要不低于5,接口X3的优先级的降低幅度需要不低于10。

可见,在图2所描述的方法流程中,路由器通过监测接口组的状态,当路由器通过该接口组进行报文转发,且监测到接口组的状态由UP变为Down,即接口组中存在至少一个状态为Down的接口时,针对该接口组中的每一个接口,降低该接口在该接口所属的VRRP组中的优先级或将该接口的状态修改为Down,以实现各接口所属的VRRP组均进行主备切换,有效地避免了由于各接口所属的VRRP组主备切换不同步导致的报文丢失的情况的发生。

请参见图3,图3为本发明实施例提供的另一种主备切换方法的流程示意图,如图3所示,该主备切换方法可以包括以下步骤:

步骤301、路由器接收接口组创建指令,该接口组创建指令中包括需要加入接口组的接口的标识。

在本发明实施例中,接口组可以在路由器生产时缺省配置在路由器中,也可以在路由器出厂之后由用户(如设备管理员)根据具体场景通过配置文件的方式配置。

作为一种可选的实施方式,在本发明实施例中,用户(如设备管理员)可以通过向路由器下发包括接口组创建指令的配置文件的方式,使路由器创建接口组,其中,该配置文件中包括的接口组创建指令中还可以包括需要加入该接口组的接口的标识。例如,对于图1所示的场景中的RouterA,接口组创建指令中可以包括接口X1、X2以及X3的接口标识。

步骤302、路由器响应该接口组创建指令,创建接口组,并根据该需要加入接口组的接口的标识将对应的接口加入到接口组。

本发明实施例中,路由器接收到接口组创建指令之后,可以响应该接口组创建指令,创建接口组,并根据该接口组创建指令中包括的需要加入接口组的接口的标识将对应的接口加入接口组。

例如,以步骤301中所举示例为例,RouterA接收到接口组创建指令之后,可以响应该接口组创建指令创建接口组,并将接口X1、X2以及X3加入接口组中。

在本发明实施例中,为了使路由器能够准确获知接口组(Link-Group,LG)的状态,可以针对接口组定义一个状态机,如图4所示,该状态机可以包括三个状态:Initiated、LG-UP(简称为UP)以及LG-Down(简称为Down)。其中,该状态机的各状态可以定义如下:

当接口组中不包括接口时,该接口组的状态为Initiated;

当接口组中包括的各接口的状态为UP时,该接口组的状态为UP;

当接口组中包括至少一个状态为Down的接口时,该接口组的状态为Down。

金鼎工业资源网-版权所有
成都运营中心
Tel:028-87023516   Mob(+86) 18980857561 /18190762281
中国 成都 高新区创业路18号
电邮:853136199@qq.com