draft-ietf-lsr-isis-srv6-extensions-02.txt | draft-ietf-lsr-isis-srv6-extensions-03.txt | |||
---|---|---|---|---|
Networking Working Group P. Psenak, Ed. | Networking Working Group P. Psenak, Ed. | |||
Internet-Draft C. Filsfils | Internet-Draft C. Filsfils | |||
Intended status: Standards Track Cisco Systems | Intended status: Standards Track Cisco Systems | |||
Expires: January 5, 2020 A. Bashandy | Expires: April 5, 2020 A. Bashandy | |||
Arrcus | Arrcus | |||
B. Decraene | B. Decraene | |||
Orange | Orange | |||
Z. Hu | Z. Hu | |||
Huawei Technologies | Huawei Technologies | |||
July 4, 2019 | October 3, 2019 | |||
IS-IS Extension to Support Segment Routing over IPv6 Dataplane | IS-IS Extension to Support Segment Routing over IPv6 Dataplane | |||
draft-ietf-lsr-isis-srv6-extensions-02.txt | draft-ietf-lsr-isis-srv6-extensions-03.txt | |||
Abstract | Abstract | |||
Segment Routing (SR) allows for a flexible definition of end-to-end | Segment Routing (SR) allows for a flexible definition of end-to-end | |||
paths by encoding paths as sequences of topological sub-paths, called | paths by encoding paths as sequences of topological sub-paths, called | |||
"segments". Segment routing architecture can be implemented over an | "segments". Segment routing architecture can be implemented over an | |||
MPLS data plane as well as an IPv6 data plane. This draft describes | MPLS data plane as well as an IPv6 data plane. This draft describes | |||
the IS-IS extensions required to support Segment Routing over an IPv6 | the IS-IS extensions required to support Segment Routing over an IPv6 | |||
data plane. | data plane. | |||
skipping to change at page 1, line 49 ¶ | skipping to change at page 1, line 49 ¶ | |||
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 January 5, 2020. | This Internet-Draft will expire on April 5, 2020. | |||
Copyright Notice | Copyright Notice | |||
Copyright (c) 2019 IETF Trust and the persons identified as the | Copyright (c) 2019 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 32 ¶ | skipping to change at page 2, line 32 ¶ | |||
1. Introduction . . . . . . . . . . . . . . . . . . . . . . . . 3 | 1. Introduction . . . . . . . . . . . . . . . . . . . . . . . . 3 | |||
2. SRv6 Capabilities sub-TLV . . . . . . . . . . . . . . . . . . 4 | 2. SRv6 Capabilities sub-TLV . . . . . . . . . . . . . . . . . . 4 | |||
3. Advertising Supported Algorithms . . . . . . . . . . . . . . 4 | 3. Advertising Supported Algorithms . . . . . . . . . . . . . . 4 | |||
4. Advertising Maximum SRv6 SID Depths . . . . . . . . . . . . . 4 | 4. Advertising Maximum SRv6 SID Depths . . . . . . . . . . . . . 4 | |||
4.1. Maximum Segments Left MSD Type . . . . . . . . . . . . . 5 | 4.1. Maximum Segments Left MSD Type . . . . . . . . . . . . . 5 | |||
4.2. Maximum End Pop MSD Type . . . . . . . . . . . . . . . . 5 | 4.2. Maximum End Pop MSD Type . . . . . . . . . . . . . . . . 5 | |||
4.3. Maximum T.Insert MSD Type . . . . . . . . . . . . . . . . 5 | 4.3. Maximum T.Insert MSD Type . . . . . . . . . . . . . . . . 5 | |||
4.4. Maximum T.Encaps MSD Type . . . . . . . . . . . . . . . . 5 | 4.4. Maximum T.Encaps MSD Type . . . . . . . . . . . . . . . . 5 | |||
4.5. Maximum End D MSD Type . . . . . . . . . . . . . . . . . 6 | 4.5. Maximum End D MSD Type . . . . . . . . . . . . . . . . . 6 | |||
5. SRv6 SIDs and Reachability . . . . . . . . . . . . . . . . . 6 | 5. SRv6 SIDs and Reachability . . . . . . . . . . . . . . . . . 6 | |||
6. Advertising Locators and End SIDs . . . . . . . . . . . . . . 8 | 6. Advertising Anycast Property . . . . . . . . . . . . . . . . 8 | |||
6.1. SRv6 Locator TLV Format . . . . . . . . . . . . . . . . . 8 | 7. Advertising Locators and End SIDs . . . . . . . . . . . . . . 8 | |||
6.2. SRv6 End SID sub-TLV . . . . . . . . . . . . . . . . . . 9 | 7.1. SRv6 Locator TLV Format . . . . . . . . . . . . . . . . . 8 | |||
7. Advertising SRv6 Adjacency SIDs . . . . . . . . . . . . . . . 11 | 7.2. SRv6 End SID sub-TLV . . . . . . . . . . . . . . . . . . 10 | |||
7.1. SRv6 End.X SID sub-TLV . . . . . . . . . . . . . . . . . 11 | 8. Advertising SRv6 Adjacency SIDs . . . . . . . . . . . . . . . 12 | |||
7.2. SRv6 LAN End.X SID sub-TLV . . . . . . . . . . . . . . . 13 | 8.1. SRv6 End.X SID sub-TLV . . . . . . . . . . . . . . . . . 12 | |||
8. SRv6 SID Structure Sub-Sub-TLV . . . . . . . . . . . . . . . 14 | 8.2. SRv6 LAN End.X SID sub-TLV . . . . . . . . . . . . . . . 14 | |||
9. Advertising Endpoint Behaviors . . . . . . . . . . . . . . . 15 | 9. SRv6 SID Structure Sub-Sub-TLV . . . . . . . . . . . . . . . 15 | |||
10. IANA Considerations . . . . . . . . . . . . . . . . . . . . . 16 | 10. Advertising Endpoint Behaviors . . . . . . . . . . . . . . . 16 | |||
10.1. SRv6 Locator TLV . . . . . . . . . . . . . . . . . . . . 16 | 11. IANA Considerations . . . . . . . . . . . . . . . . . . . . . 17 | |||
10.1.1. SRv6 End SID sub-TLV . . . . . . . . . . . . . . . . 16 | 11.1. SRv6 Locator TLV . . . . . . . . . . . . . . . . . . . . 17 | |||
10.1.2. Revised sub-TLV table . . . . . . . . . . . . . . . 17 | 11.1.1. SRv6 End SID sub-TLV . . . . . . . . . . . . . . . . 17 | |||
10.2. SRv6 Capabilities sub-TLV . . . . . . . . . . . . . . . 17 | 11.1.2. Revised sub-TLV table . . . . . . . . . . . . . . . 18 | |||
10.3. SRv6 End.X SID and SRv6 LAN End.X SID sub-TLVs . . . . . 18 | 11.2. SRv6 Capabilities sub-TLV . . . . . . . . . . . . . . . 18 | |||
10.4. MSD Types . . . . . . . . . . . . . . . . . . . . . . . 18 | 11.3. SRv6 End.X SID and SRv6 LAN End.X SID sub-TLVs . . . . . 19 | |||
10.5. Sub-Sub-TLVs for SID Sub-TLVs . . . . . . . . . . . . . 18 | 11.4. MSD Types . . . . . . . . . . . . . . . . . . . . . . . 19 | |||
11. Security Considerations . . . . . . . . . . . . . . . . . . . 19 | 11.5. Sub-Sub-TLVs for SID Sub-TLVs . . . . . . . . . . . . . 19 | |||
12. Contributors . . . . . . . . . . . . . . . . . . . . . . . . 19 | 11.6. Prefix Attribute Flags Sub-TLV . . . . . . . . . . . . . 20 | |||
13. References . . . . . . . . . . . . . . . . . . . . . . . . . 20 | 12. Security Considerations . . . . . . . . . . . . . . . . . . . 20 | |||
13.1. Normative References . . . . . . . . . . . . . . . . . . 20 | 13. Contributors . . . . . . . . . . . . . . . . . . . . . . . . 20 | |||
13.2. Informative References . . . . . . . . . . . . . . . . . 22 | 14. References . . . . . . . . . . . . . . . . . . . . . . . . . 21 | |||
14.1. Normative References . . . . . . . . . . . . . . . . . . 21 | ||||
Authors' Addresses . . . . . . . . . . . . . . . . . . . . . . . 22 | 14.2. Informative References . . . . . . . . . . . . . . . . . 23 | |||
Authors' Addresses . . . . . . . . . . . . . . . . . . . . . . . 24 | ||||
1. Introduction | 1. Introduction | |||
With Segment Routing (SR) [I-D.ietf-spring-segment-routing], a node | With Segment Routing (SR) [I-D.ietf-spring-segment-routing], a node | |||
steers a packet through an ordered list of instructions, called | steers a packet through an ordered list of instructions, called | |||
segments. | segments. | |||
Segments are identified through Segment Identifiers (SIDs). | Segments are identified through Segment Identifiers (SIDs). | |||
Segment Routing can be directly instantiated on the IPv6 data plane | Segment Routing can be directly instantiated on the IPv6 data plane | |||
skipping to change at page 8, line 5 ¶ | skipping to change at page 8, line 5 ¶ | |||
with SRv6 SID advertisements MUST be the longest match prefix | with SRv6 SID advertisements MUST be the longest match prefix | |||
installed in the forwarding plane for those SIDs. There are a number | installed in the forwarding plane for those SIDs. There are a number | |||
of ways in which this requirement could be compromised | of ways in which this requirement could be compromised | |||
o Another locator associated with a different topology/algorithm is | o Another locator associated with a different topology/algorithm is | |||
the longest match | the longest match | |||
o A prefix advertisement (i.e., from TLV 236 or 237) is the longest | o A prefix advertisement (i.e., from TLV 236 or 237) is the longest | |||
match | match | |||
6. Advertising Locators and End SIDs | 6. Advertising Anycast Property | |||
Both prefixes and SRv6 Locators may be configured as anycast and as | ||||
such the same value can be advertised by multiple routers. It is | ||||
useful for other routers to know that the advertisement is for an | ||||
anycast identifier. | ||||
A new flag in "Bit Values for Prefix Attribute Flags Sub-TLV" | ||||
registry [RFC7794] is defined to advertise the anycast property: | ||||
Bit #: 4 (Suggested - to be assigned by IANA) | ||||
Name: Anycast Flag (A-flag) | ||||
When the prefix/SRv6 locator is configured as anycast, the A-flag | ||||
SHOULD be set. Otherwise, this flag MUST be clear. | ||||
The A-flag MUST be preserved when leaked between levels. | ||||
The A-flag and the N-flag MUST NOT both be set. | ||||
If both N-flag and A-flag are set in the prefix/SRv6 Locator | ||||
advertisement, the receiving routers MUST ignore the N-flag. | ||||
The same prefix/SRv6 Locator can be advertised by multiple routers. | ||||
If at least one of them sets the A-Flag in its advertisement, the | ||||
prefix/SRv6 Locator SHOULD be considered as anycast. | ||||
7. Advertising Locators and End SIDs | ||||
The SRv6 Locator TLV is introduced to advertise SRv6 Locators and End | The SRv6 Locator TLV is introduced to advertise SRv6 Locators and End | |||
SIDs associated with each locator. | SIDs associated with each locator. | |||
This new TLV shares the sub-TLV space defined for TLVs 135, 235, 236 | This new TLV shares the sub-TLV space defined for TLVs 135, 235, 236 | |||
and 237. | and 237. | |||
6.1. SRv6 Locator TLV Format | 7.1. SRv6 Locator TLV Format | |||
The SRv6 Locator TLV has the following format: | The SRv6 Locator 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 | |||
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | |||
| Type | Length |R|R|R|R| MTID | | | Type | Length |R|R|R|R| MTID | | |||
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | |||
Followed by one or more locator entries of the form: | Followed by one or more locator entries of the form: | |||
skipping to change at page 9, line 4 ¶ | skipping to change at page 9, line 32 ¶ | |||
Note that the value 0 is legal. | Note that the value 0 is legal. | |||
Locator entry: | Locator entry: | |||
Metric: 4 octets. As described in [RFC5305]. | Metric: 4 octets. As described in [RFC5305]. | |||
Flags: 1 octet. The following flags are defined | Flags: 1 octet. The following flags are defined | |||
0 | 0 | |||
0 1 2 3 4 5 6 7 | 0 1 2 3 4 5 6 7 | |||
+-+-+-+-+-+-+-+-+ | +-+-+-+-+-+-+-+-+ | |||
|D|A| Reserved | | |D| Reserved | | |||
+-+-+-+-+-+-+-+-+ | +-+-+-+-+-+-+-+-+ | |||
where: | where: | |||
D bit: When the Locator is leaked from level-2 to level-1, the D | D bit: When the Locator is leaked from level-2 to level-1, the D | |||
bit MUST be set. Otherwise, this bit MUST be clear. Locators | bit MUST be set. Otherwise, this bit MUST be clear. Locators | |||
with the D bit set MUST NOT be leaked from level-1 to level-2. | with the D bit set MUST NOT be leaked from level-1 to level-2. | |||
This is to prevent looping. | This is to prevent looping. | |||
A bit: When the Locator is configured as anycast, the A bit | ||||
SHOULD be set. Otherwise, this bit MUST be clear. | ||||
The remaining bits are reserved for future use. They SHOULD be | The remaining bits are reserved for future use. They SHOULD be | |||
set to zero on transmission and MUST be ignored on receipt. | set to zero on transmission and MUST be ignored on receipt. | |||
Algorithm: 1 octet. Associated algorithm. Algorithm values | Algorithm: 1 octet. Associated algorithm. Algorithm values | |||
are defined in the IGP Algorithm Type registry. | are defined in the IGP Algorithm Type registry. | |||
Loc-Size: 1 octet. Number of bits in the Locator field. | Loc-Size: 1 octet. Number of bits in the Locator field. | |||
(1 - 128) | (1 - 128) | |||
Locator: 1-16 octets. This field encodes the advertised SRv6 | Locator: 1-16 octets. This field encodes the advertised SRv6 | |||
Locator. The Locator is encoded in the minimal number of | Locator. The Locator is encoded in the minimal number of | |||
octets for the given number of bits. | octets for the given number of bits. | |||
Sub-TLV-length: 1 octet. Number of octets used by sub-TLVs | Sub-TLV-length: 1 octet. Number of octets used by sub-TLVs | |||
Optional sub-TLVs. | Optional sub-TLVs. | |||
6.2. SRv6 End SID sub-TLV | 7.2. SRv6 End SID sub-TLV | |||
The SRv6 End SID sub-TLV is introduced to advertise SRv6 Segment | The SRv6 End SID sub-TLV is introduced to advertise SRv6 Segment | |||
Identifiers (SID) with Endpoint functions which do not require a | Identifiers (SID) with Endpoint functions which do not require a | |||
particular neighbor in order to be correctly applied | particular neighbor in order to be correctly applied | |||
[I-D.ietf-spring-srv6-network-programming]. SRv6 SIDs associated | [I-D.ietf-spring-srv6-network-programming]. SRv6 SIDs associated | |||
with a neighbor are advertised using the sub-TLVs defined in | with a neighbor are advertised using the sub-TLVs defined in | |||
Section 6. | Section 6. | |||
This new sub-TLV is advertised in the SRv6 Locator TLV defined in the | This new sub-TLV is advertised in the SRv6 Locator TLV defined in the | |||
previous section. SRv6 End SIDs inherit the topology/algorithm from | previous section. SRv6 End SIDs inherit the topology/algorithm from | |||
skipping to change at page 11, line 5 ¶ | skipping to change at page 12, line 5 ¶ | |||
End SIDs which are NOT a subnet of the associated locator MUST be | End SIDs which are NOT a subnet of the associated locator MUST be | |||
ignored. | ignored. | |||
Multiple SRv6 End SIDs MAY be associated with the same locator. In | Multiple SRv6 End SIDs MAY be associated with the same locator. In | |||
cases where the number of SRv6 End SID sub-TLVs exceeds the capacity | cases where the number of SRv6 End SID sub-TLVs exceeds the capacity | |||
of a single TLV, multiple Locator TLVs for the same locator MAY be | of a single TLV, multiple Locator TLVs for the same locator MAY be | |||
advertised. For a given MTID/Locator the algorithm MUST be the same | advertised. For a given MTID/Locator the algorithm MUST be the same | |||
in all TLVs. If this restriction is not met all TLVs for that MTID/ | in all TLVs. If this restriction is not met all TLVs for that MTID/ | |||
Locator MUST be ignored. | Locator MUST be ignored. | |||
7. Advertising SRv6 Adjacency SIDs | 8. Advertising SRv6 Adjacency SIDs | |||
Certain SRv6 Endpoint functions | Certain SRv6 Endpoint functions | |||
[I-D.ietf-spring-srv6-network-programming] must be associated with a | [I-D.ietf-spring-srv6-network-programming] must be associated with a | |||
particular neighbor, and in case of multiple layer 3 links to the | particular neighbor, and in case of multiple layer 3 links to the | |||
same neighbor, with a particular link in order to be correctly | same neighbor, with a particular link in order to be correctly | |||
applied. | applied. | |||
This document defines two new sub-TLVs of TLV 22, 23, 222, 223, and | This document defines two new sub-TLVs of TLV 22, 23, 222, 223, and | |||
141 - namely "SRv6 End.X SID" and "SRv6 LAN End.X SID". | 141 - namely "SRv6 End.X SID" and "SRv6 LAN End.X SID". | |||
IS-IS Neighbor advertisements are topology specific - but not | IS-IS Neighbor advertisements are topology specific - but not | |||
algorithm specific. End.X SIDs therefore inherit the topology from | algorithm specific. End.X SIDs therefore inherit the topology from | |||
the associated neighbor advertisement, but the algorithm is specified | the associated neighbor advertisement, but the algorithm is specified | |||
in the individual SID. | in the individual SID. | |||
All End.X SIDs MUST be a subnet of a Locator with matching topology | All End.X SIDs MUST be a subnet of a Locator with matching topology | |||
and algorithm which is advertised by the same node in an SRv6 Locator | and algorithm which is advertised by the same node in an SRv6 Locator | |||
TLV. End.X SIDs which do not meet this requirement MUST be ignored. | TLV. End.X SIDs which do not meet this requirement MUST be ignored. | |||
7.1. SRv6 End.X SID sub-TLV | 8.1. SRv6 End.X SID sub-TLV | |||
This sub-TLV is used to advertise an SRv6 SID associated with a point | This sub-TLV is used to advertise an SRv6 SID associated with a point | |||
to point adjacency. Multiple SRv6 End.X SID sub-TLVs MAY be | to point adjacency. Multiple SRv6 End.X SID sub-TLVs MAY be | |||
associated with the same adjacency. | associated with the same adjacency. | |||
The SRv6 End.X SID sub-TLV has the following format: | The SRv6 End.X SID sub-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 13, line 5 ¶ | skipping to change at page 14, line 5 ¶ | |||
SID: 16 octets. This field encodes the advertised SRv6 SID. | SID: 16 octets. This field encodes the advertised SRv6 SID. | |||
Sub-sub-TLV-length: 1 octet. Number of octets used by sub-sub- | Sub-sub-TLV-length: 1 octet. Number of octets used by sub-sub- | |||
TLVs | TLVs | |||
Note that multiple TLVs for the same neighbor may be required in | Note that multiple TLVs for the same neighbor may be required in | |||
order to advertise all of the SRv6 End.X SIDs associated with that | order to advertise all of the SRv6 End.X SIDs associated with that | |||
neighbor. | neighbor. | |||
7.2. SRv6 LAN End.X SID sub-TLV | 8.2. SRv6 LAN End.X SID sub-TLV | |||
This sub-TLV is used to advertise an SRv6 SID associated with a LAN | This sub-TLV is used to advertise an SRv6 SID associated with a LAN | |||
adjacency. Since the parent TLV is advertising an adjacency to the | adjacency. Since the parent TLV is advertising an adjacency to the | |||
Designated Intermediate System(DIS) for the LAN, it is necessary to | Designated Intermediate System(DIS) for the LAN, it is necessary to | |||
include the System ID of the physical neighbor on the LAN with which | include the System ID of the physical neighbor on the LAN with which | |||
the SRv6 SID is associated. Given that a large number of neighbors | the SRv6 SID is associated. Given that a large number of neighbors | |||
may exist on a given LAN a large number of SRv6 LAN END.X SID sub- | may exist on a given LAN a large number of SRv6 LAN END.X SID sub- | |||
TLVs may be associated with the same LAN. Note that multiple TLVs | TLVs may be associated with the same LAN. Note that multiple TLVs | |||
for the same DIS neighbor may be required in order to advertise all | for the same DIS neighbor may be required in order to advertise all | |||
of the SRv6 End.X SIDs associated with that neighbor. | of the SRv6 End.X SIDs associated with that neighbor. | |||
skipping to change at page 14, line 25 ¶ | skipping to change at page 15, line 25 ¶ | |||
SRv6 Endpoint Function: 2 octets. As defined in | SRv6 Endpoint Function: 2 octets. As defined in | |||
[I-D.ietf-spring-srv6-network-programming] | [I-D.ietf-spring-srv6-network-programming] | |||
Legal function values for this sub-TLV are defined in Section 9. | Legal function values for this sub-TLV are defined in Section 9. | |||
SID: 16 octets. This field encodes the advertised SRv6 SID. | SID: 16 octets. This field encodes the advertised SRv6 SID. | |||
Sub-sub-TLV-length: 1 octet. Number of octets used by sub-sub- | Sub-sub-TLV-length: 1 octet. Number of octets used by sub-sub- | |||
TLVs. | TLVs. | |||
8. SRv6 SID Structure Sub-Sub-TLV | 9. SRv6 SID Structure Sub-Sub-TLV | |||
SRv6 SID Structure Sub-Sub-TLV is an optional Sub-Sub-TLV of: | SRv6 SID Structure Sub-Sub-TLV is an optional Sub-Sub-TLV of: | |||
SRv6 End SID Sub-TLV (Section 6.2) | SRv6 End SID Sub-TLV (Section 7.2) | |||
SRv6 End.X SID Sub-TLV (Section 7.1) | SRv6 End.X SID Sub-TLV (Section 8.1) | |||
SRv6 LAN End.X SID Sub-TLV (Section 7.2) | SRv6 LAN End.X SID Sub-TLV (Section 8.2) | |||
SRv6 SID Structure Sub-Sub-TLV is used to advertise the length of | SRv6 SID Structure Sub-Sub-TLV is used to advertise the length of | |||
each individual part of the SRv6 SID as defined in | each individual part of the SRv6 SID as defined in | |||
[I-D.ietf-spring-srv6-network-programming]. It has the following | [I-D.ietf-spring-srv6-network-programming]. It has the following | |||
format: | 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 | |||
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | |||
| Type | Length | | | Type | Length | | |||
skipping to change at page 15, line 18 ¶ | skipping to change at page 16, line 18 ¶ | |||
LN Length: 1 octet. SRv6 SID Locator Node length in bits. | LN Length: 1 octet. SRv6 SID Locator Node length in bits. | |||
Fun. Length: 1 octet. SRv6 SID Function length in bits. | Fun. Length: 1 octet. SRv6 SID Function length in bits. | |||
Arg. Length: 1 octet. SRv6 SID Arguments length in bits. | Arg. Length: 1 octet. SRv6 SID Arguments length in bits. | |||
ISIS SRv6 SID Structure Sub-Sub-TLV MUST NOT appear more than once in | ISIS SRv6 SID Structure Sub-Sub-TLV MUST NOT appear more than once in | |||
its parent sub-TLV. If it appears more than once in its parent TLV, | its parent sub-TLV. If it appears more than once in its parent TLV, | |||
the parent TLV MUST be ignored by the receiver. | the parent TLV MUST be ignored by the receiver. | |||
9. Advertising Endpoint Behaviors | 10. Advertising Endpoint Behaviors | |||
Endpoint behaviors are defined in | Endpoint behaviors are defined in | |||
[I-D.ietf-spring-srv6-network-programming] and | [I-D.ietf-spring-srv6-network-programming] and | |||
[I-D.ali-spring-srv6-oam]. The numerical identifiers for the | [I-D.ali-spring-srv6-oam]. The numerical identifiers for the | |||
Endpoint behaviors are defined in the "SRv6 Endpoint Behaviors" | Endpoint behaviors are defined in the "SRv6 Endpoint Behaviors" | |||
registry defined in [I-D.ietf-spring-srv6-network-programming]. This | registry defined in [I-D.ietf-spring-srv6-network-programming]. This | |||
section lists the Endpoint behaviors and their identifiers, which MAY | section lists the Endpoint behaviors and their identifiers, which MAY | |||
be advertised by IS-IS and the SID sub-TLVs in which each type MAY | be advertised by IS-IS and the SID sub-TLVs in which each type MAY | |||
appear. | appear. | |||
skipping to change at page 16, line 28 ¶ | skipping to change at page 17, line 28 ¶ | |||
End.DT6 | 18 | Y | N | N | | End.DT6 | 18 | Y | N | N | | |||
-----------------------|--------------------|-------|-------|-----------| | -----------------------|--------------------|-------|-------|-----------| | |||
End.DT4 | 19 | Y | N | N | | End.DT4 | 19 | Y | N | N | | |||
-----------------------|--------------------|-------|-------|-----------| | -----------------------|--------------------|-------|-------|-----------| | |||
End.DT64 | 20 | Y | N | N | | End.DT64 | 20 | Y | N | N | | |||
-----------------------|--------------------|-------|-------|-----------| | -----------------------|--------------------|-------|-------|-----------| | |||
End.OP | 40 | Y | N | N | | End.OP | 40 | Y | N | N | | |||
-----------------------|--------------------|-------|-------|-----------| | -----------------------|--------------------|-------|-------|-----------| | |||
End.OTP | 41 | Y | N | N | | End.OTP | 41 | Y | N | N | | |||
10. IANA Considerations | 11. IANA Considerations | |||
This document requests allocation for the following TLVs, sub- TLVs, | This document requests allocation for the following TLVs, sub- TLVs, | |||
and sub-sub-TLVs as well updating the ISIS TLV registry and defining | and sub-sub-TLVs as well updating the ISIS TLV registry and defining | |||
a new registry. | a new registry. | |||
10.1. SRv6 Locator TLV | 11.1. SRv6 Locator TLV | |||
This document adds one new TLV to the IS-IS TLV Codepoints registry. | This document adds one new TLV to the IS-IS TLV Codepoints registry. | |||
Value: 27 (suggested - to be assigned by IANA) | Value: 27 (suggested - to be assigned by IANA) | |||
Name: SRv6 Locator | Name: SRv6 Locator | |||
This TLV shares sub-TLV space with existing "Sub-TLVs for TLVs 135, | This TLV shares sub-TLV space with existing "Sub-TLVs for TLVs 135, | |||
235, 236 and 237 registry". The name of this registry needs to be | 235, 236 and 237 registry". The name of this registry needs to be | |||
changed to "Sub-TLVs for TLVs 27, 135, 235, 236 and 237 registry". | changed to "Sub-TLVs for TLVs 27, 135, 235, 236 and 237 registry". | |||
10.1.1. SRv6 End SID sub-TLV | 11.1.1. SRv6 End SID sub-TLV | |||
This document adds the following new sub-TLV to the (renamed) "Sub- | This document adds the following new sub-TLV to the (renamed) "Sub- | |||
TLVs for TLVs 27, 135, 235, 236 and 237 registry". | TLVs for TLVs 27, 135, 235, 236 and 237 registry". | |||
Value: 5 (suggested - to be assigned by IANA) | Value: 5 (suggested - to be assigned by IANA) | |||
Name: SRv6 End SID | Name: SRv6 End SID | |||
This document requests the creation of a new IANA managed registry | This document requests the creation of a new IANA managed registry | |||
for sub-sub-TLVs of the SRv6 End SID sub-TLV. The registration | for sub-sub-TLVs of the SRv6 End SID sub-TLV. The registration | |||
procedure is "Expert Review" as defined in [RFC7370]. Suggested | procedure is "Expert Review" as defined in [RFC7370]. Suggested | |||
registry name is "sub-sub-TLVs for SRv6 End SID sub-TLV". No sub- | registry name is "sub-sub-TLVs for SRv6 End SID sub-TLV". No sub- | |||
sub-TLVs are defined by this document except for the reserved value. | sub-TLVs are defined by this document except for the reserved value. | |||
0: Reserved | 0: Reserved | |||
1-255: Unassigned | 1-255: Unassigned | |||
10.1.2. Revised sub-TLV table | 11.1.2. Revised sub-TLV table | |||
The revised table of sub-TLVs for the (renamed) "Sub-TLVs for TLVs | The revised table of sub-TLVs for the (renamed) "Sub-TLVs for TLVs | |||
27, 135, 235, 236 and 237 registry" is shown below: | 27, 135, 235, 236 and 237 registry" is shown below: | |||
Type 27 135 235 236 237 | Type 27 135 235 236 237 | |||
1 n y y y y | 1 n y y y y | |||
2 n y y y y | 2 n y y y y | |||
3 n y y y y | 3 n y y y y | |||
4 y y y y y | 4 y y y y y | |||
5 y n n n n | 5 y n n n n | |||
11 y y y y y | 11 y y y y y | |||
12 y y y y y | 12 y y y y y | |||
10.2. SRv6 Capabilities sub-TLV | 11.2. SRv6 Capabilities sub-TLV | |||
This document adds the definition of a new sub-TLV in the "Sub- TLVs | This document adds the definition of a new sub-TLV in the "Sub- TLVs | |||
for TLV 242 registry". | for TLV 242 registry". | |||
Type: 25 (Suggested - to be assigned by IANA) | Type: 25 (Suggested - to be assigned by IANA) | |||
Description: SRv6 Capabilities | Description: SRv6 Capabilities | |||
This document requests the creation of a new IANA managed registry | This document requests the creation of a new IANA managed registry | |||
for sub-sub-TLVs of the SRv6 Capability sub-TLV. The registration | for sub-sub-TLVs of the SRv6 Capability sub-TLV. The registration | |||
procedure is "Expert Review" as defined in [RFC7370]. Suggested | procedure is "Expert Review" as defined in [RFC7370]. Suggested | |||
registry name is "sub-sub-TLVs for SRv6 Capability sub-TLV". No sub- | registry name is "sub-sub-TLVs for SRv6 Capability sub-TLV". No sub- | |||
sub-TLVs are defined by this document except for the reserved value. | sub-TLVs are defined by this document except for the reserved value. | |||
0: Reserved | 0: Reserved | |||
1-255: Unassigned | 1-255: Unassigned | |||
10.3. SRv6 End.X SID and SRv6 LAN End.X SID sub-TLVs | 11.3. SRv6 End.X SID and SRv6 LAN End.X SID sub-TLVs | |||
This document adds the definition of two new sub-TLVs in the "sub- | This document adds the definition of two new sub-TLVs in the "sub- | |||
TLVs for TLV 22, 23, 25, 141, 222 and 223 registry". | TLVs for TLV 22, 23, 25, 141, 222 and 223 registry". | |||
Type: 43 (suggested - to be assigned by IANA) | Type: 43 (suggested - to be assigned by IANA) | |||
Description: SRv6 End.X SID | Description: SRv6 End.X SID | |||
Type: 44 (suggested - to be assigned by IANA) | Type: 44 (suggested - to be assigned by IANA) | |||
Description: SRv6 LAN End.X SID | Description: SRv6 LAN End.X SID | |||
Type 22 23 25 141 222 223 | Type 22 23 25 141 222 223 | |||
43 y y y y y y | 43 y y y y y y | |||
44 y y y y y y | 44 y y y y y y | |||
10.4. MSD Types | 11.4. MSD Types | |||
This document defines the following new MSD types. These types are | This document defines the following new MSD types. These types are | |||
to be defined in the IGP MSD Types registry defined in [RFC8491] . | to be defined in the IGP MSD Types registry defined in [RFC8491] . | |||
All values are suggested values to be assigned by IANA. | All values are suggested values to be assigned by IANA. | |||
Type Description | Type Description | |||
------------------ | ------------------ | |||
41 SRH Max SL | 41 SRH Max SL | |||
42 SRH Max End Pop | 42 SRH Max End Pop | |||
43 SRH Max T.insert | 43 SRH Max T.insert | |||
44 SRH Max T.encaps | 44 SRH Max T.encaps | |||
45 SRH Max End D | 45 SRH Max End D | |||
10.5. Sub-Sub-TLVs for SID Sub-TLVs | 11.5. Sub-Sub-TLVs for SID Sub-TLVs | |||
This document creates the following Sub-Sub-TLV Registry within the | This document creates the following Sub-Sub-TLV Registry within the | |||
"IS-IS TLV Codepoints" registry: | "IS-IS TLV Codepoints" registry: | |||
Registry: Sub-Sub-TLVs for SID Sub-TLVs | Registry: Sub-Sub-TLVs for SID Sub-TLVs | |||
Registration Procedure: Expert review | Registration Procedure: Expert review | |||
Reference: This document (Section 6.2, Section 7.1, Section 7.2). | Reference: This document (Section 7.2, Section 8.1, Section 8.2). | |||
This document defines the following Sub-Sub-TLV in the "Sub-Sub-TLVs | This document defines the following Sub-Sub-TLV in the "Sub-Sub-TLVs | |||
for SID Sub-TLVs" registry: | for SID Sub-TLVs" registry: | |||
Type: 1 | Type: 1 | |||
Description: SRv6 SID Structure Sub-Sub-TLV. | Description: SRv6 SID Structure Sub-Sub-TLV. | |||
Reference: This document (Section 8). | Reference: This document (Section 9). | |||
11. Security Considerations | 11.6. Prefix Attribute Flags Sub-TLV | |||
This document adds a new bit in the "Bit Values for Prefix Attribute | ||||
Flags Sub-TLV" registry: | ||||
Bit #: 4 | ||||
Description: A bit | ||||
Reference: This document (Section 6). | ||||
12. Security Considerations | ||||
Security concerns for IS-IS are addressed in [ISO10589], [RFC5304], | Security concerns for IS-IS are addressed in [ISO10589], [RFC5304], | |||
and [RFC5310]. | and [RFC5310]. | |||
12. Contributors | 13. Contributors | |||
The following people gave a substantial contribution to the content | The following people gave a substantial contribution to the content | |||
of this document and should be considered as co-authors: | of this document and should be considered as co-authors: | |||
Stefano Previdi | Stefano Previdi | |||
Huawei Technologies | Huawei Technologies | |||
Email: stefano@previdi.net | Email: stefano@previdi.net | |||
Paul Wells | Paul Wells | |||
Cisco Systems | Cisco Systems | |||
skipping to change at page 20, line 44 ¶ | skipping to change at page 21, line 44 ¶ | |||
Robert Hanzl | Robert Hanzl | |||
Cisco Systems | Cisco Systems | |||
Millenium Plaza Building, V Celnici 10, Prague 1, | Millenium Plaza Building, V Celnici 10, Prague 1, | |||
Prague, Czech Republic | Prague, Czech Republic | |||
Email rhanzl@cisco.com | Email rhanzl@cisco.com | |||
Ketan Talaulikar | Ketan Talaulikar | |||
Cisco Systems, Inc. | Cisco Systems, Inc. | |||
Email: ketant@cisco.com | Email: ketant@cisco.com | |||
13. References | 14. References | |||
13.1. Normative References | 14.1. Normative References | |||
[I-D.ali-spring-srv6-oam] | [I-D.ali-spring-srv6-oam] | |||
Ali, Z., Filsfils, C., Kumar, N., Pignataro, C., | Ali, Z., Filsfils, C., Kumar, N., Pignataro, C., | |||
faiqbal@cisco.com, f., Gandhi, R., Leddy, J., Matsushima, | faiqbal@cisco.com, f., Gandhi, R., Leddy, J., Matsushima, | |||
S., Raszuk, R., daniel.voyer@bell.ca, d., Dawra, G., | S., Raszuk, R., daniel.voyer@bell.ca, d., Dawra, G., | |||
Peirens, B., Chen, M., and G. Naik, "Operations, | Peirens, B., Chen, M., and G. Naik, "Operations, | |||
Administration, and Maintenance (OAM) in Segment Routing | Administration, and Maintenance (OAM) in Segment Routing | |||
Networks with IPv6 Data plane (SRv6)", draft-ali-spring- | Networks with IPv6 Data plane (SRv6)", draft-ali-spring- | |||
srv6-oam-02 (work in progress), October 2018. | srv6-oam-02 (work in progress), October 2018. | |||
[I-D.ietf-6man-segment-routing-header] | [I-D.ietf-6man-segment-routing-header] | |||
Filsfils, C., Dukes, D., Previdi, S., Leddy, J., | Filsfils, C., Dukes, D., Previdi, S., Leddy, J., | |||
Matsushima, S., and d. daniel.voyer@bell.ca, "IPv6 Segment | Matsushima, S., and d. daniel.voyer@bell.ca, "IPv6 Segment | |||
Routing Header (SRH)", draft-ietf-6man-segment-routing- | Routing Header (SRH)", draft-ietf-6man-segment-routing- | |||
header-21 (work in progress), June 2019. | header-23 (work in progress), September 2019. | |||
[I-D.ietf-isis-segment-routing-extensions] | [I-D.ietf-isis-segment-routing-extensions] | |||
Previdi, S., Ginsberg, L., Filsfils, C., Bashandy, A., | Previdi, S., Ginsberg, L., Filsfils, C., Bashandy, A., | |||
Gredler, H., and B. Decraene, "IS-IS Extensions for | Gredler, H., and B. Decraene, "IS-IS Extensions for | |||
Segment Routing", draft-ietf-isis-segment-routing- | Segment Routing", draft-ietf-isis-segment-routing- | |||
extensions-25 (work in progress), May 2019. | extensions-25 (work in progress), May 2019. | |||
[I-D.ietf-spring-srv6-network-programming] | [I-D.ietf-spring-srv6-network-programming] | |||
Filsfils, C., Camarillo, P., Leddy, J., | Filsfils, C., Camarillo, P., Leddy, J., | |||
daniel.voyer@bell.ca, d., Matsushima, S., and Z. Li, "SRv6 | daniel.voyer@bell.ca, d., Matsushima, S., and Z. Li, "SRv6 | |||
Network Programming", draft-ietf-spring-srv6-network- | Network Programming", draft-ietf-spring-srv6-network- | |||
programming-01 (work in progress), July 2019. | programming-03 (work in progress), September 2019. | |||
[ISO10589] | [ISO10589] | |||
Standardization", I. ". O. F., "Intermediate system to | Standardization", I. ". O. F., "Intermediate system to | |||
Intermediate system intra-domain routeing information | Intermediate system intra-domain routeing information | |||
exchange protocol for use in conjunction with the protocol | exchange protocol for use in conjunction with the protocol | |||
for providing the connectionless-mode Network Service (ISO | for providing the connectionless-mode Network Service (ISO | |||
8473), ISO/IEC 10589:2002, Second Edition.", Nov 2002. | 8473), ISO/IEC 10589:2002, Second Edition.", Nov 2002. | |||
[RFC2119] Bradner, S., "Key words for use in RFCs to Indicate | [RFC2119] Bradner, S., "Key words for use in RFCs to Indicate | |||
Requirement Levels", BCP 14, RFC 2119, | Requirement Levels", BCP 14, RFC 2119, | |||
skipping to change at page 22, line 18 ¶ | skipping to change at page 23, line 18 ¶ | |||
[RFC5310] Bhatia, M., Manral, V., Li, T., Atkinson, R., White, R., | [RFC5310] Bhatia, M., Manral, V., Li, T., Atkinson, R., White, R., | |||
and M. Fanto, "IS-IS Generic Cryptographic | and M. Fanto, "IS-IS Generic Cryptographic | |||
Authentication", RFC 5310, DOI 10.17487/RFC5310, February | Authentication", RFC 5310, DOI 10.17487/RFC5310, February | |||
2009, <https://www.rfc-editor.org/info/rfc5310>. | 2009, <https://www.rfc-editor.org/info/rfc5310>. | |||
[RFC7370] Ginsberg, L., "Updates to the IS-IS TLV Codepoints | [RFC7370] Ginsberg, L., "Updates to the IS-IS TLV Codepoints | |||
Registry", RFC 7370, DOI 10.17487/RFC7370, September 2014, | Registry", RFC 7370, DOI 10.17487/RFC7370, September 2014, | |||
<https://www.rfc-editor.org/info/rfc7370>. | <https://www.rfc-editor.org/info/rfc7370>. | |||
[RFC7794] Ginsberg, L., Ed., Decraene, B., Previdi, S., Xu, X., and | ||||
U. Chunduri, "IS-IS Prefix Attributes for Extended IPv4 | ||||
and IPv6 Reachability", RFC 7794, DOI 10.17487/RFC7794, | ||||
March 2016, <https://www.rfc-editor.org/info/rfc7794>. | ||||
[RFC7981] Ginsberg, L., Previdi, S., and M. Chen, "IS-IS Extensions | [RFC7981] Ginsberg, L., Previdi, S., and M. Chen, "IS-IS Extensions | |||
for Advertising Router Information", RFC 7981, | for Advertising Router Information", RFC 7981, | |||
DOI 10.17487/RFC7981, October 2016, | DOI 10.17487/RFC7981, October 2016, | |||
<https://www.rfc-editor.org/info/rfc7981>. | <https://www.rfc-editor.org/info/rfc7981>. | |||
[RFC8174] Leiba, B., "Ambiguity of Uppercase vs Lowercase in RFC | [RFC8174] Leiba, B., "Ambiguity of Uppercase vs Lowercase in RFC | |||
2119 Key Words", BCP 14, RFC 8174, DOI 10.17487/RFC8174, | 2119 Key Words", BCP 14, RFC 8174, DOI 10.17487/RFC8174, | |||
May 2017, <https://www.rfc-editor.org/info/rfc8174>. | May 2017, <https://www.rfc-editor.org/info/rfc8174>. | |||
[RFC8491] Tantsura, J., Chunduri, U., Aldrin, S., and L. Ginsberg, | [RFC8491] Tantsura, J., Chunduri, U., Aldrin, S., and L. Ginsberg, | |||
"Signaling Maximum SID Depth (MSD) Using IS-IS", RFC 8491, | "Signaling Maximum SID Depth (MSD) Using IS-IS", RFC 8491, | |||
DOI 10.17487/RFC8491, November 2018, | DOI 10.17487/RFC8491, November 2018, | |||
<https://www.rfc-editor.org/info/rfc8491>. | <https://www.rfc-editor.org/info/rfc8491>. | |||
13.2. Informative References | 14.2. Informative References | |||
[I-D.ietf-spring-segment-routing] | [I-D.ietf-spring-segment-routing] | |||
Filsfils, C., Previdi, S., Ginsberg, L., Decraene, B., | Filsfils, C., Previdi, S., Ginsberg, L., Decraene, B., | |||
Litkowski, S., and R. Shakir, "Segment Routing | Litkowski, S., and R. Shakir, "Segment Routing | |||
Architecture", draft-ietf-spring-segment-routing-15 (work | Architecture", draft-ietf-spring-segment-routing-15 (work | |||
in progress), January 2018. | in progress), January 2018. | |||
[RFC8355] Filsfils, C., Ed., Previdi, S., Ed., Decraene, B., and R. | [RFC8355] Filsfils, C., Ed., Previdi, S., Ed., Decraene, B., and R. | |||
Shakir, "Resiliency Use Cases in Source Packet Routing in | Shakir, "Resiliency Use Cases in Source Packet Routing in | |||
Networking (SPRING) Networks", RFC 8355, | Networking (SPRING) Networks", RFC 8355, | |||
End of changes. 37 change blocks. | ||||
60 lines changed or deleted | 100 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/ |