一种HDLC捆绑链路的工作接口的选择方法和装置与流程

文档序号:11995571阅读:276来源:国知局
一种HDLC捆绑链路的工作接口的选择方法和装置与流程
本申请涉及通信技术领域,特别涉及一种HDLC捆绑链路的工作接口的选择方法和装置。

背景技术:
目前,城域网之间的网络通信,主要使用的是WAN链路的数据通信,例如使用PPP、HDLC、ATM等封装方式。但是,随着城域网之间数据通信流量成倍增加,链路捆绑技术营运而生。链路捆绑技术是指将多个封装相同链路层协议的接口捆绑起来,形成一条逻辑上的数据链路,其好处在于:负载分担:流量可以在捆绑口的多个成员接口之间分担。增加带宽:链路捆绑口的带宽是所有可用成员接口带宽的总和。提高可靠性:当某个成员接口出现故障时,流量会自动切换到其他可用的成员接口上,从而提高整个捆绑链路的连接可靠性。参见图1,图1是现有技术捆绑链路示意图,如图2所示,路由器A和路由器B之间存在3条链路,路由器A采用链路捆绑技术将连接路由器B的接口PA1、PA2、PA3加入到本地的链路捆绑口,路由器B采用链路捆绑技术将连接路由器A的接口PB1、PB2、PB3加入到本地的链路捆绑口,从而将路由器A和路由器B之间的多条链路捆绑起来,形成一条逻辑链路。在基于高级数据链路控制(HDLC)的链路捆绑技术中,捆绑链路的两端设备各自根据本端的用户配置信息(链路捆绑口配置信息和各成员接口的配置信息)来选择工作接口,流量只能从工作接口进出。目前,一般根据带宽,优先级,接口索引大小,最小工作个数,最大工作个数来决定本端的工作接口,工作原则为依次按照如下顺序:优先选择带宽最大的、优先级最大的、接口索引最大的接口作为工作接口,其中最终选出的工作接口数则由预先配置的最小工作个数,最大工作个数决定。捆绑链路的两端设备各自根据本端的用户配置信息来工作接口会出现以下问题:当两端设备的用户配置信息不一致时,工作的接口可能不一致,从而造成链路是UP的,但是无法进行流量转发,流量中断。以图1为例,假设接口PA1、接口PA2、接口PA3的带宽依次递减,接口PB1、接口PB2、PB3的带宽依次递增,且两端均只允许选择一个工作接口,则根据优选带宽最大的接口的原则,在路由器A中接口PA1被选中,在路由器B中接口PB3被选中,虽然接口PA1连接的链路和接口PB3连接的链路都是连通状态,却无法进行流量转发,路由器A和路由器B中间的流量中断。

技术实现要素:
有鉴于此,本发明的目的在于提供一种HDLC捆绑链路的工作接口的选择方法,该方法能够保证捆绑链路两侧设备的工作接口一致。为实现上述目的,本发明提供了如下技术方案:一种HDLC捆绑链路的工作接口的选择方法,应用于HDLC捆绑链路的一端设备,包括:本设备连接对端设备的链路捆绑口中成员接口的链路层UP时,通过该成员接口向对端设备发送第一HDLC保活报文并接收对端设备发送的第一HDLC保活报文;所述第一HDLC保活报文携带发送者的标识信息;根据本设备的标识信息和对端设备的标识信息在本设备和对端设备之间选举Master;如果本设备被选举为Master,则根据本设备的链路捆绑口中链路层UP的各成员接口关联的配置信息选择工作接口,并通过各成员接口向对端设备发送携带本成员接口关联的配置信息的第二HDLC保活报文,以用于对端设备的工作接口选择;如果本设备未被选举为Master,则在本设备的链路捆绑口中链路层UP的各成员接口接收对端设备发来的携带对端接口关联的配置信息的第二HDLC保活报文,根据从链路层UP的各成员接口接收到的第二HDLC保活报文中携带的对端接口关联的配置信息进行本设备的工作接口选择;其中,接口关联的配置信息包括:接口的配置信息以及接口所在链路捆绑口的配置信息。一种HDLC捆绑链路的工作接口的选择装置,应用于HDLC捆绑链路的一端设备,包括:收发单元、选举单元、接口选择单元;所述收发单元,用于本设备连接对端设备的链路捆绑口中成员接口的链路层UP后,通过该成员接口向对端设备发送第一HDLC保活报文并接收对端设备发送的第一HDLC保活报文,所述第一HDLC保活报文携带发送者的标识信息;如果本设备被选举为Master,则通过链路层UP的各成员接口向对端设备发送携带该成员接口关联的配置信息的第二HDLC保活报文,以用于对端设备的工作接口选择;如果本设备未被选举为Master,则在链路层UP的各成员接口接收对端设备发来的携带对端接口关联的配置信息的第二HDLC保活报文;所述选举单元,用于收发单元在本设备的链路捆绑口中链路层UP的成员接口接收对端设备发来的携带对端设备标识信息的第一HDLC保活报文时,根据本设备的标识信息和对端设备的标识信息在本设备和对端设备之间选举Master;所述接口选择单元,用于本设备的链路捆绑口中成员接口的链路层UP后,如果本设备被选举为Master,则根据本设备的链路捆绑口中链路层UP的各成员接口关联的配置信息选择工作接口;用于本设备的链路捆绑口中成员接口的链路层UP后,如果本设备未被选举为Master,且收发单元在本设备的链路捆绑口中链路层UP的各成员接口接收到对端设备发来的携带对端接口关联的配置信息的第二HDLC保活报文,则根据从链路层UP的各成员接口接收到的第二HDLC保活报文中携带的对端接口关联的配置信息进行本设备的工作接口选择;其中,接口关联的配置信息包括:接口的配置信息以及接口所在链路捆绑口的配置信息。综上所述,本发明通过利用HDLC保活报文,将一端设备的捆绑口中各成员端口关联的配置信息发送到另一端设备,捆绑链路的两端设备均按照该一端设备的捆绑口中各成员端口关联的配置信息进行工作接口选择,因此两端设备最终选出的工作接口是一致的。附图说明图1是现有技术捆绑链路示意图;图2是本申请实施例HDLC捆绑链路的工作接口的选择方法流程图;图3是本申请实施例HDLC捆绑链路的工作接口的选择装置的结构示意图。具体实施方式为使本申请的目的、技术方案及优点更加清楚明白,以下参照附图对本申请实施例作进一步地详细说明。本申请实施例中,利用HDLC保活报文,将捆绑链路的其中一端设备的链路捆绑口配置信息和各成员接口的配置信息发送到另一端设备,捆绑链路的两端设备均根据该一端设备的链路捆绑口配置信息和各成员接口的配置信息进行工作接口选择,从而使得选出的工作接口保持一致。参见图2,图2是本申请实施例HDLC捆绑链路的工作接口的选择方法流程图,应用于HDLC捆绑链路的一端设备,该方法主要包括以下步骤:步骤201、本设备连接对端设备的链路捆绑口中的成员接口的链路层UP后,通过该成员接口向对端设备发送第一HDLC保活报文并接收对端设备发送的第一HDLC保活报文。这里,第一HDLC保活报文中携带发送者的标识信息,发送者的标识信息可以是发送者的桥MAC地址。步骤202、根据本设备的标识信息和对端设备的标识信息在本设备和对端设备之间选举Master。所述标识信息为桥MAC地址的情况下,本设备将对端设备发送的第一HDLC保活报文中携带的对端设备的桥MAC信息与本设备的桥MAC信息进行比较,选择桥MAC最大或最小的设备作为Master。本设备和对端设备需采用同样的选举策略,例如均是选择桥MAC最大的设备作为Master。未被选举为Master的设备成为Backup。步骤203、判断本设备是否被选举为Master,如果是,则执行步骤204,否则,执行步骤205。步骤204、根据本设备的链路捆绑口中链路层UP的各成员接口关联的配置信息选择工作接口,并通过该成员接口向对端设备发送携带该成员接口关联的配置信息的第二HDLC保活报文,以用于对端设备的工作接口选择。本申请中,接口关联的配置信息包括接口的配置信息(例如:带宽、优先级等)以及接口所在链路捆绑口的配置信息(例如:最小工作个数和最大工作个数)。根据本设备的链路捆绑口中链路层UP的各成员接口关联的配置信息选择工作接口,实际上也即是根据本设备的链路捆绑口配置信息以及链路层UP的各成员接口的配置信息选择工作接口。步骤205、在本设备的链路捆绑口中链路层UP的各成员接口接收对端设备发来的携带对端接口关联的配置信息的第二HDLC保活报文,根据从链路层UP的各成员端口接收的第二HDLC保活报文中携带的对端接口关联的配置信息进行本设备的工作接口选择。根据从链路层UP的各成员端口接收的第二HDLC保活报文中携带的对端接口的配置信息和对端设备的链路捆绑口配置信息进行本设备的工作接口选择的方法包括:将从链路层UP的各成员接口接收到的第二HDLC保活报文中携带的对端接口的配置信息配置为本成员接口关联的配置信息;根据本设备的链路捆绑口配置信息和链路层UP的各成员接口的配置信息选择工作接口。其中,将从链路层UP的各成员接口接收到的第二HDLC保活报文中携带的对端接口的配置信息配置为本成员接口关联的配置信息具体包括:将对端接口的配置信息配置为本成员接口的配置信息,将对端接口所在链路捆绑口的配置信息配置为本成员接口所在链路捆绑口的配置信息。以图1为例,对图2所示本申请实施例进行举例说明:为了便于描述,以下将连接接口PA1和接口PB1的连接链路称为链路1,将连接接口PA2和接口PB2的连接链路称为链路2,将连接接口PA3和接口PB3的连接链路称为链路3。假设初始状态下,链路1断开,链路2、链路3连通,在某一时刻链路1连通,则,路由器A会检测到接口PA1的链路层UP,因此从接口PA1发送携带路由器A的桥MAC信息的第一HDLC保活报文,同样,路由器B会检测到接口PB1的链路层UP,因此会从接口PB1发送携带路由器B的桥MAC信息的第一HDLC保活报文。路由器A在接口PA1接收到路由器B发送的第一HDLC保活报文后,将根据自身的桥MAC信息与路由器B的桥MAC信息在路由器A和路由器B中选举Master。同样,路由器B在接口PB1接收到路由器A发送的第一HDLC保活报文后,将根据自身的桥MAC信息与路由器A的桥MAC信息在路由器A和路由器B中选举Master。路由器A和路由器B的Master选举规则相同(例如,均是选择桥MAC最大的作为Master),最终选出的Master也相同。假设最终路由器A被选举为Master。路由器A会从链路层UP的各成员接口发送携带该成员接口关联的配置信息的第二HDLC保活报文,由于链路1、链路2和链路3是连通的,因此,路由器A会分别从接口PA1发送携带接口PA1关联的配置信息(包括PA1的配置信息和路由器A的链路捆绑口配置信息)的第二HDLC保活报文,从接口PA2发送携带接口PA2关联的配置信息(包括PA2的配置信息和路由器A的链路捆绑口配置信息)的第二HDLC保活报文,从接口PA3发送携带接口PA3关联的配置信息(包括PA3的配置信息和路由器A的链路捆绑口配置信息)的第二HDLC保活报文。路由器B在接口PB1接收到携带接口PA1关联的配置信息的第二HDLC保活报文,将接口PA1关联的配置信息配置为接口PB1关联的配置信息;在接口PB2接收到携带接口PA2关联的配置信息的第二HDLC保活报文,将接口PA2关联的配置信息配置为接口PB2的配置信息;在接口PB3接收到携带接口PA3关联的配置信息和路由器A的链路捆绑口配置信息的第二HDLC保活报文,将接口PA3关联的配置信息配置为接口PB3关联的配置信息。然后,路由器B根据接口PB1、接口PB2和接口PB3各自关联的配置信息选择工作接口。由于路由器A和路由器B都是根据同样的接口关联的配置信息选择工作接口,因此最终选择出的工作接口必然是一致的,也即,如果路由器A选中了接口PA1,则路由器B必然会选中接口PA1的对端接口PB1,如果路由器A选中了接口PA2,则路由器B必然会选中接口PA2的对端接口PB2,如果路由器A选中了接口PA3,则路由器B必然会选中接口PA2的对端接口PB3。在实际应用中,链路捆绑口中各成员接口关联的配置信息是可以根据用户的需求进行修改的。当链路捆绑口中某个成员接口关联的配置信息被用户修改时,有可能会导致该链路捆绑口中的工作接口发生变化,这种情况下,对端设备也需要根据本设备的链路捆绑口中各成员接口当前关联的配置信息重新进行对端设备的工作接口选择。对于Master设备来说,当Master设备的链路捆绑口中的成员接口关联的配置信息被修改时,有以下两种情况:第一种:该成员接口关联的配置信息修改会导致Master设备侧的工作接口发生变化。这种情况下,为了使Backup设备能够选择与Master设备一致的工作接口,Master设备需要从配置信息修改的成员接口发送携带该成员接口当前关联的配置信息的第三HDLC保活报文,使得Backup设备在接收到该第三HDLC保活报文后,将该第三HDLC保活报文中的携带的该配置信息修改的成员接口当前关联的配置信息配置为接收接口关联的配置信息,并重新进行工作接口选择。第二种:该成员接口的配置信息修改不会导致Master设备侧的工作接口发生变化。这种情况下,虽然该成员接口关联的配置信息修改暂时不会导致Master设备侧的工作接口发生变化,但是,可能在有其它成员接口关联的配置信息修改导致Master设备侧的工作接口发生变化时,影响到工作接口的选择结果。例如在图1中,假设路由器A中的三个接口PA1、PA2、PA3的带宽初始分别为5、2、1,且仅允许有一个工作接口,因此,此时的工作接口为PA1。某一时刻,接口PA2的带宽被修改为4,该配置信息修改不会导致路由器A中的工作接口发生变化,假设后续某一时刻,接口PA1的带宽又被修改为3,此时,接口PA1、PA2、PA3的带宽分别为3、4、1,显然,该配置信息修改会导致工作接口发生变化,且新的工作接口为PA2。从上述例子可以看出,虽然第一次配置信息修改时未引起工作接口变化,但是第二次配置信息修改时工作接口的选择结果却仍受到第一次配置信息修改的影响。因此,对于Master设备来说,即使其链路捆绑口的某一成员接口关联的配置信息修改不会导致工作接口发生变化,仍需将该修改的配置信息通告到对端设备。通告时机有两种,一种是:检测到该成员接口关联的配置信息修改时,通过该成员接口向Backup设备发送携带该成员接口当前关联的配置信息的第二HDLC保活报文,使得Backup设备能够获知该配置信息修改;另一种是检测到该成员接口关联的配置信息修改时,暂时不通告该配置信息修改,而是在检测到其它成员接口关联的配置信息修改且该配置信息修改会导致工作接口发生变化时,通过链路层UP的各成员接口向Backup设备发送携带该成员接口当前关联的配置信息的第三HDLC保活报文,从而使得backup设备一次性获知Master设备中链路层UP的所有成员接口关联的配置信息。根据上述关于Master设备的链路捆绑口中任一成员接口配置信息修改时的处理方式的原理性说明,在图2所示本发明实施例中,当本设备在本设备或对端设备的链路捆绑口中的任一成员接口关联的配置信息修改时的处理如下:本设备被选举为Master且从本设备的链路捆绑口中选出工作接口后,检测各成员接口关联的配置信息是否被修改,并在检测到任一成员接口关联的配置信息被修改时判断该配置信息修改是否会导致本设备的链路捆绑口的工作接口发生变化,如果是,则根据本设备的链路捆绑口中链路层UP的各成员接口当前关联的配置信息选择工作接口,并通过该配置信息修改的成员接口向对端设备发送携带该配置信息修改的成员接口当前关联的配置信息的第三HDLC保活报文,否则,通过该配置信息修改的成员接口向对端设备发送携带该配置信息修改的成员接口当前关联的配置信息的第二HDLC保活报文;本设备未被选举为Master的且从本设备的链路捆绑口中选出工作接口后,如果在链路层UP的任一成员接口接收到对端设备发送的携带对端接口当前关联的配置信息的第三HDLC保活报文,则将对端接口当前关联的配置信息配置为该成员接口关联的配置信息,并根据本设备的链路捆绑口中链路层UP的各成员接口当前关联的配置信息选择工作接口;如果在该成员接口接收到对端设备发送的携带对端接口当前关联的配置信息的第二HDLC保活报文,则将对端接口当前关联的配置信息配置为该成员接口关联的配置信息,暂不执行工作接口选择。或者,本设备被选举为Master且从本设备的链路捆绑口中选出工作接口后,检测各成员接口关联的配置信息是否被修改,并在检测到任一成员接口关联的配置信息被修改时判断该配置信息修改是否会导致所述链路捆绑口的工作接口发生变化,如果是,则根据本设备的链路捆绑口中链路层UP的各成员接口当前关联的配置信息选择工作接口,并通过链路层UP的各成员接口向对端设备发送携带该成员接口当前关联的配置信息的第三HDLC保活报文;本设备未被选举为Master且从本设备的链路捆绑口中选出工作接口后,如果在链路层UP的各成员接口接收到对端设备发送的携带对端接口当前关联的配置信息的第三HDLC保活报文,则将对端接口当前关联的配置信息配置为该成员接口关联的配置信息,并根据本设备的链路捆绑口中链路层UP的各成员接口当前关联的配置信息选择工作接口。需要说明的是,图2所示本发明实施例中,为了遵循HDLC保活报文的周期性发送,设备可以在链路捆绑口中的任一成员接口链路层UP的第一个保活时间周期发送第一HDLC保活报文,在本设备被选举为Master后,可以在每个保活时间周期通过链路层UP的各成员接口发送第二HDLC保活报文。另外,对于Master设备来说,可以在检测链路捆绑口中的任一成员接口关联的配置信息修改导致工作接口变化的第一个保活时间周期发送第三HDLC保活报文。图2所示本发明实施例中,Backup设备还可以在每个保活时间周期通过所述链路捆绑口中链路层UP的各成员接口向Master设备发送携带用于指示本设备为Backup的从属标记的第四HDLC保活报文。图2所示本发明实施例中,可以通过在HDLC保活报文中添加Flag标记字段,利用Flag标记字段标识HDLC保活报文,例如,当Flag标记字段的值为H时,表明是第一HDLC保活报文,其中要携带发送者的标识信息;当Flag标记字段的值为M时,表明是第二HDLC保活报文,其中携带发送接口关联的配置信息;当Flag标记字段的值为U时,表明是第三HDLC保活报文,其中要携带发送接口修改后关联的配置信息;当Flag标记字段的值为B时,表明是第四HDLC保活报文,由Backup设备发送。以上对本发明实施例HDLC捆绑链路的工作接口的选择方法进行了详细说明,本发明还提供了一种HDLC捆绑链路的工作接口的选择装置,应用于捆绑链路的任意一端设备,下面结合图3进行详细说明。图3为本发明实施例HDLC捆绑链路的工作接口的选择装置的结构示意图,如图3所示,该装置包括收发单元301、选举单元302、接口选择单元303;其中,收发单元301,用于本设备连接对端设备的链路捆绑口中成员接口的链路层UP后,通过该成员接口向对端设备发送第一HDLC保活报文并接收对端设备发送的第一HDLC保活报文,所述第一HDLC保活报文携带发送者的标识信息;如果本设备被选举为Master,则通过链路层UP的各成员接口向对端设备发送携带该成员接口关联的配置信息的第二HDLC保活报文,以用于对端设备的工作接口选择;如果本设备未被选举为Master,则在链路层UP的各成员接口接收对端设备发来的携带对端接口关联的配置信息的第二HDLC保活报文;选举单元302,用于收发单元301在本设备的链路捆绑口中链路层UP的成员接口接收对端设备发来的携带对端设备标识信息的第一HDLC保活报文时,根据本设备的标识信息和对端设备的标识信息在本设备和对端设备之间选举Master;接口选择单元303,用于本设备的链路捆绑口中成员接口的链路层UP后,如果本设备被选举为Master,则根据本设备的链路捆绑口中链路层UP的各成员接口关联的配置信息选择工作接口;用于本设备的链路捆绑口中成员接口的链路层UP后,如果本设备未被选举为Master,且收发单元301在本设备的链路捆绑口中链路层UP的各成员接口接收到对端设备发来的携带对端接口关联的配置信息的第二HDLC保活报文,则根据从链路层UP的各成员接口接收到的第二HDLC保活报文中携带的对端接口关联的配置信息进行本设备的工作接口选择;其中,接口关联的配置信息包括:接口的配置信息以及接口所在链路捆绑口的配置信息。上述装置中,所述标识信息包括桥MAC地址。上述装置中,所述接口选择单元303在根据从链路层UP的各成员接口接收到的第二HDLC保活报文中携带的对端接口关联的配置信息进行本设备的工作接口选择具体包括:将从链路层UP的各成员接口接收到的第二HDLC保活报文中携带的对端接口关联的配置信息配置为本成员接口关联的配置信息;根据本设备的链路捆绑口中链路层UP的各成员接口关联的配置信息选择工作接口。上述装置中,还包括判断单元304;所述判断单元304,用于本设备被选举为Master且接口选择单元303从本设备的链路捆绑口中选出工作接口后,检测各成员接口关联的配置信息是否被修改,并在检测到任一成员接口关联的配置信息修改时,判断该配置信息修改是否会导致本设备的链路捆绑口的工作接口发生变化;所述接口选择单元303,用于本设备被选举为Master且判断单元304检测到本设备的链路捆绑口中任一成员接口关联的配置信息被修改且该配置信息修改会导致本设备的链路捆绑口的工作接口发生变化时,根据链路层UP的各成员接口当前关联的配置信息选择工作接口;用于本设备未被选举为Master且接口选择单元303从本设备的链路捆绑口中选出工作接口后,如果收发单元301在链路层UP的任一成员接口接收到对端设备发送的携带对端接口当前关联的配置信息的第三HDLC保活报文,则将对端接口当前关联的配置信息配置为该成员接口关联的配置信息,根据链路层UP的各成员接口当前关联的配置信息选择工作接口;如果收发单元301在该成员接口接收到对端设备发送的携带对端接口当前关联的配置信息的第二HDLC保活报文,则将对端接口当前的配置信息配置为该成员接口关联的配置信息;所述收发单元301,用于本设备被选举为Master且判断单元304检测到本设备的链路捆绑口中任一成员接口关联的配置信息被修改且该配置信息修改会导致本设备的链路捆绑口的工作接口发生变化时,通过该配置信息修改的成员接口向对端设备发送携带该配置信息修改的成员接口当前关联的配置信息的第三HDLC保活报文,否则,通过该配置信息修改的成员接口向对端设备发送携带该配置信息修改的成员接口当前关联的配置信息的第二HDLC保活报文;用于本设备未被选举为Master且从本设备的链路捆绑口中选出工作接口后,在链路层UP的任一成员接口接收对端设备发送的携带对端接口当前关联的配置信息的第三HDLC保活报文或第二HDLC保活报文。上述装置中,还包括判断单元304;所述判断单元304,用于本设备被选举为Master且接口选择单元303从本设备的链路捆绑口中选出工作接口后,检测各成员接口关联的配置信息是否被修改,并在检测到任一成员接口关联的配置信息修改时,判断该配置信息修改是否会导致本设备的链路捆绑口的工作接口发生变化;所述接口选择单元303,用于本设备被选举为Master且判断单元304检测到本设备的链路捆绑口中任一成员接口关联的配置信息被修改且该配置信息修改会导致本设备的链路捆绑口的工作接口发生变化时,根据链路层UP的各成员接口当前关联的配置信息选择工作接口;用于本设备未被选举为Master且接口选择单元303从本设备的链路捆绑口中选出工作接口后,如果收发单元301在链路层UP的各成员接口接收到对端设备发送的携带对端接口当前关联的配置信息的第三HDLC保活报文时,则将对端接口当前关联的配置信息配置为该成员接口关联的配置信息,根据本设备的链路捆绑口中链路层UP的各成员接口当前关联的配置信息选择工作接口;所述收发单元301,用于本设备被选举为Master且判断单元304检测到本设备的链路捆绑口中任一成员接口关联的配置信息被修改且该配置信息修改会导致本设备的链路捆绑口的工作接口发生变化时,通过链路层UP的各成员接口向对端设备发送携带该成员接口当前关联的配置信息的第三HDLC保活报文;用于本设备未被选举为Master且接口选择单元303从本设备的链路捆绑口中选出工作接口后,在链路层UP的各成员接口接收对端设备发送的携带对端接口当前关联的配置信息的第三HDLC保活报文。以上所述,仅为本发明的较佳实施例而已,并非用于限定本发明的保护范围。凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1