專利名稱:一種優(yōu)化服務質量配置的方法及報文轉發(fā)設備的制作方法
技術領域:
本發(fā)明涉及承載網網絡通訊領域,尤其涉及一種優(yōu)化服務質量(Quality of krvice,簡稱為Q0Q的方法及報文轉發(fā)設備。
背景技術:
在傳統(tǒng)的IP網絡中,所有的報文都被無區(qū)別地等同對待,每個路由器對所有的報文均采用先進先出(First Input First Output,簡稱為FIFO)的策略進行處理,它盡最大的努力將報文送到目的地,但對報文傳送的可靠性、傳送延遲等性能不提供任何保證。隨著IP網絡上新應用的不斷出現(xiàn),對IP網絡的服務質量也提出了新的要求,傳統(tǒng) IP網絡的“盡力服務”策略已不能滿足現(xiàn)有應用的需要。如對于VoIP(Voice over Internet Protocol,網絡電話)業(yè)務來說,如果報文傳送時延太大,將是用戶所不能接受的。因此,為 hternet(因特網)提供支持QoS的能力是解決該問題的可行方法。QoS即服務質量,它旨在針對各種應用的不同需求,為其提供不同的服務質量,如提供專用帶寬、減少報文丟失率、降低報文傳送時延及時延抖動等。常用的方式如限速、根據優(yōu)先級信息進行轉發(fā)等(根據報文特征限制它的轉發(fā)速率和賦予它優(yōu)先級)。如圖1所示,描述了報文在路由器中的轉發(fā)過程和QoS的應用場景。箭頭方向指示了報文的轉發(fā)路徑,QoS策略應用在路由器的一個輸入端口 gei-0/1/0/3上。報文從這個輸入端口進入后,路由器設備如果判斷出滿足策略條件就會對該報文進行對應的QoS操作,比如限速、根據優(yōu)先級信息進行轉發(fā)等。如下程序是在某一個端口上進行QoS策略配置的一個簡單例子。其中,class-map 禾口 policy-map、service-policy命令結合使用;ingress表示進入這個端口的 艮文。
zxrlO (config)
class-mpa abc match-all
match precedence 0,1,3,4,5,6,7 zxrlO (config) policy-map 123 class abc police 2000 200 zxrlO(config)
service-policy gei-0/3/0/1 123 ingress
policy-map 123是一個QoS策略,它會通過service-policy命令應用到某一個路由器的端口上(如gei-0/1/0/3)。其中policy-map 123的內容是,對于應用了 QoS策略的路由器端口收到的報文,凡是滿足class-map abc的報文都會應用一組策略police 2000,以限制報文轉發(fā)速率為20001ApS。200是和限速值配合使用的一個附加值,表示緩存大小。同時,滿足class-map abc的報文是,match precedence 0134567,也就是報文中的 precedence值等于以上這幾個值中任意一個值的報文。如圖2所示,在這種流量管理的配置應用場景中,常用的實現(xiàn)方式是讓不同的報文進不同的隊列。如precedence值等于0、1、3、4、5、6或7的報文走隊列l(wèi),precedence值等于2的報文走隊列2 (其中precedece的取值范圍只能是0 7)。其中隊列1有2000kpbs 的限速,隊列2為普通隊列。隊列可以理解成一種硬件資源,能實現(xiàn)分流的目的,同時隊列又具有流量管理的功能(比如限速)。在使用過程中,經常遇到這樣問題,比如,當QoS策略的應用條件配置為matCh precedence 0 1 3 4 5 6 7,這種配置實際上是只要不匹配precedence〗即可,但在match precedence選項中卻需要列出所有除了 2之外的所有數(shù)字,比較麻煩,容易出錯。另外如果QoS策略的應用條件時匹配報文攜帶的vlan (Virtual Local Area Network,虛擬局域網)或者匹配的對象取值范圍很大時,那么就更麻煩了,比如match vlan的取值范圍是 1-4095。此外,對于如此多的數(shù)字,一般的實現(xiàn)方式是把每一個值依次寫入一塊存儲區(qū)域, 然后讓路由器中相關的芯片設備一一進行查找匹配操作。一方面浪費了很多存儲空間,另一方面降低了芯片的查找速度。還有一種方式是進行壓縮。比如4、5、6、7這四個數(shù)采用二進制表示方式可分別寫為100、101、110及111,用偽程序可以統(tǒng)一表示成1**,其中‘*’表示可能取不同的值。這樣, 寫入存儲區(qū)域的條目由兩部分組成鍵值和掩碼。在轉發(fā)報文的過程中,掩碼某一位是1時表示報文中的這一位必須和鍵值中的這一位要一致才算相匹配,掩碼某一位是O是則表示不關心這一位。這樣,使用二進制方式的鍵值100及掩碼100,或者16進制的鍵值0x0004 及掩碼0x0004,就可以表示上述4 7這4個值了。對于match vlan 1-353及;355_4095這一 QoS策略的應用條件,僅僅沒有;354的情況,通過壓縮算法可以使用圖3所示的條目表示。采用16進制表示方式時,總共19條。 但是這種情況下條目還是很多,不能在根本上提高性能。
發(fā)明內容
本發(fā)明的目的在于提供一種優(yōu)化QoS配置的方法及報文轉發(fā)設備,以克服現(xiàn)有技術class-map中match多個不同值占用大量存儲空間的問題。為解決上述問題,本發(fā)明提供了一種優(yōu)化服務質量配置的方法,應用于報文轉發(fā)設備中,包括在接收到用戶配置的服務質量策略的應用條件及滿足該應用條件的報文的輸出隊列的信息后,如判斷出所述應用條件中所包含的匹配數(shù)據的個數(shù)超過允許數(shù)值范圍內除該匹配數(shù)據之外的所有其他數(shù)據的個數(shù),則將所述所有其他數(shù)據作為新的應用條件中的匹配數(shù)據進行存儲,并設置將滿足所述新的應用條件的報文從除滿足原應用條件的報文的輸出隊列之外的其他隊列輸出。進一步地,所述將所述所有其他數(shù)據作為新的應用條件中的匹配數(shù)據進行存儲,具體包括將所述所有其他數(shù)據作為所述新的應用條件中的匹配數(shù)據,按照壓縮方式進行壓縮后存儲。進一步地,所述方法還包括將允許數(shù)值范圍內的所有數(shù)據作為另一個應用條件中的匹配數(shù)據進行存儲,并設置將滿足該另一個應用條件的報文從滿足所述原應用條件的報文的輸出隊列輸出;所述報文轉發(fā)設備在收到一報文后,先應用所述新的應用條件中匹配數(shù)據進行匹配,如不滿足所述新的應用條件,再使用所述另一個應用條件中的匹配數(shù)據進行匹配。進一步地,所述方法還包括所述報文轉發(fā)設備在收到一報文后,先應用所述新的應用條件中匹配數(shù)據進行匹配,如滿足所述新的應用條件,則根據設置將所述報文從除滿足原應用條件的報文的輸出隊列之外的其他隊列輸出;否則,從滿足原應用條件的報文的輸出隊列輸出。進一步地,所述將允許數(shù)值范圍內的所有數(shù)據作為另一個應用條件中的匹配數(shù)據進行存儲, 具體包括將允許數(shù)值范圍內的所有數(shù)據作為所述另一個應用條件中的匹配數(shù)據,按照壓縮方式進行壓縮后存儲。相應地,本發(fā)明還提供了一種報文轉發(fā)設備,包括交互模塊,用于接收用戶配置的服務質量策略的應用條件及滿足該應用條件的報文的輸出隊列的信息;判斷模塊,用于判斷所述應用條件中所包含的匹配數(shù)據的個數(shù)是否超過允許數(shù)值范圍內除該匹配數(shù)據之外的所有其他數(shù)據的個數(shù);轉換模塊,用于在所述判斷模塊判斷出所述應用條件中所包含的匹配數(shù)據的個數(shù)超過所述所有其他數(shù)據的個數(shù)時,將所述所有其他數(shù)據作為新的應用條件中的匹配數(shù)據進行存儲,并設置將滿足所述新的應用條件的報文從除滿足原應用條件的報文的輸出隊列之外的其他隊列輸出。進一步地,所述轉化模塊將所述所有其他數(shù)據作為新的應用條件中的匹配數(shù)據進行存儲,具體包括所述轉換模塊將所述所有其他數(shù)據作為所述新的應用條件中的匹配數(shù)據,按照壓縮方式進行壓縮后存儲。進一步地,所述設備還包括報文接收模塊及匹配模塊;所述轉換模塊還用于將允許數(shù)值范圍內的所有數(shù)據作為另一個應用條件中的匹配數(shù)據進行存儲,并設置將滿足該另一個應用條件的報文從滿足所述原應用條件的報文的輸出隊列輸出;所述報文接收模塊用于接收報文;所述匹配模塊用于先應用所述新的應用條件中的匹配數(shù)據對所述報文接收模塊接收到的所述報文進行匹配,如不滿足所述新的應用條件,再使用所述另一個應用條件中的匹配數(shù)據對所述報文進行匹配。進一步地,所述設備還包括報文轉發(fā)模塊,用于在所述匹配模塊判斷出所述報文接收模塊接收到的所述報文滿足所述新的應用條件時,根據設置將所述報文從除滿足原應用條件的報文的輸出隊列之外的其他隊列輸出;否則,從滿足原應用條件的報文的輸出隊列輸出。進一步地,所述轉換模塊用于將允許數(shù)值范圍內的所有數(shù)據作為另一個應用條件中的匹配數(shù)據進行存儲,具體包括所述轉換模塊用于將允許數(shù)值范圍內的所有數(shù)據作為所述另一個應用條件中的匹配數(shù)據,按照壓縮方式進行壓縮后存儲。采用本發(fā)明后,與現(xiàn)有技術相比,大大節(jié)省了設備的存儲空間,同時提高了芯片查找匹配的性能。
圖1為現(xiàn)有技術中報文在路由器中的轉發(fā)過程和QoS的應用場景示意圖;圖2為現(xiàn)有技術中一種流量管理的QoS配置應用場景示意圖;圖3為現(xiàn)有技術中采用壓縮方法對1 4095中除了 3M外的其他剩余4094個數(shù)值進行壓縮得到的結果示意圖;圖4為本發(fā)明實施例中報文轉發(fā)設備的結構示意圖;圖5為本發(fā)明實施例中對1 4095中除了 3M外的其他剩余4094個數(shù)值進行壓縮得到的結果示意圖。
具體實施例方式為使本發(fā)明的目的、技術方案和優(yōu)點更加清楚明白,下文中將結合附圖對本發(fā)明的實施例進行詳細說明。需要說明的是,在不沖突的情況下,本申請中的實施例及實施例中的特征可以相互任意組合。在本實施例中,一種優(yōu)化QoS配置的方法,可應用于路由器或交換機等報文轉發(fā)設備上,包括在接收到用戶配置的QoS策略的應用條件及滿足該應用條件的報文的輸出隊列的信息后,如判斷出該應用條件中所包含的匹配數(shù)據的個數(shù)超過允許數(shù)值范圍內除該匹配數(shù)據之外的所有其他數(shù)據的個數(shù),則將該所有其他數(shù)據作為新的應用條件中的匹配數(shù)據進行存儲,并設置將滿足該新的應用條件的報文從除滿足原應用條件的報文的輸出隊列之外的其他隊列輸出。此外,還可將允許數(shù)值范圍內的所有數(shù)據作為另一個應用條件中的匹配數(shù)據進行存儲,并設置將滿足該另一個應用條件的報文從滿足原應用條件的報文的輸出隊列輸出。此后,報文轉發(fā)設備在收到一報文后,先應用該新的應用條件中匹配數(shù)據進行匹配,如不滿足該新的應用條件,再使用上述另一個應用條件中的匹配數(shù)據進行匹配。如圖4所示,本實施例中所述報文轉發(fā)設備包括以下模塊
交互模塊,用于接收用戶配置的服務質量策略的應用條件及滿足該應用條件的報文的輸出隊列的信息;判斷模塊,用于判斷所述應用條件中所包含的匹配數(shù)據的個數(shù)是否超過允許數(shù)值范圍內除該匹配數(shù)據之外的所有其他數(shù)據的個數(shù);轉換模塊,用于在所述判斷模塊判斷出所述應用條件中所包含的匹配數(shù)據的個數(shù)超過所述所有其他數(shù)據的個數(shù)時,將所述所有其他數(shù)據作為新的應用條件中的匹配數(shù)據進行存儲,并設置將滿足所述新的應用條件的報文從除滿足原應用條件的報文的輸出隊列之外的其他隊列輸出。較優(yōu)地,所述轉化模塊將所述所有其他數(shù)據作為新的應用條件中的匹配數(shù)據進行存儲,具體包括所述轉換模塊將所述所有其他數(shù)據作為所述新的應用條件中的匹配數(shù)據,按照壓縮方式進行壓縮后存儲。較優(yōu)地,上述報文轉發(fā)設備還可包括報文接收模塊及匹配模塊;所述轉換模塊還用于將允許數(shù)值范圍內的所有數(shù)據作為另一個應用條件中的匹配數(shù)據進行存儲,并設置將滿足該另一個應用條件的報文從滿足所述原應用條件的報文的輸出隊列輸出;所述報文接收模塊用于接收報文;所述匹配模塊用于先應用所述新的應用條件中的匹配數(shù)據對所述報文接收模塊接收到的所述報文進行匹配,如不滿足所述新的應用條件,再使用所述另一個應用條件中的匹配數(shù)據對所述報文進行匹配。較優(yōu)地,上述報文轉發(fā)設備還可包括報文轉發(fā)模塊,用于在所述匹配模塊判斷出所述報文接收模塊接收到的所述報文滿足所述新的應用條件時,根據設置將所述報文從除滿足原應用條件的報文的輸出隊列之外的其他隊列輸出;否則,從滿足原應用條件的報文的輸出隊列輸出。較優(yōu)地,所述轉換模塊用于將允許數(shù)值范圍內的所有數(shù)據作為另一個應用條件中的匹配數(shù)據進行存儲,具體包括所述轉換模塊用于將允許數(shù)值范圍內的所有數(shù)據作為所述另一個應用條件中的匹配數(shù)據,按照壓縮方式進行壓縮后存儲。 下面用一個應用示例進行進一步說明。如圖5所示,表示vlan值不是354的報文要有20001ibpS的限速。這時只需要2 個條目即可,條目1在前,條目2在后,芯片查找不到第一個條目就肯定會查找到第二個條目(掩碼是0,表示每一位值都不關心,所以任何報文都符合)。和圖2類似,讓條目1對應的報文走隊列2,條目2對應的報文走隊列1,同時隊列1有20001ApS限速,隊列2為普通隊列無任何限制。根據本示例可以看出,如應用條件為match vlan 1-353,355-4095時,這么多的配置條目,實現(xiàn)起來就需要占用很多存儲空間,同時芯片在查找匹配的過程中也需要一一讀取查找。如采用了上述方法實現(xiàn),那么只需要2個條目表示即可,效果顯而易見。
本領域普通技術人員可以理解上述方法中的全部或部分步驟可通過程序來指令相關硬件完成,所述程序可以存儲于計算機可讀存儲介質中,如只讀存儲器、磁盤或光盤等??蛇x地,上述實施例的全部或部分步驟也可以使用一個或多個集成電路來實現(xiàn)。相應地,上述實施例中的各模塊/單元可以采用硬件的形式實現(xiàn),也可以采用軟件功能模塊的形式實現(xiàn)。本發(fā)明不限制于任何特定形式的硬件和軟件的結合。以上所述僅為本發(fā)明的優(yōu)選實施例而已,并非用于限定本發(fā)明的保護范圍。根據本發(fā)明的發(fā)明內容,還可有其他多種實施例,在不背離本發(fā)明精神及其實質的情況下,熟悉本領域的技術人員當可根據本發(fā)明作出各種相應的改變和變形,凡在本發(fā)明的精神和原則之內,所作的任何修改、等同替換、改進等,均應包含在本發(fā)明的保護范圍之內。
權利要求
1.一種優(yōu)化服務質量配置的方法,應用于報文轉發(fā)設備中,包括在接收到用戶配置的服務質量策略的應用條件及滿足該應用條件的報文的輸出隊列的信息后,如判斷出所述應用條件中所包含的匹配數(shù)據的個數(shù)超過允許數(shù)值范圍內除該匹配數(shù)據之外的所有其他數(shù)據的個數(shù),則將所述所有其他數(shù)據作為新的應用條件中的匹配數(shù)據進行存儲,并設置將滿足所述新的應用條件的報文從除滿足原應用條件的報文的輸出隊列之外的其他隊列輸出。
2.如權利要求1所述的方法,其特征在于所述將所述所有其他數(shù)據作為新的應用條件中的匹配數(shù)據進行存儲,具體包括將所述所有其他數(shù)據作為所述新的應用條件中的匹配數(shù)據,按照壓縮方式進行壓縮后存儲。
3.如權利要求1所述的方法,其特征在于,還包括將允許數(shù)值范圍內的所有數(shù)據作為另一個應用條件中的匹配數(shù)據進行存儲,并設置將滿足該另一個應用條件的報文從滿足所述原應用條件的報文的輸出隊列輸出;所述報文轉發(fā)設備在收到一報文后,先應用所述新的應用條件中匹配數(shù)據進行匹配, 如不滿足所述新的應用條件,再使用所述另一個應用條件中的匹配數(shù)據進行匹配。
4.如權利要求3所述的方法,其特征在于,還包括所述報文轉發(fā)設備在收到一報文后,先應用所述新的應用條件中匹配數(shù)據進行匹配, 如滿足所述新的應用條件,則根據設置將所述報文從除滿足原應用條件的報文的輸出隊列之外的其他隊列輸出;否則,從滿足原應用條件的報文的輸出隊列輸出。
5.如權利要求3所述的方法,其特征在于所述將允許數(shù)值范圍內的所有數(shù)據作為另一個應用條件中的匹配數(shù)據進行存儲,具體包括將允許數(shù)值范圍內的所有數(shù)據作為所述另一個應用條件中的匹配數(shù)據,按照壓縮方式進行壓縮后存儲。
6.一種報文轉發(fā)設備,包括交互模塊,用于接收用戶配置的服務質量策略的應用條件及滿足該應用條件的報文的輸出隊列的信息;判斷模塊,用于判斷所述應用條件中所包含的匹配數(shù)據的個數(shù)是否超過允許數(shù)值范圍內除該匹配數(shù)據之外的所有其他數(shù)據的個數(shù);轉換模塊,用于在所述判斷模塊判斷出所述應用條件中所包含的匹配數(shù)據的個數(shù)超過所述所有其他數(shù)據的個數(shù)時,將所述所有其他數(shù)據作為新的應用條件中的匹配數(shù)據進行存儲,并設置將滿足所述新的應用條件的報文從除滿足原應用條件的報文的輸出隊列之外的其他隊列輸出。
7.如權利要求6所述的設備,其特征在于所述轉化模塊將所述所有其他數(shù)據作為新的應用條件中的匹配數(shù)據進行存儲,具體包括所述轉換模塊將所述所有其他數(shù)據作為所述新的應用條件中的匹配數(shù)據,按照壓縮方式進行壓縮后存儲。
8.如權利要求6所述的設備,其特征在于,還包括報文接收模塊及匹配模塊;所述轉換模塊還用于將允許數(shù)值范圍內的所有數(shù)據作為另一個應用條件中的匹配數(shù)據進行存儲,并設置將滿足該另一個應用條件的報文從滿足所述原應用條件的報文的輸出隊列輸出;所述報文接收模塊用于接收報文;所述匹配模塊用于先應用所述新的應用條件中的匹配數(shù)據對所述報文接收模塊接收到的所述報文進行匹配,如不滿足所述新的應用條件,再使用所述另一個應用條件中的匹配數(shù)據對所述報文進行匹配。
9.如權利要求8所述的設備,其特征在于,還包括報文轉發(fā)模塊,用于在所述匹配模塊判斷出所述報文接收模塊接收到的所述報文滿足所述新的應用條件時,根據設置將所述報文從除滿足原應用條件的報文的輸出隊列之外的其他隊列輸出;否則,從滿足原應用條件的報文的輸出隊列輸出。
10.如權利要求8所述的設備,其特征在于所述轉換模塊用于將允許數(shù)值范圍內的所有數(shù)據作為另一個應用條件中的匹配數(shù)據進行存儲,具體包括所述轉換模塊用于將允許數(shù)值范圍內的所有數(shù)據作為所述另一個應用條件中的匹配數(shù)據,按照壓縮方式進行壓縮后存儲。
全文摘要
一種優(yōu)化服務質量的方法及報文轉發(fā)設備,所述報文轉發(fā)設備包括交互模塊、判斷模塊及轉換模塊;所述方法應用于報文轉發(fā)設備中,包括在接收到用戶配置的服務質量策略的應用條件及滿足該應用條件的報文的輸出隊列的信息后,如判斷出所述應用條件中所包含的匹配數(shù)據的個數(shù)超過允許數(shù)值范圍內除該匹配數(shù)據之外的所有其他數(shù)據的個數(shù),則將所述所有其他數(shù)據作為新的應用條件中的匹配數(shù)據進行存儲,并設置將滿足所述新的應用條件的報文從除滿足原應用條件的報文的輸出隊列之外的其他隊列輸出。采用本發(fā)明后,與現(xiàn)有技術相比,大大節(jié)省了設備的存儲空間,同時提高了芯片查找匹配的性能。
文檔編號H04L12/56GK102377668SQ20111031494
公開日2012年3月14日 申請日期2011年10月17日 優(yōu)先權日2011年10月17日
發(fā)明者宋君 申請人:中興通訊股份有限公司