Qperf 网络性能测试工具

Qperf 网络性能测试工具简介 Qperf 是一款轻量级网络性能测试工具,拥护测量带宽和延迟,兼容TCP/UDP和RDMA协议。器具分为服务端(被动监听)和客户端(主动测试)两种模式,提供丰富的测试程序如rc_bw(RDMA带宽)、tcp_lat(TCP延迟)等。安装简单(yum install qperf),使用时先启动服务端,客户端通过命令如"qperf 10.2
Qperf 使用指南
——基于 RDMA 与 TCP/IP 的高性能网络基准测试工具

  1. 工具简介
    Qperf 是一款轻量级、跨平台的网络性能基准测试工具,可用于测量两台主机之间的带宽(Bandwidth)与延迟(Latency)。

传输方式:既支持传统的 TCP/UDP over IP,也支持 RDMA(Remote Direct Memory Access)。
典型场景:数据中心网络选型、HPC 互联调优、云网络 SLA 验证等。
运行模式:
Server 模式:在目标节点上以无参数方式启动,仅作为被动监听端。
Client 模式:在源节点上指定 Server 地址及测试项,发起连接并输出指标。
2. 测试矩阵
RDMA 操作 带宽测试程序 延迟测试程序
RDMA Send rc_bw rc_lat
RDMA Read rc_rdma_read_bw rc_rdma_read_lat
RDMA Write rc_rdma_write_bw rc_rdma_write_lat
Socket 操作 带宽测试程序 延迟测试程序
TCP tcp_bw tcp_lat
UDP udp_bw udp_lat
3. 安装指南
3.1 CentOS / RHEL
[root@server ~]# yum -y install qperf
4. 快速开始
4.1 服务端(假设 IP 为 10.230.1.11)
[root@server ~]# qperf
默认监听 19765 端口,无需额外参数。

4.2 客户端
4.2.1 RDMA Send/Receive

延迟测试,消息大小从 1 B 按 2 倍步进至 64 KiB

qperf -cm1 -oo msg_size:1:64K:*2 10.230.1.11 rc_lat

带宽测试,同样消息大小范围

qperf -cm1 -oo msg_size:1:64K:2 10.230.1.11 rc_bw
4.2.2 RDMA Write/Read
qperf -cm1 -oo msg_size:1:64K:
2 10.230.1.11 rc_rdma_write_lat
qperf -cm1 -oo msg_size:1:64K:*2 10.230.1.11 rc_rdma_write_bw
-cm1 表示使用 RDMA Connection Manager,可简化建链流程。

  1. 更多示例
    5.1 TCP 带宽与延迟
    qperf 10.230.1.11 tcp_bw tcp_lat
    5.2 UDP 延迟并优雅关闭服务端
    qperf 10.230.1.11 udp_lat quit
    5.3 获取 TCP 延迟随消息大小的变化
    qperf 10.230.1.11 -oo msg_size:1:64K:*2 -vu tcp_lat

  2. 常用选项速查表
    选项 长选项 说明
    -ar --access_recv 是否访问接收到的数据
    -ca --cpu_affinity 设置 CPU 亲和性
    -f --flip 交换发送端和接收端
    -h --help 获取帮助
    -i --id 设置 RDMA 设备及端口
    -lp --listen_port 设置服务端监听端口
    -m --msg_size 设置消息大小
    -mt --mtu_size 设置 MTU 大小(仅 RDMA)
    -cp --cq_poll 设置轮询模式
    -ip --ip_port 设置 TCP 端口
    -t --time 设置测试时长
    -to --timeout 设置超时时间
    -uu --unify_units 统一单位
    -ub --use_bits_per_sec 使用 bits/sec 而非 bytes/sec
    -cm1 --use_cm 使用 RDMA Connection Manager
    -v --verbose 输出详细信息
    -vv --verbose_more 输出更详细信息
    -V --version 输出版本信息
    完整列表请执行 qperf --help opts。

  3. 小结
    借助 Qperf,可以:

快速对比不同网络栈(TCP/UDP vs. RDMA)的极限性能;
通过调节消息大小、并发数、MTU 等参数,定位瓶颈;
以标准化方式向供应商或业务方交付量化报告。

posted @ 2026-03-06 17:11  静水深耕,云停风驻  阅读(0)  评论(0)    收藏  举报