当前位置: 首页 > news >正文

FPGA开发技能(11)用iperf测试网络性能

在这里插入图片描述

文章目录

  • 1.iperf简介
  • 2.使用方法
  • 3.实操
  • 4.其他Iperf支持功能
  • 5.传送门

1.iperf简介

Iperf 是一个网络性能测试工具。Iperf可以测试最大TCP和UDP带宽性能,具有多种参数和UDP特性,可以根据需要调整,可以报告带宽、延迟抖动和数据包丢失。点击iperf3选择对应版本下载。如图所示,在被测网络两端连接两个PC机,在一台PC机上运行Iperf客户端服务,在另一台PC机上运行Iperf服务器服务,利用Iperf工具可以测出网络的各项性能数据。实际项目开发中,被测网络可以是开发者各种形态的网络,光网络,电网络,光电交换的网络,也可以是任何硬件,不过该被测网络一定要支持TCP、UDP协议。也可以用下面的模型测各种市售的器件,用以评估是否满足实际项目需求,如交换机等。
在这里插入图片描述

2.使用方法

下载Iperf之后,压缩包里有两个文件如图所示
在这里插入图片描述
将两个文件拷贝在C:/Windows目录下,打开命令行提示符 输入iperf3 -v查看到如下版本信息证明安装成功,需要注意,iperf3是iperf的一个发行版本,所以必须输入iperf3 -v。
在这里插入图片描述
安装成功后,在服务器端的命令提示符窗口输入,看到如下提示说明服务端配置完毕。

Iperf3 -s -i 1
在这里插入图片描述

在客户端输入不同的指令以测试不同的网络参数,如常用的,作为客户端运行,不限制带宽,报告回显间隔1s,测试时间10s。-u指测试UDP包。这里的IP地址是在客户端上输入的服务器的IP地址,可在服务端输入ipconfig /all查看。需要注意,在网络测试开始之前,最好先用ping命令测试网络已经在物理链路上连通。下面第二条命令没有用-u显示指定UDP协议,则默认测试TCP包。

iperf3 -u -c 192.168.3.250 -b 0 -i 1 -t 10
iperf3 -c 192.168.3.250

3.实操

以下A、B代表电脑分别运行iperf客户端和服务端服务。网络最大带宽能力是千兆以太网。

连接方式BandwidthJitter丢包协议
A—B941Mbit/s0.027ms5.9%UDP
A—交换机—B951Mbit/s0.027ms2.8%UDP
A—自研网络—交换机—B951Mbit/s0.025ms2.6%UDP
A-USB网卡—交换机—B344Mbit/s0.144ms2.5%UDP

下图显示了A、B通过主机相连测试UDP性能的结果
在这里插入图片描述
下图显示了A、B通过主机相连测试TCP性能的结果
在这里插入图片描述

4.其他Iperf支持功能

在这里插入图片描述
以上为通过help指令打印的其他参数,其中常用的如下:

  • -p, --port n 将要侦听/连接到的服务器端口设置为n(默认值5201)
  • -f, --format报告格式的单位:Kbits/Mbits/Gbits/Tbits
  • -i, --interval n在周期性吞吐量报告之间间隔n秒;默认值为1,使用0禁用。
  • -F, --file name 使用文件内容作为数据源
  • -B, --bind host[%dev]绑定到与地址主机相关联的特定接口。
  • -b, --bandwidth ,限制测试带宽 0为无限制。
  • -t, --time #,以时间为测试结束条件进行测试,默认为 10 秒。
  • -l, --len ,读写缓冲区的长度,TCP 默认为 128K,UDP 默认为 8K。
  • -w, --window #[KMG],设置套接字缓冲区大小,TCP 模式下为窗口大小。
  • -R, --reverse,反向模式运行(Server 端发送,Client 端接收)。
    其他根据需要使用。

5.传送门

  • 我的主页
  • FPGA开发必备技能专栏汇总导航
  • 上一篇:FPGA开发技能(10)热电偶测温ADS1118方案
END

💎文章原创,首发于CSDN论坛。
💎欢迎点赞💖收藏✨打赏💷!
💎欢迎评论区🎤或私信指出错误🎤,🗣️提出宝贵意见或疑问。


http://www.dtcms.com/a/319009.html

相关文章:

  • 【unity知识】unity使用AABB(轴对齐包围盒)和OBB(定向包围盒)优化碰撞检测
  • JavaSE---异常的经典面试题
  • 《C语言》函数练习题--1
  • FreeRTROS3——事件组和定时器
  • QT的拖拽功能
  • Flutter开发 Slider组件(如音量控制)
  • 小程序省市级联组件使用
  • 【课题推荐】卡尔曼滤波,创新性的算法与应用:从非线性适用性、鲁棒抗差、自适应、金融与生物新应用等方面考虑
  • 项目构想|文生图小程序
  • idea开发工具中git如何忽略编译文件build、gradle的文件?
  • C5.1:共发射极组态
  • 【Day 18】Linux-DNS解析
  • 如何理解“信号集是位掩码,每个bit代表一个信号”这句话?
  • 怎么在本地引入字体
  • 构建在 OpenTelemetry eBPF 基础之上:详解 Grafana Beyla 2.5 新特性
  • 防火墙环境下的全网服务器数据自动化备份平台搭建:基于 rsync 的完整实施指南
  • CentOS 7 下通过 Anaconda3 运行llm大模型、deepseek大模型的完整指南
  • Express框架
  • 【JavaEE】(9) JVM
  • ElementUI之表格
  • 企业家 IP 发展态势剖析|创客匠人
  • 计算机网络1-5:计算机网络的性能指标
  • 【python 数据加密AES-GCM + 时间戳签名方案(带时间校验)】
  • vue3 el-select 加载触发
  • tcpdump问题记录
  • 软件运行时 ffmpeg.dll 丢失怎么办?从原因排查到完美修复的完整方案
  • 【Kafka系列】第二篇| Kafka 的核心概念、架构设计、底层原理
  • 什么是 TcpCommunicationSpi
  • HTML已死,HTML万岁——重新思考DOM的底层设计理念
  • 【音视频】WebRTC C++ native 编译