鏈路聚合,是將多個(gè)物理接口捆綁成一個(gè)邏輯接口的技術(shù)。該技術(shù)可以實(shí)現(xiàn)增加帶寬、提高鏈路可靠性和負(fù)載分擔(dān)的功能,在高可靠、高性能網(wǎng)絡(luò)設(shè)計(jì)中應(yīng)用廣泛。
鏈路聚合在各個(gè)廠商技術(shù)文檔名稱稍有出入,思 科Cisco稱channelgroup,華為 HUAWEI稱 ethtrunk,華三 H3C稱 bridgeaggregation,銳捷RUIJIE聚合組稱port-group。
基于IEEE802.3ad標(biāo)準(zhǔn)的LACP(Link Aggregation Control Protocol,鏈 路匯聚控制協(xié)議)是一種實(shí)現(xiàn)鏈路動(dòng)態(tài)匯聚與解匯聚的通用協(xié)議,為交換數(shù)據(jù)的設(shè)備提供一種標(biāo)準(zhǔn)的協(xié)商方式。協(xié)議報(bào)文直接封裝在Ethernet Header里,協(xié)議 號(hào) :0x8809。Ethernet Header里的Destination MAC = 01:80:c2:00:00:02,這個(gè)是保留的、特殊組播地址??梢試L試使用抓包Filter, Destination MAC= 01:80:c2:00:00:02捕獲。
圖1 鏈路聚合三種工作模式
LACP協(xié)議通過(guò)LACPDU(LinkAggregation Control Protocol Data Unit,鏈 路匯聚控制協(xié)議數(shù)據(jù)單元)與對(duì)端交互信息。使用某端口的LACP協(xié)議后,該端口將通過(guò)發(fā)送LACPDU向?qū)Χ送ǜ孀约旱南到y(tǒng)優(yōu)先級(jí)、系統(tǒng)MAC、端口優(yōu)先級(jí)、端口號(hào)和操作Key。對(duì)端接收到這些信息后,將這些信息與其他端口所保存的信息比較以此選擇能夠匯聚的端口,從而雙方可以對(duì)端口加入或退出某個(gè)動(dòng)態(tài)匯聚組達(dá)成一致。
鏈路聚合有三種工作模式,如圖1所示。
1.手 工匯聚,不啟動(dòng)LACP協(xié)議,聚合組、組成員接口的加入或刪除完全由手工來(lái)配置。該模式下所有活動(dòng)成員接口(selected)都參與數(shù)據(jù)的轉(zhuǎn)發(fā),分擔(dān)負(fù)載流量,因此稱為手工負(fù)載分擔(dān)模式。
2.靜態(tài)LACP聚合模式下,啟動(dòng)LACP協(xié)議,手工配置聚合組,聚合組成員接口的加入或刪除,都是由手工配置完成,并且還要通過(guò)LACP協(xié)議交互確定這些手工添加的聚合組成員接口是否可以真正被聚合在一起。端口有兩種狀態(tài):Selected或Standby。Selected端口和Standby端口都能收發(fā)LACP協(xié)議,但Standby端口不能轉(zhuǎn)發(fā)用戶報(bào)文。該模式由LACP協(xié)議確定聚合組中的活動(dòng)和非活動(dòng)鏈路,又稱為M∶N模式,即M條活動(dòng)鏈路與N條備份鏈路的模式。
3.動(dòng)態(tài)LACP聚合模式下,不需要?jiǎng)?chuàng)建聚合組,也不需要指定哪些接口作為聚合組成員接口,兩臺(tái)設(shè)備會(huì)通過(guò)LACPDU協(xié)商自動(dòng)完成鏈路的聚合操作。聚合組內(nèi)的各成員端口上均啟用LACP協(xié)議,其端口狀態(tài)(加入,離開)通過(guò)該協(xié)議自動(dòng)進(jìn)行維護(hù)。端口可能處于兩種狀態(tài):Selected或 Standby。Selected端 口和Standby端口都能收發(fā)LACP協(xié)議,但Standby端口不能轉(zhuǎn)發(fā)用戶報(bào)文。表1為三種模式的區(qū)別。
手工匯聚鏈路聚合和靜態(tài)LACP聚合都是人為配置的聚合組,不允許系統(tǒng)自動(dòng)添加或刪除聚合端口。不同的是,手工匯聚下不啟用LACP協(xié)議報(bào)文參與活動(dòng)接口的選擇,而靜態(tài)LACP聚合啟用LACP協(xié)議。動(dòng)態(tài)LACP聚合和靜態(tài)LACP聚合原理類似,只是動(dòng)態(tài)LACP聚合中所有端口都是通過(guò)協(xié)議確定,而不像靜態(tài)LACP匯聚通過(guò)協(xié)議在指定端口中確定匯聚相關(guān)端口。
1.思科Cisco (缺省模式為Cisco私有協(xié)議pagp)
手 工 匯 聚,channelgroup組號(hào)mode on。
LACP 協(xié)議聚合,廠家命名為,自動(dòng)聚合模式-LACP協(xié)議,有兩種模式:
(1)Passvie被 動(dòng) 模 式(只收不發(fā)協(xié)商消息)
channel-protocol lacp;
channel-group組 號(hào)mode Passvie
(2)Active 主動(dòng)模式(又發(fā)又收協(xié)商消息)
channel-protocol lacp;
channel-group組 號(hào)mode active
私有協(xié)議:自動(dòng)聚合-PAgP 協(xié)議,有兩種模式:
(1)auto:被 動(dòng),相 當(dāng)LACP的Passvie模式(只收不發(fā))。
channel-protocol pagp;
channel-group 組號(hào)mode auto
(2)Desirable:主動(dòng),相當(dāng)于LACP的Active模式(會(huì)發(fā)也會(huì)收協(xié)商消息)。
channel-protocol pagp;
channel-group組 號(hào)mode desirable
2. 華為(缺省模式:手工匯聚模式)
手工匯聚,廠家命名為,手工負(fù)載分擔(dān)模式 ,默認(rèn)。
LACP 協(xié)議聚合:廠家命名為,LACP模式(對(duì)應(yīng)上面的靜態(tài)LACP聚合模式)。
mode lacp
私有協(xié)議:無(wú)
3. 華三H3C(缺省模式:靜態(tài)聚合模式即手工匯聚模式)
手工匯聚,廠家命名為,靜態(tài)聚合模式。
表1 三種模式的區(qū)別
link-aggregation group組號(hào) mode manual
LACP 協(xié)議聚合:廠家命名為,動(dòng)態(tài)聚合模式。
link-aggregation group 組號(hào)mode dynamic
私有協(xié)議:無(wú)。
4. 銳捷RUIJIE(缺省模式:靜態(tài)鏈路聚合即為手工匯聚模式)
手工匯聚,廠家命名為,靜態(tài)聚合模式,默認(rèn)。
LACP協(xié)議聚合:廠家命名為,動(dòng)態(tài)聚合(LACP)模式(對(duì)應(yīng)上面的靜態(tài) LACP聚合模式),有兩種模式:
(1)port-group組 號(hào)mode passive(只收不發(fā))。
(2)port-group組 號(hào)mode active(又發(fā)又收協(xié)商消息)。
私有協(xié)議:無(wú)
由于各廠商設(shè)備缺省的鏈路聚合模式不同,常導(dǎo)致聚合組互聯(lián)失敗。建議:①同種設(shè)備,網(wǎng)絡(luò)組建后并且不會(huì)經(jīng)常的擴(kuò)展,增刪聚合成員的時(shí)候,或者設(shè)備不支持LACP協(xié)議,可以直接采用缺省匯聚模式。②不同網(wǎng)絡(luò)通信設(shè)備(比如Cisco、H3C、華為交換機(jī))間鏈路聚合,推薦優(yōu)先采用靜態(tài)LACP聚合模式。
現(xiàn)象:默認(rèn)配置下,互聯(lián)端口物理狀態(tài)均為Up,但聚合組建立不起來(lái)。
解決方案:查閱手冊(cè)得知,思科的默認(rèn)的聚合協(xié)議是私有協(xié)議pagp,而華為為手工負(fù)載分擔(dān)模式。更改如下后,兩設(shè)備均采用靜態(tài)LACP聚合模式匯聚互聯(lián)成功。
[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
現(xiàn) 象 :display ethtrunk 命令查看鏈路聚合狀態(tài),發(fā)現(xiàn)接口為狀態(tài)為Up,但是eth-trunk狀態(tài)為Down。
解決方案:查看產(chǎn)品文檔發(fā)現(xiàn),華為交換機(jī)配置鏈路聚合有兩種模式,分別是manual和 lacp-static,現(xiàn)在華為交換機(jī)采用默認(rèn)配置,則為manual;而對(duì)端華三交換機(jī)使用的是dynamic模式。更改如下后,兩設(shè)備均采用靜態(tài)LACP聚合模式匯聚互聯(lián)成功。
[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
現(xiàn)象:兩臺(tái)設(shè)備均為華三交換機(jī),其中一臺(tái)聚合口采用光口(光纖)連接到中間設(shè)備(交換機(jī)),通過(guò)中間交換機(jī)把光口轉(zhuǎn)換電口后,再用網(wǎng)線連接對(duì)端聚合交換機(jī)。查看鏈路聚合狀態(tài),發(fā)現(xiàn)兩端狀態(tài)不一致。一端聚合組成員接口上狀態(tài)都是Selected,另一端聚合組其一成員接口Unselected。
解決方案:取消缺省聚合模式,兩端均采用動(dòng)態(tài)聚合模式(LACP)模式即可解決。之所以出現(xiàn)這種情況,是因?yàn)榻粨Q機(jī)采用缺省聚合模式,沒啟用LACP協(xié)議,不能感應(yīng)對(duì)端設(shè)備接口的狀態(tài),從而導(dǎo)致部分流量仍舊的往不通的接口上轉(zhuǎn)發(fā)。
[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
現(xiàn)象:兩地機(jī)房?jī)膳_(tái)華為核心交換機(jī),采用電信、移動(dòng)雙線LACP模式聚合互聯(lián),配置成功。某天其中電信線路故障,短期內(nèi)部分業(yè)務(wù)不通。
解決方案:經(jīng)排查發(fā)現(xiàn)兩端交換機(jī)采用LACP模式互聯(lián),但沒設(shè)置接收LACP協(xié)議報(bào)文的超時(shí)時(shí)間。一旦對(duì)端鏈路聚合組的某個(gè)成員接口發(fā)生自環(huán)或其他故障,而本端Eth-Trunk不能及時(shí)感知對(duì)端成員口狀態(tài)的變化,就會(huì)導(dǎo)致本端轉(zhuǎn)發(fā)數(shù)據(jù)時(shí)仍按照本端鏈路組中活動(dòng)接口進(jìn)行負(fù)載分擔(dān),造成發(fā)生故障鏈路上數(shù)據(jù)流量的丟失。缺省情況下,Eth-Trunk接口接收?qǐng)?bào)文的超時(shí)時(shí)間是90秒。
通過(guò)命令行[HUAWEI-AEth-Trunk1]lacp timeout fast,可極大減少部分業(yè)務(wù)中斷時(shí)間。配置此命令后,本端將接收?qǐng)?bào)文的超時(shí)時(shí)間通過(guò)LACP報(bào)文通知對(duì)端,對(duì)端發(fā)送LACP報(bào)文的周期改為1秒。LACP協(xié)議報(bào)文的超時(shí)時(shí)間為L(zhǎng)ACP報(bào)文發(fā)送周期的3倍,即接收LACP協(xié)議報(bào)文的超時(shí)時(shí)間為3秒(默認(rèn)配置為slow,對(duì)端發(fā)送LACP報(bào)文的周期為30秒,接收LACP協(xié)議報(bào)文的超時(shí)時(shí)間為90秒。)
1.聚合鏈路兩端的物理參數(shù)和邏輯參數(shù)必須一致,聚合的鏈路的數(shù)目、速率、雙工方式、端口類型、流控都要一致。
2.注意設(shè)備間鏈路聚合協(xié)議的一致性。
3.在設(shè)備支持的前提下,建議采用靜態(tài)LACP聚合模式,以便能感應(yīng)對(duì)端設(shè)備接口的狀態(tài),避免繼續(xù)向不通鏈路轉(zhuǎn)發(fā)數(shù)據(jù)。
4.采用LACP聚合模式,注意對(duì)數(shù)據(jù)轉(zhuǎn)發(fā)的性能優(yōu)化,通過(guò)命令改小LACP接收的超時(shí)時(shí)間,盡可能減少部分流量的中斷時(shí)間。