idnits 2.17.1 draft-kothari-henderickx-l2vpn-vpls-multihoming-01.txt: Checking boilerplate required by RFC 5378 and the IETF Trust (see https://trustee.ietf.org/license-info): ---------------------------------------------------------------------------- ** The document seems to lack a License Notice according IETF Trust Provisions of 28 Dec 2009, Section 6.b.ii or Provisions of 12 Sep 2009 Section 6.b -- however, there's a paragraph with a matching beginning. Boilerplate error? (You're using the IETF Trust Provisions' Section 6.b License Notice from 12 Feb 2009 rather than one of the newer Notices. See https://trustee.ietf.org/license-info/.) 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 : ---------------------------------------------------------------------------- No issues found here. Miscellaneous warnings: ---------------------------------------------------------------------------- == The copyright year in the IETF Trust and authors Copyright Line does not match the current year == The document seems to contain a disclaimer for pre-RFC5378 work, but was first submitted on or after 10 November 2008. The disclaimer is usually necessary only for documents that revise or obsolete older RFCs, and that take significant amounts of text from those RFCs. If you can contact all authors of the source material and they are willing to grant the BCP78 rights to the IETF Trust, you can and should remove the disclaimer. Otherwise, the disclaimer is needed and you can ignore this comment. (See the Legal Provisions document at https://trustee.ietf.org/license-info for more information.) -- The document date (July 13, 2009) is 5399 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: 'RFC4447' is defined on line 734, but no explicit reference was found in the text == Unused Reference: 'RFC4446' is defined on line 738, but no explicit reference was found in the text == Unused Reference: 'I-D.ietf-pwe3-redundancy-bit' is defined on line 755, but no explicit reference was found in the text == Unused Reference: 'RFC4456' is defined on line 768, but no explicit reference was found in the text ** Obsolete normative reference: RFC 4447 (Obsoleted by RFC 8077) == Outdated reference: A later version (-09) exists of draft-ietf-pwe3-redundancy-bit-01 Summary: 2 errors (**), 0 flaws (~~), 7 warnings (==), 1 comment (--). Run idnits with the --verbose option for more detailed information about the items above. -------------------------------------------------------------------------------- 1 L2VPN Working Group B. Kothari 2 Internet Draft K. Kompella 3 Intended status: Standards Track Juniper Networks 4 Expires: January 2010 W. Henderickx 5 F. Balus 6 Alcatel-Lucent 7 July 13, 2009 9 BGP based Multi-homing in Virtual Private LAN Service 10 draft-kothari-henderickx-l2vpn-vpls-multihoming-01.txt 12 Status of this Memo 14 This Internet-Draft is submitted to IETF in full conformance with the 15 provisions of BCP 78 and BCP 79. This document may contain material 16 from IETF Documents or IETF Contributions published or made publicly 17 available before November 10, 2008. The person(s) controlling the 18 copyright in some of this material may not have granted the IETF 19 Trust the right to allow modifications of such material outside the 20 IETF Standards Process. Without obtaining an adequate license from 21 the person(s) controlling the copyright in such materials, this 22 document may not be modified outside the IETF Standards Process, and 23 derivative works of it may not be created outside the IETF Standards 24 Process, except to format it for publication as an RFC or to 25 translate it into languages other than English. 27 Internet-Drafts are working documents of the Internet Engineering 28 Task Force (IETF), its areas, and its working groups. Note that 29 other groups may also distribute working documents as Internet- 30 Drafts. 32 Internet-Drafts are draft documents valid for a maximum of six months 33 and may be updated, replaced, or obsoleted by other documents at any 34 time. It is inappropriate to use Internet-Drafts as reference 35 material or to cite them other than as "work in progress." 37 The list of current Internet-Drafts can be accessed at 38 http://www.ietf.org/ietf/1id-abstracts.txt 40 The list of Internet-Draft Shadow Directories can be accessed at 41 http://www.ietf.org/shadow.html 43 This Internet-Draft will expire on January 13, 2010. 45 Copyright Notice 47 Copyright (c) 2009 IETF Trust and the persons identified as the 48 document authors. All rights reserved. 50 This document is subject to BCP 78 and the IETF Trust's Legal 51 Provisions Relating to IETF Documents in effect on the date of 52 publication of this document (http://trustee.ietf.org/license-info). 53 Please review these documents carefully, as they describe your rights 54 and restrictions with respect to this document. 56 Abstract 58 Virtual Private LAN Service (VPLS) is a Layer 2 Virtual Private 59 Network (VPN) that gives its customers the appearance that their 60 sites are connected via a Local Area Network (LAN). It is often 61 required for the Service Provider (SP) to give the customer redundant 62 connectivity to some sites, often called "multi-homing". This memo 63 shows how BGP-based multi-homing can be offered in the context of LDP 64 and BGP VPLS solutions. 66 Table of Contents 68 1. Introduction...................................................3 69 1.1. General Terminology.......................................4 70 1.2. Conventions used in this document.........................4 71 2. Background.....................................................4 72 2.1. Scenarios.................................................4 73 2.2. VPLS Multi-homing Considerations..........................5 74 3. Multi-homing Operation.........................................6 75 3.1. Provisioning Model........................................6 76 3.2. Multi-homing NLRI.........................................6 77 3.3. Designated Forwarder Election.............................7 78 3.3.1. Attributes...........................................7 79 3.3.2. Variables Used.......................................7 80 3.3.2.1. RD..............................................7 81 3.3.2.2. MH-ID...........................................7 82 3.3.2.3. VBO.............................................8 83 3.3.2.4. DOM.............................................8 84 3.3.2.5. ACS.............................................8 85 3.3.2.6. PREF............................................8 86 3.3.2.7. PE-ID...........................................9 87 3.3.3. Election Procedures..................................9 88 3.3.3.1. Bucketization for BGP DF Election..............10 89 3.3.3.2. Bucketization for VPLS DF Election.............10 90 3.3.3.3. Tie-breaking Rules.............................10 91 3.4. DF Election on PEs.......................................11 93 4. Multi-AS VPLS.................................................12 94 4.1. Route Origin Extended Community..........................12 95 4.2. VPLS Preference..........................................12 96 4.3. Use of BGP-MH attributes in Inter-AS Methods.............13 97 4.3.1. Inter-AS Method (b): EBGP Redistribution of VPLS 98 Information between ASBRs..................................14 99 4.3.2. Inter-AS Method (c): Multi-Hop EBGP Redistribution of 100 VPLS Information between ASes..............................15 101 5. MAC Flush Operations..........................................15 102 5.1. MAC List Flush...........................................16 103 5.2. Implicit MAC Flush.......................................16 104 6. Backwards Compatibility.......................................16 105 6.1. BGP based VPLS...........................................17 106 6.2. LDP VPLS with BGP Auto-discovery.........................17 107 7. Security Considerations.......................................17 108 8. IANA Considerations...........................................17 109 9. References....................................................17 110 9.1. Normative References.....................................17 111 9.2. Informative References...................................18 112 10. Acknowledgments..............................................18 114 1. Introduction 116 Virtual Private LAN Service (VPLS) is a Layer 2 Virtual Private 117 Network (VPN) that gives its customers the appearance that their 118 sites are connected via a Local Area Network (LAN). It is often 119 required for a Service Provider (SP) to give the customer redundant 120 connectivity to one or more sites, often called "multi-homing". 121 [RFC4761] explains how VPLS can be offered using BGP for auto- 122 discovery and signaling; section 3.5 of that document describes how 123 multi-homing can be achieved in this context. [I-D.ietf-l2vpn- 124 signaling] explains how VPLS can be offered using BGP for auto- 125 discovery (BGP-AD) and [RFC4762] explains how VPLS can be offered 126 using LDP for signaling. This document provides a BGP-based multi- 127 homing solution applicable to both BGP and LDP VPLS technologies. 128 Note that BGP MH can be used for LDP VPLS without the use of the BGP- 129 AD solution. 131 Section 2 lays out some of the scenarios for multi-homing, other ways 132 that this can be achieved, and some of the expectations of BGP-based 133 multi-homing. Section 3 defines the components of BGP-based multi- 134 homing, and the procedures required to achieve this. Section 7 may 135 someday discuss security considerations. 137 1.1. General Terminology 139 Some general terminology is defined here; most is from [RFC4761], 140 [RFC4762] or [RFC4364]. Terminology specific to this memo is 141 introduced as needed in later sections. 143 A "Customer Edge" (CE) device, typically located on customer 144 premises, connects to a "Provider Edge" (PE) device, which is owned 145 and operated by the SP. A "Provider" (P) device is also owned and 146 operated by the SP, but has no direct customer connections. A "VPLS 147 Edge" (VE) device is a PE that offers VPLS services. 149 A VPLS domain represents a bridging domain per customer. A Route 150 Target community as described in [RFC4360] is typically used to 151 identify all the PE routers participating in a particular VPLS 152 domain. A VPLS site is a grouping of ports on a PE that belong to the 153 same VPLS domain. A Multi-homed (MH) site is uniquely identified by a 154 MH site ID (MH-ID). Sites are referred to as local or remote 155 depending on whether they are configured on the PE router in context 156 or on one of the remote PE routers (network peers). 158 1.2. Conventions used in this document 160 The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT", 161 "SHOULD", "SHOULD NOT", "RECOMMENDED", "MAY", and "OPTIONAL" in this 162 document are to be interpreted as described in [RFC2119]. 164 2. Background 166 This section describes various scenarios where multi-homing may be 167 required, and the implications thereof. It also describes some of the 168 singular properties of VPLS multi-homing, and what that means from 169 both an operational point of view and an implementation point of 170 view. There are other approaches for providing multi-homing such as 171 Spanning Tree Protocol, and this document specifies use of BGP for 172 multi-homing. Comprehensive comparison among the approaches is 173 outside the scope of this document. 175 2.1. Scenarios 177 The most basic scenario is shown in Figure 1. 179 CE1 is a VPLS CE that is dual-homed to both PE1 and PE2 for redundant 180 connectivity. 182 ............... 183 . . ___ CE2 184 ___ PE1 . / 185 / : PE3 186 __/ : Service : 187 CE1 __ : Provider PE4 188 \ : : \___ CE3 189 \___ PE2 . 190 . . 191 ............... 193 Figure 1 Scenario 1 195 CE1 is a VPLS CE that is dual-homed to both PE1 and PE2 for redundant 196 connectivity. However, CE4, which is also in the same VPLS domain, is 197 single-homed to just PE1. 199 CE4 ------- ............... 200 \ . . ___ CE2 201 ___ PE1 . / 202 / : PE3 203 __/ : Service : 204 CE1 __ : Provider PE4 205 \ : : \___ CE3 206 \___ PE2 . 207 . . 208 ............... 210 Figure 2 Scenario 2 212 2.2. VPLS Multi-homing Considerations 214 The first (perhaps obvious) fact about a multi-homed VPLS CE, such as 215 CE1 in Figure 1 is that if CE1 is an Ethernet switch or bridge, a 216 loop has been created in the customer VPLS. This is a dangerous 217 situation for an Ethernet network, and the loop must be broken. Even 218 if CE1 is a router, it will get duplicates every time a packet is 219 flooded, which is clearly undesirable. 221 The next is that (unlike the case of IP-based multi-homing) only one 222 of PE1 and PE2 can be actively sending traffic, either towards CE1 or 223 into the SP cloud. That is to say, load balancing techniques will not 224 work. All other PEs MUST choose the same designated forwarder for a 225 multi-homed site. Call the PE that is chosen to send traffic to/from 226 CE1 the "designated forwarder". 228 In Figure 2, CE1 and CE4 must be dealt with independently, since CE1 229 is dual-homed, but CE4 is not. 231 3. Multi-homing Operation 233 This section describes procedures for electing a designated forwarder 234 among the set of PEs that are multi-homed to a customer site. The 235 procedures described in this section are applicable to BGP based 236 VPLS, LDP based VPLS with BGP-AD or a VPLS that contains a mix of 237 both BGP and LDP signaled PWs. 239 3.1. Provisioning Model 241 Figure 1 shows a customer site, CE1, multi-homed to two VPLS PEs, PE1 242 and PE2. In order for all VPLS PEs within the same VPLS domain to 243 elect one of the multi-homed PEs as the designated forwarder, an 244 indicator that the PEs are multi-homed to the same customer site is 245 required. This is achieved by assigning the same multi-homed site ID 246 (MH-ID) on PE1 and PE2 for CE1. When remote VPLS PEs receive NLRI 247 advertisement from PE1 and PE2 for CE1, the two NLRI advertisements 248 for CE1 are identified as candidates for designated forwarder 249 selection due to the same MH-ID. Thus, same MH-ID SHOULD be assigned 250 on all VPLS PEs that are multi-homed to the same customer site. Note 251 that a MH-ID=0 is invalid and a PE should discard such an 252 advertisement. 254 3.2. Multi-homing NLRI 256 Section 3.2.2 in [RFC4761] describes the encoding of the BGP VPLS 257 NLRI. This NLRI contains fields VE-ID, VE block offset, VE block size 258 and label base. For multi-homing operation, the same NLRI is used for 259 identifying the multi-homed customers sites. The VE-ID field in the 260 NLRI is set to MH-ID; the VE block offset, VE block size and label 261 base are set to zero. Thus, the NLRI contains 2 octets indicating the 262 length, 8 octets for Route Distinguisher, 2 octets for MH-ID and 7 263 octets with value zero. 265 Figure 2 shows two customer sites, CE1 and CE4, connected to PE1 with 266 CE1 multi-homed to PE1 and PE2. CE4 does not require special 267 addressing, being associated with the base VPLS instance identified 268 by the VSI-ID for LDP VPLS and VE-ID for BGP VPLS. However, CE1 which 269 is multi-homed to PE1 and PE2 requires configuration of MH-ID and 270 both PE1 and PE2 MUST be provisioned with the same MH-ID for CE1. It 271 is valid to have non-zero VE block offset, VE block size and label 272 base in the VPLS NLRI for a multi-homed site. However, multi-homing 273 operations in such a case are outside the scope of this document. 275 3.3. Designated Forwarder Election 277 BGP-based multi-homing for VPLS relies on BGP DF election and VPLS DF 278 election. The net result of doing both BGP and VPLS DF election is 279 that of electing a single designated forwarder (DF) among the set of 280 PEs to which a customer site is multi-homed. All the PEs that are 281 elected as non-designated forwarders MUST keep their attachment 282 circuit to the multi-homed CE in blocked status (no forwarding). 284 These election algorithms operate on VPLS advertisements, which 285 include both the NLRI and attached BGP attributes. In order to 286 simplify the explanation of these algorithms, we will use a number of 287 variables derived from fields in the VPLS advertisement. These 288 variables are: RD, MH-ID, VBO, DOM, ACS, PREF and PE-ID. The notation 289 ADV -> means that from a 290 received VPLS advertisement ADV, the respective variables were 291 derived. The following sections describe two attributes needed for DF 292 election, then describe the variables and how they are derived from 293 fields in VPLS advertisement ADV, and finally describe how DF 294 election is done. 296 3.3.1. Attributes 298 The procedures below refer to two attributes: the Route Origin 299 community (see Section 4.1) and the L2-info community (see Section 300 4.2.1). These attributes are required for inter-AS operation; for 301 generality, the procedures below show how they are to be used. The 302 procedures also say how to handle the case that either or both are 303 not present. 305 3.3.2. Variables Used 307 3.3.2.1. RD 309 RD is simply set to the Route Distinguisher field in the NLRI part of 310 ADV. 312 3.3.2.2. MH-ID 314 MH-ID is simply set to the VE-ID field in the NLRI part of ADV. 316 3.3.2.3. VBO 318 VBO is simply set to the VE Block Offset field in the NLRI part of 319 ADV. This field will typically be zero. 321 3.3.2.4. DOM 323 This variable, indicating the VPLS domain to which ADV belongs, is 324 derived by applying BGP policy to the Route Target extended 325 communities in ADV. The details of how this is done are outside the 326 scope of this document. 328 3.3.2.5. ACS 330 ACS is the status of the attachment circuits for a given site of a 331 VPLS. ACS = 1 if all attachment circuits for the site are down, and 0 332 otherwise. 334 For BGP-based Multi-homing, ADV MUST contain an L2-info extended 335 community; within this community are control flags. One of these 336 flags is the 'D' bit, described in [I-D.kothari-l2vpn-auto-site-id]. 337 ACS is set to the value of the 'D' bit in ADV. 339 3.3.2.6. PREF 341 PREF is derived from the Local Preference (LP) attribute in ADV as 342 well as the VPLS Preference field (VP) in the L2-info extended 343 community. If the Local Preference attribute is missing, LP is set to 344 0; if the L2-info community is missing, VP is set to 0. The following 345 table shows how PREF is computed from LP and VP. 347 +---------+---------------+----------+------------------------------+ 348 | VP | LP Value | PREF | Comment | 349 | Value | | Value | | 350 +---------+---------------+----------+------------------------------+ 351 | 0 | 0 | 0 | malformed advertisement, | 352 | | | | unless ACS=1 | 353 | | | | | 354 | 0 | 1 to (2^16-1) | LP | backwards compatibility | 355 | | | | | 356 | 0 | 2^16 to | (2^16-1) | backwards compatibility | 357 | | (2^32-1) | | | 358 | | | | | 359 | >0 | LP same as VP | VP | Implementation supports VP | 360 | | | | | 361 | >0 | LP != VP | 0 | malformed advertisement | 362 +---------+---------------+----------+------------------------------+ 363 Figure 3 PREF table 365 3.3.2.7. PE-ID 367 If ADV contains a Route Origin (RO) community (see Section 4.1) with 368 type 0x01, then PE-ID is set to the Global Administrator sub-field of 369 the RO. Otherwise, if ADV has an ORIGINATOR_ID attribute, then PE-ID 370 is set to the ORIGINATOR_ID. Otherwise, PE-ID is set to the BGP 371 Identifier. 373 3.3.3. Election Procedures 375 The election procedures described in this section apply equally to 376 BGP VPLS and LDP VPLS. 378 Election occurs in two stages. The first stage divides all received 379 VPLS advertisements into buckets of relevant and comparable 380 advertisements. Distinction MUST NOT be made on whether the NLRI is a 381 multi-homing NLRI or not. In this stage, advertisements may be 382 discarded as not being relevant to DF election. The second stage 383 picks a single "winner" from each bucket by repeatedly applying a 384 tie-breaking algorithm on a pair of advertisements from that bucket. 385 The tie-breaking rules are such that the order in which 386 advertisements are picked from the bucket does not affect the final 387 result. Note that this is a conceptual description of the process; an 388 implementation MAY choose to realize this differently as long as the 389 semantics are preserved. 391 Note: these procedures supersede the tie breaking rules described in 392 (Section 9.1.2.2) [RFC4271] 394 3.3.3.1. Bucketization for BGP DF Election 396 An advertisement 398 ADV -> 400 is discarded if DOM is not of interest to the BGP speaker. Otherwise, 401 ADV is put into the bucket for . In other words, 402 the information in BGP DF election consists of 403 and only advertisements with exact same 404 are candidates for DF election. 406 3.3.3.2. Bucketization for VPLS DF Election 408 An advertisement 410 ADV -> 412 is discarded if DOM is not of interest to the VPLS PE. Otherwise, ADV 413 is put into the bucket for . In other words, all 414 advertisements for a particular VPLS domain that have the same MH-ID 415 are candidates for VPLS DF election. 417 3.3.3.3. Tie-breaking Rules 419 This section describes the tie-breaking rules for both BGP and VPLS 420 DF election. Tie-breaking rules for BGP DF election are applied to 421 candidate advertisements by any BGP speaker. Since RD must be same 422 for advertisements to be candidates for BGP DF election, use of 423 unique RDs will result in no candidate advertisements for BGP tie- 424 breaking rules and thus, a BGP speaker in such a case will simply not 425 do BGP DF election. Tie-breaking rules for VPLS DF election are 426 applied to candidate advertisements by all VPLS PEs and the actions 427 taken by VPLS PEs based on the VPLS DF election result are described 428 in Section 3.4. 430 Given two advertisements ADV1 and ADV2 from a given bucket, first 431 compute the variables needed for DF election: 433 ADV1 -> 435 ADV2 -> 437 Note that MH-ID1 = MH-ID2 and DOM1 = DOM2, since ADV1 and ADV2 came 438 from the same bucket. If this is for BGP DF election, RD1 = RD2 and 439 VBO1 = VBO2 as well. Then the following tie-breaking rules MUST be 440 applied in the given order. 442 1. if (ACS1 != 1) AND (ACS2 == 1) ADV1 wins; stop 444 if (ACS1 == 1) AND (ACS2 != 1) ADV2 wins; stop 446 else continue 448 2. if (PREF1 > PREF2) ADV1 wins; stop; 450 else if (PREF1 < PREF2) ADV2 wins; stop; 452 else continue 454 3. if (PE-ID1 < PE-ID2) ADV1 wins; stop; 456 else if (PE-ID1 > PE-ID2) ADV2 wins; stop; 458 else ADV1 and ADV2 are from the same VPLS PE 460 For BGP DF election, if there is no winner and ADV1 and ADV2 are from 461 the same PE, BGP DF election should simply consider this as an 462 update. 464 For VPLS DF election, if there is no winner and ADV1 and ADV2 are 465 from the same PE, a VPLS PE MUST retain both ADV1 and ADV2. 467 3.4. DF Election on PEs 469 DF election algorithm MUST be run by all multi-homed VPLS PEs. In 470 addition, all other PEs SHOULD also run the DF election algorithm. As 471 a result of the DF election, multi-homed PEs that loose the DF 472 election for a MH-ID MUST put the ACs associated with the MH-ID in 473 non-forwarding state. 475 DF election result on the egress PEs can be used in traffic 476 forwarding decision. Figure 2 shows two customer sites, CE1 and CE4, 477 connected to PE1 with CE1 multi-homed to PE1 and PE2. If PE1 is the 478 designated forwarder for CE1, based on the DF election result, PE3 479 can chose to not send unknown unicast and multicast traffic to PE2 as 480 PE2 is not the designated forwarder for any customer site and it has 481 no other single homed sites connected to it. 483 4. Multi-AS VPLS 485 This section describes multi-homing in an inter-AS context. 487 4.1. Route Origin Extended Community 489 Due to lack of information about the PEs that originate the VPLS 490 NLRIs in inter-AS operations, Route Origin Extended Community 491 [RFC4360] is used to carry the source PE's IP address. 493 To use Route Origin Extended Community for carrying the originator 494 VPLS PE's loopback address, the type field of the community MUST be 495 set to 0x01 and the Global Administrator sub-field MUST be set to the 496 PE's loopback IP address. 498 4.2. VPLS Preference 500 When multiple PEs are assigned the same site ID for multi-homing, it 501 is often desired to be able to control the selection of a particular 502 PE as the designated forwarder. Section 3.5 in [RFC4761] describes 503 the use of BGP Local Preference in path selection to choose a 504 particular NLRI, where Local Preference indicates the degree of 505 preference for a particular VE. The use of Local Preference is 506 inadequate when VPLS PEs are spread across multiple ASes as Local 507 Preference is not carried across AS boundary. A new field, VPLS 508 preference (VP), is introduced in this document that can be used to 509 accomplish this. VPLS preference indicates a degree of preference for 510 a particular customer site. VPLS preference is not mandatory for 511 intra-AS operation; the algorithm explained in Section 3.3 will work 512 with or without the presence of VPLS preference. 514 Section 3.2.4 in [RFC4761] describes the Layer2 Info Extended 515 Community that carries control information about the pseudowires. The 516 last two octets that were reserved now carries VPLS preference as 517 shown in Figure 3. 519 +------------------------------------+ 520 | Extended community type (2 octets) | 521 +------------------------------------+ 522 | Encaps Type (1 octet) | 523 +------------------------------------+ 524 | Control Flags (1 octet) | 525 +------------------------------------+ 526 | Layer-2 MTU (2 octet) | 527 +------------------------------------+ 528 | VPLS Preference (2 octets) | 529 +------------------------------------+ 531 Figure 4 Layer 2 Info Extended Community 533 A VPLS preference is a 2-octets unsigned integer. A value of zero 534 indicates absence of a VP and is not a valid preference value. This 535 interpretation is required for backwards compatibility. 536 Implementations using Layer2 Info Extended Community as described in 537 (Section 3.2.4) [RFC4761] MUST set the last two octets as zero since 538 it was a reserved field. 540 For backwards compatibility, if VP is used, then BGP Local Preference 541 MUST be set to the value of VP. Note that a Local Preference value of 542 zero for a MH-Site is not valid unless 'D' bit in the control flags 543 is set (see [I-D.kothari-l2vpn-auto-site-id]). In addition, Local 544 Preference value greater than or equal to 2^16 for VPLS 545 advertisements is not valid. 547 4.3. Use of BGP-MH attributes in Inter-AS Methods 549 Section 3.4 in [RFC4761] and section 4 in [I-D.ietf-l2vpn-signaling] 550 describe three methods (a, b and c) to connect sites in a VPLS to PEs 551 that are across multiple AS. Since VPLS advertisements in method (a) 552 do not cross AS boundaries, multi-homing operations for method (a) 553 remain exactly the same as they are within as AS. However, for method 554 (b) and (c), VPLS advertisements do cross AS boundary. This section 555 describes the VPLS operations for method (b) and method (c). Consider 556 Figure 5 for inter-AS VPLS with multi-homed customer sites. 558 4.3.1. Inter-AS Method (b): EBGP Redistribution of VPLS Information 559 between ASBRs 561 AS1 AS2 562 ........ ........ 563 CE2 _______ . . . . 564 ___ PE1 . . PE3 --- CE3 565 / : . . : 566 __/ : : : : 567 CE1 __ : ASBR1 --- ASBR2 : 568 \ : : : : 569 \___ PE2 . . PE4 ---- CE4 570 . . . . 571 ........ ........ 573 Figure 5 Inter-AS VPLS 575 A customer has four sites, CE1, CE2, CE3 and CE4. CE1 is multi-homed 576 to PE1 and PE2 in AS1. CE2 is single-homed to PE1. CE3 and CE4 are 577 also single homed to PE3 and PE4 respectively in AS2. Assume that in 578 addition to the base LDP/BGP VPLS addressing (VSI-IDs/VE-IDs), MH ID 579 1 is assigned for CE1. After running DF election algorithm, all four 580 VPLS PEs must elect the same designated forwarder for CE1 site. Since 581 BGP Local Preference is not carried across AS boundary, VPLS 582 preference as described in Section 4.2 MUST be used for carrying site 583 preference in inter-AS VPLS operations. 585 For Inter-AS method (b) ASBR1 will send a VPLS NLRI received from PE1 586 to ASBR2 with itself as the BGP nexthop. ASBR2 will send the received 587 NLRI from ASBR1 to PE3 and PE4 with itself as the BGP nexthop. Since 588 VPLS PEs use BGP Local Preference in DF election, for backwards 589 compatibility, ASBR2 MUST set the Local Preference value in the VPLS 590 advertisements it sends to PE3 and PE4 to the VPLS preference value 591 contained in the VPLS advertisement it receives from ASBR1. ASBR1 592 MUST do the same for the NLRIs it sends to PE1 and PE2. If ASBR1 593 receives a VPLS advertisement without a valid VPLS preference from a 594 PE within its AS, then ASBR1 MUST set the VPLS preference in the 595 advertisements to the Local Preference value before sending it to 596 ASBR2. Similarly, ASBR2 must do the same for advertisements without 597 VPLS Preference it receives from PEs within its AS. Thus, in method 598 (b), ASBRs MUST update the VPLS and Local Preference based on the 599 advertisements they receive either from an ASBR or a PE within their 600 AS. 602 In Figure 5, PE1 will send the VPLS advertisements, including the 603 ones for MH site CE1, with Route Origin Extended Community containing 604 its loopback address. PE2 will do the same. Even though PE3 receives 605 the VPLS advertisements from the same BGP nexthop, ASBR2, the source 606 PE address contained in the Route Origin Extended Community is 607 different for the VPLS advertisements received from PE1 and PE2, and 608 thus, PE3 can apply correctly the DF Election algorithm as the 609 resulting PE-IDs are different. 611 4.3.2. Inter-AS Method (c): Multi-Hop EBGP Redistribution of VPLS 612 Information between ASes 614 In this method, there is a multi-hop E-BGP peering between the PEs or 615 Route Reflectors in AS1 and the PEs or Route Reflectors in AS2. There 616 is no VPLS state in either control or data plane on the ASBRs. 618 The multi-homing operations on the PEs in this method are exactly the 619 same as they are in intra-AS scenario. However, since Local 620 Preference is not carried across AS boundary, the translation of LP 621 to VP and vice versa MUST be done by RR, if RR is used to reflect 622 VPLS advertisements to other ASes. This is exactly the same as what a 623 ASBR does in case of method (b). A RR must set the VP to the LP value 624 in an advertisement before sending it to other ASes and must set the 625 LP to the VP value in an advertisement that it receives from other 626 ASes before sending to the PEs within the AS. 628 5. MAC Flush Operations 630 In a service provider VPLS network, customer MAC learning is confined 631 to PE devices and any intermediate nodes, such as a Route Reflector, 632 do not have any state for MAC addresses. 634 Topology changes either in the service provider's network or in 635 customer's network can result in the movement of MAC addresses from 636 one PE device to another. Such events can result into traffic being 637 dropped due to stale state of MAC addresses on the PE devices. Age 638 out timers that clear the stale state will resume the traffic 639 forwarding, but age out timers are typically in minutes, and 640 convergence of the order of minutes can severely impact customer's 641 service. To handle such events and expedite convergence of traffic, 642 flushing of affected MAC addresses is highly desirable. 644 This section describes the scenarios where VPLS flush is desirable 645 and the specific VPLS Flush TLVs that provide capability to flush the 646 affected MAC addresses on the PE devices. All operations described in 647 this section are in context of a particular VPLS domain and not 648 across multiple VPLS domains. Mechanisms for MAC flush are described 649 in [I-D.kothari-l2vpn-vpls-flush] for BGP based VPLS and in [RFC4762] 650 for LDP based VPLS. 652 5.1. MAC List Flush 654 If multiple customer sites are connected to the same PE, PE1 as shown 655 in Figure 2, and redundancy per site is desired when multi-homing 656 procedures described in this document are in effect, then it is 657 desirable to flush just the relevant MAC addresses from a particular 658 site when the site connectivity is lost. 660 To flush particular set of MAC addresses, a PE SHOULD originate a 661 flush message with MAC list that contains a list of MAC addresses 662 that needs to be flushed. In Figure 2, if connectivity between CE1 663 and PE1 goes down and if PE1 was the designated forwarder for CE1, 664 PE1 SHOULD send a list of MAC addresses that belong to CE1 to all its 665 BGP peers. 667 It is RECOMMENDED that in case of excessive link flap of customer 668 attachment circuit in a short duration, a PE should have a means to 669 throttle advertisements of flush messages so that excessive flooding 670 of such advertisements do not occur. 672 5.2. Implicit MAC Flush 674 When connectivity to a customer site is lost, remote PEs learn that a 675 particular site is no longer reachable. The local PE either withdraws 676 the VPLS NLRI that it previously advertised for the site or it sends 677 a BGP update message for the site's VPLS NLRI with the 'D' bit set. 679 If a remote PE detects that a multi-homed PE has transitioned from 680 being a DF to a non-DF, then the remote PE can choose to flush all 681 MAC addresses that it learned from the multi-homed PE transitioning 682 from DF to non-DF. Alternatively the remote PE may chose to react 683 when detecting the non-DF to DF transition for a multi-homed PE by 684 flushing in the related VPLS context all the MACs learned with the 685 exception of the MACs associated with the new DF PE. 687 6. Backwards Compatibility 689 No forwarding loops are formed when PEs or Route Reflectors that do 690 not support procedures defined in this section co exist in the 691 network with PEs or Route Reflectors that do support. 693 6.1. BGP based VPLS 695 As explained in this section, multi-homed PEs to the same customer 696 site MUST assign the same MH-ID and related NLRI SHOULD contain the 697 block offset, block size and label base as zero. Remote PEs that lack 698 support of multi-homing operations specified in this document will 699 fail to create any PWs for the multi-homed MH-IDs due to the label 700 value of zero and thus, the multi-homing NLRI should have no impact 701 on the operation of Remote PEs that lack support of multi-homing 702 operations specified in this document. 704 6.2. LDP VPLS with BGP Auto-discovery 706 The BGP-AD NLRI has a prefix length of 12 containing only a 8 bytes 707 RD and a 4 bytes VSI-ID. If a LDP VPLS PEs running BGP AD lacks 708 support of multi-homing operations specified in this document, it 709 SHOULD ignore a MH NLRI with the length field of 17. As a result it 710 will not ask LDP to create any PWs for the multi-homed Site-ID and 711 thus, the multi-homing NLRI should have no impact on LDP VPLS 712 operation. 714 7. Security Considerations 716 No new security issues are introduced beyond those that are described 717 in [RFC4761] and [RFC4762]. 719 8. IANA Considerations 721 At this time, this memo includes no request to IANA. 723 9. References 725 9.1. Normative References 727 [RFC2119] Bradner, S., "Key words for use in RFCs to Indicate 728 Requirement Levels", BCP 14, RFC 2119, March 1997. 730 [RFC4761] Kompella, K. and Y. Rekhter, "Virtual Private LAN Service 731 (VPLS) Using BGP for Auto-Discovery and Signaling", RFC 732 4761, January 2007. 734 [RFC4447] Martini, L., Rosen, E., El-Aawar, N., Smith, T., and G. 735 Heron, "Pseudowire Setup and Maintenance Using the Label 736 Distribution Protocol (LDP)", RFC 4447, April 2006. 738 [RFC4446] Martini, L., "IANA Allocations for Pseudowire Edge to Edge 739 Emulation (PWE3)", BCP 116, RFC 4446, April 2006. 741 [I-D.ietf-l2vpn-signaling] Rosen, E., "Provisioning, Autodiscovery, 742 and Signaling in L2VPNs", draft-ietf-l2vpn-signaling-08 743 (work in progress), May 2006. 745 [I-D.kothari-l2vpn-vpls-flush] Kothari, B. and R. Fernando, "VPLS 746 Flush in BGP-based Virtual Private LAN Service", draft- 747 kothari-l2vpn-vpls-flush-00 (work in progress), October 748 2008. 750 [I-D.kothari-l2vpn-auto-site-id] Kothari, B., Kompella, K., and T. 751 IV, "Automatic Generation of Site IDs for Virtual Private 752 LAN Service", draft-kothari-l2vpn-auto-site-id-01 (work in 753 progress), October 2008. 755 [I-D.ietf-pwe3-redundancy-bit] Muley, P., Bocci, M., and L. Martini, 756 "Preferential Forwarding Status bit definition", draft- 757 ietf-pwe3-redundancy-bit-01 (work in progress), September 758 2008. 760 9.2. Informative References 762 [RFC4360] Sangli, S., Tappan, D., and Y. Rekhter, "BGP Extended 763 Communities Attribute", RFC 4360, February 2006. 765 [RFC4364] Rosen, E. and Y. Rekhter, "BGP/MPLS IP Virtual Private 766 Networks (VPNs)", RFC 4364, February 2006. 768 [RFC4456] Bates, T., Chen, E., and R. Chandra, "BGP Route Reflection: 769 An Alternative to Full Mesh Internal BGP (IBGP)", RFC 4456, 770 April 2006. 772 [RFC4762] Lasserre, M. and V. Kompella, "Virtual Private LAN Service 773 (VPLS) Using Label Distribution Protocol (LDP) Signaling", 774 RFC 4762, January 2007. 776 [RFC4271] Rekhter, Y., Li, T., and S. Hares, "A Border Gateway 777 Protocol 4 (BGP-4)", RFC 4271, January 2006. 779 10. Acknowledgments 781 The authors would like to thank Yakov Rekhter, Nischal Sheth, Mitali 782 Singh, Deven Raut and Nehal Bhau for their insightful comments and 783 probing questions. 785 Authors' Addresses 787 Bhupesh Kothari 788 Juniper Networks 789 1194 N. Mathilda Ave. 790 Sunnyvale, CA 94089 US 792 Email: bhupesh@juniper.net 794 Kireeti Kompella 795 Juniper Networks 796 1194 N. Mathilda Ave. 797 Sunnyvale, CA 94089 US 799 Email: kireeti@juniper.net 801 Wim Henderickx 802 Alcatel-Lucent 803 Copernicuslaan 50 804 2018 Antwerp, Belgium 806 Email: wim.henderickx@alcatel-lucent.be 808 Florin Balus 809 Alcatel-Lucent 810 701 E. Middlefield Road 811 Mountain View, CA, USA 94043 813 Email: florin.balus@alcatel-lucent.com