iperf3网络测试工具
一、简介:
iperf3是一个网络速度测试工具,支持IPv4与IPv6,支持TCP、UDP、SCTP传输协议,可在Windows、Mac OS X、Linux、FreeBSD等各种平台使用,是一个简单又实用的小工具。因我已配置好yum源,因此执行yum install iperf3即可安装。安装好后,我已看一下iperf的使用参数,如图:


二、实验环境:
在实际测试中我的服务器有万兆网卡,IP如下所示:
Host177:100.192.168.177
Host178:100.192.168.178
Host179:100.192.168.179
Host186:100.192.168.186
三、测试过程
在这次测试中主要进行tcp与udp的对比测试,在测试前先说明一下在iperf3中有几个参数在tcp环境与udp环境中的区别,也就是在测试中需要对此参数要给定内容,避免iperf工具使用其默认的值,主要几项如下:


如图,参数若不指定-b带宽值会造成极大的区别,在测试环境中发现 -l 默认就使用128数值。
接下来首先以Host179为服务器端(服务器端启动参数是没有区别的):

以Host178为客户端进行tcp的测试(暂时不指定-l参数即缓冲区大小):

因测试环境有万兆网卡,于是我在这里指定了带宽-b 为万兆(后面还会进行千兆测试,会出现一个较为奇怪的现象),传输内容大小为100G。
再进行udp测试(暂时不指定-l参数即缓冲区大小):

进行udp测试时候,仅是多了一个参数-u即可。
下面进行千兆的测试,如下:

将-b后面跟着的值调小,这里udp的测试同样进行此操作,这里就不列出图片了,接下来我们关注一下测试结果。
四、测试结果
经测试后,可观察客户端下方的打印结果,如下:
tcp下以万兆带宽测试结果:

ucp下以万兆带宽测试结果:

tcp下以千兆带宽测试结果:

ucp下以千兆带宽测试结果:

通过观察此类结果可以清楚的发现在设定 –b 1000M (千兆)的时候,tcp和udp的传输100G文件所需时间相差不是很多,但当设定–b 10000M (万兆)的时候,两者相差的还是比较明显的,这也是前面提出的“奇怪的现象”。给人的感觉就是udp没有发挥万兆网卡的全部速率,在图中也有显示丢包率为51%。
通过网上的资料查询得知,udp丢包率高可能为缓冲区buffer有限制导致的,因此我于是进行了如下测试:
将udp缓冲区buffer调高,执行下面命令:


CentOS 7中默认buffer大小为212992,我在后面增加了2个0,约为放大100倍,这两条命令在服务器端和客户端都执行,然后下面在执行udp测试命令:

得出结果为:

可以看出丢包率得到了明显的改善,但识别出的带宽仍为6500M左右,离万兆还有一定的距离。
五、结论
经过上网查询学习得知,在带宽测试中通常采取udp模式,因为能测出极限带宽、时延抖动、丢包率。在进行测试时,首先以链路理论带宽(万兆)作为数据发送速率进行测试,这样可以大体得出实际带宽的极限值,在测试环境中的带宽为6500左右,这也同样解释了上文提到的奇怪现象,并且在做实验中一定要注意测试命令的默认参数值,比如在本次测试中的tcp与udp测试的-b和-l两个参数,在使用默认参数的时候还是有着巨大的区别。
iperf3网络测试工具的更多相关文章
- iperf3 网络测试工具
Iperf3 是一个网络性能测试工具.Iperf可以测试最大TCP和UDP带宽性能,具有多种参数和UDP特性,可以根据需要调整,可以报告带宽.延迟抖动和数据包丢失.对于每个测试,它都会报告带宽,丢包和 ...
- iperf/iperf3网络测试工具的安装与使用
1.官网及下载路径: iperf3 homepage at: http://software.es.net/iperf/Report bugs to: https://github.com/esnet ...
- TCP/UDP网络性能测试工具 - Netperf (zz) ..网络测试工具
在构建或管理一个网络系统时,我们更多的是关心网络的可用性,即网络是否连通,而对于其整体的性能往往考虑不多. 除了netperf以外. 还有很多其它的网络性能测试工具. 如db, ...
- IPerf——网络测试工具介绍与源码解析(4)
上篇随笔讲到了TCP模式下的客户端,接下来会讲一下TCP模式普通场景下的服务端,说普通场景则是暂时不考虑双向测试的可能,毕竟了解一项东西还是先从简单的情况下入手会快些. 对于服务端,并不是我们认为的直 ...
- 网络测试工具netperf(转)
http://pangyi.github.io/blog/20141210/wang-luo-ce-shi-gong-ju-netperf/ 网络测试工具netperf 2014年12月10日 一般我 ...
- 网络测试工具--Iperf、Netperf 、MZ
网络性能测量的五项指标 可用性(availability) 响应时间(response time) 网络利用率(network utilization) 网络吞吐量(network throughpu ...
- iperf网络测试工具
iperf https://sourceforge.net/projects/iperf/ http://downloads.es.net/pub/iperf/ https://github.com/ ...
- 网络测试工具netperf
Netperf是一种网络性能的测量工具,主要针对基于TCP或UDP的传输.Netperf根据应用的不同,可以进行不同模式的网络性能测试,即批量数据传输(bulk data transfer)模式和请求 ...
- QNET,一款给力的APP弱网络测试工具
目前在测试移动设备上进行弱网络专项测试的方案主要有两种: 通过Android设备连接到PC上进行弱网络测试,比如Fiddler,Charles,NET-Simulator等.基本思路是在PC上装一个F ...
随机推荐
- 从零玩转JavaWeb系列7web服务器-----get与post的区别
总结get与post的区别 get参数通过url传递,post放在request body中. get请求在url中传递的参数是有长度限制的,而post没有. get比post更不安全,因为参数直接暴 ...
- uml 时序图
1.时序图的概念 时序图定义 : 描述了对象之间传递消息的时间顺序, 用来表示用例中的行为顺序, 是强调消息时间顺序的交互图; 时序图描述的事物: 时序图描述系统中类和类之间的交互, 将这些交互建模成 ...
- 两个不同vim之间复制内容
常规想法是打开两个vim,然后进行yy和p操作,但是实践证明根本是不行的.此时,我们需要分割窗口,然后就可以复制粘贴了.步骤如下: 假设我要把srv.c文件的readline函数整体复制到cli.c文 ...
- 反射与dynamic
反射 var a = Assembly.GetExecutingAssembly(); Type type = a.GetType("CLRTest.ReflectClass"); ...
- unity在安卓中横屏闪退
竖屏没问题,横屏闪退 配置文件的AndoridManifest.xml横竖屏设置要和UNITY设置的一致,否则就会强退 UNITY横竖屏设置
- ATM取款机的数据库模拟开发和实战总结
一.ATM实战开发的简介. 学习了几天的Oracle,开始着手用数据库PL/SQL语言做一个简单的ATM取款机业务,主要是为了巩固数据库的知识,并非真正的去实现高端的业务.有兴趣的可以看看,希望对同胞 ...
- SpringBoot集成freemarker和thymeleaf模板
1.在MAVEN工程POM.XML中引入依赖架包 <!-- 引入 freemarker 模板依赖 --> <dependency> <groupId>org.spr ...
- C#中不同格式数据校验的正则表达式
网上经常看到用正则表达式校验数据的文章,有的虽然总结得很全,但是大多数都没有经过严格验证,错误较多. 本文包含三十余条不同格式数据校验的C#正则表达式,一般均附有说明,且在Visual Studio里 ...
- 洛谷 P3627 [APIO2009](抢掠计划 缩点+spfa)
题目描述 Siruseri 城中的道路都是单向的.不同的道路由路口连接.按照法律的规定, 在每个路口都设立了一个 Siruseri 银行的 ATM 取款机.令人奇怪的是,Siruseri 的酒吧也都设 ...
- IntelliJ IDEA 注册码及相关资源
原文地址 http://idea.lanyus.com/ *.lanyus.com下的全部授权服务器已遭JetBrains封杀,请使用http://idea.qinxi1992.cn 或者搭建自己的I ...