Identifying undersea fibre and satellite links with traceroute

I frequently travel to the Middle East, which means I often find myself on the wrong end of a slow Internet link. Sometimes that is oversold undersea fibre, such as in Dubai. More often – because of my work – it is VSAT. I’m an engineer, which means I’m a curious monkey that takes everything apart just to understand how it works. Network topology is one of those things.

I wrote about something similar on my other blog last year.

First, some background information on VSAT. The single biggest limitation of satellite Internet service is latency. In network terms, latency is the total round trip time for your packet to reach its destination and for the reply to return. When we speak of “ping time”, what we mean is latency.

Here are some common latency measurements in milliseconds (ms):

1 ms – within your LAN
25 ms – my home cable service in London to servers located in mainland UK
90 ms – typical home DSL in the US to google.com
100-150 ms – the transatlantic cable between the UK and New York state
600-2000 ms – typical VSAT remote to hub link

Why is VSAT latency so high? Geosynchronous satellites orbit at an altitude of 35,000 km. VSAT remotes connect to the Internet via a star-shaped network with a hub at the centre. When a remote modem pings google.com, its traffic must travel up to the satellite, then back down to our teleport, and then over the terrestrial Internet to google.com. The reply does the opposite, returning back over the terrestrial Internet, back up to the satellite and down again to the remote. That means every single ping you send is travelling 35,000 x 4 = 120,000 km. Divide by c, and you find the minimum latency for any VSAT is 480 ms. Further time is added due to radio modulation, error correction, router delay, and various technical issues with shared bandwidth satellite networks. All that adds up to a minimum effective latency for all VSAT communications of about 600 ms. If that network is busy, it goes up.

So when one of our customers makes a VoIP phone call, there is an audible (600 ms) delay between when he speaks and when he can expect a reply. We constantly work to keep that number as low as possible. People seem to tolerate up to 250 ms without noticing, but when you start edging up to one second, it quickly becomes intolerable – less like a phone, more like a radio.

This latency is immediately noticeable on ping and traceroute. I prefer mtr, a tool that combines the two. Plain old tracert / traceroute will show you the same results, just a lot slower. Here is an example run from a VSAT link:

mtr yahoo.com

Note the huge jump in latency between hops 1 and 2. This must be the space link – hop 1 is the remote modem and hop 2 is the hub modem (the one in the teleport).

The jump in latency is obvious in both directions. From a terrestrial link to a VSAT IP:

Here the space link is between hops 8 and 9.

Similar increases in latency are detectable along undersea fibre. From my home in London to my alma mater Cal Poly:

Now we can see that my home is named “Belafonte” (hop 1), that I have a network connection via Virgin Media (hops 3-6), that Virgin Media finds it cheaper to route via Above.net through Amsterdam and back to the UK rather than direct within the UK (hops 8 and 9), and that we cross the Atlantic between hops 9 and 10. Also, Cal Poly should know better than to use DNS names that state both function and operating system to anyone looking (hop 19, a Cisco PIX firewall at their network’s border).

Note the 60 ms increase in crossing the Atlantic, which is actually quite good for such a long fibre run. Compare a route from Dubai to the UK:

Care to spot the fibre there? Here’s the kicker – it looks like it’s routing direct from the UAE to the US, then on to the UK! If memory serves, that’s probably the FLAG cable that runs from the Persian Gulf to the West Coast of the US. Yes, they make runs that long!

Tags: , ,

Reply

Your email address will not be published. Required fields are marked *

You may use these HTML tags and attributes: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code class="" title="" data-url=""> <del datetime=""> <em> <i> <q cite=""> <strike> <strong> <pre class="" title="" data-url=""> <span class="" title="" data-url="">