链路聚合前言概述

链路聚合是将多个物理接口捆绑为一个逻辑接口,来达到增加链路带宽的目的,在实现增大带宽的同时,链路聚合采用备份链路的机制,还可以有效提高设备之间链路的可靠性。

链路聚合优势

传统技术中,网络规模扩大,需增加带宽,通常需更换高速率的接口板和更换支持高速率接口板的设备的方式,此种方案需要耗费高额的费用,且不灵活。

链路聚合能够提高链路带宽,增强网络可用性,支持负载分担。

链路聚合应用场景
在这里插入图片描述

链路聚合一般部署在核心节点(骨干链路),以提升整个网络的数据吞吐量。

链路聚合模式

链路聚合有两种,分别是手工负载分担模式与LACP模式。

模式概述
手工负载分担模式手工负载分担模式下所有活动接口都参与数据的转发,分担负载流量
LACP模式LACP模式则支持备份

数据流控制

在一个聚合口中,聚合链路两端的物理口(即成员口包含二层/三层接口)的所有参数必须一致,包括物理口的数量,传输速率,双工模式和流量控制模式。

数据流与数据流控制

数据流可以看作是一组MAC地址和IP地址相同的帧,如两台设备间的SSH或SFTP连接可以看做一个数据流。
数据流在聚合链路传输,数据顺序必须保持不变。

普通链路与链路聚合的传输方式

普通链路即未配置链路聚合的链路,用一条物理链路来传输数据,那么一个数据流中的帧总是能按正确的顺序到达目的地。

链路聚合模式中,多条物理链路被绑定成一条聚合链路,一个
数据流中的帧通过不同的物理链路传输。如果第一个帧通过一条物理链路传输,第二个帧通过另外一条物理链路传输,这样一来同一数据流的第二个数据帧就有可能比第一个数据帧帧到达对端设备,从而产生接收数据包乱序的情况。

逐流负载分担

为避免数据包乱序,Eth-Trunk采用逐流负载分担的机制,此机制把IP或MAC通过HASH算法生成不同HASH-KEY值,根据KEY值 在Eth-Trunk转发表中寻找对应的出接口,保证了同一数据流的帧在同一条 物理链路转发,又实现了流量在聚合组内 各物理链路的负载分担。
逐流负载分担可以保证数据包的顺序,但无法保证带宽利用率。

负载分担类型

负载分担的类型主要包括以下几种,用户可以根据具体应用选择丌同的负载分担类型。

序号类型
1根据报文的源MAC地址进行负载分担
2根据报文的目的MAC地址进行负载分担
3根据报文的源IP地址进行负载分担
4根据报文的目的IP地址进行负载分担
5根据报文的源MAC地址与目的MAC地址进行负载分担
6根据报文的源IP地址与目的IP地址进行负载分担
7根据报文的VLAN、源物理端口等对L2、IPv4、IPv6和MPLS报文进行增强型负载分担。

以太网接口和链路配置

拓扑图
在这里插入图片描述
在2台华为的S5700系列交换机配置链路聚合功能,以提高交换机间链路带宽及可靠性。

首先修改交换机的设备名称,然后查看S1上G0/0/9和G0/0/10接口的详细信息。

#
undo terminal monitor  //关闭终端显示
system-view  
sysname S1 
display interface GigabitEthernet 0/0/9 //查看G0/0/9接口详细信息
display interface GigabitEthernet 0/0/10
#

在S1、S2在配置接口的速率100Mbits和全双工模式之前应先关闭接口的自协商功能

#
interface GigabitEthernet 0/0/9  
undo negotiation auto   //关闭自协商
speed 100   //速率
duplex full  //全双工
quit
interface GigabitEthernet 0/0/10
undo negotiation auto
speed 100
duplex full
quit

手动链路聚合模式

配置手动模式的链路聚合,在S1和S2创建Eth-trunk1,将接口加入Eth-Trunk1(注意:将接口加入Eth-Trunk前需确认成员接口下没有任何配置)

interface eth-trunk 1  //创建eth-trunk1
quit
inter g0/0/9
eth-trunk 1
quit
inter g0/0/10
eth-trunk 1

在S1验证Eth-trunk配置结果

display eth-trunk 1

回显信息中,选中部分表明Eth-Trunk工作正常,成员接口都已加入。
在这里插入图片描述

静态LACP模式配置

如有配置手动链路模式,需删除S1与S2的G0/0/9和G0/0/10接口下的配置

#
interface gigabitethernet0/0/9
undo eth-trunk
quit
interface GigabitEthernet 0/0/10
undo Eth-Trunk
#

在S1和S2创建eth-trunk 1并配置为静态lacp模式,将S1和S2接口g0/0/9和g0/0/10加入eth-trunk。

#
interface eth-trunk 1
mode lacp-static
quit
interface gigabitethernet 0/0/9
eth-trunk 1
quit
interface gigabitethernet 0/0/10
eth-trtnk 1
quit
#
display eth-trunk  //查看交换机eth-trunk信息,查询是否协商成功
#

在S1上配置lacp的系统优先级为100,使其成为lacp主动端,

lacp priority 100

配置接口的优先级确定活动链路

#
interface gigabitethernet 0/0/9
lacp priority 100
quit
interface gigabitethernet 0/0/10
lacp priority 100
#
display eth-trunk 1 //验证配置结果

链路聚合实验(手工负载分担)

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
ping测试
在这里插入图片描述

SW1配置
<Huawei>u t m
Info: Current terminal monitor is off.
<Huawei>sys	
<Huawei>system-view 
Enter system view, return user view with Ctrl+Z.
[Huawei]sys SW1
[SW1]interface eth	
[SW1]interface Eth-Trunk 1
[SW1-Eth-Trunk1]mode ?
  lacp-static  Static working mode
  manual       Manual working mode

[SW1-Eth-Trunk1]mode man	
[SW1-Eth-Trunk1]mode manual ?
  load-balance  Load balance working mode

[SW1-Eth-Trunk1]mode manual load-balance
[SW1-Eth-Trunk1]quit
[SW1]interface g0/0/1
[SW1-GigabitEthernet0/0/1]eth	
[SW1-GigabitEthernet0/0/1]eth-trunk 1
Info: This operation may take a few seconds. Please wait for a moment...done.
[SW1-GigabitEthernet0/0/1]quit
[SW1]interface g0/0/2
[SW1-GigabitEthernet0/0/2]eth-	
[SW1-GigabitEthernet0/0/2]eth-trunk 1
Info: This operation may take a few seconds. Please wait for a moment...done.
[SW1-GigabitEthernet0/0/2]quit
[SW1]
SW2配置
<Huawei>u t m
Info: Current terminal monitor is off.
<Huawei>sys	
<Huawei>system-view 
Enter system view, return user view with Ctrl+Z.
[Huawei]sys SW2
[SW2]eth	
[SW2]interfa	
[SW2]interface eth	
[SW2]interface Eth-Trunk 1

备注:mode 选择的是链路聚合的模式,manual代表手工负载分担
     另一种则是静态LACP模式,其余配置

[SW2-Eth-Trunk1]mode ?
  lacp-static  Static working mode
  manual       Manual working mode

[SW2-Eth-Trunk1]mode manual ?
  load-balance  Load balance working mode

[SW2-Eth-Trunk1]mode manual load-bal	
[SW2-Eth-Trunk1]mode manual load-balance ?
  <cr>  

[SW2-Eth-Trunk1]mode manual load-balance 
[SW2-Eth-Trunk1]quit
[SW2]inter g0/0/1
[SW2-GigabitEthernet0/0/1]eth	
[SW2-GigabitEthernet0/0/1]eth-trunk 1
Info: This operation may take a few seconds. Please wait for a moment...done.
[SW2-GigabitEthernet0/0/1]quit
[SW2]inter g0/0/2
[SW2-GigabitEthernet0/0/2]erh	
[SW2-GigabitEthernet0/0/2]eth	
[SW2-GigabitEthernet0/0/2]eth-trunk 1
Info: This operation may take a few seconds. Please wait for a moment...done.
[SW2-GigabitEthernet0/0/2]quit




备注:NORMAL(手工负载分担方式)为SW1与SW2的工作模式,
GE0/0/1与GE0/0/2接口已经添加到eth-trunk1中,状态为up。

[SW2]disp eth-trunk 1
Eth-Trunk1'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      

测试eth-trunk 1故障,将GE0/0/1关闭(两台设备接口必须同时shutdown)
[SW2]

静态LACP配置

<Huawei>u t m
Info: Current terminal monitor is off.
<Huawei>sys	
<Huawei>system-view 
Enter system view, return user view with Ctrl+Z.
[Huawei]sys	
[Huawei]sysname SW1
[SW1]inter eth	
[SW1]inter Eth-Trunk 1
[SW1-Eth-Trunk1]q
[SW1]inter Eth-Trunk 1
[SW1-Eth-Trunk1]mode ?
  lacp-static  Static working mode
  manual       Manual working mode
  
[SW1-Eth-Trunk1]mode lacp-static 
[SW1-Eth-Trunk1]q
[SW1]inter g0/0/1
[SW1-GigabitEthernet0/0/1]eth	
[SW1-GigabitEthernet0/0/1]eth-trunk 1
Info: This operation may take a few seconds. Please wait for a moment...done.
[SW1-GigabitEthernet0/0/1]quit
[SW1]inter g0/0/2
[SW1-GigabitEthernet0/0/2]eth	
[SW1-GigabitEthernet0/0/2]eth-trunk 1
Info: This operation may take a few seconds. Please wait for a moment...done.
[SW1-GigabitEthernet0/0/2]quit
[SW1]inter g0/0/5
[SW1-GigabitEthernet0/0/5]eth 	
[SW1-GigabitEthernet0/0/5]eth-trunk 1
Info: This operation may take a few seconds. Please wait for a moment...done.
[SW1-GigabitEthernet0/0/5]quit

备注:修改LACP的优先级,优先级小的优先


[SW1]lacp priority 100  
[SW1]disp eth	
[SW1]disp eth-trunk 1
Eth-Trunk1's state information is:
Local:
LAG ID: 1                   WorkingMode: STATIC                               
Preempt Delay: Disabled     Hash arithmetic: According to SIP-XOR-DIP         
System Priority: 100        System ID: 4c1f-cc70-2016                         
Least Active-linknumber: 1  Max Active-linknumber: 8                          
Operate status: up          Number Of Up Port In Trunk: 3                     
--------------------------------------------------------------------------------
ActorPortName          Status   PortType PortPri PortNo PortKey PortState Weight
GigabitEthernet0/0/1   Selected 1GE      32768   2      305     10111100  1     
GigabitEthernet0/0/2   Selected 1GE      32768   3      305     10111100  1     
GigabitEthernet0/0/5   Selected 1GE      32768   6      305     10111100  1     

Partner:
--------------------------------------------------------------------------------
ActorPortName          SysPri   SystemID        PortPri PortNo PortKey PortState
GigabitEthernet0/0/1   32768    4c1f-cc6e-76d3  32768   2      305     10111100
GigabitEthernet0/0/2   32768    4c1f-cc6e-76d3  32768   3      305     10111100
GigabitEthernet0/0/5   32768    4c1f-cc6e-76d3  32768   6      305     10111100
    
[SW1]
Logo

开放原子开发者工作坊旨在鼓励更多人参与开源活动,与志同道合的开发者们相互交流开发经验、分享开发心得、获取前沿技术趋势。工作坊有多种形式的开发者活动,如meetup、训练营等,主打技术交流,干货满满,真诚地邀请各位开发者共同参与!

更多推荐