
兄弟们好,又到了跟大家见面的时候了,这次向大家介绍的是链路聚合协议LACP,上次我们只说了链路聚合的手工模式,这次来说一下另一种模式叫做LACP静态。
LACP应用场景

我们看上面这张图,SW1和SW2之间要做链路聚合,如果在使用手工聚合的时候,错误的将SW1上的0/0/3接口整合到了一个聚合组中,而这个接口是连接SW3的,这样可能会导致SW1向SW2传输的数据发送到SW3上,而我们手工的Eth-Trunk不能及时检测到此故障。
如果在SW1和SW2上运行lacp协议,让他们自己协商,Eth-Trunk就会选择正确的链路作为活动链路来转发数据,从而使SW1的数据能正常到达SWB。
看到这里大家会不会有一个疑问,lacp仅仅只是为了防止我们手工聚合出错才用到的吗?我们来看下面这个场景

比如SW1,SW2作为一个公司的核心交换机,为了数据不产生拥堵我们将SW1,SW2之间三条链路做聚合,我们知道聚合之后的带宽是成员带宽之和,但是公司里现在用不到三条链路的带宽,只用两条的带宽就行了,但是又想两条线路其中的一个除了故障,另一条能够实现备份工作,这时候也可以用到我们的lacp。
问:为什么两条够用就只用了两条,三条带宽更大不更好吗?
答:两条能够实现带宽的最大利用率,如果使用三条,三条同时在进行工作,但是只需要两条就够了,增加了一条链路的劳损。
LACP模式实现原理
LACP模式也成为M:N模式,其中M条链路处于活动状态转发数据,N条链路处于非活动状态作为备份链路。
在LACP模式的Eth-Trunk中加入成员接口后,这些接口向对端通告自己的系统优先级、MAC地址、接口优先级、接口号等信息。对端收到之后将这些信息与自身接口保存的信息作对比,然后选出能够聚合的接口,双方对哪些接口能够成为活动接口达成一致,才能确定活动链路。
LACP活动链路的选举
①两端设备根据系统lacp优先级确定主动端
在启动LACP之后的设备都会有一个LACP系统优先级(默认32768),越小越优,如果两端优先级相同比较MAC也是越小越优。
②在主动端的成员口内选择活动接口,被动端跟随主动端的活动接口决定自己的活动端口。
加入到Eth-Trunk口中的成员接口默认都会有一个LACP的接口优先级(默认32768),越小越优,如果主动端的两个接口优先级相同比较接口号,也是越小越优。
取个例子

已上图为例,如果我们设置最大活动链路为2条,而聚合了3条链路。首先A B 之间会互相发送LACP协商报文,根据报文中的内容选举出主动端设备,这时候A的系统优先级低,所以A成为主动端,然后A会在自己的三个成员接口中比较接口优先级选择出活动接口,可以看到A的上面两个端口的优先级较小,所以上面两条链路成为活动链路,B跟随A的接口对应的自己的端口选择出活动端口成为活动链路,也就是说现在A B之间的两条线路成为了活动链路。
Eth-Trunk默认最大支持的活动链路为8条,可以进行修改。当活动链路断了之后会从主动端的非活动链路中选择一个接口优先级低的接替活动链路的工作。我们可以在Eth-Trunk中开启抢占功能,开启抢占之后当活动链路恢复,由于自己的优先级比较高,将重新成为活动端口。
配置思路
①创建Eth-Trunk
②配置Eth-Trunk为LACP模式
③将成员接口加入Eth-Trunk。
④配置最大活动接口数量,实现保证带宽的情况下提高网络的可靠性。
⑤开启抢占功能,当活动端口恢复后可以成为活动链路
⑥配置系统优先级,确定主动端,按照主动端设备的接口选择活动接口。
⑦配置接口优先级,确定活动链路接口,优先级高的接口将被选作活动接口。
配置命令
[Huawei]int Eth-Trunk 1 //创建聚合组 1
[Huawei-Eth-Trunk1]mode lacp-static //修改为LACP模式
[Huawei-Eth-Trunk1]trunkport G 0/0/1 0/0/2 //将0/0/1 2加入到聚合组中
[Huawei-Eth-Trunk1]max active-linknumber 2 //配置最大活动链路为两条
[Huawei-Eth-Trunk1]lacp preempt enable //开启抢占功能
[Huawei]lacp priority 100 //修改系统优先级为100
[Huawei-GigabitEthernet0/0/1]lacp priority 100 //修改接口优先级为100