iperf3 是一款开源的网络性能测试工具,用于测量网络带宽和性能。它广泛应用于测试网络连接的速度、吞吐量、延迟等参数,适用于各种网络环境,包括局域网、广域网和无线网络。
以下是 iperf3 的主要介绍:
1. 功能与用途
- 带宽测试:测量 TCP 或 UDP 协议下的最大吞吐量。
- 延迟和抖动测试:评估网络延迟和数据包抖动(主要针对 UDP)。
- 多线程支持:支持并行数据流测试,模拟多用户场景。
- 跨平台:可在 Windows、Linux、macOS、FreeBSD 等多种操作系统上运行。
- 客户端-服务器模式:通过客户端和服务器之间的通信来测试网络性能。
2. 主要特点
- 灵活的测试选项:
- 支持 TCP 和 UDP 测试。
- 可设置测试时间、数据量、传输速率、缓冲区大小等。
- 支持单向和双向测试(正向或反向流量)。
- 详细的输出:提供吞吐量、丢包率、延迟等详细统计信息。
- 轻量级:软件体积小,易于安装和使用。
- 开源:基于 BSD 许可证,代码公开,适合开发者和研究人员定制。
3. 工作原理
iperf3 采用客户端-服务器模型:
- 服务器端:运行
iperf3 -s
,监听指定端口(默认 5201)。 - 客户端:运行
iperf3 -c <服务器IP>
,向服务器发送测试数据。 - 测试完成后,iperf3 会返回带宽、丢包率、传输数据量等结果。
4. 常见使用场景
- 网络诊断:检查网络瓶颈或性能问题。
- 服务器优化:测试服务器网络性能,优化配置。
- 无线网络测试:评估 Wi-Fi 网络的实际吞吐量。
- 开发与研究:用于网络协议或设备的性能验证。
5. 安装方法
- Linux:大多数发行版可通过包管理器安装,如
sudo apt install iperf3
(Ubuntu/Debian)或sudo yum install iperf3
(CentOS)。 - Windows/macOS:从官方网站或 GitHub 下载二进制文件。
- 源码安装:下载源代码后编译安装,适合需要定制的场景。
6. 常用命令示例
- 安装:
1
2
3
4# Linux
sudo apt install iperf3
# Windows/macOS
# 从官方网站下载并解压 - 启动服务器:
1
iperf3 -s
- 测试带宽(客户端):
1
iperf3 -c <服务器IP> -t 10 # 测试10秒
- UDP 测试:
1
iperf3 -c <服务器IP> -u -b 100M # UDP模式,目标带宽100Mbps
- 双向测试:
1
iperf3 -c <服务器IP> --bidir # 同时测试上行和下行
- 多线程测试:
1
iperf3 -c <服务器IP> -P 4 # 使用4个并行流
7. 测试效果

截图中:
1 | [ ID] Interval Transfer Bitrate Retr |
就是测试结果,Mbits/sec 就是带宽,MBytes 就是数据量,Retr 就是重传次数。将 Mbits/sec 换算成 MB/s,就是除以8,所以 48.5 Mbits/sec = 6.0625 MB/s。直接下载文件时,就会有6MB/s 左右的下载速度。
8. 注意事项
- 防火墙:确保服务器和客户端之间的端口(默认 5201)未被防火墙阻挡。
- 单线程限制:iperf3 不支持多线程服务器(每个实例只能处理一个客户端连接)。
- 与 iperf2 的区别:iperf3 是重写版本,不完全兼容 iperf2,功能更现代化但某些旧选项可能不可用。
9. 获取与资源
- 官方网站:http://software.es.net/iperf/
- GitHub:https://github.com/esnet/iperf
- 文档:官方文档提供详细参数说明和使用指南。
iperf3 是一款简单而强大的工具,适合网络管理员、开发者和研究人员快速评估网络性能。