How to use iperf3 in multithreaded mode: a complete guide

  • iperf3 allows you to measure network performance with multiple simultaneous flows.
  • Multi-threaded mode optimizes bandwidth usage on high-speed networks.
  • It is compatible with Windows, Linux and macOS and supports TCP, UDP and SCTP protocols.
  • Results include bandwidth, jitter, and packet loss.

Example of using iperf3 in multi-thread mode

When it comes to measuring the performance of a network, hyperf3 It is presented as one of the most widely used tools by system administrators and technology enthusiasts. This program allows you to perform data transfer speed tests between two devices, which is especially useful in corporate networks and environments where connectivity is a key factor. For more information on performance optimization, you can consult how to improve performance.

One of the most relevant aspects of iperf3 is its ability to work in multi-thread mode, allowing testing with multiple data streams simultaneously. This is essential when looking to evaluate performance on networks high speed, such as those with 10 Gbps or higher. In this article, we'll explore in-depth how to use iperf3 in this mode, including its features, configuration, and best practices for achieving accurate results.

What is iperf3 and what is it used for?

hyperf3 is an open source tool designed to measure the maximum bandwidth achievable between two devices connected via an IP network. It is widely used for performance testing in local networks (LAN), wide area networks (WAN) and even on WiFi connections. In environments where flexibility is needed, such as with the Raspberry Pi Compute Module 5, iperf3 can be a key tool.

Unlike other similar tools, iperf3 allows the adjustment of various fundamental parameters, which makes it possible customize tests to adapt them to the user's specific needs. These parameters include:

  • Choosing the transmission protocol between TCP, UDP and SCTP.
  • Definition of TCP window size.
  • Configuration of the amount of data to transmit.
  • Analysis of the jitter and packet loss on UDP connections.
  • Run tests with multiple simultaneous connections.

Main features of multi-thread mode in iperf3

Version 3.16 of iperf3 introduced the support for multi-threading, allowing multiple data streams to be distributed across different processor cores. This is especially useful in high-speed network environments. high speed, where a single connection may not be enough to saturate the available bandwidth. If you're interested in more details about high-performance devices, we recommend reading about the AMD Versal RF Adaptive SoCs.

Benefits of multi-thread mode include:

  • Higher performance: Multi-core hardware is better utilized.
  • More accurate results: Better simulates real traffic loads.
  • Bidirectional testing: Allows you to evaluate the speed in both directions simultaneously.

iperf3 Command Interface

How to install iperf3 on different operating systems

Before using iperf3, you must install it on the devices that will be used in performance testing. Here's how to do this on the most common systems:

Installation on Windows

To install iperf3 on Windows, follow these steps:

  • Download the official package from iperf.fr.
  • Unzip the ZIP file to the desired location.
  • Open a command window (cmd) and navigate to the folder where the executable is located (iperf3.exe).

Installation on Linux and macOS

On most Linux distributions and macOS, iperf3 is available in the official repositories:

  • On Debian or Ubuntu: sudo apt-get install iperf3
  • On CentOS or RHEL: sudo yum install iperf3
  • On macOS: brew install iperf3

Running iperf3 in multi-thread mode

To perform multi-threading tests, we must first start iperf3 in server mode on one of the machines:

iperf3 -s

Then, from the client machine, we run the following command to activate multiple data streams:

iperf3 -c [IP_SERVIDOR] -P 4

Where:

  • -c [IP_SERVIDOR] defines the server IP.
  • -P 4 indicates that 4 parallel connections will be used.

To perform a test in both directions at the same time, we use:

iperf3 -c [IP_SERVIDOR] -P 4 -d

Results analysis

The results obtained in iperf3 include key information such as:

  • Bandwidth: Measured in Mbps or Gbps.
  • Jitter: Delay in package delivery.
  • Losses: Number of packages that did not arrive correctly.

These values ​​allow to evaluate the status of the network and detect possible congestion or latency issues. Using iperf3 in multi-thread mode is an excellent strategy for evaluate the performance of high-speed networks. Thanks to its ability to distribute loads across multiple connections, more accurate and realistic measurements are obtained. With simple installation and advanced configuration options, this tool becomes an essential resource for system administrators and networking enthusiasts. For more useful information, you can check out our guide on efficient network management.

Rasperry Pi 5
Related article:
Raspberry Pi 5: the long-awaited SBC has arrived, with more performance and the same size

Be the first to comment

Leave a Comment

Your email address will not be published. Required fields are marked with *

*

*

  1. Responsible for the data: Miguel Ángel Gatón
  2. Purpose of the data: Control SPAM, comment management.
  3. Legitimation: Your consent
  4. Communication of the data: The data will not be communicated to third parties except by legal obligation.
  5. Data storage: Database hosted by Occentus Networks (EU)
  6. Rights: At any time you can limit, recover and delete your information.