rfc-8102

Remote-LFA Node Protection and Manageability

P. Sarkar (Editor), S. Hegde, C. Bowers, H. Gredler, S. Litkowski
date2017-03 streamIETF areartg wgrtgwg statusPROPOSED STANDARD pages22 canonicalhttps://www.rfc-editor.org/rfc/rfc8102 doi10.17487/RFC8102
The loop-free alternates (LFAs) computed following the current remote-LFA specification guarantees only link protection. The resulting remote-LFA next hops (also called "PQ-nodes") may not guarantee node protection for all destinations being protected by it. This document describes an extension to the remote-loop-free-based IP fast reroute mechanisms that specifies procedures for determining whether or not a given PQ-node provides node protection for a specific destination. The document also shows how the same procedure can be utilized for the collection of complete characteristics for alternate paths. Knowledge about the characteristics of all alternate paths is a precursor to applying the operator-defined policy for eliminating paths not fitting the constraints.

Extracted elements (19)

design-rationale §2.2.5

A candidate node-protecting PQ-node being in node-protecting extended P-space does not guarantee the full R-LFA alternate path is node-protecting; it guarantees only the S-to-PQ-node segment avoids E. A separate per-destination check via forward SPF on the PQ-node is required to validate the PQ-node-to-destination segment.

routing

design-rationale §1

RFC 7490 remote-LFA guarantees only link protection; the resulting PQ-nodes may not provide node protection for all destinations in the event of primary next-hop node failure. This document defines procedures to determine whether a PQ-node actually guarantees node protection for a specific destination.

routing

design-rationale §3.2

The additional forward SPF on each PQ-node also collects complete path attributes for the second R-LFA path segment (PQ-node to destination), enabling the alternate-selection policy from RFC 7916 Section 6.2.4 to evaluate both path segments rather than only the S-to-PQ-node segment.

routing

design-rationale §2.3.4

The proposal runs one extra forward SPF per PQ-node rather than per destination; since PQ-nodes are significantly more numerous than directly connected neighbors, a configurable subset limit (default 16) is introduced to keep computational overhead bounded — an explicit tradeoff between coverage breadth and SPF computation time.

routing

design-rationale §3.1

Without the mechanism in Section 2.3.2, two R-LFA alternates with identical first-segment characteristics but different second-segment attributes would appear equivalent to the policy engine; the proposed per-PQ-node SPF resolves this ambiguity at the cost of additional computation.

routing

interoperability-note §2.3.1

All metrics needed for the node-protecting extended P-space inequality are already collected during standard LFA (RFC 5286) forward SPFs rooted at each direct neighbor; no additional SPF runs are needed for the S-to-PQ-node segment check beyond what RFC 5286 requires.

routing

interoperability-note §2.3.2

SPF implementations that produce a traversed-node list can use path-list inspection as an alternative to the inequality checks in Figures 4 and 6: a PQ-node provides node protection only if no primary next-hop node appears in the shortest-path node list from the PQ-node to the destination.

routing

normative-requirement §2.3.3 MUST

For destinations with multiple ECMP primary next-hop nodes, the R-LFA path from the PQ-node to the destination MUST satisfy the node-protecting condition (Figure 6) for all primary next-hop nodes to qualify as a node-protecting R-LFA path.

routing

normative-requirement §2.3.4 MUST

Implementations MUST choose a subset from the entire set of PQ-nodes with a finite limit on the number of PQ-nodes (to bound SPF overhead). Implementations MUST choose a default value for this limit; this document suggests 16 as the default.

routing

normative-requirement §2.3.4 MUST

Implementations MUST evaluate default preference criteria when selecting PQ-nodes for the subset, and MAY allow operators to override these criteria via policy configuration.

routing

normative-requirement §2.3.1 SHOULD

Implementations SHOULD run the node-protecting extended P-space inequality (D_opt(Ni,Y) < D_opt(Ni,E) + D_opt(E,Y)) for all direct neighbors other than primary next-hop E to determine whether a node Y is a candidate node-protecting PQ-node.

routing

normative-requirement §2.3.4 SHOULD

Implementations SHOULD use a default PQ-node preference ordering: prefer PQ-nodes covering more primary interfaces, then prefer closer PQ-nodes (lower metric), then prefer lower router-id (or system-id for IS-IS) as a tiebreaker.

routing

normative-requirement §2.2.1 MUST

Link-Protecting Extended P-Space MUST exclude any direct neighbor for which there is at least one ECMP path from that neighbor traversing the link (S-E) being protected.

routing

normative-requirement §2.3.2 MUST

To compute all shortest paths from a candidate node-protecting PQ-node to destinations, the computing router MUST run a forward SPF rooted at each candidate node-protecting PQ-node. After the SPF, it SHOULD apply the inequality D_opt(Y,D) < D_opt(Y,E) + D_opt(E,D) once per destination to verify node protection.

routing

protocol-element §2.2.5

Candidate Node-Protecting PQ-Space: a node Y is in candidate node-protecting PQ-space if and only if Y is present in both the node-protecting extended P-space and the Q-space for the protected link. Membership guarantees only that the S-to-PQ-node path segment avoids the primary next-hop node E, not the full alternate path.

routing

protocol-element §2.2.1

Link-Protecting Extended P-Space: the set of routers reachable from direct neighbors of S (except primary next-hop E) without traversing the S-E link on any shortest path. Any direct neighbor with at least one ECMP path traversing S-E must be excluded.

routing

protocol-element §2.2.2

Node-Protecting Extended P-Space for a primary next-hop node E is the set of routers reachable from one or more direct neighbors of S (excluding E) without traversing node E, excluding any direct neighbor with at least one ECMP path traversing node E.

routing

protocol-element §2.2.3

Q-Space for link S-E: the set of nodes that can reach primary next-hop E without traversing the S-E link on any shortest path, excluding any node with at least one ECMP path to E traversing S-E. Cost condition: D_opt(Y,E) < D_opt(S,E) + D_opt(Y,S).

routing

security-consideration §5

This document introduces no changes to any protocol specification. It only proposes running an additional forward SPF rooted at each discovered PQ-node; therefore it introduces no new security considerations beyond those of the base remote-LFA specification (RFC 7490).

routing, security