idnits 2.17.1 draft-ietf-bess-fat-pw-bgp-02.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 ([RFC4761], [RFC6624], [RFC6391], [RFC4447]), which it shouldn't. Please replace those with straight textual mentions of the documents in question. 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: Any other traffic MUST not have a flow label. -- The document date (March 27, 2017) is 2587 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) == Unused Reference: 'I-D.ietf-l2vpn-vpls-multihoming' is defined on line 271, but no explicit reference was found in the text == Unused Reference: 'RFC2842' is defined on line 315, but no explicit reference was found in the text == Unused Reference: 'RFC2858' is defined on line 319, but no explicit reference was found in the text == Outdated reference: A later version (-07) exists of draft-ietf-l2vpn-vpls-multihoming-06 ** Downref: Normative reference to an Informational RFC: RFC 3985 ** Obsolete normative reference: RFC 4447 (Obsoleted by RFC 8077) -- Obsolete informational reference (is this intentional?): RFC 2842 (Obsoleted by RFC 3392) -- Obsolete informational reference (is this intentional?): RFC 2858 (Obsoleted by RFC 4760) Summary: 3 errors (**), 0 flaws (~~), 6 warnings (==), 3 comments (--). Run idnits with the --verbose option for more detailed information about the items above. -------------------------------------------------------------------------------- 2 INTERNET-DRAFT K. Patel 3 Intended Status: Standard Track Arrcus 4 S. Boutros 5 VMware 6 J. Liste 7 Cisco 8 B. Wen 9 Comcast 10 J. Rabadan 11 Nokia 13 Expires: September 28, 2017 March 27, 2017 15 Extensions to BGP Signaled Pseudowires to support Flow-Aware Transport 16 Labels 17 draft-ietf-bess-fat-pw-bgp-02.txt 19 Abstract 21 [RFC6391] describes a mechanism that uses an additional label (Flow 22 Label) in the MPLS label stack that allows Label Switch Routers to 23 balance flows within Pseudowires at a finer granularity than the 24 individual Pseudowires across the Equal Cost Multiple Paths (ECMPs) 25 that exists within the Packet Switched Network (PSN). 27 Furthermore,[RFC6391] defines the LDP protocol extensions required to 28 synchronize the flow label states between the ingress and egress PEs 29 when using the signaling procedures defined in the [RFC4447]. 31 This draft defines protocol extensions required to synchronize flow 32 label states among PEs when using the BGP-based signaling procedures 33 defined in [RFC4761]. These protocol extensions are equally 34 applicable to point-to-point L2VPNs defined in [RFC6624]. 36 Status of this Memo 38 This Internet-Draft is submitted to IETF in full conformance with the 39 provisions of BCP 78 and BCP 79. 41 Internet-Drafts are working documents of the Internet Engineering 42 Task Force (IETF), its areas, and its working groups. Note that 43 other groups may also distribute working documents as 44 Internet-Drafts. 46 Internet-Drafts are draft documents valid for a maximum of six months 47 and may be updated, replaced, or obsoleted by other documents at any 48 time. It is inappropriate to use Internet-Drafts as reference 49 material or to cite them other than as "work in progress." 51 The list of current Internet-Drafts can be accessed at 52 http://www.ietf.org/1id-abstracts.html 54 The list of Internet-Draft Shadow Directories can be accessed at 55 http://www.ietf.org/shadow.html 57 Copyright and License Notice 59 Copyright (c) 2017 IETF Trust and the persons identified as the 60 document authors. All rights reserved. 62 This document is subject to BCP 78 and the IETF Trust's Legal 63 Provisions Relating to IETF Documents 64 (http://trustee.ietf.org/license-info) in effect on the date of 65 publication of this document. Please review these documents 66 carefully, as they describe your rights and restrictions with respect 67 to this document. Code Components extracted from this document must 68 include Simplified BSD License text as described in Section 4.e of 69 the Trust Legal Provisions and are provided without warranty as 70 described in the Simplified BSD License. 72 Table of Contents 74 1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . 3 75 1.1 Requirements Language . . . . . . . . . . . . . . . . . . . 3 76 2. Modifications to Layer 2 Info Extended Community . . . . . . . 4 77 3. Signaling the Presence of the Flow Label . . . . . . . . . . . 5 78 4 Acknowledgements . . . . . . . . . . . . . . . . . . . . . . . . 6 79 5 Contributors . . . . . . . . . . . . . . . . . . . . . . . . . . 6 80 6. IANA Considerations . . . . . . . . . . . . . . . . . . . . . 6 81 7. Security Considerations . . . . . . . . . . . . . . . . . . . 6 82 8. References . . . . . . . . . . . . . . . . . . . . . . . . . . 6 83 8.1. Normative References . . . . . . . . . . . . . . . . . . . 7 84 8.2. Informative References . . . . . . . . . . . . . . . . . . 7 85 Authors' Addresses . . . . . . . . . . . . . . . . . . . . . . . . 8 87 1 Introduction 89 A pseudowire (PW)[RFC3985] is normally transported over one single 90 network path, even if multiple Equal Cost Multiple Paths (ECMPs) 91 exist between the ingress and egress PW provider edge (PE) equipment. 93 This is required to preserve the characteristics of the emulated 94 service. The use of a single path to preserve the packet delivery 95 order remains the default mode of operation of a PW and is described 96 in [RFC4385], [RFC4928]. 98 Using the principles defined in [RFC6391], this draft augments the 99 BGP-signaling procedures of [RFC4761] and [RFC6624] to allow an 100 OPTIONAL mode that may be employed when the use of ECMPs is known to 101 be beneficial to the operation of the PW. 103 High bandwidth Ethernet-based services are a prime example that 104 benefits from the ability to load-balance flows in a PW over multiple 105 PSN paths. In general, load-balancing is applicable when the PW 106 attachment circuit bandwidth and PSN core link bandwidth are of same 107 order of magnitude. 109 To achieve the load-balancing goal,[RFC6391] introduces the notion of 110 an additional Label Stack Entry (LSE) (Flow label) located at the 111 bottom of the stack (right after PW LSE). Label Switching Routers 112 (LSRs) commonly generate a hash of the label stack in order to 113 discriminate and distribute flows over available ECMPs. The presence 114 of the Flow label (closely associated to a flow determined by the 115 ingress PE) will normally provide the greatest entropy. 117 Furthermore, following the procedures for Inter-AS scenarios 118 described in [RFC4761] section 3.4, the Flow label should never be 119 handled by the ASBRs, only the terminating PEs on each AS will be 120 responsible for popping or pushing this label. This is equally 121 applicable to Method B [section 3.4.2] of [RFC4761] where ASBRs are 122 responsible for swapping the PW label as traffic traverses from ASBR 123 to PE and ASBR to ASBR directions. Therefore, the Flow label will 124 remain untouched across AS boundaries. 126 1.1 Requirements Language 128 The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT", 129 "SHOULD", "SHOULD NOT", "RECOMMENDED", "MAY", and "OPTIONAL" in this 130 document are to be interpreted as described in RFC 2119 [RFC2119]. 132 2. Modifications to Layer 2 Info Extended Community 134 The Layer 2 Info Extended Community is used to signal control 135 information about the pseudowires to be setup. The extended 136 community format is described in [RFC4761]. The format of this 137 extended community is described as: 139 +------------------------------------+ 140 | Extended community type (2 octets) | 141 +------------------------------------+ 142 | Encaps Type (1 octet) | 143 +------------------------------------+ 144 | Control Flags (1 octet) | 145 +------------------------------------+ 146 | Layer-2 MTU (2 octet) | 147 +------------------------------------+ 148 | Reserved (2 octets) | 149 +------------------------------------+ 151 Figure 1: Layer 2 Info Extended Community 153 Control Flags: 155 This field contains bit flags relating to the control information 156 about pseudowires. This field is augmented with a definition of 2 new 157 flags field. 159 0 1 2 3 4 5 6 7 160 +-+-+-+-+-+-+-+-+ 161 |Z|Z|Z|Z|T|R|C|S| (Z = MUST Be Zero) 162 +-+-+-+-+-+-+-+-+ 164 Figure 2: Control Flags Bit Vector 166 With Reference to the Control Flags Bit Vector, the following bits in 167 the Control Flags are defined; the remaining bits, designated Z, MUST 168 be set to zero when sending and MUST be ignored when receiving this 169 Extended Community. 171 Z Must be set to Zero. 173 T When the bit value is 1, the PE is requesting the ability 174 to send a Pseudowire packet that includes a flow label. 175 When the bit value is 0, the PE is indicating that it will 176 not send a Pseudowire packet containing a flow label. 178 R When the bit value is 1, the PE is able to receive a 179 Pseudowire packet with a flow label present. When the bit 180 value is 0, the PE is unable to receive a Pseudowire packet 181 with the flow label present. 183 C Defined in [RFC4761]. 185 S Defined in [RFC4761]. 187 3. Signaling the Presence of the Flow Label 189 As part of the Pseudowire signaling procedures described in 190 [RFC4761], a Layer 2 Info Extended Community is advertised in the 191 VPLS BGP NLRI. This draft recommends that the Control Flags field of 192 this extended community be used to synchronize the flow label states 193 amongst PEs for a given L2VPN. 195 A PE that wishes to send a flow label in a Pseudowire packet MUST 196 include in its VPLS BGP NLRI a Layer 2 Info Extended Community using 197 Control Flags field with T = 1. 199 A PE that is willing to receive a flow label in a Pseudowire packet 200 MUST include in its VPLS BGP NLRI a Layer 2 Info Extended Community 201 using Control Flags field with R = 1. 203 A PE that receives a VPLS BGP NLRI containing a Layer 2 Info Extended 204 Community with R = 0 NUST NOT include a flow label in the Pseudowire 205 packet. 207 Therefore, a PE sending a Control Flags field with T = 1 and 208 receiving a Control Flags field with R = 1 MUST include a flow label 209 in the Pseudowire packet. Under all other combinations, a PE MUST 210 NOT include a flow label in the Pseudowire packet. 212 A PE MAY support the configuration of the flow label (T and R bits) 213 on a per-service (e.g. VPLS VFI) basis. Furthermore, it is also 214 possible that on a given service, PEs may not share the same flow 215 label settings. The presence of a flow label is therefore determined 216 on a per-peer basis and according to the local and remote T and R bit 217 values. For example, a PE part of a VPLS and with a local T = 1, 218 must only transmit traffic with a flow label to those peers that 219 signaled R = 1. And if the same PE has local R = 1, it must only 220 expect to receive traffic with a flow label from peers with T = 1. 222 Any other traffic MUST not have a flow label. 224 Modification of flow label settings may impact traffic over a PW as 225 these could trigger changes in the PEs data-plane programming (i.e. 226 imposition / disposition of flow label). This is an implementation 227 specific behavior and outside the scope of this draft. 229 The signaling procedures in [RFC4761] state that the unspecified bits 230 in the Control Flags field (bits 0-5) MUST be set to zero when 231 sending and MUST be ignored when receiving. The signaling procedure 232 described here is therefore backwards compatible with existing 233 implementations. A PE not supporting the extensions described in 234 this draft will always advertise a value of ZERO in the position 235 assigned by this draft to the R bit and therefore a flow label will 236 never be included in a packet sent to it by one of its peers. 237 Similarly, it will always advertise a value of ZERO in the position 238 assigned by this draft to the T bit and therefore a peer will know 239 that a flow label will never be included in a packet sent by it. 241 Note that what is signaled is the desire to include the flow LSE in 242 the label stack. The value of the flow label is a local matter for 243 the ingress PE, and the label value itself is not signaled. 245 4 Acknowledgements 247 The authors would like to thank Bertrand Duvivier and John Drake for 248 their review and comments. 250 5 Contributors 252 In addition to the authors listed above, the following individuals 253 also contributed to this document: 255 Eric Lent 257 John Brzozowski 259 Steven Cotter 261 6. IANA Considerations 263 7. Security Considerations 265 This extension to BGP does not change the underlying security issues 266 inherent in the existing [RFC4271]. 268 8. References 269 8.1. Normative References 271 [I-D.ietf-l2vpn-vpls-multihoming] Kothari, B., Kompella, K., 272 Henderickx, W., Balus, F., Uttaro, J., Palislamovic, S., and W. Lin, 273 "BGP based Multi-homing in Virtual Private LAN Service", draft-ietf- 274 l2vpn-vpls-multihoming-06 (work in progress), July 2013. 276 [RFC2119] Bradner, S., "Key words for use in RFCs to Indicate 277 Requirement Levels", BCP 14, RFC 2119, DOI 10.17487/RFC2119, March 278 1997, . 280 [RFC3985] Bryant, S., Ed. and P. Pate, Ed., "Pseudo Wire Emulation 281 Edge-to-Edge (PWE3) Architecture", RFC 3985, DOI 10.17487/RFC3985, 282 March 2005, . 284 [RFC4271] Rekhter, Y., Ed., Li, T., Ed., and S. Hares, Ed., "A 285 Border Gateway Protocol 4 (BGP-4)", RFC 4271, DOI 10.17487/RFC4271, 286 January 2006, . 288 [RFC4385] Bryant, S., Swallow, G., Martini, L., and D. McPherson, 289 "Pseudowire Emulation Edge-to-Edge (PWE3) Control Word for Use over 290 an MPLS PSN", RFC 4385, DOI 10.17487/RFC4385, February 2006, 291 . 293 [RFC4447] Martini, L., Ed., Rosen, E., El-Aawar, N., Smith, T., and 294 G. Heron, "Pseudowire Setup and Maintenance Using the Label 295 Distribution Protocol (LDP)", RFC 4447, DOI 10.17487/RFC4447, April 296 2006, . 298 [RFC4761] Kompella, K., Ed. and Y. Rekhter, Ed., "Virtual Private 299 LAN Service (VPLS) Using BGP for Auto-Discovery and Signaling", RFC 300 4761, DOI 10.17487/RFC4761, January 2007, . 303 [RFC4928] Swallow, G., Bryant, S., and L. Andersson, "Avoiding Equal 304 Cost Multipath Treatment in MPLS Networks", BCP 128, RFC 4928, DOI 305 10.17487/RFC4928, June 2007, . 308 [RFC6391] Bryant, S., Ed., Filsfils, C., Drafz, U., Kompella, V., 309 Regan, J., and S. Amante, "Flow-Aware Transport of Pseudowires over 310 an MPLS Packet Switched Network", RFC 6391, DOI 10.17487/RFC6391, 311 November 2011, . 313 8.2. Informative References 315 [RFC2842] Chandra, R. and J. Scudder, "Capabilities Advertisement 316 with BGP-4", RFC 2842, DOI 10.17487/RFC2842, May 2000, 317 . 319 [RFC2858] Bates, T., Rekhter, Y., Chandra, R., and D. Katz, 320 "Multiprotocol Extensions for BGP-4", RFC 2858, DOI 10.17487/RFC2858, 321 June 2000, . 323 [RFC6624] Kompella, K., Kothari, B., and R. Cherukuri, "Layer 2 324 Virtual Private Networks Using BGP for Auto-Discovery and Signaling", 325 RFC 6624, DOI 10.17487/RFC6624, May 2012, . 328 Authors' Addresses 330 Keyur Patel 331 Arrcus 332 Email: keyur@arrcus.com 334 Sami Boutros 335 VMware 336 Email: sboutros@vmware.com 338 Jose Liste 339 Cisco 340 Email: jliste@cisco.com 342 Bin Wen 343 Comcast 344 Email: bin_wen@cable.comcast.com 346 Jorge Rabadan 347 Nokia 348 Email: jorge.rabadan@nokia.com