Traceroute goes through 2 continents to reach USA?

Cookiez

Reputable
Apr 15, 2015
2
0
4,510
Dear Tech genies,

Something is bugging the hell out of me and I can't find an answer.

I have a really bad ISP as there is no good one in my country, Perú (South America). I have 30mbps bandwidth (not really, they only give you 40%). Anyways, my question regards routing and ping, not bandwidth.

I play online games most of the time (Dota 2, CS:GO, etc) and I'm a high ranked player, but lately I've noticed that most of my enemies and teammates have 5-50ms ping to the server, while I'm stuck at 110ms (for South American servers) and 150ms for USA servers (US East... Virginia). So I decided to look into it and ran some ping tests and traceroutes.

I found something that I need explaining. For some reason my traceroute goes from Perú to Spain and from Spain to USA. So... what the hell? Why does it cross the whole ocean twice to get to its destination?

I ran tests pinging Valve's Dota 2 Servers in US East

Here's some of my research:

IP Lookup: http://prntscr.com/6u9ye2
Traceroute test: http://prntscr.com/6u9vvi

IP Lookup of the red line: http://prntscr.com/6u9w5f (the next node takes 50ms to reach)
IP Lookup of the one below the red line: http://prntscr.com/6u9whe

Traceroute map: http://prntscr.com/6u9x3i (the traceroute map doesn't show the initial location)

So... does anyone have any idea why it's crossing the ocean and back?
 
Solution
I even knew the answer before I looked at the trace when you said it went to spain and back.

Your ISP is either telefonica or it buys its service from telefonica. Telefonica is one of the major ISP in south america. It is based in spain and has a lot of its capacity on the undersea fiber that runs from brazil to portugal. It has direct connection to miami also but it tends to favor sending the traffic to europe.

If you get 150ms to the USA then your traffic is not actually going to Europe and back you would see latency closer to 200ms it that was true. Traceroute lies to a point, it only shows the path from you to the server the path coming back is likely different. I am going to suspect your traffic goes via europe and comes...
I even knew the answer before I looked at the trace when you said it went to spain and back.

Your ISP is either telefonica or it buys its service from telefonica. Telefonica is one of the major ISP in south america. It is based in spain and has a lot of its capacity on the undersea fiber that runs from brazil to portugal. It has direct connection to miami also but it tends to favor sending the traffic to europe.

If you get 150ms to the USA then your traffic is not actually going to Europe and back you would see latency closer to 200ms it that was true. Traceroute lies to a point, it only shows the path from you to the server the path coming back is likely different. I am going to suspect your traffic goes via europe and comes back via miami. Especially since the trace indicates that the server is likely using level 3 for its provider. Level 3 has a lot of fiber from miami to brazil and miami to say columbia so it will favor going that route.

In any case there is nothing you can do about this. In this particular case you would want to get a different ISP that has a connection to level 3 for its service to the USA. But if the server was using verizon or att or say telia then you may get even different paths.

Now why you don't see peru going to say los angelas is hard to say. I know chile has a fiber to the western USA which should go right past peru but I have never seen the traffic go that way. I know when we buy private circuits to peru they go via miami-columbia...at least thats what verizon said last time we asked.

..............so after I posted this I went back and dug around telfonicas network using some of the tools from other ISP that let me see the routing. The traffic actually appears to be going from peru to miami. The 7th hop appears to be in what is called the nap of the americas which is a verizon building in miami. I get ping times of only a couple ms from other vendors routers in that building.

You have to be very careful about assuming IP location based on who owns them. Many times it will give you the location of the headquarters rather than the actual router.

90ms is about what would be expected to go from peru to miami even on a fairly direct fiber connection. Why it goes from miami to dallas and back to washington adding another 50ms is just another of those mysteries.
 
Solution


Wow, your answer is incredible. You've shed light on a lot of stuff I didn't even know and I thank you for that.
I do in fact have Movistar as my ISP which is just an alias for Telefonica. Honestly, It's a terrible ISP.
But from what I've heard every other ISP in Peru rents their lines from Telefonica so I don't really have a choice there.

I also heard they had an accident with their fiber at some city on the north of Peru so maybe thats why it's been really crappy for the last month.

Anyway, amazing answer and thanks for your time.