注册 登录  
 加关注
   显示下一条  |  关闭
温馨提示!由于新浪微博认证机制调整,您的新浪微博帐号绑定已过期,请重新绑定!立即重新绑定新浪微博》  |  关闭

网易杭州 QA Team

务实 专注 分享 做有态度的QA

 
 
 
 
 

日志

 
 

初探网络性能测试  

来自侯本文   2013-07-31 15:06:11|  分类: 性能测试 |举报 |字号 订阅

  下载LOFTER 我的照片书  |
最近对云主机进行性能测试,第一次涉及到了网络方面的性能测试,其实不能算是一次很全面的网络性能方面的性能测试,只是针对不同的测试目标进行了测试,在这期间,了解了网络性能测试需要掌握的性能指标、测试工具、功能选型和对比等。下面一一介绍下:
  • 网络性能指标
常见的网络性能测试指标包含:网络吞吐量(Throughput)、网络延迟(latency)、抖动(jitter)、丢包率等
网络吞吐量:单位时间内通过某个网络(或信道、接口)的数据量,吞吐量受网络的带宽或者网络的额定速率限制的,例如家庭带宽为10M网络,表明网络吞吐量不可能超过10Mbits/s,吞吐量的单位通常表示为位元每秒(bit/s或bps)。
网络延迟:通俗的讲,就是数据从电脑这边传到那边所用的时间。这儿有个问题需要确认,数据是指一个数据包的传输还是任意大小,和你传输的数据量相关。可以明显的看到,从A到B传送1个字节的时间和传送100MB的时间肯定是不一样的。标准意义上的延迟,应该仅仅指1个字节的传输时间,类似网络课上讲到的传播时延。(不同意见欢迎讨论)。同样存在一个名词叫做传播延时,这个应该可以标识整个数据包的传输时间,不论包大小为多少。
抖动:用于描述包在网络中的传输延时的变化,抖动越小,说明网络质量越稳定越好。抖动是评价一个网络性能的最重要的因素。
丢包率:测试中所丢失的数据包数量占所发送的数据包的比率,因为我们知道TCP协议是可靠的,所以,一般在使用UDP传输时,才会统计丢包率。
  • 网络性能测试工具
大家熟知的,常用的开源网络性能测试工具有两个:iperf 和 netperf,这两种工具都是可以测试TCP协议和UDP协议的,从可测试的网络性能指标,我们对两种工具进行下对比:
可测试的网络性能指标
 工具吞吐量  网络延时 抖动丢包  其他
 iperf 是 否 是 
 netperf 是 是 是 重传、CPU利用率、延时分布等
    可见,iperf也可以完成基本的网络性能测试,但是工具比netperf要略差些,我们测试过程中,选用的工具为netperf,下面对netperf进行下详细介绍:
安装:netperf的安装可以找SA部署,但是SA安装的版本时2.4版本,很多功能没有实现,可以自己make安装netperf 2.6版本,是目前为止最新的版本。
基本命令:netperf -H hostname -l testtime: 例如 netperf -H 172.0.0.2 -l 60,表示发送到172.0.0.2(这台机器上需要启动netserver进程),发送时间为60s,默认的发送方式为TCP Stream方式。
发送方式:netperf 可以支持多种不同的发送方式,通过 -t 参数指定:
TCP_STREAM、UDP_STREAM模式:即不停往发送方发送数据,可以通过-m 参数指定发送数据的大小,默认大小为socket size。
TCP_RR模式:即Request、Response模式,类似模拟http请求、数据库请求等,默认大小Request size 和 Response size 均为1byte,可以通过 -r 64,32K 设置 Request、Response size。
统计数据:默认得到的数据只有传输时间和吞吐量等,可以通过-k 参数设置要显示的结果数据:
MIN_LATENCY,MAX_LATENCY,MEAN_LATENCY,P50_LATENCY,P90_LATENCY:可以得到延迟相关的统计数据,延迟最大最小值、平均延迟,延迟50、70、90、99值等。
STDDEV_LATENCY:延迟标准差,可以通过该值反应网络的抖动情况
THROUGHPUT:两台机器之间当前的吞吐量
LOCAL_CPU_UTIL,REMOTE_CPU_UTIL:发送方和接收方的CPU使用率
REQUEST_SIZE,RESPONSE_SIZE:RR模式时,Request、Response size
LOCAL_TRANSPORT_RETRANS:重传次数

通过上面对netperf命令的描述,可以看到该工具基本可以测试得到所有网络性能方面的指标,但是netperf、iperf这种工具可能更适合作为一种基准工具,进行压力测试,作为负载测试工具还不是很合适,测试过程中,可以通过-b -w的参数制定发送数据包个数和发送间隔,但是不能从根本上限制网络吞吐量仅占网络带宽的50%等情况。
“基准测试工具可能仅适用于一些基本性能指标的测试,并不算一个完善的测试工具” —— 霞姐~
关于网络性能测试的基本内容介绍完了,如果疑问欢迎联系我,我们一起探讨~ 
  评论这张
 
阅读(1486)| 评论(2)
推荐 转载

历史上的今天

评论

<#--最新日志,群博日志--> <#--推荐日志--> <#--引用记录--> <#--博主推荐--> <#--随机阅读--> <#--首页推荐--> <#--历史上的今天--> <#--被推荐日志--> <#--上一篇,下一篇--> <#-- 热度 --> <#-- 网易新闻广告 --> <#--右边模块结构--> <#--评论模块结构--> <#--引用模块结构--> <#--博主发起的投票-->
 
 
 
 
 
 
 
 
 
 
 
 
 
 

页脚

网易公司版权所有 ©1997-2016