网络性能测试工具:iperf3介绍

文章目录

  • 前言
  • 一、iperf3 的安装和使用
    • 下载和安装
    • 参数说明
  • 二、iperf3 测试
    • 服务端启动
    • 客户端启动
    • 服务端输出
    • 反向测试
      • 客户端
      • 服务端


前言

新接触的网络环境如何评估网络带宽和吞吐量呢,有的项目没有对业务流量进行合理规划,服务或者中间件出口带宽经常有被打满的情况。所以提前预测网络带宽的瓶颈还是非常有必要的。

ipef3工具,是一个用于测试网络带宽的开源工具,用于评估网络的性能和吞吐量,他是iperf工具的第三个版本。


一、iperf3 的安装和使用

下载和安装

官网链接: https://iperf.fr/
iperf3支持Windows和Linux版本,Windows是直接编译好的exe文件,Linux一般是rpm包,可以通过yum源安装。
windows 下载连接: https://files.budman.pw/ 下载后解压,在cmd或者gitbash窗口可以启动。
Linux 通过 yum install iperf3 直接安装。

参数说明

  1. -c, --client <server_hostname>:指定客户端模式,连接到指定的服务器。

  2. -s, --server:指定服务器模式,启动 iPerf3 服务器。

  3. -p, --port :指定服务器监听的端口号,默认为 5201。

  4. -t, --time

  5. -i, --interval :设置报告输出的间隔时间,单位为秒,默认为 1 秒。

  6. -w, --window <window_size>:设置 TCP 窗口大小,单位为字节,默认为 128KB。

  7. -b, --bandwidth :限制带宽,单位为比特每秒(bps)。

  8. -u, --udp:使用 UDP 协议进行测试,默认TCP协议。

  9. -l, --len :设置 UDP 数据包的长度,单位为字节,默认为 1460 字节。

  10. -n, --bytes :设置要发送的字节数,可以与 -t 参数一起使用。

  11. -P, --parallel :指定并发连接数,可以同时进行多个连接。

  12. -R, --reverse:反向测试,客户端变为服务器,服务器变为客户端。

  13. -V, --IPv6:使用 IPv6 地址。

  14. -h, --help:显示帮助信息。

二、iperf3 测试

现在我们分别在Windows端和Linux端安装了iperf3软件。
Windows主机 (192.168.37.1) 客户端
Linux主机(192.168.37.100) 服务端

服务端启动

[root@work ~]# iperf3 -s -p 5222
-----------------------------------------------------------
Server listening on 5222
-----------------------------------------------------------

-s 表示服务器端 -p 指定服务端监听端口

客户端启动

$ ./iperf3.exe -c 192.168.37.100 -p 5222  -t 10 -i 1
Connecting to host 192.168.37.100, port 5222
[  4] local 192.168.37.1 port 13957 connected to 192.168.37.100 port 5222
[ ID] Interval           Transfer     Bandwidth
[  4]   0.00-1.00   sec   315 MBytes  2.64 Gbits/sec
[  4]   1.00-2.00   sec   349 MBytes  2.93 Gbits/sec
[  4]   2.00-3.00   sec   304 MBytes  2.55 Gbits/sec
[  4]   3.00-4.00   sec   332 MBytes  2.78 Gbits/sec
[  4]   4.00-5.00   sec   335 MBytes  2.81 Gbits/sec
[  4]   5.00-6.00   sec   352 MBytes  2.95 Gbits/sec
[  4]   6.00-7.00   sec   367 MBytes  3.07 Gbits/sec
[  4]   7.00-8.00   sec   367 MBytes  3.08 Gbits/sec
[  4]   8.00-9.00   sec   339 MBytes  2.84 Gbits/sec
[  4]   9.00-10.00  sec   318 MBytes  2.67 Gbits/sec
- - - - - - - - - - - - - - - - - - - - - - - - -
[ ID] Interval           Transfer     Bandwidth
[  4]   0.00-10.00  sec  3.30 GBytes  2.83 Gbits/sec                  sender
[  4]   0.00-10.00  sec  3.30 GBytes  2.83 Gbits/sec                  receiveriperf Done.

-c 表示客户端
-p 5222 指定服务端口
-t 10 测试持续时间
-i 1 设置报告输出的间隔时间。

服务端输出

[root@work ~]# iperf3 -s -p 5222
-----------------------------------------------------------
Server listening on 5222
-----------------------------------------------------------
Accepted connection from 192.168.37.1, port 13956
[  5] local 192.168.37.100 port 5222 connected to 192.168.37.1 port 13957
[ ID] Interval           Transfer     Bandwidth
[  5]   0.00-1.00   sec   301 MBytes  2.52 Gbits/sec                  
[  5]   1.00-2.00   sec   348 MBytes  2.92 Gbits/sec                  
[  5]   2.00-3.00   sec   304 MBytes  2.55 Gbits/sec                  
[  5]   3.00-4.00   sec   333 MBytes  2.79 Gbits/sec                  
[  5]   4.00-5.00   sec   338 MBytes  2.83 Gbits/sec                  
[  5]   5.00-6.00   sec   349 MBytes  2.93 Gbits/sec                  
[  5]   6.00-7.00   sec   366 MBytes  3.07 Gbits/sec                  
[  5]   7.00-8.00   sec   366 MBytes  3.07 Gbits/sec                  
[  5]   8.00-9.00   sec   344 MBytes  2.89 Gbits/sec                  
[  5]   9.00-10.00  sec   317 MBytes  2.66 Gbits/sec                  
[  5]  10.00-10.04  sec  11.4 MBytes  2.42 Gbits/sec                  
- - - - - - - - - - - - - - - - - - - - - - - - -
[ ID] Interval           Transfer     Bandwidth
[  5]   0.00-10.04  sec  0.00 Bytes  0.00 bits/sec                  sender
[  5]   0.00-10.04  sec  3.30 GBytes  2.82 Gbits/sec                  receiver
-----------------------------------------------------------
Server listening on 5222
-----------------------------------------------------------

结果查看,主要是看 receiver Bindwidth达到的的值。

反向测试

服务端启动方式不变,客户端在原来启动命令基础上,增加-R 参数就是客户端和服务器将对调过来。

客户端

$ ./iperf3.exe -c 192.168.37.100 -p 5222  -t 10 -i 1 -R
Connecting to host 192.168.37.100, port 5222
Reverse mode, remote host 192.168.37.100 is sending
[  4] local 192.168.37.1 port 9562 connected to 192.168.37.100 port 5222
[ ID] Interval           Transfer     Bandwidth
[  4]   0.00-1.00   sec   106 MBytes   892 Mbits/sec
[  4]   1.00-2.00   sec   106 MBytes   886 Mbits/sec
[  4]   2.00-3.00   sec   105 MBytes   877 Mbits/sec
[  4]   3.00-4.00   sec  97.9 MBytes   822 Mbits/sec
[  4]   4.00-5.00   sec  89.4 MBytes   750 Mbits/sec
[  4]   5.00-6.00   sec  74.6 MBytes   625 Mbits/sec
[  4]   6.00-7.00   sec  71.9 MBytes   603 Mbits/sec
[  4]   7.00-8.00   sec  68.0 MBytes   571 Mbits/sec
[  4]   8.00-9.00   sec  69.1 MBytes   580 Mbits/sec
[  4]   9.00-10.00  sec  69.4 MBytes   582 Mbits/sec
- - - - - - - - - - - - - - - - - - - - - - - - -
[ ID] Interval           Transfer     Bandwidth       Retr
[  4]   0.00-10.00  sec   857 MBytes   719 Mbits/sec    0             sender
[  4]   0.00-10.00  sec   857 MBytes   719 Mbits/sec                  receiveriperf Done.

服务端

[root@work ~]# iperf3 -s -p 5222
-----------------------------------------------------------
Server listening on 5222
-----------------------------------------------------------
Accepted connection from 192.168.37.1, port 9561
[  5] local 192.168.37.100 port 5222 connected to 192.168.37.1 port 9562
[ ID] Interval           Transfer     Bandwidth       Retr  Cwnd
[  5]   0.00-1.02   sec   105 MBytes   863 Mbits/sec    0    218 KBytes       
[  5]   1.02-2.01   sec   105 MBytes   884 Mbits/sec    0    218 KBytes       
[  5]   2.01-3.01   sec   105 MBytes   878 Mbits/sec    0    218 KBytes       
[  5]   3.01-4.02   sec  98.2 MBytes   820 Mbits/sec    0    218 KBytes       
[  5]   4.02-5.02   sec  89.5 MBytes   753 Mbits/sec    0    218 KBytes       
[  5]   5.02-6.02   sec  75.0 MBytes   628 Mbits/sec    0    218 KBytes       
[  5]   6.02-7.03   sec  73.0 MBytes   603 Mbits/sec    0    218 KBytes       
[  5]   7.03-8.03   sec  67.5 MBytes   571 Mbits/sec    0    218 KBytes       
[  5]   8.03-9.03   sec  69.5 MBytes   579 Mbits/sec    0    218 KBytes       
[  5]   9.03-10.02  sec  68.8 MBytes   582 Mbits/sec    0    218 KBytes       
[  5]  10.02-10.04  sec  1.25 MBytes   562 Mbits/sec    0    218 KBytes       
- - - - - - - - - - - - - - - - - - - - - - - - -
[ ID] Interval           Transfer     Bandwidth       Retr
[  5]   0.00-10.04  sec   857 MBytes   716 Mbits/sec    0             sender
[  5]   0.00-10.04  sec  0.00 Bytes  0.00 bits/sec                  receiver
-----------------------------------------------------------
Server listening on 5222
-----------------------------------------------------------

这里,服务端结果,看sender 这一行,这次服务端是发送端。带宽716Mbits/sec


本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/pingmian/19956.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Unity屏幕分辨率适配方法

Unity屏幕分辨率适配方法 在Unity中实现屏幕分辨率适配&#xff0c;可以使用以下几种方法&#xff1a; 1. 使用Canvas Scaler 创建Canvas&#xff1a; 在Unity编辑器中创建一个Canvas&#xff0c;它将自动添加一个Canvas Scaler组件。 设置Canvas Scaler&#xff1a; 选择Ca…

golang语言的gofly快速开发框架如何设置多样的主题说明

本节教大家如何用gofly快速开发框架后台内置设置参数&#xff0c;配置出合适项目的布局及样式、主题色&#xff0c;让你您的项目在交互上加分&#xff0c;也是能帮你在交付项目时更容易得到客户认可&#xff0c;你的软件使用客户他们一般都是不都技术的&#xff0c;所以当他们拿…

prometheusgrafananode_export搭建监控平台

一、环境要求 1、docker安装docker环境 2、docker安装prometheus 3、docker安装grafana 4、node-exportor(安装在被测服务器上) 5、我的服务器是Ubuntu 二、docker 安装prometheus 1、下载Prometheus镜像 docker pull prom/prometheus 2、检查端口是否被占用 安装netstat命…

在Github找自己想要的的项目

点击进入github 1.首先进入到github的首页&#xff1b;搜索框搜&#xff08;先关键字搜索&#xff09;in:name 你的找的项目 比如&#xff1a; in:name Sping Boot2.进一步检索&#xff08;点赞数高的&#xff09; in:name Sping Boot star:>1000 3.如何要找最新的&…

初级硬件工程师,工作中遇到的问题list

1&#xff09;元器件选型 刚进公司一般情况下是不会让新人选型的&#xff0c;最起码一年之后才会逐步接触&#xff0c;需要耐得了寂寞和坐冷板凳。但是有一种情况除外&#xff0c;人手紧张&#xff0c;并且电路板简单&#xff0c;会让新人选择简单的元器件&#xff0c;比如按键…

2024.5.31每日一题

LeetCode 找出缺失的重复数字 题目链接&#xff1a;2965. 找出缺失和重复的数字 - 力扣&#xff08;LeetCode&#xff09; 题目描述 给你一个下标从 0 开始的二维整数矩阵 grid&#xff0c;大小为 n * n &#xff0c;其中的值在 [1, n2] 范围内。除了 a 出现 两次&#xff…

Python开发 我的世界 Painting-the-World: Minecraft 像素图片生成器

简介 Painting-the-World 是一款创新的工具&#xff0c;专为《我的世界》(Minecraft) 玩家及创作者设计&#xff0c;旨在将数字图片转变为游戏内的像素艺术。通过利用 RCON (Remote Console) 协议&#xff0c;本项目可以直接与《我的世界》服务器对话&#xff0c;根据输入的图…

双点双向重发布

1、由于ASBR在重发布路由条目时,将清除原有协议携带的度量,添加新协议的种子度量&#xff1b;一日使用双点或多点重发布&#xff0c;可能出现选路不佳&#xff1b;-----路由策略来解决 2、当优先级不同的两种协议在进行多点双向重发布后,可能第一台ASBR将A协议发布到B协议后&a…

Android MediaCodec 简明教程(九):使用 MediaCodec 解码到纹理,使用 OpenGL ES 进行处理,并编码为 MP4 文件

系列文章目录 Android MediaCodec 简明教程&#xff08;一&#xff09;&#xff1a;使用 MediaCodecList 查询 Codec 信息&#xff0c;并创建 MediaCodec 编解码器Android MediaCodec 简明教程&#xff08;二&#xff09;&#xff1a;使用 MediaCodecInfo.CodecCapabilities 查…

万户ezEIP企业管理系统 /member/success.aspx 命令执行漏洞复现

0x01 产品简介 万户ezEIP是一种企业资源规划软件,旨在帮助企业管理其各个方面的业务流程。它提供了一套集成的解决方案,涵盖了财务、供应链管理、销售和市场营销、人力资源等各个领域。 0x02 漏洞概述 万户ezEIP企业管理系统 /member/success.aspx 接口处存在命令执行漏洞…

可变参数

自学python如何成为大佬(目录):https://blog.csdn.net/weixin_67859959/article/details/139049996?spm1001.2014.3001.5501 在Python中&#xff0c;还可以定义可变参数。可变参数也称不定长参数&#xff0c;即传入函数中的实际参数可以是任意多个。 定义可变参数时&#xf…

IT运维保障企业网络畅通

目录 一、网络维护的基础知识 1.1 定期检查硬件设备 1.2 软件更新与补丁管理 二、网络优化技巧 2.1 带宽管理 2.2 流量分析与监控 2.3 网络拓扑优化 三、快速故障排除的技巧 3.1 制定故障排除流程 3.2 使用故障排除工具 3.3 定期培训与演练 在当今数字化时代&#x…

自然语言处理中的BERT模型深度剖析

自然语言处理&#xff08;NLP&#xff09;是人工智能领域的一个重要分支&#xff0c;它致力于让计算机理解和生成人类语言。近年来&#xff0c;BERT&#xff08;Bidirectional Encoder Representations from Transformers&#xff09;模型的出现&#xff0c;极大地推动了NLP领域…

【Linux】Linux环境基础开发工具_3

文章目录 四、Linux环境基础开发工具2. vim3. gcc和g动静态库的理解 未完待续 四、Linux环境基础开发工具 2. vim vim 怎么批量化注释呢&#xff1f;最简单的方法就是在注释开头和结尾输入 /* 或 */ 。当然也可以使用快捷键&#xff1a; Ctrl v 按 hjkl 光标移动进行区域选择…

【LeetCode】38.外观数列

外观数列 题目描述&#xff1a; 「外观数列」是一个数位字符串序列&#xff0c;由递归公式定义&#xff1a; countAndSay(1) "1"countAndSay(n) 是 countAndSay(n-1) 的行程长度编码。 行程长度编码&#xff08;RLE&#xff09;是一种字符串压缩方法&#xff0c…

Spring Cloud应用框架:Nacos作为服务注册中心和配置中心

Nacos 是阿里巴巴开源的一个动态服务发现、配置管理和服务管理平台。在Spring Cloud生态系统中&#xff0c;Nacos可以替代Eureka作为服务注册中心&#xff0c;同时也可以作为配置中心。所以我们这里使用Nacos作为Spring Cloud应用的服务注册中心和配置中心。 使用Nacos的好处 …

3.location的写法

location的写法 一、location的写法1、 精确匹配2、~ 以正则表达式匹配请求&#xff0c;区分大小写3、~* 以正则匹配请求&#xff0c;不区分大小写4、^~ 不以正则的方式匹配请求 二、stub_status模块显示工作状态三、url地址重写 rewrite模块1、语法2、针对项目结构有变化3、网…

LeetCode374猜数字大小

题目描述 我们正在玩猜数字游戏。猜数字游戏的规则如下&#xff1a;我会从 1 到 n 随机选择一个数字。 请你猜选出的是哪个数字。如果你猜错了&#xff0c;我会告诉你&#xff0c;我选出的数字比你猜测的数字大了还是小了。你可以通过调用一个预先定义好的接口 int guess(int n…

民国漫画杂志《时代漫画》第33期.PDF

时代漫画33.PDF: https://url03.ctfile.com/f/1779803-1248635648-d8235b?p9586 (访问密码: 9586) 《时代漫画》的杂志在1934年诞生了&#xff0c;截止1937年6月战争来临被迫停刊共发行了39期。 ps: 资源来源网络!

JVM优化之垃圾收集器

JVM优化之垃圾收集器 Serial收集器Parallel Scavenge收集器ParNew收集器 如果说垃圾收集算法是内存回收的方法论&#xff0c;那么垃圾收集器就是内存回收的具体实现。 没有最好的垃圾收集器&#xff0c;只有根据具体应用场景选择适合自己的垃圾收集器。 Serial收集器 #使用方…