http://blog.chinaaet.com/telantan/p/30901

https://boke.wsfnk.com/archives/288.html

https://www.ibm.com/developerworks/cn/linux/l-netperf/index.html

iperf 和 netperf 都可以用来进行网络测试

iperf 是一个 TCP/IP 和 UDP/IP 的性能测量工具,能够提供网络吞吐率信息,以及震动、丢包率、最大段和最大传输单元大小等统计信息;从而能够帮助我们测试网络性能,定位网络瓶颈。

一、安装iperf

iperf是一个常用的网络性能测试工具,本文主要介绍iperf的移植的过程,最终简单利用iperf测试Zedboard上的千兆以太网性能。

在官网下载源码:https://github.com/esnet/iperf

这里使用的是最新版本Iperf3,和旧的Iperf有些区别。

Host宿主端安装

解压到相应文件夹,进入目录执行./configure

./configure

这里需要使用g++编译器,因此执行which g++看看是否可以找到g++

重新执行安装操作,

./configure

make

sudo make install

sudo ldconfig

确认iperf是否正常安装上

Target客户端移植

make clean

//注意这里编译器只需要前缀,而不是arm-linux-gnueabi-g++

./configure --prefix=/home/pp/11/iperf/iperf-master/rootfs --host=arm-linux-gnueabi

make

最后在输出文件下查看:

之后即可移植测试。

二、测试iperf

使用方式:客户端模拟像服务器端发送数据,服务器端接收数据,最终生成接收情况、丢包率等.

iperf参数介绍:

#常用公共参数
-i #表示每2秒显示一次报告
-w 80k #对于TCP方式,此设置为TCP窗口大小。对于UDP方式,此设置为接受UDP数据包的缓冲区大小,限制可以接受数据包的最大值 -B 192.168.122.1
#绑定到主机的多个地址中的一个。对于客户端来说,这个参数设置了出栈接口。对于服务器端来说,这个参数设置入栈接口。这个参数只用于具有多网络接口的主机。
#在Iperf的UDP模式下,此参数用于绑 定和加入一个多播组。使用范围在224.0.0.0至239.255.255.255的多播地址
#常用客户端参数
-b 100m #用于udp测试时,设置测试发送的带宽,单位:bit/秒,不设置时默认为:1Mbit/秒
-c #指定服务端ip地址
-d #同时测试上行和下行
-t #设置传输时间,为10秒
-P #指定发起5个线程

UDP模式测试(此模式会显示数据包丢失情况)

服务端
iperf -u -s # -u表示以udp模式运行,-s表示作为服务端 客户端
iperf -u -c 192.168.122.1 -b 100M -t -i
#解释:在udp模式下,以100Mbps为数据发送速率,客户端到服务器192.168.1.1上传带宽测试,测试时间为60秒 iperf -u -c 192.168.122.1 5M -P -t #客户端同时向服务器端发起30个连接线程,以5Mbps为数据发送速率
iperf -u -c 192.168.122.1 -b 100M -d -t #以100M为数据发送速率,进行上下行带宽测试

更正:iperf3 服务器端不再有-u选项

服务器端:
iperf3 -p -s -i 1 参数说明: -p : 端口号 -s : 标示服务端 -u : 标示udp协议 -i : 检测的时间间隔(单位:秒)

在客户端

客户端:
iperf3 -u -c 113.54.158.252 -p -i -b 10M
参数说明: -c : 服务端的ip地址 -p : 端口号 -u : 标示udp协议 -b : 每一次发送的数据大小 -t : 总的发送时间(单位:秒) -i : 发送数据的时间间隔(单位:秒) -P : 表示线程个数,不指定则默认单线程

从左至右依次为: 线程id 时间 接收数据大小 每秒大小 延时 丢包/总包 丢包率

TCP模式下网络测试:

服务器端:
iperf3 -p -s -i 参数说明: -p : 端口号 -s : 标示服务端 -u : 标示udp协议 -i : 检测的时间间隔(单位:秒)

TCP客户端

iperf3 -c 113.54.158.252 -p 8000 -i 1 -b 10M

客户端

iperf -c 192.168.122.1 -t 60			#在tcp模式下,客户端到服务器192.168.1.1上传带宽测试,测试时间为60秒。
iperf -c 192.168.122.1 -P 30 -t 60 #客户端同时向服务器端发起30个连接线程。
iperf -c 192.168.122.1 -d -t 60 -i 2 #进行上下行带宽测试。

iperf测试网络带宽的更多相关文章

  1. iperf 测试工具

    Iperf是一个网络性能测试工具.Iperf可以测试TCP和UDP带宽质量.Iperf可以测量最大TCP带宽,具有多种参数和UDP特性. Iperf可以报告带宽,延迟抖动和数据包丢失.利用Iperf这 ...

  2. 【Linux】使用 iperf 测试 Linux 服务器带宽

    iperf 简介 iperf 是一个用于测试网络带宽的命令行工具,可以测试服务器的网络吞吐量.目前发现两个很实用的功能: 测试服务器网络吞吐量:如果我们需要知道某台服务器的「最大」网络带宽,那么最好在 ...

  3. MyTtcp 测试网络带宽

    网络编程学习 注意的指标MB/S 带宽每秒处理的信息 查询等 messages/s queries/s transaction/s延时cpu使用率 ttcp测试网络 读写读写 循环 测试网络带宽 正确 ...

  4. 使用iperf测试网卡吞吐性能

    原 使用iperf测试网卡吞吐性能 2018年12月17日 12:38:41 lancewoo 阅读数:138   首先配置待测试的两个网卡的网络地址到同一网段,保证ping对方的IP地址时可以通.两 ...

  5. iperf测试流量转发(nginx反向代理tcp/udp)

    一.准备工作 服务器1:192.168.33.102     搭建nginx服务,作为反向代理的中转站 服务器2:192.168.33.103    nginx要反向代理的服务器 服务器3:192.1 ...

  6. 【Iperf】iperf测试wlan的性能

    1.概念: iperf命令是一个网络性能测试工具.iperf可以测试TCP和UDP带宽质量. iperf可以测量最大TCP带宽,具有多种参数和UDP特性.iperf可以报告带宽,延迟抖动和数据包丢失. ...

  7. iperf测试

    在服务端运行iperf,输入命令iperf –s –p 12345 –i 1 –M 以在本机端口12345上启用iperf 在客户端运行iperf,输入命令iperf –c server-ip –p  ...

  8. [工具]iperf测试带宽

    之前被要求测试网卡带宽能力,发现了iperf这个工具,记录下来防止遗忘. iperf是个开源跨平台测试带宽工具,windows.linux.macOS--都支持,安装也挺方便. 1.安装 地址:htt ...

  9. iperf测试网络性能

      分类: LINUX 2013-06-17 18:52:21     Iperf是一个网络性能测试工具.可以测试TCP和UDP带宽质量,可以测量最大TCP带宽,具有多种参数和UDP特性,可以报告带宽 ...

随机推荐

  1. SpringBoot日记——删除表单-Delete篇

    增删改查,我们这篇文章来介绍一下如何进行删除表单的操作,也就是我们页面中的删除按钮的功能. 下边写的可能看起来有点乱,请仔细的一步一步完成. 删除功能第一步,按钮功能实现 1. html的改变 来看, ...

  2. React笔记-事件分发

    事件分发 之前讲述了事件如何绑定在document上,那么具体事件触发的时候是如何分发到具体的监听者呢?我们接着上次注册的事件代理看.当我点击update counter按钮时,触发注册的click事 ...

  3. 【MOOC EXP】Linux内核分析实验五报告

    程涵  原创博客 <Linux内核分析>MOOC课程http://mooc.study.163.com/course/USTC-1000029000 分析system_call中断处理过程 ...

  4. linux读书笔记(5章)

    linux读书笔记(5章) 标签(空格分隔): 20135328陈都 第五章 系统调用 5.1 与内核通信 系统调用 让应用程序受限的访问硬件设备 提供创建新进程并与已有进程通信的机制 提供申请操作系 ...

  5. Linux内核分析第二周学习笔记

    linux内核分析第二周学习笔记 标签(空格分隔): 20135328陈都 陈都 原创作品转载请注明出处 <Linux内核分析>MOOC课程http://mooc.study.163.co ...

  6. C语言版本:顺序表的实现

    seqlist.h #ifndef __SEQLIST_H__ #define __SEQLIST_H__ #include<cstdio> #include<malloc.h> ...

  7. PAT 甲级 1030 Travel Plan

    https://pintia.cn/problem-sets/994805342720868352/problems/994805464397627392 A traveler's map gives ...

  8. 使用ejs模板引擎

    let express = require('express'); let fs = require('fs'); let ejs = require('ejs'); let app = expres ...

  9. js & option keycode

    js & option keycode js get option keycode https://keycode.info/ option https://github.com/wesbos ...

  10. 深入 Java Web

    该系列 记录下,深入 学习 Java Web 过程. 1.Tomcat总体结构 2.Tomcat 启动流程 3.ServletContext详解 4.Servlet详解