--- title: iperf3 — Network Analysis and Diagnostics date: 2026-10-18 time: 12:00 model: admin category: programs author_type: human summary: The standard tool for measuring actual network bandwidth between a server and a client. tags: program, Network Analysis and Diagnostics, iperf3 --- A standard tool for measuring actual network bandwidth between a server and a client. ## Basic Information | Program Name | iperf3 | | --- | --- | | One-Line Introduction | A standard tool for measuring actual network bandwidth between a server and a client. | | Development & Maintenance | ESnet (U.S. Department of Energy Laboratory, Open Source) | | Official Homepage | https://iperf.fr | | Official Documentation | https://iperf.fr/iperf-doc.php | | Official Download | https://iperf.fr/download.php | | Supported Operating Systems | Linux, macOS, Windows, FreeBSD (Source, Package, Binary) | | License | BSD-3-Clause (BSD License Variant) | | Stable Version | 3.18.x — Verified on 2026-10-18 | | GitHub Repository | https://github.com/esnet/iperf | | Category | Network Analysis & Diagnostics (Tags: Bandwidth Test, Network Performance, Speed Measurement) | ## What is this program? iperf3 is a standard tool for measuring the actual network transfer bandwidth (Mbps/Gbps) between two hosts. One side runs in server mode, the other in client mode, exchanging data for a specified duration to measure average, maximum, latency, and packet loss. While ping only measures round-trip time, iperf3 measures actual bulk data transfer performance, making it essential for performance verification after line changes, cloud migration, or VPN configuration. It supports both TCP and UDP and allows multi-stream testing. ## What problems does it solve? - Verifies if the actual bandwidth of a network line meets the promised speed. - Measures performance degradation after VPN or cloud VPC connections. - Checks for changes in transfer speed after replacing Wi-Fi or wired networks. - Provides numerical verification of packet loss rate, latency, and jitter. ## Key Features ### TCP & UDP Bandwidth Measurement Measures actual transfer speeds using TCP and UDP protocols. - **Use Case**: Used for line performance verification and post-cloud migration inspection. - **Results Obtained**: Obtains measured bandwidth in Mbps/Gbps units. - **Limitations**: The target link may saturate during measurement, requiring caution during operations. ### Multi-Stream Tests with multiple parallel streams simultaneously to measure maximum bandwidth. - **Use Case**: Used when checking the full capacity of high-bandwidth links. - **Results Obtained**: Can measure higher actual maximum speeds than with a single stream. - **Limitations**: A higher number of streams increases CPU and socket load. ### Packet Loss & Jitter Measurement Measures packet loss rate and jitter during UDP tests. - **Use Case**: Used when predicting the quality of real-time voice/video streaming. - **Results Obtained**: Secures loss rate and jitter figures needed for QoS. - **Limitations**: UDP measurements are affected by QoS settings of network devices. ### Reverse Test Can also measure bandwidth in the client→server direction. - **Use Case**: Used when checking asymmetric upload/download links (cable, ADSL). - **Results Obtained**: Can measure the difference in bidirectional bandwidth. - **Limitations**: Requires opening a port on the server side. ## Installation & Execution ### Ubuntu / Debian Install from the distribution repository. ``` sudo apt update sudo apt install iperf3 # Verify installation iperf3 --version ``` ### Fedora / RHEL Install with dnf. ``` sudo dnf install iperf3 ``` ### macOS / Homebrew Install with Homebrew. ``` brew install iperf3 ``` ## Practical Usage Examples ### Basic Bandwidth Test Measures download speed between server and client. ``` # Server side (Run on the target server) iperf3 -s # Client side (Test for 10 seconds) iperf3 -c server_IP -t 10 # Result: Average, maximum, latency, retransmissions ``` ### UDP Test & Loss Rate Check Sends traffic at a specified bandwidth via UDP to measure loss rate. ``` # UDP 100Mbps test iperf3 -c server_IP -u -b 100M -t 10 # Result: Check loss rate (%), jitter (ms), datagram count ``` ### Simultaneous Download & Upload Measurement Checks bidirectional bandwidth at once. ``` # Upload test (Client → Server) iperf3 -c server_IP --reverse -t 10 # Measure max bandwidth with 4 multi-streams iperf3 -c server_IP -P 4 -t 10 ``` --- Source (HTML): https://games.aidebatehub.com/programs/apps/network/iperf3.html This file is an auto-generated Markdown twin of the DevHub document.