www.cnblogs.com/ruiyqinrui

开源、架构、Linux C/C++/python AI BI 运维开发自动化运维。 春风桃李花 秋雨梧桐叶。“力尽不知热 但惜夏日长”。夏不惜,秋不获。@ruiY--秦瑞

python爬虫,C编程,嵌入式开发.hadoop大数据,桉树,onenebula云计算架构.linux运维及驱动开发.

  博客园  :: 首页  :: 新随笔  :: 联系 :: 订阅 订阅  :: 管理

1,iperf

key feature:Measuring TCP and UDP BandWidth Performance

Iperf features;

*TCP

  .Measure bandwidth;

  .Report MSS(Maximum Segment Size)/MTU(Maximun Transmission Util)size and observerd read sizes;

.......................

*UDP

  .Measure packet loss

  .Measure delay jitter

  .Multicast capable

软件包下载:  iperf.fr

2,netperf

 

网络质量的指标,主要有以下几个:

  • 带宽(throughput),网络的吞吐率,端到端之间可以传输的最大速率。比如服务器之间的千兆网络带宽是1000Mbps,或者用户adsl上网速率是 2Mbps。
  • 延时(latency),数据包从本地传输到对端之间需要的时间,一般是来回的时间。如果延时过大,就会觉得网络慢,特别是一些交互性强的应用。 比如延时超过300ms,通过ssh就会明显感到服务器响应比较慢,跟不上键盘输入的速度。延时一方面和两地之间的传输距离有关,比如中美之间通过海底光 缆传输半个地球,来回距离加起来最起码4万公里,光速是30万公里每秒,所以理论延时最起码是130ms,再加上光缆需要转接和绕路,以及其他损耗,所以 中美之间网络延时最好的时候也在170ms左右。延时另外一个原因是网络带宽的占用率,如果占用率高,则延时也高,比如天朝的特色,电信和网通之间,互相 掐架,互联带宽很小,网络瓶颈,造成互相之间延时很高。很多时候,同一个城市的网通到电信,比到美国去绕一圈还要慢。延时的其他原因,是cpu处理跟不上 等。
  • 丢包(loss),由于线路带宽占用过高,数据包从一端到另外一端传输的途中,会产生丢失。丢包率是网络的一个重要指标,一旦产生丢包,说明网络带宽不足,系统会自动重传,导致继续劣化,所以丢包率超过10%以后,网络质量会迅速劣化。
  • 抖动(jitter),如果延时不稳定,忽快忽慢,网络就存在抖动。抖动这个指标,在VOIP,视频会议等场合,是一个非常重要的指标,如果产生抖动,往往声音和图像也会抖动,无法听清楚或者看清楚。
各种应用,对上述指标的敏感性不一,比如http等应用,往往只对带宽和延时敏感,而游戏类应用,对延时、丢包、带宽敏感,及时语音和视频对上述几个指标都比较敏感。

普通用户测试网络质量的工具,通常的有:

1、ping

谁最常用的一个测试网络质量的一个工具,在各种操作系统、网络设备中一般都自带该工具。ping可以测试网络的延时、丢包率,优点是使用方便,不用安装。

ping的缺陷也比较明显:

  • 测试的时候,仅仅发送很小的负载icmp包,无法测试真实负载下的网络质量,比如单位里的网络平时是正常的,但是开一个迅雷下载,就很糟糕了。
  • 测试的指标单一,对于带宽、抖动无法测试

2、下载工具,可以测试带宽

这里介绍一个优秀的网络质量测试工具iperf,这个工具在我们的 asterisk 网络电话项目中,立下了汗马功劳。iperf 可以测试真实载荷下的网络质量,可以测试端到端的网络质量,可以测试一定吞吐率下的丢包、抖动。

iperf 在 linux 下和windows下都有二进制包。安装方法:

  • centos 下,需要使用EPEL 的软件包
CentOS 6:
rpm -i http://mirrors.ustc.edu.cn/fedora/epel/6/i386/epel-release-6-7.noarch.rpm

CentOS 5:
rpm -i http://mirrors.sohu.com/fedora-epel/5/i386/epel-release-5-4.noarch.rpm

yum -y install iperf
  • debian/ubuntu下
aptitude install iperf
  • windows 下
iperf 使用 C/S 模式进行测试,使用方法:
  • 一般的网络传输,使用 tcp 测试(普通网络应用),测试传输带宽:
服务器上运行:
iperf -s
客户端上运行:
iperf  -c 172.17.0.5  -d -i 1 -t 10
  • 语音服务器应该使用 udp 方式 (-u 选项),主要用于voip,视频会议,一些游戏:

服务器上运行:
iperf -s -u

客户端上测试在8Mbps带宽情况下的网络质量:
iperf -u -c 172.17.0.5 -b 8M -i 1 -w 1M -t 10

客户端起20个进程,每个进程 100k带宽,测试网络质量
iperf -u -c 172.17.0.5 -b 100k -i 1 -w 1M -t 30 -P20

测试结果包括带宽、抖动、丢包:

 

http://www.pubyun.com/blog/deveops/%E7%BD%91%E7%BB%9C%E8%B4%A8%E9%87%8F%E6%8C%87%E6%A0%87%E5%8F%8A%E6%B5%8B%E8%AF%95%E5%B7%A5%E5%85%B7iperf/

http://www.net130.com/CMS/Pub/special/special_fzjh/special_fzjh_yy/2010_07_27_40244.htm

posted on 2014-01-13 17:04  秦瑞It行程实录  阅读(450)  评论(0编辑  收藏  举报
www.cnblogs.com/ruiyqinrui