目錄
下載方式
Windows
Linux
使用方法:測試局域網帶寬
步驟一:服務端準備
步驟二:客戶端發起連接
步驟三:查看結果
參數說明
1. Iperf常用參數(測試夠用)
2. 通用參數(Server端和Client端共用)
3. Server端專用參數
4. Client端專用參數
5. 其他參數
Iperf3 是一款開源網絡性能測試工具。只用一個exe文件,既可以作為客戶端發起測試,也能作為服務端接收流量,操作靈活。
- 支持無線/有線網絡測試
- 支持多平臺(Windows、Linux、macOS、Android)
- 無需安裝,開源免費,命令簡潔易上手
- 可測TCP/UDP帶寬、支持多線程并發測試
下載方式
Windows
① 直接訪問官網下載壓縮包:iPerf - Download iPerf3 and original iPerf pre-compiled binaries?
下載后進行解壓,解壓后通過命令行進入解壓目錄即可使用,無需安裝。
② 如果訪問不了網站,可以從我分享的CSDN資源中獲取:
https://download.csdn.net/download/weixin_46008548/90797186
Linux
RedHat 系列:
sudo dnf install iperf3
Ubuntu 系列:
sudo apt-get install iperf3
特別提示:在 VMware ESXi 7.0+ 系統中已默認內置 Iperf3,可直接在?/usr/lib/vmware/vsan/bin/iperf3
?路徑下使用。
使用方法:測試局域網帶寬
舉個例子,現在有一個Win10 要訪問 Winserver,FW2上做了NAT Server 2.2.2.10映射Winserver的192.168.153.100
我們來測一下,Win10訪問WinServer 的帶寬。
步驟一:服務端準備
iperf3 -s
默認監聽 TCP 5201 端口。
步驟二:客戶端發起連接
iperf3 -c 服務端IP
即可開始進行一次單向帶寬性能測試。
步驟三:查看結果
可以看出來,當前的帶寬發送(Sender)是1.15Mbits/sec,接受(receiver)是1.02Mbits/sec
也就是大概1Mbits/sec(一般正常是沒有這么低的,是我為了測試故意將鏈路帶寬降低到這么低,這個測試結果是準確的,因為我就是設置了鏈路帶寬1Mbits/sec)
參數說明
1. Iperf常用參數(測試夠用)
(1)-s,–server:iperf服務器模式,默認啟動的監聽端口為5201,eg:iperf -s(2)-c,–client host:iperf客戶端模式,host是server端地址,eg:iperf -c 222.35.11.23(3)-i,–interval:指定每次報告之間的時間間隔,單位為秒,eg:iperf3 -c 192.168.12.168 -i 2(4)-p,–port:指定服務器端監聽的端口或客戶端所連接的端口,默認是5001端口。(5)-u,–udp:表示采用UDP協議發送報文,不帶該參數表示采用TCP協議。(6)-l,–len:設置讀寫緩沖區的長度,單位為 Byte。TCP方式默認為8KB,UDP方式默認為1470字節。通常測試 PPS 的時候該值為16,測試BPS時該值為1400。(7)-b,–bandwidth [K|M|G]:指定UDP模式使用的帶寬,單位bits/sec,默認值是1 Mbit/sec。(8)-t,–time:指定數據傳輸的總時間,即在指定的時間內,重復發送指定長度的數據包。默認10秒。(9)-A:CPU親和性,可以將具體的iperf3進程綁定對應編號的邏輯CPU,避免iperf進程在不同的CPU間調度。
2. 通用參數(Server端和Client端共用)
(1)-f,–farmat [k|m|g|K|M|G]:指定帶寬輸出單位,“[k|m|g|K|M|G]”分別表示以Kbits, Mbits, Gbits, KBytes, MBytes,GBytes顯示輸出結果,默認Mbits,eg:iperf3 -c 192.168.12.168 -f M(2)-p,–port:指定服務器端監聽的端口或客戶端所連接的端口,默認是5001端口。(3)-i,–interval:指定每次報告之間的時間間隔,單位為秒,eg:iperf3 -c 192.168.12.168 -i 2(4)-F:指定文件作為數據流進行帶寬測試。例如:iperf3 -c 192.168.12.168 -F web-ixdba.tar.gz
3. Server端專用參數
(1)-s,–server:iperf服務器模式,默認啟動的監聽端口為5201,eg:iperf -s(2)-c,–client host:如果iperf運行在服務器模式,并且用-c參數指定一個主機,那么iperf將只接受指定主機的連接。此參數不能工作于UDP模式。(3)-D:Unix平臺下將Iperf作為后臺守護進程運行。在Win32平臺下,Iperf將作為服務運行。(4)-R:卸載Iperf服務(僅用于Windows)。(5)-o:重定向輸出到指定文件(僅用于Windows)。(6)-P,–parallel:服務器關閉之前保持的連接數。默認是0,這意味著永遠接受連接。
4. Client端專用參數
(1)-c,–client host:iperf客戶端模式,host是server端地址,eg:iperf -c 222.35.11.23(2)-u,–udp:表示采用UDP協議發送報文,不帶該參數表示采用TCP協議。(3)-b,–bandwidth [K|M|G]:指定UDP模式使用的帶寬,單位bits/sec,默認值是1 Mbit/sec。(4)-t,–time:指定數據傳輸的總時間,即在指定的時間內,重復發送指定長度的數據包。默認10秒。(5)-l,–len:設置讀寫緩沖區的長度,單位為 Byte。TCP默認為8KB,UDP默認為1470字節。通常測試 PPS 的時候該值為16,測試BPS時該值為1400。(6)-n,–num [K|M|G]:指定傳輸數據包的字節數,例如:iperf3 -c 192.168.12.168 –n 100M(7)-P,–parallel:指定客戶端與服務端之間使用的線程數。默認是1個線程。需要客戶端與服務器端同時使用此參數。(8)-w,–window:指定套接字緩沖區大小,在TCP方式下,此設置為TCP窗口的大小。在UDP方式下,此設置為接受UDP數據包的緩沖區大小,用來限制可以接收數據包的最大值(9)-B,–bind:用來綁定一個主機地址或接口,這個參數僅用于具有多個網絡接口的主機。在UDP模式下,此參數用于綁定和加入一個多播組。(10)-M,–mss:設置TCP最大信息段的值(11)-N,–nodelay:設置TCP無延時(12)-V:綁定一個IPv6地址。(13)-d,–dualtest:運行雙測試模式。將使服務器端反向連接到客戶端,使用-L參數中指定的端口(或默認使用客戶端連接到服務器端的端口)。使用參數-r以運行交互模式。(14)-L,–listenport:指定服務端反向連接到客戶端時使用的端口。默認使用客戶端連接至服務端的端口。(15)-r,–tradeoff:往復測試模式。當客戶端到服務器端的測試結束時,服務器端反向連接至客戶端。當客戶端連接終止時,反向連接隨即開始。如果需要同時進行雙向測試,請嘗試-d參數。
5. 其他參數
(1)-h,–help:顯示命令行參考并退出。[root]# iperf3 -h
Usage: iperf3 [-s|-c host] [options] iperf3 [-h|--help] [-v|--version](2)-v,–version:顯示版本信息和編譯信息并退出。
溫馨提示:?不要將 Iperf3 長期暴露在公網監聽狀態,以免被用于非法流量攻擊!