目录
五、LACP模式Eth-Trunk(链路聚合)建立的过程如下:
以太网链路聚合Eth-Trunk简称链路聚合,它通过将多条以太网物理链路捆绑在一起成为一条逻辑链路,从而实现增加链路带宽的目的。同时,这些捆绑在一起的链路通过相互间的动态备份,可以有效地提高链路的可靠性。可以实现流量负载分担。
-
- 每个Eth-Trunk接口下最多可以包含8个成员接口。
- 成员接口不能配置某些业务和静态MAC地址。
- 成员接口加入Eth-Trunk时,必须为缺省的接口类型。
- Eth-Trunk接口不能嵌套,即Eth-Trunk接口的成员接口不能是Eth-Trunk接口。
- 一个以太网接口只能加入到一个Eth-Trunk接口,如果需要加入其它Eth-Trunk接口,必须先退出原来的Eth-Trunk接口。
- 一个Eth-Trunk接口中的成员接口必须是同一类型。
- 如果本地设备使用了Eth-Trunk,与成员接口直连的对端接口也必须捆绑为Eth-Trunk接口,两端才能正常通信。
- 当成员接口加入Eth-Trunk后,学习MAC地址或ARP地址时是按照Eth-Trunk来学习的,而不是按照成员接口来学习。
- Eth-Trunk链路两端相连的物理接口的数量、速率、双工方式、流控配置、jumbo必须一致。
- 增加链路带宽
- 实现链路冗余,提高链路可靠性
- 实现流量负载分担
- 强制模式,没有协商机制,有几条链路用几条链路,(默认模式)
手工模式下,Eth-Trunk的建立、成员接口的加入由手工配置,没有链路聚合控制协议LACP的参与。DeviceA与DeviceB之间创建Eth-Trunk,手工模式下三条活动链路都参与数据转发并分担流量。当一条链路故障时,故障链路无法转发数据,链路聚合组自动在剩余的两条活动链路中分担流量。
手工负载分担的方式缺点:
A端配置负载分担后A端立刻就会起来,但是B端还未配置还是down的,A端的多条链路都会发送数据,没有协商机制心跳报文,有可能造成环路问题。
可以自定义备份链路,“灵活”有协商报文(推荐)? ? lacp? 链路汇聚控制协议
LACP动态模式只有在数据中心级别的交换机才会使用(且只有华为厂家有动态的lacp功能)
为了提高Eth-Trunk的容错性,并且能提供备份功能,保证成员链路的高可靠性,出现了链路聚合控制协议LACP(Link Aggregation Control Protocol)。聚合链路形成以后,LACP负责维护链路状态,在聚合条件发生变化时,自动调整或解散链路聚合。
例如:4条链路配置其中3条为活跃状态,另外1条作为备用 m:n备份
- 缺省情况下,三层Eth-Trunk接口的负载分担模式为src-dst-ip。
Eth-Trunk的负载分担是逐流进行的,本端与对端的负载分担模式可以不一致,两端互不影响。
Eth-Trunk's load-sharing is a flow-by-flow xff0c; this and the end-to-end load-sharing mode can be inconsistent xff0c; the ends do not affect each other.
Eth-Trunk支持最大加入接口数为8个
Eth-Trunk位于MAC与LLC子层之间,属于数据链路层
负载分担分为两种模式:逐包/逐流(如果数据流的源目MAC一样则默认此为同一条流)默认使用的是逐流(源目mac)的负载分担算法
Load-sharing is divided into two modes: xff1a; xff08; if the source of the data stream is MAC, this is defaulted to the same stream xff09; default is the load-sharing algorithm for stream xff08; source xff09;
- 逐包的负载分担
在使用Eth-Trunk转发数据时,由于聚合组两端设备之间有多条物理链路,就会产生同一数据流的第一个数据帧在一条物理链路上传输,而第二个数据帧在另外一条物理链路上传输的情况。这样一来同一数据流的第二个数据帧就有可能比第一个数据帧先到达对端设备,从而产生接收数据包乱序的情况。
When transmitting data using Eth-Trunk, xff0c; because there are multiple physical links between equipment at both ends of the polymer group xff0c; the first data frame that produces the same data stream transmits xff0c on the path of a physical chain; and the second data frame transmits on the path of the other physical chain. The second data frame that follows the same data stream is likely to reach the end device xff0c before the first data frame arrives; and thus the receipt of the data package disorder.
- 逐流的负载分担
这种机制把数据帧中的地址通过HASH算法生成HASH-KEY值,然后根据这个数值在Eth-Trunk转发表中寻找对应的出接口,不同的MAC或IP地址HASH得出的HASH-KEY值不同,从而出接口也就不同,这样既保证了同一数据流的帧在同一条物理链路转发,又实现了流量在聚合组内各物理链路上的负载分担。逐流负载分担能保证包的顺序,但不能保证带宽利用率。
This mechanism produces HASHH-KEY & #xff0c via HASHH algorithms; then, based on this value, the corresponding outlet interface & #xff0c from the Eth-Trunk forwarding table; the difference #xff0c from the HAC or IP address HSH xff0c; and the resulting difference in the interface xff0c; this ensures the transmission of the same data stream xff0c; and the burden-sharing of the flow along the physical links within the group.
Eth-Trunk模块内部维护一张转发表,这张表由以下两项组成:
- HASK-key指:HASK-key值是根据数据包的MAC地址或者IP地址等,经过HASH(哈希)算法计算得出
1、哈希算法先进行计算,最多可以计算出8个值(对应Eth-Trunk支持最大加入接口数为8个),
2、然后进行取余计算(除以8取余)分别为 0-7数值
3、.Eth-Trunk模块根据HASH-KEY值在转发表中查找对应的接口,把数据帧从该接口发送出去。
- 接口号:Eth-Trunk转发表现分布和设备每个Eth-Trunk支持加入的成员接口数量相关,不同的HASH-KEY值对应不同的出接口。
int eth-trunk xx local-preference enable \\本地优先转发,默认是开启的,本地优先转发是针对堆叠中的Eth-Trunkde的一项技术
①两端互相发送LACPDU(协商)报文。
在DeviceA和DeviceB上创建Eth-Trunk并配置为LACP模式,然后向Eth-Trunk中手工加入成员接口。此时成员接口上便启用了LACP协议,两端互发LACPDU报文。
②确定主动端和活动链路。
注册有任何问题请添加 微信:MVIP619 拉你进入群
打开微信扫一扫
添加客服
进入交流群
发表评论