一种聚合链路恢复方法及装置与流程

文档序号:11138329阅读:778来源:国知局
一种聚合链路恢复方法及装置与制造工艺

本申请涉及通信技术领域,特别涉及一种聚合链路恢复方法及装置。



背景技术:

链路聚合在网络设备实际组网中经常被用来增加链路带宽及链路可靠性,当前一般可以通过手工方式或者LACP(Link Aggregation Control Protocol,链路聚合控制协议)方式进行链路聚合。

进行链路聚合的各条链路形成聚合组,各条链路对应的端口构成聚合组的成员端口,聚合组的成员端口状态一般可以划分为UP状态(在线状态)和DOWN状态(离线状态),当端口状态为DOWN状态时,该端口对应的聚合链路不可用于流量传输,而该端口状态更新为UP状态后,该端口对应的聚合链路恢复可用状态,能够用于进行流量传输,这一过程称为聚合链路恢复。

现有技术中,以手工方式进行链路聚合后,若网络设备检测到目标端口由DOWN状态变化为UP状态,根据上述检测信息,对聚合组成员端口作为端口选择的状态信息进行修改,进而刷新聚合组成员端口的状态信息,完成目标端口所对应聚合链路的恢复,恢复后的上述聚合链路可以参与后续的流量负载分担。

通常情况下,应用上述方式能够很好的完成聚合链路恢复,但是从检测到目标端口状态改变到完成目标端口所对应聚合链路的恢复往往需要一段时间,在这段时间内由于已经检测到目标端口处于UP状态,所以网络设备认为目标端口可以进行流量负载分担,进而为目标端口分配流量,而实际上由于网络设备并没有完成对聚合组成员端口的状态刷新,因而易造成流经目标端口的流量丢失。



技术实现要素:

本申请实施例公开了一种聚合链路恢复方法及装置,以减少手工聚合方式下所流失的流量。

为达到上述目的,本申请实施例公开了一种聚合链路恢复方法,该方法包括:

确定目标端口由离线状态更新为在线状态后,确定目标端口是目标聚合组中处于选中状态的成员端口;设置目标端口为处于备用模式的单端口,且刷新目标端口的状态为接收流量但不发送流量的转发状态;间隔预设时段后,恢复目标端口为处于正常模式的端口,并更新目标端口的状态为流量负载分担状态,实现目标端口所对应聚合链路恢复。

为达到上述目的,本申请实施例还公开了一种聚合链路恢复装置,该装置包括:

确定单元,用于确定目标端口由离线状态更新为在线状态后,确定目标端口是目标聚合组中处于选中状态的成员端口;

刷新单元,用于设置目标端口为处于备用模式的单端口,且刷新目标端口的状态为接收流量但不发送流量的转发状态;

恢复单元,用于间隔预设时段后,恢复目标端口为处于正常模式的端口,并更新目标端口的状态为流量负载分担状态,实现目标端口所对应聚合链路恢复。

由以上可见,本申请实施例提供的方案中,确定目标端口由离线状态更新为在线状态后,确定目标端口是目标聚合组中处于选中状态的成员端口,并设置目标端口为处于备用模式的单端口,且刷新目标端口的状态为接收流量但不发送流量的转发状态,间隔预设时段后,设置目标端口为处于正常模式的端口,并更新目标端口的状态为流量负载分担状态,实现目标端口所对应聚合链路恢复。由于本申请实施例提供的方案中目标端口从离线状态更新为在线状态后,先将目标端口设置为处于备用模式的单端口,这样目标端口暂时不参与流量负载分担,另外,刷新目标端口为接收流量但不发送流量的转发状态后,目标端口仅仅接收流量,不发送流量,间隔预设时段后才将目标端口恢复为处于正常模式的端口,所以应用本申请实施例提供的方案,能够减小手工聚合方式下流量的丢失。

附图说明

为了更清楚地说明本申请实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。

图1为本申请实施例提供的一种聚合链路恢复方法的流程示意图;

图2为本申请实施例提供的一种网络设备的结构示意图;

图3为本申请实施例提供的一种聚合链路恢复装置的结构示意图。

具体实施方式

下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。

图1为本申请实施例提供的一种聚合链路恢复方法的流程示意图,该方法包括:

S101:确定目标端口由离线状态更新为在线状态后,确定目标端口是目标聚合组中处于选中状态的成员端口。

本申请实施例提供方案的前提为:以手工方式实现链路聚合。上述离线状态可以以DOWN状态表示,上述在线状态可以以UP状态表示。

具体的,确定目标端口是目标聚合组中处于选中状态的成员端口时,可以先判断目标端口是否为目标聚合组的成员端口,若为是,进一步确定目标端口是否为处于选中状态的成员端口。

可以理解的,上述目标端口对应至少一条聚合链路,参与聚合的各条链路形成目标聚合组,另外,该目标聚合组内各条链路对应的端口称为该聚合组的成员端口。

在本申请的一种可选实现方式中,确定目标端口是否为处于选中状态的成员端口时,可以根据目标端口的流量速率、双工模式、VLAN(Virtual Local Area Network,虚拟局域网)信息等目标端口的关键信息判断目标端口是否为上述目标聚合组中处于选中状态的端口。当然,本申请仅仅以上述为例进行说明,确定目标端口是否为处于选中状态的成员端口时,还可以参考其他信息,本申请并不对此进行限定。

S102:设置目标端口为处于备用模式的单端口,且刷新目标端口的状态为接收流量但不发送流量的转发状态。

另外,可以认为目标端口的工作模式包括:备用模式和正常模式两种,其中,目标端口处于备用模式时,可以认为目标端口以单端口形式运行,端口以单端口形式运行时,一般不会参与聚合组对应的流量负载分担;目标端口处于正常模式时,可以认为目标端口以非单端口形式运行,端口以非单端口形式运行时,一般会参与据合租对应的流量负载分担。

这样,将上述目标端口设置为处于备用模式的单端口后,说明目标端口暂时不会参与上述目标聚合组对应的流量负载分担,进而即使目标端口已经处于UP状态,网络设备也不会将流量分配到目标端口上。

S103:间隔预设时段后,恢复目标端口为处于正常模式的端口,并更新目标端口的状态为流量负载分担状态,实现目标端口所对应聚合链路恢复。

将目标端口的状态更新为流量负载分担状态后,目标端口可以分担目标聚合组的流量,另外目标端口既可以实现流量的接收也可以实现流量的发送。

在作为执行主体的网络设备进行聚合链路恢复的同时,对端网络设备可能也在进行聚合链路恢复,为保证对端网络设备也成功完成聚合链路恢复,可以等待一定时长之后再改变目标端口的状态,对目标端口所对应聚合链路进行恢复。

其中,对端网络设备也可以是按照本申请实施例提供的方案进行聚合链路恢复。

具体的,上述预设时长可以由开发人员根据经验值进行设置,本申请并不对其具体取值进行限定。

本申请的一种实现方式中,在设置目标端口为处于备用模式的单端口,且刷新目标端口的状态为接收流量但不发送流量的转发状态之后,还可以禁止对目标端口进行MAC(Media Access Control,媒体访问控制)地址学习,这样可以有效避免将从对端网络设备传输过来的流量学习到目标端口上,进而造成MAC地址学习错误。

基于上述情况,在实现目标端口所对应聚合链路恢复之后,需解除对目标端口进行MAC地址学习的禁止。

值得一提的是,当对端网络设备也采用上述方式进行聚合链路恢复时,由于对端网络设备禁止了对其中特定单端口进行MAC地址学习,所以当单播流量达到对端网络设备时,也不会学习到上述特定单端口。

本申请的一种实现方式中,在设置目标端口为处于备用模式的单端口,且刷新目标端口的状态为接收流量但不发送流量的转发状态之后,还可以为目标端口设置广播掩码,这样作为执行主体的网络设备暂时无法使用目标端口发送广播流量,进而可以有效防止通过目标端口广播多包。

基于上述情况,在实现目标端口所对应聚合链路恢复之后,需删除上述广播掩码,这样作为执行主体的网络设备可以恢复通过目标端口发送广播流量。

本申请的一种实现方式中,在设置目标端口为处于备用模式的单端口,且刷新目标端口的状态接收流量但不发送流量的为转发状态之后,还可以对目标端口与目标聚合组内每一成员端口进行隔离,这样可以避免目标端口与目标聚合组每一成员端口之间形成环路。

基于上述情况,在实现目标端口所对应聚合链路恢复之后,需解除目标端口与目标聚合组内每一成员之间的隔离。

值得一提的是,当对端网络设备也采用上述方式进行聚合链路恢复时,由于对端网络设备对其中特定单端口与聚合组内每一成员端口进行隔离,所以当单播流量达到对端网络设备时,也不会出现环路。

需要说明的是,本申请实施例中并不限定以下几个步骤之间的执行顺序,实际应用中可以根据具体情况确定执行顺序:

禁止对目标端口进行MAC地址学习;

为目标端口设置广播掩码;

对目标端口与目标聚合组内每一成员端口进行隔离。

由以上可见,上述各个实施例提供的方案中,确定目标端口由离线状态更新为在线状态后,确定目标端口是目标聚合组中处于选中状态的成员端口,并设置目标端口为处于备用模式的单端口,且刷新目标端口的状态为接收流量但不发送流量的转发状态,间隔预设时段后,恢复目标端口为处于正常模式的端口,并更新目标端口的状态为流量负载分担状态,实现目标端口所对应聚合链路恢复。由于上述各个实施例提供的方案中目标端口从离线状态更新为在线状态后,先将目标端口设置为处于备用模式的单端口,这样目标端口暂时不参与流量负载分担,另外,刷新目标端口为接收流量但不发送流量的转发状态后,目标端口仅仅接收流量,不发送流量,间隔预设时段后才将目标端口恢复为处于正常状态的端口,所以应用本申请实施例提供的方案,能够减小手工聚合方式下流量的丢失。

下面结合图2所示的网络设备结构示意图,对本申请实施例提供的聚合链路恢复方法进行更进一步详细介绍。

图2所示的网络设备可以为交换机,该交换机包括:交换芯片、接口管理模块和聚合管理模块。

交换芯片对设备各个端口的状态进行检测,假设检测到目标端口由故障(DOWN)状态变化为工作(UP)状态,交换芯片将上述目标端口状态的变化上报至接口管理模块;

接口管理模块接收到交换芯片上报的上述信息后,判断目标端口是否为目标聚合组的成员端口,若经判断发现目标端口是目标聚合组的成员端口,则通知聚合管理模块;

聚合管理模块接收到接口管理模块发送的通知后,根据目标端口的流量速率、双工模式、VLAN信息等判断目标端口是否为目标聚合组中处于选中状态的端口,若是处于选中状态的端口,将目标端口设置为处于备用模式的单端口,目标端口以单端口形式运行,不参与目标聚合组的流量负载分担;

聚合管理模块为目标端口设置广播掩码,避免上述交换机通过目标端口发送广播流量;

聚合管理模块对目标端口进行设置,使得目标端口与目标聚合组内每一成员端口进行隔离,避免目标端口与目标聚合组内每一成员端口之间形成环路;

聚合管理模块禁止对目标端口进行MAC地址学习,避免将对端网络设备传输过来的流量学习到目标端口上,出现MAC地址学习错误;

另外,聚合管理模块将目标端口设置为转发模式,并将目标端口信息的变化下发至交换芯片;

由交换芯片刷新端口信息使得目标端口处于接收流量但不发送流量的转发状态,此时目标端口仅仅接收流量但是不发送流量;

经过一段时间后,聚合管理模块将目标端口设置为处于正常模式的端口,并更新目标端口的状态为流量负载分担状态,并由交换芯片刷新端口信息使得目标端口处于流量分担状态,参与目标聚合组的流量分担;

聚合管理模块删除上述广播掩码、解除目标端口与目标聚合组内每一成员之间的隔离,并解除对目标端口进行MAC地址学习的禁止,实现目标端口所对应聚合链路恢复。

与上述聚合链路恢复方法相对应,本申请实施例还提供了一种聚合链路恢复装置。

图3为本申请实施例提供的一种聚合链路恢复装置的结构示意图,该装置包括:

确定单元301,用于确定目标端口由离线状态更新为在线状态后,确定目标端口是目标聚合组中处于选中状态的成员端口;

刷新单元302,用于设置目标端口为处于备用模式的单端口,且刷新目标端口的状态为接收流量但不发送流量的转发状态;

恢复单元303,用于间隔预设时段后,恢复目标端口为处于正常模式的端口,并更新目标端口的状态为流量负载分担状态,实现目标端口所对应聚合链路恢复。

在本申请的一种实现方式中,聚合链路恢复装置还可以包括:

禁止单元,用于在刷新单元302刷新状态后,禁止对目标端口进行MAC地址学习;

解除单元,用于在恢复单元303恢复链路之后,解除对目标端口进行MAC地址学习的禁止。

在本申请的一种实现方式中,装置还可以包括:

设置单元,用于在刷新单元302刷新状态后,为目标端口设置广播掩码;

删除单元,用于在恢复单元303恢复链路之后,删除广播掩码。

在本申请的一种实现方式中,装置还可以包括:

隔离单元,用于在刷新单元302刷新状态后,对目标端口与目标聚合组内每一成员端口进行隔离;

解除单元,还用于在恢复单元303恢复链路之后,解除目标端口与目标聚合组内每一成员之间的隔离。

具体的,确定单元301,可以具体用于确定目标端口由离线状态更新为在线状态后,判断目标端口是否为目标聚合组的成员端口;若为是,确定目标端口是处于选中状态的成员端口。

由以上可见,上述各个实施例提供的方案中,确定目标端口由离线状态更新为在线状态后,确定目标端口是目标聚合组中处于选中状态的成员端口,并设置目标端口为处于备用模式的单端口,且刷新目标端口的状态为接收流量但不发送流量的转发状态,间隔预设时段后,恢复目标端口为处于正常模式的端口,并更新目标端口的状态为流量负载分担状态,实现目标端口所对应聚合链路恢复。由于上述实施例提供的方案中目标端口从离线状态更新为在线状态后,先将目标端口设置为处于备用模式的单端口,这样目标端口暂时不参与流量负载分担,另外,刷新目标端口为接收流量但不发送流量的转发状态后,目标端口仅仅接收流量,不发送流量,间隔预设时段后才将目标端口恢复为处于正常模式的端口,所以应用本申请实施例提供的方案,能够减小手工聚合方式下流量的丢失。

对于装置实施例而言,由于其基本相似于方法实施例,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。

需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括要素的过程、方法、物品或者设备中还存在另外的相同要素。

本领域普通技术人员可以理解实现上述方法实施方式中的全部或部分步骤是可以通过程序来指令相关的硬件来完成,的程序可以存储于计算机可读取存储介质中,这里所称得的存储介质,如:ROM/RAM、磁碟、光盘等。

以上仅为本申请的较佳实施例而已,并非用于限定本申请的保护范围。凡在本申请的精神和原则之内所作的任何修改、等同替换、改进等,均包含在本申请的保护范围内。

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