Technical: More About Connectivity

Modem Latency

Current consumer devices have appallingly bad latency. A typical Ethernet card has a latency less than 1 ms. The Internet backbone as a whole also has very good latency. Here's a real example:

  • The distance from Stanford in California to MIT in Boston is 4320 km
  • The speed of light in vacuum is 300 * 10^6 m/s
  • The speed of light in fibre is 60 percent of the speed of light in vacuum
  • The speed of light in fibre is 300 * 10^6 m/s * 0.6 = 180 * 10^6 m/s
  • The one-way delay to MIT is 4320 km / 180 * 10^6 m/s = 24 ms
  • The round-trip time to MIT and back is 48 ms
  • The current ping time from Stanford to MIT over today's Internet is about 85 ms:
  • 84.5 ms / 48 ms = 1.76
  • The hardware of the Internet can currently achieve speed of light + 76 percent

So the Internet is doing pretty well. It may get better with time, but we know it can never beat the speed of light. In other words, that 85 ms round-trip time to MIT might reduce a bit, but it's never going to beat 48 ms. The speed can improve a bit, but it isn't going to double. We're already within a factor of two of the theoretical optimum. I think that's pretty good - not many technologies can make that claim.

Compare this with a modem. Suppose you're 18 km from your Internet service provider. At the speed of light in fibre (or the speed of electricity in copper, which is about the same) the latency should be:

18000 / (180 * 10^6 m/s) = 0.1 ms

Although modems vary, the latency over your modem is anywhere from 75 ms to about 130 ms. Modems are currently operating at a level that's more than 1,000 times worse than the speed of light. And, of course, latency cuts both ways. If a one-way trip using a typical modem has a latency of about 130 ms, then the round-trip delay is about 260 ms.

Of course no modem link will ever have a latency of 0.1 ms. I'm not expecting that. The important issue is the total end-to-end transmission delay for a packet - the time from the moment the transmitting software sends the packet to the moment the last bit of the packet is delivered to the software at the receiving end. The total end-to-end transmission delay is made up of fixed latency (including the speed-of-light propagation delay), plus the transmission time. For a 36 byte packet the transmission time is 10 ms (the time it takes to send 288 bits at a rate of 28.8 Kbps). When the actual transmission time is only 10 ms, working to make the latency 0.1 ms would be silly. All that's needed is that the latency should be relatively small compared to the transmission time. About 5 ms would be a sensible latency target for a modem that has a transmission rate of 28.8 Kbps.