netperf的时间测量值得分析

本文通过分析netperf的源代码,探讨了netperf测量的网络延迟波动较大的原因,发现netperf主要统计的是send调用的时间,而真正网络时间需要通过开启TCP时间戳并使用tcpdump和Wireshark进行分析。
摘要由CSDN通过智能技术生成

最近载一个项目中发现用netperf测试的网络延时波动较大,于是分析原因,同时也发现了netperf本身测量的问题。

发现netperf的结果

ELAPSED_TIME=60.03

         MIN_LATENCY=2

         MAX_LATENCY=20888

         MEAN_LATENCY=399.72

         P90_LATENCY=6

         P99_LATENCY=11800

         STDDEV_LATENCY=2084.31

         THROUGHPUT=655.23

         LOCAL_CPU_UTIL=1.13

         REMOTE_CPU_UTIL=1.86

         LOCAL_SD=1.132

         REMOTE_SD=5.575

         REQUEST_SIZE=-1

         RESPONSE_SIZE=-1

         ELAPSED_TIME=60.03

最小值极小,根据传输的数据包大小计算应该远远大于2us。分析了netperf代码,

在send_omni_inner函数里有如下代码:

HIST_get_stats(time_hist,
  &min_latency,
  &max_latency,
  &mean_latency,
  &stddev_latency);
    p50_latency = HIST_get_percentile(time_hist, 0.02);
    p90_latency = HIST_get_percentile(time_hist, 0.90);
    p99_

netperf是一个常用的网络性能测试工具,用于评估计算机网络的性能。当进行netperf测试后,我们需要对结果进行分析和解读。 首先,我们需要关注的是带宽测试结果。带宽测试通常包括客户端发送数据给服务端和服务端接收数据的速率。通过分析带宽测试结果,我们可以了解网络的传输能力。如果带宽较低,可能是网络链路拥塞或者带宽限制导致的。如果带宽接近网络的理论上限,说明网络性能较好。 其次,延迟测试结果也需要进行分析。延迟测试通常指的是从客户端发送数据到服务端后,返回的时间。通过分析延迟测试结果,我们可以了解到网络的传输速度。较短的延迟意味着网络响应速度快,可以支持实时传输应用,比如视频通话。较长的延迟可能表明网络有延时丢包或者链路复杂。 再次,我们还需要关注丢包率的测试结果。丢包率测试指的是在传输过程中丢失的数据包的比例。通过分析丢包率测试结果,我们可以了解到网络的稳定性。高丢包率可能是链路质量差、网络拥塞或者设备问题引起的。较低的丢包率表示网络稳定性较好。 最后,还需要对网络负载测试结果进行分析。网络负载测试是指通过增加流量量和连接数,测试网络的承载能力。通过分析网络负载测试结果,我们可以了解网络的稳定性和负载均衡能力。如果网络在高负载下仍能保持稳定,说明网络的吞吐量和性能较好。 综上所述,对于netperf测试结果的分析,我们需要关注带宽、延迟、丢包率和网络负载等指标,通过分析这些指标,了解网络的性能表现和可能存在的问题,为网络的优化和调整提供参考。
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值