專利名稱:一種堆疊分裂檢測的處理方法和設(shè)備的制作方法
技術(shù)領(lǐng)域:
本發(fā)明涉及通信技術(shù)領(lǐng)域,特別涉及一種堆疊分裂檢測的處理方法和設(shè)備。
背景技術(shù):
堆疊系統(tǒng)是指將多臺堆疊成員設(shè)備堆疊成一臺堆疊設(shè)備。其中,IRFdntelligent Resilient Framework,智能彈性架構(gòu))是一種已有的堆疊技術(shù),如圖1所示,是將多臺設(shè)備通過IRF鏈路連接在一起,進(jìn)行必要的配置后,虛擬化成一臺設(shè)備,一般稱為IRF設(shè)備,使用這種虛擬化技術(shù)可以實現(xiàn)多臺設(shè)備的協(xié)同工作、統(tǒng)一管理和不間斷維護(hù)。在實際的應(yīng)用中,IRF設(shè)備既具有盒式設(shè)備的低成本優(yōu)點,又具有框式分布式設(shè)備的擴展性以及高可靠性優(yōu)點。以兩臺設(shè)備為例,當(dāng)兩臺設(shè)備工作在IRF模式下,通過IRF鏈路相連,進(jìn)行必要的配置,會合并成一臺IRF設(shè)備,這個過程稱為IRF合并,該過程的流程示意圖如圖2所示。反之,當(dāng)一個IRF形成后,由于IRF鏈路故障,導(dǎo)致IRF中兩相鄰成員設(shè)備物理上不連通,一個IRF變成兩個IRF,這個過程稱為IRF分裂(split),具體如圖3所示。分裂后的兩個IRF擁有相同的IP (Internet Protocol,網(wǎng)絡(luò)互聯(lián)協(xié)議)地址等三層配置,會引起地址沖突,導(dǎo)致故障在網(wǎng)絡(luò)中擴大。為了提高系統(tǒng)的可用性,當(dāng)IRF分裂時就需要一種機制,能夠檢測出網(wǎng)絡(luò)中同時存在多個IRF,并進(jìn)行相應(yīng)的處理盡量降低IRF分裂對業(yè)務(wù)的影響。MAD (Multi-Active Detection,多Active檢測)就是這樣一種檢測和處理機制。IRF分裂后,通過分裂檢測機制IRF會檢測到網(wǎng)絡(luò)中存在其它處于Active狀態(tài) (表示IRF處于正常工作狀態(tài))的IRF。沖突處理會讓Master (主)成員編號最小的IRF 繼續(xù)正常工作(維持Active狀態(tài)),其它IRF會遷移到Recovery狀態(tài)(表示IRF處于禁用狀態(tài)),并關(guān)閉Recovery狀態(tài)IRF中所有成員設(shè)備上除保留端口以外的其它所有物理端口 (通常為業(yè)務(wù)接口),以保證該IRF不能再轉(zhuǎn)發(fā)業(yè)務(wù)報文。在現(xiàn)有技術(shù)中,BFD(Bidirectional Forwarding Detection,雙向轉(zhuǎn)發(fā)檢測)方案就是一種用來檢測IRF分裂的MAD機制。BFD檢測IRF分裂方法的示意圖如圖4所示,在IRF設(shè)備配置BFD檢測,在成員設(shè)備A和成員設(shè)備B之間增加一條BFD檢測鏈路,當(dāng)IRF設(shè)備正常工作時,成員設(shè)備之間BFD 檢測鏈路是無法建立起會話的,當(dāng)IRF分裂后,設(shè)備A和設(shè)備B就是兩臺獨立運行在IRF模式下的設(shè)備,都是主成員設(shè)備,BFD鏈路能建立起會話,BFD鏈路建立起會話表示檢測到?jīng)_突,即IRF分裂。在實現(xiàn)本發(fā)明的過程中,發(fā)明人發(fā)現(xiàn)現(xiàn)有技術(shù)至少存在以下問題現(xiàn)有的MAD BFD方式機制存在一些問題,IRF鏈路故障而導(dǎo)致堆疊分裂之后,IRF 的成員設(shè)備相互學(xué)習(xí)MAD VLAN接口的ARP(Address Resolution Protocol,地址解析協(xié)議) 并創(chuàng)建BFD會話,通告各自的IRF優(yōu)先級,在IRF分裂后產(chǎn)生的各新IRF中決定需要關(guān)閉業(yè)務(wù)端口的新IRF。
在IRF分裂到分裂后的新IRF關(guān)閉業(yè)務(wù)端口的這段時間之內(nèi),網(wǎng)絡(luò)上存在兩個以上的獨立的IRF設(shè)備,期間可能會導(dǎo)致網(wǎng)絡(luò)中的公網(wǎng)地址沖突,對于跨設(shè)備轉(zhuǎn)發(fā)的流量還會出現(xiàn)丟包現(xiàn)象。
發(fā)明內(nèi)容
本發(fā)明提供一種堆疊分裂檢測的處理方法和設(shè)備,用以解決現(xiàn)有技術(shù)在IRF分裂后需要耗費時間建立BFD報文并交互IRF優(yōu)先級才能關(guān)閉低優(yōu)先級的業(yè)務(wù)接口,從而導(dǎo)致地址沖突以及流量丟包的缺陷。為達(dá)到上述目的,本發(fā)明一方面提供了一種堆疊分裂檢測的處理方法,在堆疊系統(tǒng)的各成員設(shè)備分別和堆疊系統(tǒng)內(nèi)的其他各成員設(shè)備都建立BFD會話,所述方法至少包括以下步驟所述堆疊系統(tǒng)的任一成員設(shè)備與其他成員設(shè)備交互攜帶各自當(dāng)前的設(shè)備角色信息和當(dāng)前所屬堆疊系統(tǒng)的優(yōu)先級參數(shù)的BFD報文;所述成員設(shè)備確定本設(shè)備和所述其他成員設(shè)備當(dāng)前的設(shè)備角色信息均為主設(shè)備, 則判斷堆疊系統(tǒng)發(fā)生分裂;所述成員設(shè)備將本設(shè)備的當(dāng)前所屬堆疊系統(tǒng)的優(yōu)先級參數(shù)與所述其他成員設(shè)備的當(dāng)前所屬堆疊系統(tǒng)的優(yōu)先級參數(shù)進(jìn)行比較;當(dāng)所述成員設(shè)備確定本設(shè)備的當(dāng)前所屬堆疊系統(tǒng)的優(yōu)先級參數(shù)優(yōu)于所述其他成員設(shè)備的當(dāng)前所屬堆疊系統(tǒng)的優(yōu)先級參數(shù)時,則維持本設(shè)備所屬的堆疊系統(tǒng)正常工作;或者,當(dāng)所述成員設(shè)備確定所述其他成員設(shè)備的當(dāng)前所屬堆疊系統(tǒng)的優(yōu)先級參數(shù)優(yōu)于本設(shè)備的當(dāng)前所屬堆疊系統(tǒng)的優(yōu)先級參數(shù)時,則關(guān)閉本設(shè)備的業(yè)務(wù)端口和本設(shè)備所屬的堆疊系統(tǒng)的其他成員設(shè)備的業(yè)務(wù)端口。優(yōu)選的,所述在堆疊系統(tǒng)的各成員設(shè)備分別和堆疊系統(tǒng)內(nèi)的其他各成員設(shè)備都建立BFD會話,包括在堆疊系統(tǒng)的各成員設(shè)備中分別預(yù)設(shè)向其他成員設(shè)備發(fā)送BFD報文的源端地址信息和目的端地址信息,用于各成員設(shè)備分別和其他各成員設(shè)備建立BFD會話。優(yōu)選的,所述堆疊系統(tǒng)的任一成員設(shè)備接收其他成員設(shè)備發(fā)送的攜帶所述其他成員設(shè)備當(dāng)前的設(shè)備角色信息和當(dāng)前所屬堆疊系統(tǒng)的優(yōu)先級參數(shù)的BFD報文之后,還包括所述成員設(shè)備確定本設(shè)備當(dāng)前的設(shè)備角色信息為主設(shè)備,而所述其他成員設(shè)備當(dāng)前的設(shè)備角色信息為從設(shè)備,則放棄進(jìn)行處理。優(yōu)選的,所述堆疊系統(tǒng)的任一成員設(shè)備接收其他成員設(shè)備發(fā)送的攜帶所述其他成員設(shè)備當(dāng)前的設(shè)備角色信息和當(dāng)前所屬堆疊系統(tǒng)的優(yōu)先級參數(shù)的BFD報文之后,還包括所述成員設(shè)備確定本設(shè)備當(dāng)前的設(shè)備角色信息為從設(shè)備,而所述其他成員設(shè)備當(dāng)前的設(shè)備角色信息為主設(shè)備,則放棄進(jìn)行處理;所述成員設(shè)備確定本設(shè)備當(dāng)前的設(shè)備角色信息和所述其他成員設(shè)備當(dāng)前的設(shè)備角色信息均為從設(shè)備,則放棄進(jìn)行處理。優(yōu)選的,所述在堆疊系統(tǒng)的各成員設(shè)備分別和堆疊系統(tǒng)內(nèi)的其他各成員設(shè)備都建立BFD會話之后,還包括當(dāng)所述成員設(shè)備判斷本設(shè)備的MAD VLAN的邏輯鏈路發(fā)生故障時,所述成員設(shè)備刪
5除本設(shè)備通過所述MAD VLAN的邏輯鏈路所建立的BFD會話;當(dāng)所述成員設(shè)備判斷本設(shè)備的MAD VLAN的邏輯鏈路的故障恢復(fù)時,所述成員設(shè)備通過所述MAD VLAN的邏輯鏈路分別和堆疊系統(tǒng)內(nèi)的其他各成員設(shè)備重新建立BFD會話。另一方面,本發(fā)明還提供了一種網(wǎng)絡(luò)設(shè)備,可作為成員設(shè)備與其他成員設(shè)備連接組成堆疊系統(tǒng),所述網(wǎng)絡(luò)設(shè)備包括建立模塊,用于分別和堆疊系統(tǒng)內(nèi)的其他各成員設(shè)備都建立BFD會話;通信模塊,用于通過所述建立模塊所建立的BFD會話,與其他各成員設(shè)備交互攜帶各自當(dāng)前的設(shè)備角色信息和當(dāng)前所屬堆疊系統(tǒng)的優(yōu)先級參數(shù)的BFD報文;狀態(tài)識別模塊,用于識別所述網(wǎng)絡(luò)設(shè)備當(dāng)前的設(shè)備角色信息,以及所述通信模塊所接收到的所述BFD報文所攜帶的所述其他成員設(shè)備當(dāng)前的設(shè)備角色信息;比較模塊,用于在所述狀態(tài)識別模塊確定所述網(wǎng)絡(luò)設(shè)備和所述其他成員設(shè)備當(dāng)前的設(shè)備角色信息均為主設(shè)備時,確定堆疊系統(tǒng)發(fā)生分裂,并將所述通信模塊所接收到的所述BFD報文所攜帶的所述其他成員設(shè)備的當(dāng)前所屬堆疊系統(tǒng)的優(yōu)先級參數(shù)與所述網(wǎng)絡(luò)設(shè)備的當(dāng)前所屬堆疊系統(tǒng)的優(yōu)先級參數(shù)進(jìn)行比較;處理模塊,用于在所述比較模塊確定所述網(wǎng)絡(luò)設(shè)備的當(dāng)前所屬堆疊系統(tǒng)的優(yōu)先級參數(shù)優(yōu)于所述其他成員設(shè)備的當(dāng)前所屬堆疊系統(tǒng)的優(yōu)先級參數(shù)時,維持所述網(wǎng)絡(luò)設(shè)備所屬的堆疊系統(tǒng)正常工作;或者,在所述比較模塊確定所述其他成員設(shè)備的當(dāng)前所屬堆疊系統(tǒng)的優(yōu)先級參數(shù)優(yōu)于所述網(wǎng)絡(luò)設(shè)備的當(dāng)前所屬堆疊系統(tǒng)的優(yōu)先級參數(shù)時,關(guān)閉所述網(wǎng)絡(luò)設(shè)備的業(yè)務(wù)端口和所述網(wǎng)絡(luò)設(shè)備所屬的堆疊系統(tǒng)的其他成員設(shè)備的業(yè)務(wù)端口。優(yōu)選的,所述建立模塊,用于根據(jù)所述網(wǎng)絡(luò)設(shè)備中預(yù)設(shè)的向堆疊系統(tǒng)內(nèi)的其他成員設(shè)備發(fā)送BFD報文的源端地址信息和目的端地址信息,分別和堆疊系統(tǒng)內(nèi)的其他各成員設(shè)備都建立BFD會話。優(yōu)選的,所述比較模塊,還用于在所述狀態(tài)識別模塊確定所述網(wǎng)絡(luò)設(shè)備當(dāng)前的設(shè)備角色信息為主設(shè)備,而所述其他成員設(shè)備當(dāng)前的設(shè)備角色信息為從設(shè)備時,放棄進(jìn)行處理;在所述狀態(tài)識別模塊確定所述網(wǎng)絡(luò)設(shè)備當(dāng)前的設(shè)備角色信息為從設(shè)備,而所述其他成員設(shè)備當(dāng)前的設(shè)備角色信息為主設(shè)備時,放棄進(jìn)行處理;在所述狀態(tài)識別模塊確定所述網(wǎng)絡(luò)設(shè)備當(dāng)前的設(shè)備角色信息和所述其他成員設(shè)備當(dāng)前的設(shè)備角色信息均為主設(shè)備時,放棄進(jìn)行處理。優(yōu)選的,所述建立模塊,還用于當(dāng)所述網(wǎng)絡(luò)設(shè)備的MAD VLAN的邏輯鏈路發(fā)生故障時,刪除通過所述MAD VLAN的邏輯鏈路所建立的BFD會話;當(dāng)所述網(wǎng)絡(luò)設(shè)備的MAD VLAN的邏輯鏈路的故障恢復(fù)時,通過所述MAD VLAN的邏輯鏈路分別和堆疊系統(tǒng)內(nèi)的其他各成員設(shè)備重新建立BFD會話。與現(xiàn)有技術(shù)相比,本發(fā)明具有以下優(yōu)點通過應(yīng)用本發(fā)明的技術(shù)方案,堆疊系統(tǒng)的各成員設(shè)備之間都通過預(yù)先建立的BFD 會話進(jìn)行攜帶設(shè)備角色信息和當(dāng)前所屬堆疊系統(tǒng)的優(yōu)先級參數(shù)的BFD報文的發(fā)送,各成員設(shè)備通過比較自身與其他成員設(shè)備的設(shè)備角色信息,檢測是否發(fā)生堆疊系統(tǒng)分裂,并在分裂后,直接根據(jù)當(dāng)前所屬堆疊系統(tǒng)的優(yōu)先級參數(shù)確定自身是否繼續(xù)正常工作,從而,可以在堆疊分裂后,快速選擇繼續(xù)正常運行的堆疊系統(tǒng),避免了在堆疊系統(tǒng)分裂后才能創(chuàng)建BFD 會話的技術(shù)方案所帶來的地址信息獲取、會話創(chuàng)建以及優(yōu)先級信息交互等過程所消耗的時間,提高了相應(yīng)處理過程的效率,降低了發(fā)生堆疊沖突和流量丟包的概率,提高了系統(tǒng)的可靠性。
圖1為現(xiàn)有技術(shù)中存在IRF設(shè)備的系統(tǒng)結(jié)構(gòu)示意圖;圖2為現(xiàn)有技術(shù)中IRF設(shè)備合并的示意圖;圖3為現(xiàn)有技術(shù)中IRF設(shè)備分裂的示意圖;圖4為現(xiàn)有技術(shù)中BFD檢測IRF分裂方法的示意5為本發(fā)明實施例所提出的一種堆疊分裂檢測的處理方法的流程示意圖;圖6為本發(fā)明實施例所提出的一種具體應(yīng)用場景下的堆疊分裂檢測的處理方法的流程示意圖;圖7為本發(fā)明實施例所提出的一種網(wǎng)絡(luò)設(shè)備的結(jié)構(gòu)示意圖。
具體實施例方式如背景技術(shù)所述,對于現(xiàn)有的堆疊分裂檢測和處理過程,MAD BFD機制需要在堆疊分裂后進(jìn)行互相學(xué)習(xí)對端的ARP信息之后,才能進(jìn)行BFD會話的建立,然后,通過BFD會話進(jìn)行相應(yīng)的優(yōu)先級信息交互,并根據(jù)相應(yīng)的優(yōu)先級信息確定分裂后繼續(xù)正常工作的堆疊系統(tǒng),因此,相應(yīng)的話建立過程和信息交互過程需要占用相應(yīng)的處理時間,在此期間,網(wǎng)絡(luò)中會存在至少兩個配置相同的堆疊系統(tǒng),在堆疊系統(tǒng)對于時間容忍程度要求較高的情況下, 便會導(dǎo)致堆疊沖突以及分裂后兩堆疊系統(tǒng)之間的跨成員設(shè)備流量的丟包。為了解決這樣的問題,本發(fā)明提出了一種堆疊分裂檢測的處理方法,在堆疊系統(tǒng)的各成員設(shè)備之間完成BFD會話的建立,并進(jìn)行相應(yīng)的信息交互,從而,在分裂后快速從分裂出的堆疊系統(tǒng)中選擇需要關(guān)閉的堆疊系統(tǒng),對堆疊分裂進(jìn)行及時響應(yīng),避免出現(xiàn)堆疊沖突和相應(yīng)跨成員設(shè)備流量傳輸?shù)膩G包。如圖5所示,為本發(fā)明提出的一種堆疊分裂檢測的處理方法的流程示意圖,該方法具體包括以下步驟步驟S501、在堆疊系統(tǒng)的各成員設(shè)備分別和堆疊系統(tǒng)內(nèi)的其他各成員設(shè)備都建立 BFD會話。在具體的應(yīng)用場景中,本步驟中的BFD會話的建立可以通過在堆疊系統(tǒng)的各成員設(shè)備中分別預(yù)設(shè)向其他成員設(shè)備發(fā)送BFD報文的源端地址信息和目的端地址信息的方式來完成的。這樣的處理過程的作用在于直接在各成員設(shè)備中靜態(tài)配置需要交互BFD報文的兩端的地址信息,且兩端的地址信息互不相同,從而,使BFD會話的建立可以依據(jù)該信息直接完成,而不再需要進(jìn)行對端信息的獲取,同時,由于本步驟中的BFD會話是在堆疊分裂之前來完成,所以,直接靜態(tài)配置地址信息的方式也避免了在堆疊分裂前各成員設(shè)備地址信息一致而導(dǎo)致BFD會話無法建立的問題。當(dāng)然,對于包括多個成員設(shè)備的堆疊系統(tǒng),需要設(shè)置各成員設(shè)備向其他每個成員設(shè)備發(fā)送BFD報文的地址信息,從而,保證任意的兩個成員設(shè)備之間都可以依據(jù)相應(yīng)的地址信息進(jìn)行BFD會話的建立,并實現(xiàn)后續(xù)的處理。需要指出的是,在具體的應(yīng)用場景中,由于考慮到現(xiàn)有的BFD機制是在兩個堆疊系統(tǒng)的MAD VLAN接口之間進(jìn)行BFD報文的交互,因此,在本步驟中所設(shè)置的地址信息同樣可以進(jìn)行以下設(shè)置所述源端地址信息具體為當(dāng)前成員設(shè)備的MAD VLAN接口 ;所述目的端地址信息具體為所述其他成員設(shè)備的MAD VLAN接口。通過上述的設(shè)置,對于按照本發(fā)明所提出的技術(shù)方案進(jìn)行BFD報文交互的兩個成員設(shè)備之間,同樣是通過MAD VLAN接口進(jìn)行BFD報文傳輸。需要進(jìn)一步指出的是,預(yù)設(shè)地址信息的方式只是本發(fā)明為了在堆疊分裂前建立 BFD會話所采用的一種具體方式,其他在堆疊分裂前能夠建立BFD會話的方式同樣可以應(yīng)用到本發(fā)明的技術(shù)方案中,這樣的變化并不影響本發(fā)明的保護(hù)范圍。步驟S502、所述堆疊系統(tǒng)的任一成員設(shè)備與其他成員設(shè)備交互攜帶各自當(dāng)前的設(shè)備角色信息和當(dāng)前所屬堆疊系統(tǒng)的優(yōu)先級參數(shù)的BFD報文?!矫妫蓡T設(shè)備接收其他成員設(shè)備發(fā)送的攜帶所述其他成員設(shè)備當(dāng)前的設(shè)備角色信息和當(dāng)前所屬堆疊系統(tǒng)的優(yōu)先級參數(shù)的BFD報文。其中,這里所提到的BFD報文是所述其他成員設(shè)備通過與當(dāng)前成員設(shè)備之間所建立的BFD會話來發(fā)送的。當(dāng)然,這樣的BFD報文是基于在本成員設(shè)備中進(jìn)行堆疊分裂檢測的需要而發(fā)送的。另一方面,為了在其他成員設(shè)備中進(jìn)行同樣的堆疊分裂檢測,本成員設(shè)備同樣需要向其他成員設(shè)備發(fā)送相應(yīng)的BFD報文,具體如下所述成員設(shè)備通過相應(yīng)的BFD會話,向所述堆疊系統(tǒng)內(nèi)的其他各成員設(shè)備發(fā)送攜帶所述成員設(shè)備當(dāng)前的設(shè)備角色信息和當(dāng)前所屬堆疊系統(tǒng)的優(yōu)先級參數(shù)的BFD報文。具體的,如果對應(yīng)步驟S501中所采用的預(yù)設(shè)源端地址信息和目的端地址信息的方式建立BFD會話,則在此處理過程中,該成員設(shè)備將根據(jù)預(yù)設(shè)的向所述其他成員設(shè)備發(fā)送BFD報文的源端地址信息和目的端地址信息,向所述其他成員設(shè)備發(fā)送攜帶所述成員設(shè)備當(dāng)前的設(shè)備角色信息和當(dāng)前所屬堆疊系統(tǒng)的優(yōu)先級參數(shù)的BFD報文。需要指出的是,上述的當(dāng)前所屬堆疊系統(tǒng)的優(yōu)先級參數(shù)用于在堆疊分裂后,決定由哪個分裂出的堆疊系統(tǒng)繼續(xù)工作,當(dāng)前所屬堆疊系統(tǒng)的優(yōu)先級參數(shù)的具體內(nèi)容以及相應(yīng)的處理過程參見后續(xù)說明。步驟S503、所述成員設(shè)備識別本設(shè)備當(dāng)前的設(shè)備角色信息和所述其他成員設(shè)備當(dāng)前的設(shè)備角色信息。當(dāng)所述成員設(shè)備確定本設(shè)備當(dāng)前的設(shè)備角色信息和所述其他成員設(shè)備當(dāng)前的設(shè)備角色信息均為主設(shè)備時,所述成員設(shè)備確定所述堆疊系統(tǒng)分裂,并執(zhí)行步驟S504。當(dāng)所述成員設(shè)備確定本設(shè)備當(dāng)前的設(shè)備角色信息和所述其他成員設(shè)備當(dāng)前的設(shè)備角色信息不是均為主設(shè)備時,則所述成員設(shè)備確定當(dāng)前堆疊系統(tǒng)沒有分裂,繼續(xù)返回步驟S503進(jìn)行相應(yīng)的檢測。具體的,可能出現(xiàn)的上述的不是均為主設(shè)備的情況包括以下幾種
(1)所述成員設(shè)備當(dāng)前的設(shè)備角色信息為主設(shè)備,而所述其他成員設(shè)備當(dāng)前的設(shè)備角色信息為從設(shè)備。此時,所述成員設(shè)備為主設(shè)備,而所述其他成員設(shè)備為從設(shè)備,可能是同屬于當(dāng)前的堆疊系統(tǒng)中的主設(shè)備和從設(shè)備,因此,不能確定該堆疊系統(tǒng)發(fā)生分裂。(2)所述成員設(shè)備當(dāng)前的設(shè)備角色信息和所述其他成員設(shè)備當(dāng)前的設(shè)備角色信息均為從設(shè)備。此時,所述成員設(shè)備和所述其他成員設(shè)備均為從設(shè)備,可能是同屬于當(dāng)前的堆疊系統(tǒng)中的兩個從設(shè)備,因此,不能確定該堆疊系統(tǒng)發(fā)生分裂。(3)所述成員設(shè)備確定本設(shè)備當(dāng)前的設(shè)備角色信息為從設(shè)備,而所述其他成員設(shè)備當(dāng)前的設(shè)備角色信息為主設(shè)備。此時,所述成員設(shè)備為從設(shè)備,而所述其他成員設(shè)備為主設(shè)備,可能是同屬于當(dāng)前的堆疊系統(tǒng)中的主設(shè)備和從設(shè)備,因此,不能確定該堆疊系統(tǒng)發(fā)生分裂。步驟S504、所述成員設(shè)備將所述其他成員設(shè)備的當(dāng)前所屬堆疊系統(tǒng)的優(yōu)先級參數(shù)與本設(shè)備的當(dāng)前所屬堆疊系統(tǒng)的優(yōu)先級參數(shù)進(jìn)行比較。當(dāng)所述成員設(shè)備確定本設(shè)備的當(dāng)前所屬堆疊系統(tǒng)的優(yōu)先級參數(shù)優(yōu)于所述其他成員設(shè)備的當(dāng)前所屬堆疊系統(tǒng)的優(yōu)先級參數(shù)時,執(zhí)行步驟S505 ;當(dāng)所述成員設(shè)備確定所述其他成員設(shè)備的當(dāng)前所屬堆疊系統(tǒng)的優(yōu)先級參數(shù)優(yōu)于本設(shè)備的當(dāng)前所屬堆疊系統(tǒng)的優(yōu)先級參數(shù)時,執(zhí)行步驟S506。在具體的處理場景中,本步驟中所比較的所述BFD所攜帶的當(dāng)前所屬堆疊系統(tǒng)的優(yōu)先級參數(shù)的類型至少包括以下所列信息的一種或多種(1)發(fā)送所述BFD報文的成員設(shè)備當(dāng)前所屬堆疊系統(tǒng)的堆疊優(yōu)先級信息。這樣的堆疊優(yōu)先級信息是預(yù)先配置給各成員設(shè)備的,可以在發(fā)生堆疊分裂時,選擇具有更高堆疊優(yōu)先級信息的主設(shè)備所屬的堆疊系統(tǒng)繼續(xù)正常工作。現(xiàn)有技術(shù)中的IRF優(yōu)先級即起到了這樣的作用。(2)發(fā)送所述BFD報文的成員設(shè)備當(dāng)前的性能信息。在具體的處理場景中,這里所指的性能信息可以包括發(fā)送所述BFD報文的成員設(shè)備當(dāng)前的處于正常狀態(tài)的板卡數(shù)量,和/或發(fā)送所述 BFD報文的成員設(shè)備當(dāng)前的處于正常狀態(tài)的端口數(shù)量,和/或發(fā)送所述BFD報文的成員設(shè)備當(dāng)前的邏輯接口數(shù)量,和/或發(fā)送所述BFD報文的成員設(shè)備當(dāng)前的流量數(shù)據(jù)流大小等其他與轉(zhuǎn)發(fā)流量相關(guān)的參數(shù)信息。通過這樣的參數(shù)信息,可以確定相應(yīng)的成員設(shè)備當(dāng)前的流量轉(zhuǎn)發(fā)能力,從而,可以選擇具有更優(yōu)的流量轉(zhuǎn)發(fā)能力(更多的處于正常狀態(tài)的板卡數(shù)量,或更多的處于正常狀態(tài)的端口數(shù)量,或更多的邏輯接口數(shù)量,或更大的流量數(shù)據(jù)流等)的堆疊系統(tǒng)繼續(xù)正常工作, 從而,盡量保證當(dāng)前系統(tǒng)的流量轉(zhuǎn)發(fā)處理能力。(3)發(fā)送所述BFD報文的成員設(shè)備的設(shè)備編號信息。這樣的設(shè)備編號信息是各成員設(shè)備之間相互區(qū)別的信息,根據(jù)具體的規(guī)則,可以選擇編號最小的主成員設(shè)備所對應(yīng)的堆疊系統(tǒng)繼續(xù)正常工作。需要指出的是,上述的各項信息內(nèi)容可以根據(jù)實際需要選擇一個或多個類型攜帶在BFD報文中,根據(jù)這樣的信息在堆疊分裂后進(jìn)行繼續(xù)正常工作的堆疊系統(tǒng)的選擇,如果
9所選擇的信息只有一個類型,那么,各成員設(shè)備便根據(jù)該類型的信息的比較結(jié)果進(jìn)行相應(yīng)的選擇,反之,如果所選擇的信息包括多個類型,那么,需要預(yù)先設(shè)置這多個類型的信息的比較順序,在優(yōu)先比較的信息的內(nèi)容相一致的情況下,繼續(xù)對下一序位的信息類型進(jìn)行比較。具體的,在本步驟中,當(dāng)所述成員設(shè)備接收到的所述BFD報文中攜帶了所述其他成員設(shè)備的多個類型的當(dāng)前所屬堆疊系統(tǒng)的優(yōu)先級參數(shù)時,所述成員設(shè)備根據(jù)各類型的當(dāng)前所屬堆疊系統(tǒng)的優(yōu)先級參數(shù)的比較優(yōu)先級順序,按照本設(shè)備與所述其他成員設(shè)備之間不相同的、具有最高比較優(yōu)先級順序的當(dāng)前所屬堆疊系統(tǒng)的優(yōu)先級參數(shù)的比較結(jié)果,確定本設(shè)備的當(dāng)前所屬堆疊系統(tǒng)的優(yōu)先級參數(shù)是否優(yōu)于所述其他成員設(shè)備的當(dāng)前所屬堆疊系統(tǒng)的優(yōu)先級參數(shù)。步驟S505、所述成員設(shè)備維持本設(shè)備所屬的堆疊系統(tǒng)正常工作。步驟S506、所述成員設(shè)備關(guān)閉本設(shè)備的業(yè)務(wù)端口和本設(shè)備所屬的堆疊系統(tǒng)的其他成員設(shè)備的業(yè)務(wù)端口。與現(xiàn)有技術(shù)相比,本發(fā)明具有以下優(yōu)點通過應(yīng)用本發(fā)明的技術(shù)方案,堆疊系統(tǒng)的各成員設(shè)備之間都通過預(yù)先建立的BFD 會話進(jìn)行攜帶設(shè)備角色信息和當(dāng)前所屬堆疊系統(tǒng)的優(yōu)先級參數(shù)的BFD報文的發(fā)送,各成員設(shè)備通過比較自身與其他成員設(shè)備的設(shè)備角色信息,檢測是否發(fā)生堆疊系統(tǒng)分裂,并在分裂后,直接根據(jù)當(dāng)前所屬堆疊系統(tǒng)的優(yōu)先級參數(shù)確定自身是否繼續(xù)正常工作,從而,可以在堆疊分裂后,快速選擇繼續(xù)正常運行的堆疊系統(tǒng),避免了在堆疊系統(tǒng)分裂后才能創(chuàng)建BFD 會話的技術(shù)方案所帶來的地址信息獲取、會話創(chuàng)建以及優(yōu)先級信息交互等過程所消耗的時間,提高了相應(yīng)處理過程的效率,降低了發(fā)生堆疊沖突和流量丟包的概率,提高了系統(tǒng)的可靠性。為了進(jìn)一步闡述本發(fā)明的技術(shù)思想,現(xiàn)結(jié)合具體的應(yīng)用場景,對本發(fā)明的技術(shù)方案進(jìn)行說明。為了描述方便,本發(fā)明實施例中具體以IRF設(shè)備作為堆疊系統(tǒng)的一種具體示例, 對本發(fā)明所提出的技術(shù)方案進(jìn)行說明,在實際應(yīng)用中,具體堆疊系統(tǒng)類型的變化并不會影響本發(fā)明的保護(hù)范圍。具體的,本發(fā)明實施例提供了一種在IRF系統(tǒng)中的進(jìn)行狀態(tài)檢測和IRF分裂后進(jìn)行具體處理的方法,通過在IRF分裂前建立攜帶檢測信息的BFD會話,可以根據(jù)相應(yīng)的檢測信息快速檢測IRF拓?fù)涞漠惓#⒓皶r響應(yīng),進(jìn)行相應(yīng)的處理,避免發(fā)生地址沖突和成員設(shè)備間流量的丟包。具體的,如圖6所示,為本發(fā)明實施例所提出的一種具體應(yīng)用場景下的堆疊分裂檢測的處理方法的流程示意圖,具體包括以下步驟步驟S601、在IRF系統(tǒng)的各成員設(shè)備中通過靜態(tài)方式設(shè)置BFD會話的源端地址和目的端地址。本步驟的目的在于為在IRF系統(tǒng)的各成員設(shè)備之間建立BFD會話進(jìn)行地址信息準(zhǔn)備。IRF系統(tǒng)中的設(shè)備雖然是獨立的設(shè)備,但是相對于IRF系統(tǒng)而言只是成員設(shè)備,這些成員設(shè)備上的端口之間通信屬于系統(tǒng)內(nèi)部的通信,傳統(tǒng)方法中通過路由下一跳建立BFD連接的時候,會由于兩端設(shè)備的ARP信息相同而無法學(xué)習(xí)到相互的ARP信息,并進(jìn)而導(dǎo)致會話無法建立,因此,為了在IRF系統(tǒng)的各成員設(shè)備之間建立BFD會話,便需要進(jìn)行特殊處理。本步驟的處理即是為了實現(xiàn)這樣的特殊處理,具體包括以下兩方面的處理(1)對于IRF系統(tǒng)的成員設(shè)備中使能了 MAD BFD檢測功能的三層接口,通過靜態(tài)方式配置BFD會話的源端地址和目的端地址。(2)按照靜態(tài)的方式指定目的端地址的出接口為MAD VLAN接口。步驟S602、在IRF系統(tǒng)中使能MAD BFD檢測功能后,各成員設(shè)備之間通過MAD VLAN 接口之間相互建立BFD會話,并相互發(fā)送攜帶相應(yīng)的狀態(tài)信息的BFD報文。通過步驟S601的處理,BFD會話兩端的成員設(shè)備之間可以不需要先學(xué)習(xí)ARP和路由信息就可以直接發(fā)送BFD報文進(jìn)行握手交互,由于BFD會話的源端地址(源IP)和目的端地址(目的IP)都是靜態(tài)指定的,因此,可以采用私有保留的IP地址作為源/目的地址, 也不會對IRF系統(tǒng)的外部路由產(chǎn)生影響。在本成員設(shè)備和其他成員設(shè)備之間經(jīng)過BFD握手交互后,BFD會話就正常建立了。之后,各成員設(shè)備之間會相互發(fā)送檢測報文(BFD報文),而由于本發(fā)明實施例所提出的技術(shù)方案的BFD回話在IRF分裂之前便可以建立,不再能像現(xiàn)有技術(shù)一樣通過是否能夠建立BFD會話來確定IRF是否分裂,因此,本發(fā)明實施例所提出的技術(shù)方案中需要對原有的BFD報文的格式進(jìn)行擴展,用于攜帶會話兩端設(shè)備各自的狀態(tài)信息,以便進(jìn)行相應(yīng)的分裂檢測,以及在分裂后的多個IRF系統(tǒng)中進(jìn)行繼續(xù)正常工作的IRF系統(tǒng)的選擇。具體的,擴展后的BFD報文中所攜帶的信息包括IRF成員設(shè)備號(即前述的設(shè)備編號信息),IRF優(yōu)先級,IRF成員設(shè)備主備狀態(tài)(即前述的設(shè)備角色信息),成員設(shè)備特性參數(shù)。具體的,本發(fā)明實施例所提出的一種BFD報文的格式示例如下
0123
0 1234567890 1234567890 1234567890 權(quán)利要求
1.一種堆疊分裂檢測的處理方法,其特征在于,所述方法至少包括以下步驟 在堆疊系統(tǒng)的各成員設(shè)備分別和堆疊系統(tǒng)內(nèi)的其他各成員設(shè)備都建立BFD會話;所述堆疊系統(tǒng)的任一成員設(shè)備與其他成員設(shè)備交互攜帶各自當(dāng)前的設(shè)備角色信息和當(dāng)前所屬堆疊系統(tǒng)的優(yōu)先級參數(shù)的BFD報文;所述成員設(shè)備確定本設(shè)備和所述其他成員設(shè)備當(dāng)前的設(shè)備角色信息均為主設(shè)備,則判斷堆疊系統(tǒng)發(fā)生分裂;所述成員設(shè)備將本設(shè)備的當(dāng)前所屬堆疊系統(tǒng)的優(yōu)先級參數(shù)與所述其他成員設(shè)備的當(dāng)前所屬堆疊系統(tǒng)的優(yōu)先級參數(shù)進(jìn)行比較;當(dāng)所述成員設(shè)備確定本設(shè)備的當(dāng)前所屬堆疊系統(tǒng)的優(yōu)先級參數(shù)優(yōu)于所述其他成員設(shè)備的當(dāng)前所屬堆疊系統(tǒng)的優(yōu)先級參數(shù)時,則維持本設(shè)備所屬的堆疊系統(tǒng)正常工作;或者,當(dāng)所述成員設(shè)備確定所述其他成員設(shè)備的當(dāng)前所屬堆疊系統(tǒng)的優(yōu)先級參數(shù)優(yōu)于本設(shè)備的當(dāng)前所屬堆疊系統(tǒng)的優(yōu)先級參數(shù)時,則關(guān)閉本設(shè)備的業(yè)務(wù)端口和本設(shè)備所屬的堆疊系統(tǒng)的其他成員設(shè)備的業(yè)務(wù)端口。
2.如權(quán)利要求1所述的方法,其特征在于,所述在堆疊系統(tǒng)的各成員設(shè)備分別和堆疊系統(tǒng)內(nèi)的其他各成員設(shè)備都建立BFD會話,包括在堆疊系統(tǒng)的各成員設(shè)備中分別預(yù)設(shè)向其他成員設(shè)備發(fā)送BFD報文的源端地址信息和目的端地址信息,用于各成員設(shè)備分別和其他各成員設(shè)備建立BFD會話。
3.如權(quán)利要求1所述的方法,其特征在于,所述堆疊系統(tǒng)的任一成員設(shè)備與其他成員設(shè)備交互攜帶各自當(dāng)前的設(shè)備角色信息和當(dāng)前所屬堆疊系統(tǒng)的優(yōu)先級參數(shù)的BFD報文之后,還包括所述成員設(shè)備確定本設(shè)備當(dāng)前的設(shè)備角色信息為主設(shè)備,而所述其他成員設(shè)備當(dāng)前的設(shè)備角色信息為從設(shè)備,則放棄進(jìn)行處理。
4.如權(quán)利要求1所述的方法,其特征在于,所述堆疊系統(tǒng)的任一成員設(shè)備與其他成員設(shè)備交互攜帶各自當(dāng)前的設(shè)備角色信息和當(dāng)前所屬堆疊系統(tǒng)的優(yōu)先級參數(shù)的BFD報文之后,還包括所述成員設(shè)備確定本設(shè)備當(dāng)前的設(shè)備角色信息為從設(shè)備,而所述其他成員設(shè)備當(dāng)前的設(shè)備角色信息為主設(shè)備,則放棄進(jìn)行處理;所述成員設(shè)備確定本設(shè)備當(dāng)前的設(shè)備角色信息和所述其他成員設(shè)備當(dāng)前的設(shè)備角色信息均為從設(shè)備,則放棄進(jìn)行處理。
5.如權(quán)利要求1所述的方法,其特征在于,所述在堆疊系統(tǒng)的各成員設(shè)備分別和堆疊系統(tǒng)內(nèi)的其他各成員設(shè)備都建立BFD會話之后,還包括當(dāng)所述成員設(shè)備判斷本設(shè)備的MAD VLAN的邏輯鏈路發(fā)生故障時,所述成員設(shè)備刪除本設(shè)備通過所述MAD VLAN的邏輯鏈路所建立的BFD會話;當(dāng)所述成員設(shè)備判斷本設(shè)備的MAD VLAN的邏輯鏈路的故障恢復(fù)時,所述成員設(shè)備通過所述MAD VLAN的邏輯鏈路分別和堆疊系統(tǒng)內(nèi)的其他各成員設(shè)備重新建立BFD會話。
6.一種網(wǎng)絡(luò)設(shè)備,可作為成員設(shè)備與其他成員設(shè)備連接組成堆疊系統(tǒng),其特征在于,所述網(wǎng)絡(luò)設(shè)備包括建立模塊,用于分別和堆疊系統(tǒng)內(nèi)的其他各成員設(shè)備都建立BFD會話; 通信模塊,用于通過所述建立模塊所建立的BFD會話,與其他各成員設(shè)備交互攜帶各自當(dāng)前的設(shè)備角色信息和當(dāng)前所屬堆疊系統(tǒng)的優(yōu)先級參數(shù)的BFD報文;狀態(tài)識別模塊,用于識別所述網(wǎng)絡(luò)設(shè)備當(dāng)前的設(shè)備角色信息,以及所述通信模塊所接收到的所述BFD報文所攜帶的所述其他成員設(shè)備當(dāng)前的設(shè)備角色信息;比較模塊,用于在所述狀態(tài)識別模塊確定所述網(wǎng)絡(luò)設(shè)備和所述其他成員設(shè)備當(dāng)前的設(shè)備角色信息均為主設(shè)備時,確定堆疊系統(tǒng)發(fā)生分裂,并將所述通信模塊所接收到的所述BFD 報文所攜帶的所述其他成員設(shè)備的當(dāng)前所屬堆疊系統(tǒng)的優(yōu)先級參數(shù)與所述網(wǎng)絡(luò)設(shè)備的當(dāng)前所屬堆疊系統(tǒng)的優(yōu)先級參數(shù)進(jìn)行比較;處理模塊,用于在所述比較模塊確定所述網(wǎng)絡(luò)設(shè)備的當(dāng)前所屬堆疊系統(tǒng)的優(yōu)先級參數(shù)優(yōu)于所述其他成員設(shè)備的當(dāng)前所屬堆疊系統(tǒng)的優(yōu)先級參數(shù)時,維持所述網(wǎng)絡(luò)設(shè)備所屬的堆疊系統(tǒng)正常工作;或者,在所述比較模塊確定所述其他成員設(shè)備的當(dāng)前所屬堆疊系統(tǒng)的優(yōu)先級參數(shù)優(yōu)于所述網(wǎng)絡(luò)設(shè)備的當(dāng)前所屬堆疊系統(tǒng)的優(yōu)先級參數(shù)時,關(guān)閉所述網(wǎng)絡(luò)設(shè)備的業(yè)務(wù)端口和所述網(wǎng)絡(luò)設(shè)備所屬的堆疊系統(tǒng)的其他成員設(shè)備的業(yè)務(wù)端口。
7.如權(quán)利要求6所述的網(wǎng)絡(luò)設(shè)備,其特征在于,所述建立模塊,用于根據(jù)所述網(wǎng)絡(luò)設(shè)備中預(yù)設(shè)的向堆疊系統(tǒng)內(nèi)的其他成員設(shè)備發(fā)送BFD報文的源端地址信息和目的端地址信息,分別和堆疊系統(tǒng)內(nèi)的其他各成員設(shè)備都建立BFD會話。
8.如權(quán)利要求6所述的網(wǎng)絡(luò)設(shè)備,其特征在于,所述比較模塊,還用于在所述狀態(tài)識別模塊確定所述網(wǎng)絡(luò)設(shè)備當(dāng)前的設(shè)備角色信息為主設(shè)備,而所述其他成員設(shè)備當(dāng)前的設(shè)備角色信息為從設(shè)備時,放棄進(jìn)行處理;在所述狀態(tài)識別模塊確定所述網(wǎng)絡(luò)設(shè)備當(dāng)前的設(shè)備角色信息為從設(shè)備,而所述其他成員設(shè)備當(dāng)前的設(shè)備角色信息為主設(shè)備時,放棄進(jìn)行處理;在所述狀態(tài)識別模塊確定所述網(wǎng)絡(luò)設(shè)備當(dāng)前的設(shè)備角色信息和所述其他成員設(shè)備當(dāng)前的設(shè)備角色信息均為主設(shè)備時,放棄進(jìn)行處理。
9.如權(quán)利要求6所述的網(wǎng)絡(luò)設(shè)備,其特征在于,所述建立模塊,還用于當(dāng)所述網(wǎng)絡(luò)設(shè)備的MAD VLAN的邏輯鏈路發(fā)生故障時,刪除通過所述MAD VLAN的邏輯鏈路所建立的BFD會話;當(dāng)所述網(wǎng)絡(luò)設(shè)備的MAD VLAN的邏輯鏈路的故障恢復(fù)時,通過所述MAD VLAN的邏輯鏈路分別和堆疊系統(tǒng)內(nèi)的其他各成員設(shè)備重新建立BFD會話。
全文摘要
本發(fā)明公開了一種堆疊分裂檢測的處理方法和設(shè)備,通過應(yīng)用本發(fā)明的技術(shù)方案,堆疊系統(tǒng)的各成員設(shè)備之間通過預(yù)先建立的BFD會話進(jìn)行攜帶設(shè)備角色信息和當(dāng)前所屬堆疊系統(tǒng)的優(yōu)先級參數(shù)的BFD報文的發(fā)送,各成員設(shè)備通過比較自身與其他成員設(shè)備的設(shè)備角色信息,檢測是否發(fā)生堆疊系統(tǒng)分裂,并在分裂后,直接根據(jù)當(dāng)前所屬堆疊系統(tǒng)的優(yōu)先級參數(shù)確定自身是否繼續(xù)正常工作,從而,可以在堆疊分裂后,快速選擇繼續(xù)正常運行的堆疊系統(tǒng),避免了在堆疊系統(tǒng)分裂后才能創(chuàng)建BFD會話的技術(shù)方案所帶來的地址信息獲取、會話創(chuàng)建以及優(yōu)先級信息交互等過程所消耗的時間,提高了相應(yīng)處理過程的效率,降低了發(fā)生堆疊沖突和流量丟包的概率,提高了系統(tǒng)的可靠性。
文檔編號H04L12/24GK102347867SQ201110358709
公開日2012年2月8日 申請日期2011年11月14日 優(yōu)先權(quán)日2011年11月14日
發(fā)明者宋小恒 申請人:杭州華三通信技術(shù)有限公司