idnits 2.17.1 draft-ietf-idr-flowspec-l2vpn-00.txt: Checking boilerplate required by RFC 5378 and the IETF Trust (see https://trustee.ietf.org/license-info): ---------------------------------------------------------------------------- No issues found here. Checking nits according to https://www.ietf.org/id-info/1id-guidelines.txt: ---------------------------------------------------------------------------- No issues found here. Checking nits according to https://www.ietf.org/id-info/checklist : ---------------------------------------------------------------------------- ** The abstract seems to contain references ([RFC5575]), which it shouldn't. Please replace those with straight textual mentions of the documents in question. ** The document seems to lack a both a reference to RFC 2119 and the recommended RFC 2119 boilerplate, even if it appears to use RFC 2119 keywords. RFC 2119 keyword, line 242: '..., the component type MUST not be used....' RFC 2119 keyword, line 254: '..., the component type MUST not be used....' Miscellaneous warnings: ---------------------------------------------------------------------------- == The copyright year in the IETF Trust and authors Copyright Line does not match the current year == Using lowercase 'not' together with uppercase 'MUST', 'SHALL', 'SHOULD', or 'RECOMMENDED' is not an accepted usage according to RFC 2119. Please use uppercase 'NOT' together with RFC 2119 keywords (if that is what you mean). Found 'MUST not' in this paragraph: In single VLAN case, the component type MUST not be used. == Using lowercase 'not' together with uppercase 'MUST', 'SHALL', 'SHOULD', or 'RECOMMENDED' is not an accepted usage according to RFC 2119. Please use uppercase 'NOT' together with RFC 2119 keywords (if that is what you mean). Found 'MUST not' in this paragraph: In single VLAN case, the component type MUST not be used. -- The document date (March 7, 2015) is 3338 days in the past. Is this intentional? Checking references for intended status: Proposed Standard ---------------------------------------------------------------------------- (See RFCs 3967 and 4897 for information about using normative references to lower-maturity documents in RFCs) -- Looks like a reference, but probably isn't: 'RFC5575' on line 298 -- Looks like a reference, but probably isn't: 'EVPN' on line 105 -- Looks like a reference, but probably isn't: 'RFC4761' on line 106 -- Looks like a reference, but probably isn't: 'RFC4762' on line 106 -- Looks like a reference, but probably isn't: 'RFC 6074' on line 107 == Missing Reference: '4761' is mentioned on line 111, but not defined == Missing Reference: '4762' is mentioned on line 111, but not defined == Missing Reference: '6074' is mentioned on line 112, but not defined == Unused Reference: '1' is defined on line 365, but no explicit reference was found in the text == Unused Reference: '2' is defined on line 368, but no explicit reference was found in the text == Unused Reference: '3' is defined on line 351, but no explicit reference was found in the text == Unused Reference: '4' is defined on line 355, but no explicit reference was found in the text == Unused Reference: '5' is defined on line 359, but no explicit reference was found in the text == Outdated reference: A later version (-11) exists of draft-ietf-l2vpn-evpn-07 -- Possible downref: Non-RFC (?) normative reference: ref. '2' Summary: 2 errors (**), 0 flaws (~~), 12 warnings (==), 7 comments (--). Run idnits with the --verbose option for more detailed information about the items above. -------------------------------------------------------------------------------- 1 IDR W. Hao 2 Q. Liang 3 Internet Draft Huawei Technologies Ltd. 4 Intended status: Standards Track Jim Uttaro 5 AT&T 6 S. Litkowski 7 Orange Business Service 8 S. Zhuang 9 Huawei Technologies Ltd. 10 Expires: September 2015 March 7, 2015 12 Dissemination of Flow Specification Rules for L2 VPN 13 draft-ietf-idr-flowspec-l2vpn-00.txt 15 Abstract 17 This document defines BGP flow-spec extension for Ethernet traffic 18 filtering in L2 VPN network. SAFI=134 in [RFC5575] is redefined for 19 dissemination traffic filtering information in an L2VPN environment. 20 A new subset of component types and extended community also are 21 defined. 23 Status of this Memo 25 This Internet-Draft is submitted in full conformance with the 26 provisions of BCP 78 and BCP 79. 28 Internet-Drafts are working documents of the Internet Engineering 29 Task Force (IETF), its areas, and its working groups. Note that 30 other groups may also distribute working documents as Internet- 31 Drafts. 33 Internet-Drafts are draft documents valid for a maximum of six 34 months and may be updated, replaced, or obsoleted by other documents 35 at any time. It is inappropriate to use Internet-Drafts as 36 reference material or to cite them other than as "work in progress." 38 The list of current Internet-Drafts can be accessed at 39 http://www.ietf.org/ietf/1id-abstracts.txt. 41 The list of Internet-Draft Shadow Directories can be accessed at 42 http://www.ietf.org/shadow.html 44 This Internet-Draft will expire on September 7, 2015. 46 Copyright Notice 48 Copyright (c) 2015 IETF Trust and the persons identified as the 49 document authors. All rights reserved. 51 This document is subject to BCP 78 and the IETF Trust's Legal 52 Provisions Relating to IETF Documents 53 (http://trustee.ietf.org/license-info) in effect on the date of 54 publication of this document. Please review these documents 55 carefully, as they describe your rights and restrictions with 56 respect to this document. Code Components extracted from this 57 document must include Simplified BSD License text as described in 58 Section 4.e of the Trust Legal Provisions and are provided without 59 warranty as described in the Simplified BSD License. 61 Table of Contents 63 1. Introduction ................................................ 2 64 2. Layer 2 Flow Specification encoding in BGP................... 3 65 3. Ethernet Flow Specification encoding in BGP.................. 4 66 4. Ethernet Flow Specification Traffic Actions.................. 6 67 5. Security Considerations...................................... 7 68 6. IANA Considerations ......................................... 7 69 6.1. Normative References.................................... 8 70 6.2. Informative References.................................. 9 71 7. Acknowledgments ............................................. 9 73 1. Introduction 75 BGP Flow-spec is an extension to BGP that allows for the 76 dissemination of traffic flow specification rules. It leverages the 77 BGP Control Plane to simplify the distribution of ACLs, new filter 78 rules can be injected to all BGP peers simultaneously without 79 changing router configuration. The typical application of BGP Flow- 80 spec is to automate the distribution of traffic filter lists to 81 routers for DDOS mitigation. 83 RFC5575 defines a new BGP Network Layer Reachability Information 84 (NLRI) format used to distribute traffic flow specification rules. 85 NLRI (AFI=1, SAFI=133)is for IPv4 unicast filtering. NLRI (AFI=1, 86 SAFI=134)is for BGP/MPLS VPN filtering. The Flow specification match 87 part only includes L3/L4 information like source/destination prefix, 88 protocol, ports, and etc, so traffic flows can only be selectively 89 filtered based on L3/L4 information. 91 Layer 2 Virtual Private Networks L2VPNs have already been deployed 92 in an increasing number of networks today. In L2VPN network, we also 93 have requirement to deploy BGP Flow-spec to mitigate DDoS attack 94 traffic. Within L2VPN network, both IP and non-IP Ethernet traffic 95 maybe exist. For IP traffic filtering, the Flow specification rules 96 defined in [RFC5575] which include match criteria and actions can 97 still be used, flow specification rules received via new NLRI format 98 apply only to traffic that belongs to the VPN instance(s) in which 99 it is imported. For non-IP Ethernet traffic filtering, Layer 2 100 related information like source/destination MAC and VLAN should be 101 considered. But the flow specification match criteria defined in 102 RFC5575 only include layer 3 and layer 4 IP information, layer 2 103 Ethernet information haven't been included. 105 There are different kinds of L2VPN networks like EVPN [EVPN], BGP 106 VPLS [RFC4761], LDP VPLS [RFC4762] and border gateway protocol (BGP) 107 auto discovery [RFC 6074]. Because the flow-spec feature relies on 108 BGP protocol to distribute traffic filtering rules, so it can only 109 be incrementally deployed in those L2VPN networks where BGP is used 110 for auto discovery and/or signaling purposes such as BGP-based VPLS 111 [4761], EVPN and LDP-based VPLS [4762] with BGP auto-discovery 112 [6074]. 114 This draft proposes a new subset of component types and extended 115 community to support L2VPN flow-spec application. SAFI=134 in 116 [RFC5575] is redefined for dissemination traffic filtering 117 information in an L2VPN environment. 119 2. Layer 2 Flow Specification encoding in BGP 121 The [RFC5575] defines SAFI 133 and SAFI 134 for "dissemination of 122 IPv4 flow specification rules" and "dissemination of VPNv4 flow 123 specification rules" respectively. [draft-ietf-idr-flow-spec-v6-06] 124 redefines the [RFC5575] SAFIs in order to make them applicable to 125 both IPv4 and IPv6 applications. This document will further redefine 126 the SAFI 134 in order to make them applicable to L2VPN applications. 128 The following changes are defined: 130 "SAFI 134 for dissemination of L3VPN flow specification rules" to 131 now be defined as "SAFI 134 for dissemination of VPN flow 132 specification rules" 134 For SAFI 134 the indication to which address family it is referring 135 to will be recognized by AFI value (AFI=1 for VPNv4, AFI=2 VPNv6 and 136 AFI=25 for L2VPN). Such modification is fully backwards compatible 137 with existing implementation and production deployments. 139 3. Ethernet Flow Specification encoding in BGP 141 The NLRI format for this address family consists of a fixed-length 142 Route Distinguisher field (8 bytes) followed by a flow specification, 143 following the encoding defined in this document. The NLRI length 144 field shall include both the 8 bytes of the Route Distinguisher as 145 well as the subsequent flow specification. 147 Flow specification rules received via this NLRI apply only to 148 traffic that belongs to the VPN instance(s) in which it is imported. 149 Flow rules are accepted by default, when received from remote PE 150 routers. 152 Besides the component types defined in [RFC5575] and [draft-ietf- 153 idr-flow-spec-v6-06], this document proposes the following 154 additional component types for L2VPN Ethernet traffic filtering: 156 Type 14 - Source MAC 158 Encoding: 160 Defines a list of {operation(op), value} pairs used to match source 161 MAC. Values are encoded as 6-byte quantities. The operation field is 162 encoded as ''Numeric operator'' defined in [RFC5575]. 164 Type 15 - Destination MAC 166 Encoding: 168 Defines a list of {operation, value} pairs used to match destination 169 MAC. Values are encoded as 6-byte quantities. 171 Type 16 - Ethernet Type 173 Encoding: 175 Defines a list of {operation, value} pairs used to match two-octet 176 field. Values are encoded as 2-byte quantities. 178 Ethernet II framing defines the two-octet EtherType field in an 179 Ethernet frame, preceded by destination and source MAC addresses, 180 that identifies an upper layer protocol encapsulating the frame data. 182 Type 17 - DSAP(Destination Service Access Point) in LLC 184 Encoding: 185 Defines a list of {operation, value} pairs used to match 1-octet 186 DSAP in the 802.2 LLC(Logical Link Control Header). Values are 187 encoded as 1-byte quantities. 189 Type 18 - SSAP(Source Service Access Point) in LLC 191 Encoding: 193 Defines a list of {operation, value} pairs used to match 1-octet 194 SSAP in the 802.2 LLC. Values are encoded as 1-byte quantities. 196 Type 19 - Control field in LLC 198 Encoding: 200 Defines a list of {operation, value} pairs used to match 1-octet 201 control field in the 802.2 LLC. Values are encoded as 1-byte 202 quantities. 204 Type 20 - SNAP 206 Encoding: 208 Defines a list of {operation, value} pairs used to match 5-octet 209 SNAP(Sub-Network Access Protocol) field. Values are encoded as 5- 210 byte quantities. 212 Type 21 - VLAN ID 214 Encoding: 216 Defines a list of {operation, value} pairs used to match VLAN ID. 217 Values are encoded as 1- or 2-byte quantities. 219 In virtual local-area network (VLAN) stacking case, the VLAN ID is 220 outer VLAN ID. 222 Type 22 - VLAN COS 224 Encoding: 226 Defines a list of {operation, value} pairs used to match 3-bit VLAN 227 COS fields [802.1p]. Values are encoded using a single byte, where 228 the five most significant bits are zero and the three least 229 significant bits contain the VLAN COS value. 231 In virtual local-area network (VLAN) stacking case, the VLAN COS is 232 outer VLAN COS. 234 Type 23 - Inner VLAN ID 236 Encoding: 238 Defines a list of {operation, value} pairs used to match inner VLAN 239 ID using for virtual local-area network (VLAN) stacking or Q in Q 240 case. Values are encoded as 1- or 2-byte quantities. 242 In single VLAN case, the component type MUST not be used. 244 Type 24 - Inner VLAN COS 246 Encoding: 248 Defines a list of {operation, value} pairs used to match 3-bit inner 249 VLAN COS fields [802.1p] using for virtual local-area network (VLAN) 250 stacking or Q in Q case. Values are encoded using a single byte, 251 where the five most significant bits are zero and the three least 252 significant bits contain the VLAN COS value. 254 In single VLAN case, the component type MUST not be used. 256 4. Ethernet Flow Specification Traffic Actions 258 +--------+--------------------+--------------------------+ 259 | type | extended community | encoding | 260 +--------+--------------------+--------------------------+ 261 | 0x8006 | traffic-rate | 2-byte as#, 4-byte float | 262 | 0x8007 | traffic-action | bitmask | 263 | 0x8008 | redirect | 6-byte Route Target | 264 | 0x8009 | traffic-marking | DSCP value | 265 +--------+--------------------+--------------------------+ 266 Besides to support the above extended communities per RFC5575, this 267 document also proposes the following BGP extended communities 268 specifications for Ethernet flow to extend [RFC5575]: 270 +--------+--------------------+--------------------------+ 271 | type | extended community | encoding | 272 +--------+--------------------+--------------------------+ 273 | 0x800A | VLAN COS marking | COS value | 274 +--------+--------------------+--------------------------+ 275 The VLAN COS marking extended community instructs a system to modify 276 the COS bits of a transiting Ethernet packet to the corresponding 277 value. This extended community is encoded as a sequence of 5 zero 278 bytes followed by the VLAN COS value encoded in the 3 least 279 significant bits of 6th byte. 281 In virtual local-area network (VLAN) stacking case, the VLAN COS is 282 outer VLAN COS. 284 5. Security Considerations 286 No new security issues are introduced to the BGP protocol by this 287 specification. 289 6. IANA Considerations 291 IANA is requested to rename currently defined SAFI 134 per [RFC5575] 292 to read: 294 134 VPN dissemination of flow specification rules 296 IANA is requested to create and maintain a new registry for "Flow 297 spec L2VPN Component Types". For completeness, the types defined in 298 [RFC5575] and [draft-ietf-idr-flow-spec-v6-06] also are listed here. 300 +--------+-------------------------------+--------------------------+ 301 | type | RFC or Draft | discription | 302 +--------+-------------------------------+--------------------------+ 303 | 1 |RFC5575 | Destination Prefix | 304 | 1 |draft-ietf-idr-flow-spec-v6-06 | Destination IPv6 Prefix | 305 | 2 |RFC5575 | Source Prefix | 306 | 2 |draft-ietf-idr-flow-spec-v6-06 | Source IPv6 Prefix | 307 | 3 |RFC5575 | IP Protocol | 308 | 3 |draft-ietf-idr-flow-spec-v6-06 | Next Header | 309 | 4 |RFC5575 | Port | 310 | 5 |RFC5575 | Destination port | 311 | 6 |RFC5575 | Source port | 312 | 7 |RFC5575 | ICMP type | 313 | 8 |RFC5575 | ICMP code | 314 | 9 |RFC5575 | TCP flags | 315 | 10 |RFC5575 | Packet length | 316 | 11 |RFC5575 | DSCP | 317 | 12 |RFC5575 | Fragment | 318 | 13 |draft-ietf-idr-flow-spec-v6-06 | Flow Label | 319 | 14 |This draft | Source MAC | 320 | 15 |This draft | Destination MAC | 321 | 16 |This draft | Ethernet Type | 322 | 17 |This draft | DSAP in LLC | 323 | 18 |This draft | SSAP in LLC | 324 | 19 |This draft | Control field in LLC | 325 | 20 |This draft | SNAP | 326 | 21 |This draft | VLAN ID | 327 | 22 |This draft | VLAN COS | 328 | 23 |This draft | Inner VLAN ID | 329 | 24 |This draft | Inner VLAN COS | 330 +--------+-------------------------------+--------------------------+ 331 IANA is requested to update the reference for the following 332 assignment in the "BGP Extended Communities Type - extended, 333 transitive" registry: 335 Type value Name Reference 337 ---------- ---------------------------------------- --------- 339 0x080A Flow spec VLAN COS marking [this document] 341 6.1. Normative References 343 [1] [RFC2119] Bradner, S., "Key words for use in RFCs to Indicate 345 Requirement Levels", BCP 14, RFC 2119, March 1997. 347 [2] [RFC5575] P. Marques, N. Sheth, R. Raszuk, B. Greene, J.Mauch, 348 D. McPherson, "Dissemination of Flow Specification Rules", RFC 349 5575, August 2009. 351 [3] [RFC4761] K. Kompella, Ed., Y. Rekhter, Ed., "Virtual Private 352 LAN Service (VPLS) Using BGP for Auto-Discovery and Signaling", 353 RFC4761, January 2007. 355 [4] [RFC4762] M. Lasserre, Ed., V. Kompella, Ed., "Virtual Private 356 LAN Service (VPLS) Using Label Distribution Protocol (LDP) 357 Signaling", RFC4762, January 2007. 359 [5] [RFC6074] E. Rosen, B. Davie, V. Radoaca, "Provisioning, Auto- 360 Discovery, and Signaling in Layer 2 Virtual Private Networks 361 (L2VPNs)", RFC6074, January 2011. 363 6.2. Informative References 365 [1] [EVPN] Sajassi et al., "BGP MPLS Based Ethernet VPN", draft- 366 ietf-l2vpn-evpn-07.txt, work in progress, May, 2014. 368 [2] [IEEE 802.1p] Javin, et.al. "IEEE 802.1p: LAN Layer 2 QoS/CoS 369 Protocol for Traffic Prioritization", 2012-02-15 371 7. Acknowledgments 373 The authors wish to acknowledge the important contributions of 374 Xiaohu Xu, Lucy Yong. 376 Authors' Addresses 378 Weiguo Hao 379 Huawei Technologies 380 101 Software Avenue, 381 Nanjing 210012 382 China 383 Email: haoweiguo@huawei.com 385 Qiandeng Liang 386 Huawei Technologies 387 101 Software Avenue, 388 Nanjing 210012 389 China 390 Email: liangqiandeng@huawei.com 392 James Uttaro 393 AT&T 394 EMail: uttaro@att.com 396 Stephane Litkowski 397 Orange 398 stephane.litkowski@orange.com 400 Shunwan Zhuang 401 Huawei Technologies 402 Huawei Bld., No.156 Beiqing Rd. 403 Beijing 100095 404 China 405 Email: zhuangshunwan@huawei.com