專利名稱:共享媒體中的動態(tài)業(yè)務(wù)管理的制作方法
技術(shù)領(lǐng)域:
本發(fā)明涉及共享媒體中的動態(tài)業(yè)務(wù)管理。
背景技術(shù):
各種各樣的網(wǎng)絡(luò)結(jié)構(gòu)被用來傳送數(shù)據(jù)。最流行的網(wǎng)絡(luò)可能是以太網(wǎng)(Ethernet)。Ethernet是一種使用帶有檢測沖突的載波偵聽媒體存取(CSMA/CD)協(xié)議的總線技術(shù)。連接到總線的每一個站在開始分組傳輸之前偵聽媒體。如果在傳輸期間檢測到?jīng)_突,發(fā)射站立即停止傳輸,并且發(fā)射一個簡短的干擾信號以向所有的站指出已經(jīng)發(fā)射了沖突。然后,在再次使用CSMA發(fā)射之前,它等待一隨機(jī)時間。
在Ethernet總線上沒有顯示帶寬管理。每一個站獨立地決定進(jìn)行發(fā)射,并且進(jìn)行在始發(fā)于該站的流上的局域業(yè)務(wù)管理。因此,這種方案不需要提供對共享總線的所有流進(jìn)行有效的業(yè)務(wù)管理。
另一種結(jié)構(gòu)是使用令牌總線。令牌總線的媒體訪問協(xié)議類似于下面將要介紹的IEEE 802.5令牌環(huán)。
DQDB(分布排列雙總線)是一種被標(biāo)準(zhǔn)IEEE 802.6中的IEEE接受的技術(shù),用于城域網(wǎng)(MAN)。DQDB使用雙總線,每一個站連接到兩條總線。幀發(fā)生器位于每一個總線的末端,生成空時隙幀。各個站可以從任何總線中讀出數(shù)據(jù),且可以對任何總線的數(shù)據(jù)進(jìn)行“OR”操作。DQDB媒體訪問(隊列仲裁)機(jī)制提供了如下的訪問方法-每一個時隙具有一個忙(B)比特和請求(R)比特-當(dāng)站想要將數(shù)據(jù)放在一總線上時,其在另一總線上將R比特設(shè)置在經(jīng)過的時隙上。(這是提醒上行站,已經(jīng)發(fā)生請求。)
-每一個站維持一個請求計數(shù)器(RC),該請求計數(shù)器在每一次帶有R比特設(shè)置的時隙通過時遞增1,并且在每一次空時隙通過另一個總線時遞減1-當(dāng)RC到達(dá)0時,站可以使用在另一個總線上的下一個空(B沒有設(shè)置)時隙。
然而,這種訪問機(jī)制可以是不公平的。在總線末端附近的站主要地限制了一總線的容量。在中心附近的站可更多的訪問兩總線,因此對它們有更多的可用容量,且平均而言具有更短的傳輸通路。在總線頭端附近的站傾向于更高地訪問空時隙。
另一種結(jié)構(gòu)使用IEEE 802.5令牌環(huán)標(biāo)準(zhǔn)。每一個令牌環(huán)網(wǎng)絡(luò),其為4或16Mb/s環(huán),由連接到環(huán)的每一個站共享。各站通過獲得允許來訪問令牌環(huán)以發(fā)送數(shù)據(jù)。當(dāng)站接收到稱為“令牌”的特殊消息時,允許得到授權(quán)。發(fā)射站捕獲令牌,將其改變成“幀”,將數(shù)據(jù)嵌入到幀信息字段,并且發(fā)射它。如果該幀尋址到其它的站,則它們接收數(shù)據(jù)。包括那些接收數(shù)據(jù)的所有站重新廣播該幀,使得它返回到始發(fā)站。站從環(huán)中剝?nèi)?shù)據(jù),且發(fā)出一個新的令牌,供帶有數(shù)據(jù)的下一個下行站使用來進(jìn)行發(fā)射。此外,令牌環(huán)具有8個可用的優(yōu)先級,以對發(fā)射進(jìn)行分級。當(dāng)站有要發(fā)送的緊急信息時,其預(yù)約高的優(yōu)先級。當(dāng)用預(yù)約請求使令牌可用時,其變成“優(yōu)先令牌”。只有帶有優(yōu)先請求的站可以使用令牌。其它的站將等待,直到正常的(非優(yōu)先)令牌變成可用。
光纖分布式數(shù)據(jù)接口(FDDI)是一種用于高速環(huán)形網(wǎng)的標(biāo)準(zhǔn)。象IEEE 802.5標(biāo)準(zhǔn)一樣,F(xiàn)DDI采用令牌環(huán)算法。然而,F(xiàn)DDI令牌管理方案對于大量的環(huán)尤其有效,因而提供了更好的環(huán)應(yīng)用(ringutilization)。FDDI和IEEE令牌環(huán)之間的另一個不同在于容量分配領(lǐng)域。FDDI提供了對流和脈沖業(yè)務(wù)的混合的支持。其定義了兩種業(yè)務(wù)類型同步和異步。每一個站的同步部分由協(xié)議來保證。每一站使用了在同步部分之外的剩余帶寬來發(fā)射異步業(yè)務(wù)。然而,沒有一種內(nèi)在的機(jī)制來在各站之間公平地分配異步部分。即使給每一個節(jié)點以發(fā)射業(yè)務(wù)的機(jī)會,為異步業(yè)務(wù)的通過“發(fā)射”機(jī)會的環(huán)的分配也不必以公平方式進(jìn)行。這是部分因為每一個節(jié)點獨立地決定在發(fā)送它的同步部分之后,發(fā)送可用的異步部分。類似地,通過在每一個節(jié)點采取的“獨立”決定的設(shè)置,提供在環(huán)上的不同業(yè)務(wù),因此,在環(huán)狀級,以相同的方式來分配整個帶寬。
實際使用的最通用的環(huán)形結(jié)構(gòu)可能是SONET/SDH(同步光纖網(wǎng)絡(luò)/同步數(shù)字序列)結(jié)構(gòu)。在美國專利5,335,223中提供了關(guān)于SONET/SDH的具體背景技術(shù)。根據(jù)SONET標(biāo)準(zhǔn)的通信使用一種環(huán)形結(jié)構(gòu),其中,通過光纖鏈路連接各個節(jié)點,從而形成一個環(huán)。SONET環(huán)通常具有多個節(jié)點,每一個節(jié)點包括加入/撤出(add/drop)乘法器(ADM)。每一個節(jié)點通過光纖通路連接到兩個相鄰的節(jié)點。在一系列同步固定長度數(shù)據(jù)幀中,通信在環(huán)上傳送。SONET沒有在環(huán)上進(jìn)行動態(tài)管理帶寬的內(nèi)在機(jī)制。這些標(biāo)準(zhǔn)定義了在環(huán)上靜態(tài)提供資源的機(jī)制,也就是,將在SONET幀中的加入/撤出列分配給每一個節(jié)點。然而,SONET標(biāo)準(zhǔn)沒有說明在沒有關(guān)閉環(huán)上的業(yè)務(wù)的情況下,動態(tài)地加入或撤出列。
發(fā)明內(nèi)容
總的來說,本發(fā)明提供了一種用于在共享媒體上(例如,SONET環(huán)上)管理動態(tài)業(yè)務(wù)的方法。該方法可以使用中央仲裁器,該仲裁器與連接到媒體上的各個站進(jìn)行通信。每一個站對于進(jìn)入該站媒體上的動態(tài)業(yè)務(wù),請求改變帶寬,并且執(zhí)行與它的改變帶寬的請求相應(yīng)的避免擁塞算法。中央仲裁器響應(yīng)來自各站的請求,對在共享媒體上的可用帶寬進(jìn)行公平分配。
概括地說,一方面,本發(fā)明是一種管理共享媒體上的通信的方法,共享媒體具有由多個信道共享的通信容量。各通信信道被允許在共享媒體上通信,并且每一個信道被分配給一個優(yōu)選權(quán)。對于每一個通信信道,維持?jǐn)?shù)據(jù)速率分配,從而用于各信道的數(shù)據(jù)速率分配的組合不超過共享媒體的通信容量。根據(jù)用于每一個通信信道的數(shù)據(jù)速率分配,通過共享媒體傳送通信信道的數(shù)據(jù)。對于每一個通信信道,包括根據(jù)分配給通信信道的數(shù)據(jù)速率來以限定的速率在共享媒體上接收數(shù)據(jù)和發(fā)射接收的數(shù)據(jù)。維持用于通信信道的數(shù)據(jù)速率分配包括監(jiān)視在每一個通信信道上的通信,并且利用監(jiān)視的通信產(chǎn)生請求以改變?yōu)楦鱾€通信信道的數(shù)據(jù)速率分配。請求為每一個通信信道改變數(shù)據(jù)速率分配包括請求為信道增加分配的數(shù)據(jù)速率,和請求為信道降低分配的數(shù)據(jù)速率。利用接收到的請求反復(fù)地重新計算數(shù)據(jù)速率分配。
該方法可以包括一個或多個下面的特征。
重新計算數(shù)據(jù)速率分配包括為通信信道的每一個優(yōu)先權(quán),確定共享媒體的共享通信容量;根據(jù)分配的共享優(yōu)先權(quán),為在每一個優(yōu)先權(quán)上的通信信道修改數(shù)據(jù)速率分配;并且對于每一個優(yōu)先權(quán),根據(jù)所述請求和分配的共享優(yōu)先權(quán),處理在該優(yōu)先權(quán)上的通信信道的增加數(shù)據(jù)速率分配的請求。
為每一個通信信道的數(shù)據(jù)速率分配包括確認(rèn)的(committed)數(shù)據(jù)速率和分配的數(shù)據(jù)速率。維持分配的數(shù)據(jù)速率等于或超過確認(rèn)的數(shù)據(jù)速率。在重新計算數(shù)據(jù)速率分配中,確定超過共享媒體的通信容量的總的共享超過量,該總的共享超過量超過各通信信道的總的確認(rèn)的數(shù)據(jù)速率。
重新計算數(shù)據(jù)速率進(jìn)一步包括為每一個優(yōu)先權(quán)上的通信信道修改數(shù)據(jù)速率分配;生成未分配容量的池;且,處理在該優(yōu)先權(quán)上的通信信道的增加數(shù)據(jù)速率分配的請求包括將未分配的容量的池應(yīng)用到所述信道上。
處理在每一個優(yōu)先權(quán)上的通信信道的增加數(shù)據(jù)速率分配的請求進(jìn)一步包括降低在相同優(yōu)先權(quán)上的另一個通信信道的數(shù)據(jù)速率,并且將所述數(shù)據(jù)速率的降低應(yīng)用到所述增加的請求上。
重新計算數(shù)據(jù)速率分配包括部分地根據(jù)各個通信信道的過去的數(shù)據(jù)速率分配來對在每一個優(yōu)先權(quán)上的通信信道進(jìn)行排序,并且降低在相同優(yōu)先權(quán)上的另一個通信信道的數(shù)據(jù)速率包括根據(jù)所述部分排序來選擇另一個通信信道。
為每一個通信信道監(jiān)視數(shù)據(jù)速率包括監(jiān)視在共享媒體上的掛起傳輸?shù)拿恳粋€信道的接收的數(shù)據(jù)隊列大小,并且利用監(jiān)視的隊列大小來產(chǎn)生改變所述信道的數(shù)據(jù)速率分配的請求。
為各個通信信道傳送數(shù)據(jù)進(jìn)一步包括應(yīng)用隨機(jī)早期撤出(RED)方法,其中,當(dāng)各個通信信道的數(shù)據(jù)速率超過它們的分配的數(shù)據(jù)速率時,丟棄接收的數(shù)據(jù)。
共享通信媒體的共享通信容量包括在SONET網(wǎng)絡(luò)上的容量,和在SONET網(wǎng)絡(luò)的相應(yīng)節(jié)點上進(jìn)入SONET網(wǎng)絡(luò)的通信信道。
為各個通信信道維持?jǐn)?shù)據(jù)速率分配包括;維持將一系列的數(shù)據(jù)幀中的每一幀的部分分配給每一個通信信道。
為各個通信信道修改數(shù)據(jù)速率分配包括對將一系列的數(shù)據(jù)幀中的每一幀的部分分配給每一個通信信道進(jìn)行修改。
通過SONET環(huán)將來自各節(jié)點的請求傳送給仲裁節(jié)點,且通過SONET環(huán)將來自仲裁節(jié)點的分配傳送給另外的節(jié)點。
為各個通信信道維持分配的數(shù)據(jù)速率包括確定在可用于各個通信信道的SONET網(wǎng)絡(luò)上傳送的一系列幀的每一幀的總量。
確定一系列幀的每一幀的總量包括確定分配給固定速率通信信道的每一個幀的總量。
概括地說,另一個方面,本發(fā)明是一種通信系統(tǒng)。該系統(tǒng)包括具有通信容量的共享媒體,和連接到共享媒體的多個通信節(jié)點,共享媒體被配置以通過共享媒體在各節(jié)點之間為多個通信信道送數(shù)據(jù)。該系統(tǒng)也包括仲裁器,其連接到各通信節(jié)點且被配置來為每一個通信信道維持?jǐn)?shù)據(jù)速率分配,使得如果共享媒體將所述數(shù)據(jù)速率分配傳送給通信節(jié)點,信道的數(shù)據(jù)速率分配的組合不超過通信容量。每一個通信節(jié)點被配置以為一個或多個通信信道接收數(shù)據(jù),并且根據(jù)用于那些通信信道的數(shù)據(jù)速率分配來通過共享媒體傳送數(shù)據(jù)。每一個節(jié)點被進(jìn)一步配置來傳送請求,以根據(jù)監(jiān)視每一個通信信道上的通信來改變各個通信信道的數(shù)據(jù)速率分配。仲裁器被配置以為多個優(yōu)先權(quán)中的每一個確定共享的通信容量,且根據(jù)為每一個優(yōu)先權(quán)確定的共享來維持?jǐn)?shù)據(jù)速率分配和維持改變從通信節(jié)點傳來的數(shù)據(jù)速率分配的請求。
共享媒體可包括SONET通信系統(tǒng),并且仲裁器被配置以維持將每一個SONET幀的部分分配到每一個通信信道。
本發(fā)明的一個優(yōu)點是,根據(jù)多個通信信道的時間變化要求,以分配在不同的信道優(yōu)先權(quán)之中和之內(nèi)的容量的方式來分配共享的通信容量的共享。該方法可以應(yīng)用到SONET網(wǎng)絡(luò),從而提供一種公平機(jī)制來容納在SONET結(jié)構(gòu)的標(biāo)準(zhǔn)同步幀內(nèi)的脈沖通信信道。
從下面的說明和權(quán)利要求書中可清楚地看到本發(fā)明的其它特征和優(yōu)點。
附圖簡要說明
圖1是SONET環(huán)的框圖,其中,仲裁器為在環(huán)的共享信道上傳送的動態(tài)信道分配帶寬;圖2是說明在仲裁器處維持的信道數(shù)據(jù)的各組件的方框圖;圖3是說明將動態(tài)信道分配到共享信道的鏈路帶寬的框圖;圖4是SONET環(huán)上的節(jié)點的方框圖;圖5是說明用在節(jié)點處的存儲隊列數(shù)據(jù)交互作用隊列管理器和帶寬管理器的方框圖;圖6是說明中央仲裁器執(zhí)行的步驟以在不同動態(tài)信道中分配帶寬的流程圖;圖7是帶寬分配的第一階段的流程圖,其中,帶寬被分配在不同優(yōu)先權(quán)中;圖8是說明帶寬分配的第二階段的步驟的偽代碼,其中,特定信道接收增加的分配帶寬;圖9a-b是說明為相對于用于那些優(yōu)先權(quán)的公平共享帶寬的特定優(yōu)先權(quán)的分配的框圖;圖10是說明各信道處于四個優(yōu)先權(quán)中的一個例子的框圖;圖11是說明為圖10中的說明的例子確定不同優(yōu)先權(quán)的最小閾值帶寬增量的步驟的框圖;圖12是說明在不同優(yōu)先權(quán)和從未使用的池到不同優(yōu)先權(quán)重新分配帶寬的框圖;圖13是說明形成用于在“剝離(ripping)”過程中信道增加的帶寬池的步驟的框圖;圖14是說明用于在各個例子中的不同優(yōu)先權(quán)的帶寬分配的框圖;圖15是說明從未使用的帶寬池中分配帶寬和通過搶占其它信道的帶寬分配以滿足特定信道的帶寬增加請求的步驟的框圖;圖16是說明用于根據(jù)信道的歷史帶寬分配來確定每一個信道的二進(jìn)制索引(bin index)的滯后過程的框圖。
具體實施例方式參見圖1,通信系統(tǒng)包括多個節(jié)點120,121,它們利用有限容量的共享通信媒體來在相互之間傳送數(shù)據(jù)。在使用公共池通信容量的一對節(jié)點之間通信中共享媒體,該公共池通信容量也被用于在其它對節(jié)點之間通信。(在下面的討論中,術(shù)語“帶寬”通常與“通信容量”或“通信速率”交互使用,反映了一個特點,寬帶通信系統(tǒng)中較高的通信速率通常要求較大的帶寬。)根據(jù)本發(fā)明的共享媒體的管理闡述了分配共享媒體以通過共享媒體競爭或者潛在地沖突。在下面介紹的實施例中,共享媒體對通過媒體傳送的所有通信信道的總數(shù)據(jù)速率有限制。這種限制可以是在直接控制管理過程外的時間變化,以在有限數(shù)據(jù)速率內(nèi)分配容量。應(yīng)當(dāng)理解,在另一個實施例中,共享媒體不必具有對總統(tǒng)信速率的時間變化限制。而且,在另一個實施例中,共享媒體不必被共享,使得在節(jié)點之間的所有通信使用相同的容量池,例如,一對節(jié)點之間的通信潛在地與部分其它對節(jié)點之間的通信沖突。
根據(jù)本發(fā)明,共享通信容量被以時間變化方式分配到在各對節(jié)點之間傳送的通信信道,使得在不同的時間,任何被分配給共享媒體的特定通信信道具有分配給它的不同數(shù)據(jù)速率。這些通信信道被稱為“動態(tài)”信道,以反映它們的不必一定具有數(shù)據(jù)容量的恒定要求的特征(例如,具有“脈沖”特性),結(jié)果是,它們被管理成不必要具有為在共享媒體上的、它們的業(yè)務(wù)分配的恒定數(shù)據(jù)速率。
參見圖1,在第一實施例中,根據(jù)本發(fā)明分配了在SONET環(huán)110上的通信容量。保留了(reserve)容量的一部分以在節(jié)點之間傳送多個動態(tài)信道。即,SONET環(huán)110的數(shù)據(jù)容量的一部分是“共享媒體”,其被根據(jù)本發(fā)明進(jìn)行管理。在節(jié)點120之間通信的動態(tài)信道數(shù)目可以在新的信道被確認(rèn)和除去時發(fā)生變化??偟膩碚f,確認(rèn)的信道具有動態(tài)的時變數(shù)據(jù)速率要求,且被根據(jù)時變數(shù)據(jù)速率要求來分配時變帶寬,同時滿足共享容量媒體的帶寬限制以及多個優(yōu)先權(quán)和“公平”準(zhǔn)則。
在SONET環(huán)110上的通信以大約每秒8000幀的速率來傳送一系列固定長度的幀。每一個幀被看作具有9行的陣列的字節(jié),每一行有相同的列數(shù)。列的總數(shù)取決于SONET環(huán)的整個通信速率。例如,在OC-1鏈路上,每一幀有90列。在這個實施例中,共享媒體的共享通信容量對應(yīng)可用于動態(tài)信道的每一個SONET幀的多個列數(shù)。每一個SONET幀的其它列包括用于系統(tǒng)開銷通信和用于具有固定通信速率的通信信道的列數(shù),這樣的通信信道通常稱為TDM(時分復(fù)用)信道,以反映它們接收SONET通信容量的規(guī)則周期部分。
中央仲裁器170協(xié)調(diào)共享容量的時變分配和動態(tài)信道。這個仲裁器在SONET環(huán)110上的仲裁節(jié)點121。其它節(jié)點120向仲裁器170請求以改變動態(tài)信道的帶寬分配。這些請求通常用于在請求節(jié)點處進(jìn)入環(huán)的動態(tài)信道。仲裁器170處理帶寬請求,并且將與每一個動態(tài)信道相關(guān)的帶寬分配結(jié)果告知節(jié)點120。如下面的詳述,除了請求為不同的動態(tài)信道改變帶寬分配之外,每一個節(jié)點也執(zhí)行與它的對帶寬分配的請求一致的避免擁塞方法。這種避免擁塞方法利用用于帶寬分配的數(shù)據(jù)的隨機(jī)撤出,動態(tài)信道具有超過特定閾值的平均隊列長度。
代表性的節(jié)點C 120具有在該節(jié)點進(jìn)入環(huán)的多個入站信道142,和在該節(jié)點“撤出”或者從環(huán)中退出的多個出站動態(tài)信道146。每一個其它節(jié)點120類似地具有傳送被加入環(huán)或者從環(huán)撤出的入站和出站動態(tài)信道。在這個實施例中,節(jié)點121、仲裁器節(jié)點可選地包括在非仲裁器節(jié)點120的功能,如果是這樣,使仲裁器170的內(nèi)部請求與它的入站信道的容量分配相關(guān)。應(yīng)當(dāng)理解,每一個入站和出站動態(tài)信道142、146不必對應(yīng)各自的物理鏈路。例如,可以在連接到節(jié)點的一個或多個物理鏈路上以公知的方式多路復(fù)用入站和出站動態(tài)信道。
如上所述,從節(jié)點到節(jié)點在環(huán)110上傳送的每一個同步SONET幀的一部分被保留給動態(tài)信道。該部分稱為每一幀的“動態(tài)部分”。在題為“在SONET環(huán)上傳輸同步和脈沖(bursty)數(shù)據(jù)”的美國專利09/536,416(下文稱為第一申請)中可以看到關(guān)于用于動態(tài)數(shù)據(jù)的SONET幀的部分的詳細(xì)使用,該申請在此被通過引用結(jié)合到本文中。在這個實施例中,動態(tài)部分的帶寬可以隨時間變化,例如,更多或更少的帶寬被分配給也在SONET環(huán)上傳送的TDM信道。在第一申請以及在題為“在同步幀中可變的TDM信道傳輸”的美國專利09/858,019(下文中稱為第二申請)中詳細(xì)地介紹了TDM信道的運(yùn)行和管理,第二申請在此被通過引用結(jié)合到本文中。
動態(tài)信道管理涉及到規(guī)定(provisioning)信道,其包括允許(生成)和結(jié)束到共享信道的信道;和確認(rèn)的信道的帶寬管理,其包括到確認(rèn)的信道的共享信道內(nèi)的帶寬分配和解除分配。參見圖1,仲裁器節(jié)點121包括CAC(連接允許控制)模塊180,其負(fù)責(zé)生成和終止動態(tài)信道。CAC模塊180在仲裁器節(jié)點處維持存儲在信道數(shù)據(jù)175中的數(shù)據(jù),其反映動態(tài)信道的固定特征。當(dāng)代表性節(jié)點C 120發(fā)起創(chuàng)建新的入站動態(tài)信道142時,其進(jìn)行信道請求,該請求發(fā)送到CAC模塊180。在這個實施例中,節(jié)點C 120利用帶外(OAM&P)信道鏈路節(jié)點C 120和仲裁器節(jié)點121將信道請求160發(fā)送到仲裁器節(jié)點121。在仲裁器節(jié)點121,CAC模塊180接收到信道請求,如果它確認(rèn)請求的信道,則它根據(jù)請求來更新信道數(shù)據(jù)。
參見圖2,CAC模塊180維持在信道數(shù)據(jù)175中的規(guī)定映象210,信道數(shù)據(jù)包括關(guān)于確認(rèn)的動態(tài)信道的信息。CAC模塊180接收信道請求160,每一個信道請求160包括關(guān)于請求的信道的信息,諸如它的始發(fā)節(jié)點、目的節(jié)點或多個節(jié)點、請求的帶寬(數(shù)據(jù)速率),希望的脈沖數(shù)據(jù)速率、和優(yōu)先權(quán)。響應(yīng)該請求,CAC模塊180為動態(tài)信道生成規(guī)定的記錄220。每一個規(guī)定記錄220包括多個數(shù)據(jù)字段,它們通常在動態(tài)信道激活時不改變。規(guī)定記錄包括CIR(確認(rèn)的信息速率)230,其為被確??捎糜趧討B(tài)信道的每一個SONET幀的多個列。該記錄也包括BR(脈沖速率)232,其為當(dāng)動態(tài)信道的數(shù)據(jù)速率要求高時,例如在脈沖期間,仲裁器170作出的可用于該動態(tài)信道的每一個幀的最大列數(shù)。注意,BR 232包括由CIR 230指示的確認(rèn)數(shù)量,因此,BR大于或等于CIR。每一個規(guī)定記錄也包括優(yōu)先權(quán)234。不同的動態(tài)信道具有不同優(yōu)先權(quán)。下面介紹的管理方法闡述了在不同優(yōu)先權(quán)之間的帶寬分配和將帶寬分配給在任何特定優(yōu)先權(quán)內(nèi)的不同動態(tài)信道。規(guī)定記錄220也包括規(guī)定標(biāo)志236。在下面的介紹中,假設(shè)動態(tài)信道具有這個標(biāo)志設(shè)置。清除規(guī)定標(biāo)志236允許規(guī)定記錄退出動態(tài)信道,但是仲裁器170不會將任何容量分配給它。例如,在延長的時間中處于空閑的動態(tài)信道可以清除它的規(guī)定標(biāo)志,從而允許其它信道使用的它的確認(rèn)的速率。用于動態(tài)信道的規(guī)定記錄220也包括FCA(公平容量分配)238,其為從CIR到BR范圍內(nèi)的數(shù)量,被用于在某些時間內(nèi)可以用來在處于相同優(yōu)先權(quán)上的不同動態(tài)信道中以公平方式分配容量。在每一個動態(tài)信到規(guī)定事件中(例如,作為增加或刪除動態(tài)信道的結(jié)果),可以選擇地更新每一個動態(tài)信道的FCA。
規(guī)定映象210也包括動態(tài)帶寬(DBW)222,其為可以分配給動態(tài)信道的SONET幀(共享帶寬)的總列數(shù);權(quán)重223,由仲裁器170使用來在不同優(yōu)先權(quán)中分配帶寬;二進(jìn)制(BIN)閾值224,其被仲裁器170使用來根據(jù)它們的過去帶寬分配以給定的優(yōu)先權(quán)對動態(tài)信道進(jìn)行分類;和max_preempt 225和preempt_capable 226,它們是被仲裁器使用來以不同優(yōu)先權(quán)在動態(tài)信道中重新分配帶寬的參數(shù)。
再次參見圖1,當(dāng)代表性的節(jié)點C 120做出為動態(tài)信道請求增加或降低分配的帶寬時,它將帶寬請求164傳送到在仲裁器節(jié)點121的仲裁器170。帶寬請求164可以是增加或降低一個或多個信道的帶寬的請求。在這個實施例中,在環(huán)上傳送的每一SONET幀的部分被保留給帶寬請求164,而在該部分中,一比特標(biāo)志被保留用于每一個動態(tài)信道。一比特標(biāo)志對請求進(jìn)行編碼以增加或降低為相應(yīng)動態(tài)信道的分配。因此,在這個實施例中,不為“不改變”的請求進(jìn)行編碼。帶寬請求164對應(yīng)用于相應(yīng)動態(tài)信道的一比特標(biāo)志。通常對于在不同節(jié)點中的每一個處進(jìn)入環(huán)的信道,當(dāng)幀在環(huán)上傳送時,不同節(jié)點120在幀內(nèi)設(shè)置不同的帶寬請求,然后,仲裁器170在它接收的每一個幀中接收多個帶寬請求164。
當(dāng)處理在一個或多個幀中接收的帶寬請求之后,仲裁器170將帶寬授權(quán)166發(fā)送到各節(jié)點。在這個實施例中,每一個SONET幀的部分被保留給帶寬授權(quán)。帶寬授權(quán)166識別被分配給每一個動態(tài)信道的哪些SONET列。當(dāng)攜帶動態(tài)授權(quán)的SONET幀通過環(huán)上時,每一個節(jié)點120接收帶寬授權(quán)166,每一個節(jié)點注意動態(tài)信道的分配的任何改變,并且繼續(xù)處理在該節(jié)點上進(jìn)入或離開環(huán)的動態(tài)信道的流程。請求改變信道分配的節(jié)點C 120在響應(yīng)至少等于在環(huán)上傳送幀的傳播時間的延遲之后,將接受任何授權(quán)。首先,帶寬請求必須從節(jié)點傳送到仲裁器,然后,仲裁器必須處理該請求,然后,必須通過環(huán)的剩余部分將授權(quán)傳送回到請求節(jié)點。
再次參見圖2,仲裁器170使用規(guī)定映象210中的信息來維持結(jié)果映象240。結(jié)果映象240包括用于每一個動態(tài)信道的結(jié)果記錄250。根據(jù)其接收到的帶寬請求164,仲裁器170更新結(jié)果記錄250,并且形成反映在結(jié)果映象中的數(shù)據(jù)的帶寬授權(quán)166。用于每一個動態(tài)信道的結(jié)果記錄250包括多個字段。CCA(當(dāng)前容量分配)226是分配給動態(tài)信道的當(dāng)前分配的列數(shù)。CCA 262被限制為至少等于CIR 230,并且不大于該信道的BR 232。在下面的介紹中,將CIR和CCA之間的差別定義為CBA,即當(dāng)前脈沖分配。二進(jìn)制264是在1到B范圍內(nèi)的整數(shù),反映了動態(tài)信道的過去通信要求。如下面更加詳細(xì)的介紹,最近增加了帶寬分配的信道通常將比最近進(jìn)行了降低的信道高的二進(jìn)制索引。具有較低的二進(jìn)制索引的信道以相同的優(yōu)先權(quán)在具有較高的二進(jìn)制索引的信道上接收一些優(yōu)先選擇(preference)。
每一個動態(tài)信道也具有INCR 266和DECR 268值。這些值是分配和解除分配請求被縮放的列數(shù)。即,動態(tài)信道的帶寬請求被仲裁器170解釋為INCR對該信道的列數(shù)的增加的請求,而信道的解除分配帶寬的請求被解釋為DECR對該信道的列數(shù)解除分配的請求。INCR和DECR通常是依賴于信道的。CAC模塊180為每一個動態(tài)信道設(shè)置INCR 266和DECR 268值??蛇x地,CAC模塊180可以在以后修改這些值。根據(jù)仿真和實驗室經(jīng)驗,信道的INCR和DECR優(yōu)選地被設(shè)置為信道的BR和CIR之間范圍內(nèi)的5-10%。INCR和DECR的選擇反映了整個分配方案的時間動態(tài)。INCR和DECR的特定選擇意指它足夠大以提供動態(tài)信到要求的、對數(shù)據(jù)速率的改變相對迅速的響應(yīng)。而且,將INCR和DECR選得足夠小,使得通過允許帶寬分配迅速改變,分配的帶寬的改變不會負(fù)面地與較高等級的流量控制機(jī)制相互影響,較高等級的流量控制機(jī)制如基于TCP的流量控制。
圖3說明共享媒體的總的動態(tài)帶寬的兩個視圖,識別出該帶寬的大小在時間上的變化。整個帶寬表示為DBW(動態(tài)帶寬)。圖3的部分311-332的上面的部分示出了對n個動態(tài)信道的帶寬分配。在圖3的上部分中,為每一個信道的分配被說明為連續(xù)的部分。例如,用鄰近CBA1312的CIR1311來說明CCA1。CCAi的總和被表示為CCATOT,即對激活的動態(tài)信道的總的當(dāng)前分配。通常,可能有一些未使用的動態(tài)帶寬340(DBW-CCATOT),盡管仲裁器盡力將所有的動態(tài)帶寬分配給激活的信道。
參見圖3的下面部分,分配給信道的帶寬被說明為兩個部分。用于激活信道(CIR1311,CIR2321,...,CIRn331)的確認(rèn)速率被組成總的確認(rèn)分配362,其被表示為CIRTOT。脈沖分配(CBA1312,CBA2322,...,CBAn332)的確認(rèn)速率被組成總的脈沖分配364,其被表示為CBATOT。如下面的詳細(xì)介紹,為激活動態(tài)信道確保它們的CIR帶寬。因此,仲裁器170努力根據(jù)對幾個動態(tài)信道的分配的或解除分配的帶寬的請求,以公平方式確定CBAi,同時維持確認(rèn)的速率。
參見圖4,每一個節(jié)點120包括多個相互關(guān)連的模塊。多路復(fù)用器410通過SONET環(huán)110的鏈路122接收數(shù)據(jù),為出站動態(tài)信道144抽出(撤出)數(shù)據(jù),并且為入站動態(tài)信道142將數(shù)據(jù)加到SONET環(huán)110的出站鏈路122上。帶寬管理器440從仲裁器170接收包括帶寬授權(quán)166的控制信息。利用此控制信息,帶寬管理器44通知多路復(fù)用器410SONET幀的哪些列與在該節(jié)點上加入或撤出的入站信道和出站動態(tài)信道相關(guān)。隊列管理器420管理用于每一個入站動態(tài)信道的隊列42,且將隊列長度信息提供給帶寬管理器440。擁塞管理器430從校正器(policer)450接收數(shù)據(jù),且根據(jù)帶寬管理器440提供給它的與隊列長度相關(guān)的參數(shù)來執(zhí)行隨機(jī)早期撤出(RED)方法來避免擁塞(將在下面進(jìn)行詳細(xì)介紹)。校正器450接收用于入站動態(tài)信道的數(shù)據(jù),且執(zhí)行雙漏斗方法(dual leaky bucket approach)來校正信道的接入業(yè)務(wù)以不超過它們各自的BR。以大于BR的速率到達(dá)的分組被撤出。校正器450通過在分組頭部中設(shè)置一個比特,將以CIR和BR之間的速率到達(dá)的每一個分組標(biāo)記為“可撤出的”。以小于或等于CIR的速率到達(dá)的分組被發(fā)送,因為它們沒有設(shè)置“可撤出的”比特。如下所述,擁塞管理器430使用可撤出的比特信息來強(qiáng)制進(jìn)行擁塞管理。在每一個節(jié)點120處,擁塞管理器430從校正器450接收數(shù)據(jù)。隊列管理器420從擁塞管理器430接收入站數(shù)據(jù),且為每一信道排列隊列422中的數(shù)據(jù)。隊列管理器420以對應(yīng)所述信道的分配的速率從每一個信道中將數(shù)據(jù)解除出隊列。也就是,以對應(yīng)為所述動態(tài)信道分配的SONET列的數(shù)目的速率將數(shù)據(jù)解除出隊列。隊列管理器420將用于每一個隊列的瞬時隊列長度通知給帶寬管理器440。帶寬管理器440為每一個信道計算隊列長度的時間平均值(即,平滑后的值),且根據(jù)這些平均的隊列長度來確定其發(fā)送給仲裁器的帶寬請求。在這個實施例中,帶寬管理器440每t個時間單位對實際的隊列長度進(jìn)行采樣,且根據(jù)average[n+1]=(1-w)*average[n-1]+w*length[n]來計算平均值,式中,w是新的采樣長度的權(quán)重,n是多個更新值的計數(shù)。為了容易實現(xiàn),這樣選擇w,其可從2的乘冪中導(dǎo)出。W的值是可以編程的。在這個實施例中,w=0.005=1/256+1/512=2-9+2-10,且1-w=0.995=1-1/256-1/512=20-2-9-2-10。因此,可以用移位運(yùn)算來實現(xiàn)平均值計算。在這個實施例中,在0.1到1.0毫秒之間的范圍內(nèi)t選擇。t和w的這些值產(chǎn)生帶有大約0.2-2秒的平均時間常數(shù)的衰減平均值。
參見圖5,用對齊的時間軸示出與在節(jié)點處的一個入站動態(tài)信道相關(guān)的三條曲線圖。這些圖線說明了在節(jié)點處的隊列管理器420和帶寬管理器440(圖4)的運(yùn)行。該圖中的頂部圖線示出了用于與動態(tài)信道相關(guān)的隊列422的典型的瞬間隊列長度540。中間的圖線說明了用于所述信道的相應(yīng)平均隊列長度422。圖中的下面圖線說明用于由仲裁器170授權(quán)并且發(fā)送到節(jié)點的動態(tài)信道的分配的帶寬CCA 262。帶寬管理器440從隊列管理器420接收隊列長度540,根據(jù)上面介紹的平均值公式計算時間平均隊列長度542。當(dāng)平均隊列長度超過可配置的閾值A(chǔ)LLOCHTH 520時,帶寬管理器440在每一幀中將帶寬請求164發(fā)送到仲裁器170,以增加用于該動態(tài)信道的帶寬分配。當(dāng)平均隊列長度低于ALLOCTH時,帶寬管理器440將帶寬請求164發(fā)送到仲裁器170,以降低用于信道的帶寬分配。圖5中,從t1至t6的時間周期對應(yīng)一個周期,其中,平均帶寬超過ALLOCTH且?guī)捁芾砥?40請求增加信道的分配。在時間t6之后,當(dāng)平均隊列長度再次低于ALLOCTH時,帶寬管理器440請求對用于信道的帶寬進(jìn)行解除分配(降低)。底部的圖線示出了分配的帶寬(CCA),由仲裁器170響應(yīng)來自帶寬管理器440的請求進(jìn)行分配。下面進(jìn)一步介紹由仲裁器170為每一個信道而處理帶寬請求和計算CCA。
現(xiàn)在看擁塞管理器430,如果對于那些信道存在積壓的數(shù)據(jù),有時使用通常稱為隨機(jī)早期撤出(RED)的技術(shù)的將節(jié)點120為某些入站動態(tài)信道接收的入站數(shù)據(jù)丟棄。具體地說,當(dāng)平均隊列長度542小于可置位閾值MINTH 722時,入站數(shù)據(jù)被排隊,并且不被撤出。當(dāng)平均隊列長度超過第二可置位閾值MAXTH 724時,撤出用于所述信道的所有可撤出分組。從MINTH 722到MAXTH 724,以隨平均隊列長度而增加的概率實際撤出被校正器450標(biāo)記為“可撤出的”入站分組概率。
在這個實施例中,一種確定是否撤出數(shù)據(jù)的有效方法是基于將從MINTH到MAXTH的平均隊列長度范圍劃分成R個區(qū)域,例如有相同的增量。R個區(qū)域中的每一個與不同的寄存器相關(guān),且該寄存器將多個隨機(jī)選擇的比特設(shè)置為1,使得為1的總的比特數(shù)目形成寄存器中的總比特總數(shù)的小數(shù)部分,其等于該區(qū)域的希望撤出概率。區(qū)域的數(shù)量和區(qū)域的撤出概率是可以配置的。例如,可以使用R=4的區(qū)域和分別大約是0.05,0.1,0.25,和0.5的概率。R的值以及撤出概率是可以配置的。在不同的配置中,可以將不同的區(qū)域數(shù)目和不同的撤出概率用于區(qū)域。在這個實施例中,使用64比特的寄存器長度。擁塞管理器430確定是否實際使用當(dāng)前的平均隊列長度來撤出可撤出的數(shù)據(jù),以選擇與在平均隊列長度所在范圍內(nèi)相關(guān)的寄存器。然后,確定“隨機(jī)”L-比特數(shù),且其被用作利用當(dāng)前隊列長度的最低有效的L位來進(jìn)入寄存器的比特索引(bit index),其中L為log2(寄存器長度)。如果寄存器長度是64,L=6。如果索引比特為1,則撤出數(shù)據(jù),否則排隊數(shù)據(jù)。
當(dāng)信道的瞬時隊列長度大于信道的隊列大小時,發(fā)生硬撤出。在這種情況下,對于信道,撤出所有的分組(可撤出的或不可撤出)。圖5中,在t2之前的時間內(nèi),由于平均隊列長度低于MINTH,不撤出數(shù)據(jù)。在t2和t3之間的時間中,雖然平均長度在MINTH和MAXTH之間,利用上面介紹的寄存器方法來隨機(jī)地撤出可撤出的數(shù)據(jù)。從時間t3到時間t4,由于平均隊列長度超過MAXTH,撤出所有的可撤出分組。從時間t4到時間t5,再次隨機(jī)地撤出可撤出的分組,并且在時間t5之處,當(dāng)平均隊列長度低于MINTH時,撤出停止。
注意,通過使用平均隊列長度來影響兩個模塊的操作,協(xié)調(diào)帶寬管理器440和擁塞管理器430的操作。例如,由于ALLOCTH通常低于MINTH,在擁塞管理器430開始撤出信道的數(shù)據(jù)之前,帶寬管理器請求增加信道的帶寬一段時間。也就是,如果響應(yīng)平均隊列長度越過ALLOCTH開始時的請求,仲裁器170將附加的容量分配給信道,則可以控制平均隊列長度不高于MINTH。然而,如果容量沒有被分配給信道,例如由于其不可用,或者因為該信道具有的相對低于其它的激活動態(tài)信道的優(yōu)先權(quán),則擁塞管理器430開始隨機(jī)地撤出數(shù)據(jù)以控制隊列長度。
仲裁器170執(zhí)行一種決定過程,通過該過程,將帶寬分配給動態(tài)信道。這種決定過程與特定的隊列長度無關(guān)。仲裁器170響應(yīng)來自在各個節(jié)點處的帶寬管理器440的帶寬請求,且維持相對它對各個信道的分配的有限歷史記錄。參見圖6,在這個實施例中,在它每接收到三個SONET幀之后,仲裁器170重復(fù)一系列步驟。在另外的實施例中,可以在每一個幀、在固定的時間間隔、或者在其它定期的重復(fù)次數(shù)或者根據(jù)要求,發(fā)起這些步驟。
在步驟610,仲裁器170首先為所有的信道請求解除分配進(jìn)行帶寬解除分配請求。對于帶寬請求是解除分配的每一個信道j,仲裁器170將CCAj遞減AMTj,其中AMTj=MIN(DECRj,CBAj)。這相應(yīng)地減少CCATOT,其為考慮了遞減量的CCAj的和。
當(dāng)仲裁器170為每一個信道修改帶寬分配時,例如進(jìn)行遞減請求和遞增請求,或者從信道搶占帶寬以滿足另一個信道的遞增時,仲裁器為每一個信道維持二進(jìn)制值。如上所述,二進(jìn)制264是在1...B范圍內(nèi)的整數(shù),并且使用用于信道的已分配帶寬(CCA)的時間歷史記錄來進(jìn)行計算。在這個實施例中,B=3,盡管可以使用另外的二進(jìn)制數(shù)目。參見圖16,利用磁滯來計算二進(jìn)制264,以當(dāng)CCA從CIR增加到BR時進(jìn)行遞增,然后當(dāng)CCA從BR回到CIR時進(jìn)行遞減。開始時,信道為二進(jìn)制1。當(dāng)CCA增加超過THR_H(1)時,二進(jìn)制被改變?yōu)?,且當(dāng)CCA增加超過THR_H(2)時,二進(jìn)制改變?yōu)?。當(dāng)CCA減少到低于THR_L(3)時,二進(jìn)制變?yōu)?,且當(dāng)CCA減少到低于THR_L(2)時,二進(jìn)制變?yōu)?。如下所述,通過將二進(jìn)制分配給在特定優(yōu)先權(quán)上的不同信道,當(dāng)仲裁器170確定哪些信道要接收它們的已接收帶寬遞增和要搶占哪些信道時,靠近CIR的信道通常是優(yōu)選的。
繼續(xù)該流程,在步驟620,仲裁器170檢查當(dāng)前的分配CCATOT是否超過當(dāng)前的動態(tài)帶寬DBW。注意,動態(tài)帶寬本身可以隨時間而改變,例如,因為為TDM信道的分配增加而變化,這將相應(yīng)地降低用于動態(tài)信道的剩余分配。同樣,新的動態(tài)信道可以已經(jīng)被CAC模塊180確認(rèn),且已經(jīng)分配它們的確認(rèn)的速率(CIR),從而潛在地導(dǎo)致CCATOT超過DBW,其本身沒有發(fā)生改變。應(yīng)當(dāng)注意,即使TDM分配增加,CAC模塊180總是確保給動態(tài)信道提供至少CIRTOT數(shù)量的帶寬。也就是,帶寬的CIR部分總是可以使用的。
如果當(dāng)前的分配實際上沒有低于當(dāng)前的動態(tài)帶寬DBW,在步驟630,仲裁器170執(zhí)行剝離過程。在這個剝離過程中,仲裁器減少用于一個或多個信道的帶寬分配。首先,按照優(yōu)先權(quán)增加的順序來選擇信道。最高的優(yōu)先權(quán)是1。也就是,首先為在優(yōu)先權(quán)P處的信道減少帶寬分配,然后為優(yōu)先權(quán)P-1進(jìn)行,隨后依次為較高的優(yōu)先權(quán)進(jìn)行。在這個剝離過程中,仲裁器不減少低于它的CIR的任何信道的分配;相反地,它將通??赡艹^CIR的分配CCA減少到等于CIR。在每一個優(yōu)先權(quán)內(nèi),仲裁器首先從在最高的索引二進(jìn)制B的信道中剝離帶寬,然后在較高的索引中進(jìn)行這樣的操作,直到它從二進(jìn)制索引1中剝離帶寬。在每一個二進(jìn)制內(nèi),當(dāng)各信道被分配給它們的最小CIR,仲裁器循環(huán)通過信道i,信道i將它的CCA遞減MIN(DECRi,CBAi),完成剝離二進(jìn)制。當(dāng)仲裁器170已經(jīng)將CCATOT減少到低于DBW,或者,當(dāng)它已經(jīng)將所有的激活信道減少到它們的確認(rèn)速率CIR時,完成了這個剝離過程。
如果確認(rèn)的速率和CIRTOT仍然超過總的動態(tài)帶寬DBW,在將所有的動態(tài)信道減少到它們的確認(rèn)速率之后,剝離過程也包括按照與在剝離過程的第一部分中相同的順序來解除規(guī)定信道。解除規(guī)定涉及到清除規(guī)定的標(biāo)志和將分配CCA設(shè)置為0,從而基本上從帶寬分配過程中去掉解除規(guī)定的信道。然而,如上所述,如果CAC模塊正確工作,這將永遠(yuǎn)不會發(fā)生。
仲裁器170接下來以串聯(lián)的兩個階段來進(jìn)行分配附加帶寬的請求。在步驟640,仲裁器執(zhí)行第一階段,其將脈沖帶寬重新分配到優(yōu)先權(quán)中,并且為帶寬分配請求的一些(不是通常的全部)生成帶寬池。在步驟650,在第二階段中,仲裁器分配帶寬到一些(不是通常的全部)信道,所述信道請求增加它們的帶寬分配。從在第一階段中生成的帶寬池中或者通過以與信道請求增加相同的優(yōu)先權(quán)搶占信道分配來滿足這些請求。
參見圖7,在第一階段中,仲裁器170首先為每一個優(yōu)先權(quán)p計算總的請求增加INC[P](步驟710)。(通常,方括號中的下標(biāo)指與特定優(yōu)先權(quán)相關(guān)的數(shù)量,而沒有方括號的下標(biāo)指與特定動態(tài)信道相關(guān)的數(shù)量。)計算優(yōu)先權(quán)p的總請求作為用于在優(yōu)先權(quán)p上的所有信道i的MIN(INCRi,BRi-CCAi)的和,這些信道i設(shè)置它們的帶寬請求比特,指出請求增加它們的分配。限制信道i對BRi-CCAi的作用反映了這樣的特征仲裁器不會以增加超出用于信道的設(shè)置脈沖速率BRi的帶寬分配的請求為榮。
在步驟720,仲裁器170確定數(shù)量,通過這樣的數(shù)量,每一個優(yōu)先權(quán)分配在它的“公平”共享之上或之下。每一個優(yōu)先權(quán)具有相關(guān)的“權(quán)重”w[p]223。通常,優(yōu)先權(quán)越高(較低的優(yōu)先權(quán)索引p),w[p]的值越大。在這個實施例中,權(quán)重是整數(shù),單位是可用于共享媒體的帶寬分配的最小增量,在這個實施例中單位是SONET列數(shù)。動態(tài)帶寬DBW中,一部分與動態(tài)信道的確認(rèn)速率相關(guān)。余下的部分是脈沖帶寬,仲裁器可以將其自由地分給不同信道上的脈沖帶寬。總的脈沖帶寬表示為TBW=DBW-CIRTOT。每一個優(yōu)先權(quán)具有總的脈沖帶寬的相關(guān)公平共享。此公平共享TBW[p]正比于它的權(quán)重,TBW[p]=TBW*w[p]/sum(w[q])。
用于在優(yōu)先權(quán)p上的信道i的分配CCAi的和表示為CCA[p],用于優(yōu)先權(quán)p上的信道i的確認(rèn)分配CIRi的和表示為CIR[p],且用于優(yōu)先權(quán)的總的脈沖帶寬分配被表示為CBA[p]=CCA[p]-CIR[p]。對于每一個優(yōu)先權(quán)p,如果CAB[p]小于或等于TBW[p],優(yōu)先權(quán)p在它的脈沖帶寬的公平共享之下,且UNDER[p]=TBW[p]-CBA[p]。如果CBA[p]超過TBW[p],優(yōu)先權(quán)p在它的公平共享之上,且OVER[p]=CCA[p]-TBW[p]。參見圖9a,在優(yōu)先權(quán)的公平共享之下的優(yōu)先權(quán)分配被以上面介紹的數(shù)量來圖解表示。圖9b中,對在它的公平共享之上的優(yōu)先權(quán)進(jìn)行類似圖解。
參見圖10,利用在圖9a-b中說明的圖解方法來說明包括4個優(yōu)先權(quán)的例子。注意,對于該例子的目的,用于每一個優(yōu)先權(quán)或者它們的全部優(yōu)先權(quán)的確認(rèn)的速率的特定值時不相關(guān)的。在這個例子中,總的脈沖帶寬TBW為180(以SONET列為單位測量到)。用于優(yōu)先權(quán)w[1,...,4]的權(quán)重分別是4,3,2,和1,分別產(chǎn)生具有72,54,36和18的脈沖帶寬TBW[1,...,4]的公平共享。當(dāng)前的脈沖分配CBA[1,...,4]分別為77,59,39和0。因此,優(yōu)先權(quán)1,2和3用于它們的脈沖帶寬的公平共享之上OVER[1]=5,UNDER[1]=0,OVER[2]=5,UNDER[2]=0,和OVER[3]=3,UNDER[3]=0,而優(yōu)先權(quán)4用于它的公平共享之下OVER[4]=0,UNDER[4]=18。這個例子涉及到仲裁器分配過程的單次迭代,其中,用于每一個優(yōu)先權(quán)INC[1,...,4]的總的請求增加量分別是1,2,3和5。注意,圖10反映了已經(jīng)進(jìn)行了初始解除分配(圖6的步驟610)后的情形。在這個例子中,總的脈沖分配CBATOT=175。由于總的脈沖分配TBW是180,存在沒有被分配給任何信道的未使用的容量5。
總的優(yōu)先權(quán)在它們的公平共享之上,它們和未使用的帶寬形成網(wǎng)狀的可用脈沖帶寬TOTNABW。通常,網(wǎng)狀可用脈沖帶寬形成帶寬池,其用于滿足請求增加帶寬分配。
在步驟730(圖7),仲裁器170計算最小的閾值數(shù)量,通過該閾值數(shù)量,在帶寬分配過程中增加用于每一個優(yōu)先權(quán)的總的已分配帶寬。參見圖11,這是通過用于每一個優(yōu)先權(quán)的圖解來進(jìn)行說明。對于低于它的脈沖帶寬的公平共享的每一個優(yōu)先權(quán),用虛線來說明UNDER[P]。以條狀(bar)來說明總的已請求的帶寬INC[P]。對于每一個優(yōu)先權(quán),用于優(yōu)先權(quán)的最小增加量INCTH[P]被計算作為MIN(INC[P],UNDER[P]),也被以條狀進(jìn)行說明。在這個步驟中,INCTH[1,...,4]的結(jié)果值分別是0,0,0和5。由于優(yōu)先權(quán)1,2和3都已經(jīng)超過了它的公平共享,它們的最小增加量為0。用于優(yōu)先權(quán)4的最小增加量被限制為優(yōu)先權(quán)請求的增加量。注意,這些最小閾值的和,在這種情況下為5,將小于或等于網(wǎng)狀可用脈沖帶寬TOTNABW=18。
在步驟740(圖7),仲裁器170增加數(shù)量,通過該數(shù)量,每一個優(yōu)先權(quán)將利用加權(quán)的方法來接收增加的分配。通常,用于在優(yōu)先權(quán)處的增量分配的網(wǎng)狀可用帶寬NAB[P]是最小的增量INCTH[P]加上通常正比于WP的數(shù)量,不超過INC[P]。在這個實施例中,仲裁器170為每一個優(yōu)先權(quán)p初始化NABW[P]=w[P],然后,重復(fù)地循環(huán)通過將NABW[P]將其增加AMT,其中AMT=MIN(w[P],left),其中l(wèi)eft=MIN((NABW[p]-INCTH[P]),(TOTNABW-NABW[P]的和)),同時left>0。一旦優(yōu)先權(quán)p的NABW[P]到達(dá)它的INCTH[P],它停止增加優(yōu)先權(quán)。在所有的優(yōu)先權(quán)已經(jīng)到達(dá)它們的INCTH[P]后,仲裁器170反復(fù)地循環(huán)通過優(yōu)先權(quán),將NABW[P]增加AMT,其中AMT=MIN(w[P],left),其中l(wèi)eft=((NABW[P]-INC[P]),(TOTNABW-NABW[P]的和)),而left>0。圖11說明用于圖10中介紹的簡單例子的步驟,得到ActualNABW,NABW[P]的和為11,各個NABW[1,...,4]分別是1,2,3和5。關(guān)于ActualNABW,從未使用的帶寬UNSUED=5來滿足一部分,而余下的部分在稱為“ripping”的過程中,來自高于它們的公平共享的優(yōu)先權(quán)。具體地,可以從這些高于共享優(yōu)先權(quán)中剝離出的總數(shù)量是TotalRBW=ActualNABW-UNUSED=6。
在重新分配脈沖帶寬之前,仲裁器為每一個優(yōu)先權(quán)k進(jìn)行確定每一個優(yōu)先權(quán)需要的TotalRBW的部分RBWNeeded[K](步驟750)。參見圖12,這是以與NABW相同的方式來確定的,除了使用TotalRBW而不是TOTNABW之外。在這個例子中,6單位的容量可以使用。只有優(yōu)先權(quán)4具有大于0的INCTH,在這種情況下是5。因此,RBWNeeded[4]首先增加到5。然后,只有具有TotalRBW=6的一個單位容量可用,這樣得到RBWNeeded[1]=1。這就完成了這樣的過程,分別產(chǎn)生具有1,0,0和5的RBWNeeded[1,...,4]。
在步驟760(圖7),仲裁器170形成帶寬池,首先開始于未使用的帶寬,然后從OVER[P]>0的優(yōu)先權(quán)p剝離出總的TotalRBW,在優(yōu)先權(quán)P處開始,直到滿足TotalRBW。從每一個優(yōu)先權(quán)剝離出的數(shù)量是BWripped[P]。參見圖13,在這個例子中,開始于p=4,OVER[4]=0處,因此沒有要剝離的帶寬。在p=3,OVER[3]=3處,剝離BWripped[3]=3單位。在p=2,OVER[2]=5,僅需要多于3個單位,因此BWripped[2]=3。由于已經(jīng)滿足TotalRBW,不需要考慮優(yōu)先權(quán)p=1,因此BWripped[1]=0。在這個點上,通過從每一個優(yōu)先權(quán)中剝離BWripped[P]單位,仲裁器170已經(jīng)生成具有TotalRBW+UNUSED=11單位的池。在隨后的步驟中,優(yōu)先權(quán)1...4希望分別從池中接收1,2,3和5單位。
仲裁器通過遞減地將信道的帶寬分配從CCAi減少到CIRi,開始于在最高索引二進(jìn)制的信道,且逐步進(jìn)行到二進(jìn)制1,直到已經(jīng)滿足BWripped[p]。在每一個優(yōu)先權(quán)處,該過程類似于上面介紹的“剝離”過程,在那種情況下,初始分配大于總的動態(tài)帶寬。這完成了仲裁器帶寬分配過程的第一階段。在圖14中,對于該例子,用實線說明剝離后的脈沖帶寬分配,而在剝離之前的脈沖帶寬分配被用帶陰影線的區(qū)域線來說明。此外,通過從實線條狀延伸出來的長度NABW[p]的條狀來說明在隨后的步驟中增加的每一個優(yōu)先權(quán)的分配的總數(shù)量。用從前面未使用的帶寬中的5個單位和從優(yōu)先權(quán)2和3中的各選出3個單位來形成大小為11的帶寬池。
回過來參見圖6,仲裁器170完成第二階段II中的重新分配過程(步驟650),其中,其從池中分配帶寬請求,在相同的優(yōu)先權(quán)中,通過搶占某些信道的脈沖帶寬以滿足用于其它信道的帶寬增加量。
參見圖8,對特定信道的帶寬請求的分配通過在優(yōu)先權(quán)上進(jìn)行循環(huán)來執(zhí)行(線810)。這個循環(huán)的順序是不重要的,因為每一個優(yōu)先權(quán)中的分配被獨立于在已經(jīng)形成帶寬池的這個點上的其它優(yōu)先權(quán)來執(zhí)行。
在一個優(yōu)先權(quán)內(nèi),根據(jù)信道的二進(jìn)制依次地考慮已經(jīng)請求增加帶寬的信道。首先考慮在最低二進(jìn)制索引二進(jìn)制1的信道,然后對二進(jìn)制2進(jìn)行操作,直到二進(jìn)制B。
被考慮的信道i可以接收最小的值MIN(INCRi,BRi-CCAi),導(dǎo)致它的最終帶寬分配不超過BRi。第一NABW[p]的增量直接來自在第一階段I中生成的帶寬池。一旦耗盡池的優(yōu)先權(quán)共享,在稱為“搶占”過程中,可通過減少在相同優(yōu)先權(quán)上的其它信道的脈沖分配來滿足增加請求。首先搶占在二進(jìn)制B處的信道,當(dāng)來自二進(jìn)制B的可用搶占被耗盡時,搶占二進(jìn)制B-1,依次類推。在圖5中說明了這個過程。以從池中來滿足它的增量INCRi來說明信道i。以通過搶占二進(jìn)制3中的信道來滿足它的增加量來說明信道j。以從相同的二進(jìn)制中的信道滿足它的增加量來說明信道k。
對于每一個二進(jìn)制b,在每一個優(yōu)先權(quán)p處,仲裁器170被配置以搶占每一個信道的可置位數(shù)(MAX_PREEMPT[p,b])225多次,以滿足用于在較低索引二進(jìn)制的信道的增加量。可將該可置位數(shù)設(shè)為0,以一個二進(jìn)制被搶占。一旦搶占過程已經(jīng)循環(huán)通過在該二進(jìn)制上的信道設(shè)置的次數(shù),下一個較低二進(jìn)制被用于搶占。此外,對于在每一個優(yōu)先權(quán)處的每一個二進(jìn)制,有一個可置位的參數(shù)(PREEMPT_ENABLE[p,b])226,其確定在二進(jìn)制中的信道是否可以搶占在位于相同優(yōu)先權(quán)內(nèi)的其它二進(jìn)制的信道。
當(dāng)在已經(jīng)請求增加量的信道上迭代時,在一些點上,通常在具有從中搶占帶寬的較高二進(jìn)制索引的二進(jìn)制中沒有任何信道。搶占的下一階段包括當(dāng)信道請求增加時,從在與請求增加量的信道相同的優(yōu)先權(quán)和二進(jìn)制上的其它信道中搶占帶寬。再看圖2中所示,用于每一個信道的規(guī)定記錄220包括公平容量分配(FCA)258。該帶寬數(shù)量位于用于該信道的CIR到BR范圍內(nèi)。用于在相同二進(jìn)制內(nèi)的搶占的一般規(guī)則是用于CCAi<FCAi的信道i只可以從在相同的二進(jìn)制中的其它信道j搶占帶寬,如果它們的CCAj>FCAj。CCAi大于FCAj的信道可以從滿足兩個條件的的相同二進(jìn)制中的其它信道j中搶占,兩個條件是第一,它們的CCAj也大于各自的FCAj,第二,CCAi小于CCAj。
一旦已經(jīng)執(zhí)行了在相同二進(jìn)制內(nèi)的所有可能的搶占,已經(jīng)請求增加帶寬的相同優(yōu)先權(quán)內(nèi)的余下信道無法讓人滿意它們的請求,因為沒有從其中搶占帶寬的更多信道。
如下面的詳述的第一實施例的說明,這種管理共享媒體的方法可以應(yīng)用到其它的不一定包括基于SONET的通信的實施例中。例如,具有帶寬管理方法的其它實施例可以應(yīng)用到諸如共享的訪問總線、共享的有線網(wǎng)絡(luò)鏈路、和共享的無線信道的共享媒體中。
在上面介紹的實施例中,仲裁器170位于網(wǎng)絡(luò)中的節(jié)點上,而帶寬改變的請求和授權(quán)被利用與數(shù)據(jù)本身相同的機(jī)制來傳輸。在另外的實施例中,仲裁器沒有使用用于數(shù)據(jù)的共享媒體來與節(jié)點通信,而且也不必一定位于網(wǎng)絡(luò)中的節(jié)點上。
在另外的實施例中,由仲裁器分配了帶寬的每一個“信道”不必一定對應(yīng)單個數(shù)據(jù)流,該數(shù)據(jù)流在節(jié)點的一個入站信道上進(jìn)來,在另一個節(jié)點的出站信道上退出。其它的例子如下所述。每一個信道對應(yīng)在多個不同節(jié)點退出的廣播或點對多點通信。所述信道可以是子信道的集合。這種子信道可以共享公共的始發(fā)和目的節(jié)點。這種子信道也可以由諸如服務(wù)特定客戶的其它特征來進(jìn)行分組。在多點對點和多點對多點通信中,信道也可以始發(fā)于多個節(jié)點。
在上面介紹的實施例中,用硬件來實現(xiàn)仲裁器170。在另外的實施例中,可以用軟件來實現(xiàn)仲裁器170,軟件存儲在仲裁器節(jié)點上的計算機(jī)可讀媒體中,且使處理器執(zhí)行上面介紹的帶寬分配過程的指令。另外的實施例使用一些而不是全部帶寬分配方法的特征。在不同優(yōu)先權(quán)中分配帶寬的方法可以獨立于二進(jìn)制(binning)信道的方法來分配和搶占在特定優(yōu)先權(quán)的帶寬。而且,上面介紹的實施例可以有效地使用單個二進(jìn)制(B=1),不使用二進(jìn)制方法。類似地,另外的實施例可以使用單一優(yōu)先權(quán)(P=1),而仍然利用基于二進(jìn)制的方法來確定哪些信道將接收帶寬增加。
應(yīng)當(dāng)理解,上面的說明是說明性的,而不限制本發(fā)明的范圍,本發(fā)明的范圍由權(quán)利要求書限定。其它的實施例落在權(quán)利要求書的范圍內(nèi)。
權(quán)利要求
1.一種管理共享媒體上的通信的方法,共享媒體具有由多個信道共享的通信容量,該方法包括允許各通信信道在共享媒體上通信,包括為每一個信道分配一個優(yōu)選權(quán);對于每一個通信信道,維持?jǐn)?shù)據(jù)速率分配,從而用于各信道的數(shù)據(jù)速率分配的組合不超過共享媒體的通信容量;和根據(jù)用于每一個通信信道的數(shù)據(jù)速率分配,傳送通信信道的數(shù)據(jù),包括對于每一個通信信道,根據(jù)分配給通信信道的數(shù)據(jù)速率來以限定的速率在共享媒體上接收數(shù)據(jù)和發(fā)射已接收的數(shù)據(jù);其中,維持用于通信信道的數(shù)據(jù)速率分配包括監(jiān)視在通信信道上的通信,利用監(jiān)視的通信,產(chǎn)生請求以改變?yōu)楦鱾€通信信道的數(shù)據(jù)速率分配,其中,請求為每一個通信信道改變數(shù)據(jù)速率分配包括請求為所述信道增加分配的數(shù)據(jù)速率,和請求為所述信道降低分配的數(shù)據(jù)速率,和利用接收到的請求反復(fù)地重新計算數(shù)據(jù)速率分配。
2.根據(jù)權(quán)利要求1的方法,其中,重新計算數(shù)據(jù)速率分配包括為通信信道的每一個優(yōu)先權(quán),確定對共享媒體的通信容量的共享,根據(jù)用于所述優(yōu)先權(quán)的已分配共享,為在每一個優(yōu)先權(quán)上的通信信道修改數(shù)據(jù)速率分配;和對于每一個優(yōu)先權(quán),根據(jù)所述請求和用于所述優(yōu)先權(quán)的已分配共享,處理在所述優(yōu)先權(quán)上的通信信道的增加數(shù)據(jù)速率分配的請求。
3.根據(jù)權(quán)利要求1或2的方法,其中,為每一個通信信道的數(shù)據(jù)速率分配包括確認(rèn)的數(shù)據(jù)速率和分配的數(shù)據(jù)速率,其中,維持分配的數(shù)據(jù)速率等于或超過確認(rèn)的數(shù)據(jù)速率,和,在重新計算數(shù)據(jù)速率分配中,為每一個優(yōu)先權(quán)確定對共享媒體的通信容量的共享包括確定超過共享媒體的通信容量的總的共享,所述共享媒體超過各通信信道的總的確認(rèn)的數(shù)據(jù)速率。
4.根據(jù)權(quán)利要求3的方法,重新計算數(shù)據(jù)速率進(jìn)一步包括為每一個優(yōu)先權(quán)上的通信信道修改數(shù)據(jù)速率分配包括生成未分配容量的池;并且,處理通信信道的增加數(shù)據(jù)速率分配的請求包括將未分配的容量的池應(yīng)用到所述信道上。
5.根據(jù)權(quán)利要求4的方法,處理在每一個優(yōu)先權(quán)上的通信信道的增加數(shù)據(jù)速率分配的請求進(jìn)一步包括降低在相同優(yōu)先權(quán)上的另一個通信信道的數(shù)據(jù)速率,并且將所述數(shù)據(jù)速率的降低應(yīng)用到所述增加的請求上。
6.根據(jù)權(quán)利要求1到5中任意之一的方法,其中,重新計算數(shù)據(jù)速率分配包括部分地根據(jù)各個通信信道的過去的數(shù)據(jù)速率分配來對在每一個優(yōu)先權(quán)上的通信信道進(jìn)行排序,并且降低在相同優(yōu)先權(quán)上的另一個通信信道的數(shù)據(jù)速率包括根據(jù)所述部分排序來選擇另一個通信信道。
7.根據(jù)權(quán)利要求1到6中任意之一的方法,其中,為通信信道監(jiān)視數(shù)據(jù)速率包括監(jiān)視接受用于在共享媒體上掛起傳輸?shù)男诺赖臄?shù)據(jù)隊列大小,并且利用監(jiān)視的隊列大小來產(chǎn)生改變所述信道的數(shù)據(jù)速率分配的請求。
8.根據(jù)權(quán)利要求7的方法,其中,為通信信道監(jiān)視數(shù)據(jù)速率進(jìn)一步包括計算監(jiān)視的數(shù)據(jù)隊列大小的時間平均值。
9.根據(jù)權(quán)利要求1到8中任意之一的方法,其中,傳送用于通信信道的數(shù)據(jù)進(jìn)一步包括應(yīng)用隨機(jī)早期撤出(RED)方法,其中,當(dāng)各個通信信道的數(shù)據(jù)速率超過它們的已分配的數(shù)據(jù)速率時,丟棄接收的數(shù)據(jù)。
10.根據(jù)權(quán)利要求1到9中任意之一的方法,其中,為每一個信道維持?jǐn)?shù)據(jù)速率分配包括為每一個信道維持確認(rèn)的數(shù)據(jù)速率,其中,重新計算數(shù)據(jù)速率分配包括至少將確認(rèn)的數(shù)據(jù)速率提供給每一個信道。
11.根據(jù)權(quán)利要求1到10中任意之一的方法,其中,每一個信道維持?jǐn)?shù)據(jù)速率分配包括維持對用于每一個信道的數(shù)據(jù)速率的限制,其中,重新計算數(shù)據(jù)速率包括應(yīng)用對用于每一個信道的數(shù)據(jù)速率的限制。
12.根據(jù)權(quán)利要求1到11中任意之一的方法,其中,共享通信媒體的共享通信容量包括在SONET網(wǎng)絡(luò)上的容量,通信信道在SONET網(wǎng)絡(luò)的相應(yīng)節(jié)點上進(jìn)入SONET網(wǎng)絡(luò)。
13.根據(jù)權(quán)利要求12的方法,其中,為各個通信信道維持?jǐn)?shù)據(jù)速率分配包括維持將一系列的數(shù)據(jù)幀中的每一幀的部分分配給每一個通信信道。
14.根據(jù)權(quán)利要求13的方法,其中,為各個通信信道修改數(shù)據(jù)速率分配包括對將一系列的數(shù)據(jù)幀中的每一幀的部分分配給每一個通信信道進(jìn)行修改。
15.根據(jù)權(quán)利要求14的方法,其中,將請求傳送到仲裁器包括將用于SONET環(huán)上的節(jié)點的所述請求傳送到仲裁器節(jié)點,且分布重新計算的數(shù)據(jù)速率分配包括將所述分配從仲裁器節(jié)點傳送到SONET環(huán)上的其它節(jié)點。
16.根據(jù)權(quán)利要求12的方法,其中,維持用于通信信道的已分配的數(shù)據(jù)速率包括確定在可用于通信信道的SONET網(wǎng)絡(luò)上傳送的一系列幀的每一幀的總數(shù)量。
17.根據(jù)權(quán)利要求16的方法,其中,確定一系列幀的每一幀的總數(shù)量包括確定分配給固定速率通信信道的每一個幀的數(shù)量。
18.一種通信系統(tǒng),該系統(tǒng)包括具有通信容量的共享媒體;連接到共享媒體的多個通信節(jié)點,所述共享媒體被配置以通過共享媒體在各節(jié)點之間為多個通信信道傳送數(shù)據(jù);和仲裁器,其連接到各通信節(jié)點,且被配置來為每一個通信信道維持?jǐn)?shù)據(jù)速率分配,使得如果共享媒體將所述數(shù)據(jù)速率分配傳送給通信節(jié)點,信道的數(shù)據(jù)速率分配的組合不超過通信容量;其中,每一個通信節(jié)點被配置以為一個或多個通信信道接收數(shù)據(jù),并且根據(jù)用于那些通信信道的數(shù)據(jù)速率分配來通過共享媒體傳送數(shù)據(jù),且每一個通信節(jié)點被進(jìn)一步配置來傳送請求,以根據(jù)監(jiān)視每一個通信信道上的通信來改變各個通信信道的數(shù)據(jù)速率分配;其中,所述仲裁器被進(jìn)一步配置以為多個優(yōu)先權(quán)中的每一個確定共享的通信容量,且根據(jù)為每一個優(yōu)先權(quán)確定的共享來維持?jǐn)?shù)據(jù)速率分配和維持改變從通信節(jié)點傳來的數(shù)據(jù)速率分配的請求。
19.根據(jù)權(quán)利要求18的通信系統(tǒng),其中,所述共享媒體可包括SONET通信系統(tǒng),并且所述仲裁器被配置以維持將每一個SONET幀的部分分配到每一個通信信道。
全文摘要
本發(fā)明公開了一種用于管理在共享媒體(例如,SONET環(huán))上的動態(tài)業(yè)務(wù)的方法,其使用與連接到媒體的站進(jìn)行通信的中央仲裁器。每一個站請求改變用于在該站進(jìn)入媒體的動態(tài)業(yè)務(wù)的帶寬,也執(zhí)行與它的改變帶寬的請求一致的避免擁塞算法。中央仲裁器響應(yīng)來自站的請求,提供在共享媒體上可用的帶寬的公平分配。
文檔編號H04L12/423GK1593040SQ01818520
公開日2005年3月9日 申請日期2001年11月2日 優(yōu)先權(quán)日2000年11月2日
發(fā)明者帕塔比拉曼·克里希納, 葉海亞·埃爾卡查, 蘇里亞·庫馬爾·科瓦里, 拉姆吉·拉加萬, 查爾姆W·博伊爾 申請人:科里奧利斯網(wǎng)絡(luò)有限公司