一线网络工程师必备:用 iperf3 快速测试 UDP 带宽的实战指南

举报
犀思云 发表于 2026/01/29 16:39:55 2026/01/29
【摘要】 简介: 本文面向企业网络工程师,详解如何使用 iperf3 进行 UDP 打流测试:涵盖服务端/客户端命令、关键参数(-u、-b、-t 等)、8 大核心性能指标(带宽、丢包率、延迟、抖动、RTT 等)解读及实战示例,助力精准排查网络性能瓶颈。

本文适用于正在排查网络性能、准备打流测试的企业网络工程师。


使用 iperf3 进行 UDP 测试非常简单。你可以通过以下步骤来启动 UDP 流量的测试。

1. 启动服务器端:

在服务器端运行 iperf3,并指定它以 UDP 模式运行。使用 -s 参数启动服务器:

iperf3 -s -i 1

  • -s:启动服务器模式。
  • -i 1:每秒显示一次统计信息。

2. 启动客户端:

在客户端,你可以通过指定 UDP 模式,目标服务器地址,以及流量带宽来开始 UDP 测试。以下是常见的客户端命令:

iperf3 -c <server_ip> -u -b <bandwidth> -t <time>

  • -c <server_ip>:指定服务器的 IP 地址。
  • -u:指定使用 UDP 测试模式。
  • -b <bandwidth>:指定发送的带宽。例如,-b 1G 表示每秒 1Gbps。
  • -t <time>:测试持续的时间,单位是秒。例如,-t 30 表示 30 秒的测试。

示例:

假设服务器的 IP 地址是 192.168.1.100,你希望发送 500 Mbps 的 UDP 流量,持续 60 秒:

iperf3 -c 192.168.1.100 -u -b 500M -t 60

这将让 iperf3 在 60 秒内从客户端向服务器发送 UDP 流量,并报告每秒的统计信息。

附加参数:

  • -p <port>:指定端口号,默认是 5201。
  • -w <window_size>:指定 UDP 的窗口大小,通常用于控制数据包的发送速率。

如果需要更多控制选项,可以查看 iperf3 的帮助文档:

iperf3 --help

这应该能帮助你顺利进行 UDP 流量的测试!

哪些性能指标需要关注

在使用 iperf3 进行网络性能测试时,以下几个关键性能指标是需要特别关注的,以确保你能全面评估网络的吞吐量、延迟和稳定性等:

1. 带宽(Throughput)

  • 定义:传输数据的速率,通常以 比特每秒(bps)字节每秒(Bps) 表示。
  • 如何查看iperf3 默认会显示每秒传输的总字节数或比特数,通常以 MbpsGbps 为单位。
  • 影响因素:网络链路的负载、丢包率、设备能力等。

示例输出:

[  5]   0.00-10.00  sec  600 MBytes  500 Mbits/sec

这表示在 10 秒内传输了 600MB,带宽为 500Mbps。

2. 延迟(Latency)

  • 定义:数据包从源头到目的地的传播时间,通常以 毫秒(ms) 为单位。
  • 如何查看:通过 iperf3 测试 UDP 时,延迟通常是每个数据包的响应时间。你可以使用 -u 参数来测试 UDP 延迟。
  • 影响因素:网络路由、数据传输路径、设备处理能力等。

示例输出:

[  5]   0.00-10.00  sec   15.0 ms  5.0 ms  25.0 ms

这里显示的是延迟的最大、最小和平均值。

3. 丢包率(Packet Loss)

  • 定义:在数据传输过程中丢失的数据包的百分比。对于 UDP 流量,丢包率尤其重要,因为 UDP 不会自动重传丢失的数据包。
  • 如何查看iperf3 会显示 UDP 流量测试的丢包率。
  • 影响因素:网络拥塞、设备资源限制、带宽不足等。

示例输出:

[  5]   0.00-10.00  sec  5.0% packet loss

这表示在测试期间有 5% 的数据包丢失。

4. 抖动(Jitter)

  • 定义:延迟的变化量。抖动是指数据包之间的延迟波动,对于语音和视频流等实时应用特别重要。
  • 如何查看:在 iperf3 中,UDP 测试会显示抖动的统计信息,通常是以 毫秒(ms) 为单位。
  • 影响因素:网络路径的稳定性、负载波动、网络设备的响应能力等。

示例输出:

[  5]   0.00-10.00  sec  2.0 ms  1.0 ms  3.0 ms

这里显示的是抖动的最小值、平均值和最大值。

5. TCP 连接的吞吐量(TCP Throughput)

  • 定义:在 TCP 测试中,吞吐量表示数据成功传输的速度。
  • 如何查看iperf3 默认会输出 TCP 的吞吐量数据。
  • 影响因素:TCP 拥塞控制、窗口大小、延迟等。

示例输出:

[  5]   0.00-10.00  sec  400 MBytes  335 Mbits/sec

这里显示的是 TCP 流量的吞吐量。

6. TCP 的 RTT(Round-Trip Time)

  • 定义:表示数据从发送端到接收端再返回的时间总和,通常以 毫秒(ms) 为单位。
  • 如何查看:通常是通过 TCP 连接测试时来观察 RTT 时间。
  • 影响因素:网络延迟、TCP 拥塞控制等。

示例输出:

[  5]   0.00-10.00  sec  25.0 ms  15.0 ms  35.0 ms

这是 RTT 的最大、最小和平均值。

7. TCP 连接的拥塞窗口(TCP Congestion Window)

  • 定义:TCP 协议通过控制拥塞窗口的大小来调节流量,避免网络出现拥堵。
  • 如何查看:在使用 iperf3 时,可以使用 -w 参数来设置窗口大小,并观察测试结果中的变化。
  • 影响因素:网络带宽、延迟、丢包等。

8. CPU 使用率(CPU Usage)

  • 定义:测试期间使用的 CPU 资源量,这对于服务器端或客户端的性能瓶颈分析非常有用。
  • 如何查看:可以使用系统的监控工具(如 tophtop)来查看 iperf3 测试期间的 CPU 使用情况。
  • 影响因素:主机性能、并发连接数、数据处理能力等。

总结

iperf3 测试中,UDP 测试的关键指标包括 带宽、延迟、丢包率、抖动。而在 TCP 测试中,最重要的是 吞吐量、RTT拥塞窗口。根据测试目标,你可以根据这些指标来评估网络的性能,并作出优化决策。如果目标是实时应用(如语音或视频流),则丢包率和抖动尤为重要。

💡 如果你经常需要做网络性能测试、进行网络配置,不妨试试我们的「网络工具箱」:

✅ 免费获取开源网络小工具(如:拨测、带宽流量技术、子网掩码计算、公有云Region查询)

加入「企业网络实战交流群」,与一线网工讨论:

  • 专线打流失败怎么办?
  • 如何判断是链路问题还是设备瓶颈?
  • 多点间网络延迟优化技巧

留言“网络工具”即可获取资源+入群邀请

【声明】本内容来自华为云开发者社区博主,不代表华为云及华为云开发者社区的观点和立场。转载时必须标注文章的来源(华为云社区)、文章链接、文章作者等基本信息,否则作者和本社区有权追究责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。