Internet DRAFT - draft-drake-nvo3-evpn-control-plane

draft-drake-nvo3-evpn-control-plane



Network Working Group                                          
Internet-Draft                                                 T. Nadeau
Intended status: Standards Track                                J. Drake
Expires: March 16, 2013                                          Editors
                                                        Juniper Networks
             
                                                            B. Schlisser
James Uttaro                                                  Y. Rekhter
ATT                                                         Ravi Shekhar
                                                        Juniper Networks

Wim Hendrix                                                  Nabil Bitar
Alcatel-Lucent                                                   Verizon

                                                            Aldrin Isaac
                                                               Bloomberg

                                                      September 16, 2012


            A Control Plane for Network Virtualized Overlays
                  draft-drake-nvo3-evpn-control-plane-00

Abstract

        The purpose of this document is to describe how Ethernet Virtual 
        Private Network (E-VPN) can be used as the control plane for
        Network Virtual Overlays.  Currently this protocol is defined to
        act as the control plane for Virtual Extensible Local Area 
        Network (VXLAN), Network Virtualization using Generic Routing 
        Encapsulation (NVGRE), MPLS or VLANs while maintaining their 
        existing data plane encapsulations. The intent is that this 
        protocol will be capable of extensions in the future to handle 
        additinal data plane encapsulations and functions as needed.


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 November March 16, 2012.



Nadeau & Drake, Editors        Expires March 14, 2013        [Page 1]

                 EVPN Control Plane                September 14, 2012












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

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


Table of Contents
   1.  Introduction . . . . . . . . . . . . . . . . . . . . . . . . .  
   1.2.  Acronyms . . . . . . . . . . . . . . . . . . . . . . . . . .  
   2.  E-VPN Attributes . . . . . . . . . . . . . . . . . . . . . . . 
   3.  Constructing E-VPN routes  . . . . . . . . . . . . . . . . . . 
   4.  Interworking Capabilities  . . . . . . . . . . . . . . . . . .
   5. Active/Active Multihoming   . . . . . . . . . . . . . . . . . . 
   6. Multicast . . . . . . . . . . . . . . . . . . . . . . . . . . .
   6.1. P-Tunnel Identification . . . . . . . . . . . . . . . . . . . 
   6.2. Ingress Replication . . . . . . . . . . . . . . . . . . . . .
   6.3. PIM-SSM/SM Tree . . . . . . . . . . . . . . . . . . . . . . .
   7.  IANA Considerations  . . . . . . . . . . . . . . . . . . . . . 
   8. Security Considerations   . . . . . . . . . . . . . . . . . . . 
   9. Acknowledgements  . . . . . . . . . . . . . . . . . . . . . . . 
   10. References   . . . . . . . . . . . . . . . . . . . . . . . . .  
    10.1. Normative References  . . . . . . . . . . . . . . . . . . . 
    10.2. Informative References  . . . . . . . . . . . . . . . . . . 



Nadeau & Drake, Editors        Expires March 14, 2013        [Page 2]

                 EVPN Control Plane                September 14, 2012






1.  Introduction

        The purpose of this document is to describe a single control 
        plane protocol control protocol that can be used for all 
        types of data planes used in network virtualization overlays 
        (NVOs).  In particular, we describe how The Ethernet Virtual 
        Private Network (E-VPN) protocol, as described in 
        [I-D.draft-ietf-l2vpn-evpn-01], can be 
        used as the control plane for Virtual Extensible Local 
        Area Network (VXLAN) [I-D.draft-mahalingam-dutt-dcops-vxlan], 
        Network Virtualization using Generic Routing Encapsulation 
        (NVGRE) [I-D.draft-sridharan-virtualization-nvgre-00], MPLS or 
        Ethernet VLANs. In all cases, the existing data plane 
        encapsulations are maintained. 

        Network Virtualization Overlays (NVOs), as described in
        [I-D.draft-ietf-nvo3-overlay-problem-statement], are intended
        to provide separate logical tenant networks over a common 
        physical infrastructure in a data center environment.

        Both VXLAN and NVGRE are examples of technologies provide
        a data plane encapsulation which is used to transport a
        packet over the common physical infrastructure between
        NVO endpoints.
       

1.2.  Acronyms


   CE      Customer Edge.

   OAM     Operation and Maintenance.

   PE      Provider Edge.

   NVE     Network Virtualization Endpoint

   NVGRE   Network Virtualization Using Generic Routing Encapsulation 

   NVO     Network Virtual Overlay

   VNE     Virtual Network Identifier

   VTEP    VXLAN Tunnel End Point 




Nadeau & Drake, Editors        Expires March 14, 2013        [Page 3]

                 EVPN Control Plane                September 14, 2012



   VXLAN   Virtual Extensible Local Area Network 


2. E-VPN Attributes

      Both VXLAN and NVGRE are examples of technologies provide
      a data plane encapsulation which is used to transport a
      packet over the common physical infrastructure between
      NVO endpoints, VXLAN Tunnel End Point (VTEP) in VXLAN and
      Network Virtualization Endpoint (NVE) in NVGRE. Both of
      these technologies include the identifier of the specific
      NVO instance, Virtual Network Identifier (VNI) in VXLAN
      and Tenant ID in NVGRE, in each packet.

      E-VPN was originally designed to support the requirements 
      detailed in [I-D.draft-ietf-l2vpn-evpn-req] and therefore has 
      the following attributes which directly address control plane 
      scaling and ease of deployment issues.

      1)  Control plane traffic is distributed with BGP and Broadcast 
          and Multicast traffic is sent using a shared multicast tree 
          or with ingress replication.

      2)  Control plane learning is used instead flooding unknown 
          unicast and ARP packets.

      3)  Auto-discovery via BGP Route Reflectors is used.

      4)  Active-active multihoming is used.  This allows a given 
          customer device to have multiple attachment links to an 
          E-VPN instance (EVI), via a Link Aggregation Group (LAG).  
          This allows traffic to/from that customer to fully utilize 
          all of these links.  The set of attachment links to a given 
          customer device is termed an Ethernet Segment and is 
          typically identified with that customer device's MAC address.

      5)  Block withdraw is used.  When a link between a customer 
          device and an EVI fails, the other nodes in the EVI are 
          notified via the withdrawal of a single E-VPN route 
          regardless of how many MAC addresses are located at the 
          customer device.

      6)  Route filtering and constrained route distribution are 
          used to ensure that the control plane traffic for a given 
          EVI is only distributed to those nodes in that EVI.

      7)  The internal identifier of a broadcast domain, the Ethernet 
          Tag, is a 32 bit number, which is mapped into whatever 



Nadeau & Drake, Editors        Expires March 14, 2013        [Page 4]

                 EVPN Control Plane                September 14, 2012



          broadcast domain identifier, e.g., VLAN ID, is understood 
          by the attaching CE device.  This means that there are up 
          to 4096 distinct VLAN IDs for each attaching Customer Edge 
          (CE) device in a given EVI.

          Note that an EVI is equivalent to an NVO instance and that a 
          Provider Edge (PE) is equivalent to a VTEP/NVE.      

      8)  Because the design goal for NVO is millions of instances 
          per common physical infrastructure, the scaling properties 
          of the control plane for NVO are extremely important. The 
          E-VPN and the extensions described herein, are designed 
          with this level of scalability in mind.

3.   Constructing E-VPN routes

     In E-VPN an MPLS label distributed by the egress PE via the E-VPN 
     control plane and placed in the MPLS header of a given packet by 
     the ingress PE is used upon receipt of that packet by the egress 
     PE to determine to which EVI that packet is to be sent.  This is 
     very similar to the use of the VNI or Tenant ID by the egress 
     VTEP or NVE, respectively, with the difference being that an 
     MPLS label has local significance and is distributed by the 
     E-VPN control plane, while a VNI or Tenant ID currently has 
     global significance.

     In E-VPN, an MPLS label is carried in a three octet MPLS Label 
     field, and consists of the twenty bit label.  Both the VNI and 
     Tenant ID are also three octets in length and so could be 
     transparently carried in the MPLS label field of the E-VPN MAC 
     Advertisement or Per EVI Ethernet AD route.

     This memo specifies that when E-VPN is to be used with a VXLAN or 
     NVGRE data plane that a VNI or Tenant ID is twenty bits in 
     length and may have either global or local significance, that 
     the remaining four bits are reserved, and that the value 
     advertised in the MPLS label field is to be treated as a three 
     octet quantity to be placed directly in the VNI or tenant ID 
     field of a packet.

     Note that because in this context an advertised VNI or Tenant 
     ID may have local significance, the advertising PE may 
     transparently use it to represent the VN or Tenant, a set of 
     addresses within the VN or Tenant, or an individual address 
     within the VN or Tenant.

     In order to indicate that a VXLAN or NVGRE data plane 
     encapsulation rather than MPLS label stack encapsulation is to 



Nadeau & Drake, Editors        Expires March 14, 2013        [Page 5]

                 EVPN Control Plane                September 14, 2012



     be used, the Tunnel Encapsulation attribute defined in [RFC5512] 
     is included with E-VPN MAC Advertisement or Per EVI Ethernet AD 
     routes advertised by an egress PE.  Two new values, one for 
     VXLAN and one for NVGRE, will be defined.  This same mechanism 
     should be used to advertise MPLS or VLAN encapsulations when 
     they are used.

4.  Interworking Capabilities

    Through the presence of the Tunnel Encapsulation attribute, each 
    PE within a given EVI will know whether the other PEs in that EVI 
    support MPLS label stack, VXLAN, or NVGRE data plane encapsulation.

    This means that a given EVI can support multiple data plane 
    encapsulations. This has the advantage of allowing 
    interoperability between VXLAN, NVGRE, and E-VPN (and by 
    extension L3VPNs).

    Note that an ingress PE must use the data plane encapsulation 
    specified by a given egress PE in the subject MAC Advertisement 
    or Per EVI Ethernet AD route when sending a packet to that PE.  
    Further, an ingress node that uses shared multicast trees for 
    sending Broadcast and Multicast traffic must maintain distinct 
    trees for each different encapsulation type.


5. Active/Active Multihoming

   The base E-VPN protocol supports active/active multihoming.  In 
   order to prevent loops of Broadcast and Multicast packets, these 
   packets need to carry two labels, one to identify the EVI to which 
   the packet should be sent and one to identify the Ethernet Segment 
   from which it was received.  The latter label is termed the 'split 
   horizon label' and when a Broadcast or Multicast packet is received
   by an egress PE, it uses that label to stop it from sending the 
   packet back to the Ethernet Segment from which the packet was 
   received.

   When using the VXLAN or NVGRE encapsulation, there is no field in 
   the packet in which to carry the split horizon label.

   This memo specifies that an egress PE must use the sender MAC 
   address to determine whether to send a received Broadcast or 
   Multicast packet to a given Ethernet Segment.  I.e., if the sender 
   MAC address is associated with a given Ethernet Segment, the egress
   PE must not send the packet to that Ethernet Segment.





Nadeau & Drake, Editors        Expires March 14, 2013        [Page 6]

                 EVPN Control Plane                September 14, 2012



6. Multicast

   The base E-VPN protocol allows to use MPLS ingress replication or 
   P2MP LSPs to send BUM traffic to other PEs. When VXLAN/NVGRE 
   encapsulations are used with E-VPN, IP based ingress replication 
   and IP multicast trees must be supported.

6.1. P-Tunnel Identification

   In order to identify the P-Tunnel used for sending broadcast, 
   unknown unicast or multicast traffic, the Inclusive Multicast 
   Ethernet Tag route MUST carry a "PMSI Tunnel Attribute" as 
   specified in [RFC6513]. The following changes are required for 
   VXLAN/NVGRE

        + When a PE that uses a P-Multicast tree for the P-tunnel 
          wants to aggregate two or more Ethernet Tags in the same or 
          different EVIs present on the PE onto the same tree. In this
          case, in addition to carrying the identity of the tree, the 
          PMSI Tunnel attribute MUST carry a upstream assigned VNI or 
          tenant ID in the MPLS Label field of the PMSI attribute 
          which the PE has bound uniquely to the Ethernet Tag for the 
          EVI associated with this update (as determined by its RTs).

        + If the PE that originates the advertisement uses ingress
          replication for the P-tunnel for E-VPN, the route MUST
          include the PMSI Tunnel attribute with the Tunnel Type set to
          Ingress Replication and Tunnel Identifier set to a routable
          address of the PE. The PMSI Tunnel attribute MUST carry a
          downstream assigned VNI or tenant ID in the MPLS Label 
          field of the PMSI attribute. This identifier is used to
          demultiplex the broadcast, multicast or unknown unicast E-VPN
          traffic received over a MP2P tunnel by the PE.

        + If the PE that originates the advertisement uses IP 
          multicast replication for the P-tunnel for E-VPN, the 
          route MUST include the PMSI Tunnel attribute with the 
          Tunnel Type set to PIM-SSM or PIM ASM Tree.

          When the Tunnel Type is set to Protocol 
          Independent Multicast - Sparse Mode (PIM-SM) tree, the 
          Tunnel Identifier is <Sender Address, P-Multicast Group>.  
          The node that originated the attribute MUST use the address 
          carried in the Sender Address as the source IP address for 
          the IP/GRE (NVGRE) or IP/UDP (VXLAN) encapsulation of the 
          BUM data.

          When the Tunnel Type is set to PIM-SSM tree, the Tunnel 



Nadeau & Drake, Editors        Expires March 14, 2013        [Page 7]

                 EVPN Control Plane                September 14, 2012



          Identifier is <P-Root Node Address, P-Multicast Group>.  The 
          node that originates the attribute MUST use the address 
          carried in the P-Root Node Address as the source IP address 
          for the IP/GRE (NVGRE) or IP/UDP (VXLAN) encapsulation of 
          the BUM data. 

          According to [RFC4607], the group address can be locally 
          allocated by the originating PE without any consideration 
          for the group address used by other PE on the same MVPN.

6.2. Ingress Replication

   The PEs may use ingress replication for flooding unknown unicast, 
   multicast or broadcast traffic. The VXLAN or NVGRE encapsulations 
   are used with the VNI or tenant ID exchanged in the I-PMSI PMSI 
   attribute.

6.3. PIM-SSM/SM Tree

   An PE may use an IP multicast "Inclusive" tree for sending an 
   unknown unicast, broadcast or multicast packet or a "Selective" 
   tree. For VXLAN or NVGRE the destination address of the UDP/GRE 
   encapsulations use the multicast address of the PMSI attribute in 
   the Inclusive Multicast Ethernet Tag route. When no aggregated 
   trees are used the VNI or tenant ID is set to 0.


7.  IANA Considerations

   4.1  E-VPN Encapsulation Types

       IANA is requested to assign two values from the "BGP Tunnel 
       Encapsulation Attribute Tunnel Types" registry [RFC5512] as   
       follows.

       - VxLan: Tunnel Type = TBD
   
       - NVGRE: Tunnel Type = TBD +1


8.  Security Considerations

   This document uses IP-based tunnel technologies to support data 
   plane transport.  Consequently, the security considerations of 
   those tunnel technologies apply.  This document defines support 
   for VxLan [I-D.draft-mahalingam-dutt-dcops-vxlan] and 
   NVGRE [I-D.draft-sridharan-virtualization-nvgre-00].
   The security considerations from those documents as well as 



Nadeau & Drake, Editors        Expires March 14, 2013        [Page 8]

                 EVPN Control Plane                September 14, 2012



   [RFC4301] apply to the data plane aspects of this document.

   As with [RFC5512], any modification of the information that is used
   to form encapsulation headers, to choose a tunnel type, or to choose
   a particular tunnel for a particular payload type may lead to user
   data packets getting misrouted, misdelivered, and/or dropped.

   More broadly, the security considerations for the transport of IP
   reachability information using BGP are discussed in [RFC4271] and
   [RFC4272], and are equally applicable for the extensions described 
   in this document.

   If the integrity of the BGP session is not itself protected, then an
   imposter could mount a denial-of-service attack by establishing
   numerous BGP sessions and forcing an IPsec SA to be created for each
   one.  However, as such an imposter could wreak havoc on the entire
   routing system, this particular sort of attack is probably not of 
   any special importance.

   It should be noted that a BGP session may itself be transported over
   an IPsec tunnel.  Such IPsec tunnels can provide additional security
   to a BGP session.  The management of such IPsec tunnels is outside
   the scope of this document.



9.  Acknowledgements

10.  References

10.1.  Normative References

   [RFC2119]  Bradner, S., "Key words for use in RFCs to Indicate
              Requirement Levels", BCP 14, RFC 2119, March 

   [RFC4271]  Y. Rekhter, Ed., T. Li, Ed., S. Hares, Ed.,
              "A Border Gateway Protocol 4 (BGP-4)", January 2006.

   [RFC4272]  S. Murphy, "BGP Security Vulnerabilities Analysis.", 
              January 2006.

   [RFC4301]   S. Kent, K. Seo., "Security Architecture for the 
               Internet Protocol.", December 2005.

   [RFC4607]  H. Holbrook, B. Cain., "Source-Specific Multicast for 
              IP.", RFC4607, August 2006.

   [RFC5512]  Mohapatra, P. and E. Rosen, "The BGP Encapsulation 



Nadeau & Drake, Editors        Expires March 14, 2013        [Page 9]

                 EVPN Control Plane                September 14, 2012



              Subsequent Address Family Identifier (SAFI) and the BGP 
              Tunnel Encapsulation Attribute", RFC 5512, April 2009.
 

   [RFC6513]  Rosen, E., et al., "Multicast in MPLS/BGP IP VPNs.",
              RFC6513, February 2012. 

   [I-D.draft-ietf-l2vpn-evpn] Aggarwal et al., "BGP MPLS Based 
               Ethernet VPN", 
               draft-raggarwa-sajassi-l2vpn-evpn-02.txt, work in 
               progress, March, 2011.
   
   [I-D.draft-sridharan-virtualization-nvgre-00]   Sridhavan, M., et 
               al., "NVGRE: Network Virtualization using Generic 
               Routing Encapsulation", 
               draft-sridharan-virtualization-nvgre-01.txt, July 8, 
               2012.

   [I-D.draft-mahalingam-dutt-dcops-vxlan] Dutt, D., et al, 
               "VXLAN: A Framework for Overlaying Virtualized Layer 2 
                Networks over Layer 3 Networks", 
                draft-mahalingam-dutt-dcops-vxlan-02.txt,  
                August 22, 2012.

   [I-D.draft-ietf-nvo3-overlay-problem-statement] Narten, et al, 
               "Problem Statement: Overlays for Network 
                Virtualization", 
                draft-ietf-nvo3-overlay-problem-statement-00.txt, 
                5-Sep-12.

   [I-D.draft-ietf-l2vpn-evpn-req] Sajassi et al., "Requirements for 
               Ethernet VPN (E-VPN)", draft-ietf-l2vpn-l2vpn-evpn-
               req-00.txt, work in progress, 
               March 27, 2012.



10.2.  Informative References


   [RFC5226]  Narten, T. and H. Alvestrand, "Guidelines for Writing 
              an IANA Considerations Section in RFCs", BCP 26, 
              RFC 5226, May 2008.

   [I-D.lasserre-nvo3-framework]
              Lasserre, M., Balus, F., Morin, T., Bitar, N., and Y.
              Rekhter, "Framework for DC Network Virtualization",
              draft-lasserre-nvo3-framework-03 (work in progress),



Nadeau & Drake, Editors        Expires March 14, 2013       [Page 10]

                 EVPN Control Plane                September 14, 2012



              July 2012.



Editors' Addresses

   Thomas D. Nadeau
   Juniper Networks
   Email: tnadeau@juniper.net

   John E. Drake
   Juniper Networks
   Email: jnadeau@juniper.net   

 Authors' Addresses   

   Benson Schliser
   Juniper Networks
   Email: bensons@juniper.net

   Yakov Reckhter
   Juniper Networks
   Email: yakov@juniper.net       

   Nabil Bitar
   Verizon Communications
   Email : nabil.n.bitar@verizon.com

   Ravi Shekhar
   Juniper Networks
   1194 N. Mathilda Ave.
   Sunnyvale, CA  94089 US
   Email: rshekhar@juniper.net

   Aldrin Isaac
   Bloomberg
   aldrin.isaac@gmail.com
 
   Wim Henderickx
   Alcatel-Lucent
   e-mail: wim.henderickx@alcatel-lucent.com

   James Uttaro
   AT&T
   200 S. Laurel Avenue
   Middletown, NJ  07748
   USA
   Email: uttaro@att.com



Nadeau & Drake, Editors        Expires March 14, 2013       [Page 11]

                 EVPN Control Plane                September 14, 2012






















































Nadeau & Drake, Editors        Expires March 14, 2013       [Page 12]