rfc-7490

Remote Loop-Free Alternate (LFA) Fast Reroute (FRR)

S. Bryant, C. Filsfils, S. Previdi, M. Shand, N. So
date2015-04 streamIETF areartg wgrtgwg statusPROPOSED STANDARD pages29 canonicalhttps://www.rfc-editor.org/rfc/rfc7490 doi10.17487/RFC7490
This document describes an extension to the basic IP fast reroute mechanism, described in RFC 5286, that provides additional backup connectivity for point-to-point link failures when none can be provided by the basic mechanisms.

Extracted elements (29)

design-rationale §5.2.1.2

Extended P-space is introduced because S only uses a repair path after detecting failure of S-E, so the initial hop need not follow normal forwarding. By also including the P-spaces of S's neighbors, S can reach candidate PQ nodes that are unreachable via S's own P-space, substantially increasing repair coverage.

routing

design-rationale §3

RLFA is deliberately scoped to point-to-point link failures only, excluding broadcast/NBMA failed interfaces and node failures, to keep the mechanism simple. MPLS-TE FRR already exists to handle arbitrary topologies at greater complexity cost.

routing

design-rationale §11

The original 2002/2004 IP-FRR tunnel proposal targeted 100% coverage and included mechanisms beyond remote LFA, making it computationally intensive and not pursued as a WG item. Remote LFA is positioned as a simpler second step after local LFA, accepting less-than-100% coverage in exchange for tractable complexity.

routing

design-rationale §5.2.2

The PQ node closest to S is preferred as the default choice because choosing the closest node maximizes the opportunity for load balancing once the packet is released from the tunnel.

routing

design-rationale §5.2.1.3

The Q-space of E is used as a proxy for the per-destination Q-space rather than computing per-destination repair tunnel endpoints, because a per-destination SPF computation would not currently be considered scalable. This is analogous to using link LFAs rather than per-prefix LFAs.

routing

design-rationale §3

The repair path computation is confined to a single area or level-2 routing domain. Cross-area PQ nodes should be treated as tunnel adjacencies per RFC 5286 Section 6. This simplification avoids the complexity of inter-area loop-freedom analysis.

routing

interoperability-note §5.4

Forward SPFs rooted at PLR neighbors must account for IS-IS overload, OSPF stub router advertisement (RFC 6987), and costed-out links. A repair tunnel path may otherwise traverse a node or link that should be excluded, requiring two additional MUST NOT checks on the first-hop metric and tunnel endpoint overload state.

routing

interoperability-note §8

In the absence of a protocol to advertise the preferred IP address for targeted LDP, an LSR should attempt a TLDP session using the Router ID as defined in RFC 2328, RFC 5305, RFC 5340, RFC 6119, or OSPF-RI, unless configured otherwise.

routing, mpls

interoperability-note §8

No protection is available until the TLDP session has been established and a label for the destination has been learned from the remote LFA repair target. New tunnels require TLDP session setup and label acquisition before they can carry repair traffic, limiting the speed of bringing a new tunnel into service.

routing, mpls

interoperability-note §7

When the failure is a node failure rather than a link failure, RLFA repairs can loop: two neighbors of the failed node, each with the failed node as next-hop to some destination, may attempt to repair via each other, forming a mutual repair loop. Mitigations include dropping re-arrived repair packets, requiring node-protecting paths, or applying a downstream constraint.

routing

normative-requirement §8 SHOULD

If for any reason the targeted LDP session to the repair tunnel endpoint cannot be established, an implementation SHOULD advise the operator about the protection setup issue through the network management system.

routing, mpls

normative-requirement §12 SHOULD

IP repair tunnel endpoints SHOULD be assigned from a set of addresses that are not reachable from outside the routing domain to prevent their use as an attack vector.

routing, security

normative-requirement §5.2.2 RECOMMENDED

It is RECOMMENDED that the PQ node with the lowest cost S->P be the default choice for the repair tunnel endpoint. In the event of a tie, the router with the lowest node identifier SHOULD be selected.

routing

normative-requirement §5.4 MUST NOT

The PLR MUST NOT use a repair tunnel endpoint with the IS-IS overload bit set or where all outgoing interfaces have cost set to MaxLinkMetric for OSPF, as such nodes signal a desire to not carry transit traffic.

routing

normative-requirement §5.2 MUST

The repair tunnel endpoint MUST be reachable from the tunnel source without traversing the failed link, and packets released from the tunnel MUST proceed towards their destination without being attracted back over the failed link.

routing

normative-requirement §12 MUST NOT

The repair tunnel MUST NOT be advertised by the routing protocol as a link that may be used to carry normal user traffic or routing protocol traffic.

routing, security

normative-requirement §3 MUST NOT

The repair tunnel MUST NOT be used for normal traffic; it is only activated upon detection of a link failure. OAM traffic used to verify the viability of the repair MAY traverse the tunnel prior to a failure.

routing

normative-requirement §4.1 MUST NOT

The repair tunnel MUST NOT traverse the protected link S-E. Routing traffic through the failed link would defeat the purpose of the repair.

routing

normative-requirement §4.2 MUST

The repair tunnel used MUST be provisioned beforehand in anticipation of failure so that traffic can be immediately redirected when a failure is detected. Since tunnel location is dynamically determined, tunnels must be established automatically.

routing

protocol-element §2

A PQ node is a node that is a member of both the extended P-space of S with respect to link S-E and the Q-space of E with respect to that link. Repair tunnel endpoints are chosen from the set of PQ nodes; they guarantee loop-free delivery after a single link failure.

routing

protocol-element §4.1

A repair tunnel is a tunnel established from the Point of Local Repair (PLR) to a PQ node so that the PQ node functions as a virtual loop-free alternate neighbor. The tail end of the tunnel is the PQ node, not the far-end router E of the protected link.

routing, mpls

protocol-element §4.2

A targeted LDP (TLDP) session must be established between the repairing node and the repair tunnel endpoint so the repairing node can learn the PQ node's label binding for each destination. The LSP from S to the PQ node is already available as a basic property of LDP, requiring no new protocol extensions.

routing, mpls

protocol-element §5.3

An optional downstream constraint (Apply_Downstream_Constraint) requires that the PQ node be strictly closer to the destination than the repairing node, i.e., D_opt(PQ,dest) < D_opt(self,dest). This prevents loop formation when the failure is worse than expected (e.g., node failure) at the cost of reduced repair coverage.

routing

protocol-element §2

Extended P-space of S with respect to link S-E is the union of the P-spaces of each of S's neighbors (excluding E) with respect to that link. A router P is in extended P-space if D_opt(N,P) < D_opt(N,S) + D_opt(S,P) for some neighbor N. Extended P-space allows S to reach potential repair tunnel endpoints unreachable via plain P-space.

routing

protocol-element §8

In an MPLS/LDP environment, the RLFA label stack uses two labels: the outer label is S's neighbor's label for the PQ node (repair tunnel endpoint), and the inner label is the PQ node's label for the packet destination, obtained via a targeted LDP session to the PQ node.

routing, mpls

protocol-element §2

P-space of a router S with respect to a protected link S-E is the set of routers reachable from S using pre-convergence shortest paths without any of those paths transiting the protected link, including ECMP splits. In cost terms, {P} are nodes for which D_opt(S,P) < D_opt(S,E,P).

routing

protocol-element §2

Q-space of E with respect to link S-E is the set of routers from which E can be reached by normal forwarding without traversing S-E. Computed via a reverse SPT rooted at E with the subtree potentially traversing S-E excised. In cost terms, {Q} are nodes for which D_opt(Q,E) < D_opt(Q,S) + D_opt(S,E).

routing

protocol-element §5.3

The cost-based RLFA algorithm proceeds in four steps: (1) compute forward SPF from self; (2) compute SPFs at each neighbor for extended P-space; (3) compute reverse SPF at the far-end node for Q-space; (4) intersect extended P-space and Q-space, excluding pseudonodes, to find valid tunnel endpoints.

routing

security-consideration §12

The security considerations of RFC 5286 apply. Targeted LDP sessions and MPLS tunnels are normal MPLS features and raise no additional security concerns in this application. IP repair tunnel endpoints SHOULD be assigned from addresses not reachable from outside the routing domain to prevent use as attack vectors, and the repair tunnel MUST NOT be advertised for normal traffic.

security, routing