]si:啟動(dòng)主設(shè)備的STP協(xié)議計(jì)算功能,停止備用設(shè)備的STP協(xié)議計(jì)算功能,同時(shí)開啟備用設(shè)備端口的收取報(bào)文功能;
[0043]82:備用設(shè)備端口接收原始報(bào)文,并將原始報(bào)文及備用設(shè)備端口信息封裝送至主設(shè)備,主設(shè)備解析后查詢是否有與備用設(shè)備端口互為聚合端口的主設(shè)備端口,若是,則進(jìn)入步驟s 3,若否,則進(jìn)入步驟s4 ;
[0044]s3:計(jì)算得到主設(shè)備端口的當(dāng)前端口狀態(tài)信息,將當(dāng)前端口狀態(tài)信息及備用設(shè)備端口信息封裝送至備用設(shè)備,備用設(shè)備解析后將備用設(shè)備端口的端口狀態(tài)設(shè)置成當(dāng)前端口狀態(tài),結(jié)束端口狀態(tài)設(shè)置;
[0045]s4:利用備用設(shè)備端口計(jì)算得到當(dāng)前端口狀態(tài)信息,將當(dāng)前端口狀態(tài)信息及備用設(shè)備端口信息封裝送至備用設(shè)備,備用設(shè)備解析后將備用設(shè)備端口的端口狀態(tài)設(shè)置成當(dāng)前端口狀態(tài),結(jié)束端口狀態(tài)設(shè)置。
[0046]與現(xiàn)有技術(shù)相比,本發(fā)明的有益效果在于:本發(fā)明在主設(shè)備中利用STP協(xié)議計(jì)算功能進(jìn)行計(jì)算,再將計(jì)算結(jié)果同步到備用設(shè)備,如此,可以使得互為聚合端口的主設(shè)備端口及備用設(shè)備端口的端口狀態(tài)保持一致,本發(fā)明以最小的工作量實(shí)現(xiàn)了在MLAG環(huán)境中運(yùn)行STP協(xié)議族。
【附圖說明】
[0047]圖1是本發(fā)明一實(shí)施方式的MLAG基本組網(wǎng)結(jié)構(gòu)示意圖;
[0048]圖2是本發(fā)明一實(shí)施方式的一種MLAG環(huán)境下實(shí)現(xiàn)STP協(xié)議族的方法步驟圖;
[0049]圖3是本發(fā)明另一實(shí)施方式的一種MLAG環(huán)境下實(shí)現(xiàn)STP協(xié)議族的方法步驟圖。
【具體實(shí)施方式】
[0050]以下將結(jié)合附圖所示的【具體實(shí)施方式】對(duì)本發(fā)明進(jìn)行詳細(xì)描述。但這些實(shí)施方式并不限制本發(fā)明,本領(lǐng)域的普通技術(shù)人員根據(jù)這些實(shí)施方式所做出的結(jié)構(gòu)、方法、或功能上的變換均包含在本發(fā)明的保護(hù)范圍內(nèi)。
[0051 ]如圖1所示,為本發(fā)明一實(shí)施方式的MLAG基本組網(wǎng)結(jié)構(gòu)示意圖,包括主設(shè)備10及備用設(shè)備20,主設(shè)備10及備用設(shè)備20可均為交換機(jī)。這里,主設(shè)備10及備用設(shè)備20的選取可通過一定的規(guī)則,例如,通過比較兩個(gè)設(shè)備的MAC地址的大小,在一特殊示例中,當(dāng)選取為主設(shè)備的設(shè)備發(fā)生故障時(shí),備用設(shè)備20自動(dòng)切換成主設(shè)備10,需要說明的是,這里備用設(shè)備20切換成主設(shè)備10是指?jìng)溆迷O(shè)備20與主設(shè)備10之間的地位發(fā)生改變,備用設(shè)備20此時(shí)可以行使主設(shè)備10的功能。
[0052]主設(shè)備10及備用設(shè)備20中可有多組端口互為聚合端口,這里,以其中一組聚合端口為例,主設(shè)備1具有主設(shè)備端口 11,備用設(shè)備20具有備用設(shè)備端口 21,主設(shè)備端口 11及備用設(shè)備端口21互為聚合端口。需要說明的是,主設(shè)備端口 11及備用設(shè)備端口 21不一定是位置對(duì)應(yīng)的端口。
[0053]由于主設(shè)備端口i i及備用設(shè)備端口 21互為聚合端口,在外部設(shè)備看來這兩個(gè)互為聚合的端口就是一個(gè)端口,主設(shè)備端口 11及備用設(shè)備端口21的端口狀態(tài)必須保持一致,端口狀態(tài)包括阻塞或者轉(zhuǎn)發(fā),當(dāng)主設(shè)備端口 11為阻塞狀態(tài)時(shí),備用設(shè)備端口 21必須為阻塞狀態(tài),同樣的,當(dāng)主設(shè)備端口 11為轉(zhuǎn)發(fā)狀態(tài)時(shí),備用設(shè)備端口 21必須為轉(zhuǎn)發(fā)狀態(tài),如此,可保證正常通信。
[0054]另外,主設(shè)備10及備用設(shè)備20之間還具有直連鏈路30,直連鏈路30的一端為位于主設(shè)備10上的第一直連端口 12,另一端為位于備用設(shè)備20上的第二直連端口 22。直連鏈路30可實(shí)現(xiàn)主設(shè)備10及備用設(shè)備20之間各種協(xié)議的交互,通過直連鏈路30的設(shè)置,可以達(dá)到擴(kuò)大帶寬、冗余備份等目的。
[0055]如圖2所示,為本發(fā)明一實(shí)施方式的一種MLAG環(huán)境下實(shí)現(xiàn)STP協(xié)議族的方法,包括步驟:
[0056]S1:接收原始報(bào)文,判斷接收原始報(bào)文的端口位置,當(dāng)端口位于主設(shè)備10時(shí),進(jìn)入步驟S2,當(dāng)端口位于備用設(shè)備20時(shí),進(jìn)入步驟S3 ;
[0057]S2:計(jì)算得到主設(shè)備端口 11的當(dāng)前端口狀態(tài)信息,所述主設(shè)備端口 11為接收原始報(bào)文的端口,查詢是否有與主設(shè)備端口 11互為聚合端口的備用設(shè)備端口21,若是,則進(jìn)入步驟S4,若否,則進(jìn)入步驟S5;
[0058]S3:將原始報(bào)文及備用設(shè)備端口信息封裝送至主設(shè)備10,所述備用設(shè)備端口 21為接收原始報(bào)文的端口,主設(shè)備10解析后查詢是否有與所述備用設(shè)備端口 21互為聚合端口的主設(shè)備端口 11,若是,則進(jìn)入步驟S6,若否,則進(jìn)入步驟S7;
[0059]S4:將當(dāng)前端口狀態(tài)信息及備用設(shè)備端口信息封裝并送至備用設(shè)備20,備用設(shè)備20解析后將備用設(shè)備端口 21的端口狀態(tài)設(shè)置成當(dāng)前端口狀態(tài),進(jìn)入步驟S5;
[0060]S5:結(jié)束端口狀態(tài)設(shè)置;
[0061]S6:計(jì)算得到主設(shè)備端口 11的當(dāng)前端口狀態(tài)信息,將當(dāng)前端口狀態(tài)信息及備用設(shè)備端口信息封裝送至備用設(shè)備20,備用設(shè)備20解析后將備用設(shè)備端口 21的端口狀態(tài)設(shè)置成當(dāng)前端口狀態(tài),進(jìn)入步驟S5 ;
[0062]S7:利用備用設(shè)備端口21計(jì)算得到當(dāng)前端口狀態(tài)信息,將當(dāng)前端口狀態(tài)信息及備用設(shè)備端口信息封裝送至備用設(shè)備20,備用設(shè)備20解析后將備用設(shè)備端口的端口狀態(tài)設(shè)置成當(dāng)前端口狀態(tài),進(jìn)入步驟S5。
[0063]需要說明的是,上述步驟順序僅為本發(fā)明一實(shí)施方式的示意步驟順序,可根據(jù)實(shí)際情況做適當(dāng)修改。
[0064]在本實(shí)施方式中,當(dāng)備用設(shè)備20的備用設(shè)備端口21收取到原始報(bào)文時(shí),備用設(shè)備20將備用設(shè)備端口信息及原始報(bào)文封裝后一起由直連鏈路30發(fā)送至主設(shè)備10中,主設(shè)備10通過查找得到與備用設(shè)備端口 21互為聚合端口的主設(shè)備端口 11,再通過計(jì)算可得到主設(shè)備端口 11的當(dāng)前端口狀態(tài)(例如為阻塞),而后將當(dāng)前端口狀態(tài)信息及備用設(shè)備端口信息封裝后由直連鏈路30發(fā)送至備用設(shè)備20中,備用設(shè)備20經(jīng)過解析得到主設(shè)備端口 11的當(dāng)前端口狀態(tài)為阻塞,則備用設(shè)備20將備用設(shè)備端口 21的狀態(tài)也設(shè)置為阻塞,如此,可實(shí)現(xiàn)互為聚合端口的主設(shè)備端口 11及備用設(shè)備端口 21的端口狀態(tài)同步。本實(shí)施方式可以依據(jù)主設(shè)備10已有的STP協(xié)議族方式進(jìn)行計(jì)算,不需要特殊處理,且無需改變各個(gè)配置信息,只需通過計(jì)算結(jié)果的同步便可實(shí)現(xiàn)互為聚合端口的兩個(gè)端口狀態(tài)同步,方便快捷,本發(fā)明以最小的工作量實(shí)現(xiàn)了在MLAG環(huán)境中運(yùn)行STP協(xié)議族。
[0065]這里,需要說明的是,主設(shè)備10利用已有的STP協(xié)議計(jì)算功能及存儲(chǔ)的關(guān)于主設(shè)備端口 11的配置信息來計(jì)算得到主設(shè)備端口 11的當(dāng)前端口狀態(tài)。另外,為了讓主設(shè)備10處于完全接管狀態(tài),可預(yù)先啟動(dòng)主設(shè)備1的STP協(xié)議計(jì)算功能,同時(shí)停止備用設(shè)備20的STP協(xié)議計(jì)算功能,而備用設(shè)備20的報(bào)文收取功能不停止。
[0066]當(dāng)然,在實(shí)際運(yùn)用中,會(huì)有多種特殊情況,例如,原始報(bào)文由主設(shè)備10接收、在主設(shè)備10中查詢不到與備用設(shè)備端口21互為聚合端口的主設(shè)備端口 11、主設(shè)備10使用過程中發(fā)生故障等等。下面,對(duì)這些特殊情況做一一說明:
[0067](I)如步驟S2、S4、S5所示,若收取端口為主設(shè)備10的主設(shè)備端口 11時(shí),即此時(shí)原始報(bào)文由主設(shè)備10接收到,由于主設(shè)備10本身具有STP協(xié)議計(jì)算功能,主設(shè)備10可以直接計(jì)算得到主設(shè)備端口 11的當(dāng)前端口狀態(tài)(例如為阻塞),如果主設(shè)備端口 11的初始狀態(tài)為轉(zhuǎn)發(fā),則此時(shí)將主設(shè)備端口 11的端口狀態(tài)修改為阻塞,而后主設(shè)備10通過存儲(chǔ)有聚合端口信息的存儲(chǔ)表單查找是否有與主設(shè)備端口 11互為聚合端口的備用設(shè)備端口 21,若查詢到有與主設(shè)備端口 11互為聚合端口的備用設(shè)備端口 21,則通過將主設(shè)備端口 11的當(dāng)前端口狀態(tài)信息發(fā)送給備用設(shè)備20,備用設(shè)備20將備用設(shè)備端口 21的端口狀態(tài)也設(shè)置成阻塞,使得主設(shè)備端口 11與備用設(shè)備端口 21同步,若未查詢到,則說明此時(shí)的主設(shè)備端口 11為孤J L端口(OrphanPort),無需進(jìn)行兩個(gè)端口的同步。
[0068](2)如步驟S3、S6、S7所示,若收取端口為備用設(shè)備20的備用設(shè)備端口 21時(shí),則將原始報(bào)文及備用設(shè)備端口信息封裝發(fā)送至主設(shè)備10,此時(shí),分為三種情況。第一種情況:主設(shè)備10解析得到備用設(shè)備端口 21后查詢到與其互為聚合端口的主設(shè)備端口 11,則此時(shí)主設(shè)備10利用已有的STP協(xié)議計(jì)算功能計(jì)算得到主設(shè)備端口 11的當(dāng)前端口狀態(tài),并通過將當(dāng)前端口狀態(tài)信息發(fā)送至備用設(shè)備20而使備用設(shè)備20可以同步備用設(shè)備端口 21的端口狀態(tài);第二種情況:主設(shè)備10解析得到備用設(shè)備端口 21后未查詢到與其互為聚合端口的主設(shè)備端口11,則此時(shí)備用設(shè)備端口 21為孤兒端口,