CN104272654A - 用于链路聚合中自适应快速启动的方法和装置 - Google Patents
用于链路聚合中自适应快速启动的方法和装置 Download PDFInfo
- Publication number
- CN104272654A CN104272654A CN201380024304.5A CN201380024304A CN104272654A CN 104272654 A CN104272654 A CN 104272654A CN 201380024304 A CN201380024304 A CN 201380024304A CN 104272654 A CN104272654 A CN 104272654A
- Authority
- CN
- China
- Prior art keywords
- pdu
- pressure condition
- partner
- link aggregation
- cycle
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L47/00—Traffic control in data switching networks
- H04L47/10—Flow control; Congestion control
- H04L47/28—Flow control; Congestion control in relation to timing considerations
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L43/00—Arrangements for monitoring or testing data switching networks
- H04L43/08—Monitoring or testing based on specific metrics, e.g. QoS, energy consumption or environmental parameters
- H04L43/0852—Delays
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L45/00—Routing or path finding of packets in data switching networks
- H04L45/24—Multipath
- H04L45/245—Link aggregation, e.g. trunking
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L47/00—Traffic control in data switching networks
- H04L47/10—Flow control; Congestion control
- H04L47/12—Avoiding congestion; Recovering from congestion
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L47/00—Traffic control in data switching networks
- H04L47/10—Flow control; Congestion control
- H04L47/32—Flow control; Congestion control by discarding or delaying data units, e.g. packets or frames
- H04L47/323—Discarding or blocking control packets, e.g. ACK packets
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L47/00—Traffic control in data switching networks
- H04L47/10—Flow control; Congestion control
- H04L47/30—Flow control; Congestion control in combination with information about buffer occupancy at either end or at transit nodes
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D30/00—Reducing energy consumption in communication networks
- Y02D30/50—Reducing energy consumption in communication networks in wire-line communication networks, e.g. low power modes or reduced link rate
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Environmental & Geological Engineering (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
- Communication Control (AREA)
Abstract
在一个实施例中,用于形成或维持链路聚合组的协议数据单元(PDU)的周期性传输间的周期最初被设为固定值。当检测到压力条件时,PDU的周期性传输间的周期被从初始值增加。当判定压力条件已经减轻时,PDU的周期性传输间的周期朝向固定值的方向被减小。
Description
技术领域
本公开一般地涉及计算机网络,更特别地,涉及计算机网络中的链路聚合。
背景技术
虽然一些网络设备可能被要求只支持少数链路聚合组,但是其它网络设备可能被要求支持几百、几千甚至几万链路聚合组。由于压力条件,这样的配置可能特别容易受到破坏。例如,在这样的配置中,系统重装或控制切换可能会导致更多数量的链路聚合组在短时间内被形成或被重新配置,导致极大压力。类似地,在这样的配置中,控制平面拥塞可以引起过多的协议数据单元(PDU)被丢失,再次导致压力。
当前链路聚合技术往往难以应付压力条件。不顾压力,这种链路聚合技术可能继续尝试迅速发送PDU。通常情况下,其结果是链路聚合抖动,其中链路聚合组被重复地形成,然后失败,然后再被形成,然后再失败,不断反复。当链路聚合抖动发生时,其变成附加的压力源,加剧潜在的问题。有时候,结果是链路聚合的形成彻底失败。
附图说明
通过参考附图本文所描述的实施例可以更好地被理解,图中相同的标号代表相同或功能相似的元件,其中:
图1是可以用在本文所描述的实施例的示例计算机网络的示意性框图。
图2是可以用在本文所描述的实施例的示例网络设备的示意性框图。
图3是可以由本文所公开的实施例中的某些实施例实现的示例自适应控制环路的框图。
图4是可以用在本文所公开的实施例中的某些实施例的、包括周期性时间的编码的示例协议数据单元。
图5是响应于检测到的压力用于动态调整用于形成和/或维持链路聚合组的PDU的周期性传输之间的周期的步骤的示例顺序的流程图。
具体实施方式
概览
根据本公开的实施例,通过调整用于形成和/或维持链路聚合组的PDU的周期性传输间的周期,压力条件对链路聚合的影响可以被减小。最初,周期性传输的PDU间的周期被设为低的固定值。一旦检测到压力条件,PDU的周期性传输间的周期从初始的固定值开始增加,例如,首先通过缓慢的线性增长,如果压力继续则随后通过快速的指数增长。当判定压力条件有所减轻时,PDU的周期性传输间的周期(例如)以受控制的方式向固定值的方向减小。
示例实施例
计算机网络是物理链路(比如,以太网线缆、光纤连接等)的地理上分布的集合,用于在网络设备(比如,交换机、路由器、计算机等)间传输数据。许多类型的计算机网络是可用的,包括局域网(LAN)和广域网(WAN)。计算机网络的网络设备通常通过根据预定义的协议交换离散的分组或消息进行通信。在这种情况下,协议包括一组定义网络设备相互间如何交互和互操作的规则。
许多计算机网络使用一些形式的链路聚合来增加带宽和/或提高可靠性。在链路聚合中,网络设备间的多个链路被分组(被逻辑组合)以形成提供更高的带宽和/或可靠性的逻辑链路。控制协议通常被实施来辅助链路聚合。常见的链路聚合控制协议包括在电气和电子工程师协会(IEEE)802.1AX中标准化的链路聚合控制协议(LACP)和思科系统公司开发的端口聚合协议(PAgP),然而还存在各种其它链路聚合协议。
链路聚合控制协议通常执行多个任务以支持链路聚合。这些任务包括检查候选链路是否可以实际上被聚合、创建新的链路聚合组、控制现有的链路聚合组中新链路的添加、监视已聚合的链路的状态以确保在链路聚合组中它们的成员资格仍然是有效的、如果链路的成员资格不再有效则从链路聚合组中移除这些链路、以及如果链路聚合组中剩余成员链路数量不足(比如,0)则移除这些链路聚合组。为了执行这些任务以及其它任务,链路聚合协议通常使得在链路聚合的对立的端部(通常分别称为施动者和合作者)的网络设备交换消息,比如协议数据单元(PDU)。取决于所使用的链路聚合控制协议,这些PDU可以采取各种不同的形式。例如,在802.1AX LACP中,这些PDU可以采取链路聚合控制PDU(LACPDU)的形式。类似地,在PAgP中,这些PDU可以采取PAgP PDU的形式。
为了执行这些任务和其它任务,施动者和合作者通常维持多个协议定时器。这些协议定时器中的至少一些协议定时器控制或以其它方式涉及PDU的交换。取决于所使用的链路聚合控制协议,涉及PDU的交换的协议定时器可以采取各种不同的形式。关于涉及PDU的交换的某些协议定时器的细节可以进一步在下面被发现。
虽然一些网络设备可能被要求只支持少数链路聚合组,但是其它网络设备可能被要求支持几百、几千甚至几万链路聚合组。例如,虚拟交换系统(VSS)和多机架LACP(mLACP)服务器访问配置通常包括多个耦接的物理交换机机架,这些物理交换机机架负责处理成员链路分布在机架上的几百个链路聚合组。此外,规模不断扩大的、包括多个相互连接的物理机架的数据中心交换机可以负责处理几千或几万个链路聚合组,这些链路聚合组的成员链路也分布在机架上。
图1是可以用在本文所描述的实施例的示例计算机网络100的示意性框图。计算机网络100可以包括多个由链路耦接起来的相互连接的网络设备110、120、130,这些链路中的至少一些链路被聚合成链路聚合组。网络设备可以是单机架的网络设备,或者,如设备110所示出的,是集中多个物理交换机机架140、150的VSS、mLACP配置或数据中心交换机。互连160,比如虚拟交换机链路(VSL)或包括链路的聚合的其它互连,可以将单个机架140、150耦接起来。这种多机架网络设备110可以通过(例如)从不同的机架140、150延伸出来的多个链路耦接到其它网络设备120、130。可以形成各种链路聚合组以逻辑组合链路中的一些链路。例如第一组链路172、174和176可以被放置在第一链路聚合组170中以形成第一逻辑链路,而第二组链路182、184可以被放置在第二链路聚合组180中以形成第二逻辑链路。特定链路聚合组的链路可以分布在多机架网络设备的各种机架间。例如,第一链路聚合组170可以包括来自一个机架140的一个或多个链路172、174,以及来自另一机架150的一个或多个链路176。虽然图1中只描绘了少量的链路和链路聚合组,但是应当理解通常配置一般包括更多数量的链路和链路聚合组。
图2是可以用在本文所公开的实施例的示例网络设备的示意性框图。网络设备200可以是图1中示出的网络设备110、120、130中的任一网络设备的示例。如果网络设备200代表多机架网络设备110,则应当理解网络设备200的组件可以分布在多个单独的物理单元内,而不是位于单个物理单元中。在这种情况下,图2中的组件的分组应当被理解为逻辑分组,而不是表明组件在物理上在一个机架内的指示。
网络设备200可以包括多个线卡210、一个或多个处理器(比如(一个或多个)CPU、微控制器等)220、一个或多个存储器230(比如,随机存取存储器(RAM)、磁存储设备等)以及一些其它组件。每个线卡210可以包含必要的机械、电气和信令电路来支持耦接到链路的一个或多个物理端口。一个或多个存储器230可以包括多个存储位置用于存储软件和数据结构(包括用于实现本文所公开的技术中的至少一些技术的软件和数据结构)。一个或多个处理器220可以包括被配置为运行软件以及操控来自数据结构的数据的逻辑。虽然图2中未示出,但是软件和数据中的至少一些软件和数据连同它们的操作可以被暂时地存储在处理器220的寄存器中。
部分驻留在存储器230中并被处理器220运行的操作系统232在功能上将网络设备200组织起来。操作系统232可以是思科互联网操作系统(IOS)的一个版本或其它合适的操作系统。聚合协议引擎240可以与操作系统232交互以在网络设备200上实现链路聚合控制功能。当网络设备200作为链路聚合的施动者进行操作时,链路聚合协议引擎可以作为施动者聚合协议引擎进行操作。施动者聚合协议引擎可以与运行在链路聚合的对立端部上的合作者上的合作者聚合协议引擎交互。
施动者聚合协议引擎可以负责与合作者链路聚合协议引擎交换PDU以形成并维持链路聚合。如上所述,至少在一些情况下,PDU的这种交换可以由各种协议定时器来调节,其可以由施动者聚合协议引擎和合作者链路聚合协议引擎来维持。
当链路聚合组正在形成(即聚合中)时,施动者聚合协议引擎与合作者聚合协议交换PDU以使群组在线。此外,为维持已形成(即已聚合的)的群组,施动者聚合协议引擎与合作者聚合协议引擎交换PDU以确认聚合的持续操作和状态。施动者聚合协议引擎的周期性定时器245可以触发周期性PDU向合作者聚合协议引擎的传输。同样地,合作者聚合协议引擎可以包括触发周期性PDU向施动者聚合协议引擎的传输的周期性定时器245。本文中施动者的周期性定时器的持续时间被称为“施动者周期性时间”,合作者的周期性定时器的持续时间被称为“合作者周期性时间”。在802.1AX LACP中,每个周期性定时器可以采取LACP周期性传输机的“periodic_timer”的形式。在其它链路聚合控制协议(比如PAgP)中,周期性定时器可以采取不同的形式,或在一些情况下不被使用。
此外,施动者聚合协议引擎的PDU接收定时器可以超时运行,在该超时时间内周期性PDU被期望从合作者聚合协议引擎处被接收。同样地,合作者聚合协议引擎可以包括执行相应功能的合作者PDU接收定时器。在802.1AX LACP中,每个PDU接收定时器可以采取LACP接收机的“current_while_timer”的形式。在其它链路聚合控制协议(比如PAgP)中,PDU接收定时器可以采取不同的形式,或在一些情况下不被使用。
上述周期性时间和超时时间在当前的链路聚合控制协议中通常被设为固定值。虽然取决于聚合的阶段(比如,聚合中或已聚合)可以使用多个固定值,但是这些值通常不响应系统条件(比如压力条件)。例如,在链路聚合的开始阶段当链路仍然正在聚合时,周期性时间和定时时间可以被设为相对短的值,在稍后阶段当聚合已经完全形成时,周期性时间和定时时间被设为显著更长的值。然而,这种变化不是基于施动者或合作者上存在的压力条件。
可能发生一些压力条件,阻止了链路聚合组的及时形成或正确维护。在聚合的数量被提高到几百、几千或几万的配置中这样的条件是尤其有问题的。例如,在这样的配置中,系统重装(比如,硬件或软件维护或升级)或控制切换(比如,VSS或mLACP机架故障转移)可以在短时间内引起更大数量的链路聚合组被形成或被重新配置,造成极大压力。类似地,在这样的配置中,控制平面拥塞(比如,由于运行不正常的对等体、拒绝服务(DoS)攻击、应用进程间的竞争等)可以导致过量的PDU丢失,再次导致压力。
当前链路聚合技术往往难以应付压力条件。尽管存在压力,但是这种链路聚合技术可以继续尝试在固定时间迅速发送PDU。通常情况下,其结果是链路聚合抖动,其中链路聚合组重复地被形成,然后失败,然后再被形成,然后再失败,不断反复。当链路聚合抖动发生时,其变成额外的系统压力源,加剧潜在的问题。有时候,结果是链路聚合的形成彻底失败。
如下面所解释的,与自适应控制器260结合起来工作的系统状态检测器250可以实现新的技术来最小化压力条件对链路聚合的影响。响应于检测到的压力,这种技术可以动态调整用于形成和/或维持链路聚合组的PDU的周期性传输间的周期(比如,周期性时间)。压力条件不存在时,周期可以被设为低的固定值以实现快速启动。当检测到压力条件时,周期可以被增加,例如,首先通过缓慢线性增长,如果系统压力继续,则随后通过快速指数增长。当压力恢复到较低的水平时,周期可以以受控制的方式向低的固定值的方向返回。通过对PDU的周期性传输间的周期的动态调整,链路聚合抖动和链路聚合形成失败可以被最小化。
系统条件检测器250可以以多种方式中的任意方式检测压力条件,并向自适应控制器260提供控制信号。在一个实施例中,系统条件检测器250监视一个或多个协议定时器,例如,上述PDU接收定时器(比如,在802.1AX KACP中的“current_while_timer”)。PDU接收定时器246的期满通常指示与本地系统响应、运行不正常的合作者或存在外部压力(比如DoS攻击)有关的问题。
此外,当同步的网络时钟可用时,接收到的周期性PDU上的明确的时间戳可以用于观察响应和检测压力条件。在另一替代方案中,可以监视链路聚合协议引擎240的接收队列(未示出)的长度。在另一替代方案中,系统条件检测器250可以监视单个聚合操作的完成时间。这种完成时间可以提供对受硬件、软件和进程间通信影响的响应能力的观察,因此被用于检测压力条件。
响应于来自系统条件检测器250的、指示已经检测到压力的控制信号,自适应260可以动态调整PDU的周期性传输间的周期。例如,自适应控制器260可以引起合作者周期性定时器(802.1AX LACP中的“periodic_timer”)所用的合作者周期性时间的改变。可以以各种方式引起这种改变。在一个实施例中,自适应控制器260使得施动者聚合引擎编码与合作者聚合协议引擎交换的一个或多个PDU的字段内的合作者周期性时间设置。这种编码的一个可能的实现方式的更多的细节将在下面参考图4进行讨论。
自适应控制器260可以首先将周期性时间调整到相对短的固定值以在无压力的情况下实现链路聚合的快速启动。例如,自适应控制器260可以使得合作者周期性时间首先被设为1秒的常数值(“X”)。在802.1AXLACP实现方式中,以这种方式设置“periodic_timer”的持续时间将符合IEEE 802.1AX标准设置。
当来自系统条件检测器250的控制信号指示出现压力条件时,自适应控制器260可以增加PDU的周期性传输间的周期,例如,首先通过缓慢的线性增长,如果条件持续,随后通过快速的指数增长。缓慢的线性增长可以向聚合进程提供处理轻的或偶发性的压力而不显著减慢的机会。快速指数增长可以积极处理持续的压力。
为提供初始的缓慢的线性增长,自适应控制器260可以使得合作者周期性时间增加,例如,当压力的某些衡量标准被满足时加入延迟因子(“Y”)。取决于链路聚合是否仍然正在形成(即聚合中)或链路聚合是否已经完全形成(即已聚合),衡量标准可以不同。在一个实施例中,在链路仍然正在聚合的情况下,PDU接收定时器246(比如,802.1AXLACP中的“current_while_timer”)的三个连续期满而没有接收到来自合作者聚合协议引擎的PDU可以使得自适应控制器260将延迟因子(“Y”)添加到合作者周期性时间(即合作者周期性时间+=Y),其中Y默认被设为1秒或管理地被配置为不同的值。在聚合完全形成的情况下,PDU接收定时器246(比如,802.1AX LACP中的“current_while_timer”)的两个连续期满而没有接收到来自合作者聚合协议引擎的PDU可以使得自适应控制器260将延迟因子(“Y”)添加到合作者周期性时间(即合作者周期性时间+=Y),其中Y默认被设为30秒或管理地被配置为不同的值。在其它实现方式中,缓慢线性增长可以通过其它类型的调整来实现。
如果系统压力持续,自适应控制器260可以变成快速指数增长,例如,使得合作者周期性时间增加一倍。在一个实现方式中,PDU接收定时器246(比如,802.1AX LACP中的“current_while_timer”)的随后的期满而没有接收到来自合作者聚合协议引擎的PDU(比如,当链路仍然正在聚合时的第四或随后的连续期满,或者当链路已经被聚合时的第三或随后的连续聚合)可以使得自适应控制器260将合作者周期性时间增加一倍(即,合作者周期性时间<<=1)。可以设置指数增长的上限。上限可以被设为30秒的常数(“V”)。在802.1AX LACP实现方式中,将上限设为30秒将提供与IEEE 802.1AX标准的兼容。可替代地,这个上限可以用2的倍数来表示,例如2Z,其中“Z”可以具有默认值(比如6)和被管理地配置成其它证明是有利的值。在其它实现方式中,快速指数增长可以由其它类型的变化来实现。
当来自系统条件检测器250的控制信号指示压力有所减轻时,自适应控制器260可以减小PDU的周期性传输间的周期,例如,使周期回到其初始固定值。这种减小可以以不会导致链路聚合抖动或周期长度的振荡的受控制的方式被执行。
例如,为执行这种受控制的减少,自适应控制器260可以实现必须被满足的减小条件以及下边界。在一个实现方式中,当来自合作者聚合协议引擎的PDU被正常接收到而PDU接收定时器246仍然正在运行时,减小条件被满足,自适应控制器260从合作者周期性时间中减去减少因子(“N”)(即,合作者周期性时间-=N),其中N默认被设为1秒或管理地被配置为不同值,条件是合作者周期性时间不会被减小到低于下边界。减小条件可以是接收定时器246的时间(比如,802.1AX中“current_while_timer”的时间)小于或等于施动者聚合协议引擎上的超时时间的一半(即,接收定时器的时间<=施动者超时时间>>1)。显然可以采用许多可替代的减小条件。
取决于链路聚合是否仍然正在聚合或已经被聚合,下边界可以变化。例如,当仍然正在聚合时,下边界可以被设为1秒的常数值(“X”)。在802.1AX LACP实现方式中,将下边界设为1秒将提供与标准的兼容。当已经被聚合时,下边界可以被设为30秒的常数值(“V”)。在802.1AX LACP实现方式中,在这种情况下将下边界设为30秒将提供与标准的兼容。可替代地,在已经被聚合的情况中下边界可以被设为快速心跳值(“W”),其中W是接收定时器246(比如,802.1AX中“current_while_timer”的时间)的时间长度除以2的幂(“M”)(即,W=接收定时器的时间<<M),其中“M”可以具有默认值(比如2)和管理地被配置为证明有利的其它值。
上述响应于检测到的压力动态调整PDU的周期性传输间的周期的操作可以被想象成自适应的控制环路。图3是由上述实施例中的某些实施例实现的示例自适应控制环路的框图300。合作者聚合协议引擎310可以与施动者聚合协议引擎340交换PDU。响应于涉及由施动者聚合协议引擎320所提供的PDU的接收的信息以及由施动者自适应控制器360所判定的合作者周期性时间,施动者系统条件检测器350可以向自适应控制器360提供表明压力的指示(“e”),其在被接收到时影响自适应控制器360的周期性时间输出。周期性时间输出被回送到施动者聚合协议引擎340和施动者系统条件检测器350。
如上所述,合作者周期性时间的变化可以由对与合作者聚合协议引擎交换的一个或多个PDU字段内的合作者周期性时间设置的编码引起。图4是包括周期性时间的编码的示例PDU 400。在该示例中,PDU 400是802.1AX LACP所用的LACPDU,应当理解在其它链路聚合控制协议(例如PAgP或其它协议)中可以采用其它格式的PDU。PDU 400包括功能公知的若干字段,包括目的地地址字段405、源地址字段410、长度/类型字段415、子类型字段420和版本号字段420。PDU 400还可以包括多个公知的类型-长度-值元素(TLV),包括施动者信息TLV 430、合作者信息TLV 500、收集器TLV 470和终结器TLV 480。这些TLV中的一个或多个保留字段的至少一部分可以被重新用来存储周期性时间设置。例如,施动者TLV 430中的施动者状态字段435下的保留字段445的一部分可以被指定为施动者周期性时间字段440并用于传播当前被施动者链路聚合协议引擎所用的周期性时间值。类似地,合作者TLV 450中的合作者状态字段455下的保留字段460的一部分可以被指定为合作者周期性时间字段460并用于传播合作者链路聚合协议引擎应当使用的合作者周期性时间值。
虽然如上面所讨论的,响应于压力条件,施动者链路聚合协议引擎可以通过改变合作者周期性时间来调整合作者的周期性PDU传输率,但是在一些实施例中,它还可以调整自己本身的周期性PDU传输率。这种调整可以由合作者使用与上述那些技术相似的技术来驱动。当从合作者接收到指示不同于施动者当前使用的周期性时间的周期性时间的PDU时,施动者聚合协议引擎可以简单地更新其周期性定时器来使用这些值。当施动者和合作者周期性时间都被动态地调整过时,施动者周期性时间可以和合作者周期性时间不同,除非另有规定。在一些实现方式中,两种聚合协议引擎可以针对周期性时间选择同样的值,例如,与受到更大压力的网络设备相关联的值。
图5是响应于检测到的压力用于动态调整用于形成和/或维持链路聚合组的PDU的周期性传输之间的周期的流程图。首先,在步骤510,自适应控制器260可以将PDU的周期性传输间的周期(比如合作者周期性时间)设为低的固定值(比如一秒)以实现快速启动。在步骤520,系统条件检测器250检测是否存在压力条件。如果这样,并且压力条件被检测到,执行前进到步骤530,其中判定压力条件是否是最近的条件或持续的条件。如果压力最近刚发生,执行前进到步骤540,其中自适应控制器260(例如)通过实现为周期提供缓慢线性增长的算法引起PDU的周期性传输间的周期(比如,合作者周期性时间)的小幅增加。如果压力条件持续存在,执行前进到步骤550,其中自适应控制器260(例如)通过实现为周期提供快速指数增长的算法引起PDU的周期性传输间的周期(比如,合作者周期性时间)的显著增加。
如果在步骤520系统条件检测器250判定压力不再存在,或压力已经有所减轻,执行前进到步骤560。在步骤560,如果PDU的周期性传输间的周期(比如,合作者周期性时间)由于在先前的迭代中步骤540或550的操作已经被增加,则周期可以向低的固定值的方向有一定量的减小。此后,执行可以回环到步骤520,其中系统条件检测器250继续检查压力条件。
响应于检测到的压力通过动态调整用于形成和/或维持链路聚合组的PDU的周期性传输之间的周期,上述实施例可以减小链路聚合抖动和/或完全聚合失败。应当理解在实施例的精神和范围内可以做出各种改变和修改。
例如,上述实施例可以在软件、硬件或它们的组合中实现。软件实现方式可以包括存储在一个或多个永久计算机可读介质(比如易失性或持久性存储器、硬盘、光盘(CD)或其它介质)中的指令。硬件实现方式可以包括已配置的处理器、逻辑电路、专用集成电路和/或其它类型的硬件组件。此外,软件/硬件组合的实现方式可以包括存储在永久计算机可读介质中的处理器可运行指令以及一个或多个硬件组件,例如,处理器、存储器等。
因此,应当理解上面的描述旨在仅采取示例的方式。覆盖落在本文实施例的真实精神和范围内的所有这些变化和修改是所附权利要求的目标。
Claims (20)
1.一种方法,包括:
最初将用于形成或维持链路聚合组的协议数据单元(PDU)的周期性传输间的周期设为固定值;
由网络设备检测影响所述链路聚合组的压力条件;
响应于对所述压力条件的检测,将所述PDU的周期性传输间的所述周期从初始固定值增加选定量;
由所述网络设备判定所述压力条件已经减轻;以及
响应于判定所述压力条件已经减轻,将所述PDU的周期性传输间的所述周期向所述初始固定值方向减小选定量。
2.如权利要求1所述的方法,其中所述增加进一步包括:
判定所述压力条件是最近的还是持续的;
如果所述压力条件是最近的,则选择增加量以使得所述周期线性增长;以及
如果所述压力条件是持续的,则选择增加量以使得所述周期指数增长。
3.如权利要求1所述的方法,其中所述减小进一步包括:
检查减小条件;以及
只有当所述减小条件被满足时才允许减小所述PDU的周期性传输间的所述周期。
4.如权利要求1所述的方法,其中所述PDU的周期性传输间的所述周期是触发向所述网络设备的所述PDU的周期性传输的合作者网络设备的周期性定时器的合作者周期性时间。
5.如权利要求4所述的方法,其中所述合作者周期性时间在一个或多个PDU中被传播到所述合作者网络设备。
6.如权利要求1所述的方法,其中检测所述压力条件进一步包括:
监视一个或多个协议定时器;以及
检测所述一个或多个协议定时器的期满。
7.如权利要求6所述的方法,其中所述一个或多个协议定时器包括运行超时时间的PDU接收定时器,在所述超时时间内所述PDU被期望从合作者网络设备接收。
8.如权利要求1所述的方法,其中检测所述压力条件进一步包括:
监视一个或多个接收到的PDU上的显式时间戳;以及
使用所述显式时间戳来检测所述压力条件。
9.如权利要求1所述的方法,其中检测所述压力条件进一步包括:
监视接收队列的长度;以及
使用所述接收队列的长度来检测所述压力条件。
10.如权利要求1所述的方法,其中检测所述压力条件进一步包括:
监视一个或多个单个聚合操作的完成时间;以及
使用所述完成时间来检测所述压力条件。
11.如权利要求1所述的方法,其中所述增加和所述减小都包括:
将所述周期的指示放置在将被发送到所述链路聚合组的合作者网络设备的一个或多个PDU的一个或多个类型-长度-值(TLV)元素中。
12.一种装置,包括:
一个或多个线卡,所述一个或多个线卡支持耦接到链路的多个端口;
处理器,所述处理器耦接到所述一个或多个线卡并被配置成运行软件进程;
链路聚合引擎,所述链路聚合引擎被配置为形成包括两个或多个链路的链路聚合组,并与在所述链路聚合组的链路的对立端的合作者周期性地交换协议数据单元(PDU);
系统条件检测器,所述系统条件检测器被配置为检测压力条件的出现;
自适应控制器,所述自适应控制器被配置为响应于所述压力条件的出现将所述PDU的周期性交换间的周期增加选定量,响应于所述压力条件的减轻将所述PDU的周期性传输间的所述周期减小选定量。
13.如权利要求12所述的装置,其中:
所述系统条件检测器进一步被配置为判定所述压力条件是最近的还是持续的;
所述系统条件检测器进一步被配置为,如果所述压力条件是最近的,则选择增加量以使得所述周期线性增长,如果所述压力条件是持续的,则选择增加量以使得所述周期指数增长。
14.如权利要求12所述的装置,其中所述自适应控制器进一步被配置为检查减小条件,以及只有当所述减小条件被满足时才允许减小所述PDU的周期性传输间的所述周期。
15.如权利要求12所述的装置,其中所述PDU的周期性传输间的所述周期是触发向所述装置的所述PDU的周期性传输的合作者网络设备的周期性定时器的合作者周期性时间。
16.如权利要求15所述的装置,其中所述聚合协议引擎进一步被配置为将所述合作者周期性时间在一个或多个PDU中被传播到所述合作者网络设备。
17.如权利要求12所述的装置,其中系统条件检测器进一步被配置为监视一个或多个协议定时器,并且响应于所述一个或多个协议定时器的期满检测所述压力条件。
18.如权利要求17所述的装置,其中所述一个或多个协议定时器包括运行超时时间的PDU接收定时器,在所述超时时间内PDU被期望被接收。
19.如权利要求12所述的装置,其中所述聚合协议引擎进一步被配置为将所述周期的指示放置在将被发送到合作者的PDU的一个或多个类型-长度-值(TLV)元素中。
20.被编码在一个或多个永久计算机可读介质上的软件,当其被运行时可操作来执行以下操作:
最初将用于形成或维持链路聚合组的协议数据单元(PDU)的周期性传输间的周期设为固定值;
检测影响所述链路聚合组的压力条件;
响应于检测的所述压力条件,将所述PDU的周期性传输间的所述周期从初始固定值增加选定量;
判定所述压力条件已经减轻;以及
响应于判定所述压力条件已经减轻,将所述PDU的周期性传输间的所述周期向初始固定值方向减小选定量。
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US13/466,715 US8942089B2 (en) | 2012-05-08 | 2012-05-08 | Method and apparatus for adaptive fast start in link aggregation |
US13/466,715 | 2012-05-08 | ||
PCT/US2013/038616 WO2013169513A1 (en) | 2012-05-08 | 2013-04-29 | Method and apparatus for adaptive fast start in link aggregation |
Publications (2)
Publication Number | Publication Date |
---|---|
CN104272654A true CN104272654A (zh) | 2015-01-07 |
CN104272654B CN104272654B (zh) | 2017-10-31 |
Family
ID=48289732
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201380024304.5A Expired - Fee Related CN104272654B (zh) | 2012-05-08 | 2013-04-29 | 用于链路聚合中自适应快速启动的方法和装置 |
Country Status (4)
Country | Link |
---|---|
US (2) | US8942089B2 (zh) |
EP (1) | EP2847934B1 (zh) |
CN (1) | CN104272654B (zh) |
WO (1) | WO2013169513A1 (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106301871A (zh) * | 2015-06-25 | 2017-01-04 | 中兴通讯股份有限公司 | 一种基于lacp的转发检测方法及系统 |
CN111010319A (zh) * | 2019-12-20 | 2020-04-14 | 锐捷网络股份有限公司 | 基于vsf的链路检测方法及装置 |
Families Citing this family (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9497132B2 (en) | 2013-04-23 | 2016-11-15 | Telefonaktiebolaget Lm Ericsson (Publ) | Method and system of implementing conversation-sensitive collection for a link aggregation group |
US9509556B2 (en) * | 2013-04-23 | 2016-11-29 | Telefonaktiebolaget L M Ericsson (Publ) | Method and system for synchronizing with neighbor in a distributed resilient network interconnect (DRNI) link aggregation group |
US9264302B2 (en) * | 2013-06-17 | 2016-02-16 | Telefonaktiebolaget L M Ericsson (Publ) | Methods and systems with enhanced robustness for multi-chassis link aggregation group |
US9398487B2 (en) * | 2013-12-20 | 2016-07-19 | Dell Products, L.P. | System and method for management of network links by traffic type |
CN104898592B (zh) * | 2015-03-31 | 2017-11-28 | 联想(北京)有限公司 | 一种联动规则的生成方法及电子设备 |
US9860350B2 (en) | 2015-05-12 | 2018-01-02 | Huawei Technologies Co., Ltd. | Transport software defined networking (SDN)—logical to physical topology discovery |
US10425319B2 (en) | 2015-05-21 | 2019-09-24 | Huawei Technologies Co., Ltd. | Transport software defined networking (SDN)—zero configuration adjacency via packet snooping |
US10015053B2 (en) * | 2015-05-21 | 2018-07-03 | Huawei Technologies Co., Ltd. | Transport software defined networking (SDN)—logical link aggregation (LAG) member signaling |
US9781001B2 (en) * | 2015-08-06 | 2017-10-03 | Huawei Technologies Co., Ltd. | Transport network tunnel setup based upon control protocol snooping |
CN109120392A (zh) * | 2017-06-22 | 2019-01-01 | 中兴通讯股份有限公司 | 时间转换方法及装置、设备、存储介质、处理器 |
CN109450787B (zh) * | 2018-10-31 | 2021-08-17 | 锐捷网络股份有限公司 | 一种lacp运行方法、装置、系统及存储介质 |
CN112152872B (zh) * | 2020-08-31 | 2022-05-27 | 新华三大数据技术有限公司 | 一种网络亚健康检测方法及装置 |
Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6614755B1 (en) * | 1997-12-15 | 2003-09-02 | Nec Corporation | Method for controlling congestion from a terminal in a frame relay network |
US20070226333A1 (en) * | 2006-03-27 | 2007-09-27 | Kai Morich | Integrated heartbeat monitoring and failover handling for high availability |
US20080205263A1 (en) * | 2007-02-28 | 2008-08-28 | Embarq Holdings Company, Llc | System and method for advanced fail-over for packet label swapping |
CN101518030A (zh) * | 2006-09-28 | 2009-08-26 | 卢森特技术有限公司 | 用于自动配置通信网络单元的技术 |
CN101554002A (zh) * | 2006-10-17 | 2009-10-07 | 维里逊商务网络服务有限公司 | 监视链路聚合链路 |
CN101682442A (zh) * | 2007-05-24 | 2010-03-24 | 哈里斯施特拉特克斯网络运行公司 | 用于第2层链路聚合的动态负载均衡 |
US20110280124A1 (en) * | 2010-05-17 | 2011-11-17 | Stephen John Unger | Systems and Methods for Load Balancing of Management Traffic Over a Link Aggregation Group |
Family Cites Families (22)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5959968A (en) | 1997-07-30 | 1999-09-28 | Cisco Systems, Inc. | Port aggregation protocol |
US6075769A (en) * | 1997-11-26 | 2000-06-13 | Cisco Systems, Inc. | Method and apparatus for network flow control |
US7274694B1 (en) | 2003-01-09 | 2007-09-25 | Cisco Technology, Inc. | Defining link aggregation across a stack |
US7468947B2 (en) * | 2003-03-31 | 2008-12-23 | International Business Machines Corporation | Controlling data packet flows by manipulating data packets according to an actual manipulation rate |
US20060013137A1 (en) * | 2003-08-05 | 2006-01-19 | Jie Ni | Network interface unit |
US7602726B1 (en) | 2003-08-11 | 2009-10-13 | Cisco Technology, Inc. | Method and system for optimizing link aggregation usage during failures |
US20060007914A1 (en) * | 2004-07-08 | 2006-01-12 | Praphul Chandra | Dynamic call parameter switchover and graceful degradation for optimizing VoIP performance in wireless local area networks |
US8730976B2 (en) | 2004-08-17 | 2014-05-20 | Cisco Technology, Inc. | System and method for preventing erroneous link aggregation due to component relocation |
US7876764B2 (en) | 2005-10-11 | 2011-01-25 | Cisco Technology, Inc. | Multiple aggregation protocol sessions in a daisy chain network |
US7639605B2 (en) | 2006-02-08 | 2009-12-29 | Cisco Technology, Inc. | System and method for detecting and recovering from virtual switch link failures |
US7729361B2 (en) | 2006-02-24 | 2010-06-01 | Cisco Technology, Inc. | Method and system for power-efficient adaptive link aggregation |
US7649906B2 (en) * | 2006-04-27 | 2010-01-19 | Alcatel Lucent | Method of reducing buffer usage by detecting missing fragments and idle links for multilink protocols and devices incorporating same |
US7940661B2 (en) | 2007-06-01 | 2011-05-10 | Cisco Technology, Inc. | Dynamic link aggregation |
US7808927B2 (en) | 2008-02-05 | 2010-10-05 | Cisco Technology, Inc. | Technique to automatically deaggregate an optimum set to prevent suboptimal routing or routing failures within a link state flooding domain |
EP2234346A1 (en) * | 2009-03-26 | 2010-09-29 | BRITISH TELECOMMUNICATIONS public limited company | Policing in data networks |
US8477597B2 (en) * | 2009-05-27 | 2013-07-02 | Yin Zhang | Method and system for resilient routing reconfiguration |
US8693320B2 (en) * | 2010-01-11 | 2014-04-08 | Research In Motion Limited | Congestion level indication with explicit congestion notification in communication systems |
WO2011105941A1 (en) * | 2010-02-25 | 2011-09-01 | Telefonaktiebolaget Lm Ericsson (Publ) | A method and arrangement for performing link aggregation |
US8509072B2 (en) * | 2011-03-07 | 2013-08-13 | Comcast Cable Communications, Llc | Network congestion analysis |
US20120236715A1 (en) * | 2011-03-17 | 2012-09-20 | D & S Consultants, Inc. | Measurement Based Admission Control Using Explicit Congestion Notification In A Partitioned Network |
US9166868B2 (en) * | 2011-12-07 | 2015-10-20 | Fujitsu Limited | Distributed control plane for link aggregation |
US9374298B2 (en) * | 2012-05-08 | 2016-06-21 | Cisco Technology, Inc. | Grace state and pacing in link aggregation |
-
2012
- 2012-05-08 US US13/466,715 patent/US8942089B2/en active Active
-
2013
- 2013-04-29 CN CN201380024304.5A patent/CN104272654B/zh not_active Expired - Fee Related
- 2013-04-29 WO PCT/US2013/038616 patent/WO2013169513A1/en active Application Filing
- 2013-04-29 EP EP13720742.9A patent/EP2847934B1/en active Active
-
2014
- 2014-12-23 US US14/582,085 patent/US9491105B2/en active Active
Patent Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6614755B1 (en) * | 1997-12-15 | 2003-09-02 | Nec Corporation | Method for controlling congestion from a terminal in a frame relay network |
US20070226333A1 (en) * | 2006-03-27 | 2007-09-27 | Kai Morich | Integrated heartbeat monitoring and failover handling for high availability |
CN101518030A (zh) * | 2006-09-28 | 2009-08-26 | 卢森特技术有限公司 | 用于自动配置通信网络单元的技术 |
CN101554002A (zh) * | 2006-10-17 | 2009-10-07 | 维里逊商务网络服务有限公司 | 监视链路聚合链路 |
US20080205263A1 (en) * | 2007-02-28 | 2008-08-28 | Embarq Holdings Company, Llc | System and method for advanced fail-over for packet label swapping |
CN101682442A (zh) * | 2007-05-24 | 2010-03-24 | 哈里斯施特拉特克斯网络运行公司 | 用于第2层链路聚合的动态负载均衡 |
US20110280124A1 (en) * | 2010-05-17 | 2011-11-17 | Stephen John Unger | Systems and Methods for Load Balancing of Management Traffic Over a Link Aggregation Group |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106301871A (zh) * | 2015-06-25 | 2017-01-04 | 中兴通讯股份有限公司 | 一种基于lacp的转发检测方法及系统 |
CN111010319A (zh) * | 2019-12-20 | 2020-04-14 | 锐捷网络股份有限公司 | 基于vsf的链路检测方法及装置 |
CN111010319B (zh) * | 2019-12-20 | 2021-11-16 | 锐捷网络股份有限公司 | 基于vsf的链路检测方法及装置 |
Also Published As
Publication number | Publication date |
---|---|
US20150117188A1 (en) | 2015-04-30 |
US8942089B2 (en) | 2015-01-27 |
US20130301407A1 (en) | 2013-11-14 |
CN104272654B (zh) | 2017-10-31 |
EP2847934A1 (en) | 2015-03-18 |
EP2847934B1 (en) | 2019-06-12 |
WO2013169513A1 (en) | 2013-11-14 |
US9491105B2 (en) | 2016-11-08 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN104272654A (zh) | 用于链路聚合中自适应快速启动的方法和装置 | |
JP5534026B2 (ja) | 通信システムの制御方法、通信システム、通信装置 | |
CN109218126B (zh) | 监测节点存活状态的方法、装置及系统 | |
CN104471915A (zh) | 链路聚合中的宽限状态和步调调整 | |
US20110229126A1 (en) | Automatic Adjustment of Optical Bandwidth Based on Client Layer Needs | |
Giorgetti et al. | Performance analysis of media redundancy protocol (MRP) | |
CN111654435B (zh) | 一种基于lacp的链路保护故障处理系统及方法 | |
CN103227725A (zh) | 一种防火墙双机备份的方法及装置 | |
CN104243259B (zh) | 分布式弹性网络互连系统中协作方法和系统 | |
US11784911B2 (en) | Methods and apparatus for controlling and making link bundle advertisements to support routing decisions | |
CN107070753A (zh) | 一种分布式集群系统的数据监控方法、装置及系统 | |
CN109391691A (zh) | 一种单节点故障下nas服务的恢复方法及相关装置 | |
CN101051957B (zh) | 捆绑链路状态动态调整方法和装置 | |
CN103236986A (zh) | 负载分担方法及装置 | |
CN102811451B (zh) | 一种Capwap隧道连接控制方法及装置 | |
CN109194521A (zh) | 一种流量转发方法及设备 | |
EP2561646B1 (en) | Apparatuses and methods for registering transmission capacities in a broadband access network | |
CN103718536B (zh) | 用于为冗余组件供电的系统和方法 | |
CN109698762A (zh) | 一种调整参数的方法及参数调整装置 | |
CN109639640B (zh) | 消息发送方法和装置 | |
CN103684811A (zh) | 一种复合链路的业务保护方法及系统 | |
CN111953555A (zh) | 一种链路检测方法、cpe及存储介质 | |
CN103023698A (zh) | 基于以太网链路级oam优化lacp协议链路聚合的方法及装置 | |
CN100362811C (zh) | 一种获取配置信息的方法 | |
CN111314408B (zh) | 一种基于通信层多数据项缓存任务的本地边缘计算和物联管理方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant | ||
CF01 | Termination of patent right due to non-payment of annual fee | ||
CF01 | Termination of patent right due to non-payment of annual fee |
Granted publication date: 20171031 Termination date: 20210429 |