I often hear people talk about why they can get “gigabit Internet” for their homes for (insert low, low price here), but their schools, etc. cannot, and they ask me why. I’ve been struggling for years with an explanation for this… It’s not easy. Without going through all of the dynamics, the TCP protocol (what most Internet traffic uses) has some limitations. To illustrate this I conducted a simple test. I set up two Linux machines to communicate directly with each other over a simulated (and very generous) 1Gpbs connection and tested it with iPerf.
Not surprisingly, the direct achieved a Gbps as expected:
0.0-10.0 sec 1.31 GBytes 1.12 Gbits/sec
But in the real world, there are delays. Let’s see what it looks like when you add 10ms of latency (really, pretty small, and very conservative):
0.0-10.0 sec 670 MBytes 560 Mbits/sec
Ok, that’s not as great… Now, I’ve never seen a DIA contract with a school that didn’t specify something like “< 1% packet loss”. Ok, let’s throw .1% (1 TENTH of a percent) of loss at it too:
0.0-10.1 sec 61.6 MBytes 51.2 Mbits/sec
Finally, let’s get really ugly. Not likely to happen very often, but can on a bad day. Let’s now look at 20ms of latency and 1% of packet loss:
0.0-10.2 sec 16.9 MBytes 13.8 Mbits/sec
Basic testing reveals that just because you have a “gigabit” connection, really doesn’t mean you’re going to move a gigabit/sec. But when you put several thousand connections from a school district behind it, even with latency and loss, you’ll still fill the pipe. Service providers know what I’ve show above. That’s why you can buy a “gigabit” for your home, for a LOT less than a gigabit for your school.