專利名稱:一種同時支持多種優(yōu)先級的非屏蔽式QoS流調(diào)度策略的制作方法
技術(shù)領(lǐng)域:
本發(fā)明涉及一種QoS流調(diào)度策略。該技術(shù)在保證用戶定制的QoS類型高低等級的 條件下,采用非屏蔽式的三級QoS流隊列調(diào)度機(jī)制,能夠在數(shù)據(jù)包轉(zhuǎn)發(fā)過程中同時兼顧多 種類型的優(yōu)先級。該方法既保留了用戶定制的優(yōu)先級劃分順序,又兼顧了用戶想同時啟用 多種優(yōu)先級的想法,同時也擴(kuò)展了優(yōu)先級別的調(diào)度范圍,提高了交換機(jī)的服務(wù)質(zhì)量。
背景技術(shù):
隨著以太網(wǎng)技術(shù)的廣泛應(yīng)用,基于IP網(wǎng)絡(luò)應(yīng)用的各種業(yè)務(wù)種類越來越多。根據(jù) 不同業(yè)務(wù)特征,不同的用戶對各種業(yè)務(wù)需求的緊急程度和可靠性要求也不一樣,例如VoIP 等實時業(yè)務(wù)要求較小的傳輸延遲,E-mail、IPTV需要較高的數(shù)據(jù)完整性。進(jìn)而要求交換芯 片能夠具有區(qū)分不同通信業(yè)務(wù)和不同數(shù)據(jù)流類型的能力,能夠為不同的業(yè)務(wù)提供不同的服 務(wù),于是QoS(Quality of Service)即服務(wù)質(zhì)量技術(shù)便應(yīng)運而生。對于網(wǎng)絡(luò)業(yè)務(wù),服務(wù)質(zhì)量包括傳輸?shù)膸?、傳送的時延、數(shù)據(jù)的丟包率等。在網(wǎng)絡(luò) 中可以通過保證傳輸?shù)膸?、降低傳送的時延、降低數(shù)據(jù)的丟包率以及時延抖動等措施來 提高服務(wù)質(zhì)量。網(wǎng)絡(luò)資源總是有限的,網(wǎng)絡(luò)管理者需要根據(jù)各種業(yè)務(wù)的特點來對網(wǎng)絡(luò)資源 進(jìn)行合理的規(guī)劃和分配,從而使網(wǎng)絡(luò)資源得到高效利用,于是產(chǎn)生了各種類型的優(yōu)先級及 其分類方法。QoS技術(shù)包括流量分類和標(biāo)記、流量監(jiān)管、流量整形、接口限速、擁塞管理、擁塞避 免等,圖1描述了各種QoS技術(shù)在網(wǎng)絡(luò)設(shè)備中的處理順序。而流分類是指采用一定的規(guī)則 識別和區(qū)分符合某類特征的報文,它是對網(wǎng)絡(luò)業(yè)務(wù)進(jìn)行區(qū)分服務(wù)的前提和基礎(chǔ),通常作用 在交換機(jī)入口方向。流分類策略的好壞從很大程度上決定了交換機(jī)服務(wù)質(zhì)量的高低。流量分類是將數(shù)據(jù)報文劃分為多個優(yōu)先級或多個服務(wù)類。網(wǎng)絡(luò)管理者可以設(shè)置流 量分類的策略,這個策略除可以包括IP報文的IP優(yōu)先級或DSCP值、802. Ip的CoS值等帶 內(nèi)信令,還可以包括輸入接口、源IP地址、目的IP地址、MAC地址、IP協(xié)議或應(yīng)用程序的端 口號等。分類的結(jié)果是沒有范圍限制的,它可以是一個由五元組(源IP地址、源端口號、協(xié) 議號、目的IP地址、目的端口號)確定的流這樣狹小的范圍,也可以是到某某網(wǎng)段的所有報 文。下游網(wǎng)絡(luò)可以選擇接受上游網(wǎng)絡(luò)的分類結(jié)果,也可以按照自己的分類標(biāo)準(zhǔn)對數(shù)據(jù)流量 重新進(jìn)行分類。在網(wǎng)絡(luò)發(fā)生擁塞時,通常的處理的方法是使用隊列技術(shù)對數(shù)據(jù)流進(jìn)行管理和控 制。具體過程包括隊列的創(chuàng)建、報文的分類、將報文送入不同的隊列、隊列調(diào)度等。當(dāng)接口 沒有發(fā)生擁塞時,報文到達(dá)接口后立即被發(fā)送出去,當(dāng)報文到達(dá)的速度超過接口發(fā)送報文 的速度時,接口就發(fā)生了擁塞。擁塞管理就會將這些報文進(jìn)行分類,送入不同的隊列;而隊 列調(diào)度將對不同優(yōu)先級的報文進(jìn)行分別處理,優(yōu)先級高的報文會得到優(yōu)先處理。常用的隊 列有 FIFO、PQ、CQ、WFQ、CBffFQ, RTP 優(yōu)先隊列等。傳統(tǒng)的QoS擁塞管理機(jī)制通常采用如圖2所示的屏蔽式QoS決策流程來解決每個 端口遇到的不同類型優(yōu)先級沖突。這種QoS擁塞管理機(jī)制的過程如下
1.為每個出口創(chuàng)建4個優(yōu)先級隊列,并為每個出口隊列分配權(quán)重,權(quán)重越大,表示 該隊列中的報文將優(yōu)先被轉(zhuǎn)發(fā)出去。2.按照以下條件對各個入口數(shù)據(jù)包進(jìn)行分類第2 層MAC-SA、DA、802. IP、Ethertype、輸入端口號;第3層IP目標(biāo)地址、IP源地址;第4 層端 口號和 IP Services 類型(ToS)。3.按照圖2所示QoS決策流程以及交換機(jī)中各種優(yōu)先級功能是否啟用,來對各 種優(yōu)先級類型進(jìn)行等級劃分,并選取出最終起決定作用的優(yōu)先級類型。以較為常見的交 換芯片BCM53242和BCM53262為例,優(yōu)先級類型的高低級別為=DiffServ Based QoS > 802. IPBased QoS > MAC-SA Based QoS > Protocol Based QoS > Port Based QoS04.然后根據(jù)最終起決定作用的優(yōu)先級類型的標(biāo)簽(tag)值大小,來對各個入口數(shù) 據(jù)包進(jìn)行排序。如圖2所示,如果交換機(jī)的Diffkrv Based QoS使能的話,則按照IP報 文頭中的DSCP標(biāo)簽值的大小對入口報文進(jìn)行排序;否則如果前者被禁用而802. IP Based QoS使能的話,則按照以太網(wǎng)幀頭的VLAN TAG(VID)標(biāo)簽值的大小對入口報文進(jìn)行排序;以 此類推,只有前面幾種優(yōu)先級都未啟用而Port Based QoS啟用時,才會按照端口優(yōu)先級標(biāo) 簽值(PID)的大小對入口報文進(jìn)行排序。5.按照用戶配置的優(yōu)先級標(biāo)簽值和優(yōu)先級隊列的對應(yīng)關(guān)系,將帶有各個tag的報 文依次送到與之相對應(yīng)的4個出口優(yōu)先級隊列的其中一個。6.按照交換機(jī)設(shè)定的出口隊列調(diào)度權(quán)重,進(jìn)行各優(yōu)先級隊列數(shù)據(jù)包的轉(zhuǎn)發(fā)。對于每個報文來說,不論你啟用了多少種優(yōu)先級,這種屏蔽式QoS決策流程只能 允許一種較高級別的已使能優(yōu)先級類型起作用。所有入口數(shù)據(jù)都只會按照已啟用的較高類 型的優(yōu)先級標(biāo)簽值的大小,被分配到相應(yīng)的優(yōu)先級隊列中。只有在較高的優(yōu)先級未啟用時, 才能按照較低的已啟用優(yōu)先級類型進(jìn)行隊列劃分。在所有優(yōu)先級功能都啟用的情況下,若 兩個報文的較高優(yōu)先級標(biāo)簽相同,就算較低優(yōu)先級標(biāo)簽不同,他們也是被分配到相同的優(yōu) 先級隊列中,按照相同的速率轉(zhuǎn)發(fā)。當(dāng)使用屏蔽式QoS決策流程時,已啟用的高級別的優(yōu)先 級類型可以屏蔽所有較低級別的優(yōu)先級類型,導(dǎo)致報文中的較低級別的優(yōu)先級標(biāo)簽完全失 去作用。由于現(xiàn)在優(yōu)先級的類型越來越多,用戶通常會按照多種數(shù)據(jù)類型來劃分優(yōu)先級, 也希望交換設(shè)備在傳輸數(shù)據(jù)包的過程中能夠同時兼顧各種業(yè)務(wù)類型的轉(zhuǎn)發(fā)需求。而傳統(tǒng)的 屏蔽式QoS決策流程已經(jīng)無法滿足這種需要。
發(fā)明內(nèi)容
為了解決傳統(tǒng)屏蔽式QoS決策流程的上述弊端,本文提出一種改進(jìn)的非屏蔽式 QoS決策流程如圖3所示。非屏蔽式QoS決策流程可以讓用戶自己配置優(yōu)先級類型的高低 等級,或者保持原始QoS類型高低等級不變,仍為Diff^erv Based QoS > 802. IPBased QoS > MAC-SA Based QoS > Protocol Based QoS > Port Based QoS0修改后的非屏蔽式QoS機(jī)制可以同時啟動多種優(yōu)先級,已啟用的高類型優(yōu)先級可 以屏蔽低類型優(yōu)先級;當(dāng)兩個報文的高類型優(yōu)先級標(biāo)簽值相同時,以較低類型優(yōu)先級中標(biāo) 簽值所對應(yīng)的優(yōu)先級隊列順序為準(zhǔn)。
例如當(dāng)只啟用了 DSCP優(yōu)先級時,若入口 2個數(shù)據(jù)包的DSCP相同,就算它們的VID 或PID不一樣,也是被分配到相同的出口隊列中。當(dāng)同時啟用了 DiffServ、802. lp、Port這3類優(yōu)先級功能時若入口 2個數(shù)據(jù)包 的DSCP標(biāo)簽值不同,則按照DSCP標(biāo)簽值所對應(yīng)的優(yōu)先級隊列順序發(fā)送數(shù)據(jù)包;若入口 2個 數(shù)據(jù)包的DSCP值相同,但VIDl > VID2,PID1 <PID2,由于802. IP Based QoS的級別高于 PortBased QoS,所以按照VID與優(yōu)先級隊列的映射關(guān)系來分配數(shù)據(jù)包到相應(yīng)的出口隊列; 只有當(dāng)VIDl = VID2時,才會按照PID與優(yōu)先級隊列的映射關(guān)系來分配數(shù)據(jù)包到相應(yīng)的出 口隊列。為了達(dá)到上述目的,本發(fā)明所采用的技術(shù)方案為保留交換芯片的原始優(yōu)先級類 型等級不變,或由用戶自定義優(yōu)先級類型等級??紤]到交換芯片的處理性能,非屏蔽式QoS 決策流程允許用戶最多可以同時啟用3種優(yōu)先級類型,分別對應(yīng)3級優(yōu)先級隊列。若某一 個隊列中保溫的優(yōu)先級標(biāo)簽相同,則又可以派生出下一級的4個優(yōu)先級子隊列,第1到第4 隊列的轉(zhuǎn)發(fā)速率依次提高。交換設(shè)備從高級到低級依次對各個入口報文的各類型的優(yōu)先級 標(biāo)簽進(jìn)行判斷和比較,若較高類型的QoS功能已啟用,則按照較高類型的優(yōu)先級標(biāo)簽值的 大小,將入口數(shù)據(jù)包分配到該等級相應(yīng)的優(yōu)先級隊列中。若較高類型的QoS功能未啟用,或 兩個入口報文的該類型QoS標(biāo)簽值不同,則按照優(yōu)先級類型的高低等級,依次向下尋找優(yōu) 先級功能已起用但優(yōu)先級標(biāo)簽值不同的較低優(yōu)先級類型,按照該類型優(yōu)先級標(biāo)簽值與優(yōu)先 級隊列的映射關(guān)系,將入口報文分配到相應(yīng)的下一級優(yōu)先級隊列中。若兩個報文的最低類 型優(yōu)先級標(biāo)簽值仍然相同,則停止判斷,并按照最低類型優(yōu)先級標(biāo)簽值與優(yōu)先級隊列的映 射關(guān)系,將入口報文分配到相應(yīng)的最低級優(yōu)先級隊列中。本發(fā)明的優(yōu)點是該方法既可以保留現(xiàn)有的優(yōu)先級類型的高低等級,也可以讓用 戶靈活配置優(yōu)先級類型等級,同時兼顧了用戶想同時兼顧多種類型優(yōu)先級的想法,各級優(yōu) 先級采用有選擇性的屏蔽方式和多級隊列調(diào)度,擴(kuò)展了優(yōu)先級別調(diào)度范圍,提高了交換機(jī) 的服務(wù)質(zhì)量。
圖1是各QoS技術(shù)在同一網(wǎng)絡(luò)設(shè)備中的處理順序。圖2是屏蔽式QoS優(yōu)先級決策流程圖。圖3是本文提出的非屏蔽式QoS優(yōu)先級決策流程圖。圖4是本文采用的3級出口優(yōu)先級隊列調(diào)度示例圖。
具體實施例方式下面結(jié)合附圖和實施例對本發(fā)明作進(jìn)一步說明。本文提出的非屏蔽式QoS流調(diào)度策略允許用戶在QoS決策前自定義交換機(jī)現(xiàn)有優(yōu) 先級類型的高低等級,也可以采用原始的優(yōu)先級類型等級不變。以圖3為例,其中,(n= 1,2,3,4,5 ;i = 1,2,3,4)表示不同等級的各個QoS 優(yōu)先級隊列,η值越小,隊列等級越高,隊列編號i值越大,隊列的轉(zhuǎn)發(fā)速率越快,。用戶保 持交換機(jī)原始優(yōu)先級類型不變,仍為DiffServ BasedQoS > 802. IP Based QoS > MAC-SA Based QoS > Protocol Based QoS > Port Based QoS0
后續(xù)的非屏蔽式優(yōu)先級決策流程如下(1)若交換機(jī)沒有啟用QoS功能,則所有入口數(shù)據(jù)包都被分配到最慢優(yōu)先級隊列, 即第1隊列Q1 [1]。(2)若交換機(jī)啟用了 QoS功能,則按照優(yōu)先級類型的高低等級,首先判斷Diffkrv BasedQoS功能是否啟用。(3)若交換機(jī)啟用了 DiffServ Based QoS功能,且入口兩個IP報文頭中的DSCP 標(biāo)簽值的大小不同,則按照各個入口報文的DSCP標(biāo)簽值與優(yōu)先級隊列的映射關(guān)系,將其分 配到相應(yīng)的1級出口隊列仏。(4)若交換機(jī)未啟用Diffkrv Based QoS功能,或者入口兩個IP報文頭中的DSCP 標(biāo)簽值的大小相同,則繼續(xù)判斷下一級的802. IP Based QoS功能是否啟用。(5)若交換機(jī)啟用了 802. IP Based QoS功能,且入口兩個太網(wǎng)幀的VID值不同,則 按照各個入口報文的VID標(biāo)簽值與優(yōu)先級隊列的映射關(guān)系,將其分配到相應(yīng)的2級出口隊 列%。(6)若交換機(jī)未啟用802. IP Based QoS功能,或者入口兩個太網(wǎng)幀的VID值相同, 則繼續(xù)判斷下一級的MAC-SA Based QoS功能是否啟用。(7)若交換機(jī)啟用了 MAC-SA Based QoS功能,且入口兩個太網(wǎng)幀的源MAC地址不 同,則按照各個入口報文的源MAC地址標(biāo)簽值與優(yōu)先級隊列的映射關(guān)系,將其分配到相應(yīng) 的3級出口隊列仏。(8)若交換機(jī)未啟用MAC-SA Based QoS功能,或者入口兩個太網(wǎng)幀頭的源MAC地 址相同,則繼續(xù)判斷下一級的ftOtocol BasedQoS功能是否啟用。(9)若交換機(jī)啟用了 ftOtocol Based QoS功能,且入口兩個太網(wǎng)幀的KherType 不同,則按照各個入口報文的KherTyp標(biāo)簽值與優(yōu)先級隊列的映射關(guān)系,將其分配到相應(yīng) 的4級出口隊列Q4。(10)若交換機(jī)未啟用!Protocol Based QoS功能,或者入口兩個太網(wǎng)幀頭的 EtherType標(biāo)簽值的相同,則繼續(xù)判斷下一級的PortBased QoS功能是否啟用。(11)若交換機(jī)啟用了 Port Based QoS功能,則按照各個入口報文的PID標(biāo)簽值與 優(yōu)先級隊列的映射關(guān)系,將其分配到相應(yīng)的5級出口隊列仏。(12)否則,將其分配到最慢的出口隊列Q5[l]。為了保證交換芯片的處理性能,非屏蔽式QoS調(diào)度機(jī)制最多可同時啟用3種優(yōu)先 級類型,采用如圖4所示的3級出口優(yōu)先級隊列,第1級為已啟用的最高優(yōu)先級類型的4個 隊列,其中第4隊列為最快隊列,第1隊列為最慢隊列,每個隊列又可以派生出下一級較低 類型的4個優(yōu)先級子隊列。如此類推,第3級QoS共可提供4X4X4 = 64個優(yōu)先級隊列。 其中端口優(yōu)先級只使用該級中的第4隊列和第1隊列。若某個優(yōu)先級隊列存在下級子隊列 的話,則該隊列本身必為空。交換機(jī)執(zhí)行完上述的優(yōu)先級決策流程后,將得到類似圖4所示的3級出口優(yōu)先級 隊列。圖中,level表示各個優(yōu)先級類型的高低級別,level數(shù)值越小,優(yōu)先級類型的級別越 高;Q[i] (i = 1,2,3,4)表示第一級的 4 個隊列;Q[i,j] (i = 1,2,3,4 ; j = 1,2,3,4)表示 第二級的 4X4= 16 個隊列;Q[i,j,k] (i = 1,2,3,4 ;j = 1,2,3,4 ;k = 1,2,3,4)表示第 三級的4X4X4 = 64個隊列,其中i、j、k分別對應(yīng)第一、二、三級的優(yōu)先級子隊列編號;同一個根節(jié)點的子優(yōu)先級隊列都是按照從快到慢的順序從左到右依次排列。最左邊為第4隊 列,最右邊為第1隊列。圖4中實心節(jié)點表示包含數(shù)據(jù)的優(yōu)先級隊列,空心節(jié)點(即每級的 根節(jié)點)表示不包含數(shù)據(jù)的空隊列。由于每一級的根隊列本身必為空,因此該3級優(yōu)先級 隊列中可輸出的隊列最多有43 = 64個。然后,依據(jù)本文提出的后序四叉樹查找法,交換機(jī)可以依次發(fā)送各個類型的優(yōu)先 級隊列中的報文。圖4中虛線所示即為后序四叉樹查找法的遍歷路線,新后序四叉樹查找法的遞歸 算法定義為(1)若四叉樹根結(jié)點的數(shù)據(jù)為空且存在子節(jié)點,則依次從左到右遍歷它的各個子 樹(2)否則,輸出根節(jié)點的數(shù)據(jù)。用四叉鏈表做為存儲結(jié)構(gòu),本文提出的后序遍歷算法可描述為
權(quán)利要求
1.一種同時支持多種優(yōu)先級的非屏蔽式QoS流調(diào)度策略,包括隊列的創(chuàng)建、報文的分 類、將報文送入不同的隊列、隊列調(diào)度等過程。其特征是采用一種改進(jìn)的非屏蔽式QoS決 策流程,將帶有多種優(yōu)先級標(biāo)簽的報文分配到各層優(yōu)先級隊列。
2.根據(jù)權(quán)利要求1所述的一種同時支持多種優(yōu)先級的非屏蔽式QoS流調(diào)度策略,其特 征是能夠讓用戶自定義優(yōu)先級類型的高低等級,按照用戶定義的優(yōu)先級等級來劃分隊列 層次。
3.根據(jù)權(quán)利要求1所述的一種同時支持多種優(yōu)先級的非屏蔽式QoS流調(diào)度策略,其特 征是能夠同時啟用多種優(yōu)先級,且高優(yōu)先級不完全屏蔽低優(yōu)先級。
4.根據(jù)權(quán)利要求1所述的一種同時支持多種優(yōu)先級的QoS流調(diào)度策略,其特征是依 據(jù)已啟用的各種優(yōu)先級類型的高低等級,將數(shù)據(jù)包分配到該類型優(yōu)先級標(biāo)簽值所對應(yīng)的優(yōu) 先級隊列。
5.根據(jù)權(quán)利要求1所述的一種同時支持多種優(yōu)先級的QoS流調(diào)度策略,其特征是創(chuàng) 建3層優(yōu)先級隊列,每一層優(yōu)先級隊列對應(yīng)一種已啟用的優(yōu)先級類型,隊列采用4叉鏈表的 數(shù)據(jù)結(jié)構(gòu),按照優(yōu)先級類型的高低,從上到下依次鏈接。
6.根據(jù)權(quán)利要求5所述的3層優(yōu)先級隊列,其特征是每一層隊列中優(yōu)先級標(biāo)簽值相 同的數(shù)據(jù)包,按照它的下一級已啟用的優(yōu)先級標(biāo)簽值,被全部分配到與其相連的下一級優(yōu) 先級子隊列中,因此每個根節(jié)點的優(yōu)先級隊列中不包含任何數(shù)據(jù)。
7.根據(jù)權(quán)利要求1所述的一種同時支持多種優(yōu)先級的QoS流調(diào)度策略,其特征是使 用改進(jìn)的后序四叉樹查找法來實現(xiàn)3層優(yōu)先級隊列的調(diào)度。
8.根據(jù)權(quán)利要求7所述的后序四叉樹優(yōu)先級調(diào)度方法,其特征是若四叉樹根結(jié)點隊 列的數(shù)據(jù)為空且存在子節(jié)點,則依次從左到右遍歷它的各個子樹;否則,輸出根節(jié)點的數(shù) 據(jù)。
全文摘要
本發(fā)明公開了一種同時支持多種優(yōu)先級的非屏蔽式QoS流調(diào)度策略。首先,按照用戶定制的優(yōu)先級類型高低次序,從上到下創(chuàng)建四叉鏈表結(jié)構(gòu)的3級優(yōu)先級隊列,每個已啟用的優(yōu)先級類型對應(yīng)一級隊列。接著,按照非屏蔽式的QoS決策流程和已啟用的優(yōu)先級高低等級,將帶有多種優(yōu)先級標(biāo)簽的入口數(shù)據(jù)包分配到各級相應(yīng)的優(yōu)先級隊列中;然后,按照新的后序四叉樹查找法,遍歷各級優(yōu)先級隊列,實現(xiàn)3級優(yōu)先級隊列的調(diào)度。該技術(shù)既保留了用戶定制的優(yōu)先級類型高低等級,又兼顧了用戶想同時啟用多種優(yōu)先級的想法,滿足用戶的多種業(yè)務(wù)需求。同時也擴(kuò)展了優(yōu)先級別的調(diào)度范圍,提高了交換機(jī)的服務(wù)質(zhì)量。
文檔編號H04L12/56GK102075431SQ20111002714
公開日2011年5月25日 申請日期2011年1月25日 優(yōu)先權(quán)日2011年1月25日
發(fā)明者劉洋, 周厚明 申請人:武漢邁威光電技術(shù)有限公司