iperf3的介绍及命令详解

本文将详细介绍iperf3版本的应用及命令解释,上一篇已介绍iperf的介绍及命令,iperf3为3.0软件版本,命令有很多更改,更加简洁。


文章末尾会提供永久下载链接


文章目录

  • iperf3的介绍及命令详解
  • 一、iperf3的介绍
  • 二、iperf3命令介绍
  • 三、iperf3调试命令
  • 四、下载链接



一、iperf3的介绍

iperf3是iperf的3.0版本,是一款网络性能测试工具,在网络中单向传输数据流,根据需要调整传输速率和数据流大小,也可以根据需要报告带宽、延迟抖动和数据包丢失。

二、iperf3命令介绍

选项

全写

描述

客户端与服务器共用选项

-f

-format [kmgKMG]

format to report :kbits,Mbits,KBytes,MBytes

报告格式有:k,m,g,KB,M,G

单位换算:8 bit=1 Byte

1024 Byte=1 KB

1024 KB=1 MB

1024 MB=1 GB

-i

–interval #

seconds between periodic bandwidth reports

定期带宽报告之间的秒数

设置每次报告之间的时间间隔,单位为秒。如果设置为非零值,就会按照此时间间隔输出测试报告。默认值为零。

-p

- port #

server port to listen on/connect to

侦听/连接到的服务器端口

设置端口,与服务器端的监听端口一致。默认是5001端口,与tcp的一样。

-F

file name

xmit/recv the specified file

-A

-affinity n/n,m

set CPU affinity

-B

- bind

bind to a specific interface

绑定到特定接口

绑定到主机的多个地址中的一个。对于客户端来说,这个参数设置了出栈接口。对于服务器端来说,这个参数设置入栈接口。这个参数只用于具有多网络接口的主机。在Iperf的UDP模式下,此参数用于绑定和加入一个多播组。使用范围在224.0.0.0至239.255.255.255的多播地址。

-V

-verbose

more detailed output

-J

-json

output in JSON format

–logfile f

send output to a log file

-d

-debug

emit debugging output

-h

- help

Show help message and quit

显示帮助消息并退出

-v

-version

show version information 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 在客户端模式下运行,连接到

如果Iperf运行在服务器模式,并且用-c参数指定一个主机,那么Iperf将只接受指定主机的连接。此参数不能工作于UDP模式。

-u

- udp

use UDP rather than TCP

使用UDP而不是TCP

-b

–bandwidth #[KM]

target bandwidth in bits/sec (0 for unlimited)

目标带宽(以位/秒为单位)(0表示无限制)

UDP模式使用的带宽,单位bits/sec。此选项与-u选项相关。默认值是1 Mbit/sec。

-t

- time #

time in seconds to transmit for (default 10 secs)

传输时间(以秒为单位)(默认为10秒)

设置传输的总时间。Iperf在指定的时间内,重复的发送指定长度的数据包。默认是10秒钟。参考-l与-n选项。

-n

- bytes #[KMG]

number of bytes to transmit (instead of -t)

要传输的字节数(而不是-t)

传送的缓冲器数量。通常情况,Iperf按照10秒钟发送数据。-n参数跨越此限制,按照指定次数发送指定长度的数据,而不论该操作耗费多少时间。参考-l与-t选项。

-r

- tradeoff往复测试模式

Do a bidirectional test individually

分别进行双向测试

当客户端到服务器端的测试结束时,服务器端通过-l选项指定的端口(或默认为客户端连接到服务器端的端口),反向连接至客户端。当客户端连接终止时,反向连接随即开始。如果需要同时进行双向测试,请尝试-d参数。

-b

–blockcount #[KMG]

number of blocks (packets) to transmit (instead of -t or -n)

-l

–len #[KM]

length of buffer to read or write (default 128 KB for TCP, 8 KB for UDP)

读取或写入缓冲区的长度(TCP默认128KB,UDP默认8KB)

–cport

bind to a specific client port (TCP and UDP, default: ephemeral port)

-P

- parallel #

number of parallel client streams to run

要运行的并行客户端流的数量

服务器关闭之前保持的连接数。默认是0,这意味着永远接受连接。客户端专用选项

-R

-reverse

run in reverse mode (server sends, client receives)

-w

- window #[KMG]

set window size / socket buffer size

设置窗口大小/套接字缓冲区大小

设置套接字缓冲区为指定大小。对于TCP方式,此设置为TCP窗口大小。对于UDP方式,此设置为接受UDP数据包的缓冲区大小,限制可以接受数据包的最大值

-C

-congestion

set TCP congestion control algorithm (Linux and FreeBSD only)

-M

- set-mss #

set TCP/SCTP maximum segment size (MTU - 40 bytes)

设置TCP / SCTP最大段大小(MTU-40字节)

通过TCP_MAXSEG选项尝试设置TCP最大信息段的值。MSS值的大小通常是TCP/ip头减去40字节。在以太网中,MSS值 为1460字节(MTU1500字节)。许多操作系统不支持此选项。

-N

- no-delay

set TCP/SCTP no delay, disabling Nagle’s Algorithm

设置TCP / SCTP无延迟,禁用Nagle算法

设置TCP无延迟选项,禁用Nagle’s运算法则。通常情况此选项对于交互程序,例如telnet,是禁用的。

-4

-version4

only use IPv4

-6

-version6

only use IPv6

-L

-flowlabel N

set the IPv6 flow label (only supported on Linux)

-S

-tos N s

et the IP ‘type of service’

-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

三、iperf3调试命令

客户端:
iperf3 -c 192.168.1.100 -l50 -i1 -b100k -u -t14400 -p10000
服务器:
iperf3 -s -p10000 -i1 -V >D.txt

四、下载链接

链接:https://pan.baidu.com/s/1XMxhyOEkItMlOb0hoFYH4A 提取码:bqot