Packet Loss Test

What do the setting mean?

Packet Sizes

The packet size is how much data is in each "packet" of data that the test sends. I give a range because how much metadata is needed to get them to the right place can make them slightly larger or smaller, and I can't guarantee the browser will always send them as a specific size. (Think of this as like the address on the top of a letter increasing the word count.)

Sending large packets can use up your Internet connection's bandwidth and cause it to start dropping packets, leading to packet loss. Some software also just isn't made to handle really large packets. You probably want to just leave it at the default unless you have a reason to increase it. (Like if you are testing for video call performance, as video calls transmit large amounts of data, or for gaming, as certain games send large packets with all the game data at once.)

Internet speeds are usually measured in either some amount of bytes per second (KBps/MBps) or some amount of bits per second (kbps/mbps). One byte is equal to eight bits. 1024 bytes is equal to 1 kilobyte, which is itself equal to ¹⁄₁₀₂₄th of a megabyte. So 4 megabits is equal to 512 kilobytes. Typically Internet companies advertise in megabit because it makes them sound faster while everything else in the world uses kilobytes and megabytes.

You can see how much data the test uses by multiplying the packet size by the frequency. If you send 512 bytes per packet and 16 bytes per second, that's 8,194 bytes per second, or 8.0 KBps.

Frequency

Frequency is how often the test sends packets. Sending more data messages means more overall data and more networking work. The more data and work there is, there more likely something gets overworked and starts dropping packets.

This is the main way to adjust how much bandwidth is used, as many programs, even when sending large amounts of data, just chop the data up into little pieces and send it in many, many packets.

You can see how much data the test uses by multiplying the packet size by the frequency. If you send 512 bytes per packet and 16 bytes per second, that's 8,194 bytes per second, or 8.0 KBps.

Duration

Duration is simply how long the tests last. Short tests should be sufficient to show normal packet loss, but long tests have their uses.

The first main use is that long tests let you detect intermittent packet loss that only happens occasionally. A short test may show everything's fine, and it may be so 95% of the time, but with a longer test you can see those issues that only happen every couple of minutes.

The other use is that they can test for buffer bloat. Routers and other networking equipment may not be able to handle all of your traffic, but be able to store the extra in memory until the traffic calms down. With sustained usage though, the buffer will fill up and the excess traffic will then have to be dropped. Moderately long tests can therefor detect these issues that only arise with high sustained usage that may come up in real use but avoid casual detection.

The downside to long tests is obviously that they take more of your precious time to run. Also, the longer the test, the more likely something malfunctions and the test stops unexpectedly.

Acceptable Delay

"Acceptable Delay" is how long the test should wait before considering a packet "late." This is a minor setting that doesn't actually affect packet loss, but sufficiently late packets can have the same practical effects as lost packets if they arrive too late to be used, so it can be useful for analysis purposes depending on why you're testing your packet loss.

This setting will be highly dependent on your location and the location of your test server. The farther away the test server, the higher all pings will be. If you're testing against a server on the other side of the world, that won't be at all indicative of your ping time with a peer-to-peer connection with someone in your city.

Just do your best to pick the server and adjust this as best helpful to you.

Preset Approximations

These are some popular things to use the Internet for that depend on low packet loss which you may want to tailor your test settings for. I've done my best to analyze their network traffic and select settings that are similar to what that thing actually uses and a delay that seems like a reasonable "too late" for that use.

Wait Before Recording Results

Sometimes getting the test going takes a bit of processing power and causes the initial results to become really delayed because your computer was busy processing that instead of handling the data transmission in time. This option lets the test start and run a bit while it waits to start recording the results to ensure that you don't get that initial spike. Check this box if you have that problem; otherwise don't worry about it.

Server Selection

This is a list of servers across the US and the globe which I rent to host the service you test against. It shouldn't matter for packet loss purposes, but you should still pick the one closest to you to get the lowest/most accurate ping times. (Alternatively, pick the one closest to the server you are using in real usage to get an estimate for that.)