Network Working Group M. Smith Internet-Draft Insieme Networks Intended status: Experimental D. Dutt Expires: January 14, 2013 Cumulus Networks D. Farinacci F. Maino Cisco Systems July 13, 2012 Layer 2 (L2) LISP Encapsulation Format draft-smith-lisp-layer2-01 Abstract This memo describes an encapsulation method for carrying Ethernet and IEEE 802 media access control (MAC) frames within the Locator/ID Separation Protocol (LISP). 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]. Status of this Memo This Internet-Draft is submitted in full conformance with the provisions of BCP 78 and BCP 79. Internet-Drafts are working documents of the Internet Engineering Task Force (IETF). Note that other groups may also distribute working documents as Internet-Drafts. The list of current Internet- Drafts is at http://datatracker.ietf.org/drafts/current/. Internet-Drafts are draft documents valid for a maximum of six months and may be updated, replaced, or obsoleted by other documents at any time. It is inappropriate to use Internet-Drafts as reference material or to cite them other than as "work in progress." This Internet-Draft will expire on January 14, 2013. Copyright Notice Copyright (c) 2012 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 Smith, et al. Expires January 14, 2013 [Page 1] Internet-Draft Layer 2 (L2) LISP Encapsulation Format July 2012 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 . . . . . . . . . . . . . . . . . . . . . . . . . 3 2. Basic Overview . . . . . . . . . . . . . . . . . . . . . . . . 3 3. Layer 2 LISP Encapsulation . . . . . . . . . . . . . . . . . . 3 3.1. VXLAN . . . . . . . . . . . . . . . . . . . . . . . . . . . 4 3.2. L2 LISP . . . . . . . . . . . . . . . . . . . . . . . . . . 5 4. MTU Considerations . . . . . . . . . . . . . . . . . . . . . . 5 5. Overlays for Network Virtualization . . . . . . . . . . . . . . 6 6. LISP Mapping System . . . . . . . . . . . . . . . . . . . . . . 6 7. Security Considerations . . . . . . . . . . . . . . . . . . . . 7 8. IANA Considerations . . . . . . . . . . . . . . . . . . . . . . 7 9. Acknowledgements . . . . . . . . . . . . . . . . . . . . . . . 8 10. References . . . . . . . . . . . . . . . . . . . . . . . . . . 8 10.1. Normative References . . . . . . . . . . . . . . . . . . . 8 10.2. Informative References . . . . . . . . . . . . . . . . . . 8 Authors' Addresses . . . . . . . . . . . . . . . . . . . . . . . . 9 Smith, et al. Expires January 14, 2013 [Page 2] Internet-Draft Layer 2 (L2) LISP Encapsulation Format July 2012 1. Introduction LISP [I-D.ietf-lisp] specifies an architecture and method for separating the location of an endpoint from its network identifier. It does this by using two separate name spaces: EIDs representing the network identifier of the endpoint and RLOCs representing the network location of the endpoint. This document extends the LISP specifications to allow Ethernet/IEEE 802 MAC frames to be carried within the LISP frame. The MAC addresses of the encapsulated Ethernet/IEEE 802 MAC frames will be used as EIDs. 2. Basic Overview L2 LISP specifies the mechanism on which to carry L2 traffic over a LISP network. Within an L2 LISP environment, the source and destination MAC addresses of the Ethernet/IEEE 802.3 packet are used as the source and destination EIDs. The RLOCs can use IPv4 or IPv6 addressing. The entire MAC frame is encapsulated with the exception of the preamble and trailing FCS. It should be noted that L2 LISP introduces the possibility of packet reordering during route topology changes due to the usage of IP as the network substrate. This memo addresses the data plane and frame format details of L2 LISP. The control plane details are outside the scope of this memo. 3. Layer 2 LISP Encapsulation The layer 2 LISP encapsulation is based on the LISP header defined in the LISP specification [I-D.ietf-lisp]. The UDP and LISP headers are shown below for reference. For header fields description see section 5.3 of [I-D.ietf-lisp]. 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 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | IPv4 or IPv6 Header (with RLOC addresses) | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ / | Source Port = xxxx | Dest Port = 4341 | UDP +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ \ | UDP Length | UDP Checksum | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ L |N|L|E|V|I|flags| Nonce/Map-Version | I \ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ S / | Instance ID/Locator Status Bits | P +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ Smith, et al. Expires January 14, 2013 [Page 3] Internet-Draft Layer 2 (L2) LISP Encapsulation Format July 2012 When the headers are used for encapsulating L2 frames, the UDP Destination Port is set to 8472. 3.1. VXLAN The VXLAN [I-D.mahalingam-dutt-dcops-vxlan] header is achieved by setting the L2 LISP header bits as shown in the figure below. According to [I-D.mahalingam-dutt-dcops-vxlan] the I flag MUST be set to 1 for a valid VXLAN Network ID (VNI). The figure shows the whole VXLAN frame, including the original inner L2 frame. 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 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | IPv4 or IPv6 Header (with RLOC addresses) | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ / | Source Port = xxxx | Dest Port = 8472 | UDP +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ \ | UDP Length | UDP Checksum | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ L |0 0 0 0|I|0 0 0| Not Used | I \ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ S / | Instance ID | Not Used | P +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ / | Inner Destination MAC Address | I +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ n | Inner Destination MAC Address | Inner Source MAC Address | n +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ e | Inner Source MAC Address | r +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | Opt. Eth.type = C-Tag [802.1Q]| Inner.VLAN Tag Information | L +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 2 | Ethertype of Original Payload | | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | F | | r | | a | Original Ethernet Payload | m | | e | | \ | (Note that the original Ethernet Frame's FCS is not included) | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | FCS (Frame Check Sequence) for Outer Ethernet Frame | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ Smith, et al. Expires January 14, 2013 [Page 4] Internet-Draft Layer 2 (L2) LISP Encapsulation Format July 2012 3.2. L2 LISP An L2 LISP frame may optionally use the entire set of fields in the LISP header to support all of the features of the LISP protocol. The figure below shows the whole L2 LISP frame, including the original inner L2 frame. 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 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | IPv4 or IPv6 Header (with RLOC addresses) | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ / | Source Port = xxxx | Dest Port = 8472 | UDP +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ \ | UDP Length | UDP Checksum | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ L |N|L|E|V|I|flags| Nonce/Map-Version | I \ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ S / | Instance ID/Locator Status Bits | P +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ / | Inner Destination MAC Address | I +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ n | Inner Destination MAC Address | Inner Source MAC Address | n +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ e | Inner Source MAC Address | r +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | Opt. Eth.type = C-Tag [802.1Q]| Inner.VLAN Tag Information | L +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 2 | Ethertype of Original Payload | | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | F | | r | | a | Original Ethernet Payload | m | | e | | \ | (Note that the original Ethernet Frame's FCS is not included) | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | FCS (Frame Check Sequence) for Outer Ethernet Frame | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 4. MTU Considerations Since additional tunnel headers are prepended, the packet becomes larger and can exceed the MTU of any link traversed from the ITR to the ETR. [I-D.ietf-lisp] recommends in IPv4 that packets do not get Smith, et al. Expires January 14, 2013 [Page 5] Internet-Draft Layer 2 (L2) LISP Encapsulation Format July 2012 fragmented as they are encapsulated by the ITR. Instead, the packet is dropped and an ICMP Too Big message is returned to the source. Section 5.4 of [I-D.ietf-lisp] recommends procedure to mitigate MTU issues for IPv4 or IPv6 packets. 5. Overlays for Network Virtualization A notable use case for layer 2 LISP encapsulation is the use as an overlay-based network virtualization architecture to support multi- tenancy in large data center networks, as stated in [I-D.narten-nvo3-overlay-problem-statement]. In this use case, the 24-bit Instance ID serves as virtual network instance ID (VNID) that is typically used to identify the tenants in large multi-tenant data centers. Packet replication in the underlay network to support broadcast, unknown unicast and multicast overlay services can be done by: o Ingress replication o Use of underlay multicast trees [I-D.ietf-lisp-multicast] and [I-D.farinacci-lisp-mr-signaling] specify how to map a multicast flow in the EID space during distribution tree setup and packet delivery in the underlay network. 6. LISP Mapping System When the LISP mapping database system is used with L2 LISP, it must support the LISP Canonical Address Format (LCAF) specified in [I-D.farinacci-lisp-lcaf]. More specifically the mapping database system must support the use of MAC Addresses as LISP EIDs, and the use of Instance IDs as part of the lookup key. According to [I-D.farinacci-lisp-lcaf] the encoding format for the 2-tuple is: Smith, et al. Expires January 14, 2013 [Page 6] Internet-Draft Layer 2 (L2) LISP Encapsulation Format July 2012 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 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | AFI = 16387 | Rsvd1 | Flags | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | Type = 2 | IID mask-len | Length | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | Instance ID | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | AFI = 6 | Layer-2 MAC Address ... | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | ... Layer-2 MAC Address | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ In the case of a single instance of mapping database, no Instance ID is necessary, and the encoding format for the MAC address is shown below. In this case an Ethernet IEEE 802.1Q VLAN tag may be part of the lookup key (encoded in an Instance ID field). 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 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | AFI = 6 | Layer-2 MAC Address ... | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | ... Layer-2 MAC Address | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ A mapping database system that supports both the LISP Canonical Address Format, and Instance ID is the LISP Delegated Database Tree [I-D.fuller-lisp-ddt]. 7. Security Considerations Security in a network carrying L2 LISP should be similar to security in a normal IPv4 network. Packet filtering on the L2 LISP inner frames will require that a firewall look inside the L2 LISP packet or that filtering is done at the ITR/ETR. 8. IANA Considerations The IANA registry has allocated UDP port number 8472 for the L2 LISP data packets. Smith, et al. Expires January 14, 2013 [Page 7] Internet-Draft Layer 2 (L2) LISP Encapsulation Format July 2012 9. Acknowledgements The authors would like to thank Sumeet Singh, and Ajit Sanzgiri for their technical and editorial commentary. 10. References 10.1. Normative References [RFC2119] Bradner, S., "Key words for use in RFCs to Indicate Requirement Levels", BCP 14, RFC 2119, March 1997. 10.2. Informative References [I-D.farinacci-lisp-lcaf] Farinacci, D., Meyer, D., and J. Snijders, "LISP Canonical Address Format (LCAF)", draft-farinacci-lisp-lcaf-07 (work in progress), March 2012. [I-D.farinacci-lisp-mr-signaling] Farinacci, D. and M. Napierala, "LISP Control-Plane Multicast Signaling", draft-farinacci-lisp-mr-signaling-00 (work in progress), July 2012. [I-D.fuller-lisp-ddt] Fuller, V. and D. Lewis, "LISP Delegated Database Tree", draft-fuller-lisp-ddt-01 (work in progress), March 2012. [I-D.ietf-lisp] Farinacci, D., Fuller, V., Meyer, D., and D. Lewis, "Locator/ID Separation Protocol (LISP)", draft-ietf-lisp-23 (work in progress), May 2012. [I-D.ietf-lisp-multicast] Farinacci, D., Meyer, D., Zwiebel, J., and S. Venaas, "LISP for Multicast Environments", draft-ietf-lisp-multicast-14 (work in progress), February 2012. [I-D.mahalingam-dutt-dcops-vxlan] Sridhar, T., Bursell, M., Kreeger, L., Dutt, D., Wright, C., Mahalingam, M., Duda, K., and P. Agarwal, "VXLAN: A Framework for Overlaying Virtualized Layer 2 Networks over Layer 3 Networks", draft-mahalingam-dutt-dcops-vxlan-01 (work in progress), February 2012. [I-D.narten-nvo3-overlay-problem-statement] Smith, et al. Expires January 14, 2013 [Page 8] Internet-Draft Layer 2 (L2) LISP Encapsulation Format July 2012 Narten, T., Sridhavan, M., Dutt, D., Black, D., and L. Kreeger, "Problem Statement: Overlays for Network Virtualization", draft-narten-nvo3-overlay-problem-statement-02 (work in progress), June 2012. Authors' Addresses Michael Smith Insieme Networks California USA Email: michsmit@insiemenetworks.com Dinesh Dutt Cumulus Networks California USA Email: ddutt@cumulusnetworks.com Dino Farinacci Cisco Systems 170 Tasman Drive San Jose, California 95134 USA Email: dino@cisco.com Fabio Maino Cisco Systems 170 Tasman Drive San Jose, California 95134 USA Email: fmaino@cisco.com Smith, et al. Expires January 14, 2013 [Page 9]