BGP ORR provides a model for integrating the client's perspective into the BGP route selection Decision Process for route reflectors. More specifically, the choice of BGP path takes into account either the IGP cost between the client and the next hop (rather than the IGP cost from the route reflector to the next hop) or other user-configured policies.
The achievement of optimal routing between clients of different clusters relies upon all route reflectors learning all paths that are eligible for consideration. In order to satisfy this requirement, BGP ADD-PATH [RFC 7911
] needs to be deployed between route reflectors.
This solution can be deployed in hop-by-hop forwarding networks as well as in end-to-end tunneled environments. To avoid routing loops in networks with multiple route reflectors and hop-by-hop forwarding without encapsulation, it is essential that the network topology be carefully considered in designing a route reflection topology (see also Section 11
of RFC 4456
As discussed in Section 11
of RFC 4456
, the IGP locations of BGP route reflectors are important and have routing implications. This equally applies to the choice of the IGP locations configured on optimal route reflectors. If a backup location is provided, it is used when the primary IGP location disappears from the IGP (i.e., fails). Just like the failure of a route reflector [RFC 4456
], it may result in changing the paths selected and advertised to the clients, and in general, the post-failure paths are expected to be less optimal. This is dependent on the IGP topologies and the IGP distance between the primary and backup IGP locations: the smaller the distance, the smaller the potential impact.
After selecting N suitable IGP locations, an operator can choose to enable route selection for all of them on all or on a subset of their route reflectors. The operator may alternatively deploy single or multiple (backup case) route reflectors for each IGP location or create any design in between. This choice may depend on the operational model (centralized vs. per region), an acceptable blast radius in the case of failure, an acceptable number of IBGP sessions for the mesh between the route reflectors, performance, and configuration granularity of the equipment.
With this approach, an ISP can effect a hot potato routing policy even if route reflection has been moved out of the forwarding plane and hop-by-hop forwarding has been replaced by end-to-end MPLS or IP encapsulation. Compared with a deployment of ADD-PATH on all routers, BGP ORR reduces the amount of state that needs to be pushed to the edge of the network in order to perform hot potato routing.
Modifying the IGP location of BGP ORR does not interfere with policies enforced before IGP tie-breaking (step e) of RFC 4271
, Section 126.96.36.199
) in the BGP Decision Process.
Calculating routes for different IGP locations requires multiple Shortest Path First (SPF) calculations and multiple (subsets of) BGP Decision Processes. This scenario calls for more computing resources. This document allows for different granularity, such as one Decision Process per route reflector, per set of clients, or per client. A more fine-grained granularity may translate into more optimal hot potato routing at the cost of more computing power. Choosing to configure an IGP location per client has the highest precision, as each client can be associated with their ideal (own) IGP location. However, doing so may have an impact on performance (as explained above). Using an IGP location per set of clients implies a loss of precision but reduces the impact on the performance of the route reflector. Similarly, if an IGP location is selected for the whole routing instance, the lowest precision is achieved, but the impact on performance is minimal. In the last mode of operation (where an IGP location is selected for the whole routing instance), both precision and performance metrics are equal to route reflection as described in [RFC 4456
]. The ability to run fine-grained computations depends on the platform/hardware deployed, the number of clients, the number of BGP routes, and the size of the IGP topology. In essence, sizing considerations are similar to the deployments of BGP route reflectors.