96 lines
4.1 KiB
Plaintext
96 lines
4.1 KiB
Plaintext
Subject: iperf3 status, April 2017
|
|
|
|
This is the first of a series of (maybe periodic?) updates about
|
|
iperf3 development:
|
|
|
|
State of the iperf3 World, as seen from ESnet...
|
|
------------------------------------------------
|
|
|
|
iperf3 was originally written to be a "better", more maintainable
|
|
follow-on to iperf2. This was seen to be necessary to fill the
|
|
requirements for the perfSONAR project (http://www.perfsonar.net).
|
|
|
|
In the past few years, iperf2 development has been restarted by Bob
|
|
McMahon of Broadcom. He (and other contributors) have fixed a number
|
|
of problems with iperf2 and added some new features
|
|
(https://sourceforge.net/projects/iperf2/). We're happy to observe
|
|
that iperf2 is once again under active development, and we have
|
|
started discussing ways in which these two projects could productively
|
|
interact.
|
|
|
|
We note that iperf3 lacks several features found in iperf2, for
|
|
example multicast tests, bidirectional tests, multi-threading, and
|
|
official Windows support. Given the active state of iperf2
|
|
development and maintenance, we feel that the needs of users requiring
|
|
such functionality are best met by using a recent version of iperf2
|
|
instead of waiting for them to be backported or reimplemented in
|
|
iperf3.
|
|
|
|
ESnet's main interest in iperf3 is for testing high-performance
|
|
Research and Education (R&E) networks, especially as a part of the
|
|
perfSONAR toolkit. iperf3 can be useful in other circumstances as
|
|
well, but high-speed R&E network performance testing will remain the
|
|
primary use case. (Much of iperf2's recent development
|
|
has focused on the use of UDP for end-to-end latency testing on a
|
|
broad range of platforms, although it too is useful for many other
|
|
testing scenarios.)
|
|
|
|
iperf3 Support
|
|
--------------
|
|
|
|
We're trying to work down the support backlog for iperf3. To that
|
|
end, we've been aggressively triaging iperf3 issues in the issue
|
|
tracker on GitHub. Over the past several weeks, we've gone from about
|
|
180 open issues to less than 75. A number of these issues were user
|
|
questions, not bug reports or enhancement requests. We're now
|
|
discouraging the use of the iperf3 issue tracker for questions.
|
|
Instead we'd like users to either use the mailing list
|
|
(iperf-dev@google-groups.com) or to look to various question sites on
|
|
the Internet such as Stack Overflow (http://www.stackoverflow.com).
|
|
|
|
We're happy to accept enhancement requests, although it should be
|
|
noted that ESnet's time commitments to iperf3 are somewhat limited and
|
|
we need to prioritize our work to match our own requirements. We have
|
|
begun using the "Help Wanted" label in the issue tracker on GitHub to
|
|
indicate requests we agree with (or at least don't object to), but
|
|
which we don't have the time to work on ourselves. These are good
|
|
candidates for someone in the community to work on and submit as a
|
|
pull request.
|
|
|
|
Pull requests are still encouraged, as long as they're compatible with
|
|
ESnet's goals and requirements for iperf3. If you're contemplating a
|
|
code change that would have a major, fundamental change on the iperf3
|
|
architecture, we strongly encourage discussion with the iperf3
|
|
maintainers before doing a significant amount of work.
|
|
|
|
Some of the above considerations are now documented in GitHub
|
|
templates that we've recently installed for new issues, pull requests,
|
|
and contribution guidelines.
|
|
|
|
To make it easier for new users with common questions, we have created
|
|
a Frequently Asked Questions (FAQ) list, which is now available on the
|
|
iperf3 Web site, at:
|
|
|
|
http://software.es.net/iperf/faq.html
|
|
|
|
Future Plans
|
|
------------
|
|
|
|
In the near-term, we're planning another iperf3 release that will
|
|
include some recently added changes. Because some of the changes are
|
|
rather large, we're considering basing this release off the mainline
|
|
which would make it the first 3.2 release, rather than try to backport
|
|
these changes and make another "bugfix" 3.1 release. No decisions
|
|
have been made yet.
|
|
|
|
The main changes (already on the master branch) are authentication
|
|
(#517), a more fine-grained pacing timer (#460), and some portability
|
|
fixes. We'd appreciate any testing and feedback that users in the
|
|
community could give on these.
|
|
|
|
Thanks for your interest and support of iperf3,
|
|
|
|
Bruce Mah
|
|
Software Engineering Group
|
|
ESnet
|