idnits 2.17.1 draft-ietf-lisp-gpe-03.txt: Checking boilerplate required by RFC 5378 and the IETF Trust (see https://trustee.ietf.org/license-info): ---------------------------------------------------------------------------- No issues found here. Checking nits according to https://www.ietf.org/id-info/1id-guidelines.txt: ---------------------------------------------------------------------------- No issues found here. Checking nits according to https://www.ietf.org/id-info/checklist : ---------------------------------------------------------------------------- No issues found here. Miscellaneous warnings: ---------------------------------------------------------------------------- == The copyright year in the IETF Trust and authors Copyright Line does not match the current year == Using lowercase 'not' together with uppercase 'MUST', 'SHALL', 'SHOULD', or 'RECOMMENDED' is not an accepted usage according to RFC 2119. Please use uppercase 'NOT' together with RFC 2119 keywords (if that is what you mean). Found 'MUST not' in this paragraph: A LISP-GPE router MUST not encapsulate non-IP packets to a non LISP-GPE capable router. -- The document date (April 5, 2018) is 2184 days in the past. Is this intentional? Checking references for intended status: Proposed Standard ---------------------------------------------------------------------------- (See RFCs 3967 and 4897 for information about using normative references to lower-maturity documents in RFCs) == Missing Reference: 'IEEE8021Q' is mentioned on line 241, but not defined == Outdated reference: A later version (-38) exists of draft-ietf-lisp-rfc6830bis-12 ** Obsolete normative reference: RFC 6834 (Obsoleted by RFC 9302) -- Obsolete informational reference (is this intentional?): RFC 5226 (Obsoleted by RFC 8126) Summary: 1 error (**), 0 flaws (~~), 4 warnings (==), 2 comments (--). Run idnits with the --verbose option for more detailed information about the items above. -------------------------------------------------------------------------------- 2 Internet Engineering Task Force F. Maino, Ed. 3 Internet-Draft Cisco 4 Intended status: Standards Track J. Lemon 5 Expires: October 7, 2018 Broadcom 6 P. Agarwal 7 Innovium 8 D. Lewis 9 M. Smith 10 Cisco 11 April 5, 2018 13 LISP Generic Protocol Extension 14 draft-ietf-lisp-gpe-03 16 Abstract 18 This document describes extending the Locator/ID Separation Protocol 19 (LISP) Data-Plane, via changes to the LISP header, to support multi- 20 protocol encapsulation. 22 Status of This Memo 24 This Internet-Draft is submitted in full conformance with the 25 provisions of BCP 78 and BCP 79. 27 Internet-Drafts are working documents of the Internet Engineering 28 Task Force (IETF). Note that other groups may also distribute 29 working documents as Internet-Drafts. The list of current Internet- 30 Drafts is at http://datatracker.ietf.org/drafts/current/. 32 Internet-Drafts are draft documents valid for a maximum of six months 33 and may be updated, replaced, or obsoleted by other documents at any 34 time. It is inappropriate to use Internet-Drafts as reference 35 material or to cite them other than as "work in progress." 37 This Internet-Draft will expire on October 7, 2018. 39 Copyright Notice 41 Copyright (c) 2018 IETF Trust and the persons identified as the 42 document authors. All rights reserved. 44 This document is subject to BCP 78 and the IETF Trust's Legal 45 Provisions Relating to IETF Documents 46 (http://trustee.ietf.org/license-info) in effect on the date of 47 publication of this document. Please review these documents 48 carefully, as they describe your rights and restrictions with respect 49 to this document. Code Components extracted from this document must 50 include Simplified BSD License text as described in Section 4.e of 51 the Trust Legal Provisions and are provided without warranty as 52 described in the Simplified BSD License. 54 Table of Contents 56 1. Introduction . . . . . . . . . . . . . . . . . . . . . . . . 2 57 1.1. Conventions . . . . . . . . . . . . . . . . . . . . . . . 3 58 1.2. Definition of Terms . . . . . . . . . . . . . . . . . . . 3 59 2. LISP Header Without Protocol Extensions . . . . . . . . . . . 3 60 3. Generic Protocol Extension for LISP (LISP-GPE) . . . . . . . 3 61 4. Backward Compatibility . . . . . . . . . . . . . . . . . . . 4 62 4.1. Use of "Multiple Data-Planes" LCAF to Determine ETR 63 Capabilities . . . . . . . . . . . . . . . . . . . . . . 5 64 4.2. Type of Service . . . . . . . . . . . . . . . . . . . . . 6 65 4.3. VLAN Identifier (VID) . . . . . . . . . . . . . . . . . . 6 66 5. IANA Considerations . . . . . . . . . . . . . . . . . . . . . 6 67 6. Security Considerations . . . . . . . . . . . . . . . . . . . 6 68 7. Acknowledgements and Contributors . . . . . . . . . . . . . . 6 69 8. References . . . . . . . . . . . . . . . . . . . . . . . . . 7 70 8.1. Normative References . . . . . . . . . . . . . . . . . . 7 71 8.2. Informative References . . . . . . . . . . . . . . . . . 7 72 Authors' Addresses . . . . . . . . . . . . . . . . . . . . . . . 8 74 1. Introduction 76 LISP Data-Plane, as defined in in [I-D.ietf-lisp-rfc6830bis], defines 77 an encapsulation format that carries IPv4 or IPv6 (henceforth 78 referred to as IP) packets in a LISP header and outer UDP/IP 79 transport. 81 The LISP Data-Plane header does not specify the protocol being 82 encapsulated and therefore is currently limited to encapsulating only 83 IP packet payloads. Other protocols, most notably VXLAN [RFC7348] 84 (which defines a similar header format to LISP), are used to 85 encapsulate L2 protocols such as Ethernet. 87 This document defines an extension for the LISP header, as defined in 88 [I-D.ietf-lisp-rfc6830bis], to indicate the inner protocol, enabling 89 the encapsulation of Ethernet, IP or any other desired protocol all 90 the while ensuring compatibility with existing LISP deployments. 92 A flag in the LISP header, called the P-bit, is used to signal the 93 presence of the 8-bit Next Protocol field. The Next Protocol field, 94 when present, uses 8 bits of the field allocated to the echo-noncing 95 and map-versioning features. The two features are still available, 96 albeit with a reduced length of Nonce and Map-Version. 98 1.1. Conventions 100 The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT", 101 "SHOULD", "SHOULD NOT", "RECOMMENDED", "MAY", and "OPTIONAL" in this 102 document are to be interpreted as described in RFC 2119 [RFC2119]. 104 1.2. Definition of Terms 106 This document uses terms already defined in 107 [I-D.ietf-lisp-rfc6830bis]. 109 2. LISP Header Without Protocol Extensions 111 As described in the introduction, the LISP header has no protocol 112 identifier that indicates the type of payload being carried. Because 113 of this, LISP is limited to carry IP payloads. 115 The LISP header [I-D.ietf-lisp-rfc6830bis] contains a series of flags 116 (some defined, some reserved), a Nonce/Map-version field and an 117 instance ID/Locator-status-bit field. The flags provide flexibility 118 to define how the various fields are encoded. Notably, Flag bit 5 is 119 the last reserved bit in the LISP header. 121 0 1 2 3 122 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 123 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 124 |N|L|E|V|I|R|K|K| Nonce/Map-Version | 125 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 126 | Instance ID/Locator-Status-Bits | 127 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 129 LISP Header 131 3. Generic Protocol Extension for LISP (LISP-GPE) 133 This document defines the following changes to the LISP header in 134 order to support multi-protocol encapsulation: 136 P Bit: Flag bit 5 is defined as the Next Protocol bit. The P bit 137 MUST be set to 1 to indicate the presence of the 8 bit next 138 protocol field. 140 P = 0 indicates that the payload MUST conform to LISP as defined 141 in [I-D.ietf-lisp-rfc6830bis]. Flag bit 5 was chosen as the P bit 142 because this flag bit is currently unallocated. 144 Next Protocol: The lower 8 bits of the first 32-bit word are used to 145 carry a Next Protocol. This Next Protocol field contains the 146 protocol of the encapsulated payload packet. 148 LISP uses the lower 24 bits of the first word for either a nonce, 149 an echo-nonce, or to support map-versioning [RFC6834]. These are 150 all optional capabilities that are indicated in the LISP header by 151 setting the N, E, and the V bit respectively. 153 When the P-bit and the N-bit are set to 1, the Nonce field is the 154 middle 16 bits. 156 When the P-bit and the V-bit are set to 1, the Version field is 157 the middle 16 bits. 159 When the P-bit is set to 1 and the N-bit and the V-bit are both 0, 160 the middle 16-bits are set to 0. 162 This document defines the following Next Protocol values: 164 0x1 : IPv4 166 0x2 : IPv6 168 0x3 : Ethernet 170 0x4 : Network Service Header [RFC8300] 172 0 1 2 3 173 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 174 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 175 |N|L|E|V|I|P|K|K| Nonce/Map-Version | Next Protocol | 176 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 177 | Instance ID/Locator-Status-Bits | 178 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 180 LISP-GPE Header 182 4. Backward Compatibility 184 LISP-GPE uses the same UDP destination port (4341) allocated to LISP. 186 The next Section describes a method to determine the Data-Plane 187 capabilities of a LISP ETR, based on the use of the "Multiple Data- 188 Planes" LCAF type defined in [RFC8060]. Other mechanisms can be 189 used, including static xTR configuration, but are out of the scope of 190 this document. 192 When encapsulating IP packets to a non LISP-GPE capable router the P 193 bit MUST be set to 0. 195 A LISP-GPE router MUST not encapsulate non-IP packets to a non LISP- 196 GPE capable router. 198 4.1. Use of "Multiple Data-Planes" LCAF to Determine ETR Capabilities 200 The LISP Canonical Address Format (LCAF) [RFC8060] defines the 201 "Multiple Data-Planes" LCAF type, that can be included by an ETR in a 202 Map-Reply to encode the encapsularion formats supported by a given 203 RLOC. In this way an ITR can be made aware of the capability to 204 support LISP-GPE on a given RLOC of that ETR. 206 The "Multiple Data-Planes" LCAF type, as defined in [RFC8060], has a 207 Reserved-for-Future-Encapsulations 25-bit field. This document 208 defines the least significant bit of that field as g bit (bit 24 in 209 the third 32-bit word of the LCAF). 211 0 1 2 3 212 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 213 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 214 | AFI = 16387 | Rsvd1 | Flags | 215 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 216 | Type = 16 | Rsvd2 | Length | 217 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 218 | Reserved-for-Future-Encapsulations |g|U|G|N|v|V|l|L| 219 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 220 | AFI = x | Address ... | 221 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 223 Multiple Data-Planes LCAF Type 225 g Bit: The RLOCs listed in the AFI-encoded addresses in the next 226 longword can accept LISP-GPE (Generic Protocol Extension) 227 encapsulation using destination UDP port 4341 229 All other fields: As defined in [RFC8060] 231 4.2. Type of Service 233 When a LISP-GPE router performs Ethernet encapsulation, the inner 234 802.1Q [IEEE8021Q] priority code point (PCP) field MAY be mapped from 235 the encapsulated frame to the Type of Service field in the outer IPv4 236 header, or in the case of IPv6 the 'Traffic Class' field 238 4.3. VLAN Identifier (VID) 240 When a LISP-GPE router performs Ethernet encapsulation, the inner 241 header 802.1Q [IEEE8021Q] VLAN Identifier (VID) MAY be mapped to, or 242 used to determine the LISP Instance ID field. 244 5. IANA Considerations 246 IANA is requested to set up a registry of LISP-GPE "Next Protocol". 247 These are 8-bit values. Next Protocol values in the table below are 248 defined in this document. New values are assigned via Standards 249 Action [RFC5226]. The protocols that are being assigned values do 250 not themselves need to be IETF standards track protocols. 252 +---------------+-------------+---------------+ 253 | Next Protocol | Description | Reference | 254 +---------------+-------------+---------------+ 255 | 0 | Reserved | This Document | 256 | 1 | IPv4 | This Document | 257 | 2 | IPv6 | This Document | 258 | 3 | Ethernet | This Document | 259 | 4 | NSH | This Document | 260 | 5..255 | Unassigned | | 261 +---------------+-------------+---------------+ 263 6. Security Considerations 265 LISP-GPE security considerations are similar to the LISP security 266 considerations and mitigation techniques documented in [RFC7835]. 268 With LISP-GPE, issues such as data-plane spoofing, flooding, and 269 traffic redirection may depend on the particular protocol payload 270 encapsulated. 272 7. Acknowledgements and Contributors 274 A special thank you goes to Dino Farinacci for his guidance and 275 detailed review. 277 This WG document originated as draft-lewis-lisp-gpe; the following 278 are its coauthors and contributors along with their respective 279 affiliations at the time of WG adoption. The editor of this document 280 would like to thank and recognize them and their contributions. 281 These coauthors and contributors provided invaluable concepts and 282 content for this document's creation. 284 o Darrel Lewis, Cisco Systems, Inc. 286 o Fabio Maino, Cisco Systems, Inc. 288 o Paul Quinn, Cisco Systems, Inc. 290 o Michael Smith, Cisco Systems, Inc. 292 o Navindra Yadav, Cisco Systems, Inc. 294 o Larry Kreeger 296 o John Lemon, Broadcom 298 o Puneet Agarwal, Innovium 300 8. References 302 8.1. Normative References 304 [I-D.ietf-lisp-rfc6830bis] 305 Farinacci, D., Fuller, V., Meyer, D., Lewis, D., and A. 306 Cabellos-Aparicio, "The Locator/ID Separation Protocol 307 (LISP)", draft-ietf-lisp-rfc6830bis-12 (work in progress), 308 March 2018. 310 [RFC2119] Bradner, S., "Key words for use in RFCs to Indicate 311 Requirement Levels", BCP 14, RFC 2119, 312 DOI 10.17487/RFC2119, March 1997, . 315 [RFC6834] Iannone, L., Saucez, D., and O. Bonaventure, "Locator/ID 316 Separation Protocol (LISP) Map-Versioning", RFC 6834, 317 DOI 10.17487/RFC6834, January 2013, . 320 8.2. Informative References 322 [RFC5226] Narten, T. and H. Alvestrand, "Guidelines for Writing an 323 IANA Considerations Section in RFCs", RFC 5226, 324 DOI 10.17487/RFC5226, May 2008, . 327 [RFC7348] Mahalingam, M., Dutt, D., Duda, K., Agarwal, P., Kreeger, 328 L., Sridhar, T., Bursell, M., and C. Wright, "Virtual 329 eXtensible Local Area Network (VXLAN): A Framework for 330 Overlaying Virtualized Layer 2 Networks over Layer 3 331 Networks", RFC 7348, DOI 10.17487/RFC7348, August 2014, 332 . 334 [RFC7835] Saucez, D., Iannone, L., and O. Bonaventure, "Locator/ID 335 Separation Protocol (LISP) Threat Analysis", RFC 7835, 336 DOI 10.17487/RFC7835, April 2016, . 339 [RFC8060] Farinacci, D., Meyer, D., and J. Snijders, "LISP Canonical 340 Address Format (LCAF)", RFC 8060, DOI 10.17487/RFC8060, 341 February 2017, . 343 [RFC8300] Quinn, P., Ed., Elzur, U., Ed., and C. Pignataro, Ed., 344 "Network Service Header (NSH)", RFC 8300, 345 DOI 10.17487/RFC8300, January 2018, . 348 Authors' Addresses 350 Fabio Maino (editor) 351 Cisco Systems 352 San Jose, CA 95134 353 USA 355 Email: fmaino@cisco.com 357 John Lemon 358 Broadcom 359 270 Innovation Drive 360 San Jose, CA 95134 361 USA 363 Email: john.lemon@broadcom.com 365 Puneet Agarwal 366 Innovium 367 USA 369 Email: puneet@acm.org 370 Darrel Lewis 371 Cisco Systems 373 Email: darlewis@cisco.com 375 Michael Smith 376 Cisco Systems 378 Email: michsmit@cisco.com