Linux环境安装iperf3(网络性能测试工具)
[root@localhost ]# yum search iperf
已加载插件:fastestmirror
Loading mirror speeds from cached hostfile
* base: mirrors.tuna.tsinghua.edu.cn
* extras: mirrors.huaweicloud.com
* updates: mirrors.tuna.tsinghua.edu.cn
==================================================================== N/S matched: iperf ====================================================================
iperf3-devel.i686 : Development files for iperf3
iperf3-devel.x86_64 : Development files for iperf3
iperf3.i686 : Measurement tool for TCP/UDP bandwidth performance
iperf3.x86_64 : Measurement tool for TCP/UDP bandwidth performance
名称和简介匹配 only,使用“search all”试试。
[root@localhost ]#
[root@localhost ]# yum install iperf3
已加载插件:fastestmirror
Loading mirror speeds from cached hostfile
* base: mirrors.tuna.tsinghua.edu.cn
* extras: mirrors.huaweicloud.com
* updates: mirrors.tuna.tsinghua.edu.cn
正在解决依赖关系
--> 正在检查事务
---> 软件包 iperf3.x86_64.0.3.1.7-2.el7 将被 安装
--> 解决依赖关系完成
依赖关系解决
============================================================================================================================================================
Package 架构 版本 源 大小
============================================================================================================================================================
正在安装:
iperf3 x86_64 3.1.7-2.el7 base 79 k
事务概要
============================================================================================================================================================
安装 1 软件包
总下载量:79 k
安装大小:197 k
Is this ok [y/d/N]: y
Downloading packages:
iperf3-3.1.7-2.el7.x86_64.rpm | 79 kB 00:00:00
Running transaction check
Running transaction test
Transaction test succeeded
Running transaction
正在安装 : iperf3-3.1.7-2.el7.x86_64 1/1
验证中 : iperf3-3.1.7-2.el7.x86_64 1/1
已安装:
iperf3.x86_64 0:3.1.7-2.el7
完毕!
[root@localhost ]# iperf3 -v
iperf 3.1.7
Linux localhost 3.10.0-1160.71.1.el7.x86_64 #1 SMP Tue Jun 28 15:37:28 UTC 2022 x86_64
Optional features available: CPU affinity setting, IPv6 flow label, TCP congestion algorithm setting, sendfile / zerocopy, socket pacing
[root@localhost ]#
[root@localhost ]# iperf3 -h
Usage: iperf [-s|-c host] [options]
iperf [-h|--help] [-v|--version]
Server or Client:
-p, --port # server port to listen on/connect to
-f, --format [kmgKMG] format to report: Kbits, Mbits, KBytes, MBytes
-i, --interval # seconds between periodic bandwidth reports
-F, --file name xmit/recv the specified file
-A, --affinity n/n,m set CPU affinity
-B, --bind
bind to a specific interface
-V, --verbose more detailed output
-J, --json output in JSON format
--logfile f send output to a log file
--forceflush force flushing output at every interval
-d, --debug emit debugging output
-v, --version show version information and quit
-h, --help show this message and quit
Server specific:
-s, --server run in server mode
-D, --daemon run the server as a daemon
-I, --pidfile file write PID file
-1, --one-off handle one client connection then exit
Client specific:
-c, --client run in client mode, connecting to
-u, --udp use UDP rather than TCP
-b, --bandwidth #[KMG][/#] target bandwidth in bits/sec (0 for unlimited)
(default 1 Mbit/sec for UDP, unlimited for TCP)
(optional slash and packet count for burst mode)
--fq-rate #[KMG] enable fair-queuing based socket pacing in
bits/sec (Linux only)
-t, --time # time in seconds to transmit for (default 10 secs)
-n, --bytes #[KMG] number of bytes to transmit (instead of -t)
-k, --blockcount #[KMG] number of blocks (packets) to transmit (instead of -t or -n)
-l, --len #[KMG] length of buffer to read or write
(default 128 KB for TCP, dynamic or 1 for UDP)
--cport bind to a specific client port (TCP and UDP, default: ephemeral port)
-P, --parallel # number of parallel client streams to run
-R, --reverse run in reverse mode (server sends, client receives)
-w, --window #[KMG] set window size / socket buffer size
-C, --congestion set TCP congestion control algorithm (Linux and FreeBSD only)
-M, --set-mss # set TCP/SCTP maximum segment size (MTU - 40 bytes)
-N, --no-delay set TCP/SCTP no delay, disabling Nagle's Algorithm
-4, --version4 only use IPv4
-6, --version6 only use IPv6
-S, --tos N set the IP 'type of service'
-L, --flowlabel N set the IPv6 flow label (only supported on Linux)
-Z, --zerocopy use a 'zero copy' method of sending data
-O, --omit N omit the first n seconds
-T, --title str prefix every output line with this string
--get-server-output get results from server
--udp-counters-64bit use 64-bit counters in UDP test packets
[KMG] indicates options that support a K/M/G suffix for kilo-, mega-, or giga-
iperf3 homepage at: http://software.es.net/iperf/
Report bugs to: https://github.com/esnet/iperf
[root@localhost ]#
iperf官网地址:
iPerf - The TCP, UDP and SCTP network bandwidth measurement tool
iperf特性:
测量带宽
报告MSS/MTU大小和观察到的读数大小。
通过套接字缓冲区支持TCP窗口大小。
UDP
客户端可以创建指定带宽的UDP流。
测量数据包丢失
测量延迟抖动
支持多播
跨平台:Windows、Linux、Android、MacOS X、FreeBSD、OpenBSD、NetBSD、VxWorks、Solaris,。。。
客户端和服务器可以同时具有多个连接(-P选项)。
服务器处理多个连接,而不是在一次测试后退出。
可以运行指定的时间(-t选项),而不是要传输的数据量(-n或-k选项)。
以指定的间隔打印周期性、中间带宽、抖动和损耗报告(-i选项)。
将服务器作为守护程序运行(-D选项)
使用具有代表性的流来测试链路层压缩如何影响可实现的带宽(-F选项)。
服务器同时接受单个客户端(iPerf3)多个客户端同时接受(iPerf2)