Internet Engineering Task Force                                 D. Lewis
Internet-Draft                                                     Cisco
Intended status: Informational                                  J. Lemon
Expires: June 16, 2018                                          Broadcom
                                                              P. Agarwal
                                                                Innovium
                                                              L. Kreeger

                                                                P. Quinn
                                                                M. Smith
                                                                N. Yadav
                                                           F. Maino, Ed.
                                                                   Cisco
                                                       December 13, 2017


                    LISP Generic Protocol Extension
                        draft-lewis-lisp-gpe-03

Abstract

   This draft describes extending the Locator/ID Separation Protocol
   (LISP), via changes to the LISP header, to support multi-protocol
   encapsulation.

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 June 16, 2018.

Copyright Notice

   Copyright (c) 2017 IETF Trust and the persons identified as the
   document authors.  All rights reserved.





Lewis, et al.             Expires June 16, 2018                 [Page 1]


Internet-Draft       LISP Generic Protocol Extension       December 2017


   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
     1.1.  Conventions . . . . . . . . . . . . . . . . . . . . . . .   3
     1.2.  Definition of Terms . . . . . . . . . . . . . . . . . . .   3
   2.  LISP Header Without Protocol Extensions . . . . . . . . . . .   3
   3.  Generic Protocol Extension for LISP (LISP-GPE)  . . . . . . .   3
   4.  Backward Compatibility  . . . . . . . . . . . . . . . . . . .   5
     4.1.  Type of Service . . . . . . . . . . . . . . . . . . . . .   5
     4.2.  VLAN Identifier (VID) . . . . . . . . . . . . . . . . . .   5
   5.  IANA Considerations . . . . . . . . . . . . . . . . . . . . .   5
   6.  Security Considerations . . . . . . . . . . . . . . . . . . .   6
   7.  Acknowledgements  . . . . . . . . . . . . . . . . . . . . . .   6
   8.  References  . . . . . . . . . . . . . . . . . . . . . . . . .   6
     8.1.  Normative References  . . . . . . . . . . . . . . . . . .   6
     8.2.  Informative References  . . . . . . . . . . . . . . . . .   7
   Authors' Addresses  . . . . . . . . . . . . . . . . . . . . . . .   7

1.  Introduction

   LISP, as defined in [RFC6830] and extended in
   [I-D.ietf-lisp-rfc6830bis], defines an encapsulation format that
   carries IPv4 or IPv6 (henceforth referred to as IP) packets in a LISP
   header and outer UDP/IP transport.

   The LISP header does not specify the protocol being encapsulated and
   therefore is currently limited to encapsulating only IP packet
   payloads.  Other protocols, most notably VXLAN [RFC7348] (which
   defines a similar header format to LISP), are used to encapsulate L2
   protocols such as Ethernet.

   This document defines an extension for the LISP header, as defined in
   [I-D.ietf-lisp-rfc6830bis], to indicate the inner protocol, enabling
   the encapsulation of Ethernet, IP or any other desired protocol all
   the while ensuring compatibility with existing LISP deployments.

   A flag in the LISP header, called the P-bit, is used to signal the
   presence of the 8-bit Next Protocol field.  The Next Protocol field,



Lewis, et al.             Expires June 16, 2018                 [Page 2]


Internet-Draft       LISP Generic Protocol Extension       December 2017


   when present, uses 8 bits of the field allocated to the echo-noncing
   and map-versioning features.  The two features are still available,
   albeit with a reduced length of Nonce and Map-Version.

1.1.  Conventions

   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 RFC 2119 [RFC2119].

1.2.  Definition of Terms

   This document uses terms already defined in
   [I-D.ietf-lisp-rfc6830bis].

2.  LISP Header Without Protocol Extensions

   As described in the introduction, the LISP header has no protocol
   identifier that indicates the type of payload being carried.  Because
   of this, LISP is limited to carry IP payloads.

   The LISP header [I-D.ietf-lisp-rfc6830bis] contains a series of flags
   (some defined, some reserved), a Nonce/Map-version field and an
   instance ID/Locator-status-bit field.  The flags provide flexibility
   to define 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               |
       +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+


                                LISP Header

3.  Generic Protocol Extension for LISP (LISP-GPE)

   This document defines the following changes to the LISP header in
   order to support multi-protocol encapsulation:

   P Bit:  Flag bit 5 is defined as the Next Protocol bit.  The P bit
      MUST be set to 1 to indicate the presence of the 8 bit next
      protocol field.




Lewis, et al.             Expires June 16, 2018                 [Page 3]


Internet-Draft       LISP Generic Protocol Extension       December 2017


      P = 0 indicates that the payload MUST conform to LISP as defined
      in [I-D.ietf-lisp-rfc6830bis].  Flag bit 5 was chosen as the P bit
      because this flag bit is currently unallocated.

   Next Protocol:  The lower 8 bits of the first 32-bit word are used to
      carry a Next Protocol.  This Next Protocol field contains the
      protocol of the encapsulated payload packet.

      LISP uses the lower 24 bits of the first word for either a nonce,
      an echo-nonce, or to support map-versioning [RFC6834].  These are
      all optional capabilities that are indicated in the LISP header by
      setting the N, E, and the V bit respectively.

      When the P-bit and the N-bit are set to 1, the Nonce field is the
      middle 16 bits.

      When the P-bit and the V-bit are set to 1, the Version field is
      the middle 16 bits.

      When the P-bit is set to 1 and the N-bit and the V-bit are both 0,
      the middle 16-bits are set to 0.

      This draft defines the following Next Protocol values:



      0x1 :  IPv4

      0x2 :  IPv6

      0x3 :  Ethernet

      0x4 :  Network Service Header [I-D.ietf-sfc-nsh]

      0x6:  Group-Based Policy (GBP) [I-D.lemon-vxlan-gpe-gbp].


        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               |
       +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+


                              LISP-GPE Header




Lewis, et al.             Expires June 16, 2018                 [Page 4]


Internet-Draft       LISP Generic Protocol Extension       December 2017


4.  Backward Compatibility

   LISP-GPE uses the same UDP destination port (4341) allocated to LISP.

   A LISP-GPE router MUST not encapsulate non-IP packets to a LISP
   router.  A method for determining the capabilities of a LISP router
   (GPE or "legacy") is out of the scope of this draft.

   When encapsulating IP packets to a LISP "legacy" router the P bit
   MUST be set to 0.

4.1.  Type of Service

   When a LISP-GPE router performs Ethernet encapsulation, the inner
   802.1Q [IEEE8021Q] priority code point (PCP) field MAY be mapped from
   the encapsulated frame to the Type of Service field in the outer IPv4
   header, or in the case of IPv6 the 'Traffic Class' field.

4.2.  VLAN Identifier (VID)

   When a LISP-GPE router performs Ethernet encapsulation, the inner
   header 802.1Q [IEEE8021Q] VLAN Identifier (VID) MAY be mapped to, or
   used to determine the LISP Instance ID field.

5.  IANA Considerations

   IANA is requested to set up a registry of LISP-GPE "Next Protocol".
   These are 8-bit values.  Next Protocol values in the table below are
   defined in this draft.  New values are assigned via Standards Action
   [RFC5226].

              +---------------+-------------+---------------+
              | Next Protocol | Description | Reference     |
              +---------------+-------------+---------------+
              | 0             | Reserved    | This Document |
              | 1             | IPv4        | This Document |
              | 2             | IPv6        | This Document |
              | 3             | Ethernet    | This Document |
              | 4             | NSH         | This Document |
              | 5             | Reserved    |               |
              | 6             | GBP         | This Document |
              | 7             | Reserved    |               |
              | 8..255        | Unassigned  |               |
              +---------------+-------------+---------------+







Lewis, et al.             Expires June 16, 2018                 [Page 5]


Internet-Draft       LISP Generic Protocol Extension       December 2017


6.  Security Considerations

   LISP-GPE security considerations are similar to the LISP security
   considerations documented at length in [I-D.ietf-lisp-rfc6830bis].
   With LISP-GPE, issues such as dataplane spoofing, flooding, and
   traffic redirection may depend on the particular protocol payload
   encapsulated.

7.  Acknowledgements

   A special thank you goes to Dino Farinacci for his guidance and
   detailed review.

8.  References

8.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, <https://www.rfc-
              editor.org/info/rfc2119>.

   [RFC5226]  Narten, T. and H. Alvestrand, "Guidelines for Writing an
              IANA Considerations Section in RFCs", RFC 5226,
              DOI 10.17487/RFC5226, May 2008, <https://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, <https://www.rfc-
              editor.org/info/rfc6830>.

   [RFC6834]  Iannone, L., Saucez, D., and O. Bonaventure, "Locator/ID
              Separation Protocol (LISP) Map-Versioning", RFC 6834,
              DOI 10.17487/RFC6834, January 2013, <https://www.rfc-
              editor.org/info/rfc6834>.

   [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>.








Lewis, et al.             Expires June 16, 2018                 [Page 6]


Internet-Draft       LISP Generic Protocol Extension       December 2017


8.2.  Informative References

   [I-D.ietf-lisp-rfc6830bis]
              Farinacci, D., Fuller, V., Meyer, D., Lewis, D., and A.
              Cabellos-Aparicio, "The Locator/ID Separation Protocol
              (LISP)", draft-ietf-lisp-rfc6830bis-07 (work in progress),
              November 2017.

   [I-D.ietf-sfc-nsh]
              Quinn, P., Elzur, U., and C. Pignataro, "Network Service
              Header (NSH)", draft-ietf-sfc-nsh-28 (work in progress),
              November 2017.

   [I-D.lemon-vxlan-gpe-gbp]
              Lemon, J., Maino, F., and M. Smith, "Group Policy Encoding
              with VXLAN-GPE", draft-lemon-vxlan-gpe-gbp-00 (work in
              progress), October 2017.

Authors' Addresses

   Darrel Lewis
   Cisco Systems

   Email: darlewis@cisco.com


   John Lemon
   Broadcom
   3151 Zanker Road
   San Jose, CA  95134
   USA

   Email: john.lemon@broadcom.com


   Puneet Agarwal
   Innovium
   USA

   Email: puneet@acm.org


   Larry Kreeger
   USA

   Email: lkreeger@gmail.com





Lewis, et al.             Expires June 16, 2018                 [Page 7]


Internet-Draft       LISP Generic Protocol Extension       December 2017


   Paul Quinn
   Cisco Systems

   Email: pquinn@cisco.com


   Michael Smith
   Cisco Systems

   Email: michsmit@cisco.com


   Navindra Yadav
   Cisco Systems

   Email: nyadav@cisco.com


   Fabio Maino (editor)
   Cisco Systems
   San Jose, CA  95134
   USA

   Email: fmaino@cisco.com



























Lewis, et al.             Expires June 16, 2018                 [Page 8]