Locator/ID Separation Protocol (LISP): Shared Extension Message & IANA Registry for Packet Type Allocations
One flexible message type for LISP extensions instead of allocating a new type for each.
Boucadair, M. and C. Jacquenet, "Locator/ID Separation Protocol (LISP): Shared Extension Message & IANA Registry for Packet Type Allocations", RFC 8113, DOI 10.17487/RFC8113, March 2017, <https://www.rfc-editor.org/info/rfc8113>.
@misc{rfc8113,
series = {Request for Comments},
number = 8113,
howpublished = {RFC 8113},
publisher = {RFC Editor},
doi = {10.17487/RFC8113},
url = {https://www.rfc-editor.org/info/rfc8113},
author = {M. Boucadair and C. Jacquenet},
title = {{Locator/ID Separation Protocol (LISP): Shared Extension Message & IANA Registry for Packet Type Allocations}},
pagetotal = 6,
year = 2017,
month = mar,
} RFC text
Contents
Internet Engineering Task Force (IETF) M. Boucadair
Request for Comments: 8113 C. Jacquenet
Updates: 6830 Orange
Category: Experimental March 2017
ISSN: 2070-1721
Locator/ID Separation Protocol (LISP):
Shared Extension Message & IANA Registry for Packet Type Allocations
Abstract
This document specifies a Locator/ID Separation Protocol (LISP)
shared message type for defining future extensions and conducting
experiments without consuming a LISP packet type codepoint for each
extension. It also defines a registry for LISP Packet Type
allocations, thus updating RFC 6830.
Status of This Memo
This document is not an Internet Standards Track specification; it is
published for examination, experimental implementation, and
evaluation.
This document defines an Experimental Protocol for the Internet
community. This document is a product of the Internet Engineering
Task Force (IETF). It represents the consensus of the IETF
community. It has received public review and has been approved for
publication by the Internet Engineering Steering Group (IESG). Not
all documents approved by the IESG are a candidate for any level of
Internet Standard; see Section 2 of RFC 7841.
Information about the current status of this document, any errata,
and how to provide feedback on it may be obtained at
http://www.rfc-editor.org/info/rfc8113.
Copyright Notice
Copyright (c) 2017 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
(http://trustee.ietf.org/license-info) in effect on the date of
publication of this document. Please review these documents
carefully, as they describe your rights and restrictions with respect
to this document. Code Components extracted from this document must
include Simplified BSD License text as described in Section 4.e of
the Trust Legal Provisions and are provided without warranty as
described in the Simplified BSD License.
Table of Contents
1. Introduction . . . . . . . . . . . . . . . . . . . . . . . . 2
2. Requirements Language . . . . . . . . . . . . . . . . . . . . 3
3. LISP Shared Extension Message Type . . . . . . . . . . . . . 3
4. Security Considerations . . . . . . . . . . . . . . . . . . . 3
5. IANA Considerations . . . . . . . . . . . . . . . . . . . . . 4
5.1. LISP Packet Types . . . . . . . . . . . . . . . . . . . . 4
5.2. Sub-Types . . . . . . . . . . . . . . . . . . . . . . . . 4
6. References . . . . . . . . . . . . . . . . . . . . . . . . . 5
6.1. Normative References . . . . . . . . . . . . . . . . . . 5
6.2. Informative References . . . . . . . . . . . . . . . . . 5
Acknowledgments . . . . . . . . . . . . . . . . . . . . . . . . . 6
Authors' Addresses . . . . . . . . . . . . . . . . . . . . . . . 6
1. Introduction
The Locator/ID Separation Protocol (LISP) base specification,
[RFC6830], defines a set of primitives that are identified with a
packet type code. Several extensions have been proposed to add more
LISP functionalities. For example, new message types are proposed in
[LISP-DDT], [LISP-MN-EXT], [LISP-BULK], [NAT-LISP], or
[LISP-SUBSCRIBE]. It is expected that additional LISP extensions
will be proposed in the future.
In order to ease the tracking of LISP message types, this document
proposes to create a "LISP Packet Types" IANA registry (see
Section 5).
Because of the limited type space [RFC6830] and the need to conduct
experiments to assess new LISP extensions, this document specifies a
shared LISP extension message type and proposes a procedure for
registering LISP shared extension sub-types (see Section 3).
Concretely, one single LISP message type code is dedicated to future
LISP extensions; sub-types are used to uniquely identify a given LISP
extension making use of the shared LISP extension message type.
These identifiers are selected by the author(s) of the corresponding
LISP specification that introduces a new LISP extension message type.
2. Requirements Language
The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT",
"SHOULD", "SHOULD NOT", "RECOMMENDED", "MAY", and "OPTIONAL" in this
document are to be interpreted as described in [RFC2119].
3. LISP Shared Extension Message Type
Figure 1 depicts the common format of the LISP shared extension
message. The type field MUST be set to 15 (see Section 5).
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
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|Type=15| Sub-type | extension-specific |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
// extension-specific //
// //
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
Figure 1: LISP Shared Extension Message Type
The "Sub-type" field conveys a unique identifier that MUST be
registered with IANA (see Section 5.2).
The exact structure of the 'extension-specific' portion of the
message is specified in the corresponding specification document.
4. Security Considerations
This document does not introduce any additional security issues other
than those discussed in [RFC6830].
5. IANA Considerations
5.1. LISP Packet Types
IANA has created a new protocol registry for LISP Packet Types,
numbered 0-15. The registry is initially populated with the
following values:
Message Code Reference
================================= ==== ===============
Reserved 0 [RFC6830]
LISP Map-Request 1 [RFC6830]
LISP Map-Reply 2 [RFC6830]
LISP Map-Register 3 [RFC6830]
LISP Map-Notify 4 [RFC6830]
LISP Encapsulated Control Message 8 [RFC6830]
LISP Shared Extension Message 15 [RFC8113]
The values in the ranges 5-7 and 9-14 can be assigned via Standards
Action [RFC5226]. Documents that request for a new LISP packet type
may indicate a preferred value in the corresponding IANA sections.
5.2. Sub-Types
IANA has created the "LISP Shared Extension Message Type Sub-types"
registry. No initial values are assigned at the creation of the
registry; (0-4095) are available for future assignments.
The values in the range 0-1023 are assigned via Standards Action.
This range is provisioned to anticipate, in particular, the
exhaustion of the LISP Packet types.
The values in the range 1024-4095 are assigned on a First Come, First
Served (FCFS) basis. The registration procedure should provide IANA
with the desired codepoint and a point of contact; providing a short
description (together with an acronym, if relevant) of the foreseen
usage of the extension message is also encouraged.
6. References
6.1. Normative References
[RFC2119] Bradner, S., "Key words for use in RFCs to Indicate
Requirement Levels", BCP 14, RFC 2119,
DOI 10.17487/RFC2119, March 1997,
<http://www.rfc-editor.org/info/rfc2119>.
[RFC5226] Narten, T. and H. Alvestrand, "Guidelines for Writing an
IANA Considerations Section in RFCs", BCP 26, RFC 5226,
DOI 10.17487/RFC5226, May 2008,
<http://www.rfc-editor.org/info/rfc5226>.
[RFC6830] Farinacci, D., Fuller, V., Meyer, D., and D. Lewis, "The
Locator/ID Separation Protocol (LISP)", RFC 6830,
DOI 10.17487/RFC6830, January 2013,
<http://www.rfc-editor.org/info/rfc6830>.
6.2. Informative References
[LISP-BULK]
Boucadair, M. and C. Jacquenet, "LISP Mapping Bulk
Retrieval", Work in Progress,
draft-boucadair-lisp-bulk-04, February 2017.
[LISP-DDT] Fuller, V., Lewis, D., Ermagan, V., Jain, A., and A.
Smirnov, "LISP Delegated Database Tree", Work in
Progress, draft-ietf-lisp-ddt-09, January 2017.
[LISP-MN-EXT]
Wang, J., Meng, Y., and N. Zhao, "LISP Mobile Node
extension", Work in Progress,
draft-zhao-lisp-mn-extension-02, October 2011.
[LISP-SUBSCRIBE]
Boucadair, M. and C. Jacquenet, "LISP Subscription", Work
in Progress, draft-boucadair-lisp-subscribe-04, February
2017.
[NAT-LISP] Ermagan, V., Farinacci, D., Lewis, D., Skriver, J., Maino,
F., and C. White, "NAT traversal for LISP", Work in
Progress, draft-ermagan-lisp-nat-traversal-11, August
2016.
Acknowledgments
This work is partly funded by ANR LISP-Lab project #ANR-13-INFR-
009-X.
Many thanks to Luigi Iannone, Dino Farinacci, and Alvaro Retana for
the review.
Thanks to Geoff Huston for the RtgDir directorate review.
Authors' Addresses
Mohamed Boucadair
Orange
Rennes 35000
France
Email: mohamed.boucadair@orange.com
Christian Jacquenet
Orange
Rennes 35000
France
Email: christian.jacquenet@orange.com
AI ELI5
On this page
§1Problem and Solution
The Locator/ID Separation Protocol (LISP), defined in RFC 6830, uses packet type codes (0-15) to identify different message types. The base protocol reserves codes for Map-Request, Map-Reply, Map-Register, Map-Notify, and Encapsulated Control Messages. This leaves limited space for extensions.
Several LISP extensions have been proposed (LISP-DDT, LISP-MN-EXT, LISP-BULK, NAT-LISP, LISP-SUBSCRIBE), and more are expected. Rather than allocate one type code for each extension (which would exhaust the 16-code space), this RFC designates one message type as a shared extension type and introduces sub-types to distinguish between extensions.
LISP messages come in different types, numbered 0-15. But there are many new ideas for LISP features, and you can't have more than 16 types. The solution: use type 15 for 'new experiments,' and put a sticker on each one to say which experiment.
§2The Shared Extension Message Format
The LISP shared extension message uses type code 15. The message begins with a standard 32-bit header field: the Type (4 bits) set to 15, a Sub-type field (12 bits), followed by extension-specific data that the extension specification defines.
The Sub-type field is a 12-bit unique identifier that MUST be registered with IANA. This allows up to 4096 (0-4095) different sub-types, far exceeding the original packet type space. The exact structure of the extension-specific data portion is defined in each extension's specification document.
The header has two parts: a 4-bit type field set to 15 (meaning 'shared extension'), and a 12-bit sub-type field that identifies which extension it is. After that comes the extension's own data format.
§3IANA Registry for Packet Types and Sub-Types
This RFC creates a new IANA registry called 'LISP Packet Types' that formally lists packet type codes 0-15 and their assignments. The registry documents the original LISP message types (Map-Request, Map-Reply, Map-Register, Map-Notify, Encapsulated Control Message) and reserves type 15 for the shared extension.
For the shared extension type 15, a separate sub-registry was created: 'LISP Shared Extension Message Type Sub-types'. Sub-type values 0-1023 are assigned via Standards Action (requiring a Standards Track document), while values 1024-4095 are assigned via First Come, First Served (FCFS) basis. FCFS registrations require a point of contact and optionally a description of the extension's purpose.
The range values 5-7 and 9-14 in the main packet type registry remain available for future packet type allocations via Standards Action.
IANA now keeps a registry listing all LISP packet types. For the new shared extension type, sub-types 0-1023 require formal standards approval, while 1024-4095 can be registered quickly on a first-come basis.
§4Security and Status
This RFC is experimental and does not introduce security issues beyond those already present in RFC 6830. The shared extension message mechanism itself is neutral; security depends on how each extension uses the shared type.
Since this is an Experimental protocol, implementations should carefully validate sub-type fields and follow the specifications of the extension they are implementing. The centralized IANA registry helps prevent accidental duplication of sub-type codes.
This RFC itself is just a mailbox management system. Security depends on what goes inside each envelope (extension). The registry prevents two extensions from using the same sub-type number by accident.