5

So we've got a couple of BGP upstream providers, whom both are providing us with their full internet routing tables.

What we are now wanting to do, is utilize both providers, rather than just one being preferred and the other on standby.

Reading through most of this document from Juniper.

https://www.juniper.net/documentation/en_US/junos/topics/example/bgp-multipath-unequal.html

Which, although talks about Unequal Paths, which some are, and some arent. It refers to only balancing between a set of BGP peers whom use the same ASN.

My question is, how do I apply this, to two different BGP peers from different ASNs?

We have our BGP peers configured in groups, if you're asking.

TIA, D

  • 1
    If you receive full tables from your upstreams, your router should chose a best path for each route so there should be some balance between the uplinks. Per packet loadbalancing over multiple external networks is a bad idea, out of order packets can kill your performance then. It would be useful to share your configurations and describe your topology in more detail. – Teun Vink Oct 26 '18 at 9:57
  • Ah, yes! Thank you for that. Yes, actually links are some what balanced. I guess I'm probably still thinking as if I was connected only one provider, rather than having two. – Unwittingly Simple Oct 26 '18 at 10:01
  • Even with a single provider, it can be a really bad idea. – Ron Maupin Oct 26 '18 at 13:57
4

Per packet load balancing via upstream networks is a bad idea, performance will suffer from out of order packets (which you will have no control over).

If you want to balance traffic between your upstreams, the smart thing to do is to set local preference on specific prefixes or ASNs you've learned so that traffic to those prefixes is preferred via a specific upstream. This will not be perfect either since it's not a very fine grained method, but it can give you a better balance for outbound traffic between upstreams.

For example, you can prefer traffic to and via AS 1234 and 2345 this way:

   policy-statement transit1-preferred {
        from as-path-group PREFERRED-VIA-TRANSIT1;
        then {
            local-preference 220;
            accept;
        }
    }

    as-path-group PREFERRED-VIA-TRANSIT1 {
        as-path ASN1 ".* 1234 .*";
        as-path ASN2 ".* 2345 .*";
    }

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

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