【华三】不懂链路聚合?看这篇就够了!华三配置详解
背景
华三链路聚合(LinkAggregation),通过将多条以太网物理链路捆绑在一起形成一条以太网逻辑链路,实现增加链路带宽的目的,同时这些捆绑在一起的链路通过相互动态备份,可以有效地提高链路的可靠性。
随着网络规模不断扩大,用户对骨干链路的带宽和可靠性提出越来越高的要求。在传统技术中,常用更换高速率的单板或更换支持高速率单板的设备的方式来增加带宽,但这种方案需要付出高额的费用,而且不够灵活。
Link Aggregation采用链路聚合技术,可以在不进行硬件升级的条件下,通过将多个物理接口捆绑为一个逻辑接口,达到增加链路带宽的目的。在实现增大带宽目的的同时,Link Aggregation采用备份链路的机制,可以有效的提高设备之间链路的可靠性。
如果只是单纯的在交换机上添加多条链路,而不启用链路聚合,那其实和一条链路没区别,因为交换机有STP进行防环操作,多条链路会被逻辑阻塞,就留下一条链路进行业务传输而已,所以就有了链路聚合技术。将多条链路逻辑成一条逻辑链路,STP也就只能看到一条逻辑链路而已。
链路聚合基本概念
聚合组和聚合接口的类型
二层聚合组/二层聚合接口
二层聚合组的成员端口全部为二层以太网接口,其对应的聚合接口称为二层聚合接口。
三层聚合组/三层聚合接口
三层聚合组的成员端口全部为三层以太网接口,其对应的聚合接口称为三层聚合接口。在创建了三层聚合接口之后,还可继续创建该三层聚合接口的子接口,即三层聚合子接口。三层聚合子接口处理与该子接口编号相同的VLAN的报文。
聚合接口特性
聚合接口的速率等于所有选中端口的速率之和
聚合接口的双工模式则与选中端口的双工模式相同
聚合接口
参考端口
参考端口本地有效,具有抢占性。
参考端口从本端的成员端口中选出,其操作Key和属性类配置将作为同一聚合组内的其他成员端口的参照,只有操作Key和属性类配置与参考端口一致的成员端口才能被选中。
选举规则端口ID :端口优先级(默认32768)+端口编号越小越优
成员端口
① 选中(Selected)状态:
此状态下的成员端口可以参与数据的转发,处于此状态的成员端口称为“选中端口”。
② 非选中(Unselected)状态:
此状态下的成员端口不能参与数据的转发,处于此状态的成员端口称为“非选中端口”。
③ 独立(Individual)状态:
此状态下的成员端口可以作为普通物理口参与数据的转发。聚合接口配置为边缘端口时,如果成员端口在经过LACP(Link Aggregation Control Protocol,链路聚合控制协议)超时时间之后未收到LACP报文,则该成员端口会被置为该状态
操作Key
操作Key是系统在进行链路聚合时用来表征成员端口聚合能力的一个数值,它是根据成员端口上的一些信息(包括该端口的速率、双工模式等)的组合自动计算生成的,这个信息组合中任何一项的变化都会引起操作Key的重新计算。
在同一聚合组中,所有的选中端口都必须具有相同的操作Key。
成员端口的配置分类
协议类配置-第一类配置
不参与操作Key计算的配置信息。
包含的配置内容有MAC地址学习(MVRP)、生成树(MSTP)等。
属性配置-第二类配置
在聚合组中,只有与对应聚合接口的属性类配置完全相同的成员端口才能够成为选中端口。
参与操作Key计算的配置信息。
包含Vlan配置(端口上允许通过的VLAN、端口缺省VLAN、端口的链路类型等等)、VLAN映射、QinQ配置、端口隔离配置
华三链路聚合模式
01.静态聚合模式
一旦配置好后,端口的选中/非选中状态就不会受网络环境的影响,本地有效,不会被对端影响,只要自己有配置,聚合口就会up,比较稳定。
02.动态聚合模式
通过LACP协议实现,能够根据对端和本端的信息调整端口的选中/非选中状态,比较灵活。
LACP协议工作模式分为ACTIVE和PASSIVE两种。一端必须为ACTIVE,才能动态建立聚合组。
LACP超时时间是指成员端口等待接收LACPDU的超时时间,LACP超时时间分为短超时(3秒)和长超时(90秒)两种。在LACP超时时间+3秒之后(即6秒或93秒之后),如果本端成员端口仍未收到来自对端的LACPDU,则认为对端成员端口已失效。
聚合边缘接口
在网络设备与服务器等终端设备相连的场景中,当网络设备配置了动态聚合模式,而终端设备未配置动态聚合模式时,聚合链路不能成功建立。
网络设备与该终端设备相连多条链路中只能有一条作为普通链路正常转发报文,因而链路间也不能形成备份,当该普通链路发生故障时,可能会造成报文丢失。
若要求在终端设备未配置动态聚合模式时,该终端设备与网络设备间的链路可以形成备份。
可通过配置网络设备与终端设备相连的聚合接口为聚合边缘接口,使该聚合组内的所有成员端口都作为普通物理口转发报文,从而保证终端设备与网络设备间的多条链路可以相互备份,增加可靠性。
当终端设备完成动态聚合模式配置时,其聚合成员端口正常发送LACP报文后,网络设备上符合选中条件的聚合成员端口会自动被选中,从而使聚合链路恢复正常工作。
聚合负载分担类型
1 逐流负载分担
按照报文的源/目的MAC地址、源/目的服务端口、入端口、源/目的IP地址或MPLS标签中的一种或某几种的组合区分流,使属于同一数据流的报文从同一条成员链路上通过。
2 逐包负载分担
不区分数据流,而是以报文为单位,将流量分担到不同的成员链路上进行传输。
3 按照报文类型
如二层协议报文、IPv4报文、IPv6报文、MPLS报文等,自动选择所采用的聚合负载分担类型。
4 弹性负载分担
在链路增加或减少时,尽量少的切换链路上的流量,只有部分流量进行链路切换。
实验准备
实验环境:HCL 5.7.1
实验设备
交换机:S6850
PC:
实验目的
让交换机实现链路聚合,提高带宽
实验配置
PC1
PC2
二层静态聚合
SW1
<H3C>system-view
[H3C]sysname SW1
# 关闭日志弹出
[SW1]undo info-center enable
Information center is disabled.
# 创建VLAN 10,并将vlan10划分进g1/0/4端口
[SW1]vlan 10
[SW1-vlan10]quit
[SW1]int g1/0/4
[SW1-GigabitEthernet1/0/4]port link-type access
[SW1-GigabitEthernet1/0/4]port access vlan 10
[SW1-GigabitEthernet1/0/4]quit
# 创建二层聚合接口1
[SW1]int Bridge-Aggregation 1
[SW1-Bridge-Aggregation1]quit
# 将端口g1/0/1 - g1/0/3一起加入到聚合组1中
[SW1]int range g1/0/1 to g1/0/3
[SW1-if-range]port link-aggregation group 1
[SW1-if-range]quit
# 配置二层聚合接口1为Trunk端口,并允许VLAN 10的报文通过。
# 会在二层聚合口1配置的话,会和物理接口同步,如下
[SW1]int Bridge-Aggregation 1
[SW1-Bridge-Aggregation1]port link-type trunk
Configuring GigabitEthernet1/0/1 done.
Configuring GigabitEthernet1/0/2 done.
Configuring GigabitEthernet1/0/3 done.
[SW1-Bridge-Aggregation1]port trunk permit vlan 10
Configuring GigabitEthernet1/0/1 done.
Configuring GigabitEthernet1/0/2 done.
Configuring GigabitEthernet1/0/3 done.
[SW1-Bridge-Aggregation1]quit
SW2
[SW2]undo info-center enable
Information center is disabled.
# 创建VLAN 10,并将vlan10划分进g1/0/4端口
[SW2]vlan 10
[SW2-vlan10]quit
[SW2]int g1/0/4
[SW2-GigabitEthernet1/0/4]port link-type access
[SW2-GigabitEthernet1/0/4]port access vlan 10
[SW2-GigabitEthernet1/0/4]quit
# 创建二层聚合接口1
[SW2]int Bridge-Aggregation 1
[SW2-Bridge-Aggregation1]quit
# 将端口g1/0/1 - g1/0/3一起加入到聚合组1中
[SW2]int range g1/0/1 to g1/0/3
[SW2-if-range]port link-aggregation group 1
[SW2-if-range]quit
# 配置二层聚合接口1为Trunk端口,并允许VLAN 10的报文通过。
# 会在二层聚合口1配置的话,会和物理接口同步,如下
[SW2]int Bridge-Aggregation 1
[SW2-Bridge-Aggregation1]port link-type trunk
Configuring GigabitEthernet1/0/1 done.
Configuring GigabitEthernet1/0/2 done.
Configuring GigabitEthernet1/0/3 done.
[SW2-Bridge-Aggregation1]port trunk permit vlan 10
Configuring GigabitEthernet1/0/1 done.
Configuring GigabitEthernet1/0/2 done.
Configuring GigabitEthernet1/0/3 done.
[SW2-Bridge-Aggregation1]quit
查看SW1所有聚合组的详细信息
[SW1]display link-aggregation verbose
查看SW2所有聚合组的详细信息
[SW2]display link-aggregation verbose
PC1 Ping PC2
二层动态聚合
SW1
<H3C>system-view
[H3C]sysname SW1
# 关闭日志弹出
[SW1]undo info-center enable
Information center is disabled.
# 创建VLAN 10,并将vlan10划分进g1/0/4端口
[SW1]vlan 10
[SW1-vlan10]quit
[SW1]int g1/0/4
[SW1-GigabitEthernet1/0/4]port link-type access
[SW1-GigabitEthernet1/0/4]port access vlan 10
[SW1-GigabitEthernet1/0/4]quit
# 创建二层聚合接口1,并配置该接口为动态聚合模式。
[SW1]int Bridge-Aggregation 1
[SW1-Bridge-Aggregation1]link-aggregation mode dynamic
[SW1-Bridge-Aggregation1]quit
# 将端口g1/0/1 - g1/0/3一起加入到聚合组1中
[SW1]int range g1/0/1 to g1/0/3
[SW1-if-range]port link-aggregation group 1
[SW1-if-range]quit
# 配置二层聚合接口1为Trunk端口,并允许VLAN 10的报文通过。
# 会在二层聚合口1配置的话,会和物理接口同步,如下
[SW1]int Bridge-Aggregation 1
[SW1-Bridge-Aggregation1]port link-type trunk
Configuring GigabitEthernet1/0/1 done.
Configuring GigabitEthernet1/0/2 done.
Configuring GigabitEthernet1/0/3 done.
[SW1-Bridge-Aggregation1]port trunk permit vlan 10
Configuring GigabitEthernet1/0/1 done.
Configuring GigabitEthernet1/0/2 done.
Configuring GigabitEthernet1/0/3 done.
[SW1-Bridge-Aggregation1]quit
SW2
[SW2]undo info-center enable
Information center is disabled.
# 创建VLAN 10,并将vlan10划分进g1/0/4端口
[SW2]vlan 10
[SW2-vlan10]quit
[SW2]int g1/0/4
[SW2-GigabitEthernet1/0/4]port link-type access
[SW2-GigabitEthernet1/0/4]port access vlan 10
[SW2-GigabitEthernet1/0/4]quit
# 创建二层聚合接口1,并配置该接口为动态聚合模式。
[SW1]int Bridge-Aggregation 1
[SW1-Bridge-Aggregation1]link-aggregation mode dynamic
[SW1-Bridge-Aggregation1]quit
# 将端口g1/0/1 - g1/0/3一起加入到聚合组1中
[SW2]int range g1/0/1 to g1/0/3
[SW2-if-range]port link-aggregation group 1
[SW2-if-range]quit
# 配置二层聚合接口1为Trunk端口,并允许VLAN 10的报文通过。
# 会在二层聚合口1配置的话,会和物理接口同步,如下
[SW2]int Bridge-Aggregation 1
[SW2-Bridge-Aggregation1]port link-type trunk
Configuring GigabitEthernet1/0/1 done.
Configuring GigabitEthernet1/0/2 done.
Configuring GigabitEthernet1/0/3 done.
[SW2-Bridge-Aggregation1]port trunk permit vlan 10
Configuring GigabitEthernet1/0/1 done.
Configuring GigabitEthernet1/0/2 done.
Configuring GigabitEthernet1/0/3 done.
[SW2-Bridge-Aggregation1]quit
查看SW1所有聚合组的详细信息
[SW1]display link-aggregation verbose
查看SW2所有聚合组的详细信息
[SW2]display link-aggregation verbose
PC1 Ping PC2
二层聚合负载分担
SW1
<H3C>system-view
[H3C]sysname SW1
# 关闭日志弹出
[SW1]undo info-center enable
Information center is disabled.
# 创建VLAN 10,并将vlan10划分进g1/0/4端口
[SW1]vlan 10
[SW1-vlan10]quit
[SW1]int g1/0/4
[SW1-GigabitEthernet1/0/4]port link-type access
[SW1-GigabitEthernet1/0/4]port access vlan 10
[SW1-GigabitEthernet1/0/4]quit
# 通过在聚合组1上按照源MAC地址进行聚合负载分担
[SW1]int Bridge-Aggregation 1
[SW1-Bridge-Aggregation1]link-aggregation load-sharing mode source-mac
[SW1-Bridge-Aggregation1]quit
# 将端口g1/0/1 - g1/0/3一起加入到聚合组1中
[SW1]int range g1/0/1 to g1/0/3
[SW1-if-range]port link-aggregation group 1
[SW1-if-range]quit
# 配置二层聚合接口1为Trunk端口,并允许VLAN 10的报文通过。
# 会在二层聚合口1配置的话,会和物理接口同步,如下
[SW1]int Bridge-Aggregation 1
[SW1-Bridge-Aggregation1]port link-type trunk
Configuring GigabitEthernet1/0/1 done.
Configuring GigabitEthernet1/0/2 done.
Configuring GigabitEthernet1/0/3 done.
[SW1-Bridge-Aggregation1]port trunk permit vlan 10
Configuring GigabitEthernet1/0/1 done.
Configuring GigabitEthernet1/0/2 done.
Configuring GigabitEthernet1/0/3 done.
[SW1-Bridge-Aggregation1]quit
SW2
[SW2]undo info-center enable
Information center is disabled.
# 创建VLAN 10,并将vlan10划分进g1/0/4端口
[SW2]vlan 10
[SW2-vlan10]quit
[SW2]int g1/0/4
[SW2-GigabitEthernet1/0/4]port link-type access
[SW2-GigabitEthernet1/0/4]port access vlan 10
[SW2-GigabitEthernet1/0/4]quit
# 通过在聚合组1上按照源MAC地址进行聚合负载分担
[SW1]int Bridge-Aggregation 1
[SW1-Bridge-Aggregation1]link-aggregation load-sharing mode source-mac
[SW1-Bridge-Aggregation1]quit
# 将端口g1/0/1 - g1/0/3一起加入到聚合组1中
[SW2]int range g1/0/1 to g1/0/3
[SW2-if-range]port link-aggregation group 1
[SW2-if-range]quit
# 配置二层聚合接口1为Trunk端口,并允许VLAN 10的报文通过。
# 会在二层聚合口1配置的话,会和物理接口同步,如下
[SW2]int Bridge-Aggregation 1
[SW2-Bridge-Aggregation1]port link-type trunk
Configuring GigabitEthernet1/0/1 done.
Configuring GigabitEthernet1/0/2 done.
Configuring GigabitEthernet1/0/3 done.
[SW2-Bridge-Aggregation1]port trunk permit vlan 10
Configuring GigabitEthernet1/0/1 done.
Configuring GigabitEthernet1/0/2 done.
Configuring GigabitEthernet1/0/3 done.
[SW2-Bridge-Aggregation1]quit
查看SW1所有聚合组的详细信息
[SW1]display link-aggregation verbose
查看SW2所有聚合组的详细信息
[SW2]display link-aggregation verbose
查看SW1所有聚合接口所对应聚合组内采用的聚合负载分担类型。
[SW1]display link-aggregation load-sharing mode interface
PC1 Ping PC2
三层静态聚合
SW1
# 创建三层聚合接口“1”,并为该接口配置IP地址和子网掩码。
# 默认聚合模式为静态
[SW1]int Route-Aggregation 1
[SW1-Route-Aggregation1]ip address 192.168.100.1 24
[SW1-Route-Aggregation1]quit
# 二层接口是不能加入三层聚合接口组的
# 需要我们手动把二层接口改为三层接口,才能成功加组
[SW1]int g1/0/1
[SW1-GigabitEthernet1/0/1]port link-mode route # 修改成三层接口
The configuration of the interface will be restored to the default. Continue? [Y/N]:y[SW1-GigabitEthernet1/0/1]port link-aggregation group 1
[SW1-GigabitEthernet1/0/1]quit
[SW1]int g1/0/2
[SW1-GigabitEthernet1/0/2]port link-mode route
The configuration of the interface will be restored to the default. Continue? [Y/N]:y
[SW1-GigabitEthernet1/0/2]port link-aggregation group 1
[SW1-GigabitEthernet1/0/2]quit
[SW1]int g1/0/3
[SW1-GigabitEthernet1/0/3]port link-mode route
The configuration of the interface will be restored to the default. Continue? [Y/N]:y
[SW1-GigabitEthernet1/0/3]port link-aggregation group 1
[SW1-GigabitEthernet1/0/3]quit
SW2
# 创建三层聚合接口“1”,并为该接口配置IP地址和子网掩码。
[SW2]int Route-Aggregation 1
[SW2-Route-Aggregation1]ip address 192.168.100.2 24
[SW2-Route-Aggregation1]quit
# 二层接口是不能加入三层聚合接口组的
# 需要我们手动把二层接口改为三层接口,才能成功加组
[SW2]int range g1/0/1 to g1/0/3
[SW2-if-range]port link-mode route
[SW2-if-range]port link-aggregation group 1
[SW2-if-range]quit
查看SW1所有聚合组的详细信息
[SW1]display link-aggregation verbose
查看SW1聚合接口地址
[SW1]dis ip int brief
查看SW1三层聚合接口能和SW2的三层聚合端口互通
三层动态聚合
SW1
# 创建三层聚合接口“1”,并为该接口配置IP地址和子网掩码。
# 默认聚合模式为动态LACP模式
[SW1]int Route-Aggregation 1
[SW1-Route-Aggregation1]link-aggregation mode dynamic ## 设置为动态LACP模式
[SW1-Route-Aggregation1]ip address 192.168.100.1 24
[SW1-Route-Aggregation1]quit
# 二层接口是不能加入三层聚合接口组的
# 需要我们手动把二层接口改为三层接口,才能成功加组
[SW1]int g1/0/1
[SW1-GigabitEthernet1/0/1]port link-mode route # 修改成三层接口
The configuration of the interface will be restored to the default. Continue? [Y/N]:y[SW1-GigabitEthernet1/0/1]port link-aggregation group 1
[SW1-GigabitEthernet1/0/1]quit
[SW1]int g1/0/2
[SW1-GigabitEthernet1/0/2]port link-mode route
The configuration of the interface will be restored to the default. Continue? [Y/N]:y
[SW1-GigabitEthernet1/0/2]port link-aggregation group 1
[SW1-GigabitEthernet1/0/2]quit
[SW1]int g1/0/3
[SW1-GigabitEthernet1/0/3]port link-mode route
The configuration of the interface will be restored to the default. Continue? [Y/N]:y
[SW1-GigabitEthernet1/0/3]port link-aggregation group 1
[SW1-GigabitEthernet1/0/3]quit
SW2
# 创建三层聚合接口“1”,并为该接口配置IP地址和子网掩码。
[SW2]int Route-Aggregation 1
[SW2-Route-Aggregation1]link-aggregation mode dynamic ## 设置为动态LACP模式
[SW2-Route-Aggregation1]ip address 192.168.100.2 24
[SW2-Route-Aggregation1]quit
# 二层接口是不能加入三层聚合接口组的
# 需要我们手动把二层接口改为三层接口,才能成功加组
[SW2]int range g1/0/1 to g1/0/3
[SW2-if-range]port link-mode route
[SW2-if-range]port link-aggregation group 1
[SW2-if-range]quit
查看SW1所有聚合组的详细信息
[SW1]display link-aggregation verbose
查看SW1聚合接口地址
[SW1]dis ip int brief
查看SW1三层聚合接口能和SW2的三层聚合端口互通
三层聚合链路负载分担
SW1
# 创建三层聚合接口“1”,并为该接口配置IP地址和子网掩码。
# 并设置聚合接口“1”以源IP来进行负载分担
[SW1]int Route-Aggregation 1
[SW1-Route-Aggregation1]link-aggregation load-sharing mode source-ip
[SW1-Route-Aggregation1]ip address 192.168.100.1 24
[SW1-Route-Aggregation1]quit
# 二层接口是不能加入三层聚合接口组的
# 需要我们手动把二层接口改为三层接口,才能成功加组
[SW1]int g1/0/1
[SW1-GigabitEthernet1/0/1]port link-mode route # 修改成三层接口
The configuration of the interface will be restored to the default. Continue? [Y/N]:y[SW1-GigabitEthernet1/0/1]port link-aggregation group 1
[SW1-GigabitEthernet1/0/1]quit
[SW1]int g1/0/2
[SW1-GigabitEthernet1/0/2]port link-mode route
The configuration of the interface will be restored to the default. Continue? [Y/N]:y
[SW1-GigabitEthernet1/0/2]port link-aggregation group 1
[SW1-GigabitEthernet1/0/2]quit
[SW1]int g1/0/3
[SW1-GigabitEthernet1/0/3]port link-mode route
The configuration of the interface will be restored to the default. Continue? [Y/N]:y
[SW1-GigabitEthernet1/0/3]port link-aggregation group 1
[SW1-GigabitEthernet1/0/3]quit
SW
# 创建三层聚合接口“1”,并为该接口配置IP地址和子网掩码。
# 并设置聚合接口“1”以源IP来进行负载分担
[SW1]int Route-Aggregation 1
[SW1-Route-Aggregation1]link-aggregation load-sharing mode source-ip
[SW2-Route-Aggregation1]ip address 192.168.100.2 24
[SW2-Route-Aggregation1]quit
# 二层接口是不能加入三层聚合接口组的
# 需要我们手动把二层接口改为三层接口,才能成功加组
[SW2]int range g1/0/1 to g1/0/3
[SW2-if-range]port link-mode route
[SW2-if-range]port link-aggregation group 1
[SW2-if-range]quit
#SW1所有聚合接口所对应聚合组内采用的聚合负载分担类型
[SW1] display link-aggregation load-sharing mode interface
Route-Aggregation1 Load-Sharing Mode:
source-ip address