以太网链路聚合简称链路聚合,它通过将多条以太网物理链路捆绑在一起成为一条逻辑链路,从而实现增加链路带宽的目的。同时,这些捆绑在一起的链路通过相互间的动态备份,可以有效地提高链路的可靠性。
如图1-1所示,Device A与Device B之间通过三条以太网物理链路相连,将这三条链路捆绑在一起,就成为了一条逻辑链路Link aggregation 1,这条逻辑链路的带宽等于原先三条以太网物理链路的带宽总和,从而达到了增加链路带宽的目的;同时,这三条以太网物理链路相互备份,有效地提高了链路的可靠性。
图1-1 链路聚合示意图
将多个以太网端口捆绑在一起所形成的组合称为聚合组,而这些被捆绑在一起的以太网端口就称为该聚合组的成员端口。每个聚合组唯一对应着一个逻辑接口,我们称之为聚合接口。聚合组/聚合接口可以分为以下两种类型:
· 二层聚合组/二层聚合接口:二层聚合组的成员端口全部为二层以太网端口,其对应的聚合接口称为二层聚合(Bridge-aggregation,BAGG)接口。
· 三层聚合组/三层聚合接口:三层聚合组的成员端口全部为三层以太网端口,其对应的聚合接口称为三层聚合(Route-aggregation,RAGG)接口。
说明:
聚合组内的成员端口具有以下两种状态:
· 选中(Selected)状态:此状态下的成员端口可以参与用户数据的转发,处于此状态的成员端口简称为“选中端口”。
· 非选中(Unselected)状态:此状态下的成员端口不能参与用户数据的转发,处于此状态的成员端口简称为“非选中端口”。
在选中端口失效后,其它非选中端口可能成为选中端口,参与用户数据的转发。
操作Key是系统在进行链路聚合时用来表征成员端口聚合能力的一个数值,它是根据成员端口上的一些信息(包括该端口的速率、双工模式等)的组合自动计算生成的,这个信息组合中任何一项的变化都会引起操作Key的重新计算。在同一聚合组中,所有的选中端口都必须具有相同的操作Key。
根据对成员端口状态的影响不同,我们可以将成员端口上的配置分为以下三类:
(1) 端口属性类配置:包含速率、双工模式和链路状态(up/down)这三项配置内容,是成员端口上最基础的配置内容。
(2) 第二类配置:包含的配置内容如[表1-1]所示。在聚合组中,只有与对应聚合接口的第二类配置完全相同的成员端口才能够成为选中端口。
表1-1 第二类配置的内容
配置项 | 内容 |
---|---|
端口隔离 | 端口是否加入隔离组、端口所属的端口隔离组 |
QinQ配置 | 端口的QinQ功能开启/关闭状态、VLAN Tag的TPID值、添加的外层VLAN Tag、内外层VLAN优先级映射关系、不同内层VLAN ID添加外层VLAN Tag的策略、内层VLAN ID替换关系 |
VLAN配置 | 端口上允许通过的VLAN、端口缺省VLAN、端口的链路类型(即Trunk、Hybrid、Access类型)、基于IP子网的VLAN配置、基于协议的VLAN配置、VLAN报文是否带Tag配置 |
MAC地址学习配置 | 是否具有MAC地址学习功能 |
说明
(3) 第一类配置:是相对于第二类配置而言的,包含的配置内容有GVRP、生成树等。在聚合组中,即使某成员端口与对应聚合接口的第一类配置存在不同,也不会影响该成员端口成为选中端口。
说明:
参考端口从成员端口中选出,其端口属性类配置和第二类配置将作为同一聚合组内的其它成员端口的参照,以确定这些成员端口的状态。
根据成员端口上是否启用了LACP协议,可以将链路聚合分为静态聚合和动态聚合两种模式,它们各自的特点如表1-2所示。
表1-2 不同聚合模式的特点
聚合模式 | 成员端口是否开启LACP协议 | 优点 | 缺点 |
---|---|---|---|
静态聚合模式 | 否 | 一旦配置好后,端口的选中/非选中状态就不会受网络环境的影响,比较稳定 | 不能根据对端的状态调整端口的选中/非选中状态,不够灵活 |
动态聚合模式 | 是 | 能够根据对端和本端的信息调整端口的选中/非选中状态,比较灵活 | 端口的选中/非选中状态容易受网络环境的影响,不够稳定 |
处于静态聚合模式和动态聚合模式下的聚合组分别称为静态聚合组和动态聚合组,动态聚合组内的选中端口以及处于up状态、与对应聚合接口的第二类配置相同的非选中端口均可以收发LACPDU(Link Aggregation Control Protocol Data Unit,链路聚合控制协议数据单元)。
1. 组网需求
· Device A与Device B通过各自的二层以太网端口GigabitEthernet 1/0/1~GigabitEthernet 1/0/3相互连接。
· 在Device A和Device B上分别配置二层静态链路聚合组,并使两端的VLAN 10和VLAN 20之间分别互通。
· 通过按照报文的源MAC地址和目的MAC地址进行聚合负载分担的方式,来实现数据流量在各成员端口间的负载分担。
2. 组网图
图1-5 二层静态聚合配置组网图
3. 配置步骤
(1) 配置Device A
# 创建VLAN 10,并将端口GigabitEthernet 1/0/4加入到该VLAN中。
# 创建VLAN 20,并将端口GigabitEthernet 1/0/5加入到该VLAN中。
# 创建二层聚合接口1。
# 分别将端口GigabitEthernet 1/0/1至GigabitEthernet 1/0/3加入到聚合组1中。
# 配置二层聚合接口1为Trunk端口,并允许VLAN 10和20的报文通过。
# 配置全局按照报文的源MAC地址和目的MAC地址进行聚合负载分担。
(2) 配置Device B
Device B的配置与Device A相似,配置过程略。
(3) 检验配置效果
# 查看Device A上所有聚合组的摘要信息。
以上信息表明,聚合组1为负载分担类型的二层静态聚合组,包含有三个选中端口。
# 查看Device A上全局采用的聚合负载分担类型。
以上信息表明,所有聚合组都按照报文的源MAC地址和目的MAC地址进行聚合负载分担。
# 其他配置和静态一样,只是在聚合口下配置一条命令
# 创建二层聚合接口1,并配置该接口为动态聚合模式。其他配置和静态一样
# 创建三层聚合接口1,并为该接口配置IP地址和子网掩码。其他和二层配置一样
聚合链路的带宽取决于聚合组内选中端口的数量,用户通过配置聚合组中的最小选中端口数,可以避免由于选中端口太少而造成聚合链路上的流量拥塞。当聚合组内选中端口的数量达不到配置值时,对应的聚合接口将不会up,从而使流量可以切换到备份链路上。具体实现如下:
· 如果聚合组内能够被选中的成员端口数小于配置值,这些成员端口都将变为非选中状态,对应聚合接口的链路状态也将变为down。
当聚合组内能够被选中的成员端口数增加至不小于配置值时,这些成员端口都将变为选中状态,对应聚合接口的链路状态也将变为up。
缺省情况下,聚合组中的最小选中端口数不受限制
配置举例:
# 创建二层聚合(三层聚合)接口1,并配置该接口限制聚合组的数量最小为2
link-aggregation load-sharing mode
命令用来配置聚合组内采用的聚合负载分担类型。
undo link-aggregation load-sharing mode
命令用来恢复缺省情况。
【命令】
【缺省情况】
缺省情况与设备的型号相关,请以设备的实际情况为准。
【参数】
destination-ip:表示按报文的目的IP地址进行聚合负载分担。
destination-mac:表示按报文的目的MAC地址进行聚合负载分担。
source-ip:表示按报文的源IP地址进行聚合负载分担。
source-mac:表示按报文的源MAC地址进行聚合负载分担。
【使用指导】
如果多次执行本命令,新的配置将覆盖旧的配置。
对于设备不支持的聚合负载分担类型,系统将提示用户不支持。
【举例】
配置二层聚合接口1对应的聚合组内按照报文目的MAC地址进行聚合负载分担。
配置二层聚合接口1对应的聚合组内按照源目地址进行聚合负载分担。
其他交换机配置
华三
#基于源IP和目的IP进行负载分担
华为
#配置Eth-Trunk负载分担方式。缺省情况下,交换机上Eth-Trunk接口的负载分担模式为src-dst-ip
锐捷
#更改流量平衡算法为源目ip模式,默认为源MAC+目的MAC模式