0

In a course about networks in my university, we learnt about how in BGP routes, each AS chooses a single route to each IP prefix (though you may have multiple iBGP routes).

Meaning that in the following example, even though we have two paths from AS1 to AS4 (for simplicity assume AS4 holds only one IP prefix) - the first is AS1,AS2,AS4 and the second is AS1,AS3,AS4 - we will still choose only one path, even if the preference for each of the paths is the same.

My Question is if really what happens in real life, and if so - why don't we use multiple paths if they have the same preference? To me it seems like using multiple eBGP paths can help us with load balancing for example.

enter image description here

1 Answer 1

2

Yes, this is how it works in the real world. Using multiple paths at the same time could be done (I've seen networks do per packet load balancing over their upstreams), but it's not a really smart move. If the paths vary in latency, you will have a lot of packet reordering to do at the endpoint, since packets will end up there in the wrong order. This can affect the throughput and latency in a negative way.

6
  • but if we use something similar to what happens in ECMP hashing and make sure data from the same stream will choose the same path, we won't have reordering issues, isn't that correct? Feb 14 at 12:26
  • Possibly, it all depends on how you would implement it.
    – Teun Vink
    Feb 14 at 12:27
  • So if, with a correct implementation, we don't have any reordering issues or any other issues, why isn't this mechanism commonly used? (according to your answer) Feb 14 at 12:28
  • 5
    I guess that is because there's no real benefit, and it mostly introduces potential problems and overhead.
    – Teun Vink
    Feb 14 at 12:50
  • If it is helpful, here are a couple of examples for implementation at a basic level and more advanced. ipwithease.com/bgp-multipath-scenario catchpoint.com/bgp-monitoring/bgp-multipath The second one addresses a bit more of the concern of traffic management, etc. I would agree that it is not commonly done because it is largely not necessary or very beneficial. Using a single best path is generally fine and when that path fails/changes then another path will easily be used. Feb 14 at 16:02

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge that you have read and understand our privacy policy and code of conduct.

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