IDR W. Hao S. Zhuang Z. Li Internet Draft Huawei Technologies Ltd. Intended status: Standards Track Expires: January 2016 July 6, 2015 Dissemination of Flow Specification Rules for NVO3 draft-hao-idr-flowspec-nvo3-00.txt Abstract This document defines BGP flow-spec extension for NVO3. A Flag in BGP Path Attribute is introduced to indicate the Flow-spec rules imposing on NVO3 outer or inner layer. A new subset of NVO3 specific component types and extended community also are defined. 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), its areas, and its working groups. Note that other groups may also distribute working documents as Internet- Drafts. 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." The list of current Internet-Drafts can be accessed at http://www.ietf.org/1id-abstracts.html The list of Internet-Draft Shadow Directories can be accessed at http://www.ietf.org/shadow.html. Copyright Notice Copyright (c) 2015 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 Hao, et,al Expires January 6, 2016 [Page 1] Internet-Draft NVO3 Flow Spec July 2015 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 2. Use cases ................................................... 3 2.1. Flow-spec in Data Center................................ 3 2.2. Flow-spec for Data Center Interconnection............... 4 2.3. Requirements Summary.................................... 5 3. The Flow Specification encoding for NVO3..................... 5 4. The Flow Specification Traffic Actions for NVO3.............. 6 5. Security Considerations...................................... 7 6. IANA Considerations ......................................... 8 6.1. Normative References.................................... 8 6.2. Informative References.................................. 9 7. Acknowledgments ............................................. 9 1. Introduction BGP Flow-spec is an extension to BGP that allows for the dissemination of traffic flow specification rules. It leverages the BGP Control Plane to simplify the distribution of ACLs, new filter rules can be injected to all BGP peers simultaneously without changing router configuration. The typical application of BGP Flow- spec is to automate the distribution of traffic filter lists to routers for DDOS mitigation. RFC5575 defines a new BGP Network Layer Reachability Information (NLRI) format used to distribute traffic flow specification rules. NLRI (AFI=1, SAFI=133)is for IPv4 unicast filtering. NLRI (AFI=1, SAFI=134)is for BGP/MPLS VPN filtering. The Flow specification match part only includes single layer IP information like source/destination prefix, protocol, ports, and etc, it can't be used for overlay network like NVO3 directly. In cloud computing era, multi-tenancy has become a core requirement for data centers. Since NVO3 can satisfy multi-tenancy key requirements, this technology is being deployed in an increasing number of cloud data center network. NVO3 focuses on the Hao, et,al Expires January 6, 2016 [Page 2] Internet-Draft NVO3 Flow Spec July 2015 construction of overlay networks that operate over an IP (L3) underlay transport network. It can provide layer 2 bridging and layer 3 IP service for each tenant. VXLAN and NVGRE are two typical NVO3 encapsulations. GENEVE [draft-ietf-nvo3-geneve-00],GUE[draft- ietf-nvo3-gue-01] and GPE [draft-ietf-nvo3-vxlan-gpe-00] are three emerging NVO3 encapsulations in progress. In NVO3 network, we also have requirements to deploy BGP Flow-spec for DDoS attack traffic mitigation or for traffic steering. The Flow specification rules in NVO3 network can be based on inner layer 2 Ethernet information, inner layer 3 IP information, outer layer 2 Ethernet information, outer layer 3 IP information, and/or NVO3 header information. However, current flow specification match part only includes single layer Ethernet or IP information, it can't be imposed on the NVO3 traffic directly due to lack of Flag to indicate which layer should be filtered, current flow specification match part also doesn't include the NVO3 header information. This draft proposes a new subset of component types and extended community to support the NVO3 flow-spec application. 2. Use cases 2.1. Flow-spec in Data Center BGP Flow-spec can be used for DDOS mitigation and traffic steering for service chaining in a data center. A centralized BGP Flowspec speaker should be deployed in the data center. When BGP Flow-spec is used for DDOS mitigation, the centralized speaker also acts as a traffic analyzer. When the analyzer detects abnormal traffic, it will automatically generate Flow-spec rules and distribute it to remote BGP peers, i.e., the remote NVEs connecting TSs or outside networks. Inner layer 2/3 information and VN ID should be included as the match part. Traffic-rate and traffic- marking are useful for simple attacks. However, for complicated attacks, traffic-redirect should be used for DDOS traffic cleaning. Currently traffic-redirect method only includes redirecting traffic into a VRF by specifying the VPN RT value and redirecting to IP. If the traffic cleaner is also attached to the NVO3 network, redirecting traffic into a NVO3 tunnel will be more straightforward to steer the abnormal traffic to the cleaner device attached to a remote NVE. When BGP Flow-spec is used for service chaining, the classification rules is determined on the centralized speaker and is distributed to each classifier to steer the traffic to a service function path Hao, et,al Expires January 6, 2016 [Page 3] Internet-Draft NVO3 Flow Spec July 2015 (SFP). A SFP can be multiple segmented NVO3 tunnel stitched together to forward the specific traffic through an ordered SFs. In this case, redirecting traffic to a specified SFP should be enforced on the classifier. 2.2. Flow-spec for Data Center Interconnection +--+ |CE| +--+ | +----+ +----| PE |----+ +---------+ | +----+ | +---------+ +----+ | +---+ +---+ | +----+ |NVE1|--| | | | | |--|NVE3| +----+ | |GW1| |GW3| | +----+ | +---+ +---+ | | NVO-1 | MPLS | NVO-2 | | +---+ +---+ | | | | | | | +----+ | |GW2| |GW4| | +----+ |NVE2|--| +---+ +---+ |--|NVE4| +----+ +---------+ | | +---------+ +----+ +--------------+ Figure 1 NVO3 data center interconnection The MPLS L2/L3 VPN in the WAN network can be used for NVO3 based data center network interconnection. When the DC and the WAN are operated by the same administrative entity, the Service Provider can decide to integrate the GW and WAN Edge PE functions in the same router for obvious CAPEX and OPEX saving reasons. This is illustrated in Figure 1. There are two interconnection solutions as follows: 1. End to end NVO3 tunnel across different data centers. NVE1 perform NVO3 encapsulation for DCI interconnection with NVE3, the destination VTEP IP is NVE3's IP. The GW doesn't perform NVO3 tunnel termination. The DCI WAN is pure underlay network. 2. Segmented NVO3 tunnels across different data centers. NVE1 doesn't perform end to end NVO3 encapsulation to NVE3 for DCI interconnection. The GW performs NVO3 tunnel encapsulation, and then transmits the inner original traffic through MPLS network to peer data center GW. The peer data center GW terminates MPLS encapsulation in WAN network, and then uses another NVO3 encapsulation to transmit the traffic to local NVE3. Hao, et,al Expires January 6, 2016 [Page 4] Internet-Draft NVO3 Flow Spec July 2015 In the first solution, to differentiate bandwidth and QOS among different tenants or applications, different TE tunnels in the WAN network will be used to carry the end to end NVO3 encapsulation traffic using VN ID, NVO3 outer header DSCP and etc as traffic classification match part. BGP Flow-spec can be used to set the traffic classification. In the second solution, a centralized BGP speaker can be deployed for DDOS mitigation in the WAN network. When the analyzer detects abnormal traffic, it will automatically generate Flow-spec rules and distribute it to each GW, the match part should include inner or outer L2/L3 layer or NVO3 header. 2.3. Requirements Summary 1. The match part should include inner L2/L3 header information and NVO3 header. 2. The Traffic Filtering Actions supports redirect to TE tunnel or NVO3 tunnel. 3. The Flow Specification encoding for NVO3 The NLRI format for this address family consists of a fixed-length Route Distinguisher field (8 bytes) followed by a flow specification, following the encoding defined in this document. The NLRI length field shall include both the 8 bytes of the Route Distinguisher as well as the subsequent flow specification. Flow specification rules received via this NLRI apply only to traffic that belongs to the VPN instance(s) in which it is imported. Flow rules are accepted by default, when received from remote PE routers. Because NVO3 encapsulation includes outer layer 2/3 header, inner layer 2/3 header and NVO3 header, inner and outer layer Flag is introduced to indicate the Flow-spec rules imposing on outer or inner layer. The component types defined in [RFC5575],[draft-ietf- idr-flow-spec-v6-06] and [draft-ietf-idr-flowspec-l2vpn-01] combined with the Flag indicator can be used for the NVO3 traffic filtering. A bit in 'traffic action' is applied as the inner and outer layer indicator. Hao, et,al Expires January 6, 2016 [Page 5] Internet-Draft NVO3 Flow Spec July 2015 For NVO3 header part, the following additional component types are introduced. Type TBD1 - VN ID Encoding: Defines a list of {operation, value} pairs used to match 24-bit VN ID fields. VN ID is tenant identification in NVO3 network. Values are encoded as 1- to 3-byte quantities. Type TBD2 - NVO3 Proto Type Encoding: Defines a list of {operation, value} pairs used to match 8-bit Protocol Type fields. Values are encoded as 1-byte quantity. Other types: The additional types for GENEVE,GUE and GPE header specific part will be added later. 4. The Flow Specification Traffic Actions for NVO3 40 41 42 43 44 45 46 47 +---+---+---+---+---+---+---+---+ | reserved | L | S | T | +---+---+---+---+---+---+---+---+ Layer Flag(Bit 45): When this bit is set, the corresponding filtering rules will be applied on the NVO3 inner layer. If not set, the corresponding filtering rules will be applied on the NVO3 outer layer. +--------+--------------------+--------------------------+ | type | extended community | RFC or Draft | +--------+--------------------+--------------------------+ | 0x8006 | traffic-rate | RFC5575 | | 0x8007 | traffic-action | RFC5575 | | 0x8008 | redirect | RFC5575 | | 0x8009 | traffic-marking | RFC5575 | | TBD | redirect to Tunnel | This draft | +--------+--------------------+--------------------------+ Besides to support the above extended communities per RFC5575, similar to 'redirect to IP' [REDIRECTIP], a new extended community Hao, et,al Expires January 6, 2016 [Page 6] Internet-Draft NVO3 Flow Spec July 2015 of 'redirect to Tunnel' is requested for service chaining and traffic steering. The sub-type value [to be assigned by IANA] indicates that the global administrator and local administrator fields encode a flow-spec 'redirect to tunnel' action. In the new extended communities the 2-byte local administrator field is formatted as shown in Figure 1. 0 1 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | Reserved |C| +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ Figure 2 : Local Administrator In the local administrator field the least-significant bit is defined as the 'C' (or copy) bit. When the 'C' bit is set the redirection applies to copies of the matching packets and not to the original traffic stream. All bits other than the 'C' bit in the local administrator field MUST be set to 0 by the originating BGP speaker and ignored by receiving BGP speakers. A set of tunnels can be specified in the BGP Path Attribute. In [draft-rosen-idr-tunnel-encaps-00], the tunnel type and encapsulation information of VXLAN, NVGRE, VXLAN-GPE and etc are defined using Tunnel Encapsulation Attribute Sub-TLVs. In [draft-li- idr-mpls-path-programming-01], the tunnel type and encapsulation information of RSVP-TE, LDP, Segment Routing Path and etc are defined using Extended Unicast Tunnel Attributes. If a BGP speaker receives multiple flow-spec routes for the same flow-spec NLRI and all of them are considered best and usable paths according to the BGP speaker's multipath configuration and each one carries one or more 'redirect to Tunnel' extended communities, the BGP speaker SHOULD load-share the redirected packets across all the Tunnels. 5. Security Considerations No new security issues are introduced to the BGP protocol by this specification. Hao, et,al Expires January 6, 2016 [Page 7] Internet-Draft NVO3 Flow Spec July 2015 6. IANA Considerations A bit in 'Traffic Action' is requested as the inner and outer layer indicator for Flow-spec rules. IANA is requested to create and maintain a new registry entitled: "Flow spec NVO3 Component Types": Type TBD1 - - VN ID Type TBD2 - - NVO3 Proto Type IANA is requested to update the reference for the following assignment in the "BGP Extended Communities Type - extended, transitive" registry: Type value Name Reference ---------- ---------------------------------------- --------- TBD Redirect to Tunnel [this document] 6.1. Normative References [1] [RFC2119] Bradner, S., "Key words for use in RFCs to Indicate Requirement Levels", BCP 14, RFC 2119, March 1997. [2] [RFC5575] P. Marques, N. Sheth, R. Raszuk, B. Greene, J.Mauch, D. McPherson, "Dissemination of Flow Specification Rules", RFC 5575, August 2009. [3] [GENEVE] J. Gross, T. Sridhar, etc, " Geneve: Generic Network Virtualization Encapsulation", draft-ietf-nvo3-geneve-00, May 2015. [4] [GUE] T. Herbert, L. Yong, O. Zia, " Generic UDP Encapsulation", draft-ietf-nvo3-gue-01, Jun 2015. [5] [GPE] P. Quinn,etc, " Generic Protocol Extension for VXLAN", draft-ietf-nvo3-vxlan-gpe-00, May 2015. Hao, et,al Expires January 6, 2016 [Page 8] Internet-Draft NVO3 Flow Spec July 2015 6.2. Informative References [1] [EVPN] Sajassi et al., "BGP MPLS Based Ethernet VPN", draft- ietf-l2vpn-evpn-07.txt, work in progress, May, 2014. [2] [REDIRECTIP] J. Uttaro et al., "BGP Flow-Spec Redirect to IP Action", draft-ietf-idr-flowspec-redirect-ip-02.txt, work in progress, Feb, 2015. 7. Acknowledgments The authors wish to acknowledge the important contributions of Susan Hares, Qiandeng Liang, Nan Wu. Hao, et,al Expires January 6, 2016 [Page 9] Internet-Draft NVO3 Flow Spec July 2015 Authors' Addresses Weiguo Hao Huawei Technologies 101 Software Avenue, Nanjing 210012 China Email: haoweiguo@huawei.com Shunwan Zhuang Huawei Technologies Huawei Bld., No.156 Beiqing Rd. Beijing 100095 China Email: zhuangshunwan@huawei.com Zhenbin Li Huawei Technologies Huawei Bld., No.156 Beiqing Rd. Beijing 100095 China Email: lizhenbin@huawei.com Hao, et,al Expires January 6, 2016 [Page 10]