Geneve: Generic Network Virtualization Encapsulation
RFC 8926
Document | Type | RFC - Proposed Standard (November 2020; No errata) | |
---|---|---|---|
Authors | Jesse Gross , Ilango Ganga , T. Sridhar | ||
Last updated | 2020-11-06 | ||
Replaces | draft-gross-geneve | ||
Stream | Internent Engineering Task Force (IETF) | ||
Formats | plain text html xml pdf htmlized (tools) htmlized bibtex | ||
Reviews | |||
Stream | WG state | Submitted to IESG for Publication | |
Document shepherd | Matthew Bocci | ||
Shepherd write-up | Show (last changed 2019-04-10) | ||
IESG | IESG state | RFC 8926 (Proposed Standard) | |
Action Holders |
(None)
|
||
Consensus Boilerplate | Yes | ||
Telechat date | |||
Responsible AD | Martin Vigoureux | ||
Send notices to | Matthew Bocci <matthew.bocci@nokia.com> | ||
IANA | IANA review state | Version Changed - Review Needed | |
IANA action state | RFC-Ed-Ack |
Internet Engineering Task Force (IETF) J. Gross, Ed. Request for Comments: 8926 Category: Standards Track I. Ganga, Ed. ISSN: 2070-1721 Intel T. Sridhar, Ed. VMware November 2020 Geneve: Generic Network Virtualization Encapsulation Abstract Network virtualization involves the cooperation of devices with a wide variety of capabilities such as software and hardware tunnel endpoints, transit fabrics, and centralized control clusters. As a result of their role in tying together different elements of the system, the requirements on tunnels are influenced by all of these components. Therefore, flexibility is the most important aspect of a tunneling protocol if it is to keep pace with the evolution of technology. This document describes Geneve, an encapsulation protocol designed to recognize and accommodate these changing capabilities and needs. Status of This Memo This is an Internet Standards Track document. 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). Further information on Internet Standards is available in 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 https://www.rfc-editor.org/info/rfc8926. Copyright Notice Copyright (c) 2020 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 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 1.1. Requirements Language 1.2. Terminology 2. Design Requirements 2.1. Control Plane Independence 2.2. Data Plane Extensibility 2.2.1. Efficient Implementation 2.3. Use of Standard IP Fabrics 3. Geneve Encapsulation Details 3.1. Geneve Packet Format over IPv4 3.2. Geneve Packet Format over IPv6 3.3. UDP Header 3.4. Tunnel Header Fields 3.5. Tunnel Options 3.5.1. Options Processing 4. Implementation and Deployment Considerations 4.1. Applicability Statement 4.2. Congestion-Control Functionality 4.3. UDP Checksum 4.3.1. Zero UDP Checksum Handling with IPv6 4.4. Encapsulation of Geneve in IP 4.4.1. IP Fragmentation 4.4.2. DSCP, ECN, and TTL 4.4.3. Broadcast and Multicast 4.4.4. Unidirectional Tunnels 4.5. Constraints on Protocol Features 4.5.1. Constraints on Options 4.6. NIC Offloads 4.7. Inner VLAN Handling 5. Transition Considerations 6. Security Considerations 6.1. Data Confidentiality 6.1.1. Inter-Data Center Traffic 6.2. Data Integrity 6.3. Authentication of NVE Peers 6.4. Options Interpretation by Transit Devices 6.5. Multicast/Broadcast 6.6. Control Plane Communications 7. IANA Considerations 8. References 8.1. Normative References 8.2. Informative References Acknowledgements Contributors Authors' Addresses 1. Introduction Networking has long featured a variety of tunneling, tagging, and other encapsulation mechanisms. However, the advent of network virtualization has caused a surge of renewed interest and a corresponding increase in the introduction of new protocols. The large number of protocols in this space -- for example, ranging all the way from VLANs [IEEE.802.1Q_2018] and MPLS [RFC3031] through the more recent VXLAN (Virtual eXtensible Local Area Network) [RFC7348] and NVGRE (Network Virtualization Using Generic Routing Encapsulation) [RFC7637] -- often leads to questions about the need for new encapsulation formats and what it is about network virtualization in particular that leads to their proliferation. Note that the list of protocols presented above is non-exhaustive. While many encapsulation protocols seek to simply partition the underlay network or bridge two domains, network virtualization viewsShow full document text