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

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