Skip to main content
1 of 2
Schwern
  • 559
  • 3
  • 6

The minimum requirement is a stable access to GitHub and Stack Overflow and fast google search responses. I don't need much speed (around 7 ~ 10Mbps is sufficient) but cannot tolerate <2Mbps, since it takes me to wait for so long. For me, the stable, undisconnected network is far more important than the speed and latency, once it is above 3Mbps. I don't download/upload large files at once (e.g. videos or hi-res pictures or big softwares, those with >500MB).

Bits vs Bytes

For the purposes of this answer everything will be in bits. Normally throughput is in bits and everything else is in bytes. A byte is 8 bits. 2Mbps is 2 megabits per second. With 2Mbps you can download a 2 megabyte file in -- not one second -- but 8 seconds. This confusion is retained as a little marketing ploy by networks to make them seem faster.

Throughput vs Latency

You should be fine at 2Mbps. The problem is probably not throughput but latency.

When you talk about 10Mbps what you're talking about is throughput. How many bits per second can be shoved down the pipe. What you really should be caring about is latency, how soon the bits start coming down the pipe after you request them.

A site like Github is made up of lots of little pieces, each of them has to be requested and downloaded as the page loads. Latency is how long after the request it begins downloading. Throughput is how fast it downloads once it starts. Each request might spawn more requests.

So if Github.com has 10 requests of 10kb each, and each of them has 5 requests of 10kb each, that's 50 requests totaling a mere 500kb. If you're getting a throughput of 500kbps you can download this in 1 second... if you have 0 latency.

If your latency (ping time) is 500ms then every request has a half second delay on it. That means your browser makes a request, waits half a second, then starts downloading the content. It gets worse because that content can have more requests. If you have three layers of content, very easy on a modern web page, that's a minimum of 1.5 seconds before everything starts to load.

Here's an illustration with 500ms latency, 500kps, fetching 50k files.

0ms                 500 ms              1000 ms             1500 ms
GET index.html
                    **
                      GET resource1
                                          **
                                            GET resource1.1
                                                                **
                      GET resource2
                                          **
                                            GET resource 2.1
                                                                **
                      GET resource3
                                          **

As you can see, high latency eats up most of the page load time. You can see this for yourself in the Network pane of the debugging tools in your browser. Here's where you find it in Firefox.

enter image description here

Here's what Github looks like with 100ms latency. It's noticeable.

enter image description here

Find Networks With Low Latency

You want to optimize for latency. You want to find networks with the lowest ping times to the sites you visit. ping www.github.com to decide whether the network will respond well or not.

Since you're traveling worldwide, and most of the servers you're contacting are in North America, you should look for 250ms or less. Sometimes content is mirrored around the world, sometimes it isn't. 250ms is pretty good for talking to North America from Asia.

Do A Virus Scan

If your computer is infected with a virus, it's possible that your own computer is furiously using the network and clogging your connection.

Remove All Unnecessary Browser Extensions and Toolbars

Like a virus, malicious or poorly done extensions and toolbars can be using your computer's network connection to do bad things. This can slow your connection down. Remove them.

Quit Any Networking Applications

If you're running any sort of file sharing software like BitTorrent or Dropbox or Samba or Google Drive, turn it off. If a shared drive changes frequently it might be syncing all those changes and gulping down network.

Turn off any software update tools that might be downloading in the background like Steam.

Schwern
  • 559
  • 3
  • 6