用于加權(quán)公平隊(duì)列的方法與系統(tǒng)的制作方法
【專利摘要】用于在通信網(wǎng)絡(luò)中調(diào)度傳輸數(shù)據(jù)的系統(tǒng),包括信用度分配器和傳輸選擇器。該通信網(wǎng)絡(luò)包括多個(gè)子類。該傳輸選擇器通信地連接到信用度分配器。該信用度分配器操作來為合格的子類和負(fù)信用度計(jì)數(shù)的子類中的至少一個(gè)分配信用度。每個(gè)信用度可收回,用于數(shù)據(jù)傳輸。信用度分配器進(jìn)一步操作來用分配的信用度之比影響子類間的公平,保存表示未分配的可用信用度總量的信用度結(jié)余,以及從該信用度結(jié)余中扣除分配的信用度。傳輸選擇器操作來選擇用于退出隊(duì)列的至少一個(gè)合格和允許的子類,所述合格和允許的子類的偏向選擇是具有正信用度的合格和允許的子類,以及將信用度增加到與選擇用于退出隊(duì)列的數(shù)據(jù)量相對應(yīng)的信用度結(jié)余。
【專利說明】用于加權(quán)公平隊(duì)列的方法與系統(tǒng)
[0001]本申請是申請日為2009年10月13日、國際申請?zhí)枮镻CT/CA2009/001450、國家申請?zhí)枮?00980150306.2、發(fā)明名稱為“用于加權(quán)公平隊(duì)列的方法與系統(tǒng)”的發(fā)明專利申請的
分案申請。
【技術(shù)領(lǐng)域】
[0002]本發(fā)明大體涉及在速率調(diào)整業(yè)務(wù)狀態(tài)中用于加權(quán)公平隊(duì)列的方法與系統(tǒng),更具體地涉及為基于幀的業(yè)務(wù)提供加權(quán)公平隊(duì)列的方法與系統(tǒng),其允許加權(quán)公平隊(duì)列調(diào)度器內(nèi)對子類競爭的速率限制與速率保證的結(jié)合。
【背景技術(shù)】
[0003]每個(gè)傳輸數(shù)據(jù)分組的計(jì)算機(jī)和通信網(wǎng)絡(luò)必須實(shí)施某種形式的調(diào)度以確保數(shù)據(jù)業(yè)務(wù)以特定速率通過該網(wǎng)絡(luò)進(jìn)行傳輸。在任何已知的時(shí)刻,網(wǎng)絡(luò)可能具有包含等待通過該網(wǎng)絡(luò)傳輸?shù)臄?shù)據(jù)隊(duì)列的數(shù)十萬或甚至百萬個(gè)連接點(diǎn)。需要某種形式的調(diào)度來使得網(wǎng)絡(luò)組件以公平及時(shí)的方式處理這些數(shù)據(jù)隊(duì)列。
[0004]一般,調(diào)度器通過與數(shù)據(jù)隊(duì)列相互作用來調(diào)度通過網(wǎng)絡(luò)的數(shù)據(jù)傳輸。調(diào)度器可以是層級的,其中所選子類還可以是調(diào)度器,但必須從其子類中選擇。該調(diào)度器確定從合格數(shù)據(jù)隊(duì)列或其它含有可用數(shù)據(jù)的合格子類調(diào)度器處數(shù)據(jù)傳輸?shù)拇涡?。通常,單?dú)的處理將數(shù)據(jù)排列到隊(duì)列中,但是該單獨(dú)的處理以聲明數(shù)據(jù)可用或子類合格的方式連接到調(diào)度。調(diào)度器定期地或基于請求地,選擇帶有可用數(shù)據(jù)的子類,以從該子類處傳輸數(shù)據(jù)。層級調(diào)度器設(shè)立從所選擇隊(duì)列處的數(shù)據(jù)的傳輸。
[0005]圖1示出包括調(diào)度處理12的現(xiàn)有技術(shù)的數(shù)據(jù)系統(tǒng)10,其中數(shù)據(jù)路徑包括一系列數(shù)據(jù)隊(duì)列14a、14b、14c、14d和14e (共同被稱為數(shù)據(jù)隊(duì)列14)和復(fù)用(multiplexers) 16a、16b (共同被稱為復(fù)用16)。盡管復(fù)用在圖1中顯示為物理單元,但是在一般可擴(kuò)展的實(shí)施中復(fù)用物理上并不存在,而是隱含在調(diào)度器對用于傳輸?shù)臄?shù)據(jù)隊(duì)列14的選擇中。調(diào)度處理12可從任何具有可用數(shù)據(jù)(“DA”)的數(shù)據(jù)隊(duì)列14中進(jìn)行選擇;然而,由于實(shí)施其分層的本質(zhì),調(diào)度處理12必須請求子類調(diào)度器18從數(shù)據(jù)隊(duì)列14d和數(shù)據(jù)隊(duì)列14e (附圖有錯,附圖標(biāo)記標(biāo)為14a)中進(jìn)行選擇。則子類調(diào)度器18選擇合適的數(shù)據(jù)隊(duì)列14d、He。在該示例中,調(diào)度處理12可直接選擇數(shù)據(jù)隊(duì)列14a、14b和14c。
[0006]授權(quán)給Lyon的專利號為7,373,420的美國專利(以下稱為“ ‘420專利”)公開了一種現(xiàn)有技術(shù)的加權(quán)公平隊(duì)列處理,在這里引用參考該專利的全部內(nèi)容。圖2闡明了 ‘420專利中的加權(quán)公平隊(duì)列處理,其包括反向信用度管理系統(tǒng),使用分配給每個(gè)數(shù)據(jù)隊(duì)列的權(quán)重來確定給予哪個(gè)隊(duì)列信用度。總的說來,具有反向信用度管理的加權(quán)公平隊(duì)列(“WFQ-1CM”)調(diào)度器20包括兩個(gè)附加處理:WFQ信用度分配器22和傳輸選擇器24。傳輸選擇器24 —般以輪轉(zhuǎn)方式進(jìn)行操作,其中每個(gè)具有可用數(shù)據(jù)和正信用度的子類在傳輸數(shù)據(jù)處輪到。
[0007]信用度處理22將信用度分配給子類,這些子類的當(dāng)前信用度小于其可用數(shù)據(jù)量(“ADA”)。每一子類在任一已知時(shí)刻累計(jì)的信用度量被記錄在子類信用度狀態(tài)數(shù)據(jù)庫26中。每一子類的信用度量絕不會超出該子類的ADA。在任何時(shí)候,如果子類具有小于其ADA的信用度,子類就被包括在爭取更多信用度的信用度分配器22中。
[0008]傳輸選擇器24選擇具有正信用度計(jì)數(shù)的子類來傳輸數(shù)據(jù)。當(dāng)子類傳輸數(shù)據(jù)時(shí),在子類信用度狀態(tài)數(shù)據(jù)庫26中其當(dāng)前信用度量中就會減少信用度,并且信用度被返回到信用度分配器22用于再分配給其它ADA大于信用度量的子類。信用度分配器22以子類消耗信用度相同的速率來分配信用度(也就是,沒有余額),因此,WFQ-1CM調(diào)度器20的關(guān)鍵條件是,無論何時(shí)系統(tǒng)都需要精確地了解有多少數(shù)據(jù)可用于從每個(gè)子類隨時(shí)的傳輸。該條件防止當(dāng)子類具有可用數(shù)據(jù)時(shí)而被視為自身不合格,從而使得基于速率來確定合格的重復(fù)處理的實(shí)施實(shí)際上是不可能的。從根本上看,速率限制能夠迫使具有數(shù)據(jù)的子類停止傳輸或不具有原調(diào)度器可用的數(shù)據(jù)。該限制在層級調(diào)度器上還有很重的負(fù)擔(dān),其中ADA包括有效地連接調(diào)度級間的調(diào)度處理的所有派生隊(duì)列,無論涉及多少層級。
[0009]因此,需要的是一種用于含反向信用度管理的加權(quán)公平隊(duì)列的方法、系統(tǒng)和裝置,該反向信用度管理可在速率調(diào)整業(yè)務(wù)狀態(tài)下使用。
【發(fā)明內(nèi)容】
[0010]本發(fā)明有利地提供一種用于基于子類合格及信用度分配而在通信網(wǎng)絡(luò)中調(diào)度傳輸數(shù)據(jù)的方法與系統(tǒng)。通常,具有反向信用度管理的加權(quán)公平隊(duì)列的調(diào)度器可在速率型傳輸環(huán)境中使用,從而允許在加權(quán)公平隊(duì)列調(diào)度器內(nèi)競爭的子類的速率限制與速率保證的結(jié)
口 O
[0011]根據(jù)本發(fā)明的一方面,用于在通信網(wǎng)絡(luò)中調(diào)度傳輸數(shù)據(jù)的系統(tǒng)包括信用度分配器和傳輸選擇器。所述通信網(wǎng)絡(luò)包括多個(gè)子類。所述傳輸選擇器通信地連接到信用度分配器。所述信用度分配器操作以將信用度分配給合格子類與含有負(fù)信用度計(jì)數(shù)的子類中的至少一個(gè)。每個(gè)信用度可收回用于數(shù)據(jù)傳輸。所述信用度分配器進(jìn)一步操作來保持表示未分配的可用信用度總量的信用度結(jié)余,用分配的信用度之比影響子類間的公平,以及從該信用度結(jié)余中扣除已分配的信用度。所述傳輸選擇器操作來選擇用于退出隊(duì)列的至少一個(gè)合格和允許的子類,所述合格和允許的子類的偏向選擇是具有正信用度的合格和允許的子類,以及將信用度增加到與選擇用于退出隊(duì)列的數(shù)據(jù)量相對應(yīng)的信用度結(jié)余。
[0012]根據(jù)本發(fā)明的另一方面,提供用于在通信網(wǎng)絡(luò)中為子類分配信用度的方法。每個(gè)信用度可收回用于數(shù)據(jù)傳輸量。信用度被分配到合格允許子類和帶有負(fù)信用度計(jì)數(shù)子類中的至少一個(gè)。表示未分配的可用信用度總量的信用度結(jié)余被保持,且分配的信用度從該信用度結(jié)余中扣除。
[0013]根據(jù)本發(fā)明的另一方面,提供用于在通信網(wǎng)絡(luò)中信用度調(diào)度傳輸數(shù)據(jù)的方法。所述通信網(wǎng)絡(luò)包括多個(gè)子類。設(shè)立多個(gè)傳輸控制隊(duì)列用于退出隊(duì)列。每個(gè)傳輸控制隊(duì)列能夠包含相對應(yīng)的合格子類的至少一個(gè)識別器,并且具有根據(jù)相對應(yīng)的信用度計(jì)數(shù)需求限定的優(yōu)先級。每個(gè)合格子類被分派到多個(gè)傳輸控制隊(duì)列中的一個(gè)。每個(gè)合格子類具有滿足其分派的傳輸控制隊(duì)列的信用度計(jì)數(shù)需求的信用度狀態(tài)。根據(jù)與該合格子類相對應(yīng)的傳輸控制隊(duì)列的優(yōu)先級,至少一個(gè)合格子類被選擇用于退出隊(duì)列。與退出隊(duì)列的數(shù)據(jù)量相對應(yīng)的信用度被增加到該信用度結(jié)余。每個(gè)合格和允許的子類在傳輸控制隊(duì)列中的一個(gè)中被表示?!緦@綀D】
【附圖說明】
[0014]本發(fā)明的更完整的理解以及伴隨的優(yōu)點(diǎn)和其中的特征,通過參考下述的描述并結(jié)合附圖將會更容易理解,其中:
[0015]圖1是示例現(xiàn)有技術(shù)數(shù)據(jù)調(diào)度處理的框圖;
[0016]圖2是具有反向信用度管理的示例現(xiàn)有技術(shù)加權(quán)公平隊(duì)列數(shù)據(jù)調(diào)度處理的框圖;
[0017]圖3是具有根據(jù)本發(fā)明原理構(gòu)成的反向信用度管理的示例加權(quán)公平隊(duì)列數(shù)據(jù)調(diào)度處理的框圖;
[0018]圖4是根據(jù)本發(fā)明原理構(gòu)成的示例信用度分配器的框圖;
[0019]圖5是根據(jù)本發(fā)明原理的示例信用度分配器處理的流程圖;
[0020]圖6是根據(jù)本發(fā)明原理在響應(yīng)合格轉(zhuǎn)換時(shí),示例信用度處理的流程圖;
[0021]圖7是高加權(quán)子類的示例現(xiàn)有技術(shù)一維加權(quán)交錯輪轉(zhuǎn)循環(huán)輪轉(zhuǎn)調(diào)度處理的框圖;
[0022]圖8是根據(jù)本發(fā)明原理構(gòu)成的高加權(quán)子類的示例二維加權(quán)交錯輪轉(zhuǎn)循環(huán)輪轉(zhuǎn)調(diào)度處理的框圖;
[0023]圖9是具有根據(jù)本發(fā)明原理構(gòu)成的四個(gè)優(yōu)先級的示例二維加權(quán)交錯輪轉(zhuǎn)循環(huán)輪轉(zhuǎn)調(diào)度處理的框圖;
[0024]圖10是具有根據(jù)本發(fā)明原理構(gòu)成的示例基本傳輸選擇器的框圖;
[0025]圖11是具有根據(jù)本發(fā)明原理構(gòu)成的示例改進(jìn)的傳輸選擇器的框圖;
[0026]圖12是根據(jù)本發(fā)明原理的加權(quán)公平隊(duì)列子類的示例傳輸選擇處理的流程圖;和
[0027]圖13是根據(jù)本發(fā)明原理在響應(yīng)增加的信用度和合格轉(zhuǎn)換時(shí),示例傳輸選擇處理的流程圖。
【具體實(shí)施方式】
[0028]在詳細(xì)描述根據(jù)本發(fā)明的示例實(shí)施例之前,應(yīng)該注意的是,實(shí)施例主要涉及設(shè)備部件和處理步驟的結(jié)合,所述設(shè)備部件和處理步驟涉及實(shí)現(xiàn)一種用于為基于幀的傳輸提供加權(quán)公平隊(duì)列的系統(tǒng)和方法,其允許對在加權(quán)公平隊(duì)列調(diào)度器內(nèi)的子類速率限制和速率保證的結(jié)合。相應(yīng)地,系統(tǒng)和方法的組件在恰當(dāng)?shù)牡胤酵ㄟ^附圖中的常規(guī)符號表示,為了不使那些對能受益于此處描述的本領(lǐng)域的普通技術(shù)人員來說明顯清楚的細(xì)節(jié)影響本發(fā)明,只顯示了那些對恰當(dāng)理解本發(fā)明的實(shí)施例有關(guān)的具體細(xì)節(jié)。
[0029]如這里使用的,相關(guān)術(shù)語,諸如“第一”和“第二”、“頂部”和“底部”等等,可能僅僅用來將一個(gè)實(shí)體或元件從另一個(gè)實(shí)體或元件中區(qū)別開來,而不必然地需求或暗指這些實(shí)體或元件之間的任何物理或邏輯關(guān)系或順序。“根”結(jié)點(diǎn)是指加權(quán)公平隊(duì)列樹中的最高級結(jié)點(diǎn),或?qū)蛹壖訖?quán)公平隊(duì)列樹的分支中的最高結(jié)點(diǎn)。特定結(jié)點(diǎn)的“派生”是任何低于提及結(jié)點(diǎn)級別的結(jié)點(diǎn),提及結(jié)點(diǎn)的衍生可追溯回該提及結(jié)點(diǎn)。類似地,特定結(jié)點(diǎn)的“父類”是任何高于提及結(jié)點(diǎn)級別的結(jié)點(diǎn),提及結(jié)點(diǎn)的衍生可追溯回該提及結(jié)點(diǎn)。術(shù)語“子類”、“子類結(jié)點(diǎn)”或“子類”是指任何調(diào)度樹中結(jié)點(diǎn)的直接派生。通常,當(dāng)討論特定結(jié)點(diǎn)的關(guān)系時(shí),術(shù)語“子類”是指低于提及結(jié)點(diǎn)一個(gè)級別的結(jié)點(diǎn)(調(diào)度器結(jié)點(diǎn)或隊(duì)列)。并且,任何從具有更高級結(jié)點(diǎn)派生出來的結(jié)點(diǎn)可稱為“子類結(jié)點(diǎn)”或“子類”。
[0030]本發(fā)明的一個(gè)實(shí)施例有利地提供用于具有反向信用度管理的加權(quán)公平隊(duì)列的系統(tǒng)、方法和裝置,該反向信用度管理可在速率型傳輸環(huán)境中使用。所述系統(tǒng)和方法允許在加權(quán)公平隊(duì)列調(diào)度器內(nèi)競爭子類的速率限制和速率保證的結(jié)合。當(dāng)子類返回未使用的信用度時(shí),信用度結(jié)余機(jī)制可允許信用度保存。先前,未使用的信用度由信用度分配系統(tǒng)分配,而不了解子類將在其速率限制內(nèi)保持多久且繼續(xù)具有數(shù)據(jù)來傳輸。
[0031]另外,不同于現(xiàn)有技術(shù),本發(fā)明的實(shí)施例允許子類在合格和不合格間切換,從而提供具有速率限制的子類的簡易結(jié)合。
[0032]現(xiàn)在參考圖3,具有根據(jù)本發(fā)明的原理構(gòu)成的改進(jìn)的反向信用度管理(“WFQ-1CM-Plus”)的示例加權(quán)公平隊(duì)列調(diào)度器28包括傳輸選擇器30、信用度分配器32和子類信用度狀態(tài)數(shù)據(jù)庫34。傳輸選擇器30從所有用于傳輸數(shù)據(jù)的合格子類中選擇子類。單獨(dú)的合格處理36確定子類是否合格地用于傳輸選擇。合格處理36操作的詳細(xì)情況超出了本發(fā)明的范圍;相關(guān)的描述僅僅是:合格處理36確定哪些子類合格用于選擇。以最簡單的形式,合格處理只是子類處的可用數(shù)據(jù)。以更復(fù)雜的形式,可用數(shù)據(jù)可包括層級中各層的速率限制。這會影響不同于現(xiàn)有技術(shù)的性能,因?yàn)榫哂胸?fù)信用度的子類可能被傳輸選擇器30選擇來用于傳輸。另外,本發(fā)明的實(shí)施例提供另一處理的可能性,即立即終止(instantaneously disabling)先前合格的子類,這在現(xiàn)有技術(shù)中是不可能的。
[0033]信用度分配器32包括含系統(tǒng)所有剩余信用度的信用度結(jié)余(“CB”)38。信用度分配器32是一種加權(quán)公平處理,該處理將來自信用度結(jié)余38的信用度分配給所有合格子類和所有具有負(fù)信用度的子類。信用度分配器32追蹤每個(gè)子類在任何已知時(shí)刻累積在子類信用度狀態(tài)數(shù)據(jù)庫34中的信用度量。
[0034]不同于現(xiàn)有技術(shù)的WFQ-1CM調(diào)度器,本發(fā)明的實(shí)施例有利地不需要系統(tǒng)精確地了解有多少數(shù)據(jù)是可用。相反,所有信用度分配器32必須了解的就是,子類是“合格的”。信用度分配器32可將信用度分配給任一合格子類。因此,諸如速率形成機(jī)這類干擾處理可容易地結(jié)合本發(fā)明的實(shí)施例來進(jìn)行操作。理論上,子類可接收許多該子類當(dāng)前可用或合格用于將來發(fā)送的數(shù)據(jù)量的更多的信用度。然而,一旦子類從“合格”轉(zhuǎn)換到“不合格”,則該子類先前獲得的所有信用度就會被清除且被返回到信用度結(jié)余38。
[0035]傳輸選擇器30選擇合格子類來傳輸數(shù)據(jù)。通常,子類選擇偏向于具有更高信用度計(jì)數(shù)的子類。因此,具有高的正信用度計(jì)數(shù)的子類比具有低的正信用度或甚至負(fù)信用度計(jì)數(shù)的子類更可能被選擇來用于傳輸。當(dāng)子類傳輸數(shù)據(jù)時(shí),在子類信用度狀態(tài)數(shù)據(jù)庫34中信用度從其當(dāng)前信用度量中減少,且該信用度被返回到信用度結(jié)余38用于再分配給其它合格子類和負(fù)結(jié)余子類。
[0036]現(xiàn)有技術(shù)的WFQ-1CM調(diào)度器不允許從具有負(fù)信用度計(jì)數(shù)的子類處傳輸,而允許實(shí)現(xiàn)從正信用度計(jì)數(shù)開始的幀傳輸。然而,因?yàn)楝F(xiàn)有技術(shù)并不允許無效或不合格的子類在獲得信用度后進(jìn)行傳輸,所以這里不需要上述性能。
[0037]現(xiàn)在參考圖4,顯示了示例信用度分配器32的簡化實(shí)施。通常輪轉(zhuǎn)信用度分配器40以數(shù)據(jù)傳輸從調(diào)度器28退出的同樣速率將信用度分配給合格和負(fù)信用度子類。換句話說,來自傳輸選擇器30的傳輸機(jī)會可觸發(fā)信用度分配器32的信用度分配機(jī)會。
[0038]在一次信用度分配循環(huán)期間,每個(gè)合格子類和負(fù)信用度子類在該循環(huán)中分配到多個(gè)與其權(quán)重值相對應(yīng)的條目。當(dāng)每個(gè)子類到達(dá)輪轉(zhuǎn)(“RR”)分配隊(duì)列42的前端時(shí),循環(huán)中的每個(gè)子類就得到一個(gè)信用度。換句話說,一次RR輪轉(zhuǎn)循環(huán)為每個(gè)子類分配一個(gè)“信用度”。因此,對于一次全信用度循環(huán),每個(gè)子類“i”(表示為子類P被分配Wi個(gè)信用度,其中“w/’是子類i的權(quán)重值。為每個(gè)子類i分配Wi個(gè)信用度所需要的RR輪轉(zhuǎn)循環(huán)的次數(shù)是Wi。當(dāng)每個(gè)子類1已被分配^個(gè)信用度時(shí),信用度循環(huán)結(jié)束。因此,信用度循環(huán)的長度出于具有最大Wi的子類。當(dāng)子類已接收到該循環(huán)的完全加權(quán)時(shí),該子類被暫時(shí)置于加權(quán)超出隊(duì)列44中來等待,并且直到下一信用度循環(huán)才實(shí)施進(jìn)一步的信用度分配。
[0039]在先前的WFQ-1CM調(diào)度器中,信用度分配精確地以與傳輸相同的速率進(jìn)行,因此決不會有未完成的信用度結(jié)余38。可用于分配的信用度是那些從傳輸選擇器30中返回的信用度。[0040]相反,如果有必要的話,本發(fā)明的實(shí)施例允許信用度分配器32攜帶正信用度結(jié)余32。由于信用度先前合格的子類變得不合格但具有正信用度,所以信用度結(jié)余32可以變得非常大。為了補(bǔ)償這個(gè)潛在的大信用度結(jié)余,信用度分配器32不需要如被分配給子類的信用度字節(jié)數(shù)(表示為“M”)那樣分配從傳輸選擇器30引進(jìn)的精確的信用度字節(jié)數(shù)(表示為“N”)。因此,當(dāng)信用度結(jié)余38包含過剩信用度時(shí)(即,CB>0),信用度分配器32就會僅僅通過提高分配給RR分配隊(duì)列42的完全輪轉(zhuǎn)循環(huán)輪轉(zhuǎn)輪轉(zhuǎn)循環(huán)的信用度量,從而M>N,來加速信用度分配。換句話說,對于RR輪轉(zhuǎn)循環(huán),信用度分配器32在循環(huán)期間將M個(gè)信用度字節(jié)分配給每個(gè)子類。任何過剩信用度可被傳送到下一 RR輪轉(zhuǎn)循環(huán)。在另一方面,如果信用度結(jié)余38降到零而M增加,但是由于M*F=N則分配頻率(“F”)會減小,從而允許繼續(xù)為每個(gè)子類分配M個(gè)信用度字節(jié)直到該RR輪轉(zhuǎn)循環(huán)結(jié)束。提高為RR輪分配的信用度數(shù)可確保維持子類間的公平。在分配增加的M個(gè)信用度字節(jié)中值得注意的兩個(gè)例外是:通過被分配到M個(gè)信用度字節(jié)而超出其加權(quán)的子類僅被分配其加權(quán)的差額,以及不合格用于傳輸?shù)鞘占庞枚纫苑祷氐搅阈庞枚鹊淖宇惤^不會被分配到多于需要返回到零信用度的信用度量。無論是基于控制隊(duì)列、基于向量還是一些其它的方法,信用度分配器的其它實(shí)施例還可通過提高信用度分配的“標(biāo)準(zhǔn)”速率來加速信用度分配,類似這里描述的本發(fā)明的原理。
[0041]參考圖5,提供了描述在響應(yīng)分配信用度機(jī)會時(shí)由信用度分配器32執(zhí)行的步驟的示例操作流程圖。在圖5中,信用度分配器32由傳輸選擇器30觸發(fā)一次來傳輸N個(gè)數(shù)據(jù)字節(jié)(步驟S100),但是可選擇實(shí)施可具有實(shí)現(xiàn)同樣步驟的定期性觸發(fā)。重要的是要注意,在本發(fā)明的可選擇實(shí)施例中,信用度分配器32可了解實(shí)際的總傳輸字節(jié)計(jì)數(shù),從而信用度可在多個(gè)N字節(jié)或部分N字節(jié)中分配。應(yīng)該注意的是,下面的處理并不闡述合格轉(zhuǎn)換,而在下文參考圖5來進(jìn)一步考慮合格因素。
[0042]如果信用度分配器32不在RR輪轉(zhuǎn)循環(huán)的開始處(步驟S102),即,信用度已被分配給當(dāng)前RR隊(duì)列中的某個(gè)子類,該處理選擇當(dāng)前RR隊(duì)列前端的子類i來為其分配信用度(步驟S104)。在這種情況下,就要使用信用度分配值M的先前狀態(tài)。然而,如果信用度分配器32準(zhǔn)備開始新的RR輪轉(zhuǎn)循環(huán)時(shí)(步驟S102),即,已經(jīng)完成先前的RR輪轉(zhuǎn)循環(huán),則信用度分配器32判斷信用度分配循環(huán)是否需要繼續(xù)還是需要全新的信用度循環(huán)(步驟S106)。如果這是信用度循環(huán)的開始,則RR隊(duì)列被選擇來用于調(diào)度(步驟S108)。直到此時(shí),僅僅討論了支持單個(gè)RR隊(duì)列的調(diào)度處理,因此步驟S108將對調(diào)度參數(shù)進(jìn)行復(fù)位且再次開始處理RR隊(duì)列的所有子類。然而,如下文關(guān)于圖8的描述,當(dāng)前發(fā)明的典型實(shí)施例提供多個(gè)區(qū)別于多個(gè)優(yōu)先子類的RR隊(duì)列,其中,步驟S108可選擇用于處理的不同RR隊(duì)列。如果不在信用度循環(huán)的開始處,則不需要新的RR隊(duì)列。
[0043]回到判定模塊S106,如果正開始信用度循環(huán),則信用度分配器32確定是否存在過剩信用度結(jié)余(步驟S110),這種情況下可產(chǎn)生多于單個(gè)傳輸事件的信用度(N)。如果存在過剩信用度結(jié)余,則信用度分配器32進(jìn)入加速信用度分配循環(huán)(步驟S112),其中在當(dāng)前RR輪轉(zhuǎn)循環(huán)中,該信用度分配事件和該信用度分配的其余事件期間的信用度分配量(M)大于信用度分配事件間傳輸?shù)男庞枚?N),S卩,M>N。否則,如果當(dāng)前沒有信用度結(jié)余(步驟S114),則在該信用度分配事件和該RR輪的其余事件期間分配的信用度量設(shè)置為等于信用度分配事件間通常傳輸?shù)男庞枚攘浚?,M=N (步驟S114)。注意,當(dāng)前發(fā)明的其它實(shí)施例在判定SllO可使用不同的閾值N,例如CB>x字節(jié),其中X是用于將滯后(hysteresis)加入判定中以加速信用度分配的靜態(tài)或動態(tài)數(shù)值。
[0044]通過選擇當(dāng)前RR隊(duì)列前端的子類1來開始信用度分配(步驟S104)。如果信用度結(jié)余大于或等于在當(dāng)前RR輪轉(zhuǎn)循環(huán)期間分配給每個(gè)子類的信用度量(步驟S116),S卩,CB>=M,則子類i分配到小于其在該信用度循環(huán)中的剩余加權(quán)以及在該RR輪轉(zhuǎn)循環(huán)期間分配到的信用度量(步驟S118),M。分配給子類i的信用度量從信用度結(jié)余中扣除(步驟S120),且該RR輪轉(zhuǎn)循環(huán)進(jìn)行到該RR隊(duì)列中的下一子類(步驟S122)。
[0045]回到判定模塊SI 16,只要信用度結(jié)余大于子類i的剩余加權(quán)(步驟S124),則子類i被分配到其剩余的信用度加權(quán)(步驟S126)。分配給子類i的信用度量從信用度結(jié)余中扣除(步驟S120),且該RR輪轉(zhuǎn)循環(huán)進(jìn)行到該RR隊(duì)列中的下一子類(步驟S122)。然而,如果子類i的剩余加權(quán)大于信用度結(jié)余(步驟S124),則沒有信用度被分配且當(dāng)前信用度分配事件結(jié)束,RR隊(duì)列前端的剩余子類i用于下一信用度分配事件。
[0046]現(xiàn)在參考圖6,提供了描述在響應(yīng)子類合格狀態(tài)的轉(zhuǎn)換時(shí)由信用度分配器32執(zhí)行步驟的示例操作流程圖。信用度分配器32檢測子類1合格狀態(tài)的轉(zhuǎn)換(步驟S128)。合格轉(zhuǎn)換可由單獨(dú)的處理(調(diào)度器內(nèi)或調(diào)度器外)通知,例如,通過設(shè)置或清除該轉(zhuǎn)換子類的標(biāo)志、發(fā)送事件,或發(fā)送信息。如果子類i從不合格轉(zhuǎn)換到合格(步驟S130的“是”分支)且子類i已在信用度系統(tǒng)中(步驟S132的“是”分支),則信用度分配器32僅僅清除子類i的等待移除標(biāo)志(步驟S134)。如下文描述的步驟S150,當(dāng)返回到正確的狀態(tài)時(shí),等待移除標(biāo)志被設(shè)置來用于請求子類從信用度分配器32中移除。子類i仍然可以接收由其在RR隊(duì)列中的加權(quán)和次序確定的信用度。然而,如果子類i當(dāng)前不在信用度系統(tǒng)中(步驟S132的“否”分支),且子類i還未收到大于該信用度循環(huán)中其加權(quán)1的信用度(步驟S136的“否”分支),則子類i被排列到該RR隊(duì)列的尾端(步驟S138)且子類i在當(dāng)前信用度循環(huán)的下一輪中接收信用度。如果在當(dāng)前信用度循環(huán)中子類i已經(jīng)大于其加權(quán)(步驟S136的“是”分支),則子類i被排列到加權(quán)超出隊(duì)列的尾端(步驟S140)且子類i直到下一信用度循環(huán)才接收信用度。
[0047]回到判定框S130,如果該轉(zhuǎn)換子類不是新的合格子類,則子類轉(zhuǎn)換到不合格狀態(tài)。如果新的不合格子類i當(dāng)前具有正信用度或沒有信用度(步驟S142),即,信用度i>=0,則任何過剩信用度都被返回到信用度結(jié)余(步驟S144)且子類i的信用度計(jì)數(shù)被設(shè)置為零(步驟S146)。子類i則從該信用度系統(tǒng)中移除(步驟S148)。應(yīng)該注意的是,從信用度系統(tǒng)中的移除最容易通過等待子類以其方式進(jìn)行到RR隊(duì)列的前端以及在其RR輪轉(zhuǎn)循環(huán)期間移除子類,而不是通過為子類分配信用度來實(shí)現(xiàn)。該方法是一種移除標(biāo)志的潛在使用。然而,替代的實(shí)施例可提供一旦放棄其信用度給信用度結(jié)余就立即允許新的不合格子類i從系統(tǒng)中移除。
[0048]在回到判定框S142,如果新的不合格子類具有負(fù)信用度,即,信用度i〈0,則其移除標(biāo)志只被設(shè)置來表示已經(jīng)準(zhǔn)備被移除。然而,應(yīng)該注意的是,任何具有負(fù)信用度結(jié)余的新的不合格子類直到從信用度結(jié)余處重新獲得赤字信用度時(shí)才從信用度系統(tǒng)中移除,即,直到信用度i=o時(shí)子類i才被移除。
[0049]現(xiàn)在參看圖7,方框圖闡明示例現(xiàn)有技術(shù)中高加權(quán)子類的一維加權(quán)交錯輪轉(zhuǎn)(“WIRR”)調(diào)度處理46。WIRR調(diào)度處理46使用了兩個(gè)隊(duì)列:輪轉(zhuǎn)(“RR”)隊(duì)列48和加權(quán)超出隊(duì)列50。所有在信用度循環(huán)中接收信用度的子類最初都從RR隊(duì)列48處開始。假定如圖7顯示的開始狀態(tài),其中在RR隊(duì)列中有4個(gè)子類(例如,A、B、C和D),A的加權(quán)是10,B的加權(quán)是4,C和D每一個(gè)的加權(quán)都是2。由于用具有最高加權(quán)的子類來表示信用度循環(huán)的RR輪轉(zhuǎn)循環(huán)數(shù),因?yàn)樽宇怉的加權(quán)是10,所以信用度循環(huán)中有10個(gè)RR輪轉(zhuǎn)循環(huán)。
[0050]在第一 RR輪轉(zhuǎn)循環(huán)期間,給RR隊(duì)列48前端的子類D信用度,則D被移至RR隊(duì)列48的尾端。類似地,給C、B和A信用度,則每個(gè)子類都被移至RR隊(duì)列48的尾端,從而使得D回到該隊(duì)列前端。在RR輪轉(zhuǎn)循環(huán)2期間,給D信用度,使得在該信用度循環(huán)中分配給D的總信用度大于或等于其加權(quán),即,信用度D>=當(dāng)前RR。因此,D被移至加權(quán)超出隊(duì)列50中等待直到該信用度循環(huán)結(jié)束。類似地,給C信用度,則C被移至加權(quán)超出隊(duì)列50的尾端。最后,給B和A信用度,則B和A都被移至RR隊(duì)列48的尾端。在循環(huán)3期間,給B —個(gè)信用度且給A —個(gè)信用度。在循環(huán)4期間,給B —個(gè)信用度且給A —個(gè)信用度,然而,已接收到為信用度循環(huán)的信用度加權(quán)的子類B被移至加權(quán)超出隊(duì)列50的尾端,在RR隊(duì)列48中只留下A。在其余RR輪轉(zhuǎn)循環(huán)期間,例如,循環(huán)5-10,每次循環(huán)都為子類A分配一個(gè)信用度。
[0051]該一維WIRR的實(shí)際信用度分配序列是:
[0052]DCBA, DCBA, BA, BA, A, A, A, A, A, A。
[0053]因此,在該信用度分配序列的一部分中,子類A有7個(gè)連續(xù)分配。該堆棧序列對系統(tǒng)產(chǎn)生的潛在穩(wěn)定性問題是,當(dāng)子類A非常迅速地累計(jì)信用度時(shí),子類A運(yùn)行完所有數(shù)據(jù)。
[0054]本發(fā)明的實(shí)施例通過引進(jìn)新的二維WIRR調(diào)度器改進(jìn)了 WIRR調(diào)度處理,從而促進(jìn)高加權(quán)子類信用度分配的平穩(wěn)調(diào)度。圖8提供了根據(jù)本發(fā)明的原理構(gòu)成的示例二維WIRR調(diào)度器52的框圖。二維WIRR調(diào)度器52采用多個(gè)RR隊(duì)列而不是單個(gè)RR隊(duì)列,RR隊(duì)列表示寬帶或加權(quán)類。第一維調(diào)度是寬帶類,其中WIRR信用度循環(huán)在同一寬帶類的子類間提供公平。第二維調(diào)度是寬帶類之間的,其中與第一維調(diào)度器一起作用的RR隊(duì)列間的加權(quán)交錯可實(shí)現(xiàn)與寬帶類相關(guān)聯(lián)的寬帶復(fù)用(multiplier)。
[0055]二維WIRR調(diào)度器52可包括至少兩組具有相關(guān)加權(quán)超出隊(duì)列的RR隊(duì)列,其中每個(gè)隊(duì)列“i”被配置為具有寬帶復(fù)用“叫”的寬帶類。子類可基于WIRR輪轉(zhuǎn)循環(huán)的調(diào)整加權(quán)(后來更多)在RR隊(duì)列內(nèi)交錯,且可通過服務(wù)整個(gè)WIRR循環(huán)間的隊(duì)列的次序在RR隊(duì)列間交錯。在該第二維調(diào)度器中,具有Iii復(fù)用(multiplier)的RR隊(duì)列i被執(zhí)行Iii次,次數(shù)就是整個(gè)WIRR循環(huán)那樣多的次數(shù)乘I (表示為xl)隊(duì)列。例如,在圖8的二維WIRR調(diào)度器52中,具有4復(fù)用的高優(yōu)先(“HP”)RR隊(duì)列54、HP加權(quán)超出隊(duì)列56、具有I復(fù)用的低優(yōu)先(“LP”)RR隊(duì)列58,以及LP加權(quán)超出隊(duì)列60。對于該LP隊(duì)列的每一 WIRR信用度循環(huán)執(zhí)行,HP隊(duì)列54WIRR信用度循環(huán)被執(zhí)行4次。
[0056]只要該模式是工作保存持的,執(zhí)行RR隊(duì)列的固定模式是可接受的,就是說即使RR隊(duì)列中的一些沒有包含合格子類也可做出有用調(diào)度決定。例如,對于具有含x4復(fù)用的HP隊(duì)列54以及含xl復(fù)用的LP隊(duì)列58的二維WIRR調(diào)度器52,信用度分配模式是HP、HP、HP、HP、LP、重復(fù)。用于WIRR信用度循環(huán)的加權(quán)由第二維復(fù)用進(jìn)行調(diào)整,其中該調(diào)整的加權(quán)等于全加權(quán)除以Iii。
[0057]例如,在圖8的二維WIRR調(diào)度器52中使用關(guān)于圖7的上述討論中使用的同樣的加權(quán)和子類,子類被排列從而A和B在HP隊(duì)列54中,且C和D在LP隊(duì)列58中。子類A具有調(diào)整的加權(quán)2.5從而其全加權(quán)仍然是10(例如,調(diào)整的加權(quán)*復(fù)用=全加權(quán);2.5*4=10)。同樣,B具有調(diào)整的加權(quán)I來映射其全加權(quán)4 (例如,1*4=4)。因?yàn)長P隊(duì)列58的復(fù)用是1,所以C和D保持其原加權(quán)2。
[0058]在該二維WIRR的第一 WIRR信用度循環(huán)期間,只有HP隊(duì)列54運(yùn)行。因此,在WIRR輪轉(zhuǎn)循環(huán)I期間,信用度分配器分配給B—個(gè)信用度并分配給A兩個(gè)信用度,而保存子類A的剩余加權(quán)0.5。在WIRR信用度循環(huán)2期間,再一次,只有HP隊(duì)列54運(yùn)行,但是這時(shí),分配給B —個(gè)信用度并分配給A三個(gè)信用度(如,該循環(huán)的加權(quán)2.5+剩余加權(quán)0.5=3個(gè)信用度)。第三WIRR輪轉(zhuǎn)循環(huán)是WIRR輪轉(zhuǎn)循環(huán)I的重復(fù),其中B接收一個(gè)信用度,且A接收兩個(gè)信用度還剩余0.5個(gè)信用度。第四WIRR循環(huán)是WIRR循環(huán)2的重復(fù),其中B分配到一個(gè)信用度且A分配到三個(gè)信用度。第五即最后的WIRR輪轉(zhuǎn)循環(huán)使得LP隊(duì)列58中的子類C和D每個(gè)都接收兩個(gè)信用度。因此,二維WIRR調(diào)度器52的每個(gè)全信用度循環(huán)的有效信用度分配次序是:
[0059]HHHHL
[0060](BA, A),(BA, A, A),(BA, A),(BA, A, A),(DC, DC)。
[0061]應(yīng)該注意的是,最大的連續(xù)分配被減少到三個(gè)A分配,小于現(xiàn)有技術(shù)一維WIRR46的最大連續(xù)分配的一半。應(yīng)該注意的是,該過程可由單個(gè)加權(quán)超出隊(duì)列實(shí)施,因?yàn)橐淮沃皇褂靡粋€(gè)RR隊(duì)列。
[0062]非0(1)算法,即,具有計(jì)算復(fù)雜性的分層調(diào)度器,而不是使用通常已知的“大O”標(biāo)記的0(1),當(dāng)不需要擴(kuò)展時(shí)可滿足第二維。如上述顯示的,強(qiáng)大交錯限制了最大加權(quán)子類的連續(xù)分配長度。盡管在上文已描述了信用度分配器,但可以想象的是,本發(fā)明的二維WIRR調(diào)度器52可通過傳輸選擇器30來用于傳輸隊(duì)列的調(diào)度退出隊(duì)列的處理。
[0063]二維WIRR的概念可擴(kuò)展來實(shí)施多于兩個(gè)優(yōu)先級的系統(tǒng)中。圖9提供了具有由四個(gè)優(yōu)先RR隊(duì)列表示的四個(gè)優(yōu)先級的WIRR調(diào)度器62的框圖:高優(yōu)先(“HP”)隊(duì)列64、中間優(yōu)先(“MP”)隊(duì)列66、低優(yōu)先(“LP”)隊(duì)列68和極低優(yōu)先(“VLP”)隊(duì)列70。隊(duì)列間的固定復(fù)用被選擇來提供大動態(tài)范圍的調(diào)度。例如,假設(shè)任一 RR隊(duì)列中任一子類的最大調(diào)整的權(quán)重值是8而最小調(diào)整的權(quán)重值是1,則任一子類的最大總加權(quán)是4096(84)。基于加權(quán)來計(jì)算隊(duì)列選擇,因此當(dāng)所有隊(duì)列都包含子類時(shí),在每585個(gè)調(diào)度事件中,HP隊(duì)列64被選擇512次,MP隊(duì)列66被選擇64次,LP隊(duì)列68被選擇8次,且VL隊(duì)列70被選擇I次。WIRR調(diào)度器62處于工作保存,因此不選擇沒有包含子類的隊(duì)列。計(jì)算或設(shè)置的信用度分配模式應(yīng)該試圖最大地為更大加權(quán)隊(duì)列分配調(diào)度機(jī)會。另外,每次隊(duì)列被選擇時(shí)就應(yīng)該執(zhí)行完整的標(biāo)準(zhǔn)WIRR輪。圖9描述的隊(duì)列加權(quán)是說明性的不表示加權(quán)RR隊(duì)列的唯一策略。例如,不同的加權(quán)策略可選擇均勻地改變隊(duì)列權(quán)重,而不是圖示的指數(shù)方式。另一策略是可實(shí)施動態(tài)隊(duì)列權(quán)重(復(fù)用),該復(fù)用根據(jù)系統(tǒng)中活躍子類的權(quán)重來進(jìn)行改變。
[0064]信用度分配器32通過提高信用度分配速率,也就是在圖5中被描述為M>N的信用度分配加速(“CDA”),來對非零信用度結(jié)余做出反應(yīng)。CDA方法將同一信用度循環(huán)中多個(gè)RR循環(huán)合成為通過該RR隊(duì)列的單個(gè)處理過程。這在任一單個(gè)寬帶類的信用度循環(huán)內(nèi)實(shí)現(xiàn),因此并不明確地涉及第二維調(diào)度。該方法需要RR輪轉(zhuǎn)循環(huán)開始和結(jié)束的了解,且計(jì)算CDA或每個(gè)RR輪轉(zhuǎn)循環(huán)開始處M的大小。在CDA循環(huán)中組合的RR輪轉(zhuǎn)循環(huán)數(shù)量一般是2(M=2)。還可以了解的有價(jià)值的是,當(dāng)信用度結(jié)余38特別大時(shí)將M提高到4,M潛在地被設(shè)置為與信用度結(jié)余38相比較的閾值。
[0065]可選擇的實(shí)施例通過在當(dāng)前信用度循環(huán)中分配每個(gè)子類全部的剩余權(quán)重,從而將RR循環(huán)的最大數(shù)量合成為單個(gè)過程,因此結(jié)束該WIRR信用度循環(huán)。還有另一實(shí)施例則計(jì)算RR輪轉(zhuǎn)循環(huán)中涉及的子類數(shù)量,且將加速設(shè)置為1+CB/ “子類數(shù)量”,從而有效地清除了通過當(dāng)前RR隊(duì)列的單個(gè)過程中的信用度結(jié)余38。
[0066]CDA方法允許在加速的RR輪轉(zhuǎn)循環(huán)中間時(shí)通過跳過機(jī)會使得信用度分配速率返回到常態(tài)。換句話說,如果M是2且信用度結(jié)余38已返回到零,則只需給其他每個(gè)機(jī)會分配信用度,例如,MxNx0.5=N。繼續(xù)加速的測試是簡單的-只要信用度結(jié)余大于M和剩余加權(quán)i之間的最小值,則RR隊(duì)列的前端處子類i可被分配信用度。
[0067]信用度分配加速(“CDA”)可由RR輪轉(zhuǎn)循環(huán)在任一優(yōu)先級處執(zhí)行。CDA在RR輪轉(zhuǎn)循環(huán)開始處觸發(fā)。RR輪轉(zhuǎn)循環(huán)開始處選擇的加速因子,M,應(yīng)用于整個(gè)RR輪轉(zhuǎn)循環(huán)。應(yīng)該避免為子類分配小于或等于I的調(diào)整權(quán)重,因?yàn)橹挥姓{(diào)整權(quán)重>1的子類才能參與這種形式的加速。信用度循環(huán)中剩余權(quán)重小于CDA指定信用度的子類只接收其剩余權(quán)重(S卩,加速機(jī)會丟失或部分丟失)。
[0068]現(xiàn)在將注意從信用度分配器32轉(zhuǎn)移而轉(zhuǎn)向根據(jù)本發(fā)明原理構(gòu)成的對方傳輸選擇器30?,F(xiàn)有的反向信用度管理(“ICM”)調(diào)度器只包含只為帶正信用度的子類服務(wù)的一個(gè)傳輸隊(duì)列。子類根據(jù)例如輪轉(zhuǎn)次序被選擇來用于傳輸且排列在該傳輸隊(duì)列尾端。則該隊(duì)列前端處的子類被選擇來進(jìn)行傳輸。
[0069]圖10示出根據(jù)本發(fā)明原理構(gòu)成的示例基本傳輸控制結(jié)構(gòu)72。根據(jù)本發(fā)明的一個(gè)實(shí)施例,基本傳輸控制結(jié)構(gòu)72包括三個(gè)單獨(dú)的傳輸控制隊(duì)列:正隊(duì)列74、負(fù)隊(duì)列76和極負(fù)隊(duì)列78。合格傳輸?shù)乃凶宇悾绾捎脭?shù)據(jù),存在于傳輸控制隊(duì)列中的一個(gè)?;趪?yán)格的優(yōu)先系統(tǒng),優(yōu)先選擇器80選擇三個(gè)傳輸控制隊(duì)列中的一個(gè)來傳輸。換句話說,包含子類的最高優(yōu)先傳輸控制隊(duì)列總是在較低優(yōu)先傳輸控制隊(duì)列之前被選擇。在每個(gè)傳輸控制隊(duì)列內(nèi),以簡單的輪轉(zhuǎn)方式選擇子類,即,無權(quán)重。傳輸機(jī)會觸發(fā)相應(yīng)的信用度分配機(jī)會。
[0070]基于子類具有的信用度量,子類被分類成傳輸控制隊(duì)列。當(dāng)子類的信用度結(jié)余改變時(shí),子類在傳輸控制隊(duì)列間動態(tài)地移動。具有大于零的信用度計(jì)數(shù)的子類被置于正隊(duì)列74中。如果不是用于系統(tǒng)的“信用度傾倒”方面,那么當(dāng)子類變成不合格時(shí),期望的反應(yīng)將是,只有來自正信用度隊(duì)列74的子類傳輸。因?yàn)楸景l(fā)明允許信用度傾倒(其中,信用度結(jié)余大于N),所以所有活動子類所持有的所有信用度總數(shù)可以是負(fù)數(shù)。具有負(fù)信用度計(jì)數(shù)的子類被置于負(fù)隊(duì)列76中。
[0071]標(biāo)準(zhǔn)正傳輸隊(duì)列74和負(fù)傳輸信用度隊(duì)列76包含具有標(biāo)準(zhǔn)信用度計(jì)數(shù)的子類。正傳輸隊(duì)列74中的子類接收比傳輸稍多的信用度,而負(fù)傳輸隊(duì)列76中的子類接收比傳輸稍少的信用度。如果不合格不是信用度結(jié)余38的觸發(fā)擾動,則從標(biāo)準(zhǔn)正傳輸隊(duì)列74處的傳輸是標(biāo)準(zhǔn)模式的操作。然而,直到子類的信用度計(jì)數(shù)可由信用度分配器32恢復(fù)時(shí),許多子類將在傳輸之后保持在負(fù)傳輸隊(duì)列76。[0072]可預(yù)見的是,由所有活動子類持有的當(dāng)前信用度總數(shù)可以是負(fù)數(shù),因此一些具有負(fù)信用度計(jì)數(shù)的子類有時(shí)必須傳輸,進(jìn)一步減少它們的信用度計(jì)數(shù)。然而,具有大量傳輸?shù)淖宇?,盡管是負(fù)數(shù),可分離出來以減少瞬時(shí)不公平。因此,閾值,例如傳輸媒介的最大傳輸單元的負(fù)數(shù),被設(shè)置用于將含低于閾值的負(fù)信用度結(jié)余的子類置于極負(fù)隊(duì)列78中。從極負(fù)隊(duì)列78處的傳輸在可請求特別關(guān)注的信用度分配器32中提出極大剩余信用度結(jié)余38。極負(fù)隊(duì)列78防止子類螺旋下降到極低信用度結(jié)余,除非所有子類都螺旋下降。從極負(fù)隊(duì)列78處的傳輸表明不良的信用度結(jié)余38,這時(shí)該系統(tǒng)是不穩(wěn)定的??蓪?shí)施來使信用度結(jié)余38免于附加增長的應(yīng)急措施是降低傳輸信用度消耗率(例如,消耗用于傳輸?shù)腘/4個(gè)而不是N個(gè)信用度)。當(dāng)一些數(shù)據(jù)以N消耗傳輸且其它數(shù)據(jù)以N/4消耗傳輸時(shí),消耗傳輸數(shù)據(jù)的中斷可在加權(quán)公平算法中引入誤差,但是這是防止信用度結(jié)余38無限增長的簡單實(shí)施。
[0073]如圖11所示,附加實(shí)施例使用更先進(jìn)的傳輸控制結(jié)構(gòu)82。這個(gè)先進(jìn)的傳輸控制結(jié)構(gòu)82將上述討論的三個(gè)傳輸控制隊(duì)列與附加隊(duì)列結(jié)合,該附加隊(duì)列可選擇地用于更靈活的調(diào)度變化和全新的特征。例如,傳輸控制結(jié)構(gòu)82可將嚴(yán)格優(yōu)先子類,如包含語音數(shù)據(jù)分組的子類,與通過最高優(yōu)先支路控制隊(duì)列84的加權(quán)公平隊(duì)列子類結(jié)合。先進(jìn)的傳輸控制結(jié)構(gòu)82和上述討論的方法允許優(yōu)先調(diào)度與最小消耗的加權(quán)公平隊(duì)列的結(jié)合。
[0074]其它可選擇的傳輸控制隊(duì)列可包含極正隊(duì)列86和未知的子類隊(duì)列88。極正隊(duì)列86可防止由于傳輸系統(tǒng)中的阻塞而產(chǎn)生的信用度計(jì)數(shù)中的突出部分,從而提高信用度結(jié)余的穩(wěn)定性。盡管極正隊(duì)列86是可選擇的,但是當(dāng)不含優(yōu)先傳輸?shù)母呒訖?quán)子類可迅速設(shè)立信用度時(shí),該隊(duì)列可起到期望的功能。大信用度存儲對系統(tǒng)穩(wěn)定性來說是危險(xiǎn)的,因?yàn)槿绻宇愖兊貌缓细瘢庞枚染蜁蝗坏貎A倒回信用度結(jié)余38。如果任一子類具有大信用度計(jì)數(shù),則傳輸選擇器30應(yīng)該查詢子類來確定該子類是否危險(xiǎn)地達(dá)到了上信用度閾值。上信用度閾值可由系統(tǒng)設(shè)計(jì)員根據(jù)傳輸媒介的規(guī)范來設(shè)置,包含諸如當(dāng)前業(yè)務(wù)流量這樣的參數(shù)。如果子類超出該上信用度閾值,則該子類應(yīng)該被移至極正隊(duì)列86以接收優(yōu)先服務(wù)。未知的子類隊(duì)列88容許這樣的可能性:子類對未被當(dāng)前調(diào)度器吸收(已知)的原調(diào)度器來說是已知的。如果當(dāng)前調(diào)度器被選擇用于調(diào)度且不含其它合格子類,則該未知的子類隊(duì)列88提供需要的子類。
[0075]參考圖12,提供了示例可操作流程圖,該圖描述了在選擇加權(quán)公平隊(duì)列子類期間由傳輸選擇器30執(zhí)行的步驟。傳輸選擇器30確定該子類是否是新選擇(步驟S152)。如果不是,作為先前選擇,傳輸選擇器30繼續(xù)從與之前選擇相同的隊(duì)列和/或子類傳輸幀(步驟S154)。如果選擇是新選擇(步驟S152),則傳輸選擇器30選擇含當(dāng)前子類的最高優(yōu)先傳輸隊(duì)列來用于退出隊(duì)列(步驟S156),并且從傳輸隊(duì)列的前端選擇子類i用于傳輸(步驟S158)。在子類已被選擇來用于傳輸后,傳輸選擇器30從子類i的總可用信用度(信用度P中扣除掉傳輸?shù)淖止?jié)量(“N”)(步驟S160)。當(dāng)傳輸選擇器30達(dá)到傳輸結(jié)束時(shí)(步驟S162),如果子類i不再是合格的(步驟S164),則子類,從傳輸系統(tǒng)中移除(步驟S166),即子類i對傳輸選擇器30不再是可見的。然而,如果子類i仍然合格(步驟S164),則子類,重新排列到適于子類i的信用度剩余量的傳輸隊(duì)列的尾端(步驟S168)。
[0076]現(xiàn)在參考圖13,提供了示例可操作流程圖,該圖描述了響應(yīng)增加的信用度和合格轉(zhuǎn)換時(shí)由傳輸選擇器30執(zhí)行的步驟。傳輸選擇器30確定子類i是否是新子類(步驟S170),意味著子類i當(dāng)前不在傳輸選擇器排隊(duì)系統(tǒng)中。如果子類i不是新的且傳輸選擇器30確定子類i不再是合格的(步驟S172),則如果子類i當(dāng)前不傳輸數(shù)據(jù)(步驟S174),則子類,從傳輸系統(tǒng)中移除(步驟S176)。否則,如果子類i當(dāng)前傳輸(步驟S174),則傳輸選擇器30現(xiàn)在不作出反應(yīng)。該反應(yīng)在將作為圖12中部分退出隊(duì)列處理時(shí)發(fā)生。
[0077]回到判定框S172,如果子類i合格且信用度i表明子類已收到足夠的新信用度來改變優(yōu)先級(步驟S178),只要子類i當(dāng)前不傳輸數(shù)據(jù)(步驟S180),則子類,從當(dāng)前傳輸隊(duì)列中移除(步驟S182)且被排列到信用度i量指示的傳輸隊(duì)列尾端(步驟S184),即更高優(yōu)先傳輸隊(duì)列。
[0078]另外,回來參考判定框S170,如果子類i是新子類,則傳輸選擇器30簡單地將子類i排列到信用度i量指示的傳輸隊(duì)列尾端(步驟S184)。
[0079]本發(fā)明可由硬件、軟件或軟硬件的組合來實(shí)現(xiàn)。任何類型的計(jì)算系統(tǒng)、或其它適于執(zhí)行這里描述的方法的設(shè)備都適于實(shí)現(xiàn)此處所描述的功能。
[0080]硬件與軟件的一般組合可以是專用計(jì)算機(jī)系統(tǒng),該系統(tǒng)具有一個(gè)或多個(gè)處理部件及存儲在存儲介質(zhì)上的計(jì)算機(jī)程序,當(dāng)程序被加載和執(zhí)行時(shí),該存儲介質(zhì)可對計(jì)算機(jī)系統(tǒng)進(jìn)行控制,從而執(zhí)行這里描述的方法。本發(fā)明也可嵌入計(jì)算機(jī)程序產(chǎn)品中,該產(chǎn)品包括所有實(shí)現(xiàn)這里所描述方法的特征,且當(dāng)該計(jì)算機(jī)程序產(chǎn)品在計(jì)算系統(tǒng)加載時(shí)可以執(zhí)行這些方法。存儲介質(zhì)涉及任何非易失性存儲設(shè)備和易失性存儲器設(shè)備。
[0081]本申請中的計(jì)算機(jī)程序或應(yīng)用是指旨在使具有信息處理能力的系統(tǒng)直接或在進(jìn)行以下任何一種或兩種處理后完成特定功能的,以任何一種語言、代碼或符號編寫的一組次序的任何表達(dá)形式:A)轉(zhuǎn)換成另一種語言、代碼或符號;B)以不同材料形式再現(xiàn)。
[0082]另外,值得注意的是,如果沒有相反的提及,所有附圖并不是按比例的。根據(jù)上述說明各種修改和變化是可能的且不偏移本發(fā)明的范圍和精神的,本發(fā)明的范圍和精神只由下面的權(quán)利需求限制。
【權(quán)利要求】
1.用于在通信網(wǎng)絡(luò)中調(diào)度傳輸數(shù)據(jù)的方法,所述通信網(wǎng)絡(luò)具有多個(gè)數(shù)據(jù)源,所述方法包括: 將每個(gè)數(shù)據(jù)源分類為合格數(shù)據(jù)源和不合格數(shù)據(jù)源的其中之一; 保存可用信用度的信用度結(jié)余; 將信用度從所述信用度結(jié)余分配到合格數(shù)據(jù)源; 保存每個(gè)合格數(shù)據(jù)源的各自的信用度計(jì)數(shù); 保存多個(gè)隊(duì)列,每個(gè)隊(duì)列具有根據(jù)相對應(yīng)的信用度計(jì)數(shù)需求限定的各自的優(yōu)先級; 將每個(gè)數(shù)據(jù)源分派到各自的隊(duì)列,所述各自的隊(duì)列具有由所述數(shù)據(jù)源的信用度計(jì)數(shù)滿足的信用度計(jì)數(shù)需求; 根據(jù)所述數(shù)據(jù)源被分派的所述隊(duì)列的優(yōu)先級選擇至少一個(gè)用于退出隊(duì)列的數(shù)據(jù)源;將信用度量從所述至少一個(gè)被選擇的數(shù)據(jù)源的信用度計(jì)數(shù)傳輸?shù)剿鲂庞枚冉Y(jié)余,所述信用度量與退出隊(duì)列的數(shù)據(jù)量相對應(yīng); 將合格數(shù)據(jù)源重新分類為不合格數(shù)據(jù)源;以及 將所述被重新分類的數(shù)據(jù)源的信用度計(jì)數(shù)傳輸?shù)剿鲂庞枚冉Y(jié)余。
2.根據(jù)權(quán)利要求1所述的方法,其中將合格數(shù)據(jù)源重新分類包括當(dāng)所述數(shù)據(jù)源的傳輸率達(dá)到被分派給所述數(shù)據(jù)源的速率限制時(shí)將所述合格數(shù)據(jù)源重新分類為不合格數(shù)據(jù)源。
3.根據(jù)權(quán)利要求1所述的方法,其中將合格數(shù)據(jù)源重新分類包括當(dāng)所述數(shù)據(jù)源無數(shù)據(jù)傳輸時(shí)將所述合格數(shù)據(jù)源重新分類為不合格數(shù)據(jù)源。
4.根據(jù)權(quán)利要求1所述的方法,其中 每個(gè)數(shù)據(jù)源被分派各自的權(quán)重;以及 將信用度從所述信用度結(jié)余分配到合格數(shù)據(jù)源包括按由被分派給所述數(shù)據(jù)源的權(quán)重確定的比例將信用度分配到所述數(shù)據(jù)源。
5.根據(jù)權(quán)利要求4所述的方法,其中將信用度從所述信用度結(jié)余分配到合格數(shù)據(jù)源包括: 根據(jù)每個(gè)合格數(shù)據(jù)源各自的權(quán)重以循環(huán)分配方式給每個(gè)合格數(shù)據(jù)源分派多個(gè)條目;以及 根據(jù)所述循環(huán)分配方式將信用度從所述信用度結(jié)余分配到合格數(shù)據(jù)源。
6.根據(jù)權(quán)利要求5所述的方法,其中當(dāng)每個(gè)合格數(shù)據(jù)源已經(jīng)接收其信用度分配時(shí),所述信用度結(jié)余保存正結(jié)余。
7.根據(jù)權(quán)利要求4所述的方法,其中將信用度從所述信用度結(jié)余分配到合格數(shù)據(jù)源包括以根據(jù)所述信用度結(jié)余中的當(dāng)前信用度計(jì)數(shù)確定的速率分配信用度。
8.根據(jù)權(quán)利要求7所述的方法,其中以根據(jù)所述信用度結(jié)余中的當(dāng)前信用度計(jì)數(shù)確定的速率分配信用度包括以保持基本上標(biāo)準(zhǔn)的傳輸率的速率分配信用度。
9.根據(jù)權(quán)利要求1所述的方法,其中 合格數(shù)據(jù)源可以具有負(fù)信用度計(jì)數(shù);以及 至少一個(gè)隊(duì)列具有由負(fù)信用度計(jì)數(shù)滿足的信用度計(jì)數(shù)需求。
10.用于通信網(wǎng)絡(luò)的數(shù)據(jù)調(diào)度器,所述通信網(wǎng)絡(luò)具有多個(gè)數(shù)據(jù)源,所述調(diào)度器包括: 處理器,包含被配置來將每個(gè)數(shù)據(jù)源分類為合格數(shù)據(jù)源和不合格數(shù)據(jù)源的其中之一的分類邏輯電路;信用度結(jié)余信用度計(jì)數(shù)器,被配置來保存可用信用度的信用度結(jié)余; 信用度分配邏輯電路,被配置來將信用度從所述信用度結(jié)余分配到合格數(shù)據(jù)源; 數(shù)據(jù)源信用度計(jì)數(shù)器,被配置來保存每個(gè)合格數(shù)據(jù)源的各自的信用度計(jì)數(shù); 隊(duì)列保存邏輯電路,被配置來保存多個(gè)隊(duì)列,每個(gè)隊(duì)列具有根據(jù)相對應(yīng)的信用度計(jì)數(shù)需求限定的各自的優(yōu)先級; 隊(duì)列分派邏輯電路,被配置來將每個(gè)數(shù)據(jù)源分派到各自的隊(duì)列,所述各自的隊(duì)列具有由所述數(shù)據(jù)源的信用度計(jì)數(shù)滿足的信用度計(jì)數(shù)需求; 數(shù)據(jù)源選擇邏輯電路,被配置來根據(jù)所述數(shù)據(jù)源被分派的所述隊(duì)列的優(yōu)先級選擇至少一個(gè)用于退出隊(duì)列的數(shù)據(jù)源; 信用度傳輸邏輯電路,被配置來將信用度量從所述至少一個(gè)被選擇的數(shù)據(jù)源的信用度計(jì)數(shù)傳輸?shù)剿鲂庞枚冉Y(jié)余,所述信用度量與退出隊(duì)列的數(shù)據(jù)量相對應(yīng); 所述分類邏輯電路被配置來將合格數(shù)據(jù)源重新分類為不合格數(shù)據(jù)源;以及所述信用度傳輸邏輯電路被配置來將所述被重新分類的數(shù)據(jù)源的信用度計(jì)數(shù)傳輸?shù)剿鲂庞枚冉Y(jié)余。
11.根據(jù)權(quán)利要求10所述的數(shù)據(jù)調(diào)度器,其中所述分類邏輯電路被配置來當(dāng)所述數(shù)據(jù)源的傳輸率達(dá)到被分派給所述數(shù)據(jù)源的速率限制時(shí)將所述合格數(shù)據(jù)源重新分類為不合格數(shù)據(jù)源。
12.根據(jù)權(quán)利要求10所述的數(shù)據(jù)調(diào)度器,其中所述分類邏輯電路被配置來當(dāng)所述數(shù)據(jù)源無數(shù)據(jù)傳輸時(shí)將所述合格數(shù)據(jù)源重新分類為不合格數(shù)據(jù)源。
13.根據(jù)權(quán)利要求10所述的數(shù)據(jù)調(diào)度器,其中 每個(gè)數(shù)據(jù)源被分派各自的權(quán)重;以及 所述信用度分配邏輯電路被配置來按由被分派給所述數(shù)據(jù)源的權(quán)重確定的比例將信用度分配到所述數(shù)據(jù)源。
14.根據(jù)權(quán)利要求13所述的數(shù)據(jù)調(diào)度器,其中所述信用度分配邏輯電路被配置來: 根據(jù)每個(gè)合格數(shù)據(jù)源各自的權(quán)重以循環(huán)分配方式給每個(gè)合格數(shù)據(jù)源分派多個(gè)條目;以及 根據(jù)所述循環(huán)分配方式將信用度從所述信用度結(jié)余分配到合格數(shù)據(jù)源。
15.根據(jù)權(quán)利要求14所述的數(shù)據(jù)調(diào)度器,其中當(dāng)每個(gè)合格數(shù)據(jù)源已經(jīng)接收其信用度分配時(shí),所述信用度結(jié)余信用度計(jì)數(shù)器保存正結(jié)余。
16.根據(jù)權(quán)利要求13所述的數(shù)據(jù)調(diào)度器,其中所述信用度分配邏輯電路被配置來以根據(jù)所述信用度結(jié)余中的當(dāng)前信用度計(jì)數(shù)確定的速率分配信用度。
17.根據(jù)權(quán)利要求16所述的數(shù)據(jù)調(diào)度器,其中所述信用度分配邏輯電路被配置來以保持基本上標(biāo)準(zhǔn)的傳輸率的速率分配信用度。
18.根據(jù)權(quán)利要求10所述的數(shù)據(jù)調(diào)度器,其中 合格數(shù)據(jù)源可以具有負(fù)信用度計(jì)數(shù);以及 至少一個(gè)隊(duì)列具有由負(fù)信用度計(jì)數(shù)滿足的信用度計(jì)數(shù)需求。
【文檔編號】H04L12/24GK103916269SQ201410106733
【公開日】2014年7月9日 申請日期:2009年10月13日 優(yōu)先權(quán)日:2008年10月14日
【發(fā)明者】布拉德利·D.·維納布爾斯 申請人:北電網(wǎng)絡(luò)有限公司