Test Network Links with iperf
iperf is a network bandwidth testing tool which is available as an AREDN™ package for use on mesh nodes. It is a client-server utility, so it must be available on each node that will participate in the network test scenario. The iperf client node generates traffic which is sent to the server node. TCP bandwidth is measured and an estimate of the network speeds between that client and server is displayed.
Understand the impact to your network before using iperf. During the test period iperf will generate a significant amount of traffic in order to determine the capacity of the link between the client and server nodes. Try to run your iperf testing during times when you know that there will be minimal impact to users and routine traffic on your network.
Installing iperf and IperfSpeed
Two packages should be installed on each AREDN™ node in order to facilitate testing between nodes. The iperf3 package allows the nodes to function either as an iperf client or server during the test. The iperfspeed package provides a web-based control interface for running network tests between the nodes.
After iperf and IperfSpeed are installed on your nodes, you can select the IperfSpeed service on one of the nodes to open its web interface in a new browser tab. From the dropdown lists, select a node as the iperf server and also one as the iperf client. Click the Run Test button to begin the network bandwidth test.
Once the test has completed you will see the collected data summarized by time interval, and at the bottom of the display is the overall average of the results from the perspective of the sender (client) and the receiver (server). IperfSpeed also tracks previous tests that have been run, and it allows you to rerun any of the previous tests by clicking the Re-Test button.
One of the many uses for IperfSpeed is to validate and optimize your node’s Distance setting on the Basic Setup page. Try different Distance settings and note the network bandwidth using iperf, with the goal of choosing the Distance setting which yields the best network performance.