Difference between revisions of "Iperf"
From SME Server
Jump to navigationJump to searchm |
|||
(One intermediate revision by one other user not shown) | |||
Line 3: | Line 3: | ||
Iperf is a modern alternative for measuring TCP and UDP bandwidth performance, | Iperf is a modern alternative for measuring TCP and UDP bandwidth performance, | ||
allowing the tuning of various parameters and characteristics. | allowing the tuning of various parameters and characteristics. | ||
+ | |||
+ | https://github.com/esnet/iperf | ||
Features: | Features: | ||
Line 20: | Line 22: | ||
=== Installation === | === Installation === | ||
− | + | ||
− | + | Install direct from upstream repos | |
− | + | ||
− | {{ | + | yum install iperf3 |
+ | |||
+ | {{Note box| Some distros carry both iperf v2 and iperf3}} | ||
+ | |||
+ | === Usage === | ||
+ | |||
+ | To use iperf you need a server and a client | ||
+ | |||
+ | On the 'server' run | ||
+ | |||
+ | iperf3 -s | ||
+ | |||
+ | On the client run: | ||
+ | |||
+ | iperf3 -c ip.of.iperf.server | ||
+ | |||
+ | Output: | ||
+ | |||
+ | <pre> | ||
+ | Connecting to host 192.168.11.1, port 5201 | ||
+ | [ 5] local 192.168.11.100 port 46926 connected to 192.168.11.1 port 5201 | ||
+ | [ ID] Interval Transfer Bitrate Retr Cwnd | ||
+ | [ 5] 0.00-1.00 sec 113 MBytes 952 Mbits/sec 0 1.11 MBytes | ||
+ | [ 5] 1.00-2.00 sec 111 MBytes 933 Mbits/sec 0 1.11 MBytes | ||
+ | [ 5] 2.00-3.00 sec 111 MBytes 933 Mbits/sec 0 1.11 MBytes | ||
+ | [ 5] 3.00-4.00 sec 111 MBytes 933 Mbits/sec 0 1.11 MBytes | ||
+ | [ 5] 4.00-5.00 sec 112 MBytes 944 Mbits/sec 0 1.11 MBytes | ||
+ | [ 5] 5.00-6.00 sec 111 MBytes 933 Mbits/sec 0 1.11 MBytes | ||
+ | [ 5] 6.00-7.00 sec 111 MBytes 933 Mbits/sec 0 1.17 MBytes | ||
+ | [ 5] 7.00-8.00 sec 111 MBytes 933 Mbits/sec 0 1.17 MBytes | ||
+ | [ 5] 8.00-9.00 sec 111 MBytes 933 Mbits/sec 0 1.17 MBytes | ||
+ | [ 5] 9.00-10.00 sec 111 MBytes 933 Mbits/sec 0 1.17 MBytes | ||
+ | - - - - - - - - - - - - - - - - - - - - - - - - - | ||
+ | [ ID] Interval Transfer Bitrate Retr | ||
+ | [ 5] 0.00-10.00 sec 1.09 GBytes 936 Mbits/sec 0 sender | ||
+ | [ 5] 0.00-10.00 sec 1.09 GBytes 933 Mbits/sec receiver | ||
+ | |||
+ | iperf Done. | ||
+ | </pre> | ||
+ | |||
+ | Note that by default iperf3 uses port 5201. | ||
+ | |||
+ | We can change that: | ||
+ | |||
+ | iperf3 -p 11111 -s | ||
+ | |||
+ | iperf3 -p 11111 -c ip.of.iperf.server | ||
+ | |||
+ | {{Note box|This will be OK on your local LAN but you will need to modify firewalls to use outside your LAN which is beyond the scope of this HowTo.}} | ||
+ | |||
+ | Be very careful to note the differences between MBs and Mbs particularly when checking your ISP bandwidth. | ||
+ | |||
+ | 8 Mbs = 1 MBs | ||
+ | |||
+ | A Gigabit network is likely to have around 950Mbits/sec | ||
+ | |||
+ | ===Uninstall=== | ||
+ | |||
+ | yum remove iperf3 | ||
---- | ---- | ||
[[Category: Howto]] | [[Category: Howto]] | ||
[[Category:Administration:Monitoring]] | [[Category:Administration:Monitoring]] |
Latest revision as of 15:29, 9 March 2022
Description
Internet Protocol bandwidth measuring tool Iperf is a modern alternative for measuring TCP and UDP bandwidth performance, allowing the tuning of various parameters and characteristics.
https://github.com/esnet/iperf
Features:
- Measure bandwidth, packet loss, delay jitter
- Report MSS/MTU size and observed read sizes.
- Support for TCP window size via socket buffers.
- Multi-threaded. Client and server can have multiple simultaneous connections.
- Client can create UDP streams of specified bandwidth.
- Multicast and IPv6 capable.
- Options can be specified with K (kilo-) and M (mega-) suffices.
- Can run for specified time, rather than a set amount of data to transfer.
- Picks the best units for the size of data being reported.
- Server handles multiple connections.
- Print periodic, intermediate bandwidth, jitter, and loss reports at specified intervals.
- Server can be run as a daemon.
- Use representative streams to test out how link layer compression affects your achievable bandwidth.
Installation
Install direct from upstream repos
yum install iperf3
Usage
To use iperf you need a server and a client
On the 'server' run
iperf3 -s
On the client run:
iperf3 -c ip.of.iperf.server
Output:
Connecting to host 192.168.11.1, port 5201 [ 5] local 192.168.11.100 port 46926 connected to 192.168.11.1 port 5201 [ ID] Interval Transfer Bitrate Retr Cwnd [ 5] 0.00-1.00 sec 113 MBytes 952 Mbits/sec 0 1.11 MBytes [ 5] 1.00-2.00 sec 111 MBytes 933 Mbits/sec 0 1.11 MBytes [ 5] 2.00-3.00 sec 111 MBytes 933 Mbits/sec 0 1.11 MBytes [ 5] 3.00-4.00 sec 111 MBytes 933 Mbits/sec 0 1.11 MBytes [ 5] 4.00-5.00 sec 112 MBytes 944 Mbits/sec 0 1.11 MBytes [ 5] 5.00-6.00 sec 111 MBytes 933 Mbits/sec 0 1.11 MBytes [ 5] 6.00-7.00 sec 111 MBytes 933 Mbits/sec 0 1.17 MBytes [ 5] 7.00-8.00 sec 111 MBytes 933 Mbits/sec 0 1.17 MBytes [ 5] 8.00-9.00 sec 111 MBytes 933 Mbits/sec 0 1.17 MBytes [ 5] 9.00-10.00 sec 111 MBytes 933 Mbits/sec 0 1.17 MBytes - - - - - - - - - - - - - - - - - - - - - - - - - [ ID] Interval Transfer Bitrate Retr [ 5] 0.00-10.00 sec 1.09 GBytes 936 Mbits/sec 0 sender [ 5] 0.00-10.00 sec 1.09 GBytes 933 Mbits/sec receiver iperf Done.
Note that by default iperf3 uses port 5201.
We can change that:
iperf3 -p 11111 -s
iperf3 -p 11111 -c ip.of.iperf.server
Be very careful to note the differences between MBs and Mbs particularly when checking your ISP bandwidth.
8 Mbs = 1 MBs
A Gigabit network is likely to have around 950Mbits/sec
Uninstall
yum remove iperf3