專利名稱:用于數(shù)據(jù)中心的系統(tǒng)、方法以及設(shè)備的制作方法
用于數(shù)據(jù)中心的系統(tǒng)、方法以及設(shè)備相關(guān)專利申請的交叉引用本專利申請要求名為"Systems, Apparatus and Methods for a Data Centre (用 于數(shù)據(jù)中心的系統(tǒng)、設(shè)備和方法)”并于2008年9月19日提交的美國專利申請 No. 61/098516 的優(yōu)先權(quán)和利益;同時要求名為 “Methods and ApparatusRelated to Flow Control within a Data Centre (涉及在數(shù)據(jù)中心中流量控制的方法和設(shè)備)”并于2008 年9月11日提交的美國專利申請No. 61/096209的優(yōu)先權(quán)和利益;兩者在這里完全引用作 為參考。本專禾Ij 申請是名為“Methods and Apparatus for Transmission of Groups ofCell via a Switch Fabric (經(jīng)由交換結(jié)構(gòu)傳輸信元組的方法和設(shè)備)”并于2008 年12月24日提交的美國專利申請No. 12/343728的部分繼續(xù)申請;是名為“ System Architecture for a Scalable and Distributed Multi-Stage Switch Fabric (用于可 縮放以及分布式多級交換結(jié)構(gòu)的系統(tǒng)架構(gòu))”并于2008年12月29日提交的美國專利申請 No. 12/345500 的部分繼續(xù)申請;是名為 “Methods andApparatus Related to a Modular Switch Architecture涉及模塊化交換架構(gòu)的方法和設(shè)備),,并于2008年12月29日提 交的美國專利申請No. 12/345502的部分繼續(xù)申請;是名為“Methods and Apparatus for Flow Control Associatedwiths Multi-Stage Queue (用于與多級隊列有關(guān)的流量控制的 方法和設(shè)備)”并于2008年9月30日提交,要求了名為“Methods and Apparatus Related toFlow Control within a Data Center (涉及在數(shù)據(jù)中心中流量控制的方法和設(shè)備),,, 2008年9月11日提交的美國專利申請No. 61/096209的優(yōu)先權(quán)和利益的美國專利申請 No. 12/242224 的部分繼續(xù)申請;是名為 “Methods andApparatus for Flow-Controllable Multi-Staged Queues (用于可控制流量的多級隊列的方法和設(shè)備),,并于2008年9月30 日提交,要求了名為“Methods andApparatus Related to Flow Control within a Data Centre(涉及在數(shù)據(jù)中心中流量控制的方法和設(shè)備)”,2008年9月11日提交的美國專利申 請No. 61/096209的優(yōu)先權(quán)和利益的美國專利申請No. 12/242230的部分繼續(xù)申請。每一個 上述提及的申請在這里都完全引用作為參考。本專利 申請還是名為“Methods and Apparatus Related to Any-to-AnyConnectivity within a Data Centre (涉及數(shù)據(jù)中心中任意連接性的方法和 設(shè)備)”并于2009年6月30日提交的美國專利申請No. 12/495337的部分繼續(xù)申請;是名 為“Methods and Apparatus Related to Lossless Operation within aData Centre (涉 及數(shù)據(jù)中心中無損操作的方法和設(shè)備)”并于2009年6月30日提交的美國專利申請 No. 12/495344 的部分繼續(xù)申請;是名為“Methods andApparatus Related to Low Latercy within a Data Centre (涉及數(shù)據(jù)中心中低等待時間的方法和設(shè)備)”并于2009年6月30 日提交的美國專利申請No. 12/495358的部分繼續(xù)申請;是名為“Methods and Apparatus Related toFlow Control within a Data Centre Switch Fabric ( ^ΜΜΜΦ'^& ^ 構(gòu)中流量控制的方法和設(shè)備),,并于2009年6月30日提交的美國專利申請No. 12/495361 ^Wlf^M^in ;^^^J "Methods and Apparatus Related toVirtualization ofData
6Centre Resources (涉及數(shù)據(jù)中心資源虛擬化的方法和設(shè)備)”并于2009年6月30日提交 的美國專利申請No. 12/495364的部分繼續(xù)申請。每一個上述提及的申請在這里都完全引 用作為參考。概述在一個實施例中,一種設(shè)備包括可具有分組處理模塊的第一邊緣設(shè)備。第一邊緣 設(shè)備可被配置為接收分組。第一邊緣設(shè)備的分組處理模塊可被配置為基于所述分組產(chǎn)生多 個信元。第二邊緣設(shè)備可具有分組處理模塊,該分組處理模塊被配置為基于所述多個信元 重新組裝所述分組。多級交換結(jié)構(gòu)能夠被耦接到第一邊緣設(shè)備和第二邊緣設(shè)備。該多級交 換結(jié)構(gòu)能夠定義一個單獨的邏輯實體。該多級交換結(jié)構(gòu)可具有多個交換模塊。多個交換模 塊中的每一個交換模塊具有共享的存儲裝置。多級交換結(jié)構(gòu)能夠被配置為交換多個信元從 而使得多個信元被發(fā)送到第二邊緣設(shè)備。
背景技術(shù):
總體上,實施例涉及數(shù)據(jù)中心裝備,以及更具體地涉及用于具有交換核心(switch core)和邊緣設(shè)備的數(shù)據(jù)中心系統(tǒng)的體系結(jié)構(gòu)、設(shè)備和方法。用于數(shù)據(jù)中心系統(tǒng)的已知的體系結(jié)構(gòu)涉及過于棘手和復(fù)雜的方法,增加了這種系 統(tǒng)的開銷和等待時間。例如,一些已知的數(shù)據(jù)中心網(wǎng)絡(luò)由三個或更多交換層組成,其中在每 一層都執(zhí)行以太網(wǎng)和/或因特網(wǎng)協(xié)議(IP)分組處理。分組處理和排隊開銷不必要地在每 一層重復(fù),直接增加了開銷和端到端等待時間。類似地,這樣的已知數(shù)據(jù)中心網(wǎng)絡(luò)并非典型 地以有效成本方式擴展對于給定的數(shù)據(jù)中心系統(tǒng),在服務(wù)器數(shù)量上的增加通常需要額外 的端口,導(dǎo)致在數(shù)據(jù)中心系統(tǒng)每一層增加更多的設(shè)備。這樣糟糕的可擴展性增加了此類數(shù) 據(jù)中心系統(tǒng)的開銷。因此,存在對于改善包括改進的體系結(jié)構(gòu)、設(shè)備和方法的數(shù)據(jù)中心系統(tǒng)的需求。
圖1是根據(jù)一個實施例的數(shù)據(jù)中心(DC)的系統(tǒng)框圖。圖2是根據(jù)一個實施例表明具備任意連接性的數(shù)據(jù)中心一部分的實例的示意圖。圖3是根據(jù)一個實施例表明與數(shù)據(jù)中心相關(guān)聯(lián)的資源邏輯組的示意圖。圖4A是根據(jù)一個實施例表明能夠被包括在交換核心中的交換結(jié)構(gòu)的示意圖。圖4B是根據(jù)一個實施例表明能夠被存儲在圖4A中所示的存儲模塊中的交換表的 示意圖。圖5A是根據(jù)一個實施例表明交換結(jié)構(gòu)系統(tǒng)的示意圖。圖5B是根據(jù)一個實施例表明輸入/輸出模塊的示意圖。圖6是根據(jù)一個實施例表明圖5A的交換結(jié)構(gòu)系統(tǒng)一部分的示意圖。圖7是根據(jù)一個實施例表明圖5A的交換結(jié)構(gòu)系統(tǒng)一部分的示意圖。圖8和9根據(jù)一個實施例分別顯示了用于遮蓋交換結(jié)構(gòu)的外殼的前視圖和后視 圖。圖10根據(jù)一個實施例顯示了圖8中外殼的一部分。圖11和12分別是根據(jù)另一實施例分別表明在第一配置和第二配置中的交換結(jié)構(gòu)
7的示意圖。圖13是根據(jù)一個實施例表明與交換結(jié)構(gòu)相關(guān)聯(lián)的數(shù)據(jù)流的示意圖。圖14是根據(jù)一個實施例表明在圖13所示的交換結(jié)構(gòu)中流量控制的示意圖。圖15是根據(jù)一個實施例表明緩沖模塊的示意圖。圖16A是根據(jù)一個實施例的配置為經(jīng)由交換核心的交換結(jié)構(gòu)協(xié)調(diào)信元組傳輸?shù)?入口調(diào)度模塊和出口調(diào)度模塊的示意框圖。圖16B是根據(jù)一個實施例表明涉及信元組傳輸信令的信令流程圖。圖17是根據(jù)一個實施例表明在被安排在交換結(jié)構(gòu)入口側(cè)的入口隊列排隊的兩個 信元組的示意框圖。圖18是根據(jù)另一實施例表明在被安排在交換結(jié)構(gòu)入口側(cè)的入口隊列排隊的兩個 信元組的示意框圖。圖19是根據(jù)一個實施例表明經(jīng)由交換結(jié)構(gòu)調(diào)度信元組傳輸?shù)姆椒ǖ牧鞒虉D。圖20是根據(jù)一個實施例表明處理與傳輸請求有關(guān)的請求序列值的信令流程圖。圖21是根據(jù)一個實施例表明與傳輸響應(yīng)相關(guān)聯(lián)的響應(yīng)序列值的信令流程圖。圖22是根據(jù)一個實施例表明多級流量可控隊列的示意框圖。圖23是根據(jù)一個實施例表明多級流量可控隊列的示意框圖。圖24是根據(jù)一個實施例表明配置為定義與多個接收隊列相關(guān)聯(lián)的流量控制信號 的目的地控制模塊的示意框圖。圖25是根據(jù)一個實施例表明流量控制分組的示意圖。
具體實施例方式圖1是根據(jù)一個實施例表明數(shù)據(jù)中心(DC) 100 (例如,超級數(shù)據(jù)中心,理想化數(shù)據(jù) 中心)的示意圖。數(shù)據(jù)中心100包括交換核心(SC) 180,可操作地連接到4種類型的外圍處 理裝置170 計算節(jié)點110、服務(wù)節(jié)點120、路由器130和存儲節(jié)點140。在該實施例中,數(shù)據(jù) 中心管理(DCM)模塊190被配置為控制(例如管理)數(shù)據(jù)中心100的操作。在一些實施例 中,數(shù)據(jù)中心100能夠被稱為數(shù)據(jù)中心。在一些實施例中,外圍處理裝置可以包括一個或更 多虛擬資源例如虛擬機。每一個外圍處理裝置170都被配置為經(jīng)由數(shù)據(jù)中心100的交換核心180通信。特 別地,數(shù)據(jù)中心100的交換核心180被配置為在外圍處理裝置170之間以相對低的等待時 間提供任意連接性。例如,交換核心180能夠被配置為在一個或多個計算節(jié)點110和一個 或多個存儲節(jié)點140之間發(fā)送(例如傳送)數(shù)據(jù)。在一些實施例中,交換核心180能夠具 有至少幾百或幾千個端口(例如,出口端和/或入口端),通過這些端口外圍處理裝置170 能夠發(fā)送和/或接收數(shù)據(jù)。外圍處理裝置170包括一個或多個網(wǎng)絡(luò)接口裝置(例如網(wǎng)絡(luò)接 口卡(NIC)UOG比特(Gb)以太網(wǎng)集中網(wǎng)絡(luò)適配器(CNA)裝置),通過這些網(wǎng)絡(luò)接口裝置, 外圍處理裝置170能夠發(fā)送信號到交換核心180和/或從交換核心180接收信號。信號 能夠經(jīng)由可操作地耦接到外圍處理裝置170的物理鏈路和/或無線鏈路被發(fā)送到交換核 心180和/或從交換核心180接收。在一些實施例中,外圍處理裝置170能夠被配置為基 于一個或多個協(xié)議(例如以太網(wǎng)協(xié)議、多協(xié)議標(biāo)簽交換(MPLS)協(xié)議、光纖信道協(xié)議、光纖 信道覆蓋的以太網(wǎng)協(xié)議(fibre-charmel-over Ethernet protocol)、涉及無限帶寬的協(xié)議
8(Infiniband-related protocol))發(fā)送數(shù)據(jù)到交換核心180和/或從交換核心180接收數(shù)據(jù)。在一些實施例中,交換核心180可以是(例如能夠具備功能)單獨的合并交換 (consolidated switch)(例如單獨的大尺寸合并 L2/L3 交換(large-scaleconsolidated L2/L3switch))0換而言之,交換核心180能夠被配置為與例如被配置為經(jīng)由以太網(wǎng)連接相 互通信的不同網(wǎng)絡(luò)元件集合相反地,作為單獨的邏輯實體(例如單獨的邏輯網(wǎng)絡(luò)元件)操 作。交換核心180能夠被配置為在數(shù)據(jù)中心100中連接(例如,便于其之間的通信)計算 節(jié)點110、存儲節(jié)點140、服務(wù)節(jié)點120和/或路由器130。在一些實施例中,交換核心180 能夠被配置為經(jīng)由接口裝置通信,其中接口裝置被配置為以至少10Gb/S的速率發(fā)送數(shù)據(jù)。 在一些實施例中,交換核心180能夠被配置為經(jīng)由接口裝置(例如光纖信道接口裝置)通 信,所述接口裝置被配置為以例如2Gb/S、4Gb/s、8Gb/S、10Gb/S、40Gb/S、100Gb/S和/或更 快的鏈路速率發(fā)送數(shù)據(jù)。雖然交換核心180可以是邏輯集中的,但是交換核心180的實施可以是高度分布 的,例如為了可靠性。例如,交換核心180的幾部分可以是物理分布交叉,例如,許多機架。 在一些實施例中,例如交換核心180的處理級段能被包括在第一機架中以及交換核心180 的另一個處理級段能被包括在第二機架中。兩個處理級段邏輯上都可以作為單獨合并交換 部分。有關(guān)交換核心180體系結(jié)構(gòu)的更多細節(jié)將結(jié)合附圖4到13 —起被描述。如圖1中所示,交換核心180包括邊緣部分185和交換結(jié)構(gòu)187。邊緣部分185可 以包括邊緣設(shè)備(未示出),能夠作為交換結(jié)構(gòu)187和外圍處理裝置170之間的網(wǎng)關(guān)裝置 工作。在一些實施例中,在邊緣部分185中的邊緣設(shè)備能夠共同地具有幾千個端口(例如 100000個端口、500000個端口),通過這些端口來自外圍處理裝置170的數(shù)據(jù)能夠被發(fā)送進 入(例如,路由)交換核心180的一個或多個部分和/或從交換核心180的一個或多個部 分發(fā)送出去。在一些實施例中,邊緣設(shè)備能夠被稱為接入交換(access switch)、網(wǎng)絡(luò)裝置、 和/或輸入/輸出模塊(例如,在圖5A和圖5B中示出)。在一些實施例中,邊緣設(shè)備能夠 被包括在例如機架的架頂(TOR)中。數(shù)據(jù)能夠在外圍處理裝置170、交換核心180、交換核心180的交換結(jié)構(gòu)187、和/ 或交換核心180的邊緣部分185 (例如在被包括在邊緣部分185中的邊緣設(shè)備)處基于不 同的平臺被處理。例如,在一個或多個外圍處理裝置170和在邊緣部分185的邊緣設(shè)備之 間的通信可以是基于以太網(wǎng)協(xié)議或非以太網(wǎng)協(xié)議定義的數(shù)據(jù)分組流。在一些實施例中,多 種數(shù)據(jù)處理能夠在邊緣部分185內(nèi)的邊緣設(shè)備執(zhí)行,而不是在交換核心180的交換結(jié)構(gòu)187 內(nèi)執(zhí)行。例如,數(shù)據(jù)分組能夠在邊緣部分185的邊緣設(shè)備處被解析成信元,以及該信元被從 邊緣設(shè)備發(fā)送到交換結(jié)構(gòu)187。信元能夠被解析為段(segment)并在交換結(jié)構(gòu)187內(nèi)作為 片段(在一些實施例中還能夠被稱為段(flits))被發(fā)送。在一些實施例中,數(shù)據(jù)分組能夠 在交換結(jié)構(gòu)187的一部分處被解析為信元。在一些實施例中,擁塞解決方案和/或經(jīng)由交換 結(jié)構(gòu)187的數(shù)據(jù)(例如信元)傳輸調(diào)度能夠在交換中心180的邊緣部分185內(nèi)部的邊緣設(shè) 備(例如接入交換(accessswitches))被實施或執(zhí)行。然而,擁塞解決方案和/或數(shù)據(jù)傳 輸調(diào)度不可以在定義交換結(jié)構(gòu)187的模塊中執(zhí)行。涉及數(shù)據(jù)中心的組件內(nèi)部的數(shù)據(jù)分組、 信元和/或片段處理的更多細節(jié)將在下面描述。例如,涉及信元處理的更多細節(jié)將至少結(jié) 合圖16A到圖21描述。
在一些實施例中,邊緣部分185內(nèi)的邊緣設(shè)備能夠被配置為分類,例如在交換核 心180從外圍處理裝置170接收的數(shù)據(jù)分組。特別地,交換核心180的邊緣部分185內(nèi)的邊 緣設(shè)備能夠被配置為執(zhí)行以太網(wǎng)類型的分類,其可以包括基于例如第2層以太網(wǎng)地址(例 如媒體接入控制(MAC)地址)和/或第4層以太網(wǎng)地址(例如通用數(shù)據(jù)報協(xié)議(UDP)地 址)的分類。在一些實施例中,目的地可以基于例如在交換核心180的邊緣部分185的分 組的分類而被確定。例如,第一邊緣設(shè)備能夠基于分組的分類識別第二邊緣設(shè)備作為該分 組的目的地。分組能夠被解析成信元并被從第一邊緣設(shè)備發(fā)送到交換結(jié)構(gòu)187。信元能夠 通過交換結(jié)構(gòu)187交換,從而它們能夠被發(fā)送到第二邊緣設(shè)備。在一些實施例中,信元能夠 通過交換結(jié)構(gòu)187基于涉及目的地以及和信元相關(guān)聯(lián)的信息而交換。關(guān)于交換核心180的安全策略能夠更有效地應(yīng)用,因為分類在交換核心180的單 獨邏輯層,在交換核心180的邊緣部分185執(zhí)行。特別地,許多安全策略能夠在分類期間以 相對統(tǒng)一的且無縫方式在交換核心180的邊緣部分185應(yīng)用。涉及數(shù)據(jù)中心內(nèi)的分組分類的更多細節(jié)將結(jié)合例如圖5A、圖5B和圖19描述。涉 及數(shù)據(jù)中心內(nèi)相關(guān)聯(lián)的分組分類的附加細節(jié)在名為“Methods andApparatus Related to Packet Classification Associated with a Multi-Stage Switch ( ^R^^J^M^^. 的分組分類的方法和設(shè)備)”并于2008年9月30日提交的美國專利申請序號12/242168 以及名為 “Methods and Apparatus forPacket Classification Based on Policy Vectors (基于策略向量的分組分類的方法和設(shè)備)”并于2008年9月30日提交的美國專 利申請序號12/242172中描述,這兩者在這里都完全引用作為參考。交換核心180能夠被定義從而數(shù)據(jù)(例如數(shù)據(jù)分組)的分類不在交換結(jié)構(gòu)187中 執(zhí)行。因此,雖然交換結(jié)構(gòu)187可以具有多級,但是多級不需要拓撲跳轉(zhuǎn),在該拓撲跳轉(zhuǎn)中 執(zhí)行數(shù)據(jù)分類,并且交換結(jié)構(gòu)187能夠定義單獨的拓撲跳轉(zhuǎn)。作為替換,在邊緣設(shè)備(例如 交換核心180的邊緣部分185內(nèi)部的邊緣設(shè)備)基于分類確定的目的地信息能夠被用于交 換結(jié)構(gòu)187內(nèi)部的交換(例如信元的交換)。涉及在交換結(jié)構(gòu)187內(nèi)部交換的更多細節(jié)將 結(jié)合例如附圖4A和4B被描述。在一些實施例中,涉及分類的處理可以在包含在邊緣設(shè)備(例如,輸入/輸出模 塊)的分類模塊(未示出)執(zhí)行。將分組解析成信元、經(jīng)由交換結(jié)構(gòu)187的信元傳輸調(diào)度、 分組和/或信元的重組和/或等等能夠在邊緣設(shè)備(例如,輸入/輸出模塊)的處理模塊 (未示出)執(zhí)行。在一些實施例中,分類模塊可以被稱為分組分類模塊,和/或處理模塊可 以被稱為分組處理模塊。涉及包括分類模塊和處理模塊的邊緣設(shè)備的更多細節(jié)將結(jié)合圖5B 描述。在一些實施例中,數(shù)據(jù)中心100的一個或多個部分可以是(或可以包括)基于硬 件的模塊(例如,專用集成電路(ASIC)、數(shù)字信號處理器(DSP)、現(xiàn)場可編程門陣列(FPGA)) 和/或基于軟件的模塊(例如,計算機代碼模塊、能夠在處理器上執(zhí)行的處理器可讀指令 集)。在一些實施例中,一個或多個與數(shù)據(jù)中心100有關(guān)的功可以被包括在不同的模塊中 和/或被結(jié)合到一個或多個模塊中。例如,數(shù)據(jù)中心管理模塊190可以是硬件模塊和軟件 模塊的結(jié)合,其被配置為管理數(shù)據(jù)中心100內(nèi)的資源(例如交換核心180的資源)一個或多個計算節(jié)點110可以是通用目的計算引擎,其能夠包括例如處理器、存 儲器、和/或一個或多個網(wǎng)絡(luò)接口裝置(例如網(wǎng)絡(luò)接口卡(NIC))。在一些實施例中,計算節(jié)
10點110中的處理器可以是一個或多個高速緩存相干域的一部分。在一些實施例中,計算節(jié)點110可以是主機裝置、服務(wù)器和/或等等。在一些實施 例中,一個或多個計算節(jié)點110能夠具有虛擬化資源,從而任何計算節(jié)點110(或其部分) 都能被用來替代數(shù)據(jù)中心100內(nèi)的任何其他計算節(jié)點110(或其部分)。一個或多個存儲節(jié)點140可以是包括例如處理器、存儲器、本地連接的磁盤存儲 器和/或一個或多個網(wǎng)絡(luò)接口裝置的裝置。在一些實施例中,存儲節(jié)點140能具有專用的模 塊(例如,硬件模塊和/或軟件模塊),被配置為使得例如一個或多個計算節(jié)點110能夠經(jīng) 由交換核心180讀取來自一個或多個存儲節(jié)點140的數(shù)據(jù)或?qū)懭霐?shù)據(jù)到一個或多個存儲節(jié) 點140。在一些實施例中,一個或多個存儲節(jié)點140可以具有虛擬化資源,從而任何存儲節(jié) 點140 (或其部分)可以被用來替代數(shù)據(jù)中心100內(nèi)的任何其他存儲節(jié)點140 (或其部分)。一個或多個服務(wù)節(jié)點120可以是開放系統(tǒng)互連(OSI)第4層到第7層裝置,其可 以包括例如處理器(例如,網(wǎng)絡(luò)處理器)、存儲器、和/或一個或更多網(wǎng)絡(luò)接口裝置(例如, IOGb以太網(wǎng)裝置)。在一些實施例中,服務(wù)節(jié)點120可以包括硬件和/或軟件,被配置為對 相對重的網(wǎng)絡(luò)工作負荷執(zhí)行計算。在一些實施例中,服務(wù)節(jié)點120可以被配置為基于每一 個分組以相對有效(例如比在例如計算節(jié)點110上執(zhí)行更有效)的方式執(zhí)行計算。計算可 包括例如全狀態(tài)防火墻計算、入侵檢測和阻止(IDP)計算、可擴展標(biāo)記語言(XML)加速計 算、傳輸控制協(xié)議(TCP)終端計算,和/或應(yīng)用級別負載平衡計算。在一些實施例中,一個 或多個服務(wù)節(jié)點120可以具有虛擬化資源,從而任何服務(wù)節(jié)點120 (或其部分)能被用來替 代數(shù)據(jù)中心100內(nèi)部的任何其他服務(wù)節(jié)點120 (或其部分)。一個或多個路由器130能夠是網(wǎng)絡(luò)裝置,被配置為連接數(shù)據(jù)中心100的至少一部 分到另一個網(wǎng)絡(luò)(例如全球因特網(wǎng))。例如,如圖1所示,交換核心180能被配置為通過路 由器130與網(wǎng)絡(luò)135和網(wǎng)絡(luò)137通信。雖然未示出,但是在一些實施例中,一個或多個路由 器130能夠激活數(shù)據(jù)中心100內(nèi)組件(例如,外圍處理裝置170、交換核心180的部分)之 間的通信。通信能夠基于例如第3層路由協(xié)議定義。在一些實施例中,一個或多個路由器 130能夠具有一個或多個網(wǎng)絡(luò)接口裝置(例如,IOGb以太網(wǎng)裝置),通過該網(wǎng)絡(luò)接口裝置路 由器130能向和/或從例如交換核心180和/或其他外圍處理裝置170發(fā)送和/或接收信 號。涉及數(shù)據(jù)中心內(nèi)虛擬化資源的更多細節(jié)在名為“Methods and Apparatusfor Determining a Network Topology During Network Provisioning(在網(wǎng)絡(luò)供應(yīng)期 間用于確定網(wǎng)絡(luò)拓撲的方法和設(shè)備)”并于2008年12月30日提交的共同未決美國 專禾Ij ψ if No. 12/346623> ^ % "Methods and Apparatus for DistributedDynamic NetworkProvisioning(用于動態(tài)網(wǎng)絡(luò)供應(yīng)分布的方法和設(shè)備)”并于2008年12月30日 提交的共同未決美國專利申請No. 12/346632、以及名為“Methods and Apparatus for Distributed Dynamic Network Provisioning(用于分布式動態(tài)網(wǎng)絡(luò)供應(yīng)的方法和設(shè)備)” 并于2008年12月30日提交的共同未決美國專利申請No. 12/346630中闡明,所有這些申 請在這里都引用作為參考。如上所述,交換核心180能被配置為具有單獨通用交換的功能,其能夠?qū)?shù)據(jù)中 心100內(nèi)的任何外圍處理裝置170連接到任何其他外圍處理裝置170。特別地,交換核心 180能被配置為在外圍處理裝置170 (例如相對多的外圍處理裝置170)和交換核心180之間提供任意連接性,除了那些被網(wǎng)絡(luò)接口裝置的帶寬以及通過光速信令延遲(也被稱為光 速等待時間)施加的限制之外,基本上不具有可見的限制,網(wǎng)絡(luò)接口裝置連接外圍處理裝 置170到交換核心180。換句話說,交換核心180能被配置為使得每一個外圍處理裝置170 看起來被直接互聯(lián)到數(shù)據(jù)中心100內(nèi)的所有其他外圍處理裝置。在一些實施例中,交換核 心180能被配置為使得外圍處理裝置170能夠經(jīng)由交換核心180以線路速率(line rate) (或基本上以線路速率)通信。任意連接性的示意性表示在圖2中示出。此外,交換核心180能以期望的方式處理例如與交換核心180通信的任意外圍處 理裝置170之間的虛擬資源的遷移,因為交換核心180具有單獨邏輯實體的功能。因此,在 外圍處理裝置170內(nèi)的虛擬資源遷移范圍可以跨越基本上所有耦接到交換核心180的端口 (例如,交換核心180的邊緣設(shè)備185的所有端口)。在一些實施例中,與虛擬資源遷移相關(guān)聯(lián)的提供可以部分地通過網(wǎng)絡(luò)管理模塊處 理。集中的網(wǎng)絡(luò)管理實體或網(wǎng)絡(luò)管理模塊能夠與網(wǎng)絡(luò)裝置(例如,交換核心180的幾部分) 合作以收集并管理網(wǎng)絡(luò)拓撲信息。例如,由于資源是附著或獨立于網(wǎng)絡(luò)裝置的,網(wǎng)絡(luò)裝置能 將當(dāng)前操作耦接于網(wǎng)絡(luò)裝置的有關(guān)資源(虛擬的和物理的)的信息推送到網(wǎng)絡(luò)管理模塊。 例如外圍處理裝置管理工具(例如,服務(wù)器管理工具)和/或網(wǎng)絡(luò)管理工具的外部管理實 體能與網(wǎng)絡(luò)管理模塊通信以向網(wǎng)絡(luò)裝置和網(wǎng)絡(luò)中的其他資源發(fā)送網(wǎng)絡(luò)供應(yīng)指令,而不需要 網(wǎng)絡(luò)的靜態(tài)描述。這樣的系統(tǒng)避免了靜態(tài)網(wǎng)絡(luò)描述的困難和由其他類型外圍處理裝置170 和網(wǎng)絡(luò)管理系統(tǒng)導(dǎo)致的網(wǎng)絡(luò)性能退化。在一個實施例中,服務(wù)器管理工具或外部管理實體與網(wǎng)絡(luò)管理模塊通信以向網(wǎng)絡(luò) 裝置提供與外圍處理裝置170有關(guān)的虛擬資源,并確定操作狀態(tài)或情形(例如運行、暫?;?遷移)以及虛擬資源在網(wǎng)絡(luò)中的位置。虛擬資源可以是在經(jīng)由數(shù)據(jù)中心中的接入交換(例 如,包括在邊緣部分187中的接入交換)耦合到交換結(jié)構(gòu)的外圍處理裝置170(例如,服務(wù) 器)上執(zhí)行的虛擬機。許多類型的外圍處理裝置170能經(jīng)由接入交換被耦接到交換結(jié)構(gòu)。不是依靠對網(wǎng)絡(luò)拓撲信息發(fā)現(xiàn)和/或(包括將虛擬資源捆綁到網(wǎng)絡(luò)裝置上)管理 的靜態(tài)網(wǎng)絡(luò)描述,網(wǎng)絡(luò)管理模塊與接入交換和外部管理實體通信并合作從而發(fā)現(xiàn)或確定網(wǎng) 絡(luò)拓撲信息。在初始化(和/或開始)主機(和/或其他類型的外圍處理裝置170)上的 虛擬機之后,外部管理實體能夠向網(wǎng)絡(luò)管理模塊提供虛擬機的設(shè)備標(biāo)識符。該設(shè)備標(biāo)識符 可以是,例如虛擬機或外圍處理裝置170的網(wǎng)絡(luò)接口的媒體訪問協(xié)議(“MAC””)地址、虛擬 機或外圍處理裝置170的名稱、全球唯一標(biāo)識符(“⑶ID”)、和/或虛擬資源或外圍處理裝 置170的通用唯一標(biāo)識符(“UUID”)。⑶ID不需要是關(guān)于所有網(wǎng)絡(luò)、虛擬資源、外圍處理裝 置170、和/或網(wǎng)絡(luò)裝置的全球唯一的,但是其在由網(wǎng)絡(luò)管理模塊管理的網(wǎng)絡(luò)或網(wǎng)絡(luò)片段內(nèi) 是唯一的。此外,外部管理實體能夠提供用于向管理虛擬機的外圍處理裝置170連接到的 接入交換的端口提供指令。接入交換能檢測虛擬機已經(jīng)被初始化、開始、和/或移動到外圍 處理裝置170。在檢測到虛擬機之后,接入交換能夠詢問外圍處理裝置170有關(guān)外圍處理裝 置170和/或虛擬機的信息,包括例如外圍處理裝置170或虛擬機的設(shè)備標(biāo)識符。接入交換能夠詢問或請求例如使用例如鏈路層發(fā)現(xiàn)協(xié)議(“LLDP”)、一些基于其 他標(biāo)準(zhǔn)或熟知協(xié)議,或私有協(xié)議的虛擬機的設(shè)備標(biāo)識符的信息,其中該虛擬機被配置為經(jīng) 由上述協(xié)議通信。作為替代,虛擬機可以在檢測到其已經(jīng)被連接到接入交換之后,使用例如 以太網(wǎng)或IP廣播分組廣播關(guān)于它自己的信息(包括虛擬機的設(shè)備標(biāo)識符)。
12
接入交換然后推送虛擬裝置的設(shè)備標(biāo)識符(有時候被稱為虛擬設(shè)備標(biāo)識符)以 及,在一些實施例中,從虛擬機接收的其他信息給網(wǎng)絡(luò)管理模塊。此外,接入交換能推送接 入交換的設(shè)備標(biāo)識符和接入交換端口的端口標(biāo)識符給網(wǎng)絡(luò)管理模塊,控制虛擬機的外圍處 理裝置170連接到所述接入交換。該信息功能用作網(wǎng)絡(luò)中虛擬機位置的描述,并且定義了 將虛擬機捆綁到用于網(wǎng)絡(luò)管理模塊和外部管理實體的外圍處理裝置170上。換而言之,在 接收該信息之后,網(wǎng)絡(luò)管理模塊能夠能將虛擬機的設(shè)備標(biāo)識符與特定接入交換上的特定端 口相關(guān)聯(lián),該虛擬機(和/或操作虛擬機的外圍處理裝置170)連接到該特定接入交換上。虛擬機的設(shè)備標(biāo)識符、接入交換的設(shè)備標(biāo)識符、端口標(biāo)識符和由外部管理實體提 供的供應(yīng)指令能夠被存儲在網(wǎng)絡(luò)管理模塊可接入的存儲器中。例如,虛擬機的設(shè)備標(biāo)識符、 接入交換的設(shè)備標(biāo)識符、和端口標(biāo)識符能夠被存儲在被配置作為數(shù)據(jù)庫的存儲器中,從而 基于虛擬機的設(shè)備標(biāo)識符的數(shù)據(jù)庫詢問返回接入交換的設(shè)備標(biāo)識符、端口標(biāo)識符和供應(yīng)指 令。因為網(wǎng)絡(luò)管理模塊能夠基于虛擬機的設(shè)備標(biāo)識符與虛擬機在網(wǎng)絡(luò)中的位置相關(guān) 聯(lián),外部管理實體不需要注意網(wǎng)絡(luò)的拓撲或?qū)⑻摂M機捆綁到外圍處理裝置170上以提供網(wǎng) 絡(luò)資源(例如,網(wǎng)絡(luò)裝置、虛擬機、虛擬交換或物理服務(wù)器)。換句話說,外部管理實體像網(wǎng) 絡(luò)中的互聯(lián)和虛擬機在網(wǎng)絡(luò)中的位置(例如,在網(wǎng)絡(luò)中哪個接入交換的哪個端口處、哪個 外圍處理裝置170上)一樣不可知,并且能基于由網(wǎng)絡(luò)中外圍處理裝置170控制的虛擬機 的設(shè)備標(biāo)識符提供網(wǎng)絡(luò)中的接入交換。在一些實施例中,外部管理實體還能提供物理外圍 處理裝置170。此外,因為網(wǎng)絡(luò)管理模塊動態(tài)確定并管理網(wǎng)絡(luò)拓撲信息,外部管理實體不依 靠對于供應(yīng)網(wǎng)絡(luò)的網(wǎng)絡(luò)靜態(tài)描述。如在本說明書中所使用的,供應(yīng)可以包括多種類型或形式的裝置和/或軟件模塊 設(shè)置、配置和/或調(diào)整。例如,供應(yīng)可以包括基于網(wǎng)絡(luò)策略配置例如網(wǎng)絡(luò)交換機的網(wǎng)絡(luò)裝 置。更特別地,例如,網(wǎng)絡(luò)供應(yīng)可以包括配置網(wǎng)絡(luò)裝置作為第2層或第3層網(wǎng)絡(luò)交換機操 作;改變網(wǎng)絡(luò)裝置的路由表;更新可操作地耦接到網(wǎng)絡(luò)裝置的設(shè)備的安全策略和/或設(shè)備 地址或設(shè)備標(biāo)識符;選擇網(wǎng)絡(luò)裝置使用哪一個網(wǎng)絡(luò)協(xié)議實施;設(shè)置例如用于網(wǎng)絡(luò)裝置端口 的虛擬局域網(wǎng)絡(luò)(“VLAN”)標(biāo)記的網(wǎng)絡(luò)段標(biāo)識符;和/或應(yīng)用接入控制列表(“ACL”)到 網(wǎng)絡(luò)裝置。該網(wǎng)絡(luò)交換機能被提供或配置,從而由網(wǎng)絡(luò)策略定義的規(guī)則和/或接入限制被 應(yīng)用于從網(wǎng)絡(luò)交換機經(jīng)過的數(shù)據(jù)分組。在一些實施例中,虛擬裝置被提供。虛擬裝置可以 是,例如實現(xiàn)虛擬交換、虛擬路由器、或虛擬網(wǎng)關(guān)的軟件模塊,其被配置為作為在物理網(wǎng)絡(luò) 之間的媒介操作并且其由例如外圍處理裝置170的主機裝置控制。在一些實施例中,供應(yīng) 能包括建立虛擬端口或在虛擬資源和虛擬裝置之間的連接。圖2是根據(jù)一個實施例表明具有任意連接性的數(shù)據(jù)中心的一部分的實例的示意 圖。如圖2所示,外圍處理裝置PD(來自外圍處理裝置210組)經(jīng)由交換核心280被連接 到每一個外圍處理裝置210。在一些實施例中,為了清楚,僅有從外圍處理裝置PD到其他外 圍處理裝置210 (除了外圍處理裝置PD)的連接被示出。在一些實施例中,交換核心280被定義,從而交換核心280在某種意義上是公平 的,即在外圍處理裝置PD和其他外圍處理裝置210之間的目的鏈路的帶寬被基本上合理地 在競爭的外圍處理裝置210之間共享。例如,當(dāng)圖2所示的一些(或全部)外圍處理裝置 210試圖在給定時間接入外圍處理裝置PD時,可用于每一個外圍處理裝置280接入外圍處理裝置PD的帶寬(例如,即時帶寬)將是基本上相等的。在一些實施例中,交換核心280 能被配置為使得一些(或全部)外圍處理裝置210能與外圍處理裝置PD以全帶寬(例如, 外圍處理裝置PD的全帶寬)和/或以無阻塞的方式通信。此外,交換核心280能被配置為 使得通過外圍處理裝置(來自外圍處理裝置210)到外圍處理裝置PD的接入可不被在其它 外圍處理裝置和外圍處理裝置PD之間的其他鏈路(例如,存在或試圖)限制。在一些實施例中,交換核心280的屬性,任意連接性、低等待時間、公平性和/或等 等能夠使得連接到(例如,與其通信)交換核心280的給定類型(例如存儲節(jié)點類型、計算 節(jié)點類型)的外圍處理裝置210能夠被可互換地對待(例如,相對于其他處理裝置210和 交換核心280的位置獨立)。這能被稱作可互換性,并能促使包括交換核心280的數(shù)據(jù)中心 的有效性和簡易性。即使交換核心280可能具有大量的端口(例如,超過1000個端口),交 換核心280仍能夠具有任意連接性和/或公平性的屬性,從而每一個端口可以以相對高的 速度操作(例如,以超過lOGb/s的速度操作)。這不需要包括在例如超級計算機的專門的 互連和/或不需要對所有通信模式完全先知就能實現(xiàn)。涉及具有任意連接性和/或公平性 的交換核心體系結(jié)構(gòu)的更多細節(jié)將至少部分地結(jié)合附圖4到13描述。重新參考圖1,在一些實施例中,數(shù)據(jù)中心100被配置為允許靈活的超額訂購 (oversubscription)。在一些實施例中,通過靈活超額訂購,網(wǎng)絡(luò)基礎(chǔ)結(jié)構(gòu)(例如,涉及交 換核心180的網(wǎng)絡(luò)基礎(chǔ)結(jié)構(gòu))的相對花費能夠相對例如計算和存儲的花費被降低。例如, 在數(shù)據(jù)中心100的交換核心180內(nèi)的資源(例如所有資源)能夠作為靈活合并資源操作, 從而與第一應(yīng)用(或應(yīng)用集)相關(guān)聯(lián)的未充分利用的資源在例如第二應(yīng)用的峰值處理期間 能由第二應(yīng)用(或應(yīng)用集)被動態(tài)地提供使用。因此,數(shù)據(jù)中心100的資源(或資源的子 集)能被配置為比如果資源被嚴格地分配為貯藏資源分配給特定應(yīng)用(或應(yīng)用集)能更有 效地處理超額訂購。如果作為貯藏資源管理,則超額訂購能夠僅在貯藏資源內(nèi)實施,而不是 例如跨越整個數(shù)據(jù)中心107。在一些實施例中,數(shù)據(jù)中心100中的一個或更多協(xié)議和/或組 件能夠基于開放標(biāo)準(zhǔn)(例如電氣和電子工程師協(xié)會(IEEE)標(biāo)準(zhǔn)、互聯(lián)網(wǎng)工程任務(wù)組(IETF) 標(biāo)準(zhǔn)、國際信息技術(shù)標(biāo)準(zhǔn)委員會(INCITS)標(biāo)準(zhǔn))。在一些實施例中,數(shù)據(jù)中心100能支持允許實施寬范圍策略的安全模式。例如,數(shù) 據(jù)中心100可以支持無通信策略,其中應(yīng)用停留在數(shù)據(jù)中心100的獨立的虛擬數(shù)據(jù)中心,但 是能夠共享相同的物理外圍處理裝置(例如計算節(jié)點100、存儲節(jié)點140)和網(wǎng)絡(luò)基礎(chǔ)結(jié)構(gòu) (例如交換核心180)。在一些配置中,數(shù)據(jù)中心100能支持相同應(yīng)用部分的多處理并且需 要幾乎無限制地通信。在一些配置中,數(shù)據(jù)中心100能支持需要例如深入分組檢查、全狀態(tài) 防火墻/或無狀態(tài)濾波器的策略。數(shù)據(jù)中心100能具有端到端應(yīng)用到基于源等待時間、零負載等待時間、擁塞等待 時間和目的地等待時間定義的應(yīng)用等待時間(也被稱為端到端等待時間)。在一些實施例 中,源等待時間可以是例如在源外圍處理裝置處理期間支出的時間(例如,由軟件和/或 NIC支出的時間)。類似地,目的地等待時間可以是,例如在目的地外圍處理裝置處理期間 支出的時間(例如,由軟件和/或NIC支出的時間)。在一些實施例中,零負載延遲可以是 光速延遲加上例如數(shù)據(jù)中心180內(nèi)部的處理和存儲轉(zhuǎn)發(fā)延遲。在一些實施例中,擁塞等待 時間可以是,例如由網(wǎng)絡(luò)中的擁塞引起的排隊延遲。數(shù)據(jù)中心100能具有低端到端等待時 間能激活應(yīng)用的期望應(yīng)用性能,所述應(yīng)用對于例如具有實時約束和/或具有高級內(nèi)部處理通信需求的應(yīng)用的等待時間敏感。交換核心180的零負載等待時間能明顯小于具有基于以太網(wǎng)跳轉(zhuǎn)的互聯(lián)的數(shù)據(jù) 中心核心部分明顯減少。在一些實施例中,例如,交換核心180能具有從交換核心180輸入 端口到交換核心180輸出端口低于6微秒的零負載等待時間(除了光速等待時間)。在一 些實施例中,例如,交換核心180能具有低于12微秒的零負載等待時間(除了擁塞等待時 間和光速等待時間)?;谝蕴W(wǎng)的數(shù)據(jù)中心核心部分具有明顯高的等待時間是由于,例如 不期望的擁塞級別(例如鏈路間的擁塞)。在基于以太網(wǎng)的數(shù)據(jù)中心核心部分內(nèi)的擁塞可 能由于基于以太網(wǎng)的數(shù)據(jù)中心核心(或者與基于以太網(wǎng)的數(shù)據(jù)中心核心有關(guān)的管理裝置) 的無能而加重,從而以不期望的方式處理擁塞。此外,在基于以太網(wǎng)的數(shù)據(jù)中心核心部分內(nèi) 的等待時間可以是不統(tǒng)一的,因為核心部分在不同源_目的地對之間和/或許多存儲轉(zhuǎn)發(fā) 交換節(jié)點之間能具有不同數(shù)目的跳轉(zhuǎn),在該存儲轉(zhuǎn)發(fā)交換節(jié)點中執(zhí)行數(shù)據(jù)分組的分類。相 反,交換核心180的分類在邊緣部分185執(zhí)行,而不在交換結(jié)構(gòu)187執(zhí)行,以及交換核心180 具有確定性的基于信元的交換結(jié)構(gòu)187。例如,通過交換結(jié)構(gòu)187的信元處理等待時間(而 不是通過交換結(jié)構(gòu)187的信元路徑)可以是可預(yù)知的。數(shù)據(jù)中心100的交換核心180能提供無損端到端分組傳送,至少部分基于在數(shù)據(jù) 中心100內(nèi)執(zhí)行的流量控制機制。例如,經(jīng)由交換結(jié)構(gòu)187的數(shù)據(jù)(例如,與數(shù)據(jù)分組有關(guān) 的數(shù)據(jù))傳輸調(diào)度在信元基礎(chǔ)上使用請求授權(quán)機制(也被稱為請求鑒權(quán)機制)被執(zhí)行。特 別地,在發(fā)送信元的請求已經(jīng)基于基本上授權(quán)傳送(無損)被授權(quán)之后,信元被發(fā)送到交換 結(jié)構(gòu)187 (例如從邊緣部分185發(fā)送到交換結(jié)構(gòu)187)。一旦被允許進入交換結(jié)構(gòu)187,信元 在交換結(jié)構(gòu)187中作為片段進行處理。交換結(jié)構(gòu)187內(nèi)的片段流能進一步被控制,例如這 樣當(dāng)交換結(jié)構(gòu)187內(nèi)的擁塞被檢測到時,片段不丟失。涉及交換核心180內(nèi)的信元和片段 處理的更多細節(jié)將在下面描述。此外,通過交換結(jié)構(gòu)187來自每一個外圍處理裝置170的數(shù)據(jù)流能夠被隔離于通 過交換結(jié)構(gòu)187來自剩下的外圍處理裝置170的數(shù)據(jù)流。特別地,在一個或多個外圍處理 裝置170的數(shù)據(jù)擁塞不以不期望的方式影響通過交換核心180的交換結(jié)構(gòu)187的數(shù)據(jù)流, 因為在交換核心180的邊緣部分185,發(fā)送請求已經(jīng)被授權(quán)工作,信元僅被發(fā)送到交換核心 180的交換結(jié)構(gòu)187。例如,在第一外圍處理裝置170的高級別數(shù)據(jù)通信量可以基于請求授 權(quán)擁塞解決機制被處理,從而在第一外圍處理裝置170的高級別數(shù)據(jù)通信量將不會不利地 影響第二外圍處理裝置170接入到交換核心180的單獨邏輯實體。換句話說,當(dāng)被允許進入 交換核心180的交換結(jié)構(gòu)187時,與第一外圍處理裝置170相關(guān)聯(lián)的通信量將被隔離(例 如,從擁塞角度被隔離)于與第二外圍處理裝置170有關(guān)的通信量。同樣,能被解析成信元和片段的交換核心180中的數(shù)據(jù)分組流能在外圍處理裝置 170基于精細粒度(fine grain)的流量控制機制被控制。在一些實施例中,精細粒度的流 量控制基于隊列的級段被執(zhí)行。精細粒度的流量控制類型能阻止(或基本上阻止)導(dǎo)致糟 糕的網(wǎng)絡(luò)使用率的線頭阻塞(head-of-lineblocking)。精細粒度的流量控制還能被用于降 低(或減少)交換核心180內(nèi)的等待時間。在一些實施例中,精細粒度的流量控制能激活 高性能塊發(fā)送磁盤通信量到外圍處理裝置170和從外圍處理裝置170接收磁盤通信量,該 外圍處理裝置170不可以使用以太網(wǎng)和因特網(wǎng)(IP)網(wǎng)絡(luò)以期望的方式實現(xiàn)。涉及精細粒 度的流量控制的更多細節(jié)結(jié)合附圖22到25被描述。
在一些實施例中,數(shù)據(jù)中心100,以及特別地,交換核心180可具有模塊體系結(jié)構(gòu)。 特別地,數(shù)據(jù)中心100的交換核心180能在小規(guī)模處起始實施并且能夠依據(jù)需要擴展(例 如增加擴展)。交換核心180能被擴展而基本上不需要中斷現(xiàn)有網(wǎng)絡(luò)的連續(xù)操作和/或能 夠擴展而不在交換核心180的新設(shè)備應(yīng)當(dāng)物理放置上受約束。在一些實施例中,交換核心180的一個或多個部分能被配置以基于虛擬專用網(wǎng) ("VPN")操作。特別地,交換核心180能被劃分從而一個或多個外圍處理裝置170能被配 置為經(jīng)由交換核心180重疊或不重疊的虛擬化劃分通信。交換核心180還能被分解為具有 分離或重疊子集的虛擬化資源。換句話說,交換核心180可以是能被以靈活方式劃分的單 獨交換。在一些實施例中,該方法能使得在數(shù)據(jù)中心100的合并交換核心180內(nèi)一次擴展 聯(lián)網(wǎng)。這與數(shù)據(jù)中心相反,數(shù)據(jù)中心可以是獨立可升級網(wǎng)絡(luò)的集合,該網(wǎng)絡(luò)的每一個具有定 制和/或特定的資源。在一些實施例中,定義交換核心180的網(wǎng)絡(luò)資源能被合并從而其可 以有效地使用。在一些實施例中,數(shù)據(jù)中心管理模塊190能被配置為定義物理(和/或虛擬)資源 虛擬的多級別,該資源定義了數(shù)據(jù)中心100。例如,數(shù)據(jù)中心管理模塊190被配置為定義虛 擬的多級別,其能體現(xiàn)數(shù)據(jù)中心100的應(yīng)用寬度。在一些實施例中,(兩個級別中的)較低 級別可以包括虛擬應(yīng)用簇(VAC),其可以是分配給屬于(例如,被其控制的)一個或多個實 體(例如,管理實體、財務(wù)制度)的單獨應(yīng)用的物理(或虛擬)資源集。(兩個級別中的) 較高級別可以包括虛擬數(shù)據(jù)中心(VDC),其可以包括屬于(例如,被其控制的)一個或多個 實體的VAC集。在一些實施例中,數(shù)據(jù)中心100包括多個VAC,其中每一個可以屬于不同的 管理實體。圖3是根據(jù)一個實施例表明與數(shù)據(jù)中心相關(guān)聯(lián)的資源的邏輯組300的示意圖。如 圖3所示,邏輯組300包括虛擬數(shù)據(jù)中心VDC1、虛擬數(shù)據(jù)中心VDC2,和虛擬數(shù)據(jù)中心VDC3 ( — 起被稱為VDC)。同樣,如圖3所示,每一個VDC包括虛擬應(yīng)用簇VAC (例如VDC3中的VAC32)。 每一個VDC體現(xiàn)例如圖1所示的數(shù)據(jù)中心100的數(shù)據(jù)中心的物理或虛擬部分(例如,交換核 心的部分、外圍處理裝置的部分和/或外圍處理裝置內(nèi)部的虛擬機)的邏輯組。例如,VDC 內(nèi)的每一個VAC體現(xiàn)例如計算節(jié)點的外圍處理裝置的邏輯組。例如,¥0(^可以體現(xiàn)物理數(shù) 據(jù)中心部分的邏輯組,而VAC22體現(xiàn)VDC1內(nèi)的外圍處理裝置370的邏輯組。如圖3所示,每 一個VDC能基于一組能被配置為例如定義在VDC內(nèi)運行的應(yīng)用上操作參數(shù)允許范圍的策 略PY(還可以被稱為商業(yè)規(guī)則)被管理。在一些實施例中,VDC能被稱為邏輯資源的第一 層(tier),而VAC被稱為邏輯資源的第二層。在一些實施例中,VDC(和VAC)可以被建立,從而與數(shù)據(jù)中心相關(guān)聯(lián)的資源以期望 的方式通過例如實體被管理,該實體使用(例如,出租、擁有、通過其通信)數(shù)據(jù)中心的資源 和/或數(shù)據(jù)中心資源的管理者。例如,VDC1可以是與財務(wù)制度相關(guān)聯(lián)的虛擬數(shù)據(jù)中心,而 VDC2可以是與電信服務(wù)提供者相關(guān)聯(lián)的虛擬數(shù)據(jù)中心。因此,策略PY1能通過財務(wù)制度定 義從而VDC1 (和與VDC1相關(guān)聯(lián)的物理和/或虛擬數(shù)據(jù)中心資源)能以不同于基于策略PY2 的管理VDC2 (和與VDC2有關(guān)的物理和/或虛擬數(shù)據(jù)中心資源)的方式被管理,該PY2策略 由電信服務(wù)提供商定義。在一些實施例中,一個或多個策略(例如,策略PY1W—部分)由 網(wǎng)絡(luò)管理者建立,從而當(dāng)被實施時,在與財務(wù)制度有關(guān)的VDC1和與電信服務(wù)提供商有關(guān)的 VDC2之間提供信息安全和/或防火墻。
16理(未示出)相關(guān)聯(lián)(或在其中集成)。例 如,VDC2能基于策略PY2 (或策略PY2的子集)管理。在一些實施例中,數(shù)據(jù)中心管理能被配 置為,例如監(jiān)視VDC內(nèi)應(yīng)用的實時性能和/或能被配置為自動分配或解除分配資源以滿足 用于VDC內(nèi)應(yīng)用的相應(yīng)策略。在一些實施例中,策略能被配置為基于時間閾值操作。例如, 一個或多個策略能被配置為基于例如在一天的特定時間或一周的某天期間的參數(shù)值(例 如,通信量級別)變化的周期事件(例如,可預(yù)知的周期事件)工作。在一些實施例中,策略能夠基于高級別的語言被定義。因此,策略可以以相對可接 入的方式規(guī)定。策略的例子包括信息安全策略、故障隔離策略、防火墻策略、性能擔(dān)保策略 (例如涉及由應(yīng)用實施的服務(wù)級別的策略)、和/或其他涉及信息保護或獲取的管理策略 (例如管理隔離策略)。在一些實施例中,策略能夠在分組分類模塊實施,該分組分類模塊能被配置為例 如,分類數(shù)據(jù)分組(例如,IP分組、會話控制協(xié)議分組、媒體分組、在外圍處理裝置處定義的 數(shù)據(jù)分組)。例如,策略能在交換核心的邊緣部分內(nèi)的接入交換的分組分類模塊內(nèi)實施。分 類能包括任何執(zhí)行的處理,從而數(shù)據(jù)分組能基于策略在數(shù)據(jù)中心(例如,數(shù)據(jù)中心的交換 核心)內(nèi)被處理。在一些實施例中,策略包括一個或多個與能被執(zhí)行的指令相關(guān)聯(lián)的策略 條件。策略可以是,例如如果數(shù)據(jù)分組具有特定類型的網(wǎng)絡(luò)地址(策略條件),則路由數(shù)據(jù) 分組到特定目的地(指令)的策略。分組分類能包括確定策略條件是否已經(jīng)滿足,從而該 指令能夠被執(zhí)行。例如,數(shù)據(jù)分組的一個或多個部分(例如,領(lǐng)域、有效載荷、地址部分、端 口部分)能基于策略內(nèi)定義的策略條件被分組分類模塊分析。當(dāng)策略條件滿足時,數(shù)據(jù)分 組能基于與策略條件相關(guān)聯(lián)的指令被執(zhí)行。在一些實施例中,邏輯組300的一個或多個部分能被配置為以來自多個遠程位置 的“熄燈號”(“l(fā)ights out”)模式操作-例如對于每個VDC的獨立位置以及一個或兩個 主位置來控制邏輯組300。在一些實施例中,具有例如圖3中所示邏輯組的數(shù)據(jù)中心能被 配置為不需要人員物理地在數(shù)據(jù)中心側(cè)就能操作。在一些實施例中,數(shù)據(jù)中心具有足夠的 冗余資源以適應(yīng)故障的發(fā)生,例如一個或多個外圍處理裝置(例如在VAC內(nèi)的外圍處理裝 置)的故障、數(shù)據(jù)中心管理模塊的故障、和/或交換核心組件的故障。當(dāng)在數(shù)據(jù)中心內(nèi)(例 如在數(shù)據(jù)中心的數(shù)據(jù)中心管理內(nèi))的監(jiān)視軟指示該故障已經(jīng)到達預(yù)定閾值時,人員能被通 知和/或派遣為替換該故障的組件。如圖3所示,VDC可以是互相獨立的邏輯組。在一些實施例中,數(shù)據(jù)中心(例如圖 1中所示的)的資源(例如,虛擬資源、物理資源)能被分割成相較于圖3中所示的邏輯組 不同的邏輯組300(例如,邏輯組的不同層)。在一些實施例中,邏輯組300的兩個或更多 VDC重疊。例如,第一 VDC能和第二 VDC共享數(shù)據(jù)中心的資源(例如,物理資源、虛擬資源)。 特別地,第一 VDC的交換核心的一部分能被與第二 VDC共享。在一些實施例中,例如,包括 在第一 VDC的VAC中的資源能被包括在第二 VDC的VAC中。在一些實施例中,一個或多個VDC能被手動定義(例如,由網(wǎng)絡(luò)管理者手動定義) 和/或自動定義(例如基于策略自動定義)。在一些實施例中,VDC能被配置為改變(例如 動態(tài)改變)。例如,VDC(例如VDC1)能包括在一個時間周期內(nèi)的特定資源集并且能包括在 一個不同時間周期內(nèi)(例如相互獨立的時間周期、重疊的時間周期)的不同資源集(例如 相互獨立的資源集、重疊的資源集)。
17
在一些實施例中,數(shù)據(jù)中心的一個或多個部分能響應(yīng)于改變、在改變之前或在改 變期間被動態(tài)提供,該改變涉及VDC (例如像VDC的虛擬機一樣的VDC的部分遷移)。例如, 數(shù)據(jù)中心的交換核心能包括多個網(wǎng)絡(luò)裝置,例如網(wǎng)絡(luò)交換機(network switches),每一個 存儲包括提供服務(wù)指令的配置模板數(shù)據(jù)庫,該服務(wù)指令由虛擬機提供和/或請求。當(dāng)虛擬 機向和/或在連接到交換核心的網(wǎng)絡(luò)交換機端口的服務(wù)器上遷移和/或初始化或開始時, 服務(wù)器能向網(wǎng)絡(luò)交換機發(fā)送涉及由虛擬機提供的服務(wù)的標(biāo)識符。網(wǎng)絡(luò)裝置能基于該標(biāo)識符 從配置模板數(shù)據(jù)庫中選擇配置模板,并基于該配置模板提供端口和/或服務(wù)器。這樣,供應(yīng) 網(wǎng)絡(luò)端口和/或裝置的任務(wù)能在交換核心中的網(wǎng)絡(luò)交換機中分布(例如,以自動方式分布、 不需要重定義模板分布),并能作為虛擬機動態(tài)變化或資源在外圍處理裝置間遷移。在一些實施例中,供應(yīng)能包括多個類型或形式的裝置和/或軟件模塊設(shè)置、配置 和/或調(diào)整。例如,供應(yīng)能包括基于例如圖3中所示的策略PY中一個的策略配置數(shù)據(jù)中心 內(nèi)的網(wǎng)絡(luò)裝置,例如網(wǎng)絡(luò)交換機。更特別地,例如,涉及數(shù)據(jù)中心的供應(yīng)能包括下列中的一 個或多個配置網(wǎng)絡(luò)裝置以作為網(wǎng)絡(luò)路由器或網(wǎng)絡(luò)交換機操作;改變網(wǎng)絡(luò)裝置的路由表; 更新安全策略和/或可操作地耦接到網(wǎng)絡(luò)裝置設(shè)備的地址或標(biāo)識符;選擇網(wǎng)絡(luò)裝置將實施 哪一個網(wǎng)絡(luò)協(xié)議;設(shè)置網(wǎng)絡(luò)片段標(biāo)識符例如用于網(wǎng)絡(luò)裝置端口的虛擬局域網(wǎng)絡(luò)(“VLAN”) 標(biāo)記;和/或應(yīng)用接入控制列表(“ACL”)到網(wǎng)絡(luò)裝置。數(shù)據(jù)中心的一部分能被供應(yīng)或配 置,從而由策略(例如,PY3)定義的規(guī)則和/或接入限制被應(yīng)用(例如,通過分類處理應(yīng)用) 到通過數(shù)據(jù)中心的一部分的數(shù)據(jù)分組。在一些實施例中,與數(shù)據(jù)中心相關(guān)聯(lián)的虛擬資源能被供應(yīng)。虛擬資源可以是例如, 實施虛擬交換(virtual switch)的軟件模塊、虛擬路由器,或配置為作為在物理網(wǎng)絡(luò)和虛 擬資源之間媒介操作的虛擬網(wǎng)關(guān),虛擬資源由例如服務(wù)器的主裝置控制。在一些實施例中, 虛擬資源可以由主裝置控制。在一些實施例中,供應(yīng)可以包括建立虛擬資源和虛擬裝置之 間的虛擬端口或連接。涉及數(shù)據(jù)中心中虛擬化資源的更多細節(jié)在名為“Method and Apparatusfor Determining a Network Topology During Network Provisioning(在網(wǎng)絡(luò)供應(yīng)期間 用于確定網(wǎng)絡(luò)拓撲的方法和設(shè)備)”并于2008年12月30日提交的共同未決美國專利 ψ if No. 12/346623> ^ % "Methods and Apparatus for DistributedDynamic Netowrk Provisioning(用于動態(tài)網(wǎng)絡(luò)供應(yīng)分布的方法和設(shè)備)”并于2008年12月30日提交的 共同未決美國專利申請 No. 12/346632、名為“Methodsand Apparatus for Distributed Dynamic Network Provisioning(用于動態(tài)網(wǎng)絡(luò)供應(yīng)分布的方法和設(shè)備)”并于2008年12 月30日提交的共同未決美國專利申請No. 12/346630中闡明,所有這些申請在這里都引用 來作為參考。圖4A是根據(jù)一個實施例表明可以包括在交換核心中的交換結(jié)構(gòu)400的示意圖。 在一些實施例中,交換結(jié)構(gòu)400能被包括在例如圖1中所示的交換核心180的交換核心中。 如圖4A中所示,交換結(jié)構(gòu)400是三級、無阻塞Clos (克洛斯)網(wǎng)絡(luò),并且包括第一級440、第 二級442和第三級444。第一級440包括模塊412 (其每一個能被稱為交換模塊或信元交 換機)。第一級440的每一個模塊412是電子組件和電路的集成。在一些實施例中,例如, 每一個模塊是專用集成電路(ASIC)。在其他實施例中,多個模塊被包含在一個單獨的ASIC 上。在一些實施例中,每一個模塊是離散電子組件的集成。在一些實施例中,具有多級的交換結(jié)構(gòu)能被稱為多級交換結(jié)構(gòu)。在一些實施例中,第一級440的每一個模塊412可以是信元交換機。信元交換機 能被配置為有效地重定向數(shù)據(jù)(例如,片段),因為其通過交換結(jié)構(gòu)400流動。在一些實施 例中,例如,第一級的每一個模塊412能被配置為基于包括在交換表中的信息重定向數(shù)據(jù)。 在一些實施例中,例如在交換結(jié)構(gòu)400級內(nèi)的信元的數(shù)據(jù)重定向能被稱為交換(例如,數(shù)據(jù) 交換)或如果數(shù)據(jù)以交換結(jié)構(gòu)400中信元的形式,則稱為信元交換機。在一些實施例中,交 換結(jié)構(gòu)400的模塊內(nèi)的交換可以基于例如與數(shù)據(jù)相關(guān)聯(lián)的信息(例如,報頭)。由交換結(jié) 構(gòu)400的模塊執(zhí)行的交換可以與在邊緣設(shè)備(例如,圖1中所示的交換核心180的邊緣部 分185內(nèi)的邊緣設(shè)備)內(nèi)部執(zhí)行的以太網(wǎng)類型分類不同。換句話說,在交換結(jié)構(gòu)400的模 塊內(nèi)的交換不可以基于例如第2層以太網(wǎng)地址和/或第4層以太網(wǎng)地址。涉及基于交換表 數(shù)據(jù)交換的更多細節(jié)將結(jié)合圖4B描述。在一些實施例中,每一個信元交換機還包括多個可操作地耦接到存儲緩沖器(例 如,直通緩沖器(cut-through buffer))的寫接口的輸入端口。在一些實施例中,存儲緩沖 器被包括在緩沖器模塊中。類似地,輸出端口集能可操作地耦接到存儲緩沖器的讀取接口 處。在一些實施例中,存儲緩沖器可以是使用片上靜態(tài)隨機存取存儲器(SRAM)以向所有輸 入端口提供足夠帶寬用于每一時間周期寫一個進入信元(例如,數(shù)據(jù)分組的一部分)以及 向所有輸出端口提供足夠帶寬用于每一時間周期讀取一個移出信元的共享存儲緩沖器。每 一個信元交換機操作類似于能在每一時間周期之后被配置的縱橫交換(crossbarswitch)。在一些實施例中,存儲器緩沖器(例如,聯(lián)合特定端口和/或流的存儲緩沖器的幾 部分)具有足夠的大小(例如,長度)用于交換結(jié)構(gòu)400中的模塊(例如,模塊412)來實 施交換(例如,信元交換機,數(shù)據(jù)交換)和/或數(shù)據(jù)(例如,信元)同步。然而,存儲緩沖器 可以具有對于交換結(jié)構(gòu)400內(nèi)的模塊(例如,模塊412)不足的大小(和/或太短的處理等 待時間)來實施擁塞解決方案。例如授權(quán)/請求機制的擁塞解決方案能在例如與交換核心 相關(guān)聯(lián)的邊緣設(shè)備(未示出)處實施,但是不能在使用存儲器緩沖器用于與擁塞解決方案 有關(guān)的數(shù)據(jù)排隊的交換結(jié)構(gòu)400內(nèi)的模塊內(nèi)實施。在一些實施例中,模塊(例如,模塊414) 內(nèi)的一個或多個存儲器緩沖器具有不足夠的大小(和/或太短的處理等待時間)用于例如 重組在模塊處的數(shù)據(jù)(例如,信元)。涉及共享存儲緩沖器的更多細節(jié)將結(jié)合附圖15和名 為“Methods and Apparatus Related to a SharedMemory Buffer for Variable-Sized Cells (涉及可變化大小信元的共享存儲緩沖器的方法和裝置)”并于2009年月31日提交 的共同未決美國專利申請No. 12/415517中描述,該專利申請在這里完全被引用作為參考。在替代實施例中,第一級的每一個模塊可以是具有輸入口和輸出口的縱橫交換 機。在縱橫交換機內(nèi)的多個交換將每一個輸入桿(bar)連接到每一個輸出桿。當(dāng)縱橫交換 機內(nèi)的交換在“開啟”位置時,輸入可操作地耦接到輸出且數(shù)據(jù)可以流動。作為替代,當(dāng)縱 橫交換內(nèi)的交換位于“關(guān)閉”位置時,輸入不被可操作地耦接到輸出且數(shù)據(jù)不流動。這樣, 縱橫交換機內(nèi)的交換控制哪一個輸入桿可操作地耦接到輸出桿。第一級440的每一個模塊412包括輸入端口 460集,被配置為當(dāng)數(shù)據(jù)進入交換結(jié) 構(gòu)400時接收數(shù)據(jù)。在該實施例中,第一級440的每一個模塊412包括相同數(shù)目的輸入端 Π 460。類似于第一級440,交換結(jié)構(gòu)400的第二級442包括模塊414。第二級442的模塊414結(jié)構(gòu)上類似于第一級440的模塊412。第二級442的每一個模塊414通過數(shù)據(jù)路徑420 可操作地耦接到第一級440的每一個模塊。在第一級440的每一個模塊和第二級442的每 一個模塊414之間的每一條數(shù)據(jù)路徑420被配置為促使數(shù)據(jù)從第一級440的模塊412向第 二級442的模塊414傳送。在第一級440的模塊412和第二級442的模塊414之間的數(shù)據(jù)路徑420可以以任 何方式構(gòu)建配置為促使數(shù)據(jù)從第一級440的模塊412向第二級442的模塊414以期望的方 式(例如,以有效的方式)傳送。在一些實施例中,例如,數(shù)據(jù)路徑是模塊間的光連接器。在 其它實施例中,數(shù)據(jù)路徑在中平面內(nèi)。這樣的中平面可以類似于這里以更細節(jié)的方式描述 的。這樣的中平面能夠有效地用于將第二級的每一個模塊連接到第一級的每一個模塊。在 另外的實施例中,模塊被包含在單獨的芯片包中,并且該數(shù)據(jù)路徑是電子軌跡。在一些實施例中,交換結(jié)構(gòu)400是無阻塞Clos (克洛斯)網(wǎng)絡(luò)。這樣,交換結(jié)構(gòu)400 的第二級442的模塊414數(shù)目基于第一級440的每一個模塊412的輸入端口 460的數(shù)目而 變化。在可重排列無阻塞Clos (克洛斯)網(wǎng)絡(luò)(例如,Benes (巴內(nèi)斯)網(wǎng)絡(luò))中,第二級 442的模塊414數(shù)目大于或等于第一級440的每一個模塊412的輸入端口 460的數(shù)目。這 樣,如果η是第一級440的每一個模塊412的輸入端口 460的數(shù)目并且m是第二級442的 模塊414的數(shù)目,m彡η。在一些實施例中,例如,第一級的每一個模塊有5個輸入端口。這 樣,第二級具有至少5個模塊。第一級的所有5個模塊通過數(shù)據(jù)路徑可操作地耦接到第二 級的所有5個模塊。換句話說,第一級的每個模塊能向第二級的任一模塊發(fā)送數(shù)據(jù)。交換結(jié)構(gòu)400的第三級444包括模塊416。第三級444的模塊416結(jié)構(gòu)上類似于 第一級440的模塊412。第三級444的模塊416的數(shù)目等于第一級440的模塊412的數(shù)目。 第三級444的每一個模塊416包括輸出端口 462,輸出端口被配置為允許數(shù)據(jù)從交換結(jié)構(gòu) 400送出。第三級444的每一個模塊416包括相同數(shù)目的輸出端口 462。此外,第三級444 的每一個模塊416的輸出端口 462的數(shù)目等于第一級440的每一個模塊412的輸入端口 460數(shù)目。第三級444的每一個模塊416通過數(shù)據(jù)路徑424被連接到第二級442的每一個模 塊414。在第二級442的模塊414和第三級444的模塊416之間的數(shù)據(jù)路徑424被配置為 促使數(shù)據(jù)從第二級442的模塊414向第三級444的模塊416傳送。在第二級442的模塊414和第三級444的模塊416之間的數(shù)據(jù)路徑424能夠以任 意方式被構(gòu)建以配置為有效地促使數(shù)據(jù)從第二級442的模塊414向第三級444的模塊416 傳送。在一些實施例中,例如,數(shù)據(jù)路徑是在模塊間的光連接器。在其他實施例中,數(shù)據(jù)路 徑是在中平面內(nèi)的。這樣的中平面類似于這里詳細描述的。這樣的中平面能夠有效地用于 將第二級的每一個模塊連接到第三級的每一個模塊。在另一個實施例中,模塊被包含在單 獨的芯片包中且數(shù)據(jù)路徑是電子軌跡。圖4Β是根據(jù)一個實施例表明能被存儲在如圖4Α所示模塊的存儲器498中的交換 表49的示意圖。例如圖4Α所示第二級模塊414中一個的模塊(例如交換模塊)能被配置 為基于例如圖4Β所示交換表49的交換表執(zhí)行信元交換機。例如,交換表49 (或類似配置 的交換表)能通過(和/或被包括在內(nèi))一級模塊中的模塊被使用于例如,確定信元能否 經(jīng)由另一級模塊中的模塊被發(fā)送到其目的地。在一些實施例中,信元經(jīng)由該模塊能被發(fā)送 到其目的地的模塊被稱為交換目的地。特別地,交換目的地可以基于包括例如信元的目的
20地信息(其能夠在交換結(jié)構(gòu)400之外被確定)在交換表49中查找。交換表49包括二進制值(例如,二進制值“ 1 ”,二進制值“ 0 ”),其表示由目的地值 DT1到DTk(在47行中示出)代表的一個或多個目的地能否通過由模塊值SM1到SMm(在48 列中示出)表示的一個或多個模塊(其能夠位于鄰級)到達。特別地,當(dāng)在包括二進制值 的列中的目的地(例如,目的地DT1)能經(jīng)由在與列交叉的行中的模塊(例如,模塊SM2)到 達時,交換表49包括二進制值“1”。當(dāng)在包括二進制值的列中的目的地不能經(jīng)由在與列交 叉的行中的模塊到達時,交換表49包括二進制值“0”。例如,在46處每一個條目中的二進 制值“1”表示如果模塊(包括交換表49)向由模塊值SM1到SM3表示的模塊發(fā)送數(shù)據(jù),則數(shù) 據(jù)最終能被發(fā)送到由目的地值DT3代表的目的地。在一些實施例中,模塊能被配置為隨機 選擇由模塊值SM1到SM3 (其是交換目的地)表示的模塊組中的一個模塊,并且能夠?qū)?shù)據(jù) 發(fā)送到所選擇的模塊,從而數(shù)據(jù)能被發(fā)送到由目的地值DT3表示的目的地。在一些實施例中,目的地值47可以是與例如交換核心的邊緣設(shè)備(例如,接入交 換機)、與邊緣設(shè)備通信的服務(wù)器等等相關(guān)聯(lián)的目的地端口值。在一些實施例中,目的地值 (其對應(yīng)于被包括在交換表49中的至少一個目的地值47)可以基于例如被包括在信元中的 分組分類與信元(例如,被包括在信元報頭)相關(guān)聯(lián)。因此,與信元相關(guān)聯(lián)的目的地值能通 過模塊被用于使用交換表49查詢交換目的地。分組分類能在交換核心的邊緣設(shè)備(例如, 接入交換機)被執(zhí)行。在一些實施例中,存儲器(和這樣的交換表49)能被包括在一個或多個模塊的模 塊系統(tǒng)中。在一些實施例中,交換表49能與模塊系統(tǒng)(或多個系統(tǒng))的多于一個輸入端口 和/或多于一個輸出端口相關(guān)聯(lián)。涉及模塊系統(tǒng)的更多細節(jié)將結(jié)合圖7被描述。圖5A是根據(jù)一個實施例表明交換結(jié)構(gòu)系統(tǒng)500的示意圖。交換結(jié)構(gòu)系統(tǒng)500包 括多個輸入/輸出模塊502,第一電纜集540、第二電纜集542和交換結(jié)構(gòu)575。交換結(jié)構(gòu) 575包括部署在外殼570或機架內(nèi)的第一交換結(jié)構(gòu)部分571,以及部署在外殼572和機架內(nèi) 的第二交換結(jié)構(gòu)部分573。輸入/輸出模塊502 (其可以是例如邊緣設(shè)備)被配置為向和/或從第一交換結(jié) 構(gòu)部分571和/或第二交換結(jié)構(gòu)部分573發(fā)送數(shù)據(jù)和/或接收數(shù)據(jù)。此外,每一個輸入/ 輸出模塊502包括解析功能、分類功能、轉(zhuǎn)發(fā)功能和/或排隊和調(diào)度功能。這樣,分組解析、 分組分類、分組轉(zhuǎn)發(fā)和分組排隊及調(diào)度都在數(shù)據(jù)分組進入第一交換結(jié)構(gòu)部分571和/或第 二交換結(jié)構(gòu)部分573之前發(fā)生。因此,這些功能不需要在交換結(jié)構(gòu)575的每一級執(zhí)行,并且 交換結(jié)構(gòu)部分571,573的每個模塊(這里進一步詳細描述)不需要包括執(zhí)行這些功能的能 力。這可以減少交換結(jié)構(gòu)部分571,573每一個模塊的花費、功率損耗、冷卻要求和/或物理 范圍需要。這還能減少與交換結(jié)構(gòu)相關(guān)聯(lián)的等待時間。在一些實施例中,例如,端到端等待 時間(即通過交換結(jié)構(gòu)從輸入/輸出模塊向另一個輸入/輸出模塊發(fā)送數(shù)據(jù)所需要的時 間)能比使用以太網(wǎng)協(xié)議的交換結(jié)構(gòu)系統(tǒng)的端到端等待時間更低。在一些實施例中,交換 結(jié)構(gòu)部分571,573的吞吐量僅由交換結(jié)構(gòu)系統(tǒng)500的連接密度而不是功率和/或熱量限制 來約束。在一些實施例中,輸入/輸出模塊502 (和/或與輸入/輸出模塊502相關(guān)聯(lián)的功 能)能被包括在,例如,如圖1所示的交換核心的邊緣部分內(nèi)的邊緣設(shè)備中。解析功能、分類 功能、轉(zhuǎn)發(fā)功能和排隊及調(diào)度功能可以類似于在名為“Methods and ApparatusRelated to Packet Classification Associated with a Multi-Stage Switch (分組分類的方法和設(shè)備)”并于2008年9月30日提交的美國專利申請序號12/242168和名 為“Methods and Apparatus for Packet ClassificationBased on Policy Vectors (基 于策略矢量的分組分類的方法和設(shè)備)”并于2008年9月30日提交的美國專利申請序號 12/242172中公開的功能執(zhí)行,這兩者在這里都完全引用作為參考。每一個輸入/輸出模塊502被配置為將第一電纜集540電纜的第一端連接到第二 電纜集542電纜的第一端。每一根電纜540在輸入/輸出模塊502和第一交換結(jié)構(gòu)部分 571之間部署。類似地,每一根電纜542在輸入/輸出模塊502和第二交換結(jié)構(gòu)部分573之 間部署。使用第一電纜集540和第二電纜集542,每一個輸入/輸出模塊502能分別向和/ 或從第一交換結(jié)構(gòu)部分571和/或第二交換結(jié)構(gòu)部分573發(fā)送數(shù)據(jù)和/或接收數(shù)據(jù)。第一電纜集540和第二電纜集542能由適于在輸入/輸出模塊502和交換結(jié)構(gòu)部 分571,573之間傳送數(shù)據(jù)的任意材料組成。在一些實施例中,例如,每一根電纜540,542由 多根光纖組成。在這樣的實施例中,每一根電纜540,542可以具有12根發(fā)送和12根接收 光纖。每一根電纜540,542的12根發(fā)送光纖可以包括8根用于發(fā)送數(shù)據(jù)的光纖、1根用于 發(fā)送控制信號的光纖,以及3根用于擴展數(shù)據(jù)容量和/或用于冗余的光纖。類似地,每一根 電纜540,542的12根接收光纖可以包括8根用于發(fā)送數(shù)據(jù)的光纖、1根用于發(fā)送控制信號 的光纖,以及3根用于擴展數(shù)據(jù)容量和/或用于冗余的光纖。在其他實施例中,任意數(shù)目的 光纖都可以被包含在每一根電纜中。第一交換結(jié)構(gòu)部分571和第二交換結(jié)構(gòu)部分573 —起用于冗余和/或更大的容 量。在其他實施例中,僅有一個交換結(jié)構(gòu)部分被使用。仍在其他實施例中,超過2個交換結(jié) 構(gòu)部分被用于增加的冗余和/或更大的容量。例如,4個交換結(jié)構(gòu)部分能夠可操作地通過例 如4根電纜耦接到每一個輸入/輸入模塊。第二交換結(jié)構(gòu)部分573在結(jié)構(gòu)上和功能上類似 于第一交換結(jié)構(gòu)571。因此,這里僅詳細描述第一交換結(jié)構(gòu)部分571。圖5B是根據(jù)一個實施例表明輸入/輸出模塊502的示意圖。如圖5B所示,輸入 /輸出模塊502包括分類模塊596、處理模塊597,和存儲器598。分類模塊596能被配置為 執(zhí)行數(shù)據(jù)分類,例如分組的以太網(wǎng)類型分類。數(shù)據(jù)處理的各種類型能在處理模塊597執(zhí)行。例如,數(shù)據(jù),例如分組能在處理模塊 597處被解析成信元。在一些實施例中,擁塞解決方案能在處理模塊597處實施和/或經(jīng)由 交換結(jié)構(gòu)(例如,圖4A所示的交換結(jié)構(gòu)400)的數(shù)據(jù)(例如信元)傳輸調(diào)度能在處理模塊 597處執(zhí)行。處理模塊597還能被配置為將信息(例如,報頭信息、目的地信息、源信息)串 聯(lián)成例如信元凈負荷,信元凈負荷能被用于通過交換結(jié)構(gòu)(例如,圖4A所示交換結(jié)構(gòu)400) 交換信元(基于如圖4B所示的交換表)。當(dāng)數(shù)據(jù)處理在分類模塊596和/或處理模塊597處執(zhí)行時,數(shù)據(jù)(例如分組、信 元)的一個或多個部分能被存儲于(例如,排隊)存儲器598。例如,當(dāng)處理模塊597執(zhí)行 涉及擁塞解決方案的處理時,被解析成信元的數(shù)據(jù)能在存儲器598排隊。因此,存儲器598 可以具有足夠的大小以實施如附圖16A到附圖21所述的擁塞解決方案。圖6更詳細地顯示了圖5A的包括第一交換結(jié)構(gòu)部分571的交換結(jié)構(gòu)系統(tǒng)500的 一部分。第一交換結(jié)構(gòu)部分571包括接口卡510,其與第一交換結(jié)構(gòu)部分571的第一級和 第三級相關(guān)聯(lián);接口卡516,其與第一交換結(jié)構(gòu)部分571的第二級相關(guān)聯(lián);以及中平面550。 在一些實施例中第一交換結(jié)構(gòu)部分571包括8個接口卡510,其與第一交換結(jié)構(gòu)的第一級
22和第三級相關(guān)聯(lián),以及8個接口卡516,其與第一交換結(jié)構(gòu)的第二級相關(guān)聯(lián)。在其他實施例 中,可以使用與第一交換結(jié)構(gòu)第一級和第三級相關(guān)聯(lián)的接口卡的不同數(shù)目和/或與第一交 換結(jié)構(gòu)第二級相關(guān)聯(lián)的接口卡的不同數(shù)目。如圖6所示,每一個輸入/輸出模塊502可操作地經(jīng)由第一電纜集540的一根電纜 耦接到接口卡510。在一些實施例中,例如8個接口卡510的每一個可操作地耦接到16個 輸入/輸出模塊502,如這里更詳細描述的。這樣,第一交換結(jié)構(gòu)部分571能被耦接到128 個輸入/輸出模塊(16X8 = 128)。128個輸入/輸出模塊502的每一個能向和從第一交 換結(jié)構(gòu)部分571發(fā)送數(shù)據(jù)和接收數(shù)據(jù)。每一個接口卡510經(jīng)由中平面550被連接到每一個接口卡516。這樣,每一個接口 卡510能向和從每一個接口卡516發(fā)送數(shù)據(jù)和接收數(shù)據(jù),如這里更詳細描述的。使用中平
面550將接口卡510連接到接口卡516減少了用于連接第一交換結(jié)構(gòu)部分571級的電纜數(shù)目。圖7更詳細地顯示了第一接口卡510’、中平面550,以及第一接口卡516’。接口卡 510’與第一交換結(jié)構(gòu)部分571的第一級和第三級相關(guān)聯(lián),以及接口卡516’與第一交換結(jié)構(gòu) 部分571的第二級相關(guān)聯(lián)。每一個接口卡510在結(jié)構(gòu)上和功能上與第一接口卡510’類似。 類似地,每一個接口卡516在結(jié)構(gòu)上和功能上與第一接口卡516’類似。第一接口卡510’包括多個電纜連接器端口 560、第一模塊系統(tǒng)512、第二模塊系 統(tǒng)514,以及多個中平面連接器端口 562。例如,圖7顯示了具有16個電纜連接器端口 560 和8個中平面連接器端口 562的第一接口卡510’。第一接口卡510’的每一個電纜連接器 端口 560被配置為接收來自第一電纜集540的電纜的第二端。這樣,如上所述,8個接口卡 510每一個上的16個電纜連接器端口 560被用于接收128根電纜(16X8= 128)。雖然在 圖7中所示具有16個電纜連接器端口 560,而在其他實施例中,任意數(shù)目的電纜連接器端口 都能被使用,從而第一電纜集的每一根電纜都能通過第一交換結(jié)構(gòu)中的電纜連接器端口被 接收。例如,如果16個接口卡都被使用,則每一個接口卡能包括8個電纜連接器端口。第一接口卡510’的第一模塊系統(tǒng)512和第二模塊系統(tǒng)514每一個包括第一交換 結(jié)構(gòu)部分571第一級的模塊和第一交換結(jié)構(gòu)部分571第三級的模塊。在一些實施例中,16 個電纜連接器端口 560的8個電纜連接器端口可操作地耦接到第一模塊系統(tǒng)512以及16 個電纜連接器端口 560剩下的8個電纜連接器端口可操作地耦接到第二模塊系統(tǒng)514。第 一模塊系統(tǒng)512和第二模塊系統(tǒng)514都能可操作地耦接到接口卡510’的8個中平面連接 器端口 562的每一個。第一接口卡510’的第一模塊系統(tǒng)512和第二模塊系統(tǒng)514是ASIC。第一模塊系 統(tǒng)512和第二模塊系統(tǒng)514是相同ASIC的實例。這樣,由于可以生產(chǎn)單獨ASIC的多個實 例,制造成本可以降低。此外,第一交換結(jié)構(gòu)部分571第一級的模塊和第一交換結(jié)構(gòu)第三級 的模塊都被包括在每一個ASIC上。在一些實施例中,8個中平面連接器端口 562中的每一個中平面連接器端口有兩 倍于16個電纜連接器端口 560中每一個電纜連接器端口的數(shù)據(jù)容量。這樣,8個中平面連 接器端口 562每一個具有16數(shù)據(jù)發(fā)送和16數(shù)據(jù)接收連接,而不是具有8數(shù)據(jù)發(fā)送和8數(shù) 據(jù)接收連接。這樣,8個中平面連接器端口 562的帶寬等于16個電纜連接器端口 560的帶 寬。在其他實施例中,每一個中平面連接器端口具有32數(shù)據(jù)發(fā)送和32數(shù)據(jù)接收連接。在
23這樣的實施例中,每一個電纜連接器端口具有16數(shù)據(jù)發(fā)送和16數(shù)據(jù)接收連接。第一接口卡510’的8個中平面連接器端口 562被連接到中平面550。中平面550 被配置為將與第一交換結(jié)構(gòu)部分571第一級和第三級相關(guān)聯(lián)的每一個接口卡510連接到與 第一交換結(jié)構(gòu)部分571第二級相關(guān)聯(lián)的每一個接口卡516。這樣,中平面550確保每一個 接口卡510的每一個中平面連接器端口 562被連接到不同接口卡516的中平面連接器端口 580。換句話說,沒有接口卡510的兩個相同的中平面連接器端口可操作地耦接到相同的接 口卡516。這樣,中平面550允許每一個接口卡510向和從8個接口卡516中的任意一個發(fā) 送數(shù)據(jù)和接收數(shù)據(jù)。雖然圖7顯示了第一接口卡510’、中平面550和第一接口卡516’的示意圖,而在 一些實施例中,第一接口卡510、中平面550和第一接口卡516是物理位置分別類似于水平 位置接口卡620、中平面640以及垂直位置接口卡630,如圖5_7所示并在這里進一步詳細 描述。這樣,與第一級相關(guān)聯(lián)的模塊和與第三級相關(guān)聯(lián)的模塊(均在接口卡510上)位于 中平面的一邊,而與第二級相關(guān)聯(lián)的模塊(在接口卡516上)位于中平面550的對邊。這 樣的拓撲允許與第一級相關(guān)聯(lián)的每一個模塊可操作地耦接到與第二級相關(guān)的每一個模塊, 以及與第二級相關(guān)的每一個模塊可操作地耦接到與第三級相關(guān)的每一個模塊。第一接口卡516’包括多個中平面連接器端口 580、第一模塊系統(tǒng)518,和第二模塊 系統(tǒng)519。多個中平面連接器端口 580被配置經(jīng)由中平面550向和從任意接口卡510發(fā)送 數(shù)據(jù)和接收數(shù)據(jù)。在一些實施例中,第一接口卡516’包括8個中平面連接器端口 580。第一接口卡516’的第一模塊系統(tǒng)518和第二模塊系統(tǒng)519可操作地耦接到第一 接口卡516’的每一個中平面連接器端口 580。這樣,通過中平面550,與第一交換結(jié)構(gòu)部分 571第一級和第三級相關(guān)聯(lián)的每一個模塊系統(tǒng)512、514可操作地耦接到與第一交換結(jié)構(gòu)部 分571第二級相關(guān)聯(lián)的每一個模塊系統(tǒng)518,519。換句話說,與第一交換結(jié)構(gòu)部分571第一 級和第三級相關(guān)的每一個模塊系統(tǒng)512,514能向和從與第一交換結(jié)構(gòu)部分571第二級相關(guān) 聯(lián)的每一個模塊系統(tǒng)518,519發(fā)送數(shù)據(jù)和接收數(shù)據(jù),反之亦然。特別地,與模塊系統(tǒng)512或 514內(nèi)第一級相關(guān)聯(lián)的模塊能向與模塊系統(tǒng)518或519內(nèi)第二級相關(guān)聯(lián)的模塊發(fā)送數(shù)據(jù)。 類似地,與模塊系統(tǒng)518或519內(nèi)第二級相關(guān)聯(lián)的模塊能向與模塊系統(tǒng)512或514內(nèi)第三 級相關(guān)聯(lián)的模塊發(fā)送數(shù)據(jù)。在其他實施例中,與第三級相關(guān)聯(lián)的模塊能向與第二級相關(guān)聯(lián) 的模塊發(fā)送數(shù)據(jù)和/或控制信號,以及與第二級相關(guān)聯(lián)的模塊能向與第一級相關(guān)聯(lián)的模塊 發(fā)送數(shù)據(jù)和/或控制信號。在第一交換結(jié)構(gòu)部分571第一級的每一個模塊具有8個輸入(即,每一個接口卡 510兩個模塊)的實施例中,第一交換結(jié)構(gòu)部分571第二級具有至少8個模塊用于第一交換 結(jié)構(gòu)部分571以維持可重新安排的無阻塞。這樣,第一交換結(jié)構(gòu)部分571的第二級具有至 少8個模塊并被可重新安排無阻塞。在一些實施例中,兩倍于第二級的模塊數(shù)目被用于促 使交換結(jié)構(gòu)系統(tǒng)500從3級交換結(jié)構(gòu)擴展為5級交換結(jié)構(gòu),如這里進一步詳細描述的。在 這樣的5級交換結(jié)構(gòu)中,第二級支持2倍于在交換結(jié)構(gòu)系統(tǒng)500的三級交換結(jié)構(gòu)中第二級 的交換吞吐量。例如,在一些實施例中,第二級的16個模塊能被用于促使交換結(jié)構(gòu)系統(tǒng)500 將來從三級交換結(jié)構(gòu)擴展為5級交換結(jié)構(gòu)。第一接口卡516’的第一模塊系統(tǒng)518和第二模塊系統(tǒng)519是ASIC。第一模塊系 統(tǒng)518和第二模塊系統(tǒng)519是相同ASIC的實例。此外,在一些實施例中,與第一交換結(jié)構(gòu)
24部分571第二級相關(guān)聯(lián)的第一模塊系統(tǒng)518和第二模塊系統(tǒng)519是同樣用于與第一交換結(jié) 構(gòu)部分571第一級和第三級相關(guān)聯(lián)的第一接口卡510’的第一模塊系統(tǒng)512和第二模塊系 統(tǒng)514的ASIC的實例。這樣,因為單獨ASIC的多個實例能被用于第一交換結(jié)構(gòu)部分571 的每一個模塊系統(tǒng),制作開銷能降低。在使用中,數(shù)據(jù)經(jīng)由第一交換結(jié)構(gòu)部分571從第一輸入/輸出模塊502被傳送到 第二輸入/輸出模塊502。第一輸入/輸出模塊502經(jīng)由第一電纜集540的電纜向第一交 換結(jié)構(gòu)部分571發(fā)送數(shù)據(jù)。數(shù)據(jù)經(jīng)過接口卡510’中的一個的電纜連接器端口 560并被發(fā) 送至模塊系統(tǒng)512或514內(nèi)第一級模塊。在模塊系統(tǒng)512或514內(nèi)的第一級模塊通過接口卡510’的中平面中的一個連接 器端口 562、中平面550以及至接口卡516’中的一個發(fā)送數(shù)據(jù),而將數(shù)據(jù)轉(zhuǎn)發(fā)至模塊系統(tǒng) 518或519內(nèi)的第二級模塊。數(shù)據(jù)通過接口卡516’的中平面連接器端口 580進入接口卡 516’。然后數(shù)據(jù)被發(fā)送到模塊系統(tǒng)518或519內(nèi)的第二級模塊。第二級模塊確定第二輸/輸出模塊502怎樣經(jīng)由中平面550連接及重定向數(shù)據(jù)回 接口卡510’。因為每一個模塊系統(tǒng)518或519可操作地耦接到接口卡510’上的每一個模 塊系統(tǒng)512和514,模塊系統(tǒng)518或519內(nèi)的第二級模塊能確定模塊系統(tǒng)512或514內(nèi)的哪 一個第三級模塊被可操作地耦接到第二輸入/輸出模塊并相應(yīng)地發(fā)送數(shù)據(jù)。數(shù)據(jù)被發(fā)送到接口卡510’上的模塊系統(tǒng)512,514內(nèi)的第三級模塊。第三級模塊 然后經(jīng)由第一電纜集540的電纜通過電纜連接器端口 560向輸/輸出模塊502的第二輸入 /輸出模塊發(fā)送數(shù)據(jù)。在其他實施例中,代替第一級模塊發(fā)送數(shù)據(jù)到單獨的第二級模塊,第一級模塊將 數(shù)據(jù)分割為獨立的部分(例如,信元)并向每一個第二級模塊轉(zhuǎn)發(fā)數(shù)據(jù)的一部分,第一級模 塊被可操作地耦接到第二級模塊(例如,在該實施例中,每一個第二級模塊接收數(shù)據(jù)的一 部分)。每一個第二級模塊然后確定第二輸入/輸出模塊怎樣被連接并重定向數(shù)據(jù)的幾部 分回到單獨的第三級模塊。第三級模塊然后重建接收的數(shù)據(jù)的幾部分并向第二輸入/輸出 模塊發(fā)送數(shù)據(jù)。圖8-10顯示了根據(jù)一個實施例用于容納交換結(jié)構(gòu)(例如如上所述的第一交換結(jié) 構(gòu)部分571)的外殼600 (即機架)。外殼600包括外套610、中平面640、水平位置的接口卡 620和垂直位置的接口卡630。圖8顯示了外套610的前視圖,其中能看到部署在外套610 內(nèi)的8個水平位置的接口卡620。圖9顯示了外套610的后視圖,其中能看到部署在外套 610內(nèi)的8個垂直位置的接口卡630。每一個水平位置的接口卡620經(jīng)由中平面640可操作地耦接到每一個垂直位置的 接口卡630 (參見圖10)。中平面640包括前表面642、后表面644和連接前表面642和后 表面644的插孔(receptacle)陣列650,如下所述。如圖10所示,水平位置的接口卡620 包括多個連接到中平面640的前表面642上插孔的中平面連接器端口 622。類似地,垂直 位置的接口卡630包括多個連接到中平面640的后表面644上插孔的中平面連接器632。 以這樣的方式,由每一個水平位置的接口卡620定義的平面與由每一個垂直位置的接口卡 630定義的平面相交。中平面640的插孔650可操作地耦接每一個水平位置的接口卡620到每一個垂直 位置的接口卡630。插孔650促使水平位置接口卡620和垂直位置接口卡630間的信號傳輸。在一些實施例中,例如,插孔650可以是配置為接收放置在接口卡620,630的中平面連 接器端口 622,632上的多銷釘式連接器(multiple pin-connector)的多銷釘式連接器、允 許水平位置接口卡620直接與垂直位置接口卡630連接的空管、和/或配置為可操作地耦 接兩個接口卡的任意其他裝置。使用這樣的中平面640,每一個水平位置接口卡620可操作 地耦接到每一個垂直位置接口卡630,而不需要在中平面上的路由連接(例如,電子軌跡)。圖10顯示了包括位于8X8陣列中的全部64個插孔650的中平面。在這樣的實 施例中,8個水平位置接口卡620能夠可操作地耦接到8個垂直位置接口卡630。在其他實 施例中,任意數(shù)目的插孔能被包括在中平面中和/或任意數(shù)目的水平位置接口卡能通過中 平面被耦接到任意數(shù)目的垂直位置接口卡。如果第一交換結(jié)構(gòu)部分571位于外殼600中,例如,與第一交換結(jié)構(gòu)部分571的第 一級和第三級相關(guān)聯(lián)的每一個接口卡510可以是水平位置以及與第一交換結(jié)構(gòu)部分571第 二級相關(guān)聯(lián)的每一個接口卡516可以是垂直位置。這樣,與第一交換結(jié)構(gòu)部分571的第一 級和第三級相關(guān)聯(lián)的每一個接口卡510可以通過中平面640容易地被連接到與第一交換結(jié) 構(gòu)部分571第二級相關(guān)聯(lián)的每一個接口卡516。在其他實施例中,與第一交換結(jié)構(gòu)部分第一 級和第三級相關(guān)聯(lián)的每一個接口卡是垂直位置而與第一交換結(jié)構(gòu)部分第二級相關(guān)聯(lián)的每 一個接口卡是水平位置。在另一個實施例中,與第一交換結(jié)構(gòu)的第一級和第三級相關(guān)聯(lián)的 每一個接口卡可以是相對外殼的任意角度放置,并且與第一交換結(jié)構(gòu)的第二級相關(guān)聯(lián)的每 一個接口卡可以是正交于與第一交換結(jié)構(gòu)部分第一級和第三級相關(guān)聯(lián)的接口卡相對于外 殼的角度的位置。圖11和12是根據(jù)一個實施例表明分別在第一配置和第二配置中的交換結(jié)構(gòu)1100 的示意圖。交換結(jié)構(gòu)1100包括多個交換結(jié)構(gòu)系統(tǒng)1108。每一個交換結(jié)構(gòu)系統(tǒng)1108包括多個輸入/輸出模塊1102、第一電纜集1140、第二 電纜集1142、部署在外殼1170內(nèi)的第一交換結(jié)構(gòu)部分1171、以及部署在外殼1172內(nèi)的第 二交換結(jié)構(gòu)部分1173。每一個交換結(jié)構(gòu)系統(tǒng)1108在結(jié)構(gòu)上和功能上類似。此外,輸入/輸 出模塊1102、第一電纜集1140和第二電纜集1142在結(jié)構(gòu)上和功能上分別類似于輸入/輸 出模塊202、第一電纜集240和第二電纜集242。當(dāng)交換結(jié)構(gòu)1100在第一配置中時,每一個交換結(jié)構(gòu)系統(tǒng)1108的第一交換結(jié)構(gòu)部 分1171和第二交換結(jié)構(gòu)部分1173功能類似于上述的第一交換結(jié)構(gòu)部分571和第二交換結(jié) 構(gòu)部分573。這樣,當(dāng)交換結(jié)構(gòu)1100在第一配置中時,第一交換結(jié)構(gòu)部分1171和第二交換 結(jié)構(gòu)部分1173作為獨立存在的三級交換結(jié)構(gòu)操作。因此,當(dāng)交換結(jié)構(gòu)1100在第一配置中 時,每一個交換結(jié)構(gòu)系統(tǒng)1108作為獨立存在的交換結(jié)構(gòu)系統(tǒng)動作并不可操作地耦接到其 它交換結(jié)構(gòu)系統(tǒng)1108。在第二配置(圖12)中,交換結(jié)構(gòu)1100進一步包括第三電纜集1144和多個連接交 換結(jié)構(gòu)1191,每一個都位于外殼1190內(nèi)。外殼1190可以類似于上面詳細描述的外殼600。 每一個交換結(jié)構(gòu)系統(tǒng)1108的每一個交換結(jié)構(gòu)部分1171、1173經(jīng)由第三電纜集1144可操作 地耦接到每一個連接交換結(jié)構(gòu)1191。這樣,當(dāng)交換結(jié)構(gòu)1100在第二配置中時,每一個交換 結(jié)構(gòu)系統(tǒng)1108經(jīng)由連接交換結(jié)構(gòu)1191可操作地耦接到其他交換結(jié)構(gòu)系統(tǒng)1108。因此,在 第二配置中的交換結(jié)構(gòu)1100是5級Clos (克洛斯)網(wǎng)絡(luò)。第三電纜集1144能夠由適用于在交換結(jié)構(gòu)部分1171、1173和連接交換結(jié)構(gòu)1191之間傳送數(shù)據(jù)的任意材料組成。在一些實施例中,例如,每一根電纜1144由多根光纖組成。 在這樣的實施例中,每一根電纜1144可以具有36根發(fā)送和36接收光纖。每一根電纜1144 的36根發(fā)送光纖可以包括32根用于發(fā)送數(shù)據(jù)的光纖,以及4根用于擴展數(shù)據(jù)容量和/或 用于冗余的光纖。類似地,每一根電纜1144的36根接收光纖包括32根用于發(fā)送數(shù)據(jù)的光 纖,以及4根用于擴展數(shù)據(jù)容量和/或用于冗余的光纖。在其他實施例中,每一根電纜中能 包含任意數(shù)目的光纖。通過使用具有增加數(shù)目光纖的電纜,使用的電纜數(shù)目能有效地減少。如上面所討論的,流量控制能在例如數(shù)據(jù)中心的交換結(jié)構(gòu)內(nèi)部執(zhí)行。圖13和14 以及伴隨的描述,是表明在交換結(jié)構(gòu)內(nèi)部的流量控制的示意圖。特別地,圖13是根據(jù)一個 實施例表明與交換結(jié)構(gòu)1300相關(guān)聯(lián)的數(shù)據(jù)流量的示意圖。在圖13中所示的交換結(jié)構(gòu)1300 類似于在圖4A中所示的交換結(jié)構(gòu)400,并且能在例如圖1中所示的數(shù)據(jù)中心100的數(shù)據(jù)中 心中實施。在該實施例中,交換結(jié)構(gòu)1300是3級無阻塞Clos(克洛斯)網(wǎng)絡(luò)并包括第一 級1340、第二級1342,和第三級1344。第一級1340包括模塊1312,第二級1342包括模塊 1314,以及第三級1344包括模塊1316。在一些實施例中,交換結(jié)構(gòu)1300可以是信元交換機 的交換結(jié)構(gòu)以及第一級1340的每一個模塊1312可以是信元交換機。第一級1340的每一 個模塊1312包括輸入端口集1360,被配置為當(dāng)數(shù)據(jù)進入交換結(jié)構(gòu)1300時接收數(shù)據(jù)。第三 級1344的每一個模塊1316包括輸出端口 1362,被配置為允許數(shù)據(jù)離開交換結(jié)構(gòu)1300。第 三級1344的每一個模塊1316包括相同數(shù)目的輸出端口 1362。第二級1342的每一個模塊1314通過單向數(shù)據(jù)路徑1320可操作地耦接到第一級 1340的每一個模塊。在第一級1340的每一個模塊和第二級1342的每一個模塊1314之間 的每一條單向數(shù)據(jù)路徑1320被配置為促使數(shù)據(jù)從第一級1340的模塊1312傳送到第二級 1342的模塊1314。因為數(shù)據(jù)路徑1320是單向的,其并不促使數(shù)據(jù)從第二級1342的模塊 1314傳送到第一級1340的模塊1312。這樣的單向數(shù)據(jù)路徑1320相對于類似的雙向數(shù)據(jù) 路徑花費較少、使用較少的數(shù)據(jù)連接并且更易于實施。第三級1344的每一個模塊1316通過單向數(shù)據(jù)路徑1324可操作地耦接到第二級 1342的每一個模塊1314。在第二級1342的模塊1314和第三級1344的模塊1316之間的每 一條單向數(shù)據(jù)路徑1324被配置為促使數(shù)據(jù)從第二級1342的模塊1314傳送到第三級1344 的模塊1316。因為數(shù)據(jù)路徑1324是單向的,其并不促使數(shù)據(jù)從第三級1344的模塊1316傳 送到第二級1344的模塊1314。如上所述,這樣的單向數(shù)據(jù)路徑1324相對于類似的雙向數(shù) 據(jù)路徑花費較少,使用較少的區(qū)域。在第一級1340的模塊1312和第二級1342的模塊1314之間的單向數(shù)據(jù)路徑1320 和/或在第二級1342的模塊1314和第三級1344的模塊1316之間的單向數(shù)據(jù)路徑可以以 任何方式構(gòu)造,被配置為有效促使數(shù)據(jù)傳送。在一些實施例中,例如,數(shù)據(jù)路徑是模塊間的 光連接器。在其他實施例中,數(shù)據(jù)路徑在中平面連接器內(nèi)。這樣的中平面連接器可以是類 似于如圖8到10中所述的中平面連接器。這樣的中平面連接器可以有效地用于將第二級 的每一個模塊連接到第三級的每一個模塊。在其他實施例中,模塊被包含在單獨的芯片包 以及單向數(shù)據(jù)路徑是電子軌跡。第一級1340的每一個模塊1312是相對于第三級1344的相應(yīng)模塊1316物理上接 近的。換句話說,第一級1340的每一個模塊1312與第三級1344的模塊1316成對。例如, 在一些實施例中,第一級1340的每一個模塊1312與第三級1344的模塊1316在相同的芯片包內(nèi)。雙向流量控制路徑1322在第一級1340的每一個模塊1312和第三級1344的相應(yīng) 模塊1316之間存在。流量控制路徑1322允許第一級1340的模塊1312向第三級1344的 相應(yīng)模塊1316發(fā)送流量控制指示符,反之亦然。如這里進一步詳細描述的,這允許交換結(jié) 構(gòu)任意級的任意模塊向其發(fā)送數(shù)據(jù)的模塊發(fā)送流量控制指示符。在一些實施例中,雙向流 量控制路徑1322由兩條單獨的單向流量控制路徑構(gòu)建。兩條單獨的單向流量控制路徑允 許流量控制指示符在第一級1340的模塊1312和第三級1344的模塊1316之間通過。圖14是根據(jù)一個實施例表明在圖13中所示的交換結(jié)構(gòu)1300中流量控制的示意 圖。特別地,示意圖表明圖13所示的交換結(jié)構(gòu)1300第一行1310的詳細視圖。第一行包括 第一級1340的模塊1312,,第二級1342的模塊1314,,第三級1344的模塊1316,。第一級 1340的模塊1312,包括處理器1330和存儲器1332。處理器1330被配置為控制接收和發(fā) 送數(shù)據(jù)。存儲器1332被配置為當(dāng)?shù)诙?342的模塊1314’還不能接收數(shù)據(jù)和/或第一級 1340的模塊1312’還不能發(fā)送數(shù)據(jù)時緩沖數(shù)據(jù)。在一些實施例中,例如,如果第二級1342 的模塊1314,已經(jīng)向第一級1340的模塊1312’發(fā)送了中止指示符,則第一級1340的模塊 1312’緩沖數(shù)據(jù)直到第二級1342的模塊1314’能接收數(shù)據(jù)。類似地,在一些實施例中,當(dāng)模 塊1312’在基本上同時接收多個數(shù)據(jù)信號(例如從多個輸入端口)時,第一級1340的模塊 1312’能緩沖數(shù)據(jù)。在這樣的實施例中,如果僅有一個單獨的數(shù)據(jù)信號能由模塊1312’在給 定的時間(例如,每一個時鐘周期)輸出,則其他接收的數(shù)據(jù)信號能被緩沖。類似于第一級 1340的模塊1312’,交換結(jié)構(gòu)1300內(nèi)的每一個模塊包括處理器和存儲器。第一級1340的模塊1312’和與其配對的第三級1344的模塊1316’都被包括在第 一芯片包1326上。這允許在第一級1340的模塊1312’和第三級1344的模塊1316’之間 的流量控制路徑1322容易地構(gòu)建。例如,流量控制路徑1322可以是在第一級1340的模塊 1312’和第三級的模塊1316’之間第一芯片包1326上的軌跡。在其他實施例中,第一級的 模塊和第三級的模塊在獨立的芯片包上但是彼此非常接近,其仍然允許在其之間的流量控 制路徑不需要使用大量的配線和/或長軌跡就能被建立。第二級1342的模塊1314,被包括在第二芯片包1328上。在第一級1340的模 塊1312’和第二級1342的模塊1314’之間的單向數(shù)據(jù)路徑1320,和在第二級1342的模塊 1314’和第三級1344的模塊1316’之間的單向數(shù)據(jù)路徑1324可操作地將第一芯片包1326 連接到第二芯片包1328。雖然未在圖14中示出,但是第一級1340的模塊1312’和第三級 1344的模塊1316’還通過單向數(shù)據(jù)路徑被連接到第二級的每一個模塊。如上所述,單向數(shù) 據(jù)路徑能以任何方式構(gòu)造,被配置為有效促使數(shù)據(jù)在模塊間傳送。流量控制路徑1322和單向數(shù)據(jù)路徑1320,1324能有效地被用于在模塊1312’, 1314,,1316,之間發(fā)送流量控制指示符。例如,如果第一級1340的模塊1312正向第二級 1342的模塊1314’發(fā)送數(shù)據(jù)且在第二級1342的模塊1314’的緩沖器中的數(shù)據(jù)量超過了閾 值,則第二級1342的模塊1314’能經(jīng)由在第二級1342的模塊1314’和第三級1344的模塊 1316’之間的單向數(shù)據(jù)路徑1324向第三級1344的模塊1316’發(fā)送流量控制指示符。該流 量控制指示符觸發(fā)第三級1344的模塊1316’經(jīng)由流量控制路徑1322向第一級1340的模塊 1312’發(fā)送流量控制指示符。從第三級1344的模塊1316,向第一級1340的模塊1312’發(fā) 送的流量控制指示符引發(fā)第一級1340的模塊1312’停止向第二級1342的模塊1314’發(fā)送 數(shù)據(jù)。類似地,經(jīng)由第三級1344的模塊1316,從第二級1342的模塊1314,向第一級1340
28的模塊1312’發(fā)送的流量控制指示符,請求從第一級1340的模塊1312’向第二級1342的 模塊1314’發(fā)送數(shù)據(jù)(即,繼續(xù)發(fā)送數(shù)據(jù))。在其之間具有芯片上雙向流量控制路徑的相同芯片包內(nèi)的兩級交換結(jié)構(gòu)最小化 單獨芯片包間的連接,該單獨芯片包體積大和/或需要大體積。此外,在其之間具有芯片上 雙向流量控制路徑的相同包內(nèi)的兩級,當(dāng)提供在發(fā)送模塊和接收模塊之間的流量控制通信 能力時,允許在芯片包之間的數(shù)據(jù)路徑為單向。涉及在交換結(jié)構(gòu)內(nèi)的雙向流量控制路徑的 更多細節(jié)在名為“Flow Controlin a Switch Fabric (在交換結(jié)構(gòu)中的流量控制)”并于 2008年12月29日提交的共同未決美國專利申請?zhí)?2/345490中被描述,其在這里完全被 引用作為參考。如結(jié)合圖13和14所述,緩沖器模塊能被包括在交換結(jié)構(gòu)級中的模塊內(nèi)。涉及能 被包括在例如交換結(jié)構(gòu)級內(nèi)的緩沖器模塊的更多細節(jié)將結(jié)合圖15被描述。圖15是根據(jù)一個實施例表明緩沖器模塊1500的示意圖。如圖15所示,數(shù)據(jù)信 號Stl到Sm在緩沖器模塊1500處在緩沖器模塊1500的輸入側(cè)1580上被接收(例如,通過 緩沖器模塊1500的輸入端口 1562)。在緩沖器模塊1500處理后,數(shù)據(jù)信號Stl到Sm從緩沖 器模塊1500的輸出側(cè)1585上的緩沖器模塊1500 (例如,通過緩沖器模塊1500的輸出端口 1564)發(fā)送。數(shù)據(jù)信號Stl到Sm中的每一個能定義信道(還能被稱為數(shù)據(jù)信道)。數(shù)據(jù)信號 S0到Sm能共同被稱為數(shù)據(jù)信號1560。雖然緩沖器模塊1500的輸入側(cè)1580和緩沖器模塊 1500的輸出側(cè)1585顯示在緩沖器模塊1500的不同物理側(cè),緩沖器模塊1500的輸入側(cè)1580 和緩沖器模塊1500的輸出側(cè)1585被邏輯定義且不排除緩沖器模塊1500的各種物理配置。 例如,緩沖器模塊1500的一個或多個輸入端口 1562和/或一個或多個輸出端口 1564能物 理地位于緩沖器模塊1500的任意側(cè)(和/或相同側(cè))。緩沖器模塊1500能被配置為處理數(shù)據(jù)信號1560從而通過緩沖器模塊1500的數(shù) 據(jù)信號1560處理等待時間能相對小且基本不變。因此,由于數(shù)據(jù)信號1560通過緩沖器模塊 1500被處理,數(shù)據(jù)信號1560的比特率能基本不變。例如,通過緩沖器模塊1500的數(shù)據(jù)信號 S2處理等待時間可以是基本不變的時鐘周期數(shù)目(例如,單個時鐘周期,幾個時鐘周期)。 因此,數(shù)據(jù)信號S2可以是通過多個時鐘周期的時間偏移,以及被發(fā)送到緩沖器模塊1500輸 入側(cè)1580的數(shù)據(jù)信號S2的比特率將基本上和從緩沖器模塊1500的輸出側(cè)1585發(fā)送的數(shù) 據(jù)信號S2的比特率相同。緩沖器模塊1500能被配置為響應(yīng)于流量控制信號1570的一個或多個部分修改一 個或多個數(shù)據(jù)信號1560的比特率。例如,緩沖器模塊1500能被配置為響應(yīng)于流量控制信 號1570的一部分來延遲在緩沖器模塊1500接收的數(shù)據(jù)信號S2,流量控制信號1570指示數(shù) 據(jù)信號S2應(yīng)當(dāng)被延遲特定的時間周期。特別地,緩沖器模塊1500能被配置為存儲(例如, 持有)數(shù)據(jù)信號S2的一個或多個部分直到緩沖器模塊1500接收指示數(shù)據(jù)信號S2應(yīng)當(dāng)不再 被延遲的指示符(例如,流量控制信號1570的一部分)。因此,發(fā)送到緩沖器模塊1500的 輸入側(cè)1580的數(shù)據(jù)信號S2的比特率與從緩沖器模塊1500的輸出側(cè)1585發(fā)出的數(shù)據(jù)信號 S2的比特率不同(例如,基本上不同)。在一些實施例中,在緩沖器模塊1500的處理能基于例如可變尺寸的信元片段在 存儲體執(zhí)行。例如,在一些實施例中,信元的片段能通過不同的被包括在緩沖器模塊1500 內(nèi)的存儲體(例如,靜態(tài)隨機接入存儲器(SRAM)存儲體)在分配處理期間被處理。存儲體
29能共同定義共享存儲緩沖器。在一些實施例中,數(shù)據(jù)信號的片段能在分配處理期間以預(yù)定 義方式(例如以根據(jù)預(yù)定義算法的預(yù)定義模式)被分配到存儲體。例如,在一些實施例中, 數(shù)據(jù)信號1560的引導(dǎo)片段能在緩沖器模塊1500的幾部分(例如,緩沖器模塊1500的特定 存儲體)進行處理,該部分與在緩沖器模塊1500內(nèi)處理的跟蹤段(trailingsegments)的 幾部分不同。在一些實施例中,數(shù)據(jù)信號1560的段能以特定的順序處理。在一些實施例中, 例如,數(shù)據(jù)信號1560的每一個片段可以基于其在信元內(nèi)的各自的位置進行處理。在信元片 段已經(jīng)通過共享的存儲緩沖器被處理之后,信元段能被排序并在重組的處理期間從緩沖器 模塊1500發(fā)送。在一些實施例中,例如,緩沖器模塊1500的讀取多路復(fù)用模塊能被配置為重組與 數(shù)據(jù)信號1560相關(guān)聯(lián)的片段并從緩沖器模塊1500發(fā)送(例如,傳送)數(shù)據(jù)信號1560。重 組處理能夠基于預(yù)定義的用于向緩沖器模塊1500的存儲體分配片段的方法論被定義。例 如,讀取多路技術(shù)模塊能被配置為以輪詢方式(因為片段是以輪詢方式寫入的)從引導(dǎo)存 儲體第一讀取與信元相關(guān)聯(lián)的引導(dǎo)片段,以及然后從跟蹤存儲體以輪詢方式讀取與信元有 關(guān)的跟蹤片段。因此,非常少的控制信號,如果有的話,需要在寫入多路復(fù)用模塊和讀取多 路復(fù)用模塊之間被發(fā)送。涉及片段處理(例如,片段分配和/或片段重組)的更多細節(jié)在 名為“Methods and Apparatus Related to Shared Memory Buffer for Variable-Sized Cells (涉及用于可變大小信元的共享存儲緩沖器的方法和設(shè)備)”并于2009年3月31日 提交的共同未決美國專利申請?zhí)?2/415517中描述,其在這里完全被引用作為參考。圖16A是根據(jù)一個實施例,被配置為經(jīng)由交換核心1690的交換結(jié)構(gòu)1600協(xié)調(diào)傳 輸信元組的入口調(diào)度模塊1620和出口調(diào)度模塊1630的示意框圖。協(xié)調(diào)可以包括例如經(jīng)由 交換結(jié)構(gòu)1600調(diào)度傳輸信元組、跟蹤涉及傳輸信元組的請求和/或響應(yīng)等等。入口調(diào)度模 塊1620能被包括在交換結(jié)構(gòu)1600的入口側(cè)以及出口調(diào)度模塊1630能被包括在交換結(jié)構(gòu) 1600的出口側(cè)。交換結(jié)構(gòu)1600能包括入口級1602、中間級1604,和出口級1606。在一些 實施例中,交換結(jié)構(gòu)1600能基于Clos (克洛斯)網(wǎng)絡(luò)架構(gòu)(例如,無阻塞Clos網(wǎng)絡(luò)、嚴格 意義上的無阻塞Clos網(wǎng)絡(luò)、Benes (巴內(nèi)斯)網(wǎng)絡(luò))被定義,且交換結(jié)構(gòu)1600能包括數(shù)據(jù)平 面和控制平面。在一些實施例中,交換結(jié)構(gòu)1600可以是數(shù)據(jù)中心(未示出)的核心部分, 其能包括網(wǎng)絡(luò)或裝置互連。如圖16A所示,輸入隊列IQ1到IQK(共同被稱為入口隊列1610)能位于交換結(jié)構(gòu) 1600的入口側(cè)。入口隊列1610能與交換結(jié)構(gòu)1600的入口級1602相關(guān)聯(lián)。在一些實施例 中,入口隊列1610能被包括在線卡(line card)中。在一些實施例中,入口隊列1610能位 于交換結(jié)構(gòu)1600之外和/或交換核心1690之外。每一個入口隊列1610可以是先入先出 (FIFO)類型隊列。雖然為示出,然而在一些實施例中,每一個入口隊列IQ1到1(^可以與輸 入/輸出端口(例如,10Gb/S端口)相關(guān)(例如,唯一相關(guān))。在一些實施例中,每一個入 口隊列IQ1到IQk能具有足夠的大小以實施擁塞解決方案,例如請求授權(quán)擁塞解決方案。例 如,輸入隊列IQim能具有足夠的大小以持有信元(或信元組)、直到請求授權(quán)擁塞方案已經(jīng) 對于信元(或信元組)被執(zhí)行。如圖16A所示,輸出端口(共同被稱為輸出端口 1640)能位于交換結(jié)構(gòu)1600 的輸出側(cè)。輸出端口 1640可以與交換結(jié)構(gòu)1600的輸出級1606相關(guān)。在一些實施例中,輸 出端口 1640能被稱為目的地端口。
30
在一些實施例中,輸入隊列1610能被包括在一個或多個位于交換結(jié)構(gòu)1600的輸 入級1602之外的輸入線卡(未示出)中。在一些實施例中,輸出端口 1640可以被包括在 一個或多個位于交換結(jié)構(gòu)1600的輸出級1606之外的輸出線卡(未示出)中。在一些實 施例中,一個或多個輸入隊列1610和/或一個或多個輸出端口 1640能被包括在交換結(jié)構(gòu) 1600的一個或多個級(例如,輸入級1602)中。在一些實施例中,輸出調(diào)度模塊1620能被 包括在一個或多個輸出線卡中和/或輸入調(diào)度模塊1630能被包括在一個或多個輸入線性 中。在一些實施例中,與交換核心1690有關(guān)的每一個線卡(例如,輸出線卡,輸入線卡)可 以包括一個或多個調(diào)度模塊(例如,輸出調(diào)度模塊、輸入調(diào)度模塊)。在一些實施例中,輸入隊列1610和/或輸出端口 1640能被包括在一個或多個位 于交換結(jié)構(gòu)1600和/或外圍處理裝置(未示出)之間的網(wǎng)關(guān)裝置(未示出)中。一個或 多個網(wǎng)關(guān)裝置、交換結(jié)構(gòu)1600和/或外圍處理裝置能共同定義數(shù)據(jù)中心(未示出)的至少 一部分。在一些實施例中,一個或多個網(wǎng)關(guān)裝置可以是在交換核心1690的邊緣部分內(nèi)的邊 緣設(shè)備。在一些實施例中,交換結(jié)構(gòu)1600和外圍處理裝置能被配置為基于不同的協(xié)議處理 數(shù)據(jù)。例如,外圍處理裝置能包括,例如一個或多個能被配置為基于以太網(wǎng)協(xié)議和可以是基 于信元的結(jié)構(gòu)的交換結(jié)構(gòu)1600而通信的主裝置(例如,被配置為執(zhí)行一個或多個虛擬資源 的主裝置、萬維網(wǎng)服務(wù)器)。換句話說,一個或多個網(wǎng)關(guān)裝置能向配置為經(jīng)由一個協(xié)議通信 的其他裝置提供到交換結(jié)構(gòu)1600的接入,該交換結(jié)構(gòu)能被配置為經(jīng)由另一個協(xié)議通信。在 一些實施例中,一個或多個網(wǎng)關(guān)裝置能被稱為接入交換或網(wǎng)絡(luò)裝置。在一些實施例中,一個 或多個網(wǎng)關(guān)裝置能被配置為作為路由器、網(wǎng)絡(luò)集線器裝置、和/或網(wǎng)絡(luò)橋裝置。在該實施例中,例如,輸入調(diào)度模塊1630能被配置為定義在輸入隊列IQ1排隊的 信元組GA以及在輸入隊列IQim排隊的信元組GC。信元組GA在輸入隊列IQ1的前部排隊, 而信元組GB在輸入隊列IQ1內(nèi)信元組GA之后排隊。因為輸入隊列IQ1是FIFO類型隊列, 信元組GB不能經(jīng)由交換結(jié)構(gòu)1600發(fā)送直到信元組GA已經(jīng)從輸入隊列IQ1發(fā)送。信元組 GC在輸入隊列IQih的前部排隊。在一些實施例中,輸入隊列1610的部分能被映射到(例如,指配到)一個或多個 輸出端口 1640。例如,輸入隊列IQ1到IQih能被映射到輸出端口 P1,從而所有在輸入端口 IQ1到IQim排隊的信元310都將由輸入調(diào)度模塊1620調(diào)度經(jīng)由交換結(jié)構(gòu)1600傳輸?shù)捷敵?端口 Pi。類似地,輸入隊列IQk能被映射到輸出端口 P2。該映射能作為例如查詢表被存儲 在存儲器(例如,存儲器1622),當(dāng)調(diào)度(例如,請求)傳輸信元組時輸入調(diào)度模塊1620能 訪問該查詢表。在一些實施例中,一個或多個輸入隊列1610能與優(yōu)先權(quán)值(還稱為傳輸優(yōu)先權(quán) 值)相關(guān)。輸入調(diào)度模塊1620能被配置為基于優(yōu)先權(quán)值從輸入隊列1610調(diào)度信元的傳輸。 例如,因為輸入隊列IQim能與比輸入隊列IQ1更高的優(yōu)先權(quán)值相關(guān)聯(lián),輸入調(diào)度模塊1620 能被配置為在請求信元組GA傳輸?shù)捷敵龆丝?P1之前請求信元組GC傳輸?shù)捷敵龆丝?P1。優(yōu) 先權(quán)值能基于服務(wù)級別(例如,服務(wù)質(zhì)量(QoS))被定義。例如,在一些實施例中,不同類型 的網(wǎng)絡(luò)通信量可以與不同的服務(wù)級別(和不同的優(yōu)先權(quán))相關(guān)聯(lián)。例如,存儲通信量(例 如,讀取和寫入通信量)、內(nèi)部處理器通信、媒體信令、會話層信令等等每一個都與至少一個 服務(wù)級別相關(guān)聯(lián)。在一些實施例中,優(yōu)先權(quán)值能基于例如IEEE802. Iqbb協(xié)議,其定義了基 于優(yōu)先權(quán)的流量控制策略。
在一些實施例中,一個或多個輸入隊列1610和/或一個或多個輸出端口 1640可 以被暫停。在一些實施例中,一個或多個輸入隊列1610和/或一個或多個輸出端口 1640 能被暫停從而信元不會丟失。例如,如果輸出端口 P1暫時不可用,則從輸入隊列IQ1*/或 輸入隊列IQih傳輸?shù)男旁鼙粫和?,從而在輸出端?P1信元不會因為輸出端口 P1暫時不 可用而丟失。在一些實施例中,一個或多個輸入隊列1610可以與優(yōu)先權(quán)值相關(guān)聯(lián)。例如, 如果輸出端口 P1擁塞,則從輸入隊列IQ1向輸出端口 P1的信元傳輸可以暫停,而不是從輸 入隊列IQih向輸出端口 P1的信元可以傳輸,因為輸入隊列IQim能與比輸入隊列IQ1更高 的優(yōu)先權(quán)值相關(guān)聯(lián)。輸入調(diào)度模塊1620能被配置為與(例如,向其發(fā)送信號以及從其接收信號)輸出 調(diào)度模塊1630交換信號以協(xié)調(diào)經(jīng)由交換結(jié)構(gòu)1600向輸出端口 P1傳輸信元組GA,以及協(xié)調(diào) 經(jīng)由交換結(jié)構(gòu)1600向輸出端口 P1傳輸信元組GC。因為信元組GA將被發(fā)送到輸出端口 P1, 該輸出端口 P1能被稱為信元組GA的目的地端口。類似地,輸出端口 P1能被稱為信元組GB 的目的地端口。如圖16A所示,信元組GA能經(jīng)由傳輸路徑4112被發(fā)送,傳輸路徑4112不 同于發(fā)送信元組GC的傳輸路徑4114。信元組GA和信元組GB由定義由輸入調(diào)度模塊1620基于在輸入隊列IQ1排隊的 信元4110定義。特別地,信元組GA能基于來自具有公共目的地端口和具有在輸入隊列IQ1 內(nèi)特定位置的信元組GA中每一個信元被定義。類似地,信元組GC能基于來自具有公共目 的地端口和具有在輸入隊列IQih內(nèi)特定位置的信元組GC中每一個信元被定義。雖然未示 出,然而在一些實施例中,例如信元4110能包括在交換核心1690從一個或多個外圍處理裝 置(例如,個人計算機、服務(wù)器、路由器、個人數(shù)字助理(PDA))經(jīng)由一個或多個可以是有線 和/或無線的網(wǎng)絡(luò)(例如,局域網(wǎng)(LAN)、廣域網(wǎng)(WAN)、虛擬網(wǎng))接收的內(nèi)容(例如,數(shù)據(jù) 分組)。涉及定義信元組,例如信元組GA、信元組GB和/或信元組GC的更多細節(jié),結(jié)合附 圖17和18進行討論。圖16B是根據(jù)一個實施例表明涉及信元組GA傳輸?shù)男帕畹男帕盍鞒虉D。如圖16B 所示,時間在下行方向上增長。在信元組GA已經(jīng)被定義(如圖16A中所示)之后,輸入調(diào) 度模塊1620能被配置為發(fā)送請求以調(diào)度信元組GA以經(jīng)由交換結(jié)構(gòu)1600傳輸;該請求作為 傳輸請求22顯示。傳輸請求22能被定義為向信元組GA的目的地端口,即輸出端口 P1發(fā)送 信元組GA的請求。在一些實施例中,信元組GA的目的地端口還能被稱為傳輸請求22的目 標(biāo)(還被稱為目標(biāo)目的地端口)。在一些實施例中,傳輸請求22可以包括經(jīng)由特定的傳輸 路徑(例如圖16A中所示的傳輸路徑4112)通過交換結(jié)構(gòu)1600,或在特定時間發(fā)送信元組 GA的請求。輸入調(diào)度模塊1620能被配置為在傳輸請求22已經(jīng)在輸入調(diào)度模塊1620被定 義之后向輸出調(diào)度模塊1630發(fā)送傳輸請求22。在一些實施例中,傳輸請求22能在被發(fā)送到交換結(jié)構(gòu)1600的輸出側(cè)之前,在交 換結(jié)構(gòu)1600的輸入側(cè)排隊。在一些實施例中,傳輸請求22能排隊直到輸入調(diào)度模塊1620 觸發(fā)發(fā)送傳輸請求22到交換結(jié)構(gòu)1600的輸出側(cè)。在一些實施例中,因為用于從交換結(jié)構(gòu) 1600的輸入側(cè)發(fā)送的傳輸請求的容量高于閾值,輸入調(diào)度模塊1620能被配置為保持(或觸 發(fā)保持)傳輸請求22在例如輸入傳輸請求隊列(未示出)中。該閾值能基于經(jīng)由交換結(jié) 構(gòu)1600的傳輸?shù)却龝r間被定義。在一些實施例中,傳輸請求22能在交換結(jié)構(gòu)1600的輸出側(cè)的輸出隊列(未示出)
32排隊。在一些實施例中,輸出隊列能被包括在位于交換結(jié)構(gòu)1600內(nèi)或外,或位于交換核心 1690外的線卡(未示出)中。雖然未示出,但是在一些實施例中,傳輸請求22能在與特定 輸入隊列(例如,輸入隊列IQ1)相關(guān)聯(lián)的輸出隊列或輸出隊列的一部分處排隊。在一些實 施例中,每一個輸出端口 1640能與輸出隊列相關(guān),輸出隊列與輸入隊列1610的優(yōu)先權(quán)值相 關(guān)聯(lián)(例如,對應(yīng)于)。例如,輸出端DP1能與和輸入隊列IQ1 (其具有特定的優(yōu)先權(quán)值)相 關(guān)聯(lián)的輸出隊列(或輸出隊列的部分)以及和輸入隊列IQk(其具有特定的優(yōu)先權(quán)值)相關(guān) 聯(lián)的輸出隊列(或輸出隊列的一部分)相關(guān)聯(lián)。因此,在輸入隊列IQ1排隊的傳輸請求22 能在與輸入隊列IQ1相關(guān)聯(lián)的輸出隊列排隊。換句話說,傳輸請求22能在(交換結(jié)構(gòu)1600 的輸出側(cè))與至少一個輸入隊列1610的優(yōu)先權(quán)值相關(guān)聯(lián)的輸出隊列排隊。類似地,傳輸請 求22能在輸入傳輸請求隊列(未示出)或與至少一個輸入隊列1610的優(yōu)先權(quán)值相關(guān)聯(lián)的 輸入傳輸隊列的一部分中排隊。如果輸出調(diào)度模塊1630確定信元組GA的目的地端口(即圖16A所示的輸出端口 P1)可用于接收信元組GA,則輸出調(diào)度模塊1630能被配置為向輸入調(diào)度模塊1620發(fā)送傳輸 響應(yīng)24。傳輸響應(yīng)24可以是例如,對于將要(例如,從圖16A所示的輸入隊列發(fā)送IQ1發(fā) 送)向信元組GA的目的地端口發(fā)送的信元組GA的授權(quán)。發(fā)送信元組的授權(quán)能稱為傳輸授 權(quán)。在一些實施例中,信元組GA和/或輸入隊列IQ1能被稱為傳輸響應(yīng)24的目標(biāo)。在一 些實施例中,當(dāng)經(jīng)過交換結(jié)構(gòu)1600的傳輸基本上被授權(quán)時,例如,因為目的地端口可用時, 對于將要被發(fā)送的信元組GA的授權(quán)能被授予。響應(yīng)于傳輸響應(yīng)24,輸入調(diào)度模塊1620能被配置為從交換結(jié)構(gòu)1600的輸入側(cè)向 交換結(jié)構(gòu)1600的輸出側(cè)經(jīng)由交換結(jié)構(gòu)1600發(fā)送信元組GA。在一些實施例中,傳輸響應(yīng)24 能包括經(jīng)由特定傳輸路徑(例如圖16A中所示的傳輸路徑4112)通過交換結(jié)構(gòu)1600,或在 特定時間發(fā)送信元組GA的指令。在一些實施例中,該指令能基于例如路由策略被定義。如圖16B所示,傳輸請求22包括信元數(shù)量值30、目的地標(biāo)識符(ID)32、隊列標(biāo)識 符(ID)34、隊列序列值(SV) 36 (其可以共同被稱為請求標(biāo)簽)。信元數(shù)量值30能體現(xiàn)包括 在信元組GA中的信元數(shù)量。例如,在該實施例中,信元組GA包括七(7)個信元(在圖16A 中所示)。目的地標(biāo)識符32能表示信元組GA的目的地端口從而傳輸請求22的目標(biāo)能由輸 出調(diào)度模塊1630確定。信元數(shù)量值30和目的地標(biāo)識符32能被輸出調(diào)度模塊1630使用以調(diào)度信元組GA 經(jīng)由交換結(jié)構(gòu)1600向輸出端口 PJ圖16A所示)傳輸。如圖16B所示,在該實施例中,因 為包括在信元組GA中的信元數(shù)量能在信元組GA的目的地段端口(例如,圖16A中所示的 輸出端DP1)被處理(例如,能被接收),輸出調(diào)度模塊1630能被配置為定義并發(fā)送傳輸響 應(yīng)24。在一些實施例中,如果因為信元組GA的目的地端口不可用(例如,在不可用狀態(tài) 中、在擁塞狀態(tài)),包括在信元組GA中的信元數(shù)量不能在信元組GA的目的地端口(例如,圖 16A中所示的輸出端口 P1)被處理(例如,不能被接收),則輸出調(diào)度模塊1630能被配置為 不可用于通信到輸入調(diào)度模塊1620。在一些實施例中,例如,輸出調(diào)度模塊1630能被配置 為當(dāng)信元組GA的目的地端口不可用時拒絕經(jīng)由交換結(jié)構(gòu)1600發(fā)送信元組GA的請求(未 示出)。傳輸請求22的拒絕能被稱為傳輸拒絕。在一些實施例中,傳輸拒絕能包括響應(yīng)標(biāo) 簽。
在一些實施例中,例如輸出端口 P1 (圖16A中所示)的可用或不可用能由輸出調(diào)度 模塊1630基于滿足的條件確定。例如,條件能涉及超過與輸出端口 P1相關(guān)聯(lián)的隊列(未在 圖16A中示出)的存儲限制、經(jīng)由輸出端口 P1的數(shù)據(jù)流量速率、準(zhǔn)備好調(diào)度用于從輸入隊列 1610經(jīng)由交換結(jié)構(gòu)1600 (圖16A中所示)傳輸?shù)男旁獢?shù)量等等。在一些實施例中,當(dāng)輸出 端口 P1被禁用時,輸出端口 P1不可用于經(jīng)由交換結(jié)構(gòu)1600接收信元。如圖16B所示,隊列標(biāo)識符34和隊列序列值36在傳輸請求22中被發(fā)送到輸出調(diào) 度模塊1630。隊列標(biāo)識符34能表示和/或能用于標(biāo)識(例如,單獨標(biāo)識)信元組GA在其 中排隊的輸入隊列IQ1 (圖16A中所示)。隊列序列值36能表示信元組GA相對于輸入隊列 IQ1內(nèi)其他信元組的位置。例如,信元組GA能與隊列序列值X相關(guān)聯(lián)而信元組GB(在如圖 16A中所示的輸入隊列IQ1處排隊)能與隊列序列值Y相關(guān)聯(lián)。隊列序列值X能指示信元 組GA將要在與隊列序列值Y相關(guān)的信元組GB之前從輸入隊列IQ1被發(fā)送。在一些實施例中,從與輸入隊列IQ1 (圖16A中所示)相關(guān)聯(lián)的隊列序列值的范圍 中選擇隊列序列值36。隊列序列值的范圍能被定義從而來自于隊列序列值范圍中的序列值 對于輸入隊列IQ1在特定的時間段內(nèi)不重復(fù)。例如,隊列序列值的范圍能被定義從而來自 于隊列序列值范圍中的隊列序列值在至少一個時間段內(nèi)不重復(fù),該時間周期需要通過交換 核心1690 (在圖16A中所示)清除一些在輸入隊列IQ1排隊的幾個信元周期(例如,信元 160)。在一些實施例中,隊列序列值能被增加(在隊列序列值范圍內(nèi))并與由輸入調(diào)度模 塊1620基于在輸入隊列IQ1排隊的信元4110定義的每一個信元組相關(guān)聯(lián)。在一些實施例中,與輸入隊列IQ1相關(guān)聯(lián)的隊列序列值范圍能與和輸入隊列 1610(圖16A中所示)的另一個相關(guān)聯(lián)的隊列序列值范圍重疊。因此,隊列序列值36,即使 來自于隊列序列值的非唯一范圍,也能被包括(例如,包括在內(nèi))隊列標(biāo)識符34(其能是唯 一的)以唯一標(biāo)識信元組GA(至少在特定的時間段期間)。在一些實施例中,隊列序列值 36在交換結(jié)構(gòu)1600內(nèi)是唯一的或是全球唯一值(⑶ID)(例如,通用唯一標(biāo)識符(UUID))。在一些實施例中,輸入調(diào)度模塊1620能被配置為等待來定義與信元組GB相關(guān)聯(lián) 的傳輸請求(未示出)。例如,輸入調(diào)度模塊1620能被配置為等待直到傳輸請求22被發(fā)送 或等待直到響應(yīng)于傳輸請求22的響應(yīng)(例如,傳輸響應(yīng)24、傳輸拒絕)在定義與信元組GB 相關(guān)聯(lián)的傳輸請求之前被接收。如圖16B所示,輸出調(diào)度模塊1630能被配置為在傳輸響應(yīng)24中包括隊列標(biāo)識符 34和隊列序列值36 (其能共同被稱為響應(yīng)標(biāo)簽)。當(dāng)傳輸響應(yīng)24在輸入調(diào)度模塊1620被 接收時,隊列標(biāo)識符34和隊列序列值36能被包括在傳輸響應(yīng)24中,從而傳輸響應(yīng)24能與 在輸入調(diào)度模塊1620的信元組GA相關(guān)聯(lián)。特別地,隊列標(biāo)識符34和隊列序列值36能共 同被用于將信元組GA標(biāo)識為授權(quán)經(jīng)由交換結(jié)構(gòu)1600傳輸。在一些實施例中,輸出調(diào)度模塊1630能被配置為延遲發(fā)送相應(yīng)于傳輸請求22的 傳輸響應(yīng)24。在一些實施例中,輸出調(diào)度模塊1630能被配置為如果例如信元組GA的目的 地端口(即圖16A中所示的輸出端口 P1)不可用(例如,臨時不可用)則延遲響應(yīng)。在一 些實施例中,輸出調(diào)度模塊1630能被配置為響應(yīng)于輸出端口 P1從不可用狀態(tài)改變?yōu)榭捎?狀態(tài)發(fā)送傳輸響應(yīng)24。在一些實施例中,輸出調(diào)度模塊1630能被配置為因為信元組GA的目的地端口 (即圖16A中所示的輸出端口 P1)從另一個輸入隊列1610接收數(shù)據(jù),而延遲發(fā)送傳輸響應(yīng)
3424。例如,因為輸出端口 P1從例如輸入隊列IQK(圖16A中所示)接收不同的信元組(未示 出),輸出端口 P1不可用于從輸入隊列IQ1接收數(shù)據(jù)。在一些實施例中,基于與輸入隊列IQ1 和輸入隊列IQk相關(guān)聯(lián)的優(yōu)先權(quán)值,來自輸入隊列IQ1的信元組能與比來自輸入隊列IQk的 信元組具有更高的優(yōu)先權(quán)值。輸出調(diào)度模塊1630能被配置為延遲發(fā)送傳輸響應(yīng)24 —時間 段,該時間段基于例如在輸出端口 P1接收的不同信元組的大小計算。例如,輸出調(diào)度模塊 1630能被配置為為了完成在輸出端口 P1的不同信元組的處理而延遲發(fā)送傳輸響應(yīng)24—個 預(yù)期時間段,傳輸響應(yīng)24目標(biāo)定于信元組GA。換句話說,輸出調(diào)度模塊1630能被配置為基 于輸出端口 P1從不可用狀態(tài)改變到可用狀態(tài)的預(yù)定時間延遲發(fā)送目標(biāo)定于信元組GA的傳 輸響應(yīng)24。在一些實施例中,因為信元組GA通過其發(fā)送的至少一部分傳輸路徑(例如圖16A 中所示的傳輸路徑4112)不可用(例如,擁塞),輸出調(diào)度模塊1630能被配置為延遲發(fā)送傳 輸響應(yīng)24。輸出調(diào)度模塊1630能被配置為延遲發(fā)送傳輸響應(yīng)24直到該部分傳輸路徑不再 擁塞,或基于該部分傳輸路徑不再擁塞的預(yù)定時間。如圖16B所示,信元組GA能基于(例如,響應(yīng)于)傳輸響應(yīng)24被發(fā)送到信元組GA 的目的地端口。在一些實施例中,信元組GA能基于一個或多個包括在傳輸響應(yīng)24中的指 令被發(fā)送。例如,在一些實施例中,信元組GA能經(jīng)由傳輸路徑4112(圖16A中所示)基于 包括在傳輸響應(yīng)24中的指令,或基于一個或多個用于經(jīng)由交換結(jié)構(gòu)1600的信元組傳輸?shù)?規(guī)則(例如,用于經(jīng)由可重組交換結(jié)構(gòu)的信元組傳輸?shù)囊?guī)則)被發(fā)送。雖然未示出,但是在 一些實施例中,在信元組GA已經(jīng)在輸出端口 P1 (圖16A中所示)被接收之后,來自信元組的 內(nèi)容(例如,數(shù)據(jù)分組)能經(jīng)由一個或多個可以是有線和/或無線的網(wǎng)絡(luò)(例如,LAN、WAN、 虛擬網(wǎng))被發(fā)送到一個或多個網(wǎng)絡(luò)實體(例如,個人計算機、服務(wù)器、路由器、PDA)。重新參考圖16A,在一些實施例中,信元組GA經(jīng)由傳輸路徑4112被發(fā)送且在相比 于例如輸入隊列1610相對小的輸出隊列(未示出)被接收。在一些實施例中,輸出隊列 (或輸出隊列的一部分)能與優(yōu)先權(quán)值有關(guān)。優(yōu)先權(quán)值能與一個或多個輸入隊列1610相關(guān) 聯(lián)。輸出調(diào)度模塊1630能被配置為從輸出隊列提取信元組GA并能被配置為向輸出端口 P1 發(fā)送信元組GA。在一些實施例中,當(dāng)信元組GA被發(fā)送到交換結(jié)構(gòu)1600的輸出側(cè)時,信元組GA伴 隨包括在信元組GA內(nèi)的響應(yīng)標(biāo)識符一起能由輸入調(diào)度模塊1620提取并發(fā)送到輸出端口 Piq響應(yīng)標(biāo)識符能在輸出調(diào)度模塊1630被定義并被包括在傳輸響應(yīng)24中。在一些實施例 中,如果信元組GA在與信元組GA的目的地端口相關(guān)聯(lián)的輸出隊列(未示出)排隊,則響應(yīng) 標(biāo)識符能用于從信元組GA的目的地端口提取信元組GA,從而信元組GA能從交換結(jié)構(gòu)1600 經(jīng)由信元組GA的目的地端口被發(fā)送。響應(yīng)標(biāo)識符能與在輸出隊列中的位置相關(guān)聯(lián),該輸出 隊列已經(jīng)由輸出調(diào)度模塊1630為信元組GA的排隊保留。在一些實施例中,當(dāng)與信元組相關(guān)聯(lián)的傳輸請求(例如圖16B中所示的傳輸請 求22)被定義時,在輸入隊列1610排隊的信元組能被移動到存儲器1622。例如,在輸入隊 列IQk排隊的信元組GD能響應(yīng)于與信元組GD相關(guān)聯(lián)的傳輸請求被定義而被移動到存儲器 1622。在一些實施例中,信元組⑶能在與信元組⑶相關(guān)聯(lián)的傳輸請求從輸入調(diào)度模塊1620 向輸出調(diào)度模塊1630發(fā)送之前被移動到存儲器1622。信元組GlD能被存儲在存儲器1622 中,直到信元組⑶從交換結(jié)構(gòu)1600的輸入側(cè)向交換結(jié)構(gòu)1600的輸出側(cè)發(fā)送。在一些實施例中,信元組能被移動到存儲器1622,從而減少在輸入隊列的擁塞(例如,線頭(HOL) 阻塞)。在一些實施例中,輸入調(diào)度模塊1620能被配置為基于與信元組相關(guān)聯(lián)的隊列標(biāo) 識符和/或隊列序列值提取存儲在存儲器1622中的信元組。在一些實施例中,信元在存儲 器1622內(nèi)的信元組位置能基于查詢表和/或索引值被確定。信元組能在信元組被從交換 結(jié)構(gòu)1600的輸入側(cè)向交換結(jié)構(gòu)1600的輸出側(cè)發(fā)送之前被提取。例如,信元組GD能與隊列 標(biāo)識符和/或隊列序列值有關(guān)聯(lián)。信元組GD存儲在存儲器1622內(nèi)的位置能與隊列標(biāo)識符 和/或隊列序列值相關(guān)聯(lián)。由輸入調(diào)度模塊1620定義并向輸出調(diào)度模塊1630發(fā)送的傳輸 請求能包括隊列標(biāo)識符和/或隊列序列值。從輸出調(diào)度模塊1630接收的傳輸響應(yīng)能包括 隊列標(biāo)識符和/或隊列序列值。響應(yīng)于傳輸響應(yīng),輸入調(diào)度模塊1620能被配置為在基于隊 列標(biāo)識符和/或隊列序列值的位置從存儲器1622中提取信元組⑶,且輸入調(diào)度模塊1620 能觸發(fā)信元組GD的傳輸。在一些實施例中,包括在信元組內(nèi)的一些信元數(shù)目能基于在存儲器1622中的可 用空間量被定義。例如,輸入調(diào)度模塊1620能被配置為基于在信元組GD被定義時包括在 存儲器1622內(nèi)的可用存儲空間量確定包括在信元組GD內(nèi)的信元數(shù)量。在一些實施例中, 如果包括在存儲器1622中的可用存儲空間量增長,則包括在信元組GD內(nèi)的信元數(shù)量能增 長。在一些實施例中,在信元組GD被移動到存儲器1622用于存儲之前和/或之后,包括在 信元組⑶中的信元數(shù)量能由輸入調(diào)度模塊1620增長。在一些實施例中,包括在信元組內(nèi)的一些信元的數(shù)量能基于經(jīng)過例如交換結(jié)構(gòu) 1600的傳輸?shù)牡却龝r間被定義。特別地,鑒于與交換結(jié)構(gòu)1600相關(guān)聯(lián)的等待時間,輸入調(diào) 度模塊1620能被配置為定義信元組的大小以促使流量經(jīng)過交換結(jié)構(gòu)1600。例如,因為信元 組已經(jīng)達到基于交換結(jié)構(gòu)1600的等待時間定義的閾值大小,輸入調(diào)度模塊1620能被配置 為關(guān)閉信元組(例如,定義信元組的大小)。在一些實施例中,輸入調(diào)度模塊1620能被配置 為立即發(fā)送信元組中的數(shù)據(jù)分組,而不是等待另外的數(shù)據(jù)分組來定義更大的信元組,因為 經(jīng)過交換結(jié)構(gòu)1600的等待時間短。在一些實施例中,輸入調(diào)度模塊1620能被配置為限制從交換結(jié)構(gòu)1600的輸入側(cè) 向交換結(jié)構(gòu)1600的輸出側(cè)發(fā)送的傳輸請求的數(shù)量。在一些實施例中,該限制能基于存儲在 輸入調(diào)度模塊1620的策略被定義。在一些實施例中,該限制能基于與一個或多個輸入隊 列1610相關(guān)聯(lián)的優(yōu)先權(quán)值被定義。例如,輸入調(diào)度模塊1620能被配置為允許(基于閾值 限制)與輸入隊列IQ1相關(guān)聯(lián)的傳輸請求比來自輸入隊列IQk的傳輸請求多,因為輸入隊列 IQ1具有比輸入隊列IQk更高的優(yōu)先權(quán)值。在一些實施例中,輸入調(diào)度模塊1620和/或輸出調(diào)度模塊1630的一個或多個部 分可以是基于硬件的模塊(例如,DSP、FPGA)和/或基于軟件的模塊(例如,計算機代碼模 塊、能在處理器上執(zhí)行的處理器可讀指令集)。在一些實施例中,與輸入調(diào)度模塊1620和/ 或輸出調(diào)度模塊1630相關(guān)聯(lián)的一個或多個功能能被包括在不同的模塊中和/或結(jié)合成一 個或多個模塊。例如,信元組GA能由輸入調(diào)度模塊1620內(nèi)的第一子模塊定義以及傳輸請 求22(圖16B所示)能由輸入調(diào)度模塊1620內(nèi)的第二子模塊定義。在一些實施例中,交換結(jié)構(gòu)1600具有比在圖16A中所示的更多或更少級。在一些 實施例中,交換結(jié)構(gòu)1600可以是可重配置(例如,可重組)的交換結(jié)構(gòu)和/或時分復(fù)用交換結(jié)構(gòu)。在一些實施例中,交換結(jié)構(gòu)1600能基于Clos(克洛斯)網(wǎng)絡(luò)體系結(jié)構(gòu)(例如,嚴 格意義上的無阻塞Clos (克洛斯)網(wǎng)絡(luò)、Benes (巴內(nèi)斯)網(wǎng)絡(luò))被定義。圖17是根據(jù)一個實施例表明在位于交換結(jié)構(gòu)1700輸入側(cè)的輸入隊列1720處排 隊的兩個信元組的示意框圖。信元組由輸入調(diào)度模塊1740在交換結(jié)構(gòu)1700的輸入側(cè)上定 義,交換結(jié)構(gòu)1700可以是例如與交換核心相關(guān)聯(lián)和/或被包括在例如圖16A中所示的交換 核心中。輸入隊列1720還在交換結(jié)構(gòu)1700的輸入側(cè)上。在一些實施例中,輸入隊列1720 能被包括在與交換結(jié)構(gòu)1700相關(guān)聯(lián)的輸入線卡(未示出)中。雖然未示出,然而在一些實 施例中,一個或多個信元組能包括多個信元(例如,25個信元、10個信元、100個信元)或僅 一個信元。如圖17所示,輸入隊列1720包括信元1到T(即信元工到信元τ),其能共同被稱 為排隊信元1710。輸入隊列1720是FIFO類型隊列,信元工位于隊列的前端1724(或傳輸 端)以及信元4立于隊列的后端1722(或入口端)。如圖17所示,在輸入隊列1720處的排 隊信元1710包括第一信元組1712和第二信元組1716。在一些實施例中,來自于排隊信元 1710的每一個信元具有相等的長度(例如,32比特長度、64比特長度)。在一些實施例中, 排隊信元1710中的兩個或更多能具有不同的長度。來自于排隊信元1710的每一個信元具有為向由來自于排隊信元1710的每一個信 元上的輸出端口標(biāo)簽(例如,字母“E”、字母“F”)指示的四個輸出端口 1770中的一個-輸 出端口 E、輸出端口 F、輸出端口 G、或輸出端口 H傳輸排隊的內(nèi)容。信元被發(fā)送至的輸出端 口 1770能被稱為目的地端口。排隊信元1710每一個能經(jīng)由交換結(jié)構(gòu)1700被發(fā)送到其相 對應(yīng)的目的地端口。在一些實施例中,輸入調(diào)度模塊1740能被配置為基于例如像路由表一 樣的查詢表(LUT)確定對于來自于排隊信元1710的每一個信元的目的地端口。在一些實 施例中,來自于排隊信元1710的每一個信元的目的地端口能基于包括在信元內(nèi)的內(nèi)容(例 如,數(shù)據(jù))的目的地被確定。在一些實施例中,一個或多個輸出端口 1770能與輸出隊列相 關(guān)聯(lián),輸出隊列中信元能排隊直到經(jīng)由輸出端口 1770被發(fā)送。第一信元組1712和第二信元組1716能由輸入調(diào)度模塊1740基于排隊信元1710 的目的地端口被定義。如圖17所示,包括在第一信元組1712中的每一個信元具有由輸出 端口標(biāo)簽“E”指示的相同目的地端口(即,輸出端口 E)。類似地,包括在第二信元組1716 中的每一個信元具有由輸出端口標(biāo)簽“F”指示的相同目的地端口(即,輸出端口 F)。信元組(例如,第一信元組1712)能基于目的地端口被定義,因為信元組經(jīng)由交 換結(jié)構(gòu)1700作為組被發(fā)送。例如,如果信元工被包括在第一信元組1712中,則第一信元組 1712不能被發(fā)送到單獨的目的地端口,因為信元工具有與信元2到信元7 (輸出端口 “E”)不 同的目的地端口(輸出端口“F”)。這樣,第一信元組1712不經(jīng)由交換結(jié)構(gòu)1700作為組被 傳送。信元組作為連續(xù)的信元塊被定義,因為信元組經(jīng)由交換結(jié)構(gòu)1700作為組被發(fā)送 而且因為輸入隊列1720是FIFO類型的隊列。例如,信元12,以及信元2到信元7不能作為 信元組被定義,因為信元12不能和信元2到信元7的信元塊一起被發(fā)送。信元8到信元n是 介于中間的信元,其在信元2到信元7從輸入隊列1720被發(fā)送之后,但是在信元12從輸入隊 列1720被發(fā)送之前必須從輸入隊列1720被發(fā)送。在一些實施例中,如果輸入隊列1720不 是FIFO類型隊列,一個或多個排隊信元1710可能不按順序發(fā)送以及組可能跨越介于中間
37的信元。雖然未示出,然而來自于排隊信元1710的每一個信元可以具有能被稱為信元序 列值的序列值。信元序列值能表示例如信元2相對于信元3的順序。信元序列值能用于在 例如一個或多個輸出端口 1770在與信元相關(guān)聯(lián)的內(nèi)容從輸出端口 1770被發(fā)送之前重排列 信元。例如,在一些實施例中,信元組1712能在與輸出端口 E相關(guān)聯(lián)的輸出隊列(未示出) 被接收并基于信元序列值重排列。在一些實施例中,輸出隊列可以相比輸入隊列1720相對 小(例如,淺(shallow)輸出隊列)。此外,包括在信元內(nèi)的數(shù)據(jù)(例如,數(shù)據(jù)分組)還能具有被稱為數(shù)據(jù)序列值的序列 值。例如,數(shù)據(jù)序列值能表示例如第一數(shù)據(jù)分組相對于第二數(shù)據(jù)分組的相對順序。數(shù)據(jù)序 列值能被用于在例如一個或多個輸出端口 1770處在數(shù)據(jù)分組從輸出端口 1770被發(fā)送之前 重排列數(shù)據(jù)分組。圖18是根據(jù)另一個實施例有明在位于交換結(jié)構(gòu)1800輸入側(cè)的輸入隊列1820處 排隊的兩個信元組的示意框圖。信元組由輸入調(diào)度模塊1840在交換結(jié)構(gòu)1800輸入側(cè)上定 義,交換結(jié)構(gòu)1800可以是例如與交換核心相關(guān)聯(lián)和/或被包括在如圖16A所示的交換核心 中。輸入隊列1820還在交換結(jié)構(gòu)1800的輸入側(cè)上。在一些實施例中,輸入隊列1820能被 包括在與交換結(jié)構(gòu)1800相關(guān)聯(lián)的輸入線卡(未示出)中。雖然未示出,然而在一些實施例 中,一個或多個信元組能包括僅一個信元。如圖18所示,輸入隊列1820包括信元1到Z(即信元i到信元z),其共同被稱為 排隊信元1810。輸入隊列1820是FIFO類型隊列,其中信元工在隊列的前端1824(或傳輸 端)以及信元2在隊列的后端1822(或入口端)。如圖18所示,在輸入隊列1820處的排隊 信元1810包括第一信元組1812和第二信元組1816。在一些實施例中,來自排隊信元1810 的每一個信元具有相等的長度(例如,32比特長度,64比特長度)。在一些實施例中,兩個 或更多排隊信元1810具有不同的長度。在該實施例中,輸入隊列1820被映射到輸出端口 F2從而所有的信元1810由輸入調(diào)度模塊1840調(diào)度用于經(jīng)由交換結(jié)構(gòu)1800傳輸?shù)捷敵龆?Π F2。來自于排隊信元1810的每一個信元具有與一個或多個數(shù)據(jù)分組(例如,以太網(wǎng)數(shù) 據(jù)分組)相關(guān)聯(lián)的內(nèi)容。該數(shù)據(jù)分組由字母“Q”到“Y”表示。例如,如圖18所示,數(shù)據(jù)分 組R被分割成三個不同的信元,信元2,信元3和信元4。信元組(例如,第一信元組1812)被定義,從而部分數(shù)據(jù)分組不關(guān)聯(lián)到不同的信元 組。換句話說,信元組被定義,從而所有的數(shù)據(jù)分組都關(guān)聯(lián)到單獨的信元組。信元組的邊界 基于在輸入隊列1820處排隊的數(shù)據(jù)分組的邊界被定義,從而數(shù)據(jù)分組不被包括在不同的 信元組中。分割數(shù)據(jù)分組為不同的信元組可能導(dǎo)致不期望的結(jié)果,例如在交換結(jié)構(gòu)1800輸 出側(cè)的緩沖。例如,如果數(shù)據(jù)分組T的第一部分(例如信元6)被包括在第一信元組1812中 以及數(shù)據(jù)分組T的第二部分(例如信元7)被包括在第二信元組1816,則數(shù)據(jù)分組T的第一 部分必須在交換結(jié)構(gòu)1800輸出側(cè)的一個或多個輸出隊列(未示出)中的至少一部分處緩 沖,直到數(shù)據(jù)分組T的第二部分被發(fā)送到交換結(jié)構(gòu)1800輸出側(cè),從而全部數(shù)據(jù)分組T從交 換結(jié)構(gòu)1800經(jīng)由輸出端口 Ε2被發(fā)送。在一些實施例中,包括在排隊信元1810內(nèi)的數(shù)據(jù)分組也能具有序列值,其被稱為 數(shù)據(jù)序列值。數(shù)據(jù)序列值能表示例如數(shù)據(jù)分組R相對于數(shù)據(jù)分組S的相對順序。數(shù)據(jù)序列值能被用于在數(shù)據(jù)分組從輸出端口 1870被發(fā)送之前,在例如一個或多個輸出端口 1870處 重組數(shù)據(jù)分組。圖19是根據(jù)一個實施例表明經(jīng)由交換結(jié)構(gòu)調(diào)度信元組傳輸?shù)姆椒鞒虉D。如圖 19所示,在1900,信元在輸入隊列處排隊用于傳輸?shù)闹甘痉?jīng)由交換結(jié)構(gòu)被接收。在一些 實施例中,交換結(jié)構(gòu)能夠基于Clos (克洛斯)體系結(jié)構(gòu),且可以具有多級。在一些實施例中, 交換結(jié)構(gòu)能與交換核心相關(guān)聯(lián)(例如,在其之內(nèi))。在一些實施例中,當(dāng)新信元在輸入隊列 被接收時,或當(dāng)信元準(zhǔn)備好(或馬上準(zhǔn)備好)經(jīng)由交換結(jié)構(gòu)被發(fā)送時,指示符能被接收。在1910,具有共同目的地的信元組根據(jù)在輸入隊列處排隊的信元被定義。來自于 信元組的每一個信元的目的地基于查詢表被確定。在一些實施例中,目的地基于策略和/ 或基于分組分類算法被確定。在一些實施例中,共同目的地可以是與交換結(jié)構(gòu)輸入部分相 關(guān)聯(lián)的共同目的地端口。在1920,請求標(biāo)簽與信元組相關(guān)。請求標(biāo)簽可以包括例如,一個或多個信元數(shù)量 值、目的地標(biāo)識符、隊列標(biāo)識符、隊列序列值等等。在信元組被發(fā)送到交換結(jié)構(gòu)的輸入側(cè)之 前,請求標(biāo)簽可以與信元組相關(guān)聯(lián)。在1930,包括請求標(biāo)簽的傳輸請求被發(fā)送到輸出調(diào)度模塊。在一些實施例中,傳 輸請求包括在特定時間或經(jīng)由特定傳輸路徑被發(fā)送的請求。在一些實施例中,傳輸請求能 在信元組已經(jīng)被存儲在與交換結(jié)構(gòu)輸入級相關(guān)聯(lián)的存儲器中之后被發(fā)送。在一些實施例 中,信元組能被移動到存儲器以減少在輸入隊列處擁塞的可能性。換句話說,信元組能被移 動到存儲器從而在信元組之后排隊的其他信元能被準(zhǔn)備用于從輸入隊列處的傳輸(或發(fā) 送),而不需要等待信元組從輸入隊列處發(fā)送。在一些實施例中,傳輸請求可以是發(fā)送到特 定輸出端口(例如,特定的目的地端口)的請求。在1950,當(dāng)響應(yīng)于傳輸請求,經(jīng)由交換結(jié)構(gòu)的傳輸在1940沒有被授權(quán)時,包括響 應(yīng)標(biāo)簽的傳輸拒絕被發(fā)送到輸入調(diào)度模塊。在一些實施例中,傳輸請求可以被拒絕,因為交 換結(jié)構(gòu)擁塞、目的地端口不可用等等。在一些實施例中,傳輸請求能被拒絕一個特定的時間 段。在一些實施例中,響應(yīng)標(biāo)簽可以包括一個或多個能被用于將傳輸拒絕與信元組關(guān)聯(lián)的 標(biāo)識符。如果在1940經(jīng)由交換結(jié)構(gòu)的傳輸被授權(quán),則在1960,包括到輸入調(diào)度模塊的響應(yīng) 標(biāo)簽的傳輸響應(yīng)被發(fā)送。在一些實施例中,傳輸響應(yīng)可以是傳輸授權(quán)。在一些實施例中,傳 輸響應(yīng)可以在信元組的目的地準(zhǔn)備好(或馬上準(zhǔn)備好)接收信元組之后被發(fā)送。在1970,信元組基于響應(yīng)標(biāo)簽被提取。如果信元組已經(jīng)被移動至存儲器,則信元組 能從存儲器中被提取。如果信元組在輸入隊列處排隊,則信元組能從輸入隊列被提取。信 元組可以基于包括在響應(yīng)標(biāo)簽中的隊列標(biāo)識符和/或隊列序列值被提取。隊列標(biāo)識符和/ 或隊列序列值可來自于隊列標(biāo)簽。在1980,信元組可經(jīng)由交換結(jié)構(gòu)被發(fā)送。信元組可根據(jù)包括在傳輸響應(yīng)中的指令 經(jīng)由交換結(jié)構(gòu)被發(fā)送。在一些實施例中,信元組可在特定的時間和/或經(jīng)由特定的傳輸路 徑被發(fā)送。在一些實施例中,信元組可經(jīng)由交換結(jié)構(gòu)向例如輸出端口的目的地發(fā)送。在一 些實施例中,在經(jīng)由交換結(jié)構(gòu)被發(fā)送之后,信元組能在與信元組的目的地(例如,目的地端 口)相關(guān)聯(lián)的輸出隊列處排隊。
39
圖20是根據(jù)一個實施例表明與傳輸請求相關(guān)聯(lián)的請求序列值處理的信令流程 圖。如圖20所示,傳輸請求52從在交換結(jié)構(gòu)輸入側(cè)上的輸入調(diào)度模塊2020被發(fā)送到在交 換結(jié)構(gòu)輸出側(cè)上的輸出調(diào)度模塊2030。傳輸請求56在傳輸請求52被發(fā)送之后從輸入調(diào)度 模塊2020被發(fā)送到輸出調(diào)度模塊2030。如圖20所示,傳輸請求54從輸入調(diào)度模塊2020 被發(fā)送,但是不由輸出調(diào)度模塊2030接收。傳輸請求52、傳輸請求54和傳輸請求56每一 個都與相同的輸入隊列IQl相關(guān)聯(lián),如其相應(yīng)的隊列標(biāo)識符所指示,以及與相同的目的地 端口 EPl有關(guān),如其相應(yīng)的目的地標(biāo)識符所指示。傳輸請求52,傳輸請求54和傳輸請求56 可共同被稱為傳輸請求58。如圖20所示,時間在下行方向上增長。如圖20所示,每一個傳輸請求58可包括請求序列值(SV)。請求序列值可表示傳 輸請求相對于其他傳輸請求的序列。在該實施例中,請求序列值可來自于與目的地端口 EPl 相關(guān)聯(lián)的請求序列值的范圍,并且按數(shù)值順序以全整數(shù)的形式增長。在一些實施例中,請求 序列值可以是例如串(strings),并且能以不同的順序(例如,相反的數(shù)值順序)增長。傳 輸請求52包括請求序列值5200,傳輸請求54包括請求序列值5201,以及傳輸請求56包括 請求序列值5202。在該實施例中,請求序列值5200指示傳輸請求52在傳輸請求54之前被 定義以及被發(fā)送,傳輸請求54具有請求序列值5201。輸出調(diào)度模塊2030能基于請求序列值確定從輸入調(diào)度模塊2020的傳輸請求的傳 輸可能已經(jīng)失敗。特別地,輸出調(diào)度模塊2030能確定與請求序列值5201相關(guān)聯(lián)的傳輸請 求不在傳輸請求56被接收之前被接收,傳輸請求56與請求序列值5202有關(guān)。在一些實施 例中,當(dāng)在傳輸請求52和傳輸請求56的接收之間的時間段(顯示為時間段2040)超過閾 值時間段時,輸出調(diào)度模塊2030能執(zhí)行關(guān)于丟失的傳輸請求54的動作。在一些實施例中, 輸出調(diào)度模塊2030能請求輸入調(diào)度模塊2020重傳傳輸請求54。輸出調(diào)度模塊2030可包 括丟失的請求序列值,從而輸入調(diào)度模塊2020能識別傳輸請求54未被接收。在一些實施 例中,輸出調(diào)度模塊2030能拒絕包括在傳輸請求56中的用于傳輸信元組的請求。在一些 實施例中,輸出調(diào)度模塊2030能被配置為基于隊列序列值以基本上類似于和請求序列值 一起被描述方法的方式處理和/或響應(yīng)傳輸請求(例如傳輸請求58)。圖21是根據(jù)一個實施例表明與傳輸響應(yīng)有關(guān)的響應(yīng)序列值的信令流程圖。如圖 21所示,傳輸響應(yīng)62從交換結(jié)構(gòu)輸出側(cè)上的輸出調(diào)度模塊2130被發(fā)送到交換結(jié)構(gòu)輸入側(cè) 的輸入調(diào)度模塊2120。傳輸響應(yīng)66在傳輸響應(yīng)62被發(fā)送之后從輸出調(diào)度模塊2130發(fā)送 到輸入調(diào)度模塊2120。如圖21所示,傳輸響應(yīng)64從輸出調(diào)度模塊2130發(fā)送,但是不由輸 入調(diào)度模塊2120接收。傳輸響應(yīng)62、傳輸響應(yīng)64和傳輸響應(yīng)66與相同的由其相應(yīng)地隊列 標(biāo)識符指示的輸入隊列IQ2相關(guān)聯(lián)。傳輸響應(yīng)62、傳輸響應(yīng)64和傳輸響應(yīng)66可共同被稱 為傳輸響應(yīng)68。如圖21所示,時間在下行方向上增長。如圖21所示,每一個傳輸響應(yīng)68可包括響應(yīng)序列值(SV)。響應(yīng)序列值可表示相 對于其他傳輸響應(yīng)的傳輸響應(yīng)序列。在該實施例中,響應(yīng)序列值可以來自于與輸入隊列IQ2 相關(guān)聯(lián)的響應(yīng)序列值的范圍,并且按照數(shù)值順序以全整數(shù)的形式增長。在一些實施例中,響 應(yīng)序列值可以是例如串,并且能以不同的順序(例如,反向數(shù)值順序)增長。傳輸響應(yīng)62 可包括響應(yīng)序列值5300,傳輸響應(yīng)64包括響應(yīng)序列值5301,且傳出響應(yīng)66包括響應(yīng)序列 值5302。在該實施例中,響應(yīng)序列值5300指示傳輸響應(yīng)62在具有相應(yīng)序列值5301的傳輸 響應(yīng)64之前被定義及發(fā)送。
40
輸入調(diào)度模塊2120能基于響應(yīng)序列值確定從輸出調(diào)度模塊2130的傳輸響應(yīng)的傳 輸可能已經(jīng)失敗。特別地,輸入調(diào)度模塊2120能確定與響應(yīng)序列值5301相關(guān)聯(lián)的傳輸響應(yīng) 不在傳輸響應(yīng)66被接收之前被接收,傳輸響應(yīng)66與響應(yīng)序列值5302相關(guān)聯(lián)。在一些實施 例中,當(dāng)在傳輸響應(yīng)62和傳輸響應(yīng)66的接收之間的時間段(顯示為時間周期2140)超過 閾值時間周期時,輸入調(diào)度模塊2120能執(zhí)行關(guān)于丟失的傳輸響應(yīng)64的動作。在一些實施 例中,輸入調(diào)度模塊2120能請求輸出調(diào)度模塊2130重傳傳輸響應(yīng)64。輸入調(diào)度模塊2120 可包括丟失的響應(yīng)序列值,從而輸出調(diào)度模塊2130能識別傳輸響應(yīng)64未被接收。在一些 實施例中,當(dāng)與傳輸請求相關(guān)聯(lián)的傳輸響應(yīng)在特定的時間周期內(nèi)未被接收時,輸入調(diào)度模 塊2120能丟棄信元組。圖22是根據(jù)一個實施例表明流量可控隊列的多級的示意框圖。如圖22所示,第一 級隊列2210的發(fā)送側(cè)和第二級隊列2220的發(fā)送側(cè)被包括在物理鏈路2200發(fā)送側(cè)上的源 實體2230中。第一級隊列2210的接收側(cè)和第二級隊列2220的接收側(cè)被包括在物理鏈路 2200接收側(cè)上的目的實體2240中。源實體2230和/或目的實體2240可以是任意類型的 計算裝置(例如,交換核心的一部分、外圍處理裝置),其可以被配置為經(jīng)由物理鏈路2200 接收和/或發(fā)送數(shù)據(jù)。在一些實施例中,源實體2230和/或目的實體2240可以與數(shù)據(jù)中 心相關(guān)聯(lián)。如圖22所示,第一級隊列2210包括在物理鏈路2200發(fā)送側(cè)上的發(fā)送隊列A1到 A4(稱為第一級發(fā)送隊列2234)以及在物理鏈路2200接收側(cè)上的接收隊列D1到D4(稱為 第一級接收隊列2244)。第二級隊列2220包括在物理鏈路2200發(fā)送側(cè)上的發(fā)送隊列B1和 B2 (稱為第二級發(fā)送隊列2232)以及物理鏈路2200接收側(cè)上的接收隊列C1和C2 (稱為第二 級接收隊列2242)。經(jīng)由物理鏈路2200的數(shù)據(jù)流能夠基于與在源實體2230和目的實體2240之間的 流量控制環(huán)相關(guān)聯(lián)的流量控制信令被控制(例如,修改、暫停)。例如,從物理鏈路2200發(fā) 送側(cè)上的源實體2230發(fā)送的數(shù)據(jù)能在物理鏈路2200接收側(cè)上的目的實體2240接收。當(dāng) 目的實體2240不可用于從源實體2230經(jīng)由物理鏈路2200接收數(shù)據(jù)時,流量控制信號能在 目的實體2240處被定義和/或能從目的實體2240被發(fā)送到源實體2230。流量控制信號能 被配置為觸發(fā)源實體2230以修改從源實體2230到目的實體2240的數(shù)據(jù)流。例如,如果接收隊列D2不可用于處理從發(fā)送隊列A1發(fā)送的數(shù)據(jù),則目的實體2240 能被配置為向源實體2230發(fā)送與流量控制環(huán)相關(guān)聯(lián)的流量控制信號;流量控制信號能被 配置為觸發(fā)從發(fā)送隊列A1向接收隊列D2經(jīng)由傳輸路徑的數(shù)據(jù)傳輸?shù)臅和#瑐鬏斅窂桨ǖ?二級隊列2220的至少一部分和物理鏈路2200。在一些實施例中,接收隊列D2可能不可用, 例如,當(dāng)接收隊列D2太滿而不能接接收數(shù)據(jù)時。在一些實施例中,接收隊列D2能響應(yīng)于先 前從發(fā)送隊列A1接收的數(shù)據(jù)從可用狀態(tài)改變?yōu)椴豢捎脿顟B(tài)(例如,擁塞狀態(tài))。在一些實 施例中,發(fā)送隊列A1能被稱為流量控制信號的目標(biāo)。發(fā)送隊列A1能在流量控制信號內(nèi)基于 與發(fā)送隊列A1相關(guān)聯(lián)的隊列標(biāo)識符被識別。在一些實施例中,流量控制信號能被稱為反饋 信號。在該實施例中,流量控制環(huán)與物理鏈路2200相關(guān)聯(lián)(稱為物理鏈路控制環(huán)),流 量控制環(huán)與第一級隊列2210相關(guān)聯(lián)(稱為第一級控制環(huán)),以及流量控制環(huán)與第二級隊列 2220相關(guān)聯(lián)(稱為第二級控制環(huán))。特別地,物理鏈路控制環(huán)與包括物理鏈路2200且不包括第一級隊列2210和第二級隊列2200的傳輸路徑相關(guān)聯(lián)。經(jīng)由物理鏈路2200的數(shù)據(jù)流 能基于與物理鏈路控制環(huán)有關(guān)的流量控制信令被接通和斷開。第一級控制環(huán)可以基于來自于第二級隊列2210內(nèi)的至少一個發(fā)送隊列2234的數(shù) 據(jù)傳輸以及基于第一級隊列2210內(nèi)至少一個接收隊列2244可用性(例如,可用性的指示 符)定義的流量控制信號。這樣,第一級控制環(huán)能被稱為與第一級隊列2210相關(guān)聯(lián)。第一 級控制環(huán)能與包括物理鏈路2200、第二級隊列2220的至少一部分和第一級隊列2210的至 少一部分的傳輸路徑相關(guān)聯(lián)。與第一級控制環(huán)有關(guān)的流量控制信令能觸發(fā)控制來自與第一 級隊列2210相關(guān)聯(lián)的發(fā)送隊列2234的數(shù)據(jù)流。第二級控制環(huán)能與包括物理鏈路2200以及包括第二級隊列2220的至少一部分, 但不包括第一級隊列2210的傳輸路徑相關(guān)聯(lián)。第二級控制環(huán)能基于從第二級隊列2220內(nèi) 至少一個發(fā)送隊列2232和基于第二級隊列2220內(nèi)至少一個接收隊列2242可用性(例如, 可用性的指示符)定義的流量控制信號的數(shù)據(jù)傳輸。這樣,第二級控制環(huán)能被稱為與第二 級隊列2220相關(guān)聯(lián)。與第二級控制環(huán)相關(guān)聯(lián)的流量控制信令能觸發(fā)控制從與第二級隊列 2220相關(guān)聯(lián)的發(fā)送隊列2232的數(shù)據(jù)流。在該實施例中,與第二級隊列2220相關(guān)聯(lián)的流量控制環(huán)是基于優(yōu)先權(quán)的流量控 制環(huán)。特別地,來自于第二級發(fā)送隊列2232的每一個發(fā)送隊列與來自于第二級接收隊列 2242的接收隊列配對;以及每一個隊列對與服務(wù)級別(還被稱為服務(wù)等級或服務(wù)質(zhì)量)有 關(guān)。在該實施例中,第二級發(fā)送隊列B1和第二級發(fā)送隊列C1定義隊列對且與服務(wù)級別X相 關(guān)聯(lián)。第二級發(fā)送隊列B2和第二級發(fā)送隊列C2定義隊列對并與服務(wù)級別Y相關(guān)聯(lián)。在一 些實施例中,不同類型的網(wǎng)絡(luò)通信量可以與不同服務(wù)級別(即不同優(yōu)先權(quán))相關(guān)聯(lián)。例如, 存儲通信量(例如,讀取和寫入通信量)、內(nèi)部處理器通信、媒體信令、會話層信令等等可以 與至少一服務(wù)級別相關(guān)。在一些實施例中,第二級控制環(huán)可以基于,例如電氣和電子工程師 協(xié)會(IEEE)802. Iqbb協(xié)議,其定義基于優(yōu)先權(quán)的流量控制策略。經(jīng)由傳輸路徑74的數(shù)據(jù)流量,如圖22所示,能使用至少一個控制環(huán)被控制。傳輸 路徑74包括第一級發(fā)送隊列A2、第二級發(fā)送隊列B1、物理鏈路2200、第二級接收隊列C1和 第一級接收隊列D3。然而,經(jīng)由傳輸路徑74 一級中的隊列基于與該級相關(guān)聯(lián)的流量控制環(huán) 的數(shù)據(jù)流中的改變,能夠通過傳輸路徑74的另一級影響數(shù)據(jù)流。在一級處的流量控制能影 響在另一級的數(shù)據(jù)流,因為源實體2230內(nèi)的隊列(例如,發(fā)送隊列2232、發(fā)送隊列2234)和 目的實體2240內(nèi)的隊列(例如,接收隊列2242、接收隊列2244)是分級段的。換句話說,基 于一流量控制環(huán)的流量控制能具有經(jīng)由與不同流量控制環(huán)相關(guān)聯(lián)的因素對數(shù)據(jù)流產(chǎn)生影 響。例如,從第一級發(fā)送隊列A1經(jīng)由傳輸路徑74到第一級接收隊列D3的數(shù)據(jù)流能基 于一個或多個控制環(huán)_第一級控制環(huán)、第二級控制環(huán)和/或物理鏈路控制環(huán)被修改。到第 一級接收隊列D3的數(shù)據(jù)流的暫停可能由于第一級接收隊列D3從可用狀態(tài)改變?yōu)椴豢捎脿?態(tài)(例如,擁塞狀態(tài))而被觸發(fā)。如果到第一級接收隊列D3的數(shù)據(jù)流與服務(wù)級別X相關(guān)聯(lián),則經(jīng)由第二級發(fā)送隊列 B1和第二級接收隊列C1 (其定義與服務(wù)級別X相關(guān)聯(lián)的隊列對)的數(shù)據(jù)流能基于與第二級 控制環(huán)(其是基于優(yōu)先權(quán)的控制環(huán))相關(guān)聯(lián)的流量控制信令暫停。但是經(jīng)由與服務(wù)級別X 相關(guān)聯(lián)的隊列對的數(shù)據(jù)傳輸暫停能導(dǎo)致來自于輸入到第二級發(fā)送隊列B1的發(fā)送隊列的數(shù)據(jù)傳輸暫停。特別地,經(jīng)由與服務(wù)級別X相關(guān)聯(lián)的隊列對的數(shù)據(jù)傳輸暫停能導(dǎo)致不僅來自 于第一級發(fā)送隊列A2的數(shù)據(jù)傳輸,還來自于第一級發(fā)送隊列A1的數(shù)據(jù)傳輸?shù)臅和!Q句話 說,來自第一級發(fā)送隊列A1的數(shù)據(jù)流間接或并行地被影響。在一些實施例中,在發(fā)送隊列A1 處接收的數(shù)據(jù)和在發(fā)送隊列A2處接收的數(shù)據(jù)能與相同的服務(wù)級別X相關(guān)聯(lián),但是在發(fā)送隊 列A1處接收的數(shù)據(jù)和在發(fā)送隊列A2處接收的數(shù)據(jù)可能來自于例如不同的(例如,獨立的) 網(wǎng)絡(luò)裝置(未示出),例如外圍處理裝置,其可以與不同的服務(wù)級別相關(guān)聯(lián)。到第一級接收隊列D3的數(shù)據(jù)流還能夠特別地由來自于第一級發(fā)送隊列A2的數(shù)據(jù) 傳輸暫?;谂c第一級控制環(huán)有關(guān)的流量控制信令而暫停。通過來自于第一級發(fā)送隊A2數(shù) 據(jù)傳輸?shù)闹苯訒和#瑏碜杂诘谝患壈l(fā)送隊列A1的數(shù)據(jù)傳輸可以不被中斷。換句話說,第一 級發(fā)送隊列A2的流量控制基于與第一級控制環(huán)相關(guān)聯(lián)的流量控制信號能被直接控制,而不 需要來自于其他第一級發(fā)送隊列例如第一級發(fā)送隊列A1的數(shù)據(jù)傳輸暫停。到第一級接收隊列D3的數(shù)據(jù)流還能由經(jīng)由物理鏈路220基于與物理鏈路控制環(huán) 有關(guān)的流量控制信令數(shù)據(jù)傳輸暫停被控制。但是經(jīng)由物理鏈路2200的數(shù)據(jù)傳輸暫停能導(dǎo) 致經(jīng)由物理鏈路2200的所有數(shù)據(jù)傳輸暫停。在物理鏈路2200發(fā)送側(cè)上的隊列能被稱為發(fā)送隊列2236以及在物理鏈路接收側(cè) 上的隊列能被稱為接收隊列2246。在一些實施例中,發(fā)送隊列2236還能被稱為源隊列,而 接收隊列2246能被稱為目的隊列。雖然未示出,但是在一些實施例中,一個或多個發(fā)送隊 列2236能被包括在一個或多個與源實體2230相關(guān)聯(lián)的接口卡中,以及一個或多個接收隊 列2246能被包括在一個或多個與目的實體2240有關(guān)的接口卡中。當(dāng)源實體2230經(jīng)由物理鏈路2200發(fā)送數(shù)據(jù)時,源實體2230能被稱為位于物理鏈 路2200發(fā)送側(cè)的發(fā)送機。目的實體2240能被配置為接收數(shù)據(jù)并被稱為位于物理鏈路2200 接收側(cè)上的接收機。雖然未示出,但是在一些實施例中,源實體2230(和相關(guān)聯(lián)的元件(例 如,發(fā)送隊列2236))能被配置為作為目的實體(例如,接收機)工作以及目的實體2240 (和 相關(guān)的元件(例如,接收隊列2246))能被配置為作為源實體(例如,發(fā)送機)工作。此外, 物理鏈路2200能作為雙向鏈路工作。在一些實施例中,物理鏈路2200可以是有形的鏈路,例如光鏈路(例如,光纖電 纜、塑料光纖電纜)、電纜鏈路(例如,基于銅的電線)、雙絞線鏈路(例如,5類電纜)等等。 在一些實施例中,物理鏈路2200可以是無線鏈路經(jīng)由物理鏈路2200的數(shù)據(jù)傳輸能基于例 如以太網(wǎng)協(xié)議、無線協(xié)議、以太網(wǎng)協(xié)議、光纖信道協(xié)議、以太網(wǎng)光纖信道協(xié)議、涉及無限帶寬 的協(xié)議和/或等等協(xié)議被定義。在一些實施例中,第二級控制環(huán)能被稱為嵌套在第一級控制環(huán)內(nèi),因為與第二級 控制環(huán)相關(guān)聯(lián)的第二級隊列2220位于與第一級控制環(huán)相關(guān)聯(lián)的第一級隊列2210內(nèi)。類似 地,物理鏈路控制環(huán)能被稱為嵌套在第二級控制環(huán)內(nèi)。在一些實施例中,第二級控制環(huán)能被 稱為內(nèi)部控制環(huán),且第一級控制環(huán)能被稱為外部控制環(huán)。圖23是根據(jù)一個實施例表明流量可控隊列的多級的示意框圖。如圖23所示,第 一級隊列2310的發(fā)送側(cè)和第二級隊列2320的發(fā)送側(cè)被包括在位于物理鏈路2300發(fā)送側(cè) 上的源實體2330內(nèi)。第一級隊列2310的接收側(cè)和第二級隊列2320的接收側(cè)被包括在位 于物理鏈路2300接收側(cè)上的目的實體2340內(nèi)。物理鏈路2300發(fā)送側(cè)上的隊列可共同被 稱為發(fā)送隊列2336,以及物理鏈路接收側(cè)上的隊列可共同被稱為接收隊列2346。雖然未示
43出,但是在一些實施例中,源實體2330能被配置為作為目的實體工作,以及目的實體2340 能被配置為作為源實體(例如,發(fā)送機)工作。此外,物理鏈路2300能作為雙向鏈路工作。如圖23所示,源實體2330與目的實體2340經(jīng)由物理鏈路2300通信。源實體2330 具有隊列QP1,其被配置為在數(shù)據(jù)經(jīng)由物理鏈路2300被發(fā)送之前緩沖數(shù)據(jù)(如果需要),以 及目的實體2340具有隊列QP2,其被配置為數(shù)據(jù)在目的實體2340被分配之前緩沖經(jīng)由物理 鏈路2300接收的數(shù)據(jù)(如果需要)。在一些實施例中,經(jīng)由物理鏈路2300的數(shù)據(jù)流能被處 理,而不需要緩沖隊列QPl和隊列QP2。包括在第一級隊列2310中的發(fā)送隊列QA1到QAn每一個能被稱為第一級發(fā)送隊列 且能共同被稱為發(fā)送隊列2334(或隊列2334)。包括在第二級隊列2320中的發(fā)送隊列QB1 到QBm每一個能被稱為第二級發(fā)送隊列且能共同被稱為發(fā)送隊列2332 (或隊列2332)。包 括在第一級隊列2310中的接收隊列QD1到QDk每一個能被稱為第一級接收隊列并能共同被 稱為接收隊列2344 (或隊列2344)。包括在第二級隊列2320中的接收隊列QC1到QCm每一 個能被稱為第二級接收隊列且能共同被稱為接收隊列2342 (或隊列2342)。如圖23所示,來自于第二級隊列2320的每一個隊列位于在物理鏈路2300和來自 于第一級隊列2310中至少一個隊列之間的傳輸路徑之內(nèi)。例如,傳輸路徑的一部分能由第 一級接收隊列QD4、第二級接收隊列QC1和物理鏈路2300定義。第二級接收隊列QC1位于在 第一級接收隊列QD4和物理鏈路2300之間的傳輸路徑內(nèi)。在這個實施例中,物理鏈路控制環(huán)與物理鏈路2300相關(guān)聯(lián),第一級控制環(huán)與第一 級隊列2310相關(guān)聯(lián),以及第二級控制環(huán)與第二級隊列2320相關(guān)聯(lián)。在一些實施例中,第 二級控制環(huán)可以是基于優(yōu)先權(quán)的控制環(huán)。在一些實施例中,物理鏈路控制環(huán)包括物理鏈路 2300、隊列QPl和隊列QP2。流量控制信號能在源實體2330處的源控制模塊2370和目的實體2340處的目的 控制模塊2380被定義和/或在其之間被發(fā)送。在一些實施例中,源控制模塊2370能被稱 為源流量控制模塊,以及目的控制模塊2380能被稱為目的流量控制模塊。例如,目的控制 模塊2380能被配置為當(dāng)在目的實體2340處的一個或多個接收隊列2346 (例如,接收隊列 QD2)不可用于接受數(shù)據(jù)時,向源控制模塊2370發(fā)送流量控制信號。流量控制信號能被配置 為觸發(fā)源控制模塊2370例如暫停從一個或多個接收隊列2330向一個或多個接收隊列2346 的數(shù)據(jù)流。在數(shù)據(jù)被發(fā)送之前,源控制模塊2370將隊列標(biāo)識符與在來自于發(fā)送隊列2336的 發(fā)送隊列處排隊的數(shù)據(jù)相關(guān)聯(lián)。隊列標(biāo)識符能表示和/或被用于識別數(shù)據(jù)排隊的發(fā)送隊 列。例如,當(dāng)數(shù)據(jù)分組在第一級發(fā)送隊列QA』_隊時,唯一識別第一級發(fā)送隊列QA4的隊列標(biāo) 識符能被添加到數(shù)據(jù)分組上或被包括在數(shù)據(jù)分組內(nèi)的字段(例如,頭部、尾部、有效載荷) 中。在一些實施例中,隊列標(biāo)識符可以與源控制模塊2370處的數(shù)據(jù)有關(guān),或由源控制模塊 2370觸發(fā)。在一些實施例中,僅在數(shù)據(jù)被發(fā)送之前,或數(shù)據(jù)已經(jīng)從發(fā)送隊列2336之一被發(fā) 送之后,隊列標(biāo)識符能與數(shù)據(jù)相關(guān)聯(lián)。隊列標(biāo)識符能與從物理鏈路2300發(fā)送側(cè)發(fā)送到物理鏈路2300接收側(cè)的數(shù)據(jù)相關(guān) 聯(lián)從而數(shù)據(jù)源(例如,源隊列)能被識別。因此,流量控制信號能被定義以基于隊列標(biāo)識符 暫停一個或多個發(fā)送隊列2336的傳輸。例如,與第一級發(fā)送隊列QAn相關(guān)聯(lián)的隊列標(biāo)識符 能被包括在從第一級發(fā)送隊列QAn向第一級接收隊列QD3發(fā)送的數(shù)據(jù)分組中。如果在接收一級發(fā)送隊列QAn的另一個數(shù)據(jù)分 組,則請求第一級發(fā)送隊列QAn暫停到第一級收隊列QD3的附加數(shù)據(jù)分組傳輸?shù)牧髁靠刂菩?號能基于與第一級發(fā)送隊列QAn相關(guān)聯(lián)的隊列標(biāo)識符被定義。隊列標(biāo)識符能由目的控制模 塊2380從數(shù)據(jù)分組中解析,并被目的控制模塊2380用于定義流量控制信號。在一些實施例中,從幾個發(fā)送隊列2336(例如,第一級發(fā)送隊列2334)到第一級接 收隊列QDk的數(shù)據(jù)傳輸能響應(yīng)于第一級接收隊列QDk從可用狀態(tài)改變?yōu)椴豢捎脿顟B(tài)而暫停。 幾個發(fā)送隊列2336中的每一個能基于其相應(yīng)的隊列標(biāo)識符在流量控制信號內(nèi)被識別。在一些實施例中,一個或多個發(fā)送隊列2336和/或一個或多個接收隊列2346可 以是虛擬隊列(例如,邏輯定義的隊列組)。因此,隊列標(biāo)識符可以與虛擬隊列相關(guān)聯(lián)(例 如,能體現(xiàn))。在一些實施例中,隊列標(biāo)識符可以與來自于定義虛擬隊列的隊列集中的隊列 相關(guān)聯(lián)。在一些實施例中,來自于與物理鏈路2300相關(guān)聯(lián)的隊列標(biāo)識符集的每一個隊列標(biāo) 識符可以是唯一的。例如,與物理鏈路2300 (例如,與跳轉(zhuǎn)相關(guān)聯(lián)的)相關(guān)聯(lián)的每一個發(fā)送 隊列2336能與唯一的隊列標(biāo)識符相關(guān)聯(lián)。在一些實施例中,源控制模塊2370能被配置為將隊列標(biāo)識符僅與發(fā)送隊列2336 的一個特定子集和/或僅與在發(fā)送隊列2336中之一處排隊的數(shù)據(jù)子集相關(guān)聯(lián)。例如,如果 數(shù)據(jù)不伴隨隊列標(biāo)識符從第一級發(fā)送隊列QA2被發(fā)送到第一級接收隊列QD1,則配置為請求 來自于第一級發(fā)送隊列QA2的數(shù)據(jù)傳輸暫停的流量控制信號可以不被定義,因為不知曉源 數(shù)據(jù)。因此,當(dāng)數(shù)據(jù)從發(fā)送隊列被發(fā)送時,通過不將隊列標(biāo)識符與數(shù)據(jù)聯(lián)系(例如,省略), 來自于發(fā)送隊列2336的發(fā)送隊列能從流量控制中被免除。在一些實施例中,在目的實體2340處的一個或多個接收隊列2346的不可用性能 基于條件被滿足而被定義。該條件能涉及隊列的存儲限制、隊列接入速率、輸入到隊列的數(shù) 據(jù)流量速率等等。例如,流量控制信號能在目的控制模塊2380處響應(yīng)于一個或多個接收 隊列2346的狀態(tài),例如第二級接收隊列QC2從可用狀態(tài)基于閾值存儲限制被超過改變?yōu)椴?可用狀態(tài)(例如,擁塞狀態(tài))被定義。當(dāng)在不可用狀態(tài)中時,第二級接收隊列QC2不可用于 接收數(shù)據(jù),因為例如第二級接收隊列QC2被認為太滿(如由閾值存儲限制的超過所指示)。 在一些實施例中,當(dāng)禁用時,一個或多個接收隊列2346能處于不可用狀態(tài)。在一些實施例 中,當(dāng)接收隊列不可用于接收數(shù)據(jù)時,流量控制信號能基于請求到來自于接收隊列2346的 接收隊列的數(shù)據(jù)傳輸暫停被定義。在一些實施例中,一個或多個接收隊列2346的狀態(tài)能響 應(yīng)于接收隊列2346(例如,特定級內(nèi)的接收隊列)處于擁塞狀態(tài)的特定子集從可用狀態(tài)改 變?yōu)閾砣麪顟B(tài)(通過目的控制模塊2380)。在一些實施例中,流量控制信號能在目的控制模塊2380處被定義以指示接收隊 列2346中的一個已經(jīng)從不可用狀態(tài)改變?yōu)榭捎脿顟B(tài)。例如,初始地,目的控制模塊2380能 被配置為定義并響應(yīng)于第一級接收隊列QD3從可用狀態(tài)改變?yōu)椴豢捎脿顟B(tài)發(fā)送第一流量控 制信號到源控制模塊2370。第一級接收隊列QD3能響應(yīng)于從第一級發(fā)送隊列QA2發(fā)送的數(shù) 據(jù)從可用狀態(tài)改變?yōu)椴豢捎脿顟B(tài)。因此,第一流量控制信號的目標(biāo)可以是第一級發(fā)送隊列 QA2 (基于隊列標(biāo)識符指示的)。當(dāng)?shù)谝患壗邮贞犃蠶D3從不可用狀態(tài)改變回可用狀態(tài)時,目 的控制模塊2380能被配置為定義并向源控制模塊2370發(fā)送第二流量控制信號,其指示從 不可用狀態(tài)改變回可用狀態(tài)。在一些實施例中,源控制模塊2370能被配置為響應(yīng)于第二流 量控制信號觸發(fā)從一個或多個發(fā)送隊列2336到第一級接收隊列QD3的數(shù)據(jù)傳輸。
45
在一些實施例中,流量控制信號可具有一個或多個參數(shù)值,其通過源控制模塊 2370被用于修改來自于發(fā)送隊列2336中之一(由隊列標(biāo)識符在流量控制信號內(nèi)識別)的 傳輸。例如,流量控制信號可包括觸發(fā)源控制模塊2370暫停來自于發(fā)送隊列2336中之一 的傳輸一特定時間段(例如,10毫秒(ms))的參數(shù)值。換而言之,流量控制信號可包括暫停 時間段參數(shù)值。在一些實施例中,暫停時間段可以是不確定的。在一些實施例中,流量控制 信號能定義從一個或多個發(fā)送隊列2336以特定速率(例如,每秒特定數(shù)目幀、每秒特定數(shù) 目比特)發(fā)送數(shù)據(jù)的請求。在一些實施例中,流量控制信號(例如,流量控制信號內(nèi)的暫停時間段)能基于 流量控制算法被定義。暫停時間段能基于在來自于接收隊列2346 (例如,第一級接收隊列 QD4)的接收隊列為不可用狀態(tài)經(jīng)過的時間周期被定義。在一些實施例中,暫停時間段能基 于多于一個第一級接收隊列2344為不可用狀態(tài)被定義。例如,在一些實施例中,當(dāng)差不多 一特定數(shù)目的第一級接收隊列2344為擁塞狀態(tài)時,暫停時間段增加。在一些實施例中,這 種類型的確定能在目的控制模塊2380被確定。接收隊列處于不可用經(jīng)歷的時間段可以是 由目的控制模塊2380基于例如來自于接收隊列數(shù)據(jù)的流量率(例如,歷史流量率、先前流 量率)計算的計劃(例如,預(yù)計)時間段。在一些實施例中,源控制模塊2370能拒絕或改變修改來自于一個或多個發(fā)送隊 列2336的數(shù)據(jù)流的請求。例如,在一些實施例中,源控制模塊2370能被配置為降低或增加 暫停時間段。在一些實施例中,不是響應(yīng)于流量控制信號暫停數(shù)據(jù)傳輸,源控制模塊2370 可被配置為修改與傳輸隊列2336中之一相關(guān)聯(lián)的傳輸路徑。例如,如果第一級發(fā)送隊列QA2 已經(jīng)基于第一級接收隊列QD2狀態(tài)的改變接收暫停傳輸?shù)恼埱?,則源控制模塊2370能被配 置為觸發(fā)從第一級發(fā)送隊列QA2向例如第一級接收隊列QD3的數(shù)據(jù)傳輸,而不是按照暫停傳 輸?shù)恼埱筮M行。如圖23所示,第二級隊列2320之內(nèi)的隊列扇入(fan into)或扇出(fan out)物 理鏈路2300。例如,物理鏈路2300發(fā)送側(cè)上的發(fā)送隊列2332 (例如,QB1到QBm)扇入物理 鏈路2300發(fā)送側(cè)上的隊列QPl。因此,在任意發(fā)送隊列2332處排隊的數(shù)據(jù)能被發(fā)送到物理 鏈路2300的隊列QPl。在物理鏈路2300接收側(cè)上,從物理鏈路2300經(jīng)由隊列QP2發(fā)送的 數(shù)據(jù)能被廣播到接收隊列2342 (即,隊列QC1到QCm)。同樣,如圖23所示,在第一級隊列2310內(nèi)的發(fā)送隊列2334扇入到第二級隊列 2320內(nèi)的發(fā)送隊列2332。例如,在第一級發(fā)送隊列QVQA4和QAN_2中任意處排隊的數(shù)據(jù)能 被發(fā)送到第二級發(fā)送隊列QB2。在物理鏈路2300接收側(cè)上,從例如第二級接收隊列QCm發(fā) 送的數(shù)據(jù)能被廣播到第一級接收隊列QDim和QDK。由于許多流量控制環(huán)(例如,第一控制環(huán))與不同的扇入、扇出體系結(jié)構(gòu)相關(guān)聯(lián), 流量控制環(huán)對經(jīng)由物理鏈路2300的數(shù)據(jù)流具有不同的影響。例如,當(dāng)從第二級發(fā)送隊列QB1 的數(shù)據(jù)傳輸基于第二級控制環(huán)被暫停時,從第一級發(fā)送隊列QAp QA2, QA3和QAim經(jīng)由第二 級發(fā)送隊列QB1到一個或多個接收隊列2346的數(shù)據(jù)傳輸也被暫停。在這種情況下,當(dāng)來自 于下行流隊列(例如,第二級發(fā)送隊列QB1)的傳輸暫停時,來自于一個或多個上行流隊列 (例如,第一級發(fā)送隊列QA1)的數(shù)據(jù)傳輸能被暫停。相反,如果從第一級發(fā)送隊列QA1沿著 包括至少下行流第二級發(fā)送隊列QB1的傳輸路徑的數(shù)據(jù)傳輸基于第一級控制環(huán)暫停,則來 自于第二級發(fā)送隊列QB1的流量數(shù)據(jù)率可以減少,而不需要來自于第二級發(fā)送隊列QB1的數(shù)
46據(jù)傳輸全部暫停;例如,第一級發(fā)送隊列QA1,仍能夠經(jīng)由第二級發(fā)送隊列QB1發(fā)送數(shù)據(jù)。在一些實施例中,扇入和扇出體系結(jié)構(gòu)可以與圖23中所示的不同。例如,在一些 實施例中,第一級隊列2310內(nèi)的一些隊列能被配置為迂回第二級隊列2320地扇入物理鏈 路 2300。與發(fā)送隊列2336相關(guān)聯(lián)的流量控制信令由源控制模塊2370處理且與接收隊列 2346相關(guān)聯(lián)的流量控制信令由目的控制模塊2380處理。雖然未示出,但是在一些實施例 中,流量控制信令能由一個或多個可以是獨立的和/或集成到單個控制模塊上的控制模塊 (或控制子模塊)處理。例如,與第一級接收隊列2344相關(guān)聯(lián)的流量控制信令可以由獨立 于被配置為處理與第二級接收隊列2342相關(guān)聯(lián)的流量控制信令的控制模塊的控制模塊處 理。類似地,與第一級發(fā)送隊列2334相關(guān)聯(lián)的流量控制信令可以由獨立于被配置為處理與 第二級發(fā)送隊列2332有關(guān)的流量控制信令控制模塊的控制模塊處理。在一些實施例中,源 控制模塊2370和/或目的控制模塊2380的一個或多個部分可以是基于硬件的模塊(例如, DSP、FPGA)和/或基于軟件的模塊(例如,計算節(jié)點模塊、能在處理器上執(zhí)行的處理器可讀 指令集)。圖24是根據(jù)一個實施例表明目的控制模塊2450的示意框圖,該目的控制模塊被 配置為定義與多個接收隊列相關(guān)聯(lián)的流量控制信號6428。隊列級包括第一級隊列2410和 第二級隊列2420。如圖24所示,源控制模塊2460與第一級隊列2410的發(fā)送側(cè)相關(guān)聯(lián)而 目的控制模塊2450與第一級隊列2410的接收側(cè)相關(guān)聯(lián)。在物理鏈路2400發(fā)送側(cè)上的隊 列能共同被稱為發(fā)送隊列2470。在物理鏈路2400接收側(cè)上的隊列能共同被稱為接收隊列 2480。目的控制模塊2450被配置為響應(yīng)于第一級隊列2410內(nèi)的一個或多個接收隊列不 可用于從第一級隊列2410處的單個源隊列接收數(shù)據(jù),向源控制模塊2460發(fā)送流量控制信 號6428。源控制模塊2460被配置為基于流量控制信號6428暫停從第一級隊列2410處的 源隊列到第一級隊列2410處的多個接收隊列的數(shù)據(jù)傳輸。流量控制信號6428能由目的控制模塊2450基于與第一級隊列2410內(nèi)的每一個 不可用接收隊列相關(guān)聯(lián)的信息而定義。目的控制模塊2450能被配置為收集與不可用接收 隊列相關(guān)聯(lián)的信息并被配置為定義流量控制信號6428,從而潛在沖突的流量控制信號(未 示出)不被發(fā)送到第一級隊列2410處的單個源隊列。在一些實施例中,基于收集的信息定 義的流量控制信號6428能被稱為集合流量控制信號。特別地,在該例子中,目的控制模塊2450被配置為響應(yīng)于兩個接收隊列-接收隊 列2442和接收隊列2446第一級隊列2410接收側(cè)處不可用于從第一級隊列2410發(fā)送側(cè)上 的發(fā)送隊列2412接收數(shù)據(jù),來定義流量控制信號6428。在該實施例中,響應(yīng)于從發(fā)送隊列 2412分別經(jīng)由傳輸路徑6422和傳輸路徑6424發(fā)送的數(shù)據(jù)分組,接收隊列2442和接收隊 列2446從可用狀態(tài)改變?yōu)椴豢捎脿顟B(tài)。如圖24所示,傳輸路徑6422包括發(fā)送隊列2412、 第二級隊列2420內(nèi)的發(fā)送隊列2422、物理鏈路2400、第二級隊列2420內(nèi)的接收隊列2432 和接收隊列2442。傳輸路徑6424包括發(fā)送隊列2412、發(fā)送隊列2422、物理鏈路2400、接收 隊列2432和接收隊列2446。在一些實施例中,流量控制算法能被用于基于涉及接收隊列2442不可用性的信 息和/或涉及接收隊列2446不可用性的信息而定義流量控制信號6428。例如,如果目的控
47制模塊2450確定接收隊列2442和接收隊列2446不可用于不同的時間段,則目的控制模塊 2450可以被配置為基于不同的時間段定義流量控制信號6428。例如,目的控制模塊2450能 經(jīng)由流量控制信號6428請求從發(fā)送隊列2412的數(shù)據(jù)傳輸暫停一時間段,該時間段基于不 同的時間段(例如,等于不同時間段平均值的時間段、等于不同時間段中較大值的時間段) 計算。在一些實施例中,流量控制信號6428能基于來自于第一級隊列2410接收側(cè)的獨立 暫停請求(例如,與接收隊列2442相關(guān)聯(lián)的暫停請求和與接收隊列2446相關(guān)聯(lián)的暫停請 求)定義。在一些實施例中,流量控制信號6428能基于最大或最小可允許時間段定義。在一 些實施例中,流量控制信號6428能基于來自于例如發(fā)送隊列2412的集合數(shù)據(jù)流量速率計 算。例如,暫停時間段能基于來自于發(fā)送隊列2412的集合數(shù)據(jù)流量速率測量。在一些實施 例中,例如,如果來自于發(fā)送隊列2412的數(shù)據(jù)流量速率高于閾值,則暫停時間段能被增加, 以及如果來自于發(fā)送隊列2412的數(shù)據(jù)流量速率低于閾值則暫停時間段可被減少。在一些實施例中,流量控制算法能被配置為在定義和/或發(fā)送流量控制信號6428 之前等待特定的時間段。等待時間段能被定義使得涉及發(fā)送隊列2412且能在等待段內(nèi)的 不同時間被接收的多個暫停請求能被用于定義流量控制信號6428。在一些實施例中,等待 時間段響應(yīng)于涉及發(fā)送隊列2412的至少一個暫停請求被接收而被觸發(fā)。在一些實施例中,流量控制信號6428能基于與第一級隊列2410內(nèi)每一個接收隊 列相關(guān)聯(lián)的優(yōu)先權(quán)值由流量控制算法定義。例如,如果接收隊列2442具有比與接收隊列 2446相關(guān)聯(lián)的優(yōu)先權(quán)值更高的優(yōu)先權(quán)值,則目的控制模塊2450能被配置為基于與接收隊 列2442而不是接收隊列2446相關(guān)聯(lián)的信息定義流量控制信號6428。例如,流量控制信號 6428能基于與接收隊列2442相關(guān)聯(lián)的暫停時間段而不是與接收隊列2446相關(guān)聯(lián)的暫停時 間段定義,因為接收隊列2442具有比與接收隊列2446相關(guān)聯(lián)的優(yōu)先權(quán)值更高的優(yōu)先權(quán)值。在一些實施例中,流量控制信號6428能基于與第一級隊列2410內(nèi)部的每一個接 收隊列相關(guān)聯(lián)的屬性由流量控制算法定義。例如,流量控制信號6428能基于是特定類型隊 列(例如,后入先出(LIFO)隊列,先入先出(FIFO)隊列)的接收隊列2442和/或接收隊 列2446定義。在一些實施例中,流量控制信號6428能基于被配置為接收特定類型數(shù)據(jù)(例 如,控制數(shù)據(jù)/信號隊列、媒體數(shù)據(jù)/信號隊列)的接收隊列2442和/或接收隊列2446定 義。雖然未示出,但是與隊列級(例如,第一級隊列2410)相關(guān)聯(lián)的一個或多個控制模 塊能被配置為向不同的控制模塊發(fā)送信息,其中該信息被用于定義流量控制信號。不同的 控制模塊與不同的隊列級有關(guān)。例如,與接收隊列2442相關(guān)聯(lián)的暫停請求和與接收隊列 2446有關(guān)的暫停請求能在目的控制模塊2450被定義。暫停請求能被發(fā)送到與第二級隊列 2420接收側(cè)相關(guān)聯(lián)的目的控制模塊(未示出)。流量控制信號(未示出)能在與第二級隊 列2420接收側(cè)相關(guān)聯(lián)的目的控制模塊處基于暫停請求和基于流量控制算法定義。流量控制信號6428能基于與第一級隊列2410相關(guān)聯(lián)的流量控制環(huán)(例如,第一 級控制環(huán))定義。一個或多個流量控制信號(未示出)還能基于與第二級隊列2420相關(guān) 聯(lián)的流量控制環(huán)和/或與物理鏈路2400相關(guān)聯(lián)的流量控制環(huán)定義。與第一級隊列2410內(nèi)發(fā)送隊列(除了發(fā)送隊列2412)相關(guān)聯(lián)的數(shù)據(jù)傳輸基本不 受流量控制信號6428限制,因為到接收隊列2442和2446的數(shù)據(jù)流基于第一級流量控制環(huán)來控制。例如,即使從發(fā)送隊列2412的數(shù)據(jù)傳輸暫停,發(fā)送隊列2414還能繼續(xù)經(jīng)由發(fā)送隊 列2422發(fā)送數(shù)據(jù)。例如,發(fā)送隊列2414能被配置為即使從發(fā)送隊列2412經(jīng)由發(fā)送隊列 2422的數(shù)據(jù)傳輸已經(jīng)暫停,還能經(jīng)由包括發(fā)送隊列2422的傳輸路徑6426向接收隊列2448 發(fā)送數(shù)據(jù)。在一些實施例中,發(fā)送隊列2422能被配置為即使從隊列2412經(jīng)由傳輸路徑6422 的數(shù)據(jù)傳輸已經(jīng)基于流量控制信號6428被暫停,還能繼續(xù)從例如發(fā)送隊列2416向接收隊 列2442發(fā)送數(shù)據(jù)。反之,如果到接收隊列2442和2446的數(shù)據(jù)傳輸通過基于與第二級控制環(huán)有關(guān)的 流量控制信號(未示出)控制經(jīng)由發(fā)送隊列2422的數(shù)據(jù)流被暫停,則(除來自于發(fā)送隊列 2412的數(shù)據(jù)傳輸之外從發(fā)送隊列2414和發(fā)送隊列2416經(jīng)由發(fā)送隊列2422的數(shù)據(jù)傳輸還 將被限制。從發(fā)送隊列2422的數(shù)據(jù)傳輸將被暫停,因為其與特定服務(wù)級別相關(guān)聯(lián),以及引 起例如在接收隊列2442和2446處擁塞的數(shù)據(jù)可以與特定服務(wù)級別相關(guān)聯(lián)。在流量控制信號6428之內(nèi)定義的一個或多個參數(shù)值能被存儲于目的控制模塊 2450的存儲器2452中。在一些實施例中,在一個或多個參數(shù)值被定義之后和/或當(dāng)流量控 制信號6428被發(fā)送到源控制模塊2460時,參數(shù)值能被存儲在目的控制模塊2450的存儲器 2452處。在流量控制信號6428內(nèi)定義的參數(shù)值能用于跟蹤例如發(fā)送隊列2412的狀態(tài)。例 如,在存儲器2452內(nèi)的條目能指示發(fā)送隊列2412在暫停狀態(tài)(例如非發(fā)送狀態(tài))中。條目 能基于在流量控制信號6428內(nèi)定義的暫停時間段參數(shù)值被定義。當(dāng)暫停時間段已經(jīng)超時, 該條目能被更新以指示發(fā)送隊列2412的狀態(tài)已經(jīng)改變?yōu)槔缁顒訝顟B(tài)(例如發(fā)送狀態(tài))。 雖然未示出,但是在一些實施例中,一個或多個參數(shù)值能被存儲在目的控制模塊2450之外 的存儲器(例如,遠程存儲器)中。在一些實施例中,存儲在目的控制模塊2450的存儲器2452中的一個或多個參數(shù) 值(例如,基于一個或多個參數(shù)值定義的狀態(tài)信息)能由目的控制模塊2450用于確定附加 的流量控制信號(未示出)是否應(yīng)當(dāng)被定義。在一些實施例中,一個或多個參數(shù)值能由目 的控制模塊2450定義一個或多個附加的流量控制信號。例如,如果接收隊列2442響應(yīng)于從發(fā)送隊列2412接收的第一數(shù)據(jù)分組從可用狀 態(tài)改變?yōu)椴豢捎脿顟B(tài)(例如,擁塞狀態(tài)),則暫停從發(fā)送隊列2412的數(shù)據(jù)傳輸?shù)恼埱竽芙?jīng)由 流量控制信號6428被發(fā)送。流量控制信號6428能基于隊列指示符指示發(fā)送隊列2412是該 請求的目標(biāo)以及能指定暫停時間段。當(dāng)流量控制信號6428被發(fā)送到源控制模塊2460時, 與發(fā)送隊列2412相關(guān)聯(lián)的暫停時間段和隊列標(biāo)識符能被存儲在目的控制模塊2450的存儲 器2452中。在流量控制信號6428被發(fā)送之后,接收隊列2444能響應(yīng)于從發(fā)送隊列2412 接收的第二數(shù)據(jù)分組從可用狀態(tài)改變?yōu)閾砣麪顟B(tài)(傳輸路徑在圖24中未示出)。在從發(fā)送 隊列2412的數(shù)據(jù)傳輸暫停之前,第二數(shù)據(jù)分組能基于流量控制信號6428從發(fā)送隊列2412 被發(fā)送。目的控制模塊2450能訪問存儲在存儲器2452中的信息,并且能響應(yīng)于與接收隊 列2444有關(guān)狀態(tài)的改變,來確定目標(biāo)為發(fā)送隊列2412的附加流量控制信號不應(yīng)當(dāng)被定義 并發(fā)送到源控制模塊2460,因為流量控制信號6428已經(jīng)被發(fā)送。在一些實施例中,源控制模塊2460能被配置為基于最近的流量控制信號參數(shù)值 暫停來自于發(fā)送隊列2412的傳輸。例如,在目標(biāo)為發(fā)送隊列2412的流量控制信號6428已 經(jīng)被發(fā)送到源控制模塊2460之后,目標(biāo)為發(fā)送隊列2412的較遲流量控制信號(未示出)能 在源控制模塊2460處被接收。源控制模塊2460能被配置為執(zhí)行與隨后流量控制信號相關(guān)聯(lián)的一個或多個參數(shù)值,而不是與流量控制信號6428相關(guān)聯(lián)的參數(shù)值。在一些實施例中, 較遲流量控制信號能觸發(fā)發(fā)送隊列2412維持在暫停狀態(tài)保持一個比在流量控制信號6428 中指示的更長或更短的時間段。在一些實施例中,當(dāng)與一個或多個參數(shù)值相關(guān)聯(lián)的優(yōu)先權(quán)值高于(或低于)與和 流量控制信號6428相關(guān)聯(lián)的一個或多個參數(shù)值相關(guān)聯(lián)的優(yōu)先權(quán)值時,源控制模塊2460可 選地執(zhí)行一個或多個與較遲流量控制信號相關(guān)聯(lián)的參數(shù)值。在一些實施例中,每一個優(yōu)先 權(quán)值能在目的控制模塊2450被定義,并且每一個優(yōu)先權(quán)值能基于與一個或多個接收隊列 2480相關(guān)聯(lián)的優(yōu)先權(quán)值定義。在一些實施例中,流量控制信號6428和較遲流量控制信號(都是目標(biāo)為發(fā)送隊 列2412)都響應(yīng)于來自于接收隊列2480的相同接收隊列不可用而被定義。例如,較遲流 量控制信號能包括由目的控制模塊2450基于接收隊列2442定義的更新參數(shù)值,接收隊列 2442在不可用狀態(tài)中維持一個比先前計算更長的時間段。在一些實施例中,目標(biāo)為發(fā)送隊 列2412的流量控制信號6428能響應(yīng)于接收隊列2480中之一改變狀態(tài)(例如,從可用狀態(tài) 改變?yōu)椴豢捎脿顟B(tài))而被定義,以及目標(biāo)為發(fā)送隊列2412的較遲流量控制信號能響應(yīng)于接 收隊列2480中另一個改變狀態(tài)(例如,從可用狀態(tài)改變?yōu)椴豢捎脿顟B(tài))而被定義。在一些實施例中,多個流量控制信號能在目的控制模塊2450被定義以暫停來自 第一級隊列2410多個發(fā)送隊列的傳輸。在一些實施例中,多個發(fā)送隊列可以是向單獨接收 隊列例如接收隊列2444發(fā)送數(shù)據(jù)。在一些實施例中,到來自第一級隊列2410的多個發(fā)送 隊列的流量控制信號的歷史能被存儲在目的控制模塊2450的存儲器2452中。在一些實施 例中,與單獨接收隊列相關(guān)聯(lián)的較遲流量控制信號能基于流量控制信號的歷史被計算。在一些實施例中,與多個發(fā)送隊列相關(guān)的暫停時間段能被分組并被包括在流量控 制分組中。例如,與發(fā)送隊列2412相關(guān)聯(lián)的暫停時間段和與發(fā)送隊列2414相關(guān)聯(lián)的暫停 時間段能被包括在流量控制分組(還被稱為流量控制分組)中。涉及流量控制分組的更多 細節(jié)將結(jié)合圖25被描述。圖25是根據(jù)一個實施例表明流量控制分組的示意圖。流量控制分組包括頭部 2510、尾部2520和包括用于由隊列標(biāo)識符(ID)(在列2514中顯示)表示的幾個發(fā)送隊列 的暫停時間段參數(shù)值(在列2512中顯示)的有效負載2530。如圖25所示,由隊列ID 1到 V(即隊列ID1到隊列IDv)表示的發(fā)送隊列每一個與暫停時間段參數(shù)值1到V(即暫停時間 周期1到暫停時間周期ν)相關(guān)聯(lián)。暫停時間段參數(shù)值2514指示由隊列2512表示的發(fā)送 隊列從發(fā)送數(shù)據(jù)起應(yīng)當(dāng)被暫停(例如,禁止)所經(jīng)歷的時間段。在一些實施例中,流量控制分組能在例如,例如圖24中所示的目的控制模塊2450 的目的控制模塊處被定義。在一些實施例中,目的控制模塊能被配置為在規(guī)律的時間間隔 定義流量控制分組。例如,目的控制模塊能被配置為每IOms定義一個流量控制分組。在一 些實施例中,當(dāng)暫停時間段參數(shù)值已經(jīng)被計算時,和/或當(dāng)暫停時間段參數(shù)值的特定數(shù)目 已經(jīng)被計算時,目的控制模塊能被配置為以隨機時間定義流量控制分組。在一些實施例中, 目的控制模塊能基于例如一個或多個參數(shù)值和/或由目的控制模塊訪問的狀態(tài)信息確定 至少一部分流量控制分組不應(yīng)當(dāng)被定義和/或發(fā)送。雖然未示出,但是在一些實施例中,多個隊列ID能與單獨暫停時間周期參數(shù)值相 關(guān)聯(lián)。在一些實施例中,至少一個隊列ID能與除了暫停時間段參數(shù)值之外的參數(shù)值相關(guān)聯(lián)。例如,隊列ID能與流量速率參數(shù)值相關(guān)聯(lián)。流量速率參數(shù)值能指示發(fā)送隊列(由隊列 ID表示)應(yīng)當(dāng)發(fā)送數(shù)據(jù)的流量速率(例如,最大流量速率)。在一些實施例中,流量控制分 組能具有一個或多個被配置為指示特定接收隊列是否可用于接收數(shù)據(jù)的手段。流量控制分組能從目的控制模塊向源控制模塊(例如圖24中所示的源控制模塊 2460)經(jīng)由流量控制信號(例如圖24中所示的流量控制信號6428)發(fā)送。在一些實施例 中,流量控制分組能基于第2層(例如,OSI模型的第2層)協(xié)議被定義。換句話說,流量 控制分組能在網(wǎng)絡(luò)系統(tǒng)的第2層被定義并在其中被使用。在一些實施例中,流量控制分組 能在與第2層相關(guān)聯(lián)的裝置(例如,MAC裝置)之間被發(fā)送。重新參考圖25,與流量控制信號6428相關(guān)聯(lián)的一個或多個參數(shù)值(例如,基于參 數(shù)值定義的狀態(tài)信息)能被存儲在源控制模塊2560的存儲器2562中。在一些實施例中, 當(dāng)流量控制信號6428在源控制模塊2560被接收時,一個或多個參數(shù)值能被存儲在源控制 模塊2560的存儲器2562中。在流量控制信號6428中定義的參數(shù)值能被用于跟蹤一個或 多個接收隊列2580 (例如,接收2542)的狀態(tài)。例如,存儲器2562中的條目能指示接收隊 列2542不可用于接收數(shù)據(jù)。該條目能基于在流量控制信號6428中定義的暫停時間周期參 數(shù)值被定義并且與接收隊列2542的標(biāo)識符(例如,隊列標(biāo)識符)相關(guān)聯(lián)。當(dāng)暫停時間段超 時,該條目能被更新以指示接收隊列2542的狀態(tài)已經(jīng)改變?yōu)槔缁顒訝顟B(tài)。雖然未示出, 然而在一些實施例中,一個或多個參數(shù)值能被存儲在源控制模塊2560之外的存儲器(例 如,遠程存儲器)中。在一些實施例中,存儲在源控制模塊2560的存儲器2562處的一個或多個參數(shù)值 (和/或狀態(tài)信息)能由源控制模塊2560用于確定數(shù)據(jù)是否應(yīng)當(dāng)被發(fā)送到一個或多個接 收隊列2580。例如,源控制模塊2560能被配置為基于涉及接收隊列2544和接收隊列2542 的狀態(tài)信息從發(fā)送隊列2516向接收隊列2544而不是接收隊列2542發(fā)送數(shù)據(jù)。在一些實施例中,源控制模塊2560能分析數(shù)據(jù)傳輸模式以確定數(shù)據(jù)是否應(yīng)當(dāng)從 一個或多個源隊列2570發(fā)送到一個或多個接收隊列2580。例如,源控制模塊2560能基于 存儲在源控制模塊2560的存儲器2562處的參數(shù)值確定發(fā)送隊列2514向接收隊列2546發(fā) 送相對高的數(shù)據(jù)量?;谠摯_定,源控制模塊2560能觸發(fā)隊列2516向接收隊列2548而不 是接收隊列2546發(fā)送數(shù)據(jù),因為接收隊列2546從發(fā)送隊列2514接收高數(shù)據(jù)量。通過分析 與發(fā)送隊列2570相關(guān)聯(lián)的傳輸模式,一個或多個接收隊列2580處的擁塞開始可以基本上 被避免。在一些實施例中,源控制模塊2560能分析存儲在源控制模塊2560的存儲器2562 處的參數(shù)值(和/或狀態(tài)信息)以確定數(shù)據(jù)是否應(yīng)當(dāng)被發(fā)送到一個或多個接收隊列2580。 通過分析存儲的參數(shù)值(和/或狀態(tài)信息),在一個或多個發(fā)送隊列2580處的擁塞開始可 以基本上被避免。例如,源控制模塊2560能基于相比于接收隊列2542歷史可用性(例如, 更好,更差)的接收隊列2540歷史可用性來觸發(fā)數(shù)據(jù)發(fā)送到接收隊列2540而不是接收隊 列2542。在一些實施例中,例如,源控制模塊2560能基于有關(guān)數(shù)據(jù)突發(fā)模式相比于接收隊 列2544歷史性能的接收隊列2542歷史性能向接收隊列2542而不是接收隊列2544發(fā)送數(shù) 據(jù)。在一些實施例中,涉及一個或多個接收隊列2580的參數(shù)值分析可以基于特定的時間 窗、特定類型的網(wǎng)絡(luò)處理(例如,內(nèi)部處理器通信)、特定服務(wù)級別等等。在一些實施例中,目的控制模塊2550能發(fā)送有關(guān)接收隊列2580的狀態(tài)信息(例
51如,當(dāng)前狀態(tài)信息),其能由源控制模塊2560用于確定數(shù)據(jù)是否應(yīng)當(dāng)從一個或多個源隊列 2570被發(fā)送。例如,源控制模塊2560能觸發(fā)隊列2514向隊列2544而不是隊列2546發(fā)送 數(shù)據(jù),因為隊列2546具有如目的控制模塊2550所指示的比隊列2544更多的可用容量。在 一些實施例中,當(dāng)前狀態(tài)信息、傳輸模式分析和歷史數(shù)據(jù)分析的任意結(jié)合能被用于基本上 阻止或減少一個或多個接收隊列2580的擁塞開始的可能性。在一些實施例中,流量控制信號6428能從目的控制模塊2550經(jīng)由帶外傳輸路徑 被發(fā)送到源控制模塊2560。例如,流量控制信號6428能經(jīng)由涉及流量控制信令通信的專用 鏈路被發(fā)送。在一些實施例中,流量控制信號6428能經(jīng)由與第二級隊列2520相關(guān)聯(lián)的隊 列、與第一級隊列2510相關(guān)聯(lián)的隊列,和/或物理鏈路2500被發(fā)送。這里描述的一些實施例涉及具有計算機可讀媒介(還被稱為處理器可讀媒介)的 計算機存儲產(chǎn)品,計算機可讀媒介具有其上有用于執(zhí)行各種計算機可執(zhí)行操作的指令或計 算機代碼。媒介和計算機代碼(還被稱為代碼)可以是被設(shè)計以及構(gòu)建用于特定目的的那 些媒介和計算機代碼。計算機可讀媒介的例子包括,但不被限制為例如硬盤、軟盤和磁帶 的磁存儲媒介;例如壓縮光盤/數(shù)字化視頻光盤(CD/DVD)、壓縮只讀光盤存儲器(CD-ROM) 和全息裝置的光存儲媒介;例如光盤的磁-光存儲媒介;載波信號處理模塊;以及被特別 配置為存儲并執(zhí)行程序代碼的硬件裝置,例如ASIC、可編程邏輯裝置(PLD),和只讀存儲器 (ROM)和RAM裝置。計算機代碼的例子包括,但不被限制為,微代碼或微指令、機器指令,例如由匯編 者產(chǎn)生的、用于產(chǎn)生萬維網(wǎng)服務(wù)的代碼,和包含由計算機使用翻譯機執(zhí)行的高級別指令的 文件。例如,實施例可以使用Java、C++或其他編程語言(例如,面向?qū)ο蟮木幊陶Z言)和 開發(fā)工具被實現(xiàn)。計算機代碼的附加例子包括,但不被限制為控制信號、加密代碼和壓縮代碼。雖然各種實施例在以上已經(jīng)被描述,但是應(yīng)當(dāng)理解的是其僅僅是通過例子而不是 限制的方式體現(xiàn),以及可以進行形式和細節(jié)上的各種變化。這里描述的設(shè)備和/或方法的 任意部分可以以任意方式結(jié)合,除了互相排斥的結(jié)合。這里描述的實施例能包括描述的不 同實施例的功能、組件和/或特征的各種結(jié)合和/或子結(jié)合。
5權(quán)利要求
一種設(shè)備,包括多級交換結(jié)構(gòu);和多個邊緣設(shè)備,可操作地耦接到多級交換結(jié)構(gòu)并被配置為耦接到多個外圍處理裝置,多個邊緣設(shè)備和多級交換結(jié)構(gòu)共同定義了單個邏輯實體。
2.如權(quán)利要求1所述的設(shè)備,其中多級交換結(jié)構(gòu)在物理上跨多個機架分布,多級交換結(jié)構(gòu)具有多個輸入端口和多個輸出 端口,多個輸入端口中的每一個輸入端口和多個輸出端口中的每一個輸出端口均被配置為 以不低于lOGb/s的速度操作;以及多個邊緣設(shè)備和多級交換結(jié)構(gòu)被共同配置為在多個處理裝置中的第一外圍處理裝置 和多個處理裝置中的第二外圍處理裝置之間以線速率提供無阻塞連接性。
3.如權(quán)利要求1所述的設(shè)備,其中多級交換結(jié)構(gòu)具有多個輸入端口和多個輸出端口,被配置為耦接到多個外圍處理裝置 的多個邊緣設(shè)備;以及多個邊緣設(shè)備和多級交換結(jié)構(gòu)共同被配置為以線速率為多個外圍處理裝置中的每一 個外圍處理裝置提供到多個外圍處理裝置中的每一個其余處理裝置的連通性,從而使多個 輸出端口中的每一個輸出端口能夠由多個外圍處理裝置中的每一個外圍處理裝置經(jīng)由多 個輸入端口中的一個輸入端口平等地訪問。
4.如權(quán)利要求1所述的設(shè)備,其中多級交換結(jié)構(gòu)具有多個在物理上跨多個機架分布的級,多個級共同具有多個輸入端口 和多個輸出端口;多級交換結(jié)構(gòu)被配置為當(dāng)多個信元的傳送能被基本上保證而沒有通過多級交換結(jié)構(gòu) 的損耗時,允許多個與分組有關(guān)的信元進入來自多個輸入端口的輸入端口 ;多級交換結(jié)構(gòu)被配置為確定性網(wǎng)絡(luò),從而當(dāng)多個信元在預(yù)定時間能被傳送到來自多個 輸出端口的一個輸出端口時,多級交換結(jié)構(gòu)允許多個信元;以及多級交換結(jié)構(gòu)被配置為從輸入端口向多個輸出端口中的一個輸出端口經(jīng)由多級發(fā)送 多個與分組相關(guān)聯(lián)的信元,而不需要在多級交換結(jié)構(gòu)的多級中的至少一級處執(zhí)行分組損耗 處理。
5.如權(quán)利要求1所述的設(shè)備,其中多級交換結(jié)構(gòu)具有多個輸入端口和多個輸出端口,被配置為經(jīng)由多個輸入端口和多個 輸出端口耦接到多個邊緣設(shè)備;來自于多個邊緣設(shè)備的邊緣設(shè)備配置為接收分組,邊緣設(shè)備被配置為發(fā)送與分組相關(guān) 聯(lián)的多個信元到多個輸入端口中的一個輸入端口,不需要與零負載等待時間相關(guān)聯(lián)的由多 級交換結(jié)構(gòu)和邊緣設(shè)備定義的用于交換核心的存儲轉(zhuǎn)發(fā)延遲;以及多級交換結(jié)構(gòu)被配置為從輸入端口向多個輸出端口中的一個輸出端口發(fā)送與分組相 關(guān)聯(lián)的多個信元,從而使得除了光速等待時間之外的零負載等待時間或除了光速等待時間 之外的擁塞等待時間低于15微秒。
6.如權(quán)利要求1所述的設(shè)備,其中多級交換結(jié)構(gòu)具有多個輸入端口和多個輸出端口,多級交換結(jié)構(gòu)被配置為經(jīng)由多個輸 入端口和多個輸出端口耦接到多個邊緣設(shè)備;以及多個邊緣設(shè)備中的一個邊緣設(shè)備被配置為從多個輸入端口中的每一個輸入端口接收 分組,多級交換結(jié)構(gòu)被配置為從相關(guān)聯(lián)的輸入端口向多個輸出端口中的相關(guān)聯(lián)輸出端口發(fā) 送與每一個分組相關(guān)聯(lián)的多個信元,從而當(dāng)多級交換結(jié)構(gòu)的電纜拓撲是對稱時以及當(dāng)電纜 拓撲的鏈路完全可操作時,對于每一個信元的等待時間基本上獨立于由該信元遍歷的多級 交換結(jié)構(gòu)內(nèi)的路徑。
7.如權(quán)利要求1所述的設(shè)備,其中多級交換結(jié)構(gòu)物理分布在多個機架中,多級交換結(jié) 構(gòu)具有多個輸入緩沖器和多個輸出端口,多級交換被配置為接收與分組相關(guān)聯(lián)的多個信 元,并被配置為基于多個信元對多個信元片段進行交換;所述設(shè)備進一步包括在操作期間不需要軟件而以硬件實現(xiàn),以及配置和監(jiān)視期間需要軟件實現(xiàn)的控制器, 所述控制器耦接到多個輸入緩沖器和多個輸出端口,控制器配置為當(dāng)在多個輸出端口中的 一個輸出端口處的擁塞可預(yù)見時以及在交換核心內(nèi)的擁塞發(fā)生之前,向多個輸入緩沖器中 的一個輸入緩沖器發(fā)送流量控制信號,控制器被配置為獨立于多個信元片段的流量控制,為多個信元執(zhí)行流量控制信令,控 制器被配置為獨立于多個邊緣設(shè)備的流量控制和多級交換結(jié)構(gòu)的結(jié)構(gòu)內(nèi)流量控制,為多個 信元執(zhí)行流量控制。
8.如權(quán)利要求1所述的設(shè)備,其中多級交換結(jié)構(gòu)和多個邊緣設(shè)備共同定義了交換核心;多個外圍處理裝置具有通過多個與協(xié)議相關(guān)聯(lián)的連接耦接到多級交換結(jié)構(gòu)的第一部 分,來自多個外圍處理裝置的第一部分中的每一個外圍處理裝置是具有虛擬化資源的存儲 節(jié)點,多個外圍處理裝置的第一部分的虛擬化資源共同定義由交換核心互聯(lián)的虛擬存儲資 源;以及多個外圍處理裝置具有通過多個與協(xié)議相關(guān)聯(lián)的連接耦接到多級交換結(jié)構(gòu)的第二部 分,來自多個外圍處理裝置的第二部分中的每一個外圍處理裝置是具有虛擬化資源的計算 節(jié)點,多個外圍處理裝置的第二部分的虛擬化資源共同定義由交換核心互聯(lián)的虛擬計算資 源。
9.如權(quán)利要求1所述的設(shè)備,其中多級交換結(jié)構(gòu)和多個邊緣設(shè)備共同定義交換核心;多級交換結(jié)構(gòu)具有多個輸入端口和多個輸出端口;多個外圍處理裝置包括經(jīng)由開放標(biāo)準(zhǔn)接口定義的連接耦接到多個輸入端口中的一個 輸入端口和耦接到多個輸出端口中的一個輸出端口的第一外圍處理裝置;多個外圍處理裝置包括經(jīng)由由開放標(biāo)準(zhǔn)接口定義的連接耦接到多個輸入端口中的一 個輸入端口和耦接到多個輸出端口中的一個輸出端口的第二外圍處理裝置;第一外圍處理裝置是具有虛擬化資源的第一存儲節(jié)點,第一外圍處理裝置被配置為使 得虛擬化資源可被與交換核心相關(guān)聯(lián)的第二存儲節(jié)點的虛擬化資源替代;以及第二外圍處理裝置是具有虛擬化資源的第一計算節(jié)點,第二外圍處理裝置被配置為使 得虛擬化資源可被與交換核心相關(guān)聯(lián)的第二計算節(jié)點的虛擬化資源替代。
10.如權(quán)利要求1所述的設(shè)備,其中多級交換結(jié)構(gòu)與基于信元的通信協(xié)議相關(guān)聯(lián);多個外圍處理裝置具有通過與基于分組的通信協(xié)議相關(guān)聯(lián)的第一多個連接而耦接到 多級交換結(jié)構(gòu)的第一部分,來自多個外圍處理裝置的第一部分中的每一個外圍處理裝置是 第一節(jié)點類型且與安全協(xié)議相關(guān)聯(lián);以及多個外圍處理裝置具有通過與基于分組的通信協(xié)議相關(guān)聯(lián)的第二多個連接而耦接到 多級交換結(jié)構(gòu)的第二部分,來自多個外圍處理裝置的第二部分中的每一個外圍處理裝置是 第二節(jié)點類型且與安全協(xié)議相關(guān)聯(lián)。
11.如權(quán)利要求1所述的設(shè)備,其中多級交換結(jié)構(gòu)和多個邊緣設(shè)備共同定義交換核心,交換核心被配置為邏輯上劃分為第 一虛擬交換核心和第二虛擬轉(zhuǎn)交換核心;多個外圍處理裝置具有可操作地耦接到第一虛擬交換核心的第一外圍處理裝置子集 和可操作地耦接到第二虛擬交換核心的第二外圍處理裝置子集;以及交換核心被配置,從而使第一虛擬交換核心具有獨立于第二虛擬交換核心帶寬和管理 性管理的帶寬和管理性管理。
12.如權(quán)利要求1所述的設(shè)備,其中多個邊緣設(shè)備具有配置為耦接到多級交換結(jié)構(gòu)的 多個第一端口和配置為耦接到多個外圍處理裝置的多個第二端口,多個邊緣設(shè)備包括第一 邊緣設(shè)備和第二邊緣設(shè)備,第一邊緣設(shè)備被配置為耦接到來自于多個外圍處理裝置的第一 外圍處理裝置,第二邊緣設(shè)備被配置為耦接到來自于多個外圍處理裝置的第二外圍處理裝 置,第一邊緣設(shè)備被配置為使得包括第一虛擬資源的多個虛擬資源在第一外圍處理裝置處 被定義,所述設(shè)備進一步包括耦接到多個邊緣設(shè)備的網(wǎng)絡(luò)管理模塊,該網(wǎng)絡(luò)管理模塊被配置為提供多個虛擬資源, 從而使第一虛擬資源能從第一外圍處理裝置遷移到第二外圍處理裝置。
13.如權(quán)利要求1所述的設(shè)備,其中多個邊緣設(shè)備具有第一部分,其共同具有耦接到多級交換結(jié)構(gòu)的多個輸出端口,并共 同具有被配置為耦接到多個外圍處理裝置的至少1000個輸入端口,多個邊緣設(shè)備中的每 一個邊緣設(shè)備被配置為使得多個虛擬資源在多個外圍處理裝置處被定義,多個邊緣設(shè)備具 有耦接到多級交換結(jié)構(gòu)的第二部分,所述設(shè)備進一步包括耦接到第一多個邊緣設(shè)備和第二多個邊緣設(shè)備的網(wǎng)絡(luò)管理模塊,該網(wǎng)絡(luò)管理模塊被配 置為提供多個處理裝置,從而使多個外圍處理裝置的第一外圍處理裝置的多個虛擬資源能 從多個外圍處理裝置遷移到第二外圍處理裝置。
14.如權(quán)利要求1所述的設(shè)備,其中多個邊緣設(shè)備具有被配置為耦接到多級交換結(jié)構(gòu)的多個第一端口和被配置為耦接到 多個外圍處理裝置的多個第二端口,在多個邊緣設(shè)備的多個第一端口中的端口數(shù)目比在多 個邊緣設(shè)備的多個第二端口中的端口數(shù)目少,多個邊緣設(shè)備中的每一個邊緣設(shè)備被配置為 使得多個虛擬資源在多個外圍處理裝置處被定義;多個邊緣設(shè)備和多級交換結(jié)構(gòu)被共同配置為使得從多個虛擬資源中的每一個虛擬資 源通過多個邊緣設(shè)備中的相應(yīng)邊緣設(shè)備以及通過多級交換結(jié)構(gòu)被發(fā)送的數(shù)據(jù)通信量獨立 于從來自于多個虛擬資源的剩下虛擬資源發(fā)送的數(shù)據(jù)通信量,多個虛擬資源與多個邊緣設(shè)備中其余的邊緣設(shè)備相關(guān)聯(lián);以及多個邊緣設(shè)備共同具有被配置為耦接到多個外圍處理裝置的至少100000個端口。
15.如權(quán)利要求1所述的設(shè)備,其中多個邊緣設(shè)備包括具有分組處理模塊的第一邊緣設(shè)備,第一邊緣設(shè)備被配置為接收分 組,第一邊緣設(shè)備的分組處理模塊被配置為基于分組產(chǎn)生多個信元;多個邊緣設(shè)備包括具有被配置為基于多個信元重組分組的分組處理模塊的第二邊緣 設(shè)備;多級交換結(jié)構(gòu)被耦接到第一邊緣設(shè)備和第二邊緣設(shè)備,多級交換結(jié)構(gòu)具有多個交換模 塊,多個交換模塊中的每一個交換模塊具有共享的存儲裝置,多級交換結(jié)構(gòu)被配置為交換 多個信元,從而使多個信元被發(fā)送到第二邊緣設(shè)備,多個交換模塊中的每一個交換模塊被 配置為不需要執(zhí)行基于以太網(wǎng)的處理而交換信元;多個交換模塊中的每一個交換模塊被配置為基于多個信元中的信元的目的地址和獨 立于一個順序來交換該信元,該信元相對于多個信元中剩下的信元在交換模塊處以該順序 被接收;以及多個交換模塊中的每一個交換模塊的共享存儲裝置被配置為定義具有足夠長用于多 級交換結(jié)構(gòu)以實施信元交換同步和不足以用于多級交換結(jié)構(gòu)在那個交換模塊實施擁塞解 決方案的隊列。
全文摘要
在實施例中,設(shè)備包括可以具有分組處理模塊的第一邊緣設(shè)備。第一邊緣設(shè)備被配置為接收分組。第一邊緣設(shè)備的分組處理模塊可以被配置為基于分組產(chǎn)生多個信元。第二邊緣設(shè)備具有配置為基于多個信元重組分組的分組處理模塊。多級交換結(jié)構(gòu)能耦接到第一邊緣設(shè)備和第二邊緣設(shè)備。多級交換結(jié)構(gòu)能夠定義單個邏輯實體。多級交換結(jié)構(gòu)能具有多個交換模塊。多個交換模塊中的每一個交換模塊具有共享的存儲裝置。多級交換結(jié)構(gòu)能被配置為交換多個信元,從而使多個信元被發(fā)送到第二邊緣設(shè)備。
文檔編號H04L12/56GK101917331SQ200910246898
公開日2010年12月15日 申請日期2009年9月11日 優(yōu)先權(quán)日2008年9月11日
發(fā)明者A·文卡特馬尼, G·艾貝, J-M·弗愛龍, P·辛德胡, Q·沃赫拉 申請人:叢林網(wǎng)絡(luò)公司