一種鏈路快速收斂的方法、裝置及系統(tǒng)的制作方法
【技術(shù)領(lǐng)域】
[0001]本發(fā)明屬于數(shù)據(jù)通信領(lǐng)域,尤其涉及一種鏈路快速收斂的方法、裝置及系統(tǒng)。
【背景技術(shù)】
[0002]網(wǎng)絡(luò)設(shè)備間為增加帶寬、負(fù)載分擔(dān)、以及增加設(shè)備間可靠性等網(wǎng)絡(luò)設(shè)備間傳輸性能的要求,一方面,可以通過(guò)配置鏈路聚合實(shí)現(xiàn)屬于同一鏈路聚合組的成員設(shè)備的各個(gè)成員端口之間彼此動(dòng)態(tài)備份。另一方面,堆疊技術(shù)可以將兩臺(tái)及以上的網(wǎng)絡(luò)設(shè)備通過(guò)堆疊電纜連接在一起構(gòu)成一個(gè)獨(dú)立運(yùn)行的堆疊系統(tǒng),這些網(wǎng)絡(luò)設(shè)備稱為堆疊成員設(shè)備,簡(jiǎn)稱成員設(shè)備。在堆疊系統(tǒng)中,成員設(shè)備間通過(guò)虛擬交換鏈路(Virtual Switching Link,簡(jiǎn)稱VSL)完成連接,成員設(shè)備間的虛擬交換鏈路主要用于保證設(shè)備間的數(shù)據(jù)轉(zhuǎn)發(fā),一般情況下虛擬交換鏈路中的堆疊端口中會(huì)加入多個(gè)物理成員端口,該系統(tǒng)可以提高網(wǎng)絡(luò)傳輸?shù)姆€(wěn)定性和可靠性。
[0003]以上兩種現(xiàn)有網(wǎng)絡(luò)設(shè)備連接技術(shù)中,當(dāng)構(gòu)成鏈路的某一個(gè)成員端口出現(xiàn)異常(如:端口退出鏈路、端口物理DOWN或者端口?;頓OWN)時(shí),現(xiàn)有堆疊系統(tǒng)在端口發(fā)生異常,進(jìn)行端口切換通常會(huì)存在時(shí)延。以虛擬交換鏈路的控制端口觸發(fā)選舉為例子進(jìn)行說(shuō)明,控制端口選舉步驟為:步驟1、原控制端口發(fā)生某種異常,系統(tǒng)通告控制端口 DOWN事件;步驟2、接收到控制端口 DOWN事件,主設(shè)備和成員設(shè)備會(huì)分別進(jìn)行控制端口選舉;步驟3、將選舉的控制端口信息更新到軟硬件表項(xiàng)。在步驟1中原控制端口發(fā)生異常時(shí),此時(shí)主設(shè)備和成員設(shè)備間數(shù)據(jù)轉(zhuǎn)發(fā)業(yè)務(wù)已經(jīng)無(wú)法交互;直到新的控制端口更新成功之前,主設(shè)備和成員設(shè)備之間的所有數(shù)據(jù)均會(huì)發(fā)往原控制端口進(jìn)行轉(zhuǎn)發(fā),由于原控制端口已經(jīng)出現(xiàn)異常,此時(shí)就會(huì)導(dǎo)致整個(gè)堆疊系統(tǒng)不穩(wěn)定,會(huì)出現(xiàn)短暫的業(yè)務(wù)中斷,嚴(yán)重時(shí)可能會(huì)出現(xiàn)堆疊系統(tǒng)分裂。公開(kāi)號(hào)為CN104158683A的發(fā)明專(zhuān)利中提出一種跨設(shè)備聚合組快速收斂方法及系統(tǒng)。在該發(fā)明專(zhuān)利中提出聚合組中成員端口發(fā)生物理DOWN時(shí),可以采用構(gòu)建中斷消息方式加快聚合組收斂速度,此方法僅限于針對(duì)因成員端口物理DOWN而觸發(fā)聚合組的收斂有效,對(duì)于成員端口是通過(guò)人工干預(yù)而退出聚合組的情況,該方法不是一種最優(yōu)方案。因?yàn)楫?dāng)通過(guò)成員端口物理DOWN產(chǎn)生中斷消息通知收斂時(shí),數(shù)據(jù)轉(zhuǎn)發(fā)業(yè)務(wù)可能已經(jīng)受影響,后續(xù)收斂速度再快也會(huì)對(duì)設(shè)備穩(wěn)定性產(chǎn)生影響。
【發(fā)明內(nèi)容】
[0004]本發(fā)明提供一種鏈路快速收斂的方法、裝置及系統(tǒng),用以解決系統(tǒng)中有成員端口退出鏈路時(shí),鏈路無(wú)法快速收斂選出新的業(yè)務(wù)數(shù)據(jù)交互端口,對(duì)系統(tǒng)的穩(wěn)定性產(chǎn)生影響的問(wèn)題。
[0005]為實(shí)現(xiàn)上述目的,本發(fā)明的主要目的在于提供一種鏈路快速收斂的方法,所述鏈路建立在包括至少兩條物理連接的成員設(shè)備之間,該方法包括:
[0006]收到成員端口退出指令的成員設(shè)備,向?qū)Χ顺蓡T設(shè)備發(fā)送消息通知報(bào)文,告知對(duì)端成員設(shè)備所述成員端口即將異常;
[0007]對(duì)端成員設(shè)備在收到所述消息通知報(bào)文后,提前觸發(fā)與所述成員端口對(duì)應(yīng)連接的本地成員端口進(jìn)行業(yè)務(wù)切換;
[0008]所述收到成員端口退出指令的成員設(shè)備執(zhí)行相應(yīng)的退出操作。
[0009]進(jìn)一步地,所述收到成員端口退出指令的成員設(shè)備,向?qū)Χ顺蓡T設(shè)備發(fā)送消息通知報(bào)文,具體實(shí)現(xiàn)步驟包括:
[0010]獲取所述成員端口的物理端口編號(hào)和所述成員端口將退出的鏈路的邏輯端口編號(hào);
[0011]組裝消息通知報(bào)文,并將組裝好的消息通知報(bào)文按最高優(yōu)先級(jí)方式發(fā)送給對(duì)端成員設(shè)備;
[0012]所述收到成員端口退出指令的成員設(shè)備執(zhí)行相應(yīng)的退出操作,具體實(shí)現(xiàn)步驟包括:從本地非異常成員端口中選出新的業(yè)務(wù)轉(zhuǎn)發(fā)端口,同時(shí)更新軟硬件轉(zhuǎn)發(fā)表。
[0013]進(jìn)一步地,所述消息通知報(bào)文內(nèi)容包含:消息類(lèi)型、成員端口的物理端口編號(hào)、對(duì)應(yīng)鏈路的邏輯端口編號(hào)。
[0014]進(jìn)一步地,所述消息通知報(bào)文為是用戶自定義的報(bào)文。
[0015]進(jìn)一步地,所述對(duì)端成員設(shè)備在收到消息通知報(bào)文后,提前觸發(fā)與所述成員端口對(duì)應(yīng)連接的本地成員端口進(jìn)行業(yè)務(wù)切換,具體實(shí)現(xiàn)步驟包括:
[0016]對(duì)端成員設(shè)備接收到有成員端口退出鏈路的消息通知報(bào)文后,解析該消息通知報(bào)文,獲取即將退出鏈路的成員端口的物理端口編號(hào)和所述成員端口將退出的鏈路的邏輯端口編號(hào);
[0017]根據(jù)即將退出鏈路的成員端口的物理端口編號(hào)和所述成員端口將退出的鏈路的邏輯端口編號(hào),查找與之對(duì)應(yīng)連接的本地成員端口的物理端口編號(hào)和對(duì)應(yīng)連接鏈路的邏輯端口編號(hào);
[0018]根據(jù)查找到的本地端口的物理端口編號(hào)和對(duì)應(yīng)連接鏈路的邏輯端口編號(hào)后,觸發(fā)本地成員端口進(jìn)行新業(yè)務(wù)端口的切換,同時(shí)更新軟硬件轉(zhuǎn)發(fā)表。
[0019]本發(fā)明的又一目的還在于,提供一種鏈路快速收斂的裝置,應(yīng)用在與對(duì)端成員設(shè)備建立包括至少兩條物理連接的鏈路的成員設(shè)備中,所述裝置具體包括:
[0020]端口編號(hào)獲取模塊,用于在接收到成員端口退出指令后,獲取所述成員端口的物理端口編號(hào)和所述成員端口將退出的鏈路的邏輯端口編號(hào);
[0021]報(bào)文發(fā)送模塊,用于利用獲取的所述成員端口的物理端口編號(hào)和所述成員端口將退出的鏈路的邏輯端口編號(hào),組裝消息通知報(bào)文,并將組裝好的消息通知報(bào)文按最高優(yōu)先級(jí)方式發(fā)送給對(duì)端成員設(shè)備;
[0022]端口選擇模塊,用于在報(bào)文發(fā)送模塊完成消息通知報(bào)文的發(fā)送后,從本地與所述成員端口將退出的鏈路對(duì)應(yīng)的成員端口中選出新的業(yè)務(wù)轉(zhuǎn)發(fā)端口。
[0023]進(jìn)一步的,所述裝置還包括報(bào)文接收模塊,用于接收來(lái)自對(duì)端成員設(shè)備的消息通知報(bào)文;
[0024]所述端口編號(hào)獲取模塊,還用于解析所述報(bào)文接收模塊接收的消息通知報(bào)文,獲取消息通知報(bào)文中對(duì)端成員設(shè)備的成員端口的物理端口編號(hào)和所述成員端口將退出的鏈路的邏輯端口編號(hào);并根據(jù)獲取的對(duì)端成員設(shè)備的成員端口的物理端口編號(hào)和所述成員端口將退出的鏈路的邏輯端口編號(hào),查找與之對(duì)應(yīng)連接的本地成員端口的物理端口編號(hào)和對(duì)應(yīng)連接鏈路的邏輯端口編號(hào);
[0025]端口選擇模塊,還用于所述端口編號(hào)獲取到本地成員端口的物理端口編號(hào)和對(duì)應(yīng)連接鏈路的邏輯端口編號(hào)后,觸發(fā)所述本地成員端口對(duì)應(yīng)連接的鏈路進(jìn)行業(yè)務(wù)端口的切換。
[0026]進(jìn)一步的,所述裝置還包括端口更新模塊,用于更新軟硬件轉(zhuǎn)發(fā)表。
[0027]進(jìn)一步地,所述消息通知報(bào)文內(nèi)容包含:消息類(lèi)型、將退出鏈路的成員端口的物理端口編號(hào)和所述成員端口將退出的鏈路的邏輯端口編號(hào)。
[0028]進(jìn)一步地,所述消息通知報(bào)文為用戶自定義的報(bào)文。
[0029]本發(fā)明的另一個(gè)目還包括一種鏈路快速收斂的系統(tǒng),包括兩個(gè)上述鏈路快速收斂的裝置,兩個(gè)所述裝置之間建立包括至少兩條物理連接的鏈路。
[0030]本發(fā)明的有益效果為:在成員端口退出鏈路的操作過(guò)程中,存在數(shù)據(jù)交互的設(shè)備間的端口在未接收到成員端口真正退出鏈路之前,提前預(yù)知即將發(fā)生端口退出鏈路事件,觸發(fā)鏈路的提前收斂,保證轉(zhuǎn)發(fā)數(shù)據(jù)提前切換到未發(fā)生異常的物理端口,提高了系統(tǒng)內(nèi)設(shè)備間的穩(wěn)定性。
【附圖說(shuō)明】
[0031 ]圖1是本發(fā)明實(shí)施例的方法流程圖;
[0032]圖2是本發(fā)明實(shí)施例堆疊系統(tǒng)網(wǎng)絡(luò)結(jié)構(gòu)圖;
[0033]圖3是本發(fā)明實(shí)施例1的裝置實(shí)現(xiàn)框圖;
[0034]圖4是本發(fā)明實(shí)施例2的裝置實(shí)現(xiàn)框圖;
[0035]圖5是本發(fā)明實(shí)施例3的裝置實(shí)現(xiàn)框圖;
[0036]圖6是本發(fā)明實(shí)施例的系統(tǒng)實(shí)現(xiàn)框圖。
【具體實(shí)施方式】
[0037]為使本發(fā)明的技術(shù)方案更加清楚明白,現(xiàn)結(jié)合附圖對(duì)本發(fā)明做進(jìn)一步詳細(xì)說(shuō)明:
[0038]本發(fā)明實(shí)施例提供一種鏈路快速收斂的方法,該方法采用預(yù)通知機(jī)制,讓系統(tǒng)中成員設(shè)備提前預(yù)知鏈路中某成員端口即將發(fā)生異常,從而加快鏈路中數(shù)據(jù)交互端口的切換以及軟硬件