draft-ietf-idr-bgp-ls-segment-routing-msd-17.txt | draft-ietf-idr-bgp-ls-segment-routing-msd-18.txt | |||
---|---|---|---|---|
IDR Working Group J. Tantsura | IDR Working Group J. Tantsura | |||
Internet-Draft Apstra, Inc. | Internet-Draft Apstra, Inc. | |||
Intended status: Standards Track U. Chunduri | Intended status: Standards Track U. Chunduri | |||
Expires: October 28, 2020 Futurewei Technologies | Expires: November 9, 2020 Futurewei Technologies | |||
K. Talaulikar | K. Talaulikar | |||
Cisco Systems | Cisco Systems | |||
G. Mirsky | G. Mirsky | |||
ZTE Corp. | ZTE Corp. | |||
N. Triantafillis | N. Triantafillis | |||
Amazon Web Services | Amazon Web Services | |||
April 26, 2020 | May 8, 2020 | |||
Signaling MSD (Maximum SID Depth) using Border Gateway Protocol - Link | Signaling MSD (Maximum SID Depth) using Border Gateway Protocol - Link | |||
State | State | |||
draft-ietf-idr-bgp-ls-segment-routing-msd-17 | draft-ietf-idr-bgp-ls-segment-routing-msd-18 | |||
Abstract | Abstract | |||
This document defines a way for a Border Gateway Protocol - Link | This document defines a way for a Border Gateway Protocol - Link | |||
State (BGP-LS) speaker to advertise multiple types of supported | State (BGP-LS) speaker to advertise multiple types of supported | |||
Maximum SID Depths (MSDs) at node and/or link granularity. | Maximum SID Depths (MSDs) at node and/or link granularity. | |||
Such advertisements allow entities (e.g., centralized controllers) to | Such advertisements allow entities (e.g., centralized controllers) to | |||
determine whether a particular Segment Identifier (SID) stack can be | determine whether a particular Segment Identifier (SID) stack can be | |||
supported in a given network. | supported in a given network. | |||
skipping to change at page 1, line 44 ¶ | skipping to change at page 1, line 44 ¶ | |||
Internet-Drafts are working documents of the Internet Engineering | Internet-Drafts are working documents of the Internet Engineering | |||
Task Force (IETF). Note that other groups may also distribute | Task Force (IETF). Note that other groups may also distribute | |||
working documents as Internet-Drafts. The list of current Internet- | working documents as Internet-Drafts. The list of current Internet- | |||
Drafts is at https://datatracker.ietf.org/drafts/current/. | Drafts is at https://datatracker.ietf.org/drafts/current/. | |||
Internet-Drafts are draft documents valid for a maximum of six months | Internet-Drafts are draft documents valid for a maximum of six months | |||
and may be updated, replaced, or obsoleted by other documents at any | and may be updated, replaced, or obsoleted by other documents at any | |||
time. It is inappropriate to use Internet-Drafts as reference | time. It is inappropriate to use Internet-Drafts as reference | |||
material or to cite them other than as "work in progress." | material or to cite them other than as "work in progress." | |||
This Internet-Draft will expire on October 28, 2020. | This Internet-Draft will expire on November 9, 2020. | |||
Copyright Notice | Copyright Notice | |||
Copyright (c) 2020 IETF Trust and the persons identified as the | Copyright (c) 2020 IETF Trust and the persons identified as the | |||
document authors. All rights reserved. | document authors. All rights reserved. | |||
This document is subject to BCP 78 and the IETF Trust's Legal | This document is subject to BCP 78 and the IETF Trust's Legal | |||
Provisions Relating to IETF Documents | Provisions Relating to IETF Documents | |||
(https://trustee.ietf.org/license-info) in effect on the date of | (https://trustee.ietf.org/license-info) in effect on the date of | |||
publication of this document. Please review these documents | publication of this document. Please review these documents | |||
skipping to change at page 2, line 29 ¶ | skipping to change at page 2, line 29 ¶ | |||
Table of Contents | Table of Contents | |||
1. Introduction . . . . . . . . . . . . . . . . . . . . . . . . 2 | 1. Introduction . . . . . . . . . . . . . . . . . . . . . . . . 2 | |||
1.1. Conventions used in this document . . . . . . . . . . . . 3 | 1.1. Conventions used in this document . . . . . . . . . . . . 3 | |||
1.1.1. Terminology . . . . . . . . . . . . . . . . . . . . . 3 | 1.1.1. Terminology . . . . . . . . . . . . . . . . . . . . . 3 | |||
1.1.2. Requirements Language . . . . . . . . . . . . . . . . 4 | 1.1.2. Requirements Language . . . . . . . . . . . . . . . . 4 | |||
2. Advertisement of MSD via BGP-LS . . . . . . . . . . . . . . . 4 | 2. Advertisement of MSD via BGP-LS . . . . . . . . . . . . . . . 4 | |||
3. Node MSD TLV . . . . . . . . . . . . . . . . . . . . . . . . 4 | 3. Node MSD TLV . . . . . . . . . . . . . . . . . . . . . . . . 4 | |||
4. Link MSD TLV . . . . . . . . . . . . . . . . . . . . . . . . 5 | 4. Link MSD TLV . . . . . . . . . . . . . . . . . . . . . . . . 5 | |||
5. Procedures for Defining and Using Node and Link MSD | 5. IANA Considerations . . . . . . . . . . . . . . . . . . . . . 6 | |||
Advertisements . . . . . . . . . . . . . . . . . . . . . . . 6 | 6. Manageability Considerations . . . . . . . . . . . . . . . . 6 | |||
6. IANA Considerations . . . . . . . . . . . . . . . . . . . . . 6 | 7. Security Considerations . . . . . . . . . . . . . . . . . . . 7 | |||
7. Manageability Considerations . . . . . . . . . . . . . . . . 6 | 8. Contributors . . . . . . . . . . . . . . . . . . . . . . . . 7 | |||
8. Security Considerations . . . . . . . . . . . . . . . . . . . 7 | 9. Acknowledgements . . . . . . . . . . . . . . . . . . . . . . 7 | |||
9. Contributors . . . . . . . . . . . . . . . . . . . . . . . . 8 | 10. References . . . . . . . . . . . . . . . . . . . . . . . . . 8 | |||
10. Acknowledgements . . . . . . . . . . . . . . . . . . . . . . 8 | 10.1. Normative References . . . . . . . . . . . . . . . . . . 8 | |||
11. References . . . . . . . . . . . . . . . . . . . . . . . . . 8 | 10.2. Informative References . . . . . . . . . . . . . . . . . 8 | |||
11.1. Normative References . . . . . . . . . . . . . . . . . . 8 | ||||
11.2. Informative References . . . . . . . . . . . . . . . . . 8 | ||||
Authors' Addresses . . . . . . . . . . . . . . . . . . . . . . . 9 | Authors' Addresses . . . . . . . . . . . . . . . . . . . . . . . 9 | |||
1. Introduction | 1. Introduction | |||
When Segment Routing (SR) [RFC8402] paths are computed by a | When Segment Routing (SR) [RFC8402] paths are computed by a | |||
centralized controller, it is critical that the controller learns the | centralized controller, it is critical that the controller learns the | |||
Maximum SID Depth (MSD) that can be imposed at each node/link on a | Maximum SID Depth (MSD) that can be imposed at each node/link on a | |||
given SR path. This ensures that the Segment Identifier (SID) stack | given SR path. This ensures that the Segment Identifier (SID) stack | |||
depth of a computed path doesn't exceed the number of SIDs the node | depth of a computed path doesn't exceed the number of SIDs the node | |||
is capable of imposing. | is capable of imposing. | |||
skipping to change at page 6, line 5 ¶ | skipping to change at page 6, line 5 ¶ | |||
1-octet MSD-Value. | 1-octet MSD-Value. | |||
* MSD-Type : MSD-Type : one of the values defined in the "IGP | * MSD-Type : MSD-Type : one of the values defined in the "IGP | |||
MSD-Types" registry defined in [RFC8491]. | MSD-Types" registry defined in [RFC8491]. | |||
* MSD-Value : a number in the range of 0-255. For all MSD-Types, | * MSD-Value : a number in the range of 0-255. For all MSD-Types, | |||
0 represents the lack of ability to impose an MSD stack of any | 0 represents the lack of ability to impose an MSD stack of any | |||
depth; any other value represents that of the link when used as | depth; any other value represents that of the link when used as | |||
an outgoing interface. | an outgoing interface. | |||
5. Procedures for Defining and Using Node and Link MSD Advertisements | 5. IANA Considerations | |||
When Link MSD is present for a given MSD-type, the value of the Link | ||||
MSD MUST take precedence over the Node MSD. When a Link MSD-type is | ||||
not signaled but the Node MSD-type is, then the Node MSD-type value | ||||
MUST be considered as the MSD value for that link. | ||||
In order to increase flooding efficiency, it is RECOMMENDED that | ||||
routers with homogenous link MSD values advertise just the Node MSD | ||||
value. | ||||
The meaning of the absence of both Node and Link MSD advertisements | ||||
for a given MSD-type is specific to the MSD-type. Generally it can | ||||
only be inferred that the advertising node does not support | ||||
advertisement of that MSD-type. However, in some cases the lack of | ||||
advertisement might imply that the functionality associated with the | ||||
MSD-type is not supported. The correct interpretation MUST be | ||||
specified when an MSD-type is defined in [RFC8491]. | ||||
6. IANA Considerations | ||||
This document requests assigning code-points from the registry "BGP- | This document requests assigning code-points from the registry "BGP- | |||
LS Node Descriptor, Link Descriptor, Prefix Descriptor, and Attribute | LS Node Descriptor, Link Descriptor, Prefix Descriptor, and Attribute | |||
TLVs" based on table below. Early allocation for these code-points | TLVs" based on table below. Early allocation for these code-points | |||
have been done by IANA. | have been done by IANA. | |||
+------------+-----------------+---------------------------+-------------------+ | +------------+-----------------+---------------------------+-------------------+ | |||
| Code Point | Description | IS-IS TLV/Sub-TLV | Reference | | | Code Point | Description | IS-IS TLV/Sub-TLV | Reference | | |||
+------------+-----------------+---------------------------+-------------------+ | +------------+-----------------+---------------------------+-------------------+ | |||
| 266 | Node MSD | 242/23 | This document | | | 266 | Node MSD | 242/23 | This document | | |||
| 267 | Link MSD | (22,23,25,141,222,223)/15 | This document | | | 267 | Link MSD | (22,23,25,141,222,223)/15 | This document | | |||
+------------+-----------------+---------------------------+-------------------+ | +------------+-----------------+---------------------------+-------------------+ | |||
7. Manageability Considerations | 6. Manageability Considerations | |||
The new protocol extensions introduced in this document augment the | The new protocol extensions introduced in this document augment the | |||
existing IGP topology information that is distributed via [RFC7752]. | existing IGP topology information that is distributed via [RFC7752]. | |||
Procedures and protocol extensions defined in this document do not | Procedures and protocol extensions defined in this document do not | |||
affect the BGP protocol operations and management other than as | affect the BGP protocol operations and management other than as | |||
discussed in the Manageability Considerations section of [RFC7752]. | discussed in the Manageability Considerations section of [RFC7752]. | |||
Specifically, the malformed attribute tests for syntactic checks in | Specifically, the malformed attribute tests for syntactic checks in | |||
the Fault Management section of [RFC7752] now encompass the new BGP- | the Fault Management section of [RFC7752] now encompass the new BGP- | |||
LS Attribute TLVs defined in this document. The semantic or content | LS Attribute TLVs defined in this document. The semantic or content | |||
checking for the TLVs specified in this document and their | checking for the TLVs specified in this document and their | |||
skipping to change at page 7, line 12 ¶ | skipping to change at page 6, line 41 ¶ | |||
left to the consumer of the BGP-LS information (e.g. an application | left to the consumer of the BGP-LS information (e.g. an application | |||
or a controller) and not the BGP protocol. | or a controller) and not the BGP protocol. | |||
A consumer of the BGP-LS information retrieves this information over | A consumer of the BGP-LS information retrieves this information over | |||
a BGP-LS session (refer Section 1 and 2 of [RFC7752]). | a BGP-LS session (refer Section 1 and 2 of [RFC7752]). | |||
This document only introduces new Attribute TLVs and any syntactic | This document only introduces new Attribute TLVs and any syntactic | |||
error in them would result in the BGP-LS Attribute being discarded | error in them would result in the BGP-LS Attribute being discarded | |||
[RFC7752]. The MSD information introduced in BGP-LS by this | [RFC7752]. The MSD information introduced in BGP-LS by this | |||
specification, may be used by BGP-LS consumer applications like a SR | specification, may be used by BGP-LS consumer applications like a SR | |||
path computation engine (PCE) to learn the SR SID stack handling | PCE to learn the SR SID stack handling capabilities of the nodes in | |||
capabilities of the nodes in the topology. This can enable the SR | the topology. This can enable the SR PCE to perform path | |||
PCE to perform path computations taking into consideration the size | computations taking into consideration the size of SID stack that the | |||
of SID stack that the specific head-end node may be able to impose. | specific head-end node may be able to impose. Errors in the encoding | |||
Errors in the encoding or decoding of the MSD information may result | or decoding of the MSD information may result in the unavailability | |||
in the unavailability of such information to the SR PCE or incorrect | of such information to the SR PCE or incorrect information being made | |||
information being made available to it. This may result in the head- | available to it. This may result in the head-end node not being able | |||
end node not being able to instantiate the desired SR path in its | to instantiate the desired SR path in its forwarding and provide the | |||
forwarding and provide the SR based optimization functionality. The | SR based optimization functionality. The handling of such errors by | |||
handling of such errors by applications like SR PCE may be | applications like SR PCE may be implementation specific and out of | |||
implementation specific and out of scope of this document. | scope of this document. | |||
The extensions specified in this document do not specify any new | The extensions specified in this document do not specify any new | |||
configuration or monitoring aspects in BGP or BGP-LS. The | configuration or monitoring aspects in BGP or BGP-LS. The | |||
specification of BGP models is an ongoing work based on the | specification of BGP models is an ongoing work based on the | |||
[I-D.ietf-idr-bgp-model]. | [I-D.ietf-idr-bgp-model]. | |||
8. Security Considerations | 7. Security Considerations | |||
The advertisement of an incorrect MSD value may have negative | The advertisement of an incorrect MSD value may have negative | |||
consequences. If the value is smaller than supported, path | consequences. If the value is smaller than supported, path | |||
computation may fail to compute a viable path. If the value is | computation may fail to compute a viable path. If the value is | |||
larger than supported, an attempt to instantiate a path that can't be | larger than supported, an attempt to instantiate a path that can't be | |||
supported by the head-end (the node performing the SID imposition) | supported by the head-end (the node performing the SID imposition) | |||
may occur. The presence of this information may also inform an | may occur. The presence of this information may also inform an | |||
attacker of how to induce any of the aforementioned conditions. | attacker of how to induce any of the aforementioned conditions. | |||
The procedures and protocol extensions defined in this document do | The procedures and protocol extensions defined in this document do | |||
skipping to change at page 7, line 51 ¶ | skipping to change at page 7, line 32 ¶ | |||
section of [RFC4271] for a discussion of BGP security. Also, refer | section of [RFC4271] for a discussion of BGP security. Also, refer | |||
to [RFC4272] and [RFC6952] for analyses of security issues for BGP. | to [RFC4272] and [RFC6952] for analyses of security issues for BGP. | |||
Security considerations for acquiring and distributing BGP-LS | Security considerations for acquiring and distributing BGP-LS | |||
information are discussed in [RFC7752]. The TLVs introduced in this | information are discussed in [RFC7752]. The TLVs introduced in this | |||
document are used to propagate the MSD IGP extensions defined in | document are used to propagate the MSD IGP extensions defined in | |||
[RFC8476] [RFC8491]. It is assumed that the IGP instances | [RFC8476] [RFC8491]. It is assumed that the IGP instances | |||
originating these TLVs will support all the required security (as | originating these TLVs will support all the required security (as | |||
described in [RFC8476] [RFC8491]) in order to prevent any security | described in [RFC8476] [RFC8491]) in order to prevent any security | |||
issues when propagating the TLVs into BGP-LS. The advertisement of | issues when propagating the TLVs into BGP-LS. The advertisement of | |||
the node and link attribute information defined in this document | the node and link attribute information defined in this document | |||
presents no additional risk beyond that associated with the existing | presents no significant additional risk beyond that associated with | |||
node and link attribute information already supported in [RFC7752]. | the existing node and link attribute information already supported in | |||
[RFC7752]. | ||||
9. Contributors | 8. Contributors | |||
Siva Sivabalan | Siva Sivabalan | |||
Cisco Systems Inc. | Cisco Systems Inc. | |||
Canada | Canada | |||
Email: msiva@cisco.com | Email: msiva@cisco.com | |||
10. Acknowledgements | 9. Acknowledgements | |||
We like to thank Acee Lindem, Stephane Litkowski, Bruno Decraene and | We like to thank Acee Lindem, Stephane Litkowski, Bruno Decraene and | |||
Alvaro Retana for their reviews and valuable comments. | Alvaro Retana for their reviews and valuable comments. | |||
11. References | 10. References | |||
11.1. Normative References | 10.1. Normative References | |||
[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, | |||
DOI 10.17487/RFC2119, March 1997, | DOI 10.17487/RFC2119, March 1997, | |||
<https://www.rfc-editor.org/info/rfc2119>. | <https://www.rfc-editor.org/info/rfc2119>. | |||
[RFC7752] Gredler, H., Ed., Medved, J., Previdi, S., Farrel, A., and | [RFC7752] Gredler, H., Ed., Medved, J., Previdi, S., Farrel, A., and | |||
S. Ray, "North-Bound Distribution of Link-State and | S. Ray, "North-Bound Distribution of Link-State and | |||
Traffic Engineering (TE) Information Using BGP", RFC 7752, | Traffic Engineering (TE) Information Using BGP", RFC 7752, | |||
DOI 10.17487/RFC7752, March 2016, | DOI 10.17487/RFC7752, March 2016, | |||
skipping to change at page 8, line 47 ¶ | skipping to change at page 8, line 34 ¶ | |||
[RFC8476] Tantsura, J., Chunduri, U., Aldrin, S., and P. Psenak, | [RFC8476] Tantsura, J., Chunduri, U., Aldrin, S., and P. Psenak, | |||
"Signaling Maximum SID Depth (MSD) Using OSPF", RFC 8476, | "Signaling Maximum SID Depth (MSD) Using OSPF", RFC 8476, | |||
DOI 10.17487/RFC8476, December 2018, | DOI 10.17487/RFC8476, December 2018, | |||
<https://www.rfc-editor.org/info/rfc8476>. | <https://www.rfc-editor.org/info/rfc8476>. | |||
[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>. | |||
11.2. Informative References | 10.2. Informative References | |||
[I-D.ietf-idr-bgp-model] | [I-D.ietf-idr-bgp-model] | |||
Jethanandani, M., Patel, K., Hares, S., and J. Haas, "BGP | Jethanandani, M., Patel, K., Hares, S., and J. Haas, "BGP | |||
YANG Model for Service Provider Networks", draft-ietf-idr- | YANG Model for Service Provider Networks", draft-ietf-idr- | |||
bgp-model-08 (work in progress), February 2020. | bgp-model-08 (work in progress), February 2020. | |||
[I-D.ietf-isis-mpls-elc] | [I-D.ietf-isis-mpls-elc] | |||
Xu, X., Kini, S., Psenak, P., Filsfils, C., Litkowski, S., | Xu, X., Kini, S., Psenak, P., Filsfils, C., Litkowski, S., | |||
and M. Bocci, "Signaling Entropy Label Capability and | and M. Bocci, "Signaling Entropy Label Capability and | |||
Entropy Readable Label Depth Using IS-IS", draft-ietf- | Entropy Readable Label Depth Using IS-IS", draft-ietf- | |||
End of changes. 15 change blocks. | ||||
54 lines changed or deleted | 34 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/ |