摘 要:網絡已成為信息系統不可或缺的組成部分。網絡的性能一定程度上決定了信息系統的性能。以對吞吐量的測試為例,結合實例描述了一種網絡測試的方法,并對結果進行了分析。對網絡其他的應用層面性能如延時和抖動等,都可以按該方法做少許改變。
關鍵詞:網絡測試; 吞吐量; 延時; 抖動
中圖分類號:
TN711-34
文獻標識碼:A
文章編號:1004-373X(2012)05
-0083
-03
One network test method
LIU Ming
(China Academy of Electronic and Information Technology, Beijing 100041, China)
Abstract:
Network has become an important component of information system. The performance of network affects information system more or less. A kind of network test method is illustrated with the test of throughput, and its results are analyzed. Other tests on network can be conducted according to it.
Keywords: network test; throughput; delay; jitter
收稿日期:2011-10-11
0 引 言
1973年,以太網絡之父羅伯梅特卡夫博士(Robert Metcalfe)在Xerox的巴羅阿爾托研究中心發明了以太網,對世界通信及信息產業的發展發揮了革命性的作用。
如今,網絡遍布在人們周圍。人們一般只是在使用它,而很少關心它具體的性能,如帶寬、延時、抖動、丟包率等。本文將從應用層次,介紹一種網絡測試方法。從一般用戶角度測試網絡參數(吞吐量、反應時間、延時、抖動、丟包等),為掌握網絡性能并更好地利用它提供支持。
1 測試的層次
針對網絡互聯,國際標準化組織提出了OSI/RM協議。OSI將計算機網絡體系結構分為以下七層:物理層、數據鏈路層、網絡層、傳輸層、會話層、表示層、應用層[1]。本文所要討論的測試方法,旨在測試網絡可為終端用戶提供的應用和性能,并不深入測試七層模型中各層次具體的數據包、數據幀的結構和特征。
2 測試項目
測試的網絡特征參數主要有吞吐量、延時、抖動、響應時間[2]。其中,各術語解釋如下:
(1) 吞吐量
吞吐量由下式計算:
(終點1發送字節+終點1接收字節)/計算單位量值/測試時間。
計算單位量值:如吞吐量以Kb/s為單位,則計算單位量值為128;如吞吐量以Mb/s為單位,則計算單位量值為125 000。
(2) 事務率
事務率由下式計算:
事務數量/測試時間。
(3) 響應時間
響應時間是事務率的倒數,按如下計算:
測試時間/事務數量。
(4) 丟失數據
丟失數據為終點1發送數據和終點2實際接收數據的差值,按字節計算。丟失數據僅在流測試(如VoIP[3]和IP廣播[4])時才被計算。只有有效載荷數據才被計算在內。
(5) 延時
延時指一個數據包從用戶的計算機發送到網站服務器,然后再立即從網站服務器返回用戶計算機的來回時間。
(6) 抖動
抖動是QoS[5]里面常用的一個概念,其意思是指分組延遲的變化程度。
如果網絡發生擁塞,排隊延遲將影響端到端的延遲,并導致通過同一連接傳輸的分組延遲各不相同,而抖動,就是用來描述這種延遲變化的程度。
3 測試方法
本文所講到的測試,基于IXIA IxChariot Console 5.40(網絡戰車),配合以endpoint 5.0進行。CHARIOT產生并模擬真實的流量及發送特性,按照規定的協議和服務質量,在特定的節點之間傳送。基本測試網絡包括被測節點及控制終端組成,如圖1所示。其中,控制終端可以是獨立的計算機,也可以運行在其中的一個測試節點上。
借助本測試方法,可以測試網絡在多種協議及服務下的性能,例如:
(1) TCP協議單向傳輸吞吐量;
(2) UDP協議傳輸吞吐量;
(3) UDP傳輸響應時間;
(4) G.729,H.263[6]質量下UDP吞吐量;
(5) G.711,G.723a,G.723m,G.729質量VoIP話音通信能力[7];
(6) 抖動時間;
(7) 對網絡電視[8]的支持能力;
(8) 對文件發送的支持能力。
測試需要結合測試腳本進行。后面將結合具體測試實例對測試腳本簡單介紹。
4 具體測試實例及分析
根據以上介紹的方法,對某個實際的專用網絡進行測試。
被測網絡模型如圖2所示,它是一個兼有有線通信和無線傳輸的網絡。骨干傳輸為工作在C波段的無線通信方式——數字微波中繼系統,用于連接分布在異地的有線網絡,骨干網帶寬8 Mb/s。骨干網兩端分布有線網絡,有線網絡符合IPv4協議。AAA認證服務器主要用來鑒別接入網絡的終端是否為合法授權的設備。
本次測試,以A地運行Chariot的筆記本作為測試控制臺,同時作為測試節點1(endpoint 1),另一個測試節點為B地內的筆記本(endpoint 2)。
4.1 TCP協議單向傳輸
下面以TCP協議單向傳輸吞吐量測試為例,解釋和分析測試結果。
圖2 被測網絡模型
吞吐量測試是通過在兩個節點間重復傳輸一定數量一定大小的數據包進行的。下面是測試腳本的部分代碼。Chariot提供的代碼比較易讀。①處描述了需要重復進行的次數;②處描述了每次發送數據的次數;③處描述了每次發送的數據量的大小。
Endpoint 1
……
count=number_of_timing_records(100)①
START_TIMER
LOOP
count=transections_per_record(1)②
SEND
size=file_size(100000)③
buffer=send_buffer_size(DEFAULT)
type=send_datetype(NOCOMPRESS)
rate=send_data_rate(UNLIMITED)
……
Endpoint 2
……
count=number_of_timing_records(100)
LOOP
count=transections_per_record(1)
RECEIVE
size=file_size(100000)
buffer=receive_buffer_size(DEFAULT)
……
4.1.1 吞吐量
TCP吞吐量測試結果如表1和圖3所示。
4.1.2 事務率
TCP吞吐量測試中事務率如圖4所示。
4.1.3 響應時間
TCP吞吐量測試中響應時間如圖5所示。
從表1中數據來看,節點1和節點2之間通過TCP進行傳輸時,網絡吞吐量起伏較大。這存在兩方面可能的原因,一是因為網絡上存在其他周期或并發的消息,造成測試包可以使用的吞吐量變小;另一種可能的原因是圖形中出現谷值時,正處于TCP協議的協商階段。
由第3節中關于吞吐量、事務率和響應時間的定義可以看出,事務率的圖形應該與吞吐量是一致的,只不過在數值和單位上不同,而響應時間的圖形應該和事務率模型是關于水平軸對稱的。
4.2 UDP協議傳輸吞吐量
基于以上方法,對相同的被測網絡,測試UDP協議下網絡吞吐量情況[10]。測試設置如下:
(1) 數據包大小:1 500 B;
(2) 數據包轉發暫停時間(單位:ms):200;
(3) 中斷前轉發的數據包個數:50。
UDP協議下吞吐量測試的結果如表2和圖6所示。本部分不再描述UDP協議下事務率和響應時間等。
組平均值/(Mb/s)最小值/(Mb/s)最大值/(Mb/s)置信區間95%測試時間/s相對精度
11.0710.8111.1050.006149.4230.583
4.3 數據對比及分析
對比表1和表2中數據,雖然所測網絡為同一個專用網絡,并且測試持續時間相對較長,減小了迸發數據造成的瞬時影響,但不同協議下的吞吐量差別較大。這是因為TCP協議是面向連接的可靠傳輸協議,而UDP是非面向連接的傳輸協議。從測試結果可以看出,被測網絡相對穩定可靠,在進行TCP傳輸時,多余的網絡開銷較小,而在UDP傳輸時,由于協議中規定的傳輸數據包格式等原因,網絡開銷較大,因此用戶速率較TCP協議下明顯低一些。但對于連接不可靠、不穩定的網絡,UDP協議下的用戶可用吞吐量將高于TCP。
網絡在不同的協議標準、不同的服務質量下,為用戶所能提供的綜合性能是不同的,因此,在進行系統設計、網絡協議及服務質量選擇時,要綜合權衡選擇,找到適合自己的方式。
5 結 語
網絡已成為信息系統不可或缺的組成部分。網絡的性能一定程度上決定了信息系統的性能。在進行信息系統設計時,一定要以準確的網絡性能數據為基礎,才能保證系統投入使用后可靠和高效。因此對網絡的測試就顯得尤為重要。通過測試,可以判斷網絡是否符合自己的需求。同時,測試還可以輔助設計人員選擇適合自己的協議或服務質量、決定與網絡相關的設置等。
本文以對吞吐量的測試為例,描述了一種網絡測試的方法及網絡測試的意義。對網絡其他的應用層面性
(下轉第89頁)