專(zhuān)利名稱(chēng):一種多路徑網(wǎng)絡(luò)的制作方法
技術(shù)領(lǐng)域:
本發(fā)明涉及一種多路徑網(wǎng)絡(luò)和一種操作方法,并特別涉及一種具有可擴(kuò)展網(wǎng)絡(luò)地 址查詢(xún)表的多路徑網(wǎng)絡(luò)。所述多路徑網(wǎng)絡(luò)和方法適用于,但不限定于,多處理器網(wǎng)絡(luò)例如存 儲(chǔ)網(wǎng)絡(luò)、數(shù)據(jù)中心和高性能運(yùn)算。特別的,本發(fā)明適用于網(wǎng)橋、交換機(jī)、路由器、集線器和類(lèi) 似包括適配于IEEE802標(biāo)準(zhǔn)的數(shù)據(jù)幀分布或符合未來(lái)以太網(wǎng)標(biāo)準(zhǔn)的數(shù)據(jù)幀的以太網(wǎng)設(shè)備。
背景技術(shù):
協(xié)議層概念上,為了區(qū)分功能以太網(wǎng)絡(luò)分為許多虛擬層。最常見(jiàn)和正式的標(biāo)準(zhǔn)化模型是 開(kāi)放系統(tǒng)互連(OSI)參考模型。詳細(xì)描述該OSI參考模型的文章是Hubert Zimmermarm撰 寫(xiě)的《0SI參考模型-構(gòu)建開(kāi)放系統(tǒng)互聯(lián)的ISO模型》(“OSIReference Model-The IS 0 Model of Architecture for Open Systems”),IEEE 通訊匯刊 com-28 卷 1980 年第 4 期 (IEEE Transactions on Communications, Vol. C0M-28, NO. 4, April 1980)。 OSI # 考模型包括以下網(wǎng)絡(luò)系統(tǒng)功能不同的7層1、物理層,負(fù)責(zé)物理信道連接。由那些涉及發(fā)送和接收信號(hào)的元件,典型的線路驅(qū) 動(dòng)器和線路接收器,信號(hào)編碼/解碼器和時(shí)鐘組成。2、數(shù)據(jù)鏈路層,提供服務(wù)允許終端站設(shè)備之間通過(guò)底層的物理介質(zhì)直接通訊。該 層提供組幀,為物理層將設(shè)備信息分離成離散的傳輸或幀,封裝更高層的包傳輸協(xié)議。它給 識(shí)別源和目的裝置提供尋址。它提供錯(cuò)誤偵測(cè)以保證數(shù)據(jù)損壞不會(huì)傳往更高層。3、網(wǎng)絡(luò)層,負(fù)責(zé)網(wǎng)際通信,通過(guò)網(wǎng)絡(luò)在終端站之間發(fā)送信息包。它必須適應(yīng)多重?cái)?shù) 據(jù)連接技術(shù)和拓?fù)涫褂酶鞣N協(xié)議,最常見(jiàn)的是網(wǎng)際協(xié)議(IP)。4、傳輸層,負(fù)責(zé)端到端通信,防護(hù)傳輸時(shí)產(chǎn)生的問(wèn)題影響上面各層,例如中斷的數(shù) 據(jù)、錯(cuò)誤和由低層介質(zhì)導(dǎo)致的亂序。該層為應(yīng)用提供無(wú)錯(cuò)、有序的、可靠的信息傳遞服務(wù),管 理終端站之間的數(shù)據(jù)處理傳遞過(guò)程。傳輸控制協(xié)議(TCP)和用戶(hù)數(shù)據(jù)報(bào)協(xié)議(UDP)是最常 見(jiàn)的傳輸層協(xié)議。5、會(huì)話層,負(fù)責(zé)建立應(yīng)用之間的通信連接,處理認(rèn)證和連接控制。6、表示層,保證各不同的機(jī)器數(shù)據(jù)表示得到解析。7、應(yīng)用層,提供一般功能允許用戶(hù)應(yīng)用通過(guò)網(wǎng)絡(luò)通信。為本申請(qǐng)的目的我們并不需要考慮傳輸層以上各層根據(jù)此處描述的方法的操作, 如果執(zhí)行良好,就能屏蔽更高層由其轄域及下層出的問(wèn)題。網(wǎng)絡(luò)互連在數(shù)據(jù)鏈路層及其上執(zhí)行網(wǎng)絡(luò)服務(wù)的裝置叫做站。物理層因?yàn)椴荒芡ㄟ^(guò)協(xié)議尋址 而排除在該定義之外。通常有兩種形式的站1、終端站,是穿過(guò)網(wǎng)絡(luò)的網(wǎng)絡(luò)數(shù)據(jù)通信的最終源或目的地。2、中間站,轉(zhuǎn)發(fā)由終端站產(chǎn)生的位于源和目的之間的網(wǎng)絡(luò)數(shù)據(jù)。 位于數(shù)據(jù)鏈路層完成轉(zhuǎn)發(fā)的中間站通常叫做網(wǎng)橋;位于網(wǎng)絡(luò)層轉(zhuǎn)發(fā)的站通常叫做路由器。依賴(lài)于以太網(wǎng)絡(luò)的網(wǎng)絡(luò)工作站以短序列字節(jié)交換數(shù)據(jù)叫做數(shù)據(jù)包或協(xié)議數(shù)據(jù)單 元(PDU)。PDU由描述PDU目的報(bào)頭和包含有效載荷數(shù)據(jù)的報(bào)文組成。在OSI模型中每一 協(xié)議層PDU具有不同的名稱(chēng)。物理層PDU叫數(shù)據(jù)位,數(shù)據(jù)鏈路層PDU叫數(shù)據(jù)幀,網(wǎng)絡(luò)層PDU 叫數(shù)據(jù)包,傳輸層PDU叫數(shù)據(jù)段或報(bào)文。PDU在物理以太網(wǎng)硬件傳輸之前被封裝。每一封裝包含對(duì)一特定OSI層的信息,以 太網(wǎng)數(shù)據(jù)流封裝成幀,然后幀封裝成數(shù)據(jù)包,數(shù)據(jù)包封裝成報(bào)文等等。這些封裝,包含了報(bào) 頭和有效載荷,最后傳過(guò)網(wǎng)絡(luò)結(jié)構(gòu)并路由至目的地。在傳輸層,一相關(guān)標(biāo)準(zhǔn),傳輸控制協(xié)議(TCP),通過(guò)隱藏底層PDU結(jié)構(gòu)為應(yīng)用額外 提供一簡(jiǎn)單界面,負(fù)責(zé)重排列亂序的PDU并且重傳丟失的數(shù)據(jù)。TCP協(xié)議設(shè)計(jì)作為一種可靠 的數(shù)據(jù)流傳輸服務(wù);這樣其優(yōu)選的是準(zhǔn)確的數(shù)據(jù)傳遞而不是性能。TCP協(xié)議在等待亂序PDU 和數(shù)據(jù)重傳的極端情況下經(jīng)常遭遇相對(duì)的長(zhǎng)時(shí)間延遲,降低整體應(yīng)用性能和當(dāng)需要考慮最 大量協(xié)議數(shù)據(jù)單元傳輸延遲(信號(hào)不穩(wěn)定)時(shí)TCP協(xié)議變得不適用,文件系統(tǒng)或媒體傳輸, 例如。此外,在TCP/IP層級(jí)的最低層,PDU通過(guò)網(wǎng)絡(luò)傳輸?shù)木W(wǎng)絡(luò)訪問(wèn)層,完全適合 IEEE802. ID標(biāo)準(zhǔn)介質(zhì)訪問(wèn)控制(MAC)網(wǎng)橋?qū)⒎指艟W(wǎng)絡(luò)連在一起要求源和目的對(duì)的次序保
&3 甶οPDU副本是以太網(wǎng)絡(luò)另一降低性能的因素。一目的路由還未被網(wǎng)橋認(rèn)證的單播 PDU會(huì)被該網(wǎng)橋的所有路由淹沒(méi)并同時(shí)在多個(gè)出站端口緩沖。網(wǎng)絡(luò)重構(gòu)影響從網(wǎng)橋到目的 地的最優(yōu)路由可能導(dǎo)致一 PDU副本已經(jīng)從上一最優(yōu)路由發(fā)出緊接著一 PDU副本將從緩沖區(qū) 發(fā)送,二者均達(dá)到目的地。再次,更高層的TCP協(xié)議處理這些而不會(huì)降低整體性能。無(wú)序和副本不應(yīng)該發(fā)生于通常的操作中。多路徑以太網(wǎng)的這些特征受限于由 IEEE802. ID標(biāo)準(zhǔn)定義的快速生成樹(shù)協(xié)議(RSTP)。RSTP通過(guò)禁止交替路由維持一網(wǎng)橋間的 優(yōu)選路由,移除多路徑和循環(huán),保留單一路徑以保證按順序的數(shù)據(jù)幀傳輸。在進(jìn)入一中間站時(shí),例如以太網(wǎng)橋或路由,目的地址信息,數(shù)據(jù)幀攜帶的,用于提 取出站端口數(shù)據(jù)通過(guò)其中繼發(fā)往目的地。至目的地址的端口選擇存儲(chǔ)在網(wǎng)絡(luò)地址查詢(xún)表 中。該表常見(jiàn)于中間站一旦所述路由被發(fā)現(xiàn)并且由其它通信持續(xù)使用以識(shí)別至特定目的的 路由。存儲(chǔ)在中間站的網(wǎng)絡(luò)地址查詢(xún)表中的信息類(lèi)型可以變化依賴(lài)于支持的網(wǎng)絡(luò)協(xié)議 但是所述發(fā)現(xiàn)過(guò)程和所述表的后續(xù)使用對(duì)于以太網(wǎng)數(shù)據(jù)鏈路層網(wǎng)橋和網(wǎng)絡(luò)層路由是共同 的。以下描述使用一個(gè)數(shù)據(jù)鏈路層網(wǎng)橋作為場(chǎng)景示例說(shuō)明原理但是該方法引申適用于網(wǎng)絡(luò) 層路由器和其它這些協(xié)議之外的使用查詢(xún)表和地址映射。用在網(wǎng)橋的地址圖式基于生產(chǎn)時(shí) 嵌入每個(gè)以太網(wǎng)設(shè)備的唯一的媒體連接控制(MAC)識(shí)別碼。源和目的終端站的MAC地址封 裝進(jìn)數(shù)據(jù)鏈路層的數(shù)據(jù)幀中。IEEE802標(biāo)準(zhǔn)MAC地址是一個(gè)48bit數(shù)。中間站的MAC地址查詢(xún)表用于存儲(chǔ)這些 地址并允許翻譯地址成物理路由。通常從一個(gè)內(nèi)容可尋址存儲(chǔ)器(CAM)或其它形式的存儲(chǔ) 機(jī)制構(gòu)建而成。 當(dāng)一個(gè)以太網(wǎng)數(shù)據(jù)幀抵達(dá)一個(gè)網(wǎng)橋輸入端口,源MAC地址(S卩,源設(shè)備輸出該以太 網(wǎng)數(shù)據(jù)幀的MAC地址)保存進(jìn)MAC地址查詢(xún)表相對(duì)該數(shù)據(jù)幀進(jìn)入所述交換機(jī)的鏈接。MAC地址查詢(xún)表的條目識(shí)別所述鏈接為后續(xù)通信中以該源設(shè)備為目的地的數(shù)據(jù)幀將使用的連 接。以太網(wǎng)數(shù)據(jù)幀在其報(bào)頭包括目的地MAC地址和查詢(xún)表使用所述目的地MAC地址以決定 數(shù)據(jù)幀通過(guò)哪個(gè)鏈接從所述網(wǎng)橋發(fā)送出去。如果目的地MAC地址在表中則一個(gè)端口號(hào)將返 回以在至其目的地的下一中繼段路由所述數(shù)據(jù)幀。如果目的地MAC地址端口映射不可知并 且在表中沒(méi)有條目查表將失敗。在查表失敗的場(chǎng)合,數(shù)據(jù)幀將充斥網(wǎng)橋上其它端口選擇,通 常所有端口除了所述入站端口。假定該數(shù)據(jù)幀最終能找到另外一個(gè)認(rèn)證從哪路由該數(shù)據(jù)幀 至目的地MAC地址的以太網(wǎng)橋或最終抵達(dá)目的地終端站。最終抵達(dá)錯(cuò)誤終端站的數(shù)據(jù)幀簡(jiǎn) 單被丟棄但是泛濫數(shù)據(jù)幀抵達(dá)的所有中間站,這些中間站沒(méi)有認(rèn)證該數(shù)據(jù)幀特定目的MAC 地址,將也,反過(guò)來(lái),使該數(shù)據(jù)幀泛濫充斥一個(gè)端口外的所有端口。這種系統(tǒng)導(dǎo)致了過(guò)多的 網(wǎng)絡(luò)通信量,由于除了目的幀以外的所有傳輸至終端站的數(shù)據(jù)幀均被丟棄。絕大多數(shù)通過(guò)以太網(wǎng)的通信使用站之間的全雙工連接。這意味著數(shù)據(jù)幀通常通過(guò) 其目的地返回至初始源,當(dāng)源變成返回?cái)?shù)據(jù)幀的目的地時(shí)并且反之亦然。一個(gè)數(shù)據(jù)幀的返 回路徑已經(jīng)在以太網(wǎng)橋MAC地址查詢(xún)表中具有其路由記錄,替代其在原始數(shù)據(jù)幀的發(fā)送行 程中的路徑并且由此在數(shù)據(jù)幀的返回行程中網(wǎng)絡(luò)泛濫就不常發(fā)生。隨著時(shí)間的推移每個(gè)網(wǎng) 橋的MAC地址查詢(xún)表被所有通過(guò)一個(gè)或多個(gè)中間站可連接終端站的地址和端口號(hào)映射填 充。逐漸地,同時(shí),由于MAC地址查詢(xún)表變得更完全填充網(wǎng)絡(luò)的泛濫行為將平息。以上描述的MAC地址填充機(jī)制使得以太網(wǎng)網(wǎng)絡(luò)由于通過(guò)網(wǎng)絡(luò)的路由自動(dòng)高效配 置而能簡(jiǎn)單安裝。這種技術(shù)的缺點(diǎn)是具有不明確MAC地址的數(shù)據(jù)幀在該數(shù)據(jù)幀泛濫時(shí)導(dǎo)致 大量網(wǎng)絡(luò)通信量。對(duì)于小型網(wǎng)絡(luò)這相對(duì)不重要但是對(duì)于大型的具有上千活動(dòng)MAC地址的網(wǎng) 絡(luò)就是個(gè)嚴(yán)重問(wèn)題。特別是,在初始階段當(dāng)MAC地址沒(méi)有被識(shí)別時(shí),泛濫風(fēng)暴導(dǎo)致極大的附 加通信量和網(wǎng)絡(luò)負(fù)荷。大型網(wǎng)絡(luò)的一個(gè)限制因素是每個(gè)網(wǎng)橋的MAC地址查詢(xún)表的尺寸。理想地每個(gè)MAC 表應(yīng)該能同時(shí)保存整個(gè)網(wǎng)絡(luò)所有的活動(dòng)MAC地址。如果MAC查詢(xún)表不能保存所有的活動(dòng) MAC地址,新的MAC地址將終止替換查詢(xún)表中舊的仍活動(dòng)的MAC地址。由上所指出,未知地 址導(dǎo)致數(shù)據(jù)幀在網(wǎng)絡(luò)上泛濫。因此,以太網(wǎng)橋的MAC地址查詢(xún)表不能支持所有活動(dòng)MAC地 址的場(chǎng)合這種泛濫行為將持續(xù)通過(guò)通常網(wǎng)絡(luò)初始階段造成這種地址替換。隨著網(wǎng)絡(luò)尺度增 加的泛濫數(shù)據(jù)幀將導(dǎo)致成比例的大量通信量和網(wǎng)絡(luò)負(fù)荷,極大降低網(wǎng)絡(luò)性能。大型網(wǎng)絡(luò)中有好幾萬(wàn)的MAC地址。MAC表就硅實(shí)業(yè)而言是很昂貴的并且用于構(gòu)建 查詢(xún)表的存儲(chǔ)器更貴。此外大型存儲(chǔ)器裝置運(yùn)行慢。尺寸和成本不允許非常大的MAC地址 表,并且當(dāng)前一個(gè)查詢(xún)表容量8000-16000是典型的兼顧尺寸、成本和速度平衡。雖然,這對(duì) 于預(yù)計(jì)網(wǎng)絡(luò)尺寸增長(zhǎng)管理還不夠大。已知的執(zhí)行MAC地址表包括通過(guò)全相連CAM結(jié)構(gòu),表基礎(chǔ)結(jié)構(gòu)和一些以包括應(yīng)對(duì) 高速緩存沖突的附加機(jī)制?;顒?dòng)MAC地址分散進(jìn)48位地址空間但是其分布很難預(yù)測(cè)。MAC 地址是以太網(wǎng)終端點(diǎn)的特性并且MAC地址定位于以太網(wǎng)設(shè)備的制造。一單個(gè)大型以太網(wǎng)安 裝就可能具有許多連續(xù)段的MAC地址空間和許多獨(dú)立的地址并且這些可能出現(xiàn)在所述48 位空間的任何地方。直到使用一個(gè)全相聯(lián)高速緩存或相似機(jī)制然后所述MAC表必須顯著擴(kuò) 大為了確保所有活動(dòng)MAC地址能同時(shí)保存。這對(duì)于之前陳述的執(zhí)行方案尺寸和成本是不能 接受的。 保持在網(wǎng)絡(luò)中間站的信息可能依賴(lài)于支持的以太網(wǎng)協(xié)議而不同但是發(fā)現(xiàn)程序和查詢(xún)表的隨后的使用在以太網(wǎng)數(shù)據(jù)鏈路層網(wǎng)橋和網(wǎng)絡(luò)層路由器中均是相同的。為了方便闡 述這一原理此處的描述特定于數(shù)據(jù)鏈路層網(wǎng)橋。然而,該方法也能引申用于網(wǎng)絡(luò)層路由器 和其它這些協(xié)議和地址映射之外的查詢(xún)表使用。相關(guān)技術(shù)說(shuō)明 在US2007/0047540中描述了一種以太網(wǎng)交換其中個(gè)別入站端口提供有本地查詢(xún) 表。只有端口將使用的轉(zhuǎn)發(fā)信息存儲(chǔ)進(jìn)所述查詢(xún)表。然而,所述以太網(wǎng)交換要求一個(gè)為本 地表提供轉(zhuǎn)發(fā)信息的主MAC地址表。相似的本地查詢(xún)表和一個(gè)主表的集合也在EP 0993156 中有描述。本發(fā)明尋求克服現(xiàn)有網(wǎng)絡(luò)遇到的問(wèn)題并且特別尋求克服網(wǎng)絡(luò)地址表限制問(wèn)題以 提供一種能夠支持好幾萬(wàn)端口的以太網(wǎng)橋。
發(fā)明內(nèi)容
本發(fā)明因此提供一種用于網(wǎng)橋、交換機(jī)、路由器、集線器或類(lèi)似裝置的多路徑網(wǎng) 絡(luò),包括大量適于連接一個(gè)或多個(gè)設(shè)備的網(wǎng)絡(luò)端口,每個(gè)設(shè)備具有一個(gè)不同的識(shí)別地址數(shù) 據(jù);大量網(wǎng)絡(luò)元件;和大量網(wǎng)絡(luò)連接交互互聯(lián)所述網(wǎng)絡(luò)元件并連接所述網(wǎng)絡(luò)元件至所述網(wǎng) 絡(luò)端口,其中所述多路徑網(wǎng)絡(luò)進(jìn)一步包括分別可尋址存儲(chǔ)元件適于存儲(chǔ)設(shè)備地址數(shù)據(jù)并且 所述多路徑網(wǎng)絡(luò)適于在大量存儲(chǔ)元件中分布大量設(shè)備地址數(shù)據(jù)。優(yōu)選地,所述存儲(chǔ)元件至少分成兩級(jí)地有層次地組織,每一層級(jí)具有大量分別可 尋址的存儲(chǔ)元件并且所述多路徑網(wǎng)絡(luò)適于在最高層級(jí)的大量存儲(chǔ)元件分布大量設(shè)備地址 數(shù)據(jù)。理想的,所述網(wǎng)絡(luò)適于存儲(chǔ)所有連接至所述網(wǎng)絡(luò)的設(shè)備的地址數(shù)據(jù)至所述最高層 級(jí)的存儲(chǔ)元件。同時(shí),一設(shè)備的所述地址數(shù)據(jù)優(yōu)選存儲(chǔ)在最高層級(jí)的一個(gè)存儲(chǔ)元件內(nèi)。所述網(wǎng)絡(luò)的單個(gè)存儲(chǔ)元件的存儲(chǔ)容量小于要存儲(chǔ)的設(shè)備地址數(shù)據(jù)量并且每一個(gè) 存儲(chǔ)元件可以形成相應(yīng)網(wǎng)絡(luò)元件的一部分。在具體實(shí)施例中所述網(wǎng)絡(luò)適于基于所述設(shè)別地址數(shù)據(jù)產(chǎn)生一個(gè)散列值(hash value)。理想地,所述網(wǎng)絡(luò)適于順序使用為相同設(shè)備地址數(shù)據(jù)產(chǎn)生不同散列值的大量散列 函數(shù)中的一個(gè)。位于最低層級(jí)的每一個(gè)存儲(chǔ)元件可以包括容納與所述設(shè)備地址數(shù)據(jù)相關(guān)的地址 信息的單個(gè)位陣列。在具體實(shí)施例中所述網(wǎng)絡(luò)適于刷新位于最高層級(jí)的存儲(chǔ)元件的內(nèi)容通 過(guò)在以預(yù)定時(shí)間間隔通信存儲(chǔ)在單個(gè)位陣列內(nèi)的地址信息至位于最高層級(jí)的存儲(chǔ)元件。所 述網(wǎng)絡(luò)還可進(jìn)一步適于用一個(gè)新的設(shè)備地址數(shù)據(jù)更新位于最高層級(jí)的至少一個(gè)存儲(chǔ)元件 當(dāng)一個(gè)具有該新設(shè)備地址數(shù)據(jù)的數(shù)據(jù)包被通過(guò)網(wǎng)絡(luò)傳輸?shù)木W(wǎng)絡(luò)端口接收時(shí)并且存儲(chǔ)在所 述單個(gè)位陣列內(nèi)的所述新設(shè)備地址數(shù)據(jù)的位被清除。所述網(wǎng)絡(luò)還可適于用單個(gè)位陣列中的 所述新設(shè)備地址數(shù)據(jù)集合存儲(chǔ)的位當(dāng)位于最高層級(jí)的一存儲(chǔ)元件的更新產(chǎn)生時(shí)。理想地,所述網(wǎng)絡(luò)適于在數(shù)據(jù)包通過(guò)網(wǎng)絡(luò)傳輸過(guò)程中僅一次讀取被網(wǎng)絡(luò)端口接收 的一個(gè)數(shù)據(jù)包的所述設(shè)備地址數(shù)據(jù)并且所述網(wǎng)絡(luò)適于在層級(jí)之間通信所述設(shè)備地址數(shù)據(jù)。此外,所述網(wǎng)絡(luò)元件還可適于在一個(gè)預(yù)定但不常見(jiàn)的時(shí)間間隔清除所述單個(gè)位陣 列內(nèi)的位。所述設(shè)備地址數(shù)據(jù)還可在一預(yù)定時(shí)間間隔之后從其相關(guān)存儲(chǔ)元件中清除。如果 所述設(shè)備地址數(shù)據(jù)存在于任一位于更高層級(jí)的存儲(chǔ)元件中所述網(wǎng)絡(luò)元件還可適于在所述設(shè)備地址數(shù)據(jù)清除之前延長(zhǎng)所述預(yù)定時(shí)間間隔。同時(shí),如果觀測(cè)到一個(gè)或多個(gè)連接至最低 層級(jí)的所述網(wǎng)絡(luò)元件的網(wǎng)絡(luò)端口設(shè)備的所述設(shè)備地址數(shù)據(jù)存在所述網(wǎng)絡(luò)元件還可適于在 所述設(shè)備地址數(shù)據(jù)清除之前延長(zhǎng)所述預(yù)定時(shí)間間隔。更特別地,所述網(wǎng)絡(luò)元件可適于從其 各自存儲(chǔ)元件清除設(shè)備地址數(shù)據(jù)當(dāng)所述設(shè)備地址數(shù)據(jù)沒(méi)存在于位于更高層級(jí)的任一存儲(chǔ) 元件內(nèi)。因此,位于最底層級(jí)的所述存儲(chǔ)元件適于指示位于最高層級(jí)存儲(chǔ)元件內(nèi)的地址數(shù) 據(jù)存在或不存在。
另一方面本發(fā)明提供一種包括如上描述的多路徑網(wǎng)絡(luò)的以太網(wǎng)橋或路由器。另一方面本發(fā)明還提供一種多路徑網(wǎng)絡(luò)中設(shè)備地址數(shù)據(jù)管理方法包括適于連接 一個(gè)或更多設(shè)備的大量網(wǎng)絡(luò)端口,每一個(gè)設(shè)備具有一個(gè)不同的識(shí)別地址數(shù)據(jù);大量網(wǎng)絡(luò)元 件;大量網(wǎng)絡(luò)鏈接交互互聯(lián)所述網(wǎng)絡(luò)元件并連接所述網(wǎng)絡(luò)元件至所述網(wǎng)絡(luò)端口 ;和大量存 儲(chǔ)元件適于儲(chǔ)存設(shè)備地址數(shù)據(jù),所述方法包括在所述為存儲(chǔ)的大量存儲(chǔ)元件中分布大量設(shè) 備地址數(shù)據(jù)。優(yōu)選地所述方法進(jìn)一步包括分層級(jí)地組織所述網(wǎng)絡(luò)元件為至少兩個(gè)層級(jí)且大量 分別可尋址存儲(chǔ)元件位于每一層級(jí)并且通過(guò)在一最高層級(jí)的大量存儲(chǔ)元件分布所述設(shè)備 地址數(shù)據(jù)的步驟。一特定設(shè)備的所述設(shè)備地址數(shù)據(jù)存儲(chǔ)在位于最高層級(jí)的一個(gè)或多個(gè)但不 是所有存儲(chǔ)元件中。更優(yōu)選地,一特定設(shè)備的所述設(shè)備地址數(shù)據(jù)僅存儲(chǔ)在位于最高層級(jí)的 一個(gè)存儲(chǔ)元件中??蛇x地,每個(gè)所述存儲(chǔ)元件形成相應(yīng)網(wǎng)絡(luò)元件的一部分。在一具體實(shí)施例中,一個(gè)散列值基于所述設(shè)備地址數(shù)據(jù)產(chǎn)生。理想地,輪流使用大 量不同的散列函數(shù)為相同設(shè)備地址數(shù)據(jù)產(chǎn)生大量不同的散列值。位于最高層級(jí)所述存儲(chǔ)元 件的內(nèi)容可以在一預(yù)定時(shí)間間隔通過(guò)通信存儲(chǔ)在所述單個(gè)位陣列內(nèi)的散列值至最高層級(jí) 的所述存儲(chǔ)元件更新??衫斫獾乇景l(fā)明內(nèi)容此處所指的設(shè)備地址數(shù)據(jù)延伸包含地址數(shù)據(jù)諸 如MAC地址和源自地址數(shù)據(jù)例如上面提及的散列值的數(shù)據(jù)。理想地,位于最高層級(jí)的至少一個(gè)存儲(chǔ)元件通過(guò)一個(gè)新設(shè)備地址數(shù)據(jù)更新當(dāng)一個(gè) 具有該新設(shè)備地址數(shù)據(jù)的數(shù)據(jù)包被通過(guò)網(wǎng)絡(luò)傳輸?shù)木W(wǎng)絡(luò)端口接收時(shí)并且存儲(chǔ)在所述單個(gè) 位陣列內(nèi)的所述新設(shè)備地址數(shù)據(jù)的位被清除。同時(shí),當(dāng)位于最高層級(jí)的存儲(chǔ)元件的更新產(chǎn) 生所述新設(shè)備地址數(shù)據(jù)存儲(chǔ)的位可以集合進(jìn)所述單個(gè)位陣列。理想地,網(wǎng)絡(luò)端口接收的數(shù)據(jù)包的所述設(shè)備地址數(shù)據(jù)僅在數(shù)據(jù)包通過(guò)網(wǎng)絡(luò)傳輸時(shí) 讀取一次并且設(shè)備地址數(shù)據(jù)散列值在層級(jí)之間通信。在一個(gè)具體實(shí)施例中目的設(shè)備地址數(shù) 據(jù)轉(zhuǎn)換為出站網(wǎng)絡(luò)端口描述符并且數(shù)據(jù)包根據(jù)所述出站端口描述符路由分配穿過(guò)網(wǎng)絡(luò)。更理想地,所述單個(gè)位陣列的位數(shù)據(jù)在一第一預(yù)定時(shí)間間隔清除并且所述設(shè)備地 址數(shù)據(jù)在一第二預(yù)定時(shí)間間隔之后從其存儲(chǔ)元件清除其中所述第一和第二預(yù)定時(shí)間間隔 可以不同。優(yōu)選地,如果設(shè)備地址數(shù)據(jù)存在于位于更高層級(jí)的任一存儲(chǔ)元件內(nèi)設(shè)備地址數(shù) 據(jù)清除之前的預(yù)定時(shí)間間隔延長(zhǎng)。同時(shí),如果連接至所述網(wǎng)絡(luò)元件的網(wǎng)絡(luò)端口的位于最低 層級(jí)的一個(gè)或多個(gè)設(shè)備觀測(cè)的設(shè)備地址數(shù)據(jù)存在設(shè)備地址數(shù)據(jù)清除之前的預(yù)定時(shí)間間隔 可以延長(zhǎng)。根據(jù)最佳實(shí)施例當(dāng)設(shè)備地址數(shù)據(jù)不存在于位于更高層級(jí)的任一存儲(chǔ)元件內(nèi)設(shè)備 地址數(shù)據(jù)從存儲(chǔ)元件清除。因此,位于最底層級(jí)的所述存儲(chǔ)元件可以用于指示位于最高層 級(jí)存儲(chǔ)元件內(nèi)的設(shè)備地址數(shù)據(jù)存在或不存在。根據(jù)本發(fā)明一最佳實(shí)施例所述大量存儲(chǔ)元件的至少一些使用地址緩存并且在一多路徑網(wǎng)中的所述設(shè)備地址數(shù)據(jù)管理方法包括一刷新步驟通過(guò)檢查更高層級(jí)地址緩存的 內(nèi)容輪流驗(yàn)證地址緩存內(nèi)的每一條目以保持所述地址緩存之間的相關(guān)性。因此,根據(jù)本發(fā)明提供的多路徑網(wǎng)絡(luò)和設(shè)備地址數(shù)據(jù)管理方法確實(shí)可擴(kuò)展由于所 述設(shè)備地址數(shù)據(jù),例如MAC地址,在多路徑網(wǎng)絡(luò)的每一網(wǎng)絡(luò)元件的大量存儲(chǔ)元件中分布。也 就是說(shuō)每一個(gè)MAC地址沒(méi)有拷貝至網(wǎng)絡(luò)內(nèi)的所有存儲(chǔ)元件。
前述和其它目的和優(yōu)點(diǎn)將接合附圖通過(guò)以下本發(fā)明的一具體實(shí)施例的詳細(xì)描述 得到更好的理解,附圖中圖1示意性地示出了一以太網(wǎng)橋其包括一執(zhí)行根據(jù)本發(fā)明的分布地地址查詢(xún)表 的多路徑網(wǎng)絡(luò);圖2是用于圖1的以太網(wǎng)橋的根據(jù)本發(fā)明的具有3個(gè)階段的多路徑網(wǎng)絡(luò)的示意 圖;圖3示出了圖2網(wǎng)絡(luò)的Clos網(wǎng)絡(luò)圖;圖4是根據(jù)本發(fā)明用于圖1的以太網(wǎng)橋的MAC地址查詢(xún)表的副表一種布置的示意 圖;圖5是根據(jù)本發(fā)明的通過(guò)網(wǎng)絡(luò)傳輸數(shù)據(jù)的一種方法的流程圖;圖6是根據(jù)本發(fā)明拷貝條目至地址表的方法的流程圖;并且圖7是根據(jù)本發(fā)明從地址表轉(zhuǎn)換條目的流程圖。
具體實(shí)施例方式下述以太網(wǎng)網(wǎng)橋或路由器引入一個(gè)附加的協(xié)議層,此處指的是“封裝 層”(Encapsulation Layer),其處于標(biāo)準(zhǔn)OSI模型的物理層和數(shù)據(jù)鏈路層之間,能夠封裝 網(wǎng)絡(luò)層和數(shù)據(jù)鏈路層的協(xié)議數(shù)據(jù)單元。由上所述中間站的定義延伸至包括轉(zhuǎn)發(fā)類(lèi)似此處所 說(shuō)的封裝層的前述附加協(xié)議層封裝的數(shù)據(jù)包。此處提到的這種類(lèi)型的站是網(wǎng)橋構(gòu)架或網(wǎng)絡(luò) 構(gòu)架。一多端口網(wǎng)橋結(jié)構(gòu)可通過(guò)一系列通過(guò)網(wǎng)橋結(jié)構(gòu)交換鏈接(BFSLs)互聯(lián)的網(wǎng)橋結(jié)構(gòu)交 換(BFSs)來(lái)實(shí)現(xiàn)。在一 PDU中完成封裝,也是英國(guó)專(zhuān)利申請(qǐng)?zhí)?807937.8共同的未決問(wèn) 題,此處引入該專(zhuān)利文獻(xiàn)全文內(nèi)容作為參考,并且該英國(guó)專(zhuān)利申請(qǐng)?zhí)峒盀椤敖Y(jié)構(gòu)協(xié)議數(shù)據(jù)單 元,,(FPDU),避免了修改下層PDU數(shù)據(jù)幀報(bào)頭或報(bào)尾的需求,從而移出了總體的循環(huán)冗余碼 校驗(yàn)(CRC)或其它基于數(shù)據(jù)幀內(nèi)容的傳遞信息。一 FPDU用來(lái)實(shí)現(xiàn)數(shù)據(jù)傳輸認(rèn)證和流控制 機(jī)制。一 FPDU進(jìn)一步用來(lái)提供許多其它吸引人的特性對(duì)于大型,高性能,可升級(jí)的以太網(wǎng) 絡(luò),例如本發(fā)明的地址提取能力。圖1示出的以太網(wǎng)橋或路由器1可以連接至大量的分離的以太網(wǎng)站2并執(zhí)行封裝 網(wǎng)絡(luò)層和數(shù)據(jù)鏈路層的PDU進(jìn)一 FPDU。所述以太網(wǎng)橋1大體上包括連接有大量以太網(wǎng)端口 3(圖中為了清楚只示出了其中一個(gè))的一多路徑網(wǎng)絡(luò)10,其中每一端口單獨(dú)連接至一以太 網(wǎng)站2。所述以太網(wǎng)端口 3按通常設(shè)計(jì)并且每一個(gè)端口包括與以太網(wǎng)站建立數(shù)據(jù)連接的裝 置、一接收裝置或輸入裝置4以實(shí)現(xiàn)以太網(wǎng)接收功能、一傳輸裝置或輸出裝置5以實(shí)現(xiàn)以太 網(wǎng)傳輸功能。 所述以太網(wǎng)端口 3連接至提供傳統(tǒng)功能例如數(shù)據(jù)包緩沖6的一網(wǎng)絡(luò)界面7。然而,所述網(wǎng)絡(luò)界面還包括一以太網(wǎng)PDU封裝器8,該封裝器連接上述網(wǎng)絡(luò)界面7至網(wǎng)絡(luò)10的入站端口(圖中未示出)并且一以太網(wǎng)PDU解封裝器9連接至網(wǎng)絡(luò)10的出站端口(圖中未 示出)返回至上述以太網(wǎng)端口 3。所述以太網(wǎng)PDU封裝器8執(zhí)行封裝層協(xié)議從而產(chǎn)生上述 FPDU0理想的所述以太網(wǎng)橋1的每一端口 3均分別具有相應(yīng)的網(wǎng)絡(luò)界面7、以太網(wǎng)PDU封裝 器8和以太網(wǎng)PDU解封裝器9。上述網(wǎng)絡(luò)10是一專(zhuān)有的多路徑網(wǎng)絡(luò)例如圖2示出的那種,包括大量互聯(lián)網(wǎng)絡(luò)元件 18此處為網(wǎng)橋結(jié)構(gòu)交換(BFSs)通過(guò)網(wǎng)絡(luò)鏈接17按網(wǎng)橋結(jié)構(gòu)交換鏈接(BFSLs)形式互聯(lián)。 每一 BFSL17為優(yōu)選的雙向(全雙工)連接。沿每一方向傳遞的數(shù)據(jù)和認(rèn)證以及沿一方向 的數(shù)據(jù)流控制狀態(tài)數(shù)據(jù)可以和網(wǎng)橋結(jié)構(gòu)交換鏈接反向傳遞的數(shù)據(jù)多路復(fù)用。示出的例子是 小型網(wǎng)絡(luò)其中每個(gè)BFS 18僅有6個(gè)端口和2級(jí)交換第一和第三交換狀態(tài)形成第一級(jí)交換 并且第二交換狀態(tài)形成第二級(jí)交換。圖3中,相同的小型網(wǎng)絡(luò)按Clos網(wǎng)絡(luò)形式圖釋不同的 交換階段如何關(guān)聯(lián)至不同的交換層級(jí)。一個(gè)BFS 18通常具有至少16個(gè)端口并且對(duì)于大型 網(wǎng)絡(luò)需要更多的交換層級(jí)。典型地,對(duì)于一個(gè)具有512個(gè)端口的以太網(wǎng)橋構(gòu)建有16個(gè)端口 BFS 18,64個(gè)交換可被用于第一交換層級(jí)和32個(gè)交換位于第二交換層級(jí),同時(shí)對(duì)于一個(gè)具 有大約48000個(gè)端口并使用更多數(shù)量交換的以太網(wǎng)橋,4700個(gè)BFS 18可能被使用在4個(gè)交 換層級(jí)中。圖2示出的例子中第一和第三階段BFS 18指的是邊緣BFS因?yàn)樗鼈兾挥诰W(wǎng)絡(luò) 的邊緣,即,網(wǎng)絡(luò)10輸入FPDU可見(jiàn)的第一交換就是所述網(wǎng)絡(luò)的第一層級(jí)。處于邊緣之后的 BFS 18就是叫做中間BFS并且在圖2中包括第二狀態(tài)也就是第二交換層級(jí)。雖然圖2中示 出的具有數(shù)據(jù)流方向的BFSL17,該方向僅為圖示目的而提供。實(shí)際上當(dāng)FPDU沿圖釋網(wǎng)絡(luò)兩 個(gè)方向傳輸時(shí)任意和所有的端口 A-Z在不同時(shí)候扮演入站或出站端口功能。此處描述的多路徑網(wǎng)絡(luò)和MAC地址管理方法基于分布的網(wǎng)絡(luò)地址查詢(xún)表的原理。 如之前提及,傳統(tǒng)地所述MAC查詢(xún)表是一個(gè)位于網(wǎng)絡(luò)的每個(gè)邊緣和每個(gè)中間站的單一完全 個(gè)體。這可以作為具有接近所述以太網(wǎng)端口的本地MAC表緩存的單個(gè)主要MAC表執(zhí)行。通 過(guò)對(duì)比,此處描述的網(wǎng)絡(luò)使用一個(gè)分布的MAC地址表,由此所述MAC地址表以各自可尋址副 表形式拆分為大量個(gè)體存儲(chǔ)在相應(yīng)的大量存儲(chǔ)元件中由此單個(gè)MAC地址分布在整個(gè)網(wǎng)絡(luò) 中任一存儲(chǔ)元件僅存儲(chǔ)所有活動(dòng)MAC地址數(shù)的一個(gè)副組并且副組中的MAC地址集合與其它 副組不同。由于沒(méi)有單個(gè)點(diǎn)條目存入主MAC地址這種方法固有可擴(kuò)展。由于整個(gè)活動(dòng)MAC地址數(shù)量分布在大量副表中的事實(shí),每個(gè)MAC地址表的副表可 以保持較小例如32000地址條目。這也就意味著每一個(gè)存儲(chǔ)元件比較小,對(duì)比傳統(tǒng)MAC地 址存儲(chǔ),并且在其自身上一個(gè)存儲(chǔ)元件不能容納所述網(wǎng)絡(luò)的所有活動(dòng)MAC地址。然而當(dāng)單 個(gè)存儲(chǔ)元件集合起來(lái),就確實(shí)可以存儲(chǔ)網(wǎng)絡(luò)的所有活動(dòng)MAC地址并且由此最小化數(shù)據(jù)包泛 濫網(wǎng)絡(luò)的需求。理想地每個(gè)副表存儲(chǔ)元件與網(wǎng)絡(luò)10的相應(yīng)的BFS 18位于同一地點(diǎn)。如果大型網(wǎng) 絡(luò)10需要容納更多端口,就需要使用更多BFS 18以配合增加的交換需求。隨著B(niǎo)FS 10的 數(shù)量增加副表存儲(chǔ)元件也相應(yīng)增加。由此該網(wǎng)絡(luò)的所述分布MAC地址查詢(xún)表也就確實(shí)擴(kuò)展 了。當(dāng)然網(wǎng)絡(luò)中副表存儲(chǔ)元件替代布置和位置應(yīng)設(shè)想為對(duì)每個(gè)多路徑網(wǎng)絡(luò)最方便。在圖4中BFS 18其中一個(gè)的結(jié)構(gòu)以放大,但是簡(jiǎn)化的,詳細(xì)地示出。這樣BFS18 包括一個(gè)交叉開(kāi)關(guān)22其輸入經(jīng)由履行FPDU緩沖20、MAC表處理器21和MAC地址副表存儲(chǔ) 元件23的手段,以下將非常詳細(xì)地描述這些手段的運(yùn)作。
如圖3所示,MAC地址副表組織為兩個(gè)層級(jí)以在多層級(jí)上執(zhí)行緩沖。當(dāng)然,副表可 以組織為超過(guò)3個(gè)或更多緩沖級(jí)別依賴(lài)于可用的存儲(chǔ)源、連接至網(wǎng)絡(luò)的電子設(shè)備的數(shù)量以 及活動(dòng)MAC地址的數(shù)量。理想地,第一層級(jí)緩沖尺寸較小這樣第一級(jí)緩存MAC地址查詢(xún)表比 較快(非常低的延遲)并且能夠跟上小型網(wǎng)絡(luò)中高速率帶來(lái)的小尺寸但是頻繁數(shù)據(jù)要求。 理論上第二級(jí)緩存比第一級(jí)緩存尺寸大得多。第二級(jí)緩存具有更高的讀取延遲但是計(jì)算相 應(yīng)的帶寬減小更多數(shù)量的數(shù)據(jù)提供給第二級(jí)緩存存儲(chǔ)器即使這些數(shù)量的數(shù)據(jù)分布于組織 在相同層級(jí)的大量單獨(dú)可尋址MAC副表中。從第一級(jí)緩存至第二級(jí)緩存的數(shù)據(jù)鏈接通常集 合為一個(gè)MAC表?xiàng)l目的尺寸。當(dāng)使用了第三或更高級(jí)緩存,這些可能再次跟隨該趨勢(shì)并且 將會(huì)比第二級(jí)緩存更大。當(dāng)然,可理解的,MAC地址管理方法學(xué)可以等同應(yīng)用于與圖3所示 Clos網(wǎng)絡(luò)不同的網(wǎng)絡(luò)拓?fù)浣Y(jié)構(gòu)。在圖1的以太網(wǎng)橋中網(wǎng)絡(luò)端口界面7包括一個(gè)MAC地址查詢(xún)表以轉(zhuǎn)譯輸入以太網(wǎng) 數(shù)據(jù)幀的目的MAC地址為網(wǎng)絡(luò)構(gòu)架10的出站端口。不像傳統(tǒng)網(wǎng)橋,其MAC表查詢(xún)?cè)谕ㄟ^(guò)網(wǎng) 絡(luò)的每一中繼段均要執(zhí)行,根據(jù)此處描述的以太網(wǎng)橋或路由器這種在目的MAC地址和網(wǎng)絡(luò) 出站端口之間的轉(zhuǎn)譯僅在輸入網(wǎng)絡(luò)時(shí)執(zhí)行一次。這樣每個(gè)網(wǎng)絡(luò)端口的邊緣本地MAC地址表 當(dāng)作一個(gè)第一級(jí)緩存。中間BFS的MAC查詢(xún)表作為第二級(jí)、第三級(jí)等等緩存。最好如圖3所示,每個(gè)邊緣BFS直接連接至大量中間BFS,圖3中有三個(gè)中間BFS。 為了制造中簡(jiǎn)化和可靠,理想地位于第二級(jí)緩存的每個(gè)MAC地址表尺寸與第一級(jí)緩存的 MAC地址表相同。然而,由于每個(gè)第一級(jí)緩存連接至大量單獨(dú)可尋址第二級(jí)緩存,在圖3中 三個(gè)緩存,第二級(jí)緩存可以組織這樣它們看起來(lái)像一個(gè)單個(gè)的三倍于第一級(jí)緩存表大小的 MAC表。無(wú)疑的當(dāng)網(wǎng)絡(luò)在第二層級(jí)使用更多MAC表例如8個(gè)表,則位于第二級(jí)緩存的MAC表 8倍于第一級(jí)緩存大小。由之前提及第一級(jí) MAC 副表 STl. 1,ST1. 2,STl. 3,SST1. 4,STl. 5 和 STl. 6 中的每 一個(gè)均關(guān)聯(lián)于一個(gè)相應(yīng)的邊緣BFS 18。這些邊緣BFS 18的每一個(gè)可以通過(guò)特定網(wǎng)絡(luò)端口 接收并傳輸數(shù)據(jù)包,例如MAC副表STl. 1形成與網(wǎng)絡(luò)端口 A、B和C通信的邊緣BFS的一部 分并且MAC副表STl. 2形成與網(wǎng)絡(luò)端口 D、E、F通信的邊緣BFS的一部分,等等。也就是說(shuō), 邊緣BFS的每一個(gè)可以進(jìn)一步以MAC副表ST2. 1、ST2. 2和ST2. 3的形式與第二級(jí)緩存通 信。對(duì)于本領(lǐng)域技術(shù)人員來(lái)說(shuō)顯然地副表的數(shù)量、緩存級(jí)別數(shù)量和BFS之間的鏈接數(shù)量不 會(huì)被規(guī)定為限制。同時(shí),可理解地所有中間BFS 18需要提供有副表存儲(chǔ)元件23或即使提 供,不是BFS的所有存儲(chǔ)元件需要使用作為MAC地址管理協(xié)議的一部分。然而,理想地要求 位于網(wǎng)絡(luò)最高級(jí)緩存的存儲(chǔ)元件23的數(shù)量應(yīng)當(dāng)至少充足以存儲(chǔ)網(wǎng)絡(luò)所有的活動(dòng)MAC地址。當(dāng)一個(gè)具有位置源MAC地址的以太網(wǎng)幀抵達(dá)一個(gè)網(wǎng)絡(luò)端口 MAC地址表23創(chuàng)建一 個(gè)條目??傮w上,網(wǎng)絡(luò)端口的源MAC地址轉(zhuǎn)譯理想地存儲(chǔ)在最高層級(jí)BFS 18中這樣當(dāng)其它 邊緣BFS 18作為目的地MAC地址查詢(xún)表時(shí)就能找到它們。副表中最高層級(jí)BFS的MAC地址 條目因此包括網(wǎng)絡(luò)中所有的活動(dòng)MAC地址這樣,探索之后,端口的一個(gè)MAC地址轉(zhuǎn)譯對(duì)所有 網(wǎng)絡(luò)端口可用。為了減小與最高級(jí)緩存級(jí)別MAC地址副表的MAC地址轉(zhuǎn)譯通信量(所謂的 相關(guān)通信量),一個(gè)本地源MAC地址學(xué)習(xí)率限制表(LRLT)也保持關(guān)聯(lián)至每個(gè)邊緣BFS。所 述LRLT包含已經(jīng)從邊緣BFS至最高級(jí)緩存級(jí)BFS18通信的源MAC地址。本地源MAC地址 優(yōu)選的以單個(gè)位陣列(圖中未示出)來(lái)實(shí)現(xiàn)陣列中設(shè)備的每個(gè)源MAC地址與邊緣BFS以單 位索引通信。當(dāng)一個(gè)以太網(wǎng)幀抵達(dá)網(wǎng)絡(luò)的入站端口所述以太網(wǎng)幀的源MAC地址輸入一個(gè)散
12列函數(shù)以形成單位地址。該位地址隨后用于索引源位陣列以檢查所述數(shù)據(jù)幀的源MAC地址 是否已經(jīng)寫(xiě)入最高級(jí)BFS 18中。如果在源位陣列中連接位清除,也就是說(shuō)源MAC地址沒(méi)有寫(xiě)入最高級(jí)緩存,則所 述位寫(xiě)入并集合進(jìn)源位陣列并發(fā)送一個(gè)消息至最高級(jí)BFS以指示一個(gè)新源地址被接收。如 果連接位已經(jīng)集合進(jìn)源位陣列則進(jìn)一步的動(dòng)作要求考慮MAC地址管理。由于位陣列,對(duì)于 非常多源MAC地址數(shù)量一個(gè)相對(duì)小的RAM能夠保持速率限制狀態(tài)。源MAC地址數(shù)量能保持 大體上與陣列中的位數(shù)量成比例。期望每個(gè)充滿(mǎn)的MAC表?xiàng)l目要求大約80位狀態(tài)由此該 位地址模式取得源地址密度的一個(gè)80倍改進(jìn)。一單個(gè)LRLT能支持許多本地端口。當(dāng)前每 個(gè)LRLT期望支持250000個(gè)源MAC地址。所述LRLT設(shè)計(jì)為減小整體MAC地址轉(zhuǎn)譯通信量 其保持發(fā)生在最高級(jí)緩存的MAC地址轉(zhuǎn)譯。然而所述LRLT應(yīng)當(dāng)不會(huì)完全移除MAC地址轉(zhuǎn) 譯通信量。更新速率應(yīng)當(dāng)接近10倍的發(fā)生于最高級(jí)緩存內(nèi)MAC地址轉(zhuǎn)譯速率。分布穿過(guò)網(wǎng)絡(luò)10所有活動(dòng)MAC地址的存儲(chǔ)依賴(lài)于一個(gè)高效的MAC地址管理協(xié)議 以提取并寫(xiě)入MAC地址至并從位于更高緩沖級(jí)的分布的副表。根據(jù)此處描述的網(wǎng)絡(luò)所述 MAC地址管理協(xié)議形成封裝層協(xié)議的一部分,其運(yùn)行將在以下描述。一種穿過(guò)執(zhí)行封裝層協(xié)議網(wǎng)絡(luò)構(gòu)架10傳輸數(shù)據(jù)的方法在圖5中示出。封裝發(fā)生 在以太網(wǎng)橋10的入口。通過(guò)以太網(wǎng)站2傳輸?shù)囊粋€(gè)以太網(wǎng)PDU步驟S5. 1在所述以太網(wǎng)橋 1的網(wǎng)絡(luò)端口 3被接收并經(jīng)由接收設(shè)備4通信,其扮演傳統(tǒng)以太網(wǎng)接收功能,至網(wǎng)絡(luò)界面7 和特別的所述以太網(wǎng)PDU封裝器8。所述封裝器8附加步驟S5. 2 一個(gè)FPDU報(bào)頭至所述數(shù) 據(jù)鏈路層數(shù)據(jù)幀。所述封裝器8還從以太網(wǎng)PDU內(nèi)提取源和目的MAC地址信息并轉(zhuǎn)譯目的地MAC地 址信息成目的地描述符步驟S5. 3其標(biāo)識(shí)網(wǎng)絡(luò)出站端口為所述目的地MAC地址的請(qǐng)求和由 此穿過(guò)網(wǎng)絡(luò)構(gòu)架10的路由。目的地MAC地址轉(zhuǎn)譯成目的地描述符的所述轉(zhuǎn)譯使用保持在 分布的MAC地址副表內(nèi)的數(shù)據(jù)執(zhí)行。目的地描述符使用決定自MAC地址查詢(xún)表的一個(gè)出站 端口值決定,其中端口號(hào)與經(jīng)由每個(gè)端口連接的MAC地址經(jīng)相關(guān)連。從MAC地址查詢(xún)表提 取該數(shù)據(jù)并且使用分布的MAC地址表將在以下詳細(xì)討論。目的地址描述符使用分布MAC表 獲得然后加入FDPU的報(bào)頭。所述FPDU隨后傳輸步驟S5. 4從網(wǎng)絡(luò)構(gòu)架10的入站端口經(jīng)由大量網(wǎng)絡(luò)構(gòu)架元件 18穿過(guò)網(wǎng)絡(luò)10至網(wǎng)絡(luò)的一個(gè)出站端口。在網(wǎng)絡(luò)10的出站端口所述FPDU信息通過(guò)以太網(wǎng) PDU解封裝器9剝離步驟S5. 5這樣僅留下原始以太網(wǎng)PDU。隨后未修飾的以太網(wǎng)PDU發(fā)送 步驟S5. 6至一個(gè)該P(yáng)DU請(qǐng)求目的地的以太網(wǎng)站。因此,協(xié)議和機(jī)制允許數(shù)據(jù)通過(guò)網(wǎng)絡(luò)10 在網(wǎng)絡(luò)內(nèi)傳輸完成并且對(duì)于入口和出口的以太網(wǎng)站均不可見(jiàn)。FPDU還可以通過(guò)其它幾種不同的路由機(jī)制傳過(guò)網(wǎng)絡(luò)這些機(jī)制可能影響目的地描 述符的細(xì)節(jié)內(nèi)容。這些細(xì)節(jié)處于本發(fā)明范圍之外。例如,所述FPDU可以動(dòng)態(tài)路由穿過(guò)網(wǎng)絡(luò) 該例子中數(shù)據(jù)包次序被請(qǐng)求。該網(wǎng)絡(luò)中數(shù)據(jù)包次序管理也是英國(guó)專(zhuān)利申請(qǐng)?zhí)?808862. 7共 同待決目標(biāo)。然而,以最大化來(lái)自MAC地址管理系統(tǒng)由于一個(gè)通過(guò)網(wǎng)絡(luò)傳輸?shù)腇PDU的目的 地MAC地址不會(huì)在每一個(gè)BFS讀取的便利。反而,通過(guò)網(wǎng)絡(luò)界面7增加至以太網(wǎng)數(shù)據(jù)幀封 裝的目的地描述符可以用于決定向前通過(guò)網(wǎng)絡(luò)傳輸所述FPDU。理想地,所述目的地描述符 和,任意地,任何與FPDU相關(guān)的次序請(qǐng)求僅使用很小量的狀態(tài)告知在每一個(gè)BFS上的下一 BFSL選擇。當(dāng)所述多路徑網(wǎng)絡(luò)安排執(zhí)行FPDU的動(dòng)態(tài)路由就低延遲而言的便利和高帶寬最大化。然而,MAC地址管理系統(tǒng)并不限于動(dòng)態(tài)路由或此處圖示的網(wǎng)絡(luò)結(jié)構(gòu)。整個(gè)以太網(wǎng)PDU的FPDU封裝能極大增加通過(guò)網(wǎng)絡(luò)構(gòu)架傳輸以太網(wǎng)數(shù)據(jù)幀的速度, 并減小延遲,因?yàn)橥ㄟ^(guò)網(wǎng)絡(luò)傳輸時(shí)以太網(wǎng)PDU內(nèi)容不需要任何形式的檢查或修飾。因此處 于以太網(wǎng)絡(luò)邊緣的網(wǎng)橋可以當(dāng)作一個(gè)單獨(dú)實(shí)體。顯得像一個(gè)單獨(dú)實(shí)體意思是兩個(gè)端點(diǎn)之間 僅需要發(fā)生一次會(huì)話以使這些終端點(diǎn)的MAC地址對(duì)系統(tǒng)中其它所有端點(diǎn)可見(jiàn)。傳統(tǒng)以太網(wǎng) 可能需要上千個(gè)分隔的傳統(tǒng)以太網(wǎng)橋以組件一個(gè)小尺寸網(wǎng)絡(luò)并且在每個(gè)中繼段必須許多 會(huì)話從傳統(tǒng)網(wǎng)橋至傳統(tǒng)網(wǎng)橋,導(dǎo)致網(wǎng)絡(luò)重復(fù)泛播。更重要的,封裝層協(xié)議允許附加的傳輸控制并且網(wǎng)絡(luò)構(gòu)架基礎(chǔ)結(jié)構(gòu)的使用以為網(wǎng) 絡(luò)地址查詢(xún)表提供一個(gè)分布的存儲(chǔ)解決方案。封裝層協(xié)議優(yōu)選包括控制令牌的使用。這種令牌伴隨FPDU在網(wǎng)絡(luò)BFSL上多路復(fù) 用。也就是說(shuō),控制令牌允許中斷一個(gè)正在通過(guò)網(wǎng)絡(luò)傳輸過(guò)程中的FPDU的報(bào)文。因此以太 網(wǎng)PDU的封裝還通過(guò)允許控制令牌插入封裝的以太網(wǎng)PDU以改進(jìn)控制令牌的傳輸延遲。一 個(gè)大型PDU可以花費(fèi)幾微秒傳輸。允許令牌短暫地中斷封裝的以太網(wǎng)PDU僅對(duì)FPDU傳輸 時(shí)間有很小的影響但是將令牌傳輸時(shí)間從許多毫秒減小至十來(lái)納秒。本發(fā)明的內(nèi)容中控制令牌興趣的特定功能是在獲取地址轉(zhuǎn)譯中控制令牌的使用。 當(dāng)然,所述控制令牌還可以使用在其它網(wǎng)絡(luò)管理中,例如擁塞管理和傳輸認(rèn)證。更進(jìn)一步, 這種控制令牌可以從一個(gè)或兩個(gè)字令牌至五個(gè)或更多個(gè)字令牌之間變化依賴(lài)于所述控制 功能的需求。在一個(gè)大型網(wǎng)絡(luò)中一個(gè)FPDU將不得不穿過(guò)許多鏈接。每次所述FPDU抵達(dá)一個(gè)新 BFS從所述BRS的出站端口必須很快從路由信息里決定。由之前提及,對(duì)于以太網(wǎng)協(xié)議所述 路由信息保存在MAC地址的第二層或IP地址的第三次層中并且所述轉(zhuǎn)譯過(guò)程很復(fù)雜且能 極大增加路由延遲。封裝允許MAC地址或IP地址轉(zhuǎn)譯在較少的場(chǎng)合執(zhí)行并且理想地僅在 每個(gè)FPDU穿過(guò)網(wǎng)絡(luò)時(shí)執(zhí)行一次。由之前提及,分布的MAC地址查詢(xún)表需要填充以啟用MAC地址轉(zhuǎn)譯成出站端口號(hào)。 所述填充和刷新方法在圖6中示出。由之前描述,一個(gè)數(shù)據(jù)幀通過(guò)以太網(wǎng)站2傳輸在以太 網(wǎng)橋的網(wǎng)絡(luò)端口 3接收步驟S6. 1。源MAC地址從數(shù)據(jù)幀讀出并且一個(gè)散列函數(shù)產(chǎn)生步驟 S6. 2。所述散列函數(shù)對(duì)照邊緣站18的LRLT的內(nèi)容檢查步驟S6. 3以發(fā)現(xiàn)是否該源MAC地 址存在與最高級(jí)BFS18的表內(nèi)。如果存儲(chǔ)的位集合存在則數(shù)據(jù)幀的封裝繼續(xù)同時(shí)一個(gè)目的 地描述符附加進(jìn)FPDU的報(bào)頭步驟S6. 4基于該目的地MAC地址,以下將對(duì)其做更詳細(xì)的描 述。如果存儲(chǔ)位被清除則該位寫(xiě)入LRLT的集合步驟S6. 6并且一個(gè)信息發(fā)往最高級(jí) BFS 18,以一個(gè)控制令牌的形式,具有新源MAC地址詳細(xì)信息然后拷貝步驟S6. 5至最高級(jí) 緩存級(jí)的MAC副表中的一個(gè)其能被發(fā)現(xiàn)場(chǎng)合當(dāng)其它邊緣BFS 18將作為目的地MAC地址查 詢(xún)表時(shí)。一旦該位存入LRLT中設(shè)為新源MAC地址,數(shù)據(jù)幀封裝繼續(xù)將一目的地描述符附加 進(jìn)FPDU報(bào)頭部分步驟S6. 4基于目的地MAC地址。為了確保位于最高級(jí)緩存級(jí)的副表中的MAC地址代表活動(dòng)地址使用一個(gè)傳統(tǒng)的 過(guò)時(shí)退出過(guò)程由此在一個(gè)給定時(shí)間段內(nèi)沒(méi)有連接的MAC地址從位于最高緩存級(jí)的副表中 移除。所述時(shí)間段可以是幾分鐘或減小至幾秒鐘在使用管理代理管理網(wǎng)絡(luò)的場(chǎng)合。類(lèi)似的, 位于邊緣BFS的LRLT中的位信息也在一個(gè)常規(guī)但是不頻繁的時(shí)間間隔清除。優(yōu)選的,LRLT
14中所有的位信息在4至10倍于位于最高級(jí)緩存級(jí)的分布MAC表?xiàng)l目的通常過(guò)時(shí)時(shí)間段內(nèi) 清除。由于每次LRLT清除時(shí)最高級(jí)緩存級(jí)副表將接收更新活動(dòng)源MAC地址并且一個(gè)活動(dòng) 源MAC地址重新被網(wǎng)絡(luò)端口發(fā)現(xiàn)這一過(guò)程幫助進(jìn)一步減小相關(guān)通信量。偶爾散列函數(shù)為兩個(gè)不同MAC地址產(chǎn)生的散列值會(huì)相同。這種情況下兩個(gè)MAC地 址將連接位陣列中相同的位。由于第一 MAC地址已經(jīng)將該位集合進(jìn)所述陣列這將阻止學(xué)習(xí) 位于最高級(jí)緩存的第二 MAC地址。通過(guò)連續(xù)改變所述散列函數(shù)用于連接陣列中的位來(lái)避免 這一問(wèn)題。每次所述散列函數(shù)改變一個(gè)完全不同集合比熱將連接每個(gè)MAC地址。兩個(gè)特定 MAC地址在一個(gè)單散列函數(shù)中連接相同位的可能性非常高。在散列函數(shù)改變之后兩個(gè)相同 MAC地址連接相同位的可能性極小。相繼使用大量不同散列函數(shù)所有設(shè)備MAC地址將有規(guī) 律在所述位陣列地找到一個(gè)唯一的位并且由此將具有一個(gè)學(xué)習(xí)信息發(fā)往最高級(jí)緩存。優(yōu)選 的,所述散列函數(shù)為每一個(gè)清除位陣列中所有位的完整循環(huán)改變??截愒碝AC地址至最高級(jí)緩存級(jí)副表使用另一個(gè)源MAC地址散列函數(shù)實(shí)現(xiàn)。這是 一個(gè)與用于連接所述位陣列中位不同的哈希函數(shù)(散列函數(shù))。該散列函數(shù)將源MAC地址 關(guān)聯(lián)至位于最高級(jí)緩存的BFS18的許多MAC副表其中的一個(gè)。所述散列函數(shù)選擇為通過(guò)位 于最高級(jí)緩存的BFS副表均勻分布地址數(shù)據(jù)。該散列值形成地址為傳統(tǒng)穿過(guò)網(wǎng)絡(luò)間隔路由 將源MAC地址和源入站端口號(hào)或源MAC指向最高級(jí)緩存級(jí)的源MAC填充請(qǐng)求(SMFR)。路由 值(在該例子中為散列值)與上層和低層邊界相比較以選擇MAC表源填充請(qǐng)求應(yīng)當(dāng)傳來(lái)的 輸出端口。整個(gè)散列值均勻分布于最高級(jí)緩存BFS副表之間。在一個(gè)小型網(wǎng)絡(luò)中具有較少 數(shù)量的最高級(jí)緩存并且在該例子中每個(gè)將存儲(chǔ)大量最高級(jí)緩存散列值以完全覆蓋整個(gè)散 列值的所有號(hào)碼空間。在一個(gè)非常大的網(wǎng)絡(luò)中將具有上千最高級(jí)緩存并且因此每個(gè)將僅需 要接收幾個(gè)散列值的源MAC地址轉(zhuǎn)譯。在所有場(chǎng)合每個(gè)散列值通常僅路由至一個(gè)定級(jí)BFS 的MAC副表。很重要的是整個(gè)網(wǎng)絡(luò)使用相同散列函數(shù)。這保證一個(gè)特定MAC地址一直在相 同地方發(fā)現(xiàn),不管最初請(qǐng)求傳輸在哪里發(fā)出。使用傳統(tǒng)間隔路由還使得地址轉(zhuǎn)譯過(guò)程容忍BFSL上的錯(cuò)誤。如果網(wǎng)絡(luò)具有一個(gè) 如圖3所示的Clos配置則一個(gè)替代路由可能對(duì)于最頂級(jí)BFS的MAC副表可用。當(dāng)間隔路 由機(jī)制開(kāi)始試圖發(fā)送SMFR至一個(gè)錯(cuò)誤的或未連接的BFSL則簡(jiǎn)單發(fā)送所述SMFR至另一個(gè) 不是SMFR抵達(dá)的BFSL將可能允許所述SMFR抵達(dá)需求的頂級(jí)BFS的MAC副表。圖7更詳細(xì)地示出了目的地描述符圖5的步驟S5. 3如何從所述分布的MAC地址 獲取。當(dāng)一個(gè)數(shù)據(jù)幀抵達(dá)入站端口步驟S7. 1并且目的地MAC地址從所述數(shù)據(jù)幀讀出步驟 S7. 2。一個(gè)MAC地址查詢(xún)表由產(chǎn)生散列函數(shù)從該數(shù)據(jù)幀的目的地MAC地址導(dǎo)出來(lái)實(shí)現(xiàn)。MAC 地址處理器21 (圖4)接收所述散列函數(shù)并且比較該值與那些存儲(chǔ)在MAC副表存儲(chǔ)元件23 內(nèi)的值以尋找匹配步驟S7. 3。當(dāng)匹配被發(fā)現(xiàn)時(shí)所述目的地MAC地址關(guān)聯(lián)至傳輸至目的地 MAC地址的該數(shù)據(jù)幀請(qǐng)求的網(wǎng)絡(luò)的出站端口號(hào)并且通信至封裝器8(圖1)。所述封裝器8 隨后產(chǎn)生一個(gè)包括出站端口號(hào)和任何附加信息的目的地描述符,例如優(yōu)先級(jí),與所述數(shù)據(jù) 幀穿過(guò)網(wǎng)絡(luò)的路由相關(guān)并且該目的地描述符添加至該數(shù)據(jù)幀的封裝步驟S7. 4。如果沒(méi)有匹配在邊緣BFS18的副表存儲(chǔ)元件23中被發(fā)現(xiàn)則新散列函數(shù)基于目的 地MAC地址用于選擇一個(gè)連接以尋求一個(gè)相關(guān)的出站端口號(hào)。邊緣BFS18發(fā)送一個(gè)小的, 地延遲信息至下一個(gè)更高級(jí)BFS請(qǐng)求查詢(xún)步驟S7. 5。下一更高級(jí)BFS18執(zhí)行一個(gè)查詢(xún)并且 如果還沒(méi)有發(fā)現(xiàn)匹配且有一個(gè)更高級(jí)BFS 18的步驟S7. 6該步驟重復(fù)執(zhí)行的步驟S7. 7和S7.8。如果最高級(jí)BFS沒(méi)有返回一個(gè)匹配則通信經(jīng)由逐漸降低層級(jí)BFS 18返回入站端口 的步驟S7.9直到抵達(dá)邊緣BFS。所述FPDU則泛播至所有其它端口步驟S7. 10。如果在更高級(jí)別BFS 18發(fā)現(xiàn)一個(gè)匹配則該條目返回抵達(dá)與BFS接收的請(qǐng)求相同 的鏈接。所述條目寫(xiě)入每個(gè)BFS18的副表經(jīng)過(guò)步驟S7.ll和S7.12。通過(guò)這種方式最常使 用的目的地MAC地址將對(duì)于常規(guī)接收試圖發(fā)往這些目的地址的數(shù)據(jù)幀且能最快速連接至 所述封裝器8的單個(gè)邊緣BFS查詢(xún)可用。另一方面,最不常用的MAC地址將仍能發(fā)現(xiàn)但是 更遠(yuǎn)離封裝器8。應(yīng)當(dāng)注意,雖然,Mac地址管理系統(tǒng)防止目的地MAC在最低緩存級(jí)別過(guò)度 寫(xiě)入源MAC地址。所述源MAC地址收到保護(hù)免于過(guò)渡寫(xiě)入但能過(guò)時(shí)退出,如之前描述。消息形式的控制令牌包含以最高級(jí)BFS 18為目的的新源MAC地址,并且消息包含 查詢(xún)?cè)S多通過(guò)網(wǎng)絡(luò)傳輸?shù)闹袛郌PDU請(qǐng)求。刷新請(qǐng)求(以下將詳細(xì)描述)也可能中斷數(shù)據(jù) 包但更優(yōu)選單獨(dú)BFSL在閑置時(shí)間發(fā)送。通過(guò)加載具有其入站端口號(hào)的源MAC地址至位于最高級(jí)BFS的分布MAC表,網(wǎng)橋 學(xué)習(xí)至在其它端口接收的其它以太網(wǎng)數(shù)據(jù)幀一個(gè)目的地MAC地址的路由連接。此處描述的 網(wǎng)絡(luò)固有的MAC副表將包含依賴(lài)于連接至單個(gè)網(wǎng)絡(luò)端口的設(shè)備源MAC地址不同的MAC地址 選擇。對(duì)于作為更高級(jí)BFS —部分的副表每個(gè)副表的內(nèi)容是所有活動(dòng)MAC地址的一個(gè)副集 合,聯(lián)合所有最高級(jí)別BFS的副表形成所有沒(méi)有過(guò)時(shí)退出的活動(dòng)MAC地址的完整集合。通常用電纜連接電子設(shè)備至網(wǎng)絡(luò)從一個(gè)端口至另一個(gè)端口或網(wǎng)絡(luò)。如果這發(fā)生了 則之前學(xué)習(xí)的路由變得不可用。在一個(gè)傳統(tǒng)以太網(wǎng)橋中這個(gè)問(wèn)題可通過(guò)在一段時(shí)間內(nèi)沒(méi)有 參考的過(guò)時(shí)退出MAC表?xiàng)l目尋址。當(dāng)電纜移除具有該源地址的提供給就端口的以太網(wǎng)數(shù)據(jù) 幀將不再能被接收。雖然,其它端口接收以具有目的地MAC地址與移除源相匹配的太網(wǎng)數(shù) 據(jù)幀仍路由至舊源端口。這些數(shù)據(jù)幀將不能通過(guò)MAC地址抵達(dá)終端站地址。任一錯(cuò)誤接收 這一數(shù)據(jù)幀的終端站將被請(qǐng)求丟棄它。最終MAC表?xiàng)l目將變得過(guò)時(shí)退出和不可用。在這一 點(diǎn)具有目的地MAC地址不在可用的以太網(wǎng)數(shù)據(jù)幀被接收將產(chǎn)生所述以太網(wǎng)數(shù)據(jù)幀泛播至 網(wǎng)橋所有端口包括新定位端口。這將有所有終端站接收包括正確的新終端站。錯(cuò)誤的終端 站會(huì)丟棄該數(shù)據(jù)幀并且正確的終端站能使用接收到的泛播數(shù)據(jù)幀的源MAC地址產(chǎn)生一個(gè) 響應(yīng)以太數(shù)據(jù)幀。該響應(yīng)幀將在所述新入站端口接收并且為所述源MAC地址和新入站端口 地址一起新MAC表?xiàng)l目被創(chuàng)建。隨后的以太網(wǎng)數(shù)據(jù)幀指向該終端站就能正確路由指向移除 的電纜插入的所述新端口,因此根據(jù)傳統(tǒng)以太網(wǎng)橋?yàn)樘囟娮釉O(shè)備識(shí)別端口連接改變僅能 通過(guò)由網(wǎng)橋已接收的該電子設(shè)備的數(shù)據(jù)幀地址偵測(cè)。根據(jù)此處描述的以太網(wǎng)橋MAC地址管理協(xié)議的所述分級(jí)緩存技術(shù)能夠響應(yīng)由于 電纜移動(dòng)或其它以太網(wǎng)橋設(shè)備重配置,掉電或通電,可能發(fā)生在MAC表?xiàng)l目的改變。當(dāng)一個(gè) 以太網(wǎng)橋所有MAC條目在一單個(gè)或主表中,像傳統(tǒng)系統(tǒng),則對(duì)于者中標(biāo)的改變對(duì)于所有端 口可見(jiàn)。根據(jù)MAC表?xiàng)l目分布于許多位于獨(dú)立芯片的分開(kāi)的MAC副表,和甚至分隔的金屬 包殼該改變傳播穿過(guò)整個(gè)系統(tǒng)。傳統(tǒng)處理器緩存機(jī)制通常需要被緩存的內(nèi)存的一個(gè)完全一致圖像。根據(jù)此處描述 的網(wǎng)絡(luò),雖然,MAC條目的緩存不具有完全一致于所有端口。當(dāng)端口最終發(fā)現(xiàn)MAC表作出的 改變所謂的“懶惰” 一致性可接受雖然沒(méi)有副表能可見(jiàn)所有MAC地址改變。改變需要多花 費(fèi)幾分鐘是可以接受的。即使當(dāng)快速生成樹(shù)協(xié)議(RSTP)已激活改變需要快速可見(jiàn)一個(gè)兩 秒鐘的更新應(yīng)當(dāng)足夠快。通常運(yùn)行條件下20秒的更新是比較合理的。還有重要的是MAC
16地址表?xiàng)l目沒(méi)有被調(diào)整,由于電纜或其它設(shè)備的一個(gè)簡(jiǎn)單重配置,一直保持可用和可連接 以路由FPDU穿過(guò)網(wǎng)絡(luò)到達(dá)正確目的地。此處描述的緩存機(jī)制中的一致性通過(guò)從一個(gè)級(jí)別緩存向下一個(gè)更高級(jí)別的刷新 進(jìn)程來(lái)實(shí)現(xiàn)。在一個(gè)相對(duì)較低頻率每個(gè)條目,輪流,位于單個(gè)BFS18的MAC副表內(nèi)通過(guò)使用 常規(guī)路由散列函數(shù)向位于BFS18設(shè)備層級(jí)的下一上級(jí)發(fā)送一個(gè)請(qǐng)求填充條目核實(shí)。該正在 刷新的條目在該請(qǐng)求存續(xù)期間不可用。通常相同的MAC表?xiàng)l目值將作為已經(jīng)定位的狀態(tài)不 改變返回。然而,如果在最高級(jí)別BFS—個(gè)源MAC條目改變,或者移除,新值將被加載。所 述新值可能不可用并且在該情況下該條目將被刪除。MAC副表中的每個(gè)定位輪流刷新但是 該刷新率可能很低并且僅需比較源的存續(xù)時(shí)間。這極大防止了網(wǎng)絡(luò)帶寬被刷新進(jìn)程占用。 由于系統(tǒng)中BFS18的所有MAC副表都執(zhí)行該操作,分布的MAC表的整體狀態(tài)將最終變得完 全與最高級(jí)別的任何改變一致。因?yàn)闂l目?jī)H在其現(xiàn)值仍對(duì)路由操作可用時(shí)刷新不需要產(chǎn)生 任何新泛播操作。此處描述的網(wǎng)絡(luò)的可擴(kuò)展性通過(guò)兩種方式獲得。第一,網(wǎng)絡(luò)通過(guò)非常多的指令允 許更小、更快和更簡(jiǎn)單的臨近網(wǎng)絡(luò)邊緣保持非常低延遲的第一級(jí)MAC表有效增加目的地地 址的MAC表的尺寸。如果網(wǎng)絡(luò)的單個(gè)MAC副表每個(gè)均具有32000個(gè)條目則一個(gè)具有50000 端口的交換機(jī)將具有大約5千萬(wàn)個(gè)MAC表?xiàng)l目對(duì)所有端口可用。第二,由之前提及網(wǎng)絡(luò)扮 演單個(gè)實(shí)體這意味著兩個(gè)終端點(diǎn)之間僅需要發(fā)生一次會(huì)話就能使這些終端點(diǎn)的MAC地址 對(duì)所有網(wǎng)絡(luò)中所有其它終端點(diǎn)可用。比較傳統(tǒng)以太網(wǎng)橋,僅需要通過(guò)網(wǎng)絡(luò)低的多的泛播數(shù) 據(jù)幀就能獲得所有活動(dòng)MAC地址的MAC地址條目。此處描述的多路徑網(wǎng)絡(luò)可擴(kuò)展的提供從256個(gè)或稍微少些的端口至48000個(gè)端口 或更多。一個(gè)使用此處描述方法的單獨(dú)以太網(wǎng)橋或路由器與傳統(tǒng)網(wǎng)橋相比能夠提供極大增 強(qiáng)的可連接性。例如,目前最大的10吉位(Gbe)以太網(wǎng)橋(結(jié)構(gòu)模塊化的)僅提供288個(gè) 端口。根據(jù)本發(fā)明的以太網(wǎng)橋,能運(yùn)行在IOGbe或更高,一個(gè)單獨(dú)以太網(wǎng)橋能提供48000個(gè)端□。可理解的對(duì)本領(lǐng)域技術(shù)人員來(lái)說(shuō)對(duì)本發(fā)明具體實(shí)施例以及本發(fā)明的基本原則和 此處描述的特征進(jìn)行各種各樣的修改是顯而易見(jiàn)的。因此本發(fā)明并不限于示出的具體實(shí)施 例并且上述修改和變體仍落入隨附的權(quán)利要求的精神和范圍之內(nèi)。
1權(quán)利要求
1.一種用于網(wǎng)橋、交換機(jī)、路由器、集線器或類(lèi)似裝置的多路徑網(wǎng)絡(luò),包括大量適于連 接一個(gè)或多個(gè)設(shè)備的網(wǎng)絡(luò)端口,每個(gè)設(shè)備具有一個(gè)不同的識(shí)別地址數(shù)據(jù);大量網(wǎng)絡(luò)元件; 和大量網(wǎng)絡(luò)連接交互互聯(lián)所述網(wǎng)絡(luò)元件并連接所述網(wǎng)絡(luò)元件至所述網(wǎng)絡(luò)端口,其中所述多 路徑網(wǎng)絡(luò)進(jìn)一步包括適于存儲(chǔ)設(shè)備地址數(shù)據(jù)的分別可尋址存儲(chǔ)元件并且所述多路徑網(wǎng)絡(luò) 適于在大量存儲(chǔ)元件中分布大量設(shè)備地址數(shù)據(jù)。
2.如權(quán)利要求1所述的多路徑網(wǎng)絡(luò),其中所述存儲(chǔ)元件至少分成兩級(jí)地有層次地組 織,每一層級(jí)具有大量分別可尋址的存儲(chǔ)元件并且所述多路徑網(wǎng)絡(luò)適于在最高層級(jí)的大量 存儲(chǔ)元件中分布大量設(shè)備地址數(shù)據(jù)。
3.如權(quán)利要求1或2所述的多路徑網(wǎng)絡(luò),其中所述網(wǎng)絡(luò)適于存儲(chǔ)所有連接至所述網(wǎng)絡(luò) 的設(shè)備的地址數(shù)據(jù)至所述最高層級(jí)的存儲(chǔ)元件內(nèi)。
4.如權(quán)利要求2或3所述的多路徑網(wǎng)絡(luò),其中所述網(wǎng)絡(luò)適于存儲(chǔ)一個(gè)連接至所述網(wǎng)絡(luò) 的設(shè)備的地址數(shù)據(jù)至所述最高層級(jí)的一個(gè)或多個(gè)但不是所有的存儲(chǔ)元件內(nèi)。
5.如權(quán)利要求4所述的多路徑網(wǎng)絡(luò),其中所述網(wǎng)絡(luò)適于僅存儲(chǔ)一個(gè)連接至所述網(wǎng)絡(luò)的 設(shè)備的地址數(shù)據(jù)至所述最高層級(jí)的一個(gè)存儲(chǔ)元件內(nèi)。
6.如權(quán)利要1-5任一所述的多路徑網(wǎng)絡(luò),其中單個(gè)存儲(chǔ)元件的存儲(chǔ)容量小于要存儲(chǔ)的 設(shè)備地址數(shù)據(jù)量。
7.如權(quán)利要求2-6任一所述的多路徑網(wǎng)絡(luò),其中每一個(gè)存儲(chǔ)元件形成相應(yīng)網(wǎng)絡(luò)元件的 一部分。
8.如權(quán)利要求2-7任一所述的多路徑網(wǎng)絡(luò),適于基于所述設(shè)備地址數(shù)據(jù)產(chǎn)生一個(gè)或多 個(gè)散列值。
9.如權(quán)利要求2-8任一所述的多路徑網(wǎng)絡(luò),其中所述網(wǎng)絡(luò)適于使用取自網(wǎng)絡(luò)端口接收 到的數(shù)據(jù)包的設(shè)備地址數(shù)據(jù)刷新位于最高層級(jí)存儲(chǔ)元件的內(nèi)容。
10.如權(quán)利要求9所述的多路徑網(wǎng)絡(luò),其中至少最底層級(jí)的每個(gè)網(wǎng)絡(luò)元件包括一個(gè)附 加存儲(chǔ)元件包含一個(gè)連接的單個(gè)位陣列使用從所述設(shè)備地址數(shù)據(jù)產(chǎn)生的散列值。
11.如權(quán)利要求10所述的多路徑網(wǎng)絡(luò),其中當(dāng)連接的位于單個(gè)位陣列內(nèi)的與所述源設(shè) 備地址數(shù)據(jù)相關(guān)的位已設(shè)置,所述網(wǎng)絡(luò)適于不使用取自網(wǎng)絡(luò)端口接收到的數(shù)據(jù)包的設(shè)備地 址數(shù)據(jù)刷新位于最高層級(jí)存儲(chǔ)元件的內(nèi)容。
12.如權(quán)利要求11所述的多路徑網(wǎng)絡(luò),其中當(dāng)一個(gè)具有新設(shè)備地址數(shù)據(jù)的數(shù)據(jù)包在一 個(gè)為通過(guò)網(wǎng)絡(luò)傳輸?shù)木W(wǎng)絡(luò)端口接收并且與所述網(wǎng)絡(luò)端口相關(guān)的位于所述單個(gè)位陣列內(nèi)的 新設(shè)備地址數(shù)據(jù)的已訪問(wèn)位被清除時(shí)所述網(wǎng)絡(luò)適于使用所述新設(shè)備地址數(shù)據(jù)更新位于最 高層級(jí)內(nèi)的至少一個(gè)存儲(chǔ)元件。
13.如權(quán)利要求12所述的多路徑網(wǎng)絡(luò),其中當(dāng)位于最高層級(jí)的存儲(chǔ)單元的一個(gè)更新產(chǎn) 生時(shí)所述網(wǎng)絡(luò)適于使用位于單個(gè)位陣列內(nèi)的所述新設(shè)備地址數(shù)據(jù)設(shè)置所述已訪問(wèn)位。
14.如權(quán)利要求10-13任一所述的多路徑網(wǎng)絡(luò),其中所述網(wǎng)絡(luò)元件適于在以預(yù)定時(shí)間 間隔清除單個(gè)位陣列內(nèi)的數(shù)據(jù)位。
15.如權(quán)利要求14所述的多路徑網(wǎng)絡(luò),其中所述網(wǎng)絡(luò)適于在一預(yù)定時(shí)間間隔改變用于 從所述設(shè)備地址數(shù)據(jù)產(chǎn)生散列值的散列函數(shù)。
16.如以上任一權(quán)利要求所述的多路徑網(wǎng)絡(luò),其中所述網(wǎng)絡(luò)適于僅在數(shù)據(jù)包通過(guò)網(wǎng)絡(luò) 傳輸?shù)倪^(guò)程中讀取一次由一個(gè)網(wǎng)絡(luò)端口接收的數(shù)據(jù)包的設(shè)備地址數(shù)據(jù)。
17.如權(quán)利要求2-16任一所述的多路徑網(wǎng)絡(luò),其中所述網(wǎng)絡(luò)適于在層級(jí)之間通信所述 設(shè)備地址數(shù)據(jù)。
18.如以上任一權(quán)利要求所述的多路徑網(wǎng)絡(luò),其中所述網(wǎng)絡(luò)適于將目的地設(shè)備地址數(shù) 據(jù)轉(zhuǎn)換為網(wǎng)絡(luò)出站端口描述符并且其中所述網(wǎng)絡(luò)適于在路由數(shù)據(jù)傳過(guò)網(wǎng)絡(luò)中使用網(wǎng)絡(luò)出 站端口描述符。
19.權(quán)利要求2-18任一所述的多路徑網(wǎng)絡(luò),其中所述網(wǎng)絡(luò)元件適于在一個(gè)預(yù)定時(shí)間間 隔之后從與其相關(guān)的存儲(chǔ)元件清除設(shè)備地址數(shù)據(jù)。
20.如權(quán)利要求19所述的多路徑網(wǎng)絡(luò),其中如果所述設(shè)備地址數(shù)據(jù)存在于位于最高層 級(jí)的任一存儲(chǔ)元件內(nèi)所述網(wǎng)絡(luò)元件適于在所述設(shè)備地址數(shù)據(jù)清除之前延長(zhǎng)所述預(yù)定時(shí)間 間隔。
21.如權(quán)利要求19所述的多路徑網(wǎng)絡(luò),其中如果所述設(shè)備地址數(shù)據(jù)對(duì)一個(gè)或多個(gè)連接 至位于最高層級(jí)的網(wǎng)絡(luò)元件網(wǎng)絡(luò)端口的設(shè)備觀測(cè)存在則所述網(wǎng)絡(luò)元件適于在所述設(shè)備地 址數(shù)據(jù)清除之前延長(zhǎng)所述預(yù)定時(shí)間間隔。
22.權(quán)利要求2-21任一所述的多路徑網(wǎng)絡(luò),其中當(dāng)所述設(shè)備地址數(shù)據(jù)不存在位于最高 層級(jí)的任一存儲(chǔ)元件內(nèi)時(shí)所述網(wǎng)絡(luò)元件適于從與其相關(guān)的存儲(chǔ)元件清除設(shè)備地址數(shù)據(jù)。
23.權(quán)利要求2-22任一所述的多路徑網(wǎng)絡(luò),其中位于最低層級(jí)的存儲(chǔ)元件適于指示位 于最高層級(jí)的存儲(chǔ)元件內(nèi)的地址數(shù)據(jù)存在或不存在。
24.如以上任一權(quán)利要求所述的多路徑網(wǎng)絡(luò),其中所述設(shè)備地址數(shù)據(jù)是媒體連接控制 數(shù)據(jù)或IP數(shù)據(jù)。
25.一種以太網(wǎng)橋或路由器包含如權(quán)利要求1-24任一所述的多路徑網(wǎng)絡(luò)。
26.—種多路徑網(wǎng)絡(luò)中設(shè)備地址數(shù)據(jù)管理方法包括適于連接一個(gè)或更多設(shè)備的大量網(wǎng) 絡(luò)端口,每個(gè)設(shè)備具有一個(gè)不同的識(shí)別地址數(shù)據(jù);大量網(wǎng)絡(luò)元件;大量網(wǎng)絡(luò)鏈接交互互聯(lián) 所述網(wǎng)絡(luò)元件并連接所述網(wǎng)絡(luò)元件至所述網(wǎng)絡(luò)端口 ;和大量存儲(chǔ)元件適于儲(chǔ)存設(shè)備地址數(shù) 據(jù),所述方法包括在所述為存儲(chǔ)的大量存儲(chǔ)元件中分布大量設(shè)備地址數(shù)據(jù)。
27.如權(quán)利要求26所述的方法,進(jìn)一步包括分層級(jí)地組織所述網(wǎng)絡(luò)元件為至少兩個(gè)層 級(jí)且大量分別可尋址存儲(chǔ)元件位于每一層級(jí)并且通過(guò)位于一最高層級(jí)的大量存儲(chǔ)元件分 布所述設(shè)備地址數(shù)據(jù)。
28.如權(quán)利要求27所述的方法,其中連接至所述網(wǎng)絡(luò)的所有設(shè)備的地址數(shù)據(jù)存儲(chǔ)在位 于最高層級(jí)的存儲(chǔ)元件中。
29.如權(quán)利要求27或28所述的方法,其中特定設(shè)備的所述設(shè)備地址數(shù)據(jù)存儲(chǔ)在位于最 高層級(jí)的一個(gè)或多個(gè)但不是所有存儲(chǔ)元件中。
30.如權(quán)利要求29所述的方法,其中特定設(shè)備的所述設(shè)備地址數(shù)據(jù)僅存儲(chǔ)在位于最高 層級(jí)的一個(gè)存儲(chǔ)元件中。
31.如權(quán)利要求26-30任一所述的方法,其中每個(gè)所述存儲(chǔ)元件形成相應(yīng)網(wǎng)絡(luò)元件的 一部分。
32.如權(quán)利要求27-31任一所述的方法,其中一個(gè)或多個(gè)散列值基于所述設(shè)備地址數(shù)據(jù)產(chǎn)生。
33.如權(quán)利要求32所述的方法,其中用于從設(shè)備地址數(shù)據(jù)產(chǎn)生散列值的散列函數(shù)在一 個(gè)預(yù)定間隔改變。
34.如權(quán)利要求31或32所述的方法,其中至少位于最底層級(jí)的每個(gè)存儲(chǔ)元件包括一個(gè) 單個(gè)位陣列使用由所述設(shè)備地址數(shù)據(jù)產(chǎn)生的散列值訪問(wèn)。
35.如權(quán)利要求27-34任一所述的方法,其中位于最高層級(jí)的存儲(chǔ)元件的內(nèi)容基于取 自網(wǎng)絡(luò)端口接收的數(shù)據(jù)包的設(shè)備地址數(shù)據(jù)刷新。
36.如權(quán)利要求34和35所述的方法,其中位于最高層級(jí)的至少一個(gè)存儲(chǔ)元件基于一個(gè) 新設(shè)備地址數(shù)據(jù)更新當(dāng)一個(gè)具有所述新設(shè)備地址數(shù)據(jù)的數(shù)據(jù)包被為通過(guò)網(wǎng)絡(luò)傳輸?shù)木W(wǎng)絡(luò) 端口接收并且單個(gè)位陣列中與所述網(wǎng)絡(luò)端口相關(guān)的所述新設(shè)備地址數(shù)據(jù)的已訪問(wèn)位被清 除時(shí)。
37.如權(quán)利要求36所述的方法,其中當(dāng)位于最高層級(jí)的一個(gè)存儲(chǔ)元件的更新發(fā)生時(shí)在 所述單個(gè)位陣列中的一個(gè)已訪問(wèn)位通過(guò)所述新設(shè)備地址數(shù)據(jù)設(shè)置。
38.如權(quán)利要求35-37任一所述的方法,其中當(dāng)一個(gè)數(shù)據(jù)包在為通過(guò)網(wǎng)絡(luò)傳輸?shù)木W(wǎng)絡(luò) 端口接收并且與所述網(wǎng)絡(luò)端口相關(guān)的單個(gè)位陣列中的所述已訪問(wèn)位已設(shè)置時(shí)位于最高層 級(jí)的存儲(chǔ)元件的內(nèi)容不刷新。
39.如權(quán)利要求34-38任一所述的方法,其中所述單個(gè)位陣列的數(shù)據(jù)位在一個(gè)預(yù)定時(shí) 間間隔清除。
40.如權(quán)利要求26-39任一所述的方法,其中在一個(gè)網(wǎng)絡(luò)端口接收的數(shù)據(jù)包的所述設(shè) 備地址數(shù)據(jù)僅在所述數(shù)據(jù)包通過(guò)網(wǎng)絡(luò)傳輸時(shí)讀取一次。
41.如權(quán)利要求32-40任一所述的方法,其中設(shè)備地址數(shù)據(jù)散列值在層級(jí)之間通信。
42.如權(quán)利要求26-41任一所述的方法,其中目的地設(shè)備地址數(shù)據(jù)轉(zhuǎn)換為網(wǎng)絡(luò)出站端 口描述符并且其中數(shù)據(jù)包基于所述出站端口描述符路由穿過(guò)網(wǎng)絡(luò)。
43.如權(quán)利要求27-42任一所述的方法,其中設(shè)備地址數(shù)據(jù)在一個(gè)預(yù)定時(shí)間間隔之后 從其存儲(chǔ)元件清除。
44.如權(quán)利要求43所述的方法,其中如果設(shè)備地址數(shù)據(jù)存在于更高層級(jí)的任一存儲(chǔ)元 件則設(shè)備地址數(shù)據(jù)清除之前的預(yù)定時(shí)間間隔延長(zhǎng)。
45.如權(quán)利要求43所述的方法,其中如果設(shè)備地址數(shù)據(jù)對(duì)于一個(gè)或多個(gè)連接至位于最 低層級(jí)的網(wǎng)絡(luò)元件的網(wǎng)絡(luò)端口的設(shè)備觀測(cè)存在則設(shè)備地址數(shù)據(jù)清除之前的預(yù)定時(shí)間間隔 延長(zhǎng)。
46.如權(quán)利要求27-45任一所述的方法,其中當(dāng)設(shè)備地址數(shù)據(jù)不存在于位于最高層級(jí) 的任一存儲(chǔ)元件內(nèi)時(shí)設(shè)備地址數(shù)據(jù)從存儲(chǔ)元件清除。
47.如權(quán)利要求27-46任一所述的方法,其中位于最低層級(jí)的存儲(chǔ)元件指示位于最高 層級(jí)存儲(chǔ)元件內(nèi)設(shè)備地址數(shù)據(jù)存在或不存在。
48.如權(quán)利要求26-44任一所述的方法,其中所述地址數(shù)據(jù)是媒體連接控制數(shù)據(jù)或IP 數(shù)據(jù)。
49.如權(quán)利要求26-48任一所述的方法,其中大量存儲(chǔ)元件的至少一些使用地址緩存 并且所述方法包括為了保持地址緩存之間一致性的通過(guò)檢查更高層級(jí)地址緩存內(nèi)容的一 個(gè)輪流刷新地址緩存中每個(gè)條目的確認(rèn)步驟。
全文摘要
本發(fā)明提供一種用于網(wǎng)橋、交換機(jī)、路由器、集線器或類(lèi)似裝置的多路徑網(wǎng)絡(luò),包括大量適于連接一個(gè)或多個(gè)設(shè)備的網(wǎng)絡(luò)端口,每個(gè)設(shè)備具有一個(gè)不同的識(shí)別地址數(shù)據(jù);大量網(wǎng)絡(luò)元件;和大量網(wǎng)絡(luò)連接交互互聯(lián)所述網(wǎng)絡(luò)元件并連接所述網(wǎng)絡(luò)元件至所述網(wǎng)絡(luò)端口,其中所述多路徑網(wǎng)絡(luò)進(jìn)一步包括分別可尋址存儲(chǔ)元件適于存儲(chǔ)設(shè)備地址數(shù)據(jù)并且所述多路徑網(wǎng)絡(luò)適于在大量存儲(chǔ)元件中分布大量設(shè)備地址數(shù)據(jù)。
文檔編號(hào)H04L12/56GK102106125SQ200980128858
公開(kāi)日2011年6月22日 申請(qǐng)日期2009年7月23日 優(yōu)先權(quán)日2008年7月25日
發(fā)明者A·邁克爾·福特, D·C·休森, E·J·圖爾納, M·O·霍梅伍德, 喬恩·比克羅夫特 申請(qǐng)人:格諾多有限公司