perf是一个网络性能测试工具,iperf可以测试TCP和UDP带宽质量。iperf可以测量最大TCP带宽,具有多种参数和UDP特性。iperf可以报告带宽,延迟抖动和数据包丢失。利用iperf这一特性,可以用来测试一些网络设备如路由器,防火墙,交换机等的性能。
1.在客户端和服务器端,均下载iperf工具
https://iperf.fr/iperf-download.php
2.使用iperf
iperf.exe -s 表示server端
iperf.exe -c 表示client端 1) 测试单线程TCP
在客户端运行iperf,输入命令iperf –c server-ip –p server-port –i 1 –t 10 –w 10K
-c:客户端模式,后接服务器ip
-p:后接服务端监听的端口
-i:设置带宽报告的时间间隔,单位为秒
-t:设置测试的时长,单位为秒
-w:设置tcp窗口大小,一般可以不用设置,默认即可 其中:Interval表示时间间隔。Transfer表示时间间隔里面转输的数据量。Bandwidth是时间间隔里的传输速率。最后一行是本次测试的统计。测试可知带宽平均为22.3Mbit/s。 2) 测试单线程UDP(设定带宽30M)
在客户端运行iperf,输入命令iperf -c server-ip -p server-port -i 1 -t 10 -u -b,其中参数说明如下:
-c:客户端模式,后接服务器ip
-p:后接服务端监听的端口
-i:设置带宽报告的时间间隔,单位为秒
-t:设置测试的时长,单位为秒
-b:设置udp的发送带宽,单位bit/s
-u : 设置UDP 3)测试吞吐量
在客户端运行iperf,输入命令iperf -c server-ip -p server-port -i 1 -t 10 4)测试多线程TCP
在客户端添加-P参数,即可测试多线程的TCP性能,如下为使用两个线程的测试情况
iperf -c server-ip -p server-port -i 1 -t 3 -P 2 5) 测试多线程UDP
在客户端添加-P参数,即可测试多线程的UDP性能,如下为使用两个线程的测试情况
iperf -c server-ip -p server-port -i 1 -t 3 -u -P 2 将测试结果写入log日志中 iperf -c server-ip -p server-port -i 1 -t 3 -u -P 2 >test.log
测试结束后,打开test.log ,可以查看到日志内容。 另外,
Jperf是将iperf命令行图形化的Java程序;
使用JPerf程序能简化了复杂命令行参数的构造,而且它还保存测试结果,同时实时图形化显示结果。JPerf可以测试TCP和UDP带宽质量。JPerf可以测量最大TCP带宽,具有多种参数和UDP特性。JPerf可以报告带宽,延迟抖动和数据包丢失。
|