鄭 芳,秦久蓮
(唐山鋼鐵集團(tuán)微爾自動(dòng)化有限公司 河北 唐山 063000)
采用策略為通過(guò)數(shù)據(jù)包的IP地址來(lái)識(shí)別內(nèi)外網(wǎng)而對(duì)其分配不同優(yōu)先級(jí);設(shè)計(jì)了增加動(dòng)態(tài)隊(duì)列長(zhǎng)度、二倍態(tài)隊(duì)列長(zhǎng)度、暫時(shí)等候時(shí)間、回收隊(duì)列等手段,以達(dá)到降低丟包率的目的。
目前通用的Web服務(wù)器還不能支持Web QoS機(jī)制,不能為Web應(yīng)用提供服務(wù)的區(qū)分和性能的保證。如何在Web服務(wù)器及其系統(tǒng)中引入和實(shí)現(xiàn)QoS控制的機(jī)制與策略,從而滿足不斷增長(zhǎng)的Web性能需求,為不同用戶的請(qǐng)求提供服務(wù)區(qū)分和性能保證,是目前Web發(fā)展迫切需要解決的問(wèn)題,也是實(shí)現(xiàn)下一代網(wǎng)絡(luò)QoS控制技術(shù)不可或缺的關(guān)鍵環(huán)節(jié)。
區(qū)分的Web服務(wù)機(jī)制與策略和Web服務(wù)器系統(tǒng)體系結(jié)構(gòu)設(shè)計(jì)這兩個(gè)方面是當(dāng)前Web QoS控制技術(shù)研究的兩個(gè)主要切入點(diǎn)。
本文對(duì)Web QoS在校園網(wǎng)中的應(yīng)用進(jìn)行研究與分析,探討了QoS的體系結(jié)構(gòu)和實(shí)現(xiàn)方法,采用基于中間件的Web QoS控制機(jī)制進(jìn)行仿真測(cè)試來(lái)提高校園網(wǎng)Web服務(wù)器的服務(wù)質(zhì)量,客觀分析了華北理工大學(xué)校園網(wǎng)Web狀況,給出基于區(qū)分服務(wù)和中間件技術(shù)的解決方案。并通過(guò)隊(duì)列管理、擁塞管理、報(bào)文分類、隊(duì)列調(diào)度、時(shí)延限制來(lái)等技術(shù)保障校園網(wǎng)的Web QoS,給出了UNIX下基于區(qū)分服務(wù)和中間件技術(shù)的解決方案,主要解決外網(wǎng)訪問(wèn)校園網(wǎng)網(wǎng)速慢和無(wú)法接連問(wèn)題,并通過(guò)隊(duì)列管理、擁塞管理、報(bào)文分類、隊(duì)列調(diào)度、時(shí)延控制等技術(shù)來(lái)保障校園網(wǎng)的Web QoS,同時(shí)用到了UNIX socket編程、多線程并行開(kāi)發(fā)、C++STL開(kāi)發(fā)等技術(shù)。
在本方案的仿真試驗(yàn)中采用了加州伯克利大學(xué)研發(fā)的NS2軟件。該模擬器現(xiàn)在由SAMAN和CONSER負(fù)責(zé)維護(hù)。作為業(yè)界先進(jìn)的IP網(wǎng)絡(luò)試驗(yàn)仿真軟件它具有許多優(yōu)點(diǎn):例如它的設(shè)計(jì)和網(wǎng)絡(luò)仿真是基于UNIX系統(tǒng)的、它的模擬機(jī)理是離散事件等。這些都是它一直受到國(guó)內(nèi)外專家和學(xué)者青睞的主要原因。
NS2把網(wǎng)絡(luò)狀態(tài)的變化定義為“事件”,要想讓模擬機(jī)工作,那么它的必要條件就是網(wǎng)絡(luò)狀態(tài)要發(fā)生相應(yīng)的變化;模擬機(jī)不會(huì)在網(wǎng)絡(luò)狀態(tài)沒(méi)有發(fā)生任何變化的情況下開(kāi)始模擬計(jì)算。由上述可知,離散時(shí)間驅(qū)動(dòng)的模擬計(jì)算效率要高于時(shí)間驅(qū)動(dòng)的模擬機(jī)的計(jì)算效率。
NS2仿真軟件是基于仿真方法,研究網(wǎng)絡(luò)相關(guān)的軟件平臺(tái)。它通常提供開(kāi)發(fā)網(wǎng)絡(luò)協(xié)議模型的環(huán)境與接口,它的一些工具可以對(duì)仿真結(jié)果進(jìn)行顯示、分析和轉(zhuǎn)換,它可以讓NS2格式的拓?fù)浣Y(jié)構(gòu)轉(zhuǎn)換成真正的網(wǎng)絡(luò)拓?fù)浣Y(jié)構(gòu)。
NS2功能強(qiáng)大尤其對(duì)研究的網(wǎng)絡(luò)的模擬和仿真。它既可以模擬衛(wèi)星通信網(wǎng)絡(luò)中的協(xié)議也可以模擬普通局域網(wǎng)中的協(xié)議運(yùn)行。它支持廣泛的協(xié)議類型比如:TCP/IP協(xié)議、單播、廣播以及組播等各種類型的路由協(xié)議的仿真和模擬。
當(dāng)前NS2可以在兩類的操作系統(tǒng)上運(yùn)行,一種是類UNIX操作系統(tǒng)平臺(tái),如:linux,SunOS,Solaris,F(xiàn)reeBSD;一類是Win32的平臺(tái)。并且對(duì)Win32的支持不是太好,不能完整的實(shí)現(xiàn)系統(tǒng)的所有功能。
C++和Otcal構(gòu)成NS2的主代碼的兩種語(yǔ)言。C++的特點(diǎn)比較適合協(xié)議的具體實(shí)現(xiàn),因?yàn)榇祟惓绦蛴泻芏痰倪\(yùn)行時(shí)間和很長(zhǎng)的轉(zhuǎn)換時(shí)間。而在仿真過(guò)程中和C++特點(diǎn)互補(bǔ)的Otcal的特點(diǎn)是快速交互和慢的運(yùn)行速度。上述這兩中語(yǔ)言互相配合,在模塊的構(gòu)建和變量的定義上各自取得了良好的效果。
從圖1中可以知道,NS2由模塊和script腳本文件組成。NS2模塊是方框里的部分,實(shí)驗(yàn)者自己編寫(xiě)的腳本文件放在方框外。腳本文件經(jīng)過(guò)NS2解釋執(zhí)行后,輸出文件中就會(huì)生成相應(yīng)的輸出結(jié)果。我們要想進(jìn)一步查看和分析實(shí)驗(yàn)輸出還要查看輸出文件,這些輸出文件的顯示需要調(diào)用Nam或者Xgraph。評(píng)價(jià)網(wǎng)絡(luò)性能的一些指標(biāo)可以是丟包率、吞吐量和延遲等等,這些指標(biāo)數(shù)據(jù)經(jīng)過(guò)后臺(tái)處理后會(huì)把結(jié)果形象的輸出來(lái)。

圖1 功能和模塊組成示意圖
為了驗(yàn)證中間件的有效性,我們通過(guò)仿真模擬進(jìn)行測(cè)試分析。測(cè)試的主要目的是比較采用中間件前后,Web服務(wù)器的服務(wù)性能的區(qū)分。
在測(cè)試用例中用戶請(qǐng)求分為3類:高級(jí)請(qǐng)求類(H),中級(jí)請(qǐng)求類(M)和基本請(qǐng)求類(B),3類請(qǐng)求分別由3臺(tái)測(cè)試客戶端發(fā)出,即測(cè)試客戶端1負(fù)責(zé)發(fā)送高級(jí)請(qǐng)求,測(cè)試客戶端2負(fù)責(zé)拄送中緞?wù)埱螅瑴y(cè)試客戶端3負(fù)責(zé)發(fā)送基本請(qǐng)求。
測(cè)試用到2個(gè)測(cè)試用例,分別為加入中間件和不加入中間件兩種情況。每個(gè)測(cè)試用例經(jīng)過(guò)6次測(cè)試來(lái)完成,每次測(cè)試持續(xù)時(shí)間5分鐘。測(cè)試中3個(gè)測(cè)試客戶端同時(shí)開(kāi)始測(cè)試,通過(guò)不斷增大瀏覽器同時(shí)連接數(shù)的方式進(jìn)行,瀏覽器連接數(shù)的設(shè)置分別為50,100,150,200,250,300。
(1)請(qǐng)求完成率
下面我們對(duì)服務(wù)器在不同負(fù)載下的請(qǐng)求完成率狀況進(jìn)行比較分析。
通過(guò)仿真測(cè)試可以看出,在未加入中間件的情況下Web服務(wù)器在較低負(fù)載時(shí)(≤55%),各類用戶的請(qǐng)求完成率都在較高水平;當(dāng)系統(tǒng)負(fù)載增高至75%后,各級(jí)別用戶請(qǐng)求均出現(xiàn)被丟棄情況,請(qǐng)求完成率迅速下降。在加入中間件后的情況下,不論在哪類負(fù)載水平時(shí),請(qǐng)求完成率都有所提高。
(2)平均響應(yīng)時(shí)間
通過(guò)仿真測(cè)試對(duì)各類請(qǐng)求在服務(wù)器不同負(fù)載時(shí)的首字節(jié)平均響應(yīng)時(shí)間進(jìn)行比較分析。
從響應(yīng)時(shí)間的變化趨勢(shì)來(lái)看,當(dāng)服務(wù)器達(dá)到較大負(fù)載(≥85%)時(shí),未加入中間件的情況下響應(yīng)時(shí)間明顯延長(zhǎng),并且大部分請(qǐng)求響應(yīng)時(shí)間均超過(guò)了普通的Web用戶可忍受的8~10s等待時(shí)間,而在加入中間件后雖然延時(shí)較低負(fù)載時(shí)要高很多,但均不大于6s。
通過(guò)以上幾方面的分析可以看出,與傳統(tǒng)的Web服務(wù)相比,引入基于中間件的方式實(shí)現(xiàn)Web QoS控制,能夠提高用戶請(qǐng)求的完成率,降低了響應(yīng)延時(shí)。
[1]楊嗣超,邱見(jiàn)明,等.具有服務(wù)質(zhì)量保證的Web服務(wù)器的設(shè)計(jì)[J].計(jì)算機(jī)工程,2001,27(2):123-125.
[2]李晰,高海峰,張根度.基于用戶會(huì)話的Web服務(wù)器應(yīng)用軟件的QoS技術(shù)分析[J].計(jì)算機(jī)應(yīng)用與軟件,2004,21(8):40-43.
[3]張光明,夏春和.基于NS2的校園網(wǎng)服務(wù)質(zhì)量控制模型設(shè)計(jì)及實(shí)現(xiàn)[J].計(jì)算機(jī)工程與應(yīng)用,2001,(20):47-50.