LSR Working Group
Internet Engineering Task Force (IETF) P. Psenak
Internet-Draft
Request for Comments: 9917 J. Horn
Updates: 9350 (if approved) 9350, 9843 Cisco Systems
Intended status:
Category: Standards Track A. Dhamija
Expires: 6 February 2026
ISSN: 2070-1721 Arrcus
5 August 2025
January 2026
IGP Flexible Algorithms Reverse Affinity Constraint
draft-ietf-lsr-igp-flex-algo-reverse-affinity-12
Abstract
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 extension enhances the path selection capabilities of Flex-
Algorithm by enabling reverse-affinity-based constraints, which are
particularly useful for scenarios where path symmetry or directional
link attributes are operationally significant.
This document updates [RFC9350] RFCs 9350 and [I-D.ietf-lsr-flex-algo-bw-con] 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.
Status of This Memo
This Internet-Draft is submitted in full conformance with the
provisions of BCP 78 and BCP 79.
Internet-Drafts are working documents an Internet Standards Track document.
This document is a product of the Internet Engineering Task Force
(IETF). Note that other groups may also distribute
working documents as Internet-Drafts. The list It represents the consensus of current Internet-
Drafts is at https://datatracker.ietf.org/drafts/current/.
Internet-Drafts are draft documents valid the IETF community. It has
received public review and has been approved for a maximum publication by the
Internet Engineering Steering Group (IESG). Further information on
Internet Standards is available in Section 2 of six months RFC 7841.
Information about the current status of this document, any errata,
and how to provide feedback on it may be updated, replaced, or obsoleted by other documents obtained at any
time. It is inappropriate to use Internet-Drafts as reference
material or to cite them other than as "work in progress."
This Internet-Draft will expire on 6 February 2026.
https://www.rfc-editor.org/info/rfc9917.
Copyright Notice
Copyright (c) 2025 2026 IETF Trust and the persons identified as the
document authors. All rights reserved.
This document is subject to BCP 78 and the IETF Trust's Legal
Provisions Relating to IETF Documents (https://trustee.ietf.org/
license-info)
(https://trustee.ietf.org/license-info) in effect on the date of
publication of this document. Please review these documents
carefully, as they describe your rights and restrictions with respect
to this document. Code Components extracted from this document must
include Revised BSD License text as described in Section 4.e of the
Trust Legal Provisions and are provided without warranty as described
in the Revised BSD License.
Table of Contents
1. Introduction . . . . . . . . . . . . . . . . . . . . . . . . 3
2. Requirements Language . . . . . . . . . . . . . . . . . . . . 3
3. Use Case Example . . . . . . . . . . . . . . . . . . . . . . 4
4. Deployment Consideration . . . . . . . . . . . . . . . . . . 4
5. IS-IS Flexible Algorithm Exclude Reverse Admin Group Sub-TLV . . . . . . . . . . . . . . . . . . . . . . . . . 5
6. IS-IS Flexible Algorithm Include-Any Reverse Admin Group
Sub-TLV . . . . . . . . . . . . . . . . . . . . . . . . . 6
7. IS-IS Flexible Algorithm Include-All Reverse Admin Group
Sub-TLV . . . . . . . . . . . . . . . . . . . . . . . . . 6
8. OSPF Flexible Algorithm Exclude Reverse Admin Group Sub-TLV . . . . . . . . . . . . . . . . . . . . . . . . . 7
9. OSPF Flexible Algorithm Include-Any Reverse Admin Group Sub-TLV . . . . . . . . . . . . . . . . . . . . . . . . . 7
10. OSPF Flexible Algorithm Include-All Reverse Admin Group Sub-TLV . . . . . . . . . . . . . . . . . . . . . . . . . 8
11. Calculation of Flexible Algorithm Paths . . . . . . . . . . . 8
12. IGP Flex-Algorithm Path Computation Rules Registry . . . . . 9
13. IANA Considerations . . . . . . . . . . . . . . . . . . . . . 9
13.1. Sub-Sub-TLVs for Flexible Algorithm Definition Sub-TLV . . . . . . . . . . . . . . . . . . . . . . . . 9
13.2. OSPF Flexible Algorithm Definition TLV Sub-TLV Registry . . . . . . . . . . . . . . . . . . . . . . . . 10
13.3. IGP Flex-Algorithm Path Computation Rules Registry . . . 11
14. Security Considerations . . . . . . . . . . . . . . . . . . . 15
15. Acknowledgements . . . . . . . . . . . . . . . . . . . . . . 15
16. Normative References . . . . . . . . . . . . . . . . . . . . 15
16. Informative References
Acknowledgments
Authors' Addresses . . . . . . . . . . . . . . . . . . . . . . . 16
1. Introduction
IGP protocols historically computed the best paths over the network
solely based on the IGP metric assigned to the links. An IGP Flex-
Algorithm as specified in [RFC9350] allows IGPs to compute
constraint-based paths. Several mechanisms to include or exclude the
link during the Flex-Algorithm path calculation have been defined
already:
-
* link inclusion or exclusion based on the presence of a specific
Admin Group(s) - [RFC9350]
-
* link exclusion based on the presence of a specific Shared Risk
Link Group (SRLG) - [RFC9350]
-
* link exclusion based on minimum bandwidth -
[I-D.ietf-lsr-flex-algo-bw-con]
- [RFC9843]
* link exclusion based on maximum delay -
[I-D.ietf-lsr-flex-algo-bw-con] [RFC9843]
This document extends IGP Flex-Algorithm with additional constraints
for inclusion or exclusion of links in the path based on Admin Groups
associated with the reverse direction of the SPF path Shortest Path First
(SPF) computation.
This document updates [RFC9350] and [I-D.ietf-lsr-flex-algo-bw-con] [RFC9843] by creating the new
IANA registry that specifies the ordered set of rules that are used
to prune links from the topology during the Flex-
Algorithm Flex-Algorithm path
computation (refer to Section 12).
The term OSPF in this document is used to cover both OSPFv2 and
OSPFv3 protocols.
2. Requirements Language
The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT",
"SHOULD", "SHOULD NOT", "RECOMMENDED", "NOT RECOMMENDED", "MAY", and
"OPTIONAL" in this document are to be interpreted as described in
BCP 14 [RFC2119] [RFC8174] when, and only when, they appear in all
capitals, as shown here.
3. Use Case Example
The Flexible Algorithm definition Definition (FAD) can specify Extended
Administrative Groups that are used by the operator to include or
exclude links during the Flex-Algorithm path computation [RFC9350].
These link Extended Administrative Groups are checked in the path
direction of the SPF computation, e.g., in the direction from the
root vertex toward verticies vertices of increasing distance.
In certain scenarios, it is beneficial to evaluate the Extended
Administrative Groups associated with the reverse direction of a
link, rather than solely those in the direction of path computation.
Consider a point-to-point link represented as a pair of directed
edges between two nodes, A and B. When computing a path from A to B,
issues such as input errors on the link, detectable only at the
receiving node B, may be operationally significant. An operator
might monitor metrics like CRC Cyclic Redundancy Check (CRC) errors or
other input-related faults at node B and apply thresholds over a
defined observation period. If such a threshold is exceeded, node B
may locally assign specific Extended Administrative Groups to the
link in the direction from B to A.
To accommodate this operational intent, the Flex-Algorithm can be
extended to inspect the Extended Administrative Groups of the
reverse-direction edge (from B to A) when evaluating the forward-
direction edge (from A to B) during path computation. This enables
the exclusion of links from the computed topology based on conditions
detected at the far end of the link, improving network reliability
and policy control.
4. Deployment Consideration
Threshold based
Threshold-based setting of the link Extended Administrative Groups
must be done with care to avoid excessive flooding and constant Flex-
Algorithm path re-calculation. recalculation.
One possible approach is to use two different thresholds when setting
and un-setting unsetting the Extended Administrative Group on the link. For
example, when setting the Extended Administrative Group on the link
based on the percentage of certain incoming errors, higher threshold
is used for setting and lower threshold is used for un-setting unsetting the
Extended Administrative Group on the link.
Many implementations provide a throttling mechanism that limits the
rate at which the LSP Label Switched Path (LSP) in case of ISIS, IS-IS, or LSA Link
State Advertisement (LSA) in case of OSPFv2 and OSPFv3, is updated at
the originator. Such mechanism is typically not specific to any
particular link attribute, but rather considers any change in the LSP
or LSA. Usage of such throttling mechanism can also be used to avoid
frequent changes in the setting of the Extended Administrative Group
on a link to affect the stability of the receivers.
5. IS-IS Flexible Algorithm Exclude Reverse Admin Group Sub-TLV
The IS-IS Flexible Algorithm Exclude Reverse Admin Group (FAERAG)
Sub-TLV is used to advertise the exclude rule that is used during the
Flex-Algorithm path calculation as specified in Section 11.
The IS-IS FAERAG Sub-TLV is a Sub-TLV sub-TLV of the IS-IS FAD Sub-TLV. It
has the following format:
0 1 2 3
0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Type | Length |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Extended Admin Group |
+- -+
| ... |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
where:
Type (1 octet): 10
Length (1 octet): Variable, dependent on the size of the Extended
Admin Group. The length MUST be a multiple of 4 octets. If the
length is not a multiple of 4 octets, the entire Sub-TLV sub-TLV MUST be
ignored by the receiver.
Extended Administrative Group: Extended Administrative Group as
defined in [RFC7308].
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.
The IS-IS FAERAG Sub-TLV MUST NOT appear more than once in the set of
FAD sub-TLVs Sub-TLVs for a given Flex-Algorithm from a given IS. If it
appears more than once in such set, the IS-IS FAERAG Sub-TLV in the
first occurrence in the lowest numbered lowest-numbered LSP from a given IS MUST be
used and any other occurrences MUST be ignored by the receiver.
6. IS-IS Flexible Algorithm Include-Any Reverse Admin Group Sub-TLV
The IS-IS Flexible Algorithm Include-Any Reverse Admin Group Sub-TLV
is used to advertise the include-any rule that is used during the
Flex-Algorithm path calculation as specified in Section 11.
The format of the IS-IS Flexible Algorithm Include-Any Reverse Admin
Group Sub-TLV is identical to the format of the FAERAG Sub-TLV in
Section 5.
IANA has assigned Type value of 11 for the IS-IS Flexible Algorithm
Include-Any Reverse Admin Group Sub-TLV.
The IS-IS Flexible Algorithm Include-Any Reverse Admin Group 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.
The IS-IS Flexible Algorithm Include-Any Reverse Admin Group Sub-TLV
MUST NOT appear more than once in the set of FAD sub-TLVs Sub-TLVs for a given
Flex-Algorithm from a given IS. If it appears more than once in such
set, the IS-IS Flexible Algorithm Include-Any Reverse Admin Group
Sub-TLV in the first occurrence in the lowest numbered lowest-numbered LSP from a
given IS MUST be used and any other occurrences MUST be ignored by
the receiver.
7. IS-IS Flexible Algorithm Include-All Reverse Admin Group Sub-TLV
The IS-IS Flexible Algorithm Include-All Reverse Admin Group Sub-TLV
is used to advertise the include-all rule that is used during the
Flex-Algorithm path calculation as specified in Section 11.
The format of the IS-IS Flexible Algorithm Include-All Reverse Admin
Group Sub-TLV is identical to the format of the FAERAG Sub-TLV in
Section 5.
IANA has assigned Type value of 12 for the IS-IS Flexible Algorithm
Include-All Reverse Admin Group Sub-TLV.
The IS-IS Flexible Algorithm Include-All Reverse Admin Group 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.
The IS-IS Flexible Algorithm Include-All Reverse Admin Group Sub-TLV
MUST NOT appear more than once in the set of FAD sub-TLVs Sub-TLVs for a given
Flex-Algorithm from a given IS. If it appears more than once in such
set, the IS-IS Flexible Algorithm Include-All Reverse Admin Group
Sub-TLV in the first occurrence in the lowest numbered lowest-numbered LSP from a
given IS MUST be used and any other occurrences MUST be ignored by
the receiver.
8. OSPF Flexible Algorithm Exclude Reverse Admin Group Sub-TLV
The OSPF Flexible Algorithm Exclude Reverse Admin Group (FAERAG) Sub-
TLV is used to advertise the exclude rule that is used during the
Flex-Algorithm path calculation as specified in Section 11.
The OSPF FAERAG Sub-TLV is a Sub-TLV sub-TLV of the OSPF FAD TLV. It has the
following format:
0 1 2 3
0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Type | Length |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Extended Admin Group |
+- -+
| ... |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
where:
Type (2 octets): 10
Length (2 octets): Variable, dependent on the size of the Extended
Admin Group. The length MUST be a multiple of 4 octets. If the
length is not a multiple of 4 octets, the entire Sub-TLV sub-TLV MUST be
ignored by the receiver.
Extended Administrative Group: Extended Administrative Group as
defined in [RFC7308].
The OSPF FAERAG Sub-TLV MUST NOT appear more than once in an OSPF FAD
TLV. If it appears more than once, the OSPF FAD TLV MUST be ignored
by the receiver.
9. OSPF Flexible Algorithm Include-Any Reverse Admin Group Sub-TLV
The OSPF Flexible Algorithm Include-Any Reverse Admin Group Sub-TLV
is used to advertise the include-any rule that is used during the
Flex-Algorithm path calculation as specified in Section 11.
The format of the OSPF Flexible Algorithm Include-Any Reverse Admin
Group Sub-TLV is identical to the format of the OSPF FAERAG Sub-TLV
in Section 8.
IANA has assigned Type value of 11 for the OSPF Flexible Algorithm
Include-Any Reverse Admin Group Sub-TLV.
The OSPF Flexible Algorithm Include-Any Reverse Admin Group Sub-TLV
MUST NOT appear more than once in an OSPF FAD TLV. If it appears
more than once, the OSPF FAD TLV MUST be ignored by the receiver.
10. OSPF Flexible Algorithm Include-All Reverse Admin Group Sub-TLV
The OSPF Flexible Algorithm Include-All Reverse Admin Group Sub-TLV
is used to advertise the include-all rule that is used during the
Flex-Algorithm path calculation as specified in Section 11.
The format of the OSPF Flexible Algorithm Include-All Reverse Admin
Group Sub-TLV is identical to the format of the OSPF FAERAG Sub-TLV
in Section 8.
IANA has assigned Type value of 12 for the OSPF Flexible Algorithm
Include-All Reverse Admin Group Sub-TLV.
The OSPF Flexible Algorithm Include-All Reverse Admin Group Sub-TLV
MUST NOT appear more than once in an OSPF FAD TLV. If it appears
more than once, the OSPF FAD TLV MUST be ignored by the receiver.
11. Calculation of Flexible Algorithm Paths
The following procedures augment the rules defined in Section 13 of
[RFC9350] by introducing additional constraints based on
Administrative Groups (AGs) associated with the reverse direction of
a link.
* Check if any exclude reverse Admin Group rule is part of the Flex-
Algorithm definition. If such exclude rule exists, check if any
Admin Group that is part of the exclude rule is also set on the
link in the reverse direction. If such Admin Group is set on the
link in the reverse direction, the link MUST be pruned from the
computation.
* Check if any include-any reverse Admin Group rule is part of the
Flex-Algorithm definition. If such include-any rule exists, check
if any Admin Group that is part of the include-any rule is also
set on the link in the reverse direction. If no such Admin Group
is set on the link in the reverse direction, the link MUST be
pruned from the computation.
* Check if any include-all reverse Admin Group rule is part of the
Flex-Algorithm definition. If such include-all rule exists, check
if all Admin Groups that are part of the include-all rule are also
set on the link in the reverse direction. If all such Admin
Groups are not set on the link in the reverse direction, the link
MUST be pruned from the computation.
Please see rules 8, 9, and 10 in Section 13.3 for these added rules.
12. IGP Flex-Algorithm Path Computation Rules Registry
Since the original Flex-Algorithm specification [RFC9350], many Flex-
Algorithm extensions have been proposed and standardized. Many of
them added additional rules to the Flex-Algorithm path computation.
Maintaining an IANA registry for these rules allows specification
across multiple documents progressing independently. The new "IGP
Flex-Algorithm Path Computation Rules" registry has been created and
is specified in Section 13.3.
This section provides the guidance for designated experts on
evaluating new registrations in the "IGP Flex-Algorithm Path
Computation Rules" registry:
1. When a new constraint is defined, the rule associated with that
constraint MAY be inserted at any position. Backwards
compatibility is guaranteed because nodes which that don't support the
new constraint will not participate in an algorithm where the FAD
specifies a constraint they don't support.
2. The relative ordering of existing rules MUST NOT be altered.
Doing so has the potential to create backwards compatibility
issues.
3. Deletion of the rules MUST NOT be done. Given that the rules are
only used conditionally based on the information carried in the
winning FAD, deletion of the rule is not necessary.
4. Merging or repeating of the rules MUST NOT be done.
13. IANA Considerations
13.1. Sub-Sub-TLVs for Flexible Algorithm Definition Sub-TLV
This document makes
IANA has registered the following registration in the "IS-IS Sub-Sub-
TLVs Sub-Sub-TLVs for
Flexible Algorithm Definition Sub-TLV" registry under the "IS-IS TLV
Codepoints" registry group:
Type: 10
Description: Flexible Algorithm Exclude Reverse Admin Group
MP-TLV Applicability: N
MP: n
Reference: This document (Section 5). RFC 9917, Section 5
Type: 11
Description: Flexible Algorithm Include-Any Reverse Admin Group
MP-TLV Applicability: N
MP: n
Reference: This document (Section 6). RFC 9917, Section 6
Type: 12
Description: Flexible Algorithm Include-All Reverse Admin Group
MP-TLV Applicability: N
MP: n
Reference: This document (Section 7). RFC 9917, Section 7
13.2. OSPF Flexible Algorithm Definition TLV Sub-TLV Registry
This document makes the following registration in the "OSPF Flexible
Algorithm Definition TLV Sub-TLVs" registry under the "Open Shortest
Path First (OSPF) Parameters" registry group:
Type: 10
Description: Flexible Algorithm Exclude Reverse Admin Group
Reference: This document (Section 8). RFC 9917, Section 8
Type: 11
Description: Flexible Algorithm Include-Any Reverse Admin Group
Reference: This document (Section 9). RFC 9917, Section 9
Type: 12
Description: Flexible Algorithm Include-All Reverse Admin Group
Reference: This document (Section 10). RFC 9917, Section 10
13.3. IGP Flex-Algorithm Path Computation Rules Registry
This document creates
IANA has created a new registry called "IGP Flex-Algorithm Path
Computation Rules Registry" Rules" within the "Interior Gateway Protocol (IGP)
Parameters" registry group. The registration procedure for the new
registry is "Expert Review". Expert Review [RFC8126]. Section 12 provides guidance
for
Designated Experts. designated experts.
The "IGP Flex-Algo Flex-Algorithm Path Computation Rules" registry specifies
the ordered set of rules that are used to prune links from the
topology during the Flex-Algorithm path computation.
There is no upper bound on the number of rules that the registry
supports.
+==========+======================+=================================+
+==========+===========================================+===========+
| Sequence | Description | Reference |
| Number | | |
+==========+======================+=================================+
+==========+===========================================+===========+
| 1 | Check if any | Section 13 of [RFC9350] |
| | exclude | |
| | Administrative Group | Section |
| | Group rule is part | |
| | of the Flex- | |
| | Algorithm Flex-Algorithm | 13 of |
| | Definition. If | |
| | such exclude rule exists, | [RFC9350] |
| | exists, check if | |
| | any color that is | |
| | part of the exclude | |
| | exclude rule is also set on | |
| | the link. If such | |
| | such a color is set, the | |
| | link MUST be pruned | |
| | pruned from the | |
| | computation | |
+----------+----------------------+---------------------------------+
+----------+-------------------------------------------+-----------+
| 2 | Check if any | Section 13 of [RFC9350] |
| | exclude SRLG rule | |
| | is part of the | Section |
| | the Flex-Algorithm | |
| | Definition. If such | 13 of |
| | such exclude rule | |
| | exists, check if | |
| | the link is part of | [RFC9350] |
| | part of any SRLG that is | |
| | also part of the | |
| | SRLG exclude rule. | |
| | If the link is part | |
| | of such SRLG, the | |
| | link MUST be pruned | |
| | from the | |
| | computation. | |
+----------+----------------------+---------------------------------+
+----------+-------------------------------------------+-----------+
| 3 | Check if any | Section 13 of [RFC9350] |
| | include-any | |
| | Administrative | Section |
| | Group rule is part | |
| | of the Flex- | |
| | Algorithm Flex-Algorithm | 13 of |
| | Definition. If | |
| | such include-any rule | [RFC9350] |
| | rule exists, check | |
| | if any color that | |
| | is part of the | |
| | of the include-any rule is | |
| | also set on the | |
| | the link. If no such | |
| | color is set, the | |
| | link MUST be pruned | |
| | from the computation. | |
| | computation | |
+----------+----------------------+---------------------------------+
+----------+-------------------------------------------+-----------+
| 4 | Check if any | Section 13 of [RFC9350] |
| | include-all | |
| | Administrative | Section |
| | Group rule is part | |
| | of the Flex- | |
| | Algorithm Flex-Algorithm | 13 of |
| | Definition. If | |
| | such include-all rule | [RFC9350] |
| | rule exists, check | |
| | if all colors that | |
| | are part of the | |
| | of the include-all rule | |
| | are also set on the | |
| | the link. If all such | |
| | colors are not set | |
| | on the link, the | |
| | link MUST be pruned | |
| | from the | |
| | the computation. | |
+----------+----------------------+---------------------------------+
+----------+-------------------------------------------+-----------+
| 5 | If the Flex- | Section 13 of [RFC9350] |
| | Algorithm | |
| | Flex-Algorithm Definition uses | Section |
| | something other | |
| | than the IGP metric | 13 of |
| | (Section 5 of | |
| | [RFC9350]), and | |
| | such metric is not | [RFC9350] |
| | is not advertised for the | |
| | particular link in | |
| | in a topology for | |
| | which the | |
| | computation is | |
| | is done, such link | |
| | MUST be pruned from | |
| | the computation. A | |
| | metric of value 0 | |
| | MUST NOT be assumed | |
| | in such a case. | |
+----------+----------------------+---------------------------------+
+----------+-------------------------------------------+-----------+
| 6 | Check if any | Section 6 of |
| | exclude FAEMB rule | [I-D.ietf-lsr-flex-algo-bw-con] |
| | is part of the | Section 6 |
| | of the Flex-Algorithm | |
| | definition. If | of |
| | such exclude rule | |
| | exists and the link has | [RFC9843] |
| | has Maximum Link | |
| | Bandwidth | |
| | advertised, check | |
| | if the link | |
| | bandwidth satisfies | |
| | the FAEMB rule. If | |
| | rule. If the link does not | |
| | satisfy the FAEMB | |
| | FAEMB rule, the link MUST | |
| | be pruned from the | |
| | the Flex-Algorithm | |
| | computation | |
+----------+----------------------+---------------------------------+
+----------+-------------------------------------------+-----------+
| 7 | Check if any | Section 6 of |
| | exclude FAEMD rule | [I-D.ietf-lsr-flex-algo-bw-con] |
| | is part of the | Section 6 |
| | of the Flex-Algorithm | |
| | definition. If | of |
| | such exclude rule | |
| | exists and the link | |
| | has Min | [RFC9843] |
| | Min Unidirectional link | |
| | delay advertised, | |
| | check if the link | |
| | delay satisfies the | |
| | FAEMD rule. If the | |
| | link does not satisfy | |
| | satisfy the FAEMD | |
| | rule, the link MUST | |
| | be pruned from the | |
| | from the Flex-Algorithm | |
| | computation. | |
+----------+----------------------+---------------------------------+
+----------+-------------------------------------------+-----------+
| 8 | Check if any | This document, Section 11 |
| | exclude reverse | |
| | Admin Group rule is | Section |
| | rule is part of the Flex- | |
| | Algorithm Flex-Algorithm | 11 of RFC |
| | definition. If | |
| | such exclude rule exists, | 9917 |
| | exists, check if | |
| | any Admin Group | |
| | that is part of the | |
| | the exclude rule is | |
| | also set on the link | |
| | link in the reverse | |
| | direction. If such Admin | |
| | Admin Group is set | |
| | on the link in the | |
| | reverse direction, | |
| | direction, the link MUST be | |
| | pruned from the | |
| | the computation. | |
+----------+----------------------+---------------------------------+
+----------+-------------------------------------------+-----------+
| 9 | Check if any | This document, Section 11 |
| | include-any reverse Admin | Section |
| | Admin Group rule is | |
| | part of the Flex- | |
| | Algorithm Flex-Algorithm | 11 of RFC |
| | definition. If | |
| | such include-any rule | 9917 |
| | rule exists, check | |
| | if any Admin Group that is | |
| | that is part of the | |
| | include-any rule is | |
| | also set on the | |
| | on the link in the reverse | |
| | direction. If no | |
| | no such Admin Group is | |
| | set on the link in | |
| | the reverse | |
| | direction, the link | |
| | MUST be pruned from | |
| | pruned from the computation | |
+----------+----------------------+---------------------------------+
+----------+-------------------------------------------+-----------+
| 10 | Check if any | This document, Section 11 |
| | include-all reverse Admin | Section |
| | Admin Group rule is | |
| | part of the Flex- | |
| | Algorithm Flex-Algorithm | 11 of RFC |
| | definition. If | |
| | such include-all rule | 9917 |
| | rule exists, check | |
| | if all Admin Groups that | |
| | that are part of | |
| | the include-all | |
| | rule are also set | |
| | set on the link in the | |
| | reverse direction. | |
| | If all such Admin | |
| | Groups are not set on | |
| | on the link in the | |
| | reverse direction, the | |
| | the link MUST be | |
| | pruned from the | |
| | computation. | |
+----------+----------------------+---------------------------------+
+----------+-------------------------------------------+-----------+
Table 6: 1: IGP Flex-algo Flex-Algorithm Path Calculation Rules
14. Security Considerations
This document inherits security considerations from [RFC9350].
15. Acknowledgements
TBD
16. Normative References
[I-D.ietf-lsr-flex-algo-bw-con]
Hegde, S., Britto, W., Shetty, R., Decraene, B., Psenak,
P., and T. Li, "IGP Flexible Algorithms: Bandwidth, Delay,
Metrics and Constraints", Work in Progress, Internet-
Draft, draft-ietf-lsr-flex-algo-bw-con-22, 13 February
2025, <https://datatracker.ietf.org/doc/html/draft-ietf-
lsr-flex-algo-bw-con-22>.
[RFC2119] Bradner, S., "Key words for use in RFCs to Indicate
Requirement Levels", BCP 14, RFC 2119,
DOI 10.17487/RFC2119, March 1997,
<https://www.rfc-editor.org/info/rfc2119>.
[RFC7308] Osborne, E., "Extended Administrative Groups in MPLS
Traffic Engineering (MPLS-TE)", RFC 7308,
DOI 10.17487/RFC7308, July 2014,
<https://www.rfc-editor.org/info/rfc7308>.
[RFC8174] Leiba, B., "Ambiguity of Uppercase vs Lowercase in RFC
2119 Key Words", BCP 14, RFC 8174, DOI 10.17487/RFC8174,
May 2017, <https://www.rfc-editor.org/info/rfc8174>.
[RFC9350] Psenak, P., Ed., Hegde, S., Filsfils, C., Talaulikar, K.,
and A. Gulko, "IGP Flexible Algorithm", RFC 9350,
DOI 10.17487/RFC9350, February 2023,
<https://www.rfc-editor.org/info/rfc9350>.
[RFC9843] Hegde, S., Britto, W., Shetty, R., Decraene, B., Psenak,
P., and T. Li, "IGP Flexible Algorithms: Bandwidth, Delay,
Metrics, and Constraints", RFC 9843, DOI 10.17487/RFC9843,
September 2025, <https://www.rfc-editor.org/info/rfc9843>.
16. Informative References
[RFC8126] Cotton, M., Leiba, B., and T. Narten, "Guidelines for
Writing an IANA Considerations Section in RFCs", BCP 26,
RFC 8126, DOI 10.17487/RFC8126, June 2017,
<https://www.rfc-editor.org/info/rfc8126>.
Acknowledgments
TBD
Authors' Addresses
Peter Psenak
Cisco Systems
Apollo Business Center
Mlynske nivy 43
82109 Bratislava
Slovakia
Email: ppsenak@cisco.com
Jakub Horn
Cisco Systems
Milpitas, CA 95035
United States of America
Email: jakuhorn@cisco.com
Amit Dhamija
Arrcus
Email: amitd@arrcus.com