目录
❀My学习Linux命令小记录之iperf❀
①功能说明:
②安装iperf:
③iperf的使用及参数介绍:
④注意事项:
⑤实例:
iperf测试udp
iperf测试tcp
iperf是一个网络性能测试工具,用于测量网络带宽、延迟和丢包等指标。它可以在客户端和服务器之间进行测试,通过发送和接收数据来评估网络的性能。
iperf的基本用法是在一个机器上运行iperf服务器,然后在另一个机器上运行iperf客户端,客户端通过向服务器发送数据来测试网络性能。
在Linux系统上,可以使用包管理器直接安装iperf。例如,
在RedHat/CentOS系统中,可以使用以下命令安装iperf:
sudo yum install iperf
在Debian/Ubuntu系统中,可以使用以下命令安装iperf:
sudo apt-get install iperf
运行iperf服务器:
使用`-s`参数在服务器上运行iperf服务器,使用以下命令:
iperf -s
3. 运行iperf客户端:
使用`-c`参数在客户端上运行iperf客户端,使用以下命令连接到服务器并进行测试:
iperf -c
4. 测试带宽:
使用`-b`参数指定带宽限制(UDP模式),单位为bits/sec。例如,测试带宽为1Mbps的情况:
iperf -c -b 1M
5. 测试时间:
使用`-t`参数指定测试时间(服务端一般一直开着,不设此参数),单位为秒。例如,测试持续10秒的情况:
iperf -c -t 10
6. 并发连接数:
使用`-P`参数(大写P)指定并发连接数,设置线程数量。例如,使用4个并发连接进行测试:
iperf -c -P 4
7. 测试UDP性能:
默认情况下,iperf使用TCP进行测试,如果要测试UDP性能,可以使用`-u`参数。例如,测试UDP性能:
iperf -c -u
8. 测试延迟和丢包:
使用`-l`参数指定数据包大小,使用`-i`参数指定报告间隔。例如,测试延迟和丢包情况:
iperf -c -l 1000 -i 1
9. 其它参数讲解:
`-f`:设置报告格式,格式化带宽数输出,可选值为`Kbits`, `Mbits`, `Gbits`, `KBytes`, `MBytes`, `GBytes`。
`-Z`:启用压缩。
`-T`:设置TCP窗口大小。
`-B`:绑定一个特定的网络接口。
`-F`:指定要发送的文件。
`-p`:指定端口号(客户端要和服务器端一致),默认为5001(小写p)。
`-n`:指定传输的字节数。
`-o`:重定向输出到指定文件(v1.2或更高版本,仅用于Windows) 。
`-w`:tcp窗口大小,默认无上限,可以不设此参数,作为udp模式测试时也不需要此参数。
`-h`:显示帮助菜单。
`-v`:显示版本。
跑iperf前,可用ps命令查看是否有iperf残余的进程(#iperf -ef |grep iperf)。有的话用kill命令清除掉进程即可。
本次操作的服务器ip为:10.1.1.26;客户端ip为:10.1.1.28。
1.一般来说测试iperf,首先是服务器端(server端)先开启iperf监听:
iperf -s -u -p 5555 -i 1
-s,表示的是接收端;-u,表示的是udp协议;-p,表示的是端口,端口号自定义即可;-i,表示的是带宽报告的时间间隔。
2.然后客户端发送数据:
iperf -c 10.1.1.28 -u -p 5555 -t 10 -i 1 -b 10m
-c,表示的是发送端;-u,表示的是udp协议;-p,表示的是端口;-t,表示的是传输的时间;-i,表示的是带宽报告的时间间隔;-b,表示的带宽数量大小。
3.客户端和服务器端发送接收结果如图所示:
客户端接收结果:
Intgerval:表示时间间隔
Transfer:表示在此时间段内传输的数据量
Bandwidth:表示当前带宽
Jitter抖动:延迟的变化程度,标识网络的稳定性;计算方式:最大延迟减去最小延迟的时间差;在iperf中,我们测试时需要发送大量的包,因此计算出来的抖动值就是连续发送时延差值的平均值。
Lost/Total:丢包数/包总数
Datagrams:丢包率
服务器端发送结果:
Intgerval:表示时间间隔
Transfer:表示在此时间段内传输的数据量
Bandwidth:表示当前带宽
1.iperf默认就是测试tcp,然后我们首先是服务器端(server端)先开启iperf监听:
iperf -s -p 5555 -i 1
-s,表示的是接收端;-p,表示的是端口,端口号自定义即可;-i,表示的是带宽报告的时间间隔。
2.然后客户端发送数据:
iperf -c 10.1.1.28 -p 5555 -t 10 -i 1
-c,表示的是发送端;-p,表示的是端口;-t,表示的是传输的时间;-i,表示的是带宽报告的时间间隔。
3.客户端和服务器端发送接收结果如图所示:
客户端接收结果:
Intgerval:表示时间间隔
Transfer:表示在此时间段内传输的数据量
Bandwidth:表示当前带宽
服务器端发送结果:
Intgerval:表示时间间隔
Transfer:表示在此时间段内传输的数据量
Bandwidth:表示当前带宽