111
雲更新
網絡性能測試工具iperf使用教程
Iperf是一個網絡性能測試工具。Iperf可以測試TCP和UDP帶寬質量。Iperf可以測量最大TCP帶寬,具有多種參數和UDP特性。Iperf可以報告帶寬,延遲抖動和數據包丟失。利用Iperf這一特性,可以用來測試一些網絡設備如路由器,防火牆,交換機等的性能。
Iperf有兩種版本,windows版和linux版本。linux版本更新快,最新版本為iperf 3.0,下載地址為https://code.google.com/p/iperf/downloads/list ,windows版本官方更新的最新版本為1.7(打包在jperf中),下載地址為:
https://sourceforge.net/projects/iperf/files/jperf/jperf%202.0.0/
Iperf的主要功能如下:
TCP
測量網絡帶寬
報告MSS/MTU值的大小和觀測值
支持TCP窗口值通過套接字緩衝
當P線程或Win32線程可用時,支持多線程。客戶端與服務端支持同時多重連接
UDP
客戶端可以創建指定帶寬的UDP流
測量丟包
測量延遲
支持多播
當P線程可用時,支持多線程。客戶端與服務端支持同時多重連接(不支持Windows)
其他
在適當的地方,選項中可以使用K(kilo-)和M(mega-)。例如131072字節可以用128K代替。
可以指定運行的總時間,甚至可以設置傳輸的數據總量。
在報告中,為數據選用最合適的單位。
服務器支持多重連接,而不是等待一個單線程測試。
在指定時間間隔重複顯示網絡帶寬,波動和丟包情況。
服務器端可作為後台程序運行。
服務器端可作為Windows 服務運行。
使用典型數據流來測試鏈接層壓縮對於可用帶寬的影響。
支持傳送指定文件,可以定性和定量測試
Iperf使用方法
安裝Iperf
對於windows版的Iperf,直接將解壓出來的iperf.exe和cygwin1.dll複製到%systemroot%目錄即可
對於linux版的Iperf,請使用如下命令安裝
gunzip -c iperf-<version>.tar.gz | tar -xvf -
cd iperf-<version>
./configure
make
make install
使用Iperf(以windows版本為例)
在命令提示符中輸入iperf命令即可運行Iperf,使用命令Iperf –help可以查看iperf的幫助
測試單線程TCP
在服務端運行iperf,輸入命令iperf –s –p 12345 –i 1 –M 以在本機端口12345上啟用iperf
在客戶端運行iperf,輸入命令iperf –c server-ip –p server-port –i 1 –t 10 –w 20K,其中參數說明如下:
-c:客戶端模式,後接服務器ip
-p:後接服務端監聽的端口
-i:設置帶寬報告的時間間隔,單位為秒
-t:設置測試的時長,單位為秒
-w:設置tcp窗口大小,一般可以不用設置,默認即可
測試後截圖如下:
客戶端
服務端
其中:Interval表示時間間隔。Transfer表示時間間隔裏麵轉輸的數據量。Bandwidth是時間間隔裏的傳輸速率。最後一行是本次測試的統計。測試可知帶寬平均為89.9Mbit/s。
測試多線程TCP
在客戶端添加-P參即可測試多線程的TCP性能,如下為使用兩個線程的測試情況
客戶端截圖
服務端截圖
測試單線程UDP(默認帶寬)
在服務端運行iperf,輸入命令iperf –s -u –p 12345 –i 1 以在本機端口12345上啟用iperf,並運行於udp模式
在客戶端運行iperf,輸入命令iperf -c server-ip -p server-port -i 1 -t 10 -b,其中參數說明如下:
-c:客戶端模式,後接服務器ip
-p:後接服務端監聽的端口
-i:設置帶寬報告的時間間隔,單位為秒
-t:設置測試的時長,單位為秒
-b:設置udp的發送帶寬,單位bit/s
客戶端截圖
服務端截圖
其中,Jitter為抖動,lost/total為丟包數量,Datagrams為包數量。
測試單線程UDP(帶寬為10Mbit/s)
設置客戶端帶寬為10M即可,使用參數-b指定
客戶端截圖
服務端截圖
測試多線程UDP
與多線程TCP類似,隻需要客戶端使用-P參數指定線程個數即可
測試UDP的雙向傳輸
客戶端使用參數-d以運行雙測試模式,客戶端會與服務端進行udp往返測試。可以使用-L參數指定本端雙測試監聽的端口。
客戶端截圖
服務端截圖
測試UDP往複傳輸
與雙向傳輸類似,使用參數-r以運行交互模式,仍然可以使用-L參數指定交互的端口。
客戶端截圖
服務端截圖
最後更新:2017-02-04 19:58:35