亚洲狠狠干,亚洲国产福利精品一区二区,国产八区,激情文学亚洲色图

多環(huán)網(wǎng)多根交換機(jī)的檢測(cè)和自愈算法的制作方法

文檔序號(hào):7887011閱讀:489來(lái)源:國(guó)知局
專(zhuān)利名稱:多環(huán)網(wǎng)多根交換機(jī)的檢測(cè)和自愈算法的制作方法
技術(shù)領(lǐng)域
本發(fā)明涉及工業(yè)以太網(wǎng)中數(shù)據(jù)鏈路層的多環(huán)路多根交換機(jī)的檢測(cè)和自愈算法,采用主從式架構(gòu),可以快速的判斷鏈路是否成環(huán),并在成環(huán)后可以快速禁用一個(gè)端口阻止成環(huán),在鏈路故障的時(shí)候可以打開(kāi)備用端口,恢復(fù)通信。本算法可以檢測(cè)數(shù)據(jù)鏈路檢測(cè)是否成環(huán),成環(huán)后快速禁用一個(gè)特定的交換機(jī)端口,并且在鏈路故障后打開(kāi)禁用的端口使鏈路重新恢復(fù)正常。同時(shí)本算法中支持鏈路中存在多個(gè)環(huán)路,每個(gè)環(huán)路都可以檢測(cè)和自愈。
背景技術(shù)
通訊領(lǐng)域中交換機(jī)的鏈接一般是樹(shù)形拓?fù)浣Y(jié)構(gòu),樹(shù)形拓?fù)浣Y(jié)構(gòu)造成一條鏈路故障后網(wǎng)絡(luò)的各個(gè)部分失去聯(lián)系。工業(yè)現(xiàn)場(chǎng)中的交換機(jī)的拓?fù)浣Y(jié)構(gòu)經(jīng)常是環(huán)形的,任意交換機(jī)之間有2個(gè)線路可達(dá)。環(huán)形的拓?fù)浣Y(jié)構(gòu)會(huì)造風(fēng)暴,引發(fā)交換機(jī)的MAC地址表異常,所以在工業(yè)通訊領(lǐng)域,需要一套檢測(cè)交換機(jī)成環(huán),并且成環(huán)后可以快速禁用交換機(jī)的端口,阻止鏈路成環(huán)的算法,同時(shí)在鏈路產(chǎn)生故障的時(shí)候,可以打開(kāi)禁用的端口,讓通信回復(fù)正常。同時(shí)鏈路中的環(huán)路不止一條,需要區(qū)分和分別加以檢測(cè)和自愈。

發(fā)明內(nèi)容
相互連接的交換機(jī)如果形成環(huán)路,造成一種現(xiàn)象就是A交換機(jī)發(fā)出的報(bào)文,最后會(huì)被A交換機(jī)接收,此時(shí)只需要該環(huán)路中的一臺(tái)交換機(jī)斷開(kāi)一條鏈路就可以阻止成環(huán)。本算法選擇環(huán)路中MAC地址最小的交換機(jī),讓該交換機(jī)負(fù)責(zé)禁用自己的一個(gè)端口阻止環(huán)路。 假設(shè)交換機(jī)A的1 口,發(fā)送的數(shù)據(jù),最后回到交換機(jī)A的2 口,同時(shí)交換機(jī)的MAC地址在環(huán)路中最小,就決定禁用端口編號(hào)大的端口。環(huán)路中的MAC地址最小的交換機(jī)是根交換機(jī)。網(wǎng)絡(luò)中存在多個(gè)環(huán),就有多個(gè)根交換機(jī)。每個(gè)環(huán)中的每個(gè)根交換機(jī)分別負(fù)責(zé)自己所在環(huán)的鏈路檢測(cè)和自愈。通過(guò)這種方法,可以把一個(gè)大的網(wǎng)絡(luò)劃分成幾個(gè)獨(dú)立的小環(huán)。根交換機(jī)檢測(cè)出成環(huán)以后,配置根端口,然后在成環(huán)的兩個(gè)端口分別發(fā)出鏈路成環(huán)確認(rèn)報(bào)文,該報(bào)文中包括根交換機(jī)的MAC地址,鏈路編號(hào),鏈路的深度(初始為0),發(fā)送的方向(根端口的報(bào)文時(shí)正方向,另外一個(gè)端口是負(fù)方向)。環(huán)路中的交換機(jī)接收這兩個(gè)報(bào)文,設(shè)置自己的屬性,該屬性包含自己在環(huán)路中的向上的端口,向下的端口,鏈路的深度等等。同時(shí)這些報(bào)文會(huì)被接收的交換機(jī)進(jìn)行轉(zhuǎn)發(fā),轉(zhuǎn)發(fā)時(shí)深度加1。在一個(gè)環(huán)路中交換機(jī)的角色和端口的角色是不同的,它們的作用和收發(fā)報(bào)文的類(lèi)型也不相同。具體的介紹如下交換機(jī)角色和端口角色交換機(jī)的角色有兩種,分別是根交換機(jī)和普通交換機(jī)。1、根交換機(jī)在一個(gè)成環(huán)的網(wǎng)絡(luò)中,MAC地址最小的交換機(jī)是根交換機(jī),它負(fù)責(zé)禁用自己的端口,阻止鏈路成環(huán),同時(shí)在鏈路故障時(shí),負(fù)責(zé)打開(kāi)被禁用的端口。2、普通交換機(jī)除根交換機(jī)以外的交換機(jī)都是普通交換機(jī)。根交換機(jī)的端口角色四種1、根端口 根交換機(jī)中連接成環(huán)的端口
2、普通端口 根交換機(jī)中非連接成環(huán)的端口。3、葉子端口 連接終端設(shè)備的端口(需要特別指定)4、阻塞端口 根交換機(jī)中被禁用的端口普通交換機(jī)的端口角色有四種1、向上端口 向上連接到根交換機(jī)中連接成環(huán)的端口2、葉子端口 連接終端設(shè)備的端口(需要特別指定)3、向下端口 出了 1和2的端口外其他類(lèi)型的端口。4、待定端口 不是上述三種端口的任何一種環(huán)路中的交換機(jī)它們的角色不同,它們保留了不同的端口屬性,普通交換機(jī)的端口屬性包含根MAC地址,向上的MAC地址,鏈路編號(hào),深度編號(hào)(從根交換機(jī)到本交換機(jī)的中間經(jīng)過(guò)的交換機(jī)的個(gè)數(shù))。可以根據(jù)根MAC和鏈路編號(hào)區(qū)分出各個(gè)不同的環(huán)。所有屬性在初始化時(shí)都是0,然后收到根交換機(jī)發(fā)出的鏈路成環(huán)的確認(rèn)報(bào)文,進(jìn)行計(jì)算和更新。交換機(jī)可能參與了多個(gè)環(huán),鏈路編號(hào)和深度編號(hào)不相等,根MAC地址和向上的 MAC地址不相等。發(fā)送報(bào)文的類(lèi)型1、鏈路連上的hello報(bào)文交換機(jī)的端口打開(kāi),相鄰的兩臺(tái)交換機(jī)之間發(fā)送的報(bào)文,該報(bào)文不會(huì)被接受方轉(zhuǎn)發(fā)。該報(bào)文包含交換機(jī)的屬性。2、鏈路連上通知報(bào)文交換機(jī)的端口打開(kāi),打開(kāi)的端口發(fā)送的報(bào)文,該報(bào)文會(huì)被接受方接受轉(zhuǎn)發(fā)和修改。3、檢測(cè)成環(huán)確認(rèn)報(bào)文環(huán)路檢測(cè)出成環(huán)以后,根交換機(jī)發(fā)出確認(rèn)成環(huán)報(bào)文,報(bào)文包含根MAC地址,鏈路編號(hào)和方向等信息。相連的交換機(jī)會(huì)接收,修改轉(zhuǎn)發(fā)。檢測(cè)成環(huán)確認(rèn)報(bào)文中有方向字段,方向包含正方向和負(fù)方向兩種可能,分別從兩個(gè)不同的端口發(fā)出來(lái)。4、鏈路斷開(kāi)的通知報(bào)文檢測(cè)出鏈路斷開(kāi)的交換機(jī)發(fā)出,它順著交換機(jī)的向上的端口進(jìn)行轉(zhuǎn)發(fā),該報(bào)文傳到根交換機(jī)后,根交換機(jī)以前被打開(kāi)被阻塞的端口。5、請(qǐng)求鏈路斷開(kāi)報(bào)文鏈路成環(huán)以后,鏈路中的鏈路連上通知報(bào)文,最終會(huì)被發(fā)送方接受,但是如果接收方的MAC地址不是鏈路中的最小的MAC地址,它沒(méi)有權(quán)利禁用自己端口,但是它會(huì)發(fā)送鏈路斷開(kāi)的請(qǐng)求報(bào)文,該報(bào)文會(huì)被收到并轉(zhuǎn)發(fā),最終會(huì)被環(huán)路中的MAC地址最小的交換機(jī)接收并處理。檢測(cè)成環(huán)根據(jù)的hello報(bào)文和鏈路連上的通知報(bào)文確定的。第一種情況是鏈路沒(méi)有檢測(cè)出成環(huán),根據(jù)鏈路連上通知報(bào)文判斷,當(dāng)交換機(jī)的端口連上時(shí)對(duì)自己所有的端口發(fā)出鏈路連上通知報(bào)文(報(bào)文的內(nèi)容是自己的MAC,連上的端口,最小的MAC,剛開(kāi)始等于自己的MAC),對(duì)端交換機(jī)接收以后,根據(jù)自己的MAC和最小的MAC比較,修改最小的MAC,然后轉(zhuǎn)發(fā)出去。報(bào)文在鏈路中被轉(zhuǎn)發(fā),如果線路成環(huán),最終該報(bào)文會(huì)被最開(kāi)始的發(fā)送方接受,此時(shí)判斷接收的MAC和自己的MAC是否相等,并且自己的MAC和最小的MAC相等,處理是下面的步驟A的描述。如果接收的MAC和自己的MAC相等,但是自己的MAC不是最小的MAC,參考步驟B的描述。1、步驟A說(shuō)明環(huán)路中最小MAC地址的交換機(jī)在接收端口和最開(kāi)始的發(fā)送端口發(fā)出檢測(cè)成環(huán)確認(rèn)報(bào)文(一個(gè)正方向的報(bào)文,一個(gè)負(fù)方向的報(bào)文),接受交換機(jī)根據(jù)這兩種報(bào)文設(shè)置自己的屬性和確認(rèn)自己的向上的端口和向下的端口,比如收到正方向的報(bào)文,轉(zhuǎn)發(fā)負(fù)方向的報(bào)文,則該端口是向上的端口,反之則是向下的借口,如果只滿足一種,那么該端口沒(méi)有參與成環(huán)。2、步驟B的說(shuō)明鏈路檢測(cè)出成環(huán)了,但是檢測(cè)出來(lái)的交換機(jī)的MAC地址在鏈路環(huán)路中并不是最小的,此時(shí)它發(fā)出鏈路斷開(kāi)請(qǐng)求報(bào)文,該請(qǐng)求報(bào)文被轉(zhuǎn)發(fā),然后被鏈路中MAC 地址最小的交換機(jī)收到,它發(fā)現(xiàn)自己的MAC和最小的MAC相等,然后它的接收端口發(fā)出鏈路連上的通知報(bào)文,最后被自己的其他端口收到,處理過(guò)程和步驟A完全相同。第二種方法是鏈路成環(huán)后,鏈路中的交換機(jī)的屬性已經(jīng)正確設(shè)置完成后。環(huán)路中的交換機(jī)有新的端口加入進(jìn)來(lái)了,新加入的端口和直接相連的交換機(jī)之間發(fā)送hello報(bào)文??梢园凑説ello中攜帶的交換機(jī)屬性信息判斷鏈路是否成環(huán),如果收到的hello報(bào)文中根MAC和交換機(jī)保存的交換機(jī)屬性集合中的根MAC相等同時(shí)鏈路編號(hào)一樣,那么肯定成環(huán),此時(shí)可以禁用最新打開(kāi)的那個(gè)端口。上面兩種檢測(cè)的方式看出在最好情況下通過(guò)相連的交換機(jī)的2次hello報(bào)文的發(fā)送和接收和一次交換機(jī)的內(nèi)部的比較和判斷,檢測(cè)成環(huán)的時(shí)間程度取決于鏈路掃描的時(shí)間間隔。同時(shí)在最差情況小,鏈路的連上通知報(bào)文需要在鏈路環(huán)上循環(huán)一周,如果環(huán)路中的交換機(jī)個(gè)數(shù)越多則檢測(cè)的時(shí)間則越長(zhǎng)。同時(shí)鏈路中的交換機(jī)端口每次連上都發(fā)出通知報(bào)文, 該報(bào)文會(huì)被轉(zhuǎn)發(fā)的,所以在剛開(kāi)始是鏈路中會(huì)有多個(gè)鏈路連上的通知報(bào)文在鏈路中傳遞。交換機(jī)內(nèi)部有一個(gè)定時(shí)線程,它周期性掃描交換機(jī)的每個(gè)端口,如果發(fā)現(xiàn)交換機(jī)的某個(gè)交換機(jī)的端口斷開(kāi),進(jìn)行判斷該端口的角色,如果該端口是個(gè)葉子端口(該端口連接的是終端設(shè)備),則不作任何處理。否則判斷交換機(jī)的在鏈路中的角色,如果交換機(jī)是根交換機(jī),而且斷開(kāi)的端口是根端口,打開(kāi)交換機(jī)的阻塞端口,如果斷開(kāi)的端口是阻塞端口, 那么可以不作任何處理。如果該端口是普通端口(沒(méi)有連接終端,沒(méi)有參與成環(huán)的端口), 那么發(fā)出鏈路斷開(kāi)的通知報(bào)文。上面的檢測(cè)斷開(kāi)的方法是針對(duì)的根交換機(jī),針對(duì)普通交換機(jī)的檢測(cè)方法比較簡(jiǎn)單掃描發(fā)現(xiàn)交換機(jī)的端口,如果端口是葉子端口,則不作任何處理,如果是向下的端口,則從向上的端口發(fā)送鏈路斷開(kāi)的通知報(bào)文(同時(shí)清空MAC地址庫(kù)),該報(bào)文沿著向上的鏈路轉(zhuǎn)發(fā),最終轉(zhuǎn)發(fā)到根交換機(jī),然后跟交換機(jī)根據(jù)報(bào)文的內(nèi)容打開(kāi)阻塞大端口。根據(jù)上面小結(jié)的檢測(cè)的鏈路端口斷開(kāi)和自愈的方法,可以使鏈路重新自愈,但是前提是該鏈路以前被檢測(cè)出成環(huán),根交換機(jī)禁用了引發(fā)阻塞的一個(gè)端口。它在最好的情況是斷開(kāi)的端口剛好是葉子端口,此時(shí)交換機(jī)可以不作任何處理。如果斷開(kāi)的端口是根交換機(jī)的根端口,只需要打開(kāi)禁用的端口接口,自愈時(shí)間很短決定于端口的掃描時(shí)間間隔。如果是非根交換機(jī)的端口,如果是葉子則不用處理,如果是向下的端口,那么需要沿著向上的端口發(fā)送鏈路斷開(kāi)的更新通知消息,該消息被接收的交換機(jī)向上轉(zhuǎn)發(fā),一直到根交換機(jī),然后根交換機(jī)打開(kāi)以前被禁用的端口,自愈時(shí)間由斷開(kāi)的交換機(jī)到根交換機(jī)的深度決定,深度越深則自愈時(shí)間越長(zhǎng)。


圖1環(huán)網(wǎng)檢測(cè)示圖2交換機(jī)的角色和端口角色圖3交換機(jī)屬性設(shè)置的過(guò)程
圖4通知報(bào)文判斷鏈路成環(huán)的前半部分圖5通知報(bào)文判斷鏈路成環(huán)的后半部分圖6 hello報(bào)文通知判斷鏈路成環(huán)圖7根交換機(jī)的端口檢測(cè)和自愈
圖8普通交換機(jī)的的端口檢測(cè)和自愈
具體實(shí)施例方式兩臺(tái)交換機(jī)連上首先兩個(gè)交換機(jī)之間通過(guò)hello報(bào)文發(fā)送自己的交換機(jī)的屬性, 收到報(bào)文后進(jìn)行判斷,如果它們的根交換機(jī)MAC相等和鏈路的編號(hào)相等且兩種都不是零, 它們以前在一個(gè)環(huán)路中,它們連上則肯定成環(huán),該端口立即被禁用。否則發(fā)出鏈路連上通知報(bào)文,該報(bào)文被交換機(jī)進(jìn)行轉(zhuǎn)發(fā),最后回到源發(fā)送方進(jìn)行判斷如果它的MAC最小,那么在收到和發(fā)出的兩個(gè)端口上發(fā)出方向相反的鏈接成環(huán)確認(rèn)報(bào)文,接收?qǐng)?bào)文的交換機(jī)根據(jù)報(bào)文的內(nèi)容設(shè)置自己的屬性。源發(fā)送方接收到自己發(fā)送的報(bào)文后,禁用端口中編號(hào)大的端口。鏈路斷開(kāi)的時(shí)候,交換機(jī)判斷自己的角色和端口的角色,如果是根交換機(jī),斷掉的端口是根端口,那個(gè)它打開(kāi)禁用的端口。如果它是普通交換機(jī),斷掉的端口是向下的端口, 它向上發(fā)出鏈路斷開(kāi)通知報(bào)文,該報(bào)文一直被轉(zhuǎn)發(fā),同時(shí)接收的交換機(jī)情況接收端口的MAC 地址庫(kù),直到被根交換機(jī)接收到,然后根交換機(jī)打開(kāi)禁用的端口,鏈路恢復(fù)正常。
權(quán)利要求
1.工業(yè)以太網(wǎng)中數(shù)據(jù)鏈路層的多環(huán)路多根交換機(jī)的檢測(cè)和自愈算法,其特征是采用主從式架構(gòu),可快速判斷鏈路是否成環(huán),并在成環(huán)后可快速禁用一個(gè)端口阻止成環(huán),同時(shí)在鏈路故障的時(shí)候可以打開(kāi)備用端口,恢復(fù)通信。
2.根據(jù)權(quán)利要求說(shuō)明書(shū)1所述的多環(huán)路檢測(cè)和自愈方法,其特征是鏈路成環(huán)后,成環(huán)鏈路中MAC最小的交換機(jī)設(shè)成根交換機(jī),由它負(fù)責(zé)鏈路的檢測(cè)和自愈。
3.根據(jù)權(quán)利要求說(shuō)明書(shū)1和2所述的多環(huán)路檢測(cè)方法,其特征是如果存在多個(gè)環(huán)則有多個(gè)根交換機(jī),每個(gè)單獨(dú)的環(huán)可以看成一個(gè)獨(dú)立的系統(tǒng),鏈路的檢測(cè)和自愈在每個(gè)獨(dú)立的環(huán)中進(jìn)行檢測(cè)和自愈,不會(huì)涉及到其它的環(huán)。
4.根據(jù)權(quán)利要求說(shuō)明書(shū)1所述的多環(huán)路檢測(cè)和自愈方法,其特征是根交換機(jī)在成環(huán)的兩個(gè)端口分別發(fā)出方向不同的成環(huán)確認(rèn)報(bào)文,環(huán)路中的交換機(jī)收到這兩個(gè)報(bào)文后,可以設(shè)置自己的向上的端口和向下的端口,同時(shí)設(shè)置交換機(jī)的相關(guān)屬性。
5.根據(jù)權(quán)利要求說(shuō)明書(shū)1所述的多環(huán)路檢測(cè)和自愈方法,其特征是交換機(jī)端口接上后,交換機(jī)之間交換各自的屬性,根據(jù)屬性報(bào)文可以快速判斷是否成環(huán),如果判斷出成環(huán)則可以禁用剛才接上的端口,否則發(fā)出鏈路接上的探測(cè)報(bào)文,該探測(cè)報(bào)文被轉(zhuǎn)發(fā),如果被自己收到則鏈路成環(huán),然后通知鏈路中最小的MAC地址的交換機(jī)執(zhí)行環(huán)路檢測(cè)和自愈算法。
6.根據(jù)權(quán)利要求說(shuō)明書(shū)1所述的多環(huán)路檢測(cè)和自愈方法,其特征是鏈路斷開(kāi)后,交換機(jī)通過(guò)向上的端口,發(fā)送鏈路斷開(kāi)報(bào)文,該報(bào)文通過(guò)向上的端口進(jìn)行轉(zhuǎn)發(fā),直到被根交換機(jī)收到,然后根交換機(jī)負(fù)責(zé)執(zhí)行自愈算法,打開(kāi)以前被禁用的端口。
全文摘要
本發(fā)明提出一種運(yùn)行在數(shù)據(jù)鏈路層的二層以太網(wǎng)交換機(jī)之間的環(huán)路檢測(cè)和自愈算法,用于提供冗余鏈路,支持鏈路備份。該算法包括1、檢測(cè)數(shù)據(jù)鏈路層的是否成環(huán)。2、檢測(cè)成環(huán)后根據(jù)策略,斷開(kāi)鏈路,阻止成環(huán)。3、檢測(cè)鏈路中的鏈路斷開(kāi)。4、鏈路端口后,打開(kāi)備用的鏈路。
文檔編號(hào)H04L29/12GK102546346SQ20121000756
公開(kāi)日2012年7月4日 申請(qǐng)日期2012年1月11日 優(yōu)先權(quán)日2012年1月11日
發(fā)明者周厚明, 崔磊 申請(qǐng)人:武漢邁威光電技術(shù)有限公司
網(wǎng)友詢問(wèn)留言 已有0條留言
  • 還沒(méi)有人留言評(píng)論。精彩留言會(huì)獲得點(diǎn)贊!
1