draft-ietf-lsr-flex-algo-06.txt   draft-ietf-lsr-flex-algo-07.txt 
Network Working Group P. Psenak, Ed. Network Working Group P. Psenak, Ed.
Internet-Draft Cisco Systems Internet-Draft Cisco Systems
Intended status: Standards Track S. Hegde Intended status: Standards Track S. Hegde
Expires: August 24, 2020 Juniper Networks, Inc. Expires: October 3, 2020 Juniper Networks, Inc.
C. Filsfils C. Filsfils
K. Talaulikar K. Talaulikar
Cisco Systems, Inc. Cisco Systems, Inc.
A. Gulko A. Gulko
Thomson Reuters Thomson Reuters
February 21, 2020 April 1, 2020
IGP Flexible Algorithm IGP Flexible Algorithm
draft-ietf-lsr-flex-algo-06.txt draft-ietf-lsr-flex-algo-07.txt
Abstract Abstract
IGP protocols traditionally compute best paths over the network based IGP protocols traditionally compute best paths over the network based
on the IGP metric assigned to the links. Many network deployments on the IGP metric assigned to the links. Many network deployments
use RSVP-TE based or Segment Routing based Traffic Engineering to use RSVP-TE based or Segment Routing based Traffic Engineering to
enforce traffic over a path that is computed using different metrics enforce traffic over a path that is computed using different metrics
or constraints than the shortest IGP path. This document proposes a or constraints than the shortest IGP path. This document proposes a
solution that allows IGPs themselves to compute constraint based solution that allows IGPs themselves to compute constraint based
paths over the network. This document also specifies a way of using paths over the network. This document also specifies a way of using
skipping to change at page 1, line 44 skipping to change at page 1, line 44
Internet-Drafts are working documents of the Internet Engineering Internet-Drafts are working documents of the Internet Engineering
Task Force (IETF). Note that other groups may also distribute Task Force (IETF). Note that other groups may also distribute
working documents as Internet-Drafts. The list of current Internet- working documents as Internet-Drafts. The list of current Internet-
Drafts is at https://datatracker.ietf.org/drafts/current/. Drafts is at https://datatracker.ietf.org/drafts/current/.
Internet-Drafts are draft documents valid for a maximum of six months Internet-Drafts are draft documents valid for a maximum of six months
and may be updated, replaced, or obsoleted by other documents at any and may be updated, replaced, or obsoleted by other documents at any
time. It is inappropriate to use Internet-Drafts as reference time. It is inappropriate to use Internet-Drafts as reference
material or to cite them other than as "work in progress." material or to cite them other than as "work in progress."
This Internet-Draft will expire on August 24, 2020. This Internet-Draft will expire on October 3, 2020.
Copyright Notice Copyright Notice
Copyright (c) 2020 IETF Trust and the persons identified as the Copyright (c) 2020 IETF Trust and the persons identified as the
document authors. All rights reserved. document authors. All rights reserved.
This document is subject to BCP 78 and the IETF Trust's Legal This document is subject to BCP 78 and the IETF Trust's Legal
Provisions Relating to IETF Documents Provisions Relating to IETF Documents
(https://trustee.ietf.org/license-info) in effect on the date of (https://trustee.ietf.org/license-info) in effect on the date of
publication of this document. Please review these documents publication of this document. Please review these documents
skipping to change at page 2, line 29 skipping to change at page 2, line 29
Table of Contents Table of Contents
1. Introduction . . . . . . . . . . . . . . . . . . . . . . . . 3 1. Introduction . . . . . . . . . . . . . . . . . . . . . . . . 3
2. Requirements notation . . . . . . . . . . . . . . . . . . . . 4 2. Requirements notation . . . . . . . . . . . . . . . . . . . . 4
3. Terminology . . . . . . . . . . . . . . . . . . . . . . . . . 4 3. Terminology . . . . . . . . . . . . . . . . . . . . . . . . . 4
4. Flexible Algorithm . . . . . . . . . . . . . . . . . . . . . 5 4. Flexible Algorithm . . . . . . . . . . . . . . . . . . . . . 5
5. Flexible Algorithm Definition Advertisement . . . . . . . . . 5 5. Flexible Algorithm Definition Advertisement . . . . . . . . . 5
5.1. ISIS Flexible Algorithm Definition Sub-TLV . . . . . . . 6 5.1. ISIS Flexible Algorithm Definition Sub-TLV . . . . . . . 6
5.2. OSPF Flexible Algorithm Definition TLV . . . . . . . . . 7 5.2. OSPF Flexible Algorithm Definition TLV . . . . . . . . . 7
5.3. Common Handling of Flexible Algorithm Definition TLV . . 8 5.3. Common Handling of Flexible Algorithm Definition TLV . . 9
6. Sub-TLVs of ISIS FAD Sub-TLV . . . . . . . . . . . . . . . . 9 6. Sub-TLVs of ISIS FAD Sub-TLV . . . . . . . . . . . . . . . . 10
6.1. ISIS Flexible Algorithm Exclude Admin Group Sub-TLV . . . 9 6.1. ISIS Flexible Algorithm Exclude Admin Group Sub-TLV . . . 10
6.2. ISIS Flexible Algorithm Include-Any Admin Group Sub-TLV . 10 6.2. ISIS Flexible Algorithm Include-Any Admin Group Sub-TLV . 11
6.3. ISIS Flexible Algorithm Include-All Admin Group Sub-TLV . 11 6.3. ISIS Flexible Algorithm Include-All Admin Group Sub-TLV . 11
6.4. ISIS Flexible Algorithm Definition Flags Sub-TLV . . . . 11 6.4. ISIS Flexible Algorithm Definition Flags Sub-TLV . . . . 11
6.5. ISIS Flexible Algorithm Exclude SRLG Sub-TLV . . . . . . 12 6.5. ISIS Flexible Algorithm Exclude SRLG Sub-TLV . . . . . . 12
7. Sub-TLVs of OSPF FAD TLV . . . . . . . . . . . . . . . . . . 13 7. Sub-TLVs of OSPF FAD TLV . . . . . . . . . . . . . . . . . . 13
7.1. OSPF Flexible Algorithm Exclude Admin Group Sub-TLV . . . 13 7.1. OSPF Flexible Algorithm Exclude Admin Group Sub-TLV . . . 13
7.2. OSPF Flexible Algorithm Include-Any Admin Group Sub-TLV . 14 7.2. OSPF Flexible Algorithm Include-Any Admin Group Sub-TLV . 14
7.3. OSPF Flexible Algorithm Include-All Admin Group Sub-TLV . 14 7.3. OSPF Flexible Algorithm Include-All Admin Group Sub-TLV . 14
7.4. OSPF Flexible Algorithm Definition Flags Sub-TLV . . . . 14 7.4. OSPF Flexible Algorithm Definition Flags Sub-TLV . . . . 14
7.5. OSPF Flexible Algorithm Exclude SRLG Sub-TLV . . . . . . 15 7.5. OSPF Flexible Algorithm Exclude SRLG Sub-TLV . . . . . . 16
8. ISIS Flex-Algorithm Prefix Metric Sub-TLV . . . . . . . . . . 16 8. ISIS Flex-Algorithm Prefix Metric Sub-TLV . . . . . . . . . . 16
9. OSPF Flex-Algorithm Prefix Metric Sub-TLV . . . . . . . . . . 17 9. OSPF Flex-Algorithm Prefix Metric Sub-TLV . . . . . . . . . . 17
10. Advertisement of Node Participation in a Flex-Algorithm . . . 18 10. Advertisement of Node Participation in a Flex-Algorithm . . . 18
10.1. Advertisement of Node Participation for Segment Routing 18 10.1. Advertisement of Node Participation for Segment Routing 18
10.2. Advertisement of Node Participation for Other 10.2. Advertisement of Node Participation for Other
Applications . . . . . . . . . . . . . . . . . . . . . . 19 Applications . . . . . . . . . . . . . . . . . . . . . . 19
11. Advertisement of Link Attributes for Flex-Algorithm . . . . . 19 11. Advertisement of Link Attributes for Flex-Algorithm . . . . . 19
12. Calculation of Flexible Algorithm Paths . . . . . . . . . . . 20 12. Calculation of Flexible Algorithm Paths . . . . . . . . . . . 20
12.1. Multi-area and Multi-domain Considerations . . . . . . . 21 12.1. Multi-area and Multi-domain Considerations . . . . . . . 21
13. Flex-Algorithm and Forwarding Plane . . . . . . . . . . . . . 22 13. Flex-Algorithm and Forwarding Plane . . . . . . . . . . . . . 22
skipping to change at page 7, line 22 skipping to change at page 7, line 22
priority of the advertisement. priority of the advertisement.
Sub-TLVs - optional sub-TLVs. Sub-TLVs - optional sub-TLVs.
The ISIS FAD Sub-TLV MAY be advertised in an LSP of any number, but a The ISIS FAD Sub-TLV MAY be advertised in an LSP of any number, but a
router MUST NOT advertise more than one ISIS FAD Sub-TLV for a given router MUST NOT advertise more than one ISIS FAD Sub-TLV for a given
Flexible-Algorithm. A router receiving multiple ISIS FAD Sub-TLVs Flexible-Algorithm. A router receiving multiple ISIS FAD Sub-TLVs
for a given Flexible-Algorithm from the same originator SHOULD select for a given Flexible-Algorithm from the same originator SHOULD select
the first advertisement in the lowest numbered LSP. the first advertisement in the lowest numbered LSP.
The ISIS FAD Sub-TLV MAY be flooded only in a given level or The ISIS FAD Sub-TLV has an area scope. The Router Capability TLV in
throughout the domain. In the latter case the S-flag is set as which the FAD Sub-TLV is present MUST have the S-bit clear.
described in [RFC7981]. It is recommended that domain-wide flooding
NOT be the default behavior. ISIS L1/L2 router MAY be configured to re-generate the winning FAD
from level 2, without any modification to it, to level 1 area. The
re-generation of the FAD Sub-TLV from level 2 to level 1 is
determined by the L1/L2 router, not by the originator of the FAD
advertisement in the level 2. In such case, the re-generated FAD
Sub-TLV will be advertised in the level 1 Router Capability TLV
originated by the L1/L2 router.
L1/L2 router MUST NOT re-generate any FAD Sub-TLV from level 1 to
level 2.
5.2. OSPF Flexible Algorithm Definition TLV 5.2. OSPF Flexible Algorithm Definition TLV
OSPF FAD TLV is advertised as a top-level TLV of the RI LSA that is OSPF FAD TLV is advertised as a top-level TLV of the RI LSA that is
defined in [RFC7770]. defined in [RFC7770].
OSPF FAD TLV has the following format: OSPF FAD TLV has the following format:
0 1 2 3 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 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
skipping to change at page 8, line 17 skipping to change at page 8, line 36
inclusive. inclusive.
Metric-Type: as described in Section 5.1 Metric-Type: as described in Section 5.1
Calc-Type: as described in Section 5.1 Calc-Type: as described in Section 5.1
Priority: as described in Section 5.1 Priority: as described in Section 5.1
Sub-TLVs - optional sub-TLVs. Sub-TLVs - optional sub-TLVs.
When multiple OPSF FAD TLVs, for the same Flexible-Algorithm, are When multiple OSPF FAD TLVs, for the same Flexible-Algorithm, are
received from a given router, the receiver MUST use the first received from a given router, the receiver MUST use the first
occurrence of the TLV in the Router Information LSA. If the OSPF FAD occurrence of the TLV in the Router Information LSA. If the OSPF FAD
TLV, for the same Flex-Algorithm, appears in multiple Router TLV, for the same Flex-Algorithm, appears in multiple Router
Information LSAs that have different flooding scopes, the OSPF FAD Information LSAs that have different flooding scopes, the OSPF FAD
TLV in the Router Information LSA with the area-scoped flooding scope TLV in the Router Information LSA with the area-scoped flooding scope
MUST be used. If the OSPF FAD TLV, for the same algorithm, appears MUST be used. If the OSPF FAD TLV, for the same algorithm, appears
in multiple Router Information LSAs that have the same flooding in multiple Router Information LSAs that have the same flooding
scope, the OSPF FAD TLV in the Router Information (RI) LSA with the scope, the OSPF FAD TLV in the Router Information (RI) LSA with the
numerically smallest Instance ID MUST be used and subsequent numerically smallest Instance ID MUST be used and subsequent
instances of the OSPF FAD TLV MUST be ignored. instances of the OSPF FAD TLV MUST be ignored.
skipping to change at page 14, line 20 skipping to change at page 14, line 28
The usage of this Sub-TLVs is described in Section 6.2. The usage of this Sub-TLVs is described in Section 6.2.
The format of the OSPF Flexible Algorithm Include-Any Admin Group The format of the OSPF Flexible Algorithm Include-Any Admin Group
Sub-TLV is identical to the format of the OSPF FAEAG Sub-TLV in Sub-TLV is identical to the format of the OSPF FAEAG Sub-TLV in
Section 7.1. Section 7.1.
Flexible Algorithm Include-Any Admin Group Sub-TLV Type is 2. Flexible Algorithm Include-Any Admin Group Sub-TLV Type is 2.
OSPF Flexible Algorithm Include-Any Admin Group Sub-TLV MAY NOT OSPF Flexible Algorithm Include-Any Admin Group Sub-TLV MAY NOT
appear more then once in an OPSF FAD TLV. If it appears more then appear more then once in an OSPF FAD TLV. If it appears more then
once, the OSPF FAD TLV MUST be ignored by the receiver. once, the OSPF FAD TLV MUST be ignored by the receiver.
7.3. OSPF Flexible Algorithm Include-All Admin Group Sub-TLV 7.3. OSPF Flexible Algorithm Include-All Admin Group Sub-TLV
The usage of this Sub-TLVs is described in Section 6.3. The usage of this Sub-TLVs is described in Section 6.3.
The format of the OSPF Flexible Algorithm Include-Any Admin Group The format of the OSPF Flexible Algorithm Include-Any Admin Group
Sub-TLV is identical to the format of the OSPF FAEAG Sub-TLV in Sub-TLV is identical to the format of the OSPF FAEAG Sub-TLV in
Section 7.1. Section 7.1.
Flexible Algorithm Include-Any Admin Group Sub-TLV Type is 3. Flexible Algorithm Include-Any Admin Group Sub-TLV Type is 3.
OSPF Flexible Algorithm Include-All Admin Group Sub-TLV MAY NOT OSPF Flexible Algorithm Include-All Admin Group Sub-TLV MAY NOT
appear more then once in an OPSF FAD TLV. If it appears more then appear more then once in an OSPF FAD TLV. If it appears more then
once, the OSPF FAD TLV MUST be ignored by the receiver. once, the OSPF FAD TLV MUST be ignored by the receiver.
7.4. OSPF Flexible Algorithm Definition Flags Sub-TLV 7.4. OSPF Flexible Algorithm Definition Flags Sub-TLV
OSPF Flexible Algorithm Definition Flags Sub-TLV (FADF Sub-TLV) is a OSPF Flexible Algorithm Definition Flags Sub-TLV (FADF Sub-TLV) is a
Sub-TLV of the OSPF FAD TLV. It has the following format: Sub-TLV of the OSPF FAD TLV. It has the following format:
0 1 2 3 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 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
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
skipping to change at page 30, line 13 skipping to change at page 30, line 13
All authors of that draft agreed to join this draft. All authors of that draft agreed to join this draft.
Thanks to Eric Rosen, Tony Przygienda for their detailed review and Thanks to Eric Rosen, Tony Przygienda for their detailed review and
excellent comments. excellent comments.
Thanks to Cengiz Halit for his review and feedback during initial Thanks to Cengiz Halit for his review and feedback during initial
phase of the solution definition. phase of the solution definition.
Thanks to Kenji Kumaki for his comments. Thanks to Kenji Kumaki for his comments.
Thanks to William Britto A J. for his suggestions.
18. References 18. References
18.1. Normative References 18.1. Normative References
[BCP14] , <https://tools.ietf.org/html/bcp14>. [BCP14] , <https://tools.ietf.org/html/bcp14>.
[I-D.ietf-isis-te-app] [I-D.ietf-isis-te-app]
Ginsberg, L., Psenak, P., Previdi, S., Henderickx, W., and Ginsberg, L., Psenak, P., Previdi, S., Henderickx, W., and
J. Drake, "IS-IS TE Attributes per application", draft- J. Drake, "IS-IS TE Attributes per application", draft-
ietf-isis-te-app-10 (work in progress), February 2020. ietf-isis-te-app-12 (work in progress), March 2020.
[I-D.ietf-lsr-isis-srv6-extensions] [I-D.ietf-lsr-isis-srv6-extensions]
Psenak, P., Filsfils, C., Bashandy, A., Decraene, B., and Psenak, P., Filsfils, C., Bashandy, A., Decraene, B., and
Z. Hu, "IS-IS Extension to Support Segment Routing over Z. Hu, "IS-IS Extension to Support Segment Routing over
IPv6 Dataplane", draft-ietf-lsr-isis-srv6-extensions-05 IPv6 Dataplane", draft-ietf-lsr-isis-srv6-extensions-07
(work in progress), February 2020. (work in progress), March 2020.
[I-D.ietf-lsr-ospfv3-srv6-extensions] [I-D.ietf-lsr-ospfv3-srv6-extensions]
Li, Z., Hu, Z., Cheng, D., Talaulikar, K., and P. Psenak, Li, Z., Hu, Z., Cheng, D., Talaulikar, K., and P. Psenak,
"OSPFv3 Extensions for SRv6", draft-ietf-lsr- "OSPFv3 Extensions for SRv6", draft-ietf-lsr-
ospfv3-srv6-extensions-00 (work in progress), February ospfv3-srv6-extensions-00 (work in progress), February
2020. 2020.
[I-D.ietf-ospf-te-link-attr-reuse] [I-D.ietf-ospf-te-link-attr-reuse]
Psenak, P., Ginsberg, L., Henderickx, W., Tantsura, J., Psenak, P., Ginsberg, L., Henderickx, W., Tantsura, J.,
and J. Drake, "OSPF Link Traffic Engineering Attribute and J. Drake, "OSPF Link Traffic Engineering Attribute
 End of changes. 13 change blocks. 
19 lines changed or deleted 30 lines changed or added

This html diff was produced by rfcdiff 1.47. The latest version is available from http://tools.ietf.org/tools/rfcdiff/