鍊路聚合(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
- 兩端裝置彙聚模式必須相同,不能一端動态而一端LACP;
- 為防止環路,需要先配置後接線,也可以啟用STP功能防環。