本發(fā)明涉及通信技術(shù)領(lǐng)域,尤其涉及數(shù)據(jù)流調(diào)度方法及裝置。
背景技術(shù):
隨著通信技術(shù)的飛速發(fā)展,使得對帶寬、延遲、抖動(dòng)敏感的語音、視頻以及數(shù)據(jù)等業(yè)務(wù)越來越多的通過網(wǎng)絡(luò)傳輸。為了能夠?qū)?shù)據(jù)傳輸性能提供不同的承諾和保證,廣泛的使用了QoS(Quality of Service,服務(wù)質(zhì)量)技術(shù)來保證網(wǎng)絡(luò)傳輸質(zhì)量。然而,隨著用戶規(guī)模的擴(kuò)大,業(yè)務(wù)種類的增多,要求網(wǎng)絡(luò)設(shè)備不僅能夠進(jìn)一步細(xì)化區(qū)分業(yè)務(wù)流量,而且還能夠針對多個(gè)用戶、多種業(yè)務(wù)以及多種流量等傳輸對象進(jìn)行統(tǒng)一管理和分層調(diào)度。這對于傳統(tǒng)的QoS技術(shù)來說,是難以實(shí)現(xiàn)的。為了達(dá)到分層調(diào)度的目的,HQoS(Hierarchical Quality of Service,分層QoS)技術(shù)應(yīng)運(yùn)而生。但是,現(xiàn)有的HQoS技術(shù)調(diào)度層次固定,不能根據(jù)用戶需求進(jìn)行靈活的分層調(diào)度,調(diào)度數(shù)據(jù)流的效率較低。
技術(shù)實(shí)現(xiàn)要素:
本發(fā)明的主要目的在于提供一種數(shù)據(jù)流調(diào)度方法及裝置,旨在提高調(diào)度數(shù)據(jù)流的效率。
為實(shí)現(xiàn)上述目的,本發(fā)明提供一種數(shù)據(jù)流調(diào)度方法,所述數(shù)據(jù)流調(diào)度方法包括:
按照當(dāng)前調(diào)度參數(shù)確定預(yù)設(shè)端口需要使能的調(diào)度層級;
使能確定的調(diào)度層級的相應(yīng)調(diào)度節(jié)點(diǎn),并建立不同調(diào)度層級調(diào)度節(jié)點(diǎn)之間的鏈接關(guān)系;
為使能的各調(diào)度節(jié)點(diǎn)配置調(diào)度策略;
在所述預(yù)設(shè)端口接收到數(shù)據(jù)流時(shí),根據(jù)各調(diào)度節(jié)點(diǎn)配置的調(diào)度策略及各調(diào)度節(jié)點(diǎn)之間的鏈接關(guān)系,在使能的各調(diào)度節(jié)點(diǎn)之間對所述數(shù)據(jù)流分層進(jìn)行調(diào)度。
優(yōu)選地,所述預(yù)設(shè)端口包括一類端口和二類端口,當(dāng)所述預(yù)設(shè)端口為一類端口時(shí),所述預(yù)設(shè)端口包括5級調(diào)度層級;當(dāng)所述預(yù)設(shè)端口為二類端口時(shí),所述預(yù)設(shè)端口包括3級調(diào)度層級。
優(yōu)選地,所述按照當(dāng)前調(diào)度參數(shù)確定預(yù)設(shè)端口需要使能的調(diào)度層級包括:
始終將所述預(yù)設(shè)端口調(diào)度優(yōu)先級最低和最高的調(diào)度層級作為需要使能的調(diào)度層級,并按照當(dāng)前調(diào)度參數(shù),確定所述預(yù)設(shè)端口需要使能的,除所述預(yù)設(shè)端口調(diào)度優(yōu)先級最低和最高的調(diào)度層級之外的其它調(diào)度層級。
優(yōu)選地,所述為使能的各調(diào)度節(jié)點(diǎn)配置調(diào)度策略包括:
為使能的各調(diào)度節(jié)點(diǎn)配置調(diào)度算法、流量整形策略和/或擁塞避免策略。
優(yōu)選地,所述按照當(dāng)前調(diào)度參數(shù)確定預(yù)設(shè)端口需要使能的調(diào)度層級之前,還包括:
接收用戶基于調(diào)度參數(shù)設(shè)置界面輸入的調(diào)度參數(shù);
將接收到的所述調(diào)度參數(shù)作為當(dāng)前調(diào)度參數(shù)。
此外,為實(shí)現(xiàn)上述目的,本發(fā)明還提供一種數(shù)據(jù)流調(diào)度裝置,所述數(shù)據(jù)流調(diào)度裝置包括:
確定模塊,用于按照當(dāng)前調(diào)度參數(shù)確定預(yù)設(shè)端口需要使能的調(diào)度層級;
使能模塊,用于使能確定的調(diào)度層級的相應(yīng)調(diào)度節(jié)點(diǎn),并建立不同調(diào)度層級調(diào)度節(jié)點(diǎn)之間的鏈接關(guān)系;
配置模塊,用于為使能的各調(diào)度節(jié)點(diǎn)配置調(diào)度策略;
調(diào)度模塊,用于在所述預(yù)設(shè)端口接收到數(shù)據(jù)流時(shí),根據(jù)各調(diào)度節(jié)點(diǎn)配置的調(diào)度策略及各調(diào)度節(jié)點(diǎn)之間的鏈接關(guān)系,在使能的各調(diào)度節(jié)點(diǎn)之間對所述數(shù)據(jù)流分層進(jìn)行調(diào)度。
優(yōu)選地,所述預(yù)設(shè)端口包括一類端口和二類端口,當(dāng)所述預(yù)設(shè)端口為一類端口時(shí),所述預(yù)設(shè)端口包括5級調(diào)度層級;當(dāng)所述預(yù)設(shè)端口為二類端口時(shí),所述預(yù)設(shè)端口包括3級調(diào)度層級。
優(yōu)選地,所述確定模塊還用于始終將所述預(yù)設(shè)端口調(diào)度優(yōu)先級最低和最高的調(diào)度層級作為需要使能的調(diào)度層級,并按照當(dāng)前調(diào)度參數(shù),確定所述預(yù)設(shè)端口需要使能的,除所述預(yù)設(shè)端口調(diào)度優(yōu)先級最低和最高的調(diào)度層級之外的其它調(diào)度層級。
優(yōu)選地,所述配置模塊還用于為使能的各調(diào)度節(jié)點(diǎn)配置調(diào)度算法、流量整形策略和/或擁塞避免策略。
優(yōu)選地,所述數(shù)據(jù)流調(diào)度裝置還包括設(shè)置模塊,用于接收用戶基于調(diào)度參數(shù)設(shè)置界面輸入的調(diào)度參數(shù);以及將接收到的所述調(diào)度參數(shù)作為當(dāng)前調(diào)度參數(shù)。
本發(fā)明在現(xiàn)有HQoS技術(shù)的基礎(chǔ)上,靈活選擇需要使能的調(diào)度層級,并使能選擇的調(diào)度層級相應(yīng)的調(diào)度節(jié)點(diǎn),各調(diào)度節(jié)點(diǎn)按照配置的調(diào)度策略以及調(diào)度節(jié)點(diǎn)間的鏈接關(guān)系相互配合,實(shí)現(xiàn)數(shù)據(jù)流的分層調(diào)度。解決了現(xiàn)有HQoS技術(shù)中調(diào)度層級固定的問題,更符合用戶需求,且避免了不必要的處理資源浪費(fèi),從而本發(fā)明能夠提高調(diào)度數(shù)據(jù)流的效率。
附圖說明
圖1為本發(fā)明數(shù)據(jù)流調(diào)度方法較佳實(shí)施例的流程示意圖;
圖2為本發(fā)明數(shù)據(jù)流調(diào)度方法較佳實(shí)施例中的組網(wǎng)示意圖;
圖3為本發(fā)明數(shù)據(jù)流調(diào)度方法較佳實(shí)施例中一種調(diào)度層級示意圖;
圖4為本發(fā)明數(shù)據(jù)流調(diào)度方法較佳實(shí)施例中另一種調(diào)度層級示意圖;
圖5為本發(fā)明數(shù)據(jù)流調(diào)度方法較佳實(shí)施例中又一種調(diào)度層級示意圖;
圖6為本發(fā)明數(shù)據(jù)流調(diào)度裝置較佳實(shí)施例的功能模塊示意圖。
本發(fā)明目的的實(shí)現(xiàn)、功能特點(diǎn)及優(yōu)點(diǎn)將結(jié)合實(shí)施例,參照附圖做進(jìn)一步說明。
具體實(shí)施方式
應(yīng)當(dāng)理解,此處所描述的具體實(shí)施例僅僅用以解釋本發(fā)明,并不用于限定本發(fā)明。
本發(fā)明提供一種數(shù)據(jù)流調(diào)度方法,參照圖1,在本發(fā)明數(shù)據(jù)流調(diào)度方法的較佳實(shí)施例中,所述數(shù)據(jù)流調(diào)度方法包括:
S10,按照當(dāng)前調(diào)度參數(shù)確定預(yù)設(shè)端口需要使能的調(diào)度層級;
S20,使能確定的調(diào)度層級的相應(yīng)調(diào)度節(jié)點(diǎn),并建立不同調(diào)度層級調(diào)度節(jié)點(diǎn)之間的鏈接關(guān)系;
本實(shí)施例提供的數(shù)據(jù)流調(diào)度方法可以應(yīng)用于MPLS(Multi-Protocol Label Switching,多協(xié)議標(biāo)簽交換)網(wǎng)絡(luò),例如,在MPLS網(wǎng)絡(luò)中,當(dāng)某網(wǎng)絡(luò)節(jié)點(diǎn)的某端口接收到數(shù)據(jù)流時(shí),根據(jù)預(yù)先配置的調(diào)度層級以及相應(yīng)的調(diào)度策略對所述數(shù)據(jù)流進(jìn)行分層調(diào)度,高效的將數(shù)據(jù)流轉(zhuǎn)發(fā)出去。以下以本發(fā)明提供的數(shù)據(jù)流調(diào)度方法應(yīng)用于MPLS網(wǎng)絡(luò)進(jìn)行說明。
需要說明的是,MPLS是新一代的IP高速骨干網(wǎng)絡(luò)交換標(biāo)準(zhǔn),由IETF(Internet Engineering Task Force,因特網(wǎng)工程任務(wù)組)提出。MPLS獨(dú)立于第二層和第三層協(xié)議,其利用Label(標(biāo)簽)進(jìn)行數(shù)據(jù)轉(zhuǎn)發(fā):當(dāng)數(shù)據(jù)流進(jìn)入網(wǎng)絡(luò)節(jié)點(diǎn)時(shí),為其分配固定長度的標(biāo)簽,并將標(biāo)簽與數(shù)據(jù)流封裝在一起,在整個(gè)轉(zhuǎn)發(fā)過程中,網(wǎng)絡(luò)節(jié)點(diǎn)僅根據(jù)標(biāo)簽進(jìn)行轉(zhuǎn)發(fā)。其中,數(shù)據(jù)傳輸發(fā)生在LSP(標(biāo)簽交換路徑)上,LSP是每一個(gè)沿著源端到終端的路徑上的網(wǎng)絡(luò)節(jié)點(diǎn)的標(biāo)簽序列。
本實(shí)施例提出的數(shù)據(jù)流調(diào)度方法,根據(jù)MPLS的特性,預(yù)先劃分不同的調(diào)度層級,并按照當(dāng)前調(diào)度參數(shù)確定預(yù)設(shè)端口需要使能的調(diào)度層級;以及按照當(dāng)前調(diào)度參數(shù)使能確定的調(diào)度層級的相應(yīng)調(diào)度節(jié)點(diǎn),并建立不同調(diào)度層級調(diào)度節(jié)點(diǎn)之間的鏈接關(guān)系。其中,所述調(diào)度參數(shù)包括但不限于需要使能的調(diào)度層級信息、調(diào)度節(jié)點(diǎn)信息、調(diào)度策略信息以及不同調(diào)度層級調(diào)度節(jié)點(diǎn)之間的鏈接關(guān)系信息。
S30,為使能的各調(diào)度節(jié)點(diǎn)配置調(diào)度策略;
在調(diào)度節(jié)點(diǎn)使能后,需要為使能的各調(diào)度節(jié)點(diǎn)配置調(diào)度策略。其中,不同調(diào)度層級或者相同調(diào)度層級的調(diào)度節(jié)點(diǎn)之間可以配置相同的調(diào)度策略,也可以配置不同的調(diào)度策略,具體根據(jù)調(diào)度參數(shù)中的調(diào)度策略信息進(jìn)行配置。
S40,在所述預(yù)設(shè)端口接收到數(shù)據(jù)流時(shí),根據(jù)各調(diào)度節(jié)點(diǎn)配置的調(diào)度策略及各調(diào)度節(jié)點(diǎn)之間的鏈接關(guān)系,在使能的各調(diào)度節(jié)點(diǎn)之間對所述數(shù)據(jù)流分層進(jìn)行調(diào)度。
需要說明的是,本實(shí)施例中,為不同調(diào)度層級的各調(diào)度節(jié)點(diǎn)分別掛載有相應(yīng)調(diào)度層級的調(diào)度器,由不同調(diào)度層級的調(diào)度器實(shí)現(xiàn)數(shù)據(jù)流的分層調(diào)度。具體地,按照調(diào)度器之間的調(diào)度層級關(guān)系(不同調(diào)度層級調(diào)度節(jié)點(diǎn)之間的鏈接關(guān)系)以及相應(yīng)的調(diào)度策略,上級調(diào)度器控制一組下級調(diào)度器的總帶寬,并根據(jù)下級調(diào)度器的級別和權(quán)重分配下級調(diào)度器的承諾帶寬和峰值帶寬,實(shí) 現(xiàn)數(shù)據(jù)流的分層調(diào)度。
本實(shí)施例提出的數(shù)據(jù)流調(diào)度方法,在現(xiàn)有HQoS技術(shù)的基礎(chǔ)上,靈活選擇需要使能的調(diào)度層級,并使能選擇的調(diào)度層級相應(yīng)的調(diào)度節(jié)點(diǎn),各調(diào)度節(jié)點(diǎn)按照配置的調(diào)度策略以及調(diào)度節(jié)點(diǎn)間的鏈接關(guān)系相互配合,實(shí)現(xiàn)數(shù)據(jù)流的分層調(diào)度。解決了現(xiàn)有HQoS技術(shù)中調(diào)度層級固定的問題,更符合用戶需求,且避免了不必要的處理資源浪費(fèi),從而本發(fā)明能夠提高調(diào)度數(shù)據(jù)流的效率。
進(jìn)一步地,在本發(fā)明數(shù)據(jù)流調(diào)度方法的較佳實(shí)施例中,所述預(yù)設(shè)端口包括一類端口和二類端口,當(dāng)所述預(yù)設(shè)端口為一類端口時(shí),所述預(yù)設(shè)端口包括5級調(diào)度層級;當(dāng)所述預(yù)設(shè)端口為二類端口時(shí),所述預(yù)設(shè)端口包括3級調(diào)度層級。
需要說明的是,在MPLS網(wǎng)絡(luò)中,包括兩類端口,參照圖2,將本網(wǎng)絡(luò)內(nèi)的網(wǎng)絡(luò)節(jié)點(diǎn)相連的端口稱為NNI(網(wǎng)絡(luò)節(jié)點(diǎn)端口),本網(wǎng)絡(luò)和其它網(wǎng)絡(luò)相連的端口稱為UNI(用戶網(wǎng)絡(luò)端口)。本實(shí)施例按照MPLS的網(wǎng)絡(luò)結(jié)構(gòu),為不同類型的端口劃分不同級數(shù)的調(diào)度層級。
具體地,當(dāng)所述預(yù)設(shè)端口為一類端口(NNI)時(shí),所述預(yù)設(shè)端口包括5級調(diào)度層級,即針對NNI劃分有5級調(diào)度層級,分別為:端口、VLAN子端口、隧道、偽線以及隊(duì)列,各調(diào)度層級包括一個(gè)或多個(gè)調(diào)度節(jié)點(diǎn)。例如,參照圖3,針對NNI,使能了全部5級調(diào)度層級的調(diào)度節(jié)點(diǎn);參照圖4,針對NNI,使能了端口、隧道、偽線以及隊(duì)列調(diào)度層級的調(diào)度節(jié)點(diǎn)。
當(dāng)所述預(yù)設(shè)端口為二類端口(UNI)時(shí),所述預(yù)設(shè)端口包括3級調(diào)度層級,即針對UNI劃分有3級調(diào)度層級,分別為:端口、CIP(Client Computer's IP address,客戶端地址)以及隊(duì)列,各調(diào)度層級包括一個(gè)或多個(gè)調(diào)度節(jié)點(diǎn)。例如,參照圖5,針對UNI,使能了全部3級調(diào)度層級的調(diào)度節(jié)點(diǎn)。
本實(shí)施例通過針對不同類型的端口,相應(yīng)劃分不同的調(diào)度層級,以滿足不同的網(wǎng)絡(luò)組網(wǎng)環(huán)境。
進(jìn)一步地,在本發(fā)明數(shù)據(jù)流調(diào)度方法的較佳實(shí)施例中,所述按照當(dāng)前調(diào)度參數(shù)確定預(yù)設(shè)端口需要使能的調(diào)度層級包括:
始終將所述預(yù)設(shè)端口調(diào)度優(yōu)先級最低和最高的調(diào)度層級作為需要使能的 調(diào)度層級,并按照當(dāng)前調(diào)度參數(shù),確定所述預(yù)設(shè)端口需要使能的,除所述預(yù)設(shè)端口調(diào)度優(yōu)先級最低和最高的調(diào)度層級之外的其它調(diào)度層級。
需要說明的是,即使采用普通的QoS調(diào)度,端口調(diào)度層級和隊(duì)列調(diào)度層級的調(diào)度也是始終使能的,在本實(shí)施例中,同樣需要始終使能端口調(diào)度層級和隊(duì)列調(diào)度層級的調(diào)度,即始終將所述預(yù)設(shè)端口調(diào)度優(yōu)先級最低的調(diào)度層級(端口調(diào)度層級)和調(diào)度優(yōu)先級最高的調(diào)度層級(隊(duì)列調(diào)度層級)作為需要使能的調(diào)度層級。在前述始終將端口調(diào)度層級和隊(duì)列調(diào)度層級作為需要使能的調(diào)度層級的基礎(chǔ)上,按照當(dāng)前調(diào)度參數(shù),確定所述預(yù)設(shè)端口需要使能的,除所述預(yù)設(shè)端口調(diào)度優(yōu)先級最低和最高的調(diào)度層級之外的其它調(diào)度層級。
例如,針對NNI,始終將端口調(diào)度層級以及隊(duì)列調(diào)度層級作為需要使能的調(diào)度層級,并按照當(dāng)前調(diào)度參數(shù),動(dòng)態(tài)選擇VLAN子接口調(diào)度層級、隧道調(diào)度層級以及偽線調(diào)度層級作為需要使能的調(diào)度層級;針對UNI,始終將端口調(diào)度層級以及隊(duì)列調(diào)度層級作為需要使能的調(diào)度層級,并按照當(dāng)前調(diào)度參數(shù),動(dòng)態(tài)選擇是否將CIP調(diào)度層級作為需要使能的調(diào)度層級。
進(jìn)一步地,在本發(fā)明數(shù)據(jù)流調(diào)度方法的較佳實(shí)施例中,所述為使能的各調(diào)度節(jié)點(diǎn)配置調(diào)度策略包括:
為使能的各調(diào)度節(jié)點(diǎn)配置調(diào)度算法、流量整形策略和/或擁塞避免策略。
本實(shí)施例中,調(diào)度參數(shù)中的調(diào)度策略信息包括但不限于調(diào)度算法、流量整形策略以及擁塞避免策略,所述為使能的各調(diào)度節(jié)點(diǎn)配置調(diào)度策略包括為使能的各調(diào)度節(jié)點(diǎn)配置調(diào)度算法、流量整形策略和/或擁塞避免策略。
具體地,針對不同調(diào)度層級的調(diào)度節(jié)點(diǎn),可以配置的調(diào)度算法包括但不限于SP(Strict Priority,嚴(yán)格優(yōu)選級)、RR(Round Robin,循環(huán)調(diào)度)、DRR(Deficit Round Robin,差額循環(huán)調(diào)度)、WRR(Weighted Round Robin,加權(quán)循環(huán)調(diào)度)、WDRR(Weighted Deficit Round Robin,加權(quán)差額循環(huán)調(diào)度)、以及DWRR(Dynamic Weighted Round Robin,動(dòng)態(tài)加權(quán)循環(huán)調(diào)度)中的一種。例如,參照圖3,可以為VLAN子接口調(diào)度層級的調(diào)度節(jié)點(diǎn)null_vlan配置SP算法,為隧道調(diào)度層級的調(diào)度節(jié)點(diǎn)null_lsp配置SP算法,為隧道調(diào)度層級的調(diào)度節(jié)點(diǎn)Lsp_1配置DWRR算法。
為了避免所述預(yù)設(shè)端口轉(zhuǎn)發(fā)出的數(shù)據(jù)流超過網(wǎng)絡(luò)的承載能力,優(yōu)選地, 本實(shí)施例在各調(diào)度層級的調(diào)度節(jié)點(diǎn)配置流量整形策略,進(jìn)行流量整形。流量整形策略是采用令牌桶對數(shù)據(jù)流進(jìn)行評估和削峰填谷,將峰值數(shù)據(jù)流緩存到整形隊(duì)列中,延遲再發(fā)送,盡可能保證報(bào)文(數(shù)據(jù)流由報(bào)文組成)不丟失。
擁塞避免策略僅可配置于隊(duì)列調(diào)度層級的調(diào)度節(jié)點(diǎn),擁塞避免是一種流控機(jī)制,其通過監(jiān)視隊(duì)列緩存的使用情況,在擁塞有加劇的趨勢時(shí),主動(dòng)丟棄報(bào)文,通過調(diào)整數(shù)據(jù)流量來解除網(wǎng)絡(luò)過載。傳統(tǒng)的擁塞避免策略采用尾部丟棄(Tail-Drop)的方法,當(dāng)隊(duì)列的長度達(dá)到某一最大值后,所有新到來的報(bào)文都將被丟棄,Tail-Drop將會(huì)引發(fā)TCP全局同步現(xiàn)象。優(yōu)選地,為避免TCP全局同步現(xiàn)象,本實(shí)施例采用WRED(Weighted Random Early Detection,加權(quán)隨機(jī)早期檢測)進(jìn)行擁塞避免。WRED基于報(bào)文的丟棄優(yōu)先級為每個(gè)隊(duì)列都設(shè)定上限和下限,對隊(duì)列中的報(bào)文進(jìn)行如下處理:
(1)、當(dāng)隊(duì)列的長度小于下限時(shí),不丟棄報(bào)文;
(2)、當(dāng)隊(duì)列的長度超過上限時(shí),丟棄所有到來的報(bào)文;
(3)、當(dāng)隊(duì)列的長度在上限和下限之間時(shí),隨機(jī)丟棄到來的報(bào)文。隊(duì)列越長,丟棄的概率越高,但有一個(gè)最大丟棄概率。
進(jìn)一步地,在本發(fā)明數(shù)據(jù)流調(diào)度方法的較佳實(shí)施例中,所述按照當(dāng)前調(diào)度參數(shù)確定預(yù)設(shè)端口需要使能的調(diào)度層級之前,還包括:
接收用戶基于調(diào)度參數(shù)設(shè)置界面輸入的調(diào)度參數(shù);
將接收到的所述調(diào)度參數(shù)作為當(dāng)前調(diào)度參數(shù)。
具體地,用戶可根據(jù)實(shí)際需求通過網(wǎng)絡(luò)節(jié)點(diǎn)提供的CLI(Command Line Interface,命令行界面)和/或GUI(Graphical User Interface,圖形用戶界面)調(diào)度參數(shù)設(shè)置界面進(jìn)行預(yù)設(shè)端口調(diào)度參數(shù)的設(shè)置。例如,當(dāng)判斷需要較大調(diào)度力度才能滿足數(shù)據(jù)流調(diào)度需求時(shí),用戶可通過設(shè)置相應(yīng)的調(diào)度參數(shù)使能較多級數(shù)的調(diào)度層級,以滿足數(shù)據(jù)流調(diào)度需求,確保網(wǎng)絡(luò)節(jié)點(diǎn)正常轉(zhuǎn)發(fā)數(shù)據(jù)流。
進(jìn)一步地,用戶還可根據(jù)實(shí)際需求對設(shè)置的調(diào)度參數(shù)進(jìn)行更新,以使得網(wǎng)絡(luò)節(jié)點(diǎn)適應(yīng)不斷變化的網(wǎng)絡(luò)環(huán)境。
本發(fā)明還提供一種數(shù)據(jù)流調(diào)度裝置,參照圖6,在本發(fā)明數(shù)據(jù)流調(diào)度裝置的較佳實(shí)施例中,所述數(shù)據(jù)流調(diào)度裝置包括:
確定模塊10,用于按照當(dāng)前調(diào)度參數(shù)確定預(yù)設(shè)端口需要使能的調(diào)度層級;
使能模塊20,用于使能確定的調(diào)度層級的相應(yīng)調(diào)度節(jié)點(diǎn),并建立不同調(diào)度層級調(diào)度節(jié)點(diǎn)之間的鏈接關(guān)系;
本實(shí)施例提供的數(shù)據(jù)流調(diào)度裝置可以應(yīng)用于MPLS(Multi-Protocol Label Switching,多協(xié)議標(biāo)簽交換)網(wǎng)絡(luò),例如,在MPLS網(wǎng)絡(luò)中,數(shù)據(jù)流調(diào)度裝置內(nèi)置于網(wǎng)絡(luò)節(jié)點(diǎn)運(yùn)行,當(dāng)該網(wǎng)絡(luò)節(jié)點(diǎn)的某端口接收到數(shù)據(jù)流時(shí),數(shù)據(jù)流調(diào)度裝置根據(jù)預(yù)先配置的調(diào)度層級以及相應(yīng)的調(diào)度策略對所述數(shù)據(jù)流進(jìn)行分層調(diào)度,高效的將數(shù)據(jù)流轉(zhuǎn)發(fā)出去。以下以本發(fā)明提供的數(shù)據(jù)流調(diào)度裝置應(yīng)用于MPLS網(wǎng)絡(luò)進(jìn)行說明。
需要說明的是,MPLS是新一代的IP高速骨干網(wǎng)絡(luò)交換標(biāo)準(zhǔn),由IETF(Internet Engineering Task Force,因特網(wǎng)工程任務(wù)組)提出。MPLS獨(dú)立于第二層和第三層協(xié)議,其利用Label(標(biāo)簽)進(jìn)行數(shù)據(jù)轉(zhuǎn)發(fā):當(dāng)數(shù)據(jù)流進(jìn)入網(wǎng)絡(luò)節(jié)點(diǎn)時(shí),為其分配固定長度的標(biāo)簽,并將標(biāo)簽與數(shù)據(jù)流封裝在一起,在整個(gè)轉(zhuǎn)發(fā)過程中,網(wǎng)絡(luò)節(jié)點(diǎn)僅根據(jù)標(biāo)簽進(jìn)行轉(zhuǎn)發(fā)。其中,數(shù)據(jù)傳輸發(fā)生在LSP(標(biāo)簽交換路徑)上,LSP是每一個(gè)沿著源端到終端的路徑上的網(wǎng)絡(luò)節(jié)點(diǎn)的標(biāo)簽序列。
本實(shí)施例提出的數(shù)據(jù)流調(diào)度裝置,根據(jù)MPLS的特性,預(yù)先劃分不同的調(diào)度層級,并由確定模塊10按照當(dāng)前調(diào)度參數(shù)確定預(yù)設(shè)端口需要使能的調(diào)度層級;以及由使能模塊20按照當(dāng)前調(diào)度參數(shù)使能確定的調(diào)度層級的相應(yīng)調(diào)度節(jié)點(diǎn),并建立不同調(diào)度層級調(diào)度節(jié)點(diǎn)之間的鏈接關(guān)系。其中,所述調(diào)度參數(shù)包括但不限于需要使能的調(diào)度層級信息、調(diào)度節(jié)點(diǎn)信息、調(diào)度策略信息以及不同調(diào)度層級調(diào)度節(jié)點(diǎn)之間的鏈接關(guān)系信息。
配置模塊30,用于為使能的各調(diào)度節(jié)點(diǎn)配置調(diào)度策略;
在調(diào)度節(jié)點(diǎn)使能后,需要配置模塊30為使能的各調(diào)度節(jié)點(diǎn)配置調(diào)度策略。其中,不同調(diào)度層級或者相同調(diào)度層級的調(diào)度節(jié)點(diǎn)之間可以配置相同的調(diào)度策略,也可以配置不同的調(diào)度策略,具體由配置模塊30根據(jù)調(diào)度參數(shù)中的調(diào)度策略信息進(jìn)行配置。
調(diào)度模塊40,用于在所述預(yù)設(shè)端口接收到數(shù)據(jù)流時(shí),根據(jù)各調(diào)度節(jié)點(diǎn)配置的調(diào)度策略及各調(diào)度節(jié)點(diǎn)之間的鏈接關(guān)系,在使能的各調(diào)度節(jié)點(diǎn)之間對所 述數(shù)據(jù)流分層進(jìn)行調(diào)度。
需要說明的是,本實(shí)施例中,調(diào)度模塊40為不同調(diào)度層級的各調(diào)度節(jié)點(diǎn)分別掛載有相應(yīng)調(diào)度層級的調(diào)度器,由不同調(diào)度層級的調(diào)度器實(shí)現(xiàn)數(shù)據(jù)流的分層調(diào)度。具體地,按照調(diào)度器之間的調(diào)度層級關(guān)系(不同調(diào)度層級調(diào)度節(jié)點(diǎn)之間的鏈接關(guān)系)以及相應(yīng)的調(diào)度策略,上級調(diào)度器控制一組下級調(diào)度器的總帶寬,并根據(jù)下級調(diào)度器的級別和權(quán)重分配下級調(diào)度器的承諾帶寬和峰值帶寬,實(shí)現(xiàn)數(shù)據(jù)流的分層調(diào)度。
本實(shí)施例提出的數(shù)據(jù)流調(diào)度裝置,在現(xiàn)有HQoS技術(shù)的基礎(chǔ)上,靈活選擇需要使能的調(diào)度層級,并使能選擇的調(diào)度層級相應(yīng)的調(diào)度節(jié)點(diǎn),各調(diào)度節(jié)點(diǎn)按照配置的調(diào)度策略以及調(diào)度節(jié)點(diǎn)間的鏈接關(guān)系相互配合,實(shí)現(xiàn)數(shù)據(jù)流的分層調(diào)度。解決了現(xiàn)有HQoS技術(shù)中調(diào)度層級固定的問題,更符合用戶需求,且避免了不必要的處理資源浪費(fèi),從而本發(fā)明能夠提高調(diào)度數(shù)據(jù)流的效率。
進(jìn)一步地,在本發(fā)明數(shù)據(jù)流調(diào)度裝置的較佳實(shí)施例中,所述預(yù)設(shè)端口包括一類端口和二類端口,當(dāng)所述預(yù)設(shè)端口為一類端口時(shí),所述預(yù)設(shè)端口包括5級調(diào)度層級;當(dāng)所述預(yù)設(shè)端口為二類端口時(shí),所述預(yù)設(shè)端口包括3級調(diào)度層級。
需要說明的是,在MPLS網(wǎng)絡(luò)中,包括兩類端口,參照圖2,將本網(wǎng)絡(luò)內(nèi)的網(wǎng)絡(luò)節(jié)點(diǎn)相連的端口稱為NNI(網(wǎng)絡(luò)節(jié)點(diǎn)端口),本網(wǎng)絡(luò)和其它網(wǎng)絡(luò)相連的端口稱為UNI(用戶網(wǎng)絡(luò)端口)。本實(shí)施例中,所述數(shù)據(jù)流調(diào)度裝置還包括劃分模塊,用于按照MPLS的網(wǎng)絡(luò)結(jié)構(gòu),為不同類型的端口劃分不同級數(shù)的調(diào)度層級。
具體地,當(dāng)所述預(yù)設(shè)端口為一類端口(NNI)時(shí),所述預(yù)設(shè)端口包括5級調(diào)度層級,即劃分模塊針對NNI劃分有5級調(diào)度層級,分別為:端口、VLAN子端口、隧道、偽線以及隊(duì)列,各調(diào)度層級包括一個(gè)或多個(gè)調(diào)度節(jié)點(diǎn)。例如,參照圖3,針對NNI,使能模塊20使能了劃分模塊劃分的全部5級調(diào)度層級的調(diào)度節(jié)點(diǎn);參照圖4,針對NNI,使能模塊20使能了劃分模塊劃分的端口、隧道、偽線以及隊(duì)列調(diào)度層級的調(diào)度節(jié)點(diǎn)。
當(dāng)所述預(yù)設(shè)端口為二類端口(UNI)時(shí),所述預(yù)設(shè)端口包括3級調(diào)度層級,即劃分模塊針對UNI劃分有3級調(diào)度層級,分別為:端口、CIP(Client Computer's IP address,客戶端地址)以及隊(duì)列,各調(diào)度層級包括一個(gè)或多個(gè)調(diào)度節(jié)點(diǎn)。例如,參照圖5,針對UNI,使能模塊20使能了劃分模塊劃分的全部3級調(diào)度層級的調(diào)度節(jié)點(diǎn)。
本實(shí)施例通過針對不同類型的端口,相應(yīng)劃分不同的調(diào)度層級,以滿足不同的網(wǎng)絡(luò)組網(wǎng)環(huán)境。
進(jìn)一步地,在本發(fā)明數(shù)據(jù)流調(diào)度裝置的較佳實(shí)施例中,所述確定模塊10還用于始終將所述預(yù)設(shè)端口調(diào)度優(yōu)先級最低和最高的調(diào)度層級作為需要使能的調(diào)度層級,并按照當(dāng)前調(diào)度參數(shù),確定所述預(yù)設(shè)端口需要使能的,除所述預(yù)設(shè)端口調(diào)度優(yōu)先級最低和最高的調(diào)度層級之外的其它調(diào)度層級。
需要說明的是,即使采用普通的QoS調(diào)度,端口調(diào)度層級和隊(duì)列調(diào)度層級的調(diào)度也是始終使能的,在本實(shí)施例中,同樣需要始終使能端口調(diào)度層級和隊(duì)列調(diào)度層級的調(diào)度,即確定模塊10始終將所述預(yù)設(shè)端口調(diào)度優(yōu)先級最低的調(diào)度層級(端口調(diào)度層級)和調(diào)度優(yōu)先級最高的調(diào)度層級(隊(duì)列調(diào)度層級)作為需要使能的調(diào)度層級。在前述始終將端口調(diào)度層級和隊(duì)列調(diào)度層級作為需要使能的調(diào)度層級的基礎(chǔ)上,確定模塊10按照當(dāng)前調(diào)度參數(shù),確定所述預(yù)設(shè)端口需要使能的,除所述預(yù)設(shè)端口調(diào)度優(yōu)先級最低和最高的調(diào)度層級之外的其它調(diào)度層級。
例如,針對NNI,確定模塊10始終將端口調(diào)度層級以及隊(duì)列調(diào)度層級作為需要使能的調(diào)度層級,并按照當(dāng)前調(diào)度參數(shù),動(dòng)態(tài)選擇VLAN子接口調(diào)度層級、隧道調(diào)度層級以及偽線調(diào)度層級作為需要使能的調(diào)度層級;針對UNI,確定模塊10始終將端口調(diào)度層級以及隊(duì)列調(diào)度層級作為需要使能的調(diào)度層級,并按照當(dāng)前調(diào)度參數(shù),動(dòng)態(tài)選擇是否將CIP調(diào)度層級作為需要使能的調(diào)度層級。
進(jìn)一步地,在本發(fā)明數(shù)據(jù)流調(diào)度裝置的較佳實(shí)施例中,所述配置模塊30還用于為使能的各調(diào)度節(jié)點(diǎn)配置調(diào)度算法、流量整形策略和/或擁塞避免策略。
本實(shí)施例中,調(diào)度參數(shù)中的調(diào)度策略信息包括但不限于調(diào)度算法、流量整形策略以及擁塞避免策略,所述配置模塊30還用于為使能的各調(diào)度節(jié)點(diǎn)配 置調(diào)度算法、流量整形策略和/或擁塞避免策略。
具體地,針對不同調(diào)度層級的調(diào)度節(jié)點(diǎn),配置模塊30可以配置的調(diào)度算法包括但不限于SP(Strict Priority,嚴(yán)格優(yōu)選級)、RR(Round Robin,循環(huán)調(diào)度)、DRR(Deficit Round Robin,差額循環(huán)調(diào)度)、WRR(Weighted Round Robin,加權(quán)循環(huán)調(diào)度)、WDRR(Weighted Deficit Round Robin,加權(quán)差額循環(huán)調(diào)度)、以及DWRR(Dynamic Weighted Round Robin,動(dòng)態(tài)加權(quán)循環(huán)調(diào)度)中的一種。例如,參照圖3,配置模塊30可以為VLAN子接口調(diào)度層級的調(diào)度節(jié)點(diǎn)null_vlan配置SP算法,為隧道調(diào)度層級的調(diào)度節(jié)點(diǎn)null_lsp配置SP算法,為隧道調(diào)度層級的調(diào)度節(jié)點(diǎn)Lsp_1配置DWRR算法。
為了避免所述預(yù)設(shè)端口轉(zhuǎn)發(fā)出的數(shù)據(jù)流超過網(wǎng)絡(luò)的承載能力,優(yōu)選地,配置模塊30在各調(diào)度層級的調(diào)度節(jié)點(diǎn)配置流量整形策略,進(jìn)行流量整形。流量整形策略是采用令牌桶對數(shù)據(jù)流進(jìn)行評估和削峰填谷,將峰值數(shù)據(jù)流緩存到整形隊(duì)列中,延遲再發(fā)送,盡可能保證報(bào)文(數(shù)據(jù)流由報(bào)文組成)不丟失。
擁塞避免策略僅可配置于隊(duì)列調(diào)度層級的調(diào)度節(jié)點(diǎn),擁塞避免是一種流控機(jī)制,其通過監(jiān)視隊(duì)列緩存的使用情況,在擁塞有加劇的趨勢時(shí),主動(dòng)丟棄報(bào)文,通過調(diào)整數(shù)據(jù)流量來解除網(wǎng)絡(luò)過載。傳統(tǒng)的擁塞避免策略采用尾部丟棄(Tail-Drop)的方法,當(dāng)隊(duì)列的長度達(dá)到某一最大值后,所有新到來的報(bào)文都將被丟棄,Tail-Drop將會(huì)引發(fā)TCP全局同步現(xiàn)象。優(yōu)選地,為避免TCP全局同步現(xiàn)象,本實(shí)施例采用WRED(Weighted Random Early Detection,加權(quán)隨機(jī)早期檢測)進(jìn)行擁塞避免。WRED基于報(bào)文的丟棄優(yōu)先級為每個(gè)隊(duì)列都設(shè)定上限和下限,對隊(duì)列中的報(bào)文進(jìn)行如下處理:
(1)、當(dāng)隊(duì)列的長度小于下限時(shí),不丟棄報(bào)文;
(2)、當(dāng)隊(duì)列的長度超過上限時(shí),丟棄所有到來的報(bào)文;
(3)、當(dāng)隊(duì)列的長度在上限和下限之間時(shí),隨機(jī)丟棄到來的報(bào)文。隊(duì)列越長,丟棄的概率越高,但有一個(gè)最大丟棄概率。
進(jìn)一步地,在本發(fā)明數(shù)據(jù)流調(diào)度裝置的較佳實(shí)施例中,所述數(shù)據(jù)流調(diào)度裝置還包括設(shè)置模塊,用于接收用戶基于調(diào)度參數(shù)設(shè)置界面輸入的調(diào)度參數(shù);以及將接收到的所述調(diào)度參數(shù)作為當(dāng)前調(diào)度參數(shù)。
具體地,用戶可根據(jù)實(shí)際需求通過設(shè)置模塊基于網(wǎng)絡(luò)節(jié)點(diǎn)提供的CLI (Command Line Interface,命令行界面)和/或GUI(Graphical User Interface,圖形用戶界面)調(diào)度參數(shù)設(shè)置界面進(jìn)行預(yù)設(shè)端口調(diào)度參數(shù)的設(shè)置。例如,當(dāng)判斷需要較大調(diào)度力度才能滿足數(shù)據(jù)流調(diào)度需求時(shí),用戶可通過設(shè)置相應(yīng)的調(diào)度參數(shù)使能較多級數(shù)的調(diào)度層級,以滿足數(shù)據(jù)流調(diào)度需求,確保網(wǎng)絡(luò)節(jié)點(diǎn)正常轉(zhuǎn)發(fā)數(shù)據(jù)流。
進(jìn)一步地,用戶還可根據(jù)實(shí)際需求對設(shè)置的調(diào)度參數(shù)進(jìn)行更新,以使得網(wǎng)絡(luò)節(jié)點(diǎn)適應(yīng)不斷變化的網(wǎng)絡(luò)環(huán)境。
以上僅為本發(fā)明的優(yōu)選實(shí)施例,并非因此限制本發(fā)明的專利范圍,凡是利用本發(fā)明說明書及附圖內(nèi)容所作的等效結(jié)構(gòu)或等效流程變換,或直接或間接運(yùn)用在其他相關(guān)的技術(shù)領(lǐng)域,均同理包括在本發(fā)明的專利保護(hù)范圍內(nèi)。