一種基于CICQ支持區(qū)分QoS的并行交換系統(tǒng)及方法
【專利摘要】本發(fā)明公開了一種基于CICQ支持區(qū)分QoS的并行交換系統(tǒng)及方法,采用在輸出緩存引入VIQ隊(duì)列結(jié)構(gòu)的辦法保證信元的傳輸順序,基于此設(shè)計(jì)負(fù)載均衡器和分組整合器的調(diào)度算法,能夠?yàn)椴煌?wù)需求的業(yè)務(wù)提供QoS支持。該并行系統(tǒng)解決方案能夠?qū)M(jìn)入系統(tǒng)的負(fù)載進(jìn)行均衡的分配,在無(wú)需內(nèi)部加速的情況下能夠獲得99%以上的吞吐率,具有較好的吞吐性能,系統(tǒng)性能隨著中間交換平面數(shù)目的增加未出現(xiàn)明顯的下降,說(shuō)明系統(tǒng)具有良好的可擴(kuò)展性,仿真結(jié)果的時(shí)延性能表明系統(tǒng)能夠?yàn)椴煌?wù)需求的業(yè)務(wù)提供QoS保障支持,該方案基本達(dá)到了設(shè)計(jì)目標(biāo)的要求。
【專利說(shuō)明】-種基于CICQ支持區(qū)分QoS的并行交換系統(tǒng)及方法
【技術(shù)領(lǐng)域】
[0001] 本發(fā)明屬于計(jì)算機(jī)【技術(shù)領(lǐng)域】,涉及一種基于CICQ支持區(qū)分QoS的并行交換系統(tǒng)及 方法。
【背景技術(shù)】
[0002] 近年來(lái)互聯(lián)網(wǎng)業(yè)務(wù)的發(fā)展突飛猛進(jìn),互聯(lián)網(wǎng)中業(yè)務(wù)的種類和數(shù)量都呈現(xiàn)爆炸式增 長(zhǎng),QoS問(wèn)題再次受到關(guān)注,如何實(shí)現(xiàn)具有QoS保證的交換結(jié)構(gòu)也成為了被關(guān)注的問(wèn)題之 一。并行交換PPS[1_7]在過(guò)去幾年里一直被認(rèn)為是降低交換系統(tǒng)存儲(chǔ)帶寬需求,提高交換 速率及交換容量的有力手段,但PPS不支持區(qū)分QoS?,F(xiàn)有技術(shù)提出多級(jí)多平面分組交換結(jié) 構(gòu),并基于提出帶寬保證型調(diào)度算法來(lái)試圖滿足大容量和對(duì)QoS的支持,楊君剛等人提出 了一種基于Credit的變長(zhǎng)分組并行交換調(diào)度算法,該算法并未考慮變長(zhǎng)分組與變長(zhǎng)分組 之間的保序問(wèn)題。Shi等人也給出了避免設(shè)置重排序隊(duì)列的負(fù)載均衡保序調(diào)度方案。但是 這種算法依賴于流量模型的輸入特征。為了實(shí)現(xiàn)對(duì)QoS的支持,有人使用了反饋機(jī)制,調(diào)度 算法復(fù)雜度極高。為了降低算法的復(fù)雜度,也有人提出了一中按序排隊(duì)的并行交換結(jié)構(gòu),并 在此基礎(chǔ)上進(jìn)行改進(jìn)提出了一中基于標(biāo)識(shí)支持區(qū)分QoS的PPS調(diào)度機(jī)制,將兩級(jí)負(fù)載均衡 交換和并行分組交換相結(jié)合的PPS結(jié)構(gòu)。WLA-PPS的右半部分將具有不同交換性能權(quán)值的 中間層平面分配給不同類型的QoS業(yè)務(wù),從而實(shí)現(xiàn)為不同類型QoS業(yè)務(wù)提供不同的服務(wù)質(zhì) 量的目的。PPS設(shè)計(jì)存在的主要問(wèn)題是:如何以較低的通信開銷保持每條流報(bào)文的順序,同 時(shí)對(duì)不同業(yè)務(wù)需求提供QoS保證,使得PPS系統(tǒng)易于實(shí)現(xiàn)。
【發(fā)明內(nèi)容】
[0003] 本發(fā)明的目的在于克服上述技術(shù)存在的缺陷,提供一種基于CICQ支持區(qū)分QoS的 并行交換系統(tǒng)及方法,其具體技術(shù)方案為:
[0004] -種基于CICQ支持區(qū)分QoS的并行交換系統(tǒng),主要分為三大部分:輸入部分、中間 交換部分和輸出部分,中間交換平面為CICQ,k為PPS交換系統(tǒng)中間交換平面?zhèn)€數(shù),N為PPS 交換系統(tǒng)的端口數(shù)目,R為PPS交換系統(tǒng)輸入端口的最大線速。
[0005] -種基于CICQ支持區(qū)分QoS的并行交換的方法,包括以下步驟:(1)負(fù)載均衡器 以時(shí)隙為工作的基本時(shí)間單位,每個(gè)時(shí)隙需要完成N次調(diào)度,采用輪詢的方式為V0Q隊(duì)列提 供服務(wù),每次輪詢從V0Q優(yōu)先級(jí)隊(duì)列指針開始,尋找有信元需要轉(zhuǎn)發(fā)的V0Q隊(duì)列,找到后判 斷與V0Q隊(duì)頭信元要去往的中間交換平面對(duì)應(yīng)的鏈路狀態(tài),如果鏈路空閑,將待發(fā)信元轉(zhuǎn) 發(fā)至目標(biāo)中間交換平面,同時(shí)根據(jù)V0Q隊(duì)列的信息,確定下一個(gè)時(shí)隙要轉(zhuǎn)發(fā)的信元和信元 要去往的中間交換平面,否則繼續(xù)尋找,直到找到或已經(jīng)將N個(gè)V0Q隊(duì)列循環(huán)一遍,同一個(gè) V0Q隊(duì)列的信元以循環(huán)的方式依次去往每一個(gè)中間交換平面,每k個(gè)信元為一個(gè)循環(huán)周期;
[0006] (2)同一流的信元經(jīng)交換后進(jìn)入VIQu隊(duì)列,再根據(jù)信元所經(jīng)過(guò)的中間交換平面以 及所屬業(yè)務(wù)類別的不同,最終進(jìn)入到VIQ ukp隊(duì)列,1彡i,j彡N,1彡k彡m,m為中間交換平 面數(shù),1 < p < P,根據(jù)方案中業(yè)務(wù)模型的定義,分別為⑶、GB業(yè)務(wù)規(guī)定了峰值信息速率PIR 和承諾信息速率CIR,分別代表了 GD、GB業(yè)務(wù)所能獲得的最高帶寬和最小帶寬。為了支持 Q〇S,信元重組算法引入預(yù)約帶寬機(jī)制,⑶業(yè)務(wù)的預(yù)約帶寬RBi = 1. 1PIR,GB業(yè)務(wù)的預(yù)約帶 寬RBk = CIRk,同時(shí),在合路器中為每類業(yè)務(wù)設(shè)置一個(gè)計(jì)數(shù)器,用于統(tǒng)計(jì)各類業(yè)務(wù)所獲得的 實(shí)際帶寬,稱為統(tǒng)計(jì)帶寬,記為BS (Bandwidth Statisticed),當(dāng)合路器調(diào)度算法為某類業(yè) 務(wù)服務(wù)時(shí),就要進(jìn)行該類業(yè)務(wù)統(tǒng)計(jì)帶寬與預(yù)約帶寬的對(duì)比,如果BS < RB,則為其服務(wù),否則 不為其服務(wù),在合路器算法中引入權(quán)重的概念保證公平。
[0007] 與現(xiàn)有技術(shù)相比,本發(fā)明的有益效果為:本發(fā)明采用在輸出緩存引入VIQ隊(duì)列結(jié) 構(gòu)的辦法保證信元的傳輸順序,基于此設(shè)計(jì)負(fù)載均衡器和分組整合器的調(diào)度算法,能夠?yàn)?不同服務(wù)需求的的業(yè)務(wù)提供QoS支持。從上述仿真實(shí)驗(yàn)結(jié)果的分析可看到,該并行系統(tǒng)解 決方案能夠?qū)M(jìn)入系統(tǒng)的負(fù)載進(jìn)行均衡的分配,在無(wú)需內(nèi)部加速的情況下能夠獲得99%以 上的吞吐率,具有較好的吞吐性能,同時(shí)仿真結(jié)果中吞吐率、負(fù)載均衡系數(shù)以及時(shí)延性能與 中間交換平面數(shù)的關(guān)系表明,系統(tǒng)性能隨著中間交換平面數(shù)目的增加未出現(xiàn)明顯的下降, 說(shuō)明系統(tǒng)具有良好的可擴(kuò)展性,仿真結(jié)果的時(shí)延性能表明系統(tǒng)能夠?yàn)椴煌?wù)需求的的業(yè) 務(wù)提供QoS保障支持,該方案基本達(dá)到了設(shè)計(jì)目標(biāo)的要求。
【具體實(shí)施方式】
[0008] 下面結(jié)合具體實(shí)施例對(duì)本發(fā)明的技術(shù)方案作進(jìn)一步詳細(xì)地說(shuō)明。
[0009] 1 交換結(jié)構(gòu) PSVI0Q-CICQ
[0010] PSVI0Q-CICQ交換結(jié)構(gòu)的模型主要分為三大部分:輸入部分、中間交換部分和輸 出部分。中間交換平面為CICQ,k為PPS交換系統(tǒng)中間交換平面?zhèn)€數(shù),N為PPS交換系統(tǒng)的 端口數(shù)目,R為PPS交換系統(tǒng)輸入端口的最大線速。
[0011] 輸入部分:對(duì)于輸入端緩存的設(shè)置,本發(fā)明引入虛擬隊(duì)列技術(shù),將每個(gè)輸入端的緩 存分割為N個(gè)虛擬輸出隊(duì)列(V0Q)。中間交換部分:PSVI0Q-CICQ結(jié)構(gòu)采用CICQ作為中間 交換平面,整個(gè)中間部分共由K個(gè)NXN、端口速率為r的CICQ交換模塊并行組成,每個(gè)CICQ 模塊包括虛擬輸出隊(duì)列V0Q、交叉點(diǎn)緩存隊(duì)列和交換部分,V0Q用于緩存進(jìn)入到該交換模塊 的業(yè)務(wù)分組,中間交換部分的作用是負(fù)責(zé)將進(jìn)入其中的業(yè)務(wù)分組交換轉(zhuǎn)發(fā)到并行交換系統(tǒng) 的輸出部分。
[0012] 輸出部分:由N個(gè)輸出端口組成,各個(gè)輸出端口又包括輸出緩存和分組整合器兩 大部分,輸出緩存被分為N個(gè)VIQ隊(duì)列,用于緩存進(jìn)入輸出端口的業(yè)務(wù)分組并對(duì)其順序進(jìn)行 處理,分組整合器則負(fù)責(zé)將信元按序轉(zhuǎn)發(fā)到輸出鏈路。
[0013] 該結(jié)構(gòu)的特點(diǎn)首先是采用CICQ結(jié)構(gòu)作為中間交換模塊,可以充分有效的發(fā)揮利 用CICQ結(jié)構(gòu)的優(yōu)點(diǎn),二是在輸出緩存采用VIQ結(jié)構(gòu),而VIQ結(jié)構(gòu)是被證明了的能夠有效保 證業(yè)務(wù)分組順序的結(jié)構(gòu)。
[0014] 2相關(guān)概念和約定
[0015] 基于PSVI0Q-CICQ結(jié)構(gòu),根據(jù)并行交換系統(tǒng)對(duì)負(fù)載均衡及分組保序的要求,文 中提出調(diào)度算法 RR_DDRRP(round-robin and dynamic dual round-robin preserving algorithm),該算法能夠保證信元經(jīng)交換系統(tǒng)后不亂序,并且具有負(fù)載均衡、吞吐率高等性 能。
[0016] 這里通信量被分為兩大類:有保證的服務(wù)MG (More Guaranteed)和無(wú)保證的服務(wù) LG(LeSS Guaranteed)。需要MG服務(wù)的分組是要保證可靠傳輸?shù)姆纸M,比如多媒體流中影 響接收端的視頻質(zhì)量的重要信息或者控制信息分組;需要LG服務(wù)的分組不要求可靠傳輸 的分組,比如是支持重傳的分組流(傳統(tǒng)的TCP分組)。沒有QoS保證的傳輸劃分到LG類, 1^又分為保證延遲60(8皿四11丨66(1-(16135〇和保證帶寬613(8皿四11丨66(1^^11(1¥丨(11:11)。屬于 GD的傳輸需要統(tǒng)計(jì)延遲界以及有限的包損失,在區(qū)分服務(wù)它符合EF PHB組。屬于GB的傳 輸僅需要有限的包損失,在區(qū)分服務(wù)它與AF PHB組相應(yīng)。
[0017] 對(duì)每種MG、LG服務(wù),按照丟失率的高低劃分優(yōu)先級(jí)MG[i]和LG[j],0 < i彡n,0 < j <m,相應(yīng)地各個(gè)服務(wù)優(yōu)先級(jí)的丟失率為loss(MG[i])和l〇SS(LG[i])。i或者j越小, 丟失優(yōu)先級(jí)越1?,即丟失率越低。
[0018] 設(shè)本發(fā)明中的并行交換系統(tǒng)PSVI0Q-CICQ以定長(zhǎng)數(shù)據(jù)包作為基本的數(shù)據(jù)處理單 元,為了敘述方便,本發(fā)明把這些定長(zhǎng)的數(shù)據(jù)包稱為信元(cell)。
[0019] 在介紹調(diào)度算法之前,本發(fā)明先闡明文中用到的幾個(gè)概念和符號(hào)。
[0020] 氏jm為進(jìn)入PPS交換系統(tǒng)的第m個(gè)⑶業(yè)務(wù)類的信元,輸入端口為i,輸出端口為j ;
[0021] Mijm為進(jìn)入PPS交換系統(tǒng)的第m個(gè)GB業(yè)務(wù)類的信元,輸入端口為i,輸出端口為j ;
[0022] Qjm為進(jìn)入PPS交換系統(tǒng)的第m個(gè)LG業(yè)務(wù)類的信元,輸入端口為i,輸出端口為j ;
[0023] VOQu代表分路器中的緩存隊(duì)列,用來(lái)暫存輸入端口為i目標(biāo)輸出端口為j的信 元;
[0024] V0Qijk代表的是第k個(gè)CICQ中間交換平面中輸入端的緩存隊(duì)列,用來(lái)暫存輸入端 口為i目標(biāo)輸出端口為j的信元;
[0025] ¥1(^代表的是合路器中的緩存隊(duì)列,用來(lái)暫存輸入端口為i目標(biāo)輸出端口為j的 信元;
[0026] VPQijp代表的是分路器中的優(yōu)先級(jí)隊(duì)列,用來(lái)暫存輸入端口為i目標(biāo)輸出端口為j 并且優(yōu)先級(jí)為P的信元;
[0027] VIQito為合路器j中的優(yōu)先級(jí)隊(duì)列,用于暫存輸入端口為i目標(biāo)輸出端口為j并 且優(yōu)先級(jí)為P的信元,該信元經(jīng)由中間交換平面k轉(zhuǎn)發(fā)通過(guò)交換系統(tǒng);
[0028] SPQCp為合路器j中優(yōu)先級(jí)相同的VIQ$p邏輯上的集合。
[0029] 3負(fù)載均衡的分布式信元分派算法
[0030] 負(fù)載均衡器(load balancer)以時(shí)隙為工作的基本時(shí)間單位,每個(gè)時(shí)隙需要完成 N次調(diào)度,采用輪詢的方式為V0Q隊(duì)列提供服務(wù),每次輪詢從V0Q優(yōu)先級(jí)隊(duì)列指針開始,尋找 有信元需要轉(zhuǎn)發(fā)的V0Q隊(duì)列,找到后判斷與V0Q隊(duì)頭信元要去往的中間交換平面對(duì)應(yīng)的鏈 路狀態(tài),如果鏈路空閑,將待發(fā)信元轉(zhuǎn)發(fā)至目標(biāo)中間交換平面,同時(shí)根據(jù)V0Q隊(duì)列的信息, 確定下一個(gè)時(shí)隙要轉(zhuǎn)發(fā)的信元和信元要去往的中間交換平面,否則繼續(xù)尋找,直到找到或 已經(jīng)將N個(gè)V0Q隊(duì)列循環(huán)一遍,同一個(gè)V0Q隊(duì)列的信元以循環(huán)的方式依次去往每一個(gè)中間 交換平面,每k個(gè)信元為一個(gè)循環(huán)周期,算法的偽碼描述如下。
[0031] PP為分路器i中V0Q隊(duì)列的優(yōu)先級(jí)指針,用于控制每個(gè)時(shí)隙從哪個(gè)V0Q開始循環(huán), 初始值為0。
[0032] SMPU為VOQu隊(duì)列隊(duì)頭信元選中的中間交換平面的標(biāo)記,初始值為0。
[0033] LS為輸入端口與中間交換平面間的鏈路的狀態(tài),0表示鏈路繁忙,1表示鏈路空 閑,初始值為1。
[0034] Void Dmultiplexer_RR () { VOQ一P-P = Pp; For (int j=0;j<N; j++) {if(VOQivo〇_P_P 非空) { Mpn = SMPiVO〇_P_P; If(LSlMp" == 1) {將中間交換平面Mpn作為VOQiv0(^P_P隊(duì)頭信元的目的平面; SMPivo〇_p_p=SMPivo〇_p_p+l;
[0035] LSiMpn =〇; if(第一次調(diào)度)Pp = (Pp + 1) % N; } } else if(第一次調(diào)度)PP = (Pp + 1) % N; VOQ P P = (VOQ_P_P + 1) % N; } }
[0036] 4支持QoS的DDRRP分布式信元重組算法
[0037] 同一流的信元經(jīng)交換后進(jìn)入VIQu隊(duì)列,再根據(jù)信元所經(jīng)過(guò)的中間交換平面以及 所屬業(yè)務(wù)類別的不同,最終進(jìn)入到VIQ iAp隊(duì)列,1彡i,j彡N,1彡k彡m,m為中間交換平 面數(shù),1 < p < P,根據(jù)方案中業(yè)務(wù)模型的定義,分別為⑶、GB業(yè)務(wù)規(guī)定了峰值信息速率PIR 和承諾信息速率CIR,分別代表了 GD、GB業(yè)務(wù)所能獲得的最高帶寬和最小帶寬。為了支持 Q〇S,信元重組算法引入預(yù)約帶寬機(jī)制,⑶業(yè)務(wù)的預(yù)約帶寬RBi = 1. 1PIR,GB業(yè)務(wù)的預(yù)約帶 寬RBk = CIRk,同時(shí),在合路器中為每類業(yè)務(wù)設(shè)置一個(gè)計(jì)數(shù)器,用于統(tǒng)計(jì)各類業(yè)務(wù)所獲得的 實(shí)際帶寬,稱為統(tǒng)計(jì)帶寬,記為BS (Bandwidth Statisticed),當(dāng)合路器調(diào)度算法為某類業(yè) 務(wù)服務(wù)時(shí),就要進(jìn)行該類業(yè)務(wù)統(tǒng)計(jì)帶寬與預(yù)約帶寬的對(duì)比,如果BS < RB,則為其服務(wù),否則 不為其服務(wù),在合路器算法中引入權(quán)重的概念保證公平,本發(fā)明中定義的權(quán)重是輪詢到的 優(yōu)先級(jí)隊(duì)列的長(zhǎng)度及其優(yōu)先級(jí)別的函數(shù),稱為份額函數(shù),函數(shù)值即為隊(duì)列的權(quán)重值,只有在 輪轉(zhuǎn)到的優(yōu)先級(jí)隊(duì)列的權(quán)重非零的情況下,其才能得到調(diào)度器的服務(wù)。
[0038] BAp :代表任一輸出端口 P類業(yè)務(wù)流的預(yù)約帶寬,它滿足如下約束條件:
[0039]
【權(quán)利要求】
1. 一種基于CICQ支持區(qū)分QoS的并行交換系統(tǒng),其特征在于,主要分為三大部分:輸 入部分、中間交換部分和輸出部分,中間交換平面為CICQ,k為PPS交換系統(tǒng)中間交換平面 個(gè)數(shù),N為PPS交換系統(tǒng)的端口數(shù)目,R為PPS交換系統(tǒng)輸入端口的最大線速。
2. -種基于CICQ支持區(qū)分QoS的并行交換的方法,包括以下步驟:(1)負(fù)載均衡器以 時(shí)隙為工作的基本時(shí)間單位,每個(gè)時(shí)隙需要完成N次調(diào)度,采用輪詢的方式為V0Q隊(duì)列提供 服務(wù),每次輪詢從V0Q優(yōu)先級(jí)隊(duì)列指針開始,尋找有信元需要轉(zhuǎn)發(fā)的V0Q隊(duì)列,找到后判斷 與V0Q隊(duì)頭信元要去往的中間交換平面對(duì)應(yīng)的鏈路狀態(tài),如果鏈路空閑,將待發(fā)信元轉(zhuǎn)發(fā) 至目標(biāo)中間交換平面,同時(shí)根據(jù)V0Q隊(duì)列的信息,確定下一個(gè)時(shí)隙要轉(zhuǎn)發(fā)的信元和信元要 去往的中間交換平面,否則繼續(xù)尋找,直到找到或已經(jīng)將N個(gè)V0Q隊(duì)列循環(huán)一遍,同一個(gè)V0Q 隊(duì)列的信元以循環(huán)的方式依次去往每一個(gè)中間交換平面,每k個(gè)信元為一個(gè)循環(huán)周期; (2)同一流的信元經(jīng)交換后進(jìn)入VIQu隊(duì)列,再根據(jù)信元所經(jīng)過(guò)的中間交換平面以及所 屬業(yè)務(wù)類別的不同,最終進(jìn)入到VIQukp隊(duì)列,1彡i,j彡N,1彡k彡m,m為中間交換平面 數(shù),1 < p < P,根據(jù)方案中業(yè)務(wù)模型的定義,分別為⑶、GB業(yè)務(wù)規(guī)定了峰值信息速率PIR和 承諾信息速率CIR,分別代表了 GD、GB業(yè)務(wù)所能獲得的最高帶寬和最小帶寬;為了支持QoS, 信元重組算法引入預(yù)約帶寬機(jī)制,⑶業(yè)務(wù)的預(yù)約帶寬RBi = 1. 1PIR,GB業(yè)務(wù)的預(yù)約帶寬RBk =CIRk,同時(shí),在合路器中為每類業(yè)務(wù)設(shè)置一個(gè)計(jì)數(shù)器,用于統(tǒng)計(jì)各類業(yè)務(wù)所獲得的實(shí)際帶 寬,稱為統(tǒng)計(jì)帶寬,記為BS (Bandwidth Statisticed),當(dāng)合路器調(diào)度算法為某類業(yè)務(wù)服務(wù) 時(shí),就要進(jìn)行該類業(yè)務(wù)統(tǒng)計(jì)帶寬與預(yù)約帶寬的對(duì)比,如果BS < RB,則為其服務(wù),否則不為其 服務(wù),在合路器算法中引入權(quán)重的概念保證公平。
【文檔編號(hào)】H04L12/861GK104144133SQ201410331535
【公開日】2014年11月12日 申請(qǐng)日期:2014年7月6日 優(yōu)先權(quán)日:2014年3月10日
【發(fā)明者】都文和, 題原, 張楠楠, 王艷春, 劉道森 申請(qǐng)人:齊齊哈爾大學(xué)