netperf是一款专注于网络性能测试的开源工具,核心用于测量TCP和UDP协议在不同网络场景下的吞吐量、延迟等关键指标。
核心功能与测试场景
netperf通过“客户端-服务器”(Client-Server)架构工作,服务器端(netserver)被动监听连接,客户端(netperf)主动发起测试,主要覆盖两类核心测试场景:
-
批量数据传输(Throughput)
- 测试目标:衡量网络传输大量数据的能力,即单位时间内可传输的最大数据量。
- 典型场景:文件传输、大数据同步等,对应TCP协议的批量传输模式。
-
请求/响应交互(Request/Response)
- 测试目标:评估网络处理短交互请求的效率,重点关注延迟(Latency)和每秒处理请求数(Transactions Per Second, TPS)。
- 典型场景:数据库查询、API调用等,支持TCP和UDP两种协议。
关键测试指标
netperf输出结果中,以下指标最具参考价值:
- 吞吐量(Throughput):单位通常为Mbps(兆比特/秒)或MB/s(兆字节/秒),反映网络传输速率上限。
- 延迟(Latency):包括往返延迟(Round-Trip Time, RTT),单位通常为微秒(μs),体现数据交互的响应速度。
- 每秒事务数(TPS):在请求/响应模式下,衡量网络每秒可处理的交互次数。
- CPU利用率:部分模式下可输出客户端/服务器的CPU占用率,辅助判断性能瓶颈是否在网络层面。
典型使用流程
- 启动服务器端:在被测试网络的一端运行
netserver,默认监听12865端口。netserver # 直接启动,默认监听所有网卡 # 或指定监听IP:netserver -p 12865 -4 -L 192.168.1.100 - 客户端发起测试:在另一端运行
netperf,指定服务器IP、测试协议和模式。# 示例1:测试TCP吞吐量(默认模式) netperf -H 192.168.1.100 -t TCP_STREAM # 示例2:测试UDP请求/响应延迟 netperf -H 192.168.1.100 -t UDP_RR
3906

被折叠的 条评论
为什么被折叠?



