1. 先把iperf-2.0.4.tar.gz解壓到你的目錄下。
2. cd iperf-2.0.4
3. ./configure --host=arm CXX=arm-uclinux-g++ CC=arm-uclinux-gcc
這里的arm-uclinux -改成你自己的交叉編譯器的前綴。
4. make
5. 如果make通不過的話就到 config.h 中把 #define malloc rpl_malloc 注釋掉。
6. make
7. 這時候會生成一個iperf的文件。
8. 把這個文件copy到你的board上去。
Iperf 是一個 TCP/IP 和 UDP/IP 的性能測量工具,能夠提供網絡吞吐率信息,以及震動、丟包率、最大段和最大傳輸單元大小等統計信息;從而能夠幫助我們測試網絡性能,定位網絡瓶頸。 參數說明 -s 以server模式啟動,eg:iperf -s -c 以client模式啟動,host是server端地址,eg:iperf -c 222.35.11.23
通用參數 -f [k|m|K|M] 分別表示以Kbits, Mbits, KBytes, MBytes顯示報告,默認以Mbits為單位,eg:iperf -c 222.35.11.23 -f K
-i sec 以秒為單位顯示報告間隔,eg:iperf -c 222.35.11.23 -i 2
iperf是client端向server端發送數據
server端顯示的是接收速率,最好加i參數,進行速率跟蹤
client 顯示的是發送速率
server 顯示接收速率
-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協議
測試htb的時候最好用udp,udp通信開銷小,測試的帶寬更准確
-w 指定TCP窗口大小,默認是8KB
如果窗口太小,有可能丟包
-B 綁定一個主機地址或接口(當主機有多個地址或接口時使用該參數) -C 兼容舊版本(當server端和client端版本不一樣時使用) -M 設定TCP數據包的最大mtu值 -N 設定TCP不延時 -V 傳輸ipv6數據包
server專用參數 -D 以服務方式運行ipserf,eg:iperf -s -D -R 停止iperf服務,針對-D,eg:iperf -s -R
client端專用參數 -d 同時進行雙向傳輸測試 -n 指定傳輸的字節數,eg:iperf -c 222.35.11.23 -n 100000 -r 單獨進行雙向傳輸測試
-b 指定發送帶寬,默認是1Mbit/s
在測試qos的時候,這是最有用的參數。
-t 測試時間,默認10秒,eg:iperf -c 222.35.11.23 -t 5
默認是10s
-F 指定需要傳輸的文件 -T 指定ttl值
