1iperf3: A TCP, UDP, and SCTP network bandwidth measurement tool 2================================================================ 3 4Summary 5------- 6 7iperf is a tool for active measurements of the maximum achievable 8bandwidth on IP networks. It supports tuning of various parameters 9related to timing, protocols, and buffers. For each test it reports 10the measured throughput / bitrate, loss, and other parameters. 11 12This version, sometimes referred to as iperf3, is a redesign of an 13original version developed at NLANR/DAST. iperf3 is a new 14implementation from scratch, with the goal of a smaller, simpler code 15base, and a library version of the functionality that can be used in 16other programs. iperf3 also has a number of features found in other tools 17such as nuttcp and netperf, but were missing from the original iperf. 18These include, for example, a zero-copy mode and optional JSON output. 19Note that iperf3 is *not* backwards compatible with the original iperf. 20 21Primary development for iperf3 takes place on CentOS Linux, FreeBSD, 22and macOS. At this time, these are the only officially supported 23platforms, however there have been some reports of success with 24OpenBSD, NetBSD, Android, Solaris, and other Linux distributions. 25 26iperf3 is principally developed by ESnet / Lawrence Berkeley National 27Laboratory. It is released under a three-clause BSD license. 28 29For more information see: https://software.es.net/iperf 30 31Source code and issue tracker: https://github.com/esnet/iperf 32 33Discussion forums: https://github.com/esnet/iperf/discussions 34 35Obtaining iperf3 36---------------- 37 38Downloads of iperf3 are available at: 39 40 https://downloads.es.net/pub/iperf/ 41 42To check out the most recent code, clone the git repository at: 43 44 https://github.com/esnet/iperf.git 45 46Building iperf3 47--------------- 48 49### Prerequisites: ### 50 51None. 52 53### Building ### 54 55 ./configure; make; make install 56 57(Note: If configure fails, try running `./bootstrap.sh` first) 58 59Invoking iperf3 60--------------- 61 62iperf3 includes a manual page listing all of the command-line options. 63The manual page is the most up-to-date reference to the various flags and parameters. 64 65For sample command line usage, see: 66 67https://fasterdata.es.net/performance-testing/network-troubleshooting-tools/iperf/ 68 69Using the default options, iperf is meant to show typical well 70designed application performance. "Typical well designed application" 71means avoiding artificial enhancements that work only for testing 72(such as splice()'ing the data to /dev/null). iperf does also have 73flags for "extreme best case" optimizations, but they must be 74explicitly activated. 75 76These flags include: 77 78 -Z, --zerocopy use a 'zero copy' sendfile() method of sending data 79 -A, --affinity n/n,m set CPU affinity 80 81Bug Reports 82----------- 83 84Before submitting a bug report, please make sure you're running the 85latest version of the code, and confirm that your issue has not 86already been fixed. Then submit to the iperf3 issue tracker on 87GitHub: 88 89https://github.com/esnet/iperf/issues 90 91In your issue submission, please indicate the version of iperf3 and 92what platform you're trying to run on (provide the platform 93information even if you're not using a supported platform, we 94*might* be able to help anyway). Exact command-line arguments will 95help us recreate your problem. If you're getting error messages, 96please include them verbatim if possible, but remember to sanitize any 97sensitive information. 98 99If you have a question about usage or about the code, please do *not* 100submit an issue. Please use one of the mailing lists for that. 101 102Relation to iperf 2.x 103--------------------- 104 105Although iperf2 and iperf3 both measure network performance, 106they are not compatible with each other. 107The projects (as of mid-2021) are in active, but separate, development. 108The continuing iperf2 development 109project can be found at https://sourceforge.net/projects/iperf2/. 110 111iperf3 contains a number of options and functions not present in 112iperf2. In addition, some flags are changed from their iperf2 113counterparts: 114 115 -C, --linux-congestion set congestion control algorithm (Linux only) 116 (-Z in iperf2) 117 --bidir bidirectional testing mode 118 (-d in iperf2) 119 120Some iperf2 options are not available in iperf3: 121 122 -r, --tradeoff Do a bidirectional test individually 123 -T, --ttl time-to-live, for multicast (default 1) 124 -x, --reportexclude [CDMSV] exclude C(connection) D(data) M(multicast) 125 S(settings) V(server) reports 126 -y, --reportstyle C report as a Comma-Separated Values 127 128Also removed is the ability to set the options via environment 129variables. 130 131Known Issues 132------------ 133 134A set of known issues is maintained on the iperf3 Web pages: 135 136https://software.es.net/iperf/dev.html#known-issues 137 138Links 139----- 140 141This section lists links to user-contributed Web pages regarding 142iperf3. ESnet and Lawrence Berkeley National Laboratory bear no 143responsibility for the content of these pages. 144 145* Installation instructions for Debian Linux (by Cameron Camp 146 <[email protected]>): 147 148 http://cheatsheet.logicalwebhost.com/iperf-network-testing/ 149 150Copyright 151--------- 152 153iperf, Copyright (c) 2014-2022, The Regents of the University of 154California, through Lawrence Berkeley National Laboratory (subject 155to receipt of any required approvals from the U.S. Dept. of 156Energy). All rights reserved. 157 158If you have questions about your rights to use or distribute this 159software, please contact Berkeley Lab's Technology Transfer 160Department at [email protected]. 161 162NOTICE. This software is owned by the U.S. Department of Energy. 163As such, the U.S. Government has been granted for itself and others 164acting on its behalf a paid-up, nonexclusive, irrevocable, 165worldwide license in the Software to reproduce, prepare derivative 166works, and perform publicly and display publicly. Beginning five 167(5) years after the date permission to assert copyright is obtained 168from the U.S. Department of Energy, and subject to any subsequent 169five (5) year renewals, the U.S. Government is granted for itself 170and others acting on its behalf a paid-up, nonexclusive, 171irrevocable, worldwide license in the Software to reproduce, 172prepare derivative works, distribute copies to the public, perform 173publicly and display publicly, and to permit others to do so. 174 175This code is distributed under a BSD style license, see the LICENSE 176file for complete information. 177