目录
设备优先级的比较是:先比较优先级大小,0到32768,越小优先级越高,如果优先级相同,则使比较mac地址。
1,交换机1上聚合4条链路,交换机2上聚合3条链路,交换机1、2在通信时,交换机2接受的数据包会丢失一部分。
2,手动聚合,只是检测数据通信时,物理接口是否连通,只要网线连通,就会进行聚合,如果接收方有一个聚合口不通,那么就会出现数据丢失。
采用LACP协议的一种链路聚合模式,设备间通过链路聚合控制协议数据单元LACPDU进行交互,通过协议协商确保时同一台设备,同一个协议聚合接口的成员接口。
LACPDU中包含设备优先级,mac地址,接口优先级,接口号等。
在两个交换之间使用LACP,需要保证两个交换机之间活动接口数目保持一致,否则链路聚合无法建立。此时将一方设置为主动方,另一方为被动方,通过协商后,主动方通知被动方,那些物理上连通的接口用来进行聚合。
选择主动方以后,两端都会以主动端的接口优先级来选择活动端口。优先级高的接口会优先被选择作为活动端口。LACP接口优先级越小,优先级越高。
如果两个接口的优先级相同,则比较两个接口的优先级编号,编号越小,优先级越高。
1,当接口数目超过最大活动接口数目时:按照优先级选择出活动接口,其余接口成为备份接口。对应的链路为活动链路和非活动链路。
只有活动接口才会转发数据。
2,如果活动链路有一条怪掉,则在备份链路中选举出一条活动链路,保证带宽不变,业务转发不受影响。
1,先选举主动方交换机
2,主动方交换机选举活动接口
3,主动方发送LACPDU给被动方
4,被动方同步活动接口,活动链路创建完毕,备份链路创建完毕
1,基于数据包的负载均衡
将一个数据包分成小的分组分布在各个活动接口上进行转发,到达接收方,接收方会对数据分组进行重组,因为接受时可能是乱序接受,在重组时,就会耗费时间。
2,基于数据流的负载均衡(HW默认)
将同一条流(五元组相同的数据流)负载到一个链路,不同的流使用不同的链路,这样子既可以保证同一数据流在同一条物理链路上传递,又实现了聚合链路内各物理链路上的负载分担。
常见模式:基于源IP,源Mac,目标IP,目标Mac,源目IP,源目mac的模式。
在具体实际的业务中,会将变化频繁的参数作为负载分担的参数,根据这个参数,选择负载分担模式。
比如:如果业务中源IP不变,但是目的IP频繁变化,就可以选择基于目标IP的负载分担模式。
链路Down事件
以太网OAM检测到链路失效
lacp协议发现链路故障
接口不可用
lacp抢占模式情况下,修改备份接口优先级高于当前活动接口优先级
以上情况均会触发链路切换,链路切换的步骤:
关闭故障链路
从N条备份链路中重新选举优先级高的链路接替故障链路
被选出的备份端口,状态切换
lacp模式与手工模式的对比
对比项 | 手工模式 | LCAP模式 |
Eth-trunk建立方式 | eth-trunk的建立、成员接口的加入由手工配置 | 基于LACP协议协商报文协商活动链路与备份链路 |
数据转发方式 | 所有链路均参与数据转发,且只支持数据包转发模式 | 只有活动链路参与数据转发,支持基于数据包和数据流两种转发方式 |
跨设备链路聚合 | 不支持 | 支持 |
故障检测 | 只能检测成员链路有断开情况,不能检测链路断连、错连的情况 | 支持检测链路断开、链路断连、错连情况 |
协议支持 | 不支持 | 支持 |
1,创建链路聚合组
interface eth-trunk id
2,配置链路聚合模式
mode lacp//动态链路聚合
3,添加接口到聚合组
trunkport gi0/0/1 //将123接口添加到聚合组
4,(可选)开启不同速率的接口添加到聚合组中的功能
mixed-rate link enable
5,配置交换机lacp优先级
lacp priority 值
6,配置接口优先级,进入端口修改
lacp priority 值
7,配置最大活动接口数
max active-linknumber 值
8,配置最小活动接口数
min active-linknumber 值
交换1、2的配置
- interface eth-turnk 1 //创建链路聚合口1
- mode lacp-static //设置链路聚合的为动态模式
- trunkport gi0/0/1 // 将接口1,2,3添加到链路聚合组
-
- port link-type trunk
- port turnk allow-pass vlan 10 20
将交换机1作为主动方
- lacp priority 200 //将交换机1优先级设置为200
- interface eth-trunk 1 //进入接口1
- max active-linknumber 2//最大链路聚合数为2,第三条做链路备份
配置完成后,查看配置的链路聚合口
display eth-trunk