專利名稱:在交換結構網絡中管理芯片上隊列的制作方法
在交換結構網絡中管理芯片上隊列
背景技術:
本發明涉及在交換結構網絡中管理芯片上隊列。高級交換互連
(ASI)是一種基于快速外圍設備互連(PCIe)體系結構的技術并能使得各 種底板標準化。高級交換互連特殊興趣小組(ASI-SIG)是一個協作貿易 組織,旨在提供交換結構互連標準及其規范,包括它向其成員提供的 高級交換核心體系結構規范(Rev. 1.1, 2004年11月,可在 www.asi-sig.com從ASI國SIG得到)。
ASI利用可在PCIe物理和數據鏈路層上操作的基于分組的事務 層協議。ASI體系結構提供許多對于多主機、端對端通訊設備(如刀片 服務器、集群、存儲陣列、電信路由器以及交換機)常見的特征。這些 特征包括支持靈活的拓樸、分組路由選擇、擁塞管理、冗余結構以及 故障恢復機制。
ASI體系結構需要ASI設備使用基于狀態的流控(SBFC)、基于信 譽的流控以及注入率限制的組合來支持精細顆粒度的服務質量(QoS)。 ASI端點設備還需要在響應SBFC流控消息時遵循嚴格的指南。通常, 各ASI端點設備具有固定窗口 ,在該窗口中用來在SBFC流控消息被 接收用于給定連接控制隊列之后中止或重新開始來自該具體連接隊 列的分組傳輸。
連接隊列通常實現在外部存儲器中。ASI端點設備的調度程序使 用算法(如加權輪轉WRR、加權公平隊列WRR或輪轉RR)來調度來 自連接隊列的分組用于在ASI結構上傳送。調度程序使用SBFC狀態 信息作為用來確定合格隊列的輸入之一。用來提取調度的分組并將他 們注入到ASI端點設備的傳送管道中的等待時間會高,這歸因于由處 理管道階段引入的延遲以及訪問外部存儲器的等待時間。如果連接隊
列被流控,則大的等待時間可能會導致不希望的狀況。因此,分組需
要^支再次調度以確保選擇的分組與SBFC狀態一致。
圖1是交換結構網絡的框圖。 圖2A是ASI分組格式圖。 圖2B是ASI路由報頭格式。 圖3是ASI端點的框圖。
圖4是在交換結構網絡的設備處緩沖器管理過程的流程圖。
具體實施例方式
參考圖1,高級交換互連(ASI)交換結構網絡100包括經由物理鏈 路互連的ASI設備。構成網絡100的內部節點的ASI設備稱作"交換 元件"102,以及駐留在網絡100的邊緣的ASI設備稱作"端點,,104。 在網絡100中可包括其他ASI設備(未示出)。這種ASI設備可包括負 責列舉、配置以及維護網絡100的ASI結構管理器,以及將網絡100 連接到其他通信基礎結構(如PCI Express結構)的ASI橋。
各ASI設備102、 104具有ASI接口,該接口為由高級交換核心 體系結構規范("ASI規范")定義的ASI體系結構的一部分。各ASI 交換元件102可實現為支持局部化的擁塞控制機制,在ASI規范中稱 作"基于狀態的流控(Status Based Flow Control)"或"SBFC" 。 SBFC 機制規定通過兩個相鄰ASI設備102、 104(如ASI交換元件102及其 相鄰的ASI端點104)之間或兩個相鄰的ASI交換元件102之間的鏈路 的業務流的優化。相鄰意味著兩個ASI設備102、 104直4妄鏈4妄,而 不會有任何插入的ASI設備104、 104。
通常,SBFC機制按照如下方式工作下游ASI交換元件102將 SBFC流控制消息傳送到上游ASI端點104。 SBFC流控消息提供一些 或所有的以下狀態信息業務類指示、僅有序的標記狀態、出口輸出 端口標識符以及請求的調度行為。上游ASI端點104使用狀態信息來 修改它的調度,使得在下游ASI交換元件102中的目標為擁塞纟爰沖器 的分組被賦予較低優先級。具體來說,上游ASI端點104或者中止(如 SBFC消息是ASIXoff消息)或者重新開始(如SBFC消息是ASIXon 消息)來自連接隊列的分組傳送,在該連接隊列中,所有的分組具有請 求的^又有序的標記狀態、業務類領域標識、出口輸出端口標識符。當 分組的傳送從連接隊列中止時,該連接隊列就;故稱作4支"流控"。
在以下描述的示例場景中,從上游ASI端點104向下游ASI交換 元件102傳送的分組包括ASI協議接口 2(PI-2)分組。參考圖2A和圖 2B,各PI-2分組200包括ASI路由報頭202、 ASI有效栽荷204、以 及可選地,PI-2循環冗佘校驗(CRC)206。 ASI路由報頭202包括路由 信息(如轉向池210、轉向指針212和方向214)、業務類指示216以及 避免死鎖信息(如僅有序的標記狀態218)。 ASI有效載荷204含有給定 協議的協議數據單元(PDU)或PDU的段,其中所述給定協議例如為(以 下僅僅是列舉其中的 一些)以太網/點對點協議(PPP)、異步傳輸模式 (ATM)、在SONET上的分組(PoS)、通用交換接口(CSIX)。
參考圖3,上游ASI端點104包括網絡處理器(NPU)302,其配置 為緩沖從一個或多個PDU源304a-304n(如線路卡)接收的PDU,并將 PDU存儲在PDU存儲器306中,該PDU存儲器306駐留在NPU 302 的外部(在所示示例中)。
NPU 302的主調度程序308確定從PDU存儲器306檢索PDU的 順序。檢索的PDU由NPU 302轉發到上游ASI端點的Pl-2分段與重 組(SAR)引擎310。
ASI設備102、 104通常實現為將最大的ASI分組大小限制到小 于ASI體系結構支持的2176字節的最大ASI分組大小。在從PDU存 儲器206檢索的PDU具有大于可通過ASI結構傳送的最大有效載荷 大小的分組大小的實例中,PDU^L分段成許多段。在一些實現中,在 各段^皮轉發到PI-2 SAR引擎301之前,通過NPU 302中的微引擎軟
件來執行分段。在其他實現中,PDU被轉發到PI-2 SAR引擎310,在 那里執行分段。
對于每個接收的PDU (或PDU的段),PI-2 SAR引擎310通過將 PDU分段成其大小小于網絡支持的最大值的多個段、以及各段附加一 個ASI路由t艮頭并且可選地計算PI-2 CRC來形成一個或多個PI-2分 組。緩沖器管理器312將由PI-2 SAR引擎310形成的各PI-2分組存 儲到數據緩沖器存儲器314(在本說明書中稱作"傳送緩沖器"或
"TBUF")中。在理想的場景中,TBUF314具有足夠大小以便緩沖通 過ASI結構發送的所有PI-2分組。在這種場景中,理想地實現的NPU 302具有TBUF 314,對于低數據速率TBUF 314具有大于512 MB的 大小,而對于高數據速率TBUP314具有大于2MB的大小。
雖然ASI體系結構并沒有對TBUF 314設任何大小限制,但是由 于管芯大小和成本限制通常最好實現小得多的大小的TBUF 314(如 64K至256KB)。在一個實現中,TBUF 314是可含有達128K數據的 隨機存取存儲器。TBUF 314組織為具有固定大小(elem一size)的元件 314a-314n,該固定大小通常為每元件32字節或64字節。給定的長度 為L的PI-2分組將^皮分配TBUF 314的mod(L/elem—size)元件314n。 含有PI-2分組的元件314n標明為"被占用",或者元件314n標明為
"可用"。
對于存儲在TBUF 314中的各PI-2分組,緩沖器管理器312還創 建一個對應的隊列描述符、從許多駐留在芯片上存儲器318上的連接 隊列316a-316n中選擇隊列描述符將要被插入隊列的目標連接隊列 316a、并且將隊列描述符附加到目標連4妄隊列316a中的最后隊列描述 符。緩沖器管理器312記錄各隊列描述符在它附加到目標連接隊列 316a的插入隊列時間。對目標連接隊列316a的選擇通常基于對應于 將要纟皮插入隊列的隊列描述符的PI-2分組的業務類指示、及其目的地 和通過ASI結構的路徑。
為了確保TBUF 314不神支過負載,緩沖器管理器312實現用于動
態地確定TBUF 314空間分配策略的緩沖器管理方案。通常,緩沖器 管理方案遵守以下規則(l)如果連接隊列316a-316n不被流控,則PI-2 分組(對應于將被附加到該連接隊列316a-316n的隊列描述符)在TBUF
(2)如果連接隊列316a-316n被流控,則對應于將被附加到該連接隊列 316a-316n的隊列描述符的PI-2分組在TBUF 314中被分配空間直到 超過某個可編程的每連接隊列闊值為止,在該點,緩沖器管理器312 選擇幾個選項之一以解決該情況;以及(3)僅僅當TBUF占用超過某個 閾值時觸發分組丟棄和回滾操作以確保該貴重的回滾操作^f皮保持在 最小。
參考圖4,作為緩沖器管理方案的一部分,緩沖器管理器312監 視(402)上游ASI設備104的狀態。緩沖器管理器314包括以下中的一 個或多個(1)維持被流控的連接隊列316a-316n的總數的計數器;(2) 對由該連接隊列316a-316n消耗的TBUF元件314a-314n的總數進行 計數的每連接隊列316a-316n的計數器;(3)指明各連接隊列316a-316n 的流控狀態的位向量;(4)對分配的TBUF元件314a-314n的總數進行 計數的全局計數器;以及(5)對于各連接隊列316a-316n,指明在連接 隊列316a-316n的報頭處的隊列描述符被插入隊列的時間的時間標記 ("連接隊列時間標記的報頭,,)。當緩沖器管理器312在給定的連接隊 列316a-316n上執行出列操作時更新連接隊列時間標記的報頭。
NPU 302具有輔助調度程序320,其對TBUF314中的PI-2分組 進行調度用于在ASI結構上經由ASI事務層322、ASI數據鏈路層324 和ASI物理鏈路層326傳送。在一些實現中,ASI設備104包括將NPU 302連接到ASI結構的結構接口芯片。在正常的操作才莫式中,TBUF 314 的占用(即在TBUF中被占用元件314a-314n的數目)足夠低以便將 元件314a-314n加到TBUF 314的速率處于(或低于)在TBUF 314中元 件314a-314n ^皮使得可用的速率。即,輔助調度程序320能夠跟上主 調度程序308填充TBUF元件314a-314n的速率。
輔助調度程序320向NPU302的隊列管理引擎330發送提交消息。一 旦隊列管理引擎330接收用于PDU的段已被封裝到的所有PI2分組的 提交消息,則隊列管理引擎330從PDU存儲器306移除PDU數據。
一旦檢測(404)到觸發條件,則緩沖器管理器312發起(406)在 TBUF 314中重新要求空間的過程(在本說明書中稱作"數據緩沖器元 件恢復過程")以便減輕TBUF314占用影響。這種觸發條件的示例包 括(l)落在某個最小閾值以下的可用TBUF元件314a-314n的數目; (2)超過可編程閾值的流控的隊列316a-316n的數目;以及(3)與任何一 個超過可編程閾值的流控連接隊列316a- 316n相關聯的TBUP元件 314a-314n的數目。
一旦發起數據緩沖器元件恢復過程,則緩沖器管理器312選擇 (408)—個或多個連接隊列316a-316n用于丟棄,并對各選擇的連接隊 列316a-316n執行(410)回滾操作,使得對應于各選擇的連接隊列 316a-316n的TBUF 314的被占用元件314a-314n被標明為可用。回滾 操作的一種實現涉及將回滾消息(而不是提交消息)發送到NPU 302的 隊列管理引擎330。當隊列管理引擎330接收PDU的回滾消息時,它 重新將PDU插入到連接隊列316a-316n的報頭并且不會從PDU存儲 器306移除PDU數據。按此方式,緩沖器管理器312能夠在其中可 存儲其他PI-2分組的TBUTF314中重新要求空間。通常,數據緩沖器 元件恢復過程遵循以下兩個規則(l)選擇一個或多個連接隊列 316a-316n以便確保集合的重新要求的TBUF 314空間足夠,4吏得 TBUF 314占用落到預定閾值條件以下;以及(2)使要執行的回滾操作 的總數最小。
可以通過緩沖器管理器312執行數據緩沖器元件恢復過程來實現 四種示例技術。在給定場景中使用的特定技術可取決于PDU的源 304a-304n。即,應用的4支術可以是線路卡特定的,以便最佳適合具體 線路卡配置的操作條件。在一個示例中,緩沖器管理器312檢查各連接隊列的計數器以及 指示連接隊列是否^皮流控的位向量,并識別在分配給連4妄隊列 316a-316n的TBUF 314中具有最大數目的#皮占用元件314a-314n的流 控連接隊列316a-316n。緩沖器管理器312標記識別的流控連接隊列 316a-316n用于丟棄,并對該連接隊列發起回滾操作。分配給該連接 隊列316a-316n的TBUF 314中的被占用元件314a-314n被標明為可 用,并且緩沖器管理器312重新評估(412)觸發條件。如果觸發條件沒 有消除(即,重新要求的TBUF 314空間不夠),則緩沖器管理器312 識別具有次最大數目的TBUF 314中分配的被占用元件314a-314n的 流控連接隊列316a-316n,并重復該過程(在408)直到觸發條件消除(即 變為出錯)為止,在該點,緩沖器管理器返回到監視(402)NPU 302的 狀態。通過選擇具有相對較大數目的分配的被占用元件314a-314n的 流控隊列316a-316n,緩沖器管理器312能夠消除觸發條件,同時使 對其執行回滾操作的連接隊列316a-316n的數目最小。
在另 一示例中,緩沖器管理器312檢查各連接隊列的連接隊列時 間標記的報頭以及指示連接隊列316a-316n是否被流控的位向量,并 識別具有最早的連接隊列時間標記的報頭的流控連接隊列316a-316n。 緩沖器管理器312對識別的流控連接隊列316a-316n進行標記用于丟 棄,并發起對該連接隊列316a-316n的回滾操作。分配給該連接隊列 316a-316n的TBUF314的被占用元件314a-314n被標明為可用,并且 緩沖器管理器312重新評估(412)觸發條件。如果觸發條件沒有消除, 則緩沖器管理器312識別具有次最早的連接隊列時間標記的^^艮頭的流 控連接隊列316a-316n,并重復過程(在408)直到觸發條件消除為止。 通過選擇最老的流控隊列316a-316n(如由最早的連接隊列時間標記的 報頭所反映),緩沖器管理器312能夠消除觸發條件,同時重新標明具 有最老SBFC狀態的TBUF 314的元件314a-314n。
在第三示例中,緩沖器管理器312檢查各連接隊列的連接隊列時 間標記的報頭以及指示連接隊列316a-316n是否被流控的位向量,并
識別具有最近的連接隊列時間標記的報頭的流控連接隊列316a-316n。 ^^沖器管理器312對識別的流控連接隊列316a-316n進行標記用于丟 棄,并發起對該連接隊列316a-316n的回滾操作。分配給該連4妄隊列 316a-316n的TBUF314的被占用元件314a-314n被標明為可用,并且 緩沖器管理器312重新評估觸發條件。如果觸發條件沒有消除(即,重 新要求的TBUF314空間不夠),則緩沖器管理器312識別具有次最近 的連接隊列時間標記的報頭的流控連接隊列316a-316n,并重復過程 (在408)直到觸發條件消除為止。通過選擇最新的流控隊列 316a-316n(如最近的連接隊列時間標記的報頭所反映),緩沖器管理器 312工作在以下前提下最新的流控連接隊列316a-316n不可能受控 于緊接著的ASI Xon消息(發信號通知重新開始來自連接隊列 316a-316n的分組傳送)。因此,對最新的流控連接隊列316a-316n執 行回滾操作使得緩沖器管理器312能夠重新要求TBUF 314的元件 314a-314n,同時使得較老的流控隊列316a-316n能被維持,因為這些 更可能受控于ASI Xon消息。圖4的技術在上游ASI端點中能特別有 效地工作,在該端點處Xon和Xoff事務按輪轉方式發生。
在第四示例中,數據緩沖器元件恢復過程在流控連接隊列 316a-316n的數目超過某個閾值時觸發。當此發生時,緩沖器管理器 312基于占用(即使用各連接隊列的每連接隊列計數器)、最老元件(即 識別最早的連接隊列時間標記凈艮頭)、最新元件(即識別最近的連接隊 列時間標記報頭)或通逸逸加輪轉方案來選擇連接隊列316a-316n用于 丟棄。緩沖器管理器312重復地選擇連接隊列316a-316n用于丟棄直 到流控連接隊列316a-316n的數目降到觸發閾值以下為止。
在上述示例中,實現的NPU302具有芯片上連接隊列316a-316n, 芯片上連接隊列316a-316n具有比芯片外連接隊列短的響應時間。這 些較短的響應時間使得NPU302能滿足嚴格的響應時間要求,這些要 求是用于在SBFC流控消息被接收用于該具體連接隊列316a-316n之 后中止或重新開始來自給定連^^妄隊列316a-316n的分組的傳送。實現
的上游ASI端點還具有緩沖器管理器312,該緩沖器管理器312動態 地管理緩沖器利用以便即使在考慮到管芯大小和成本限制而TBUF 314大小相對較小時防止緩沖器過負載。
本發明的一個實施例的技術可通過一個或多個可編程處理器執 行,該處理器可執行計算機程序以通過對輸入數據進行操作并生成輸 出來執行實施例的功能。這些技術還可通過專用邏輯電路執行,并且 本發明的 一個實施例的裝置可實現為專用邏輯電路,如一個或多個 FPGA(現場可編程門陣列)和/或一個或多個ASIC(專用集成電路)。
適于執行計算機程序的處理器例如包括通用和專用微處理器以 及任何種類的數字計算機的任何一個或多個處理器。通常,處理器會 接收來自存儲器(如存儲器330)的指令和數據。存儲器可包括許多種類 的存儲媒體,其包括但不限于易失存儲器、非易失存儲器、閃存、可 編程變量或狀態、隨機存取存儲器(RAM)、只讀存儲器(ROM)、閃存 或其他靜態或動態存儲々某體。在一個示例中,機器可讀指令或內容可 從機器可訪問介質形式提供到存儲器。機器可訪問介質可表示任何按 機器(如ASIC、專用功能控制器或處理器、FPGA或其他硬件設備)可 讀形式提供(即存儲或傳送)信息的機制。例如,機器可訪問介質可包 括ROM; RAM;磁盤存儲々某體;光存儲々某體;閃存存儲器設備; 電、光、聲或其他形式的傳播信號(如載波、紅外信號、數字信號)等。 處理器和存儲器可以由專用邏輯電路補充或結合在該電路中。
已經按特定實施例的形式描述了本發明。其他實施例落在所附權 利要求的范圍內。例如,本發明實現的步驟可按不同的順序執行并且 仍然取得希望的結果。
權利要求
1.一種方法,包括監視交換結構網絡的設備的狀態,所述設備包括用來存儲隊列描述符的芯片上隊列和用來存儲數據分組的數據緩沖器,各隊列描述符具有對應的數據分組;檢測用來將所述設備從第一狀態轉換到第二狀態的第一觸發條件;以及響應于所述第一觸發條件檢測而恢復所述數據緩沖器中的空間,所述恢復步驟包括選擇所述芯片上隊列中的一個或多個芯片上隊列用于丟棄,以及從所述數據緩沖器移除對應于在選擇的一個或多個芯片上隊列中的隊列描述符的數據分組。
2. 如權利要求1所述的方法,其中所述監視步驟包括監視由數 據分組占用的數據緩沖器空間的數量。
3. 如權利要求1所述的方法,其中所述監視步驟包括維持識別 被流控的芯片上隊列的數目的計數器。
4. 如權利要求1所述的方法,其中所述監視步驟包括對于各芯 片上隊列識別對應于所述芯片上隊列的隊列描述符的數據分組所占 用的數據緩沖器空間的數量。
5. 如權利要求1所述的方法,其中所述監視步驟包括維持指示 各芯片上隊列的流控狀態的位向量。
6. 如權利要求1所述的方法,其中所述監視步驟包括對于各芯 片上隊列維持時間標記,所述時間標記指示與所述芯片上隊列的報頭 處的隊列描述符相關聯的插入隊列時間。
7. 如權利要求1所述的方法,其中所述第一觸發條件指示由數 據分組占用的數據緩沖器空間的數量超過預定閾值。
8. 如權利要求1所述的方法,其中所述第一觸發條件指示^f皮流 控的芯片上隊列的數目超過預定閾值。
9. 如權利要求1所述的方法,其中所述第一觸發條件指示對應 于芯片上隊列的隊列描述符的數據分組占用的數據緩沖器空間的數 量超過預定閾值。
10. 如權利要求l所述的方法,其中所述第一觸發條件指示^皮流 控的芯片上隊列的數目超過預定閾值。
11. 如權利要求l所述的方法,其中所述選擇步驟包括使被選擇 用于丟棄的芯片上隊列的數目最小,同時使從所述數據緩沖器恢復的 空間的數量最大。
12. 如權利要求l所述的方法,其中所述選擇步驟包括確定哪一 個流控芯片上隊列與占用最大數量的緩沖器空間的數據分組相關聯, 并基于所述確定來選擇流控芯片上隊列用于丟棄。
13. 如權利要求l所述的方法,其中所述選擇步驟包括確定哪一 個流控芯片上隊列具有最老的"^艮頭隊列描述符,并基于所述確定來選 擇流控芯片上隊列用于丟棄。
14. 如權利要求l所述的方法,其中所述選擇步驟包括確定哪一 個流控芯片上隊列具有最新的報頭隊列描述符,并基于所述確定來選 擇流控芯片上隊列用于丟棄。
15. 如權利要求l所述的方法,還包括重復執行直到用來將所述設備從第二狀態轉換到第 一狀態的第 二觸發條件祐:檢測到為止。
16. 如權利要求15所述的方法,其中所述第二觸發條件指示由 數據分組占用的數據緩沖器空間的數量低于預定閾值。
17. 如權利要求l所述的方法,其中所述交換結構網絡包括高級 交換互連(ASI)結構,所述設備包括ASI端點或ASI交換元件,并且 各芯片上隊列包括ASI連接隊列。
18. 如權利要求l所述的方法,其中所述設備包括網絡處理器單 元,所述網絡處理器單元包括高級交換互連(ASI)接口。
19. 如權利要求1所述的方法,其中所述設備包括結構接口芯片, 所述結構接口芯片通過第 一高級交換互連(ASI)接口連接到網絡處理 器單元,并通過第二 ASI接口連接到ASI結構。
20. 如權利要求l所述的方法,其中所述設備包括網絡處理器單 元和高級交換互連(ASI)接口 。
21. 在交換結構設備處,所述交換結構設備包括芯片上隊列和緩 沖器元件,各緩沖器元件的可用性狀態^皮標明, 一種方法,所述方法 包括在4全測到第 一觸發條件時,恢復所述緩沖器元件的一個或多個纟爰 沖器元件中的空間直到4全測到第二觸發條件為止,所述恢復步驟包括 選擇所述芯片上隊列中的一個用于丟棄,并將分配給選擇的芯片上隊 列的元件標明為可用。
22. 如權利要求21所述的方法,其中標明為被占用的緩沖器元 件存儲數據分組。
23. —種包括內容的機器可訪問介質,當由機器執行所述內容時 所述內容會導致所述機器檢測用來將交換結構設備從第 一狀態轉換到第二狀態的第 一觸 發條件,所述設備包括用來存儲隊列描述符的芯片上隊列和用來存儲 數據分組的數據緩沖器,各隊列描述符具有對應的數據分組;以及響應于所述第一觸發條件檢測而恢復所述數據纟爰沖器中的空間, 其中由所述機器執行時導致所述機器恢復所述數據緩沖器中的空間 的內容包括用來選擇所述芯片上隊列中的一個或多個芯片上隊列用 于丟棄的內容,以及用來從所述數據緩沖器移除對應于在選擇的一個 或多個芯片上隊列中的隊列描述符的數據分組的內容。
24. 如權利要求23所述的機器可訪問介質,還包括當由所述機 器執行時導致所述機器來執行以下步驟的內容恢復所述數據緩沖器中的空間直到用來將所述設備從第二狀態 轉換到第 一狀態的第二觸發條件祐:檢測到為止。
25. 如權利要求24所述的機器可訪問介質,其中所述笫二觸發 條件指示由數據分組占用的數據緩沖器空間的數量低于預定閾值。
26. —種交換結構設備,包括 處理器;用來存儲隊列描述符的芯片上隊列;用來存儲對應于所述隊列描述符的數據分組的第 一存儲器; 包括緩沖器管理軟件的第二存儲器,所述軟件用來向所述處理器 提供指令以便檢測用來將所述設備從第 一狀態轉換到第二狀態的第一觸 發條件;以及響應于所述第 一觸發條件檢測,執行第 一存儲器空間恢復過 程,所述過程包括選擇所述芯片上隊列中的一個或多個芯片上隊列用 于丟棄,以及從所述第一存儲器中移除對應于在選擇的一個或多個芯 片上隊列中的隊列描述符的數據分組。
27. 如權利要求26所述的交換結構設備,其中所述第一存儲器 包括多個緩沖器元件,根據數據分組是否存儲在所迷緩沖器元件中而 將各緩沖器元件標明為可用或:f皮占用。
28. 如權利要求27所述的交換結構設備,其中所述緩沖器管理 軟件還向所述處理器提供用于將分配給選擇的一個或多個芯片上隊 列的緩沖器元件標明為可用的指令。
29. 如權利要求26所述的交換結構設備,其中所述交換結構網 絡包括高級交換互連(ASI)結構,所迷設備包括ASI端點或ASI交換 元件,并且各芯片上隊列包括ASI連接隊列。
30. —種系統,包括通過結構的鏈路互連的交換結構^殳備,所述交換結構設備中的至 少一個設備包括協議數據單元的源;以及 網絡處理器單元,包括 處理器; 用來存儲隊列描述符的芯片上隊列;用來存儲對應于所述隊列描述符的數據分組的第 一存 儲器,各數據分組包括協議數據單元或協議數據單元的段;以及包括緩沖器管理軟件的第二存儲器,所述軟件用來向所 述處理器提供指令以便檢測用來將所述設備從第 一狀態轉換到第二 狀態的第一觸發條件,并響應于所述第一觸發條件檢測,才丸行第一存 儲器空間恢復過程,所述過程包括選擇所述芯片上隊列中的一個或多 個芯片上隊列用于丟棄,以及從所述第一存儲器移除對應于在選擇的 一個或多個芯片上隊列中的隊列描述符的數據分組。
31. 如權利要求30所述的系統,其中所述協議數據單元的源包 括線路卡。
32. 如權利要求30所述的系統,其中所述結構包括高級交換互 連(ASI)結構,所述至少一個交換結構設備包括ASI端點,并且各芯片 上隊列包括ASI連接隊列。
全文摘要
方法和裝置及其計算機程序產品,用于實現以下技術監視交換結構網絡的設備的狀態,所述設備包括用來存儲隊列描述符的芯片上隊列和用來存儲數據分組的數據緩沖器,各隊列描述符具有對應的數據分組;檢測用來將所述設備從第一狀態轉換到第二狀態的第一觸發條件;以及響應于所述第一觸發條件檢測而恢復所述數據緩沖器中的空間,所述恢復步驟包括選擇所述芯片上隊列中的一個或多個芯片上隊列用于丟棄,以及從所述數據緩沖器移除對應于在選擇的一個或多個芯片上隊列中的隊列描述符的數據分組。
文檔編號H04L12/56GK101356777SQ200680047740
公開日2009年1月28日 申請日期2006年12月11日 優先權日2005年12月21日
發明者H·M·威爾金森三世, J·J·塞迪爾, P·多爾米奇, S·拉克什馬納穆爾蒂 申請人:英特爾公司