TheRoDent
Cool Ideas Rep
Sometimes it's required to determine whether packet loss is the culprit for slow up or download speeds. Packet loss can cause TCP retransmissions to occur, because the data has to be retransmitted which will cause TCP to start with a slower up/download window.
This will affect performance in either the upload, or the download direction, and is typically seen on a bandwidth graph as "valleys and peaks" in a download or upload graph, as well as lower than expected speedtests etc.
(example of a graph showing the valley and peak pattern)
In this case, an iPerf test to one of the Cool Ideas iPerf servers will help us to determine whether packet loss is the cause.
In order to perform an iPerf test, you will need:
To perform a UDP download test, open a command prompt and run the following command:
To perform a UDP upload test, run the following command:
The "-b 10M" parameter can be increased but generally 10Mbps should show up packet loss quite easily.
The "-c ter-jhb-iperf-1.cisp.co.za" parameter can be changed to the closest iperf server you want to test to.
A typical "clean" test, will have a final line indicating the number of lost packets, and a percentage.
e.g.
A few lost packets (in this case 9 out of 13737) can be expected. When the lost packets run into the thousands or more than 1-2% there is likely a problem with your connection.
The possible causes for packet loss are:
This will affect performance in either the upload, or the download direction, and is typically seen on a bandwidth graph as "valleys and peaks" in a download or upload graph, as well as lower than expected speedtests etc.
(example of a graph showing the valley and peak pattern)
In this case, an iPerf test to one of the Cool Ideas iPerf servers will help us to determine whether packet loss is the cause.
In order to perform an iPerf test, you will need:
- A windows machine, and the Windows iperf client: https://files.budman.pw/iperf3.10.1_64bit.zip
- Or, a linux machine, and the linux iperf3 client (check your distribution for installation instructions)
- Or, a macOS machine, and the macos iperf3 client (brew install iperf3)
- Make sure to use a cabled (Ethernet) connection to your router.
- ter-cpt-iperf-1.cisp.co.za (Cape Town)
- ter-jhb-iperf-1.cisp.co.za (Johannesburg, Teraco)
- is-jhb-iperf-1.cisp.co.za (Johannesburg, Rosebank)
- tele-lon-iperf.cisp.co.za (London, UK, onnet)
- queen.cisp.co.za (London, UK, off-net)
- It's generally best to use a bandwidth parameter for the test of 10Mbps, or 10Mbps less than the total capacity of your line, in the direction that you're testing. For example use 90Mbps on a 100/100 line.
- Make sure your line is idle and not busy with other downloads
To perform a UDP download test, open a command prompt and run the following command:
Code:
iperf3 -R -u -b 10M -O2 -t 30 -p 17001 -c ter-jhb-iperf-1.cisp.co.za
To perform a UDP upload test, run the following command:
Code:
iperf3 -u -b 10M -O2 -t 30 -p 17001 -c ter-jhb-iperf-1.cisp.co.za
The "-b 10M" parameter can be increased but generally 10Mbps should show up packet loss quite easily.
The "-c ter-jhb-iperf-1.cisp.co.za" parameter can be changed to the closest iperf server you want to test to.
A typical "clean" test, will have a final line indicating the number of lost packets, and a percentage.
e.g.
Code:
[ ID] Interval Transfer Bandwidth Jitter Lost/Total Datagrams
[ 4] 0.00-10.00 sec 107 MBytes 90.0 Mbits/sec 0.326 ms >>9<</13737 >>(0.066%)<<
A few lost packets (in this case 9 out of 13737) can be expected. When the lost packets run into the thousands or more than 1-2% there is likely a problem with your connection.
The possible causes for packet loss are:
- A bad cable from your PC to the router.
- A bad router.
- A bad cable from the router to the fibre terminating unit (ONT)
- A bad terminating unit
- A faulty fibre line.
- Replace the cable from your PC to the router.
- Replace the cable from the router to the ONT.
- Test directly from the ONT using your PC, bypassing the router.
- Replace the router.
Last edited: