iperf 概述
iperf 是一個網(wǎng)絡性能測試工具坐榆。Iperf可以測試最大TCP和UDP帶寬性能拴魄。Iperf具有多種參數(shù)和UDP特性,可以根據(jù)需要調整席镀。Iperf可以報告帶寬匹中,延遲抖動和數(shù)據(jù)包丟失。
測試環(huán)境搭建
windows 端下載鏈接:
https://iperf.fr/download/windows/iperf-3.1.3-win64.zip
Android 端下載鏈接:
鏈接:https://pan.baidu.com/s/1jQM3mqPYeLBWtwtUlyCzlw
提取碼:r05t
1.windows下載對應軟件包后解壓
2.Android端安裝下載的apk
測試步驟
1.服務器端(windows)&客戶端(Android)連接同一網(wǎng)絡
2.打開CMD豪诲,服務器端(windows)進入剛才iperf的解壓路徑中后執(zhí)行:iperf3 -s
image.png
3.再開一個CMD顶捷,進入shell后客戶端(Android)執(zhí)行:iperf3 -c 192.168.x.xxx -i 1 -w 1M
(注意將ip地址換成自己電腦的ip)
image.png
測試結果如上圖,從左至右依次為: 線程id 時間 接收數(shù)據(jù)大小 每秒大小 延時 丟包/總包 丟包率
iperf 測試AndroidWi-Fi吞吐量基本流程就是這樣屎篱,謝謝~
附錄:常用命令
H | H |
---|---|
公用命令 | : |
-p, | --port 服務端監(jiān)聽或客戶端連接的端口(客戶端與服務端應該指定相同的端口服赎,默認5201) |
-f, | --format 格式化帶寬輸出:Kbits, Mbits, Kbytes, Mbytes |
-i, | --interval 以秒為單位周期性輸出帶寬報告葵蒂,默認顯示時間間隔為1秒,0表示不顯示 |
-F, | --file name 傳輸或接收特定的文件(客戶端從文件中讀取然后寫進網(wǎng)絡重虑,代替使用隨機數(shù)據(jù)践付;服務端從網(wǎng)絡讀取然后寫進文件,代替丟棄數(shù)據(jù)) |
-B, | --bind 綁定特定的接口 |
-V, | --verbose 顯示更多詳細的輸出 |
-J, | --json 以JSON格式輸出 |
-d, | --debug 顯示調試輸出信息 |
-v, | --version 顯示iperf的版本信息 |
-h, | --help 顯示iperf的幫助信息 |
服務端專用 | : |
-s, | --server 以server模式啟動缺厉,默認TCP方式永高,例如 iperf3 -s |
-D, | --daemon 在后臺以守護進程啟動服務端 |
-I, | --pidfile file 寫PID文件 |
-1, | --one-off 處理一個客戶端連接,然后退出 |
客戶端專用 | : |
-c, | --client 主機以client模式啟動 |
-u, | --udp 使用UDP而不是TCP |
-b, | --bandwidth 指定目標帶寬(0表示無限制)提针,UDP默認為1Mbit/sec乏梁,TCP無限制 |
-t, | --time 以秒為單位指定傳輸時間,默認10秒 |
-n, | --bytes 指定傳輸?shù)淖止?jié)數(shù)关贵,指定字節(jié)傳輸完遇骑,傳輸過程結束(可以代替-t參數(shù)以說明何時結束傳輸) |
-k, | --blockcount 指定傳輸?shù)臄?shù)據(jù)包數(shù)(代替-t或-n參數(shù))(-t, -n, -k參數(shù)都是指定傳輸結束的條件,所以不能同時指定) |
-l, | --len 讀寫緩沖區(qū)的大幸驹(TCP默認128KB落萎,UDP默認8KB) |
-P, | --parallel 運行的并行客戶端流的數(shù)量 |
-R, | --reverse 以顛倒模式啟動(服務端發(fā)送,客戶端接收) |
-w, | --window 設置窗口或者socket緩沖大小炭剪,默認8KB |
-M, | --set-mss 設置TCP/SCTP最大分片大辛妨础(MTU - 40bytes) |
-N, | --no-delay 設置TCP/SCTP 無延時 |
-4, | --version4 僅使用IPv4協(xié)議 |
-6, | --version6 僅使用IPv6協(xié)議 |
-S, | --tos N 設置IP首部TOS字段服務類型 |
-Z, | --zerocopy 使用發(fā)送數(shù)據(jù)的“zero copy”方法 |
-O, | --omit N 省略最初的N秒 |
-T, | --title str 在每個輸出行顯示str前綴 |