Tools for testing your Internet speed

Tools for testing your Internet speed

There are many reasons Internet speed will become noticeably slower — including not getting the bandwidth you’re paying for.

By Patrick Marshall via Windows Secrets

Internet speed testing services might help reveal whether your ISP is at fault, but only if you understand how they work.

When streaming House of Cards, do you find that Frank Underwood can’t make a threat without stuttering? Does uploading a new video to YouTube seem to take forever? Are you really starting to wonder whether you’re getting the faster Internet service that’s costing an extra £15 a month?

There’s probably good reason to wonder. Recent reports show that some Internet service providers (ISPs) deliver slower connection speeds than they claim — up to 41 percent, according to an April 21, 2014, WSJ Digits blog post.

The good news is that there’s a bunch of free broadband speed tests available online. The bad news is that the speed numbers from those tests tend to jump around like a kangaroo on amphetamines. So to start, here are the two most important tips to keep in mind when running any Internet-performance test:

  1. Never rely on a single set of readings from a single speed test (more on why below).
  2. Local wireless connections have lots of potential potholes that can affect download/upload performance. So run the tests on a computer that’s connected to your network — and the Internet — with an Ethernet cable.

What Internet-performance tests measure

Nearly all Internet-speed tests measure three things: download and upload transfer rates plus latency. The tests are surprisingly simple; download/upload speeds are based on the time required to transfer a single file — or multiple files of various sizes — between your PC and an online server.

The latency (aka ping) test measures the time it takes for a single packet of data to reach an online server and then return to your computer. Latency is typically important to anyone running extremely time-sensitive applications across the Internet — financial trading and interactive games are common examples.

In most cases, you’ll notice that upload speeds are far lower than download speeds. That’s because ISPs, facing limited bandwidth, long ago chose protocols that prioritize downloads over uploads.

That made a lot of sense in the early days of the Internet, when users typically downloaded more data than they uploaded. And that’s still true, though possibly to a lesser degree. We now download gigabytes of streamed music and movies; but we’re also video chatting, calling via voice-over-IP, and backing up our files to cloud-storage services.

In the future, ISPs might have to revisit download/upload bandwidth allocation. But for now, downloading will remain significantly faster than uploading.

Measuring Comcast with eight testing services

Using Internet-connection speed-testing services is generally easy. For example, on the Bandwidth Place site, simply click the big Start button (see Figure 1). Many services also let you pick the Web-based server used for the tests.

Fig 1. Computamedic - Tools for testing your Internet speed

Figure 1. As with most Internet speed-testing sites, running the Bandwidth Place test is just point-and-click.

Keep in mind that, for a variety of reasons, the connection-speed results produced by testing services can differ significantly. I’ll discuss why in a moment. First, here are some results from eight popular connection-speed testing services.

I use Comcast for my Internet service — surprisingly, my Seattle neighborhood has few choices. The expected service levels for my subscription are 50 megabits per second (Mbps) for downloads and 5mbps for uploads. The speed figures below represent testing done at midday. Some tests returned significant speed variations, depending on the time of day.

In all but two tests, Comcast met its promised service levels, though the differences between tests were significant. The overall results are:

ServiceDownloadUploadPing (mSec)
Bandwidth Place
53.0
6.11
18
CNET
48.85
(na)
(na)
XFINITY
59.3
6.1
8
DSL Reports
49.6
5.9
66
Geek Squad
16.8
5.96
106
Ookla
59.4
6.15
8
SpeedOf.Me
65.0
6.7
11
Visualware
56.1
5.95
26

To summarize, reported download speeds ranged from 16.8Mbps to 65Mbps, a variance of over 48Mbps or about 75 percent. Ping speeds ranged from eight milliseconds to 106ms, a far greater variance. Even if we throw out the Geek Squad tester’s results as an outlier, download speed measurements from the other testers varied by as much 25 percent.

Is one test more accurate than another?

For many reasons, it’s impossible to accurately measure overall Internet-connection speeds — or even to say whether one Internet testing service is more or less accurate than its competitors.

To start, the Internet is a far-from-homogenous infrastructure; it’s a mashup of different routers, servers, cable types, and so on. Typically, each browser-to-webserver connection uses different routes over the Net and passes through various devices that manage Web traffic — all of which impacts connection speeds.

Moreover, Internet users might use different browsers or FTP apps at different times. Some browsers might have accelerators that employ multiple HTTP threads for transfers; others might not. In short, there’s no consistency with Internet connections.

There’s also no consistency with testing services. As noted above, services use the same three types of tests — download, upload, ping — but the tests themselves can be quite different. Some services use a single file for uploads and downloads, while others use multiple files of different sizes. Even the format of test files can impact transfer speeds, depending on the protocols used, the size of packets, and the amount of overhead they contain.

Some services transfer files in a single thread; others use multiple threads. For the most part, it’s unknown whether a speed test that employs a single-threaded transfer — as most of them do — is more, or less, accurate than a speed test that employs a multi-threaded transfer.

And while some tests always use a single online server, others search for the fastest available server or allow the user to select a server.

Internet performance will vary greatly based on the location of servers used for testing. Typically, the farther they are from your location, the lower your speed numbers — especially latency. As noted above, many speed tests scan servers in several locations and select the one that’s closest. Some speed tests — SpeedOf.me (Figure 2), for example — run data through several servers in different locations during a test.

Computamedic Blog Tools for testing your Internet speed
Figure 2. SpeedOf.Me’s graphical connection-speed chart

Latency can also have an impact on throughput, because most Internet traffic is bound by a TCP “congestion window.” Essentially, the system waits for confirmation that packets were received before sending more. The longer the latency, the slower the transfer.

The time of day can also result in wildly different speed results. A business might see lower speeds during the day, when numerous users share a single Internet connection. Home users will typically see slower speeds in the evening, when you and your neighbors are downloading YouTube videos and streaming movies.

Bear in mind, too, that test results can vary significantly depending on numbers of other users simultaneously using a local ISP node. For consumers, that might be everyone in an apartment building — or it might be the number of employees sharing a single, leased business connection. If you notice performance dropping after 3 p.m., it might be because all the students in your neighborhood are returning home and jumping on the Internet.

Most speed-measuring services download a small app for running the tests. Some use Java, others use Flash. A few of the newer services use HTML5, which requires that no software be installed on your computer. In theory, HTML5 tests are more accurate because there’s no overhead imposed by the downloaded, local software. But Ookla (Figure 3) claims that its Flash-based tester adjusts for protocol overhead and application buffering before reporting results.

Computamedic Blog Tools for testing your Internet speed
Figure 3. Ookla has a relatively simple interface for displaying upload/download speeds and ping time.

Bottom line: No matter what assumptions an Internet-testing service makes, it can’t build a test that fits nicely into the real world. There’s no practical way to account for each user’s PC configuration and Internet use — especially when our Internet connections will vary from place to place, session to session, website to website.

What to do if your speed is slower than you expect?

Given the limitations of Internet-speed tests, how do you determine whether you’re getting the performance you’re paying for?

The tests can give a rough approximation of Internet-connection speeds — but only if we run multiple tests at various times of the day and week. If possible, run the test from different computers to see whether you get consistent results. That can help eliminate local machine and networking issues.

And again, make sure to use an Ethernet cable between the PC and your router/modem. Various types of wireless-network interference can significantly reduce Internet-connection speeds.

Run the tests from several different services and throw out the highest and lowest results. If the majority of tests consistently show lower-than-expected performance, it’s probably time to contact your ISP.