rfc-9917

IGP Flexible Algorithms Reverse Affinity Constraint

P. Psenak, J. Horn, A. Dhamija
date2026-01 streamIETF areartg wglsr statusPROPOSED STANDARD pages12 canonicalhttps://www.rfc-editor.org/rfc/rfc9917 doi10.17487/RFC9917
An IGP Flexible Algorithm (Flex-Algorithm) enables the computation of constraint-based paths within an IGP domain, allowing operators to influence path selection according to administrative policies. This document defines an extension to Flex-Algorithm that allows the inclusion or exclusion of links from path computation based on Administrative Groups (also known as link affinities) associated with the reverse direction of the path under computation. This document updates RFCs 9350 and 9843 by introducing the new IANA registry that specifies the ordered set of rules that are used to prune links from the topology during the Flex-Algorithm path computation.

updates

Extracted elements (20)

design-rationale §3

Reverse affinity constraints are introduced to allow exclusion of a forward-direction link based on conditions detectable only at the far end of the link — for example, CRC or input errors at node B on the link from A to B, which node B can signal by setting Extended Administrative Groups on its reverse-direction edge (B to A). This enables policy-driven topology pruning based on far-end link health.

routing, mpls

design-rationale §4

Threshold-based setting of Extended Administrative Groups on links should use hysteresis (higher threshold to set, lower to unset) and IGP throttling mechanisms to avoid excessive LSP/LSA flooding and constant Flex-Algorithm recalculation when link quality fluctuates near a boundary.

routing

interoperability-note §12.3.1

Backward compatibility with existing Flex-Algorithm implementations is guaranteed for new path computation rules because nodes that do not support a new constraint will not participate in a Flex-Algorithm whose winning FAD specifies that constraint. New rules may therefore be inserted at any position in the registry without disrupting existing deployments.

routing, mpls

normative-requirement §11 MUST

During Flex-Algorithm path computation, if an exclude reverse Admin Group rule is present in the FAD and any matching Admin Group is set on the reverse-direction link, the link MUST be pruned from the computation.

routing, mpls

normative-requirement §11 MUST

During Flex-Algorithm path computation, if an include-all reverse Admin Group rule is present in the FAD and not all required Admin Groups are set on the reverse-direction link, the link MUST be pruned from the computation.

routing, mpls

normative-requirement §12.3.1 MUST NOT

For the 'IGP Flex-Algorithm Path Computation Rules' registry, the relative ordering of existing rules MUST NOT be altered, rules MUST NOT be deleted, and merging or repeating of rules MUST NOT be done; a new constraint rule MAY be inserted at any position without breaking backward compatibility because unsupporting nodes will not participate in algorithms specifying unknown constraints.

routing, registry

normative-requirement §5 MUST NOT

The IS-IS FAERAG Sub-TLV MUST NOT appear more than once in a single IS-IS FAD Sub-TLV. If it appears more than once, the IS-IS FAD Sub-TLV MUST be ignored by the receiver.

routing

normative-requirement §5 MUST

The Length field of the IS-IS FAERAG Sub-TLV MUST be a multiple of 4 octets. If the length is not a multiple of 4 octets, the entire sub-TLV MUST be ignored by the receiver.

routing

normative-requirement §8 MUST

The Length field of the OSPF FAERAG Sub-TLV MUST be a multiple of 4 octets. If not, the entire sub-TLV MUST be ignored. The OSPF FAERAG Sub-TLV MUST NOT appear more than once in an OSPF FAD TLV; if it does, the entire FAD TLV MUST be ignored.

routing

normative-requirement §5 MUST

When the IS-IS FAERAG Sub-TLV appears more than once in the set of FAD Sub-TLVs for a given Flex-Algorithm from a given IS, the first occurrence in the lowest-numbered LSP from that IS MUST be used and any other occurrences MUST be ignored.

routing

protocol-element §5

The IS-IS Flexible Algorithm Exclude Reverse Admin Group Sub-TLV (Type 10) advertises an exclude rule for use during Flex-Algorithm path computation: links whose reverse-direction edge carries any matching Admin Group are pruned from the computed topology.

routing, mpls

protocol-element §7

The IS-IS Flexible Algorithm Include-All Reverse Admin Group Sub-TLV (Type 12) advertises an include-all rule: during Flex-Algorithm path computation, any link whose reverse direction does not have all Admin Groups in the include-all rule set is pruned. Its format is identical to the FAERAG Sub-TLV.

routing, mpls

protocol-element §6

The IS-IS Flexible Algorithm Include-Any Reverse Admin Group Sub-TLV (Type 11) advertises an include-any rule: during Flex-Algorithm path computation, any link whose reverse direction has no Admin Group matching the include-any rule is pruned. Its format is identical to the FAERAG Sub-TLV.

routing, mpls

protocol-element §8

The OSPF Flexible Algorithm Exclude Reverse Admin Group Sub-TLV (Type 10), Include-Any Reverse Admin Group Sub-TLV (Type 11), and Include-All Reverse Admin Group Sub-TLV (Type 12) are sub-TLVs of the OSPF FAD TLV with formats identical to the OSPF FAERAG Sub-TLV; each enforces the corresponding reverse-direction Admin Group constraint during path computation.

routing, mpls

registry §12.3

IANA has created the 'IGP Flex-Algorithm Path Computation Rules' registry within the 'Interior Gateway Protocol (IGP) Parameters' group, using Expert Review registration procedures. The registry specifies the ordered set of link-pruning rules applied during Flex-Algorithm SPF computation, seeded with 10 rules covering exclude AG, exclude SRLG, include-any AG, include-all AG, metric availability, exclude min-bandwidth, exclude max-delay, exclude reverse AG, include-any reverse AG, and include-all reverse AG.

routing, registry, mpls

registry §12.1

IANA has registered IS-IS Sub-Sub-TLV types 10 (Flexible Algorithm Exclude Reverse Admin Group), 11 (Include-Any Reverse Admin Group), and 12 (Include-All Reverse Admin Group) in the 'IS-IS Sub-Sub-TLVs for Flexible Algorithm Definition Sub-TLV' registry under 'IS-IS TLV Codepoints', all with MP=n.

routing, registry

registry §12.2

IANA has registered OSPF FAD TLV Sub-TLV types 10 (Flexible Algorithm Exclude Reverse Admin Group), 11 (Include-Any Reverse Admin Group), and 12 (Include-All Reverse Admin Group) in the 'OSPF Flexible Algorithm Definition TLV Sub-TLVs' registry under 'Open Shortest Path First (OSPF) Parameters'.

routing, registry

security-consideration §13

This document inherits all security considerations from RFC 9350 (IGP Flexible Algorithm). No new security threats specific to the reverse affinity constraint extension are identified beyond those already addressed by the base Flex-Algorithm specification.

security, routing

wire-format §5

The IS-IS Flexible Algorithm Exclude Reverse Admin Group (FAERAG) Sub-TLV has a 1-octet Type field (value 10), a 1-octet Length field (variable, must be a multiple of 4 octets), and a variable-length Extended Admin Group field as defined in RFC 7308. It is a sub-TLV of the IS-IS FAD Sub-TLV.

routing, mpls

wire-format §8

The OSPF Flexible Algorithm Exclude Reverse Admin Group (FAERAG) Sub-TLV has a 2-octet Type field (value 10), a 2-octet Length field (variable, must be a multiple of 4 octets), and a variable-length Extended Admin Group field as defined in RFC 7308. It is a sub-TLV of the OSPF FAD TLV.

routing, mpls