draft-ietf-lsr-isis-srv6-extensions-13.txt | draft-ietf-lsr-isis-srv6-extensions-14.txt | |||
---|---|---|---|---|
Networking Working Group P. Psenak, Ed. | Networking Working Group P. Psenak, Ed. | |||
Internet-Draft C. Filsfils | Internet-Draft C. Filsfils | |||
Updates: 7370 (if approved) Cisco Systems | Updates: 7370 (if approved) Cisco Systems | |||
Intended status: Standards Track A. Bashandy | Intended status: Standards Track A. Bashandy | |||
Expires: October 14, 2021 Individual | Expires: October 24, 2021 Individual | |||
B. Decraene | B. Decraene | |||
Orange | Orange | |||
Z. Hu | Z. Hu | |||
Huawei Technologies | Huawei Technologies | |||
April 12, 2021 | April 22, 2021 | |||
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-13 | draft-ietf-lsr-isis-srv6-extensions-14 | |||
Abstract | Abstract | |||
The Segment Routing (SR) allows for a flexible definition of end-to- | The Segment Routing (SR) allows for a flexible definition of end-to- | |||
end paths by encoding paths as sequences of topological sub-paths, | end paths by encoding paths as sequences of topological sub-paths, | |||
called "segments". Segment routing architecture can be implemented | called "segments". Segment routing architecture can be implemented | |||
over an MPLS data plane as well as an IPv6 data plane. This document | over an MPLS data plane as well as an IPv6 data plane. This document | |||
describes the IS-IS extensions required to support Segment Routing | describes the IS-IS extensions required to support Segment Routing | |||
over an IPv6 data plane. | over an IPv6 data plane. | |||
skipping to change at page 2, line 4 ¶ | skipping to change at page 2, line 4 ¶ | |||
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 October 14, 2021. | This Internet-Draft will expire on October 24, 2021. | |||
Copyright Notice | Copyright Notice | |||
Copyright (c) 2021 IETF Trust and the persons identified as the | Copyright (c) 2021 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 | |||
carefully, as they describe your rights and restrictions with respect | carefully, as they describe your rights and restrictions with respect | |||
to this document. Code Components extracted from this document must | to this document. Code Components extracted from this document must | |||
include Simplified BSD License text as described in Section 4.e of | include Simplified BSD License text as described in Section 4.e of | |||
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. SRv6 Capabilities sub-TLV . . . . . . . . . . . . . . . . . . 3 | 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 H.Encaps MSD Type . . . . . . . . . . . . . . . . 5 | 4.3. Maximum H.Encaps MSD Type . . . . . . . . . . . . . . . . 5 | |||
4.4. Maximum End D MSD Type . . . . . . . . . . . . . . . . . 5 | 4.4. Maximum End D MSD Type . . . . . . . . . . . . . . . . . 6 | |||
5. SRv6 SIDs and Reachability . . . . . . . . . . . . . . . . . 6 | 5. SRv6 SIDs and Reachability . . . . . . . . . . . . . . . . . 6 | |||
6. Advertising Anycast Property . . . . . . . . . . . . . . . . 7 | 6. Advertising Anycast Property . . . . . . . . . . . . . . . . 7 | |||
7. Advertising Locators and End SIDs . . . . . . . . . . . . . . 8 | 7. Advertising Locators and End SIDs . . . . . . . . . . . . . . 8 | |||
7.1. SRv6 Locator TLV Format . . . . . . . . . . . . . . . . . 8 | 7.1. SRv6 Locator TLV Format . . . . . . . . . . . . . . . . . 9 | |||
7.2. SRv6 End SID sub-TLV . . . . . . . . . . . . . . . . . . 10 | 7.2. SRv6 End SID sub-TLV . . . . . . . . . . . . . . . . . . 10 | |||
8. Advertising SRv6 Adjacency SIDs . . . . . . . . . . . . . . . 12 | 8. Advertising SRv6 Adjacency SIDs . . . . . . . . . . . . . . . 12 | |||
8.1. SRv6 End.X SID sub-TLV . . . . . . . . . . . . . . . . . 12 | 8.1. SRv6 End.X SID sub-TLV . . . . . . . . . . . . . . . . . 12 | |||
8.2. SRv6 LAN End.X SID sub-TLV . . . . . . . . . . . . . . . 14 | 8.2. SRv6 LAN End.X SID sub-TLV . . . . . . . . . . . . . . . 14 | |||
9. SRv6 SID Structure Sub-Sub-TLV . . . . . . . . . . . . . . . 16 | 9. SRv6 SID Structure Sub-Sub-TLV . . . . . . . . . . . . . . . 16 | |||
10. Advertising Endpoint Behaviors . . . . . . . . . . . . . . . 17 | 10. Advertising Endpoint Behaviors . . . . . . . . . . . . . . . 17 | |||
11. IANA Considerations . . . . . . . . . . . . . . . . . . . . . 17 | 11. IANA Considerations . . . . . . . . . . . . . . . . . . . . . 17 | |||
11.1. SRv6 Locator TLV . . . . . . . . . . . . . . . . . . . . 17 | 11.1. SRv6 Locator TLV . . . . . . . . . . . . . . . . . . . . 17 | |||
11.1.1. SRv6 End SID sub-TLV . . . . . . . . . . . . . . . . 18 | 11.1.1. SRv6 End SID sub-TLV . . . . . . . . . . . . . . . . 18 | |||
11.1.2. Revised sub-TLV table . . . . . . . . . . . . . . . 18 | 11.1.2. Revised sub-TLV table . . . . . . . . . . . . . . . 18 | |||
11.2. SRv6 Capabilities sub-TLV . . . . . . . . . . . . . . . 19 | 11.2. SRv6 Capabilities sub-TLV . . . . . . . . . . . . . . . 19 | |||
11.3. SRv6 End.X SID and SRv6 LAN End.X SID sub-TLVs . . . . . 19 | 11.3. SRv6 End.X SID and SRv6 LAN End.X SID sub-TLVs . . . . . 19 | |||
11.4. MSD Types . . . . . . . . . . . . . . . . . . . . . . . 20 | 11.4. MSD Types . . . . . . . . . . . . . . . . . . . . . . . 20 | |||
11.5. Sub-Sub-TLVs for SID Sub-TLVs . . . . . . . . . . . . . 20 | 11.5. Sub-Sub-TLVs for SID Sub-TLVs . . . . . . . . . . . . . 20 | |||
11.6. Prefix Attribute Flags Sub-TLV . . . . . . . . . . . . . 21 | 11.6. Prefix Attribute Flags Sub-TLV . . . . . . . . . . . . . 21 | |||
12. Security Considerations . . . . . . . . . . . . . . . . . . . 21 | 11.7. ISIS SRv6 Capabilities sub-TLV Flags Registry . . . . . 21 | |||
13. Contributors . . . . . . . . . . . . . . . . . . . . . . . . 21 | 11.8. ISIS SRv6 Locator TLV Flags Registry . . . . . . . . . . 21 | |||
14. References . . . . . . . . . . . . . . . . . . . . . . . . . 22 | 11.9. ISIS SRv6 End SID sub-TLV Flags Registry . . . . . . . . 22 | |||
14.1. Normative References . . . . . . . . . . . . . . . . . . 22 | 11.10. ISIS SRv6 End.X SID and LAN End.X SID sub-TLVs Flags | |||
14.2. Informative References . . . . . . . . . . . . . . . . . 25 | Registry . . . . . . . . . . . . . . . . . . . . . . . . 22 | |||
Authors' Addresses . . . . . . . . . . . . . . . . . . . . . . . 25 | 12. Security Considerations . . . . . . . . . . . . . . . . . . . 23 | |||
13. Contributors . . . . . . . . . . . . . . . . . . . . . . . . 23 | ||||
14. References . . . . . . . . . . . . . . . . . . . . . . . . . 24 | ||||
14.1. Normative References . . . . . . . . . . . . . . . . . . 24 | ||||
14.2. Informative References . . . . . . . . . . . . . . . . . 27 | ||||
Authors' Addresses . . . . . . . . . . . . . . . . . . . . . . . 27 | ||||
1. Introduction | 1. Introduction | |||
With Segment Routing (SR) [RFC8402], a node steers a packet through | With Segment Routing (SR) [RFC8402], a node steers a packet through | |||
an ordered list of instructions, called segments. | an ordered list of instructions, called 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 | |||
through the use of the Segment Routing Header defined in [RFC8754]. | through the use of the Segment Routing Header defined in [RFC8754]. | |||
skipping to change at page 9, line 44 ¶ | skipping to change at page 9, line 50 ¶ | |||
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| Reserved | | |D| Reserved | | |||
+-+-+-+-+-+-+-+-+ | +-+-+-+-+-+-+-+-+ | |||
where: | where: | |||
D bit: Same as described in section 4.1. of [RFC5305]. | D-flag: Same as described in section 4.1. of [RFC5305]. | |||
The remaining bits are reserved for future use. They MUST be | The remaining bits are reserved for future use. They MUST 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. As defined in [RFC8665]. | Algorithm: 1 octet. As defined in [RFC8665]. | |||
Loc-Size: 1 octet. Number of bits in the SRv6 Locator field. | Loc-Size: 1 octet. Number of bits in the SRv6 Locator field. | |||
MUST be from the range (1 - 128). The TLV MUST be ignored if | MUST be from the range (1 - 128). The TLV MUST be ignored if | |||
the Loc-Size is outside of this range. | the Loc-Size is outside of this range. | |||
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. Trailing bits MUST be set | octets for the given number of bits. Trailing bits MUST be set | |||
to zero and ignored when received. | to zero and ignored when received. | |||
Sub-TLV-length: 1 octet. Number of octets used by sub-TLVs | Sub-TLV-length: 1 octet. Number of octets used by sub-TLVs | |||
skipping to change at page 21, line 27 ¶ | skipping to change at page 21, line 27 ¶ | |||
This document adds a new bit in the "Bit Values for Prefix Attribute | This document adds a new bit in the "Bit Values for Prefix Attribute | |||
Flags Sub-TLV" registry: | Flags Sub-TLV" registry: | |||
Bit #: 4 | Bit #: 4 | |||
Description: Anycast Flag (A-flag) | Description: Anycast Flag (A-flag) | |||
Reference: This document (Section 6). | Reference: This document (Section 6). | |||
11.7. ISIS SRv6 Capabilities sub-TLV Flags Registry | ||||
This document requests a new IANA registry be created under the IS-IS | ||||
TLV Codepoints Registry to control the assignment of bits in the | ||||
Flags field of the ISIS SRv6 Capabilities sub-TLV specified in this | ||||
document (Section 2). The suggested name of the new registry is | ||||
"ISIS SRv6 Capabilities sub-TLV Flags". The registration procedure | ||||
is "Expert Review" as defined in [RFC8126]. Guidance for the | ||||
Designated Experts is provided in [RFC7370]. The following | ||||
assignments are made by this document: | ||||
Bit #: 1 | ||||
Description: O-flag | ||||
Reference: This document (Section 2). | ||||
11.8. ISIS SRv6 Locator TLV Flags Registry | ||||
This document requests a new IANA registry be created under the IS-IS | ||||
TLV Codepoints Registry to control the assignment of bits in the | ||||
Flags field of the ISIS SRv6 SRv6 Locator TLV specified in this | ||||
document (Section 7.1). The suggested name of the new registry is | ||||
"ISIS SRv6 Locator TLV Flags". The registration procedure is "Expert | ||||
Review" as defined in [RFC8126]. Guidance for the Designated Experts | ||||
is provided in [RFC7370]. The following assignments are made by this | ||||
document: | ||||
Bit #: 0 | ||||
Description: D-flag | ||||
Reference: This document (Section 7.1). | ||||
11.9. ISIS SRv6 End SID sub-TLV Flags Registry | ||||
This document requests a new IANA registry be created under the IS-IS | ||||
TLV Codepoints Registry to control the assignment of bits in the | ||||
Flags field of the ISIS SRv6 End SID sub-TLV specified in this | ||||
document (Section 7.2). The suggested name of the new registry is | ||||
"ISIS SRv6 End SID sub-TLV Flags". The registration procedure is | ||||
"Expert Review" as defined in [RFC8126]. Guidance for the Designated | ||||
Experts is provided in [RFC7370]. No assignments are made by this | ||||
document. | ||||
11.10. ISIS SRv6 End.X SID and LAN End.X SID sub-TLVs Flags Registry | ||||
This document requests a new IANA registry be created under the IS-IS | ||||
TLV Codepoints Registry to control the assignment of bits in the | ||||
Flags field of the ISIS SRv6 End.X SID and LAN End.X SID sub-TLVs | ||||
(Section 8.1 and Section 8.2). The suggested name of the new | ||||
registry is "ISIS SRv6 End.X SID and LAN End.X SID sub-TLVs Flags". | ||||
The registration procedure is "Expert Review" as defined in | ||||
[RFC8126]. Guidance for the Designated Experts is provided in | ||||
[RFC7370]. The following assignments are made by this document: | ||||
Bit #: 0 | ||||
Description: B-flag | ||||
Reference: This document (Section 8.1). | ||||
Bit #: 1 | ||||
Description: S-flag | ||||
Reference: This document (Section 8.1). | ||||
Bit #: 2 | ||||
Description: P-flag | ||||
Reference: This document (Section 8.1). | ||||
12. Security Considerations | 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]. While IS-IS is deployed under a single administrative | and [RFC5310]. While IS-IS is deployed under a single administrative | |||
domain, there can be deployments where potential attackers have | domain, there can be deployments where potential attackers have | |||
access to one or more networks in the IS-IS routing domain. In these | access to one or more networks in the IS-IS routing domain. In these | |||
deployments, the stronger authentication mechanisms defined in the | deployments, the stronger authentication mechanisms defined in the | |||
aforementioned documents SHOULD be used. | aforementioned documents SHOULD be used. | |||
This document describes the IS-IS extensions required to support | This document describes the IS-IS extensions required to support | |||
End of changes. 11 change blocks. | ||||
15 lines changed or deleted | 92 lines changed or added | |||
This html diff was produced by rfcdiff 1.48. The latest version is available from http://tools.ietf.org/tools/rfcdiff/ |