iperf 3.16 uses multiple threads to serve parallel tests for improved throughput on high-speed links. It also includes support for OpenSSL 3. More details are provided in the release notes.
iperf 3.15 fixes that could cause an iperf3 server process to hang waiting for input on the control connection. For more information, please see:
This version of iperf3 also includes several other minor bug fixes, which are summarized in the release notes.
iperf 3.14 fixes a memory allocation hazard that allowed a remote user to crash an iperf3 process (server or client).
More information on this specific fix can be found at:
This version of iperf3 also includes a number of minor bug fixes, which are summarized in the release notes.
iperf 3.13 is primarily a bugfix release.
iperf 3.12 is principally a bugfix release, although it includes an updated version of cJSON and adds a few new features.
iperf 3.11 is principally a bugfix release. Also GitHub Discussions are now supported.
iperf 3.10.1 fixes a problem with the configure script that made it make not work correctly in some circumstances. It is functionally identical to iperf 3.10.
iperf 3.10 is principally a bugfix release. A few new features have
been added (
--dont-fragment). More information on
these new features can be found in the release notes.
iperf 3.9 adds a
--timestamps flag, which prepends a timestamp to
each output line. A new
--server-bitrate-limit flag has been
added as a server command-line argument, and allows an iperf3 server
to enforce a maximum throughput rate. More information on these new
features can be found in the release notes.
iperf 3.8.1 fixes a regression with
make install in iperf 3.8. It
is otherwise identical to iperf 3.8.
iperf 3.8 contains minor bugfixes and enhancements.
iperf 3.7 adds the
--bidir flag for bidirectional tests, includes
some minor enhancements, and fixes a number of bugs. More details can
be found in the release notes.
Note: Documentation for the
--bidir flag was inadvertently
omitted from the manual page. This will be fixed in a future
iperf 3.6 adds the
options and fixes some minor bugs.
iperf 3.5 fixes a bug that could over-count data transfers (and hence measured bitrate).
iperf 3.4 fixes a number of minor bugs and adds a few enhancements.
New minor release of iperf 3.3, fixing a number of minor bugs.
New minor release of iperf 3.2, with new features, bugfixes, and enhancements.
This version of iperf3 contains two documentation fixes, but is otherwise identical to the prior release.
This version of iperf3 contains two minor fixes. Notably, one of them unbreaks JSON output with UDP tests.
This version of iperf3 makes some improvements to the fair-queue-based pacing and improves the selection of the default UDP packet size. Users who use either of these aspects of iperf3 are encourage to review the release notes for this version.
This release fixes a few minor bugs, including a (non-security-impacting) buffer overflow fix ported from upstream cjson.
These releases address a security issue that could cause a crash of an iperf3 process (it could theoretically lead to a remote code execution). Although the risk for common use cases is believed to be low, all users are encouraged to update to these versions or newer as soon as possible. More information on the security vulnerability can be found in the following ESnet Software Security Advisory:
iperf-3.1.3 also includes support for fair-queueing, per-socket based pacing of tests on platforms that support it (currently recent Linux distributions), as well as several other fixes.
This release fixes a couple of minor bugs, including one that results in invalid JSON being emitted for UDP tests.
This release fixes a few minor bugs.
Beginning with the release of iperf 3.1, ESnet plans to support iperf3 in “maintenance mode”. At this point, we have 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.
Requests for support, enhancements, and questions should best be directed to the iperf-dev mailing list. ESnet would be open to adding project members/committers from the community, in case there are developers who are interested in doing more active work with iperf3 and/or supporting the user base.
This release adds support for SCTP on supported platforms, better feature detection on FreeBSD, better compatibility with various platforms, and a number of bug fixes.
This maintenance release adds a -1 flag to make the iperf3 execute a single test and exit, needed for an upcoming bwctl release. A few other bugs are also fixed.
This maintenance release fixes building on MacOS X Yosemite, as well as making the -w option work correctly with UDP tests.
This maintenance release fixes an issue for a situation in which attempting a UDP test with pathologically large (and illegal) packet sizes could put the iperf3 server in a state where it would stop accepting connections from clients, thus causing the clients to crash when interrupted.
This maintenance release is functionally identical to 3.0.7. It incorporates updated license verbage and a minor compilation fix.
This maintenance release fixes several minor bugs. Of particular note:
A bug that caused some problems with bwctl / perfSONAR has been fixed.
A bug that made it possible to disrupt existing, running tests has been fixed.
This maintenance release includes the following bug fixes:
Several problems with the -B option have been fixed. Also, API calls have been added to libiperf to extend this functionality to API clients.
Some portability fixes for OpenBSD and Solaris have been merged from the mainline.
As always, more details can be found in the
RELNOTES.md file in
the source distribution.
iperf3 project documentation can now be found at:
This is a GitHub Pages site. In an ongoing series of steps, content will be migrated from the iperf3 wiki to GitHub Pages.
This is the third maintenance release of iperf 3, with few more enhancements and bug fixes. Highlights:
A timing issue which caused measurement intervals to be wrong with TCP tests on lossy networks has been fixed.
It is now possible to get (most of) the server-side output at
the client by using the
A number of bugs with
--json output have been fixed.
A more extensive list of changes can always be found in the
RELNOTES.md file in the source distribution.
Note: An iperf-3.0.4 release was planned and tagged, but not officially released.
iperf3 downloads are now hosted on a new server at ESnet:
Going forward, new releases will be made available in this directory. Older releases will, at least for now, continue to also be available at the previous location.
This is the second maintenance release of iperf 3.0, containing a few bug fixes and enhancements, notably:
The structure of the JSON output is more consistent between the cases of one stream and multiple streams.
The example programs once again build correctly.
A possible buffer overflow related to error output has been fixed. (This is not believed to be exploitable.)
More information on changes can be found in the
file in the source distribution.
Note: Due to a mistake in the release process, the distribution tarball referred to above is actually not compressed, despite its
.tar.gz extension. Instead it is an uncompressed tar archive. The file checksum is correct, as are the file contents.
This version is a maintenance release that fixes a number of bugs, many reported by users, adds a few minor enhancements, and tracks the migration of the iperf3 project to GitHub. Of particular interest:
Build / runtime fixes for CentOS 5, MacOS 10.9, and FreeBSD.
TCP snd_cwnd output on Linux in the default output format.
libiperf is now built as both a shared and static library; by default, the iperf3 binary links to the shared library.
More information on changes can be found in the
file in the source distribution.
The new project page can be found at:
During development, there were various distributions of the source code unofficially released carrying a 3.0.0 version number. Because of the possibility for confusion, this first public release of iperf3 was numbered 3.0.1.