RFC 9305
Locator/ID Separation Protocol (LISP) Generic Protocol Extension
RFC 9305 Part 1 of 3: LISP Generic Protocol Extension π
Okay bestie, this is RFC 9305, and it's giving protocol extension glow-up β¨. It's from the IETF, published by F. Maino (Ed.), J. Lemon, P. Agarwal, D. Lewis, and M. Smith, with Maino, Lemon, Lewis, and Smith all from Cisco and Agarwal from Innovium. The category is Standards Track, the date is October 2022, and it's an ISSN 2070-1721 document. It doesn't obsolete or update anything, so it's a fresh start πΈ.
The title is Locator/ID Separation Protocol (LISP) Generic Protocol Extension. Its whole deal is that it tweaks the LISP data plane header so it can carry multiple protocols inside, not just IP. Think of it as giving LISP a tiny little upgrade so it can finally bring more friends to the party π.
Status of This Memo π
This is an Internet Standards Track document, so it's officially a real, approved spec π. It's a product of the IETF and represents the consensus of the IETF community. It got public review and was approved for publication by the IESG. If you want more on Internet Standards, check Section 2 of RFC 7841. For the current status, errata, or to give feedback, go to https://www.rfc-editor.org/info/rfc9305.
Copyright Notice π¦
Copyright (c) 2022 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 (https://trustee.ietf.org/license-info) in effect on the date of publication. Please review those carefully, because they spell out your rights and restrictions. Code Components extracted from this document must include Revised BSD License text as described in Section 4.e of the Trust Legal Provisions, and they're provided without warranty as described in the Revised BSD License π«Ά.
Table of Contents π§
1. Introduction
1.1. Conventions
1.2. Definitions of Terms
2. LISP Header without Protocol Extensions
3. LISP Generic Protocol Extension (LISP-GPE)
4. Implementation and Deployment Considerations
4.1. Applicability Statement
4.2. Congestion-Control Functionality
4.3. UDP Checksum
4.3.1. UDP Zero Checksum Handling with IPv6
4.4. DSCP, ECN, TTL, and 802.1Q
5. Backward Compatibility
5.1. Detection of ETR Capabilities
6. IANA Considerations
6.1. LISP-GPE Next Protocol Registry
7. Security Considerations
8. References
8.1. Normative References
8.2. Informative References
Acknowledgments
Contributors
Authors' Addresses
1. Introduction π
The LISP data plane is defined in [RFC9300]. It specifies an encapsulation format that carries IPv4 or IPv6 packets (henceforth jointly referred to as IP) in a LISP header and outer UDP/IP transport.
Here's the tea β. The LISP data plane header doesn't say which protocol is being encapsulated, so it's currently limited to carrying only IP packet payloads. Meanwhile, other protocols like the Virtual eXtensible Local Area Network (VXLAN) protocol [RFC7348], which has a header format similar to LISP's, are used to encapsulate Layer 2 (L2) protocols such as Ethernet π .
This document defines an extension for the LISP header, as defined in [RFC9300], that indicates the inner protocol. That means it can encapsulate Ethernet, IP, or any other protocol you want, all while keeping compatibility with existing LISP deployments π¦.
A flag in the LISP header, the P-bit, signals the presence of the 8-bit 'Next Protocol' field. When it's there, the 'Next Protocol' field uses 8 bits that were originally allocated to the Echo-Noncing and Map-Versioning features in [RFC9300]. Those two features are no longer available when the P-bit is used. The good news is that appropriate LISP Generic Protocol Extension (LISP-GPE) shim headers can be defined to provide capabilities equivalent to Echo-Noncing and/or Map-Versioning π₯.
Also, since all of the reserved bits of the LISP data plane header have already been allocated, LISP-GPE can extend the header by defining Next Protocol shim headers that add new data plane functions the LISP header doesn't support. For example, the Group-Based Policy (GBP) header [VXLAN-LISP] or the In situ Operations, Administration, and Maintenance (IOAM) header [VXLAN-GPE] used with LISP-GPE can be considered extensions that add GBP functionality or IOAM metadata to the data plane π§.
1.1. Conventions π
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] when, and only when, they appear in all capitals, as shown here.
1.2. Definitions of Terms β¨
This document uses terms already defined in [RFC9300].
2. LISP Header without Protocol Extensions π
As described in Section 1, the LISP header has no protocol identifier that indicates the type of payload being carried. Because of this, LISP is limited to carrying IP payloads.
The LISP header [RFC9300] contains a series of flags (some defined, some reserved), a 'Nonce/Map-Version' field, and an 'Instance ID/Locator-Status-Bits' field. The flags give flexibility in how the various fields are encoded. Notably, Flag bit 5 is the last reserved bit in the LISP header π.
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
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|N|L|E|V|I|R|K|K| Nonce/Map-Version |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Instance ID/Locator-Status-Bits |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
Figure 1: LISP Header
3. LISP Generic Protocol Extension (LISP-GPE) π
This document defines two changes to the LISP header to support multiprotocol encapsulation: the introduction of the P-bit and the definition of a 'Next Protocol' field. The protocol behaviour is specified for when the P-bit is set to 1. No changes are introduced when the P-bit is set to 0. The LISP-GPE header is shown in Figure 2 and described below π¦.
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
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|N|L|E|V|I|P|K|K| Nonce/Map-Version/Next Protocol |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Instance ID/Locator-Status-Bits |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
Figure 2: LISP-GPE Header
P-Bit: Flag bit 5 is defined as the Next Protocol bit. The P-bit is set to 1 to indicate the presence of the 8-bit 'Next Protocol' field.
If the P-bit is clear (0), the LISP header is bit-by-bit equivalent to the definition in [RFC9300].
When the P-bit is set to 1, bits N, E, and V, and bits 8-23 of the 'Nonce/Map-Version/Next Protocol' field MUST be set to zero on transmission and MUST be ignored on receipt. Features equivalent to those implemented with bits N, E, and V in [RFC9300], such as Echo-Noncing and Map-Versioning, can be implemented by defining appropriate LISP-GPE shim headers πΈ.
When the P-bit is set to 1, the LISP-GPE header is encoded as:
0 x 0 0 x 1 x x
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|N|L|E|V|I|P|K|K| 0x0000 | Next Protocol |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Instance ID/Locator-Status-Bits |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
Figure 3: LISP-GPE with P-bit Set to 1
Next Protocol: When the P-bit is set to 1, the lower 8 bits of the first 32-bit word carry a Next Protocol. This 'Next Protocol' field contains the protocol of the encapsulated payload packet π.
This document defines the following Next Protocol values:
0x00: Reserved
0x01: IPv4
0x02: IPv6
0x03: Ethernet
0x04: Network Service Header (NSH) [RFC8300]
0x05 to 0x7D: Unassigned
0x7E and 0x7F: Experimentation and testing
0x80 to 0xFD: Unassigned (shim headers)
0xFE, 0xFF: Experimentation and testing (shim headers)
The values are tracked in the IANA "LISP-GPE Next Protocol" registry, as described in Section 6.1 π§Ύ.
Next Protocol values 0x7E, 0x7F, 0xFE, and 0xFF are assigned for experimentation and testing, as per [RFC3692].
Next Protocol values from 0x80 to 0xFD are assigned to protocols encoded as generic shim headers. All shim protocols MUST use the header structure in Figure 4, which includes a 'Next Protocol' field. When shim headers are used with other protocols identified by Next Protocol values from 0x00 to 0x7F, all the shim headers MUST come first π₯.
Shim headers can be used to incrementally deploy new GPE features. This keeps the processing of shim headers known to a given Tunnel Router (xTR) implementation in the 'fast' path (typically an Application-Specific Integrated Circuit (ASIC)), while punting the processing of the remaining new GPE features to the 'slow' path π§.
Shim protocols MUST have the first 32 bits defined as:
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 | Length | Reserved | Next Protocol |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| |
~ Protocol-Specific Fields ~
| |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
Figure 4: Shim Header
Where:
Type: This field identifies the different messages of this protocol.
Length: This field indicates the length, in 4-octet units, of this protocol message, not including the first 4 octets.
Reserved: The use of this field is reserved to the protocol defined in this message.
Next Protocol: This field contains the protocol of the encapsulated payload. The values are tracked in the IANA "LISP-GPE Next Protocol" registry, as described in Section 6.1.
4. Implementation and Deployment Considerations π·
Part 1 of 3 wraps here, bestie. Part 2 picks up with Section 4 and keeps the vibes going π.
4.1. Applicability Statement
okay so LISP-GPE is a UDP-based encapsulation protocol, which means it follows the UDP usage guidelines in [RFC8085] π how well those guidelines apply depends on the underlay IP network and what kind of payload is getting wrapped up inside π
[RFC8085] talks about two scenarios for UDP apps: 1) the general Internet and 2) a controlled environment πΈ a controlled environment is a single administrative domain or a bunch of cooperating domains next to each other. in a controlled environment the network can be managed so it behaves a certain way, which you literally cannot do on the general Internet π¦ so the requirements for a tunnel protocol in a controlled environment can be less strict than the ones for the general Internet. iconic, right? π
the LISP-GPE scope is the exact same set of use cases that [RFC9300] covers for the LISP data plane protocol β¨ the shared vibe is a big group of cooperating entities that want to talk over the public Internet or other large underlay IP infrastructure, while keeping their own addressing and topology separate from the underlay's topology, routing, and addressing π§
LISP-GPE is meant to be deployed in network environments run by a single operator, or by a group of cooperating operators next to each other, as long as they fit the definition of controlled environments in [RFC8085] π«Ά
For this document, a Traffic-Managed Controlled Environment (TMCE), which is outlined in [RFC8086], is an IP network that is traffic-engineered and/or otherwise managed (for example, with traffic rate limiters) to avoid congestion π a lot of the wording in this section is based on [RFC8086], so credit where it's due π
and ngl this part is so important: it is the responsibility of the network operators to make sure the guidelines and requirements in this section are followed, as they apply to their LISP-GPE deployments π₯
4.2. Congestion-Control Functionality
LISP-GPE does not provide congestion-control functionality π it relies on the payload protocol's traffic for congestion control instead π which means LISP-GPE MUST be used with congestion-controlled traffic, or within a network that is traffic managed to avoid congestion (TMCE) β¨ an operator of a traffic-managed network (TMCE) can avoid congestion by carefully provisioning their networks, rate limiting user data traffic, and doing traffic engineering according to path capacity π
keeping that recommendation in mind, new encapsulated payloads that get registered with LISP-GPE MUST be accompanied by a set of guidelines derived from Section 5 of [RFC9300] π these new protocols should be designed so that explicit congestion signals propagate consistently from lower-layer protocols up into IP π¦ then the IP internetwork layer can act as a portability layer, carrying congestion notifications from non-IP-aware congested nodes up to the transport layer (L4) π§ by following the guidelines in [ENCAP-GUIDE], subnetwork designers can let a Layer 2 protocol take part in congestion control without dropping packets, by propagating Explicit Congestion Notification (ECN) data [RFC3168] to receivers π«Ά
4.3. UDP Checksum
for IP payloads, Section 5.3 of [RFC9300] lays out how to handle UDP checksums, and it encourages implementors to think about the UDP checksum usage guidelines in Section 3.4 of [RFC8085] when they want to protect UDP and LISP headers against corruption πΈ
so to protect the integrity of LISP-GPE headers, options, and payloads (for example, to avoid misdelivering payloads to different tenant systems when data gets corrupted) π, the outer UDP checksum SHOULD be used with LISP-GPE when it's transported over IPv4 π the UDP checksum gives a statistical guarantee that a payload wasn't corrupted in transit π these integrity checks are not strong from a coding or cryptographic point of view, and they're not designed to detect physical-layer errors or malicious changes to the datagram (see Section 3.4 of [RFC8085]) π in deployments where that risk exists, an operator SHOULD use additional data integrity mechanisms, like the ones IPsec offers π₯
an operator MAY choose to disable the UDP checksum and use a zero checksum if LISP-GPE packet integrity is covered by other data integrity mechanisms (such as IPsec or additional checksums), or if one of the conditions in Section 4.3.1 (a, b, or c) is met π¦
4.3.1. UDP Zero Checksum Handling with IPv6
by default, a UDP checksum MUST be used when LISP-GPE is transported over IPv6 π a tunnel endpoint MAY be configured to use a zero UDP checksum if the additional requirements in this section are met π
when LISP-GPE is used over IPv6, the UDP checksum protects IPv6 headers, UDP headers, and LISP-GPE headers and payloads from potential data corruption β¨ so, by default, LISP-GPE MUST use a UDP checksum when transported over IPv6 π an operator MAY choose to configure a zero UDP checksum if they're operating in a traffic-managed controlled environment, as stated in Section 4.1, and one of the following conditions is met:
a. It is known that packet corruption is exceptionally unlikely (perhaps based on an operator's knowledge of equipment types in their underlay network), and the operator is willing to take the risk of undetected packet corruption. π§
b. It is determined through observational measurements (perhaps through historic or current traffic flows that use a non-zero checksum) that the level of packet corruption is tolerably low, and the operator is willing to take the risk of undetected corruption. π
c. LISP-GPE payloads are carrying applications that are tolerant of misdelivered or corrupted packets (perhaps through higher-layer checksum validation and/or reliability through retransmission). π«Ά
also, LISP-GPE tunnel implementations that use a zero UDP checksum MUST meet the following requirements π₯
- Use of a UDP checksum over IPv6 MUST be the default configuration for all LISP-GPE tunnels. π
- If LISP-GPE is used with a zero UDP checksum over IPv6, then such xTR implementations MUST meet all the requirements specified in Section 4 of [RFC6936] and requirement 1 specified in Section 5 of [RFC6936]. π¦
- The Egress Tunnel Router (ETR) that decapsulates the packet SHOULD check that the source and destination IPv6 addresses are valid for the LISP-GPE tunnel that is configured to receive a zero UDP checksum, and discard other packets that fail such checks. πΈ
- The Ingress Tunnel Router (ITR) that encapsulates the packet MAY use different IPv6 source addresses for each LISP-GPE tunnel that uses zero UDP checksum mode, in order to strengthen the decapsulator's check of the IPv6 source address (i.e., the same IPv6 source address is not to be used with more than one IPv6 destination address, irrespective of whether that destination address is a unicast or multicast address). When this is not possible, it is RECOMMENDED to use each source address for as few LISP-GPE tunnels that use a zero UDP checksum as is feasible. π§
- Measures SHOULD be taken to prevent LISP-GPE traffic over IPv6 with a zero UDP checksum from escaping into the general Internet. Examples of such measures include employing packet filters at the Proxy Egress Tunnel Router (PETR) and/or keeping logical or physical separation of the LISP network from networks in the general Internet. π₯
the above requirements do not change the requirements specified in [RFC6935], [RFC6936], or [RFC8200] π
the requirement to check the source IPv6 address as well as the destination IPv6 address, plus the recommendation against reusing source IPv6 addresses among LISP-GPE tunnels, together give some mitigation for the fact that the UDP checksum doesn't cover the IPv6 header π a traffic-managed controlled environment that satisfies at least one of the three conditions listed at the beginning of this section gets even more assurance π
4.4. DSCP, ECN, TTL, and 802.1Q
when encapsulating IP packets (including over Ethernet), [RFC2983] gives guidance on mapping packets that carry Differentiated Services Code Point (DSCP) information between inner and outer IP headers π the Pipe model usually fits network virtualization better π¦ the DSCP value on the tunnel header is set based on a policy (which may be a fixed value, one based on the inner traffic class, or some other mechanism for grouping traffic) π some aspects of the Uniform model (which treats the inner and outer DSCP value as a single field by copying on ingress and egress) may also apply, such as the ability to remark the inner header on tunnel egress based on transit marking πΈ however, the Uniform model is not conceptually consistent with network virtualization, which seeks to provide strong isolation between encapsulated traffic and the physical network π
[RFC6040] describes the mechanism for exposing ECN capabilities on IP tunnels and propagating congestion markers to the inner packets π«Ά this behavior MUST be followed for IP packets encapsulated in LISP-GPE π
the Uniform model or the Pipe model could both be used for TTL (or Hop Limit in the case of IPv6) handling when tunneling IP packets π§ but the Pipe model is more aligned with network virtualization β¨ [RFC2003] gives guidance on handling TTL between inner IP headers and outer IP tunnels, and that model is more aligned with the Pipe model, so it is recommended for use with LISP-GPE for network-virtualization applications π
when a LISP-GPE router performs Ethernet encapsulation, the inner 802.1Q 3-bit Priority Code Point ('PCP') field [IEEE.802.1Q_2014] MAY be mapped from the encapsulated frame to the DSCP codepoint of the Differentiated Services ('DS') field defined in [RFC2474] π
and when a LISP-GPE router performs Ethernet encapsulation, the inner-header 802.1Q VLAN Identifier (VID) [IEEE.802.1Q_2014] MAY be mapped to, or used to determine, the LISP 'Instance ID' (IID) field π¦
refer to Section 7 for considerations about using integrity protection in deployments, such as the public Internet, that are concerned with on-path attackers π₯
5. Backward Compatibility
LISP-GPE uses the same UDP destination port (4341) that was allocated to LISP π
when encapsulating IP packets to a non-LISP-GPE-capable router, the P-bit MUST be set to 0 π
that means the encapsulation format defined in this document MUST NOT be sent to a router that hasn't indicated it supports this specification π because such a router would ignore the P-bit (as described in [RFC9300]) and would misinterpret the other LISP header fields, possibly causing significant errors π
5.1. Detection of ETR Capabilities
discovering xTR capabilities to support LISP-GPE is out of the scope of this document π since the applicability domain of LISP-GPE is a traffic-managed controlled environment, ITR/ETR (xTR) configuration mechanisms may be used for this purpose β¨
6. IANA Considerations
6.1. LISP-GPE Next Protocol Registry β¨
okay so bestie, IANA made a registry called "LISP-GPE Next Protocol" π and the values are 8-bit numbers π . The values in the table below are defined right here in this document, which is so iconic π¦. New values get handed out under the Specification Required policy [RFC8126] π. The protocols getting values do NOT have to be IETF Standards Track protocols, so it's giving very open-door energy πͺπ.
+===============+=============================+===========+
| Next Protocol | Description | Reference |
+===============+=============================+===========+
| 0x00 | Reserved | RFC 9305 |
+---------------+-----------------------------+-----------+
| 0x01 | IPv4 | RFC 9305 |
+---------------+-----------------------------+-----------+
| 0x02 | IPv6 | RFC 9305 |
+---------------+-----------------------------+-----------+
| 0x03 | Ethernet | RFC 9305 |
+---------------+-----------------------------+-----------+
| 0x04 | NSH | RFC 9305 |
+---------------+-----------------------------+-----------+
| 0x05-0x7D | Unassigned | |
+---------------+-----------------------------+-----------+
| 0x7E-0x7F | Experimentation and testing | RFC 9305 |
+---------------+-----------------------------+-----------+
| 0x80-0xFD | Unassigned (shim headers) | |
+---------------+-----------------------------+-----------+
| 0xFE-0xFF | Experimentation and testing | RFC 9305 |
| | (shim headers) | |
+---------------+-----------------------------+-----------+
Table 1 π
7. Security Considerations π
okay the security part is SERIOUS bestie ππ. LISP-GPE security considerations are pretty similar to the LISP security considerations and mitigation techniques documented in [RFC7835] π΅οΈββοΈ.
As is the case for many encapsulations that use optional extensions, LISP-GPE is subject to on-path adversaries ππΏ. These baddies can make arbitrary modifications to the packet (including the P-bit) π, changing or removing any part of the payload, or claiming to encapsulate any protocol payload type π¨. Typical integrity protection mechanisms (such as IPsec) SHOULD be used in combination with LISP-GPE by those protocol extensions that want to protect against on-path attackers π‘οΈπ.
With LISP-GPE, issues such as data plane spoofing, flooding, and traffic redirection may depend on the particular protocol payload encapsulated ππ«£.
8. References π
8.1. Normative References π
- [IEEE.802.1Q_2014]: IEEE, "IEEE Standard for Local and metropolitan area networks--Bridges and Bridged Networks", IEEE Std 802.1Q-2014, December 2014, <https://ieeexplore.ieee.org/document/6991462>.
- [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>.
- [RFC6040]: Briscoe, B., "Tunnelling of Explicit Congestion Notification", RFC 6040, DOI 10.17487/RFC6040, November 2010, <https://www.rfc-editor.org/info/rfc6040>.
- [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>.
- [RFC9300]: Farinacci, D., Fuller, V., Meyer, D., Lewis, D., and A. Cabellos, Ed., "The Locator/ID Separation Protocol (LISP)", RFC 9300, DOI 10.17487/RFC9300, October 2022, <https://www.rfc-editor.org/info/rfc9300>.
8.2. Informative References π¦
- [ENCAP-GUIDE]: Briscoe, B. and J. Kaippallimalil, "Guidelines for Adding Congestion Notification to Protocols that Encapsulate IP", Work in Progress, Internet-Draft, draft-ietf-tsvwg-ecn-encap-guidelines-17, 11 July 2022, <https://datatracker.ietf.org/doc/html/draft-ietf-tsvwg-ecn-encap-guidelines-17>.
- [RFC2003]: Perkins, C., "IP Encapsulation within IP", RFC 2003, DOI 10.17487/RFC2003, October 1996, <https://www.rfc-editor.org/info/rfc2003>.
- [RFC2474]: Nichols, K., Blake, S., Baker, F., and D. Black, "Definition of the Differentiated Services Field (DS Field) in the IPv4 and IPv6 Headers", RFC 2474, DOI 10.17487/RFC2474, December 1998, <https://www.rfc-editor.org/info/rfc2474>.
- [RFC2983]: Black, D., "Differentiated Services and Tunnels", RFC 2983, DOI 10.17487/RFC2983, October 2000, <https://www.rfc-editor.org/info/rfc2983>.
- [RFC3168]: Ramakrishnan, K., Floyd, S., and D. Black, "The Addition of Explicit Congestion Notification (ECN) to IP", RFC 3168, DOI 10.17487/RFC3168, September 2001, <https://www.rfc-editor.org/info/rfc3168>.
- [RFC3692]: Narten, T., "Assigning Experimental and Testing Numbers Considered Useful", BCP 82, RFC 3692, DOI 10.17487/RFC3692, January 2004, <https://www.rfc-editor.org/info/rfc3692>.
- [RFC6935]: Eubanks, M., Chimento, P., and M. Westerlund, "IPv6 and UDP Checksums for Tunneled Packets", RFC 6935, DOI 10.17487/RFC6935, April 2013, <https://www.rfc-editor.org/info/rfc6935>.
- [RFC6936]: Fairhurst, G. and M. Westerlund, "Applicability Statement for the Use of IPv6 UDP Datagrams with Zero Checksums", RFC 6936, DOI 10.17487/RFC6936, April 2013, <https://www.rfc-editor.org/info/rfc6936>.
- [RFC7348]: Mahalingam, M., Dutt, D., Duda, K., Agarwal, P., Kreeger, L., Sridhar, T., Bursell, M., and C. Wright, "Virtual eXtensible Local Area Network (VXLAN): A Framework for Overlaying Virtualized Layer 2 Networks over Layer 3 Networks", RFC 7348, DOI 10.17487/RFC7348, August 2014, <https://www.rfc-editor.org/info/rfc7348>.
- [RFC7835]: Saucez, D., Iannone, L., and O. Bonaventure, "Locator/ID Separation Protocol (LISP) Threat Analysis", RFC 7835, DOI 10.17487/RFC7835, April 2016, <https://www.rfc-editor.org/info/rfc7835>.
- [RFC8085]: Eggert, L., Fairhurst, G., and G. Shepherd, "UDP Usage Guidelines", BCP 145, RFC 8085, DOI 10.17487/RFC8085, March 2017, <https://www.rfc-editor.org/info/rfc8085>.
- [RFC8086]: Yong, L., Ed., Crabbe, E., Xu, X., and T. Herbert, "GRE-in-UDP Encapsulation", RFC 8086, DOI 10.17487/RFC8086, March 2017, <https://www.rfc-editor.org/info/rfc8086>.
- [RFC8126]: Cotton, M., Leiba, B., and T. Narten, "Guidelines for Writing an IANA Considerations Section in RFCs", BCP 26, RFC 8126, DOI 10.17487/RFC8126, June 2017, <https://www.rfc-editor.org/info/rfc8126>.
- [RFC8200]: Deering, S. and R. Hinden, "Internet Protocol, Version 6 (IPv6) Specification", STD 86, RFC 8200, DOI 10.17487/RFC8200, July 2017, <https://www.rfc-editor.org/info/rfc8200>.
- [RFC8300]: Quinn, P., Ed., Elzur, U., Ed., and C. Pignataro, Ed., "Network Service Header (NSH)", RFC 8300, DOI 10.17487/RFC8300, January 2018, <https://www.rfc-editor.org/info/rfc8300>.
- [VXLAN-GPE]: Brockners, F., Bhandari, S., Govindan, V., Pignataro, C., Gredler, H., Leddy, J., Youell, S., Mizrahi, T., Kfir, A., Gafni, B., Lapukhov, P., and M. Spiegel, "VXLAN-GPE Encapsulation for In-situ OAM Data", Work in Progress, Internet-Draft, draft-brockners-ippm-ioam-vxlan-gpe-03, 4 November 2019, <https://datatracker.ietf.org/doc/html/draft-brockners-ippm-ioam-vxlan-gpe-03>.
- [VXLAN-LISP]: Lemon, J., Ed., Maino, F., Smith, M., and A. Isaac, "Group Policy Encoding with VXLAN-GPE and LISP-GPE", Work in Progress, Internet-Draft, draft-lemon-vxlan-lisp-gpe-gbp-02, 30 April 2019, <https://datatracker.ietf.org/doc/html/draft-lemon-vxlan-lisp-gpe-gbp-02>.
Acknowledgments π«Ά
a special thank you goes to Dino Farinacci for his guidance and detailed review π. Thanks to Tom Herbert for the suggestion to assign codepoints for experimentations and testing π§.
Contributors πΈ
the editor of this document would like to thank and recognize the following coauthors and contributors for their contributions π. These coauthors and contributors provided invaluable concepts and content for this document's creation β¨.
- Darrel Lewis, Cisco Systems, Inc.
- Fabio Maino, Cisco Systems, Inc.
- Paul Quinn, Cisco Systems, Inc.
- Michael Smith, Cisco Systems, Inc.
- Navindra Yadav, Cisco Systems, Inc.
- Larry Kreeger
- Jennifer Lemon, Broadcom
- Puneet Agarwal, Innovium
Authors' Addresses π
- Fabio Maino (editor), Cisco Systems, San Jose, CA, United States of America, Email: fmaino@cisco.com
- Jennifer Lemon, Email: jalemon@meus.us
- Puneet Agarwal, Innovium, United States of America, Email: puneet@acm.org
- Darrel Lewis, Cisco Systems, San Jose, CA, United States of America, Email: darlewis@cisco.com
- Michael Smith, Cisco Systems, San Jose, CA 95134, United States of America, Email: michsmit@cisco.com
π¦ where this page comes from
- ietf: rfc9305 2022-10
- π girlified by claude-haiku-5-5 on : a language model's rewrite of the original, under its terms