链路聚合技术
一、链路聚合
1、链路聚合的概念
链路聚合可以将多个物理接口逻辑上捆绑成一个逻辑接口,即将多条物理链路,逻辑上看作是一条物理链路,实现在不提升硬件的情况下,达到叠加链路带宽、链路备份、负载分担的目的。
2、链路聚合的条件
实现链路聚合需满足以下条件:
- 链路聚合的所有成员接口需要具有相同的传输速率、双工模式、接口类型、PVID、允许列表。
- 聚合接口的成员接口的两端必须分别在同一台设备上,不能做跨设备的链路聚合。
注意:在华为设备中,物理接口在进行聚合的时候,不能做任何配置,只能在聚合之后再做配置,并且仅能在聚合口中配置。
3、成员接口和成员链路
组成Eth-Trunk接口的各个物理接口称为成员接口;成员接口对应的链路就是成员链路。在LACP模式中,会再划分活动接口和活动链路、非活动接口和非活动链路。
- 活动接口和活动链路:选中(Selected)接口,是参与数据转发的成员接口。活动接口对应的链路称为活动链路。在链路聚合组中,只有活动链路负责转发数据。
- 非活动接口和非活动链路:非选中(Unselected)接口,是不参与转发数据的成员接口。非活动接口对应的链路被称为非活动链路(Inactive link)。这些链路在正常情况下不参与数据转发,但在活动链路出现故障时,非活动链路可能会被激活以接替故障链路的工作。
二、链路聚合模式
根据是否开启LACP,链路聚合分为两个模式:手工模式、LACP模式。下面介绍两种模式的配置。
1、手工模式
LSW1配置:
# 创建聚合接口
[sw1]interface Eth-Trunk 0
# 将物理接口划入到聚合接口中
[sw1-Eth-Trunk0]trunkport GigabitEthernet 0/0/1
[sw1-Eth-Trunk0]trunkport GigabitEthernet 0/0/2
LSW2配置:
[sw1]interface Eth-Trunk 0
[sw1-Eth-Trunk0]trunkport GigabitEthernet 0/0/1
[sw1-Eth-Trunk0]trunkport GigabitEthernet 0/0/2
查看聚合接口:
[sw1]dis eth-trunk 0
Eth-Trunk0's state information is:
WorkingMode: NORMAL Hash arithmetic: According to SIP-XOR-DIP
Least Active-linknumber: 1 Max Bandwidth-affected-linknumber: 8
Operate status: up Number Of Up Port In Trunk: 2
--------------------------------------------------------------------------------
PortName Status Weight
GigabitEthernet0/0/1 Up 1
GigabitEthernet0/0/2 Up 1
2、LACP模式
LACP(Link Aggregation Control Protocol,链路聚合控制协议) 是一种动态链路聚合技术,属于 IEEE 802.3ad(后并入 802.1AX)标准的一部分。它允许网络设备自动协商并管理聚合链路,提供更高的带宽、负载均衡和冗余能力。
LACP模式下,两端设备所选择的活动接口数目必须保持一致,否则链路聚合组无法建立。同时,通过系统LACP优先级(默认为32768)确认主动端,值越小优先级越高。当优先级相同时,会比较MAC地址。
LSW1配置:
[sw1]int Eth-Trunk 0
# 配置LACP模式
[sw1-Eth-Trunk0]mode lacp
# 设置最大活动接口数
[sw1-Eth-Trunk0]max active-linknumber 2
# 划分接口
[sw1-Eth-Trunk0]trunkport GigabitEthernet 0/0/1 to 0/0/3
# 设置优先级,成为主动端
[sw1]lacp priority 30000
LSW2配置:
[sw2]int Eth-Trunk 0
[sw2-Eth-Trunk0]mode lacp
[sw2-Eth-Trunk0]max active-linknumber 2
[sw2-Eth-Trunk0]trunkport GigabitEthernet 0/0/1 to 0/0/3
三、负载分担
1、基于数据包的负载分担
在转发流量时,按照报文(包)到来的次序,将报文均匀地分摊到参与负载的各条链路上。在使用Eth-Trunk转发数据时,由于聚合组两端设备之间有很多条物理链路,如果每个数据帧在不同的链路上转发,则有可能导致数据帧到达对端时间不一致,从而引发数据乱序。
2、基于数据流的负载分担
按照一定的规则(如五元组:源IP地址、目的IP地址、协议号、源端口号、目的端口号),将报文分成不同的流,同一条流的报文将在同一条链路上转发。这种方式通过哈希算法等机制,确保属于同一流的所有报文都经过同一条链路,从而保持报文的顺序性。华为默认采用该模式进行负载分担。
以下命令配置流量负载均衡的哈希算法:
[sw1-Eth-Trunk0]load-balance ?
dst-ip According to destination IP hash arithmetic
dst-mac According to destination MAC hash arithmetic
src-dst-ip According to source/destination IP hash arithmetic
src-dst-mac According to source/destination MAC hash arithmetic
src-ip According to source IP hash arithmetic
src-mac According to source MAC hash arithmetic
# 华为默认使用源目IP区分数据流