iperf3: A TCP, UDP, and SCTP network bandwidth measurement tool
================================================================
Summary
-------
iperf is a tool for active measurements of the maximum achievable
bandwidth on IP networks. It supports tuning of various parameters
related to timing, protocols, and buffers. For each test it reports
the bandwidth, loss, and other parameters.
This version, sometimes referred to as iperf3, is a redesign of an
original version developed at NLANR/DAST. iperf3 is a new
implementation from scratch, with the goal of a smaller, simpler code
base, and a library version of the functionality that can be used in
other programs. iperf3 also a number of features found in other tools
such as nuttcp and netperf, but were missing from the original iperf.
These include, for example, a zero-copy mode and optional JSON output.
Note that iperf3 is *not* backwards compatible with the original iperf.
Primary development for iperf3 takes place on CentOS Linux, FreeBSD,
and MacOS X. At this time, these are the only officially supported
platforms, however there have been some reports of success with
OpenBSD, NetBSD, Android, Solaris, and other Linux distributions.
iperf3 is principally developed by ESnet / Lawrence Berkeley National
Laboratory. It is released under a three-clause BSD license.
Note that at this point, ESnet plans to support iperf3 in "maintenance
mode". At this point, there are no definite plans for further iperf3
releases, and ESnet will be providing a very limited amount of
resources for support and development, going forward. However, ESnet
could issue new iperf3 releases to deal with security issues or
high-impact bug fixes.
For more information see: http://software.es.net/iperf
Source code and issue tracker: https://github.com/esnet/iperf
Obtaining iperf3
----------------
Downloads of iperf3 are available at:
http://downloads.es.net/pub/iperf/
To check out the most recent code, clone the git repository at:
https://github.com/esnet/iperf.git
Building iperf3
---------------
### Prerequisites: ###
None.
### Building ###
./configure; make; make install
(Note: If configure fails, try running `./bootstrap.sh` first)
Invoking iperf3
---------------
iperf3 includes a manual page listing all of the command-line options.
The manual page is the most up-to-date reference to the various flags and parameters.
For sample command line usage, see:
http://fasterdata.es.net/performance-testing/network-troubleshooting-tools/iperf-and-iperf3/
Using the default options, iperf is meant to show typical well
designed application performance. 'Typical well designed application'
means avoiding artificial enhancements that work only for testing
(such as splice()'ing the data to /dev/null). iperf does also have
flags for 'extreme best case' optimizations but they must be
explicitly activated.
These flags include:
-Z, --zerocopy use a 'zero copy' sendfile() method of sending data
-A, --affinity n/n,m set CPU affinity
Bug Reports
-----------
Before submitting a bug report, please make sure you're running the
latest version of the code, and confirm that your issue has not
already been fixed. Then submit to the iperf3 issue tracker on
GitHub:
https://github.com/esnet/iperf/issues
In your issue submission, please indicate the version of iperf3 and
what platform you're trying to run on (provide the platform
information even if you're not using a supported platform, we
*might* be able to help anyway). Exact command-line arguments will
help us recreate your problem. If you're getting error messages,
please include them verbatim if possible, but remember to sanitize any
sensitive information.
If you have a question about usage or about the code, please do *not*
submit an issue. Please use one of the mailing lists for that.
Changes from iperf 2.x
----------------------
New options:
-V, --verbose more detailed output than before
-J, --json output in JSON format
-Z, --zerocopy use a 'zero copy' sendfile() method of sending data
-O, --omit N omit the first n seconds (to ignore slowstart)
-T, --title str prefix every output line with this string
-F, --file name xmit/recv the specified file
-A, --affinity n/n,m set CPU affinity (Linux and FreeBSD only)
-k, --blockcount #[KMG] number of blocks (packets) to transmit (instead
of -t or -n)
-L, --flowlabel set IPv6 flow label (Linux only)
Changed flags:
-C, --linux-congestion set congestion control algorithm (Linux only)
(-Z in iperf2)
Deprecated options:
Not planning to support these iperf2 flags. If you really miss these
options, please submit a request in the issue tracker:
-d, --dualtest Do a bidirectional test simultaneously
-r, --tradeoff Do a bidirectional test individually
-T, --ttl time-to-live, for multicast (default 1)
-x, --reportexclude [CDMSV] exclude C(connection) D(data) M(multicast)
S(settings) V(server) reports
-y, --reportstyle C report as a Comma-Separated Values
Also deprecated is the ability to set the options via environment
variables.
Known Issues
------------
* UDP performance: Some problems have been noticed with iperf3 on the
ESnet 100G testbed at high UDP rates (above 10Gbps). The symptom is
that on any particular run of iperf3 the receiver reports a loss rate
of about 20%, regardless of the -b option used on the client side.
This problem appears not to be iperf3-specific, and may be due to the
placement of the iperf3 process on a CPU and its relation to the
inbound NIC. In some cases this problem can be mitigated by an
appropriate use of the CPU affinity (-A) option. (Issue #55)
* The -Z flag sometimes causes the iperf3 client to hang on OSX.
(Issue #129)
* When specifying the socket buffer size using the "-w" flag on Linux, Linux
doubles the value you pass in. (You can see this using iperf3's debug flag).
But then the CWND does not actually ramp up to the doubled value, but only
to about 75% of the doubled value. This appears to be by design.
* Although the "-w" flag is documented as setting the (TCP) window
size, it is also used to set the socket buffer size. This has been
shown to be helpful with high-bitrate UDP tests.
* On some platforms, it might be necessary to invoke "ldconfig"
manually after doing a "make install" before the iperf3 executable can
find its shared library. (Issue #153)
* The results printed on the server side at the end of a test do not
correctly reflect the client-side measurements. This is due to the
ordering of computing and transferring results between the client
and server. (Issue #293)
* The server could have a very short measurement reporting interval at
the end of a test (particularly a UDP test), containing few or no
packets. This issue is due to an artifact of timing between the
client and server. (Issue #278)
Links
-----
This section lists links to user-contributed Web pages regarding
iperf3. ESnet and Lawrence Berkeley National Laboratory bear no
responsibility for the content of these pages.
* Installation instructions for Debian Linux (by Cameron Camp
<cameron@ivdatacenter.com>):
http://cheatsheet.logicalwebhost.com/iperf-network-testing/
Copyright
---------
iperf, Copyright (c) 2014-2016, The Regents of the University of
California, through Lawrence Berkeley National Laboratory (subject
to receipt of any required approvals from the U.S. Dept. of
Energy). All rights reserved.
If you have questions about your rights to use or distribute this
software, please contact Berkeley Lab's Technology Transfer
Department at TTD@lbl.gov.
NOTICE. This software is owned by the U.S. Department of Energy.
As such, the U.S. Government has been grante
没有合适的资源?快使用搜索试试~ 我知道了~
iperf-3.1.3.tar.gz
需积分: 50 64 下载量 177 浏览量
2018-12-17
15:29:53
上传
评论 1
收藏 534KB GZ 举报
温馨提示
共92个文件
c:21个
h:15个
rst:7个
iperf-3.1.3.tar.gz
资源推荐
资源详情
资源评论
收起资源包目录
iperf-3.1.3.tar.gz (92个子文件)
iperf-3.1.3
.gitignore 336B
README.md 9KB
test_commands.sh 1KB
bootstrap.sh 2KB
aclocal.m4 366KB
INSTALL 9KB
docs
news.rst 6KB
conf.py 8KB
index.rst 2KB
_esnet
README.rst 3KB
static
logo-esnet-name.png 12KB
esnet.css 2KB
logo-esnet-ball.png 3KB
logo-esnet.png 60KB
icon-github.png 2KB
favicon.ico 3KB
logo-esnet-ball-sm.png 3KB
LICENSE 1KB
templates
navbar.html 2KB
relations.html 712B
layout.html 4KB
deploy.sh 407B
dev.rst 10KB
obtaining.rst 2KB
Makefile 7KB
building.rst 815B
invoking.rst 6KB
examples
mis.c 1KB
mic.c 2KB
Makefile.in 21KB
Makefile.am 269B
LICENSE 12KB
configure 442KB
Makefile.in 25KB
src
iperf_locale.h 5KB
iperf3.1 6KB
t_uuid.c 2KB
iperf_sctp.c 14KB
main.c 5KB
net.c 11KB
timer.c 6KB
iperf_locale.c 19KB
timer.h 3KB
iperf_client_api.c 12KB
net.h 2KB
t_units.c 3KB
iperf_tcp.h 2KB
iperf_api.h 15KB
iperf.h 11KB
iperf_util.h 2KB
cjson.h 8KB
iperf_util.c 9KB
iperf_api.c 94KB
iperf_tcp.c 14KB
cjson.c 28KB
Makefile.in 86KB
iperf_server_api.c 18KB
iperf_config.h.in 2KB
units.c 8KB
flowlabel.h 3KB
version.h.in 1KB
iperf_udp.c 11KB
iperf_udp.h 2KB
portable_endian.h 4KB
iperf_error.c 12KB
tcp_window_size.h 1KB
queue.h 18KB
Makefile.am 3KB
t_timer.c 2KB
units.h 2KB
tcp_window_size.c 4KB
libiperf.3 3KB
iperf_sctp.h 2KB
tcp_info.c 6KB
contrib
iperf3_to_gnuplot.py 2KB
README.txt 334B
iperf3.gp 1002B
configure.ac 5KB
config
missing 7KB
ltmain.sh 317KB
compile 7KB
mkinstalldirs 3KB
install-sh 14KB
depcomp 23KB
config.guess 45KB
test-driver 4KB
config.sub 35KB
ax_lib_socket_nsl.m4 1KB
RELEASE_NOTES 13KB
make_release 1KB
iperf3.spec.in 3KB
Makefile.am 23B
共 92 条
- 1
资源评论
tianmen431906
- 粉丝: 4
- 资源: 70
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
最新资源
- Screenshot_20240427_031602.jpg
- 网页PDF_2024年04月26日 23-46-14_QQ浏览器网页保存_QQ浏览器转格式(6).docx
- 直接插入排序,冒泡排序,直接选择排序.zip
- 在排序2的基础上,再次对快排进行优化,其次增加快排非递归,归并排序,归并排序非递归版.zip
- 实现了7种排序算法.三种复杂度排序.三种nlogn复杂度排序(堆排序,归并排序,快速排序)一种线性复杂度的排序.zip
- 冒泡排序 直接选择排序 直接插入排序 随机快速排序 归并排序 堆排序.zip
- 课设-内部排序算法比较 包括冒泡排序、直接插入排序、简单选择排序、快速排序、希尔排序、归并排序和堆排序.zip
- Python排序算法.zip
- C语言实现直接插入排序、希尔排序、选择排序、冒泡排序、堆排序、快速排序、归并排序、计数排序,并带图详解.zip
- 常用工具集参考用于图像等数据处理
资源上传下载、课程学习等过程中有任何疑问或建议,欢迎提出宝贵意见哦~我们会及时处理!
点击此处反馈
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功