具体实施方式
为使本发明的目的、技术方案及优点更加清楚明白,以下参照附图并举实施例,对本发明所述方案作进一步地详细说明。
本发明实施例中提出一种上下行链路关联的方法,应用于包括核心设备、接入设备和出口设备的网络中,该网络中的核心设备配置到各出口设备的等价多路径(ECMP),并通过LACP协议聚合各接入设备的接入链路形成聚合链路,其中,所述ECMP链路为该核心设备的上行链路,所述接入链路为该核心设备的下行链路。该核心设备为各上行链路关联下行链路,在上行链路故障时,停止通过与该上行链路关联的下行链路传送流量,避免了流量拥塞、丢包等情况的发生。
包括核心设备、接入设备和出口设备的网络,可以为数据中心类堆叠网络。其中接入设备为二层网络设备,可以为接入交换机;核心设备可以为部署网关的核心交换机;出口设备为核心设备下一跳转发设备,可以为交换机、防火墙、路由器等。下文以包含核心交换机、接入交换机和出口路由器的网络为例,来详述本发明提出的上下行链路关联过程。
实施例一
参见图2,图2为本发明实施例一中上下行链路关联方法流程示意图。具体步骤为:
步骤201,核心交换机为各上行链路关联下行链路。
如图1中,以核心交换机1为例,可以将上行链路L1同下行链路L3关联,将上行链路L2同下行链路L4关联。在具体实现时,各上行链路关联下行链路可以通过上行链路对应的上行接口关联下行链路对应的下行接口。
步骤202,该核心交换机获知任一上行链路故障时,停止接收该上行链路关联的下行链路发送的流量,并使通过该下行链路相连的接入交换机停止通过该下行链路发送流量。
如图1中,当上行链路L1故障时,则停止接收与上行链路L1关联的下行链路L3发送的流量,并使接入交换机1停止通过该下行链路L3发送的流量。
任一上行链路故障时,该核心交换机的获知的过程为,该上行链路对应的上行接口自动置为Down,接口模块会通知聚合LACP模块该接口Down的消息。
实施例二
参见图3,图3为本发明实施例二中上下行链路关联方法流程示意图。具体步骤为:
步骤301,核心交换机为各上行链路对应的上行接口关联下行链路对应的下行接口。
以图1中的核心交换机1为例,可以将上行接口P5和下行接口P3关联,还可以将上行接口P6和下行接口P4相连等。
当然在具体实现时,各下行链路所转发的业务的优先级是各不相同的,在关联上行接口的各下行接口对应低优先级业务,即只给低优先级业务对应的下行口关联上行口,高优先级业务对应的下行口不关联上行口。
图1中假设接入交换机业务n为高优先级业务,接入交换机业务1为低优先级业务,核心交换机1为下行接口P7和P8不关联对应的上行接口,为下行接口P3和下行接口P4分别关联上行接口P1和上行接口P2。
上述实现为高优先级业务对应的下行接口不关联上行接口,在具体实现时,还可以根据具体情况为高优先级业务对应的下行接口少关联上行接口,如图1中,假设接入交换机业务n为高优先级业务,接入交换机业务1为低优先级业务。核心交换机为下行接口P7关联上行接口P2,下行接口P8不关联上行接口,并为下行接口P3和下行接口P4分别关联上行接口P1和上行接口P2。即该核心交换机为各上行链路对应的上行接口关联的所有下行链路对应的下行接口,对应的低优先级业务的数量大于对应的高优先级业务的数量。
通过上述实现,高优先级业务对应的下行接口不配置关联关系,也可以少配置关联关系。具体实现时,使用者可以根据实际需要和应用环境进行配置,这里不再一一例举。
在实际应用中,当该网络中某个业务的流量值变化较大时,可以根据具体情况动态进行调整,关联关系。如,当任一低优先级业务的流量达到预设流量值时,该核心交换机增加上行接口关联,该低优先级业务对应的下行接口之外的下行接口的数量,即增加其他接入交换机关联的接口数量,以减少其上行流量带宽占用。
步骤302,该核心交换机获知任一上行链路对应的上行接口的接口状态由Up变为Down时,将与该上行接口关联的下行接口的LACP状态设置为备选状态,并与通过该下行接口相连的接入交换机进行LACP协议协商,使该接入交换机与本核心交换机相连的上行接口的状态设置为备选状态。
步骤302中,通过将上行链路关联的下行链路对应的下行接口的LACP状态设置为备选(Standby)状态,达到不从该接口接收流量的目的;通过与对应的接入交换机进行LACP协商,使其将对应的接口状态设置为备选状态,达到不通过对应接口发送流量的目的。即该下行链路物理连接相同,但不通过该下行链路收发流量。
在实施例一和实施例二中描述了上下行链路关联后,当某一上行链路发生故障时的处理过程。如图1中,若上行接口P5和下行接口P3关联,且未同下行接口P4关联,当上行链路L1故障时,接入交换机1不再通过P1发送流量,通过P2、P9和P10的聚合链路转发流量,流量上行到核心交换机是不均衡的,即上行到交换机1和核心交换机2的流量比为1:2,但是这样的不均衡流量恰好和核心交换机的上行链路带宽能力是匹配的。从而保证核心交换机上行链路的真正负载均衡,不会出现上行带宽资源有结余,但是部分链路拥塞丢包现象。
实施例三
对于上行链路故障恢复时,本发明具体实施例中为了防止上行链路的震荡扩散到整个网络,不是直接恢复链路的正常工作,而是在一定时延后进行处理。参见图4,图4为本发明实施例三中上行链路故障恢复处理过程流程示意图。具体步骤为:
步骤401,核心交换机的故障上行链路故障恢复时,记录故障恢复时间。
步骤402,该核心交换机等待第一预设故障恢复时间。
在等待第一预设故障恢复时间期间,如果获知该上行接口的接口状态由Up到Down时,仅更新该上行接口对应的上行链路故障时间,并不修改该上行接口关联的下行接口的状态以及其他操作。
步骤403,当第一预设故障恢复时间到时,该核心交换机确定该上行接口的接口状态是否为Up,如果是,执行步骤404;否则,执行步骤405。
步骤404,该核心交换机确定当前时间与当前记录的故障恢复时间的差值是否小于第二预设故障恢复时间,如果是,执行步骤402;否则,执行步骤406。
步骤404中的第二预设故障恢复时间远小于第一预设故障恢复时间,具体设置由使用者根据具体使用情况确定多长时间的故障恢复作为链路震荡情况,以及多长时间作为延时恢复该上行链路关联的下行链路的正常工作。
步骤405,该核心交换机继续等待,直到获知该上行接口的接口状态由Down变为Up时,执行步骤406。
步骤406,该核心交换机将该上行接口关联的下行接口的LACP状态更新为工作状态,并与通过该下行链路相连的接入交换机进行LACP协议协商,使该接入交换机与本核心交换机相连的上行接口的状态更新为工作状态。
下面结合附图1,举具体实施例详细说明上行链路故障恢复时,核心交换机的处理过程。
实施例三中第一预设故障恢复时间设置为T1,作为最大故障恢复时间。第二预设故障恢复时间设置为T2,T2为最小故障恢复时间,若接口由Down到Up的间隔时间小于T2,则认定是接口异常震荡且T1远大于T2。
以核心交换1的上行链路L3故障为例。当链路L3故障时,接口P5的接口状态自动置为Down时,记录时间t1,当链路L3故障恢复时,接口P5的接口状态自动置为Up时,记录当前时间t2。
等待T1时间,在等待期间,若再次获知上行接口P5的接口状态由Up到Down时,更新时间t1,不做其他处理。即上行接口P5的震荡不影响其关联的下行接口P3的状态。
当等待T1到时时,更新当前时间t2为t2+T2,该核心交换机若确定当前上行接口P5的接口状态为Up,若确定t2-t1<T1,则认定是接口震荡,则继续执行等待T1时间;若确定t2-t1>=T1,则认为接口震荡已经结束。可以启动接口恢复动作。接口恢复动作包括:该核心交换机将该上行接口P5关联的下行接口P3的LACP状态更新为工作状态,并与通过该下行链路L3相连的接入交换机进行LACP协议协商,使该接入交换机与本核心交换机相连的上行接口P1的状态更新为工作状态。
该核心交换机若确定当前上行接口P5的接口状态为Down时,继续等待,直到获知该上行接口的接口状态为Up时,启动接口恢复动作。
本发明具体实施例中基于同样的发明构思,还提出一种装置,可应用于包含核心设备、接入设备和出口设备的网络中的核心设备上,该装置配置到各出口设备的等价多路径ECMP,并通过链路聚合控制协议LACP协议聚合各接入设备的接入链路形成聚合链路,其中,所述ECMP链路为该核心设备的上行链路,所述接入链路为该核心设备的下行链路。参见图5,图5为本发明具体实施例中应用于上述技术的装置的结构示意图。该装置包括:配置单元501、获知单元502和处理单元503。
配置单元501,用于为本核心设备的各上行链路关联下行链路。
获知单元502,用于获知各上行链路是否故障。
处理单元503,用于当获知单元502获知任一上行链路故障时,停止接收配置单元501配置的该上行链路关联的下行链路发送的流量,并使通过该下行链路相连的接入设备停止通过该下行链路发送流量。
较佳地,
配置单元501,用于为本核心设备的各上行链路对应的上行接口关联下行链路对应的下行接口。
获知单元502,用于获知各上行链路对应的上行接口的接口状态。
处理单元503,用于当获知单元502获知该上行链路对应的上行接口的接口状态由Up变为Down时,将与该上行接口关联的下行接口的LACP状态设置为备选状态,并与通过该下行接口相连的接入设备进行LACP协议协商,使该接入设备与本核心设备相连的上行接口的状态设置为备选状态。
较佳地,
配置单元501,为各上行链路对应的上行接口关联的所有下行链路对应的下行接口,对应低优先级业务;或,为各上行链路对应的上行接口关联的所有下行链路对应的下行接口,对应的低优先级业务的数量大于对应的高优先级业务的数量。
较佳地,
获知单元502,进一步用于获知业务流量的情况。
配置单元501,进一步用于当获知单元502获知到任一低优先级业务的流量达到预设流量值时,增加上行接口关联该低优先级业务对应的下行接口之外的下行接口的数量。
较佳地,该装置进一步包括:记录单元504。
记录单元504,用于当获知单元502该上行链路故障时,记录该上行链路故障时间;
处理单元503,进一步用于当获知单元502获知到该上行链路故障恢复时,等待第一预设故障恢复时间;当第一预设故障恢复时间到时,若获知单元502获知该上行接口的接口状态为Up时,确定当前时间与当前记录单元504记录的该上行链路故障时间的差值是否小于第二预设故障恢复时间,如果是,执行所述等待第一预设故障恢复时间操作;否则,将该上行接口关联的下行接口的LACP状态更新为工作状态,并与通过该下行链路相连的接入设备进行LACP协议协商,使该接入设备与本核心设备相连的上行接口的状态更新为工作状态;若获知单元502获知该上行接口的接口状态为Down时,继续等待,直到获知单元502获知该上行接口的接口状态由Down变为Up时,将该上行接口关联的下行接口的LACP状态更新为工作状态,并与通过该下行链路相连的接入设备进行LACP协议协商,使该接入设备与本核心设备相连的上行接口的状态更新为工作状态;其中,所述第一预设故障恢复时间大于第二预设故障恢复时间。
较佳地,
记录单元504,进一步用于当处理单元503在等待第一预设故障恢复时间期间,若获知单元502获知该上行接口的接口状态由Up到Down时,更新该上行接口对应的上行链路故障时间。
上述实施例的单元可以集成于一体,也可以分离部署;可以合并为一个单元,也可以进一步拆分成多个子单元。
综上所述,本发明具体实施例中核心设备为各上行链路关联下行链路,在上行链路故障时,停止通过与该上行链路关联的下行链路传送流量,并使通过该下行链路相连的接入设备停止通过该下行链路发送流量,能够在核心设备上行链路故障时,避免流量拥塞、丢包等情况的发生。
本发明具体实施例中在配置关联关系时,可以为高优先级业务不配置关联关系或少配置关联关系,进而保证高优先级业务的带宽资源和服务质量。并在获知低优先级业务流量较大时,动态调整关联关系的配置,有效提高数据中心网络系统的负载均衡能力。
在上行链路故障恢复时,不实时恢复下行链路的正常工作,而是等待一个延时时间,进行延时保护,有效防止接口震荡引起的系统震荡。
以上所述,仅为本发明的较佳实施例而已,并非用于限定本发明的保护范围。凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。