日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

iperf测试网卡性能

發布時間:2023/12/19 编程问答 35 豆豆
生活随笔 收集整理的這篇文章主要介紹了 iperf测试网卡性能 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

?Iperf是一個網絡性能測試工具。可以測試TCP和UDP帶寬質量,可以測量最大TCP帶寬,具有多種參數和UDP特性,可以報告帶寬,延遲抖動和數據包丟失??

???為產品上確定要要用的PHY是千M的,但模塊接口又定義死了,只能用到100M。所以想測試下割掉幾根線試下100M可行不。在測之前先測下千M模式下到底性能怎么樣,之前別人一直說這我手頭上這顆ARM根本上不了千M,雖然他標稱的是可以支持千M。一準備工作做好了,開始。

我們使用的工具是iperf這個工具我是自己編譯的。現在將我的過程寫下來。iperf下載地址
先編譯PC端工具:
1.解壓源碼:
$ tar xzvf iperf-2.0.5.tar.gz
2.進入源碼目錄
$ cd iperf-2.0.5
3.配置源碼 編譯PC下的不用指定參數,用默認的即可
$? ./configure
4.編譯 后面的-j4不是必須的。
$ make -j4
5.安裝 這里要注意要用管理員權限
# make install

$ iperf -s 就可以啟動服務端。

ARM端:
1.清理源碼(就是剛才編譯過的源碼)
$ make distclean
2.設置環境變量 (就是你的ARM交叉編譯工具鏈,根據自己的實際情況改)
$ export PATH=/home/gavin/ti-sdk-am335x-evm-05.06.00.00/linux-devkit/bin:$PATH
3.配置 指定主機為ARM g++編譯器和gcc 這里根據自己的實際情況改
$ ./configure --host=arm CXX=arm-arago-linux-gnueabi-g++ CC=arm-arago-linux-gnueabi-gcc
4.修改源碼目錄下面的config.h(沒配置之前是沒有這個文件的),注釋掉 #define malloc rpl_malloc
5.編譯
$ make -j4
在iperf-2.0.5/src/下會生成iperf這個文件,這個就是我們需要的。將這個文件拷到ARM的文件系統中去。這樣PC端和ARM端的都有了。

至于iperf的使用,就不多介紹了,直接在網上copy一段下來。

Iperf使用方法與參數說明

?

參數說明

-s 以server模式啟動,eg:iperf -s

-c host以client模式啟動,host是server端地址,eg:iperf -c?10.0.0.2

?

通用參數

-f [kmKM] 分別表示以Kbits, Mbits, KBytes, MBytes顯示報告,默認以Mbits為單位,eg:iperf -c?10.0.0.2?-f K

-i sec 以秒為單位顯示報告間隔,eg:iperf -c?10.0.0.2?-i 2

-l 緩沖區大小,默認是8KB,eg:iperf -c?10.0.0.2?-l 16

-m 顯示tcp最大mtu值

-o 將報告和錯誤信息輸出到文件eg:iperf -c?10.0.0.2?-o ciperflog.txt

-p 指定服務器端使用的端口或客戶端所連接的端口eg:iperf -s -p 9999;iperf -c?10.0.0.2?-p 9999

-u 使用udp協議

-w 指定TCP窗口大小,默認是8KB

-B 綁定一個主機地址或接口(當主機有多個地址或接口時使用該參數)

-C 兼容舊版本(當server端和client端版本不一樣時使用)

-M 設定TCP數據包的最大mtu值

-N 設定TCP不延時

-V 傳輸ipv6數據包

?

server專用參數

-D 以服務方式運行iperf,eg:iperf -s -D

-R 停止iperf服務,針對-D,eg:iperf -s -R

?

client端專用參數

-d 同時進行雙向傳輸測試

-n 指定傳輸的字節數,eg:iperf -c?10.0.0.2?-n 100000

-r 單獨進行雙向傳輸測試

-t 測試時間,默認10秒,eg:iperf -c?10.0.0.2?-t 5

-F 指定需要傳輸的文件

-T 指定ttl值

?

應用實例

使用 iperf -s 命令將 Iperf 啟動為 server 模式,在客戶機上使用 iperf -c啟動client模式。

iperf –s

------------------------------------------------------------

Server listening on TCP port 5001

TCP window size: 8.00 KByte (default)

------------------------------------------------------------

?

iperf -c 10.0.0.2

上面使用服務端和客戶端的默認設置進行測試

?

iperf -s -w 300K

------------------------------------------------------------

Server listening on TCP port 5001

TCP window size:? 300 KByte

------------------------------------------------------------

?

iperf -c?10.0.0.2-f K -i 2 -w 300K

?????? 設定報告間隔為2秒,服務器端和客戶端的TCP窗口都開到300KB

?

iperf -c?10.0.0.2?-f K -i 2 -w 300K –n 1000000

測試傳輸約1MB數據

?

iperf -c?10.0.0.2?-f K -i 2 -w 300K –t 36

測試持續36秒

?

iperf -c?10.0.0.2?-f K -i 2 -w 300K -n 10400000 –d

測試雙向的傳輸

?

iperf -c?10.0.0.2?-f K -i 2 -w 300K –u

UDP測試

?

其中 -i 參數的含義是周期性報告的時間間隔(interval),單位為秒;在上面的例子中,表示每隔2秒報告一次帶寬等信息。

先在PC端啟動$ iperf -s



再在ARM端執行
$ iperf -c 10.0.0.2 -f K -i 2 -w 300K -n 10000000 -t 180

執行完后,在服務器端會打印結果如下:

這能不坑爹嗎,號秒千M,跑出來是270M。

我上面這些測試數據都是通過路由器來測的,我路由器是千M的。






? ? ? 本文轉自灬落魄灬 ?51CTO博客,原文鏈接:http://blog.51cto.com/smoke520/1812216,如需轉載請自行聯系原作者

總結

以上是生活随笔為你收集整理的iperf测试网卡性能的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。