测试linux服务器带宽

测试准备

1. 计划考量参数

TCP上传数据带宽

TCP下载数据带宽

UDP上传带宽

UDP下载带宽

多并发支持

稳定性

Tcp通讯网络延迟(小包:32、中包1k、大包1M)

UDP通讯网络延迟(小包:32、中包1k、大包1M)

协议可用性

指定文件真实http下载速度

2. 使用的软件

Iperf:可完成考量参数1-6

Pstools:可完成考量参数7-8

其余软件:完成考量参数9-10

测试执行

1. Iperf

1.1. 安装软件

服务器端(Centos)执行如下命令

wget http://downloads.es.net/pub/iperf/iperf-3.0.6.tar.gz

下载完成后进行解压

tar zxvf iperf-3.0.6.tar.gz

进入解压后的程序目录,执行以下命令

./configure && make && make installIperf3 -s

其中“iperf3 -s”命令为以服务器模式启动iperf软件,若启动成功则有如下提示(默认监听5201端口):

注:错误及解决方法

问题原因
Linux系统中找不到libiperf.so.0 库文件,导致执行iperf3 –s时提示缺少相关lib库

解决方法

先执行echo $LD_LIBRARY_PATH命令,得到系统LIB库所在位置,如:

[[email protected] ~]# echo $LD_LIBRARY_PATH
/usr/lib/oracle/11.2/client64/lib

再通过find ./ | grep libiperf.so.0查找服务器上是否存在该lib库文件,查询到后拷贝libiperf.so.0库文件到上一步找到的LIB库所在目录下。

客户端下载iperf windows版软件,下载地址:https://iperf.fr/iperf-download.php

下载后解压出iperf两个文件,打开cmd命令行窗口,进入该文件解压目录。

1.2. Iperf使用方法

1.2.1. Tcp上传数据带宽

执行命令iperf3 -c [serverip] -b 100M -t 20

-c代表以客户端方式运行

-b代表使用100M带宽进行测试,如果馆方为1000M有线网络,也可以使用-b 1000M进行测试。带宽测试需要考虑客户端本机网卡能力、馆方内网能力、出口带宽、公网带宽、服务云接入带宽等。

-t即为测试20s时间,如果省略该参数则默认测试10s。

结果上来看,上传带宽为93.8Mb/s,也就是达到了百兆左右。

这里说明的是,第一个包应为要建立tcp连接,所以传输和带宽都会略低,而第12.00-13.00传输和带宽都有所下降,说明在该秒存在明显的丢包。正常无明显丢包的测试结果应该如下:

1.2.2. Tcp下载数据带宽

执行命令iperf3 -c [serverip] -b 100M -t 20 -R

相比下载数据带宽测试多了一个-R参数,意为Reverse,即服务器端发送数据,客户端接收数据。

1.2.3. UDP上传数据带宽

执行命令iperf3 -c [serverip] -u -b 100M -t 20

其中比tcp的上传数据带宽测试命令多一个-u,意为使用udp协议。

1.2.4. UDP下载数据带宽

执行命令iperf3 -c [serverip] -u -b 100M -t 20 -R

 1.2.5. 多并发支持

执行命令iperf3 -c [serverip] -P 127 -i 20 -t 20

此处的-P是指启用多线程,127为线程数,范围为1-128,但是使用128则会引起windows端的iperf3程序崩溃,所以最多一台电脑可以模拟127个线程同时连接服务器。观察最后的统计结果,每个线程都有流量,且最后SUM为100M满速即可。

当然,-R和-u都是可以使用的,但是使用-u只能实现90个线程同时测试,超过90个线程软件最后会出现假死状态。

1.2.6. 稳定性测试

执行命令iperf3 -c [serverip] -t 3600

-t是设置时间,3600为持续测试3600s,即1小时。测试思路是可以通过增加时间来评估稳定性,如测试1小时(t的取值范围并未注明,但是10小时是可以的)。当然-P -u -R都是可选的参数。

2. PsTools

2.1. 软件安装

无需安装,解压即用。

2.2. 使用方法

2.2.1. Tcp通讯网络延迟(小包:32、中包1k、大包1M)

执行命令Psping -w 2 -n 100 -l [packet-size] [serverip:port]

此命令可以兼顾时延和端口连通性测试。可以通过修改-l后面的参数达到完成小包至大包的测试工作。

2.2.2. UDP通讯网络延迟(小包:32、中包1k、大包1M)

虽然在帮助信息中有提示使用-u参数可以测试udp的时延,但是经过抓包发现即使使用了-u参数,psping也是发出tcp报文,这应该是psping的一个bug。因而无法使用psping对udp的时延进行测试。

如果需要测试,则需要自研软件进行。

2.2.3. 协议(端口)可用性

执行命令psping -q -i 0 [serverip:port]

由于psping在udp测试上存在的bug,所以只能对tcp的协议进行测试。

此命令仅能确认某些特定端口的tcp报文是否被馆方网络禁用(如类似文安的客流统计box的视频在公司内部被禁止的情况),但也仅限于端口而未能覆盖应用协议层次。如特定端口的报文被禁用则丢包应为100%。需要确认多少个特殊端口的tcp协议报文则执行多少次即可。

3. 指定文件真实http下载速度

Windows的批处理应该可以解决,但是我们这边不太会。所以进行了简单的操作。固定下载服务器上某文件(文件大小一致),打印出下载文件的大小,下载开始时间,下载结束时间,需要手动计算。

我这边做了一个批处理文件,原理是将所有需要用的exe放在固定的位置,然后在批处理文件中依次执行上述命令,最后生成记录文件,也即报告,以这个结果文件来评判用户网络的环境。

这个方法目前来看初步应该是勉强够用了,但是在实际测试过程中需要手动修改批处理文件内容,所以还是建议如果可能,可以尝试做个壳子,或请开发会写bat编码的同学重新给编一下具体内容,易用性会强很多。下方附件为初步生成的结果文件,这里面测试过程中使用了几个公司内部的服务器,仅参考示意即可。

原文地址:https://www.cnblogs.com/ltlinux/p/11027474.html

时间: 2024-08-09 16:11:19

测试linux服务器带宽的相关文章

iperf3 测试linux服务器之间带宽

一.安装方式 1,从官网下载相应版本.用 rpm包安装 https://iperf.fr/iperf-download.php centos7 安装 rpm -i iperf3-3.1.3-1.fc24.x86_64.rpm 2,执行yum install -y iperf3   安装 二.测试方式 网络带宽测试在使用iperf3测试时,要同时在server端与client端都各执行一个程序,让它们互相传送报文进行测试.下面的例子是在CentOS7上进行的测试. 首先在10.23.5.66机器启

Linux 服务器性能测试报告-sysbench命令实践

Linux 服务器性能测试报告 我们使用linux 工具sysbench 来测试linux服务器性能,目前在Centos上进行操作 Install sysbench yum -y install sysbench check it man sysbench CPU Benchmark(运行性能) 测试CPU运行性能 sysbench --test=cpu --cpu-max-prime=20000 run 测试结果 $ sysbench --test=cpu --cpu-max-prime=20

Caffe在Linux服务器下的安装及示例程序mnist测试

Caffe安装 首先需要从网站https://github.com/BVLC/caffe下载压缩包上传到Linux服务器,解压文件.然后执行make all,不报错则表示caffe已经编译好,export设置环境变量如下: export PYTHONPATH=~/caffe/python #caffe的路径下面的python mnist示例测试 首先进入caffe-master/data/mnist目录下,运行命令: $sh get_mnist.sh 然后在caffe目录下运行examples/

【系统运维】--linux服务器上传测试代码注意事项

putty.exe -- 是一个Telnet.SSH.rlogin.纯TCP以及串行接口连接软件.此处主要用来连接linux,执行linux命令,重启tomcat等. flashfxp.exe --   文件传输工具,主要通过putty把windows上面编译好的class文件.web(js,css,jsp/html).web.xml放到linux服务器上 . 一.更新svn代码 邮件项目名称--Team--更新 二.与资源库同步核对 再次核对已修改代码跟资源库的代码,是否是自己想要提交的. 三

linux服务器分析优化

一.系统性能分析 1.系统的性能是指操作系统完成任务的有效性.稳定性和响应速度.操作系统完成任务与系统自身设置.网络拓扑结构.路由设备.路由策略.接入设备.物理线路有关.当linux服务器出现问题,应该从应用程序.操作系统.服务器硬件.网络环境等方面排查. 2.性能优化方案提供:影响系统性能最大的因素是应用程序和操作系统两个方面,因为这两个方面出现的问题隐藏性好,不易察觉,而其他方面出现的问题一般会立刻定位到.系统硬件:(1).当硬件属于物理故障,直接更换硬件:(2).硬件性能不满足需求,升级硬

20个Linux服务器性能调优技巧

Linux是一种开源操作系统,它支持各种硬件平台,Linux服务器全球知名,它和Windows之间最主要的差异在于,Linux服务器默认情况下一般不提供GUI(图形用户界面),而是命令行界面,它的主要目的是高效处理非交互式进程,响应时间并不是那么重要,相反,能够长时间处理高负载才是最关键的. Linux高可用服务器集群解决方案让IT系统管理员可以从容应对许多常见的硬件和软件故障,允许多台计算机一起工作,为关键服务正常运行提供保障,系统管理员可以不中断服务执行维护和升级.Linux服务器有各种用途

Linux服务器性能评估与优化(一)

网络内容总结(感谢原创) 1.前言简介 一.影响Linux服务器性能的因素 1. 操作系统级 性能调优是找出系统瓶颈并消除这些瓶颈的过程. 很多系统管理员认为性能调优仅仅是调整一下内核的参数即可解决问题, 事实上情况并不是这样. 性能调优是实现操作系统的各个子系统之间的平衡性,这些子系统包括: ?       CPU ?       内存 ?       磁盘I/O带宽 ?       网络I/O带宽 子系统之间相互依存,任何一个子系统的负载过度都能导致其他子系统出现问题,例如: * 大量的 p

转: 测试云服务器的工具相关

from: http://cloud.51cto.com/art/201611/520693.htm 首份云计算产品评测曝光,腾讯云.阿里云到底谁更高一筹? 阿里云作为名副其实的国内业界第一,名声非常大,不过最近IT之家的事闹出来之后,我有点庆幸最终没有选择它.腾讯云算是业界老二,而且有着腾讯这个强大的靠山,云服务产品的种类和质量都不错. 作者:佚名来源:科技新视觉|2016-11-07 16:26 收藏 分享 大约一年前,我在某国外云厂商上部署了自己的第一个网站,从此成为一名云计算用户.由于国

Linux服务器丢包故障的解决思路及引申的TCP/IP协议栈理论

我们使用Linux作为服务器操作系统时,为了达到高并发处理能力,充分利用机器性能,经常会进行一些内核参数的调整优化,但不合理的调整常常也会引起意想不到的其他问题,本文就一次Linux服务器丢包故障的处理过程,结合Linux内核参数说明和TCP/IP协议栈相关的理论,介绍一些常见的丢包故障定位方法和解决思路. 问题现象 本次故障的反馈现象是:从办公网访问公网服务器不稳定,服务器某些端口访问经常超时,但Ping测试显示客户端与服务器的链路始终是稳定低延迟的. 通过在服务器端抓包,发现还有几个特点: