本章要介绍的叫做链路聚合,华为里面叫做Eth-Trunk,在介绍链路聚合之前呢,我们首先来看一它的应用场景
链路聚合的产生
在大型的网络中采用分层划的网络结构,所有设备的流量在转发到其他网络前都会汇聚到核心层,再由核心区设备转发到其他网络,或者转发到外网。因此,在核心层设备负责数据的高速交换时,容易发生拥塞。在核心层部署链路聚合,可以提升整个网络的数据吞吐量,解决拥塞问题。
补充:
①接入层将终端设备,如pc、无线ap、打印机、等连接到网络
②分布层最主要是对接入层做汇聚使用,在汇聚层的时候会将接入层的广播域进行隔离。
③核心层上面一般会用来连接外网,是整个网络的流量的汇聚点,流量的高速转发核心。
聚合的原理
链路聚合是把两台设备之间的多条物理链路聚合在一起,当做一条逻辑链路来使用。这两台设备可以是一对路由器,一对交换机,或者是一台路由器和一台交换机。一条聚合链路可以包含多条成员链路,默认最多为8条
聚合的好处
①增加带宽②冗余备份③负载分担
举个例子,我们看到上面这张图,两台核心交换机之间连接了两条线,正常境况下STP会阻塞掉其中的一条线路,但是我们可以通过在两个交换上部署链路聚合,把两条链路聚合成一个逻辑链路,这时候聚合链路的带宽等于两条物理链路的带宽之和,而且当一条物理链路断开之后,另一条物理链路仍可以正常工作,而且还可以把流量分散到多个不同的成员口上,通过成员链路把流量发送到同一个目的地,将网络产生拥塞的可能性降到最低。
链路聚合有两种模式
①手动聚合模式:是指管理员手动配置两台设备参数进行手动聚合,这个模式下所有被聚合的链路都参与流量的转发工作,所有在进行工作的链路都叫活动链路。
②自动聚合模式:两台设备通过链路聚合协议(LACP)进行协商聚合参数,LACP协商会选举活动接口和非活动接口,LACP模式也叫M:N模式。M代表活动成员链路,用于在负载均衡模式中转发数据。N代表非活动链路,用于冗余备份。如果一条活动链路发生故障,该链路传输的数据被切换到一条优先级最高的备份链路上,这条备份链路转变为活动状态。
两者区别:在静态LACP模式中,一些链路充当备份链路。在手动负载均衡模式中,所有的成员口都处于转发状态,(本章只介绍手动模式)
手动模式
以上面交换机交换机为例,想要把两条链路聚合成为一条链路,来增加链路的带宽
配置思路:
1. 在设备上创建Eth-Trunk,配置Eth-Trunk为手动模式
2. 将成员接口加入Eth-Trunk。
3.查看聚合信息
配置命令:
[SWA]interface Eth-Trunk 1 //创建Eth-trunk
[SWA-Eth-Trunk1]mode manual //修改模式为手动模式
[SWA-GigabitEthernet0/0/1]eth-trunk 1 //将接口放入聚合组1
[SWA]display eth-trunk 1 //查看聚合信息
[SWA]display interface eth-trunk 1 //查看聚合口信息
负载分担的多种方式
根据报文的源MAC地址进行负载分担;
根据报文的目的MAC地址进行负载分担;
根据报文的源IP地址进行负载分担;
根据报文的目的IP地址进行负载分担;
根据报文的源MAC地址和目的MAC地址进行负载分担;
根据报文的源IP地址和目的IP地址进行负载分担;
这时候大家思考一个问题
配置了链路聚合后,多条物理链路被绑定成一条聚合链路,一个数据流中的帧通过不同的物理链路传输。如果第一个帧通过一条物理链路传输,第二个帧通过另外一条物理链路传输,这样一来同一数据流的第二个数据帧就有可能比第一个数据帧先到达对端设备,从而产生接收数据包乱序的情况
也就是说SW1有一组数据不能一次性全发给SW2,分多次发送,第一次发送了一个数据帧走了上面这条路,第二次发了一个数据帧走了下面这条路,如果第二个数据帧比第一个数据帧先到了SW2,就产生了数据包乱序的情况,导致识别错误
为了避免这种情况的发生,Eth-Trunk采用逐流负载分担的机制,这种机制把数据帧中的地址通过特殊算法生成一个数值,然后根据这个数值在Eth-Trunk转发表中寻找对应的出接口,不同的MAC或IP地址运算得出的数值不同,从而出接口也就不同,这样既保证了同一数据流的帧在同一条物理链路转发,又实现了流量在聚合组内各物理链路上的负载分担,即逐流的负载分担。逐流负载分担能保证包的顺序,但不能保证带宽利用率
聚合的一些注意点
①聚合的端口需要具有相同的(两端):接口数量,接口带宽,接口延时,接口双工模式。
②只能删除不包含任何成员的Eth-Trunk口
③二层加入Eth-Trunk的接口必须是hybrid接口
④一个Eth-Trunk口不能充当其他Eth-Trunk口的成员口
⑤一台接口只能加入一个Eth-Trunk
⑦接口加入Eth-Trunk口后,Eth-Trunk口学习MAC地址,成员口不再学习。
⑧路由器聚合,将接口放入同一个Eth-Trunk,给Eth-Trunk接口配置ip地址
⑨ 交换机三层口聚合,把需要聚合的接口放入同一个vlan,为vlan配置地址
⑥如果一个对端接口直接和本端Eth-Trunk口的一个成员口相连,该对端接口也必须加入一个Eth-Trunk口。否则两端无法通信。