0

So i am running a trace route from http://www.speedtest.com.sg/tr.php to my system. i get a route. And i run a trace route from my system to the website above i get a different route. Why is that? Why doesn't it go through the same path? If you observe common routers between the forward and the reverse path, do we also observe the same IP addresses? Why or why not?

This is a networking assignment and i am bashing my head cause i dont understand how this works.

1
  • Did any answer help you? If so, you should accept the answer so that the question doesn't keep popping up forever, looking for an answer. Alternatively, you can post and accept your own answer.
    – Ron Maupin
    Commented Dec 17, 2020 at 17:43

3 Answers 3

3

This is asymmetric routing and it is quite common.

This is because each router takes its own decision about the next-hop (i.e. the router it will send the packet to) and doesn't care (actually doesn't have any knowledge) about the path another packet in the same conversion took.

Did you ever use a GPS to go somewhere and also to do the reverse path and it brings you on a different path for the 2 travels? Or for the same path on different days it select different paths, due to accident or traffic jam?

This is the same concept: choosing the best (known) path for this particular packet right now, and it's a fundamental feature of the packet switching networks (which Internet is build on).

Note that there's an important difference between the GPS system and network routing: the GPS builds the whole path at startup, then adapts, while each router only chooses the next hop (junction) and the full path is not know in advance.

1

So i am running a trace route from http://www.speedtest.com.sg/tr.php to my system. i get a route. And i run a trace route from my system to the website above i get a different route. Why is that? Why doesn't it go through the same path?

Because routing is a distributed process, each router makes it's own decisions about what path to use based on the information that it has, the default rules of internet routing (use the shortest AS path, if the AS path length is tied use the closest exit) and the rules set by it's owner (for example a router owner may prefer to send traffic to a peer than to an upstream).

If you observe common routers between the forward and the reverse path, do we also observe the same IP addresses? Why or why not?

Usually no.

Nearly all routers will have multiple IP addresses, generally they will have IP addresses associated with each interface. Most major routers will also have a "loopback" interface that represents the router as a whole.

Policies on which IP address to use for generating ICMP errors vary, some implementations may use the interface the packet is received on, some may use the interface the error is sent from, some may use the router's loopback ip.

0

Traceroute doesn't show the gateways in the path. It shows whatever interface those gateways use to send their time exceeded message. That interface should be the one facing the sender (that's the most common and also what you'd expect) but it may also be a completely different one or even an internal loopback interface.

Tracerouting the same path from different sides can show completely different IP addresses even though the gateways are the exact same. Without detailed knowledge of the infrastructure involved you can only make somewhat educated guesses of what's going on.

Additionally, each direction can use a completely different path when routing is asymmetric as JFL has pointed out.

Not the answer you're looking for? Browse other questions tagged or ask your own question.