Iperf3 是一個網絡性能測試工具。Iperf可以測試最大TCP和UDP帶寬性能,具有多種參數和UDP特性,可以根據需要調整,可以報告帶寬、延遲抖動和數據包丟失.對於每個測試,它都會報告帶寬,丟包和其他參數,可在Windows、Mac OS X、Linux、FreeBSD等各種平台使用,是一個簡單又實用的小工具。
軟件下載地址: https://iperf.fr/iperf-download.php
安裝iperf3
在CentOS 7上使用下列命令即可安裝: # yum install iperf3 在ubuntu 上使用下列命令安裝: # apt-get install iperf3 windows端安裝: 下載解壓安裝包,進入dos切換到iperf3解壓目錄,執行iperf3即可運行.
網絡帶寬測試
Iperf3也是C/S(客戶端/服務器端)架構模式,在使用iperf3測試時,要同時在server端與client端都各執行一個程序,讓它們互相傳送報文進行測試。
我這邊在ubuntu主機安裝iperf3作為服務端,ip地址為192.168.1.43 ,本地windows pc機作為客戶端,來做測試實驗.
1. 首先在192.168.1.43 機器啟動server端的程序:
saneri@saneri-VirtualBox:~$ iperf3 -s
2. 接着在本地windows PC服務器上執行client 端的程序:
C:\Users\iperf3>iperf3.exe -c 192.168.1.43
從打印的內容看,缺省參數下,Client將連接Server端的5201端口,持續向Server端發送數據,並統計出每秒傳輸的字節數、帶寬、出現報文重傳的次數、擁塞窗口(Congestion Window)大小,整個測試將持續10秒鍾;最后將匯總10秒的平均數據,並給出發送和接收端的統計。
---------------------
接下來分析一下Server的測試輸出結果:
Server端日志顯示接收了來自192.168.1.71,源端口56569的測試請求。Client端連續進行了10秒的測試,並顯示了每秒傳輸的字節數,帶寬信息;測試結束后會匯總發送和接收的統計信息。在Client連接關閉之后會繼續偵聽5201端口。
---------------------
iperf3 所提供的選項非常多,以下介紹一些常用的參數。
服務器端命令行
其中:
-s 表示服務器端; -p 定義端口號; -i 設置每次報告之間的時間間隔,單位為秒,如果設置為非零值,就會按照此時間間隔輸出測試報告,默認值為零
客戶端命令行
其中,
-c 表示服務器的IP地址; -p 表示服務器的端口號; -t 參數可以指定傳輸測試的持續時間,Iperf在指定的時間內,重復的發送指定長度的數據包,默認是10秒鍾. -i 設置每次報告之間的時間間隔,單位為秒,如果設置為非零值,就會按照此時間間隔輸出測試報告,默認值為零; -w 設置套接字緩沖區為指定大小,對於TCP方式,此設置為TCP窗口大小,對於UDP方式,此設置為接受UDP數據包的緩沖區大小,限制可以接受數據包的最大值. --logfile 參數可以將輸出的測試結果儲存至文件中. -J 來輸出JSON格式測試結果. -R 反向傳輸,缺省iperf3使用上傳模式:Client負責發送數據,Server負責接收;如果需要測試下載速度,則在Client側使用-R參數即可.
常用啟動命令:
服務端: saneri@saneri-VirtualBox:~$ iperf3 -s -p 12345 -i 1 客戶端: C:\Users\iperf3>iperf3.exe -c 192.168.1.43 -p 12345 -i 1 -t 20 -w 100k
windows圖形界面版本的為jperf:
https://wenku.baidu.com/view/521c7017ed630b1c58eeb537.html
參考文檔:https://blog.csdn.net/jinguangliu/article/details/82468482