draft-ietf-isis-te-app-17.txt | draft-ietf-isis-te-app-18.txt | |||
---|---|---|---|---|
Networking Working Group L. Ginsberg | Networking Working Group L. Ginsberg | |||
Internet-Draft P. Psenak | Internet-Draft P. Psenak | |||
Intended status: Standards Track Cisco Systems | Intended status: Standards Track Cisco Systems | |||
Expires: December 19, 2020 S. Previdi | Expires: December 24, 2020 S. Previdi | |||
Huawei | Huawei | |||
W. Henderickx | W. Henderickx | |||
Nokia | Nokia | |||
J. Drake | J. Drake | |||
Juniper Networks | Juniper Networks | |||
June 17, 2020 | June 22, 2020 | |||
IS-IS TE Attributes per application | IS-IS Application-Specific Link Attributes | |||
draft-ietf-isis-te-app-17 | draft-ietf-isis-te-app-18 | |||
Abstract | Abstract | |||
Existing traffic engineering related link attribute advertisements | Existing traffic engineering related link attribute advertisements | |||
have been defined and are used in RSVP-TE deployments. Since the | have been defined and are used in RSVP-TE deployments. Since the | |||
original RSVP-TE use case was defined, additional applications (e.g., | original RSVP-TE use case was defined, additional applications (e.g., | |||
Segment Routing Policy, Loop Free Alternate) that also make use of | Segment Routing Policy, Loop Free Alternate) that also make use of | |||
the link attribute advertisements have been defined . In cases where | the link attribute advertisements have been defined . In cases where | |||
multiple applications wish to make use of these link attributes, the | multiple applications wish to make use of these link attributes, the | |||
current advertisements do not support application specific values for | current advertisements do not support application-specific values for | |||
a given attribute, nor do they support indication of which | a given attribute, nor do they support indication of which | |||
applications are using the advertised value for a given link. This | applications are using the advertised value for a given link. This | |||
document introduces new link attribute advertisements that address | document introduces new link attribute advertisements that address | |||
both of these shortcomings. | both of these shortcomings. | |||
Requirements Language | Requirements Language | |||
The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT", | The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT", | |||
"SHOULD", "SHOULD NOT", "RECOMMENDED", "NOT RECOMMENDED", "MAY", and | "SHOULD", "SHOULD NOT", "RECOMMENDED", "NOT RECOMMENDED", "MAY", and | |||
"OPTIONAL" in this document are to be interpreted as described in BCP | "OPTIONAL" in this document are to be interpreted as described in BCP | |||
skipping to change at page 2, line 10 ¶ | skipping to change at page 2, line 10 ¶ | |||
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 December 19, 2020. | This Internet-Draft will expire on December 24, 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 34 ¶ | skipping to change at page 2, line 34 ¶ | |||
the Trust Legal Provisions and are provided without warranty as | the Trust Legal Provisions and are provided without warranty as | |||
described in the Simplified BSD License. | described in the Simplified BSD License. | |||
Table of Contents | Table of Contents | |||
1. Introduction . . . . . . . . . . . . . . . . . . . . . . . . 3 | 1. Introduction . . . . . . . . . . . . . . . . . . . . . . . . 3 | |||
2. Requirements Discussion . . . . . . . . . . . . . . . . . . . 4 | 2. Requirements Discussion . . . . . . . . . . . . . . . . . . . 4 | |||
3. Legacy Advertisements . . . . . . . . . . . . . . . . . . . . 5 | 3. Legacy Advertisements . . . . . . . . . . . . . . . . . . . . 5 | |||
3.1. Legacy sub-TLVs . . . . . . . . . . . . . . . . . . . . . 5 | 3.1. Legacy sub-TLVs . . . . . . . . . . . . . . . . . . . . . 5 | |||
3.2. Legacy SRLG Advertisements . . . . . . . . . . . . . . . 6 | 3.2. Legacy SRLG Advertisements . . . . . . . . . . . . . . . 6 | |||
4. Advertising Application Specific Link Attributes . . . . . . 6 | 4. Advertising Application-Specific Link Attributes . . . . . . 6 | |||
4.1. Application Identifier Bit Mask . . . . . . . . . . . . . 6 | 4.1. Application Identifier Bit Mask . . . . . . . . . . . . . 6 | |||
4.2. Application Specific Link Attributes sub-TLV . . . . . . 9 | 4.2. Application-Specific Link Attributes sub-TLV . . . . . . 9 | |||
4.2.1. Special Considerations for Maximum Link Bandwidth . . 10 | 4.2.1. Special Considerations for Maximum Link Bandwidth . . 10 | |||
4.2.2. Special Considerations for Reservable/Unreserved | 4.2.2. Special Considerations for Reservable/Unreserved | |||
Bandwidth . . . . . . . . . . . . . . . . . . . . . . 10 | Bandwidth . . . . . . . . . . . . . . . . . . . . . . 10 | |||
4.2.3. Considerations for Extended TE Metrics . . . . . . . 11 | 4.2.3. Considerations for Extended TE Metrics . . . . . . . 11 | |||
4.3. Application Specific SRLG TLV . . . . . . . . . . . . . . 11 | 4.3. Application-Specific SRLG TLV . . . . . . . . . . . . . . 11 | |||
5. Attribute Advertisements and Enablement . . . . . . . . . . . 12 | 5. Attribute Advertisements and Enablement . . . . . . . . . . . 12 | |||
6. Deployment Considerations . . . . . . . . . . . . . . . . . . 13 | 6. Deployment Considerations . . . . . . . . . . . . . . . . . . 13 | |||
6.1. Use of Legacy Advertisements . . . . . . . . . . . . . . 13 | 6.1. Use of Legacy Advertisements . . . . . . . . . . . . . . 13 | |||
6.2. Use of Zero Length Application Identifier Bit Masks . . . 14 | 6.2. Use of Zero Length Application Identifier Bit Masks . . . 14 | |||
6.3. Interoperability, Backwards Compatibility and Migration | 6.3. Interoperability, Backwards Compatibility and Migration | |||
Concerns . . . . . . . . . . . . . . . . . . . . . . . . 14 | Concerns . . . . . . . . . . . . . . . . . . . . . . . . 14 | |||
6.3.1. Multiple Applications: Common Attributes with RSVP- | 6.3.1. Multiple Applications: Common Attributes with RSVP- | |||
TE . . . . . . . . . . . . . . . . . . . . . . . . . 15 | TE . . . . . . . . . . . . . . . . . . . . . . . . . 15 | |||
6.3.2. Multiple Applications: All Attributes Not Shared with | 6.3.2. Multiple Applications: All Attributes Not Shared with | |||
RSVP-TE . . . . . . . . . . . . . . . . . . . . . . . 15 | RSVP-TE . . . . . . . . . . . . . . . . . . . . . . . 15 | |||
6.3.3. Interoperability with Legacy Routers . . . . . . . . 15 | 6.3.3. Interoperability with Legacy Routers . . . . . . . . 15 | |||
6.3.4. Use of Application Specific Advertisements for RSVP- | 6.3.4. Use of Application-Specific Advertisements for RSVP- | |||
TE . . . . . . . . . . . . . . . . . . . . . . . . . 16 | TE . . . . . . . . . . . . . . . . . . . . . . . . . 16 | |||
7. IANA Considerations . . . . . . . . . . . . . . . . . . . . . 16 | 7. IANA Considerations . . . . . . . . . . . . . . . . . . . . . 16 | |||
7.1. Application Specific Link Attributes sub-TLV . . . . . . 17 | 7.1. Application-Specific Link Attributes sub-TLV . . . . . . 17 | |||
7.2. Application Specific SRLG TLV . . . . . . . . . . . . . . 17 | 7.2. Application-Specific SRLG TLV . . . . . . . . . . . . . . 17 | |||
7.3. Application Specific Link Attributes sub-sub-TLV Registry 17 | 7.3. Application-Specific Link Attributes sub-sub-TLV Registry 17 | |||
7.4. Link Attribute Application Identifier Registry . . . . . 18 | 7.4. Link Attribute Application Identifier Registry . . . . . 18 | |||
7.5. SRLG sub-TLVs . . . . . . . . . . . . . . . . . . . . . . 19 | 7.5. SRLG sub-TLVs . . . . . . . . . . . . . . . . . . . . . . 19 | |||
8. Security Considerations . . . . . . . . . . . . . . . . . . . 19 | 8. Security Considerations . . . . . . . . . . . . . . . . . . . 19 | |||
9. Acknowledgements . . . . . . . . . . . . . . . . . . . . . . 20 | 9. Acknowledgements . . . . . . . . . . . . . . . . . . . . . . 20 | |||
10. References . . . . . . . . . . . . . . . . . . . . . . . . . 20 | 10. References . . . . . . . . . . . . . . . . . . . . . . . . . 20 | |||
10.1. Normative References . . . . . . . . . . . . . . . . . . 20 | 10.1. Normative References . . . . . . . . . . . . . . . . . . 20 | |||
10.2. Informative References . . . . . . . . . . . . . . . . . 21 | 10.2. Informative References . . . . . . . . . . . . . . . . . 21 | |||
Authors' Addresses . . . . . . . . . . . . . . . . . . . . . . . 22 | Authors' Addresses . . . . . . . . . . . . . . . . . . . . . . . 22 | |||
1. Introduction | 1. Introduction | |||
skipping to change at page 3, line 48 ¶ | skipping to change at page 3, line 48 ¶ | |||
(LFA) [RFC5286]. This has introduced ambiguity in that if a | (LFA) [RFC5286]. This has introduced ambiguity in that if a | |||
deployment includes a mix of RSVP-TE support and SR Policy support | deployment includes a mix of RSVP-TE support and SR Policy support | |||
(for example) it is not possible to unambiguously indicate which | (for example) it is not possible to unambiguously indicate which | |||
advertisements are to be used by RSVP-TE and which advertisements are | advertisements are to be used by RSVP-TE and which advertisements are | |||
to be used by SR Policy. If the topologies are fully congruent this | to be used by SR Policy. If the topologies are fully congruent this | |||
may not be an issue, but any incongruence leads to ambiguity. | may not be an issue, but any incongruence leads to ambiguity. | |||
An additional issue arises in cases where both applications are | An additional issue arises in cases where both applications are | |||
supported on a link but the link attribute values associated with | supported on a link but the link attribute values associated with | |||
each application differ. Current advertisements do not support | each application differ. Current advertisements do not support | |||
advertising application specific values for the same attribute on a | advertising application-specific values for the same attribute on a | |||
specific link. | specific link. | |||
This document defines extensions that address these issues. Also, as | This document defines extensions that address these issues. Also, as | |||
evolution of use cases for link attributes can be expected to | evolution of use cases for link attributes can be expected to | |||
continue in the years to come, this document defines a solution that | continue in the years to come, this document defines a solution that | |||
is easily extensible to the introduction of new applications and new | is easily extensible to the introduction of new applications and new | |||
use cases. | use cases. | |||
2. Requirements Discussion | 2. Requirements Discussion | |||
skipping to change at page 4, line 24 ¶ | skipping to change at page 4, line 24 ¶ | |||
be expected to continue. Therefore, any discussion of existing use | be expected to continue. Therefore, any discussion of existing use | |||
cases is limited to requirements that are known at the time of this | cases is limited to requirements that are known at the time of this | |||
writing. However, in order to determine the functionality required | writing. However, in order to determine the functionality required | |||
beyond what already exists in IS-IS, it is only necessary to discuss | beyond what already exists in IS-IS, it is only necessary to discuss | |||
use cases that justify the key points identified in the introduction, | use cases that justify the key points identified in the introduction, | |||
which are: | which are: | |||
1. Support for indicating which applications are using the link | 1. Support for indicating which applications are using the link | |||
attribute advertisements on a link | attribute advertisements on a link | |||
2. Support for advertising application specific values for the same | 2. Support for advertising application-specific values for the same | |||
attribute on a link | attribute on a link | |||
[RFC7855] discusses use cases/requirements for Segment Routing (SR). | [RFC7855] discusses use cases/requirements for Segment Routing (SR). | |||
Included among these use cases is SR Policy which is defined in | Included among these use cases is SR Policy which is defined in | |||
[I-D.ietf-spring-segment-routing-policy]. If both RSVP-TE and SR | [I-D.ietf-spring-segment-routing-policy]. If both RSVP-TE and SR | |||
Policy are deployed in a network, link attribute advertisements can | Policy are deployed in a network, link attribute advertisements can | |||
be used by one or both of these applications. As there is no | be used by one or both of these applications. As there is no | |||
requirement for the link attributes advertised on a given link used | requirement for the link attributes advertised on a given link used | |||
by SR Policy to be identical to the link attributes advertised on | by SR Policy to be identical to the link attributes advertised on | |||
that same link used by RSVP-TE, there is a clear requirement to | that same link used by RSVP-TE, there is a clear requirement to | |||
skipping to change at page 6, line 17 ¶ | skipping to change at page 6, line 17 ¶ | |||
TLV 138 GMPLS-SRLG | TLV 138 GMPLS-SRLG | |||
Supports links identified by IPv4 addresses and | Supports links identified by IPv4 addresses and | |||
unnumbered links | unnumbered links | |||
TLV 139 IPv6 SRLG | TLV 139 IPv6 SRLG | |||
Supports links identified by IPv6 addresses | Supports links identified by IPv6 addresses | |||
Note that [RFC6119] prohibits the use of TLV 139 when it is possible | Note that [RFC6119] prohibits the use of TLV 139 when it is possible | |||
to use TLV 138. | to use TLV 138. | |||
4. Advertising Application Specific Link Attributes | 4. Advertising Application-Specific Link Attributes | |||
Two new code points are defined in support of Application Specific | Two new code points are defined in support of Application-Specific | |||
Link Attribute Advertisements: | Link Attribute Advertisements: | |||
1) Application Specific Link Attributes sub-TLV for TLVs 22, 23, 25, | 1) Application-Specific Link Attributes sub-TLV for TLVs 22, 23, 25, | |||
141, 222, and 223 (defined in Section 4.2 ). | 141, 222, and 223 (defined in Section 4.2 ). | |||
2)Application Specific Shared Risk Link Group (SRLG) TLV (defined in | 2)Application-Specific Shared Risk Link Group (SRLG) TLV (defined in | |||
Section 4.3). | Section 4.3). | |||
In support of these new advertisements, an application identifier bit | In support of these new advertisements, an application identifier bit | |||
mask is defined that identifies the application(s) associated with a | mask is defined that identifies the application(s) associated with a | |||
given advertisement (defined in Section 4.1). | given advertisement (defined in Section 4.1). | |||
In addition to supporting the advertisement of link attributes used | In addition to supporting the advertisement of link attributes used | |||
by standardized applications, link attributes can also be advertised | by standardized applications, link attributes can also be advertised | |||
for use by user defined applications. Such applications are not | for use by user defined applications. Such applications are not | |||
subject to standardization and are outside the scope of this | subject to standardization and are outside the scope of this | |||
skipping to change at page 6, line 48 ¶ | skipping to change at page 6, line 48 ¶ | |||
The following sections define the format of these new advertisements. | The following sections define the format of these new advertisements. | |||
4.1. Application Identifier Bit Mask | 4.1. Application Identifier Bit Mask | |||
Identification of the set of applications associated with link | Identification of the set of applications associated with link | |||
attribute advertisements utilizes two bit masks. One bit mask is for | attribute advertisements utilizes two bit masks. One bit mask is for | |||
standard applications where the definition of each bit is defined in | standard applications where the definition of each bit is defined in | |||
a new IANA controlled registry. A second bit mask is for non- | a new IANA controlled registry. A second bit mask is for non- | |||
standard User Defined Applications (UDAs). | standard User Defined Applications (UDAs). | |||
The encoding defined below is used by both the Application Specific | The encoding defined below is used by both the Application-Specific | |||
Link Attributes sub-TLV and the Application Specific SRLG TLV. | Link Attributes sub-TLV and the Application-Specific SRLG TLV. | |||
0 1 2 3 4 5 6 7 | 0 1 2 3 4 5 6 7 | |||
+--+--+--+--+--+--+--+--+ | +--+--+--+--+--+--+--+--+ | |||
| SABM Length + Flag | 1 octet | | SABM Length + Flag | 1 octet | |||
+--+--+--+--+--+--+--+--+ | +--+--+--+--+--+--+--+--+ | |||
| UDABM Length + Flag | 1 octet | | UDABM Length + Flag | 1 octet | |||
+--+--+--+--+--+--+--+--+ | +--+--+--+--+--+--+--+--+ | |||
| SABM ... 0 - 8 octets | | SABM ... 0 - 8 octets | |||
+--+--+--+--+--+--+--+--+ | +--+--+--+--+--+--+--+--+ | |||
skipping to change at page 9, line 13 ¶ | skipping to change at page 9, line 13 ¶ | |||
MUST be ignored on receipt | MUST be ignored on receipt | |||
o Bits that are not transmitted MUST be treated as if they are set | o Bits that are not transmitted MUST be treated as if they are set | |||
to 0 on receipt. | to 0 on receipt. | |||
o Bits that are not supported by an implementation MUST be ignored | o Bits that are not supported by an implementation MUST be ignored | |||
on receipt. | on receipt. | |||
. | . | |||
4.2. Application Specific Link Attributes sub-TLV | 4.2. Application-Specific Link Attributes sub-TLV | |||
A new sub-TLV for TLVs 22, 23, 25, 141, 222, and 223 is defined that | A new sub-TLV for TLVs 22, 23, 25, 141, 222, and 223 is defined that | |||
supports specification of the applications and application specific | supports specification of the applications and application-specific | |||
attribute values. | attribute values. | |||
Type: 16 (temporarily assigned by IANA) | Type: 16 (temporarily assigned by IANA) | |||
Length: Variable (1 octet) | Length: Variable (1 octet) | |||
Value: | Value: | |||
Application Identifier Bit Mask | Application Identifier Bit Mask | |||
(as defined in Section 4.1) | (as defined in Section 4.1) | |||
Link Attribute sub-sub-TLVs - format matches the | Link Attribute sub-sub-TLVs - format matches the | |||
skipping to change at page 9, line 42 ¶ | skipping to change at page 9, line 42 ¶ | |||
When the L-flag is set in the Application Identifier Bit Mask, all of | When the L-flag is set in the Application Identifier Bit Mask, all of | |||
the applications specified in the bit mask MUST use the legacy | the applications specified in the bit mask MUST use the legacy | |||
advertisements for the corresponding link found in TLVs 22, 23, 25, | advertisements for the corresponding link found in TLVs 22, 23, 25, | |||
141, 222, and 223 or TLV 138 or TLV 139 as appropriate. Link | 141, 222, and 223 or TLV 138 or TLV 139 as appropriate. Link | |||
attribute sub-sub-TLVs for the corresponding link attributes MUST NOT | attribute sub-sub-TLVs for the corresponding link attributes MUST NOT | |||
be advertised for the set of applications specified in the Standard/ | be advertised for the set of applications specified in the Standard/ | |||
User Application Identifier Bit Masks and all such advertisements | User Application Identifier Bit Masks and all such advertisements | |||
MUST be ignored on receipt. | MUST be ignored on receipt. | |||
Multiple Application Specific Link Attribute sub-TLVs for the same | Multiple Application-Specific Link Attribute sub-TLVs for the same | |||
link MAY be advertised. When multiple sub-TLVs for the same link are | link MAY be advertised. When multiple sub-TLVs for the same link are | |||
advertised, they SHOULD advertise non-conflicting application/ | advertised, they SHOULD advertise non-conflicting application/ | |||
attribute pairs. A conflict exists when the same application is | attribute pairs. A conflict exists when the same application is | |||
associated with two different values of the same link attribute for a | associated with two different values of the same link attribute for a | |||
given link. In cases where conflicting values for the same | given link. In cases where conflicting values for the same | |||
application/attribute/link are advertised all the conflicting values | application/attribute/link are advertised all the conflicting values | |||
MUST be ignored by the specified application. | MUST be ignored by the specified application. | |||
For a given application, the setting of the L-flag MUST be the same | For a given application, the setting of the L-flag MUST be the same | |||
in all sub-TLVs for a given link. In cases where this constraint is | in all sub-TLVs for a given link. In cases where this constraint is | |||
skipping to change at page 10, line 29 ¶ | skipping to change at page 10, line 29 ¶ | |||
the link attribute sub-sub-TLV code points. This document defines a | the link attribute sub-sub-TLV code points. This document defines a | |||
sub-sub-TLV for each of the existing sub-TLVs listed in Section 3.1 | sub-sub-TLV for each of the existing sub-TLVs listed in Section 3.1 | |||
except as noted below. The format of the sub-sub-TLVs matches the | except as noted below. The format of the sub-sub-TLVs matches the | |||
format of the corresponding legacy sub-TLV and IANA is requested to | format of the corresponding legacy sub-TLV and IANA is requested to | |||
assign the legacy sub-TLV identifier to the corresponding sub-sub- | assign the legacy sub-TLV identifier to the corresponding sub-sub- | |||
TLV. | TLV. | |||
4.2.1. Special Considerations for Maximum Link Bandwidth | 4.2.1. Special Considerations for Maximum Link Bandwidth | |||
Maximum link bandwidth is an application independent attribute of the | Maximum link bandwidth is an application independent attribute of the | |||
link. When advertised using the Application Specific Link Attributes | link. When advertised using the Application-Specific Link Attributes | |||
sub-TLV, multiple values for the same link MUST NOT be advertised. | sub-TLV, multiple values for the same link MUST NOT be advertised. | |||
This can be accomplished most efficiently by having a single | This can be accomplished most efficiently by having a single | |||
advertisement for a given link where the Application Identifier Bit | advertisement for a given link where the Application Identifier Bit | |||
Mask identifies all the applications that are making use of the value | Mask identifies all the applications that are making use of the value | |||
for that link. | for that link. | |||
It is also possible to advertise the same value for a given link | It is also possible to advertise the same value for a given link | |||
multiple times with disjoint sets of applications specified in the | multiple times with disjoint sets of applications specified in the | |||
Application Identifier Bit Mask. This is less efficient but still | Application Identifier Bit Mask. This is less efficient but still | |||
valid. | valid. | |||
skipping to change at page 10, line 52 ¶ | skipping to change at page 10, line 52 ¶ | |||
length SABM and UDABM so long as the constraints discussed in | length SABM and UDABM so long as the constraints discussed in | |||
Section 4.2 and Section 6.2 are acceptable. | Section 4.2 and Section 6.2 are acceptable. | |||
If different values for Maximum Link Bandwidth for a given link are | If different values for Maximum Link Bandwidth for a given link are | |||
advertised, all values MUST be ignored. | advertised, all values MUST be ignored. | |||
4.2.2. Special Considerations for Reservable/Unreserved Bandwidth | 4.2.2. Special Considerations for Reservable/Unreserved Bandwidth | |||
Maximum Reservable Link Bandwidth and Unreserved Bandwidth are | Maximum Reservable Link Bandwidth and Unreserved Bandwidth are | |||
attributes specific to RSVP-TE. When advertised using the | attributes specific to RSVP-TE. When advertised using the | |||
Application Specific Link Attributes sub-TLV, bits other than the | Application-Specific Link Attributes sub-TLV, bits other than the | |||
RSVP-TE (R-bit) MUST NOT be set in the Application Identifier Bit | RSVP-TE (R-bit) MUST NOT be set in the Application Identifier Bit | |||
Mask. If an advertisement of Maximum Reservable Link Bandwidth or | Mask. If an advertisement of Maximum Reservable Link Bandwidth or | |||
Unreserved Bandwidth is received with bits other than the RSVP-TE bit | Unreserved Bandwidth is received with bits other than the RSVP-TE bit | |||
set, the advertisement MUST be ignored. | set, the advertisement MUST be ignored. | |||
4.2.3. Considerations for Extended TE Metrics | 4.2.3. Considerations for Extended TE Metrics | |||
[RFC8570] defines a number of dynamic performance metrics associated | [RFC8570] defines a number of dynamic performance metrics associated | |||
with a link. It is conceivable that such metrics could be measured | with a link. It is conceivable that such metrics could be measured | |||
specific to traffic associated with a specific application. | specific to traffic associated with a specific application. | |||
Therefore this document includes support for advertising these link | Therefore this document includes support for advertising these link | |||
attributes specific to a given application. However, in practice it | attributes specific to a given application. However, in practice it | |||
may well be more practical to have these metrics reflect the | may well be more practical to have these metrics reflect the | |||
performance of all traffic on the link regardless of application. In | performance of all traffic on the link regardless of application. In | |||
such cases, advertisements for these attributes will be associated | such cases, advertisements for these attributes will be associated | |||
with all of the applications utilizing that link. This can be done | with all of the applications utilizing that link. This can be done | |||
either by explicitly specifying the applications in the Application | either by explicitly specifying the applications in the Application | |||
Identifier Bit Mask or by using a zero length Application Identifier | Identifier Bit Mask or by using a zero length Application Identifier | |||
Bit Mask. | Bit Mask. | |||
4.3. Application Specific SRLG TLV | 4.3. Application-Specific SRLG TLV | |||
A new TLV is defined to advertise application specific SRLGs for a | A new TLV is defined to advertise application-specific SRLGs for a | |||
given link. Although similar in functionality to TLV 138 [RFC5307] | given link. Although similar in functionality to TLV 138 [RFC5307] | |||
and TLV 139 [RFC6119], a single TLV provides support for IPv4, IPv6, | and TLV 139 [RFC6119], a single TLV provides support for IPv4, IPv6, | |||
and unnumbered identifiers for a link. Unlike TLVs 138/139, it | and unnumbered identifiers for a link. Unlike TLVs 138/139, it | |||
utilizes sub-TLVs to encode the link identifiers in order to provide | utilizes sub-TLVs to encode the link identifiers in order to provide | |||
the flexible formatting required to support multiple link identifier | the flexible formatting required to support multiple link identifier | |||
types. | types. | |||
Type: 238 (Temporarily assigned by IANA) | Type: 238 (Temporarily assigned by IANA) | |||
Length: Number of octets in the value field (1 octet) | Length: Number of octets in the value field (1 octet) | |||
Value: | Value: | |||
skipping to change at page 12, line 47 ¶ | skipping to change at page 12, line 47 ¶ | |||
the SRLG values advertised in the legacy TLV MUST be used by the set | the SRLG values advertised in the legacy TLV MUST be used by the set | |||
of applications specified in the Application Identifier Bit Mask. | of applications specified in the Application Identifier Bit Mask. | |||
For a given application, the setting of the L-flag MUST be the same | For a given application, the setting of the L-flag MUST be the same | |||
in all TLVs for a given link. In cases where this constraint is | in all TLVs for a given link. In cases where this constraint is | |||
violated, the L-flag MUST be considered set for this application. | violated, the L-flag MUST be considered set for this application. | |||
5. Attribute Advertisements and Enablement | 5. Attribute Advertisements and Enablement | |||
This document defines extensions to support the advertisement of | This document defines extensions to support the advertisement of | |||
application specific link attributes. | application-specific link attributes. | |||
Whether the presence of link attribute advertisements for a given | Whether the presence of link attribute advertisements for a given | |||
application indicates that the application is enabled on that link | application indicates that the application is enabled on that link | |||
depends upon the application. Similarly, whether the absence of link | depends upon the application. Similarly, whether the absence of link | |||
attribute advertisements indicates that the application is not | attribute advertisements indicates that the application is not | |||
enabled depends upon the application. | enabled depends upon the application. | |||
In the case of RSVP-TE, the advertisement of application specific | In the case of RSVP-TE, the advertisement of application-specific | |||
link attributes implies that RSVP is enabled on that link. The | link attributes implies that RSVP is enabled on that link. The | |||
absence of RSVP-TE application specific link attributes in | absence of RSVP-TE application-specific link attributes in | |||
combination with the absence of legacy advertisements implies that | combination with the absence of legacy advertisements implies that | |||
RSVP is not enabled on that link. | RSVP is not enabled on that link. | |||
In the case of SR Policy, advertisement of application specific link | In the case of SR Policy, advertisement of application-specific link | |||
attributes does not indicate enablement of SR Policy on that link. | attributes does not indicate enablement of SR Policy on that link. | |||
The advertisements are only used to support constraints that may be | The advertisements are only used to support constraints that may be | |||
applied when specifying an explicit path. SR Policy is implicitly | applied when specifying an explicit path. SR Policy is implicitly | |||
enabled on all links that are part of the Segment Routing enabled | enabled on all links that are part of the Segment Routing enabled | |||
topology independent of the existence of link attribute | topology independent of the existence of link attribute | |||
advertisements. | advertisements. | |||
In the case of LFA, advertisement of application specific link | In the case of LFA, advertisement of application-specific link | |||
attributes does not indicate enablement of LFA on that link. | attributes does not indicate enablement of LFA on that link. | |||
Enablement is controlled by local configuration. | Enablement is controlled by local configuration. | |||
If, in the future, additional standard applications are defined to | If, in the future, additional standard applications are defined to | |||
use this mechanism, the specification defining this use MUST define | use this mechanism, the specification defining this use MUST define | |||
the relationship between application specific link attribute | the relationship between application-specific link attribute | |||
advertisements and enablement for that application. | advertisements and enablement for that application. | |||
This document allows the advertisement of application specific link | This document allows the advertisement of application-specific link | |||
attributes with no application identifiers i.e., both the Standard | attributes with no application identifiers i.e., both the Standard | |||
Application Identifier Bit Mask and the User Defined Application | Application Identifier Bit Mask and the User Defined Application | |||
Identifier Bit Mask are not present (See Section 4.1). This supports | Identifier Bit Mask are not present (See Section 4.1). This supports | |||
the use of the link attribute by any application. In the presence of | the use of the link attribute by any application. In the presence of | |||
an application where the advertisement of link attribute | an application where the advertisement of link attribute | |||
advertisements is used to infer the enablement of an application on | advertisements is used to infer the enablement of an application on | |||
that link (e.g., RSVP-TE), the absence of the application identifier | that link (e.g., RSVP-TE), the absence of the application identifier | |||
leaves ambiguous whether that application is enabled on such a link. | leaves ambiguous whether that application is enabled on such a link. | |||
This needs to be considered when making use of the "any application" | This needs to be considered when making use of the "any application" | |||
encoding. | encoding. | |||
6. Deployment Considerations | 6. Deployment Considerations | |||
This section discuss deployment considerations associated with the | This section discuss deployment considerations associated with the | |||
use of application specific link attribute advertisements. | use of application-specific link attribute advertisements. | |||
6.1. Use of Legacy Advertisements | 6.1. Use of Legacy Advertisements | |||
Bit Identifiers for Standard Applications are defined in Section 4.1. | Bit Identifiers for Standard Applications are defined in Section 4.1. | |||
All of the identifiers defined in this document are associated with | All of the identifiers defined in this document are associated with | |||
applications that were already deployed in some networks prior to the | applications that were already deployed in some networks prior to the | |||
writing of this document. Therefore, such applications have been | writing of this document. Therefore, such applications have been | |||
deployed using the legacy advertisements. The Standard Applications | deployed using the legacy advertisements. The Standard Applications | |||
defined in this document may continue to use legacy advertisements | defined in this document may continue to use legacy advertisements | |||
for a given link so long as at least one of the following conditions | for a given link so long as at least one of the following conditions | |||
skipping to change at page 14, line 23 ¶ | skipping to change at page 14, line 23 ¶ | |||
anywhere in the network | anywhere in the network | |||
o The application is SR Policy or LFA, RSVP-TE is deployed in the | o The application is SR Policy or LFA, RSVP-TE is deployed in the | |||
network, and both the set of links on which SR Policy and/or LFA | network, and both the set of links on which SR Policy and/or LFA | |||
advertisements are required and the attribute values used by SR | advertisements are required and the attribute values used by SR | |||
Policy and/or LFA on all such links is fully congruent with the | Policy and/or LFA on all such links is fully congruent with the | |||
links and attribute values used by RSVP-TE | links and attribute values used by RSVP-TE | |||
Under the conditions defined above, implementations that support the | Under the conditions defined above, implementations that support the | |||
extensions defined in this document have the choice of using legacy | extensions defined in this document have the choice of using legacy | |||
advertisements or application specific advertisements in support of | advertisements or application-specific advertisements in support of | |||
SR Policy and/or LFA. This will require implementations to provide | SR Policy and/or LFA. This will require implementations to provide | |||
controls specifying which type of advertisements are to be sent/ | controls specifying which type of advertisements are to be sent/ | |||
processed on receive for these applications. Further discussion of | processed on receive for these applications. Further discussion of | |||
the associated issues can be found in Section 6.3. | the associated issues can be found in Section 6.3. | |||
New applications that future documents define to make use of the | New applications that future documents define to make use of the | |||
advertisements defined in this document MUST NOT make use of legacy | advertisements defined in this document MUST NOT make use of legacy | |||
advertisements. This simplifies deployment of new applications by | advertisements. This simplifies deployment of new applications by | |||
eliminating the need to support multiple ways to advertise attributes | eliminating the need to support multiple ways to advertise attributes | |||
for the new applications. | for the new applications. | |||
skipping to change at page 15, line 20 ¶ | skipping to change at page 15, line 20 ¶ | |||
the use of legacy advertisements by the legacy routers. The | the use of legacy advertisements by the legacy routers. The | |||
following sub-sections discuss interoperability and backwards | following sub-sections discuss interoperability and backwards | |||
compatibility concerns for a number of deployment scenarios. | compatibility concerns for a number of deployment scenarios. | |||
6.3.1. Multiple Applications: Common Attributes with RSVP-TE | 6.3.1. Multiple Applications: Common Attributes with RSVP-TE | |||
In cases where multiple applications are utilizing a given link, one | In cases where multiple applications are utilizing a given link, one | |||
of the applications is RSVP-TE, and all link attributes for a given | of the applications is RSVP-TE, and all link attributes for a given | |||
link are common to the set of applications utilizing that link, | link are common to the set of applications utilizing that link, | |||
interoperability is achieved by using legacy advertisements and | interoperability is achieved by using legacy advertisements and | |||
sending application specific advertisements with L-flag set and no | sending application-specific advertisements with L-flag set and no | |||
link attribute values. This avoids duplication of link attribute | link attribute values. This avoids duplication of link attribute | |||
advertisements. | advertisements. | |||
6.3.2. Multiple Applications: All Attributes Not Shared with RSVP-TE | 6.3.2. Multiple Applications: All Attributes Not Shared with RSVP-TE | |||
In cases where one or more applications other than RSVP-TE are | In cases where one or more applications other than RSVP-TE are | |||
utilizing a given link and one or more link attribute values are not | utilizing a given link and one or more link attribute values are not | |||
shared with RSVP-TE, it is necessary to use application specific | shared with RSVP-TE, it is necessary to use application-specific | |||
advertisements as defined in this document. Attributes for | advertisements as defined in this document. Attributes for | |||
applications other than RSVP-TE MUST be advertised using application | applications other than RSVP-TE MUST be advertised using application- | |||
specific advertisements that have the L-flag clear. In cases where | specific advertisements that have the L-flag clear. In cases where | |||
some link attributes are shared with RSVP-TE, this requires duplicate | some link attributes are shared with RSVP-TE, this requires duplicate | |||
advertisements for those attributes. | advertisements for those attributes. | |||
These guidelines apply to cases where RSVP-TE is not using any | These guidelines apply to cases where RSVP-TE is not using any | |||
advertised attributes on a link and to cases where RSVP-TE is using | advertised attributes on a link and to cases where RSVP-TE is using | |||
some link attribute advertisements on the link but some link | some link attribute advertisements on the link but some link | |||
attributes cannot be shared with RSVP-TE. | attributes cannot be shared with RSVP-TE. | |||
6.3.3. Interoperability with Legacy Routers | 6.3.3. Interoperability with Legacy Routers | |||
For the applications defined in this document, routers that do not | For the applications defined in this document, routers that do not | |||
support the extensions defined in this document will send and receive | support the extensions defined in this document will send and receive | |||
only legacy link attribute advertisements. So long as there is any | only legacy link attribute advertisements. So long as there is any | |||
legacy router in the network that has any of the applications | legacy router in the network that has any of the applications | |||
enabled, all routers MUST continue to advertise link attributes using | enabled, all routers MUST continue to advertise link attributes using | |||
legacy advertisements. In addition, the link attribute values | legacy advertisements. In addition, the link attribute values | |||
associated with the set of applications supported by legacy routers | associated with the set of applications supported by legacy routers | |||
(RSVP-TE, SR Policy, and/or LFA) are always shared since legacy | (RSVP-TE, SR Policy, and/or LFA) are always shared since legacy | |||
routers have no way of advertising or processing application specific | routers have no way of advertising or processing application-specific | |||
values. Once all legacy routers have been upgraded, migration from | values. Once all legacy routers have been upgraded, migration from | |||
legacy advertisements to application specific advertisements can be | legacy advertisements to application-specific advertisements can be | |||
achieved via the following steps: | achieved via the following steps: | |||
1)Send application specific advertisements while continuing to | 1)Send application-specific advertisements while continuing to | |||
advertise using legacy (all advertisements are then duplicated). | advertise using legacy (all advertisements are then duplicated). | |||
Receiving routers continue to use legacy advertisements. | Receiving routers continue to use legacy advertisements. | |||
2)Enable the use of the application specific advertisements on all | 2)Enable the use of the application-specific advertisements on all | |||
routers | routers | |||
3)Remove legacy advertisements | 3)Remove legacy advertisements | |||
When the migration is complete, it then becomes possible to advertise | When the migration is complete, it then becomes possible to advertise | |||
incongruent values per application on a given link. | incongruent values per application on a given link. | |||
Note that the use of the L-flag is of no value in the migration. | Note that the use of the L-flag is of no value in the migration. | |||
Documents defining new applications that make use of the application | Documents defining new applications that make use of the application- | |||
specific advertisements defined in this document MUST discuss | specific advertisements defined in this document MUST discuss | |||
interoperability and backwards compatibility issues that could occur | interoperability and backwards compatibility issues that could occur | |||
in the presence of routers that do not support the new application. | in the presence of routers that do not support the new application. | |||
6.3.4. Use of Application Specific Advertisements for RSVP-TE | 6.3.4. Use of Application-Specific Advertisements for RSVP-TE | |||
The extensions defined in this document support RSVP-TE as one of the | The extensions defined in this document support RSVP-TE as one of the | |||
supported applications. This allows that RSVP-TE could eventually | supported applications. This allows that RSVP-TE could eventually | |||
utilize the application specific advertisements. This can be done in | utilize the application-specific advertisements. This can be done in | |||
the following step-wise manner: | the following step-wise manner: | |||
1)Upgrade all routers to support the extensions in this document | 1)Upgrade all routers to support the extensions in this document | |||
2)Advertise all legacy link attributes using application specific | 2)Advertise all legacy link attributes using application-specific | |||
advertisements with L-flag clear and R-bit set. At this point both | advertisements with L-flag clear and R-bit set. At this point both | |||
legacy and application specific advertisements are being sent. | legacy and application-specific advertisements are being sent. | |||
3)Remove legacy advertisements | 3)Remove legacy advertisements | |||
7. IANA Considerations | 7. IANA Considerations | |||
This section lists the protocol code point changes introduced by this | This section lists the protocol code point changes introduced by this | |||
document and the related IANA changes required. | document and the related IANA changes required. | |||
For new registries defined under IS-IS TLV Codepoints Registry with | For new registries defined under IS-IS TLV Codepoints Registry with | |||
registration procedure "Expert Review", guidance for designated | registration procedure "Expert Review", guidance for designated | |||
experts can be found in [RFC7370]. | experts can be found in [RFC7370]. | |||
7.1. Application Specific Link Attributes sub-TLV | 7.1. Application-Specific Link Attributes sub-TLV | |||
This document defines a new sub-TLV in the Sub-TLVs for TLVs 22, 23, | This document defines a new sub-TLV in the Sub-TLVs for TLVs 22, 23, | |||
25, 141, 222, and 223 registry. See Section 4.2 | 25, 141, 222, and 223 registry. See Section 4.2 | |||
Type Description 22 23 25 141 222 223 | Type Description 22 23 25 141 222 223 | |||
---- --------------------- ---- ---- ---- ---- ---- ---- | ---- --------------------- ---- ---- ---- ---- ---- ---- | |||
16 Application Specific y y y(s) y y y | 16 Application-Specific y y y(s) y y y | |||
Link Attributes | Link Attributes | |||
7.2. Application Specific SRLG TLV | 7.2. Application-Specific SRLG TLV | |||
This document defines one new TLV in the IS-IS TLV Codepoints | This document defines one new TLV in the IS-IS TLV Codepoints | |||
Registry. See Section 4.3 | Registry. See Section 4.3 | |||
Type Description IIH LSP SNP Purge | Type Description IIH LSP SNP Purge | |||
---- --------------------- --- --- --- ----- | ---- --------------------- --- --- --- ----- | |||
238 Application Specific n y n n | 238 Application-Specific n y n n | |||
SRLG | SRLG | |||
7.3. Application Specific Link Attributes sub-sub-TLV Registry | 7.3. Application-Specific Link Attributes sub-sub-TLV Registry | |||
This document requests a new IANA registry under the IS-IS TLV | This document requests a new IANA registry under the IS-IS TLV | |||
Codepoints Registry be created to control the assignment of sub-sub- | Codepoints Registry be created to control the assignment of sub-sub- | |||
TLV codepoints for the Application Specific Link Attributes sub-TLV | TLV codepoints for the Application-Specific Link Attributes sub-TLV | |||
defined in Section 7.1. The suggested name of the new registry is | defined in Section 7.1. The suggested name of the new registry is | |||
"sub-sub-TLV code points for application specific link attributes". | "sub-sub-TLV code points for application-specific link attributes". | |||
The registration procedure is "Expert Review" as defined in | The registration procedure is "Expert Review" as defined in | |||
[RFC8126]. The following assignments are made by this document: | [RFC8126]. The following assignments are made by this document: | |||
Type Description Encoding | Type Description Encoding | |||
Reference | Reference | |||
--------------------------------------------------------- | --------------------------------------------------------- | |||
0-2 Unassigned | 0-2 Unassigned | |||
3 Administrative group (color) RFC5305 | 3 Administrative group (color) RFC5305 | |||
4-8 Unassigned | 4-8 Unassigned | |||
9 Maximum link bandwidth RFC5305 | 9 Maximum link bandwidth RFC5305 | |||
skipping to change at page 18, line 35 ¶ | skipping to change at page 18, line 35 ¶ | |||
39 Unidirectional Utilized Bandwidth RFC8570 | 39 Unidirectional Utilized Bandwidth RFC8570 | |||
40-255 Unassigned | 40-255 Unassigned | |||
Note to IANA: For future codepoints, in cases where the document that | Note to IANA: For future codepoints, in cases where the document that | |||
defines the encoding is different from the document that assigns the | defines the encoding is different from the document that assigns the | |||
codepoint, the encoding reference MUST be to the document that | codepoint, the encoding reference MUST be to the document that | |||
defines the encoding. | defines the encoding. | |||
Note to designated experts: If a link attribute can be advertised | Note to designated experts: If a link attribute can be advertised | |||
both as a sub-TLV of TLVs 22, 23, 25, 141, 222, and 223 and as a sub- | both as a sub-TLV of TLVs 22, 23, 25, 141, 222, and 223 and as a sub- | |||
sub-TLV of the Application Specific Link Attributes sub-TLV defined | sub-TLV of the Application-Specific Link Attributes sub-TLV defined | |||
in this document, then the same numerical code should be assigned to | in this document, then the same numerical code should be assigned to | |||
the link attribute whenever possible. | the link attribute whenever possible. | |||
7.4. Link Attribute Application Identifier Registry | 7.4. Link Attribute Application Identifier Registry | |||
This document requests a new IANA registry be created, under the | This document requests a new IANA registry be created, under the | |||
category of "Interior Gateway Protocol (IGP) Parameters", to control | category of "Interior Gateway Protocol (IGP) Parameters", to control | |||
the assignment of Application Identifier Bits. The suggested name of | the assignment of Application Identifier Bits. The suggested name of | |||
the new registry is "Link Attribute Applications". The registration | the new registry is "Link Attribute Applications". The registration | |||
policy for this registry is "Expert Review" [RFC8126]. Bit | policy for this registry is "Expert Review" [RFC8126]. Bit | |||
skipping to change at page 19, line 16 ¶ | skipping to change at page 19, line 16 ¶ | |||
--------------------------------------------------------- | --------------------------------------------------------- | |||
0 RSVP-TE (R-bit) | 0 RSVP-TE (R-bit) | |||
1 Segment Routing Policy (S-bit) | 1 Segment Routing Policy (S-bit) | |||
2 Loop Free Alternate (F-bit) | 2 Loop Free Alternate (F-bit) | |||
3-63 Unassigned | 3-63 Unassigned | |||
7.5. SRLG sub-TLVs | 7.5. SRLG sub-TLVs | |||
This document requests a new IANA registry be created under the IS-IS | This document requests a new IANA registry be created under the IS-IS | |||
TLV Codepoints Registry to control the assignment of sub-TLV types | TLV Codepoints Registry to control the assignment of sub-TLV types | |||
for the application specific SRLG TLV. The suggested name of the new | for the application-specific SRLG TLV. The suggested name of the new | |||
registry is "Sub-TLVs for TLV 238". The registration procedure is | registry is "Sub-TLVs for TLV 238". The registration procedure is | |||
"Expert Review" as defined in [RFC8126]. The following assignments | "Expert Review" as defined in [RFC8126]. The following assignments | |||
are made by this document: | are made by this document: | |||
Value Description Encoding | Value Description Encoding | |||
Reference | Reference | |||
--------------------------------------------------------- | --------------------------------------------------------- | |||
0-3 Unassigned | 0-3 Unassigned | |||
4 Link Local/Remote Identifiers [RFC5307] | 4 Link Local/Remote Identifiers [RFC5307] | |||
5 Unassigned | 5 Unassigned | |||
End of changes. 54 change blocks. | ||||
58 lines changed or deleted | 58 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/ |