L2VPN Working Group F. Balus Internet Draft M. Bocci Intended Status: Proposed Standard M. Aissaoui Expires: January 2009 Alcatel-Lucent John Hoffmans KPN Geraldine Calvignac France Telecom Raymond Zhang British Telecom Nabil Bitar Verizon Olen Stokes Extreme Networks July 14, 2008 VPLS Extensions for Provider Backbone Bridging draft-balus-l2vpn-vpls-802.1ah-03.txt Status of this Memo By submitting this Internet-Draft, each author represents that any applicable patent or other IPR claims of which he or she is aware have been or will be disclosed, and any of which he or she becomes aware will be disclosed, in accordance with Section 6 of BCP 79. Internet-Drafts are working documents of the Internet Engineering Task Force (IETF), its areas, and its working groups. Note that other groups may also distribute working documents as Internet-Drafts. Internet-Drafts are draft documents valid for a maximum of six months and may be updated, replaced, or obsoleted by other documents at any time. It is inappropriate to use Internet-Drafts as reference material or to cite them other than as "work in progress." The list of current Internet-Drafts can be accessed at http://www.ietf.org/1id-abstracts.html The list of Internet-Draft Shadow Directories can be accessed at http://www.ietf.org/shadow.html. This Internet-Draft will expire on January 14, 2009. Balus, et. al Expires January 14, 2009 [Page 1] Internet-Draft VPLS Extensions for PBB July 2008 Abstract IEEE 802.1ah draft standard [IEEE802.1ah], also known as Provider Backbone Bridges (PBB) defines an architecture and bridge protocols for interconnection of multiple Provider Bridge Networks (PBNs). PBB was defined in IEEE as a connectionless technology based on multipoint VLAN tunnels. MSTP is used as the core control plane for loop avoidance and load balancing. As a result, the coverage of the solution is limited by STP scale in the core of large service provider networks. Virtual Private LAN Service (VPLS) [RFC4762] provides a solution for extending Ethernet LAN services, using MPLS tunneling capabilities, through a routed MPLS backbone without running (M)STP across the backbone. As a result, VPLS has been deployed on a large scale in service provider networks. This draft discusses extensions to the VPLS model required to incorporate desirable PBB components while maintaining the Service Provider fit of the initial model. Conventions used in this document In examples, "C:" and "S:" indicate lines sent by the client and server respectively. The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT", "SHOULD", "SHOULD NOT", "RECOMMENDED", "MAY", and "OPTIONAL" in this document are to be interpreted as described in RFC 2119. Balus, et al. Expires January 14, 2009 [Page 2] Internet-Draft VPLS Extensions for PBB July 2008 Table of Contents 1. Introduction...................................................3 2. Terminology....................................................5 3. PBB-VPLS Reference Model.......................................6 3.1. General Description.......................................6 3.2. I-VSI to B-VSI Mapping...................................10 4. Data Plane....................................................12 5. Control Plane.................................................15 5.1. Auto-Discovery...........................................15 5.2. Signaling................................................15 5.2.1. MAC Address Withdraw................................16 5.2.2. NSP Capabilities code points for PBB-VPLS...........18 6. PBB-VPLS Interworking with regular VPLS Instances.............18 7. Multicast Handling............................................20 8. Resiliency....................................................20 9. OAM...........................................................20 10. Security Considerations......................................20 11. IANA Considerations..........................................21 12. Acknowledgments..............................................21 13. References...................................................22 13.1. Normative References....................................22 13.2. Informative References..................................22 Author's Addresses...............................................23 Full Copyright Statement.........................................24 Intellectual Property Statement..................................24 Acknowledgment...................................................25 1. Introduction The IEEE 802.1ah model for PBB is organized around a B-component handling the provider backbone MAC layer and an I-component concerned with the mapping of Customer/Provider Bridge (QinQ) domain (e.g. MACs, VLANs) to the provider backbone (e.g. BMACs, B-VLANs): i.e. the I-component contains the boundary between the Customer and Backbone MAC domains. PBB encapsulates customer frames in a provider backbone Ethernet header, providing for Customer MAC hiding capabilities. PBB requires the use of Multiple Spanning Tree Protocol (MSTP) as the core control plane (B-domain) for loop avoidance and load balancing. As a result, the coverage of the solution is limited by STP scale in the core of large service provider networks. Balus, et al. Expires January 14, 2009 [Page 3] Internet-Draft VPLS Extensions for PBB July 2008 Virtual Private LAN Service (VPLS) provides a solution for extending Ethernet LAN services, using MPLS tunneling capabilities, through a routed MPLS backbone without requiring the use of (M)STP across the backbone. VPLS use of the structured FEC 129 [RFC4762] also allows for inter-domain, inter-provider connectivity and enables auto- discovery options across the network improving the service delivery options. VPLS creates an emulated LAN Segment using as building blocks a set of Virtual Switch Instances (VSIs) interconnected using Virtual Links - i.e. based on Pseudo Wires (PWs) or native Ethernet. In a large scale deployment, there might be a need to split the backbone domain into two or more domains using the Hierarchical-VPLS (H-VPLS) model described in [RFC4762]. This may be required for scalability, administrative reasons, or to provide efficient handling of packet replication. In this context, VPLS scalability may be improved by hiding the customer MAC addresses at the edge PEs so that the core PEs (e.g. PE-rs) handle just the Provider MAC addresses. This document proposes extensions to the VPLS model to allow for selective inclusion of useful PBB capabilities while continuing to avoid the use of MSTP in the backbone. The proposed solution accommodates though the use of native Ethernet model, MSTP-based for the PBBN [IEEE802.1ah] should a provider choose to deploy it. Description of the framework and requirements for interoperability between the IEEE and VPLS components is given in [PBB-VPLS-Interop]. Specific service provider requirements often define the boundaries of PBB and VPLS domains within their networks. It is not in the scope of this document to specify how far in the Metro Area Network (MAN) or the Wide Area Network (WAN) PBB and VPLS boundaries extend. The PBB VPLS may co-exist in the same PE with non PBB services (i.e., regular VPWS or VPLS using MPLS PW where PBB Customer MAC hiding and aggregation functions are not required). Section 2 defines the terms used to describe the extensions to the regular VPLS Model. Section 3 covers the reference model for PBB VPLS and gives examples of its usage to address the use cases described in [PBB-VPLS-Interop]. Section 4 describes the data plane while section 5 and 6 deal with the auto-discovery and signaling components, including the required MAC Withdraw extension. Balus, et al. Expires January 14, 2009 [Page 4] Internet-Draft VPLS Extensions for PBB July 2008 2. Terminology [IEEE802.1ah] provides terminology for Provider Backbone Bridging that is briefly described also in [PBB-VPLS-Interop]. This document employs specifically the following abbreviations from [IEEE802.1ah]: CBP: Customer Backbone Port, the B-component port connecting to the I-component. PIP: Provider Instance Port, the I-component port connecting to the B-component. This document defines the following additional terms: B-x: a VPLS component of the switching domain handling Backbone MACs - e.g. B-FEC, B-PW B-VPLS: a collection of VPLS components that operate in the Backbone MAC domain, carrying one or multiple I-VPLS instances B-VSI: A VPLS Service Instance (VSI) that participates in a B-VPLS I-x: a VPLS component of the switching domain handling customer MACs - e.g. I-FEC, I-PW I-VPLS: a collection of VPLS components that participate in the customer MAC layer - i.e. it uses the customer MAC addresses (basically the destination address) to switch Ethernet frames I-VSI: A VPLS Service Instance (VSI) that participates in an I-VPLS PBB VPLS: an extended VPLS Service that includes PBB components IB-PE: a PE that contains both I and B components I-PE: a PE that contains just I component(s) B-PE: a PE that contains just B component(s) and Customer Backbone Ports (I-tagged CBPs - see [IEEE802.1ah]) BC-PE: Backbone Core PE, a PE that contains only B component(s) and Provider Network Port(s) (PNPs - see [IEEE802.1ah]) Balus, et al. Expires January 14, 2009 [Page 5] Internet-Draft VPLS Extensions for PBB July 2008 3. PBB-VPLS Reference Model VPLS is defined in [RFC4762] as a collection of Virtual Switch Instance(s) (VSIs) interconnected via Pseudo-Wires (PW). The VPLS model described in [RFC4762] is able to accommodate different types of PWs and Ethernet Attachment Circuits (AC) through the use of VPLS (PW) Forwarders and a Native Service Processing (NSP) module that performs AC adaptation and bridging function working with the outer Ethernet MAC header. In the VPLS case the NSP module is referred to as Virtual Switching Instance (VSI) [RFC4664]. PBB Service is defined in [IEEE802.1ah] as a collection of two components: an I-component and a B-component operating on the Customer and the Backbone MAC layer, respectively. 3.1. General Description Porting both PBB functionalities to VPLS implies emulating the I and B components in the VPLS NSP while maintaining the capability to transport Ethernet frames over Pseudowires. A PBB VPLS solution may be modeled as an "I-VSI" mapped to a "B-VSI" operating on the Customer and the Backbone MAC layer, respectively, as depicted in Figure 1. Same as in [IEEE802.1ah], the I-VSI and its related B-VSI are considered for modelling purposes as separate modules interconnected through a internal or external link. The I-VSI and its related B-VSI can be associated with the same type of components as the regular VPLS VSI: . A VPLS Forwarder identified by L2 FEC in the control plane and PW service Label(s) in the data plane [RFC4762] . A collection of Attachment Circuits identified using: o B-VID and/or I-component Service ID (ISID) tag(s) and/or port number for B-VSI [IEEE802.1ah] o S-VID and/or C-VID tag(s) and/or port number for I-VSI corresponding to different type of interfaces: QinQ, 802.1Q, port mode, same as for regular VPLS. This representation of the PBB VPLS components is an abstract model used in this document to help the solution description. It is up to Balus, et al. Expires January 14, 2009 [Page 6] Internet-Draft VPLS Extensions for PBB July 2008 the implementations to optimize the functions described in this document as long as they provide for solution interoperability. ,,.--.,, ,-` `', - ' ' \ ------------ | PBB/VPLS | | Payload | | transport | ------------ , / |CVID, SVID| . / ------------ /., _./ | |CMAC DA,SA| | /`''--''` | | ------------ | | | | |I-tag-ISID| +-\-\--+ +--\-\-+ ------------ | B-PW | | B-PW | |BMAC DA,SA| +-----| |----| |-----+ ------------ | +------+ +---.--+ | | PW SL | | `. ,.., ` | ------------ | ' `-` | |PSN Header| ,.-., | ,.B-VSI | | ------------ ,' `+-------+ ,-` . / | / | | .'` `/.` | | Native | B-ETH | ` | IB-PE | \ PBB | | ,- | `. ,+-------+ / ` | `'-'` | ' `. | | ,' I-VSI . | | --.--.-----' | | .` | `. | | +-----`+ +--\---+ +-'----+ | | | | | | | | | ------------ +--| I-PW |-| I-ETH|-| I-Q |--+ | Payload | | | | | | | ------------ +--/---+ +--_---+ +------+ |CVID, SVID| / / \ `. ` ------------ ,.-., / \ ,.'/, |CMAC DA,SA| ,' `. - ' ,' `. ------------ / , CE CE / , | PW SL | | regular | | Q-in-Q | ------------ \ VPLS / \ ` |PSN Header| `. ,' `. ,' ------------ `'-'` `'-'` Figure 1: "PBB VPLS" reference model, IB-PE Example The PBB VPLS Model maintains the flexibility of associating both PWs or native Ethernet ACs with I-VSI and B-VSI. In Figure 1 the associated objects are referred to as I-PW/I-ETH and B-PW/B-ETH, respectively. I-Q represents a QinQ interface [IEEE802.1ad], in fact Balus, et al. Expires January 14, 2009 [Page 7] Internet-Draft VPLS Extensions for PBB July 2008 an instantiation of an I-ETH AC used to connect to a QinQ access network. The I-VPLS and B-VPLS clouds may contain either a VPLS mesh or HVPLS topology as described in [RFC4762]. PBB Customer MAC hiding and aggregation functions are provided by encapsulating the Customer MAC frame coming from a PW or AC terminating into I-VSI into a Provider Backbone Ethernet Header. Figure 1 describes the example of an Ethernet/PW packet coming on a regular (I-)PW into the I-VSI. The I-VSI performs the mapping of Customer MACs to Backbone MACs as the frame is delivered to the B- VSI. The resulted PBB/PW encapsulation is described in the top right side of Figure 1. Same as for [IEEE802.1ah], two different use cases may be considered based on the location of the I-VSI and its related B-VSI. Case 1: Co-located I-VSI and B-VSI Figure 1 describes the case of a PE that contains both I and B-VSIs. IB-PE terminology is used as the PE performs a similar function with a PBB IB-BEB - see [IEEE802.1ah]. The link between I-VSI and its related B-VSI is internal to the PBB PE. Case 2: Non co-located I-VSI and B-VSI The I-VSI and its associated B-VSI may be also located in different PE devices referred to as I-PE and B-PE, respectively, as depicted in Figure 2. Balus, et al. Expires January 14, 2009 [Page 8] Internet-Draft VPLS Extensions for PBB July 2008 ,,.--.,, ,-` `', - ' ' \ | MPLS | | (B-VPLS) | , / . / /., _./ | | /`''--''` | | | | | | +-\-\--+ +--\-\-+ | B-PW | | B-PW | +-----|(PNP) |----|(PNP) |-----+ | +------+ +---.--+ | | `. ,..,. ` | | ' ` | | ,| B-VSI | | ,'`'-'``+-------+ ,-` \ / | | PBBN | B-ETH |''''' '.-.' B-PE | `. ,+-------+ | | `'-'` | | | +------------------------------+ |CBP | | |PIP +------------------------------+ | | | | ,-. | | / \ | | /I-VSI\ I-PE | | --------' | | .` | `. | | +-----`+ +--\---+ +-'----+ | +--| I-PW |-| I-ETH|-| I-Q |--+ +--/---+ +--_---+ +------+ / / \ \ ,.-., / \ \,.., ,' `. - ' ,' `. / , CE CE . , | I-VPLS | Q-in-Q . \ ` . ` `. ,' `. ,' `'-'` `'-'` Figure 2: "PBB VPLS" reference model, I-PE, B-PE Example Balus, et al. Expires January 14, 2009 [Page 9] Internet-Draft VPLS Extensions for PBB July 2008 In this case, the connection between I-PE and B-PE will be an external link, where the PBB Service ID (ISID) is still used to determine which particular I-VSI FIB should be used to determine the destination for a frame ingressing the PIP port on the I-PE. 3.2. I-VSI to B-VSI Mapping The I-VSI(s) may be mapped to the B-VSIs using an 1:1 model or many- to-1 (M:1) model. . The 1:1 model, see Figure 1 and 2, may be chosen by a service provider who is content with the level of service multiplexing provided by the B-PWs. . The M:1 model may be used in order to provide an additional layer of aggregation where multiple customer services are transported through a backbone VPLS. Figure 3 shows the M:1 reference model applied to one of the most common HVPLS scenario. Balus, et al. Expires January 14, 2009 [Page 10] Internet-Draft VPLS Extensions for PBB July 2008 _,,..--..,,, ,-'` `'-, .` `' ,' `. / IP MPLS Core , | (VPLS Mesh) | \ ` `. ` ', _-` +------`-,, _,-`-------+ | ,-, | ``'''--'''`` | ,-, | N-PE3 | | B | | | | B | | N-PE4 | | | | BC-PEs | | | | | `'' | | `'' | +-,--,,-+ +--,--,,+ ,' \ ,' \ / \ / \ | MPLS | | MPLS | | Access | | Access | | B-PWs | | B-PWs | \ / \ / `. / `. / +------`-,,+-------+ +-------+'-'+-------+ | ,-, | | ,-, | | ,-, | | ,-, | | | B | | | | B | | | | B | | | | B | | | | | | | | | |IB-PEs | | | | | | | | | `'' | | `'' | | `'' | | `'' | | I1 I2 | | I1 I3 | | I1 I2 | | I1 I3 | +-------+ +-------+ +-------+ +-------+ U-PE1 U-PE2 U-PE6 U-PE5 Figure 3 PBB VPLS model for HVPLS with MPLS Access The PBB VPLS is enabled in the U-PEs to hide the customer MACs from the N-PEs. The U-PEs are IB-PEs where multiple I-VSIs are mapped to one B-VSI. The N-PEs may be seen as playing the role of Backbone Core Bridges (BCB - see [IEEE802.1ah]) hence the name of Backbone Core PE (BC-PE). The B-VSI components on the U-PEs are connected to the B- VSIs/Regular VSIs on the N-PEs using regular Ethernet PWs (B-PWs in the diagram). In the (M:1) model, there are use cases where the I-VPLS domains that share the same B-VPLS overlap but in most practical scenarios that is not the case. A broadcast and flood containment solution may be provided using [IEEE802.1ak]. Balus, et al. Expires January 14, 2009 [Page 11] Internet-Draft VPLS Extensions for PBB July 2008 The reference model described in this section can be used to address the other scenarios described in [PBB-VPLS-Interop], where an IB-PE structure may be used wherever an IB-BEB function is required, an I- PE for I-BEB and a B-PE for a B-BEB. 4. Data Plane The PW processing function for each I-VSI and B-VSI follows the VPLS model described in [RFC4762]. This section will focus on the new PBB- VPLS NSP functions, specifically on the interaction between the I-VSI and B-VSI Modules. Figure 5 represents a collection of I-VSI and B-VSI components that represent the required NSP function for full PBB-VPLS processing in an IB-PE. In order to describe the packet walkthrough, the I-VSI and B-VSI should be seen as different switching modules (I and B). Each of them may have its own set of PWs, Bridge modules and ACs. ------------ | Payload | | | | | ------> ------------ +-\-\--+ +--\-\-+ |SVID, CVID| +-----| B-PW |----| B-PW |-----+ ------------ | +------+ +---.--+ | |CMAC DA,SA| | `. ,.., ` | ------------ | ' `-` | |PBB I-tag | | ,|B-VSI | | ------------ +-------+ ,-` '.,,.' | |BMAC DA,SA| --| B-ETH | `''' | | ------------ +-------+ | | | PW SL | | | | ------------ +-------------------------------+ |PSN Header| |CBP ------------ | |PIP ------------ +------------------------------+ | Payload | | | | ------------ | ,- | |SVID, CVID| | / ` | ------------ | ' `. | |CMAC DA,SA| | ,' I-VSI . | ------------ | --.--.-----' | | PW SL | | .` | `. -------> ----------- | +-----`+ +--\---+ +-'----+ | |PSN Header| +--| I-Q |-| I-ETH|-| I-PW |--+ ------------ +------+ +------+ +------+ Figure 4 Packet Walkthrough for PBB VPLS Balus, et al. Expires January 14, 2009 [Page 12] Internet-Draft VPLS Extensions for PBB July 2008 In order to better understand the data plane walkthrough let us consider the example of a PBB packet arriving on a B-PW link. The PSN header is used to carry the PBB encapsulated frame over the backbone while the B-PW Service Label is used to determine the B-VSI FIB, same as for regular VPLS. An example of the PBB packet for regular Ethernet PW type is depicted in Figure 5 next to the B-VSI. Before handling the packet to the B-VSI the PW and PSN encapsulation are removed. The destination BMAC address of the packet is then mapped against the B-VSI FIB to determine the Next Hop (NH) with the following possible results: -NH = B-ETH AC: PW encapsulation is removed but the PBB encapsulation is left untouched. The packet is sent out on the B-ETH AC. Regular AC processing rules apply - e.g. a B-VID may be added to the backbone header. -NH = another B-PW: ingress PW Encapsulation is removed and egress PW encapsulation is added. The packet is sent out on the B-PW (Split Horizon rules apply). -NH = local I-VSI (CBP "port"): PW Encapsulation is removed and the packet is passed to the I-VSI module for processing. Translation of the PBB header (e.g. ISID rewrite) may be performed. -NH = unknown or the destination BMAC is a Group MAC address (Multicast or Broadcast): the packet is flooded to all the virtual ports that are part of the B-VSI (e.g. B-PWs, ACs/B-ETH or internal "link" towards local I-VSI). For the packets that arrive at the I-VSI module from one of the local B-VSI (ingressing the PIP "Link") the ISID demultiplexor is used to determine the specific I-VSI FIB to which the packet belongs. The PBB header is then removed and the destination Customer MAC (CMAC) address is used to determine the Next Hop for the packet with the following possible results: -NH = I-ETH/I-Q (Ethernet port/Q-taged/QinQ AC): the Customer Frame is sent out on the I-ETH. Regular AC processing rules apply - e.g. a C-VID and/or a S-VID may be added to the packet. -NH = I-PW: the frame containing just the Customer MAC and S-VID and/or C-VID tags is encapsulated in the PW header before being sent out on the I-PW. The S-VID and/or C-VID may or may not be included in the actual encapsulated packet as per regular PW processing rules. The resulted encapsulation is depicted next to the I-VSI in Figure 5. Balus, et al. Expires January 14, 2009 [Page 13] Internet-Draft VPLS Extensions for PBB July 2008 For a packet ingressing the I-VSI via an I-PW (e.g. via MPLS access), the I-PW Service Label is used this time to determine the FIB to which the packet belongs. The PSN and I-PW headers are removed by the ingress PW function and the packet is handled to the I-VSI. Next the destination CMAC address of the packet is then mapped against the I- VSI FIB to determine the Next Hop (NH) with the following possible results: -NH = I-ETH/I-Q: the packet is sent out on the corresponding I-ETH AC. Regular AC processing rules apply - e.g. an S-VID and/or C- VID tag may be added to the packet. There is no need to add PBB encapsulation to the packet. -NH = another I-PW: ingress PW Encapsulation is removed and egress PW encapsulation is added. The packet is sent out on the I-PW (Split Horizon rules apply). -NH = local B-VSI (over the PIP "port"): the PBB header (BMACs and the corresponding I-TAG) is added and the packet is passed to the B-VSI module for further processing. This is the case when the destination CMAC is located behind a remote PBB PE identified by a destination BMAC. -NH = unknown or the destination CMAC is a Group MAC (Multicast or Broadcast): the packet is flooded to all the virtual ports that are part of the I-VSI, including the local B-VSI context. For the packets that arrive at the B-VSI module from an I-VSI, the ISID is used to determine the specific B-VSI FIB to be used to which the packet belongs. Translation of the PBB header (e.g. ISID) may be performed. Next the destination BMAC is used to determine the Next Hop for the packet with the following possible results: - NH = B-ETH: the PBB Frame is sent out on the B-ETH. Regular AC processing rules apply - e.g. a B-VID is added to the packet. - NH = B-PW: the PBB frame is encapsulated in the PW header before being sent out on the B-PW. The resulted PBB/PW encapsulation is depicted in Figure 5 next to the B-VSI. It is important to highlight in this context that the core PEs (N-PE3 and N-PE4 in Figure 3) do not have to be aware about the PBB encapsulation. Just the regular Backbone Ethernet header (i.e. BMAC DA) is used to forward the Ethernet frames. Existing VPLS and PWE3 procedures, including Multi-Segment PWs (MS-PW) apply for the PW infrastructure between them. Regular Ethernet PW types (Ethernet and Ethernet VLAN) may be also used to signal the B-PWs (Backbone PWs) Balus, et al. Expires January 14, 2009 [Page 14] Internet-Draft VPLS Extensions for PBB July 2008 interconnecting the B-VSIs in the U-PEs and N-PEs or the I-VSIs in the U-PE with other I-VSIs. 5. Control Plane PBB introduces a hierarchy where a Customer (CMAC) domain is separated from the Service Provider (BMAC) domain from both data plane (e.g. CMAC versus respectively BMAC switching) and control plane (e.g. xSTP, 802.1ak MRP) perspective. For example a CMAC should never be learned in the Backbone context/FIB. When porting the PBB hierarchy in PBB VPLS, the strict separation between the two domains must be maintained in both the VPLS data and control plane. In VPLS the control plane controls the setup of the data plane so it is possible to achieve this separation by proper separation of addressing and control plane procedures. Specifically in the example from Figure 1 the I-VPLS control plane must stay separate from the related B-VPLS control plane. This will ensure that control plane procedures (e.g. VPLS MAC Flush, OAM) destined for one domain will not leak into the other domain. Also PWs in one domain will not try to connect to the other domain: e.g. I-PW, destined for an I-VPLS will not try to connect to a B-VPLS instance. The simplest way to achieve this kind of separation is to assign for I-VPLS and B-VPLS separate addressing schemes. The following sections describe how this applies for BGP auto-discovery or for T-LDP signaling. Optionally usage of NSP capabilities sub-TLV [GE-PW] can guarantee additional protection against operational mistakes. 5.1. Auto-Discovery When BGP Auto-discovery is used address separation can be achieved by assigning for each I-VPLS and B-VPLS domains a separate set of identifiers and attributes: i.e. VPLS-Id, VSI-Id (RD, Prefix), RT(s) as described in [L2VPN-Sig]). Separate addressing schemes will be automatically generated for LDP signaling as per [L2VPN-Sig]. 5.2. Signaling When BGP-Auto-discovery is not used separate L2 FEC addressing structures [L2VPN-Sig] must be configured to identify each B-VPLS and/or I-VPLS domain accordingly.The setup of the PWs between B-VSIs (B-PWs) and/or between the I-VSIs (I-PWs) may be achieved using the existing PWE3 procedures - see [RFC4762]. This allows porting the existing control plane procedures (PW setup, VPLS MAC Flush,OAM) for each the two domains. Balus, et al. Expires January 14, 2009 [Page 15] Internet-Draft VPLS Extensions for PBB July 2008 5.2.1. MAC Address Withdraw The use of Address Withdraw message with MAC List TLV is proposed in [RFC4762] as a way to expedite removal of MAC addresses as the result of a topology change (e.g. failure of a primary link of a VPLS PE and implicitly the activation of an alternate link in a dual-homing use case). These existing procedures apply to B-VPLS and I-VPLS domains. When it comes to reflecting topology changes in access networks connected to I-VSI across the B-VPLS domain certain additions should be considered as described below. MAC Switching in PBB is based on the mapping of Customer MACs (CMACs) to Backbone MAC(s) (BMACs). A topology change in the access (I- domain) should just invoke the flushing of CMAC entries in PBB PEs' FIB(s) associated with the I-VPLS(s) impacted by the failure. There is a need to indicate the PBB PE (BMAC source) that originated the MAC Flush message. These goals can be achieved by adding a PBB TLV in the Address Withdraw message to indicate the particular domain(s) requiring MAC flush. At the other end, the receiving PBB PEs may use the information from the PBB TLV to flush only the related FIB entry/entries in the I-VSI(s). A suggested PBB TLV structure is depicted below: 0 1 2 3 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 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ |1|1| PBB TLV (TBD) | Length | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | Sub-TLV Type | Sub-TLV Length | Variable | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | Length Value | | " | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ Balus, et al. Expires January 14, 2009 [Page 16] Internet-Draft VPLS Extensions for PBB July 2008 The UF bits are set to forward unknown so that the intermediate VPLS PEs that are unaware of PBB can just forward the TLV towards the PBB aware IB-PEs. The PBB TLV type values are to be assigned by IANA. The Length field is used to define the length of the PBB TLV including the type and the length itself. Processing of the sub-TLVs should continue when unknown ones are encountered, and they MUST be silently ignored. The following sub-TLVs MUST be included in the PBB TLV: - PBB BMAC List sub-TLV: Type: 0x0001 Length: value length in octets. At least one BMAC address must be present in the list. . Value: one or a list of 48 bits (B-)MAC address(es). These are the source BMAC addresses associated with the B-VSI(s) that originated the MAC Withdraw message. The CMAC(s) mapped to the BMACs listed in the sub-TLV should not be flushed ("Flush all but the CMACs associated with the BMAC(s) in the list"). - PBB ISID List sub-TLV: Type: 0x0002 Length: value length in octets. Zero indicates an empty ISID list. An empty ISID list means that the flush applies to all the ISIDs mapped to the B-VPLS indicated by the FEC TLV. Value: one or a list of 24 bits ISIDs that represent the I-VSI FIB(s) where the MAC Flush needs to take place. The following steps describe the details of the processing for the related LDP Address Withdraw message: . The LDP MAC Withdraw Message, including the PBB TLV is initiated by the PBB PE(s) experiencing a Topology Change event. . On reception of the LDP message, the B-VSI instances related to the FEC TLV from the LDP Address Withdraw message must interpret the presence of the PBB TLV as an indication of a PBB Flush message. As a result they should not flush their BMAC FIBs. . Next the B-VPLS control plane must propagate the MAC Flush indication following the split-horizon grouping and the established B-PW topology. Balus, et al. Expires January 14, 2009 [Page 17] Internet-Draft VPLS Extensions for PBB July 2008 . The receiving IB-PE uses the PBB ISID List from the PBB TLV to determine the particular ISID FIBs that need to be flushed. If the ISID List is empty all the ISID FIBs associated with the receiving B-VSI are flushed. The PBB BMAC List from the PBB TLV is used to flush from the ISID FIBs just the entries that map CMACs to the BMACs that are not listed in the sub-TLV. 5.2.2. NSP Capabilities code points for PBB-VPLS The optional NSP capabilities sub-TLV described in [GE-PW] may be used to provide additional protection against operational mistakes or to detect the type of capabilities supported by the remote NSP. The following NSP capabilities code points are required for PBB-VPLS: -003 B-VSI -004 I-VSI -005 PBB MAC Flush The above code points are included in the NSP capabilities sub-TLV to indicate the supported features and to ensure the right type of NSPs or NSP features are connected via Ethernet PW following the procedures described in [GE-PW]. 6. PBB-VPLS Interworking with regular VPLS Instances The PBB VPLS model described in this document may interoperate with regular VPLS PEs on the I-VSI and/or B-VSI side(s) as long as no PBB functions or optimizations are required on these PEs. Balus, et al. Expires January 14, 2009 [Page 18] Internet-Draft VPLS Extensions for PBB July 2008 _,,..--..,,, ,-'` `'-, .` `' ,' `. / IP MPLS Core , | (VPLS Mesh) | \ ` `. ` ', _-` +------`-,, _,-`-------+ | ,-, | ``'''--'''`` | ,-, | N-PE3 | | V | | | | B | | N-PE4 | | | | BC-PEs | | | | | `'' | | `'' | +-,--,,-+ +--,--,,+ ,' \ ,' \ / \ / \ | MPLS | | MPLS | | Access | | Access | | B-PWs | | B-PWs | \ / \ / `. / `. / +------`-,,+-------+ +-------+'-'- | ,-, | | ,-, | | ,-, | | | B | | | | B | | | | B | | | | | | | | | |IB-PEs | | | | | `'' | | `'' | | `'' | | I1 I2 | | I1 I3 | | I1 I2-|-------| +-------+ +-------+ +-------+ | U-PE1 U-PE2 U-PE5 PE6| +---|---+ | ,-, | | | V'| | | `'' | +-------+ Figure 5 Interworking to regular VPLS Some of the interworking scenarios are depicted in Figure 4 where: . N-PE3 is running a regular VPLS VSI marked with V which operates only on the Backbone MAC header, switching performed by the PBB BCBs. No PBB awareness (e.g. I-component functions) is required on this PE which connects to the B-VSIs in U-PE1, U-PE2 and N- PE4. In both cases a HVPLS spoke or a VPLS Mesh may be used. . PE6 is running a regular VPLS VSI marked with V' which operates only on the Customer MAC header. No PBB awareness (B-component Balus, et al. Expires January 14, 2009 [Page 19] Internet-Draft VPLS Extensions for PBB July 2008 functions, linkage) is required on PE5 which connects to the I- VSI on U-PE5 via an HVPLS spoke PW or a VPLS mesh. 7. Multicast Handling PBB MAC hiding may create difficulties for identifying customer Multicast exchanges in the B-VSIs. It is important to be able to support both regular and PBB VPLSes. That way the customer VPNs requiring large volume of Multicast may be addressed using regular VPLS, allowing for easy multicast snooping throughout the VPLS infrastructure. Alternatively, the IEEE 802.1ak MMRP protocol defined in [IEEE802.1ak] may be used to allow for efficient Multicast handling in the B-VPLS infrastructure: i.e. Group BMAC addresses may be assigned per Customer Multicast tree to ensure efficient Multicast distribution. 8. Resiliency [IEEE802.1ah] recommends the use of Provider MSTP (P-MSTP) to ensure loop free topology for connectionless forwarding throughout PBBN. Using B-VPLS infrastructure instead of native Ethernet core eliminates the need for backbone P-MSTP through the use of a full mesh of PWs with split-horizon and/or via the H-VPLS scheme (Primary/Standby PWs) - see [RFC4762]. On the access side, for a PB network or a CE device dually connected to PBB PEs, a loop spanning both I and B domains may occur. An STP- based or a local mechanism may be used to break this loop. A solution that does not imply running MSTP end-to-end should involve the MAC Withdraw scheme described in the signaling section to speed- up data plane convergence upon topology changes. 9. OAM Existing VPLS OAM tools may be used in each I-VPLS and B-VPLS domain. Details of the correlation between these two domains are out of scope of this draft. 10. Security Considerations This section will be added in a future version. Balus, et al. Expires January 14, 2009 [Page 20] Internet-Draft VPLS Extensions for PBB July 2008 11. IANA Considerations This document proposes the use of a new LDP TLV, the PBB TLV and related sub-TLVs. Suggested values TBD. 12. Acknowledgments The authors gratefully acknowledge the contributions of Wim Henderickx, Dimitri Papadimitriou, Dutta Pranjal, Jorge Rabadan and Maarten Vissers. Balus, et al. Expires January 14, 2009 [Page 21] Internet-Draft VPLS Extensions for PBB July 2008 13. References 13.1. Normative References [RFC4762] Lasserre, M. and Kompella, V. (Editors), "Virtual Private LAN Service (VPLS) Using Label Distribution Protocol (LDP) Signaling", RFC 4762, January 2007. [L2VPN-Sig] E. Rosen, et Al. "Provisioning, Autodiscovery and Signaling in L2VPNs", draft-ietf-l2vpn-signaling-08.txt, May 2006 ( work in progress ) [IEEE802.1ah] IEEE Draft P802.1ah/D4.2 "Virtual Bridged Local Area Networks, Amendment 6: Provider Backbone Bridges", Work in Progress, March 26, 2008 [GE-PW] V. Kompella and F. Balus "Generic Ethernet Pseudowire", draft-vkompella-pwe3-ethernet-pw-bis-00.txt, July 2008 ( work in progress ). 13.2. Informative References [PBB-VPLS-Interop] A. Sajassi, et Al. "VPLS Interoperability with Provider Backbone Bridges", draft-sajassi-l2vpn-vpls-pbb- interop-03.txt, November 2007 ( work in progress ). [RFC4664] Andersson, L. and Rosen, E. (Editors),"Framework for Layer 2 Virtual Private Networks (L2VPNs)", RFC 4664, September 2006. [IEEE802.1ak] IEEE Draft P802.1ak/D8.0 "Virtual Bridged Local Area Networks, Amendment 7: Multiple Registration Protocol", Work in Progress, November 29, 2006 [IEEE802.1ad] IEEE 802.1ad-2005 "Virtual Bridged Local Area Networks, Amendment 4: Provider Bridges", December 7, 2005 Balus, et al. Expires January 14, 2009 [Page 22] Internet-Draft VPLS Extensions for PBB July 2008 Author's Addresses Florin Balus Alcatel-Lucent 701 E. Middlefield Road Mountain View, CA, USA 94043 Email: florin.balus@alcatel-lucent.com Mustapha Aissaoui Alcatel-Lucent 600 March Road Kanata, ON Canada e-mail: mustapha.aissaoui@alcatel-lucent.com Matthew Bocci Alcatel-Lucent, Voyager Place Shoppenhangers Road Maidenhead Berks, UK e-mail: matthew.bocci@alcatel-lucent.co.uk Geraldine Calvignac France Telecom 2, avenue Pierre-Marzin 22307 Lannion Cedex France Email: geraldine.calvignac@orange-ftgroup.com John Hoffmans KPN Regulusweg 1 2516 AC Den Haag Nederland Email: john.hoffmans@kpn.com Raymond Zhang BT 2160 E. Grand Ave. El Segundo, CA 900245 USA EMail: raymond.zhang@bt.com Balus, et al. Expires January 14, 2009 [Page 23] Internet-Draft VPLS Extensions for PBB July 2008 Nabil Bitar Verizon 40 Sylvan Road Waltham, MA 02145 Email: nabil.bitar@verizon.com Olen Stokes Extreme Networks PO Box 14129 RTP, NC 27709 USA Email: ostokes@extremenetworks.com Full Copyright Statement Copyright (C) The IETF Trust (2008). This document is subject to the rights, licenses and restrictions contained in BCP 78, and except as set forth therein, the authors retain all their rights. This document and the information contained herein are provided on an "AS IS" basis and THE CONTRIBUTOR, THE ORGANIZATION HE/SHE REPRESENTS OR IS SPONSORED BY (IF ANY), THE INTERNET SOCIETY, THE IETF TRUST AND THE INTERNET ENGINEERING TASK FORCE DISCLAIM ALL WARRANTIES, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO ANY WARRANTY THAT THE USE OF THE INFORMATION HEREIN WILL NOT INFRINGE ANY RIGHTS OR ANY IMPLIED WARRANTIES OF MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. Intellectual Property Statement The IETF takes no position regarding the validity or scope of any Intellectual Property Rights or other rights that might be claimed to pertain to the implementation or use of the technology described in this document or the extent to which any license under such rights might or might not be available; nor does it represent that it has made any independent effort to identify any such rights. Information on the procedures with respect to rights in RFC documents can be found in BCP 78 and BCP 79. Copies of IPR disclosures made to the IETF Secretariat and any assurances of licenses to be made available, or the result of an attempt made to obtain a general license or permission for the use of such proprietary rights by implementers or users of this Balus, et al. Expires January 14, 2009 [Page 24] Internet-Draft VPLS Extensions for PBB July 2008 specification can be obtained from the IETF on-line IPR repository at http://www.ietf.org/ipr. The IETF invites any interested party to bring to its attention any copyrights, patents or patent applications, or other proprietary rights that may cover technology that may be required to implement this standard. Please address the information to the IETF at ietf-ipr@ietf.org. Acknowledgment Funding for the RFC Editor function is currently provided by the Internet Society. Balus, et al. Expires January 14, 2009 [Page 25]