当前位置:文档之家› 链路聚合协议LACP

链路聚合协议LACP

链路聚合协议LACP

目录

1.5.3.

2.4.4.5 链路聚合协议LACP

1.5.3.

2.4.4.5 链路聚合协议LACP

链路聚合的引入

随着以太网技术在网络领域的广泛应用,用户对采用以太网技术的骨干链路的带宽和可靠性提出越来越高的要求。在传统技术中,常用更换高速率的接口板或更换支持高速率接口板的设备的方式来增加带宽,但这种方案需要付出高额的费用,而且不够灵活。采用链路聚合技术可以在不进行硬件升级的条件下,通过将多个物理接口捆绑为一个逻辑接口实现增大链路带宽的目的。在实现增大带宽目的的同时,链路聚合采用备份链路的机制,可以有效的提高设备之间链路的可靠性。

作为链路聚合技术,Trunk可以完成多个物理端口聚合成一个Trunk口来提高带宽,同时能够检测到同一Trunk 内的成员链路有断路等故障,但是无法检测链路层故障、链路错连等故障。LACP(Link Aggregation Control Protocol)的技术出现后,提高了Trunk的容错性,并且能提供M:N备份功能,保证成员链路的高可靠性。

LACP为交换数据的设备提供一种标准的协商方式,以供系统根据自身配置自动形成聚合链路并启动聚合链路收发数据。聚合链路形成以后,负责维护链路状态。在聚合条件发生变化时,自动调整或解散链路聚合。

如图1所示,SwitchA与SwitchB之间创建Trunk,需要将SwitchA上的四个全双工GE接口与SwitchB捆绑成一个Trunk。由于错将SwitchA上的一个GE接口与SwitchC相连,这将会导致SwitchA向SwitchB传输数据时可能会将本应该发到SwitchB的数据发送到SwitchC上。而Trunk不能及时的检测到故障。

如果在SwitchA、SwitchB和SwitchC上都启用LACP协议,SwitchA的优先级设置高于SwitchB,经过协商

后,SwitchA发送的数据能够正确到达SwitchB。

图1 Trunk错连示意图

基本概念

链路聚合

将—组物理接口捆绑在一起作为一个逻辑接口来增加带宽及可靠性的方法。

链路聚合组

将若干条物理链路捆绑在一起所形成的逻辑链路称之为链路聚合组(LAG)或者Trunk。

如果这些被捆绑链路都是以太网链路,该聚合组被称为以太网链路聚合组,简写为Eth-Trunk。该聚

合组接口称之为Eth-Trunk接口。

组成Eth-Trunk的各个接口称之为成员接口。

Eth-Trunk接口可以作为普通的以太网接口来使用,它与普通以太网接口的差别只在于:转发的时候Eth-Trunk需要从众多成员接口中选择一个或多个接口来进行转发。所以,除了一些必须在物理接口下配置的特性,可以像配置普通以太网接口那样配置Eth-Trunk逻辑接口。

说明:

不能把已有的Eth-Trunk成员接口再捆绑成为其它Eth-Trunk的成员。

活动接口和非活动接口

链路聚合存在活动接口和非活动接口两种。转发数据的接口称为活动接口,而不转发数据的接口称为非活动接口。

活动接口对应的链路称为活动链路,非活动接口对应的链路称为非活动链路。

在链路聚合中为了提高链路的可靠性,引入了备份链路的机制。而这些备份链路对应的接口通常情况下担当了非活动接口的角色,只有当前活动接口出现故障时,备份的接口才可以由非活动接口转变为活动接口。

活动接口数上限阈值

在Eth-Trunk中,如果配置了活动接口数上限阈值,当活动接口数达到这个值后,再向Eth-Trunk中添加成员接口,不会增加Eth-Trunk活动接口的数目。

活动接口数下限阈值

设置活动接口数下限阈值主要目的是保证Eth-Trunk链路的带宽。防止由于活动接口数目过少而使这些链路负载过大,出现传输数据丢包的情况。

在Eth-Trunk中,如果配置了活动接口数下限阈值,当活动接口数目低于该值时,Eth-Trunk接口状态将变为Down,此时所有Eth-Trunk中的成员接口不再转发数据。

系统LACP优先级

系统LACP优先级是为了区分两端设备优先级的高低而配置的参数。静态LACP模式下,两端设备所选择的活动接口必须保持一致,否则链路聚合组就无法建立。而要想使两端活动接口保持一致,可以使其中一端具有更高的优先级,另一端根据高优先级的一端来选择活动接口即可。

系统LACP优先级值越小优先级越高,缺省情况下,系统LACP优先级值为32768。

接口LACP优先级

接口LACP优先级是为了区别不同接口被选为活动接口的优先程度。接口LACP优先级值越小,优先级越高。

成员端口间M:N备份

静态LACP模式链路聚合是一种利用LACP协议进行参数协商选取活动链路的聚合模式。该模式由LACP协议确定聚合组中的活动和非活动链路,又称为M:N模式,即M条活动链路与N条备份链路的模式。这种模式提供了更高的链路可靠性,并且可以在M条链路中实现不同方式的负载均衡。

如图2所示,两台设备间有M+N条属性相同的链路,在聚合链路上发送流量时在M条链路上负载分担,即主链路。不在另外的N条链路发送流量,这N条链路提供备份功能,即备份链路。此时链路的实际带宽为M条链路的总和,但是能提供的最大带宽为M+N的总和。

当M条链路中有一条链路故障时,LACP会从N条备份链路中找出一条正常链路替换有故障的链路,形成M:N备份。此时链路的实际带宽还是M条链路的总和,但是能提供的最大带宽就变为M+N-1条链路的总和。

图2 M:N备份示意图

这种场景主要应用在我们只想向用户提供M 条链路的带宽,同时又希望提供一定的故障保护能力。

当有一条链路出现故障时,系统能够自动选择一条优先级最高且可以使用的链路加到当前的聚合组

中。

如果在备用链路中无法找到可以激活的链路,并且目前处于Up 状态的链路数目低于配置活动接口数

下限阈值,那么系统将会把汇聚端口关闭。

链路的聚合方式

链路聚合根据是否启用链路聚合控制协议分为以下两种类型:

手工负载分担模式链路聚合

手工负载分担模式是一种最基本的链路聚合方式,在该模式下,Trunk 的建立,成员接口的加入,

以及哪些接口作为活动接口完全由手工来配置,没有链路聚合控制协议的参与。

该模式下所有活动接口都参与数据的转发,分担负载流量,因此称为负载分担模式。

手工负载分担模式下所有的成员接口可以平均分担数据流量。

如果活动链路中出现故障链路,链路聚合组自动在剩余的活动链路中平均分担数据流量。

静态LACP 模式链路聚合

静态LACP 模式下,Trunk 的建立,成员接口的加入,都是由手工配置完成的。但与手工负载分担模

式链路聚合不同的是,该模式下LACP 协议报文负责活动接口的选择。也就是说,当把一组接口加

入Trunk 后,这些成员接口中哪些接口作为活动接口,哪些接口作为非活动接口还需要经过LACP 协

议报文的协商确定。

手工负载分担模式链路聚合与静态LACP 模式链路聚合的区别和相同点如表1所示。

表1 手工模式链路聚合与静态模式链路聚合比较

手工负载分担模式链路聚合静态LACP 模式链路聚合区别不启用LACP

不会进行判断一个聚合组中的端

口是否可以真的被聚合在一起。

启用LACP 进行LACP 协议来判断在一个聚合组中的端口是否可以真的被聚合在一起。相同点聚合组的创建与删除以及成员链路的加入与退出都是由手动配置

手工负载分担链路聚合原理

手工负载分担模式链路聚合是应用比较广泛的一种链路聚合,允许在聚合组中手工加入多个成员接口,所有的接口均处于转发状态,分担负载的流量。当需要在两个直连设备间提供一个较大的链路带宽而对端设备又不支持LACP 协议时,可以使用手工负载分担模式。如图3所示,SwitchA 支持LACP ,SwitchB 不支持LACP 。图3 手工负载分担模式组网图

该模式下的所有接口参与数据的转发,并且在所有成员接口上分担负载。S7700支持两种方式的负载分担:

根据IP 报文或MPLS 标签进行负载分担。

根据MAC 地址进行负载分担。

静态LACP 模式实现原理

相关主题