本申請(qǐng)涉及網(wǎng)絡(luò)通信技術(shù),特別涉及自動(dòng)堆疊方法和裝置。
背景技術(shù):
在目前一種堆疊系統(tǒng)中,控制橋(CB:Controlling Bridge)設(shè)備之間堆疊構(gòu)成一個(gè)子堆疊系統(tǒng),端口擴(kuò)展橋(PE:Port Extender)設(shè)備之間堆疊構(gòu)成一個(gè)子堆疊系統(tǒng),兩個(gè)子堆疊系統(tǒng)之間通過級(jí)聯(lián)鏈路連接,構(gòu)成堆疊系統(tǒng)。在應(yīng)用方案中,不管是CB設(shè)備之間堆疊,還是PE設(shè)備之間堆疊,都需要預(yù)先配置框號(hào)、堆疊口所屬的聚合組等,配置非常繁瑣、且容易出錯(cuò)。
技術(shù)實(shí)現(xiàn)要素:
本申請(qǐng)?zhí)峁┝俗詣?dòng)堆疊方法和裝置,以實(shí)現(xiàn)同一類型的不同設(shè)備之間的自動(dòng)堆疊。
本申請(qǐng)?zhí)峁┑募夹g(shù)方案包括:
一種自動(dòng)堆疊方法,該方法應(yīng)用于交換設(shè)備,該方法包括:
通過本地第一堆疊口接收第一鄰居設(shè)備發(fā)送的第一鏈路層發(fā)現(xiàn)報(bào)文;
當(dāng)本地存在與第一鄰居設(shè)備的MAC地址對(duì)應(yīng)的聚合組時(shí),將第一堆疊口加入至與所述MAC地址對(duì)應(yīng)的聚合組,否則,新建所述MAC地址對(duì)應(yīng)的聚合組,將第一堆疊口加入至新建的聚合組;
當(dāng)本設(shè)備的設(shè)備類型與第一鏈路層發(fā)現(xiàn)報(bào)文攜帶的第一鄰居設(shè)備的設(shè)備類型相同時(shí),本設(shè)備與第一鄰居設(shè)備協(xié)商以動(dòng)態(tài)為本設(shè)備和第一鄰居設(shè)備分配框號(hào),并自動(dòng)執(zhí)行本設(shè)備與第一鄰居設(shè)備的堆疊。
一種自動(dòng)堆疊裝置,該裝置應(yīng)用于交換設(shè)備,包括:
發(fā)送單元,用于通過本地第一堆疊口接收第一鄰居設(shè)備發(fā)送的第一鏈路層發(fā)現(xiàn)報(bào)文;
聚合組分配單元,用于當(dāng)本地存在與第一鄰居設(shè)備的MAC地址對(duì)應(yīng)的聚合組時(shí),將第一堆疊口加入至與所述MAC地址對(duì)應(yīng)的聚合組,否則,新建所述MAC地址對(duì)應(yīng)的聚合組,將第一堆疊口加入至新建的聚合組;
堆疊單元,用于當(dāng)本設(shè)備的設(shè)備類型與第一鏈路層發(fā)現(xiàn)報(bào)文攜帶的第一鄰居設(shè)備的設(shè)備類型相同時(shí),本設(shè)備與第一鄰居設(shè)備協(xié)商以動(dòng)態(tài)為本設(shè)備和第一鄰居設(shè)備分配框號(hào),并自動(dòng)執(zhí)行本設(shè)備與第一鄰居設(shè)備的堆疊。
由以上技術(shù)方案可以看出,本發(fā)明中,通過動(dòng)態(tài)將本地堆疊口加入至所屬聚合組,避免現(xiàn)有通過預(yù)先配置堆疊口所屬的聚合組造成的配置繁瑣、容易出錯(cuò)等缺陷。并且,各交換設(shè)備堆疊后的框號(hào)動(dòng)態(tài)分配,避免現(xiàn)有通過預(yù)先配置框號(hào)造成的配置繁瑣、容易出錯(cuò)等缺陷。
附圖說明
此處的附圖被并入說明書中并構(gòu)成本說明書的一部分,示出了符合本公開的實(shí)施例,并與說明書一起用于解釋本公開的原理。
圖1為本發(fā)明提供的方法流程圖;
圖2為本發(fā)明提供的堆疊組網(wǎng)系統(tǒng)結(jié)構(gòu)圖;
圖3為本發(fā)明提供的實(shí)施例1應(yīng)用組網(wǎng)示意圖;
圖4為本發(fā)明提供的實(shí)施例2應(yīng)用組網(wǎng)示意圖;
圖5為本發(fā)明提供的實(shí)施例3應(yīng)用組網(wǎng)示意圖;
圖6為本發(fā)明提供的裝置結(jié)構(gòu)示意圖。
具體實(shí)施方式
為了使本發(fā)明的目的、技術(shù)方案和優(yōu)點(diǎn)更加清楚,下面結(jié)合附圖和具體實(shí)施例對(duì)本發(fā)明進(jìn)行詳細(xì)描述。
參見圖1,圖1為本發(fā)明提供的方法流程圖。該流程應(yīng)用于交換設(shè)備。交換設(shè)備的類型可為PE,相應(yīng)地,類型為PE的交換設(shè)備可簡稱PE設(shè)備。同樣地,交換設(shè)備的類型也可為CB,相應(yīng)地,類型為CB的交換設(shè)備可簡稱CB設(shè)備。
如圖1所示,該流程可包括以下步驟:
步驟101,通過本地第一堆疊口接收第一鄰居設(shè)備發(fā)送的第一鏈路層發(fā)現(xiàn)報(bào)文。
這里的第一堆疊口是泛指交換設(shè)備上的一個(gè)堆疊口,并非用于限定,其只是為便于描述進(jìn)行的命名。第一鄰居設(shè)備為本設(shè)備上第一堆疊口連接的鄰居設(shè)備。
在本發(fā)明中,交換設(shè)備在本地第一堆疊口UP時(shí),會(huì)通過UP的第一堆疊口周期發(fā)送鏈路層發(fā)現(xiàn)報(bào)文,同時(shí),也會(huì)通過UP的第一堆疊口接收第一鄰居設(shè)備發(fā)送的鏈路層發(fā)現(xiàn)報(bào)文。作為一個(gè)實(shí)施例,本發(fā)明涉及的鏈路層發(fā)現(xiàn)報(bào)文可為LLDP報(bào)文。
需要說明的是,上述步驟101中第一鏈路層發(fā)現(xiàn)報(bào)文是泛指第一鄰居設(shè)備發(fā)送的任一鏈路層發(fā)現(xiàn)報(bào)文,并非用于限定,其只是為便于描述進(jìn)行的命名。
步驟102,當(dāng)本地存在與第一鄰居設(shè)備的MAC地址對(duì)應(yīng)的聚合組時(shí),將第一堆疊口加入至與所述MAC地址對(duì)應(yīng)的聚合組,否則,新建所述MAC地址對(duì)應(yīng)的聚合組,將第一堆疊口加入至新建的聚合組。
通過步驟102,能夠?qū)崿F(xiàn)交換設(shè)備動(dòng)態(tài)將本地堆疊口加入至所屬聚合組,避免現(xiàn)有通過預(yù)先配置堆疊口所屬的聚合組造成的配置繁瑣、容易出錯(cuò)等缺陷。
步驟103,當(dāng)本設(shè)備的設(shè)備類型與第一鏈路層發(fā)現(xiàn)報(bào)文攜帶的第一鄰居設(shè)備的設(shè)備類型相同時(shí),本設(shè)備與第一鄰居設(shè)備協(xié)商以動(dòng)態(tài)為本設(shè)備和第一鄰居設(shè)備分配框號(hào),并自動(dòng)執(zhí)行本設(shè)備與第一鄰居設(shè)備的堆疊。
通過步驟103,能夠?qū)崿F(xiàn)同一類型的交換設(shè)備堆疊后的框號(hào)動(dòng)態(tài)分配,避免現(xiàn)有通過預(yù)先配置框號(hào)造成的配置繁瑣、容易出錯(cuò)等缺陷。
至此,完成圖1所示流程。
按照?qǐng)D1所示流程描述,則CB設(shè)備之間自動(dòng)橫向堆疊構(gòu)成子堆疊系統(tǒng),PE設(shè)備之間自動(dòng)橫向堆疊構(gòu)成子堆疊系統(tǒng)。需要說明的是,CB設(shè)備之間自動(dòng)橫向堆疊構(gòu)成的子堆疊系統(tǒng)與PE設(shè)備之間自動(dòng)橫向堆疊構(gòu)成的子堆疊系統(tǒng)不同。另,之所以將CB設(shè)備之間自動(dòng)橫向堆疊構(gòu)成的系統(tǒng)稱為子堆疊系統(tǒng),將PE設(shè)備之間自動(dòng)橫向堆疊構(gòu)成的系統(tǒng)稱為子堆疊系統(tǒng),其主要是和整體的堆疊系統(tǒng)區(qū)分而進(jìn)行的命名,并非具體限定。圖2舉例示出了CB設(shè)備之間自動(dòng)橫向堆疊構(gòu)成的子堆疊系統(tǒng)與PE設(shè)備之間自動(dòng)橫向堆疊構(gòu)成的子堆疊系統(tǒng),其中,CB設(shè)備之間自動(dòng)橫向堆疊構(gòu)成的子堆疊系統(tǒng)與PE設(shè)備之間自動(dòng)橫向堆疊構(gòu)成的子堆疊系統(tǒng)連接,最終形成如圖2所示的堆疊系統(tǒng)。
下面舉例描述PE與PE之間如何堆疊構(gòu)成子堆疊系統(tǒng):
實(shí)施例1:
參見圖3,圖3為本發(fā)明提供的實(shí)施例1應(yīng)用組網(wǎng)圖。在圖3中,存在三個(gè)類型為PE的盒式交換設(shè)備,分別為:PE設(shè)備3_1、PE設(shè)備3_2、PE設(shè)備3_3。PE設(shè)備3_1的堆疊口Port3_0與PE設(shè)備3_2的堆疊口Port3_1連接,PE設(shè)備3_2的堆疊口Port3_2與PE設(shè)備3_3的堆疊口Port3_3連接。
在圖3中,PE設(shè)備3_1、PE設(shè)備3_2、PE設(shè)備3_3不屬于任一子堆疊系統(tǒng)。
PE設(shè)備3_1在堆疊口Port3_0UP時(shí),在Port3_0UP后的首個(gè)LLDP周期通過堆疊口Port3_0發(fā)送LLDP報(bào)文。LLDP報(bào)文攜帶PE設(shè)備3_1的設(shè)備類型、PE設(shè)備3_1的MAC地址。PE設(shè)備3_2、PE設(shè)備3_3類似,不再贅述。
PE設(shè)備3_1通過堆疊口Port3_0接收PE設(shè)備3_2發(fā)送的LLDP報(bào)文,檢查本地是否存在PE設(shè)備3_2的MAC地址對(duì)應(yīng)的聚合組,發(fā)現(xiàn)本地不存在PE設(shè)備3_2的MAC地址對(duì)應(yīng)的聚合組,則新建PE設(shè)備3_2的MAC地址對(duì)應(yīng)的聚合組3_2,將堆疊口Port3_0加入新建的聚合組3_0。PE設(shè)備3_1確定PE設(shè)備3_2發(fā)現(xiàn)本設(shè)備的設(shè)備類型和接收的來自PE設(shè)備3_2發(fā)送的LLDP報(bào)文攜帶的設(shè)備類型相同,則確定PE設(shè)備3_2為本設(shè)備新增加的鄰居設(shè)備,則延遲T秒競(jìng)選主設(shè)備。
PE設(shè)備3_2通過堆疊口Port3_1接收PE設(shè)備3_1發(fā)送的LLDP報(bào)文,檢查本地是否存在PE設(shè)備3_1的MAC地址對(duì)應(yīng)的聚合組,發(fā)現(xiàn)本地不存在PE設(shè)備3_1的MAC地址對(duì)應(yīng)的聚合組,則新建PE設(shè)備3_1的MAC地址對(duì)應(yīng)的聚合組3_1,將堆疊口Port3_1加入新建的聚合組3_1。PE設(shè)備3_2確定PE設(shè)備3_1為本設(shè)備新增加的鄰居設(shè)備,則延遲T秒競(jìng)選主設(shè)備。
PE設(shè)備3_2通過堆疊口Port3_2接收PE設(shè)備3_3發(fā)送的LLDP報(bào)文,檢查本地是否存在PE設(shè)備3_3的MAC地址對(duì)應(yīng)的聚合組,發(fā)現(xiàn)本地不存在PE設(shè)備3_3的MAC地址對(duì)應(yīng)的聚合組,則新建PE設(shè)備3_3的MAC地址對(duì)應(yīng)的聚合組3_2,將堆疊口Port3_2加入新建的聚合組3_2。PE設(shè)備3_2確定PE設(shè)備3_3為本設(shè)備新增加的鄰居設(shè)備,則在上述延遲T秒競(jìng)選主設(shè)備的基礎(chǔ)上再延遲T秒競(jìng)選主設(shè)備。
PE設(shè)備3_3通過堆疊口Port3_3接收PE設(shè)備3_2發(fā)送的LLDP報(bào)文,檢查本地是否存在PE設(shè)備3_2的MAC地址對(duì)應(yīng)的聚合組,發(fā)現(xiàn)本地不存在PE設(shè)備3_2的MAC地址對(duì)應(yīng)的聚合組,則新建PE設(shè)備3_2的MAC地址對(duì)應(yīng)的聚合組3_3,將堆疊口Port3_3加入新建的聚合組3_3。PE設(shè)備3_3確定PE設(shè)備3_2為本設(shè)備新增加的鄰居設(shè)備,則延遲T秒競(jìng)選主設(shè)備。
PE設(shè)備3_1在堆疊口Port3_0UP后的第二個(gè)LLDP周期通過堆疊口Port3_0發(fā)送LLDP報(bào)文。LLDP報(bào)文攜帶PE設(shè)備3_1的設(shè)備類型、PE設(shè)備3_1的MAC地址。PE設(shè)備3_2在堆疊口Port3_1UP后的第二LLDP周期通過堆疊口Port3_1發(fā)送LLDP報(bào)文,PE設(shè)備3_2發(fā)送的LLDP報(bào)文攜帶PE設(shè)備3_2的設(shè)備類型、PE設(shè)備3_2的MAC地址、PE設(shè)備3_3的設(shè)備標(biāo)識(shí)(通過MAC地址表示)。PE設(shè)備3_3滿足以下條件:與PE設(shè)備3_2互為鄰居且具有相同設(shè)備類型PE、但不處于子堆疊系統(tǒng)。PE設(shè)備3_2在堆疊口Port3_2UP后的第二LLDP周期通過堆疊口Port3_2發(fā)送LLDP報(bào)文,PE設(shè)備3_2發(fā)送的LLDP報(bào)文攜帶PE設(shè)備3_2的設(shè)備類型、PE設(shè)備3_2的MAC地址、PE設(shè)備3_1的設(shè)備標(biāo)識(shí)(通過MAC地址表示)。PE設(shè)備3_1滿足以下條件:與PE設(shè)備3_2互為鄰居且具有相同設(shè)備類型PE、但不處于子堆疊系統(tǒng)。PE設(shè)備3_3在堆疊口Port3_3UP后的第二個(gè)LLDP周期通過堆疊口Port3_3發(fā)送LLDP報(bào)文。LLDP報(bào)文攜帶PE設(shè)備3_3的設(shè)備類型、PE設(shè)備3_3的MAC地址。
PE設(shè)備3_1通過堆疊口Port3_0接收PE設(shè)備3_2發(fā)送的LLDP報(bào)文,發(fā)現(xiàn)本地存在PE設(shè)備3_2的MAC地址對(duì)應(yīng)的聚合組3_0、且堆疊口Port3_0已在聚合組3_0,則省略執(zhí)行將堆疊口Port3_0加入聚合組3_0的操作。PE設(shè)備3_1發(fā)現(xiàn)PE設(shè)備3_2發(fā)送的LLDP報(bào)文攜帶PE設(shè)備3_3的設(shè)備標(biāo)識(shí),該攜帶的PE設(shè)備3_3的設(shè)備標(biāo)識(shí)用于表示PE設(shè)備3_3為參與堆疊的候選設(shè)備,在本發(fā)明中,每增加一個(gè)參與堆疊的設(shè)備,則延遲T秒主設(shè)備競(jìng)選,以等待是否還有新的候選設(shè)備參與堆疊,基于此,PE設(shè)備3_1會(huì)在上述延遲T秒競(jìng)選主設(shè)備的基礎(chǔ)上再延遲T秒競(jìng)選主設(shè)備。
PE設(shè)備3_2通過堆疊口Port3_1接收PE設(shè)備3_1發(fā)送的LLDP報(bào)文,發(fā)現(xiàn)本地存在PE設(shè)備3_3的MAC地址對(duì)應(yīng)的聚合組且堆疊口Port3_1加入新建的聚合組3_1,則省略執(zhí)行將堆疊口Port3_1加入聚合組3_1的操作。PE設(shè)備3_2發(fā)現(xiàn)PE設(shè)備3_1發(fā)送的LLDP報(bào)文中并未增加參與堆疊的候選設(shè)備,則繼續(xù)等待主設(shè)備競(jìng)選時(shí)間。PE設(shè)備3_2通過堆疊口Port3_2接收PE設(shè)備3_3發(fā)送的LLDP報(bào)文的處理方式類似,不再贅述。
PE設(shè)備3_3通過堆疊口Port3_3接收PE設(shè)備3_2發(fā)送的LLDP報(bào)文,發(fā)現(xiàn)本地存在PE設(shè)備3_2的MAC地址對(duì)應(yīng)的聚合組3_3、且堆疊口Port3_3已在聚合組3_3,則省略執(zhí)行將堆疊口Port3_3加入聚合組3_3的操作。PE設(shè)備3_3發(fā)現(xiàn)PE設(shè)備3_2發(fā)送的LLDP報(bào)文攜帶PE設(shè)備3_1的設(shè)備標(biāo)識(shí),該攜帶的PE設(shè)備3_3的設(shè)備標(biāo)識(shí)用于表示PE設(shè)備3_1為參與堆疊的候選設(shè)備,在本發(fā)明中,每增加一個(gè)參與堆疊的設(shè)備,則延遲T秒主設(shè)備競(jìng)選,以等待是否還有新的候選設(shè)備參與堆疊,基于此,PE設(shè)備3_3會(huì)在上述延遲T秒競(jìng)選主設(shè)備的基礎(chǔ)上再延遲T秒競(jìng)選主設(shè)備。
PE設(shè)備3_1在堆疊口Port3_0UP后的第三個(gè)LLDP周期通過堆疊口Port3_0發(fā)送LLDP報(bào)文。LLDP報(bào)文攜帶PE設(shè)備3_1的設(shè)備類型、PE設(shè)備3_1的MAC地址。PE設(shè)備3_2在堆疊口Port3_1UP后的第三LLDP周期通過堆疊口Port3_1發(fā)送LLDP報(bào)文,PE設(shè)備3_2發(fā)送的LLDP報(bào)文攜帶PE設(shè)備3_2的設(shè)備類型、PE設(shè)備3_2的MAC地址、PE設(shè)備3_3的設(shè)備標(biāo)識(shí)(通過MAC地址表示)。PE設(shè)備3_2在堆疊口Port3_2UP后的第三LLDP周期通過堆疊口Port3_2發(fā)送LLDP報(bào)文,PE設(shè)備3_2發(fā)送的LLDP報(bào)文攜帶PE設(shè)備3_2的設(shè)備類型、PE設(shè)備3_2的MAC地址、PE設(shè)備3_1的設(shè)備標(biāo)識(shí)(通過MAC地址表示)。PE設(shè)備3_3在堆疊口Port3_3UP后的第三個(gè)LLDP周期通過堆疊口Port3_3發(fā)送LLDP報(bào)文。LLDP報(bào)文攜帶PE設(shè)備3_3的設(shè)備類型、PE設(shè)備3_3的MAC地址。之后的各個(gè)LLDP周期原理類似,不再一一描述。
PE設(shè)備3_1通過堆疊口Port3_0接收PE設(shè)備3_2發(fā)送的LLDP報(bào)文,發(fā)現(xiàn)本地存在PE設(shè)備3_2的MAC地址對(duì)應(yīng)的聚合組3_0、且堆疊口Port3_0已在聚合組3_0,則省略執(zhí)行將堆疊口Port3_0加入聚合組3_0的操作。PE設(shè)備3_1發(fā)現(xiàn)PE設(shè)備3_2發(fā)送的LLDP報(bào)文并未增加參與堆疊的候選設(shè)備,則繼續(xù)等待主設(shè)備競(jìng)選時(shí)間。
PE設(shè)備3_2通過堆疊口Port3_1接收PE設(shè)備3_1發(fā)送的LLDP報(bào)文,發(fā)現(xiàn)本地存在PE設(shè)備3_3的MAC地址對(duì)應(yīng)的聚合組且堆疊口Port3_1加入新建的聚合組3_1,則省略執(zhí)行將堆疊口Port3_1加入聚合組3_1的操作。PE設(shè)備3_2發(fā)現(xiàn)PE設(shè)備3_1發(fā)送的LLDP報(bào)文中并未增加參與堆疊的候選設(shè)備,則繼續(xù)等待主設(shè)備競(jìng)選時(shí)間。PE設(shè)備3_2通過堆疊口Port3_2接收PE設(shè)備3_3發(fā)送的LLDP報(bào)文的處理方式類似,不再贅述。
PE設(shè)備3_3通過堆疊口Port3_3接收PE設(shè)備3_2發(fā)送的LLDP報(bào)文,發(fā)現(xiàn)本地存在PE設(shè)備3_2的MAC地址對(duì)應(yīng)的聚合組3_3、且堆疊口Port3_3已在聚合組3_3,則省略執(zhí)行將堆疊口Port3_3加入聚合組3_3的操作。PE設(shè)備3_3發(fā)現(xiàn)PE設(shè)備3_2發(fā)送的LLDP報(bào)文并未增加參與堆疊的候選設(shè)備,則繼續(xù)等待主設(shè)備競(jìng)選時(shí)間。
PE設(shè)備3_1在競(jìng)選主設(shè)備的時(shí)間到達(dá)時(shí),從PE設(shè)備3_1、PE設(shè)備3_2、PE設(shè)備3_3中選擇一個(gè)作為主設(shè)備。以上述設(shè)備標(biāo)識(shí)通過MAC地址表示為例,這里可選擇MAC地址最小的設(shè)備作為主設(shè)備。
類似地,PE設(shè)備3_2、PE設(shè)備3_3在競(jìng)選主設(shè)備的時(shí)間到達(dá)時(shí),從PE設(shè)備3_1、PE設(shè)備3_2、PE設(shè)備3_3中選擇一個(gè)作為主設(shè)備。PE設(shè)備3_2、PE設(shè)備3_3選擇主設(shè)備的原則與PE設(shè)備3_2選擇主設(shè)備的原則相同。
最終,PE設(shè)備3_1、PE設(shè)備3_2、PE設(shè)備3_3選擇的主設(shè)備相同。以最終選擇PE設(shè)備3_1為主設(shè)備為例。
PE設(shè)備3_1作為主設(shè)備,為PE設(shè)備3_1、PE設(shè)備3_2、PE設(shè)備3_3分配框號(hào),不同設(shè)備分配的框號(hào)不同。
之后,PE設(shè)備3_1、PE設(shè)備3_2、PE設(shè)備3_3基于分配的框號(hào)按照順序進(jìn)行堆疊,組成子堆疊系統(tǒng)。
至此,完成實(shí)施例1的描述。同樣地,CB之間可按照實(shí)施例1的內(nèi)容構(gòu)成子堆疊系統(tǒng),這里不再一一贅述。
實(shí)施例2:
參見圖4,圖4為本發(fā)明提供的實(shí)施例2應(yīng)用組網(wǎng)圖。在圖4中,存在三個(gè)類型為PE的盒式交換設(shè)備,分別為:PE設(shè)備4_1、PE設(shè)備4_2、PE設(shè)備4_3。PE設(shè)備4_1的堆疊口Port4_0與PE設(shè)備4_2的堆疊口Port4_1連接,PE設(shè)備4_2的堆疊口Port4_2與PE設(shè)備4_3的堆疊口Port4_3連接。
在圖4中,PE設(shè)備4_1、PE設(shè)備4_2已堆疊在一起,組成子堆疊系統(tǒng)。子堆疊系統(tǒng)記為堆疊4_0。PE設(shè)備4_1為堆疊4_0的主設(shè)備。
PE設(shè)備4_3在堆疊口Port4_3UP時(shí),通過堆疊口Port4_3發(fā)送LLDP報(bào)文。LLDP報(bào)文攜帶PE設(shè)備4_3的設(shè)備類型、PE設(shè)備4_3的MAC地址。
PE設(shè)備4_2通過堆疊口Port4_2接收PE設(shè)備4_3發(fā)送的LLDP報(bào)文,檢查本地是否存在PE設(shè)備4_3的MAC地址對(duì)應(yīng)的聚合組,發(fā)現(xiàn)本地不存在PE設(shè)備4_3的MAC地址對(duì)應(yīng)的聚合組,則新建PE設(shè)備4_3的MAC地址對(duì)應(yīng)的聚合組4_2,將堆疊口Port4_2加入新建的聚合組4_2。
PE設(shè)備4_2發(fā)現(xiàn)本設(shè)備的設(shè)備類型和接收的來自PE設(shè)備4_3發(fā)送的LLDP報(bào)文攜帶的設(shè)備類型相同,則確定本設(shè)備可以和PE設(shè)備4_3堆疊。
PE設(shè)備4_2請(qǐng)求主設(shè)備PE4_1為PE設(shè)備4_3分配框號(hào)。主設(shè)備PE4_1為PE設(shè)備4_3分配框號(hào)。
PE設(shè)備4_3接收主設(shè)備PE4_1分配的框號(hào),并加入堆疊4_0。至此,完成實(shí)施例2的描述。同樣地,CB之間可按照實(shí)施例2的內(nèi)容構(gòu)成子堆疊系統(tǒng),這里不再一一贅述。
實(shí)施例3:
參見圖5,圖5為本發(fā)明提供的實(shí)施例3應(yīng)用組網(wǎng)圖。在圖5中,存在四個(gè)類型為PE的盒式交換設(shè)備,分別為:PE設(shè)備5_1、PE設(shè)備5_2、PE設(shè)備5_3、PE設(shè)備5_4。
在圖5中,PE設(shè)備5_1的堆疊口Port5_1_2與PE設(shè)備5_2的堆疊口Port5_2_1連接,PE設(shè)備5_1與PE設(shè)備5_2堆疊在一起組成子堆疊系統(tǒng),記為堆疊5_1。PE設(shè)備5_1為堆疊5_1的主設(shè)備。
在圖5中,PE設(shè)備5_3的堆疊口Port5_3_4與PE設(shè)備5_4的堆疊口Port5_5_3連接。PE設(shè)備5_3與PE設(shè)備5_4堆疊在一起組成子堆疊系統(tǒng),記為堆疊5_2。PE設(shè)備5_3為堆疊5_2的主設(shè)備。
在圖5中,PE設(shè)備5_2在堆疊口Port5_2_3UP時(shí),通過堆疊口Port5_2_3發(fā)送LLDP報(bào)文。LLDP報(bào)文攜帶PE設(shè)備5_2的設(shè)備類型、PE設(shè)備5_2的MAC地址、堆疊5_1的主設(shè)備即PE設(shè)備5_1的設(shè)備優(yōu)先級(jí)(通過MAC表示)。
在圖5中,PE設(shè)備5_3在堆疊口Port5_3_2UP時(shí),通過堆疊口Port5_3_2發(fā)送LLDP報(bào)文。LLDP報(bào)文攜帶PE設(shè)備5_3的設(shè)備類型、PE設(shè)備5_3的MAC地址、堆疊5_2的主設(shè)備即PE設(shè)備5_3的設(shè)備優(yōu)先級(jí)(通過MAC表示)。
PE設(shè)備5_2通過堆疊口Port5_2_3接收PE設(shè)備5_3發(fā)送的LLDP報(bào)文,檢查本地是否存在PE設(shè)備5_3的MAC地址對(duì)應(yīng)的聚合組,發(fā)現(xiàn)本地不存在PE設(shè)備5_3的MAC地址對(duì)應(yīng)的聚合組,則新建PE設(shè)備5_3的MAC地址對(duì)應(yīng)的聚合組5_2_3,將堆疊口Port5_2_3加入新建的聚合組5_2_3。
PE設(shè)備5_2發(fā)現(xiàn)本設(shè)備的設(shè)備類型和接收的來自PE設(shè)備5_3發(fā)送的LLDP報(bào)文攜帶的設(shè)備類型相同,則確定PE設(shè)備5_3可以加入堆疊5_1。
PE設(shè)備5_2比較堆疊5_1中主設(shè)備即PE設(shè)備5_2的設(shè)備優(yōu)先級(jí)與PE設(shè)備5_3發(fā)送的LLDP報(bào)文所攜帶的堆疊5_2中主設(shè)備即PE設(shè)備5_3的設(shè)備優(yōu)先級(jí),若前者優(yōu)于后者,則觸使堆疊5_2中各設(shè)備即PE設(shè)備5_3、PE設(shè)備5_4重啟加入堆疊5_1。當(dāng)PE設(shè)備5_3、PE設(shè)備5_4加入堆疊5_1時(shí),堆疊5_1中主設(shè)備即PE設(shè)備5_1為PE設(shè)備5_3、PE設(shè)備5_4分配框號(hào)。若后者優(yōu)于前者,則重啟本設(shè)備加入堆疊5_2,接收堆疊5_2中主設(shè)備即PE設(shè)備5_3為本設(shè)備分配的框號(hào)。
與PE設(shè)備5_2類似,PE設(shè)備5_3通過堆疊口Port5_3_2接收PE設(shè)備5_2發(fā)送的LLDP報(bào)文,檢查本地是否存在PE設(shè)備5_2的MAC地址對(duì)應(yīng)的聚合組,發(fā)現(xiàn)本地不存在PE設(shè)備5_2的MAC地址對(duì)應(yīng)的聚合組,則新建PE設(shè)備5_2的MAC地址對(duì)應(yīng)的聚合組5_3_2,將堆疊口5_3_2加入新建的聚合組5_3_2。
PE設(shè)備5_3發(fā)現(xiàn)本設(shè)備的設(shè)備類型和接收的來自PE設(shè)備5_2發(fā)送的LLDP報(bào)文攜帶的設(shè)備類型相同,則確定PE設(shè)備5_2可以加入堆疊5_2。
PE設(shè)備5_3比較堆疊5_2中主設(shè)備即PE設(shè)備5_3的設(shè)備優(yōu)先級(jí)與PE設(shè)備5_2發(fā)送的LLDP報(bào)文所攜帶的堆疊5_1中主設(shè)備即PE設(shè)備5_1的設(shè)備優(yōu)先級(jí),若前者優(yōu)于后者,則觸使堆疊5_1中各設(shè)備即PE設(shè)備5_1、PE設(shè)備5_2重啟加入堆疊5_2。當(dāng)PE設(shè)備5_1、PE設(shè)備5_2加入堆疊5_2時(shí),堆疊5_2中主設(shè)備即PE設(shè)備5_2為PE設(shè)備5_1、PE設(shè)備5_2分配框號(hào)。若后者優(yōu)于前者,則重啟本設(shè)備加入堆疊5_1,接收堆疊5_1中主設(shè)備即PE設(shè)備5_1為本設(shè)備分配的框號(hào)。
至此,完成實(shí)施例3的描述。同樣地,CB之間可按照實(shí)施例3的內(nèi)容構(gòu)成子堆疊系統(tǒng),這里不再一一贅述。
在實(shí)際應(yīng)用中,盒式交換設(shè)備的堆疊口和業(yè)務(wù)口是區(qū)分開的,因此,當(dāng)兩臺(tái)盒式交換設(shè)備連接執(zhí)行堆疊還是執(zhí)行互聯(lián)網(wǎng)通信是可以區(qū)分開的?;谏厦鎸?shí)施例的描述,則同一類型的盒式交換設(shè)備可以不需要任何配置實(shí)現(xiàn)即插即用可以堆疊。而框式交換設(shè)備,其堆疊口和業(yè)務(wù)口需要預(yù)先通過定義區(qū)分,在本發(fā)明中只需簡單定義堆疊口實(shí)現(xiàn)即插即用可以堆疊,這完全避免現(xiàn)有預(yù)先配置堆疊口所屬的聚合組、設(shè)備框號(hào)等所造成的配置繁瑣、容易出錯(cuò)等缺陷。
需要說明的是,在本發(fā)明中,不管是盒式交換設(shè)備還是框式交換設(shè)備,其在加入子堆疊系統(tǒng)后,會(huì)將本設(shè)備的框號(hào)以及本設(shè)備處于子堆疊系統(tǒng)的標(biāo)識(shí)、本設(shè)備所處子堆疊系統(tǒng)中的角色記錄至預(yù)設(shè)的配置文件,該配置文件不會(huì)因重啟而丟失,如此,之后當(dāng)本設(shè)備再次重啟后,可直接按照配置文件記錄的框號(hào)、角色啟動(dòng),避免反復(fù)分配框號(hào)等缺陷。
以上對(duì)本發(fā)明提供的方法進(jìn)行了描述。下面對(duì)本發(fā)明提供的裝置進(jìn)行描述:
參見圖6,圖6為本發(fā)明提供的裝置結(jié)構(gòu)圖。該裝置應(yīng)用于如PE設(shè)備或CB設(shè)備的交換設(shè)備,包括:
發(fā)送單元,用于通過本地第一堆疊口接收第一鄰居設(shè)備發(fā)送的第一鏈路層發(fā)現(xiàn)報(bào)文;
聚合組分配單元,用于當(dāng)本地存在與第一鄰居設(shè)備的MAC地址對(duì)應(yīng)的聚合組時(shí),將第一堆疊口加入至與所述MAC地址對(duì)應(yīng)的聚合組,否則,新建所述MAC地址對(duì)應(yīng)的聚合組,將第一堆疊口加入至新建的聚合組;
堆疊單元,用于當(dāng)本設(shè)備的設(shè)備類型與第一鏈路層發(fā)現(xiàn)報(bào)文攜帶的第一鄰居設(shè)備的設(shè)備類型相同時(shí),本設(shè)備與第一鄰居設(shè)備協(xié)商以動(dòng)態(tài)為本設(shè)備和第一鄰居設(shè)備分配框號(hào),并自動(dòng)執(zhí)行本設(shè)備與第一鄰居設(shè)備的堆疊。
優(yōu)選地,所述堆疊單元通過以下步驟實(shí)現(xiàn)本設(shè)備與第一鄰居設(shè)備協(xié)商以動(dòng)態(tài)為本設(shè)備和第一鄰居設(shè)備分配框號(hào),并自動(dòng)執(zhí)行本設(shè)備與第一鄰居設(shè)備的堆疊包括:
若本設(shè)備已處于子堆疊系統(tǒng),第一鄰居設(shè)備未處于子堆疊系統(tǒng),則,
當(dāng)本設(shè)備為所述子堆疊系統(tǒng)的主設(shè)備時(shí),為第一鄰居設(shè)備分配框號(hào),
當(dāng)本設(shè)備不為所述子堆疊系統(tǒng)的主設(shè)備時(shí),觸發(fā)所述子堆疊系統(tǒng)的主設(shè)備為第一鄰居設(shè)備分配框號(hào);
將第一鄰居設(shè)備加入本設(shè)備所處的子堆疊系統(tǒng)。
優(yōu)選地,所述堆疊單元通過以下步驟實(shí)現(xiàn)本設(shè)備與第一鄰居設(shè)備協(xié)商以動(dòng)態(tài)為本設(shè)備和第一鄰居設(shè)備分配框號(hào),并自動(dòng)執(zhí)行本設(shè)備與第一鄰居設(shè)備的堆疊包括:
若本設(shè)備未處于子堆疊系統(tǒng),第一鄰居設(shè)備已處于子堆疊系統(tǒng),則,
接收所述子堆疊系統(tǒng)中的主設(shè)備為本設(shè)備分配的框號(hào),并加入所述子堆疊系統(tǒng)。
優(yōu)選地,若第一鄰居設(shè)備處于子堆疊系統(tǒng),第一鏈路層發(fā)現(xiàn)報(bào)文進(jìn)一步攜帶第一鄰居設(shè)備所處子堆疊系統(tǒng)中主設(shè)備的優(yōu)先級(jí);
所述堆疊單元通過以下步驟實(shí)現(xiàn)本設(shè)備與第一鄰居設(shè)備協(xié)商以動(dòng)態(tài)為本設(shè)備和第一鄰居設(shè)備分配框號(hào),并自動(dòng)執(zhí)行本設(shè)備與第一鄰居設(shè)備的堆疊包括:
若本設(shè)備與第一鄰居設(shè)備處于兩個(gè)不同的子堆疊系統(tǒng),則,
比較本設(shè)備所處子堆疊系統(tǒng)中主設(shè)備的優(yōu)先級(jí)與第一鏈路層發(fā)現(xiàn)報(bào)文攜帶的第一鄰居設(shè)備所處子堆疊系統(tǒng)中主設(shè)備的優(yōu)先級(jí),
如果前者優(yōu)于后者,觸發(fā)第一鄰居設(shè)備所處子堆疊系統(tǒng)中各設(shè)備重啟加入本設(shè)備所處子堆疊系統(tǒng),并當(dāng)本設(shè)備為所處子堆疊系統(tǒng)的主設(shè)備時(shí),為加入本設(shè)備所處子堆疊系統(tǒng)的各設(shè)備分配框號(hào);
如果后者優(yōu)于前者,重啟加入第一鄰居設(shè)備所處子堆疊系統(tǒng),并接收第一鄰居設(shè)備所處子堆疊系統(tǒng)中的主設(shè)備為本設(shè)備分配的框號(hào)。
優(yōu)選地,所述堆疊單元通過以下步驟實(shí)現(xiàn)本設(shè)備與第一鄰居設(shè)備協(xié)商以動(dòng)態(tài)為本設(shè)備和第一鄰居設(shè)備分配框號(hào),并自動(dòng)執(zhí)行本設(shè)備與第一鄰居設(shè)備的堆疊包括:
若本設(shè)備和第一鄰居設(shè)備均未處于子堆疊系統(tǒng),則,
確定與本設(shè)備和第一鄰居設(shè)備進(jìn)行堆疊的候選設(shè)備;
與第一鄰居設(shè)備和所述候選設(shè)備一起協(xié)商主設(shè)備;
在本設(shè)備被協(xié)商為主設(shè)備時(shí),為本設(shè)備、第一鄰居設(shè)備、所述候選設(shè)備分配框號(hào);在本設(shè)備未被協(xié)商為主設(shè)備時(shí),接收協(xié)商的主設(shè)備為本設(shè)備分配的框號(hào);
執(zhí)行本設(shè)備、第一鄰居設(shè)備、以及所述候選設(shè)備的堆疊。
優(yōu)選地,所述堆疊單元確定與本設(shè)備和第一鄰居設(shè)備進(jìn)行堆疊的候選設(shè)備包括:
將所述第一鏈路層發(fā)現(xiàn)報(bào)文攜帶的第一類設(shè)備標(biāo)識(shí)對(duì)應(yīng)的設(shè)備確定為所述候選設(shè)備,第一類設(shè)備標(biāo)識(shí)對(duì)應(yīng)的設(shè)備滿足下第一條件:與第一鄰居設(shè)備互為鄰居且具有相同設(shè)備類型、但不處于子堆疊系統(tǒng);
以及,在指定時(shí)間內(nèi)通過本地第二堆疊口接收第二鄰居設(shè)備堆疊發(fā)送的第二鏈路層發(fā)現(xiàn)報(bào)文時(shí),若本設(shè)備的設(shè)備類型與第二鏈路層發(fā)現(xiàn)報(bào)文攜帶的第二鄰居設(shè)備的設(shè)備類型相同,則將第二鄰居設(shè)備、以及第二鏈路層發(fā)現(xiàn)報(bào)文攜帶的第二類設(shè)備標(biāo)識(shí)對(duì)應(yīng)的設(shè)備確定為所述候選設(shè)備,第二類設(shè)備標(biāo)識(shí)對(duì)應(yīng)的設(shè)備滿足以下第二條件:與第二鄰居設(shè)備互為鄰居且具有相同設(shè)備角色、但不處于子堆疊系統(tǒng);所述指定時(shí)間由N+1決定,N為第一鏈路層發(fā)現(xiàn)報(bào)文攜帶的設(shè)備標(biāo)識(shí)的數(shù)量。
至此,完成本發(fā)明提供的裝置描述。
以上所述僅為本發(fā)明的較佳實(shí)施例而已,并不用以限制本發(fā)明,凡在本發(fā)明的精神和原則之內(nèi),所做的任何修改、等同替換、改進(jìn)等,均應(yīng)包含在本發(fā)明保護(hù)的范圍之內(nèi)。