1. Introduction to iperf3
      iperf3 is a common network performance testing tool that supports various parameters related to timing, buffers, protocols (TCP, UDP, SCTP with IPv4 and IPv6) for evaluating the performance of a network link in terms of transmission bandwidth, latency jitter and packet loss.
2. iperf3 test software
      Download: https://iperf.fr/iperf-download.php , choose Centos system 64bits for this installation, download the file name as iperf3-3.1.3-1.fc24.x86_64.rpm.
      In the server terminal, enter the command "rpm -ivh filename" to install the iperf tool.
 iPerf3 Software Installation
Figure 1 iPerf3 Software Installation
3. iperf3 Parameters
      After completing the installation of iperf, execute "iperf3 -h" to display the detailed usage of iperf. iperf's command line options are divided into three categories, namely, client-side and server-side common options, server-side-specific options, and client-side-specific options, and the following is an introduction to the commonly used options. The following is an introduction to the commonly used options.
Table 1 Meaning of Server-Specific Options
Command Line Parameters Meaning Description
-D Runs iperf as a background daemon, for example: iperf3 -s -D
-S Start iperf in server mode, e.g., iperf3 -s. The default listening port for iperf3 is 5201, and you can change the default listening port with the "-p" option
 
Table 2 Meaning of client-specific options
Command Line Parameters Meaning Description
-c Start iperf in client mode, for example: iperf3 -c 192.168.12.168, where 192.168.12.168 is the IP address of the server
-u Specify the UDP protocol to be used
-b [K|M|G] Specify the bandwidth in bits/sec to be used in UDP mode, this option is related to the "-u" option. The default value is 1 Mbit/sec
-t Specify the total time to transmit the packet. iperf will repeatedly send packets of the specified length within the specified time. The default is 10 seconds
-n [K|M|G] Specify the number of bytes to transmit the packet, for example: iperf3 -c 192.168.12.168 -n 100M
-I Specify the length of the read/write buffer, the default size is 8KB for TCP and 1470 bytes for UDP
-P Specifies the number of threads used between the client and the server. The default is 1 thread. This parameter needs to be used by both the client and the server
-R Switch the mode of data sending and receiving, for example, the default is client-side sending and server-side receiving, after setting this parameter, the data flow changes to client-side receiving and server-side sending
-W Specify the size of the socket buffer. In TCP mode, this setting is the size of the TCP window. In UDP mode, this setting is the buffer size for receiving UDP packets, which is used to limit the maximum value of packets that can be received
-B This parameter is used to bind a host address or interface, this parameter is only used for hosts with multiple network interfaces. In UDP mode, this parameter is used to bind and join a multicast group
-M Sets the value of the TCP maximum message segment
-N Set TCP no delay
 
Table 3 Meaning of common options for clients and servers
Command Line Parameters Meaning Description
-f Specify the output unit of bandwidth, "[k|m|g|K|M|G]" means display the output result in Kbits, Mbits, Gbits, KBytes, MBytes,GBytes respectively, the default unit is Mbits, for example: iperf3 - c192.168. 12.168 -f M
-p Specify the port used on the server side or the port to which the client is connected, for example: iperf3 -s -p 9527; iperf3 -c 192.168.12.168 -p 9527
 
      When the optical module is applied on the server, it works in the physical layer, and carries out the transparent photoelectric conversion and transmission of the "0" and "1" signals, which generally will not affect the fluctuation of the test bandwidth during the iPerf3 test.
      When using optical modules for iPerf3 traffic testing, you can refer to the instructions in the above table for the corresponding command input and testing, and please refer to the article:  Introduction to Iperf3 Bandwidth Test Parameters in the website for the specific methods of testing ports and traffic on the server.
      Moduletek Limited is at your service!
      If you have any questions about the above content, you can contact us by Email : web@moduletek.com