Skip to content

Commit

Permalink
Merge branch 'master' into output-json-stream
Browse files Browse the repository at this point in the history
  • Loading branch information
swlars authored Dec 14, 2023
2 parents a09a076 + e07eb70 commit ccdec72
Show file tree
Hide file tree
Showing 74 changed files with 11,778 additions and 6,898 deletions.
19 changes: 10 additions & 9 deletions .github/CONTRIBUTING.md
Original file line number Diff line number Diff line change
Expand Up @@ -14,19 +14,20 @@ FreeBSD, and macOS. Support may be provided on a best-effort basis to
other UNIX-like platforms. We cannot provide support for building
and/or running iperf3 on Windows, iOS, or Android.

Before asking for help, please use your favorite search engine or
questions site (such as Stack Overflow) to see if your question might
have been asked (and maybe even answered) before.
https://fasterdata.es.net/ has some information on the use of various
bandwidth measurement tools, including iperf3. The iperf3
documentation Web site at http://software.es.net/iperf/ contains
various bits of helpful information, including a list of
Before asking for help, please check with your favorite search engine
or the
[iperf3 Discussions site on GitHub](http://github.com/esnet/iperf/discussions)
to see if your question might have been asked (and maybe even
answered) before. https://fasterdata.es.net/ has some information on
the use of various bandwidth measurement tools, including iperf3. The
iperf3 documentation Web site at http://software.es.net/iperf/
contains various bits of helpful information, including a list of
[frequently-asked questions](http://software.es.net/iperf/faq.html).

We specifically discourage the use of the issue tracker on the iperf3
GitHub project page for asking questions. Questions posted in the
form of issues may go unanswered. Please use a questions site
such as [Stack Overflow](http://www.stackoverflow.com)
form of issues may go unanswered. Please use the
[iperf3 Discussions site on GitHub](http://github.com/esnet/iperf/discussions)
to ask questions of the community or
alternatively use the iperf3 mailing list at
[email protected] (posting requires joining the list).
Expand Down
15 changes: 7 additions & 8 deletions .github/ISSUE_TEMPLATE.md
Original file line number Diff line number Diff line change
@@ -1,9 +1,10 @@
_NOTE: The iperf3 issue tracker is for registering bugs, enhancement
requests, or submissions of code. It is not a means for asking
questions about building or using iperf3. Those are best directed
towards the iperf3 mailing list at [email protected] or
question sites such as Stack Overflow
(http://www.stackoverflow.com/). A list of frequently-asked questions
towards the Discussions section for this project at
https://github.com/esnet/iperf/discussions
or to the iperf3 mailing list at [email protected].
A list of frequently-asked questions
regarding iperf3 can be found at http://software.es.net/iperf/faq.html._

# Context
Expand All @@ -23,7 +24,9 @@ iperf3 on Windows, iOS, or Android._
libraries, cross-compiling, etc.):

_Please fill out one of the "Bug Report" or "Enhancement Request"
sections, as appropriate._
sections, as appropriate. Note that submissions of bug fixes, new
features, etc. should be done as a pull request at
https://github.com/esnet/iperf/pulls_

# Bug Report

Expand All @@ -35,8 +38,6 @@ sections, as appropriate._

* Possible Solution

_Please submit patches or code changes as a pull request._

# Enhancement Request

* Current behavior
Expand All @@ -45,5 +46,3 @@ _Please submit patches or code changes as a pull request._

* Implementation notes

_If submitting a proposed implementation of an enhancement request,
please use the pull request mechanism._
35 changes: 35 additions & 0 deletions .github/workflows/test.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,35 @@
name: test
on: [push, pull_request]
jobs:
cppcheck-test:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v3
- name: install dependencies
run: |
sudo apt-get -y update && sudo apt-get install -y cppcheck && \
cppcheck . --force --inline-suppr
build-test-latest:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v3
- name: install dependencies
run: |
sudo apt-get -y update && sudo apt-get install -y build-essential
- name: build
run: |
./configure && make && make check
timeout 300 src/iperf3 -s &
./test_commands.sh localhost
build-test-ubuntu-20_04:
runs-on: ubuntu-20.04
steps:
- uses: actions/checkout@v3
- name: install dependencies
run: |
sudo apt-get -y update && sudo apt-get install -y build-essential
- name: build
run: |
./configure && make && make check
timeout 300 src/iperf3 -s &
./test_commands.sh localhost
1 change: 1 addition & 0 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -30,3 +30,4 @@ examples/.libs
examples/Makefile
examples/mic
examples/mis
.vscode/
13 changes: 0 additions & 13 deletions .travis.yml

This file was deleted.

4 changes: 2 additions & 2 deletions LICENSE
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
"iperf, Copyright (c) 2014-2021, The Regents of the University of California,
through Lawrence Berkeley National Laboratory (subject to receipt of any
"iperf, Copyright (c) 2014-2023, 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."

Redistribution and use in source and binary forms, with or without
Expand Down
26 changes: 17 additions & 9 deletions Makefile.in
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
# Makefile.in generated by automake 1.16.3 from Makefile.am.
# Makefile.in generated by automake 1.16.5 from Makefile.am.
# @configure_input@

# Copyright (C) 1994-2020 Free Software Foundation, Inc.
# Copyright (C) 1994-2021 Free Software Foundation, Inc.

# This Makefile.in is free software; the Free Software Foundation
# gives unlimited permission to copy and/or distribute it,
Expand Down Expand Up @@ -90,6 +90,7 @@ host_triplet = @host@
subdir = .
ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
am__aclocal_m4_deps = $(top_srcdir)/config/ax_check_openssl.m4 \
$(top_srcdir)/config/ax_pthread.m4 \
$(top_srcdir)/config/iperf_config_static_bin.m4 \
$(top_srcdir)/configure.ac
am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
Expand Down Expand Up @@ -154,18 +155,16 @@ am__define_uniq_tagged_files = \
unique=`for i in $$list; do \
if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
done | $(am__uniquify_input)`
ETAGS = etags
CTAGS = ctags
CSCOPE = cscope
DIST_SUBDIRS = $(SUBDIRS)
am__DIST_COMMON = $(srcdir)/Makefile.in $(srcdir)/iperf3.spec.in \
$(top_srcdir)/config/compile $(top_srcdir)/config/config.guess \
$(top_srcdir)/config/config.sub \
$(top_srcdir)/config/install-sh $(top_srcdir)/config/ltmain.sh \
$(top_srcdir)/config/missing \
$(top_srcdir)/config/mkinstalldirs INSTALL config/compile \
config/config.guess config/config.sub config/install-sh \
config/ltmain.sh config/missing config/mkinstalldirs
$(top_srcdir)/config/mkinstalldirs INSTALL README.md \
config/compile config/config.guess config/config.sub \
config/install-sh config/ltmain.sh config/missing \
config/mkinstalldirs
DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
distdir = $(PACKAGE)-$(VERSION)
top_distdir = $(distdir)
Expand Down Expand Up @@ -223,6 +222,8 @@ CCDEPMODE = @CCDEPMODE@
CFLAGS = @CFLAGS@
CPP = @CPP@
CPPFLAGS = @CPPFLAGS@
CSCOPE = @CSCOPE@
CTAGS = @CTAGS@
CYGPATH_W = @CYGPATH_W@
DEFS = @DEFS@
DEPDIR = @DEPDIR@
Expand All @@ -233,8 +234,10 @@ ECHO_C = @ECHO_C@
ECHO_N = @ECHO_N@
ECHO_T = @ECHO_T@
EGREP = @EGREP@
ETAGS = @ETAGS@
EXEEXT = @EXEEXT@
FGREP = @FGREP@
FILECMD = @FILECMD@
GREP = @GREP@
INSTALL = @INSTALL@
INSTALL_DATA = @INSTALL_DATA@
Expand Down Expand Up @@ -272,6 +275,10 @@ PACKAGE_URL = @PACKAGE_URL@
PACKAGE_VERSION = @PACKAGE_VERSION@
PATH_SEPARATOR = @PATH_SEPARATOR@
PKG_CONFIG = @PKG_CONFIG@
PTHREAD_CC = @PTHREAD_CC@
PTHREAD_CFLAGS = @PTHREAD_CFLAGS@
PTHREAD_CXX = @PTHREAD_CXX@
PTHREAD_LIBS = @PTHREAD_LIBS@
RANLIB = @RANLIB@
SED = @SED@
SET_MAKE = @SET_MAKE@
Expand All @@ -290,6 +297,7 @@ am__leading_dot = @am__leading_dot@
am__quote = @am__quote@
am__tar = @am__tar@
am__untar = @am__untar@
ax_pthread_config = @ax_pthread_config@
bindir = @bindir@
build = @build@
build_alias = @build_alias@
Expand Down Expand Up @@ -322,6 +330,7 @@ pdfdir = @pdfdir@
prefix = @prefix@
program_transform_name = @program_transform_name@
psdir = @psdir@
runstatedir = @runstatedir@
sbindir = @sbindir@
sharedstatedir = @sharedstatedir@
srcdir = @srcdir@
Expand Down Expand Up @@ -484,7 +493,6 @@ cscopelist-am: $(am__tagged_files)
distclean-tags:
-rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags
-rm -f cscope.out cscope.in.out cscope.po.out cscope.files

distdir: $(BUILT_SOURCES)
$(MAKE) $(AM_MAKEFLAGS) distdir-am

Expand Down
48 changes: 18 additions & 30 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -18,7 +18,7 @@ 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,
Primary development for iperf3 takes place on Ubuntu Linux, FreeBSD,
and macOS. 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.
Expand All @@ -30,6 +30,10 @@ For more information see: https://software.es.net/iperf

Source code and issue tracker: https://github.com/esnet/iperf

Discussion forums: https://github.com/esnet/iperf/discussions

Reporting security vulnerabilities: [email protected]

Obtaining iperf3
----------------

Expand Down Expand Up @@ -60,7 +64,7 @@ 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:
For sample command line usage, see:

https://fasterdata.es.net/performance-testing/network-troubleshooting-tools/iperf/

Expand All @@ -76,8 +80,8 @@ These flags include:
-Z, --zerocopy use a 'zero copy' sendfile() method of sending data
-A, --affinity n/n,m set CPU affinity

Bug Reports
-----------
Bug and Security 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
Expand All @@ -97,36 +101,20 @@ 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.

If you suspect there is a potential security issue, please contact the
developers at:

[email protected]

Relation to iperf 2.x
---------------------

Note that iperf2 is no longer being developed by its original
maintainers. However, beginning in 2014, another developer began
fixing bugs and enhancing functionality, and generating releases of
iperf2. Both projects (as of late 2017) are currently being developed
actively, but independently. The continuing iperf2 development
Although iperf2 and iperf3 both measure network performance,
they are not compatible with each other.
The projects (as of mid-2021) are in active, but separate, development.
The continuing iperf2 development
project can be found at https://sourceforge.net/projects/iperf2/.

iperf3 contains a number of options and functions not present in
iperf2. In addition, some flags are changed from their iperf2
counterparts:

-C, --linux-congestion set congestion control algorithm (Linux only)
(-Z in iperf2)
--bidir bidirectional testing mode
(-d in iperf2)

Some iperf2 options are not available in iperf3:

-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 removed is the ability to set the options via environment
variables.

Known Issues
------------

Expand All @@ -149,7 +137,7 @@ responsibility for the content of these pages.
Copyright
---------

iperf, Copyright (c) 2014-2021, The Regents of the University of
iperf, Copyright (c) 2014-2023, 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.
Expand Down
Loading

0 comments on commit ccdec72

Please sign in to comment.