iperf3命令详解

iperf3 是一个用于网络性能测试的工具,主要用于测试带宽、延迟、丢包等网络相关指标。它支持 TCP、UDP 测试,还可以测量单向和双向流量。以下是 iperf3 的安装、基本使用方法和常见选项:

1. 安装 iperf3

在大多数 Linux 发行版上可以直接通过包管理器安装 iperf3

  • Debian/Ubuntu

    sudo apt update
    sudo apt install iperf3
    
  • CentOS/RHEL

    sudo yum install epel-release
    sudo yum install iperf3
    
  • Fedora

    sudo dnf install iperf3
    
  • macOS (通过 Homebrew)

    brew install iperf3
    

2. 基本用法

iperf3 需要一个服务器端和一个客户端进行测试。服务器端负责接收数据,客户端负责发送数据。

启动服务器端:

在一台机器上运行以下命令,启动 iperf3 服务器,默认端口为 5201:

iperf3 -s
  • -s:启动为服务器模式。

你会看到类似的输出:

-----------------------------------------------------------
Server listening on 5201
-----------------------------------------------------------

启动客户端并连接到服务器:

在另一台机器上,运行以下命令连接到服务器并进行带宽测试(需要知道服务器的 IP 地址):

iperf3 -c <server_ip_address>
  • -c:客户端模式,并指定服务器 IP 地址。

运行后会显示带宽测试结果,默认测试持续 10 秒:

Connecting to host 192.168.1.1, port 5201
[  5] local 192.168.1.2 port 50000 connected to 192.168.1.1 port 5201
[ ID] Interval           Transfer     Bandwidth
[  5]   0.00-10.00  sec  1.10 GBytes   941 Mbits/sec                  

3. 常见选项

指定测试时间:

默认的测试时间是 10 秒,你可以使用 -t 选项来指定测试时长(单位为秒):

iperf3 -c <server_ip_address> -t 30

这会进行 30 秒的测试。

指定传输方向:

默认情况下,iperf3 只测试从客户端到服务器的单向传输。如果需要测试双向传输(同时上传和下载),可以使用 -R 选项:

iperf3 -c <server_ip_address> -R
  • -R:测试从服务器到客户端的流量(反向模式)。

并发连接测试:

你可以使用 -P 选项来指定多个并发连接,来测试多路传输的性能:

iperf3 -c <server_ip_address> -P 5
  • -P 5:使用 5 个并发连接进行测试。

UDP 测试:

默认情况下,iperf3 使用 TCP 协议。你可以使用 -u 选项来进行 UDP 性能测试:

iperf3 -c <server_ip_address> -u

你还可以通过 -b 选项指定 UDP 带宽,例如 1 Gbps:

iperf3 -c <server_ip_address> -u -b 1G
  • -b:指定带宽,默认单位是比特每秒(bps),也可以使用 MK 表示兆比特和千比特。

指定端口:

默认情况下,iperf3 使用端口 5201。如果你想使用不同的端口,可以使用 -p 选项来指定端口:

iperf3 -s -p 5001  # 服务器端使用 5001 端口
iperf3 -c <server_ip_address> -p 5001  # 客户端连接 5001 端口

测量延迟和抖动(UDP 测试):

在 UDP 模式下,iperf3 还可以测量抖动和丢包率:

iperf3 -c <server_ip_address> -u -b 10M

测试结果会包括丢包、抖动等信息。

4. 查看服务端详细日志

使用 iperf3 的服务端可以加上 -V 选项来查看详细的调试日志:

iperf3 -s -V

5. 保存测试结果到文件

你可以将 iperf3 的输出结果保存到文件中,方便后续分析:

iperf3 -c <server_ip_address> -o result.txt
  • -o result.txt:将测试结果保存到 result.txt 文件。

总结

  • 启动服务器iperf3 -s
  • 启动客户端iperf3 -c <server_ip>
  • TCP 测试:默认进行 TCP 测试,显示带宽。
  • UDP 测试iperf3 -u -c <server_ip>,测试 UDP 带宽、丢包、延迟等。
  • 常见选项-t 测试时间、-P 并发连接数、-R 反向传输等。

iperf3 是一个强大的网络测试工具,能够帮助你了解网络的带宽、稳定性和性能瓶颈。

posted @ 2024-09-30 22:24  jasmine456  阅读(1913)  评论(0编辑  收藏  举报