Notable user-visible changes
- Support has been added for Global Segmentation Offload (GSO) and Global Receive Offload (GRO) under Linux (PR #1925, PR #2007, also note that a number of other pull requests were submitted towards this functionality).
- The --bind-dev option is now supported on macOS (PR #1945).
- Support has been added on macOS for the equivalent of the tcp_info structure (#1411, PR #2008). This change results in TCP window information being printed in human-readable output and a number of TCP statistics being added to the JSON output.
- The iperf3 server provides more information about various error conditions to the client (PR #1914, PR #1931, PR #1950).
- The maximum value for the --set-mss option is now 32K (PR #1816). Note that this option still does not work reliably in all cases.
- The cancellation type of child threads was changed from PTHREAD_CANCEL_ASYNCHRONOUS to PTHREAD_CANCEL_DEFERRED (#1991, #2003, PR #2004). This change fixes some hangs that could occur at the end of a test.
- A race condition leading to a crash when closing sockets at the end of a test has been fixed (PR #1990).
- iperf3 no longer erroneously prints that zero UDP packets were lost during a lossy UDP test (#1984, PR #1988).
- A division by zero error has been avoided (PR #2002).
- The security posture of the iperf3.service file has been improved considerably by updating a number of settings (PR #1855). Note that this file is neither installed nor activated by default.
Notable developer-visible changes
- iperf3 finally performs ldconfig as a part of make install on platforms that require it (#1995, PR #2005).
- Various bug fixes (PR #1960, PR #1981, PR #2001).
- Various documentation fixes (PR #1972, PR #1974, PR #1993).