> 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 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 screen
- Choose the
Testingtab in the top menu
- Click the
+ Add testbutton
- You can classify the test as
Externaldepending on your preference (e.g. is this an internal or external iPerf server?)
- Choose the
iPerf2from 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
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.
- Selecting the
UDPoptions 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.
iperf3is 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 same
iperf3server with high frequency that you may get some incomplete test results.