天天看点

高可用性—“链路聚合”功能详解,如何区分动态汇聚和静态汇聚?

链路聚合(Link Aggregation)是将多条物理链路捆绑在一起成为一条逻辑链路,从而增加链路带宽及冗余的技术。

高可用性—“链路聚合”功能详解,如何区分动态汇聚和静态汇聚?

链路聚合技术主要有以下三个优势:

  • 增加带宽

链路聚合接口的最大带宽可以达到各成员接口带宽之和。

  • 提高可靠性

当某条活动链路出现故障时,流量可以切换到其他可用的成员链路上,从而提高链路聚合接口的可靠性。

  • 分担负载

在一个链路聚合组内,可以实现在各成员活动链路上的负载分担。

  • Eth-trunk口
  • 链路聚合组(Link Aggregation Group)将多条物理链路汇聚成一条逻辑链路,形成的接口就叫Eth-trunk口,它能实现带宽叠加和高可靠性。每个聚合组都对应一个Eth-trunk口;
  • 成员接口和成员链路
  • Eth-trunk下的所有物理口均是成员接口,其对应的链路为成员链路;
  • 活动接口和活动链路
  • 转发数据的接口称为活动接口,该接口对应的链路为活动链路;
  • 非活动接口和非活动链路
  • 概念与上述相反;
  • 活动接口数上限阈值
  • 为保证带宽可靠性,Eth-trunk口中可存在的最大活动接口数,Eth-trunk口中的活动接口达到上限阈值后再向其中添加成员接口,新加入的成员口链路状态为down,作为备份使用;
  • 例如:Eth-trunk口活动接口数上线阈值为5,开始时向Eth-trunk口中添加了5个成员口,这5个成员口链路状态都是UP,均为活动接口。后续向Eth-trunk口添加第6个成员接口,该口状态为DOWN,其链路作为备份使用,前5个口如有问题便顶上去。
  • 活动接口数下限阈值
  • 为保证最小带宽,聚合组中可存在的最小活动接口数,如活动链路小于下限阈值,Eth-trunk口状态变成DOWN;
  • 例如:每条物理链路能提供1G的带宽,现在最小需要2G的带宽,那么活动接口数下限阈值必须要大于等于2,否则Eth-trunk为DOWN。

根据是否启用链路聚合控制协议LACP,链路聚合分为”静态”和“动态(LACP)”两种聚合模式。

静态聚合:Eth-Trunk的建立、成员接口的加入由手工配置,没有链路聚合控制协议的参与,所有活动参与流量分担,又称手工负载分担模式。

动态聚合:基于IEEE802.3ad标准的LACP,链路聚合控制协议是一种实现链路动态聚合与解聚合的协议。LACP通过链路聚合控制协议数据单元LACPDU(Link Aggregation Control Protocol Data Unit)与对端交互信息。

高可用性—“链路聚合”功能详解,如何区分动态汇聚和静态汇聚?

LACPDU是一个二层组播报文,交互双方会通告自己的系统优先级、MAC地址、接口优先级、接口号和操作Key等信息。对端接收到这些信息后,将这些信息与自身接口所保存的信息比较以选择能够聚合的接口,双方对哪些接口能够成为活动接口达成一致,确定活动链路。

高可用性—“链路聚合”功能详解,如何区分动态汇聚和静态汇聚?

数据包有源目的MAC、源目的IP、源目的端口等属性,在Eth-trunk口上转发数据时依赖数据包的参数,从而选择物理链路实现负载分担。

Eth-Trunk采用逐流负载分担的机制,这种机制把数据帧中的地址通过HASH算法生成HASH-KEY值,然后根据这个数值在Eth-Trunk转发表中寻找对应的出接口,不同的MAC或IP地址HASH得出的HASH-KEY值不同,从而出接口也就不同,这样既保证了同一数据流的帧在同一条物理链路转发,又实现了流量在聚合组内各物理链路上的负载分担,即逐流的负载分担。

逐流负载分担能保证包的顺序,但不能保证带宽利用率。

负载分担模式有:

  • 基于目的IP
  • 基于目的MAC
  • 基于源目的IP
  • 基于源目的MAC
  • 基于源IP
  • 基于源MAC
高可用性—“链路聚合”功能详解,如何区分动态汇聚和静态汇聚?
  1. 两端设备汇聚模式必须相同,不能一端动态而一端LACP;
  2. 为防止环路,需要先配置后接线,也可以启用STP功能防环。