← Package directory
Available on winget

Install iPerf3

A TCP, UDP, and SCTP network bandwidth measurement tool.

Install with winget
winget install --id ar51an.iPerf3
Upgrade
winget upgrade --id ar51an.iPerf3
Uninstall
winget uninstall --id ar51an.iPerf3

About iPerf3

iperf is a tool for active measurement of the maximum achievable bandwidth on IP networks. It supports tuning of various parameters related to timing, protocols, and buffers. For each test it reports the measured throughput / bitrate, loss, and other parameters.

What's new in 3.21

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 tha...

Read release notes

Version history

Version Updated Notes
3.21 Unknown 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...
3.20 Unknown Notable user-visible changes - Millisecond-resolution representations have been added to JSON timestamps. (PR #1846) - The reorder_seen metric, where available, is now available in the JSON output. (PR #1278) - A divisio...
3.19.1 Unknown Notable user-visible changes - SECURITY NOTE: Thanks to Han Lee with Apple Information Security for finding and reporting several memory errors including a buffer overflow within the --skip-rx-copy option, and two memory...
3.19 Unknown Notable user-visible changes - iperf3 now supports the use of Multi-Path TCP (MPTCPv1) on Linux with the use of the --multipath flag. (PR #1661) - iperf3 now supports a --cntl-ka option to enable TCP keepalives on the co...
3.18 Unknown Notable user-visible changes - SECURITY NOTE: Thanks to Leonid Krolle Bi.Zone for discovering a JSON type security vulnerability that caused a segmentation fault in the server. (CVE-2024-53580) This has now been fixed. (...
3.17.1 Unknown Notable user-visible changes - Version number has been corrected. (#1699) Notable developer-visible changes - No longer signing tags