戚曉晶 胡曉宇
(91550部隊,遼寧 大連 116023)
性能測試是IP網絡建設和維護過程中的重要環節,通過測試能獲得網絡運行的參數,為IP網高效、穩定、安全、可靠運行提供有效監測手段。網絡測試主要包括網絡性能測試和網絡應用測試等方面。在IP網絡的運行中最令人關心的是網絡性能測試。
根據中國通信標準化協會已完成的《IP網絡技術要求——性能參數與指標》的有關規定,IP網絡性能的參數主要包括時延、丟包率、抖動、誤差率、帶寬、吞吐量等。
1.1 時延
網絡時延是指數據分組在網絡中傳輸的延遲時間,包括單向時延和往返時延。單向時延指穿過一個或多個網絡段,傳送IP包所經歷的時間。往返時延指從網絡的一端發送一個消息到另一端,然后該消息再返回到發送端所需要的時間。網絡時延主要由鏈路傳輸時延、節點處理時延與排隊時延造成。
1.2 丟包率
丟包率指在一定的時段網內兩點間傳輸中丟失分組與總的分組發送量的比率。丟包率主要與網絡的流量有關,準確地說是與每段路由的網絡擁塞程度有關。無擁塞時路徑丟包率為0%,輕度擁塞時丟包率為1%-4%,嚴重擁塞時丟包率為5%~15%。網絡丟包率將直接影響網絡應用的正常使用。
1.3 抖動
抖動也稱為 IP時延變化,是指分組從源節點到目的節點相繼分組到達時間的變化量。時延抖動主要由IP數據包在節點排隊等待時間的不確定性因素造成。
1.4 誤差率
誤差率是指同一個包兩次接收或分組的次序顛倒等而引起的錯誤與總的分組發送量的比率。
1.5 帶寬
帶寬反映了單位時間內傳輸數據的能力,即每秒網絡所能傳輸的數據量。對于測量而言,沿一條路徑的可用帶寬是用戶端主機沿著該路徑與給定的目的主機之間能夠傳輸的最大帶寬。
1.6 吞吐量
吞吐量(Throughput)是指在規定時間、空間及網絡路徑的前提下,傳輸數據時實際獲得的帶寬值,一般指鏈路上所有通信數據總的傳輸速率。由于多方面的原因,實際上吞吐量往往比傳輸介質所標稱的最大帶寬小得多。對于當前的應用,一般要求吞吐量是信道帶寬的80%以上。
從測試手段來分,網絡性能測試主要有軟件測試、專用硬件(儀器)測試和軟硬件結合的混合測試三種方法。
2.1 軟件測試。首先,操作系統自帶一些測試命令可以實現時延、丟包率等簡單參數的測試,如ping,命令。其次,有些免費通用的小型測試軟件可供下載使用,如丟包率測試軟件ATKKPING。用戶也可以自行開發一些測試軟件,但是需要第三方的檢測和相關部門的認證。網絡性能測試軟件逐步發展為由監測服務器、被測實體和被測網絡三部分組成的網絡性能監控管理系統,實現對網絡和設備的性能監測和管理。網絡性能監控管理系統可以實現分布式性能采集以及提供大規模IP網絡性能監控手段,還可以監測網絡運行性能,及時發現網絡上可能存在的問題,為網絡優化、網絡運行維護提供數據支撐。
2.2 硬件測試。硬件測試也就是利用專門的儀器進行網絡性能測試,如Fluke網絡公司生產的MetroScope協議分析儀,國內也有一些公司能生產網絡測試儀器,不過知名度和使用率上都不如國外大公司的產品。這些專門的儀器可以實現網絡單個或者多個性能的測試,如測試其吞吐量、延時、丟包率、抖動等參數。一般測試儀器功能強大,且接口豐富,便于大型測試和配合軟件測試。
2.3 軟硬件結合測試。軟硬件結合測試模式一般采用服務器——客戶機模式,服務器端軟件安裝在測試儀表的主機上,在開機后會隨著主機內操作系統的啟動而自動啟動。客戶端測試軟件一般安裝在網絡內配合測試儀器進行性能測試用的計算機上,根據測試項目的不同選擇使用不同的軟件。
網絡性能測試按是否向網絡內部注入探測包,分為主動測試和被動測試。主動測試是通過向網絡注入探測包,判斷應用從網絡獲得服務的能力。被動測試是用儀表監測網絡中的數據,通過分析采集到的數據判斷網絡性能狀況,是在不影響網絡正常工作的情況下進行的測試。在實際應用中一般采用主動測試技術。另外,網絡測試按照測試所處的位置可分為單點測量與多點測量,按照測試層面的不同分為應用層測試和網絡層測試等。
3.1 時延測試。時延的測試步驟是:選擇源和目的IP地址并以此生成一個測試分組;目的主機處接收并響應測試分組;在源主機處,記下開始時間戳,然后將準備好的分組發送到目的處;到達目的端,盡快從目的端返回一個相應的響應分組到源端;如果響應分組在一個合理的時期內到達,在接收測試分組時盡快記下一個結束時間戳,通過這兩個時間戳的相減就可以計算出環路時延值;如果分組不能在一個合理的時期內到達,則認為單向時延值不確定。
3.2 丟包率測試。丟包率的計算公式是:丟包率=[(輸入幀個數一輸出幀個數)×100/輸入幀個數。測試時,網絡測試儀發送測試幀的速率從傳輸介質的最大理論值開始,以后每次發送速率遞減10%,直到兩次測試沒有丟幀為止。丟包率測試時需考慮的是測試次數因為數據幀丟失是一個隨機行為,對每一個測試案例都要重復測量多次以便獲得統計數據,最后給出丟包率的平均值,測試次數可設定為20次。
3.3 吞吐量測試
吞吐量測試是檢測每秒鐘傳輸數據的字節數和數據包數。典型的吞吐量測試是從一個網絡設備,以指定的速率和時間間隔向另外一個網絡設備發送流量,接收設備統計在此時間間隔內收到的幀數并計算接收的速率 (也稱為吞吐率)。吞吐量是接收器收到的好幀數量/時間,測試通過改變幀長度,重復以上測試得到不同速率下的測試結果。吞吐量測試是一個雙端的測試,一端的設備模擬為主機或服務器,另一端的設備作為遠端或者客戶。主機測試設備發送流量,遠端測試設備接收并測量結果。由于采取主動測量的方法,會在網絡中引入較多的測量流量,將對網絡實際性能造成一定的影響,所以在進行網絡吞吐量測試時通常都采用比較小的時問間隔,多次采樣測試,并繪制成吞吐量的歷史趨勢圖。需要注意的是,網絡吞吐量非常依賴于當前的網絡負載情況,為了得到正確的網絡吞吐量,最好在不同時間分別進行測試,只有這樣才能對網絡吞吐量進行全面認識。
3.4 網絡帶寬測試
帶寬測試一般采用主動測量方法,就是通過向網絡注入主動探測包以獲取網絡時延特性,并通過特定的模型估測出帶寬。網絡帶寬一般由吞吐量測試來驗證,最大吞吐量就是一般意義上的網絡帶寬。測試方法是從最大的理論速率開始發送,然后逐步降低發送的速率直到在接收端沒有數據幀丟失。
本文對IP網絡性能測試的重點指標進行了介紹,探討了時延、吞吐量等關鍵指標的測試機理和技術實現方法,在一定程度上可以為提高網絡服務質量提供指導。但是,IP網結構復雜、規模龐大、應用業務繁多,有許多測試 工作要做,如網絡安全性測試、網絡設備穩定性測試、網絡應用測試等,測試指標的確定也是一個逐步完善的過程,而測試技術也在不斷發展,測試體系的建立更是一個系統工程,需要更多的技術人員投入研究,以實現對網絡的定量評估、科學管理,確保IP網絡中各業務數據的高效、安全、可靠傳輸。
[1]林芳,馮玉珉.IP 網絡分組時延的測量[J].通信前沿.2005(3).
[2]趙鋒.IP 網絡測試技術[J].電信網技術.2009(1).
[3]謝希仁,鳴,張興元.計算機網絡[M].電子工業出版社,2003.
[4]楊義先,鈕心忻,李名選.網絡信息安全與保密[M].北京人民郵電出版社,2001.