While a couple of suggestions in this “opinion” piece are valid, none of them help you diagnose the root-cause of your crappy network connection. None of them explain a sudden drop in speed in the manner that Stephen Fry experienced. Fry’s connection was throttled; no amount of “have you tried turning it off and on again” would cure that. Frankly: reinstalling Windows is not going to increase your data cap.
First, credit where it’s due. Let’s look at the good options from the article:
- Fixing your home wiring is recommendation number one. Get rid of plug in splitters and do it properly. It’s not hard to install a master filter yourself if you have some skills and the right tools, but it’s probably safer to pay a specialist to do it. If you have a VoIP service (like Orcon Genius) with no dialtone, you can just do away with splitters altogether.
- Rebooting your router is a good suggestion, but if you’re doing it more than once a month you need to buy a better router. You get what you pay for, and in many cases I’m betting you paid nothing for your router. Go figure.
- WiFi intereference is real, and finding a free channel is a good idea, but you’re more likely to see drop-outs and inability to connect than a speed change from 7Mbps-ish to 64kbps.
- Modern viruses and malware often use your PC to send crap over the network, making it appear slow to other software. Use a decent, free antivirus program. A lot of people recommend Microsoft Security Essentials.
Perhaps a better approach overall is to do some diagnostics first using some freely available tools? Then you can at least determine if the problem is inside your house.
Your router probably has an admin page. You can navigate to it by typing in the router’s address in your browser. Something like http://192.168.0.1 or http://10.0.0.1 might work. You could also try looking for the “Default gateway” address in your PC’s network settings and use that. If you haven’t set a password for the router admin interface, it is almost certainly some combination of “root”, “admin”, blank, or just maybe serial number on your router.
Once you log in, look for a “status” page. This will tell you if the router is connected, at what speed, and perhaps even some log entries to show what happened recently (disconnections etc).
Speedtest.net is a simple first step. Nerds will tell you this is flawed due to caching and proxies and the like. This is true, but we can use Speedtest to do some coarse-grained diagnosis.
- Can you even reach Speedtest.net? If not, check your router again to see if it has a connection.
- What’s the speed like to a nearby destination?
- What about an international destination (Australia, USA)?
- Try speed tests at different times of day to different locations. I can guarantee, for example, that you will see a huge change in speed to USA destinations between peak and off-peak times.
If you notice a continual, huge difference in speed between NZ locations and USA locations, talk to your ISP. Bear in mind that a 5x difference in speed is “normal” (10Mbps to NZ vs 2Mbps to USA), but if USA speed is crawling, it’s probably Not Your Fault(TM).
Ping is a very simple command that sends packets to a destination, and tells you how long they took to respond (if at all). Think of it as sonar for the web. You can run it from a command prompt (run “Cmd” in Windows or “Terminal” on Mac). At right is an example of me “Pinging” Google.com:
You can see that the ping result times are roughly the same, and all below 100ms. If you see wild fluctuations in the response times, or a bunch of “Response timed out” results, this means something is going wrong between you and the destination. If you see ping times consistently above 500ms to a developed nation, you probably have an issue. To work out where the problem lies, try pinging progressively more distant locations:
- Ping your router address (e.g. 192.168.0.1 or 10.0.0.1). If this is unstable, then the problem is definitely inside your house.
- Ping an address on your ISP’s network (e.g. their home page or DNS server).
- Ping a different NZ address (e.g. nzherald.co.nz) – but note that your ISP might even host some local sites!
- Ping an international address.
Most PCs will have some form of Traceroute function on them. Traceroute shows you the route your packets are taking from your PC to the destination address. On Windows you type “tracert” into a command prompt. On Mac/Linux I believe it is “traceroute”. Try a well-known international destination. Im my case below I’ve typed “tracert www.google.com” to get this result:
I’ve blurred out the first few results to hide our internal network, but here’s a few things to note from the trace:
- The left hand columns are the times it took to reach each point in the “route”.
- Interestingly (based on the server names we can see listed), our packets never leave Australia. Google obviously has servers in Oz that are responding to our request.
- The results are loosely in two groups: those around the 1-10ms mark, and those that are higher. The 1-10ms results are on our internal network, the rest are outside.
- The results are (generally) increasing the further away they get. This is exactly as you’d expect, due to the laws of physics.
- There’s no “anomalies” in the result. Sometimes you might see a sudden, explainable spike in the timings (e.g. between NZ and USA), other times a completely unexplainable spike. It’s the unexplainable ones you want to look into.
The Full Story
So yeah, none of these tools will tell you the full story. They won’t tell you for sure if there is a flakey piece of wire between the plug in your house and a server in Patagonia. They wouldn’t even help Stephen Fry understand the way connection throttling works in New Zealand.
What this approach will do is help you understand how data gets from your keyboard to the rest of the world, and the myriad issues that can happen along the way. They’ll help you see the results of congestion to your ISP and beyond, and they might tell you that your router or home network is stuffed – saving you from spending 30+ minutes on hold with your ISP.