阮少偉
(徐州工程學院 江蘇 徐州221006)
【摘要】本文運用OPNET網(wǎng)絡仿真方法,考察了在基于VoIP業(yè)務的網(wǎng)絡下,不同調(diào)度算法對各個業(yè)務時延性以及時延抖動性方面的影響,得出結論:PQ調(diào)度算法以犧牲低優(yōu)先級業(yè)務帶寬的代價,滿足了高優(yōu)先級業(yè)務的時延性以及時延抖動性,因此最適合處理VoIP等實時性較強的業(yè)務。
【關鍵詞】列隊調(diào)度算法;VoIP電話;OPNET網(wǎng)絡仿真
一. VoIP電話系統(tǒng)的介紹
VoIP系統(tǒng)是近年來發(fā)展起來的基于分組網(wǎng)絡傳送語音信號的新型電信業(yè)務。與傳統(tǒng)電話相比,IP電話具有價格低廉,可方便開展各種增值業(yè)務的優(yōu)勢。
與VoIP相關的協(xié)議主要有ITU-T的H.323協(xié)議、IETF的SIP協(xié)議等,而支持H.323協(xié)議的IP電話系統(tǒng)是新一代寬帶IP網(wǎng)絡通信的主流設備,該系統(tǒng)主要包括終端、網(wǎng)關、網(wǎng)守、多點控制單元等。在H.323系統(tǒng)中不同領域可以存在一個或多個網(wǎng)守并且它們之間可以相互通訊。所有的H.323終端設備都必須在其所屬領域的網(wǎng)守注冊以獲得H.323協(xié)議的應用。
二.調(diào)度算法的介紹。
在目前常用的隊列調(diào)度算法中,目前較為常用的有4種類型;先入先出隊列(FIFO)、優(yōu)先級隊列(PQ)、加權循環(huán)隊列(WRR)以及加權公平隊列(WFQ)。
1.先入先出(First In First Out)
FIFO(First In First Out)算法是一種基本的隊列調(diào)度算法,也是目前路由器上最常用的一種調(diào)度策略。在這種調(diào)度策略下,分組進入隊列的順序與被傳輸?shù)捻樞蛳嗤?。通過將分組放置到一個隊列中,并按照它們到達的先后順序?qū)λ鼈冞M行調(diào)度。
該算法的特點是:隊列管理簡單,調(diào)度實現(xiàn)方便,且不需要對分組進行重排序。其缺點是:不能夠?qū)τ胁煌盏燃壱蟮臉I(yè)務區(qū)別對待,即不能對不同流提供區(qū)分服務;不能實現(xiàn)對UDP和TCP之間的公平性;當擁塞發(fā)生時,所有的業(yè)務流的平均排隊時延都增加,所以這種隊列調(diào)度方式對所有業(yè)務流影響都是一樣的。
2.加權循環(huán)(Weighted Round Robin)
WRR(Weighed Round Robin)算法是將交換芯片的各個端口分為多個優(yōu)先級,其優(yōu)先級的劃分可以根據(jù)服務類型或業(yè)務屬性,隊列之間采用的是輪流調(diào)度機制,從而保證了每個隊列都會得到一定的服務時間。
WRR為每個隊列都配置了一個加權值,其代表著獲取資源的比重。如一個10M的4隊列端口,假設它的WRR隊列調(diào)度算法為其配置的加權值分別為50、30、10、10,則在調(diào)度時,從高到低優(yōu)先級隊列分別獲得帶寬為5Mbits/s、3 Mbits/s、1 Mbits/s、1 Mbits/s,這樣就可以保證最低優(yōu)先級隊列至少獲得1 Mbits/s的帶寬。
WRR為所有業(yè)務隊列服務,并且將優(yōu)先權分配給較高優(yōu)先級隊列。在大多數(shù)情況下,WRR首先處理的是高優(yōu)先級數(shù)據(jù),但是當高優(yōu)先級業(yè)務超出鏈路容量時,較低優(yōu)先級的業(yè)務并不會因此而完全阻塞。WRR的另一個優(yōu)點是:盡管多個隊列調(diào)度是輪循進行的,但并不是每個隊列都固定地分配服務時間片,倘若某個隊列為空,則會立即轉換到下一個隊列調(diào)度,而不會在該空隊列上停留,從而使帶寬資源得到充分的利用。
這種算法比較適合用于一般網(wǎng)絡通信,既能為高優(yōu)先級業(yè)務提供高帶寬,同時也避免了低優(yōu)先級業(yè)務餓死。
3. 加權公平隊列(Weighted Fair Queue)
WFQ(Weighted Fair Queue)算法是一種基于數(shù)據(jù)流的排隊算法,它提供了動態(tài)的、公平的排隊方式,基于權重來劃分通信隊列的帶寬。該算法根據(jù)源和目標地址,不同的協(xié)議和會話端口號等特性將所有數(shù)據(jù)流分成不同的類型,賦予相應的加權系數(shù),并分配對應的帶寬。在缺省狀態(tài)下,WFQ盡量限制大流量的通信從而保護小流量及連接不暢的通信,達到讓所有數(shù)據(jù)流使用相等網(wǎng)絡資源的目的。
WFQ算法的優(yōu)點是對所有應用都能比較公平地提供服務質(zhì)量,對于要求較高的業(yè)務則可以通過設置權重保障優(yōu)先級,能智能劃分和調(diào)度隊列,配置相對簡單。缺點是由于相對公平,因此不會保證提供對QoS要求很高的應用,同時算法計算復雜,比較消耗交換芯片的處理能力。而且WFQ不具備一個針對個別數(shù)據(jù)流進行控制的機制,因此也無法為每一個數(shù)據(jù)流提供帶寬的保證。
加權公平隊列算法適用于應用較復雜,且應用相對公平的網(wǎng)絡。
4. 優(yōu)先級隊列(Priority Queue)
PQ(Priority Queue)算法是根據(jù)業(yè)務屬性定義各自的優(yōu)先級別,并且在調(diào)度處理時,先處理高優(yōu)先級業(yè)務。若交換工作在第二層時,則可使用MAC數(shù)據(jù)包頭的三個字段(源地址、目的地址、標記號)來區(qū)分業(yè)務的級別;對于三層,則可通過使用IP包頭的五個字段(源地址、目的地址、源端口、目的端口和上層協(xié)議號)來區(qū)分業(yè)務的級別。
在實施隊列調(diào)度時,PQ嚴格按照優(yōu)先級從高到低的次序優(yōu)先發(fā)送較高優(yōu)先級隊列的數(shù)據(jù),當較高優(yōu)先級隊列為空后,再發(fā)送較低優(yōu)先級隊列中的數(shù)據(jù)。PQ特別適合與對延遲抖動較敏感的應用,采用優(yōu)先模式進行隊列調(diào)度,可以讓關鍵業(yè)務如音頻、視頻業(yè)務的報文進入最高優(yōu)先級隊列,保證在擁塞時總是獲得轉發(fā)服務。
采用該算法調(diào)度時,只要高優(yōu)先級隊列中還有數(shù)據(jù)包,低優(yōu)先級隊列便得不到調(diào)度。該算法優(yōu)點是配置簡單,絕對保證高優(yōu)級應用的帶寬;缺點時不能保證高優(yōu)先級以外的服務得到合理帶寬,甚至會餓死,從而不能公平地保證各種應用地服務質(zhì)量。
三.OPNET對有關算法的仿真
為了驗證隊列調(diào)度管理算法的相關應用,我們以Opnet10.0為軟件平臺,在此基礎上對Diffserv機制的隊列調(diào)度管理進行仿真計算。整個需要驗證的網(wǎng)絡同時會運行四種業(yè)務,每種業(yè)務都設有不同的優(yōu)先級別,并設置了相應的PHB轉發(fā)方式。圖1為需要驗證的網(wǎng)絡拓撲結構,其中,交換機A,交換機B分別以10M以太網(wǎng)接口與四種業(yè)務終端相連。路由器A,路由器B為邊緣路由器,路由器A_1,路由器A_2為中間路由器,它們之間以E1接口相連,構成Diffserv域。
確定好網(wǎng)絡拓撲以后,就需要對四種不同業(yè)務的Diffserv模型進行配置了。首先要進行配置的是四種不同業(yè)務所對應的PHB模型。我們假設節(jié)點6到節(jié)點8為我們所要關心的VoIP電話業(yè)務,因此選定其應用模式為Voice over IP Call(PCM Quality) ,根據(jù)IP語音電話對實時性要求較高,對時延、時延抖動要求敏感的特點,我們將此節(jié)點對設置為EF PHB類型,同時將語音編碼方式設為G.711編碼方式。同理,我們把其余三節(jié)點對分別設為AF11,AF13,BE PHB類型,其對應的業(yè)務分別假定為Video、Http、Ftp。在選擇調(diào)度算法方式上,這里主要設置了四種不同的場景,分別對應著:FIFO,WFQ,WRR以及PQ算法,業(yè)務的QoS配置選擇的是基于DSCP模式(FIFO除外)。每個終端配置該業(yè)務所對應的DSCP值,邊緣路由器通過DSCP值對業(yè)務進行分類,并將DSCP值映射到相應的PHB中,中間路由器再根據(jù)設、定的PHB方式進行轉發(fā)。四種業(yè)務VoIP、Video、Http、Ftp的 PHB映射關系分別為EF、AF11、AF13、BE;DSCP映射關系分別為1011110、1011110、001010、000000;其中WFQ分配的參數(shù)權值分別為60、30、10、5;WRR所分配的參數(shù)權值分別為60、25、10、5;PQ所配備的優(yōu)先級分別為High、Medium、Normal、Low。
因為本文主要考慮的是VoIP業(yè)務,所以Opnet的仿真統(tǒng)計變量的收集主要是考慮語音傳輸在整個網(wǎng)絡拓撲中的實時性,其中包括語音傳輸時延及時延抖動。Opnet仿真中時間設為1000s。整個仿真結果如下組圖示,圖2、3分別顯示了整個網(wǎng)絡拓撲中的語音端到端時延以及時延抖動。
從上兩圖可以看出,當發(fā)生網(wǎng)絡擁塞時,與其它算法相比,PQ算法可以以犧牲低優(yōu)先級業(yè)務帶寬,甚至使其餓死為代價,有效地保護整個網(wǎng)絡拓撲中的高優(yōu)先級業(yè)務,從而縮短語音包的端到端平均時延以及時延抖動。
參考文獻
[1]. 張海燕 阮方 IP電話系統(tǒng)網(wǎng)守的研究與實現(xiàn) 計算機與網(wǎng)絡 2003年2期,134
[2]. 袁琦 緞世惠 Diffserv機制的研究及其仿真 電信網(wǎng)技術 2003(2)9-10
[3]. 孫屹 夢晨 OPNET通信仿真開發(fā)手冊 北京:國防工業(yè)出版社 2005
[4]. 王文博 張金文 OPNET Modeler與網(wǎng)絡仿真 北京:人民郵電出版社 2003
[5]. 陳敏 OPNET 網(wǎng)絡仿真北京:清華大學出版社 2004
[6]. 姜國臣 譚賢四等著 排隊規(guī)則對FTP,Viedo,VoIP應用的性能影響 現(xiàn)代電子技術 2006(5),50-51