iperf-3.21 2026-04-09
-
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-devoption is now supported on macOS (PR #1945). -
Support has been added on macOS for the equivalent of the
tcp_infostructure (#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-mssoption 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_ASYNCHRONOUStoPTHREAD_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.servicefile 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