Viewing Article

No StarNo StarNo StarNo StarNo Star | Mar 2 2011, 6:14 PM |
Simple Packet Loss Test


Here is a simple test to see if you are experiencing packet loss or latency.

We are going to use the ping command.

Windows XP:
Go to Start;, click Run.
In the box type CMD and press enter. 

Windows Vista/7:
Click on the Start icon (The Windows "orb") in the bottom left hand corner.
In the text box at the bottom of the menu type CMD and press enter

Windows 10:
Click into the Search bar in the bottom left-hand corner (next to the Windows icon)
In the text box at the bottom of the menu type CMD and press enter

Running the Test:
In the black window that appears type ping -n 200

You should get responses like this:
Reply from bytes=32 time=18ms TTL=55

It will take a while to complete (roughly 4 minutes).

Once it is complete you will see a some text like this:

Ping statistics for
   Packets: Sent = 200, Received = 200, Lost = 0 (0% loss),
Approximate round trip times in milli-seconds:
   Minimum = 18ms, Maximum = 19ms, Average = 18ms
This is the output we want. To copy it, right click on the black window and select Mark.
Highlight the area you want to copy and then press enter to copy it.

Linux / MAC
Bring up a terminal window, this is normally under system tools or accessories

 In the window that appears type ping -c 200

You should see responses like:

64 bytes from icmp_seq=7 ttl=61 time=11.0 ms

It will take a while to complete (roughly 4 minutes).

Once it is complete you will see a some text like this:

--- ping statistics ---
200 packets transmitted, 200 received, 0% packet loss, time 11044ms
rtt min/avg/max/mdev = 11.029/18.471/42.982/9.915 ms

This is the output we want. Copy (by simply highlighting the output) and paste it into your technical support ticket.

Other Options:

You can monitor loss to other addresses, just change to the name or IP of the server or device you with to monitor.

You can vary the length of this test by increasing the amount of pings, in the example above it is set to 200 pings. It takes roughly 1 second per ping.

You can test using an increased packet size (1300 in our example) to see if this is problematic by adding a flag followed by the increased packet size.

In Windows, simply add -l 1300 to the end of the command

IE. ping -n 200 -l 1300

In Unix please add -s 1300 after the -c 200 but before the destination.

IE. ping -c 200 -s 1300


The output is fairly easy to translate. You can see your packet loss as a percentage and the minimum, maximum and average ping times.

Figures are in ms (milliseconds), this is the time it took for a ping packet to get to a device, that device to respond and then that response to get back to you. Whilst lower ping is desirable it’s more important to have a consistent ping with little to no loss.

Ideally your minimum and average figures should be reasonably close. The closer the better. Ideally under 15% of the total ping time, e.g. if your ping is 100ms, your average figure should be less than 115ms.

Your loss should be under 1% when your connection is idle.

Things to note:
This test is conducted using ICMP. ICMP is given the lowest priority by routers. If your connection is being heavily used, you will not get a very good ping. Likewise do not expect a very good ping from core internet routers, they are far too busy to respond quickly.

Not everything responds to ICMP pings.

It takes the average human 150ms to blink. So if your ping is 30ms the little packet of data may have travelled hundreds of miles to a server and back again in 1/5th the time it takes you to blink.

When speeds are this fast you need to factor in the speed of light. The reason it take 100+ms to get to the USA and back is because it simply takes light that long to travel the vast distances involved.