rfc-9107

BGP Optimal Route Reflection (BGP ORR)

R. Raszuk (Editor), B. Decraene (Editor), C. Cassar, E. Åman, K. Wang
date2021-08 streamIETF areartg wgidr statusPROPOSED STANDARD pages9 canonicalhttps://www.rfc-editor.org/rfc/rfc9107 doi10.17487/RFC9107
This document defines an extension to BGP route reflectors. On route reflectors, BGP route selection is modified in order to choose the best route from the standpoint of their clients, rather than from the standpoint of the route reflectors themselves. Depending on the scaling and precision requirements, route selection can be specific for one client, common for a set of clients, or common for all clients of a route reflector. This solution is particularly applicable in deployments using centralized route reflectors, where choosing the best route based on the route reflector's IGP location is suboptimal. This facilitates, for example, a "best exit point" policy ("hot potato routing"). The solution relies upon all route reflectors learning all paths that are eligible for consideration. BGP route selection is performed in the route reflectors based on the IGP cost from configured locations in the link-state IGP.

Extracted elements (16)

design-rationale §3

BGP ORR allows an operator to specify one or more IGP locations for which the route reflector calculates interior cost to the next hop, enabling hot potato routing even when the route reflector is not in the forwarding path. A significant advantage is that route reflector clients do not need to be modified.

bgp, routing

design-rationale §4

Compared with deploying 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, while enabling hot potato routing even when route reflection has moved out of the forwarding plane.

bgp, routing

design-rationale §4

Granularity of IGP location configuration presents a precision-vs-performance tradeoff: per-client is most precise but most CPU-intensive (one SPF and Decision Process subset per client); per-set-of-clients reduces precision but lowers compute load; per-routing-instance is equivalent in both precision and performance to standard RFC 4456 route reflection.

bgp, routing

design-rationale §4

If a backup IGP location is configured and the primary IGP location disappears from the IGP (fails), the backup is used. Similar to the failure of a route reflector itself, this may result in less optimal paths being selected and advertised; the smaller the IGP distance between primary and backup, the smaller the impact.

bgp, routing

design-rationale §3.1

Knowledge of the IGP topology for the area/level that includes each selected IGP location is needed to compute the shortest path tree. This knowledge can be gained via a link-state IGP (IS-IS or OSPF) or via BGP-LS (RFC 7752).

bgp, routing

design-rationale §1

Route reflectors placed outside the forwarding path select the best path based on their own IGP location, not their clients'. When IGP tie-breaking determines the best path, the exit point chosen is closest to the route reflector, not to the clients, making hot potato routing unachievable.

bgp, routing

interoperability-note §4

BGP ORR can be deployed in both hop-by-hop forwarding networks and end-to-end tunneled environments. To avoid routing loops in networks with multiple route reflectors using hop-by-hop forwarding without encapsulation, the network topology must be carefully considered when designing a route reflection topology.

bgp, routing

normative-requirement §3 REQUIRED

An implementation is considered compliant with this document if it supports at least one grouping category for IGP location configuration: per route reflector, per set of clients, or per client.

bgp, routing

normative-requirement §3.1.1 SHOULD

In situations where the BGP next hop is itself a BGP route, the IGP metric used for resolution SHOULD be the final IGP cost to reach that next hop. Implementations that cannot provide the final IGP metric to a recursive next hop MUST treat such paths as least preferred during next-hop metric comparisons.

bgp, routing

normative-requirement §3.1 MUST

In the modified BGP Decision Process step e), the interior cost of a route is determined by calculating the metric from the selected IGP location to the NEXT_HOP for the route using the shortest IGP path tree rooted at the selected IGP location, rather than from the route reflector itself.

bgp, routing

normative-requirement §3.1.1 MUST

Paths where the BGP next hop is a recursive BGP route and the final IGP metric cannot be determined MUST still be considered valid for BGP Phase 2 route selection, even though they are treated as least preferred during next-hop metric comparisons.

bgp, routing

normative-requirement §4 REQUIRED

To achieve optimal routing between clients of different clusters, all route reflectors must learn all paths eligible for consideration. BGP ADD-PATH (RFC 7911) needs to be deployed between route reflectors to satisfy this requirement.

bgp, routing

normative-requirement §3.1 SHOULD

When specifying the logical IGP location of a route reflector for a group of clients, one or more backup IGP locations SHOULD be allowed to be specified for redundancy.

bgp, routing

protocol-element §3

An IGP location is defined as a node in the IGP topology, identified by an IP address of that node (e.g., a loopback address). It may be configured on a per-route-reflector basis, per set of clients, or on a per-client basis.

bgp, routing

protocol-element §3.2

BGP ORR may require multiple BGP Decision Processes or subsets thereof in order to consider different IGP locations or BGP policies for different sets of clients. If only IGP cost optimization is needed, only step e) and subsequent steps need to run multiple times; if different BGP policies are needed, a larger portion or the entire Decision Process must run multiple times.

bgp, routing

security-consideration §5

BGP ORR provides a new metric value using additional IGP information for computing routes on route reflectors. While any improperly used metric value could impact network resiliency, this extension does not change the underlying security issues inherent in existing IBGP per RFC 4456, and introduces no requirements for new protection measures.

bgp, security, routing