欧美在线观看视频网站,亚洲熟妇色自偷自拍另类,啪啪伊人网,中文字幕第13亚洲另类,中文成人久久久久影院免费观看 ,精品人妻人人做人人爽,亚洲a视频

進行擁塞標記的方法和系統(tǒng)的制作方法

文檔序號:7680670閱讀:274來源:國知局
專利名稱:進行擁塞標記的方法和系統(tǒng)的制作方法
技術領域
本發(fā)明涉及包交換數(shù)據(jù)網(wǎng)絡,更具體來說,涉及一種基于從協(xié)議棧 較低層獲得的擁塞信息來對該協(xié)議桟較高層中的數(shù)據(jù)包進行擁塞標記的 方法和系統(tǒng)。
背景技術
數(shù)據(jù)網(wǎng)絡中的"擁塞標記"是這樣的實踐,即在包頭部中特定字段內(nèi) 設置某個值,以表明當該包作為流的一部分穿過網(wǎng)絡時,該包在該網(wǎng)絡 中的某一跳處經(jīng)歷了擁塞。如果包在后一跳處繼續(xù)經(jīng)歷擁塞,則該后一 跳處的路由器可以決定丟棄這個標記了擁塞的包,以減輕整個網(wǎng)絡中的 擁塞。網(wǎng)際協(xié)議(IP)網(wǎng)絡中的擁塞標記是公知的,并且通常通過網(wǎng)絡 層路由器在流量高于特定閾值之上時(在IP頭部中)對包進行"標記"而
完成。具體來說,IETF RFC 3168定義了向IP添加ECN (顯式擁塞通知), 利用IP頭部中的區(qū)分服務代碼點(DiffServ Codepoint, DSCP)來進行 ECN標記。
擁塞標記的使用使得能夠執(zhí)行各種網(wǎng)絡控制功能,例如(1)諸如
TCP的擁塞反應協(xié)議(congestion reactive protocol):用于執(zhí)行速率控制 而不是丟棄包;(2)PCN(預擁塞通知)用于控制新流的允入(admission) 并搶占(pre-empt)已有流;以及(3)流量工程(Traffic Engineering):
控制流到替換路徑的轉移。
ECN技術通常根據(jù)網(wǎng)絡中某點處已經(jīng)發(fā)生的擁塞,來觸發(fā)對包的初 始ECN標記,然后進一步發(fā)生的擁塞會導致作了 ECN標記的包被丟棄。 然而,在一些部署(deployment)中,更優(yōu)地是嘗試和檢測增加的網(wǎng)絡流 量,并且在擁塞實際發(fā)生之前或者在擁塞剛開始發(fā)生時,采取補救措施 來控制網(wǎng)絡負載。為了嘗試和解決這些問題,已經(jīng)發(fā)展出了用在網(wǎng)絡層
4擁塞標記的語境中的預擁塞通知(PCN)概念。
PCN (預擁塞通知)是一種使用邊到邊基于分散式測量的允入控制
(DMBAC)的端到端受控負載(CL)服務,邊到邊DMBAC在Briscoe 等的IETF因特網(wǎng)草案"An edge-to-edge Deployment Model for Pre-Congestion Notification: Admission Control over a DiffServ Region)"禾口 B.Briscoe等的正TF因特網(wǎng)草案"Pre-Congestion Notification Marking),,
中做了描述,這兩個草案分別為可以從 http:〃tools.ietf.org/wg/tsvwg/draft-briscoe-tsvwg-cl-architecture-04.txt 獲得 的 draft-briscoe-tsvwg-cl-architecture-04.txt 禾口 可 以 從 http:〃www.ietf.org/intemet-drafts/draft-briscoe-tsvwg- cl-phb-03.txt獲得的 "draft-briscoe-tsvwg-cl-phb-02.txt"。 MBAC (基于測量的允入控制)的主 要目的是保證不僅針對受檢驗從而允入的任何進入流而且針對已有的準 入流的服務質量(QoS)要求。
PCN使用兩種控制算法流允入控制和流搶占。下面對這兩種算法 進行更詳細的描述。為了得到進一步的細節(jié),參照上面提到的兩個IETF 因特網(wǎng)草案,這里通過引用并入這兩個草案。
在流允入控制中,PCN引入了一種算法,該算法在隊列中存在任何 CL包的顯著增多(build-up)之前對這些包進行"允入標記"。作了允入標 記的包充當早期警告,即,警告包流量接近工程設計容量。通過使用 DMBAC (基于分散式測量的允入控制),橫跨CL區(qū)"邊到邊"地實現(xiàn)CL 服務。允入新流的決定取決于同一對入口和出口網(wǎng)關之間已有流量的測 量。CL區(qū)出口計算使用EWMA (指數(shù)加權移動平均)作了標記的包的 比率(fraction),并將該值(擁塞水平估計)報告回入口。
允入標記是如下來執(zhí)行的。在當前PCN設計中,路由器使用以下類 似RED的算法,根據(jù)路由器處虛擬隊列的大小來計算包應該被允入標記 的概率
虛擬隊列大小<最小標記閾值,概率=0;
最小標記閾值<虛擬隊列大小< (最大標記閾值-最小標記閾值),概 率=(虛擬隊列大小-最小標記閾值)/ (最大標記閾值-最小標記閾值);虛擬隊列大小>最大標記閾值,概率=1。
這給出了如圖3中所示的概率函數(shù),包被標記的線性增加的概率取 決于路由器處的、最小和最大標記閾值之間的虛擬隊列大小。在這一方 面,盡管我們通過"虛擬隊列"來表示路由器處流量隊列的大小的仿真, 但是它適合于仿真比實際真實發(fā)生更低的發(fā)送速率(即,隊列清空速率)。 因此,"虛擬隊列"是以和真實隊列處的包到達相同的速率增大,而以比 由于實際包從真實隊列中發(fā)送出去而導致的真實隊列被實際清空更慢的 速率減小的數(shù)。例如,虛擬隊列的減小速率可以被選擇為實際路由器發(fā) 送速率的某個百分比,由此被選擇為真實隊列的減小速率的某個百分比,
如80%。
使用該更低的虛擬"發(fā)送速率"(即,虛擬隊列減小的速率)的效果 是,它使得能夠通過簡單地查看真實隊列中排隊的數(shù)據(jù)量,在潛在的擁 塞成為現(xiàn)實之前檢測到它們。例如,如果我們查看真實隊列,并等待直 到真實隊列為滿才檢測然后采取針對擁塞的措施,則實際上,在采取補 救措施之前擁塞已經(jīng)發(fā)生,并且由于緩沖器溢出而導致包正在丟失。然 而,通過査看虛擬隊列,因為虛擬發(fā)送速率(即,虛擬隊列計數(shù)器減小 的速率)小于實際發(fā)送速率,所以對于給定的包到達速率,虛擬隊列將 始終比實際隊列更"滿"(即,指示更高的水平)。如果包到達速率增大從 而虛擬隊列"溢出"(即,達到閾值數(shù),該閾值數(shù)可以等于真實隊列可以 保持的包數(shù)),則這是真實隊列中將要發(fā)生擁塞的指示,從而可以采取措 施。當然,因為真實隊列具有高于虛擬隊列的發(fā)送速率,所以在虛擬隊 列溢出時,真實隊列將仍然有容量,所以擁塞實際上還未發(fā)生。
因此,使用虛擬隊列的技術提供了一種機制,通過該機制可以進行 潛在擁塞的早期檢測。
流搶占是一種幫助解決路由器和鏈路故障的方案。新流只在有足夠
容量的情況下才被允入,從而可以滿足新流和己有允入流的QoS要求。 考慮鏈路故障、緩和(mitigation)以及重路由的傳統(tǒng)方法可能導致某些 鏈路上的嚴重擁塞,并降低正在前進的(on-going)流和其他低優(yōu)先級流 所體驗到的QoS。 PCN使用基于速率的流搶占,從而之前允入流的足夠比例被丟棄以確保剩余流再次接收到與CL服務相當?shù)腝oS,并且對其他
流量類型迅速恢復至少一些QoS。進行流搶占的步驟為(1)觸發(fā)入口
網(wǎng)關來測試是否可能需要搶占。通過PCN增強了的路由器可選地包括對
包進行搶占標記的算法。在出口處接收到如此作了標記的包向入口網(wǎng)關
發(fā)送搶占警報消息。(2)計算要丟棄的流量的正確數(shù)量。(3)選擇要發(fā) 送哪些流。(4)針對所選的流解除(tear down)預留。入口網(wǎng)關針對使 用中的預留協(xié)議,觸發(fā)標準的解除消息。此外,在上面引用的IETF草案 中給出了流搶占的進一步細節(jié)。
應該注意,在任何PCN部署中,可以僅使用流允入控制或者流搶占 中的一個或另一個,或者可以同時使用這兩種控制算法。就包的PCN標 記而言,允入控制標記將被允入控制算法使用,而搶占標記被流搶占算 法使用。上面引用的B.Briscoe等的"Pre-Congestion Notification Marking" 也即文件"draft-briscoe-tsvwg-cl-phb-02.txt"中描述了允入控制標記和搶占 標記至UDSCP的編碼。
ECN和PCN是網(wǎng)絡路由器用來在網(wǎng)絡層進行擁塞控制的網(wǎng)絡層 (OSI模型中的層3)協(xié)議。然而,目前已經(jīng)提出將擁塞信令引入數(shù)據(jù)鏈 路層(OSI模型中的層2),以允許諸如以太網(wǎng)交換機的數(shù)據(jù)鏈路層實體 響應于接收到的擁塞信號來執(zhí)行速率控制。具體來說,近來,提出了一 種被稱為后向擁塞通知(BCN)的技術在數(shù)據(jù)中心網(wǎng)絡中的以太網(wǎng)上使 用。
后向擁塞通知(BCN)是一種用于最初由Davide Bergasamo在Cisco 系統(tǒng)中開發(fā)的數(shù)據(jù)中心網(wǎng)絡(DCN)的機制,并且目前正由IEEE 802.1/802.3標準委員會考察。BCN允許來自擁塞點(達到幾跳遠)的擁 塞反饋(僅在層2),和入口處的速率控制。在JinJing Jiang, Raj Jain和 Manoj Wadekar向2006年11月12-15日于CA, Santa Barbara(圣巴巴拉) 召開的關于網(wǎng)絡協(xié)議的第14次國際IEEE會議(ICNP 2006)遞交的 "Analysis of Backward Congestion(BCN) for Ethernet in Datacenter Applications"(可以在http:〃www.cse.ohio-state.edu/~jain/ papers/bcn.htm 處獲得)中以及2005年5月12日于德國柏林主持的IEEE 802.1臨時會議由 Bergamasco 給出的原始 IEEE 陳述(可以在 http:〃www.ieee802.org/l/files/public/docs2005/new-bergamasco-backward-c ongestion-notification-0505.pdf處獲得)中描述了 BCN。下面給出BCN的
操作的簡要綜述。
BCN消息使用IEEE 802.1Q標簽格式,圖2中示出了 BCN消息中 的關鍵字段。
BCN消息30包括以下字段。BCN消息的DA (宿地址)31表明了 采樣幀的SA (源地址)。BCN消息的SA (源地址)34表明了擁塞點的 MAC地址。CPID35是擁塞點標識符。字段ei33給出了與返回到源的緩 沖器有關的信息。例如,根據(jù)圖l,交換機4可以向交換機1 (SA,采樣 幀的源地址)發(fā)回BCN消息,向(采樣幀經(jīng)過的)交換機4表明入口處 的擁塞水平。字段32被用來指示標簽消息的類型,即它是BCN消息。 字段C 36被用來信號通知擁塞鏈路的容量。
BCN消息中的字段"ei"33給出了與生成該BCN消息的以太網(wǎng)交換機 的存儲器緩沖器的狀況有關的信息。其值由瞬時隊列偏移的加權求和與 上一采樣間隔上的隊列變化組成,如下式1所示
& = q。ff(t) — Wqdelta(t) = (Qeq-q(t)) — W(qa-qd) 式1
其中W是權重;q。fi(t)是如式2定義的瞬時隊列偏移
q。e(t) = q(t)畫Qeq 式2
并且qdeto(t)是上一采樣間隔上的隊列變化,并且被定義為己到達的
包數(shù)qa和上一采樣時間后被服務的包數(shù)qd的差。這里,q(t)是瞬時的實際
隊列大小,而Qeq是均衡的隊列大小,均衡的隊列大小通常為隊列總大小
的一半。
如果eiX),則表明BCN消息為正(positive)。這意味著很快擁塞的 可能較小。當滿足以下條件之一時,設置ejX):
1. 當隊列長度較短,并且隊列未增加時;或者
2. 即使隊列長度此時較大,但是長度正在減小,并且因此促使源增 加它們的速率
如果eiO,則表明BCN消息為負(negative)。這意味著很快擁塞的
8可能較大。當滿足以下條件之一時,設置ejO:
1. 即使隊列此時較小,但是它正在增加,因此促使源減小它們的速
率;
2. 較大隊列表明鏈路出現(xiàn)擁塞。要求源減小它們的速率 一旦接收到BCN消息,源使用以ei作為參數(shù)的加性增長乘性減少
(AIMD)算法來調(diào)整它的速率。在上面引用的Jiang等的文章中可以獲
得進一步的細節(jié)。
因此,BCN提供了一種用于以太網(wǎng)網(wǎng)絡中的擁塞信令和發(fā)送速率適 應方案,它們可以用來避免較長延遲,并且使層2以太網(wǎng)網(wǎng)絡中的損失 最小。另一方面,已經(jīng)提出PCN通過這樣的方式提供網(wǎng)絡層中的擁塞控 制,即,對包進行PCN標記,然后被用來觸發(fā)允入控制算法以在網(wǎng)絡達 到它的工程設計負載時防止新流的允入,和/或觸發(fā)搶占算法以在路由器 或鏈路故障時"搶占"或終止己有的允入流。然而,至今,如圖1中所示 出,按它們在協(xié)議棧的不同層中那樣運行的這兩種方案意圖是在它們各 自層中獨立運行。在此方面,圖1例示了 BCN可以如何在數(shù)據(jù)鏈路層10 中運行以在上游方向將BCN消息從正在經(jīng)歷擁塞的以太網(wǎng)交換機向后發(fā) 送到源交換機,而PCN可以在網(wǎng)絡層20中獨自運行。
迄今為止還未設想過這兩種機制之間的交互。然而,每種機制都有 效地用來檢測相同的有害現(xiàn)象(即網(wǎng)絡中的擁塞)并對其產(chǎn)生作用。此 外,PCN通過檢測網(wǎng)絡何時達到它的工程設計容量,并響應于該檢測典 型地以允入控制的形式在網(wǎng)絡層采取措施,來嘗試避免擁塞。因此,PCN 中的早期擁塞檢測對實現(xiàn)該目標是有幫助的。然而,網(wǎng)絡層中的IP包必 須使用數(shù)據(jù)鏈路層在鏈路上傳輸,并且擁塞將首先發(fā)生在數(shù)據(jù)鏈路層流 量隊列中。因此,如通過BCN所實現(xiàn)的,通過監(jiān)控數(shù)據(jù)鏈路層流量隊列, 擁塞通??梢赃M行早期檢測。因此,能夠采取數(shù)據(jù)鏈路層中可用的早期 擁塞檢測并將擁塞指示向上傳至網(wǎng)絡層從而可以隨后在網(wǎng)絡層中采取補 救措施,這是有益的。更一般地,也可以從將來自協(xié)議棧較低層的擁塞 信息用在較高層來獲得這些優(yōu)點。
現(xiàn)有技術出于交換的目的,IP包可以被封裝在一個或更多個MPLS標簽中, 以通過MPLS網(wǎng)絡進行傳送。在這種情況下,IP層有效地將MPLS層處 理為它的鏈路層,但是實際中,MPLS將通常落在真實數(shù)據(jù)鏈路層的頂部, 例如PPP。在此方面,如該技術(例如,參見Pearson Education 2003出 版的Tanenbaum,A.S.的Coumputer Networks第四版416頁)中所認可的, MPLS 可以認為是層 2.5 。 鑒于此,在可以從 http:〃www.cs.ucl.ac.uk/staff/B.Briscoe/projects/ipe2eqos/gqs/papers/draft-da vie-ecn-mpls-01.html獲得的B.Davie,B.Briscoe禾n J.Tay的IETF因特網(wǎng)草 案 , Explicit Congestion Marking in MPLS , 即文件 "draft-davie-ecn-mpls-01.txt"中,描述了在MPLS標簽頭部中可以如何執(zhí) 行ECN標記。具體來說,它描述了當包穿過MPLS網(wǎng)絡時,如果經(jīng)歷了 擁塞,則可以對MPLS標簽進行擁塞標記。當上一 MPLS標簽已經(jīng)從 MPLS標簽棧中彈出以揭示IP包頭部(通常在MPLS網(wǎng)絡的出口處)時, 將MPLS標簽中的任何擁塞標記拷貝到IP頭部中的DSCP內(nèi)。因此,用 這種方案,從低于網(wǎng)絡層的層(MPLS層)獲得擁塞信息,并且該擁塞信 息用于在網(wǎng)絡層內(nèi)作擁塞標記。然而,如所討論的那樣,MPLS不是真實 的數(shù)據(jù)鏈路層協(xié)議,而是關注提供更簡單的交換,并且需要下面的另一 數(shù)據(jù)鏈路層協(xié)議來執(zhí)行交換機之間的實際數(shù)據(jù)傳輸。因此,將從MPLS 導出的擁塞信息傳至IP內(nèi)并未提供和可以通過查看鏈路層流量隊列從實 際鏈路層內(nèi)獲得的擁塞信息而獲得的相同的早期擁塞檢測。
現(xiàn)在參照現(xiàn)有專利文獻,美國申請US 2006/104298 ("McAlpine等") 涉及擁塞控制,并且涉及基于節(jié)點間通信路徑中的流量擁塞來控制節(jié)點 間數(shù)據(jù)傳輸速率。具體來說,它公開了這樣的源節(jié)點,所述源節(jié)點接收 要從該源節(jié)點發(fā)送到宿節(jié)點的相關數(shù)據(jù)幀,并且將這些幀置于隊列中。 該隊列與這樣的通信路徑相關聯(lián),即,所述相關幀要在所述通信路徑上 被發(fā)送到宿節(jié)點。將該源節(jié)點連接到該通信路徑的接口接收一指向該源 節(jié)點的關于通信路徑中有流量擁塞的指示。響應于此,該源節(jié)點控制所 述相關數(shù)據(jù)幀從該隊列傳送到所述接口可訪問的傳輸緩沖區(qū)的速率,以 便緩解通信路徑中的流量擁塞。除此之外,美國專利US 6,426,944 ("Moore")涉及一種用于在快速 包網(wǎng)絡上控制數(shù)據(jù)消息的方法和裝置。具體來說,它公開了高速包網(wǎng)絡 可以如何使用前向和/或后向顯式擁塞通知消息(FECN和BECN)更高 效地控制流經(jīng)網(wǎng)絡的數(shù)據(jù)流,以調(diào)節(jié)(throttle)網(wǎng)絡元件之間的數(shù)據(jù)傳 輸。該網(wǎng)絡包括由接收協(xié)議棧構成用于發(fā)起數(shù)據(jù)流控制的路由器、控制 器和操作系統(tǒng)。路由器控制器被編程為響應于從快速包網(wǎng)絡(例如幀中 繼網(wǎng)絡或小區(qū)中繼網(wǎng)絡)接收到擁塞消息(BECN),生成穿透包消息 (pass-through packet message),該消息請求打開層N和層N+2之間的虛 數(shù)據(jù)流控制信道,其中層N可以為幀中繼協(xié)議的層2,而層N+2可以為 TCP協(xié)議的層4。層4可以拒絕打開該信道,但是一旦信道被打開,就可 以在快速包網(wǎng)絡中感測到擁塞時,在宿智能終端之間發(fā)起數(shù)據(jù)流控制。 路由器控制器還被編程為打開到數(shù)據(jù)源的路徑,并且向數(shù)據(jù)源發(fā)信號, 通知應當調(diào)整數(shù)據(jù)呈遞速率。

發(fā)明內(nèi)容
考慮到上面的問題,本發(fā)明的實施方式提供了這樣的方法和系統(tǒng), 其中,從協(xié)議棧中的較低層獲得擁塞信息,并用于在較高層中進行擁塞 標記。具體來說,本發(fā)明第一方面的方法和系統(tǒng)提供了較低層中的擁塞 信息,所述擁塞信息在擁塞節(jié)點的下游生成,并且被向上游反饋到源節(jié) 點。然后,源節(jié)點將所述擁塞信息或從其中導出的信息向上傳遞到負責 協(xié)議棧中較高層的對應網(wǎng)絡元件,隨后可以在該對應網(wǎng)絡元件中至少根 據(jù)接收到的較低層擁塞信息來執(zhí)行較高層的擁塞標記。因此,來自較低 層的擁塞信息可以被用在較高層擁塞控制功能中,所述擁塞信息通???以在發(fā)生顯著擁塞之前較早地生成。
另一方面,本發(fā)明實施方式的方法和系統(tǒng)提供了來自數(shù)據(jù)鏈路層要 被傳遞到網(wǎng)絡層的擁塞信息,并且提供了根據(jù)數(shù)據(jù)鏈路層擁塞信息對網(wǎng) 絡層中的包進行擁塞標記。優(yōu)選地,所述數(shù)據(jù)鏈路層擁塞信息是根據(jù)至 少在一個數(shù)據(jù)鏈路層節(jié)點處維持的虛擬隊列的一個或更多個屬性而生成 的。通過查看數(shù)據(jù)鏈路層虛擬隊列,可以獲得潛在擁塞的早期檢測,然后,網(wǎng)絡層可以使用它來進行諸如預擁塞標記的擁塞標記,以觸發(fā)控制 算法來試圖避免任何擁塞發(fā)生。在其他實施方式中,并不使用虛擬隊列, 而是可以根據(jù)至少一個數(shù)據(jù)鏈路層節(jié)點處維持的真實流量隊列的水平來 生成數(shù)據(jù)鏈路層擁塞信息。
考慮上面的問題,本發(fā)明公開了一種用于確定數(shù)據(jù)網(wǎng)絡中的擁塞信 息的方法,所述方法包括以下步驟在具有關于數(shù)據(jù)流的協(xié)議棧中較低 層的上游元件處,接收與在所述流的下游元件處發(fā)生的數(shù)據(jù)流量擁塞有 關的較低層擁塞信息,所述下游元件位于同一層內(nèi);以及將所述較低層 擁塞信息的至少一部分,或從其中導出的進一步信息提供給所述協(xié)議棧 中較高層處的元件。因此,可以對較低層網(wǎng)絡元件進行改動以允許發(fā)送 較低層擁塞信息,該擁塞信息向較高層提供了對擁塞的早期警告。
可選地,所述方法可以還包括以下步驟響應于所述較低層擁塞信 息來修改所述數(shù)據(jù)流。這允許在較低層執(zhí)行速率修改和在較高層進行擁 塞控制,以提供兩種機制來對抗擁塞。
本發(fā)明的一個方面提供了一種確定數(shù)據(jù)網(wǎng)絡中擁塞信息的方法,所 述方法包括以下步驟在具有協(xié)議棧中較高層的上游元件處,從所述棧 中較低層處的網(wǎng)絡元件接收較低層擁塞信息,所述擁塞信息與在流的下 游元件處發(fā)生的數(shù)據(jù)流量擁塞有關,所述下游元件位于所述較低層內(nèi); 根據(jù)所述較低層擁塞信息,確定要在所述較高層中使用的較高層擁塞信 息;以及將所述較高層擁塞信息應用于所述較高層中的數(shù)據(jù)流量。因此, 較高層擁塞控制方案可以并入來自較低層的信息,因此,能夠早于其他 情況來執(zhí)行擁塞控制。
在優(yōu)選實施方式中,所述較低層為數(shù)據(jù)鏈路層,所述較高層為網(wǎng)絡層。
另一方面,本發(fā)明還提供了一種用于數(shù)據(jù)網(wǎng)絡中的擁塞標記的方法, 所述方法包括以下步驟在數(shù)據(jù)鏈路層網(wǎng)絡元件處,確定與在所述網(wǎng)絡 中一個或更多個數(shù)據(jù)鏈路層鏈路內(nèi)發(fā)生的擁塞有關的數(shù)據(jù)鏈路層擁塞信 息;以及將所述數(shù)據(jù)鏈路層擁塞信息傳遞到網(wǎng)絡層網(wǎng)絡元件。因此,可 以將數(shù)據(jù)鏈路層特有的擁塞信息傳至網(wǎng)絡層,然后,可以使用該擁塞信
12息來進行早期擁塞控制。
因此,本發(fā)明還類似地提供了一種在數(shù)據(jù)網(wǎng)絡中進行擁塞標記的方 法,所述方法包括以下步驟在網(wǎng)絡層網(wǎng)絡元件處,接收與在所述網(wǎng)絡 中一個或更多個數(shù)據(jù)鏈路層鏈路內(nèi)發(fā)生的擁塞有關的數(shù)據(jù)鏈路層擁塞信 息;根據(jù)所接收到的數(shù)據(jù)鏈路層擁塞信息,確定網(wǎng)絡層擁塞信息;以及 將所述確定的擁塞信息應用于所述網(wǎng)絡層中的一個或更多個數(shù)據(jù)包。然 后,網(wǎng)絡層可以使用來自數(shù)據(jù)鏈路層的該信息比其他情況更早地執(zhí)行擁 塞控制。
優(yōu)選地,根據(jù)所述下游數(shù)據(jù)鏈路層網(wǎng)絡元件處維持的虛擬隊列的大 小來確定所述數(shù)據(jù)鏈路層擁塞信息。然而,在其他實施方式中,所述數(shù) 據(jù)鏈路層擁塞信息代表了下游數(shù)據(jù)鏈路層網(wǎng)絡元件處實際數(shù)據(jù)鏈路層流 量隊列中排隊數(shù)據(jù)的水平。因此,可以盡可能早地檢測到大隊列形式的 擁塞。
在優(yōu)選實施方式中,所述數(shù)據(jù)鏈路層擁塞信息是BCN信息的形式, 而所述網(wǎng)絡層擁塞信息是PCN標記的形式。這些特征使本發(fā)明對于基于 以太網(wǎng)的IP網(wǎng)絡特別有吸引力。
在使用PCN的情況下,如果數(shù)據(jù)鏈路層擁塞信息表明了第一預定閾 值和更高的第二預定閾值之間的擁塞,并且搶占標記在所述第二預定閾 值之上,則PCN標記優(yōu)選地為允入標記。因此,是調(diào)用PCN的允入控 制算法還是流搶占控制算法將取決于數(shù)據(jù)鏈路層中的擁塞量。
在優(yōu)選實施方式中,根據(jù)針對網(wǎng)絡層元件中虛擬隊列大小的概率函 數(shù)來確定所述網(wǎng)絡層擁塞信息,其中,根據(jù)所述數(shù)據(jù)鏈路層擁塞信息來 修改所述概率函數(shù)。標記概率函數(shù)的修改使得能夠相對直接地將數(shù)據(jù)鏈 路層擁塞信息翻譯成網(wǎng)絡層擁塞信息。
另選的是,根據(jù)所述數(shù)據(jù)鏈路層擁塞信息來確定所述網(wǎng)絡層擁塞信 息,這樣,在所述網(wǎng)絡層中對和所述數(shù)據(jù)鏈路層中基本相同量的有效載 荷數(shù)據(jù)進行了擁塞標記。該特征使得網(wǎng)絡層通過按照數(shù)據(jù)鏈路層經(jīng)歷的 擁塞對網(wǎng)絡層中更多或更少的數(shù)據(jù)進行擁塞標記,使網(wǎng)絡層不會對數(shù)據(jù) 鏈路層中經(jīng)歷的擁塞反應過度(overreact)或反應不足(under-react)。
13本發(fā)明還提供了協(xié)議棧中較低層內(nèi)用于確定數(shù)據(jù)網(wǎng)絡中的擁塞信息 的網(wǎng)絡元件,所述網(wǎng)絡元件包括第一接口,在所述第一接口處接收與 在流中另一下游元件處發(fā)生的數(shù)據(jù)流量擁塞有關的較低層擁塞信息,所 述下游元件位于同一層內(nèi);以及第二接口,所述第二接口適于將所述較 低層擁塞信息的至少一部分或從其中導出的進一步信息轉發(fā)到所述協(xié)議 棧中較高層處的元件。
可選地,所述網(wǎng)絡元件還可以包括流修改器,所述流修改器被設置 為響應于所述較低層擁塞信息來修改所述數(shù)據(jù)流。
另外,本發(fā)明提供了協(xié)議棧中較高層處用于確定數(shù)據(jù)網(wǎng)絡中的擁塞 信息的網(wǎng)絡元件,所述網(wǎng)絡元件包括用于從所述棧中較低層處的網(wǎng)絡 元件接收較低層擁塞信息的接口,所述擁塞信息與在流中下游元件處發(fā) 生的數(shù)據(jù)流量擁塞有關,所述下游元件位于所述較低層內(nèi);以及控制元 件,所述控制元件被設置用來i)根據(jù)所述較低層擁塞信息,確定要在 所述較高層使用的較高層擁塞信息;以及ii)將所述較高層擁塞信息應用 于所述較高層中的數(shù)據(jù)流量。
此外,本發(fā)明還提供了一種數(shù)據(jù)鏈路層網(wǎng)絡元件,所述數(shù)據(jù)鏈路層 網(wǎng)絡元件包括擁塞控制器,所述擁塞控制器被設置為確定與所述網(wǎng)絡 中一個或更多個數(shù)據(jù)鏈路層鏈路內(nèi)發(fā)生的擁塞有關的數(shù)據(jù)鏈路層擁塞信 息;以及接口,所述接口用于將所述數(shù)據(jù)鏈路層擁塞信息傳遞到網(wǎng)絡層 網(wǎng)絡元件。
最后,本發(fā)明還提供了一種網(wǎng)絡層網(wǎng)絡元件,所述網(wǎng)絡層網(wǎng)絡元件 包括接口,所述接口用于從數(shù)據(jù)鏈路層元件接收與所述網(wǎng)絡中一個或 更多個數(shù)據(jù)鏈路層鏈路內(nèi)發(fā)生的擁塞有關的擁塞信息;以及控制元件, 所述控制元件被設置用來i)根據(jù)所接收到的數(shù)據(jù)鏈路層擁塞信息,確 定網(wǎng)絡層擁塞信息;以及ii)將所述確定的擁塞信息應用于所述網(wǎng)絡層中 的一個或更多個數(shù)據(jù)包。


通過以下僅以實施例方式呈現(xiàn)的對實施方式的描述,并通過參照附圖,本發(fā)明的進一步特征和優(yōu)點將變得明了,其中,相同的標號指代相
同部件,并且圖中
圖1是例示在現(xiàn)有技術中可以如何使用BCN標記和PCN標記的圖; 圖2是例示現(xiàn)有技術中所使用的BCN消息的格式的圖3是例示使用現(xiàn)有技術的PCN對IP包進行允入標記的概率函數(shù)
的圖4是例示本發(fā)明第一實施方式中涉及的網(wǎng)絡元件和數(shù)據(jù)流的圖; 圖5是例示本發(fā)明第二實施方式中的網(wǎng)絡元件和數(shù)據(jù)流的框圖; 圖6是例示本發(fā)明實施方式中使用的數(shù)據(jù)鏈路層交換機和網(wǎng)絡層路 由器的框圖7是例示本發(fā)明實施方式中涉及的步驟的流程圖; 圖8是例示本發(fā)明實施方式中的路由器處涉及的步驟的流程圖; 圖9是例示本發(fā)明優(yōu)選實施方式中將BCN信息翻譯成PCN標記所 涉及的步驟的流程圖10是例示本發(fā)明實施方式中對包進行允入標記的概率函數(shù)的圖; 圖11是例示本發(fā)明實施方式中對包進行允入標記的概率函數(shù)的圖; 圖12是例示本發(fā)明實施方式中對包進行允入標記的概率函數(shù)的圖; 圖13是例示本發(fā)明實施方式中對包進行允入標記的概率函數(shù)的圖。
具體實施例方式
現(xiàn)在將參照附圖來描述本發(fā)明的實施方式。
如之前所提到的,圖1根據(jù)網(wǎng)絡層20中設置的多個路由器22和在 路由器22之間形成鏈路的多個交換機12,例示了數(shù)據(jù)鏈路層10中的典 型網(wǎng)絡元件。來自較高層的包通過接入網(wǎng)絡而接入核心網(wǎng)絡,并且被傳 至在網(wǎng)絡的受控負載區(qū)中被表示為路由器1的入口網(wǎng)關。路由器1為接 收到的包確定路由,并將這些包傳遞到它相關聯(lián)的數(shù)據(jù)鏈路層交換機(在 該情況下為交換機l),以傳輸?shù)骄W(wǎng)絡層中的下一跳路由器。網(wǎng)絡層中路 由器1與路由器2之間的下一跳可以包括由數(shù)據(jù)鏈路層10中的交換機1 到4形成的幾條單獨的數(shù)據(jù)鏈路。通常,數(shù)據(jù)鏈路層可以包括以太網(wǎng)等。
15在數(shù)據(jù)鏈路層處,網(wǎng)絡層包被封裝成諸如以太網(wǎng)幀的數(shù)據(jù)鏈路層幀, 以在數(shù)據(jù)鏈路層中逐個交換機地傳輸?shù)街虚g網(wǎng)絡路由器(在該情況下為 路由器2)。如之前所討論的,諸如PCN的擁塞標記可以在網(wǎng)絡層中被采 用,并且用來執(zhí)行允入控制和流搶占。另外,還已知擁塞標記可以在數(shù) 據(jù)鏈路層中例如使用BCN來執(zhí)行,以標識數(shù)據(jù)鏈路層中特定交換機內(nèi)的 擁塞,并控制源節(jié)點修改它的數(shù)據(jù)傳輸速率來解決擁塞。在圖1中,示
例BCN消息14被示出為從與中間路由器(路由器2)相關聯(lián)的交換機4 傳輸回與入口路由器(路由器1)相關聯(lián)的交換機1。然而,如所討論的, 在現(xiàn)有技術中,BCN和PCN機制被有效地分離,它們之間并無結合。因 此,在圖1中,盡管交換機1可以響應于BCN消息來修改它的傳輸速率, 但是在網(wǎng)絡層處未響應于數(shù)據(jù)鏈路層處檢測到的擁塞對包進行附加的 PCN標記。
圖4中示出了本發(fā)明的第一實施方式。在第一實施方式中,通過接 收BCN消息而在數(shù)據(jù)鏈路層交換機處包含的擁塞信息被反饋到該交換機 的相應網(wǎng)絡層路由器,從而在對網(wǎng)絡層中的包進行擁塞通知標記時可以 考慮數(shù)據(jù)鏈路層擁塞信息。圖4例示了用于將數(shù)據(jù)鏈路層擁塞信息反饋 到入口路由器22 (為路由器l)的機制,該機制在網(wǎng)絡層執(zhí)行允入控制。 更具體來說,如所描述的,入口路由器1通過接入網(wǎng)絡(未示出)來接 收要在網(wǎng)絡的受控負載區(qū)上傳輸?shù)臄?shù)據(jù)。如代表數(shù)據(jù)包流的轉發(fā)路徑、 決定了如何路由接收到的包的箭頭46所示,包從網(wǎng)絡層傳遞到通常為以 太網(wǎng)網(wǎng)絡等的數(shù)據(jù)鏈路層,其中交換機1隨后開始將跨越多個單獨數(shù)據(jù) 鏈路的包流朝向下一中間路由器2發(fā)送的處理。更具體來說,在本實施 例中,路由器1通過交換機1與交換機2之間、交換機2與交換機3之 間以及交換機3與交換機4之間的三個數(shù)據(jù)鏈路層跳而連接到路由器2。 在與中間路由器2相關聯(lián)的交換機4處,IP包從數(shù)據(jù)鏈路層幀解封裝, 并被傳遞到路由器2,從而向前路由。
現(xiàn)在考慮在運行諸如BCN的擁塞標記機制的交換機4處(與交換機 1、 2和3—同)在數(shù)據(jù)鏈路層中經(jīng)歷了擁塞。然后,交換機4以之前針 對圖2描述的格式來生成BCN消息,并且以交換機1的地址作為宿地址。字段34中的源地址被給出為擁塞點(為交換機4)的MAC地址。交換 機4中的BCN機制計算被放入BCN消息的字段33中的擁塞信息值e;。 本實施方式中的擁塞信息值可以如之前針對現(xiàn)有技術BCN機制描述的那 樣來計算,或者另選地可以根據(jù)將在之后描述的交換機4處保持的虛擬 隊列來計算。交換機4的容量還放入字段36中。然后,BCN消息在包流 的上游向后傳輸?shù)浇粨Q機3,然后到交換機2,最后到交換機l,交換機 1為消息的宿地址所指示的交換機。在本發(fā)明的實施方式中,交換機1隨 后將在BCN消息中接收到的擁塞信息以擁塞反饋消息44的形式轉發(fā)到 它相關聯(lián)的網(wǎng)絡路由器22 (在該情況下為路由器l)。在圖4中,BCN消 息被示出為逐個交換機傳遞的消息42。
本發(fā)明的實施方式并不限于將擁塞信息從數(shù)據(jù)鏈路層傳遞到網(wǎng)絡層 中的入口路由器,而是可以將這種反饋進一步在網(wǎng)絡中的中間路由器之 間執(zhí)行。這在本發(fā)明的另一實施方式(在圖5中例示)中示出。這里, 中間路由器22 (路由器l)將數(shù)據(jù)流46轉發(fā)到網(wǎng)絡層中的路由器3。網(wǎng) 絡層中的所有路由器都以已知的常規(guī)方式進行諸如PCN標記的擁塞標 記。在數(shù)據(jù)鏈路層處,包流46被封裝成數(shù)據(jù)鏈路層幀,并通過標號12 所示的數(shù)據(jù)鏈路層交換機1、 2和3,在路由器2與路由器3之間傳輸。 數(shù)據(jù)流用箭頭46表示。在這種情況下,如果數(shù)據(jù)鏈路層中在交換機3處 經(jīng)歷了擁塞,則以之前描述或要在后面描述的方式來闡明BCN消息,并 且在相對于流的上游向后將BCN消息發(fā)送到與中間路由器2相關聯(lián)的交 換機1。此外,將由此從數(shù)據(jù)鏈路層獲得的擁塞信息以從交換機1傳遞到 中間路由器2的擁塞信息44的形式向上反饋到網(wǎng)絡層。
此外,在本發(fā)明進一步的實施方式中,數(shù)據(jù)鏈路層中的擁塞信息可 以來自這樣的交換機,該交換機不位于與層3路由器相同的節(jié)點處,而 是路由器節(jié)點之間的中間交換機(例如圖4中的交換機2或交換機3)。
在第一和第二實施方式中,針對數(shù)據(jù)鏈路層應該注意,根據(jù)通常的 BCN機制, 一般而言數(shù)據(jù)鏈路層中的BCN機制不是通過修改它的發(fā)送速 率來對接收到BCN擁塞信息起作用。其中的原因是,在本發(fā)明優(yōu)選實施 方式中,用來對抗網(wǎng)絡中擁塞的主要機制是層3 PCN機制。因此,在數(shù)據(jù)鏈路層中,本發(fā)明實施方式需要的功能是將BCN擁塞信息向上傳遞到 網(wǎng)絡層中相關聯(lián)的路由器。在網(wǎng)絡層中,路由器接收反饋的BCN信息, 然后利用BCN擁塞信息來確定擁塞標記,具體為在網(wǎng)絡層中針對IP包 的PCN標記。后面將給出關于如何使用通過BCN從數(shù)據(jù)鏈路層獲得的 擁塞信息來執(zhí)行網(wǎng)絡層中的擁塞標記,具體來說,如何執(zhí)行PCN標記的 進一步信息。
然而,在其他實施方式中,BCN擁塞信息除了在網(wǎng)絡層中還可以在 數(shù)據(jù)鏈路層中起作用。在這種情況下,數(shù)據(jù)鏈路層網(wǎng)絡元件將通過以之 前針對常規(guī)BCN機制所描述的方式修改它的發(fā)送速率,來響應BCN擁 塞信息。在這種情況下,網(wǎng)絡層還附加地執(zhí)行PCN擁塞控制機制,由此 為整個網(wǎng)絡提供了兩種同時進行的擁塞控制機制, 一種在層2中,另一 種在層3中。
圖6是例示了數(shù)據(jù)鏈路層交換機和網(wǎng)絡層路由器內(nèi)根據(jù)優(yōu)選實施方 式操作的元件的框圖。更具體來說,首先尋址數(shù)據(jù)鏈路層交換機12,數(shù) 據(jù)鏈路層交換機12(可以是以太網(wǎng)交換機等)包括數(shù)據(jù)鏈路層控制器122, 以及后向擁塞通知(BCN)控制器元件124。數(shù)據(jù)鏈路層控制器122控制 數(shù)據(jù)鏈路層交換機12來執(zhí)行它常規(guī)的數(shù)據(jù)鏈路層功能,通常是在點到點 鏈路(例如PPP中)上或者在廣播鏈路(例如以太網(wǎng)中)上傳輸數(shù)據(jù), 并確保它到達尋址的站。在數(shù)據(jù)鏈路層中,數(shù)據(jù)通常是以幀(如以太網(wǎng) 幀)的形式傳輸?shù)摹<m錯和確認通常被用作數(shù)據(jù)鏈路層的一部分。如所 示出的,數(shù)據(jù)鏈路層控制器46接收要從網(wǎng)絡路由器22發(fā)送的數(shù)據(jù),并 將該數(shù)據(jù)列入數(shù)據(jù)鏈路層隊列中(未示出),然后在適當線路上將其發(fā)送 到下一跳交換機。根據(jù)現(xiàn)有技術的BCN機制,數(shù)據(jù)鏈路層交換機12還 接收向后傳遞到擁塞通知控制器元件124的BCN消息42。在優(yōu)選實施方 式中,后向擁塞通知元件124不會以之前描述的方式作出響應來控制發(fā) 送速率,而只是將BCN擁塞信息傳遞到PCN接口 126。
然而,在其他實施方式中,數(shù)據(jù)鏈路層交換機12可以在控制器122 的控制下執(zhí)行它的數(shù)據(jù)鏈路層功能,并且還參加之前討論的由BCN控制 器元件124控制的BCN機制。是否執(zhí)行BCN速率修改,本發(fā)明的實施方式提供了以BCN數(shù)據(jù)62 的形式將BCN擁塞信息轉發(fā)到網(wǎng)絡路由器22的附加PCN接口 126。轉 發(fā)的擁塞信息可以是整個接收到的BCN消息,或者可以是BCN消息內(nèi) 包含的擁塞值ei。當然,也可以轉發(fā)其他元素。因此,本發(fā)明實施方式中 PCN接口 126的提供使這些實施方式有別于常規(guī)數(shù)據(jù)鏈路層交換機12, 因為這提供了將數(shù)據(jù)鏈路層擁塞信息向上轉發(fā)到網(wǎng)絡層的元件。
現(xiàn)在轉至網(wǎng)絡路由器22,它包括網(wǎng)絡層控制器222,所述網(wǎng)絡層控 制器222控制網(wǎng)絡路由器來執(zhí)行它的常規(guī)網(wǎng)絡層功能(通常為路由和QoS 控制)。還設置有預擁塞通知元件224,所述預擁塞通知元件224與網(wǎng)絡 層控制器222交互以執(zhí)行常規(guī)的預擁塞通知控制功能,例如預擁塞通知 標記,并且,在入口和出口路由器的情況下, 一旦接收到響應于該預擁 塞標記而生成的PCN標記或消息就采取動作,以執(zhí)行允入控制或流搶占。 然而,根據(jù)優(yōu)選實施方式,網(wǎng)絡路由器22還設置有BCN接口 228,所述 BCN接口 228從數(shù)據(jù)鏈路層接收包含擁塞信息的BCN數(shù)據(jù)62,將其轉 發(fā)至BCN到PCN翻譯器226。 BCN到PCN翻譯器226用于將接收到的 數(shù)據(jù)鏈路層擁塞信息翻譯到PCN語境,并根據(jù)接收到的數(shù)據(jù)鏈路層擁塞 信息來決定應當如何將PCN標記應用于網(wǎng)絡層中的IP包。后面將給出關 于如何執(zhí)行該翻譯的進一步信息。同時,在將數(shù)據(jù)鏈路層擁塞信息翻譯 到PCN語境并決定了要應用的合適PCN標記后,向預擁塞通知元件224 傳遞一控制信號,指示響應于接收到的數(shù)據(jù)鏈路層擁塞信息應該進行的 PCN標記。然后,擁塞通知信息224根據(jù)接收到的控制信號而采取行動, 從而相應地對包進行標記。
圖7和8分別例示了在轉發(fā)數(shù)據(jù)鏈路層擁塞通知信息并隨后將其翻 譯成PCN標記的過程中由數(shù)據(jù)鏈路層交換機12和網(wǎng)絡路由器22執(zhí)行的 步驟,更具體來說,圖7例示數(shù)據(jù)鏈路層交換機12執(zhí)行的步驟。首先, 假設數(shù)據(jù)鏈路層交換機12已經(jīng)通過一系列數(shù)據(jù)鏈路層交換機將數(shù)據(jù)流在 它的向外數(shù)據(jù)鏈路上向上轉發(fā)給了下一跳路由器。在一個下游交換機處 經(jīng)歷了擁塞,后面將更詳細地討論生成和傳輸?shù)腂CN消息。在步驟7.2 處,數(shù)據(jù)鏈路層交換機12接收BCN消息,并假設BCN消息中示出的宿
19地址對應于所議論的數(shù)據(jù)鏈路層交換機12的地址,在步驟7.4處,后向
擁塞通知控制器元件124解析接收到的BCN消息,以確定擁塞信息值ei。 然后,后向擁塞通知控制器元件可以根據(jù)常規(guī)所知的加性增長乘性減少 算法來進行BCN速率修改。然后,到此為止,數(shù)據(jù)鏈路層交換機12的 操作都是常規(guī)的。
但是,根據(jù)一些實施方式,由BCN消息實現(xiàn)的擁塞信息要向上轉發(fā) 至與交換機相關聯(lián)的網(wǎng)絡層路由器,因此要實現(xiàn)這個目的,要在步驟7.6 處將BCN消息轉發(fā)到PCN接口 126。在PCN接口處,根據(jù)要向上傳遞 到網(wǎng)絡層的是什么信息,只有BCN擁塞信息ei要作為BCN數(shù)據(jù)62被傳 輸,PCN接口才可以提取該BCN擁塞信息。然而,在其他實施方式中, 可以僅把整個消息作為BCN數(shù)據(jù)進行轉發(fā)。因此,無論BCN數(shù)據(jù)采用 什么格式(即擁塞消息ei或整個BCN消息),在步驟7.10處,BCN數(shù)據(jù) 都被轉發(fā)至網(wǎng)絡層。在本發(fā)明的某些實施方式中,數(shù)據(jù)鏈路層交換機12 隨后未采取常規(guī)動作以外的進一步附加動作。
圖8例示了一旦接收到從數(shù)據(jù)鏈路層轉發(fā)來的BCN數(shù)據(jù),網(wǎng)絡路由 器22處所涉及的步驟。具體來說,在步驟8.2處,在BCN接口 228處接 收BCN數(shù)據(jù)62。如果未被PCN接口 126執(zhí)行,則BCN接口 228是可選 的,如果需要的話,從BCN消息中剝離擁塞信息e,。如果已經(jīng)接收到完 整的BCN消息,但是僅需要擁塞信息ei,則可以執(zhí)行該步驟。然而,這 是可選步驟,BCN接口 228也可以根據(jù)具體部署,只將接收到的BCN數(shù) 據(jù)62轉發(fā)至BCN到PCN翻譯器。在BCN到PCN翻譯器226處,BCN 數(shù)據(jù)在步驟8.4處被用來確定將應用于網(wǎng)絡層中的IP包的PCN標記。將 在后面更詳細地描述如何執(zhí)行該確定,并且存在幾種不同的可以使用的 方法。BCN到PCN翻譯器226確定要應用哪些PCN標記,并且將控制 信息傳遞到預擁塞通知元件224。在步驟8.6處,預擁塞通知元件224隨 后響應于該控制信息,利用PCN的常規(guī)標記協(xié)議對包進行PCN標記。 對包作了標記之后,預擁塞通知元件224執(zhí)行可以包括允入控制或流搶 占的常規(guī)PCN控制機制。
因此,取決于從數(shù)據(jù)鏈路層接收到的擁塞信息,將這些實施方式的效果添加到網(wǎng)絡層附加擁塞標記中。此外,在這里描述的實施方式中, 這些擁塞標記優(yōu)選地為PCN標記。在其他實施方式中,可以使用不同類 型的擁塞標記,例如ECN標記。網(wǎng)絡層隨后如何根據(jù)這些附加擁塞標記
作出反應取決于所使用的常規(guī)擁塞控制算法。在PCN標記的情況下,可 以使用PCN采用的常規(guī)允入控制和流搶占。
因此,在到此為止所描述的實施方式中,擁塞信息是從較低層獲得 并被傳至較高層。然后,根據(jù)從較低層接收到的擁塞信息,在較高層執(zhí) 行擁塞標記。盡管也可以設想使用ECN標記,但是擁塞標記優(yōu)選地為PCN 標記。如所描述的,較低層優(yōu)選地為數(shù)據(jù)鏈路層,而較高層優(yōu)選地為網(wǎng) 絡層。在較低層中,擁塞信息已經(jīng)在下游交換機處生成,并在被傳至較 高層之前被向后傳至上游交換機。這些機制允許將可能在數(shù)據(jù)鏈路層發(fā) 生的擁塞的早期檢測傳至網(wǎng)絡層,隨后可以在網(wǎng)絡層中采取措施來避免 網(wǎng)絡的擁塞。這些措施可以包括允入控制的PCN功能,如果需要的話, 可以包括流搶占。
關于如何將從較低層接收到的擁塞信息翻譯成較高層中使用的擁塞 信息,有這么幾種機制。幾種可能的機制包括
1. 在較高層中接收到的每個單獨BCN消息被翻譯成單個IP包中的 PCN標記。然而,這種機制過于直接,并未考慮網(wǎng)絡層中使用的IP包的 相對大小,和數(shù)據(jù)鏈路層中使用的典型數(shù)據(jù)幀大小。具體來說,IP包可 以是數(shù)據(jù)幀大小的幾倍。因此,如果針對每個數(shù)據(jù)幀生成單個BCN消息, 而該BCN消息又必須翻譯成對應IP包上的標記,則由于IP包的大小相 對于數(shù)據(jù)幀(例如以太網(wǎng)幀)大得多,所以根據(jù)IP包中攜帶的有效載荷 來衡量,將對多得多的數(shù)據(jù)進行擁塞標記,于是在數(shù)據(jù)鏈路層中實際遭 受了擁塞。
2. 為了克服上面的問題,N個BCN消息可以被翻譯成M個PCN 標記。因此,例如,對于接收到的每三個BCN消息,可以對一個IP包 進行PCN標記。這里,假設平均數(shù)據(jù)幀和包大小以便能夠確定應該將多 少BCN消息翻譯成單個PCN標記的比率可能是有用的。另選的是,可 以假設最大幀和包大小。在這種情況下,以以太網(wǎng)和IP為例,以太網(wǎng)幀的最大有效載荷高達1,500字節(jié),而IP數(shù)據(jù)報的最大長度為65,535字節(jié)。 假設包的最大大小,并假設每個數(shù)據(jù)幀的BCN消息,則約40個BCN消 息將被翻譯成單個PCN標記。然而,通常來講,IP數(shù)據(jù)報比最大允許大 小小得多,以避免在諸如以太網(wǎng)的數(shù)據(jù)鏈路層上傳輸時斷裂 (fragmentation)。因此,通常來說,根據(jù)部署,可以使用區(qū)間在3到15 的低得多的比率。在另一實施方式中,替代保持接收到的BCN消息數(shù)量 的絕對計數(shù)然后一旦達到閾值就進行PCN標記,可以根據(jù)比率用概率對 IP包進行PCN標記,g卩,如果比率為3比1,則對于接收到的每個BCN 消息,用概率33n/。對IP包進行PCN標記。在進一步實施方式中,當BCN 消息到達時,如果該消息告知了在下游交換機處導致?lián)砣膶? (數(shù)據(jù)鏈 路層)幀的大小,則可以將該大小添加到計數(shù)器。然后,當計數(shù)器大于 網(wǎng)絡層包大小時,對網(wǎng)絡層包進行標記,并且將計數(shù)器減小作了標記的 包的大小。在所有上面的機制中,目標之一是嘗試并使網(wǎng)絡層中被標記 為擁塞的有效載荷數(shù)據(jù)量與數(shù)據(jù)鏈路層中實際遭受的擁塞相同。
3. 第三選擇是用取決于目前接收到的BCN消息中接收到的擁塞值 A的概率對路由器中的目前IP包進行PCN標記。
4. 另一個選擇是使對目前IP包進行標記的概率取決于最近的BCN 消息中的擁塞值ej,且值ei進行了平滑的平均。
5. 另外,可能需要對PCN標記是允入標記還是搶占標記做出決定。 通常,在上面提到的方法中,因為搶占標記一般用在網(wǎng)絡經(jīng)受嚴重路由 器或鏈路故障時,所以PCN標記為允入標記,而不是搶占標記。因此, 進一步的技術是根據(jù)目前或最近的BCN消息中接收到的擁塞值ei,對目 前的IP包進行允入標記或搶占標記。例如,如果接收到的擁塞值ei非常 高,則應用于目前包的PCN標記可以是搶占標記,而不是允入標記。該 技術中所固有的是包含有針對擁塞值ei的第一閾值,在該閾值之上使用 了搶占標記,而在該閾值之下使用允入控制標記。另外,還可能針對擁 塞值ei設置第二、更低的閾值,在該閾值之下不進行任何PCN標記。
6. 除了包含擁塞值e;的消息之外,BCN還提供了"停止"消息的發(fā)送。 如果在數(shù)據(jù)鏈路層交換機12處接收到了 BCN停止消息,則可以在網(wǎng)絡
22層解釋該BCN停止消息,從而將搶占標記應用于IP包。因此,只要接
收到了 BCN停止消息,就對目前的IP包進行搶占標記。
7. 另外,優(yōu)選地對經(jīng)過數(shù)據(jù)鏈路層中特定的擁塞交換機的包進行 PCN標記。在此方面,網(wǎng)絡路由器可以連接到幾個數(shù)據(jù)鏈路層接口。為 了對此加以考慮,PCN層可以被進一步設置為注意幀是在哪個數(shù)據(jù)鏈路 層接口上發(fā)送的,哪個數(shù)據(jù)鏈路層接口導致在該接口上接收BCN消息。 然后,PCN對在該特定以太網(wǎng)接口上流出的下一IP包進行標記。該技術 有助于定位在特定的擁塞數(shù)據(jù)鏈路層鏈路上傳送的流。
8. 另一種技術是根據(jù)目前接收到的BCN消息中接收到的擁塞值ei 和網(wǎng)絡路由器中維持的虛擬隊列的長度,來設置對目前IP包進行標記的 概率。下面參照圖9和圖10到13進一步討論該方法。
更具體來說,根據(jù)該特定技術,BCN到PCN傳輸器(transmitter) 226維持概率函數(shù),該概率函數(shù)定義了特定IP包被PCN標記(通常為允 入標記)的概率。之前針對圖3討論了該概率函數(shù),該概率函數(shù)例示了 概率根據(jù)網(wǎng)絡路由器中虛擬隊列的大小,在最小標記閾值和最大標記閾 值0和1之間線性增加。為了增大或減小特定IP包被允入標記的概率, 要根據(jù)擁塞值ei來改變概率函數(shù)。
更具體來說,在步驟9.2處,如果存在還未被提取的擁塞值ei,則 BCN到PCN翻譯器226在BCN接口 228處接收的BCN數(shù)據(jù)62中提取 該擁塞值ei。然后,在步驟9.4處,如果擁塞值ei大于O,則對PCN標記 的概率函數(shù)進行修改,以便減小IP包被標記的概率。例如,在圖12和 13中示出這種修改可以如何發(fā)生。具體來說,圖12示出了一種修改概率 函數(shù)的具體方式。這里,對概率函數(shù)55進行修改,從而使概率曲線垂直 向下移動。向下移動的程度取決于ei的值。具體來說,對于大于0的ei 的特定范圍的值,概率函數(shù)下移特定量,而如果e,遠大于0,則向下移動 更大的量。概率曲線的下移度與ei值之間的關系可以是線性的、指數(shù)的 或者受任意連續(xù)或離散函數(shù)控制。然而,優(yōu)選地,A的值越大,IP包被 標記的概率越小。
圖13例示了通過向右移動概率曲線來減小概率的另選機制,移動量同樣取決于ei的值,針對更大值有更大移動。這里,最小標記閾值和最 大標記閾值未被改變,從而得到類似于圖12的概率函數(shù)。在另一實施方 式中,也可以改變閾值本身,從而增大它們的值。因此,當擁塞值函數(shù) 大于0時,通過增大閾值,為了使標記發(fā)生,虛擬隊列必須更大。當然, 也可以采用這些技術的任意組合, 一般標準是當擁塞值ej增大時,對
IP包進行允入標記的概率減小。概率與擁塞值ei之間的關系可以是部署
特有的。
返回圖9,在步驟9.6處,確定如果擁塞值ej小于O,則PCN標記的 概率函數(shù)應該被修改以增大IP包被標記的概率。圖10和11示出了關于 它可以如何實現(xiàn)的兩種機制,通過向上移動概率曲線,如圖10中所示, 或者通過向左移動概率函數(shù),如圖11中所示。應該理解,圖10和11中 的移動分別與圖12和13中示出的相反,因此實現(xiàn)的選擇同樣在這里適 用。更具體來說,對于更小的ei值,概率曲線可以向上移動或者向左移 動更大程度,在ei遠小于O的情況下,概率曲線最大程度地移動。另外, 概率曲線55的移動度和ei之間的關系可以是線性的、指數(shù)的,或者是任 意連續(xù)或離散數(shù)學函數(shù)。然而, 一般要求是ei的值越低,任意IP包被 允入標記的概率越小。
另外,最小標記閾值和最大標記閾值可以被減小,因為為了使標記 發(fā)生需要更小的虛擬隊列,所以這也產(chǎn)生了增大標記概率的效果。
下面給出一個例示了可以如何通過僅示例的方式實現(xiàn)和呈現(xiàn)概率函 數(shù)的具體實施例。
如之前所描述的,e,值從Q。ff和Qd^導出。通常,給出的Q。ff和Qddta 均由16位組成,這意味著ej可以是最大值65535 (十進制)和FFFF (十 六進制)。因此,ej值的范圍從-65535到65535。
這里描述我們可以如何使用ei值來配置實現(xiàn)的實施例。ej值65535 將具有標記概率O,而ei值-65535將具有標記概率1。當^值為0時,我 們可以設置標記概率為0.5。 ei值-32768將產(chǎn)生0.75的標記概率,而& 值32768將產(chǎn)生0.25的標記概率。
舉個例子,可以將系統(tǒng)設置為當ej值為-32768或更小時對包進行搶
24占標記,而當ei值為0或更小時對包進行允入標記。
現(xiàn)在,我們將轉至討論如何在目前描述的本發(fā)明實施方式內(nèi)的上游
交換機中生成BCN消息,并且更具體來說,討論如何導出較低層擁塞信 息。
在本發(fā)明優(yōu)選實施方式的本描述中,我們已經(jīng)描述了如何使用 "BCN"消息將來自下游層2節(jié)點的擁塞信息反饋到上游層2節(jié)點。在此 方面中,我們在目前描述的實施方式中使用了之前描述的802.1Q格式的 消息,因為這種消息格式被廣泛使用,由此使本發(fā)明得到寬泛理解。然 而,具體來說,在描述的實施方式中,我們指定了 BCN類型的802.1Q 標記消息,因為它已經(jīng)包含了擁塞值ei形式的用于傳播擁塞信息的合適 字段。然而,在其他實施方式中,可以使用不同的消息格式。
對于擁塞值ei,在本發(fā)明描述的實施方式中,如接下來所描述的, 可以用各種方式來計算該值。
首先,如之前提到的,可以用與之前針對現(xiàn)有技術BCN機制所描述 的完全相同的方式,應用式1和2之前給出的等式來計算擁塞值ei。然而, 這些等式對從交換機處的實際流量隊列獲得的值起作用,并且具體來說, 使用瞬時流量大小q(t)和實際發(fā)送速率qd。通過査看實際流量隊列的值, 盡管擁塞指示當然可以從這些值獲得,但是該指示傾向于僅在擁塞發(fā)生 時或者發(fā)生后才被獲得,因此,可能太遲而不能防止任何擁塞。因此, 盡管在本發(fā)明的實施方式中,可以利用這些等式并査看實際流量隊列的 值來計算擁塞值ei,但這并不是優(yōu)選的。
因此,更優(yōu)選的技術是利用下游交換機處的"虛擬隊列"來確定是否 將發(fā)生擁塞。如之前所描述的,"虛擬隊列"是對實際隊列大小的仿真, 其中保持了代表虛擬隊列大小的數(shù),該數(shù)按照和包到達實際隊列相同的 速率增大。然而,相對于包從交換機傳輸?shù)膶嶋H速率,該數(shù)以更慢的速 率減小,由此與實際隊列不同。例如,虛擬隊列可以按照某個速率,例 如真實隊列實際發(fā)送速率的80%來減小。這種技術的效果是針對給定的 包到達速率,提供比真實隊列占有率(occupancy)更高水平的虛擬隊列 占有率,并能夠在實際發(fā)生擁塞之前檢測到潛在擁塞。因此,在本發(fā)明的優(yōu)選實施方式中,除了真實隊列之外,層2交換 機還維持虛擬隊列,將減小速率應用于虛擬隊列,該減小速率是交換機 使用的實際發(fā)送速率的小于100%的某個百分比。例如,可以使用實際發(fā) 送速率的80%的減小速率。這等效于將值<1的虛擬隊列發(fā)送速率系數(shù)V
應用于交換機所使用的實際發(fā)送速率。因此,V=0.8將為虛擬隊列提供 80%的發(fā)送速率。當然,作為設計選擇也可以使用其他值。
為了計算鏈路層擁塞值ei,可以使用與之前的式1和2類似的等式, 不使用從真實隊列獲得的值,而使用從維持的虛擬隊列獲得的值。
更具體來說,在本發(fā)明的優(yōu)選實施方式中,擁塞值ej由瞬時虛擬隊 列偏移與上一采樣間隔上虛擬隊列的變化的加權和組成,應用虛擬隊列 的較低減小(發(fā)送)速率,如下式3中所示
6 = q。ff(t) — Wqdelta(t) = (Qeq-qv(t》—W(qa-Vqd) 式3
其中,W是權重;V是虛擬隊列發(fā)送速率系數(shù),且小于l; q。ft(t)是 瞬時隊列偏移,被定義為
q。fl(t) = qv(t)-Qeq 式4
并且qde^是上一采樣間隔上的隊列變化,被定義為到達的包數(shù)^和
被認為是上一采樣事件后從實際隊列提供的包數(shù)Vqd的差。這里,qv(t)
是瞬時虛擬隊列大小,而Qeq是均衡的虛擬隊列大小,Qeq通常為虛擬隊
列最大大小的一半。通常,虛擬隊列的最大大小與真實隊列的最大大小 相同。
通過使用從以慢于實際隊列的速率"清空"的虛擬隊列獲得的值來計
算較低層擁塞信息ei,相對于實際發(fā)生的擁塞,ei的值將指示交換機中更 多的擁塞,然而,更重要的是相對于簡單查看真實隊列,將提供擁塞建 立的早期指示。因此,利用根據(jù)虛擬隊列的屬性計算出的擁塞值,能夠 比其他情況更早地采取預擁塞措施。
是使用虛擬隊列來計算擁塞值(如優(yōu)選實施方式中那樣)還是使用 真實隊列來計算擁塞值(如所提及的那樣),所述值被放入優(yōu)選為之前討 論的BCN類型的802.1Q標記消息中,以發(fā)送到作為擁塞流的源的上游 交換機。總之,本發(fā)明優(yōu)選實施方式因此提供了一種技術,通過該技術,可 以將來自諸如數(shù)據(jù)鏈路層的較低層的擁塞信息并入用于諸如網(wǎng)絡層的較 高層的擁塞機制中。檢測較低層中的擁塞信息可能更方便,并且還可以 較早地檢測擁塞,并在較早的時刻在網(wǎng)絡層中采取措施,來完全防止或 許會發(fā)生的擁塞。
技術人員將會想到使用本發(fā)明基礎概念并落入本發(fā)明的主旨和/或 范圍的進一步修改、變化、配置,以提供進一步的實施方式,所附權利 要求旨在包含任意和所有這些實施方式。
權利要求
1.一種確定數(shù)據(jù)網(wǎng)絡中的擁塞信息的方法,所述方法包括以下步驟在具有協(xié)議棧中較高層的上游元件處,從所述棧中較低層處的網(wǎng)絡元件接收較低層擁塞信息,所述擁塞信息與在流的下游元件處發(fā)生的數(shù)據(jù)流量擁塞有關,所述下游元件位于所述較低層內(nèi);根據(jù)所述較低層擁塞信息,確定要在所述較高層中使用的較高層擁塞信息;以及將所述較高層擁塞信息應用于所述較高層中的數(shù)據(jù)流量。
2. 根據(jù)權利要求1所述的方法,其中,所述較低層是數(shù)據(jù)鏈路層, 而所述較高層是網(wǎng)絡層。
3. —種用于數(shù)據(jù)網(wǎng)絡中的擁塞標記的方法,所述方法包括以下步驟在數(shù)據(jù)鏈路層網(wǎng)絡元件處,確定與在所述網(wǎng)絡中一個或更多個數(shù)據(jù)鏈路層鏈路內(nèi)發(fā)生的擁塞有關的數(shù)據(jù)鏈路層擁塞信息;以及 將所述數(shù)據(jù)鏈路層擁塞信息傳遞到網(wǎng)絡層網(wǎng)絡元件。
4. 一種在數(shù)據(jù)網(wǎng)絡中進行擁塞標記的方法,所述方法包括以下步驟在網(wǎng)絡層網(wǎng)絡元件處,接收與在所述網(wǎng)絡中一個或更多個數(shù)據(jù)鏈路層鏈路內(nèi)發(fā)生的擁塞有關的數(shù)據(jù)鏈路層擁塞信息;根據(jù)所接收到的數(shù)據(jù)鏈路層擁塞信息,確定網(wǎng)絡層擁塞信息;以及 將所確定的擁塞信息應用于網(wǎng)絡層中的一個或更多個數(shù)據(jù)包。
5. 根據(jù)權利要求2到4中任意一項所述的方法,其中,根據(jù)下游數(shù) 據(jù)鏈路層網(wǎng)絡元件處維持的虛擬隊列的一個或更多個屬性,來計算所述 數(shù)據(jù)鏈路層擁塞信息。
6. 根據(jù)權利要求2到5中任意一項所述的方法,其中,以BCN消 息的形式接收所述數(shù)據(jù)鏈路層擁塞信息。
7. 根據(jù)權利要求2到6中任意一項所述的方法,其中,所述網(wǎng)絡層 擁塞信息是PCN標記。
8. 根據(jù)權利要求7所述的方法,其中,如果所述數(shù)據(jù)鏈路層擁塞信 息指示擁塞低于第一閾值,且搶占標記高于所述第一閾值,則所述PCN禾示i己;^jt入牛示i己。
9. 根據(jù)權利要求8所述的方法,其中,如果所述數(shù)據(jù)鏈路層擁塞信 息指示擁塞低于比所述第一閾值小的第二閾值,則不應用PCN標記。
10. 根據(jù)權利要求2到7中任意一項所述的方法,其中,根據(jù)針對 所述網(wǎng)絡層元件中虛擬隊列大小的概率函數(shù)來確定所述網(wǎng)絡層擁塞信 息,其中,根據(jù)所述數(shù)據(jù)鏈路層擁塞信息來修改所述概率函數(shù)。
11. 根據(jù)權利要求2到7中任意一項所述的方法,其中,根據(jù)所述 數(shù)據(jù)鏈路層擁塞信息來確定所述網(wǎng)絡層擁塞信息,使得在網(wǎng)絡層中對和 數(shù)據(jù)鏈路層中基本相同量的有效載荷數(shù)據(jù)進行了擁塞標記。
全文摘要
本發(fā)明提供了這樣一種方法和系統(tǒng),其中,從協(xié)議棧中的較低層獲得擁塞信息,并用于在較高層中進行擁塞標記。具體來說,本發(fā)明第一方面的方法和系統(tǒng)提供了較低層中的擁塞信息,所述擁塞信息在擁塞節(jié)點處下游生成,并且被向上游反饋到源節(jié)點。然后,源節(jié)點將擁塞信息或從其中導出的信息向上傳遞到負責協(xié)議棧中較高層的對應網(wǎng)絡元件,隨后在該網(wǎng)絡元件處可以根據(jù)接收到的較低層擁塞信息來執(zhí)行較高層的擁塞標記。因此,來自較低層的擁塞信息可以被用在較高層擁塞控制功能中,而一般來講,所述擁塞信息可以在發(fā)生顯著擁塞之前較早地生成。優(yōu)選地,較低層為數(shù)據(jù)鏈路層,而較高層為網(wǎng)絡層。
文檔編號H04L12/56GK101558616SQ200780046513
公開日2009年10月14日 申請日期2007年12月18日 優(yōu)先權日2006年12月18日
發(fā)明者加布麗埃勒·科里亞諾, 惠·珉·瓊·塔伊, 羅伯特·約翰·布里斯科, 菲利普·勞倫斯·厄德利 申請人:英國電訊有限公司
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評論。精彩留言會獲得點贊!
1
屯留县| 曲水县| 修文县| 虎林市| 即墨市| 聊城市| 绥江县| 峨山| 高清| 商城县| 册亨县| 五原县| 邻水| 苗栗县| 叶城县| 孟州市| 岗巴县| 三穗县| 怀柔区| 涿州市| 望城县| 西华县| 太仓市| 布尔津县| 石楼县| 荔波县| 龙里县| 肇东市| 凌源市| 策勒县| 上犹县| 沈丘县| 白朗县| 咸宁市| 泰顺县| 偏关县| 晴隆县| 化州市| 云安县| 本溪| 眉山市|