什麼是iperf?
iperf 是乙個網路效能測試工具。iperf可以測試最大tcp頻寬,並可以報告udp頻寬,延遲抖動和資料報丟失。具體的功能包括
測量網路頻寬報告mss/mtu值的大小和觀測值
支援tcp視窗值通過套接字緩衝
當p執行緒或win32執行緒可用時,支援多執行緒。客戶端與服務端支援同時多重連線
客戶端可以建立指定頻寬的udp流引數:測量丟包
測量延遲
支援多播
當p執行緒可用時,支援多執行緒。客戶端與服務端支援同時多重連線(不支援windows)
在適當的地方,選項中可以使用k(kilo-)和m(mega-)。例如131072位元組可以用128k代替。
指定執行的總時間,甚至可以設定傳輸的資料總量。
在報告中,為資料選用最合適的單位。
伺服器支援多重連線,而不是等待乙個單執行緒測試。
在指定時間間隔重複顯示網路頻寬,波動和丟包情況。
伺服器端可作為後台程式執行。
伺服器端可作為windows 服務執行。
使用典型資料流來測試鏈結層壓縮對於可用頻寬的影響。
-s 以server模式啟動,eg:iperf -s
通用引數
-f [k|m|k|m] 分別表示以kbits, mbits, kbytes, mbytes顯示報告,預設以mbits為單位,eg:iperf -c 222.35.11.23 -f kserver專用引數-i sec 以秒為單位顯示報告間隔,eg:iperf -c 222.35.11.23 -i 2
-l 緩衝區大小,預設是8kb,eg:iperf -c 222.35.11.23 -l 16
-m 顯示tcp最大mtu值
-o 將報告和錯誤資訊輸出到檔案eg:iperf -c 222.35.11.23 -o c:\iperflog.txt
-p 指定伺服器端使用的埠或客戶端所連線的埠eg:iperf -s -p 9999;iperf -c 222.35.11.23 -p 9999
-u 使用udp協議
-w 指定tcp視窗大小,預設是8kb
-b 繫結乙個主機位址或介面(當主機有多個位址或介面時使用該引數)
-c 相容舊版本(當server端和client端版本不一樣時使用)
-m 設定tcp資料報的最大mtu值
-n 設定tcp不延時
-v 傳輸ipv6資料報
-d 以服務方式執行ipserf,eg:iperf -s -dclient端專用引數-r 停止iperf服務,針對-d,eg:iperf -s -r
-d 同時進行雙向傳輸測試使用示例:-n 指定傳輸的位元組數,eg:iperf -c 222.35.11.23 -n 100000
-r 單獨進行雙向傳輸測試
-t 測試時間,預設10秒,eg:iperf -c 222.35.11.23 -t 5
-f 指定需要傳輸的檔案
-t 指定ttl值
1、udp 模式
伺服器端
iperf -u -s
客戶端iperf -c 192.168.1.1 -u -p 1 -i 1 -p 5001 -f m -b 45m -t 20 -t 10
在udp模式下,以45mbps為資料傳送速率,客戶端到伺服器192.168.1.1上傳頻寬測試,測試時間為20秒。
iperf -u -c 192.168.1.1 -b 5m -p 30 -t 60
客戶端同時向伺服器端發起30個連線線程,以5mbps為資料傳送速率。
iperf -u -c 192.168.1.1 -b 100m -d -t 60
以100m為資料傳送速率,進行上下行頻寬測試。
2、tcp模式
伺服器端
iperf -s
客戶端iperf -c 192.168.1.1 -p 1 -i 5 -p 5001 -f m -t 120
在tcp模式下,客戶端到伺服器192.168.1.1上傳頻寬測試,測試時間為120秒。
iperf -c 192.168.1.1 -p 30 -t 60
客戶端同時向伺服器端發起30個連線線程。
iperf -c 192.168.1.1 -d -t 60
進行上下行頻寬測試。
jperf: iperf的gui
注意:測試htb的時候最好用udp,udp通訊開銷小,測試的頻寬更準確
頻寬測試通常採用udp模式,因為能測出極限頻寬、時延抖動、丟包率。在進行測試時,首先以鏈路理論頻寬作為資料傳送速率進行測試,例如,從客戶端到伺服器之間的鏈路的理論頻寬為100mbps,先用 -b 100m進行測試,然後根據測試結果(包括實際頻寬,時延抖動和丟包率),再以實際頻寬作為資料傳送速率進行測試,會發現時延抖動和丟包率比第一次好很多,重複測試幾次,就能得出穩定的實際頻寬。
reference:
the quality of a link can be tested as follows:
- latency (response time or rtt): can be measured with the ping command.
- jitter (latency variation): can be measured with an iperf udp test.
- datagram loss: can be measured with an iperf udp test.
網路效能測試工具 Iperf
iperf 是乙個網路效能測試工具。iperf可以測試tcp和udp頻寬質量。iperf可以測量最大tcp頻寬,具有多種引數和udp特性。iperf可以報告頻寬,延遲抖動和資料報丟失。iperf使用方法與引數說明 引數說明 s 以server模式啟動,eg iperf s c host以client...
iperf 網路效能測試工具
iperf命令是乙個網路效能測試工具。iperf可以測試tcp和udp頻寬質量。iperf可以測量最大tcp頻寬,具有多種引數和udp特性。iperf可以報告頻寬,延遲抖動和資料報丟失。利用iperf這一特性,可以用來測試一些網路裝置如路由器,防火牆,交換機等的效能。iperf分為兩種版本,unix...
IPerf網路效能測試工具
最近專案中需要iperf的工具,因此實施調研了一下。iperf可以測試tcp以及udp協議下的一些網路效能,如頻寬 丟包率等。通過這個過程,我好像深刻明白了docker的意義。本身我自己是開了兩個虛擬機器,進行相關的網路效能的測試,但是呢,我的本子太太太差勁了,開了兩個虛擬機器,就要炸。在別人的建議...