RFC 9017
Special-Purpose Label Terminology
RFC 9017: Special-Purpose Label Terminology β¨
Okay bestie, this is RFC 9017, titled Special-Purpose Label Terminology π It's a Standards Track document, so it's an actual Internet standard and not just a vibe. It came out in April 2021 from the IETF (Internet Engineering Task Force) and has ISSN 2070-1721.
The authors are L. Andersson (Bronze Dragon Consulting), K. Kompella (Juniper Networks), and A. Farrel (Old Dog Consulting) π«Ά The header says it updates RFC 3032 and RFC 7274. It doesn't list anything it obsoletes, only updates.
Abstract π
This doc talks about and recommends the terminology you should use when you're specifying and documenting MPLS Special-Purpose Labels (SPLs). β¨
It also applies that terminology change to the relevant IANA registry, and it clarifies how the Entropy Label Indicator (7) works when it comes right after the Extension Label (15). π¦
This document updates RFCs 3032 and 7274. π
Status of This Memo πΈ
This is an Internet Standards Track document. π
It's a product of the Internet Engineering Task Force (IETF), and it represents the consensus of the IETF community. It went through public review and was approved for publication by the Internet Engineering Steering Group (IESG). If you want more on Internet Standards, check Section 2 of RFC 7841. π
For the current status of this doc, any errata, and how to give feedback, go to https://www.rfc-editor.org/info/rfc9017. π
Copyright Notice π
Copyright (c) 2021 IETF Trust and the persons identified as the document authors. All rights reserved. π
This document is subject to BCP 78 and the IETF Trust's Legal Provisions Relating to IETF Documents, which you can find at https://trustee.ietf.org/license-info as they stood on the publication date. Please read them carefully, because they spell out your rights and restrictions for this document. Any Code Components pulled out of this document must include Simplified BSD License text, as described in Section 4.e of the Trust Legal Provisions, and they come without warranty, as the Simplified BSD License describes. βοΈ
Table of Contents π§
1. Introduction
1.1. Terminology
2. Background
2.1. GMPLS Special-Purpose Labels
3. Terminology and Abbreviations
4. Clarification on Handling of the Entropy Label Indicator
5. Security Considerations
6. IANA Considerations
7. References
7.1. Normative References
7.2. Informative References
Acknowledgements
Contributors
Authors' Addresses
1. Introduction π§
Okay so RFC 7274 [RFC7274] changed some of the terminology for MPLS Special-Purpose Labels, but it never actually defined consistent terminology. Iconic of it, honestly. π
One of the things RFC 7274 did was deprecate "reserved labels" as a way to describe a range of labels allocated from an IANA-maintained registry. The word "Reserved" in a registry means "set aside, not to be used," but that range was actually available for allocation under the policies in that registry. So the new name was "Special-Purpose Labels," and it came with the abbreviation "SPL." π
While the first draft of this document was being written, the IETF was in the middle of allocating the very first SPLs from the Extended SPL (eSPL) range [RFC8595]. This document is where we talk about and recommend the terms and abbreviations to use when discussing and documenting Special-Purpose Labels. β¨
This document updates RFC 3032 [RFC3032] and RFC 7274 [RFC7274] by changing the terminology for both Base SPLs (which used to be called just "Special-Purpose Labels") and Extended SPLs. π¦
It also applies that terminology change to the relevant IANA registry, and it clarifies how the Entropy Label Indicator (7) works when it comes right after the Extension Label (15). π
1.1. Terminology π
Here's the key-word tea. The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT", "SHOULD", "SHOULD NOT", "RECOMMENDED", "NOT RECOMMENDED", "MAY", and "OPTIONAL" in this document are to be interpreted as described in BCP 14 [RFC2119] [RFC8174], but only when they appear in all capitals, exactly as shown here. π
2. Background πΈ
There are two sets of SPLs defined for use in MPLS: π
- The range 0-15 (Base Special-Purpose Labels (bSPLs) as described in this document) is specified in RFC 3032 [RFC3032].
- The range 0-1048575 of eSPLs is specified in RFC 7274 [RFC7274].
- The values 0-15 have been reserved and are never to be allocated.
- The values 16-239 are available for allocation.
- The values 240-255 are for experimental use.
- The values 256-1048575 are currently not available for allocation. A Standards Track RFC would be needed to change this rule, and that RFC would need to define the ranges that are made available for allocation and the registration policy for those ranges. π₯
2.1. GMPLS Special-Purpose Labels π¦
Heads up: IANA maintains a registry called "Special-Purpose Generalized Label Values." Labels in that registry have special meaning when they show up in certain signaling objects, they're 32 bits long, and they are not to be confused with MPLS forwarding-plane labels. This document doesn't change the GMPLS registry or how labels from it are described, so no drama there. π§
3. Terminology and Abbreviations π
Before this document was published, IANA maintained a name space for "Special-Purpose Multiprotocol Label Switching (MPLS) Label Values" code points [SPL-NAME-SPACE]. Inside that name space were two registries. One was called the "Special-Purpose MPLS Label Values" registry [bSPL], and the other was called the "Extended Special-Purpose MPLS Label Values" registry [eSPL]. π
The only difference between the name of the name space and the first registry is that the MPLS abbreviation gets expanded. This document doesn't change the name of the name space itself (i.e., "Special-Purpose Multiprotocol Label Switching (MPLS) Label Values"). It does rename the first registry to "Base Special-Purpose MPLS Label Values," but the latter registry keeps its name, "Extended Special-Purpose MPLS Label Values." π
Here are the naming conventions for specifications and for talking about SPLs. β¨
- Collectively, the two (unrelated) ranges (0-15 and 16-1048575) are known as "Special-Purpose Labels" (SPLs).
- SPLs from the range 0-15 are called "Base Special-Purpose Labels" (bSPLs).
- SPLs from the range 16-1048575 are called "Extended Special-Purpose Labels" (eSPLs). (Note that the reserved values 0-15 from the "Extended Special-Purpose MPLS Label Values" registry do not need a name, as they are not available for allocation and MUST NOT be used.) π
- The combination of the Extension Label (XL) (value 15, which is a bSPL and is also called the "xSPL") and an eSPL is called a "Composite Special-Purpose Label" (cSPL). π
This gives you label stacks like the examples in Figures 1 and 2. π§
0 31
| MPLS Label Stack entry |
+--------+--------+--------+--------+
| MPLS Label Stack entry |
+--------+--------+--------+--------+
bSPL | Base SPL |
+--------+--------+--------+--------+
| MPLS Label Stack entry (cont.) |
Figure 1: Example of Label Stack
0 31
| MPLS Label Stack entry |
+--------+--------+--------+--------+
| MPLS Label Stack entry |
+--------+--------+--------+--------+
xSPL | Extension Label (XL) | <--+
+--------+--------+--------+--------+ |--- cSPL
eSPL | Extended SPL | <--+
+--------+--------+--------+--------+
| MPLS Label Stack entry (cont.) |
Figure 2: Example of Label Stack
- IANA Considerations π
IANA has renamed the registry that used to be called "Special-Purpose MPLS Label Values" to "Base Special-Purpose MPLS Label Values" [bSPL]. Bestie, the name changed, the vibe did not π
IANA also updated the "Base Special-Purpose MPLS Label Values" registry π¦ The description for value 15 changed from "Extension Label" to "Extension Label (XL)", and this document got added as a reference. Iconic glow-up β¨
Table 1 shows the updated entry π
+=======+======================+====================+
| Value | Description | Reference |
+=======+======================+====================+
| 15 | Extension Label (XL) | RFC 7274, RFC 9017 |
+-------+----------------------+--------------------+
Table 1: Updated Entry for Value 15 in the "Base
Special-Purpose MPLS Label Values" Registry
- References π
7.1. Normative References πΈ
[bSPL] IANA, "Base Special-Purpose MPLS Label Values",
<https://www.iana.org/assignments/mpls-label-values/>.
[eSPL] IANA, "Extended Special-Purpose MPLS Label Values",
<https://www.iana.org/assignments/mpls-label-values/>.
[RFC2119] Bradner, S., "Key words for use in RFCs to Indicate
Requirement Levels", BCP 14, RFC 2119,
DOI 10.17487/RFC2119, March 1997,
<https://www.rfc-editor.org/info/rfc2119>.
[RFC3032] Rosen, E., Tappan, D., Fedorkow, G., Rekhter, Y.,
Farinacci, D., Li, T., and A. Conta, "MPLS Label Stack
Encoding", RFC 3032, DOI 10.17487/RFC3032, January 2001,
<https://www.rfc-editor.org/info/rfc3032>.
[RFC7274] Kompella, K., Andersson, L., and A. Farrel, "Allocating
and Retiring Special-Purpose MPLS Labels", RFC 7274,
DOI 10.17487/RFC7274, June 2014,
<https://www.rfc-editor.org/info/rfc7274>.
[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>.
[SPL-NAME-SPACE]
IANA, "Special-Purpose Multiprotocol Label Switching
(MPLS) Label Values",
<https://www.iana.org/assignments/mpls-label-values/>.
7.2. Informative References π¦
[RFC8595] Farrel, A., Bryant, S., and J. Drake, "An MPLS-Based
Forwarding Plane for Service Function Chaining", RFC 8595,
DOI 10.17487/RFC8595, June 2019,
<https://www.rfc-editor.org/info/rfc8595>.
Acknowledgements π«Ά
We would like to thank the Routing Directorate reviewer, Eric Gray, for a detailed, careful, and insightful review π And a big thank you to Tom Petch for pointing out several issues of clarity π
Contributors π§
The following individual contributed text to this document:
Stewart Bryant
Futurewei Technologies Inc.
Email: stewart.bryant@gmail.com
Authors' Addresses π
Loa Andersson
Bronze Dragon Consulting
Email: loa@pi.nu
Kireeti Kompella
Juniper Networks
Email: kireeti@juniper.net
Adrian Farrel
Old Dog Consulting
Email: adrian@olddog.co.uk
π¦ where this page comes from
- ietf: rfc9017 2021-04
- π girlified by claude-haiku-5-5 on : a language model's rewrite of the original, under its terms