鏈路聚合,是將多個物理接口捆綁成一個邏輯接口的技術。該技術可以實現增加帶寬、提高鏈路可靠性和負載分擔的功能,在高可靠、高性能網絡設計中應用廣泛。
鏈路聚合在各個廠商技術文檔名稱稍有出入,思 科Cisco稱channelgroup,華為 HUAWEI稱 ethtrunk,華三 H3C稱 bridgeaggregation,銳捷RUIJIE聚合組稱port-group。
基于IEEE802.3ad標準的LACP(Link Aggregation Control Protocol,鏈 路匯聚控制協議)是一種實現鏈路動態匯聚與解匯聚的通用協議,為交換數據的設備提供一種標準的協商方式。協議報文直接封裝在Ethernet Header里,協議 號 :0x8809。Ethernet Header里的Destination MAC = 01:80:c2:00:00:02,這個是保留的、特殊組播地址。可以嘗試使用抓包Filter, Destination MAC= 01:80:c2:00:00:02捕獲。

圖1 鏈路聚合三種工作模式
LACP協議通過LACPDU(LinkAggregation Control Protocol Data Unit,鏈 路匯聚控制協議數據單元)與對端交互信息。使用某端口的LACP協議后,該端口將通過發送LACPDU向對端通告自己的系統優先級、系統MAC、端口優先級、端口號和操作Key。對端接收到這些信息后,將這些信息與其他端口所保存的信息比較以此選擇能夠匯聚的端口,從而雙方可以對端口加入或退出某個動態匯聚組達成一致。
鏈路聚合有三種工作模式,如圖1所示。
1.手 工匯聚,不啟動LACP協議,聚合組、組成員接口的加入或刪除完全由手工來配置。該模式下所有活動成員接口(selected)都參與數據的轉發,分擔負載流量,因此稱為手工負載分擔模式。
2.靜態LACP聚合模式下,啟動LACP協議,手工配置聚合組,聚合組成員接口的加入或刪除,都是由手工配置完成,并且還要通過LACP協議交互確定這些手工添加的聚合組成員接口是否可以真正被聚合在一起。端口有兩種狀態:Selected或Standby。Selected端口和Standby端口都能收發LACP協議,但Standby端口不能轉發用戶報文。該模式由LACP協議確定聚合組中的活動和非活動鏈路,又稱為M∶N模式,即M條活動鏈路與N條備份鏈路的模式。
3.動態LACP聚合模式下,不需要創建聚合組,也不需要指定哪些接口作為聚合組成員接口,兩臺設備會通過LACPDU協商自動完成鏈路的聚合操作。聚合組內的各成員端口上均啟用LACP協議,其端口狀態(加入,離開)通過該協議自動進行維護。端口可能處于兩種狀態:Selected或 Standby。Selected端 口和Standby端口都能收發LACP協議,但Standby端口不能轉發用戶報文。表1為三種模式的區別。
手工匯聚鏈路聚合和靜態LACP聚合都是人為配置的聚合組,不允許系統自動添加或刪除聚合端口。不同的是,手工匯聚下不啟用LACP協議報文參與活動接口的選擇,而靜態LACP聚合啟用LACP協議。動態LACP聚合和靜態LACP聚合原理類似,只是動態LACP聚合中所有端口都是通過協議確定,而不像靜態LACP匯聚通過協議在指定端口中確定匯聚相關端口。
1.思科Cisco (缺省模式為Cisco私有協議pagp)
手 工 匯 聚,channelgroup組號mode on。
LACP 協議聚合,廠家命名為,自動聚合模式-LACP協議,有兩種模式:
(1)Passvie被 動 模 式(只收不發協商消息)
channel-protocol lacp;
channel-group組 號mode Passvie
(2)Active 主動模式(又發又收協商消息)
channel-protocol lacp;
channel-group組 號mode active
私有協議:自動聚合-PAgP 協議,有兩種模式:
(1)auto:被 動,相 當LACP的Passvie模式(只收不發)。
channel-protocol pagp;
channel-group 組號mode auto
(2)Desirable:主動,相當于LACP的Active模式(會發也會收協商消息)。
channel-protocol pagp;
channel-group組 號mode desirable
2. 華為(缺省模式:手工匯聚模式)
手工匯聚,廠家命名為,手工負載分擔模式 ,默認。
LACP 協議聚合:廠家命名為,LACP模式(對應上面的靜態LACP聚合模式)。
mode lacp
私有協議:無
3. 華三H3C(缺省模式:靜態聚合模式即手工匯聚模式)
手工匯聚,廠家命名為,靜態聚合模式。

表1 三種模式的區別
link-aggregation group組號 mode manual
LACP 協議聚合:廠家命名為,動態聚合模式。
link-aggregation group 組號mode dynamic
私有協議:無。
4. 銳捷RUIJIE(缺省模式:靜態鏈路聚合即為手工匯聚模式)
手工匯聚,廠家命名為,靜態聚合模式,默認。
LACP協議聚合:廠家命名為,動態聚合(LACP)模式(對應上面的靜態 LACP聚合模式),有兩種模式:
(1)port-group組 號mode passive(只收不發)。
(2)port-group組 號mode active(又發又收協商消息)。
私有協議:無
由于各廠商設備缺省的鏈路聚合模式不同,常導致聚合組互聯失敗。建議:①同種設備,網絡組建后并且不會經常的擴展,增刪聚合成員的時候,或者設備不支持LACP協議,可以直接采用缺省匯聚模式。②不同網絡通信設備(比如Cisco、H3C、華為交換機)間鏈路聚合,推薦優先采用靜態LACP聚合模式。
現象:默認配置下,互聯端口物理狀態均為Up,但聚合組建立不起來。
解決方案:查閱手冊得知,思科的默認的聚合協議是私有協議pagp,而華為為手工負載分擔模式。更改如下后,兩設備均采用靜態LACP聚合模式匯聚互聯成功。
[HUAWEI] interface eth-trunk 1
[HUAWEI-Eth-Trunk1]mode lacp
[HUAWEI-Eth-Trunk1]trunkport ge 1/0/1 to 1/0/2
[HUAWEI-Eth-Trunk1]commit
CISCO(config)#i nterface port-channel 1
CISCO(config-if)#exit
CISCO(config)# interface range gigabitEthernet 0/1,gigabitEthernet 0/2
CISCO(config-ifrange)#channel-protocol lacp
CISCO(config-ifrange)#channel-group 1 mode active
CISCO(config-ifrange)#exit
現 象 :display ethtrunk 命令查看鏈路聚合狀態,發現接口為狀態為Up,但是eth-trunk狀態為Down。
解決方案:查看產品文檔發現,華為交換機配置鏈路聚合有兩種模式,分別是manual和 lacp-static,現在華為交換機采用默認配置,則為manual;而對端華三交換機使用的是dynamic模式。更改如下后,兩設備均采用靜態LACP聚合模式匯聚互聯成功。
[H3C] interface Bridge-Aggregation1
[H3C--Bridge-Aggregation1] port linktype trunk
[H3C--Bridge-Aggregation1] undo port trunk permit vlan 1
[H3C--Bridge-Aggregation1] port trunk permit vlan 2 to 4094
[H3C--Bridge-Aggregation1] linkaggregation mode dynamic
[HUAWEI]interface Eth-Trunk1
[HUAWEI-Eth-Trunk1]port link-type trunk
[HUAWEI-Eth-Trunk1]port trunk allow-pass vlan 2 to 4094
[HUAWEI-Eth-Trunk1]mode lacp
現象:兩臺設備均為華三交換機,其中一臺聚合口采用光口(光纖)連接到中間設備(交換機),通過中間交換機把光口轉換電口后,再用網線連接對端聚合交換機。查看鏈路聚合狀態,發現兩端狀態不一致。一端聚合組成員接口上狀態都是Selected,另一端聚合組其一成員接口Unselected。
解決方案:取消缺省聚合模式,兩端均采用動態聚合模式(LACP)模式即可解決。之所以出現這種情況,是因為交換機采用缺省聚合模式,沒啟用LACP協議,不能感應對端設備接口的狀態,從而導致部分流量仍舊的往不通的接口上轉發。
[H3C] interface Bridge-Aggregation1
[H3C--Bridge-Aggregation1] port linktype trunk
[H3C--Bridge-Aggregation1] undo port trunk permit vlan 1
[H3C--Bridge-Aggregation1] port trunk permit vlan 2 to 4094
[H3C--Bridge-Aggregation1] linkaggregation mode dynamic
現象:兩地機房兩臺華為核心交換機,采用電信、移動雙線LACP模式聚合互聯,配置成功。某天其中電信線路故障,短期內部分業務不通。
解決方案:經排查發現兩端交換機采用LACP模式互聯,但沒設置接收LACP協議報文的超時時間。一旦對端鏈路聚合組的某個成員接口發生自環或其他故障,而本端Eth-Trunk不能及時感知對端成員口狀態的變化,就會導致本端轉發數據時仍按照本端鏈路組中活動接口進行負載分擔,造成發生故障鏈路上數據流量的丟失。缺省情況下,Eth-Trunk接口接收報文的超時時間是90秒。
通過命令行[HUAWEI-AEth-Trunk1]lacp timeout fast,可極大減少部分業務中斷時間。配置此命令后,本端將接收報文的超時時間通過LACP報文通知對端,對端發送LACP報文的周期改為1秒。LACP協議報文的超時時間為LACP報文發送周期的3倍,即接收LACP協議報文的超時時間為3秒(默認配置為slow,對端發送LACP報文的周期為30秒,接收LACP協議報文的超時時間為90秒。)
1.聚合鏈路兩端的物理參數和邏輯參數必須一致,聚合的鏈路的數目、速率、雙工方式、端口類型、流控都要一致。
2.注意設備間鏈路聚合協議的一致性。
3.在設備支持的前提下,建議采用靜態LACP聚合模式,以便能感應對端設備接口的狀態,避免繼續向不通鏈路轉發數據。
4.采用LACP聚合模式,注意對數據轉發的性能優化,通過命令改小LACP接收的超時時間,盡可能減少部分流量的中斷時間。