Measure the maximum throughput of a network link between two servers before deploying a streaming application
Diagnose network performance issues by running TCP and UDP bandwidth tests between machines
Benchmark a cloud or datacenter network connection to validate it meets expected performance
| esnet/iperf | 0xfa11/multiplayernetworkingresources | skeeto/endlessh | |
|---|---|---|---|
| Stars | 8,481 | 8,500 | 8,448 |
| Language | C | C | C |
| Setup difficulty | easy | easy | moderate |
| Complexity | 2/5 | 1/5 | 2/5 |
| Audience | ops devops | developer | ops devops |
Figures from each repo's GitHub metadata at analysis time.
Both machines need iperf3 installed, building from source uses the standard configure and make steps.
iperf3 is a command-line tool for measuring how fast data can be transferred across a network. You run it on two machines: one acts as the server and waits for connections, the other acts as the client and sends data. After the test finishes, it reports the actual throughput (how much data moved per second), packet loss, and related statistics. This helps network administrators and engineers understand whether a network link is performing as expected or whether something is limiting its speed. The tool supports three network protocols: TCP, which is the standard reliable protocol used by most internet traffic, UDP, which sacrifices reliability for speed and is used in video streaming and gaming, and SCTP, a less common protocol designed for reliability and multi-homing. Various parameters can be tuned, such as buffer sizes and test duration. Results can optionally be output as JSON, which makes it easier to feed into scripts or monitoring systems. iperf3 was built from scratch as a cleaner rewrite of the original iperf tool and is not compatible with it. It is developed primarily at ESnet and Lawrence Berkeley National Laboratory, and is used as a component in perfSONAR, a network measurement platform used by research and education networks worldwide. It also appears in various commercial networking products. Building it from source follows a standard configure, make, make install pattern. It runs on Linux, FreeBSD, and macOS, with community reports of success on Android and other platforms. The BSD license allows it to be used and redistributed freely, including in commercial settings.
iperf3 is a command-line tool that measures actual data transfer speed between two machines on a network, reporting throughput, packet loss, and related network performance stats.
Mainly C. The stack also includes C, TCP, UDP.
Use, copy, and redistribute freely including in commercial products, just keep the copyright notice.
Setup difficulty is rated easy, with roughly 30min to a first successful run.
Mainly ops devops.
This repo across BitVibe Labs
Verify against the repo before relying on details.