When people think of Internet issues, the most common factor that comes to mind – apart from the Internet link being completely dead – is bandwidth. Bandwidth problems are immediately visible; web browsing slows down, applications clog up, your mail viewer stops fetching mail, etc. The immediate response when people say ‘is there an Internet issue?’ is to run a speed test of some kind – if the speeds look good, then the ISP link is ruled out.
However, there is another significant factor in the quality and reliability of the Internet link: the round-trip latency across the link – i.e., the delay encountered by packets when traversing the path from the customer site to the Internet destination. An Internet connection could have great download bandwidth, where speed tests and web browsing will be flawless. But the round-trip latency affects a lot of applications: VoIP, VPNs, etc.
VoIP is the application most immediately hit by Internet latency, because it shows up very obviously in bad call quality. VoIP connections are very delay sensitive. VoIP calls don’t ‘fall off a cliff’ when the delay reaches some level; instead, they degrade as the delay increases. Typically, delays of under 50 milliseconds end-to-end are not noticeable; the normal VoIP codec will easily compensate for delays of this level. Codecs can even hide intermittent delays in the 100-200 millisecond range using a variety of advanced features. However, once the delay starts rising above this level, voice quality degrades, and quality goes downhill very noticeably after a couple hundred milliseconds.
Opening applications over a VPN is another not-so-well-known situation where delay can make a huge difference. Most office applications – think Microsoft Word – are not written to work over a high-delay connection. Their default behavior is to make lots of small accesses to gather up their data. After all, they were originally written to run directly on a workstation talking to a locally attached disk! This can become a very large problem when trying to run them over a VPN. Even though all those small accesses don’t consume much actual bandwidth, the time taken to complete them is directly perceived by the user as slow application performance. (Opening a database over a VPN is particularly excruciating.) Making 1,000 small accesses to a local disk takes a tiny fraction of a second; making the same set of 1,000 small accesses over a VPN can take many seconds. It’s not the bandwidth – it’s the latency.
As a side note, this is why it’s usually better to run the applications directly on a workstation at the office and use RDP to view the screen, rather than trying to run the application over the VPN. Unlike office applications, RDP IS tuned and designed to deal with high-delay links.
Next time you are experiencing slow loading make sure to check the bandwidth first, but one should not forget that a high amount of delay can also be a factor!