idnits 2.17.1 draft-kompella-l2vpn-l2vpn-10.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 : ---------------------------------------------------------------------------- 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 lack a disclaimer for pre-RFC5378 work, but may have content which was first submitted before 10 November 2008. If you have contacted all the original authors and they are all willing to grant the BCP78 rights to the IETF Trust, then this is fine, and you can ignore this comment. If not, you may need to add the pre-RFC5378 disclaimer. (See the Legal Provisions document at https://trustee.ietf.org/license-info for more information.) -- The document date (February 27, 2012) is 4432 days in the past. Is this intentional? Checking references for intended status: Informational ---------------------------------------------------------------------------- == Unused Reference: 'RFC4446' is defined on line 1056, but no explicit reference was found in the text -- Obsolete informational reference (is this intentional?): RFC 4447 (Obsoleted by RFC 8077) Summary: 0 errors (**), 0 flaws (~~), 2 warnings (==), 3 comments (--). Run idnits with the --verbose option for more detailed information about the items above. -------------------------------------------------------------------------------- 2 Network Working Group K. Kompella 3 Internet-Draft Juniper Networks 4 Intended status: Informational B. Kothari 5 Expires: August 30, 2012 Cisco Systems 6 R. Cherukuri 7 Juniper Networks 8 February 27, 2012 10 Layer 2 Virtual Private Networks Using BGP for Auto-discovery and 11 Signaling 12 draft-kompella-l2vpn-l2vpn-10.txt 14 Abstract 16 Layer 2 Virtual Private Networks (L2VPNs) based on Frame Relay or ATM 17 circuits have been around a long time; more recently, Ethernet VPNs, 18 including Virtual Private LAN Service, have become popular. 19 Traditional L2VPNs often required a separate Service Provider 20 infrastructure for each type, and yet another for the Internet and IP 21 VPNs. In addition, L2VPN provisioning was cumbersome. This document 22 presents a new approach to the problem of offering L2VPN services 23 where the L2VPN customer's experience is virtually identical to that 24 offered by traditional Layer 2 VPNs, but such that a Service Provider 25 can maintain a single network for L2VPNs, IP VPNs and the Internet, 26 as well as a common provisioning methodology for all services. 28 Status of this Memo 30 This Internet-Draft is submitted in full conformance with the 31 provisions of BCP 78 and BCP 79. 33 Internet-Drafts are working documents of the Internet Engineering 34 Task Force (IETF). Note that other groups may also distribute 35 working documents as Internet-Drafts. The list of current Internet- 36 Drafts is at http://datatracker.ietf.org/drafts/current/. 38 Internet-Drafts are draft documents valid for a maximum of six months 39 and may be updated, replaced, or obsoleted by other documents at any 40 time. It is inappropriate to use Internet-Drafts as reference 41 material or to cite them other than as "work in progress." 43 This Internet-Draft will expire on August 30, 2012. 45 Copyright Notice 47 Copyright (c) 2012 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 52 (http://trustee.ietf.org/license-info) in effect on the date of 53 publication of this document. Please review these documents 54 carefully, as they describe your rights and restrictions with respect 55 to this document. Code Components extracted from this document must 56 include Simplified BSD License text as described in Section 4.e of 57 the Trust Legal Provisions and are provided without warranty as 58 described in the Simplified BSD License. 60 Table of Contents 62 1. Introduction . . . . . . . . . . . . . . . . . . . . . . . . . 4 63 1.1. Terminology . . . . . . . . . . . . . . . . . . . . . . . 6 64 1.2. Advantages of Layer 2 VPNs . . . . . . . . . . . . . . . . 6 65 1.2.1. Separation of Administrative Responsibilities . . . . 6 66 1.2.2. Migrating from Traditional Layer 2 VPNs . . . . . . . 7 67 1.2.3. Privacy of Routing . . . . . . . . . . . . . . . . . . 7 68 1.2.4. Layer 3 Independence . . . . . . . . . . . . . . . . . 7 69 1.2.5. PE Scaling . . . . . . . . . . . . . . . . . . . . . . 8 70 1.2.6. Ease of Configuration . . . . . . . . . . . . . . . . 8 71 1.3. Advantages of Layer 3 VPNs . . . . . . . . . . . . . . . . 9 72 1.3.1. Layer 2 Independence . . . . . . . . . . . . . . . . . 9 73 1.3.2. SP Routing as Added Value . . . . . . . . . . . . . . 10 74 1.3.3. Class-of-Service . . . . . . . . . . . . . . . . . . . 10 75 1.4. Multicast Routing . . . . . . . . . . . . . . . . . . . . 10 76 1.5. Conventions used in this document . . . . . . . . . . . . 11 77 2. Operation of a Layer 2 VPN . . . . . . . . . . . . . . . . . . 12 78 2.1. Network Topology . . . . . . . . . . . . . . . . . . . . . 12 79 2.2. Configuration . . . . . . . . . . . . . . . . . . . . . . 13 80 2.2.1. CE Configuration . . . . . . . . . . . . . . . . . . . 14 81 2.2.2. PE Configuration . . . . . . . . . . . . . . . . . . . 15 82 2.2.3. Adding a New Site . . . . . . . . . . . . . . . . . . 15 83 2.2.4. Deleting a Site . . . . . . . . . . . . . . . . . . . 15 84 2.2.5. Managing CE ID Mappings . . . . . . . . . . . . . . . 16 85 2.2.6. Managing Label Blocks . . . . . . . . . . . . . . . . 16 86 2.3. Operations, Administration and Maintenance (OAM) . . . . . 17 87 3. PE Information Exchange . . . . . . . . . . . . . . . . . . . 18 88 3.1. Circuit Status Vector . . . . . . . . . . . . . . . . . . 20 89 3.2. Generalizing the VPN Topology . . . . . . . . . . . . . . 21 90 4. Layer 2 Interworking . . . . . . . . . . . . . . . . . . . . . 22 91 5. Packet Transport . . . . . . . . . . . . . . . . . . . . . . . 23 92 5.1. Layer 2 MTU . . . . . . . . . . . . . . . . . . . . . . . 23 93 5.2. Layer 2 Frame Format . . . . . . . . . . . . . . . . . . . 23 94 5.3. IP-only Layer 2 Interworking . . . . . . . . . . . . . . . 24 95 6. Security Considerations . . . . . . . . . . . . . . . . . . . 25 96 7. Acknowledgments . . . . . . . . . . . . . . . . . . . . . . . 26 97 8. Contributors . . . . . . . . . . . . . . . . . . . . . . . . . 27 98 9. IANA Considerations . . . . . . . . . . . . . . . . . . . . . 28 99 10. References . . . . . . . . . . . . . . . . . . . . . . . . . . 29 100 10.1. Normative References . . . . . . . . . . . . . . . . . . . 29 101 10.2. Informative References . . . . . . . . . . . . . . . . . . 29 102 Authors' Addresses . . . . . . . . . . . . . . . . . . . . . . . . 31 104 1. Introduction 106 The earliest Virtual Private Networks (VPNs) were based on Layer 2 107 circuits: X.25, Frame Relay and ATM (see [Kosiur]). More recently, 108 multipoint VPNs based on Ethernet Virtual Local Area Networks (VLANs) 109 and Virtual Private LAN Service (VPLS) ([RFC4761] and [RFC4762]) have 110 become quite popular. In contrast, the VPNs described in this 111 document are point-to-point, and usually called Virtual Private Wire 112 Service (VPWS). All of these come under the classification of Layer 113 2 VPNs (L2VPNs), as the customer to Service Provider (SP) hand-off is 114 at Layer 2. 116 There are at least two factors that adversely affected the cost of 117 offering L2VPNs. The first is that the easiest way to offer a L2VPN 118 of a given type of Layer 2 was over an infrastructure of the same 119 type. This approach required that the Service Provider build a 120 separate infrastructure for each Layer 2 encapsulation -- e.g., an 121 ATM infrastructure for ATM VPNs, an Ethernet infrastructure for 122 Ethernet VPNs, etc. In addition, a separate infrastructure was 123 needed for the Internet and IP VPNs ([RFC4364], and possibly yet 124 another for voice services. Going down this path meant a 125 proliferation of networks. 127 The other is that each of these networks had different provisioning 128 methodologies. Furthermore, the provisioning of a L2VPN was fairly 129 complex. It is important to distinguish between a single Layer 2 130 circuit, which connects two customer sites, and a Layer 2 VPN, which 131 is a set of circuits that connect sites belonging to the same 132 customer. The fact that two different circuits belonged to the same 133 VPN was typically known only to the provisioning system, not to the 134 switches offering the service; this complicated the setting up, and 135 subsequently, the troubleshooting, of a L2VPN. Also, each switch 136 offering the service had to be provisioned with the address of every 137 other switch in the same VPN, requiring, in the case of full-mesh VPN 138 connectivity, provisioning proportional to the square of the number 139 of sites. This made full-mesh L2VPN connectivity prohibitively 140 expensive for the SP, and thus in turn for customers. Finally, even 141 setting up a individual circuit often required the provisioning of 142 every switch along the path. 144 Of late, there has been much progress in network "convergence", 145 whereby Layer 2 traffic, Internet traffic and IP VPN traffic can be 146 carried over a single, consolidated network infrastructure based on 147 IP/MPLS tunnels; this is made possible by techniques such as those 148 described in [RFC4448], [RFC4618], [RFC4619], and [RFC4717] for Layer 149 2 traffic, and [RFC4364] for IP VPN traffic. This development goes a 150 long way toward addressing the problem of network profileration. 151 This document goes one step further and shows how a Service Provider 152 can offer Layer 2 VPNs using protocol and provisioning methodologies 153 similar to that used for VPLS ([RFC4761]) and IP VPNs ([RFC4364]), 154 thereby achieving a significant degree of operational convergence as 155 well. In particular, all of these methodologies include the notion 156 of a VPN identifier that serves to unify components of a given VPN, 157 and the concept of auto-discovery, which simplifies the provisioning 158 of dense VPN topologies (for example, a full mesh). In addition, 159 similar techniques are used in all of the above-mentioned VPN 160 technologies to offer inter-AS and inter-provider VPNs (i.e., VPNs 161 whose sites are connected to multiple Autonomous Systems (ASs) or 162 service providers). 164 Technically, the approach proposed here uses the concepts and 165 solution and described in [RFC4761], which describes a method for 166 VPLS, a particular form of a Layer 2 VPN. That document in turn 167 borrowed much from [RFC4364]. This includes the use of BGP for auto- 168 discovery and "demultiplexor" (see below) exchange, and the concepts 169 of Route Distinguishers to make VPN advertisements unique, and Route 170 Targets to control VPN topology. In addition, all three documents 171 share the idea that routers not directly connected to VPN customers 172 should carry no VPN state, restricting the provisioning of individual 173 connections to just the edge devices. This is achieved by using 174 tunnels to carry the data, with a demultiplexor that identifies 175 individual VPN circuits. These tunnels could be based on MPLS, GRE, 176 or any other tunnel technology that offers a demultiplexing field; 177 the signaling of these tunnels is outside the scope of this document. 178 The specific approach taken here is to use an MPLS label as the 179 demultiplexor. 181 Layer 2 VPNs typically require that all sites in the VPN connect to 182 the SP with the same Layer 2 encapsulation. To ease this 183 restriction, this document proposes a limited form of Layer 2 184 interworking, by restricting the Layer 3 protocol to IP only (see 185 Section 5). 187 It may be instructive to compare the approach in [RFC4447] and 188 [RFC6074] (these are the IETF-approved technologies for the functions 189 described in this document, albeit using two separate protocols) with 190 the one described here. To comply with IETF standards, it is 191 recommended that devices implementing the solution described in this 192 document also implement the approach in [RFC4447] and [RFC6074]. 194 The rest of this section discusses the relative merits of Layer 2 and 195 Layer 3 VPNs. Section 3 describes the operation of a Layer 2 VPN. 196 Section 5 describes IP-only Layer 2 interworking. Section 6 197 describes how the L2 packets are transported across the SP network. 199 1.1. Terminology 201 The terminology used is from [RFC4761] and [RFC4364], and is briefly 202 repeated here. A "customer" is a customer of a Service Provider 203 seeking to interconnect their various "sites" (each an independent 204 network) at Layer 2 through the Service Provider's network, while 205 maintaining privacy of communication and address space. The device 206 in a customer site that connects to a Service Provider router is 207 termed the CE (customer edge) device; this device may be a router or 208 a switch. The Service Provider router to which a CE connects is 209 termed a PE (provider edge). A router in the Service Provider's 210 network which doesn't connect directly to any CE is termed P 211 ("provider" device). Every pair of PEs is connected by a "tunnel"; 212 within a tunnel, VPN data is distinguished by a "demultiplexor", 213 which in this document is an MPLS label. 215 Each CE within a VPN is assigned a CE ID, a number that uniquely 216 identifies a CE within an L2 VPN. More accurately, the CE ID 217 identifies a physical connection from the CE device to the PE, since 218 a CE may be connected to multiple PEs (or multiply connected to a 219 PE); in such a case, the CE would have a CE ID for each connection. 220 A CE may also be part of many L2 VPNs; it would need one (or more) CE 221 ID(s) for each L2 VPN of which it is a member. The number space for 222 CE IDs is scoped to a given VPN. 224 In the case of inter-Provider L2 VPNs, there needs to be some 225 coordination of allocation of CE IDs. One solution is to allocate 226 ranges for each SP. Other solutions may be forthcoming. 228 Within each physical connection from a CE to a PE, there may be 229 multiple virtual circuits. These will be referred to as Attachment 230 Circuits (ACs), following [RFC3985]. Similarly, the entity that 231 connects two attachment circuits across the Service Provider network 232 is called a pseudowire (PW). 234 1.2. Advantages of Layer 2 VPNs 236 A Layer 2 VPN is one where a Service Provider provides Layer 2 237 connectivity to the customer. The Service Provider does not 238 participate in the customer's Layer 3 network, in particular, in the 239 routing, resulting in several advantages to the SP as a whole and to 240 PE routers in particular. 242 1.2.1. Separation of Administrative Responsibilities 244 In a Layer 2 VPN, the Service Provider is responsible for Layer 2 245 connectivity; the customer is responsible for Layer 3 connectivity, 246 which includes routing. If the customer says that host x in site A 247 cannot reach host y in site B, the Service Provider need only 248 demonstrate that site A is connected to site B. The details of how 249 routes for host y reach host x are the customer's responsibility. 251 Another important factor is that once a PE provides Layer 2 252 connectivity to its connected CE, its job is done. A misbehaving CE 253 can at worst flap its interface, but route flaps in the customer 254 network have little effect on the SP network. On the other hand, a 255 misbehaving CE in a Layer 3 VPN can flap its routes, leading to 256 instability of the PE router or even the entire SP network. Thus, 257 when offering a Layer 3 VPN, a SP should proactively protect itself 258 from Layer 3 instability in the CE network. 260 1.2.2. Migrating from Traditional Layer 2 VPNs 262 Since "traditional" Layer 2 VPNs (i.e., real Frame Relay circuits 263 connecting sites) are indistinguishable from tunnel-based VPNs from 264 the customer's point-of-view, migrating from one to the other raises 265 few issues. Layer 3 VPNs, on the other hand, require a considerable 266 re-design of the customer's Layer 3 routing architecture. 267 Furthermore, with Layer 3 VPNs, special care has to be taken that 268 routes within the traditional VPN are not preferred over the Layer 3 269 VPN routes (the so-called "backdoor routing" problem, whose solution 270 requires protocol changes that are somewhat ad hoc). 272 1.2.3. Privacy of Routing 274 In a Layer 2 VPN, the privacy of customer routing is a natural 275 fallout of the fact that the Service Provider does not participate in 276 routing. The SP routers need not do anything special to keep 277 customer routes separate from other customers or from the Internet; 278 there is no need for per-VPN routing tables, and the additional 279 complexity this imposes on PE routers. 281 1.2.4. Layer 3 Independence 283 Since the Service Provider simply provides Layer 2 connectivity, the 284 customer can run any Layer 3 protocols they choose. If the SP were 285 participating in customer routing, it would be vital that the 286 customer and SP both use the same Layer 3 protocol(s) and routing 287 protocols. 289 Note that IP-only Layer 2 interworking doesn't have this benefit as 290 it restricts the Layer 3 to IP only. 292 1.2.5. PE Scaling 294 In the Layer 2 VPN scheme described below, each PE transmits a single 295 small chunk of information about every CE that the PE is connected to 296 to every other PE. That means that each PE need only maintain a 297 single chunk of information from each CE in each VPN, and keep a 298 single "route" to every site in every VPN. This means that both the 299 Forwarding Information Base and the Routing Information Base scale 300 well with the number of sites and number of VPNs. Furthermore, the 301 scaling properties are independent of the customer: the only germane 302 quantity is the total number of VPN sites. 304 This is to be contrasted with Layer 3 VPNs, where each CE in a VPN 305 may have an arbitrary number of routes that need to be carried by the 306 SP. This leads to two issues. First, both the information stored at 307 each PE and the number of routes installed by the PE for a CE in a 308 VPN can be (in principle) unbounded, which means in practice that a 309 PE must restrict itself to installing routes associated with the VPNs 310 that it is currently a member of. Second, a CE can send a large 311 number of routes to its PE, which means that the PE must protect 312 itself against such a condition. Thus, the SP must enforce limits on 313 the number of routes accepted from a CE; this in turn requires the PE 314 router to offer such control. 316 The scaling issues of Layer 3 VPNs come into sharp focus at a BGP 317 route reflector (RR). An RR cannot keep all the advertised routes in 318 every VPN since the number of routes will be too large. The 319 following solutions/extensions are needed to address this issue: 321 1. RRs could be partitioned so that each RR services a subset of 322 VPNs so that no single RR has to carry all the routes. 324 2. An RR could use a preconfigured list of Route-Targets for its 325 inbound route filtering. The RR may choose to perform Route Target 326 Filtering, described in [RFC4684]. 328 1.2.6. Ease of Configuration 330 Configuring traditional Layer 2 VPNs with dense topologies was a 331 burden primarily because of the O(n*n) nature of the task. If there 332 are n CEs in a Frame Relay VPN, say full-mesh connected, n*(n-1)/2 333 DLCI (Data Link Connection Identifier) PVCs must be provisioned 334 across the SP network. At each CE, (n-1) DLCIs must be configured to 335 reach each of the other CEs. Furthermore, when a new CE is added, n 336 new DLCI PVCs must be provisioned; also, each existing CE must be 337 updated with a new DLCI to reach the new CE. Finally, each PVC 338 requires state in every transit switch. 340 In our proposal, PVCs are tunnelled across the SP network. The 341 tunnels used are provisioned independently of the L2VPNs, using 342 signalling protocols (in case of MPLS, LDP or RSVP-TE can be used), 343 or set up by configuration; and the number of tunnels is independent 344 of the number of L2VPNs. This reduces a large part of the 345 provisioning burden. 347 Furthermore, we assume that DLCIs at the CE edge are relatively 348 cheap; and VPN labels in the SP network are cheap. This allows the 349 SP to "over-provision" VPNs: for example, allocate 50 CEs to a VPN 350 when only 20 are needed. With this over-provisioning, adding a new 351 CE to a VPN requires configuring just the new CE and its associated 352 PE; existing CEs and their PEs need not be re-configured. Note that 353 if DLCIs at the CE edge are expensive, e.g. if these DLCIs are 354 provisioned across a switched network, one could provision them as 355 and when needed, at the expense of extra configuration. This need 356 not still result in extra state in the SP network, i.e. an 357 intelligent implementation can allow overprovisioning of the pool of 358 VPN labels. 360 1.3. Advantages of Layer 3 VPNs 362 Layer 3 VPNs ([RFC4364] in particular) offer a good solution when the 363 customer traffic is wholly IP, customer routing is reasonably simple, 364 and the customer sites connect to the SP with a variety of Layer 2 365 technologies. 367 1.3.1. Layer 2 Independence 369 One major restriction in a Layer 2 VPN is that the Layer 2 media with 370 which the various sites of a single VPN connect to the SP must be 371 uniform. On the other hand, the various sites of a Layer 3 VPN can 372 connect to the SP with any supported media; for example, some sites 373 may connect with Frame Relay circuits, and others with Ethernet. 375 This restriction of Layer 2 VPN is alleviated by the IP-only Layer 2 376 interworking proposed in this document. This comes at the cost of 377 losing the Layer 3 independence. 379 A corollary to this is that the number of sites that can be in a 380 Layer 2 VPN is determined by the number of Layer 2 circuits that the 381 Layer 2 technology provides. For example, if the Layer 2 technology 382 is Frame Relay with 2-octet DLCIs, a CE can connect to at most about 383 a thousand other CEs in a VPN. 385 1.3.2. SP Routing as Added Value 387 Another problem with Layer 2 VPNs is that the CE router in a VPN must 388 be able to deal with having N routing peers, where N is the number of 389 sites in the VPN. This can be alleviated by manipulating the 390 topology of the VPN. For example, a hub-and-spoke VPN architecture 391 means that only one CE router (the hub) needs to deal with N 392 neighbors. However, in a Layer 3 VPN, a CE router need only deal 393 with one neighbor, the PE router. Thus, the SP can offer Layer 3 394 VPNs as a value-added service to its customers. 396 Moreover, with Layer 2 VPNs it is up to a customer to build and 397 operate the whole network. With Layer 3 VPNs, a customer is just 398 responsible for building and operating routing within each site, 399 which is likely to be much simpler than building and operating 400 routing for the whole VPN. That, in turn, makes Layer 3 VPNs more 401 suitable for customers who don't have sufficient routing expertise, 402 again allowing the SP to provide added value. 404 As mentioned later, multicast routing and forwarding is another 405 value-added service that an SP can offer. 407 1.3.3. Class-of-Service 409 Class-of-Service issues have been addressed for Layer 3 VPNs. Since 410 the PE router has visibility into the network Layer (IP), the PE 411 router can take on the tasks of CoS classification and routing. This 412 restriction on Layer 2 VPNs is again eased in the case of IP-only 413 Layer 2 interworking, as the PE router has visibility into the 414 network Layer (IP). 416 1.4. Multicast Routing 418 There are two aspects to multicast routing that we will consider. On 419 the protocol front, supporting IP multicast in a Layer 3 VPN requires 420 PE routers to participate in the multicast routing instance of the 421 customer, and thus keep some related state information. 423 In the Layer 2 VPN case, the CE routers run native multicast routing 424 directly. The SP network just provides pipes to connect the CE 425 routers; PEs are unaware whether the CEs run multicast or not, and 426 thus do not have to participate in multicast protocols or keep 427 multicast state information. 429 On the forwarding front, in a Layer 3 VPN, CE routers do not 430 replicate multicast packets; thus, the CE-PE link carries only one 431 copy of a multicast packet. Whether replication occurs at the 432 ingress PE, or somewhere within the SP network depends on the 433 sophistication of the Layer 3 VPN multicast solution. The simple 434 solution where a PE replicates packets for each of its CEs may place 435 considerable burden on the PE. More complex solutions may require 436 VPN multicast state in the SP network, but may significantly reduce 437 the traffic in the SP network by delaying packet replication until 438 needed. 440 In a Layer 2 VPN, packet replication occurs at the CE. This has the 441 advantage of distributing the burden of replication among the CEs 442 rather than focusing it on the PE to which they are attached, and 443 thus will scale better. However, the CE-PE link will need to carry 444 the multiple copies of multicast packets. In the case of Virtual 445 Private LAN Service (a specific type of L2 VPN; see [RFC4761]), 446 however, the CE-PE link need transport only one copy of a multicast 447 packet. 449 Thus, just as in the case of unicast routing, the SP has the choice 450 to offer a value-added service (multicast routing and forwarding) at 451 some cost (multicast state and packet replication) using a Layer 3 452 VPN, or to keep it simple and use a Layer 2 VPN. 454 1.5. Conventions used in this document 456 The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT", 457 "SHOULD", "SHOULD NOT", "RECOMMENDED", "MAY", and "OPTIONAL" in this 458 document are to be interpreted as described in [RFC2119]. 460 2. Operation of a Layer 2 VPN 462 The following simple example of a customer with 4 sites connected to 463 3 PE routers in a Service Provider network will hopefully illustrate 464 the various aspects of the operation of a Layer 2 VPN. For 465 simplicity, we assume that a full-mesh topology is desired. 467 In what follows, Frame Relay serves as the Layer 2 media, and each CE 468 has multiple DLCIs to its PE, each to connect to another CE in the 469 VPN. If the Layer 2 media were ATM, then each CE would have multiple 470 VPI/VCIs (Virtual Path Identifier/Virtual Channel Identifier) to 471 connect to other CEs. For PPP and Cisco HDLC, each CE would have 472 multiple physical interfaces to connect to other CEs. In the case of 473 IP-only Layer 2 interworking, each CE could have a mix of one or more 474 of the above Layer 2 media to connect to other CEs. 476 2.1. Network Topology 478 Consider a Service Provider network with edge routers PE0, PE1, and 479 PE2. Assume that PE0 and PE1 are IGP neighbors, and PE2 is more than 480 one hop away from PE0. 482 Suppose that a customer C has 4 sites S0, S1, S2 and S3 that C wants 483 to connect via the Service Provider's network using Frame Relay. 484 Site S0 has CE0 and CE1 both connected to PE0. Site S1 has CE2 485 connected to PE0. Site S2 has CE3 connected to PE1 and CE4 connected 486 to PE2. Site S3 has CE5 connected to PE2. (See Figure 1 below.) 487 Suppose further that C wants to "over-provision" each current site, 488 in expectation that the number of sites will grow to at least 10 in 489 the near future. However, CE4 is only provisioned with 9 DLCIs. 490 (Note that the signalling mechanism discussed in Section 4 will allow 491 a site to grow in terms of connectivity to other sites at a later 492 point of time at the cost of additional signalling, i.e., over- 493 provisioning is not a must but a recommendation). 495 Suppose finally that CE0 and CE2 have DLCIs 100 through 109 496 provisioned; CE1 and CE3 have DLCIs 200 through 209 provisioned; CE4 497 has DLCIs 107, 209, 265, 301, 414, 555, 654, 777 and 888 provisioned; 498 and CE5 has DLCIs 417-426. 500 S0 S3 501 .............. .............. 502 . . . . 503 . +-----+ . . . 504 . | CE0 |-----------+ . +-----+ . 505 . +-----+ . | . | CE5 | . 506 . . | . +--+--+ . 507 . +-----+ . | . | . 508 . | CE1 |-------+ | .......|...... 509 . +-----+ . | | / 510 . . | | / 511 .............. | | / 512 | | SP Network / 513 .....|...|.............................../..... 514 . | | / . 515 . +-+---+-+ +-------+ / . 516 . | PE0 |-------| P |-- | . 517 . +-+---+-+ +-------+ \ | . 518 . / \ \ +---+---+ . 519 . | -----+ --| PE2 | . 520 . | | +---+---+ . 521 . | +---+---+ / . 522 . | | PE1 | / . 523 . | +---+---+ / . 524 . | \ / . 525 ...|.............|.............../............. 526 | | / 527 | | / 528 | | / 529 S1 | | S2 / 530 .............. | ........|........../...... 531 . . | . | | . 532 . +-----+ . | . +--+--+ +--+--+ . 533 . | CE2 |-----+ . | CE3 | | CE4 | . 534 . +-----+ . . +-----+ +-----+ . 535 . . . . 536 .............. .......................... 538 Figure 1: Example Network Topology 540 2.2. Configuration 542 The following sub-sections detail the configuration that is needed to 543 provision the above VPN. For the purpose of exposition, we assume 544 that the customer will connect to the SP with Frame Relay circuits. 546 While we focus primarily on the configuration that an SP has to do, 547 we touch upon the configuration requirements of CEs as well. The 548 main point of contact in CE-PE configuration is that both must agree 549 on the DLCIs that will be used on the interface connecting them. 551 If the PE-CE connection is Frame Relay, it is recommended to run LMI 552 between the PE and CE. For the case of ATM VCs, OAM cells may be 553 used; for PPP and Cisco HDLC, keepalives may be used directly between 554 CEs; however, in this case, PEs would not have visibility as to the 555 liveness of customers circuits. 557 In case of IP-only Layer 2 interworking, if CE1, attached to PE0, 558 connects to CE3, attached to PE1, via a L2VPN circuit, the Layer 2 559 media between CE1 and PE0 is independent of the Layer 2 media between 560 CE3 and PE1. Each side will run its own Layer 2 specific link 561 management protocol, e.g., LMI, LCP, etc. PE0 will inform PE1 about 562 the status of its local circuit to CE1 via the circuit status vector 563 TLV defined in Section 4. Similarly PE1 will inform PE0 about the 564 status of its local circuit to CE3. 566 2.2.1. CE Configuration 568 Each CE that belongs to a VPN is given a "CE ID". CE IDs must be 569 unique in the context of a VPN. For the example, we assume that the 570 CE ID for CE-k is k. 572 Each CE is configured to communicate with its corresponding PE with 573 the set of DLCIs given above; for example, CE0 is configured with 574 DLCIs 100 through 109. In general, a CE is configured with a list of 575 circuits, all with the same Layer 2 encapsulation type, e.g., DLCIs, 576 VCIs, physical PPP interface etc. (IP-only Layer 2 interworking 577 allows a mix of Layer 2 encapsulation types). The size of this list/ 578 set determines the number of remote CEs a given CE can communicate 579 with. Denote the size of this list/set as the CE's range. A CE's 580 range must be at least the number of remote CEs that the CE will 581 connect to in a given VPN; if the range exceeds this, then the CE is 582 over-provisioned, in anticipation of growth of the VPN. 584 Each CE also "knows" which DLCI connects it to each other CE. The 585 methodology followed in this example is to use the CE ID of the other 586 CE as an index into the DLCI list this CE has (with zero-based 587 indexing, i.e., 0 is the first index). For example, CE0 is connected 588 to CE3 through its fourth DLCI, 103; CE4 is connected to CE2 by the 589 third DLCI in its list, namely 265. This is just the methodology 590 used in the example below; the actual methodology used to pick the 591 DLCI to be used is a local matter; the key factor is that CE-k may 592 communicate with CE-m using a different DLCI from the DLCI that CE-m 593 uses to communicate to CE-k, i.e., the SP network effectively acts as 594 a giant Frame Relay switch. This is very important, as it decouples 595 the DLCIs used at each CE site, making for much simpler provisioning. 597 2.2.2. PE Configuration 599 Each PE is configured with the VPNs in which it participates. Each 600 VPN is associated with one or more Route Target communities [RFC4360] 601 which serve to define the topology of the VPN. For each VPN, the PE 602 must determine a Route Distinguisher (RD) to use; this may either be 603 configured or chosen by the PE. RDs do not have to be unique across 604 the VPN. For each CE attached to the PE in a given VPN, the PE must 605 know the set of virtual circuits (DLCI, VCI/VPI or VLAN) connecting 606 it to the CE, and a CE ID identifying the CE within the VPN. CE IDs 607 must be unique in the context of a given VPN. 609 2.2.3. Adding a New Site 611 The first step in adding a new site to a VPN is to pick a new CE ID. 612 If all current members of the VPN are over-provisioned, i.e., their 613 range includes the new CE ID, adding the new site is a purely local 614 task. Otherwise, the sites whose range doesn't include the new CE ID 615 and wish to communicate directly with the new CE must have their 616 ranges increased by allocating additional local circuits to 617 incorporate the new CE ID. 619 The next step is ensuring that the new site has the required 620 connectivity. This usually requires adding a new virtual circuit 621 between the PE and CE; in most cases, this configuration is limited 622 to the PE in question. 624 The rest of the configuration is a local matter between the new CE 625 and the PE to which it is attached. At this point, the PE can signal 626 to other PEs that it has a new site in the VPN, by advertising a BGP 627 Layer 2 route, and traffic connectivity will be set up. 629 It bears repeating that the key to making additions easy is over- 630 provisioning and the algorithm for mapping a CE ID to a DLCI which is 631 used for connecting to the corresponding CE. However, what is being 632 over-provisioned is the number of DLCIs/VCIs that connect the CE to 633 the PE. This is a local matter between the PE and CE, and does not 634 affect other PEs or CEs. 636 2.2.4. Deleting a Site 638 Deleting a site consists first of removing the CE ID of the site from 639 the configuration of the PE to which the site is attached. The PE 640 will then signal to other PEs that it no longer has access to that 641 site, by withdrawing its previously advertised BGP Layer 2 route. 642 Connectivity to the deleted site will cease. 644 The next steps are book-keeping: decommissioning the attachment 645 circuit from the PE to the CE that corresponds to the site being 646 removed, and noting that the CE ID is now free for future allocation. 647 Note that each PE is now (further) over-provisioned; one may choose 648 to actively "reap" CE IDs if desired. 650 2.2.5. Managing CE ID Mappings 652 In the data plane, an attachment circuit, identified say by a DLCI, 653 is mapped to a label via the control plane abstraction of a CE ID. 654 At the egress PE, the label is mapped back to an attachment circuit 655 via the same CE ID. It is up to the VPN administrator 657 to provision attachment circuits (e.g., DLCIs); 659 to allocate CE IDs; and 661 to keep a clear mapping of CE IDs to attachment circuits (and 662 reflect this in PE configurations). 664 The PEs manage the mappings between attachment circuits and labels, 665 i.e., the data plane mappings. 667 Note that in the N-to-one modes listed in Table 1, a single 668 attachment circuit may correspond to several Layer 2 virtual 669 circuits. Nevertheless, there is a one-to-one mapping between an 670 attachment circuit and a CE ID (and thus a label). 672 2.2.6. Managing Label Blocks 674 Label blocks and label values are managed by the PEs. As sites get 675 added and removed, labels are allocated and released. The easiest 676 way to manage these are using fixed size label blocks rather than 677 variable sized blocks, although the signaling described here supports 678 either. If an implementation uses fixed size blocks, then allocating 679 a label for a new site may requiring allocating a new block; 680 similarly, freeing a label may require freeing a block. 682 If the implementation requires fixed size blocks, there is probably a 683 default block size, but the implementation SHOULD allow the 684 administrator to choose a size. Larger label block sizes mean more 685 potential "wasted" labels, but less signaling overhead, a trade-off 686 that the administrator might want to control. 688 Also, as sites get added and deleted, a PE may receive packets with a 689 label that reflects a site that has been deleted locally but remote 690 PEs haven't processed yet, or that reflects a new site added remotely 691 but that hasn't been processed locally. In either of these cases, 692 the PE SHOULD silently discard the packet; it may choose to log the 693 event once for each such label, but not for every such packet. 695 2.3. Operations, Administration and Maintenance (OAM) 697 Many Layer 2 mediums have OAM mechanisms. For example, the Point-to- 698 Point Protocol (PPP) has Echo Request and Echo Reply messages; Frame 699 Relay has the Local Management Interface. Among other things, OAM is 700 used for trouble-shooting and as keepalives. 702 There are two ways to carry OAM information across Layer 2 VPNs. The 703 first is convey OAM packets as any other Layer 2 packets across the 704 VPN. This is the most general method, and maintains full Layer 2 705 transparency, and preserves all OAM information. The other method 706 applies only to the link liveness aspect of OAM; it consists of 707 transmitting the status of each attachment circuit across the control 708 plane using the Circuit Status Vector (Section 3.1). This method is 709 the only one applicable to Layer 2 Interworking VPNs (Section 4), 710 since OAM packets are not IP frames, and thus cannot be transmitted 711 across such Layer 2 VPNs. 713 3. PE Information Exchange 715 When a PE is configured with all the required information for a CE, 716 it advertises to other PEs the fact that it is participating in a VPN 717 via BGP messages, as per [RFC4761], section 3. BGP was chosen as the 718 means for exchanging L2 VPN information for two reasons: it offers 719 mechanisms for both auto-discovery and signaling, and allows for 720 operational convergence, as explained in Section 1. A bonus for 721 using BGP is a robust inter-AS solution for L2VPNs. 723 There are two modifications to the formating of messages. The first 724 is that the set of Encaps Types carried in the L2-info extended 725 community has been expanded to include those from Table 1. The value 726 of the Encaps Type field identifies the Layer 2 encapsulation, e.g., 727 ATM, Frame Relay etc. 729 +-----------+-------------------------------------------+-----------+ 730 | Encaps | Description | Reference | 731 | Type | | | 732 +-----------+-------------------------------------------+-----------+ 733 | 0 | Reserved | - | 734 | | | | 735 | 1 | Frame Relay | RFC 4446 | 736 | | | | 737 | 2 | ATM AAL5 SDU VCC transport | RFC 4446 | 738 | | | | 739 | 3 | ATM transparent cell transport | RFC 4816 | 740 | | | | 741 | 4 | Ethernet (VLAN) Tagged Mode | RFC 4448 | 742 | | | | 743 | 5 | Ethernet Raw Mode | RFC 4448 | 744 | | | | 745 | 6 | Cisco HDLC | RFC 4618 | 746 | | | | 747 | 7 | PPP | RFC 4618 | 748 | | | | 749 | 8 | SONET/SDH Circuit Emulation Service | RFC 4842 | 750 | | | | 751 | 9 | ATM n-to-one VCC cell transport | RFC 4717 | 752 | | | | 753 | 10 | ATM n-to-one VPC cell transport | RFC 4717 | 754 | | | | 755 | 11 | IP Layer 2 Transport | RFC 3032 | 756 | | | | 757 | 15 | Frame Relay Port mode | RFC 4619 | 758 | | | | 759 | 17 | Structure-agnostic E1 over packet | RFC 4553 | 760 | | | | 761 | 18 | Structure-agnostic T1 (DS1) over packet | RFC 4553 | 762 | | | | 763 | 19 | VPLS | RFC 4761 | 764 | | | | 765 | 20 | Structure-agnostic T3 (DS3) over packet | RFC 4553 | 766 | | | | 767 | 21 | Nx64kbit/s Basic Service using | RFC 5086 | 768 | | Structure-aware | | 769 | | | | 770 | 25 | Frame Relay DLCI | RFC 4619 | 771 | | | | 772 | 40 | Structure-agnostic E3 over packet | RFC 4553 | 773 | | | | 774 | 41 (1) | Octet-aligned payload for | RFC 4553 | 775 | | Structure-agnostic DS1 circuits | | 776 | | | | 777 | 42 (2) | E1 Nx64kbit/s with CAS using | RFC 5086 | 778 | | Structure-aware | | 779 | | | | 780 | 43 | DS1 (ESF) Nx64kbit/s with CAS using | RFC 5086 | 781 | | Structure-aware | | 782 | | | | 783 | 44 | DS1 (SF) Nx64kbit/s with CAS using | RFC 5086 | 784 | | Structure-aware | | 785 +-----------+-------------------------------------------+-----------+ 787 Table 1: Encaps Types 789 Note (1): Allocation of a separate code point for Encaps Type 790 eliminates the need for TDM payload size. 792 Note (2): Having separate code points for Encaps Types 42-44 allows 793 specifying the trunk framing (i.e, E1, T1 ESF or T1 SF) with CAS. 795 The second is the introduction of TLVs (Type-Length-Value triplets) 796 in the VPLS NLRI (Network Layer Reachability Information). L2VPN 797 TLVs can be added to extend the information carried in the NLRI, 798 using the format shown in Figure 2. In L2VPN TLVs, Type is 1 octet, 799 Length is 2 octets and represents the size of the Value field in 800 bits. 802 0 1 2 3 803 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 804 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 805 | Type | Length | Value | 806 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 807 | Value (continued, if needed) ... | 808 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 810 Figure 2: Format of TLVs 812 +----------+-----------------------+ 813 | TLV Type | Description | 814 +----------+-----------------------+ 815 | 1 | Circuit Status Vector | 816 +----------+-----------------------+ 818 Table 2: TLV Types 820 3.1. Circuit Status Vector 822 This sub-TLV carries the status of a L2VPN PVC between a pair of PEs. 823 Note that a L2VPN PVC is bidirectional, composed of two simplex 824 connection going in opposite directions. A simplex connection 825 consists of the 3 segments: 1) the local access circuit between the 826 source CE and the ingress PE, 2) the tunnel LSP between the ingress 827 and egress PEs, and 3) the access circuit between the egress PE and 828 the destination CE. 830 To monitor the status of a PVC, a PE needs to monitor the status of 831 both simplex connections. Since it knows that status of its access 832 circuit, and the status of the tunnel towards the remote PE, it can 833 inform the remote PE of these two. Similarly, the remote PE can 834 inform the status of its access circuit to its local CE and the 835 status of the tunnel to the first PE. Combining the local and the 836 remote information, a PE can determine the status of a PVC. 838 The basic unit of advertisement in L2VPN for a given CE is a label- 839 block. Each label within a label-block corresponds to a PVC on the 840 CE. The local status information for all PVCs corresponding to a 841 label-block is advertised along with the NLRI for the label-block 842 using the status vector TLV. The Type field of this TLV is 1. The 843 Length field of the TLV specifies the length of the value field in 844 bits. The Value field of this TLV is a bit-vector, each bit of which 845 indicates the status of the PVC associated with the corresponding 846 label in the label-block. Bit value 0 corresponds to the PVC 847 associated with the first label in the label block, and indicates 848 that the local circuit and the tunnel LSP to the remote PE is up, 849 while a value of 1 indicates that either or both of them are down. 851 The Value field is padded to the nearest octet boundary. 853 If PE A receives a VPLS NLRI, while selecting a label from a label- 854 block (advertised by PE B, for remote CE m, and VPN X) for one of its 855 local CE n (in VPN X) can also determine the status of the 856 corresponding PVC (between CE n and CE m) by looking at the 857 appropriate bit in the circuit status vector. 859 3.2. Generalizing the VPN Topology 861 In the above, we assumed for simplicity that the VPN was a full mesh. 862 To allow for more general VPN topologies, a mechanism based on 863 filtering on BGP extended communities can be used. 865 4. Layer 2 Interworking 867 As defined so far in this document, all CE-PE connections for a given 868 Layer 2 VPN must use the same Layer 2 encapsulation, e.g., they must 869 all be Frame Relay. This is often a burdensome restriction. One 870 answer is to use an existing Layer 2 interworking mechanism, for 871 example, Frame Relay-ATM interworking. 873 In this document, we take a different approach: we postulate that the 874 network Layer is IP, and base Layer 2 interworking on that. Thus, 875 one can choose between pure Layer 2 VPNs, with a stringent Layer 2 876 restriction but with Layer 3 independence, or a Layer 2 interworking 877 VPNs, where there is no restriction on Layer 2, but Layer 3 must be 878 IP. Of course, a PE may choose to implement Frame Relay-ATM 879 interworking. For example, an ATM Layer 2 VPN could have some CEs 880 connect via Frame Relay links, if their PE could translate Frame 881 Relay to ATM transparent to the rest of the VPN. This would be 882 private to the CE-PE connection, and such a course is outside the 883 scope of this document. 885 For Layer 2 interworking as defined here, when an IP packet arrives 886 at a PE, its Layer 2 address is noted, then all Layer 2 overhead is 887 stripped, leaving just the IP packet. Then, a VPN label is added, 888 and the packet is encapsulated in the PE-PE tunnel (as required by 889 the tunnel technology). Finally, the packet is forwarded. Note that 890 the forwarding decision is made on the basis of the Layer 2 891 information, not the IP header. At the egress, the VPN label 892 determines to which CE the packet must be sent, and over which 893 virtual circuit; from this, the egress PE can also determine the 894 Layer 2 encapsulation to place on the packet once the VPN label is 895 stripped. 897 An added benefit of restricting interworking to IP only as the Layer 898 3 technology is that the provider's network can provide IP Diffserv 899 or any other IP based QOS mechanism to the L2VPN customer. The 900 ingress PE can set up IP/TCP/UDP based classifiers to do DiffServ 901 marking, and other functions like policing and shaping on the L2 902 circuits of the VPN customer. Note the division of labor: the CE 903 determines the destination CE, and encodes that in the Layer 2 904 address. The ingress PE thus determines the egress PE and VPN label 905 based on the Layer 2 address supplied by the CE, but the ingress PE 906 can choose the tunnel to reach the egress PE (in the case that there 907 are different tunnels for each CoS/DiffServ code point), or the CoS 908 bits to place in the tunnel (in the case where a single tunnel 909 carries multiple CoS/DiffServ code points) based on its own 910 classification of the packet. 912 5. Packet Transport 914 When a packet arrives at a PE from a CE in a Layer 2 VPN, the Layer 2 915 address of the packet identifies to which remote attachment circuit 916 (and thus remote CE) the packet is destined. The procedure outlined 917 above installs a route that maps the Layer 2 address to a tunnel 918 (which identifies the PE to which the destination CE is attached) and 919 a VPN label (which identifies the destination AC). If the egress PE 920 is the same as the ingress PE, no tunnel or VPN label is needed. 922 The packet may then be modified (depending on the Layer 2 923 encapsulation). In case of IP-only Layer 2 interworking, the Layer 2 924 header is completely stripped off till the IP header. Then, a VPN 925 label and tunnel encapsulation are added as specified by the route 926 described above, and the packet is sent to the egress PE. 928 If the egress PE is the same as the ingress, the packet "arrives" 929 with no labels. Otherwise, the packet arrives with the VPN label, 930 which is used to determine which CE is the destination CE. The 931 packet is restored to a fully-formed Layer 2 packet, and then sent to 932 the CE. 934 5.1. Layer 2 MTU 936 This document requires that the Layer 2 MTU configured on all the 937 access circuits connecting CEs to PEs in a L2VPN be the same. This 938 can be ensured by passing the configured Layer 2 MTU in the Layer2- 939 info extended community when advertising L2VPN label-blocks. On 940 receiving L2VPN label-block from remote PEs in a VPN, the MTU value 941 carried in the Layer2-info extendend community should be compared 942 against the configured value for the VPN. If they don't match, then 943 the label-block should be ignored. 945 The MTU on the Layer 2 access links MUST be chosen such that the size 946 of the L2 frames plus the L2VPN header does not exceed the MTU of the 947 SP network. Layer 2 frames that exceed the MTU after encapsulation 948 MUST be dropped. For the case of IP-only Layer 2 interworking the IP 949 MTU on the Layer 2 access link must be chosen such that the size of 950 the IP packet and the L2VPN header does not exceed the MTU of the SP 951 network. 953 5.2. Layer 2 Frame Format 955 The modification to the Layer 2 frame depends on the Layer 2 type. 956 This document requires that the encapsulation methods used in 957 transporting of Layer 2 frames over tunnels be the same as described 958 in [RFC4448], [RFC4618], [RFC4619], and [RFC4717], except in the case 959 of IP-only Layer 2 Interworking which is described next. 961 5.3. IP-only Layer 2 Interworking 963 +-----------------------------------+ 964 | PSN Transport | VPN | IP | VPN label is the 965 | Header | Label | Packet | demultiplexing field 966 +-----------------------------------+ 968 Figure 3: Format of IP-only Layer 2 interworking packet 970 At the ingress PE, an L2 frame's L2 header is completely stripped off 971 and is carried over as an IP packet within the SP network (Figure 3). 972 The forwarding decision is still based on the L2 address of the 973 incoming L2 frame. At the egress PE, the IP packet is encapsulated 974 back in an L2 frame and transported over to the destination CE. The 975 forwarding decision at the egress PE is based on the VPN label as 976 before. The L2 technology between egress PE and CE is independent of 977 the L2 technology between ingress PE and CE. 979 6. Security Considerations 981 RFC 4761, on which this document is based, has a detailed discussion 982 of security considerations. As in RFC 4761, the focus here is the 983 privacy of customer VPN data (as opposed to confidentiality, 984 integrity, or authentication of said data); to achieve the latter, 985 one can use the methods suggested in RFC 4761. The techniques 986 described in RFC 4761 for securing the control plane and protecting 987 the forwarding path apply equally to L2 VPNs, as do the remarks 988 regarding multi-AS operation. The mitigation strategies and the 989 analogies with [RFC4364] also apply here. 991 RFC 4761 perhaps should have discussed Denial of Service attacks 992 based on the fact that VPLS PEs have to learn MAC addresses and 993 replicate packets (for flooding and multicast). However, those 994 considerations don't apply here, as neither of those actions are 995 required of PEs implementing the procedures in this document. 997 7. Acknowledgments 999 The authors would like to thank Chaitanya Kodeboyina, Dennis 1000 Ferguson, Der-Hwa Gan, Dave Katz, Nischal Sheth, John Stewart, and 1001 Paul Traina for the enlightening discussions that helped shape the 1002 ideas presented here, and Ross Callon for his valuable comments. 1004 The idea of using extended communities for more general connectivity 1005 of a Layer 2 VPN was a contribution by Yakov Rekhter, who also gave 1006 many useful comments on the text; many thanks to him. 1008 8. Contributors 1010 The following contributed to this document. 1012 Manoj Leelanivas, Juniper Networks 1013 Quaizar Vohra, Juniper Networks 1014 Javier Achirica, Consultant 1015 Ronald Bonica, Juniper Networks 1016 Dave Cooper, Global Crossing 1017 Chris Liljenstolpe, Telstra 1018 Eduard Metz, KPN Dutch Telecom 1019 Hamid Ould-Brahim, Nortel 1020 Chandramouli Sargor 1021 Himanshu Shah, Ciena 1022 Vijay Srinivasan 1023 Zhaohui Zhang, Juniper Networks 1025 9. IANA Considerations 1027 IANA is requested to create two new registries: the first is for the 1028 one-octet Encaps Type field of the L2-info extended community. The 1029 name of the registry is "BGP L2 Encapsulation Types"; the values 1030 already allocated are in Table 1 of Section 3. The allocation policy 1031 for new entries up to and including value 127 is "Expert Review". 1032 The allocation policy for values 128 through 251 is "First Come First 1033 Served". The values from 252 through 255 are for "Experimental Use". 1035 The second registry is for the one-octet Type field of the TLVs of 1036 the VPLS NLRI. The name of the registry is "BGP L2 TLV Types"; the 1037 sole allocated value is in Table 2 of Section 3. The allocation 1038 policy for new entries up to and including value 127 is "Expert 1039 Review". The allocation policy for values 128 through 251 is "First 1040 Come First Served". The values from 252 through 255 are for 1041 "Experimental Use". 1043 10. References 1045 10.1. Normative References 1047 [RFC2119] Bradner, S., "Key words for use in RFCs to Indicate 1048 Requirement Levels", BCP 14, RFC 2119, March 1997. 1050 [RFC4360] Sangli, S., Tappan, D., and Y. Rekhter, "BGP Extended 1051 Communities Attribute", RFC 4360, February 2006. 1053 [RFC4364] Rosen, E. and Y. Rekhter, "BGP/MPLS IP Virtual Private 1054 Networks (VPNs)", RFC 4364, February 2006. 1056 [RFC4446] Martini, L., "IANA Allocations for Pseudowire Edge to Edge 1057 Emulation (PWE3)", BCP 116, RFC 4446, April 2006. 1059 [RFC4448] Martini, L., Rosen, E., El-Aawar, N., and G. Heron, 1060 "Encapsulation Methods for Transport of Ethernet over MPLS 1061 Networks", RFC 4448, April 2006. 1063 [RFC4618] Martini, L., Rosen, E., Heron, G., and A. Malis, 1064 "Encapsulation Methods for Transport of PPP/High-Level 1065 Data Link Control (HDLC) over MPLS Networks", RFC 4618, 1066 September 2006. 1068 [RFC4619] Martini, L., Kawa, C., and A. Malis, "Encapsulation 1069 Methods for Transport of Frame Relay over Multiprotocol 1070 Label Switching (MPLS) Networks", RFC 4619, 1071 September 2006. 1073 [RFC4717] Martini, L., Jayakumar, J., Bocci, M., El-Aawar, N., 1074 Brayley, J., and G. Koleyni, "Encapsulation Methods for 1075 Transport of Asynchronous Transfer Mode (ATM) over MPLS 1076 Networks", RFC 4717, December 2006. 1078 [RFC4761] Kompella, K. and Y. Rekhter, "Virtual Private LAN Service 1079 (VPLS) Using BGP for Auto-Discovery and Signaling", 1080 RFC 4761, January 2007. 1082 10.2. Informative References 1084 [RFC3985] Bryant, S. and P. Pate, "Pseudo Wire Emulation Edge-to- 1085 Edge (PWE3) Architecture", RFC 3985, March 2005. 1087 [RFC4447] Martini, L., Rosen, E., El-Aawar, N., Smith, T., and G. 1088 Heron, "Pseudowire Setup and Maintenance Using the Label 1089 Distribution Protocol (LDP)", RFC 4447, April 2006. 1091 [RFC4684] Marques, P., Bonica, R., Fang, L., Martini, L., Raszuk, 1092 R., Patel, K., and J. Guichard, "Constrained Route 1093 Distribution for Border Gateway Protocol/MultiProtocol 1094 Label Switching (BGP/MPLS) Internet Protocol (IP) Virtual 1095 Private Networks (VPNs)", RFC 4684, November 2006. 1097 [RFC4762] Lasserre, M. and V. Kompella, "Virtual Private LAN Service 1098 (VPLS) Using Label Distribution Protocol (LDP) Signaling", 1099 RFC 4762, January 2007. 1101 [RFC6074] Rosen, E., Davie, B., Radoaca, V., and W. Luo, 1102 "Provisioning, Auto-Discovery, and Signaling in Layer 2 1103 Virtual Private Networks (L2VPNs)", RFC 6074, 1104 January 2011. 1106 [Kosiur] Kosiur, D., "Building and Managing Virtual Private 1107 Networks", November 1996. 1109 Authors' Addresses 1111 Kireeti Kompella 1112 Juniper Networks 1113 1194 N. Mathilda Ave. 1114 Sunnyvale, CA 94089 1115 US 1117 Email: kireeti@juniper.net 1119 Bhupesh Kothari 1120 Cisco Systems 1121 3750 Cisco Way 1122 San Jose, CA 95134 1123 USA 1125 Email: bhupesh@cisco.com 1127 Rao Cherukuri 1128 Juniper Networks 1129 1194 N. Mathilda Ave. 1130 Sunnyvale, CA 94089 1131 US 1133 Email: cherukuri@juniper.net