draft-ietf-ospf-segment-routing-msd-09.txt   draft-ietf-ospf-segment-routing-msd-10.txt 
OSPF Working Group J. Tantsura OSPF Working Group J. Tantsura
Internet-Draft Nuage Networks Internet-Draft Nuage Networks
Intended status: Standards Track U. Chunduri Intended status: Standards Track U. Chunduri
Expires: August 30, 2018 Huawei Technologies Expires: October 7, 2018 Huawei Technologies
S. Aldrin S. Aldrin
Google, Inc Google, Inc
P. Psenak P. Psenak
Cisco Systems Cisco Systems
February 26, 2018 April 05, 2018
Signaling MSD (Maximum SID Depth) using OSPF Signaling MSD (Maximum SID Depth) using OSPF
draft-ietf-ospf-segment-routing-msd-09 draft-ietf-ospf-segment-routing-msd-10
Abstract Abstract
This document defines a way for an OSPF Router to advertise multiple This document defines a way for an OSPF Router to advertise multiple
types of supported Maximum SID Depths (MSDs) at node and/or link types of supported Maximum SID Depths (MSDs) at node and/or link
granularity. Such advertisements allow entities (e.g., centralized granularity. Such advertisements allow entities (e.g., centralized
controllers) to determine whether a particular SID stack is controllers) to determine whether a particular SID stack can be
supportable in a given network. This document only defines one type supported in a given network. This document only defines one type of
of MSD (maximum label imposition) - but defines an encoding which can MSD maximum label imposition, but defines an encoding which can
support other MSD types. Here the term OSPF means both OSPFv2 and support other MSD types. Here the term OSPF means both OSPFv2 and
OSPFv3. OSPFv3.
Status of This Memo Status of This Memo
This Internet-Draft is submitted in full conformance with the This Internet-Draft is submitted in full conformance with the
provisions of BCP 78 and BCP 79. provisions of BCP 78 and BCP 79.
Internet-Drafts are working documents of the Internet Engineering Internet-Drafts are working documents of the Internet Engineering
Task Force (IETF). Note that other groups may also distribute Task Force (IETF). Note that other groups may also distribute
working documents as Internet-Drafts. The list of current Internet- working documents as Internet-Drafts. The list of current Internet-
Drafts is at https://datatracker.ietf.org/drafts/current/. Drafts is at https://datatracker.ietf.org/drafts/current/.
Internet-Drafts are draft documents valid for a maximum of six months Internet-Drafts are draft documents valid for a maximum of six months
and may be updated, replaced, or obsoleted by other documents at any and may be updated, replaced, or obsoleted by other documents at any
time. It is inappropriate to use Internet-Drafts as reference time. It is inappropriate to use Internet-Drafts as reference
material or to cite them other than as "work in progress." material or to cite them other than as "work in progress."
This Internet-Draft will expire on August 30, 2018. This Internet-Draft will expire on October 7, 2018.
Copyright Notice Copyright Notice
Copyright (c) 2018 IETF Trust and the persons identified as the Copyright (c) 2018 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 39 skipping to change at page 2, line 39
10. Acknowledgements . . . . . . . . . . . . . . . . . . . . . . 7 10. Acknowledgements . . . . . . . . . . . . . . . . . . . . . . 7
11. References . . . . . . . . . . . . . . . . . . . . . . . . . 7 11. References . . . . . . . . . . . . . . . . . . . . . . . . . 7
11.1. Normative References . . . . . . . . . . . . . . . . . . 7 11.1. Normative References . . . . . . . . . . . . . . . . . . 7
11.2. Informative References . . . . . . . . . . . . . . . . . 7 11.2. Informative References . . . . . . . . . . . . . . . . . 7
Authors' Addresses . . . . . . . . . . . . . . . . . . . . . . . 8 Authors' Addresses . . . . . . . . . . . . . . . . . . . . . . . 8
1. Introduction 1. Introduction
When Segment Routing(SR) paths are computed by a centralized When Segment Routing(SR) paths are computed by a centralized
controller, it is critical that the controller learns the Maximum SID controller, it is critical that the controller learns the Maximum SID
Depth(MSD) which can be imposed at the node/link a given SR path is Depth(MSD) that can be imposed at each node/link a given SR path to
applied so as to insure that the SID stack depth of a computed path insure that the SID stack depth of a computed path doesn't exceed the
doesn't exceed the number of SIDs the node is capable of imposing. number of SIDs the node is capable of imposing.
PCEP SR extensions draft [I-D.ietf-pce-segment-routing] signals MSD The PCEP SR extensions draft [I-D.ietf-pce-segment-routing] signals
in SR PCE Capability TLV and METRIC Object. However, if PCEP is not MSD in SR PCE Capability TLV and METRIC Object. However, if PCEP is
supported/configured on the head-end of a SR tunnel or a Binding-SID not supported/configured on the head-end of an SR tunnel or a
anchor node and controller does not participate in IGP routing, it Binding-SID anchor node and controller does not participate in IGP
has no way to learn the MSD of nodes and links which has been routing, it has no way to learn the MSD of nodes and links which has
configured. BGP-LS [RFC7752] defines a way to expose topology and been configured. BGP-LS [RFC7752] defines a way to expose topology
associated attributes and capabilities of the nodes in that topology and associated attributes and capabilities of the nodes in that
to a centralized controller. MSD signaling by BGP-LS has been topology to a centralized controller. MSD signaling by BGP-LS has
defined in [I-D.ietf-idr-bgp-ls-segment-routing-msd]. Typically, been defined in [I-D.ietf-idr-bgp-ls-segment-routing-msd].
BGP-LS is configured on a small number of nodes, that do not Typically, BGP-LS is configured on a small number of nodes that do
necessarily act as head-ends. In order, for BGP-LS to signal MSD for not necessarily act as head-ends. In order for BGP-LS to signal MSD
all the nodes and links in the network MSD is relevant, MSD for all the nodes and links in the network MSD is relevant, MSD
capabilites should be advertised to every OSPF router in the network. capabilites should be advertised to every OSPF router in the network.
Other types of MSD are known to be useful. For example, Other types of MSD are known to be useful. For example,
[I-D.ietf-ospf-mpls-elc] defines Readable Label Depth Capability [I-D.ietf-ospf-mpls-elc] defines Readable Label Depth Capability
(RLDC) that is used by a head-end to insert Entropy Label (EL) at (RLDC) that is used by a head-end to insert an Entropy Label (EL) at
appropriate depth, so it could be read by transit nodes. a depth that can be read by transit nodes.
This document defines an extension to OSPF used to advertise one or This document defines an extension to OSPF used to advertise one or
more types of MSD at node and/or link granularity. It also creates more types of MSD at node and/or link granularity. It also creates
an IANA registry for assigning MSD type identifiers. It also defines an IANA registry for assigning MSD type identifiers. It laso defines
one MSD type called Base MPLS Imposition MSD. In the future it is the Base MPLS Imposition MSD type. In the future it is expected,
expected that new MSD types will be defined to signal additional that new MSD types will be defined to signal additional capabilities
capabilities e.g., entropy labels, SIDs that can be imposed through e.g., entropy labels, SIDs that can be imposed through recirculation,
recirculation, or SIDs associated with another dataplane e.g., IPv6. or SIDs associated with another dataplane e.g., IPv6.
1.1. Conventions used in this document 1.1. Conventions used in this document
1.1.1. Terminology 1.1.1. Terminology
BGP-LS: Distribution of Link-State and TE Information using Border BGP-LS: Distribution of Link-State and TE Information using Border
Gateway Protocol Gateway Protocol
BMI: Base MPLS Imposition is the number of MPLS labels which can be BMI: Base MPLS Imposition is the number of MPLS labels that can be
imposed inclusive of any service/transport labels imposed inclusive of any service/transport labels
OSPF: Open Shortest Path First OSPF: Open Shortest Path First
MSD: Maximum SID Depth - the number of SIDs a node or a link on a MSD: Maximum SID Depth - the number of SIDs a node or one of its
node can support links can support
PCC: Path Computation Client PCC: Path Computation Client
PCE: Path Computation Element PCE: Path Computation Element
PCEP: Path Computation Element Protocol PCEP: Path Computation Element Protocol
SID: Segment Identifier SID: Segment Identifier
SR: Segment Routing SR: Segment Routing
1.2. Requirements Language 1.2. 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", "MAY", and "OPTIONAL" in this "SHOULD", "SHOULD NOT", "RECOMMENDED", "NOT RECOMMENDED", "MAY", and
document are to be interpreted as described in RFC 2119 [RFC2119]. "OPTIONAL" in this document are to be interpreted as described in
BCP14 [RFC2119], [RFC8174] when, and only when they appear in all
capitals, as shown here .
2. Terminology 2. Terminology
This memo makes use of the terms defined in [RFC4970]. This memo makes use of the terms defined in [RFC4970].
3. Node MSD TLV 3. Node MSD TLV
A new TLV within the body of the OSPF RI Opaque LSA, called Node MSD The node MSD TLV within the body of the OSPF RI Opaque LSA is defined
TLV is defined to carry the provisioned SID depth of the router to carry the provisioned SID depth of the router originating the RI
originating the RI LSA. Node MSD is the lowest MSD supported by the LSA. Node MSD is the minimum MSD supported by the node.
node.
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 |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Sub-Type and Value ... | Sub-Type and Value ...
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ ... +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ ...
Figure 1: Node MSD TLV Figure 1: Node MSD TLV
The Type (2 bytes) of this TLV has value of 12. The Type: TBD1
Length is variable (minimum of 2, multiple of 2 octets) and Length: variable (minimum of 2, multiple of 2 octets) and represents
represents the total length of value field. the total length of value field.
Value field consists of a 1 octet sub-type (IANA Registry) and 1 Value: consists of a 1 octet sub-type (IANA Registry) and 1 octet
octet value. value.
Sub-Type 1 (IANA Section), MSD and the Value field contains maximum Sub-Type 1 (IANA Section), MSD and the Value field contains maximum
MSD of the router originating the RI LSA. Node Maximum MSD is a MSD of the router originating the RI LSA. Node Maximum MSD is a
number in the range of 0-254. 0 represents lack of the ability to number in the range of 0-254. 0 represents lack of the ability to
impose MSD stack of any depth; any other value represents that of the impose MSD stack of any depth; any other value represents that of the
node. This value SHOULD represent the lowest value supported by node. This value SHOULD represent the minimum value supported by a
node. node.
Other Sub-types other than defined above are reserved for future Other Sub-types other than defined above are reserved for future
extensions. extensions.
This TLV is applicable to OSPFv2 and to OSPFv3 [RFC5838] and is This TLV is applicable to OSPFv2 and to OSPFv3 [RFC5838] and is
optional. The scope of the advertisement is specific to the optional. The scope of the advertisement is specific to the
deployment. deployment.
4. Link MSD sub-TLV 4. Link MSD sub-TLV
skipping to change at page 5, line 21 skipping to change at page 5, line 21
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 |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Sub-Type and Value ... | Sub-Type and Value ...
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ ... +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ ...
Figure 2: Link MSD Sub-TLV Figure 2: Link MSD Sub-TLV
The Type (2 bytes) of this TLV: Type:
For OSPFv2, the Link level MSD value is advertised as an optional For OSPFv2, the Link level MSD value is advertised as an optional
Sub-TLV of OSPFv2 Extended Link TLV as defined in [RFC7684], and has Sub-TLV of the OSPFv2 Extended Link TLV as defined in [RFC7684], and
value of 6. has value of TBD2.
For OSPFv3, the Link level MSD value is advertised as an optional For OSPFv3, the Link level MSD value is advertised as an optional
Sub-TLV of the Router-Link TLV as defined in Sub-TLV of the Router-Link TLV as defined in
[I-D.ietf-ospf-ospfv3-lsa-extend], and has value of 16 (Suggested [I-D.ietf-ospf-ospfv3-lsa-extend], and has value of TBD3.
value - to be assigned by IANA).
Length is variable and similar to what is defined in Section 3. Length: variable and similar to what is defined in Section 3.
Value field consists of a 1 octet sub-type (IANA Registry) and 1 Value: consists of a 1 octet sub-type (IANA Registry) and 1 octet
octet value. value.
Sub-Type 1 (IANA Section), MSD and the Value field contains Link MSD Sub-Type 1 (IANA Section), MSD and the Value field contains Link MSD
of the router originating the corresponding LSA as specified for of the router originating the corresponding LSA as specified for
OSPFv2 and OSPFv3. Link MSD is a number in the range of 0-254. 0 OSPFv2 and OSPFv3. Link MSD is a number in the range of 0-254. 0
represents lack of the ability to impose MSD stack of any depth; any represents lack of the ability to impose MSD stack of any depth; any
other value represents that of the particular link MSD value. other value represents that of the particular link MSD value.
Other Sub-types other than defined above are reserved for future Other Sub-types other than defined above are reserved for future
extensions. extensions.
5. Using Node and Link MSD Advertisements 5. Using Node and Link MSD Advertisements
When Link MSD is present for a given MSD type, the value of the Link When Link MSD is present for a given MSD type, the value of the Link
MSD MUST be used in preference to the Node MSD. MSD MUST take preference over the Node MSD.
The meaning of the absence of both Node and Link MSD advertisements 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 for a given MSD type is specific to the MSD type. Generally it can
only be inferred that the advertising node does not support only be inferred that the advertising node does not support
advertisement of that MSD type. However, in some cases the lack of advertisement of that MSD type. However, in some cases the lack of
advertisement might imply that the functionality associated with the advertisement might imply that the functionality associated with the
MSD type is not supported. The correct interpretation MUST be MSD type is not supported. The correct interpretation MUST be
specified when an MSD type is defined. specified when an MSD type is defined.
6. Base MPLS Imposition MSD 6. Base MPLS Imposition MSD
Base MPLS Imposition MSD (BMI-MSD) signals the total number of MPLS The Base MPLS Imposition MSD (BMI-MSD) signals the total number of
labels a node is capable of imposing, including any service/transport MPLS labels a node is capable of imposing, including any service/
labels. transport labels.
Absence of BMI-MSD advertisements indicates only that the advertising Absence of BMI-MSD advertisements indicates solely that the
node does not support advertisement of this capability. advertising node does not support advertisement of this capability.
7. IANA Considerations 7. IANA Considerations
This document includes a request to IANA to allocate TLV type codes This document requests IANA to allocate TLV type (TBD1) from the OSPF
for the new TLV proposed in Section 3 of this document from OSPF Router Information (RI) TLVs Registry as defined by [RFC4970]. IANA
Router Information (RI) TLVs Registry as defined by [RFC4970]. For has allocated the value 12 through the early assignment process.
the link MSD, we request IANA to allocate new sub-TLV codes as Also, this document requests IANA to allocate a sub-TLV type (TBD2)
proposed in Section 4 from OSPFv2 Extended Link TLV Sub-TLVs registry from the OSPFv2 Extended Link TLV Sub-TLVs registry. IANA has
and from Router-Link TLV defined in OSPFv3 Extend-LSA Sub-TLV allocated the the value 6 through the early assignment process.
registry. Finally, this document requests IANA to allocate a sub-TLV type
(TBD3) from the OSPFv3 Extended-LSA Sub-TLV registry.
This document requests creation of a new IANA managed registry under This document requests creation of an IANA managed registry under a
a new category of "Interior Gateway Protocol (IGP) Parameters" IANA new category of "Interior Gateway Protocol (IGP) Parameters" IANA
registries to identify MSD types as proposed in Section 3, Section 4. registries to identify MSD types as proposed in Section 3, Section 4.
The registration procedure is "Expert Review" as defined in The registration procedure is "Expert Review" as defined in
[RFC8126]. Suggested registry name is "MSD types". Types are an [RFC8126]. The suggested registry name is "MSD types". Types are an
unsigned 8 bit number. The following values are defined by this unsigned 8 bit number. The following values are defined by this
document document.
Value Name Reference Value Name Reference
----- --------------------- ------------- ----- --------------------- -------------
0 Reserved This document 0 Reserved This document
1 Base MPLS Imposition MSD This document 1 Base MPLS Imposition MSD This document
2-250 Unassigned This document 2-250 Unassigned This document
251-254 Experimental This document 251-254 Experimental This document
255 Reserved This document 255 Reserved This document
Figure 3: MSD Types Codepoints Registry Figure 3: MSD Types Codepoints Registry
skipping to change at page 7, line 20 skipping to change at page 7, line 20
9. Contributors 9. Contributors
The following people contributed to this document: The following people contributed to this document:
Les Ginsberg Les Ginsberg
Email: ginsberg@cisco.com Email: ginsberg@cisco.com
10. Acknowledgements 10. Acknowledgements
The authors would like to thank Stephane Litkowski and Bruno Decraene The authors would like to thank Acee Lindem, Stephane Litkowski and
for their reviews and valuable comments. Bruno Decraene for their reviews and valuable comments.
11. References 11. References
11.1. Normative References 11.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>.
[RFC4970] Lindem, A., Ed., Shen, N., Vasseur, JP., Aggarwal, R., and [RFC4970] Lindem, A., Ed., Shen, N., Vasseur, JP., Aggarwal, R., and
S. Shaffer, "Extensions to OSPF for Advertising Optional S. Shaffer, "Extensions to OSPF for Advertising Optional
Router Capabilities", RFC 4970, DOI 10.17487/RFC4970, July Router Capabilities", RFC 4970, DOI 10.17487/RFC4970, July
2007, <https://www.rfc-editor.org/info/rfc4970>. 2007, <https://www.rfc-editor.org/info/rfc4970>.
[RFC7770] Lindem, A., Ed., Shen, N., Vasseur, JP., Aggarwal, R., and [RFC7770] Lindem, A., Ed., Shen, N., Vasseur, JP., Aggarwal, R., and
S. Shaffer, "Extensions to OSPF for Advertising Optional S. Shaffer, "Extensions to OSPF for Advertising Optional
Router Capabilities", RFC 7770, DOI 10.17487/RFC7770, Router Capabilities", RFC 7770, DOI 10.17487/RFC7770,
February 2016, <https://www.rfc-editor.org/info/rfc7770>. February 2016, <https://www.rfc-editor.org/info/rfc7770>.
[RFC8174] Leiba, B., "Ambiguity of Uppercase vs Lowercase in RFC
2119 Key Words", BCP 14, RFC 8174, DOI 10.17487/RFC8174,
May 2017, <https://www.rfc-editor.org/info/rfc8174>.
11.2. Informative References 11.2. Informative References
[I-D.ietf-idr-bgp-ls-segment-routing-msd] [I-D.ietf-idr-bgp-ls-segment-routing-msd]
Tantsura, J., Chunduri, U., Mirsky, G., and S. Sivabalan, Tantsura, J., Chunduri, U., Mirsky, G., and S. Sivabalan,
"Signaling Maximum SID Depth using Border Gateway Protocol "Signaling Maximum SID Depth using Border Gateway Protocol
Link-State", draft-ietf-idr-bgp-ls-segment-routing-msd-01 Link-State", draft-ietf-idr-bgp-ls-segment-routing-msd-01
(work in progress), October 2017. (work in progress), October 2017.
[I-D.ietf-ospf-mpls-elc] [I-D.ietf-ospf-mpls-elc]
Xu, X., Kini, S., Sivabalan, S., Filsfils, C., and S. Xu, X., Kini, S., Sivabalan, S., Filsfils, C., and S.
 End of changes. 31 change blocks. 
71 lines changed or deleted 76 lines changed or added

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