使用的內核:2.6.28
使用的交叉編譯器:arm-linux-gcc-4.3.2
使用的iperf的源碼:Iperf2.0.2
使用的主機:Ubuntu10.04
首先介紹一下什麼是Iperf?(借用網上的解釋)
Iperf 是一個網絡性能測試工具。Iperf可以測試TCP和UDP帶寬質量。Iperf可以測量最大TCP帶寬,具有多種參數和UDP特性。Iperf可以報告帶寬,延遲抖動和數據包丟失。
我們做這個測試用的是在掛載根文件系統的前提下,如果使用板子上自己跑的系統我覺得效果可能會更好,下面首先要介紹的是如何在PC上安裝iperf
Ubuntu10.04非常的智能,能夠上網的用戶你只要直接的使用
sudo apt-get install iperf
這個命令就可以成功的安裝好iperf
如果你想通過下載源碼來安裝也可以,就是通過最常用的辦法
tar xvf iperf-2.0.2.tar.gz
cd iperf-2.0.2
./configure
make
編譯成功後,使用以下命令安裝Iperf:
make install
這樣也可以安裝成功
接下來要介紹我們的重點就是如何交叉編譯我們的iperf源碼:
爲了方便起見我們寫了一個.sh的配置文件
具體的內容如下:
vim buildarm.sh
#!/bin/sh
echo “ac_cv_func_malloc_0_nonnull=yes”>arm-linux.cache
./configure --host=arm-linux CC=arm-none-linux-gnueabi-gcc-4.3.2 –cache-file=arm-linux.cache
make
(要把交叉編譯器的環境變量進行配置哦)
配置文件寫完以後還要改變其權限,讓其能夠執行
chmod +x buildarm.sh
然後就可以執行命令:
./buildarm.sh
成功後在你的iperf目錄的src文件夾下會產生一個iperf文件,把這個二進制可執行文件放置到你的板子的文件系統上就可以使用了,現在馬上來測試一下吧:
首先打開文件系統,但是要保證一件事,就是板子在系統啓動以後可以ping通主機,這樣就可以證明兩者之間的網絡是通的:
然後就可以啓動主機的服務了:
我們現在就來測試一下兩者的狀態:
首先進行的是TCP測試:
運行主機的iperf程序
運行命令
iperf -s
然後在客戶端運行
現在我們來測試一下UDP的傳輸速度:
主機端運行命令:iperf –s –u
現在看客戶端:
測試成功
通過看網上其他的帖子和man手冊可以查看iperf的更多的用法,希望對大家的學習有所幫助。