Friday, 2 May 2014

Why websites are like turnips

We are sometimes told to eat locally - to consume food that is well suited to our domestic climate and is grown nearby. (For those of us in the UK, this implies a diet heavy in turnips, one of our relatively few native vegetables). By eating locally, we can reduce food-miles and our carbon foot print.

While perhaps less threatening to the the planet, bit-miles can be damaging too, harming your surfing experience.

In my previous post I noted that increasing the speed of your home broadband connection doesn't necessarily lead to an improved experience. One scenario where this can happen is when you are accessing a remote service, such as a website hosted in a remote location. While the transfer of data between your computer and the server may be constrained by your access bandwidth, latency (the time taken for a packet to travel between the two) can make an enormous difference. Moreover, the more hops the packets are taking between your computer and the server, the more opportunities for them to hit congestion somewhere along the way.

It's easy to test the impact of this. allows you to run a test of transfer rates between your computer and one of their servers. By default, they automatically select a server near you, reducing the likelihood that transfer rates are constrained by factors other than your own access link. (There's a lot of subtlety in speed tests though - see this for a detailed discussion of how they work and their limits).

Here's the result of such a test from my computer:

This test used Speedtest's defaults, and it has selected a server in Maidenhead, about 50 miles away. As a result, my ping (round trip latency) is 31 milliseconds. In terms of bandwidth, I'm getting 18 Mbps, which sounds about right - I'm on DSL, relatively close to the exchange.

Now here's a test where I've overridden the defaults, and used a server in LA:

Ping has quintupled to 162 ms (though before we get too outraged, this still means that the packets were averaging 1/3 the speed of light, given a 10,800 mile round trip). The speed of connection has dropped to 11.4 Mbps. This certainly suggests that the bandwidth of the last mile - the access link to my house - is not the key constraint, since we know that's capable of at least 18 Mbps.

Of course, there are places more remote from my UK home than LA. Here's what happens when we run the test on a Sydney server:

Ping has doubled again, and the effective bandwidth has dropped to 8 Mbps. By visiting a remote server, I've 'lost' 10 Mbps of the capability of my line. Put another way, I'd likely get just as good a performance from the Sydney server if I had an 8 Mbps line as opposed to my actual 18 Mbps line.

While one could in theory abandon tasty vegetables and only eat turnips, it is a bit harder to only source local websites. If I'm desperate for the results of the Brisbane cockroach races, then substituting a visit to a local website about snail racing in Norfolk just won't do. (Though you've got to love a sport where a 6 year old can be the world champion). There's always going to be a portion of our internet use where improving our last mile bandwidth won't make any difference at all.

1 comment:

  1. Another thing: using a vpn in a coffee shop in uk knackers bandwidth. The one caffe Nero points you to makes your bits cross the Atlantic twice. With obvious consequences for your speed test results.