Iperf工具使用详解

article/2025/9/12 10:41:00

1、 工具介绍

Iperf是一个网络性能测试工具,专门用于简化TCP性能优化,且具有多种参数和UDP特性,使用它可以很容易地测量吞吐量和带宽的最大值。当与UDP一起使用时,iPerf还可以测量数据丢失和延迟(抖动)。iPerf可以在任何IP 网络上运行,包括本地以太网,因特网接入连接和Wi-Fi网络。

2、参数介绍

通用参数

-f [kmKM] 分别表示以Kbits, Mbits, KBytes, MBytes显示报告,默认以Mbits为单位,eg:iperf -c 222.35.11.23 -f K
-i sec 以秒为单位显示报告间隔,eg:iperf -c 222.35.11.23 -i 2
-l 缓冲区大小,默认是8KB,eg:iperf -c 222.35.11.23 -l 16
-m 显示tcp最大mtu值
-o 将报告和错误信息输出到文件eg:iperf -c 222.35.11.23 -o ciperflog.txt
-p 指定服务器端使用的端口或客户端所连接的端口eg:iperf -s -p 9999;iperf -c 222.35.11.23 -p 9999
-u 使用udp协议
-w 指定TCP窗口大小,默认是8KB
-B 绑定一个主机地址或接口(当主机有多个地址或接口时使用该参数)
-C 兼容旧版本(当server端和client端版本不一样时使用)
-M 设定TCP数据包的最大mtu值
-N 设定TCP不延时
-V 传输ipv6数据包

server专用参数

-D 以服务方式运行iperf,eg:iperf -s -D
-R 停止iperf服务,针对-D,eg:iperf -s -R

client端专用参数

-d 同时进行双向传输测试
-n 指定传输的字节数,eg:iperf -c 222.35.11.23 -n 100000
-r 单独进行双向传输测试
-t 测试时间,默认10秒,eg:iperf -c 222.35.11.23 -t 5
-F 指定需要传输的文件
-T 指定ttl值

2、测试执行

2.1 联网环境(不推荐)
iperf工具下载地址:https://iperf.fr/iperf-download.php#ubuntu
选择iperf的版本号为3.1.3
编译和安装所有测试:./configure; make; make install
(注意:如果配置失败,可以尝试先运行./bootstrap.sh)
2.2 iperf工具使用
1)TCP测试
服务器执行:./iperf -s -i 1 -w 1M 这里是指定Linux,如果是 iperf -s是windows平台下命令,默认包大小为8kbyte/s。
客户端执行:./iperf -c host -i 1 -w 1M
其中-w表示TCP window size,host需替换成服务器地址。
2)UDP测试
服务器执行:./iperf -u -s
客户端执行:./iperf -u -c 10.255.255.251 -b 900M -i 1 -w 1M -t 60
其中-b表示使用多少带宽,1G的线路你可以使用900M进行测试。

3 iperf具体实施

1,拷贝iperf软件到两台系统下并安装:
2,tar xvf iperf.tar.gz
cd iperf
./configure
make
make install
3,执行vi /etc/ld.so.conf,
在"include ld.so.conf.d/*.conf"下方增加"/usr/local/lib"。
4,保存后,在命令行终端执行:/sbin/ldconfig -v;
(其作用是将文件/etc/ld.so.conf列出的路径下的库文件缓存到/etc/ld.so.cache以供使用,因此当安装完一些库文件,或者修改/etc/ld.so.conf增加了库的新搜索路径,需要运行一下ldconfig,使所有的库文件都被缓存到文件/etc/ld.so.cache中,如果没做,可能会找不到刚安装的库。)
5,在命令提示符上执行命令:
iperf3 –s,打开iPerf服务器;
然后打开另一个窗口来启动你的iPerf客户端:
在这里插入图片描述
客户端:iperf3 -c 127,0.0.1 -i 2 -w 512k -t 60 -p 5201
-c 兼容旧版本
-i 以秒为单位显示报告间隔
-w 指定TCP窗口大小,默认是8KB
-t 测试时间,默认10秒
-p 客户端所连接的端口
6,测量TCP吞吐量
为了确定最大TCP吞吐量,iPerf尝试从客户端尽可能快地向服务器上发送数据。默认时数据是以8KB大小缓冲发送的,这也是通过操作系统的默认的TCP窗口大小值。为了模拟特定TCP应用,你可以指定你的iPerf客户端从一个特定的文件(-F 文件名)或交互式输入(-I)来发送数据。比如:
在这里插入图片描述


http://chatgpt.dhexx.cn/article/UFhwXFhr.shtml

相关文章

Windows下iperf使用(cmd窗口)三种方法

iperf属于网络性能的测试工具,可以测试最大TCP或UDP的最大带宽,是我们嵌入式测试网络的一大利器,但是每次进入目录着实麻烦,这里记录三种方法帮助我们去使用它。 一、偶尔使用、临时使用 1、进入下载的iperf3文件夹目录 2、通过…

iperf详细使用方法

Iperf 是一个网络性能测试工具。Iperf可以测试TCP和UDP带宽质量。Iperf可以测量最大TCP带宽, 具有多种参数和UDP特性。Iperf可以报告带宽,延迟抖动和数据包丢失。 Iperf使用方法与参数说明 参数说明 -s 以server模式启动,eg&…

pmon start.s

http://xenyinzen.wikidot.com/loongson-about PMON-V1.1 目录结构 pmon的目录结构大致如下(由linux工具tree生成) . |-- Targets 目标结构相关代码,每个新结构在该目录下有一个子目录 | -- Bonito Bonito是我们的…

龙芯派2代烧写PMON和重装系统

问题描述 原本只是开机无法进入操作系统,那时候并不清楚PMON是什么功能,以为跟Ubuntu下的tty0差不多,在输入命令行的过程中不小心删掉了PMON,从此开发板变板砖。 那时候绝望的我向技术人员说了这个问题,好心的龙先生…

pmon命令行下加载内核方法

pmon命令行下加载内核方法 一、概述 软件:内核镜像 vmlinuz(包含文件系统)、pmon硬件:龙芯派二代 (LS2K1000) 将龙芯派板卡启动到pmon命令行下: 二、网络加载 操作流程: 启动到…

龙芯pmon快速启动方法

龙芯pmon快速启动方法 以ls2k1000 pmon为例 一、去掉没有用的外设 去掉GPU 在vim Targets/LS2K/conf/ls2k里添加 option NOGPU 原理: 备注:必须使用pmon下的设备树,此方法才能去掉GPU 去掉Nand 在vim Targets/LS2K/conf/ls2k里注释掉如下内…

loongson PMON使用

PMON使用介绍 龙芯平台计算机目前多采用PMON(Prom Monitor)作为基本的输入输出系统(BIOS)。 PMON具有强大而丰富的功能,包括硬件初始化、操作系统引导和硬件测试、程序调式等功能。 它提供多种加载操作系统的方式,可以从优盘、光盘…

PMON学习记录3:PMON启动流程

可以参考讯为电子的PMON学习视频: https://www.bilibili.com/video/BV13M4y1P7H8?p8&vd_source7758aca909f593c8652fba5b3a94211dhttps://www.bilibili.com/video/BV13M4y1P7H8?p8&vd_source7758aca909f593c8652fba5b3a94211d 1.通用寄存器: …

PMON学习记录2:PMON启动流程1

PMON启动流程分析 B站有讯为电子的详细介绍视频,连接如下,十分推荐第一次学的看一下https://www.bilibili.com/video/BV13M4y1P7H8?p7&vd_source7758aca909f593c8652fba5b3a94211dhttps://www.bilibili.com/video/BV13M4y1P7H8?p7&vd_source77…

PMON分析(1)- ROM阶段

PMON的运行过程分为两个阶段:第一阶段是在ROM FLASH中运行,主要进行基本硬件初始化,如:初始化核的一些配置寄存器,其中包括cpu状态和原因寄存器、pcie的配置寄存器、GPIO、sata、cache、tlb、内存控制器和串口初始化等…

【基础知识】Oracle核心进程(PMON、SMON、DBWn、LGWR、CKPT)

本文主要总结的是五个核心后台进程(PMON、SMON、CKPT、DBWn、LGWR),理解这些进程的概念是Oracle学习的内功,是TroubleShooting和优化的基础,以下内容参考了Oracle编程艺术、官方文档Concept、OCP考试指南及行业大牛的总…

pmon下常用命令

pmon下常用命令 在进入系统前按 “c” 进入pmon的命令行。如设置自器动的话(pmon自动加载内核、启动文件系统),需要设置环境变量 a l / al/ al/al1、$append。 1、帮助命令 h 有两种使用方式: ① h 查看所有命令 ② h xxx 查…

PMON环境配置(龙芯,亲测成功1)

1.前言 2.运行平台 3.依赖组件 4.安装与配置安装专用GCC编译器 4.1下载GCC编译器 4.2解压GCC编译器 4.3配置系统运行 5.编译龙芯PMON执行文件 5.1下载PMON源码 5.2 编译并配置git tools插件 5.3编译gzrom…

PMON简介

最近在学习Sylix OS,将系统运行至龙芯开发板时候需要用到PMON,记录一下几种下载方式 目录 一.PMON启动过程 二.PMON命令介绍 1.load 命令 tftp 启动 USB 手动启动 硬盘手动启动 硬盘自动启动 2.reboot 命令 3.date 命令 4.ifconfig 命令 5.ping 命令 6.s…

Java多线程游戏仿真实例分享

这是一篇学习分享博客,这篇博客将会介绍以下几项内容: 1、如何让一个程序同时做多件事?(多线程的创建、多线程的应用) 2、如何让小球在画面中真实地动起来?(赋予小球匀速直线、自由落体、上抛等…

算法工程 # 深度学习算法落地最后一公里:工业界中的大规模向量检索

前言:现代深度学习实践中很多场景其实都是对输入数据进行处理、嵌入,最终获得一个 embedding,然后对 embedding 进行相似度检索,而工业界中的被检索数据往往是海量的,因此深度学习模型落地的最后一步也就是大规模向量检…

向量检索-faiss检索

一、语义相似检索背景 1、为什么引入语义相似检索(向量检索) 问题引出: 搜索引擎和搜索广告最难解决的问题是语义相似度 具体体现:召回和排序。 Case1: 如"从北京到上海的机票"与"携程网"的相似性 Case2"快递软件"与&q…

ModaHub魔搭社区:向量数据库Milvus性能优化问题(三)

目录 Milvus 的导入性能如何? 边插入边搜索会影响搜索速度吗? 批量搜索时,用多线程的收益大吗? 为什么同样的数据量,用 GPU 查询比 CPU 查询慢? Milvus 的导入性能如何? 客户端和服务端在同一台物理机上时,10 万条 128 维的向量导入需要约 0.8 秒(基于 SSD 磁盘)…

Shader 优化相关资料整理

什么是渲染管线 注: 应用程序阶段:主要是CPU与内存打交道,例如碰撞检测,计算好的数据(顶点坐标、法向量、纹理坐标、纹理)就会通过数据总线传给图形硬件 。 几何阶段:其实上图有个问题&#xff…

pthread多线程入门-并行计算高维向量

介绍pthread ​ pthread其实也可以当作C/C的一个库&#xff0c;所有的函数和数据类型都在<pthread.h>中&#xff0e;跟AVX一样&#xff0c;如果使用了pthread&#xff0c;在编译的时候必须加上编译参数-lpthread&#xff0e;使用gcc编译指令如下&#xff1a; gcc filen…