> iPerf is a tool for active measurements of the maximum achievable bandwidth on IP networks. It supports tuning of various parameters related to timing, protocols, and buffers. For each test it reports the measured throughput / bitrate, loss, and other parameters.
The Cape sensor currently supports bandwidth measurements using iperf3
and iperf2
. iperf3
is a single-threaded rewrite and only supports one client connection at a time; you will need multiple servers on different ports to let multiple sensors test at one time. iperf2
is multi-threaded and allows multiple client connections; you will only need one server for multiple sensors (unless you start saturating the available bandwidth of that server).
You can read more about the iperf3
tool (and get your own copy of it) at https://github.com/esnet/iperf.
To set up a new iPerf test on the dashboard, follow the following steps:
Click the
Settings
(Gear) icon in the top right of the screenChoose the
Testing
tab in the top menuClick the
+ Add test
buttonYou can classify the test as
Internal
orExternal
depending on your preference (e.g. is this an internal or external iPerf server?)Choose the
Custom
template typeSelect
iPerf3
oriPerf2
from the template dropdown
You'll need an existing iperf3
server running, that is accessible by the sensor.
The options are mostly obvious, but some are covered here:
Direction
- should the sensor upload or download from the iperf3
server
Window
- set the socket buffer size (for TCP this is the TCP window size)
Parallel streams
- the number of simultaneous connections to make to the server
Frequency
- how often to execute this test. Be aware that setting a high frequency as well as a high test duration will cause a lot of data to be sent/received over the day as the sensor does its tests.
Caution
Selecting the
Download
andUDP
options with no bandwidth limit can cause the test to report false values. This is because you are instructing the server to send packets to the sensor as fast as possible and UDP doesn't have congestion control. The sensor and dashboard have some workarounds to correct the test results if you do set it up with these options but the results will be approximately 5 - 15% inaccurate.iperf3
is single threaded and as such only allows one client to connect at a time. This means that if you have multiple sensors all testing against the sameiperf3
server with high frequency that you may get some incomplete test results.