專利名稱:大規(guī)模第2層城域網(wǎng)的制作方法
技術(shù)領(lǐng)域:
本發(fā)明涉及計(jì)算機(jī)網(wǎng)絡(luò),更具體地說(shuō),涉及大規(guī)模城域網(wǎng)。
背景技術(shù):
包括企業(yè)、政府和教育機(jī)構(gòu)在內(nèi)的許多組織利用計(jì)算機(jī)網(wǎng)絡(luò),以便雇員和其他人可以共享并交換信息和/或資源。計(jì)算機(jī)網(wǎng)絡(luò)一般包括依靠一種或多種通信介質(zhì)互連的實(shí)體。實(shí)體可以由通過(guò)通信介質(zhì)“發(fā)出”(即發(fā)送)或“吸收”(即接收)數(shù)據(jù)幀的任何設(shè)備組成,例如計(jì)算機(jī)。一種常見的計(jì)算機(jī)網(wǎng)絡(luò)是局域網(wǎng)(“LAN”),它一般指單個(gè)建筑或者校園中的私有網(wǎng)絡(luò)。LAN一般應(yīng)用諸如以太網(wǎng)、FDDI或令牌環(huán)之類的數(shù)據(jù)通信協(xié)議(LAN標(biāo)準(zhǔn)),這些數(shù)據(jù)通信協(xié)議定義由通信體系結(jié)構(gòu)(即協(xié)議棧)的數(shù)據(jù)鏈路層和物理層執(zhí)行的功能。
常常使用一個(gè)或多個(gè)中間網(wǎng)絡(luò)設(shè)備來(lái)將LAN耦合到一起,并且允許相應(yīng)的實(shí)體交換信息。例如,可以使用網(wǎng)橋在兩個(gè)或多個(gè)LAN或者終端站之間提供“交換”功能。一般來(lái)說(shuō),網(wǎng)橋是一個(gè)計(jì)算機(jī),并且包括經(jīng)由LAN被耦合到其他網(wǎng)橋、或者諸如路由器或主機(jī)之類的終端站的多個(gè)端口。一般將用來(lái)將網(wǎng)橋相互耦合的端口稱為干線端口,而一般將用來(lái)將網(wǎng)橋耦合到終端站的端口稱作接入端口。網(wǎng)橋橋接功能包括在源端口處從發(fā)送實(shí)體接收數(shù)據(jù),并且將該數(shù)據(jù)傳送到至少一個(gè)目的地端口,以轉(zhuǎn)發(fā)到一個(gè)或多個(gè)接收實(shí)體。
以太網(wǎng)以太網(wǎng)是現(xiàn)在最常使用的LAN標(biāo)準(zhǔn)。被稱作10Base-T的原始以太網(wǎng)傳輸標(biāo)準(zhǔn)能夠以每秒10M(Mbs)的速率發(fā)送數(shù)據(jù)。1995年,國(guó)際電氣電子工程師協(xié)會(huì)(IEEE)批準(zhǔn)了被稱作100Base-T的快速以太網(wǎng)傳輸協(xié)議,它能夠以100Mbs的速率工作。然而,10Base-T和100Base-T都受限于小于100米的線纜長(zhǎng)度。IEEE的一個(gè)委員會(huì)(所謂的802.3z委員會(huì))當(dāng)前正在研究用于以1000Mbs的速率傳輸數(shù)據(jù)的Gigabit以太網(wǎng),也被稱作1000Base-X(光纖信道)和1000Base-T(長(zhǎng)拉銅纜(long haulcopper))。除了極大增加的傳輸速率外,Gigabit以太網(wǎng)也支持長(zhǎng)至3000米的線纜長(zhǎng)度。因此,Gigabit以太網(wǎng)代表了潛在的以太網(wǎng)LAN的大小和范圍的極大增長(zhǎng)。
生成樹(spanning tree)算法大多計(jì)算機(jī)網(wǎng)絡(luò)包括冗余通信路徑,以使得任何給定鏈路發(fā)生故障不會(huì)隔離網(wǎng)絡(luò)的任何部分。一般把這種網(wǎng)絡(luò)稱作網(wǎng)狀網(wǎng)絡(luò)或者部分網(wǎng)狀網(wǎng)絡(luò)。然而,存在冗余鏈路可能導(dǎo)致在網(wǎng)絡(luò)中形成網(wǎng)絡(luò)環(huán)路或者“環(huán)”。因?yàn)閿?shù)據(jù)幀可能通過(guò)環(huán)無(wú)限循環(huán),所以非常不希望存在環(huán)。
此外,諸如網(wǎng)橋或交換機(jī)之類的某些設(shè)備復(fù)制目的地未知的幀,導(dǎo)致沿環(huán)增生數(shù)據(jù)幀。結(jié)果流量可能壓垮網(wǎng)絡(luò)。諸如路由器之類的工作在協(xié)議棧中較高層(例如傳輸控制協(xié)議/因特網(wǎng)協(xié)議(“TCP/IP”)參考模型的互聯(lián)網(wǎng)層)的其他中間設(shè)備傳遞數(shù)據(jù)幀,并且獲知與大多數(shù)網(wǎng)橋或交換機(jī)不同的網(wǎng)絡(luò)上的實(shí)體的地址,以使得路由器一般不受持續(xù)的成環(huán)問(wèn)題的影響。
為了避免形成環(huán),大多網(wǎng)橋和路由器執(zhí)行生成樹協(xié)議,該協(xié)議允許它們計(jì)算不會(huì)形成環(huán)的活動(dòng)網(wǎng)絡(luò)拓?fù)?即樹),并且該網(wǎng)絡(luò)拓?fù)溥€連接網(wǎng)絡(luò)中的每對(duì)LAN(即該樹是生成的)。IEEE已經(jīng)發(fā)布了定義由802.1D兼容設(shè)備執(zhí)行的生成樹協(xié)議的標(biāo)準(zhǔn)(IEEE Std.802.1D-1998TM)。一般來(lái)說(shuō),通過(guò)執(zhí)行802.1D生成樹協(xié)議,網(wǎng)橋選舉橋接網(wǎng)絡(luò)中的單個(gè)網(wǎng)橋?yàn)椤案W(wǎng)橋”。802.1D標(biāo)準(zhǔn)利用每個(gè)網(wǎng)橋具有唯一的數(shù)字標(biāo)識(shí)符(網(wǎng)橋ID)這樣的事實(shí),指定根網(wǎng)橋?yàn)榫哂凶钚【W(wǎng)橋ID的網(wǎng)橋。另外,對(duì)于耦合到任何網(wǎng)橋的每個(gè)LAN,剛好選出一個(gè)網(wǎng)橋(“指定的網(wǎng)橋”)上的一個(gè)端口(“指定的端口”)。指定網(wǎng)橋一般是最靠近根網(wǎng)橋的網(wǎng)橋。根網(wǎng)橋上的所有端口都是指定端口,并且根網(wǎng)橋是所有下述LAN上的指定網(wǎng)橋,即根網(wǎng)橋具有端口到所述LAN。
每個(gè)非根網(wǎng)橋也從它的非指定端口中選擇一個(gè)給出到根網(wǎng)橋的最低代價(jià)路徑的端口(它的“根端口”)。將選擇的根端口和指定端口包括在活動(dòng)拓?fù)渲校⑶抑糜谵D(zhuǎn)發(fā)狀態(tài)中,以使得可以將數(shù)據(jù)幀轉(zhuǎn)發(fā)向這些端口并且從這些端口轉(zhuǎn)發(fā),從而轉(zhuǎn)發(fā)到將網(wǎng)絡(luò)的網(wǎng)橋和終端站互連的LAN′上。將未包括在活動(dòng)拓?fù)渲械亩丝谥糜谧枞麪顟B(tài)中。當(dāng)端口處于阻塞狀態(tài)中時(shí),將不把數(shù)據(jù)幀轉(zhuǎn)發(fā)到該端口,也不從該端口接收數(shù)據(jù)幀。網(wǎng)絡(luò)管理員也可以通過(guò)將端口置于禁用狀態(tài)中,從而從生成樹中排除該端口。
為了獲得運(yùn)行生成樹協(xié)議所必需的信息,網(wǎng)橋交換被稱作配置網(wǎng)橋協(xié)議數(shù)據(jù)單元(BPDU)消息或者簡(jiǎn)寫為BPDU的專用消息。BPDU攜帶諸如假設(shè)的根和最低根路徑代價(jià)之類的在計(jì)算活動(dòng)拓?fù)渲惺褂玫男畔?。更具體地說(shuō),一旦啟動(dòng),每個(gè)網(wǎng)橋最初就假定它自己是根網(wǎng)橋,并且因此發(fā)射BPDU。一旦從相鄰的設(shè)備接收到BPDU,接收網(wǎng)橋就檢查接收到的BPDU的內(nèi)容,并且將其與存儲(chǔ)在存儲(chǔ)器中的相似信息(例如,假設(shè)的根和最低根路徑代價(jià))進(jìn)行比較。如果來(lái)自接收到的BPDU的信息“優(yōu)”于存儲(chǔ)的信息,則網(wǎng)橋就采用較優(yōu)的信息,并且在網(wǎng)橋從它的與在其上接收了“較優(yōu)”信息的端口不同的端口發(fā)送的BPDU中使用該信息(將與接收端口相關(guān)聯(lián)的代價(jià)添加到根路徑代價(jià))。盡管BPDU不是由網(wǎng)橋轉(zhuǎn)發(fā),但是根網(wǎng)橋的標(biāo)識(shí)符最終還是如上所述被傳播到所有網(wǎng)橋,并且被所有網(wǎng)橋所采用,允許它們選擇它們的根端口和任何(多個(gè))指定端口。
為了使活動(dòng)拓?fù)溥m應(yīng)變化和故障,根網(wǎng)橋周期地(例如每hello時(shí)間地)發(fā)送BPDU。響應(yīng)于在它們的根端口上接收BPDU,網(wǎng)橋從它們的指定端口發(fā)送它們自己的BPDU(如果有的話)。從而,將BPDU周期地傳播過(guò)整個(gè)橋接的網(wǎng)絡(luò),確認(rèn)活動(dòng)拓?fù)洹.?dāng)BPDU被更新和/或過(guò)時(shí),并且重新計(jì)算活動(dòng)拓?fù)鋾r(shí),端口可以從阻塞狀態(tài)轉(zhuǎn)變到轉(zhuǎn)發(fā)狀態(tài),反之亦然。即,作為新BPDU信息的結(jié)果,先前被阻塞的端口可以獲知它應(yīng)當(dāng)處于轉(zhuǎn)發(fā)狀態(tài)(例如,它現(xiàn)在是根端口或者指定端口)。
快速生成樹協(xié)議近來(lái),IEEE發(fā)布了定義快速生成樹協(xié)議(RSTP)的新標(biāo)準(zhǔn)(IEEEStd.802.1W-2001TM)。RSTP類似地選擇橋接網(wǎng)絡(luò)的一個(gè)網(wǎng)橋?yàn)楦W(wǎng)橋,并且定義在LAN之間提供完整連通性的同時(shí)切斷任何環(huán)的活動(dòng)拓?fù)?。根?jù)端口是否是活動(dòng)拓?fù)涞囊徊糠?,給每個(gè)網(wǎng)橋的每個(gè)獨(dú)立端口分配端口角色。由802.1w規(guī)范標(biāo)準(zhǔn)定義的端口角色包括根端口、指定端口、替換端口和備份端口。將提供到根網(wǎng)橋的最佳(例如最小代價(jià))路徑的網(wǎng)橋端口分配為根端口角色。將提供到根網(wǎng)橋的替換(例如較高代價(jià))路徑的每個(gè)網(wǎng)橋端口分配為替換端口角色。對(duì)于每個(gè)LAN,將提供從那個(gè)LAN到根網(wǎng)橋的最低代價(jià)路徑的一個(gè)端口分配為指定端口角色,而將耦合到LAN的所有其他端口分配為根端口角色、備份端口角色、或者在某些情形中為替換端口角色。在根網(wǎng)橋處,將所有端口分配為指定端口角色。
將已經(jīng)被分配為根端口角色和指定端口角色的那些端口置于轉(zhuǎn)發(fā)狀態(tài)中,而將已經(jīng)被分配為替換和備份角色的端口置于一種狀態(tài)中。如果所有分配為替換端口角色的端口都處于阻塞狀態(tài)中,則可以將分配為根端口角色的端口快速轉(zhuǎn)變到的轉(zhuǎn)發(fā)狀態(tài)。類似地,如果在當(dāng)前分配為根端口角色的端口上發(fā)生了故障,倘若已將先前的根端口轉(zhuǎn)變到丟棄或阻塞狀態(tài),則可以將分配為替換端口角色的端口重新分配為根端口角色,并且快速地轉(zhuǎn)變到轉(zhuǎn)發(fā)狀態(tài)。倘若下游網(wǎng)橋的端口的角色與正被分配為指定端口角色的這個(gè)端口一致,則可以將下述端口快速轉(zhuǎn)變到轉(zhuǎn)發(fā)狀態(tài),所述端口是已被分配為指定端口角色或備份端口角色,而將被重分配為指定端口角色的端口。RSTP提供了要被相鄰網(wǎng)橋使用的明確的握手,以確認(rèn)可以將新的指定端口快速轉(zhuǎn)變到轉(zhuǎn)發(fā)狀態(tài)。
與在802.1D規(guī)范標(biāo)準(zhǔn)中描述的STP相同,運(yùn)行RSTP的網(wǎng)橋也交換BPDU,以便確定將哪個(gè)角色分配給網(wǎng)橋的端口。在被應(yīng)用到將指定端口快速轉(zhuǎn)變到轉(zhuǎn)發(fā)狀態(tài)的握手中也利用BPDU。
虛擬局域網(wǎng)也可以將計(jì)算機(jī)網(wǎng)絡(luò)分段到一系列邏輯網(wǎng)絡(luò)中。例如,于1995年2月28日授權(quán)給Ross的美國(guó)專利No.5,394,402(“402專利”)公開了用于將交換機(jī)的任何端口與任何特定的網(wǎng)段相關(guān)聯(lián)的布置。具體地說(shuō),根據(jù)“402專利”,通過(guò)使用將端口與特定的VLAN標(biāo)號(hào)(designation)虛擬地關(guān)聯(lián)起來(lái)的虛擬局域網(wǎng)(VLAN)布置,可以將特定交換機(jī)的任何數(shù)目的物理端口與交換機(jī)中的任何數(shù)目的組相關(guān)聯(lián)。更具體地說(shuō),交換機(jī)或集線器將VLAN標(biāo)號(hào)與它的端口相關(guān)聯(lián),并且還將那些VLAN標(biāo)號(hào)與從已將VLAN標(biāo)號(hào)分配給的任何端口發(fā)送來(lái)的消息相關(guān)聯(lián)。
用于每個(gè)端口的VLAN標(biāo)號(hào)存儲(chǔ)在交換機(jī)的存儲(chǔ)器部分,以使得每次在給定的接入端口上接收到消息時(shí),就將用于那個(gè)端口的VLAN標(biāo)號(hào)與消息相關(guān)聯(lián)。利用下述流處理元件實(shí)現(xiàn)關(guān)聯(lián),所述流處理元件基于在其上接收消息的具體接入端口,在存儲(chǔ)器部分中查找VLAN標(biāo)號(hào)。在許多情形中,最好將多個(gè)這些交換機(jī)互連,以便在網(wǎng)絡(luò)中擴(kuò)展端口的VLAN關(guān)聯(lián)。那些具有相同VLAN標(biāo)號(hào)的實(shí)體好像它們都是相同LAN的一部分一樣工作。專門對(duì)VLAN配置的網(wǎng)橋進(jìn)行配置來(lái)防止在具有不同VLAN標(biāo)號(hào)的部分網(wǎng)絡(luò)之間交換消息,以便保持每個(gè)VLAN的邊界。雖然如此,諸如路由器之類的在第2層之上運(yùn)行的中間網(wǎng)絡(luò)設(shè)備可以在不同的VLAN段之間中繼消息。
除了“402專利”之外,IEEE發(fā)布了用于虛擬橋接局域網(wǎng)的802.1Q規(guī)范標(biāo)準(zhǔn)。為了保持通過(guò)VLAN敏感網(wǎng)絡(luò)中的干線或者鏈路傳輸?shù)南⒌腣LAN關(guān)聯(lián),Ross和IEEE Std.802.1Q-1998規(guī)范標(biāo)準(zhǔn)都公開了將VLAN標(biāo)識(shí)符(VID)字段附加到相應(yīng)的幀。另外,Edsall等的美國(guó)專利No.5,742,604(它和本申請(qǐng)具有共同的所有人)公開了交換機(jī)間鏈路(ISL)封裝機(jī)制,用于在維護(hù)幀的VLAN關(guān)聯(lián)的同時(shí)在交換機(jī)之間有效地傳輸分組或包括VLAN修飾幀在內(nèi)的幀。具體來(lái)說(shuō),可以利用快速以太網(wǎng)標(biāo)準(zhǔn)的ISL鏈路連接布置在每個(gè)交換機(jī)處的ISL接口電路。發(fā)送ISL電路在ISL頭部和ISL檢錯(cuò)信息中封裝被傳輸?shù)膸?,而ISL接收電路剝離這種信息,并且恢復(fù)原始幀。
多生成樹協(xié)議IEEE也正在研究用于生成樹協(xié)議的規(guī)范標(biāo)準(zhǔn),該標(biāo)準(zhǔn)專門設(shè)計(jì)來(lái)與支持VLAN的網(wǎng)絡(luò)一起使用。在IEEE 802.1s草案規(guī)范標(biāo)準(zhǔn)中描述的多生成樹協(xié)議(MSTP)將橋接網(wǎng)絡(luò)組織為區(qū)域(region)。在每個(gè)區(qū)域中,MSTP建立這樣的內(nèi)部生成樹(IST),該內(nèi)部生成樹提供到各個(gè)區(qū)域中的所有的網(wǎng)橋的連通性,以及到在其他區(qū)域中建立的IST的連通性。在每個(gè)MSTP區(qū)域中建立的IST也通過(guò)運(yùn)行STP或RSTP的IEEE Std.802.1Q-1998兼容網(wǎng)橋而提供在該MSTP區(qū)域之外建立的一個(gè)公共生成樹(CST)的連通性。給定的MST區(qū)域的IST接收BPDU,并將BPDU發(fā)送給CST。因此,橋接網(wǎng)絡(luò)的所有網(wǎng)橋由單個(gè)公共和內(nèi)部生成樹(CIST)連接。此外,從遺留網(wǎng)橋或者IEEE 802.1Q的觀點(diǎn)來(lái)看,每個(gè)MST區(qū)域看起來(lái)就象CST上的單個(gè)虛擬網(wǎng)橋。
在每個(gè)MST區(qū)域中,MSTP兼容網(wǎng)橋建立多個(gè)活動(dòng)拓?fù)?,每個(gè)活動(dòng)拓?fù)浔环Q作多生成樹實(shí)例(MSTI)。MSTP網(wǎng)橋也將每個(gè)VLAN分配或者映射到一個(gè)且只是一個(gè)MSTI。因?yàn)榭梢詫⒍鄠€(gè)VLAN分配到不同的MSTI,所以與不同的VLAN相關(guān)聯(lián)的幀可以采用不同的路徑通過(guò)MSTP區(qū)域。網(wǎng)橋可以為每個(gè)單個(gè)VLAN計(jì)算分離的拓?fù)?,但是一般不?jì)算,從而節(jié)省處理器和存儲(chǔ)器資源。每個(gè)MSTI基本上是只在各個(gè)區(qū)域內(nèi)存在的簡(jiǎn)單的RSTP實(shí)例,并且MSTI不在區(qū)域之外交互。
和其他生成樹協(xié)議一樣,MSTP使用BPDU來(lái)建IST和MSTI,并且定義不同的MSTP區(qū)域的邊界。網(wǎng)橋不對(duì)每個(gè)MSTI發(fā)送不同的BPDU。相反,每個(gè)MSTP BPDU攜帶為在各個(gè)區(qū)域中定義的所有MSTI計(jì)算活動(dòng)拓?fù)渌枰男畔ⅰ4送?,每個(gè)MSTI具有相應(yīng)的標(biāo)識(shí)符(ID),并且將MSTI ID編碼到網(wǎng)橋ID中。即,如上所述,每個(gè)網(wǎng)橋具有唯一的ID,并且這個(gè)ID由固定的部分和可設(shè)置的部分組成。利用MSTP,將網(wǎng)橋ID的可設(shè)置部分進(jìn)一步組織來(lái)包括系統(tǒng)ID擴(kuò)展。系統(tǒng)ID擴(kuò)展對(duì)應(yīng)于MSTI ID。從而,給定區(qū)域中的MSTP兼容網(wǎng)橋?qū)τ诿總€(gè)MSTI將具有不同的網(wǎng)橋ID。對(duì)于給定的MSTI,將對(duì)于那個(gè)實(shí)例具有最小網(wǎng)橋ID的網(wǎng)橋選舉為根。從而,MSTP兼容網(wǎng)橋可以是給定MSTP區(qū)域中的一個(gè)MSTI的根,而不是給定MSTP區(qū)域中其他MSTI的根。
運(yùn)行MSTP的每個(gè)網(wǎng)橋也具有由三個(gè)屬性組成的單個(gè)MST配置標(biāo)識(shí)符(ID)包括字母和數(shù)字的配置名,修訂級(jí)別和VLAN映射表,該VLAN映射表將潛在的4096個(gè)VLAN中的每一個(gè)VLAN映射到相應(yīng)的MSTI。此外,每個(gè)網(wǎng)橋?qū)⑺腗ST配置ID加載到由該網(wǎng)橋發(fā)出的BPDU。因?yàn)榫W(wǎng)橋只需要知道它們是否在相同的MST區(qū)域中,所以它們不在它們的BPDU中傳播實(shí)際的VLAN到MSTI的表。相反,MST BPDU只攜帶VLAN到MSTI的表或映射的摘要。通過(guò)將公知的MD-5算法應(yīng)用到VLAN到MSTI的表來(lái)生成摘要。當(dāng)網(wǎng)橋接收到MST BPDU時(shí),網(wǎng)橋就抽取包含在其中的包括有摘要的MST配置ID,并且將它與網(wǎng)橋自己的MST配置ID相比較,以判斷它是否與發(fā)送該MST BPDU的網(wǎng)橋在相同的MST區(qū)域中。如果這兩個(gè)MST配置ID相同,則這兩個(gè)網(wǎng)橋在相同的MST區(qū)域中。但是,如果這兩個(gè)MST配置ID至少有一個(gè)不匹配的屬性(即,或者不同的配置名、不同的修訂級(jí)別和/或不同的計(jì)算得的摘要),則接收到BPDU的網(wǎng)橋推斷出它在與發(fā)出BPDU的網(wǎng)橋不同的MST區(qū)域中。此外,如果指定網(wǎng)橋在不同的MST區(qū)域中,或者如果端口接收遺留的BPDU,則認(rèn)為MST網(wǎng)橋的端口在MST區(qū)域的邊界處。
圖1是MST BPDU 100的高度簡(jiǎn)化的方框圖。MST BPDU 100包括與各個(gè)LAN標(biāo)準(zhǔn)(例如以太網(wǎng))的媒體訪問(wèn)控制(MAC)層兼容的頭部102。除了其他以外,頭部102包括目的地地址(DA)字段、源地址(SA)字段、目的地服務(wù)接入點(diǎn)(DSAP)字段和源服務(wù)接入點(diǎn)(SSAP)字段。DA字段104攜帶有分配給生成樹協(xié)議的唯一網(wǎng)橋多播目的地地址,并且DSAP和SSAP字段攜帶有分配給生成樹協(xié)議的標(biāo)準(zhǔn)化的標(biāo)識(shí)符。附加到頭部102的是BPDU消息區(qū)域,該區(qū)域包括“外”部104和“內(nèi)”部106。外部104具有與RSTP BPDU消息相同的格式,并且被未實(shí)現(xiàn)MSTP的網(wǎng)橋識(shí)別為有效的RSTP BPDU消息。執(zhí)行MSTP的網(wǎng)橋利用“內(nèi)”部106來(lái)建立IST和MSTI。內(nèi)部106具有一組用于IST的生成樹參數(shù),以及一組用于由發(fā)出MSTP BPDU 100的網(wǎng)橋所支持的每個(gè)MSTI的參數(shù)。
外部104(也被稱為CIST優(yōu)先權(quán)向量)具有多個(gè)字段,包括協(xié)議標(biāo)識(shí)符(ID)字段108、協(xié)議版本ID字段110、BPDU類型字段112、標(biāo)簽字段114、CIST根ID字段116、外部路徑代價(jià)字段118、CIST區(qū)域根ID字段120、CIST端ID字段122、消息年齡字段124、最大(MAX)年齡字段126、hello時(shí)間字段128和轉(zhuǎn)發(fā)延遲字段130。CIST根標(biāo)識(shí)符字段116包含被假設(shè)為公共和內(nèi)部生成樹的根的網(wǎng)橋的標(biāo)識(shí)符,其可以在與發(fā)出BPDU消息100的網(wǎng)橋相同的MSTP區(qū)域中,也可以在另一個(gè)MSTP區(qū)域中,或者在不運(yùn)行MSTP的橋接網(wǎng)絡(luò)的一部分中。外部路徑代價(jià)字段118包含這樣的值,該值代表從發(fā)出BPDU 100的網(wǎng)橋到在字段116中標(biāo)識(shí)的CIST根,不通過(guò)在與發(fā)出BPDU消息100的網(wǎng)橋相同的區(qū)域中的任何其他網(wǎng)橋的最低代價(jià)。
類似地,內(nèi)部106(也被稱為MSTI優(yōu)先權(quán)向量)也具有多個(gè)字段,包括版本1長(zhǎng)度字段132、空(null)字段134、版本3長(zhǎng)度136、MST配置ID字段138、CIST區(qū)域根ID字段140、CIST區(qū)域路徑代價(jià)字段142、CIST網(wǎng)橋ID字段144、CIST端口ID字段146、CIST標(biāo)簽字段148和CIST跳字段150。內(nèi)部106還可以包括一個(gè)或多個(gè)可選的MSTI配置消息152,每個(gè)MSTI配置消息組成另一個(gè)MSTI優(yōu)先權(quán)向量或M記錄。
因?yàn)镽STP的版本2沒(méi)有指定除版本1已經(jīng)指定的那些字段外的任何額外的字段,所以MST BPDU沒(méi)有版本2長(zhǎng)度字段。
如上所述,MST配置ID字段138由三個(gè)子字段組成配置名子字段154、修訂級(jí)別子字段156和MD-5校驗(yàn)和子字段158。配置名子字段154攜帶在固定長(zhǎng)度中編碼的可變長(zhǎng)度文本字符串,例如32八位組。修訂級(jí)別子字段156攜帶在兩個(gè)八位組的固定字段中編碼的整數(shù)。MD-5校驗(yàn)和子字段158攜帶通過(guò)將MD-5算法應(yīng)用到網(wǎng)橋的VLAN到MSTI表而創(chuàng)建的16八位組的簽名,其包含4096個(gè)連續(xù)的2個(gè)八位組的元素。
每個(gè)MSTI配置消息152由下述多個(gè)字段組成,包括CIST區(qū)域根ID字段160、CIST區(qū)域路徑代價(jià)字段162、CIST網(wǎng)橋ID字段164、CIST端口ID字段166、CIST標(biāo)簽字段168和CIST跳字段170。MST網(wǎng)橋利用包含在內(nèi)部106的字段140-150中和每個(gè)MSTI配置消息152中的STP參數(shù),以計(jì)算用于在各個(gè)區(qū)域中配置的每個(gè)MSTI的活動(dòng)拓?fù)洹?br>
城域網(wǎng)(MAN)利用點(diǎn)到點(diǎn)鏈路、微波收發(fā)機(jī)、衛(wèi)星連接等可以將多個(gè)LAN和/或終端站互連,以形成一般跨越數(shù)個(gè)城區(qū)、整個(gè)城市和/或例如San FranciscoBay區(qū)域的整個(gè)城市區(qū)域的城域網(wǎng)(MAN)。MAN一般互連位于物理上相互遠(yuǎn)離、但是仍在城市區(qū)域中的各個(gè)校園和/或建筑中的多個(gè)LAN和/或終端站。傳統(tǒng)的MAN一般依賴于應(yīng)用在現(xiàn)存公共交換電話網(wǎng)(PSTN)的同步光網(wǎng)絡(luò)(SONET)之上運(yùn)行的異步傳輸模式(ATM)的網(wǎng)絡(luò)設(shè)備。和大多數(shù)LAN利用以太網(wǎng)標(biāo)準(zhǔn)一樣,必須將在一個(gè)LAN中創(chuàng)建的網(wǎng)絡(luò)消息或分組從以太網(wǎng)格式轉(zhuǎn)換成ATM信元,以通過(guò)SONET鏈路傳輸。然后必須將ATM信元轉(zhuǎn)換回以太網(wǎng)格式,以傳遞到目的地LAN或終端站。這種將每個(gè)網(wǎng)絡(luò)消息從以太網(wǎng)轉(zhuǎn)換到ATM,并且再轉(zhuǎn)換回去的需求要求MAN包括昂貴的網(wǎng)絡(luò)設(shè)備。MAN供應(yīng)者也不得不租借或者獲得到SONET鏈路的接入。結(jié)果,建立和運(yùn)行MAN可能是昂貴的。
因此,需要一種系統(tǒng)和方法,用于更有效地建立并運(yùn)行MAN。
發(fā)明內(nèi)容
簡(jiǎn)要地說(shuō),本發(fā)明集中于用于使用第2層(L2)交換技術(shù)建立超大城域網(wǎng)(MAN)的系統(tǒng)和方法。在示例性實(shí)施方式中,將不同組L2交換機(jī)邏輯地組織成島。此外,將每個(gè)島配置為分離的管理域。連接到每個(gè)島的是多個(gè)客戶站點(diǎn),一般是局域網(wǎng)(LAN)。利用互連結(jié)構(gòu)來(lái)將島耦合到一起,以使得連接到第一島的客戶站點(diǎn)可以與連接到相同的島或者連接到第二島的客戶站點(diǎn)通信。在示例性實(shí)施方式中,從配置來(lái)提供多標(biāo)記交換協(xié)議之上的仿真VLAN(EVoMPLS)服務(wù)的多個(gè)第3層(L3)設(shè)備形成互連結(jié)構(gòu),其中EVoMPLS是MPLS之上的ATM仿真(ATM論壇標(biāo)準(zhǔn)af-lane-0021.000)的相仿體?;蛘撸ミB結(jié)構(gòu)可以由使用802.1Q或者類似的標(biāo)簽的以太網(wǎng)LAN形成。島協(xié)作來(lái)向正被耦合在一起的每組客戶站點(diǎn)提供虛擬以太網(wǎng)連接(VEC)??蛻敉ㄟ^(guò)用客戶設(shè)備VLAN標(biāo)識(shí)符(CE-VLAN ID)給它們的流量加標(biāo)記或標(biāo)簽來(lái)標(biāo)識(shí)它們的對(duì)應(yīng)于VEC的流量。在每個(gè)島中,將由客戶的流量指定的CE-VLAN ID(并且由此指定相應(yīng)的VEC)映射到唯一的MAN運(yùn)營(yíng)商設(shè)備VLAN ID(PE-VLAN ID)。為在一個(gè)島中給定的VEC選擇的PE-VLAN ID可以與為在另一個(gè)島中使用的為所述給定的VEC選擇的PE-VLAN ID不同。對(duì)于每個(gè)橫穿互連結(jié)構(gòu)的VEC,建立島間干線來(lái)在兩個(gè)島之間傳輸VEC流量。島間干線是這樣的邏輯結(jié)構(gòu),即,至少?gòu)膷u的觀點(diǎn)來(lái)看,它起到共享的介質(zhì)的功能。具體地說(shuō),將利用島間干線聯(lián)合的島配置來(lái)把相同的虛電路標(biāo)識(shí)符(ID)(優(yōu)選地作為MPLS標(biāo)記)附加到置于島間干線上的網(wǎng)絡(luò)消息。在將在島中從島間接收到的網(wǎng)絡(luò)消息發(fā)送到各個(gè)客戶站點(diǎn)之前,剝離它們的虛電路ID標(biāo)記和任何其他標(biāo)記。
可以預(yù)期由島和互連結(jié)構(gòu)組成的拼接而成的MAN對(duì)于任何標(biāo)準(zhǔn)生成樹算法都太大了,而不能滿意地防止形成環(huán)。為了防止在MAN中形成環(huán),將島配置來(lái)防止兩個(gè)或多個(gè)VEC共享相同的島間干線。島還運(yùn)行MAN間控制協(xié)議(IMCP)這種新協(xié)議,該協(xié)議代表多生成樹協(xié)議(MSTP)的修改版本。具體地說(shuō),給布置在每個(gè)島中的L2設(shè)備配置有新的多協(xié)議生成樹(MST)配置ID,該配置ID除了配置名、修訂級(jí)別和校驗(yàn)和之外,還包括島名。此外,布置在相同島中的L2設(shè)備都被給予相同的島ID、配置名和修訂級(jí)別。從而,每個(gè)島將它自身標(biāo)識(shí)為分離的MSTP區(qū)域。其次,對(duì)于跨越互連結(jié)構(gòu)的每個(gè)VEC,每個(gè)島中的L2設(shè)備也確保,除了一個(gè)之外所有其他將島連接到互連結(jié)構(gòu)的冗余鏈路都被阻塞。結(jié)果,切斷了由在客戶站點(diǎn)和島之間出現(xiàn)的冗余鏈路可能另外導(dǎo)致的環(huán),而不管在客戶站點(diǎn)中正運(yùn)行的STP的版本。然而,對(duì)于不同的VEC,阻塞的鏈路可以變化,由此在在島和互連結(jié)構(gòu)之間延伸的鏈路之間提供某一水平的負(fù)載共享。
IMCP也施加數(shù)種新規(guī)則。具體地說(shuō),將在島中接收到的這樣的BPDU作為正常、匹配的BPDU處置,該BPDU的整個(gè)MST配置ID與接收L2設(shè)備的MST配置ID匹配。將接收到的這樣的BPDU作為快速生成樹協(xié)議(RSTP)BPDU處置,該BPDU的島名與接收L2設(shè)備的島名匹配,但是它們的配置名、修訂級(jí)別和/或配置摘要不匹配。這種規(guī)則允許相同島中的網(wǎng)橋以與802.1S相同的方式運(yùn)行,并且在重配置網(wǎng)橋期間維護(hù)連通性。如果從島間干線接收到,則忽略下述接收到的BPDU其島名與接收BPDU的L2接收設(shè)備的島名不匹配,并且其指定根ID與接收L2設(shè)備的根ID不匹配的BPDU。這種規(guī)則有效地將島的生成樹相互去耦。如果在網(wǎng)橋的端口上而不是從島間干線接收到,則接收到下述BPDU導(dǎo)致接收網(wǎng)橋?qū)⒂糜谒蠽LAN的各個(gè)端口阻塞,并且發(fā)出操作者警告,其中所述BPDU的島名與接收BPDU的L2設(shè)備的島名不匹配。這種規(guī)則防止除了島間干線上的連接之外的島之間的意外連接。在優(yōu)選的實(shí)施方式中,L2設(shè)備也通過(guò)阻塞用于所有VLAN的各個(gè)端口,并且發(fā)出操作者警告,來(lái)對(duì)接收這樣的BPDU作出響應(yīng),這些BPDU的島名與接收這些BPDU的L2設(shè)備的島名不匹配,但是它們的指定根ID的確與接收L2設(shè)備的相匹配。這種規(guī)則允許島檢測(cè)以其他方式不會(huì)被檢測(cè)到的島之間的意外連接。
下面的發(fā)明描述參考附圖,其中圖1(先前描述的)是根據(jù)多生成樹協(xié)議的傳統(tǒng)配置網(wǎng)橋協(xié)議數(shù)據(jù)單元的簡(jiǎn)化方框圖;圖2是超大城域網(wǎng)(MAN)的高度簡(jiǎn)化的示意圖;圖3是圖2的MAN的島的高度簡(jiǎn)化的示意圖;圖4是圖3的島的第2層(L2)設(shè)備的局部功能圖;圖5是配置標(biāo)識(shí)符(ID)的高度簡(jiǎn)化的示意圖;圖6是VLAN映射表的高度簡(jiǎn)化的示意圖;圖7是島間干線映射表的高度簡(jiǎn)化的示意圖;圖8是加標(biāo)記的網(wǎng)絡(luò)消息格式的高度簡(jiǎn)化的示意圖;圖9-11是圖2的MAN的高度簡(jiǎn)化的局部示意圖;和圖12和13是根據(jù)本發(fā)明的另一個(gè)MAN的高度簡(jiǎn)化的示意圖。
具體實(shí)施例方式
圖2是根據(jù)本發(fā)明的超大第2層(L2)城域網(wǎng)200的高度簡(jiǎn)化的示意圖。如這里所使用的,術(shù)語(yǔ)“超大MAN”指能夠覆蓋整個(gè)城市區(qū)域的MAN,例如San Francisco Bay區(qū)域、Silicon Valley等。MAN 200包括多個(gè)島,例如島202、204和206。如這里所述,每個(gè)島包括一個(gè)或多個(gè)互連的第2層(L2)中間網(wǎng)絡(luò)設(shè)備,例如網(wǎng)橋或交換機(jī)。一般來(lái)說(shuō),每個(gè)島由相同的MAN運(yùn)營(yíng)商操作,并且代表分離的管理域。將MAN 200組織成不同的島來(lái)增加可由MAN 200支持的超過(guò)4096的VLAN標(biāo)號(hào)的數(shù)目。此外,可以將某些或者所有這些單獨(dú)的島分配給不同的管理員。
利用島互連結(jié)構(gòu)208將島耦合到一起。優(yōu)選地,通過(guò)諸如島間鏈路210a-f之類的多個(gè)鏈路將每個(gè)島耦合到島互連結(jié)構(gòu)208。此外,附著到每個(gè)島的是諸如個(gè)人客戶之類的一個(gè)或多個(gè)客戶站點(diǎn)212-217。在示例性實(shí)施方式中,每個(gè)客戶站點(diǎn)包括多個(gè)實(shí)體或主機(jī),例如個(gè)人計(jì)算機(jī)、工作站、服務(wù)器等,它們都在相同的物理位置,并且都被互連來(lái)形成一個(gè)或多個(gè)局域網(wǎng)(LAN),以使得實(shí)體可以相互發(fā)出或吸收數(shù)據(jù)幀。如這里所使用的,術(shù)語(yǔ)“相同的物理位置”指在單個(gè)校園或大約單個(gè)城區(qū)的區(qū)域中的單個(gè)建筑或多個(gè)建筑。可以通過(guò)一個(gè)或多個(gè)諸如網(wǎng)橋、交換機(jī)或路由器之類的客戶操作的L2中間網(wǎng)絡(luò)設(shè)備將在客戶站點(diǎn)處的LAN互連。
客戶站點(diǎn)212-217一般屬于不同的組織,例如組織A和組織B。具體地說(shuō),組織A包括客戶站點(diǎn)212(A1)、213(A2)、216(A3)和217(A4)。組織B包括客戶站點(diǎn)214(B1)和215(B2)。優(yōu)選地通過(guò)多個(gè)站點(diǎn)鏈路220-231將每個(gè)客戶站點(diǎn)212-217耦合到至少一個(gè)島。如這里所述,客戶從MAN 200獲得各種服務(wù),例如將它的地理上相互遠(yuǎn)離的站點(diǎn)互連。這樣,位于一個(gè)客戶站點(diǎn)的實(shí)體可以與另一個(gè)站點(diǎn)的實(shí)體通信。
圖2的MAN 200僅僅是為了說(shuō)明目的,并不是要限制本發(fā)明。實(shí)際上,MAN 200一般包括更多的站點(diǎn),例如數(shù)以千計(jì)。
圖3是島的高度簡(jiǎn)化的示意圖。島202包括多個(gè)L2中間網(wǎng)絡(luò)設(shè)備,例如交換機(jī)(S)302、304和306。每個(gè)交換機(jī)302、304和306都包括多個(gè)端口(P)402,至少某些端口被用來(lái)將交換機(jī)連接到客戶站點(diǎn)。將其他交換機(jī)端口402耦合到在交換機(jī)302、304和306之間延伸的島內(nèi)鏈路308-310。鏈路308-310可以是在交換機(jī)之間傳輸諸如幀之類的網(wǎng)絡(luò)消息的點(diǎn)到點(diǎn)鏈路或共享介質(zhì)鏈路。此外,每個(gè)交換機(jī)302-306優(yōu)選地例如通過(guò)諸如端口0(P0)、端口1(P1)、端口2(P2)和端口3(P3)等的端口號(hào)識(shí)別它自己的端口402。從而交換機(jī)302-306能夠?qū)⑻囟ǖ亩丝谂c客戶站點(diǎn)和/或耦合到它的其他交換機(jī)相關(guān)聯(lián)。
至少可以將每個(gè)島的某些交換機(jī)劃分到不同的類別。例如,每個(gè)島具有一個(gè)或多個(gè)布置在該島與一個(gè)或多個(gè)客戶站點(diǎn)之間的邊界處的運(yùn)營(yíng)商邊界交換機(jī)。將運(yùn)營(yíng)商邊界交換機(jī)直接耦合到客戶站點(diǎn)。每個(gè)島也包括一個(gè)或多個(gè)將島連接到島互連結(jié)構(gòu)208的島邊界網(wǎng)橋。參考圖3,交換機(jī)304是運(yùn)營(yíng)商邊界網(wǎng)橋,交換機(jī)306是島邊界網(wǎng)橋,并且交換機(jī)302既是運(yùn)營(yíng)商邊界網(wǎng)橋,也是島邊界網(wǎng)橋。
用于與本發(fā)明一起使用的的合適的中間網(wǎng)絡(luò)設(shè)備平臺(tái)包括但不限于來(lái)自San Jose,California的Cisco Systems,Inc.的Catalyst 4000和6000系列商用交換機(jī)。
圖4是諸如交換機(jī)302之類的MAN運(yùn)營(yíng)商交換機(jī)的局部方框圖。交換機(jī)302包括多個(gè)端口402a-402e,優(yōu)選地通過(guò)數(shù)字(例如,P0-P4)識(shí)別每個(gè)端口。將一個(gè)或多個(gè)幀發(fā)送和接收對(duì)象(一般指404)與端口402a-d相關(guān)聯(lián),以使得可以捕獲在給定的端口(例如P3)處接收到的包括幀在內(nèi)的網(wǎng)絡(luò)消息,并且可以將要由交換機(jī)302發(fā)送的幀傳遞到適當(dāng)?shù)亩丝?例如P1)來(lái)發(fā)送。幀接收和發(fā)送對(duì)象404優(yōu)選地是諸如優(yōu)先隊(duì)列之類的消息存儲(chǔ)結(jié)構(gòu)。在示例性實(shí)施方式中,交換機(jī)302包括發(fā)送和接收電路,該電路包括一個(gè)或多個(gè)建立端口來(lái)交換網(wǎng)絡(luò)消息的線卡和/或網(wǎng)絡(luò)接口卡(NIC),一個(gè)或多個(gè)下述管理卡(supervisor card)和一個(gè)或多個(gè)總線結(jié)構(gòu),所述管理卡具有中央處理單元(CPU)和/或微處理器,以及關(guān)聯(lián)的存儲(chǔ)器,用于執(zhí)行運(yùn)算并存儲(chǔ)計(jì)算得到的結(jié)果。
交換機(jī)302具有多個(gè)協(xié)議實(shí)體,包括至少一個(gè)多生成樹協(xié)議(MSTP)實(shí)體408、至少一個(gè)轉(zhuǎn)發(fā)引擎410和虛擬以太網(wǎng)信道(VEC)實(shí)體412。MSTP實(shí)體408優(yōu)選地包括多個(gè)子組件,包括端口角色選擇狀態(tài)機(jī)414、端口轉(zhuǎn)變狀態(tài)機(jī)416、網(wǎng)橋協(xié)議數(shù)據(jù)單元(BPDU)消息發(fā)生器418、島邊界確定引擎420和MSTP摘要生成器422。島邊界確定引擎420優(yōu)選地包括一個(gè)或多個(gè)比較器,例如比較器423。優(yōu)選地根據(jù)下述標(biāo)準(zhǔn)運(yùn)行MSTP實(shí)體408,所述標(biāo)準(zhǔn)是被這里描述的MAN間控制協(xié)議(IMCP)修改過(guò)的補(bǔ)充802.1Q規(guī)范標(biāo)準(zhǔn)的IEEE 802.1s多生成樹協(xié)議(MSTP)草案,在這里通過(guò)引用而將它的當(dāng)前草案(IEEE草案P802.1s/D13TM,2002年6月13日)整體包含。MSTP實(shí)體408包括(或與其通信)下述存儲(chǔ)器設(shè)備或結(jié)構(gòu),例如STP存儲(chǔ)器424,它可以是易失性存儲(chǔ)器或者非易失性隨機(jī)訪問(wèn)存儲(chǔ)器(RAM)或某些其他存儲(chǔ)器。優(yōu)選地將存儲(chǔ)器424組織來(lái)包括多個(gè)記錄或單元(未示出),用于存儲(chǔ)生成樹相關(guān)信息或參數(shù),例如交換機(jī)配置ID、數(shù)字網(wǎng)橋標(biāo)識(shí)符(ID)、為每個(gè)MSTI的每個(gè)端口402a-e分配的路徑代價(jià)、用于每個(gè)MSTI的每個(gè)端口P0-P4的當(dāng)前或“最佳”生成樹信息等。除了存儲(chǔ)器424之外,STP實(shí)體408還包括配置來(lái)存儲(chǔ)VLAN到MSTI的映射的VLAN ID(VID)到多生成樹實(shí)例(MSTI)翻譯表426。
VEC實(shí)體412包括VLAN映射引擎428、標(biāo)簽操縱引擎430和島間干線引擎432。VLAN映射引擎428包括一個(gè)或多個(gè)VLAN映射表600,VLAN映射表600優(yōu)選地以每個(gè)端口為基礎(chǔ)將客戶設(shè)備VLAN ID(CE-VLAN)映射到運(yùn)營(yíng)商設(shè)備VLAN ID(PE-VLAN)。在替換實(shí)施方式中,可以存在用于每個(gè)端口(或若干個(gè)端口)的分離的VLAN映射引擎和分離的VLAN映射表,并且可以用CE-VLAN到PE-VLAN的不同映射配置每個(gè)VLAN映射表。
島間干線映射引擎432具有將PE-VLAN ID映射到VEC標(biāo)識(shí)符(ID)的島間干線映射表700。優(yōu)選地在將幀發(fā)送到島互連結(jié)構(gòu)208中之前,將VEC ID添加到該幀。為了在不同客戶站點(diǎn)之間提供連通性,將VEC實(shí)體412配置來(lái)建立一個(gè)或多個(gè)用戶網(wǎng)絡(luò)接口(UNI),例如也由標(biāo)號(hào)436指定的UNI 01和也由標(biāo)號(hào)438指定的UNI 02。如這里所述,每個(gè)UNI代表一個(gè)或多個(gè)VEC的終端點(diǎn),并且從而可以被認(rèn)為定義了一個(gè)或多個(gè)邏輯VEC端口。UNI 436例如具有3個(gè)VEC端口440a-c。UNI 438具有2個(gè)VEC端口442a-b。
轉(zhuǎn)發(fā)引擎410與幀發(fā)送和接收對(duì)象404通信,并且被耦合到至少一個(gè)存儲(chǔ)與MAN 200的實(shí)體相對(duì)應(yīng)的地址信息的過(guò)濾數(shù)據(jù)庫(kù)444(圖2)。具體地說(shuō),過(guò)濾數(shù)據(jù)庫(kù)444具有多條記錄(未示出),每條包含多個(gè)單元,包括目的地地址單元、目的地端口單元、過(guò)濾器數(shù)據(jù)庫(kù)ID(FID)單元和相應(yīng)的定時(shí)器單元。過(guò)濾器數(shù)據(jù)庫(kù)444中的每條記錄優(yōu)選地對(duì)應(yīng)于特定的網(wǎng)絡(luò)實(shí)體。從消息的PE-VLAN ID導(dǎo)出的FID允許給定的目的地MAC地址與用于不同PE-VLAN ID的相同或不同的MAC地址對(duì)應(yīng)。將轉(zhuǎn)發(fā)引擎410配置來(lái)依賴于包含在轉(zhuǎn)發(fā)數(shù)據(jù)庫(kù)428中的信息,并且也依賴于由MSTP實(shí)體408所管理的各個(gè)端口402的生成樹端口狀態(tài),來(lái)將諸如分組和/或幀之類的網(wǎng)絡(luò)消息從源端口402交換或橋接到一個(gè)或多個(gè)目的地端口402。轉(zhuǎn)發(fā)引擎410也與MSTP實(shí)體408通信,并且中繼在端口402處接收到的MSTP相關(guān)的消息。轉(zhuǎn)發(fā)引擎410也與VEC實(shí)體412通信。
本領(lǐng)域的技術(shù)人員應(yīng)當(dāng)理解,MSTP實(shí)體408、轉(zhuǎn)發(fā)引擎410和VEC實(shí)體412每個(gè)都可以包括配置來(lái)形成時(shí)序邏輯電路的寄存器和組合邏輯。在示例性實(shí)施方式中,MSTP實(shí)體408、轉(zhuǎn)發(fā)引擎410和VEC實(shí)體412優(yōu)選地為包含關(guān)于這里描述的方法的程序指令的軟件模塊和庫(kù)以及硬件元件的組合,所述軟件模塊和庫(kù)可以由交換機(jī)302的一個(gè)或多個(gè)處理元件(未示出)執(zhí)行。其他計(jì)算機(jī)可讀介質(zhì)也可以用來(lái)存儲(chǔ)并執(zhí)行這些程序指令。盡管如此,本領(lǐng)域的技術(shù)人員應(yīng)當(dāng)認(rèn)識(shí)到,可以利用軟件和硬件的各種組合,包括固件來(lái)實(shí)現(xiàn)本發(fā)明。
將島形成為分離的管理域最初,MAN運(yùn)營(yíng)商將他們的設(shè)備(即L2交換機(jī)302-306)組織為多個(gè)島。在優(yōu)選實(shí)施方式中,通過(guò)按照特定的方式配置交換機(jī)的MST配置ID來(lái)將它們組織成島。更具體地說(shuō),MAN運(yùn)營(yíng)商首先決定應(yīng)當(dāng)將它的哪些交換機(jī)組織到給定的島中。然后MAN運(yùn)營(yíng)商將給定的島中的每個(gè)交換機(jī)的MST配置ID配置為相同的值。圖5高度簡(jiǎn)化地圖示了根據(jù)本發(fā)明配置的MST配置ID 500。MST配置ID 500具有32字節(jié)的島名字段502、32字節(jié)的配置名字段503、2字節(jié)的修訂級(jí)別字段504和2字節(jié)的配置摘要字段506,優(yōu)選地將MD-5校驗(yàn)和算法應(yīng)用到VID/MSTI翻譯表426(圖4)來(lái)形成MST配置ID。對(duì)于給定的島中的每個(gè)交換機(jī),MAN運(yùn)營(yíng)商利用相同的值配置島名字段502、配置名字段503和修訂級(jí)別字段504。MAN運(yùn)營(yíng)商也利用給定的島建立PE-VLAN到MSTI的相同映射。從而,給定的島中的每個(gè)交換機(jī)將生成相同的摘要值。交換機(jī)存儲(chǔ)由MAN運(yùn)營(yíng)商在它們的STP存儲(chǔ)器424處選擇的MST配置ID。
在優(yōu)選實(shí)施方式中,島名字段502是2字節(jié)或更長(zhǎng),配置名字段503是32字節(jié),修訂級(jí)別字段504是3字節(jié),并且配置摘要字段506為2字節(jié)。在替換實(shí)施方式中,島名字段502和配置名字段503是組合的32字節(jié),并且可以用諸如“#”符號(hào)之類的某些專門選出的字符將這兩個(gè)值分離。
可以通過(guò)在交換機(jī)處提供的命令行接口(CLI)本地執(zhí)行交換機(jī)302-306的配置,或者通過(guò)公知的簡(jiǎn)單網(wǎng)絡(luò)管理協(xié)議(SNMP)遠(yuǎn)程執(zhí)行。
例如,給布置在島202中的交換機(jī)302、304和306(圖3)都配置有相同的島名(例如“ISLAND0001”)、相同的配置名(例如“MAN4452”)和相同的修訂級(jí)別(例如“0001”)。另外,還將交換機(jī)302、304和306配置來(lái)使其具有相同的PE-VLAN到MSTP實(shí)例ID的映射。另一方面,將給布置在島204(圖2)中的每個(gè)交換機(jī)配置不同的島名,例如“ISLAND0002”。可以給它們每個(gè)配置相同或不同的配置名和/或修訂級(jí)別,并且一般將給它們每個(gè)配置不同的PE-VLAN到MSTP實(shí)例ID的映射。
當(dāng)MAN運(yùn)營(yíng)商初始化并運(yùn)行它的多個(gè)交換機(jī)時(shí),交換機(jī)將自動(dòng)地(即不用人工干涉)將它們自身隔離到期望的島中,作為它們的MSTP執(zhí)行的一部分。更具體地說(shuō),因?yàn)橐呀?jīng)給每個(gè)交換機(jī)302、304和306配置有相同地島名、相同的配置名、相同的修訂級(jí)別號(hào)和相同的PE-VLAN到MSTP實(shí)例ID的映射,所以它們將推斷出它們都是相同MSTP區(qū)域的一部分,或者在這種情形中是相同島的一部分。
如這里所述,配置UNI來(lái)處置以雙向中的一個(gè)方向從客戶站點(diǎn)接收到的BPDU消息。更具體地說(shuō),UNI或者丟棄從客戶站點(diǎn)接收到的BPDU消息,或者將接收到的BPDU消息處置為數(shù)據(jù)幀,并且將它們隧穿過(guò)島,以使得可以由其他客戶站點(diǎn)接收它們。類似地,UNI不將由運(yùn)營(yíng)商邊界網(wǎng)橋所生成的BPDU發(fā)送到客戶站點(diǎn)中。因此,MAN運(yùn)營(yíng)商的交換機(jī)302、304和306在計(jì)算任何(多個(gè))活動(dòng)拓?fù)渲胁慌c位于客戶站點(diǎn)中的中間網(wǎng)絡(luò)設(shè)備協(xié)作。
此外,在每個(gè)島中,MAN運(yùn)營(yíng)商的交換機(jī)將建立在各個(gè)島中定義的用于每個(gè)MSTP實(shí)例的活動(dòng)拓?fù)?。例如,假設(shè)MAN運(yùn)營(yíng)商在島202中定義10個(gè)MSTP實(shí)例,并且至少將一個(gè)PE-VLAN分配給每個(gè)MSTP實(shí)例。作為它們的MSTP執(zhí)行的一部分,交換機(jī)302、304和306將在島202中建立內(nèi)部生成樹(IST),以及10個(gè)無(wú)環(huán)、活動(dòng)拓?fù)洹?br>
通過(guò)一個(gè)或多個(gè)島鏈接多個(gè)客戶站點(diǎn)假設(shè)操作站點(diǎn)212、213、216和217(圖2)的客戶希望互連這些站點(diǎn)。更具體地說(shuō),假設(shè)客戶希望將站點(diǎn)212與213、站點(diǎn)212與站點(diǎn)216、以及站點(diǎn)216與217互連??蛻魞?yōu)選地聯(lián)系MAN運(yùn)營(yíng)商,并且要求這種服務(wù)。MAN運(yùn)營(yíng)商依次配置它的設(shè)備(即,布置在島202、204和206中的交換機(jī))來(lái)建立期望的連接。
根據(jù)本發(fā)明,MAN運(yùn)營(yíng)商通過(guò)在每個(gè)標(biāo)識(shí)出的客戶站點(diǎn)之間建立虛擬以太網(wǎng)連接(VEC)來(lái)提供所請(qǐng)求的服務(wù)。VEC模擬在兩個(gè)或多個(gè)客戶站點(diǎn)之間延伸的物理以太網(wǎng)鏈接或以太網(wǎng)橋接的LAN。如這里所述,在每個(gè)島中,存在VEC和PE-VLAN ID之間的一一對(duì)應(yīng)。
如圖2圖示的網(wǎng)絡(luò)所示,將客戶站點(diǎn)212和213都連接到相同的島,即到島202。然而,將客戶站點(diǎn)212和213每個(gè)都分別連接到不同的島,即島202和204。類似地,將客戶站點(diǎn)216和217每個(gè)都分別連接到不同的島,即島204和206。為了提供所要求的連通性,除了其他以外,MAN運(yùn)營(yíng)商優(yōu)選地建立連接客戶站點(diǎn)212和213的第一VEC、連接客戶站點(diǎn)212和216的第二VEC、以及連接站點(diǎn)216和217的第三VEC。第一VEC整個(gè)在島202中。因此,MAN運(yùn)營(yíng)商只需要在島202中建立島內(nèi)鏈路240以由第一VEC使用。
應(yīng)當(dāng)理解,島內(nèi)鏈路只是跨越單個(gè)島的兩個(gè)客戶站點(diǎn)之間的互連的邏輯表示,在優(yōu)選實(shí)施方式中,其是根據(jù)IEEE Std.802.1Q-1998規(guī)范標(biāo)準(zhǔn)運(yùn)行的VLAN。島內(nèi)鏈路可以另外或者可替換地應(yīng)用來(lái)自Cisco Systems,Inc.的ISL協(xié)議。
另一方面,第二VEC必須跨越多個(gè)島,即島202和204。因此,MAN運(yùn)營(yíng)商必須建立連接島202和204的島間干線242來(lái)由第二VEC使用。類似地,第三VEC跨越多個(gè)島,從而它也需要接入耦合島204和206的島間干線244。
島內(nèi)鏈路優(yōu)選地如下進(jìn)行創(chuàng)建耦合客戶站點(diǎn)212和客戶站點(diǎn)213的第一VEC。在連接到客戶站點(diǎn)212的運(yùn)營(yíng)商邊界交換機(jī)302中,MAN運(yùn)營(yíng)商建立用戶網(wǎng)絡(luò)接口(UNI),例如UNI 438(圖4)。UNI是客戶站點(diǎn)與諸如島之類的MAN運(yùn)營(yíng)商的網(wǎng)絡(luò)之間的邏輯接口。由MAN運(yùn)營(yíng)商建立的每個(gè)UNI都具有一個(gè)或多個(gè)VEC端口,每個(gè)這種端口代表已被MAN運(yùn)營(yíng)商創(chuàng)建的相應(yīng)的VEC的終端或端點(diǎn)。在UNI 438中,可以將VEC端口442a分配給第一VEC。然后,MAN運(yùn)營(yíng)商將MAN運(yùn)營(yíng)商設(shè)備VLAN ID(PE-VLAN)分配給第一VEC。如這里所述,PE-VLAN ID是被附加到下述幀并且從而識(shí)別下述幀的VLAN標(biāo)號(hào),所述幀通過(guò)對(duì)應(yīng)于各個(gè)VEC(例如,連接客戶站點(diǎn)212和213的第一VEC)的各個(gè)島(例如島202)傳輸。用于第一VEC的PE-VLAN ID可以是“4011”。
當(dāng)在由島202耦合的客戶站點(diǎn)212和213之間通信時(shí),客戶選擇要由客戶使用的客戶設(shè)備VLAN ID(CE-VLAN ID)。一般基于客戶自己的站點(diǎn)和它的聯(lián)網(wǎng)設(shè)備的需求選擇可以是“0014”的CE-VLAN ID??蛻襞渲盟约旱恼军c(diǎn),以使得能夠用選出的CE-VLAN ID來(lái)給在這些站點(diǎn)之一中創(chuàng)建的要被傳遞到其他站點(diǎn)(例如,站點(diǎn)212)的所有網(wǎng)絡(luò)消息(例如,以太網(wǎng)幀)加標(biāo)簽。MAN運(yùn)營(yíng)商獲知該選擇,并且對(duì)在島的邊界處并連接到所述兩個(gè)客戶站點(diǎn)的交換機(jī)(即島202的交換機(jī)302和304)的VEC實(shí)體412進(jìn)行配置,以將選擇的CE-VLAN ID(即“0014”)映射到各個(gè)PE-VLAN(即“4011”)。具體地說(shuō),MAN運(yùn)營(yíng)商配置VEC實(shí)體412的客戶VLAN映射表600。
圖6是圖示了交換機(jī)302的VLAN映射表600的高度簡(jiǎn)化的示意圖。至少邏輯地將表600組織為具有多個(gè)列和行的表或數(shù)組,其中在這些列和行的交叉處定義用于存儲(chǔ)信息的單元或記錄。表600優(yōu)選地具有CE-VLAN ID列602、VEC列604、PE-VLAN ID列606、UNI列608和VEC端口列610。表600也具有多個(gè)行614a-c。MAN運(yùn)營(yíng)商優(yōu)選地將自由行分配給第一VEC,例如行614a。在行614a處,MAN運(yùn)營(yíng)商將選擇的CE-VLAN ID(即“0014”)加載到對(duì)應(yīng)于列602的單元,將例如“001”的VEC ID加載到對(duì)應(yīng)于列604的單元,將例如“4011”的已經(jīng)分配給選擇的CE-VLAN ID的PE-VLAN ID加載到對(duì)應(yīng)于列606的單元,將分配給這個(gè)VEC的具體的UNI(即UNI 01)加載到對(duì)應(yīng)于列608的單元,并且將特定的VEC端口(即VEC端口0)加載到對(duì)應(yīng)于列610的單元。MAN運(yùn)營(yíng)商類似地配置在島202和客戶站點(diǎn)213的邊界處的交換機(jī)304的VLAN映射表600。
通過(guò)使用選擇的CE-VLAN ID,在兩個(gè)站點(diǎn)212和213中的終端站現(xiàn)在可以相互通信。例如,假設(shè)布置在站點(diǎn)212中的工作站希望與站點(diǎn)213中的工作站通信。站點(diǎn)212中的工作站將它的消息編碼到一個(gè)或多個(gè)以太網(wǎng)幀中,并且在這些幀的VLAN ID字段中插入由客戶選擇的CE-VLANID,例如“0014”。島202中的交換機(jī)302(在到客戶站點(diǎn)212的邊界處)接收這些加了VLAN ID標(biāo)簽的幀。最初將加了VLAN ID標(biāo)簽的幀提供給交換機(jī)的VEC實(shí)體412,該VEC實(shí)體412訪問(wèn)它的VLAN映射表600來(lái)執(zhí)行查找。具體地說(shuō),VEC實(shí)體412搜索表600來(lái)確定接收到的幀屬于的VEC。VLAN映射表600的行614a指示CE-VLAN ID“0014”對(duì)應(yīng)于VEC“001”,并且這個(gè)VEC已經(jīng)被映射到PE-VLAN ID“4011”。
在本發(fā)明的另一種實(shí)施方式中,VEC實(shí)體的標(biāo)簽操縱引擎430用PE-VLAN ID“4011”來(lái)加載這些幀的VLAN ID字段,替換CE-VLAN ID“0014”。或者,標(biāo)簽操縱引擎430可以向消息添加一個(gè)新的VLAN標(biāo)識(shí)符(VID)字段(未示出),并且用各個(gè)PE-VLAN ID(即“4011”)來(lái)加載這個(gè)新的VID字段,不修改原始VID字段(攜帶CE-VLAN ID)。
然后,將現(xiàn)在用PE-VLAN ID“4011”加標(biāo)簽的幀提供給UNI,以經(jīng)由已經(jīng)為這個(gè)VEC建立的VEC端口發(fā)送。這些幀在為該VEC建立的島內(nèi)鏈路240上傳輸,并且在交換機(jī)304處被接收。如這里所述,島內(nèi)鏈路240基本上對(duì)應(yīng)于在已將PE-VLAN ID“4011”映射到的島202中定義的MSTP實(shí)例或者活動(dòng)拓?fù)涞囊徊糠?。就在交換機(jī)302和304之間布置的任何中間交換機(jī)或網(wǎng)橋?qū)M(jìn)行轉(zhuǎn)發(fā)來(lái)說(shuō),這些中間交換機(jī)優(yōu)選地不修改幀。即,將幀轉(zhuǎn)發(fā)到島202中的其他交換機(jī)的交換機(jī)不對(duì)幀的VLAN標(biāo)簽進(jìn)行任何進(jìn)一步的改變。
在交換機(jī)304處,在代表創(chuàng)建來(lái)互連客戶站點(diǎn)212和213的VEC的其他端的VEC端口上接收幀。當(dāng)要從在交換機(jī)304處的UNI發(fā)送幀,即要將它們發(fā)送到到202之外時(shí),要再次對(duì)它們進(jìn)行轉(zhuǎn)換。更具體地說(shuō),將這些幀提供給交換機(jī)304的對(duì)它的VLAN映射表600執(zhí)行查找的VEC實(shí)體412。在這里,VEC實(shí)體412基于已經(jīng)被用來(lái)對(duì)幀加標(biāo)簽的PE-VLAN ID搜索表600。VEC實(shí)體412確定對(duì)應(yīng)于PE-VLAN ID“4011”對(duì)應(yīng)于CE-VLAN ID“0014”。因此,標(biāo)簽操縱引擎430用CE-VLAN ID“0014”加載幀的VLAN ID字段,替換PE-VLAN ID“4011”。然后,將已經(jīng)用它們的原始VLAN ID存儲(chǔ)的幀從交換機(jī)302發(fā)送到客戶站點(diǎn)213中。然后,基于由幀攜帶的目的地地址,將幀傳遞到作為目標(biāo)的工作站。
在其中一旦在島202中接收到幀,就將新的VID字段添加到幀的實(shí)施方式中,在交換機(jī)304處的標(biāo)簽操縱引擎430在將幀發(fā)送到客戶站點(diǎn)213中之前剝離新的VID字段。
從客戶站點(diǎn)212中的工作站到站點(diǎn)213的通信以相似的方式工作。具體地說(shuō),在交換機(jī)304處,通過(guò)將分配給CE-VLAN ID的PE-VLAN ID加載到用這一分配的CE-VLAN ID加標(biāo)簽的幀的VLAN ID字段中來(lái)修改這些幀。然后,這些幀沿著島202中的島內(nèi)鏈路240傳輸?shù)浇粨Q機(jī)302,交換機(jī)302在與客戶站點(diǎn)212的邊界處。然后,用幀的原始CE-VLAN ID恢復(fù)它們,并且將它們發(fā)送到客戶站點(diǎn)212中以傳遞到客戶站點(diǎn)212中作為目標(biāo)的工作站。
應(yīng)當(dāng)理解,在客戶站點(diǎn)212和213中本來(lái)可以選擇不同的CE-VLANID來(lái)與第一VEC一起使用。在這種情形中,優(yōu)選地將VLAN映射表600配置來(lái)指定雙方的CE-VLAN ID。
島間干線優(yōu)選地如下進(jìn)行創(chuàng)建耦合客戶站點(diǎn)212和客戶站點(diǎn)216的第二VEC。在連接到客戶站點(diǎn)212的交換機(jī)302中,MAN運(yùn)營(yíng)商或者建立新的UNI,或者將現(xiàn)存的UNI分配給第二VEC。因?yàn)橐呀?jīng)將UNI 438分配給了客戶站點(diǎn)212用于第一VEC,所以MAN運(yùn)營(yíng)商可以重用這個(gè)存在的UNI438,用于第二VEC。雖然如此,但是必須為第二VEC提供在UNI 438處的新端口,例如VEC端口442b,因?yàn)槊總€(gè)VEC必須具有它自己的VEC端口。然后,MAN運(yùn)營(yíng)商選擇并分配PE-VLAN ID給第二VEC,以在島202中使用。所選擇的PE-VLAN ID將被用來(lái)標(biāo)識(shí)通過(guò)對(duì)應(yīng)于第二VEC的島202傳輸?shù)膸<僭O(shè)MAN運(yùn)營(yíng)商選擇PE-VLAN ID“4027”用于島202中的第二VEC。
當(dāng)與布置在客戶站點(diǎn)216中的網(wǎng)絡(luò)實(shí)體通信時(shí),客戶選擇用于由布置在客戶站點(diǎn)212中的網(wǎng)絡(luò)實(shí)體使用的CE-VLAN ID。假設(shè)客戶選擇CE-VLAN ID“0038”以在客戶站點(diǎn)212中使用??蛻襞渲貌贾迷诳蛻粽军c(diǎn)212中的它自己的聯(lián)網(wǎng)設(shè)備,以使得用CE-VLAN ID“0038”對(duì)諸如以太網(wǎng)幀之類的所有下述網(wǎng)絡(luò)消息加標(biāo)簽,該網(wǎng)絡(luò)消息是在那個(gè)站點(diǎn)中創(chuàng)建的,并且以站點(diǎn)216中的網(wǎng)絡(luò)實(shí)體為目的地。客戶也通知MAN運(yùn)營(yíng)商所選擇CE-VLAN ID。在響應(yīng)中,MAN運(yùn)營(yíng)商然后將交換機(jī)302的VEC實(shí)體412配置來(lái)將用選擇的CE-VLAN ID(即“0038”)加標(biāo)簽的幀映射到選擇的PE-VLAN ID(即正被映射到的“4027”),其中交換機(jī)302在島202和客戶站點(diǎn)212的邊界處。具體地說(shuō),MAN運(yùn)營(yíng)商配置在交換機(jī)302處的VEC實(shí)體412的VLAN映射表600。
更具體地說(shuō),MAN運(yùn)營(yíng)商將自由行分配給第二VEC,例如行614b。在行614b處,MAN運(yùn)營(yíng)商將選擇的CE-VLAN ID(即“0038”)加載到對(duì)應(yīng)于列602的單元,將例如“002”的VEC ID加載到對(duì)應(yīng)于604的單元,并且將例如“4027”的由MAN運(yùn)營(yíng)商所選擇的PE-VLAN加載到對(duì)應(yīng)于列606的單元。MAN運(yùn)營(yíng)商也將分配給這個(gè)VEC的特定的UNI(即UNI 01)加載到對(duì)應(yīng)于列608的單元,并且將選擇的VEC端口(即VEC端口1)加載到對(duì)應(yīng)于列610的單元。
在連接到客戶站點(diǎn)216的島214中,MAN運(yùn)營(yíng)商建立讓客戶站點(diǎn)216中的網(wǎng)絡(luò)實(shí)體訪問(wèn)第二VEC的UNI。優(yōu)選地在島204和站點(diǎn)216之間的邊界處的(多個(gè))運(yùn)營(yíng)商邊界交換機(jī)(即被直接連接到客戶站點(diǎn)216的(多個(gè))交換機(jī))中提供UNI(即經(jīng)由鏈路228和/或229)。MAN運(yùn)營(yíng)商也在UNI中建立VEC端口來(lái)在島204中終止第二VEC。然后,MAN運(yùn)營(yíng)商選擇并分配PE-VLAN ID給第二VEC,以在島204中使用。所選擇的PE-VLAN ID將被用來(lái)標(biāo)識(shí)在對(duì)應(yīng)于第二VEC的島204中傳輸?shù)膸?。值得注意的是,選擇來(lái)在島204中使用的PE-VLAN ID可能與已選擇來(lái)在島202中使用的PE-VLAN ID“4027”不同。實(shí)際上,假設(shè)MAN運(yùn)營(yíng)商選擇PE-VLAN ID“4017”用于島204中的第二VEC。
和上面的一樣,當(dāng)與布置在客戶站點(diǎn)212中的網(wǎng)絡(luò)實(shí)體通信時(shí),客戶基于它自己的需求和要被布置在客戶站點(diǎn)216中的網(wǎng)絡(luò)實(shí)體要使用的它的聯(lián)網(wǎng)設(shè)備的能力來(lái)選擇CE-VLAN ID。選擇來(lái)在站點(diǎn)216中使用的CE-VLAN ID可以與選擇來(lái)在客戶站點(diǎn)212中使用的CE-VLAN ID相同,或者不同。假設(shè)客戶選擇CE-VLAN ID“0018”來(lái)在客戶站點(diǎn)216中使用??蛻襞渲貌贾迷诳蛻粽军c(diǎn)216中的它自己的互連設(shè)備,以使得用CE-VLANID“0018”對(duì)諸如以太網(wǎng)幀之類的所有下述網(wǎng)絡(luò)消息加標(biāo)簽,該網(wǎng)絡(luò)消息是在那個(gè)站點(diǎn)中創(chuàng)建的,并且以站點(diǎn)212中的網(wǎng)絡(luò)實(shí)體為目的地??蛻粢餐ㄖ狹AN運(yùn)營(yíng)商所選擇CE-VLAN ID。然后,MAN運(yùn)營(yíng)商將布置在島204中的下述交換機(jī)的VEC實(shí)體412配置來(lái)將用CE-VLAN ID“0018”加標(biāo)簽的幀映射到選擇來(lái)在島204中使用的PE-VLAN ID(即“4017”),其中所述交換機(jī)被直接連接到客戶站點(diǎn)216。具體地說(shuō),MAN運(yùn)營(yíng)商配置相對(duì)于客戶站點(diǎn)216的島204的(多個(gè))運(yùn)營(yíng)商邊界交換機(jī)處的VEC實(shí)體412的VLAN映射表600。
行614c(圖6)圖示了如何配置島204的各個(gè)(多個(gè))運(yùn)營(yíng)商邊界交換機(jī)處的VLAN映射表600。更具體地說(shuō),MAN運(yùn)營(yíng)商將選出的CE-VLAN ID(即“0018”)加載到對(duì)應(yīng)于列602的單元,將例如“002”的VEC ID加載到對(duì)應(yīng)于604的單元,并且將例如“4017”的已被映射到選出的CE-VLAN ID的相應(yīng)的PE-VLAN ID加載到對(duì)應(yīng)于列606的單元。MAN運(yùn)營(yíng)商也將分配給這個(gè)VEC的特定的UNI(例如,UNI 00)加載到對(duì)應(yīng)于列608的單元,并且將VEC端口(例如,VEC端口0)加載到對(duì)應(yīng)于列610的單元。
如圖所示,這個(gè)第二VEC穿過(guò)兩個(gè)分離的到202和204,以便提供兩個(gè)選擇的客戶站點(diǎn)212和216之間的連通性。因此,第二VEC利用島間干線242,島間干線242延伸通過(guò)島互連結(jié)構(gòu)208,并且連接兩個(gè)島202和204。在示例性實(shí)施方式中,島間干線作為連通的共享介質(zhì)以太網(wǎng)或橋接LAN運(yùn)行,并且用多協(xié)議標(biāo)記交換(MPLS)虛擬專用網(wǎng)(VPN)、分組環(huán)、異步傳輸模式(ATM)仿真LAN或者其他這種技術(shù)建立。在島互連結(jié)構(gòu)208中形成MPLS VPN。值得注意的是,穿過(guò)島互連結(jié)構(gòu)208的每個(gè)VEC都必須只使用單個(gè)島間干線。但是,多個(gè)VEC可以使用相同的島間干線。
在示例性實(shí)施方式中,島互連結(jié)構(gòu)208可以是公知的因特網(wǎng)。
如上所指示,每個(gè)MAN運(yùn)營(yíng)商的島包括至少一個(gè)下述島邊界網(wǎng)橋,該島邊界網(wǎng)橋是提供從島到島互連結(jié)構(gòu)208的直接連通、并且從而提供到MAN運(yùn)營(yíng)商的城域網(wǎng)的連通的交換機(jī)和網(wǎng)橋。例如,在島202處,因?yàn)榻粨Q機(jī)302和306都分別經(jīng)由島間鏈路210a和210b提供到島互連結(jié)構(gòu)208的直接連通,所以它們都是島邊界網(wǎng)橋。對(duì)于諸如第二VEC之類的利用島間干線的那些VEC,MAN運(yùn)營(yíng)商必須對(duì)位于正被互連的兩個(gè)(或多個(gè))島的島邊界網(wǎng)橋中的VEC實(shí)體進(jìn)行配置,以修改幀來(lái)發(fā)送過(guò)島間干線。首先,MAN運(yùn)營(yíng)商對(duì)島間邊界網(wǎng)橋的島間干線映射表700進(jìn)行配置。
圖7是島間干線映射表700的高度簡(jiǎn)化的示意圖。至少邏輯地將表700組織為具有多個(gè)列和行的表或數(shù)組,其中在這些列和行的交叉處定義用于存儲(chǔ)信息的單元或記錄。表700優(yōu)選地具有PE-VLAN ID列702、VEC列704和島間干線ID列706。表700也具有多個(gè)行710a-c。在島202中的島邊界網(wǎng)橋處,MAN運(yùn)營(yíng)商優(yōu)選地將自由行分配給第二VEC,例如行710a。在行710a處,MAN運(yùn)營(yíng)商將選擇的用于島202的PE-VLAN ID(即“4027”)加載到對(duì)應(yīng)于列702的單元,并且選擇的用于第二VEC的VEC ID(例如“002”)加載到對(duì)應(yīng)于列704的單元。MAN運(yùn)營(yíng)商用與要被附加到橫穿島互連結(jié)構(gòu)208的網(wǎng)絡(luò)消息的標(biāo)簽或標(biāo)記相對(duì)應(yīng)的島間干線ID來(lái)加載對(duì)應(yīng)于列706的單元。依賴于用來(lái)互連島的(多個(gè))具體的協(xié)議,選擇可以包括多于一個(gè)標(biāo)記或標(biāo)簽的島間干線ID。假設(shè)MPLS協(xié)議,更具體地說(shuō),MPLS之上的仿真VLAN(EVoMPLS)是正被使用的協(xié)議,則為第二VEC的島間干線選擇唯一的MPLS標(biāo)記,例如“6042”。
MAN運(yùn)營(yíng)商也對(duì)在島204的(多個(gè))島邊界網(wǎng)橋處的島間干線映射表700進(jìn)行配置。行710b(圖7)圖示了將如何配置這個(gè)條目。具體地說(shuō),將選擇來(lái)在島204中使用的PE-VLAN ID“4017”加載到對(duì)應(yīng)于列702的單元,將公用的VEC ID(即,“002”)加載到對(duì)應(yīng)于列704的單元,并且將公用的島間干線ID加載到對(duì)應(yīng)于列706的單元。
其次,MAN運(yùn)營(yíng)商配置島邊界網(wǎng)橋來(lái)給幀加標(biāo)簽以通過(guò)島間干線發(fā)送,并捕獲和處理通過(guò)島間干線接收到的幀。具體地說(shuō),當(dāng)島202的交換機(jī)接302收用對(duì)應(yīng)于第二VEC的CE-VLAN ID“0038”加標(biāo)簽的幀時(shí),它用CE-VLAN ID來(lái)對(duì)它的VLAN映射表600執(zhí)行查找,以得到相應(yīng)的PE-VLAN ID,即“4027”。然后,交換機(jī)302用相應(yīng)的PE-VLAN ID來(lái)替換CE-VLAN ID,并且將幀轉(zhuǎn)發(fā)到島202中(假設(shè)VEC正利用交換機(jī)306處的島鏈路210b)。在交換機(jī)306處接收到幀,交換機(jī)306封裝接收到的幀以發(fā)送過(guò)島互連結(jié)構(gòu)208。
圖8是用于發(fā)送過(guò)島互連結(jié)構(gòu)208的封裝的幀800的高度簡(jiǎn)化的示意圖。封裝的幀800包括附加到原始以太網(wǎng)幀804的MPLS標(biāo)記棧802。如上所指示,如果在UNI處將PE-VLAN ID添加到CE-VLAN ID,而不是替換它,則以太網(wǎng)幀804可以包括對(duì)應(yīng)于CE-VLAN ID的VLAN ID(VID)字段805。MPLS標(biāo)記棧802包括對(duì)應(yīng)于由島互連結(jié)構(gòu)208所采用的介質(zhì)的第2層(L2)頭部806、IP/MPLS頭部808和虛擬以太網(wǎng)電路ID字段810。在Reqeust for Comments(RFC)2684“ATM自適應(yīng)層5之上的多協(xié)議封裝”(Multiprotocol Encapsulation over A TM Adaptation layer 5)(1999年9月)中描述了與本發(fā)明一起使用的封裝方案。島邊界網(wǎng)橋?qū)λ膷u間干線映射表700執(zhí)行查找來(lái)得到虛擬以太網(wǎng)電路ID。具體地說(shuō),島邊界網(wǎng)橋定位于用來(lái)給接收到的幀加標(biāo)簽的PE-VLAN ID相對(duì)應(yīng)的島間干線ID。在這里,PE-VLAN ID是“4027”,匹配的島間干線ID是“6042”。將這個(gè)獲取到的值加載到虛擬以太網(wǎng)電路ID字段810中。
然后將封裝的幀發(fā)送到島互連結(jié)構(gòu)208上。島間干線242將幀傳遞到島202-206中的這樣的所有端口,這些端口都是與由虛擬以太網(wǎng)電路ID指定的VEC相同的VEC的成員(除了在其上發(fā)送幀的端口)。從而,在島204的(多個(gè))島邊界網(wǎng)橋處接收封裝的幀。島204的島邊界網(wǎng)橋利用加載在封裝的幀的虛擬以太網(wǎng)電路ID字段中的值來(lái)得到相應(yīng)的PE-VLANID,以在島204中使用。在這里,虛擬以太網(wǎng)電路ID為“6042”,并且從而來(lái)自行710b的匹配PE-VLAN ID是“4017”。島邊界網(wǎng)橋也基于在其上接收到幀的端口的生成樹狀態(tài),確定它是否可以接受接收到的幀。如果端口在用于VLAN“4017”的阻塞生成樹端口狀態(tài)中,則丟棄幀。在這種情形中,在島204處應(yīng)當(dāng)存在另一個(gè)島邊界端口,該端口處于用于VLAN“4017”的轉(zhuǎn)發(fā)生成樹端口狀態(tài)中,并且從而可以接收幀。
在其處接受幀的島204的島邊界網(wǎng)橋剝離MPLS標(biāo)記棧,并且恢復(fù)原始的以太網(wǎng)幀804。在幀的VLAN ID(VID)字段805中,島邊界網(wǎng)橋加載用于這個(gè)VEC的PE-VLAN ID,即“4017”。然后,島邊界網(wǎng)橋在島204內(nèi)發(fā)送幀。在用于客戶站點(diǎn)216的島204的運(yùn)營(yíng)商邊界網(wǎng)橋處接收幀。運(yùn)營(yíng)商邊界網(wǎng)橋使用幀的PE-VLAN ID查找它的VLAN映射表600,以得到相應(yīng)的CE-VLAN ID。在這里,PE-VLAN ID是“4017”,并且從而匹配CE-VLAN ID是“0018”。因此,運(yùn)營(yíng)商邊界網(wǎng)橋?qū)E-VLAN ID加載到以太網(wǎng)幀中替換PE-VLAN ID。然后,島204的運(yùn)營(yíng)商邊界交換機(jī)將用CE-VLAN ID加了標(biāo)簽的幀發(fā)送到客戶站點(diǎn)216中,以由目標(biāo)網(wǎng)絡(luò)實(shí)體接收。
防止形成環(huán)如圖2所示,優(yōu)選地通過(guò)多個(gè)鏈路將每個(gè)客戶站點(diǎn)耦合到它的各自的島。另外,通過(guò)多個(gè)鏈路將每個(gè)島連接到島互連結(jié)構(gòu)208。為了利用RSTP的快速匯聚時(shí)間(相對(duì)于802.1D生成樹協(xié)議),優(yōu)選地每個(gè)島具有最多兩個(gè)到任何一個(gè)島間干線的連接或鏈路。使用多條鏈路防止任何客戶站點(diǎn)和/或島由于任何一致的鏈路發(fā)生故障而失去連通性。然而,相對(duì)于通信棧的某些較高層,由于客戶站點(diǎn)和島都在第2層(L2)運(yùn)行,所以出現(xiàn)多個(gè)鏈路可能導(dǎo)致形成環(huán)。具體地說(shuō),因?yàn)樵趫?zhí)行任何生成樹協(xié)議時(shí)運(yùn)營(yíng)商邊界網(wǎng)橋不與客戶網(wǎng)絡(luò)協(xié)作,所以每個(gè)UNI轉(zhuǎn)變到用于在島中定義的每個(gè)PE-VLAN ID的轉(zhuǎn)發(fā)生成樹狀態(tài)。從而,UNI不丟棄從客戶網(wǎng)絡(luò)接收到的任何幀,除非在VLAN映射表600中CE-VLAN ID未映射到任何PE-VLAN ID。
優(yōu)選地通過(guò)讓客戶站點(diǎn)阻塞它的一個(gè)或多個(gè)端口來(lái)切斷在客戶站點(diǎn)與島之間由于出現(xiàn)冗余的鏈路而形成的環(huán)。這可以通過(guò)將在客戶站點(diǎn)中生成的BPDU與數(shù)據(jù)幀完全一樣地處置來(lái)實(shí)現(xiàn)。更具體地說(shuō),可以將在運(yùn)營(yíng)商邊界網(wǎng)橋處的UNI配置來(lái)檢查從各個(gè)客戶站點(diǎn)接收到的幀的目的地MAC地址,以確定該地址是否與由BPDU消息所用的目的地MAC地址相匹配。如果匹配,則運(yùn)營(yíng)商邊界網(wǎng)橋同樣地識(shí)別幀。在響應(yīng)中,運(yùn)營(yíng)商邊界網(wǎng)橋優(yōu)選地將BPDU消息象數(shù)據(jù)幀一樣傳輸過(guò)運(yùn)營(yíng)商網(wǎng)絡(luò)。為了防止客戶生成的BPDU被運(yùn)營(yíng)商的交換機(jī)弄錯(cuò)為由運(yùn)營(yíng)商生成的BPDU,可以在到運(yùn)營(yíng)商網(wǎng)絡(luò)的入口上修改客戶BPDU,并且在出口上恢復(fù),例如通過(guò)修改它的目的地MAC地址。當(dāng)在相同的或者另一個(gè)客戶站點(diǎn)處回收到BPDU時(shí),按照傳統(tǒng)的方式根據(jù)客戶站點(diǎn)中的具體的生成樹協(xié)議處理它。結(jié)果,運(yùn)營(yíng)商網(wǎng)絡(luò)對(duì)于客戶站點(diǎn)看起來(lái)僅僅是共享的介質(zhì),并且通過(guò)運(yùn)行生成樹協(xié)議(STP),客戶的互連設(shè)備將通過(guò)阻塞面對(duì)UNI之一的端口,或者阻塞客戶站點(diǎn)內(nèi)部的端口來(lái)切斷環(huán)。
或者,可以將運(yùn)營(yíng)商邊界網(wǎng)橋配置來(lái)僅僅丟棄在UNI處接收到的BPDU。在這種情形中,可能存在環(huán),導(dǎo)致從客戶站點(diǎn)進(jìn)入島的幀速率連續(xù)增加。如果島監(jiān)控正從客戶站點(diǎn)接收的數(shù)據(jù)的速率,則如果這個(gè)速率超過(guò)某個(gè)閾值就可以觸發(fā)警告。
為了避免由在給定的島和島互連結(jié)構(gòu)208之間出現(xiàn)多條連接而形成環(huán),島優(yōu)選地運(yùn)行新協(xié)議,即根據(jù)本發(fā)明的MAN間控制協(xié)議(IMCP)。代表MSTP的修改版本的IMCP指定專門的規(guī)則和方法來(lái)有效地防止在MAN運(yùn)營(yíng)商的城域網(wǎng)的島之間形成環(huán)。這種修改的版本阻止形成環(huán),并且還避免不得不跨越整個(gè)MAN(即,跨越所有的島)運(yùn)行生成樹的單個(gè)實(shí)例。實(shí)際上,因?yàn)榭赡艽嬖跀?shù)百個(gè)島(如果不是更多的話),并且因?yàn)樵趰u中定義的VEC的總數(shù)可能遠(yuǎn)超過(guò)IEEE Std.802.1Q-1998和IEEE草案P802.1s/D13規(guī)范標(biāo)準(zhǔn)所準(zhǔn)許的4096,所以跨越它們運(yùn)行生成樹實(shí)例即使不是不可能也是不實(shí)際的。
如上面所指示,MAN運(yùn)營(yíng)商配置每個(gè)島中的交換機(jī)的VID/MSTI翻譯表426,以使得將每個(gè)PE-VLAN ID剛好與一個(gè)MSTI相關(guān)聯(lián)。在給定的島中,給定島中的交換機(jī)將一般支持多個(gè)MSTI和一個(gè)CIST。從而在由MSTI和CIST所定義的不同活動(dòng)拓?fù)渲虚g可以將對(duì)應(yīng)于不同的PE-VLANID的流量進(jìn)行共享負(fù)載。
為了冗余(和共享負(fù)載)的目的,每個(gè)島優(yōu)選地最多具有兩個(gè)到每個(gè)島間干線的連接。例如,島可以具有有兩個(gè)到島間干線的連接的單個(gè)島間網(wǎng)橋,和/或兩個(gè)每個(gè)都有一個(gè)到那個(gè)島間干線的連接的島間網(wǎng)橋。
除了向和從耦合到島間干線的端口(也被稱作島間端口)轉(zhuǎn)發(fā)網(wǎng)絡(luò)消息之外,島邊界網(wǎng)橋也生成并從它們的包括這些端口在內(nèi)的端口發(fā)送BPDU。具體地說(shuō),島邊界網(wǎng)橋的MSTP實(shí)體408的BPDU消息發(fā)生器418生成具有圖1中所示的形式的MST BPDU消息100。消息發(fā)生器100為了獲得在生成BPDU時(shí)使用的信息而訪問(wèn)MSTP實(shí)體的STP存儲(chǔ)器424。具體地說(shuō),MSTP實(shí)體的摘要發(fā)生器422使用MD-5算法,從它的VID/MSTI翻譯表426產(chǎn)生摘要值。然后,BPDU消息發(fā)生器418從STP存儲(chǔ)器424獲取島名、配置ID和修訂級(jí)別,并且創(chuàng)建MST配置ID 500,優(yōu)選地將它插入到MST BPDU 100的字段138(圖1)中。類似地,BPDU消息發(fā)生器418從STP存儲(chǔ)器424獲取STP參數(shù)值,以加載到BPDU 100的其他字段中。
除了為每個(gè)橫穿島間干線的VEC建立的VEC ID之外,還定義僅由IMCP使用的額外的VEC和相應(yīng)的VEC ID。具體地說(shuō),與由島邊界網(wǎng)橋發(fā)送到島間干線中的BPDU一起使用額外的VEC ID。即,在BPDU被發(fā)送到島互連結(jié)構(gòu)208之前,在附加到BPDU的MPLS標(biāo)記棧802中加載額外的VEC ID。在示例性實(shí)施方式中,島中的每個(gè)網(wǎng)橋都運(yùn)行IMCP,并且具有到分配給給定的島間干線的VEC的端口,還具有到額外的VEC的端口。將在諸如交換機(jī)306之類的島邊界網(wǎng)橋處接收到的攜帶有用于額外的VEC的VEC ID的封裝消息識(shí)別為島生成的消息。在響應(yīng)中,虛擬以太網(wǎng)信道實(shí)體412剝離封裝,恢復(fù)BPDU,并且將BPDU傳遞給MSTP實(shí)體408來(lái)處理。
行710c可以對(duì)應(yīng)于用于下述額外的VEC(即,VEC“301”)的條目,在島間干線242(即,“6042”)中用作為數(shù)據(jù)VEC“002”。如圖所示,沒(méi)有給額外的VEC分配PE-VLAN ID,因?yàn)椴晦D(zhuǎn)發(fā)由島邊界網(wǎng)橋所接收的BPDU。在封裝的BPDU被發(fā)送到島間干線242中之前,將分配的VEC ID加載到所述BPDU的虛擬以太網(wǎng)電路ID字段810。
如上所述,島間干線在連通性方面象共享介質(zhì)以太網(wǎng)或橋接的LAN那樣工作。因此,“耦合”到島間干線的所有其他交換機(jī),以及也剛好被耦合到島間干線的正發(fā)送BPDU的交換機(jī)的其他端口都接收發(fā)送到島間干線的BPDU。因此,從一個(gè)島間端口發(fā)出并且用額外的VEC ID封裝的BPDU被傳遞到所有耦合到島間干線的島間端口(除了在其上發(fā)送它們的之外)。此外,交換機(jī)利用接收到的BPDU中的信息來(lái)為在交換機(jī)處定義的每個(gè)MSTI計(jì)算活動(dòng)拓?fù)?。結(jié)果,對(duì)于每個(gè)PE-VLAN ID,島將阻塞除了到各個(gè)島間干線的一個(gè)島鏈路210外的所有島鏈路。此外,因?yàn)閷⒚總€(gè)VEC與每個(gè)島中的單個(gè)PE-VLAN ID相關(guān)聯(lián),所以將阻塞除了用于每個(gè)VEC的一個(gè)島間鏈路210外的所以島間鏈路。此外,轉(zhuǎn)變到轉(zhuǎn)發(fā)狀態(tài)的特定的島鏈路可以在PE-VLAN ID中變化。這提供了在島間鏈路210之間負(fù)載共享的方法。
當(dāng)包括島間網(wǎng)橋在內(nèi)的布置在島中的MAN運(yùn)營(yíng)商交換機(jī)接收BPDU時(shí),它將BPDU傳遞到MSTP實(shí)體408。如果在島間端口上接收到BPDU,則它將被封裝在MPLS標(biāo)記棧中。在這種情形中,象所有這種消息一樣,將BPDU傳遞到VEC實(shí)體412。VEC實(shí)體412確定用額外的VEC ID封裝了消息。在這種情形中,VEC實(shí)體412剝離MPLS標(biāo)記棧,并且將BPDU傳遞到MSTP實(shí)體408。如果該BPDU是MSTP BPDU,則MSTP實(shí)體408從字段138(圖1)獲取MST配置ID,并且將它提供給比較器423。比較器423將來(lái)自BPDU的MST配置ID與存儲(chǔ)在STP存儲(chǔ)器424中的交換機(jī)自己的MST配置ID相比較。如果所有四個(gè)值都匹配,即,它們具有相同的島名、相同的配置名、相同的修訂級(jí)別和相同的配置摘要,則交換機(jī)在它的活動(dòng)拓?fù)溆?jì)算中利用接收到的BPDU。即,假定所述BPDU是由相同的島中的另一個(gè)交換機(jī)或者由相同的交換機(jī)但是從不同的島間端口發(fā)送的。
在島具有多個(gè)到島間干線的連接的地方,這確保對(duì)于在給定的島中定義的每個(gè)PE-VLAN ID,只存在一個(gè)將島連接到島間干線的端口。換句話說(shuō),端口角色選擇狀態(tài)機(jī)414和端口轉(zhuǎn)變狀態(tài)機(jī)416只將一個(gè)這種端口轉(zhuǎn)變到轉(zhuǎn)發(fā)狀態(tài)。對(duì)于這個(gè)PE-VLAN ID,將所有其他端口都轉(zhuǎn)變到阻塞狀態(tài)。另外,將每個(gè)VEC映射到單個(gè)PE-VLAN ID。從而,從耦合到各個(gè)島間干線的單個(gè)端口只可以發(fā)送和接收與給定的VEC ID相關(guān)聯(lián)的幀。另外,MAN運(yùn)營(yíng)商配置島,以使得島之間僅有的連接是島間干線,并且在不超過(guò)一個(gè)島間干線上傳輸任何給定的VEC。這些步驟的組合防止形成環(huán)。
如果島在剛好具有兩個(gè)到給定的島間干線的島間端口,則優(yōu)選地將它們配置為點(diǎn)到點(diǎn)鏈路,以利用MSTP/RSTP的快速生成樹匯聚屬性。
如果MST配置ID 500的島ID字段502與接收交換機(jī)存儲(chǔ)的相匹配,但是BPDU的MST配置ID的任何其他部分都不匹配,即,配置名、修訂級(jí)別和/或配置摘要值不同,則交換機(jī)將接收到的BPDU作為傳統(tǒng)的RSTP處置。即,交換機(jī)利用BPDU的外部104(圖1)中的信息來(lái)在計(jì)算單個(gè)CIST中與發(fā)出BPDU的網(wǎng)橋協(xié)作,但是忽略內(nèi)部106中的信息。當(dāng)MAN運(yùn)營(yíng)商在更新位于給定的島中的交換機(jī)的VID/MSTI翻譯表,并且從而更新修訂級(jí)別的過(guò)程中時(shí),可能發(fā)生這種情形。
如果在接收到的BPDU中指定的島ID 502與由交換機(jī)存儲(chǔ)在它的STP存儲(chǔ)器424中的島ID不匹配,并且在BPDU的CIST根ID字段116中標(biāo)識(shí)出的根ID與在STP存儲(chǔ)器424中存儲(chǔ)的相應(yīng)的值不匹配,則MSTP實(shí)體408忽略并丟棄接收到的BPDU。在這種情形中,假設(shè)布置在某些其他島中的交換機(jī)發(fā)送了接收到的BPDU。它是將網(wǎng)橋連接到BPDU VEC來(lái)確保島名的選擇與由連接到相同的BPDU VEC的其他交換機(jī)所使用的名字一致的前提。MAN運(yùn)營(yíng)商可以通過(guò)管理動(dòng)作實(shí)現(xiàn)這點(diǎn),例如,通過(guò)正確地設(shè)置各個(gè)交換機(jī)的STP存儲(chǔ)器424的內(nèi)容。
如果在接收到的BPDU中指定的島ID與交換機(jī)的島ID不匹配,但是字段116中的根ID的確匹配,則MSTP實(shí)體408優(yōu)選地將在其上接收到BPDU的端口轉(zhuǎn)變到用于所有VLAN的阻塞狀態(tài),并且向MAN運(yùn)營(yíng)商發(fā)出警報(bào)。這種情況反映MAN運(yùn)營(yíng)商的島的錯(cuò)誤配置。具體地說(shuō),它表明用除了島間干線之外(多個(gè))鏈路互連了兩個(gè)不同的島。此外,如果在除了島間端口之外的任何端口處,接收到其島名與接收交換機(jī)的島名不匹配的BPDU,或者接收到不是MST BPDU的BPDU,則對(duì)所有的PE-VLANID阻塞端口,并且發(fā)出操作者警報(bào)的信號(hào)。
類似地,如果接收到不具有島ID字段502的BPDU,則丟棄它,并且在接收網(wǎng)橋的生成樹計(jì)算中不依賴于它。
圖9是網(wǎng)絡(luò)200的高度簡(jiǎn)化的局部方框圖,圖示了布置在島互連結(jié)構(gòu)208中并且配置來(lái)為第二VEC傳輸流量的島間干線242。如上所述,第二VEC在島202和204之間延伸。此外,每個(gè)這些島202和204都分別具有兩個(gè)島間鏈路210a、210b和210c、210d。每個(gè)島202和204通過(guò)將它的除了一個(gè)耦合到島間干線242的端口之外的所有端口都置于阻塞狀態(tài)中,防止如果不這樣的話則由于存在島間干線242而形成環(huán)。例如,可以將在島202處耦合到島鏈路210b的端口和在島204處耦合到島鏈路210d的端口每個(gè)都轉(zhuǎn)變到阻塞狀態(tài),如點(diǎn)902和904所指示。另一方面,將對(duì)應(yīng)于鏈路210a和210c的端口每個(gè)都轉(zhuǎn)變到轉(zhuǎn)發(fā)狀態(tài)。
圖10是MAN 200的高度簡(jiǎn)化的局部方框圖,圖示了布置在島互連結(jié)構(gòu)208中并且配置來(lái)為第三VEC傳輸流量的島間干線244,其中第三VEC配置來(lái)經(jīng)由島204和206連接客戶站點(diǎn)216和217(圖2)。經(jīng)由島間鏈路210c、210d和210e、210f,將島204和206耦合到島間干線244。每個(gè)島204和206通過(guò)將它的除了一個(gè)耦合到島間干線244的端口之外的所有端口都置于阻塞狀態(tài)中,防止如果不這樣的話則由于存在島間干線244而形成環(huán)。例如,可以將在島204處耦合到島鏈路210c的端口和在島206處耦合到島鏈路210e的端口每個(gè)都轉(zhuǎn)變到阻塞狀態(tài),如點(diǎn)1002和1004所指示。將對(duì)應(yīng)于鏈路210d和210f的端口每個(gè)都轉(zhuǎn)變到轉(zhuǎn)發(fā)狀態(tài)。
假設(shè)還將島202、204和206配置來(lái)提供第四VEC,以互連客戶站點(diǎn)213、216和217。圖11是MAN 200的高度簡(jiǎn)化的局部方框圖,圖示了布置在島互連結(jié)構(gòu)208中已經(jīng)配置來(lái)為第四VEC傳輸流量的島間干線1100。在這里,所有四個(gè)島間鏈路210a-d都連接到島間干線1100。為了防止形成環(huán),每個(gè)島202、204和206將它的除了一個(gè)耦合到島間干線1100的端口之外的所有端口都置于阻塞狀態(tài)中。例如,可以將在島202處耦合到島鏈路210a的端口、在島204處耦合到島鏈路210d的端口和在到206處耦合到島鏈路210f的端口每個(gè)都轉(zhuǎn)變到阻塞狀態(tài),如點(diǎn)1102、1104和1006所指示。將對(duì)應(yīng)于鏈路210b、210c和210e的端口每個(gè)都轉(zhuǎn)變到轉(zhuǎn)發(fā)狀態(tài)。
如圖9-11所示,盡管利用多個(gè)島間鏈路將每個(gè)島都耦合到島互連結(jié)構(gòu),但是專門避免了形成環(huán)。另外,在島間鏈路210之間負(fù)載共享流量。
圖12是根據(jù)本發(fā)明的另一個(gè)島間干線1200的高度簡(jiǎn)化的示意圖。為了清楚已經(jīng)省略了島間互連結(jié)構(gòu)。島間干線1200包括多個(gè)島1202-1210。此外,每個(gè)島具有多個(gè)互連的網(wǎng)橋。如圖所示,在島1202-1210之間形成有三個(gè)VEC 1212-1216,都在單個(gè)島間干線上傳輸。島1202只具有到VEC 1212的單個(gè)連接1215。因此,如果丟失了連接1215,則島1202就失去與島1204和1210的連通性。將島1208的網(wǎng)橋組織成1218a和1218b兩部分,每部分都由四個(gè)互連的網(wǎng)橋組成。然而,在形成島1208內(nèi)部的兩部分1218a和1218b的網(wǎng)橋之間沒(méi)有連接。相反,島1208的兩部分1218a和1218b利用VEC 1214和1216來(lái)互通信。類似地,在島1206處,執(zhí)行IMCP導(dǎo)致將兩個(gè)網(wǎng)橋之間的鏈路1219阻塞。島1206的兩個(gè)網(wǎng)橋利用VEC 1216來(lái)互通信。
圖13是與圖12相同的島間干線1200的高度簡(jiǎn)化的示意圖。然而,為了清楚已經(jīng)省略了VEC,并且圖示了BPDU VEC或BPDU服務(wù)實(shí)例1302。如上所述,被連接到島間干線的島1202-1210的每個(gè)島間網(wǎng)橋具有到BPDU VEC 1302的連接。如這里所述,島間網(wǎng)橋利用BPDU VEC 1302來(lái)在它們之間交換BPDU。島間網(wǎng)橋在它們執(zhí)行IMCP時(shí)使用這些接收到的BPDU來(lái)標(biāo)識(shí)并阻塞到VEC的冗余鏈路。對(duì)于那些連接到給定的島間干線上的多個(gè)VEC的島間網(wǎng)橋,只需要單個(gè)到BPDU VEC 1032的連接。例如,在被連接到VEC 1212和1214(圖2)的島1210處的網(wǎng)橋1304只需要建立到BPDU VEC 1302的單個(gè)連接1306。
在每個(gè)島內(nèi),島邊界網(wǎng)橋在它們的島端口上運(yùn)行IMCP。對(duì)于島內(nèi)的其他端口,即非島間端口,可以運(yùn)行IMCP或者M(jìn)STP。
在替換實(shí)施方式中,可以使用未修改的IEEE P802.1S/D13多生成樹協(xié)議,而不是IMCP。在這種情形中,每個(gè)島間干線必須具有用于每個(gè)島的分離的BPDU VEC。相反,必須將用于每個(gè)島間干線的每個(gè)島間網(wǎng)橋配置來(lái)附加到與在那個(gè)相同的島中的其他島間網(wǎng)橋相同的BPDU VEC。此外,如果采用了多個(gè)島間干線,則由每個(gè)島間干線的BPDU VEC互連的島的集合必須相同。從而,BPDU VEC的連通性,而不是島ID的比較定義了島。由于在任何BPDU VEC上不同島的島間網(wǎng)橋未被互連,所以它們不能檢測(cè)并報(bào)告未利用島間干線的島之間的錯(cuò)誤連接。
如上所述,存在不同類別的VEC。上面所述的VEC對(duì)應(yīng)于“類似于網(wǎng)橋的”VEC,在這種VEC中,接收到的幀的CE-VLAN ID在島中被修改。另外,一旦在UNI處接收到對(duì)應(yīng)于未用于客戶-MAN交互的L2協(xié)議的網(wǎng)絡(luò)消息,例如IEEE Std.802.3-2000暫停幀(也稱作802.3x暫停幀),就將其丟棄。如上所述,布置在島中的交換機(jī)在它們的CIST的計(jì)算中從不利用來(lái)自客戶站點(diǎn)的BPDU。利用“線形(wire-like)”VEC,將用CE-VLAN ID加標(biāo)簽的幀透明地傳輸過(guò)MAN,如同對(duì)應(yīng)于未用于客戶-MAN交互的L2協(xié)議的網(wǎng)絡(luò)消息那樣。
還應(yīng)當(dāng)理解,島可以由單個(gè)L2交換機(jī)組成。在這種情形中,將PE-VLAN ID局限于單個(gè)交換機(jī)。
前面的描述已經(jīng)集中于本發(fā)明的特定實(shí)施方式。然而,很清楚,可以對(duì)所描述的實(shí)施方式做出其他各種變化和修改,并且獲得它們的某些或全部?jī)?yōu)點(diǎn)。因此,所附權(quán)利要求的目的是覆蓋本發(fā)明的真實(shí)精神和范圍中的所有這種變化和修改。
權(quán)利要求
1.一種在城域網(wǎng)(MAN)中防止第2層(L2)環(huán)的方法,所述城域網(wǎng)具有多個(gè)中間網(wǎng)絡(luò)設(shè)備,并且提供多條虛擬以太網(wǎng)連接(VEC),每條代表虛擬的共享介質(zhì),所述方法包括步驟將所述多個(gè)中間網(wǎng)絡(luò)設(shè)備組織成兩個(gè)或更多管理組,每個(gè)包含一個(gè)或多個(gè)中間網(wǎng)絡(luò)設(shè)備;通過(guò)在每個(gè)管理組和互連結(jié)構(gòu)之間提供冗余鏈路來(lái)使用所述互連結(jié)構(gòu)以耦合所述兩個(gè)或更多管理組;并且對(duì)于由管理組提供的每個(gè)VEC,將除了一個(gè)之外所有到所述互連結(jié)構(gòu)所述冗余鏈路都阻塞。
2.如權(quán)利要求1所述的方法,還包括步驟在所述互連結(jié)構(gòu)中定義一個(gè)或多個(gè)邏輯干線,每個(gè)邏輯干線代表連接兩個(gè)或更多管理組的共享介質(zhì);將每個(gè)VEC分配給不超過(guò)一個(gè)邏輯干線;在每個(gè)管理組中,定義多個(gè)運(yùn)營(yíng)商設(shè)備虛擬局域網(wǎng)(VLAN)標(biāo)識(shí)符(ID);并且在每個(gè)管理組中,將給定的VEC與剛好一個(gè)PE-VLANID相關(guān)聯(lián)。
3.如權(quán)利要求2所述的方法,其中,在兩個(gè)管理組中定義并且與相同的VEC相關(guān)聯(lián)的PE-VLANID不相同。
4.如權(quán)利要求1所述的方法,其中,所述阻塞步驟包括步驟向由所述MAN的管理組的中間網(wǎng)絡(luò)設(shè)備所生成的配置網(wǎng)橋協(xié)議數(shù)據(jù)單元(BPDU)消息提供分離的VEC;并且將多生成樹(MST)配置標(biāo)識(shí)符(ID)分配給所述MAN的每個(gè)中間網(wǎng)絡(luò)設(shè)備,所述MST配置ID指定島名。
5.如權(quán)利要求4所述的方法,還包括步驟在管理組的給定的中間網(wǎng)絡(luò)設(shè)備處,從邏輯干線接收一個(gè)或多個(gè)與所述VEC相關(guān)聯(lián)的BPDU消息,每個(gè)接收到的消息指定MST配置ID和第一根;并且倘若所述接收到的BPDU的MST配置ID與分配給所述給定的中間網(wǎng)絡(luò)設(shè)備的MST配置ID相匹配,則在根據(jù)所述多生成樹協(xié)議(MSTP)計(jì)算生成樹實(shí)例中使用所述接收到的消息。
6.如權(quán)利要求5所述的方法,其中所述MST配置ID還指定配置名、修訂級(jí)別和配置摘要,并且如果所述指定的島名、配置名、修訂級(jí)別和配置摘要都匹配,則兩個(gè)MST配置ID匹配。
7.如權(quán)利要求6所述的方法,還包括步驟將根ID存儲(chǔ)在所述給定的中間網(wǎng)絡(luò)設(shè)備處;并且如果所述接收到的BPDU的MST配置ID島ID的島名與被分配給所述給定的中間網(wǎng)絡(luò)設(shè)備的MST配置ID的島名不匹配,并且所述接收到的BPDU的第一根與由所述給定的中間網(wǎng)絡(luò)設(shè)備存儲(chǔ)的根ID不匹配,則丟棄所述接收到的BPDU。
8.如權(quán)利要求4所述的方法,其中所述MST配置ID還指定配置名、修訂級(jí)別和配置摘要;并且所述阻塞步驟還包括步驟如果所述接收到的BPDU的島名與所述給定的中間網(wǎng)絡(luò)設(shè)備的島名匹配,但是所接收到的BPDU的配置名、修訂級(jí)別和配置摘要中的一個(gè)或多個(gè)與被分配給所述給定的中間網(wǎng)絡(luò)設(shè)備的配置名、修訂級(jí)別和配置摘要中的各項(xiàng)之一不匹配,則在根據(jù)快速生成樹協(xié)議(RSTP)計(jì)算生成樹實(shí)例中使用所述接收到的BPDU。
9.如權(quán)利要求1所述的方法,其中將所述MAN的每個(gè)管理組標(biāo)識(shí)為相應(yīng)的島,并且將多個(gè)客戶網(wǎng)絡(luò)耦合到每個(gè)島。
10.如權(quán)利要求9所述的方法,其中,所述客戶網(wǎng)絡(luò)將配置網(wǎng)橋協(xié)議數(shù)據(jù)單元(BPDU)消息發(fā)送到它們各自的島中,所述方法還包括將在所述客戶網(wǎng)絡(luò)中生成的BPDU消息不加修改地返回到所述客戶網(wǎng)絡(luò)的步驟。
11.如權(quán)利要求1所述的方法,其中,所述阻塞步驟包括步驟配置邏輯干線,以使得每個(gè)中間網(wǎng)絡(luò)設(shè)備通過(guò)所述邏輯干線只可與屬于相同管理組的中間網(wǎng)絡(luò)設(shè)備傳輸配置網(wǎng)橋協(xié)議數(shù)據(jù)單元(BPDU)消息;并且在根據(jù)所述多生成樹協(xié)議(MSTP)計(jì)算生成樹實(shí)例中使用所述接收到的BPDU消息。
12.一種中間網(wǎng)絡(luò)設(shè)備,用于在計(jì)算機(jī)網(wǎng)絡(luò)中轉(zhuǎn)發(fā)消息時(shí)使用,所述中間網(wǎng)絡(luò)設(shè)備包括配置來(lái)發(fā)送和接收所述網(wǎng)絡(luò)消息的多個(gè)端口;用于將所述中間網(wǎng)絡(luò)設(shè)備與島名、配置名、修訂級(jí)別和配置摘要相關(guān)聯(lián)的裝置;用于發(fā)出具有與所述中間網(wǎng)絡(luò)設(shè)備相關(guān)聯(lián)的島名、配置名、修訂級(jí)別和配置摘要的配置網(wǎng)橋協(xié)議數(shù)據(jù)單元(BPDU)消息的裝置;和用于倘若一個(gè)或多個(gè)接收到的BPDU的島名、配置名、修訂級(jí)別和配置摘要中的每一項(xiàng)與和所述中間網(wǎng)絡(luò)設(shè)備相關(guān)聯(lián)的配置名、修訂級(jí)別和配置摘要分別匹配,則在計(jì)算生成樹實(shí)例時(shí)利用所述一個(gè)或多個(gè)接收到的BPDU消息的裝置。
13.如權(quán)利要求12所述的中間網(wǎng)絡(luò)設(shè)備,還包括用于如果一個(gè)或多個(gè)接收到的BPDU的島名與和所述中間網(wǎng)絡(luò)設(shè)備相關(guān)聯(lián)的島名不匹配,則防止在計(jì)算生成樹實(shí)例時(shí)使用所述接收到的BPDU消息的裝置。
全文摘要
一種系統(tǒng)和方法,準(zhǔn)許使用第2層(L2)交換技術(shù)創(chuàng)建超大城域網(wǎng)(MAN)。將不同組L2交換機(jī)邏輯地組織成島。連接到每個(gè)島的是多個(gè)客戶站點(diǎn),并且互連結(jié)構(gòu)將島耦合到一起。島協(xié)作來(lái)向被耦合在一起的每組客戶站點(diǎn)提供虛擬以太網(wǎng)連接(VEC)??蛻敉ㄟ^(guò)用客戶設(shè)備VLAN標(biāo)識(shí)符(CE-VLAN ID)給它們的流量加標(biāo)記或標(biāo)簽來(lái)標(biāo)識(shí)它們的對(duì)應(yīng)于VEC的流量。在每個(gè)島中,將由客戶的流量指定的CE-VLAN ID(并且從此指定相應(yīng)的VEC)映射到唯一的MAN運(yùn)營(yíng)商設(shè)備VLAN ID(PE-VLAN ID)。為了防止形成環(huán),島運(yùn)行代表多生成樹協(xié)議(MSTP)的修改版本的MAN間控制協(xié)議。
文檔編號(hào)H04L12/56GK1820463SQ200380102077
公開日2006年8月16日 申請(qǐng)日期2003年10月21日 優(yōu)先權(quán)日2002年10月24日
發(fā)明者諾曼·W·芬恩 申請(qǐng)人:思科技術(shù)公司