Network Working GroupInternet Engineering Task Force (IETF) Y. RekhterInternet DraftRequest for Comments: 7524 E. RosenIntended status:Category: Standards Track Juniper NetworksExpiration Date: August 2015ISSN: 2070-1721 R. Aggarwal Arktan T. Morin I. GrosclaudeFrance TelecomOrange N. Leymann Deutsche Telekom AG S. Saad AT&TFebruaryMay 2015 Inter-AreaP2MPPoint-to-Multipoint (P2MP) SegmentedLSPs draft-ietf-mpls-seamless-mcast-17.txtLabel Switched Paths (LSPs) Abstract This document describes procedures for building inter-area point-to- multipoint (P2MP) segmented serviceLSPslabel switched paths (LSPs) by partitioning such LSPs into intra-area segments and using BGP as the inter-area routing andlabel distribution protocol.Label Distribution Protocol (LDP). Within each IGPareaarea, the intra-area segments are either carried overintra-areaintra- area P2MP LSPs, using P2MP LSP hierarchy, or instantiated using ingress replication. The intra-area P2MP LSPs may be signaled using P2MP RSVP-TE or P2MPmLDP.multipoint LDP (mLDP). If ingress replication is used within an IGP area, then (multipoint-to-point) LDP LSPs or (point-to-point) RSVP-TE LSPs may be used in the IGP area. The applications/services that use such inter-area service LSPs may be BGP Multicast VPN,VPLSVirtual Private LAN Service (VPLS) multicast, or global table multicast over MPLS. Status ofthisThis Memo ThisInternet-Draftissubmitted to IETF in full conformance with the provisions of BCP 78 and BCP 79. Internet-Drafts are working documentsan Internet Standards Track document. This document is a product 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(IETF). It represents the consensus ofsix monthsthe IETF community. It has received public review andmay be updated, replaced, or obsoletedhas been approved for publication byother documents at any time. Itthe Internet Engineering Steering Group (IESG). Further information on Internet Standards isinappropriate to use Internet-Drafts as reference material or to cite them other than as "workavailable inprogress." The listSection 2 of RFC 5741. Information about the currentInternet-Drafts can be accessed at http://www.ietf.org/ietf/1id-abstracts.txt. The liststatus ofInternet-Draft Shadow Directories canthis document, any errata, and how to provide feedback on it may beaccessedobtained athttp://www.ietf.org/shadow.html.http://www.rfc-editor.org/info/rfc7524. Copyrightand LicenseNotice Copyright (c) 2015 IETF Trust and the persons identified as the document authors. All rights reserved. This document is subject to BCP 78 and the IETF Trust's Legal Provisions Relating to IETF Documents (http://trustee.ietf.org/license-info) in effect on the date of publication of this document. Please review these documents carefully, as they describe your rights and restrictions with respect to this document. Code Components extracted from this document must include Simplified BSD License text as described in Section 4.e of the Trust Legal Provisions and are provided without warranty as described in the Simplified BSD License. Table of Contents11. Introduction.......................................... 4 2....................................................5 2. Specification ofrequirements ......................... 5 3Requirements ...................................5 3. General Assumptions and Terminology................... 5 4 Inter-area.............................6 4. Inter-Area P2MP Segmented Next-Hop Extended Community. 7 5...........7 5. Discovering P2MP FEC of Inter-Area P2MP Service LSP... 7 5.1.............8 5.1. BGP MVPN.............................................. 8 5.1.1...................................................8 5.1.1. RoutesoriginatedOriginated by PE or ASBR....................... 8 5.1.2.....................9 5.1.2. RoutesRe-AdvertisedRe-advertised by PE or ASBR.................... 8 5.1.3 Inter-area routes ..................................... 9 5.2..................9 5.1.3. Inter-Area Routes ...................................9 5.2. LDP VPLS with BGPauto-discoveryAuto-discovery or BGP VPLS.......... 10 5.2.1..............10 5.2.1. RoutesoriginatedOriginated by PE or ASBR....................... 10 5.2.2....................10 5.2.2. RoutesRe-AdvertisedRe-advertised by PE or ASBR.................... 10 5.2.3 Inter-area routes ..................................... 11 5.3.................11 5.2.3. Inter-Area Routes ..................................11 5.3. Global Table Multicast over MPLS...................... 11 6..........................12 6. Egress PE/ASBR Signaling Procedures................... 12 6.1............................13 6.1. Determining the Upstream ABR/PE/ASBR (Upstream Node).. 12 6.1.1......13 6.1.1. Upstream Node for MVPN or VPLS........................ 13 6.1.2.....................13 6.1.2. Upstream Node for Global Table Multicast.............. 13 6.2...........14 6.2. Originating a Leaf A-D Route.......................... 14 6.2.1..............................15 6.2.1. Leaf A-D Route for MVPN and VPLS...................... 14 6.2.2...................15 6.2.2. Leaf A-D Route for Global Table Multicast............. 14 6.2.3..........15 6.2.3. Constructing the Rest of the Leaf A-D Route........... 16 6.3........17 6.3. PIM-SM in ASMmodeMode for Global Table Multicast......... 17 6.3.1.............18 6.3.1. Option 1.............................................. 17 6.3.1.1...........................................18 6.3.1.1. Originating Source Active A-D Routes.................. 17 6.3.1.2......18 6.3.1.2. Receiving BGP Source Active A-D Route by PE........... 18 6.3.1.3...............................19 6.3.1.3. Handling(S, G, rpt) state ............................ 18 6.3.2(S,G,rpt) State ..................19 6.3.2. Option 2.............................................. 19 6.3.2.1...........................................19 6.3.2.1. Originating Source Active A-D Routes.................. 19 6.3.2.2......19 6.3.2.2. Receiving BGP Source Active A-D Route................. 19 6.3.2.3.....20 6.3.2.3. Pruning SourcesoffOff the Shared Tree................... 20 6.3.2.4.......20 6.3.2.4. More onhandling (S, G, rpt) state .................... 20 7Handling (S,G,rpt) State ..........21 7. Egress ABR Procedures................................. 21 7.1..........................................21 7.1. Handling Leaf A-DrouteRoute on Egress ABR................. 21 7.2.....................21 7.2. P2MP LSP as the Intra-Area LSP in the Egress Area..... 22 7.2.1.........23 7.2.1. Received Leaf A-Droute isRoute Is for MVPN or VPLS........... 23 7.2.2........23 7.2.2. Received Leaf A-Droute isRoute Is forglobal table multicast . 23 7.2.2.1Global Table Multicast ..........................................24 7.2.2.1. Global Table Multicast and S-PMSI A-D Routes.......... 24 7.2.2.2................................24 7.2.2.2. Global Table Multicast and Wildcard S-PMSI A-D Routes. 24 7.2.3................25 7.2.3. Global Table Multicast and the Expected Upstream Node. 25 7.2.4......................................25 7.2.4. P2MP LDP LSP as the Intra-Area P2MP LSP............... 26 7.2.5............26 7.2.5. P2MP RSVP-TE LSP as the Intra-Area P2MP LSP........... 26 7.3........26 7.3. Ingress Replication in the Egress Area................ 26 8....................26 8. Ingress ABR Procedures................................ 27 8.1.........................................27 8.1. P2MP LSP as the Intra-Area LSP in the Backbone Area... 27 8.2.......27 8.2. Ingress Replication in the Backbone Area.............. 27 9..................27 9. Ingress PE/ASBR Procedures............................ 28 9.1.....................................28 9.1. P2MP LSP as the Intra-Area LSP in the Ingress Area.... 28 9.2........28 9.2. Ingress Replication in the Ingress Area............... 29 10...................29 10. Common Tunnel Type in the Ingress and Egress Areas.... 30 11............29 11. Placement of Ingress and Egress PEs................... 30 12...........................30 12. MVPN with Virtual Hub-and-Spoke....................... 31 13...............................31 13. Data Plane............................................ 31 13.1....................................................31 13.1. Data Plane Procedures on ABRs......................... 31 13.2............................31 13.2. Data Plane Procedures on Egress PEs................... 32 13.3......................32 13.3. Data Plane Procedures on Ingress PEs.................. 33 13.4.....................33 13.4. Data Plane Procedures on Transit Routers.............. 33 14.................33 14. Support for Inter-Area Transport LSPs................. 33 14.1 Transport Tunnel.........................33 14.1. "Transport Tunnel" Tunnel Type.......................... 34 14.2...........................33 14.2. Discovering Leaves of the Inter-Area P2MP Service LSP. 34 14.3....34 14.3. Discovering P2MP FEC of P2MP Transport LSP............ 34 14.4...............34 14.4. Egress PE Procedures for P2MP Transport LSP........... 35 14.5..............35 14.5. ABRs and Ingress PEproceduresProcedures for P2MP Transport LSP. 36 14.6....35 14.6. Discussion............................................ 37 15...............................................36 15. IANA Considerations................................... 39 16...........................................38 16. Security Considerations............................... 39 17 Acknowledgements ...................................... 39 18.......................................38 17. References............................................ 40 18.1....................................................39 17.1. Normative References.................................. 40 18.2.....................................39 17.2. Informative References................................ 41 19 Author's Address ...................................... 41...................................41 Acknowledgements ..................................................41 Authors' Addresses ................................................42 1. Introduction This document describes procedures for building inter-area point-to- multipoint (P2MP) segmented service LSPs by partitioning such LSPs into intra-area segments and using BGP as the inter-area routing and label distribution protocol. Within each IGPareaarea, the intra-area segments are either carried over intra-area P2MP LSPs, potentially using P2MP LSP hierarchy, or instantiated using ingress replication. The intra-area P2MP LSPs may be signaled using P2MP RSVP-TE [RFC4875] or P2MP mLDP [RFC6388]. If ingress replication is used in an IGPareaarea, then (multipoint-to-point) LDP LSPs [RFC5036] or(point-to-point)(point-to- point) RSVP-TE LSPs [RFC3209] may be used within the IGP area. The applications/services that use such inter-area service LSPs may be BGP Multicast VPN (BGP MVPN), VPLS multicast, or global table multicast over MPLS. The primary use case of such segmented P2MP service LSPs is when thePEsProvider Edge (PE) routers are in different areas but in the sameASAutonomous System (AS) and thousands or more of PEs require P2MP connectivity. Forinstanceinstance, this may be the case when MPLS is pushed further to the metro edge and the metros are in different IGP areas. This may also be the case when aService Provider'sservice provider's network comprises multiple IGP areas in a singleAutonomous System,AS, with a large number of PEs. Seamless MPLS is the industry term to address this case [SEAMLESS-MPLS].ThusThus, one of the applicabilities of this document is that it describes the multicast procedures for seamless MPLS. It is to be noted that [RFC6514] and [RFC7117] already specify procedures for building segmented inter-AS P2MP service LSPs. This document complements those procedures, as it extends the segmented P2MP LSP model such that it is applicable to inter-area P2MP service LSPs as well. Infactfact, an inter-AS deployment could use inter-AS segmented P2MP LSPs as specified in[RFC6514, RFC7117][RFC6514] and [RFC7117] where each intra-AS segment is constructed using inter-area segmented P2MPLSPsLSPs, as specified in this document. 2. Specification ofrequirementsRequirements 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 [RFC2119]. 3. General Assumptions and Terminology The reader is assumed to be familiar with MVPN procedures and terminology[RFC6513, RFC6514][RFC6513] [RFC6514] and VPLS procedures and terminology [RFC7117]. This document allowsABRs,Area Border Routers (ABRs), acting as Route Reflectors, to follow the procedures specified in [SEAMLESS-MPLS] when handling the BGP Next Hop of the routes to the PEs. Specifically, when reflecting such routes from the non-backbone areas into the backbone area, the ABRs MUST set the BGP Next Hop to their own loopback addresses (next-hop-self), while when reflecting such routes from the backbone area into the non-backbone areas, the ABRs SHOULD NOT change the BGP Next Hop addresses(next- hop-unchanged).(next-hop-unchanged). While this document allows ABRs to follow the procedures specified in [SEAMLESS-MPLS], procedures specified in this document are applicable even when ABRs do not follow the procedures specified in[SEAMLESS- MPLS]. One possible way to support the global table multicast service is by relying on the MVPN procedures, as specified in [RFC6514], in which case the MVPN procedures specified in this document would be used to support the global table multicast service.[SEAMLESS-MPLS]. This document specifiesan alternative approach to supporta particular way of supporting the global table multicast service.ThisAlthough the document refers to this approach simply as "global tablemulticast" (although this by no meansmulticast", it does not mean to imply thatthisthere are no other ways to support global table multicast. An alternativeapproach is the onlyway to supporttheglobal table multicastservice).is to use the procedures for MVPN that are specified in [RFC6514] and in this document. That alternative is discussed in more detail in [GTM]. However, that alternative is not further considered in the current document. This document assumesthatthat, in the context of global tablemulticastmulticast, ABRs do not carry routes to the destinations external to their own AS. Furthermore, in the context of global tablemulticastmulticast, this document assumes that anASBR,Autonomous System Border Router (ASBR), when re-advertising intoIBGPInternal BGP (IBGP) routes received from an external speaker (received viaEBGP)External BGP (EBGP)), may not change the BGP Next Hop to self. Within anASAS, a P2MP service LSP is partitioned into3three segments: ingress area segment, backbone area segment, and egress area segment. Within eachareaarea, a segment is carried over an intra-area P2MP LSP or instantiated using ingress replication. When intra-area P2MP LSPs are used to instantiate the intra-areasegmentssegments, there could be either 1:1 or n:1 mapping between intra-area segments of the inter-area P2MP service LSP and a given intra-area P2MP LSP. The latter is realized using P2MP LSP hierarchy with upstream-assigned labels [RFC5331]. For simplicity ofpresentationpresentation, we assume that P2MP LSP hierarchy is used even with 1:1mapping,mapping; in whichcasecase, an Implicit NULL is used as the upstream-assigned label. When intra-area segments of the inter-area P2MP service LSP are instantiated using ingress replication,thenmultiple such segments may be carried in the same P2P RSVP-TE or MP2P LDP LSP. This can be achieved using downstream-assigned labels alone. The ingress area segment of a P2MP service LSP is rooted at a PE (or at an ASBR in the case where the P2MP service LSP spans multiple ASes). The leaves of this segment are other PEs/ASBRs and ABRs in the same area as the root PE. The backbone area segment is rooted at either an ABR that is connected to the ingress area (ingress ABR),or atan ASBR if the ASBR is present in the backbone area, orata PE if the PE is present in the backbone area. The backbone area segment has itsleavesleaf ABRs that are connected to the egress area(s) or PEs in the backbone area, or ASBRs in the backbone area. The egress area segment is rooted at an ABR in the egress area (egress ABR), and has itsleavesleaf PEs and ASBR in that egress area (the latter covers the case where the P2MP service LSP spans multiple ASes).Note that forFor a given P2MP serviceLSPLSP, note that there may be more than one backbone segment, each rooted at its own ingress ABR, and more than one egress area segment, each rooted at its own egress ABR. This document uses the term "A-D routes" for "auto-discovery routes". An implementation that supports this document MUST implement the procedures described in the following sections to support inter-areapoint-to-multipoint (P2MP)P2MP segmented service LSPs. 4.Inter-areaInter-Area P2MP Segmented Next-Hop Extended Community This document defines a newBGPTransitive IPv4-Address-Specific Extended Community"Inter-areaSub-Type: "Inter-Area P2MPNext-Hop" Extended Community.Next-Hop". Thisis an IP-address specificdocument also defines a new BGP Transitive IPv6-Address-Specific Extended Communityof an extended type and is transitive across AS boundaries [RFC4360].Sub-Type: "Inter-Area P2MP Next-Hop". APE orPE, anABRABR, or an ASBR constructs theInter-areaInter-Area P2MP Segmented Next-Hop Extended Community as follows: - The Global Administrator field MUST be set to an IP address of thePEPE, ABR, or ASBRor ABRthat originates or advertises the routethat carriescarrying the P2MP Next-Hop Extended Community. For example this address may be the loopback address or the PE,ASBRABR, orABRASBR that advertises the route. - The Local Administrator field MUST be set to 0.The detailed usage of this Extended Community is described inIf thefollowing sections.Global Administrator field is an IPv4 address, the IPv4-Address-Specific Extended Community is used; if the Global Administrator field is an IPv6 address, the IPv6-Address-Specific Extended Community is used. The detailed usage of these Extended Communities is described in the following sections. 5. Discovering P2MP FEC of Inter-Area P2MP Service LSP Each inter-area P2MP service LSP has associated with it P2MPFEC.Forwarding Equivalence Class (FEC). The egress PEs need to learn this P2MP FEC in order to initiate the creation of the egress area segment of the P2MP inter-area service LSP. The P2MP FEC of the inter-area P2MP LSP is learned by the egress PEs either byconfiguration,configuration or based on the application-specific procedures (e.g., MVPN-specificprocedures,procedures or VPLS-specific procedures). 5.1. BGP MVPN Egress PEs and/or ASBRs discover the P2MP FEC of the service LSPs used by BGP MVPN using theI-PMSIInclusive Provider Multicast Service Interface (I-PMSI) orS-PMSISelective PMSI (S-PMSI) A-D routes that are originated by the ingress PEs or ASBRs following the procedures of [RFC6514], along with modifications as described in this document. TheNLRINetwork Layer Reachability Information (NLRI) of such routes encodes the P2MP FEC. The procedures in this document require that at least one ABR in a given IGP areaactsact as a Route Reflector for MVPN A-D routes. Such a Router Reflector is responsible for re-advertising MVPN A-D routes acrossarea'sarea boundaries. When re-advertising these routes acrossarea'sarea boundaries, this Route Reflector MUST follow the procedures in this document. Note that such a Route Reflector may also re-advertise MVPN A-D routes within the samearea,area; in whichcasecase, it follows the plain BGP Route Reflector procedures [RFC4456]. 5.1.1. RoutesoriginatedOriginated by PE or ASBR The "Leaf Information Required" flag MUST be set in the PMSI Tunnel attribute carried in the MVPN A-D routes, when originated by the ingress PEs or ASBRs, except for the case where (a) as a matter of policy (provisioned on the ingress PEs or ASBRs) there is no aggregation of ingress area segments of the serviceLSPs,LSPs and (b) mLDP is used as the protocol to establish intra-area transport LSPs in the ingress area. Before any Leaf A-D route is advertised by a PE or ABR in the same area, as described in the following sections, an I-PMSI/S-PMSI A-D route is advertised either with an explicit Tunnel Type and Tunnel Identifier in the PMSI TunnelAttribute,attribute, if the Tunnel Identifier has already been assigned, or with a special Tunnel Type of "No tunnel information present" otherwise. 5.1.2. RoutesRe-AdvertisedRe-advertised by PE or ASBR When the I-PMSI/S-PMSI A-D routes are re-advertised by an ingress ABR, the "Leaf Information Required" flag MUST be set in theP-TunnelPMSI Tunnel attribute present in the routes, except for the case where (a) as a matter of policy (provisioned on the ingress ABR) there is no aggregation of backbone area segments of the serviceLSPs,LSPs and (b) mLDP is used as the protocol to establish intra-area transport LSPs in the backbone area. Likewise, when the I-PMSI/S-PMSI A-D routes are re-advertised by an egress ABR, the "Leaf Information Required" flag MUST be set in theP-TunnelPMSI Tunnel attribute present in the routes, except for the case where (a) as a matter of policy (provisioned on the egress ABR) there is no aggregation of egress area segments of the serviceLSPs,LSPs and (b) mLDP is used as the protocol to establish intra-area transport LSPs in the egress area. Note that the procedures in the above paragraph apply when intra-area segments are realized by either intra-area P2MP LSPs or by ingress replication. 5.1.3.Inter-area routesInter-Area Routes When BGP MVPN I-PMSI or S-PMSI A-D routes are advertised or propagated to signalInter-areainter-area P2MP service LSPs, to indicate that these LSPs should be segmented using the procedures specified in this document, these routes MUST carry theInter-areaInter-Area P2MP SegmentedNext- HopNext-Hop Extended Community. This Extended Community MUST be included in the I-PMSI/S-PMSI A-D route by the PE that originates such a route, or an ASBR that re-advertises such a route into its own AS. The Global Administrator field in this Extended Community MUST be set to the advertising PE or ASBR's IP address. This Extended Community MUST also be included by ABRs as they re-advertise such routes. An ABR MUST set the Global Administrator field of the Inter- Area P2MP SegmentedNext- HopNext-Hop Extended Community to its own IP address. Presence of thiscommunityExtended Community in the I-PMSI/S-PMSIA-DA- D routes indicates to ABRs and PEs/ASBRs that they have to follow the procedures in this document when these procedures differ from those in [RFC6514]. If an ASBR receives from an IBGP peer an I-PMSI or S-PMSI A-D route that carries theInter-areaInter-Area P2MP Segmented Next-Hop Extended Community, then before re-advertising this route to an EBGPpeerpeer, the ASBR SHOULD remove this Extended Community from the route.IfSuppose an ASBR receives an I-PMSI/S-PMSI A-D route from an EBGP peer, and this routedoes carrycarries theInter-areaInter-Area P2MP Segmented Next-Hop ExtendedCommunity, ifCommunity. If the inter-area P2MP service LSPsignalledsignaled by this route should not be segmented, then before re-advertising this route to its IBGPpeerspeers, the ASBR MUST remove thiscommunityExtended Community from the route. To avoid requiring ABRs to participate in the propagation ofC- multicastC-multicast routes, this document requires that ABRs MUST NOT modify the BGP Next Hop when re-advertising Inter-AS I-PMSI A-D routes. Forconsistencyconsistency, this document requires that ABRs MUST NOT modify the BGP Next Hop when re-advertising either Intra-AS or Inter-AS I-PMSI/S-PMSI A-D routes. The egress PEs may advertise the C-multicast routes to RRs that are different than the ABRs.HoweverHowever, ABRsstillcan still be configured to be the Route Reflectors for C-multicastroutes,routes; in whichcasecase, they will participate in the propagation of C-multicast routes. 5.2. LDP VPLS with BGPauto-discoveryAuto-discovery or BGP VPLS Egress PEs discover the P2MP FEC of the service LSPs used by VPLS, using the VPLS A-D routes that are originated by the ingress PEs[RFC4761, RFC6074],[RFC4761] [RFC6074] or VPLS S-PMSI A-D routes that are originated by the ingress PEs [RFC7117]. The NLRI of such routes encodes the P2MP FEC. 5.2.1. RoutesoriginatedOriginated by PE or ASBR The "Leaf Information Required" flag MUST be set in theP-TunnelPMSI Tunnel attribute carried in the VPLS A-D routes or VPLS S-PMSI A-D routes, when originated by the ingress PEs or ASBRs, except for the case where (a) as a matter of policy (provisioned on the ingress PEs or ASBRs) there is no aggregation of ingress area segments of the serviceLSPs,LSPs and (b) mLDP is used as the protocol to establishintra-areaintra- area transport LSPs in the ingress area. Before any Leaf A-D route is advertised by a PE or ABR in the same area, as described in the following sections,ana VPLS/S-PMSI A-D route is advertised either with an explicit Tunnel Type and Tunnel Identifier in the PMSI TunnelAttribute,attribute, if the Tunnel Identifier has already been assigned, or with a special Tunnel Type of "No tunnel information present" otherwise. 5.2.2. RoutesRe-AdvertisedRe-advertised by PE or ASBR When the VPLS/S-PMSI A-D routes are re-advertised by an ingress ABR, the "Leaf Information Required" flag MUST be set in theP-TunnelPMSI Tunnel attribute present in the routes, except for the case where (a) as a matter of policy (provisioned on the ingress ABR) there is no aggregation of backbone area segments of the serviceLSPs,LSPs and (b) mLDP is used as the protocol to establish intra-area transport LSPs in the backbone area. Likewise, when the VPLS/S-PMSI A-D routes are re-advertised by an egress ABR, the "Leaf Information Required" flag MUST be set in theP-TunnelPMSI Tunnel attribute present in the routes, except for the case where (a) as a matter of policy (provisioned on the egress ABR) there is no aggregation of egress area segments of the serviceLSPs,LSPs and (b) mLDP is used as the protocol to establish intra-area transport LSPs in the egress area. 5.2.3.Inter-area routesInter-Area Routes When VPLS A-D routes or S-PMSI A-D routes are advertised or propagated to signalInter-areainter-area P2MP service LSPs, to indicate that these LSPs should be segmented using the procedures specified in this document, these routes MUST carry theInter-areaInter-Area P2MP SegmentedNext- HopNext-Hop Extended Community. This Extended Community MUST be included in the A-D route by the PE or ASBR that originates such arouteroute, and the Global Administrator field MUST be set to the advertising PE or ASBR's IP address. This Extended Community MUST also be included by ABRs as they re-advertise such routes. An ABR MUST set the Global Administrator field of the Inter-Area P2MP Segmented Next-Hop Extended Community to its own IP address. Presence of thiscommunityExtended Community in theI-PMSI/S- PMSII-PMSI/S-PMSI A-D routes indicates to ABRs and PEs/ASBRs that they have to follow the procedures in this document when these procedures differ from those in [RFC7117]. Note that the procedures in the above paragraph apply when intra-area segments are realized by either intra-area P2MP LSPs or by ingress replication. The procedures in this document require that at least one ABR in a given areaactsact as a Route Reflector for VPLS A-D routes. Such a Router Reflector is responsible for re-advertising VPLS A-D routes acrossarea'sareas boundaries. When re-advertising these routes acrossarea'sareas boundaries, this Route Reflector MUST follow the procedures in this document. Note that such a Route Reflector may also re-advertise VPLS A-D routes within the samearea,area; in whichcasecase, it follows plain BGP Route Reflector procedures [RFC4456]. When re-advertising VPLS A-Droutesroutes, a Route Reflector MUST NOT modify the BGP Next Hop of these routes. 5.3. Global Table Multicast over MPLS This section describes how the egress PEs discover the P2MP FEC when the application is global table multicast over an MPLS-capable infrastructure. In the rest of thedocumentdocument, we will refer to this application as "global table multicast". WhenPIM-SMProtocol Independent Multicast - Sparse Mode (PIM-SM) is used for non-bidirectional ASM ("Any Source Multicast") group addresses, this document refers to this as "PIM-SM in ASM mode". In the case where global table multicast uses PIM-SM in ASMmodemode, the following assumes that an inter-area P2MP service LSP could be used toeithercarry traffic either on a shared(*,G),(*,G) or a source (S,G) tree. An egress PE learns the(S/*, G)(S/*,G) of a multicast stream as a result of receiving IGMP or PIM messages on one of its IP multicast interfaces. This(S/*, G)(S/*,G) forms the P2MP FEC of the inter-area P2MP service LSP. For each such P2MPFECFEC, there MAY exist a distinct inter-area P2MP service LSP, or multiple such FECs MAY be carried over a single P2MP service LSP using a wildcard(*, *)(*,*) S-PMSI [RFC6625]. Note that this document does not require the use of(*, G) Inter-area(*,G) inter-area P2MP service LSPs when global table multicast uses PIM-SM in ASM mode. In fact, PIM-SM in ASM mode may be supported entirely by using only(S, G)(S,G) inter-area P2MP service LSPs. 6. Egress PE/ASBR Signaling Procedures This section describes the egress PE/ASBR procedures for constructing segmented inter-area P2MPLSP.LSPs. The procedures in this section apply irrespective of whether the egress PE/ASBR is in a leaf IGP area,orthe backbone area, or even in the same IGP area as the ingress PE/ASBR. An egress PE/ASBR applies procedures specified in this section to MVPN I-PMSI or S-PMSI A-D routes only if these routes carry theInter-areaInter-Area P2MP Segmented Next-Hop Extended Community. An egress PE applies procedures specified in this section to VPLS A-D routes or VPLS S-PMSI A-D routes only if these routes carry theInter-areaInter-Area P2MP Segmented Next-Hop Extended Community. In order to support global tablemulticastmulticast, an egress PE MUST beauto- configuredauto-configured to import routes that carry an AS-specific Route Target Extended Community ([RFC4360]) with the Global Administrator field set to the AS of the PE and the Local Administrator field set to 0. Once an egress PE/ASBR discovers the P2MP FEC of an inter-area segmented P2MP service LSP, it MUST propagate this P2MP FEC in BGP in order to construct the segmented inter-area P2MP service LSP. This propagation uses BGP Leaf A-D routes. 6.1. Determining the Upstream ABR/PE/ASBR (Upstream Node) An egress PE/ASBR discovers the P2MP FEC of an inter-area P2MPSegmented Servicesegmented service LSP as described insection 5 ("Discovering P2MP FEC of the Inter-Area P2MP Service LSP").Section 5. Once the egress PE/ASBR discovers this P2MP FEC, it MUST determine the upstream node to reach such a FEC. If the egress PE/ASBR and the ingress PE/ASBR are not in the same area, and the egress PE/ASBR is not in the backbone IGP area, then this upstream node would be an egress ABR. If the egress PE/ASBR is in the backbone area and the ingress PE/ASBR is not in the backbone area, then this upstream node would be an ingress ABR. If the egress PE/ASBR is in the same area as the ingress PE/ASBR, then this upstream node would be the ingress PE/ASBR. 6.1.1. Upstream Node for MVPN or VPLS If the application is MVPN or VPLS, then the upstream node's IP address is the IP address determined from the Global Administrator field of theInter-areaInter-Area P2MP Segmented Next-Hop Extended Community. As described insection 5 ("Discovering P2MP FEC of the Inter-Area P2MP Service LSP"),Section 5, this Extended Community MUST be carried in the MVPN or VPLS A-D route from which the P2MP FEC of the inter-area P2MPSegmented Servicesegmented service LSP is determined. 6.1.2. Upstream Node for Global Table Multicast If the application is global table multicast, then the unicast routes to multicast sources/RPs SHOULD carry the "VRF Route Import" Extended Community [RFC6514] where the IP address in the Global Administrator field is set to the IP address of the PE or ASBR advertising the unicast route. The Local Administrator field of thiscommunityExtended Community MUST be set to 0(note,(note that this is in contrast to the case of MVPN, where theGlobalLocal Administrator field carries a non-zero value that identifies a particular VRF on a PE that originates VPN-IP routes). If it is not desirable to advertise the VRF Route Import Extended Community in unicast routes, then unicast routes to multicast sources/RPs MUST be advertised using the multicastSAFI i.e.Subsequent Address Family Identifier (SAFI), i.e., SAFI 2, and such routes MUST carry the VRF Route Import Extended Community. Further, if the application is global table multicast, then the BGP unicast routes that advertise the routes to the IP addresses of PEs/ASBRs/ABRs SHOULD carry theInter-areaInter-Area P2MP Segmented Next-Hop Extended Community. The IP address in the Global Administrator field of thiscommunityExtended Community MUST be set to the IP address of thePE or ASBRPE, ASBR, or ABR advertising the unicast route. The Local Administrator field of thiscommunityExtended Community MUST be set to 0. If it is not desirable to advertise the Inter-Area P2MP Segmented Next-Hop Extended Community in BGP unicast routes, then the BGP unicast routes to the IP addresses of PEs/ASBRs/ABRs MUST be advertised using the multicastSAFI i.e.SAFI, i.e., SAFI 2, and such routes MUST carry theInter-areaInter- Area P2MP Segmented Next-Hop Extended Community. The procedures for handling the BGP Next Hop attribute of SAFI 2 routes are the same as those of handling regularUnicastunicast routes and MAY follow [SEAMLESS-MPLS]. If the application is global table multicast, then in order to determine the upstream nodeaddressaddress, the egress PE first determines the ingress PE. In order to determine the ingress PE, the egress PE determines the best route to reach the S/RP. The ingress PE address is the IP address determined from the Global Administrator field of the VRF Route Import Extended Community that is carried in this route.TheThen, the egress PEthenfinds the best unicast route to reach the ingress PE. The upstream node address is the IP address determined from the Global Administrator field of theInter-areaInter-Area P2MP Segmented Next-Hop Extended Community that is carried in this route. 6.2. Originating a Leaf A-D Route If the P2MP FEC was derived fromaan MVPN or VPLS A-Droute then the egress PE MUST originate a Leaf A-D routeroute, and if theMVPN or VPLS A-Droute carries aP-Tunnel AttributePMSI Tunnel attribute with the "Leaf Information Required" flagset.set, then the egress PE MUST originate a Leaf A-D route. If the P2MP FEC was derived from a global table multicast(S/*, G),(S/*,G), and the upstream node's address is not the same as the egress PE, then the egress PE MUST originate a Leaf A-D route. 6.2.1. Leaf A-D Route for MVPN and VPLS If the P2MP FEC was derived from MVPN or VPLS A-Droutesroutes, then the Route Key field of the Leaf A-D route contains the NLRI of the A-D route from which the P2MP FEC was derived. This follows procedures for constructing Leaf A-D routes described in[RFC6514, RFC7117].[RFC6514] [RFC7117]. 6.2.2. Leaf A-D Route for Global Table Multicast If the application is global table multicast, then the MCAST-VPN NLRI of the Leaf A-D route is constructed asfollows:follows. The Route Key field of the MCAST-VPN NLRI has the following format: +-----------------------------------+ | RD (8 octets) | +-----------------------------------+ | Multicast Source Length (1 octet) | +-----------------------------------+ | Multicast Source (Variable) | +-----------------------------------+ | Multicast Group Length (1 octet) | +-----------------------------------+ | Multicast Group (Variable) | +-----------------------------------+ | Ingress PE's IPaddressAddress | +-----------------------------------+ RD is set to 0 for (S,G) state and all1sones for (*,G) state, Multicast Source is set to S for (S,G) state or RP for (*,G) state, Multicast Group is set to G, and Multicast Source Length and Multicast Group Lengthisare set to either 4 or 16 (depending on whether S/RP and G are IPv4 or IPv6 addresses). The Ingress PE's IP address is determined as described inthe section 6.1 ("Determining the Upstream ABR/PE/ASBR (Upstream Node)").Section 6.1. The Originating Router's IPaddressAddress field of the MCAST-VPN NLRI is set to the address of the local PE(PE(the PE that originates the route).ThusThus, the entire MCAST-VPN NLRI of the route has the following format: +-----------------------------------+ | Route Type = 4 (1 octet) | +-----------------------------------+ | Length (1 octet) | +-----------------------------------+ | RD (8 octets) | +-----------------------------------+ | Multicast Source Length (1 octet) | +-----------------------------------+ | Multicast Source (Variable) | +-----------------------------------+ | Multicast Group Length (1 octet) | +-----------------------------------+ | Multicast Group (Variable) | +-----------------------------------+ | Ingress PE's IPaddressAddress | +-----------------------------------+ | Originating Router's IPaddressAddress | +-----------------------------------+ Note that the encoding of the MCAST-VPN NLRI for the Leaf A-D routes used for global table multicast is different from the encoding used by the Leaf A-D routes originated in response to S-PMSI or I-PMSI A-D routes. A router that receives a Leaf A-D route can distinguish between these two cases by examining the third octet of the MCAST-VPN NLRI of the route. If the value of this octet is0x01 or0x01, 0x02, or0x030x03, then this Leaf A-D route was originated in response to an S-PMSI or I-PMSI A-D route. If the value of this octet is either 0x00 or 0xff, and octets 3 through 10 contain either all0x00,0x00 or all0xff0xff, then this is a Leaf A-D route used for global table multicast. When the PE deletes (S,G)/(*,G) state that was created as a result of receiving PIM or IGMP messages on one of its IP multicast interfaces, if the PE previously originated a Leaf A-D route for that state,thenthe PE SHOULD withdraw that route. AnAutonomous SystemAS with an IPv4 network may provide global table multicast service for customers that use IPv6, and anAutonomous SystemAS with an IPv6 network may provide global table multicast service for customers that use IPv4.ThereforeTherefore, the address family of the Ingress PE's IPaddressAddress field and the Originating Router's IPaddressAddress field in the Leaf A-D routes used for global table multicast MUST NOT be inferred from the AFI field of the associated MP_REACH_NLRI/MP_UNREACH_NLRI attribute of these routes. The address family is determined from the length of the address (a length of 4 octets for IPv4addresses,addresses or a length of 16 octets for IPv6 addresses). Forexampleexample, if anAutonomous SystemAS with an IPv4 network is providing IPv6 multicast service to a customer, the Ingress PE's IPaddressAddress and Originating Router's IPaddressAddress in the Leaf A-D routes used for IPv6 global table multicast will be afour-octet4-octet IPv4 address, even though the AFI of those routes will have the value 2. Note that the Ingress PE's IPaddressAddress and the Originating Router's IPaddressAddress must be either both IPv4 or both IPv6addresses, and thusaddresses; thus, they must be of the same length. Since the twovariable lengthvariable-length fields (Multicast Source and Multicast Group) in the Leaf A-D routes used for global table multicast have their ownlengthLength field, from these twolengthLength fields, and the Length field of the MCAST-VPN NLRI, one can compute the length of the Ingress PE's IPaddressAddress field and the Originating Router's IPaddress fields.Address field. If the computed length of these fields is neither 4 nor 16, the MP_REACH_NLRI attribute MUST be considered to be "incorrect", and MUST be handled as specified insectionSection 7 of [RFC4760]. 6.2.3. Constructing the Rest of the Leaf A-D Route The Next Hop field of the MP_REACH_NLRI attribute of the route SHOULD be set to the same IP address as the one carried in the Originating Router's IP Address field of the route. WhenIngress Replicationingress replication is used to instantiate the egress areasegment thensegment, the Leaf A-D route MUST carry adownstream assigneddownstream-assigned label in theP-Tunnel AttributePMSI Tunnel attribute where theP-Tunnel typePMSI Tunnel Type is set toIngress Replication.ingress replication. A PE MUST assign a distinct MPLS label for each Leaf A-D route originated by the PE. To constrain distribution of this route, the originating PE constructs an IP-based Route TargetcommunityExtended Community by placing the IP address of the upstream node in the Global Administrator field of thecommunity,Extended Community, with the Local Administrator field of this community set to 0. The originating PE then adds this Route Target Extended Community to this Leaf A-D route. The upstream node's address is determined as specified insection 6.1 ("Determining the Upstream ABR/PE/ASBR (Upstream Node)").Section 6.1. The PE then advertises this route to the upstream node. 6.3. PIM-SM in ASMmodeMode for Global Table Multicast This specification allows two options for supporting global table multicastwiththat are initiated using PIM-SM in ASM mode. The first option does nottransitcarry IP multicast shared trees over the MPLS network. The second option doestransitcarry shared trees over the MPLS network andrelies onprovides support for switching from sharedtreetrees to sourcetree switchover.trees. 6.3.1. Option 1 This option does nottransitcarry IP multicast shared trees over the MPLS network. Therefore, when an (egress) PE creates(*, G)(*,G) state (as a result of receiving PIM or IGMP messages on one of its IP multicast interfaces), the PE does not propagate this state using Leaf A-D routes. 6.3.1.1. Originating Source Active A-D Routes Wheneveras a result of receiving PIM Register or MSDP messagesan RP that is co-located with a PE discovers a new multicastsource,source (as a result of receiving PIM Register or MSDP messages), the RP/PE SHOULD originate a BGP Source Active A-D route.Similarly wheneverSimilarly, whenever, as a result of receiving MSDP messages, a PE that is not configured asa RP,an RP discovers a new multicastsourcesource, the PE SHOULD originate a BGP Source Active A-D route. The BGP Source Active A-D route carries a single MCAST-VPN NLRI constructed as follows: + The RD in this NLRI is set to 0. + The Multicast Source field MUST be set to S. The Multicast Source Length field is set appropriately to reflect this. + The Multicast Group field MUST be set to G. The Multicast Group Length field is set appropriately to reflect this. The Route Target of this Source Active A-D route is an AS-specific Route Target Extended Community with the Global Administrator field set to the AS of the advertisingRP/PE,RP/PE and the Local Administrator fieldisset to 0. To constrain distribution of the Source Active A-D route to the AS of the advertisingRPRP, this route SHOULD carry the NO_EXPORT Community ([RFC1997]). Using the normal BGPproceduresprocedures, the Source Active A-D route is propagated to all other PEs within the AS. Whenever the RP/PE discovers that the source is no longer active, the RP MUST withdraw the Source Active A-D route, if such a route was previously advertised by the RP. 6.3.1.2. Receiving BGP Source Active A-D Route by PEWhen asAs a result of receiving PIM or IGMP messages on one of its IP multicastinterfacesinterfaces, when an egress PE creates in its Tree Information Base (TIB) a new(*, G)(*,G) entry with a non-empty outgoing interface list that contains one or more IP multicast interfaces, the PE MUST check if it has any Source Active A-D routes for that G. If there is such a route, S of that route is reachable via an MPLS interface, and the PE does not have(S, G)(S,G) state in its TIB for(S, G)(S,G) carried in the route, then the PE originates a Leaf A-D route carrying that(S, G),(S,G), as specified insection 6.2.2 ("Leaf A-D Route for Global Table Multicast").Section 6.2.2. When an egress PE receives a new Source Active A-D route, the PE MUST check if its TIB contains an(*, G)(*,G) entry with the same G as carried in the Source Active A-D route. If such an entry is found, S is reachable via an MPLS interface, and the PE does not have(S, G)(S,G) state in its TIB for(S, G)(S,G) carried in the route, then the PE originates a Leaf A-D route carrying that(S, G),(S,G), as specified insection 6.2.2 ("Leaf A-D Route for Global Table Multicast").Section 6.2.2. 6.3.1.3. Handling(S, G, rpt) state(S,G,rpt) State Creation and deletion of(S, G, rpt)(S,G,rpt) state on a PE that resulted from receiving PIM messages on one of its IP multicast interfacesdoesdo not result in any BGP actions by the PE. 6.3.2. Option 2 This option doestransitcarry IP multicast shared trees over the MPLS network. Therefore, when an egress PE creates(*, G)(*,G) state (as a result of receiving PIM or IGMP messages on one of its IP multicast interfaces), the PE does propagate this state using Leaf A-D routes. 6.3.2.1. Originating Source Active A-D Routes Whenever a PE creates an(S, G)(S,G) state as a result of receiving Leaf A-D routes associated with the global table multicast service, if S is reachable via one of the IPmulticast capablemulticast-capable interfaces, and the PE determines that G is in the PIM-SM in ASM mode range, the PE MUST originate a BGP Source Active A-D route. The route carries a single MCAST-VPN NLRI constructed as follows: + The RD in this NLRI is set to 0. + The Multicast Source field MUST be set to S. The Multicast Source Length field is set appropriately to reflect this. + The Multicast Group field MUST be set to G. The Multicast Group Length field is set appropriately to reflect this. The Route Target of this Source Active A-D route is an AS-specific Route Target Extended Community with the Global Administrator field set to the AS of the advertisingPE,PE and the Local Administrator fieldisset to 0. To constrain distribution of the Source Active A-D route to the AS of the advertisingPEPE, this route SHOULD carry the NO_EXPORT Community([RFC1997]).[RFC1997]. Using the normal BGPproceduresprocedures, the Source Active A-D route is propagated to all other PEs within the AS. Whenever the PE deletes the(S, G)(S,G) state that was previously created as a result of receiving a Leaf A-D route for(S, G),(S,G), the PE that deletes the state MUST also withdraw the Source Active A-D route, if such a route was advertised when the state was created. 6.3.2.2. Receiving BGP Source Active A-D Route Procedures for receiving BGP Source Active A-D routes are the same as with Option 1. 6.3.2.3. Pruning SourcesoffOff the Shared TreeIf afterAfter receiving a new Source Active A-D route for(S,G)(S,G), if a PE determines that (a) it has the(*, G)(*,G) entry in its TIB, (b) the incoming interfacelist(iif) list for that entry contains one of the IP interfaces, (c)aan MPLS LSP is in the outgoing interfacelist(oif) list for that entry, and (d) the PE does not originate a Leaf A-D route for (S,G), then the PE MUST transition the (S,G,rpt) downstream state to the Prune state. [Conceptually the PIM state machine on the PE will act "as if" it had received Prune(S,G,Rpt) from some other PE, without actually having received one.] Depending on the (S,G,rpt) state on the iifs, this may result in the PE using PIM procedures to prune S off the Shared (*,G) tree. Transitioning the state machine to the Prune state SHOULD be done after a delay that is controlled by a timer. The value of the timer MUST be configurable. The purpose of this timer is to ensure that S is not pruned off the shared tree until all PEs have had time to receive the Source Active A-D route for (S,G). The PE MUST keep the (S,G,rpt) downstream state machine in the Prune state for as long as (a) the outgoing interface list (oif) for(*, G)(*,G) containsaan MPLS LSP,and(b) the PE has at least one Source ActiveA- DA-D route for (S,G), and (c) the PE does not originate the Leaf A-D route for (S,G). Onceeitherany of these conditions become no longer valid, the PE MUST transition the (S,G,rpt) downstream state machine to the NoInfo state. Notethatthat, except for the scenario described in the first paragraph of this section, in allotherscenarios relying solely on PIM procedures on the PE is sufficient to ensure the correct behavior when pruning sources off the shared tree. 6.3.2.4. More onhandling (S, G, rpt) stateHandling (S,G,rpt) State Creation and deletion of(S, G, rpt)(S,G,rpt) state on a PE that resulted from receiving PIM messages on one of its IP multicast interfacesdoesdo not result in any BGP actions by the PE. 7. Egress ABR Procedures This section describesEgressthe egress ABRProceduresprocedures for constructing segmented inter-area P2MPLSP.LSPs. 7.1. Handling Leaf A-DrouteRoute on Egress ABR When an egress ABR receives a Leaf A-D route and the Route Target Extended Community carried by the route contains the IP address of this ABR,thenthe following procedures will be executed. If the value of the third octet of the MCAST-VPN NLRI of the received Leaf A-D route is either 0x01,or0x02, or 0x03, this indicates that the Leaf A-D route was originated in response to an S-PMSI or I-PMSI A-D route (seesection "Leaf A-D Route for Global Table Multicast").Section 6.2.2). In thiscasecase, the egress ABR MUST findaan S-PMSI or I-PMSI route whose NLRI has the same value as the Route Key field of the received Leaf A-D route. If such a matching route isfoundfound, then the Leaf A-D route MUST be accepted. If the Leaf A-D route is accepted and if it is the first Leaf A-D route update for the Route Key field in the route, or the withdrawal of the last Leaf A-D route for the Route Keyfieldfield, then the following procedures will be executed. If the RD of the received Leaf A-D route is set to all0szeros or all1sones, then the received Leaf A-D route is for the global table multicast service. If the received Leaf A-D route is the first Leaf A-D route update for the Route Key field carried in the route, then the egress ABR originates a Leaf A-D route, whose MCAST-VPN NLRI is constructed as follows. The Route Key field of the MCAST-VPN NLRI is the same as the Route Key field of the MCAST-VPN NLRI of the received Leaf A-D route. The Originating Router's IPaddressAddress field of the MCAST-VPN NLRI is set to the address of the local ABR (the ABR that originates the route). The Next Hop field of the MP_REACH_NLRI attribute of the route SHOULD be set to the same IP address as the one carried in the Originating Router's IP Address field of the route. To constrain distribution of thisrouteroute, the originating egress ABR constructs an IP-based Route Target Extended Community by placing the IP address of the upstream node in the Global Administrator field of thecommunity,Extended Community, with the Local Administrator field of thiscommunityExtended Community set to 0, and sets the Extended Communities attribute of this LeafA- DA-D route to thatcommunity.Extended Community. The upstream node's IP address is the IP address determined from the Global Administrator field of theInter-areaInter-Area P2MP Segmented Next-Hop Extended Community, where this Extended Community is obtained as follows. When the Leaf A-D route is for MVPN or VPLS,thenthis Extended Community is the one carried in the I-PMSI/S-PMSI A-D route that matches the Leaf A-D route. When the Leaf A-D route is for global table multicast,thenthis Extended Community is the one carried in the best unicast route to the Ingress PE. The Ingress PE address is determined from the received Leaf A-D route. The best unicast route MUST first be determined from multicastSAFISAFI, i.e., SAFI 2 routes, if present. The ABR then advertises this Leaf A-D route to the upstream node in the backbone area. Mechanismsspecificspecified in [RFC4684] for constrained BGP route distribution can be used along with this specification to ensure that only the needed PE/ABR will have to process a said Leaf A-D route. WhenIngress Replicationingress replication is used to instantiate the backbone areasegment thensegment, the Leaf A-D route originated by the egress ABR MUST carry adownstream assigneddownstream-assigned label in theP-Tunnel AttributePMSI Tunnel attribute where theP-Tunnel typeTunnel Type is set toIngress Replication.ingress replication. The ABR MUST assign a distinct MPLS label for each Leaf A-D route that it originates. In order to support global tablemulticastmulticast, an egress ABR MUST auto- configure an import AS-based Route Target Extended Community with the Global Administrator field set to the AS of the ABR and the Local Administrator field set to 0. If the received Leaf A-D route is the withdrawal of the last Leaf A-D route for the Route Key carried in the route, then the egress ABR must withdraw the Leaf A-D route associated with that Route Key that has been previously advertised by the egress ABR in the backbone area. 7.2. P2MP LSP as the Intra-Area LSP in the Egress Area This section describes procedures for using intra-area P2MP LSPs in the egress area. The procedures that are common to both P2MP RSVP-TE and P2MP LDP are described first, followed by procedures that are specific to the signaling protocol. When P2MP LSPs are used as the intra-area LSPs, note that an existing intra-area P2MP LSP may be used solely for a particular inter-area P2MP serviceLSP,LSP or for other inter-area P2MP service LSPs as well. The choice between the two options is purely local to the egress ABR. The first option provides one-to-one mapping between inter-area P2MP service LSPs and intra-area P2MP LSPs; the second option provides many-to-one mapping, thus allowingto aggregatethe aggregation of forwarding state. 7.2.1. Received Leaf A-Droute isRoute Is for MVPN or VPLS If the value of the third octet of the MCAST-VPN NLRI of the received Leaf A-D route is either 0x01,or0x02, or 0x03, this indicates that the Leaf A-D route was originated in response to an MVPN or VPLSS- PMSIS-PMSI or I-PMSI A-D route (seesection "Leaf A-D Route for Global Table Multicast").Section 6.2.2). In thiscasecase, the ABR MUST re-advertise in the egress area the MVPN/VPLS A-D route that matches the Leaf A-D route to signal the binding of the intra-area P2MP LSP to the inter-area P2MP service LSP. This must be done if and only if (a) such a binding hasn't already beenadvertised,advertised or (b) the binding has changed. The re-advertised route MUST carry the Inter-area P2MP Segmented Next-Hop Extended Community. The PMSI Tunnel attribute of the re-advertised route specifies either an intra-area P2MP RSVP-TE LSP or an intra-area P2MP LDP LSP rooted at the ABR and MUST also carry anupstream assignedupstream-assigned MPLS label. The upstream-assigned MPLS label MUST be set toimplicitImplicit NULL if the mapping between the inter-area P2MP service LSP and the intra-area P2MP LSP is one-to-one. If the mapping ismany-to-onemany-to-one, theintra-areaintra- area segment of the inter-area P2MP service LSP (referred to as the "inner" P2MP LSP) is constructed by nesting the inter-area P2MP service LSP in an intra-area P2MP LSP (referred to as the "outer" intra-area P2MP LSP), by using P2MP LSP hierarchy based on upstream- assigned MPLS labels [RFC5332]. If segments of multiple MVPN or VPLS S-PMSI service LSPs are carried over a given intra-area P2MP LSP, each of these segments MUST carry a distinct upstream-assigned label, even if all these service LSPs are for(C-S/*, C-G/*)s(C-S/*,C-G/*)s from the same MVPN/VPLS. Therefore, an ABR maintainsan LFIBa Label Forwarding Information Base (LFIB) state for each such S-PMSI traversing the ABR (that applies to both the ingress and the egress ABRs). 7.2.2. Received Leaf A-Droute isRoute Is forglobal table multicastGlobal Table Multicast When the RD of the received Leaf A-D route is set to all0szeros or all1s, thenones, this is the case of inter-area P2MP service LSP being associated with the global table multicast service. The procedures for this are described below. 7.2.2.1. Global Table Multicast and S-PMSI A-D Routes This section applies only if it is desired to send a particular(S, G)(S,G) or(*, G)(*,G) global table multicast flow to only those egress PEs that have receivers for that multicast flow. If the egress ABRhavehas not previously received (and re-advertised) an S-PMSI A-D route for(S, G)(S,G) or(*, G)(*,G) that has been originated by an ingress PE/ASBR (seesection "P2MP LSP as the Intra-Area LSP in the Ingress Area"),Section 9.1), then the egress ABR MUST originateaan S-PMSI A-D route. The PMSI Tunnel attribute of the route MUST contain the identity of the intra-area P2MP LSP and anupstreamupstream- assigned MPLS label (although this label may be an Implicit NULL--- seesection "General Assumptions and Terminology").Section 3). The RD, Multicast Source Length, Multicast Source, Multicast Group Length (1 octet), and Multicast Group fields of the NLRI of this route are the same as those of the received Leaf A-D route. The Originating Router's IPaddressAddress field in the S-PMSI A-D route is the same as the Ingress PE's IPaddressAddress field in the received Leaf A-D route. The Route Target of this route is anAS-specificAS- specific Route Target Extended Community with the Global Administrator field set to the AS of the advertisingABR,ABR and the Local Administrator fieldisset to 0. The route MUST carry theInter-areaInter- Area P2MP Segmented Next-Hop Extended Community. ThiscommunityExtended Community is constructed following the procedures insection 4 ("Inter-area P2MP Segmented Next-Hop Extended Community").Section 4. The egress ABR MUST advertise this route into the egress area. PEs in the egress area that participate in the global table multicast will import this route based on the Route Target carried by the route. A PE in the egress area that originated the Leaf A-D route SHOULD join the P2MP LSP advertised in the PMSI Tunnel attribute of theS- PMSIS-PMSI A-D route. 7.2.2.2. Global Table Multicast and Wildcard S-PMSI A-D Routes It may be desirable for an ingress PE to carry multiple multicast flows associated with the global table multicast over the same inter- area P2MP service LSP. This can be achieved using wildcard, i.e., (*,*) S-PMSI A-D routes [RFC6625]. An ingress PE MAY advertise a wildcard S-PMSI A-D route as described insection 9 ("Ingress PE/ASBR Procedures").Section 9. If the ingress PE originates a wildcard S-PMSI A-D route, and the egress ABR receives this route from the ingress ABR, then the egress ABR either (a) MUST re-advertise this route into the egress area with the PMSI TunnelAttributeattribute containing the identifier of the intra-area P2MP LSP in the egress area and anupstream assignedupstream-assigned label (note that this label may be an Implicit NULL--- seesection "General Assumptions and Terminology")Section 3) assigned to the inter-area wildcardS-PMSI,S-PMSI or (b) MUST be able to disaggregate traffic carried over the wildcard S-PMSI onto the egress area(S, G)(S,G) or(*, G)(*,G) S-PMSIs. The procedures for such disaggregation require IP processing on the egress ABRs. If the egress ABR advertises a wildcard S-PMSI A-D route into the egress area, this route MUST carry an AS-specific Route Target Extended Community with the Global Administrator field set to the AS of the advertisingABR,ABR and the Local Administrator field set to 0. PEs in the egress area that participate in the global table multicast will import this route. A PE in the egress area SHOULD join the P2MP LSP advertised in the PMSI Tunnel attribute of the wildcard S-PMSI A-D route if (a) the Originating Router's IP Address field in the S-PMSI A-D route has the same value as the Ingress PE's IPaddressAddress in at least one of the Leaf A-D routes for global table multicast originated by thePE,PE and (b) the upstream ABR for the Ingress PE's IP address in that Leaf A-D route is the egress ABR that advertises the wildcard S-PMSI A-D route. 7.2.3. Global Table Multicast and the Expected Upstream Node If the mapping between the inter-area P2MP service LSP for global table multicast service and the intra-area P2MP LSP ismany-to-onemany-to-one, then an egress PE must be able to determine whether a given multicast packet for a particular(S, G)(S,G) is received from the "expected" upstream node. The expected node is the node towards which the Leaf A-D route is sent by the egress PE. Packets received from another upstream node for that(S, G)(S,G) MUST be dropped. To allow the egress PE to determine the sender upstream node, the intra-area P2MP LSP MUST be signaled with noPHP,Penultimate Hop Popping (PHP), when the mapping between the inter-area P2MP service LSP for global table multicast service and the intra-area P2MP LSP is many-to-one.FurtherFurther, the egress ABR MUST first push onto the label stack theupstream assignedupstream-assigned label advertised in the S-PMSI A-D route, if the label is not the Implicit NULL. 7.2.4. P2MP LDP LSP as the Intra-Area P2MP LSP The above procedures are sufficient if P2MP LDP LSPs are used as theIntra-areaintra-area P2MP LSP in theEgressegress area. 7.2.5. P2MP RSVP-TE LSP as the Intra-Area P2MP LSP If P2MP RSVP-TE LSP is used as the intra-area LSP in the egress area, then the egress ABR can either (a) graft the leaf (whose IP address is specified in the received Leaf A-D route) into an existing P2MP LSP rooted at the egress ABR, and use that LSP for carrying traffic for the inter-area segmented P2MP serviceLSP,LSP or (b) originate a new P2MP LSP to be used for carrying (S,G). When the RD of the received Leaf A-D route is all0szeros or all1s, thenones, the procedures are as described insection "Received Leaf A-D route is for global table multicast".Section 7.2.2. Note also that the SESSION object that the egress ABR would use for the intra-area P2MP LSP need not encode the P2MP FEC from the received Leaf A-D route. 7.3. Ingress Replication in the Egress Area WhenIngress Replicationingress replication is used to instantiate the egress areasegment thensegment, the Leaf A-D route advertised by the egress PE MUST carry adownstream assigneddownstream-assigned label in theP-Tunnel AttributePMSI Tunnel attribute where theP-Tunnel typeTunnel Type is set toIngress Replication.ingress replication. We will call this label the egress PEdownstream assigneddownstream-assigned label. The egress ABR MUST forward packets received from the backbone area intra-area segment, for a particular inter-area P2MP LSP, to all the egress PEs from which the egress ABR has imported a Leaf A-D route for the inter-area P2MP LSP. A packet to a particular egress PE is encapsulated, by the egress ABR, usingaan MPLS label stack the bottom label of which is the egress PEdownstream assigneddownstream-assigned label. The top label is the P2P RSVP-TE or the MP2P LDP label to reach the egress PE. Note that these proceduresensuresensure that an egress PE always receives packets only from the upstream node expected by the egress PE. 8. Ingress ABR Procedures When an ingress ABR receives a Leaf A-D route and the Route Target Extended Community carried by the route contains the IP address of this ABR,thenthe ingress ABR follows the same procedures as insection 7 ("Egress ABR Procedures"),Section 7, with egress ABR replaced by ingress ABR, backbone area replaced by ingress area, and backbone area segment replaced by ingress area segment. In order to support global tablemulticastmulticast, the ingress ABR MUST be auto-configured with an import AS-based Route Target Extended Community whose Global Administrator field is set to the AS of the ABR andthewhose Local Administrator field is set to 0. 8.1. P2MP LSP as the Intra-Area LSP in the Backbone Area The procedures for binding the backbone area segment of an inter-area P2MP LSP to the intra-area P2MP LSP in the backbone area are the same as insection "Egress ABR Procedures"Sections 7 andsub-section "P2MP LSP as the Intra-Area LSP in the Egress Area",7.2, with egress PE beingreplacereplaced by egress ABR, egress ABR being replaced by ingress ABR, and egress area being replaced by backbone area. This applies to the inter-area P2MP LSPs associated with either MVPN,orVPLS, or global table multicast. It is to be notedthatthat, in the case of global table multicast, if the backbone area uses wildcard S-PMSI, then the egress area also SHOULD use wildcard S-PMSI for global table multicast, or the egress ABRs MUST be able to disaggregate traffic carried over the wildcard S-PMSI onto the egress area(S, G)(S,G) or(*, G)(*,G) S-PMSIs. The procedures for such disaggregation require IP processing on the egress ABRs. 8.2. Ingress Replication in the Backbone Area WhenIngress Replicationingress replication is used to instantiate the backbone areasegment thensegment, the Leaf A-D route advertised by the egress ABR MUST carry adownstream assigneddownstream-assigned label in theP-Tunnel AttributePMSI Tunnel attribute where theP-Tunnel typeTunnel Type is set toIngress Replication.ingress replication. We will call this the egress ABRdownstream assigneddownstream-assigned label. The egress ABR MUST assign a distinct MPLS label for each Leaf A-D route originated by the ABR. The ingress ABR MUST forward packets received from the ingress area intra-area segment, for a particular inter-area P2MP LSP, to all the egress ABRs from which the ingress ABR has imported a Leaf A-D route for the inter-area P2MP LSP. A packet to a particular egress ABR is encapsulated, by the ingress ABR, usingaan MPLS label stack the bottom label of which is the egress ABRdownstream assigneddownstream-assigned label. The top label is the P2P RSVP-TE or the MP2P LDP label to reach the egress ABR. 9. Ingress PE/ASBR Procedures This section describesIngressthe ingress PE/ASBR procedures for constructing segmented inter-area P2MPLSP.LSPs. When an ingress PE/ASBR receives a Leaf A-D route and the Route Target Extended Community carried by the route contains the IP address of this PE/ASBR,thenthe following procedures will be executed. If the value of the third octet of the MCAST-VPN NLRI of the received Leaf A-D route is either 0x01,or0x02, or 0x03, this indicates that the Leaf A-D route was originated in response to an S-PMSI or I-PMSI A-D route (seesection "Leaf A-D Route for Global Table Multicast").Section 6.2.2). In thiscasecase, the ingress PE/ASBR MUST findaan S-PMSI or I-PMSI route whose NLRI has the same value as the Route Key field of the received Leaf A-D route. If such a matching route isfoundfound, then the Leaf A-D route MUST be accepted or else it MUST be discarded. If the Leaf A-D route isacceptedaccepted, then it MUST be processed as per MVPN or VPLS procedures. If the RD of the received A-D route is set to all0szeros or all1s,ones, then the received Leaf A-D route is for the global table multicast service. If this is the first Leaf A-D route for the Route Key carried in the route, the PIM implementation MUST set its upstream (S/RP,G) state machine to Joined state for the(S/RP, G)(S/RP,G) received via a Leaf A-D route update. Likewise, if this is the withdrawal of the last Leaf A-D route whose Route Key matches a particular(S/RP, G)(S/RP,G) state, the PIM implementation MUST set its upstream(S/RP, G)(S/RP,G) state machine toPrunedPrune state for the(S/RP, G).(S/RP,G). 9.1. P2MP LSP as the Intra-Area LSP in the Ingress Area If the value of the third octet of the MCAST-VPN NLRI of the received Leaf A-D route is either 0x01,or0x02, or 0x03 (which indicates that the Leaf A-D route was originated in response to an S-PMSI or I-PMSI A-D route), and P2MP LSP is used as the intra-area LSP in the ingress area, then the procedures for binding the ingress area segment of the inter-area P2MP LSP to the intra-area P2MP LSP in the ingressarea,area are the same as insection "Egress ABR Procedures"Sections 7 andsub-section "P2MP LSP as the Intra-Area LSP in the Egress Area".7.2. When the RD of the received Leaf A-D route is all0szeros or all1s,ones, as is the case where the inter-area service P2MP LSP is associated with the global table multicast service,thenthe ingress PE MAY originateaan S-PMSI A-D route with the RD, multicast source, and multicast group fields being the same as those in the received Leaf A-D route.FurtherFurther, in the case of global tablemulticastmulticast, an ingress PE MAY originate a wildcard S-PMSI A-D route as per the procedures in [RFC6625] with the RD set to 0. This route may be originated by the ingress PE based on configuration or based on the import of a LeafA- DA-D route with the RD set to 0. If an ingress PE originates such a route, then the ingress PE MAY decide not to originate(S, G)(S,G) or(*, G) S- PMSI(*,G) S-PMSI A-D routes. The wildcard S-PMSI A-D route MUST carry theInter-areaInter-Area P2MP Segmented Next-Hop Extended Community. ThiscommunityExtended Community is constructed following the procedures insection 4 ("Inter-area P2MP Segmented Next-Hop Extended Community").Section 4. It is to be notedthatthat, in the case of global table multicast, if the ingress area uses wildcard S-PMSI, then the backbone area also SHOULD use wildcard S-PMSI for global table multicast, or the ingress ABRs MUST be able to disaggregate traffic carried over the wildcard S-PMSI onto the backbone area(S, G)(S,G) or(*, G)(*,G) S-PMSIs. The procedures for such disaggregation require IP processing on the ingress ABRs. 9.2. Ingress Replication in the Ingress Area WhenIngress Replicationingress replication is used to instantiate the ingress areasegment thensegment, the Leaf A-D route advertised by the ingress ABR MUST carry adownstream assigneddownstream-assigned label in theP-Tunnel AttributePMSI Tunnel attribute where theP-Tunnel typeTunnel Type is set toIngress Replication.ingress replication. We will call this the ingress ABRdownstream assigneddownstream-assigned label. The ingress ABR MUST assign a distinct MPLS label for each Leaf A-D route originated by the ABR. The ingress PE/ASBR MUST forward packets received from the CE, for a particular inter-area P2MP LSP, to all the ingress ABRs from which the ingress PE/ASBR has imported a Leaf A-D route for the inter-area P2MP LSP. A packet to a particular ingress ABR is encapsulated, by the ingress PE/ASBR, usingaan MPLS label stack the bottom label of which is the ingress ABRdownstream assigneddownstream-assigned label. The top label is the P2P RSVP-TE or the MP2P LDP label to reach the ingress ABR. 10. Common Tunnel Type in the Ingress and Egress Areas For a given inter-area service P2MP LSP, the PE/ASBR that is the root of that LSP controls thetunneltype of the intra-area P-tunnel that carries the ingress area segment of that LSP. However, thetunneltype of the intra-area P-tunnel that carries the backbone area segment of that LSP may be different from thetunneltype of the intra-area P-tunnels that carry the ingress area segment and the egress area segment of that LSP. In thatsituation ifsituation, if, for a given inter-area P2MPLSPLSP, it is desirable/necessary to use the sametunneltype of tunnel for the intra-area P-tunnels that carry the ingress area segment and for the intra-area P-tunnels that carry the egress area segment of that LSP, then the following procedures on the ingress ABR and egress ABR provide this functionality. When an ingress ABR re-advertises into the backbone area a BGP MVPN I-PMSI,orS-PMSI A-D route, or VPLS A-D route, the ingress ABR places the PMSI Tunnel attribute of this route into the ATTR_SET BGPAttributeattribute [RFC6368], adds this attribute to the re-advertised route, and then replaces the original PMSI Tunnel attribute with a new one(note,(note that the TunneltypeType of the new attribute may be different from the TunneltypeType of the original attribute). When an egress ABR re-advertises into the egress area a BGP MVPNI- PMSII-PMSI or S-PMSI A-D route, or VPLS A-D route, if the route carries the ATTR_SET BGP attribute [RFC6368],thenthe ABR sets the TunneltypeType of the PMSI Tunnel attribute in the re-advertised route to the TunneltypeType of the PMSI Tunnel attribute carried in the ATTR_SET BGP attribute, and removes the ATTR_SET from the route. 11. Placement of Ingress and Egress PEs As described in the earlier sections, procedures in this document allow the placement of ingress and egress PEs in the backbone area. They also allow the placement of egress PEs in the ingress area or the placement of ingress PEs in the egress area. For instance,ABRssuppose that in thebackbone area may act asingress and egressPEs forareas, a global tablemulticast, as per the ingress and egress PE definition in this document. This may be the case if themulticast service isglobal table multicastbeing provided, andrelies on global table multicast intheingress and egress areas and its desirable to carry global table multicastdata is being sent over PIM-based IP/GRE P-tunnels. Suppose also that it is desired to carry that data overMPLS inthe backbonearea.area through MPLS P-tunnels. Thismay alsocan be done if thecaseABR connecting the ingress area to the backbone follows the procedures that this document specifies for ingress PEs providing the global table multicast service, and if the ABR connecting the egress area to the backbone follows the procedures that this document specifies for egress PEs providing the global table multicast service. If MVPN service isMVPN and the P-tunnel technologybeing provided in the ingress and egressareas uses PIM basedareas, with the MVPN data carried in PIM-based IP/GRE P-tunnels, this same technique enables the MVPN data to be carried over the backbone in MPLS P-tunnels.As far asThe PIM-based IP/GRE P-tunnels in theABRsingress and egress areas areconcerned PIM signaling for such P-Tunnels is handledtreated asper the ingress/egress PEglobal tablemulticast procedures specified in this document. To facilitate thismulticasts, and the ABRsmay advertise their loopback addresses in BGP using multicast-SAFI i.e., SAFI 2, if non-congruence between unicastprovide the ingress andmulticast is desired.egress PE functionality. 12. MVPN with Virtual Hub-and-Spoke Procedures described in this document could be used in conjunction with the Virtual Hub-and-Spoke procedures [RFC7024]. This document does not place any restrictions on the placement of Virtual Hubs and Virtual Spokes. In addition to I-PMSI/S-PMSI A-D routes, the procedures described in this document are applicable to Associated-V-spoke-only I-PMSI A-D routes. In the scenario where a V-hub, as a result of importing an S-PMSI A-D route in its VRF, originates an S-PMSI A-D route targeted to itsV- spokesV-spokes (as specified insection "Case 2"Section 7.8.2 of [RFC7024]), the V-hub SHOULD be able to control via configuration whether theInter-areaInter-Area P2MP Segmented Next-Hop Extended Community, if present in the received S-PMSI A-D route,beshould also be carried in the originated S-PMSI A-D route. Bydefaultdefault, if the received S-PMSI A-D route carries theInter-areaInter-Area P2MP Segmented Next-Hop Extended Community, then the originated S-PMSI A-D route SHOULD also carry thiscommunity.Extended Community. 13. Data Plane This section describes the data plane procedures on the ABRs, ingress PEs, egressPEsPEs, and transit routers. 13.1. Data Plane Procedures on ABRs When procedures in this document are followed to signal inter-area P2MPSegmentedsegmented LSPs,thenABRs are required to perform only MPLS switching. When an ABR receivesaan MPLS packet from an "incoming" intra-area segment of the inter-area P2MPSegmentedsegmented LSP, it forwards the packet, based on MPLS switching,ontoon to another "outgoing" intra- area segment of the inter-area P2MPSegmentedsegmented LSP. If the outgoing intra-area segment is instantiated using a P2MP LSP, and if there is a one-to-one mapping between the outgoing intra-area segment and the P2MP LSP, then the ABR MUST pop the incoming segment's label stack and push the label stack of the outgoing P2MP LSP. If there is a many-to-one mapping between outgoing intra-area segments and the P2MPLSPLSP, then the ABR MUST pop the incoming segment's label stack and first push theupstream assignedupstream-assigned label corresponding to the outgoing intra-area segment, if such a label has been assigned, and then push the label stack of the outgoing P2MP LSP. If the outgoing intra-area segment is instantiated using ingressreplicationreplication, then the ABR must pop the incoming segment's label stack and replicate the packet once to each leaf ABR or PE of the outgoing intra-area segment. The label stack of the packet sent to each such leaf MUST first include adownstream assigneddownstream-assigned label assigned by the leaf to the segment, followed by the label stack of the P2P or MP2P LSP to the leaf. 13.2. Data Plane Procedures on Egress PEs An egress PE must first identify the inter-area P2MP segmented LSP based on the incoming label stack. After thisidentificationidentification, the egress PE must forward the packet using the application that is bound to the inter-area P2MP segmented LSP. Note that theapplication specificapplication-specific forwarding for MVPN service may require the egress PE to determine whether the packets were received from the expected sender PE. When the application isMVPN thenMVPN, the FEC of an inter-area P2MPSegmentedsegmented LSP is at the granularity of the sender PE. Note that MVPN intra-AS I-PMSI A-D routes and S-PMSI A-D routes both carry the OriginatingRouterRouter's IP Address.ThusThus, an egress PE could associate the data arriving on P-tunnels advertised by these routes with the OriginatingRouterRouter's IP Address carried by theseroutesroutes, which is the same as the ingress PE. Since a unique label stack is associated with each such FEC, the egress PE can determine the sender PE from the label stack. Likewise for VPLSserviceservice, for the purposes ofMACMedia Access Control (MAC) learning theegressegress, the PE must be able to determine the "VE-ID" (VPLS Edge Device Identifier) from which the packets have been received. The FEC of the VPLS A-D routes carries the VE-ID.ThusThus, an egress PE could associate the data arriving on P-tunnels advertised by these routes with the VE-ID carried by these routes. Since a unique label stack is associated with each such FEC, the egress PE can perform MAC learning for packets received from a given VE-ID. When the application is global tablemulticastmulticast, it is sufficient for the label stack to include identification of the sender upstream node. When P2MP LSPs areusedused, this requires that PHP MUST be turned off. WhenIngress Replicationingress replication isusedused, the egress PE knows the incomingdownstream assigneddownstream-assigned label to which it has bound a particular(S/*, G)(S/*,G) and must accept packets with only that label for that(S/*, G).(S/*,G). 13.3. Data Plane Procedures on Ingress PEs An Ingress PE must performapplication specificapplication-specific forwarding procedures to identify the outgoing intra-area segment of an incoming packet. If the outgoing intra-area segment is instantiated using a P2MP LSP, and if there is a one-to-one mapping between the outgoing intra-area segment and the P2MP LSP, then the ingress PE MUST encapsulate the packet in the label stack of the outgoing P2MP LSP. If there is a many-to-one mapping between outgoing intra-area segments and the P2MPLSPLSP, then the PE MUST first push theupstream assignedupstream-assigned label corresponding to the outgoing intra-area segment, if such a label has been assigned, and then push the label stack of the outgoing P2MP LSP. If the outgoing intra-area segment is instantiated using ingressreplicationreplication, then the PE must replicate the packet once to each leaf ABR or PE of the outgoing intra-area segment. The label stack of the packet sent to each such leaf MUST first include adownstreamdownstream- assigned label assigned by the leaf to the segment, followed by the label stack of the P2P or MP2P LSP to the leaf. 13.4. Data Plane Procedures on Transit Routers When procedures in this document are followed to signal inter-area P2MPSegmented LSPs thensegmented LSPs, transit routers in each area perform only MPLS switching. 14. Support for Inter-Area Transport LSPs This section describes OPTIONAL procedures that allow multiple (inter-area) P2MP LSPs to be aggregated into a single inter-area P2MP "transport LSP". The segmentation procedures, as specified in this document, are then applied to these inter-area P2MP transport LSPs, rather than being applied directly to the individual LSPs that are aggregated into thetransport).transport. In the following, the individual LSPs that are aggregated into a single transport LSP will be known as "service LSPs". 14.1.Transport Tunnel"Transport Tunnel" Tunnel Type For the PMSI TunnelAttributeattribute, we define a new Tunneltype,Type, called "Transport Tunnel", whose Tunnel Identifier is a tuple <Source PE Address, Local Number>. This TunneltypeType is assigned a value of 8. The Source PE Address is the address of the PE that originates the (service) A-D route that carries this attribute, and the Local Number is a number that is unique to the Source PE. The length of the Local Number part is the same as the length of the Source PE Address.ThusThus, if the Source PE Address is an IPv4 address, then the Local Number part is 4octets, andoctets; if the Source PE Address is an IPv6 address, then the Local Number part is 16 octets. 14.2. Discovering Leaves of the Inter-Area P2MP Service LSP When aggregating multiple P2MP LSPs using P2MP LSP hierarchy, determining the leaf nodes of the LSPs being aggregated is essential for being able totradeofftrade-off the overhead due to the P2MP LSPsvsversus suboptimal use of bandwidth due to the partial congruency of the LSPs being aggregated. Therefore, if a PE that is a root of a given service P2MP LSP wants to aggregate this LSP with other (service) P2MP LSPs rooted at the same PE into an inter-area P2MP transport LSP, the PE should first determine all the leaf nodes of that service LSP, as well as those of the other service LSPs beingaggregated).aggregated. To accomplishthisthis, the PE sets the PMSI Tunnel attribute of the service A-D route (an I-PMSI or S-PMSI A-D route for MVPN or VPLS service) associated with that LSP as follows. The Tunnel Type is set to "No tunnel information present",Leaf Information Required flagand the "Leaf Information Required" flag is set to1, the1. The route MUST NOT carry the Inter-Area P2MP Segmented Next-Hop Extended Community. In contrast to the procedures for the MVPN and VPLS A-D routes described so far, the Route Reflectors that participate in the distribution of this route need not be ABRs. 14.3. Discovering P2MP FEC of P2MP Transport LSP Once the ingress PE determines all the leaves of a given P2MP service LSP, the PE (using some localto the PEcriteria) selects a particularinter-areainter- area transport P2MP LSP to be used for carrying the (inter-area) service P2MP LSP. Once the PE selects the transport P2MP LSP, the PE(re)originates(re-)originates the service A-D route. The PMSI Tunnel attribute of this route now carries the Tunnel Identifier of the selected transport LSP, with the Tunnel Type set to "Transport Tunnel". If the transport LSP carries multiple P2MP service LSPs, then the MPLS Label field in the attribute carries an upstream-assigned label assigned by the PE that is bound to the P2MP FEC of the inter-area P2MP service LSP. Otherwise, this field is set to Implicit NULL.Just asAs described earlier, this service A-D route MUST NOT carry the Inter-Area P2MP Segmented Next-Hop ExtendedCommunity. Just as described earlier,Community, and the Route Reflectors that participate in the distribution of this route need not be ABRs. 14.4. Egress PE Procedures for P2MP Transport LSP When an egress PE receives and accepts an MVPN or VPLS service A-D route, if theLeaf"Leaf InformationRequiredRequired" flag in the PMSI Tunnel attribute of the received A-D route is set to 1, and the route does not carry the Inter-Area P2MP Segmented Next-Hop Extended Community, then the egress PE, following the "regular" MVPN or VPLS procedures associated with the received A-D route (as specified in [RFC6514] and [RFC7117]), originates a Leaf A-D route. In addition, if the Tunnel Type in the PMSI Tunnel attribute of the received service A-D route is set to "Transport Tunnel", the egress PE originates yet another Leaf A-D route. The format of the Route Key field of the MCAST-VPN NLRI of this additional Leaf A-D route is the same as defined insection 6.2.2 ("Leaf A-D Route for Global Table Multicast").Section 6.2.2. The Route Key field of the MCAST-VPN NLRI of this route is constructed as follows: RD (8 octets) - set to 0 Multicast Source Length, Multicast Source - constructed from the Source PEaddressAddress part of the Tunnel Identifier carried in the PMSI Tunnel attribute of the received service S-PMSI A-D route. Multicast Group Length, Multicast Group - constructed from the Local Number part of the Tunnel Identifier carried in the PMSI Tunnel attribute of the received service S-PMSI A-D route. Ingress PE IP Addressis- set to the Source PEaddressAddress part of the Tunnel Identifier carried in the PMSI Tunnel attribute of the received service S-PMSI A-D route. The egress PE, when determining the upstream ABR, follows the procedures specified insectionSection 6.1("Determining the Upstream ABR/PE/ASBR (Upstream Node)")for global table multicast. The egress PE constructs the rest of the Leaf A-D route following the procedures specified insection 6.2.3 ("Constructing the Rest of the Leaf A-D Route").Section 6.2.3. From that point on we follow the procedures used for the Leaf A-D routes for global table multicast, as outlined below. 14.5. ABRs and Ingress PEproceduresProcedures for P2MP Transport LSP In thissectionsection, we specify ingress and egress ABRs, as well as ingress PE procedures for P2MP transport LSPs. When an egress ABR receives the Leaf A-D route, and P2MP LSP is used to instantiate the egress area segment of the inter-area transport LSP, the egress ABR will advertise into the egress area an S-PMSI A-D route. This route is constructed following the procedures insection "Global Table Multicast and S-PMSI A-D Routes".Section 7.2.2.1. The egress PE(s) will import this route. The egress ABR will also propagate, with appropriate modifications, the received Leaf A-D route into the backbone area. This is irrespective of whether the egress area segment is instantiated using P2MP LSP or ingress replication. If P2MP LSP is used to instantiate the backbone area segment of the inter-area transport LSP, then an ingress ABR will advertise into the backbone area an S-PMSI A-D route. This route is constructed following the procedures insection 7.1.2.1 ("Global Table Multicast and S-PMSI A-D Routes").Section 7.1.2.1. The egress ABR(s) will import this route. The ingress ABR will also propagate, with appropriate modifications, the received Leaf A-D route into the ingress area towards the ingress/root PE. This is irrespective of whether the backbone area segment is instantiated using P2MP LSP or ingress replication. Finally, if P2MP LSP is used to instantiate the ingress area segment, the ingress PE will advertise into the ingress area an S-PMSI A-D route with the RD, multicast source, and multicast group fields being the same as those in the received Leaf A-D route. The PMSI Tunnel attribute of this route contains the identity of the intra-area P2MP LSP used to instantiate the ingress area segment, and an upstream- assigned MPLS label. The ingress ABR(s) and other PE(s) in the ingress area, if any, will import this route. The ingress PE will use the (intra-area) P2MP LSP advertised in this route for carrying traffic associated with the original service A-D route advertised by the PE. 14.6. Discussion Use of inter-area transport P2MP LSPs, as described in this section, creates a level of indirection between (inter-area) P2MP service LSPs, and intra-area transport LSPs that carry the service LSPs. Rather than segmenting (inter-area) service P2MP LSPs, and then aggregating (intra-area) segments of these service LSPs into intra- area transport LSPs, this approach first aggregates multiple (inter- area) service P2MP LSPs into a single inter-area transport P2MP LSP, then segments such inter-area transport P2MP LSPs, and then aggregates (intra-area) segments of these inter-area transport LSPs into intra-area transport LSPs. On onehandhand, this approach could result in reducing the state (and the overhead associated with maintaining the state) on ABRs. This is because instead of requiring ABRs to maintain state for individual P2MP service LSPs, ABRs would need to maintain state only for the inter-area P2MP transport LSPs.NoteNote, however, that this reduction is possible only if a single inter-area P2MP transport LSP aggregates more than one (inter-area) service LSP. In the absence of such aggregation, use of inter-area transport LSPs provides no benefits, yet results in extra overhead. And while such aggregation does allowto reducereduced state on ABRs, it comes at a price, as described below. As we mentioned before, aggregating multiple P2MP service LSPs into a single inter-area P2MP transport LSP requires the PE rooted at these LSPs to determine all the leaf nodes of the service LSPs to be aggregated. This means that the root PE has to track all the leaf PEs of these LSPs. In contrast, when one applies segmentation procedures directly to the P2MP service LSPs, the root PE has to track only the leaf PEs in its own IGP area, plus the ingress ABR(s). Likewise, an ingress ABR has to track only the egress ABRs. Finally, an egress ABR has to track only the leaf PEs in its own area. Therefore, while the total overhead of leaf tracking due to the P2MP service LSPs is about the same in both approaches, the distribution of this overhead is different. Specifically, when one usesinter-areainter- area P2MP transport LSPs, this overhead is concentrated on the ingress PE. When one applies segmentation procedures directly to the P2MP service LSPs, this overhead is distributed among the ingress PE and ABRs. Moreover, when one uses inter-area P2MP transport LSPs, ABRs have to bear the overhead of leaf tracking for inter-area P2MP transport LSPs. In contrast, when one applies segmentation procedures directly to the P2MP service LSPs, there is no such overhead (as there are no inter-area P2MP transport LSPs). Use of inter-area P2MP transport LSPs may also result in more bandwidth inefficiency, as compared to applying segmentation procedures directly to the P2MP service LSPs. This is because with inter-area P2MP transport LSPs the ABRs aggregate segments of inter- area P2MP transport LSPs, rather than segments of (inter-area) P2MP service LSPs. To illustratethisthis, consider the following example. Assume PE1 in Area 1 is an ingress PE, with two multicast streams, (C-S1, C-G1) and (C-S2, C-G2), originated by an MVPN site connected to PE1. Assume that PE2 in Area 2 has an MVPN site with receivers for (C-S1, C-G1), PE3 and PE4 in Area 3 have an MVPN site with receiversbothfor both (C-S1, C-G1) andfor(C-S2, C-G2). Finally, assume that PE5 in Area 4 has an MVPN site with receivers for (C-S2, C-G2). When segmentation applies directly to the P2MP serviceLSPs thenLSPs, Area 2 would have just one intra-area transport LSPwhichthat would carry the egress area segment of the P2MP service LSP for (C-S1, C-G1); Area 3 would have just one intra-area transport LSPwhichthat would carry the egress area segments of both the P2MP service LSP for (C-S1, C-G1) and the P2MP service LSP for (C-S2, C-G2); Area 4 would have just one intra-area transport LSPwhichthat would carry the egress area segment of the P2MP service LSP for (C-S2, C-G2). Note that there is no bandwidth inefficiency in this case at all. When using inter-area P2MP transport LSPs, to achieve the same state overhead on the routers within each of the egress areas (except for egress ABRs), PE1 would need to aggregate the P2MP service LSP for (C-S1, C-G1) and the P2MP service LSP for (C-S2, C-G2) into the same inter-area P2MP transport LSP. While such aggregation would reduce state on ABRs, it would also result in bandwidth inefficiency, as(C- S1,(C-S1, C-G1) will be delivered not just to PE2, PE3, and PE4, but also to PE5, which has no receivers for this stream. Likewise, (C-S2,C- G2)C-G2) will be delivered not just to PE3, PE4, and PE5, but also to PE2, which has no receivers for this stream. 15. IANA Considerations This document defines a new BGP Extended Community called"Inter-area"Inter-Area P2MP Segmented Next-Hop" (seesection "Inter-area P2MP Segmented Next-Hop Extended Community").Section 4). This may be either a Transitive IPv4-Address-Specific Extended Community or a Transitive IPv6-Address-Specific Extended Community. IANA has assigned the value 0x12 in theTransitive"Transitive IPv4-Address-Specific Extended CommunitySub-TypesSub-Types" registry, and IANA has assigned the value 0x0012 in theTransitive"Transitive IPv6-Address-Specific Extended CommunityTypesTypes" registry. This document is the reference for bothcodepoints.code points. IANAis requested to change in these registries the reference tohas assigned theRFC number as soon as this document is published as an RFC. IANA is requested to assign avaluefrom0x08 in thePMSI"P-Multicast Service Interface TunnelTypes(PMSI Tunnel) Tunnel Types" registry[pmsi-registry] for[RFC7385] as "Transport Tunnel" (seesection "Transport Tunnel Type"). The value 0x08 is requested.Section 14). This document makes use of a Route Distinguisher whose value is all1's.ones. The two-octet type field of this Route Distinguisher thus has the value 65535. IANAis therefore requested to assign thehas assigned this value65535 fromin the "Route Distinguisher Type Field" registrytoas "For Use Only in Certain Leaf A-D Routes", with this document as the reference. 16. Security Considerations Procedures described in this document are subject tosimilarsecurity threatsassimilar to those experienced by any MPLS deployment. It is recommended that baseline security measures are considered as described inSecurity"Security Framework for MPLS and GMPLSnetworksNetworks" [RFC5920], in the mLDP specification[RFC6388][RFC6388], and in the P2MP RSVP-TE specification [RFC3209]. The security considerations of [RFC6513] are also applicable. 17.Acknowledgements We would like to thank Eric Rosen for his comments. We also would like to thank Loa Andersson and Qin Wu for their review and comments. 18.References18.1.17.1. Normative References [RFC1997] Chandra, R., Traina, P., and T. Li, "BGP Communities Attribute",Ravi Chandra, et al.,RFC 1997, August19961996, <http://www.rfc-editor.org/info/rfc1997>. [RFC2119] Bradner, S., "Key words for use in RFCs to Indicate RequirementLevels.", Bradner,Levels", BCP 14, RFC 2119, March19971997, <http://www.rfc-editor.org/info/rfc2119>. [RFC3209] Awduche, D., Berger, L., Gan, D., Li, T., Srinivasan, V., and G. Swallow, "RSVP-TE: Extensions to RSVP for LSP Tunnels",D. Awduche, et al.,RFC 3209, December20012001, <http://www.rfc- editor.org/info/rfc3209>. [RFC4360]S. Sangle et. al.,Sangli, S., Tappan, D., and Y. Rekhter, "BGP Extended Communities Attribute", RFC 4360, February20062006, <http://www.rfc-editor.org/info/rfc4360>. [RFC4456]T. Bates et. al.,Bates, T., Chen, E., and R. Chandra, "BGP Route Reflection: An Alternative to Full Mesh Internal BGP (IBGP)", RFC 4456, April20062006, <http://www.rfc-editor.org/info/rfc4456>. [RFC4684]P. Marques et. al.,Marques, P., Bonica, R., Fang, L., Martini, L., Raszuk, R., Patel, K., and J. Guichard, "Constrained Route Distribution for Border Gateway Protocol/MultiProtocol Label Switching (BGP/MPLS) Internet Protocol (IP) Virtual Private Networks (VPNs)", RFC 4684, November20062006, <http://www.rfc-editor.org/info/rfc4684>. [RFC4760] Bates, T.,Rekhter, Y.,Chandra, R.,and D.Katz, D., and Y. Rekhter, "Multiprotocol Extensions for BGP-4", RFC 4760, January2007.2007, <http://www.rfc-editor.org/info/rfc4760>. [RFC4761] Kompella, K., Ed., and Y. Rekhter,Y.,Ed., "Virtual Private LAN Service (VPLS) Using BGP for Auto-Discovery and Signaling", RFC 4761, January20072007, <http://www.rfc-editor.org/info/rfc4761>. [RFC4875] Aggarwal, R., Ed., Papadimitriou, D., Ed., and S. Yasukawa, Ed., "Extensions to Resource Reservation Protocol - Traffic Engineering (RSVP-TE) forPoint-to-MultipointPoint-to- Multipoint TE Label Switched Paths (LSPs)", RFC 4875, May20072007, <http://www.rfc-editor.org/info/rfc4875>. [RFC5036]"LDP Specification", LoaAndersson,et al., RFC 5036, October 2007L., Ed., Minei, I., Ed., and B. Thomas, Ed., "LDP Specification", RFC 5036, October 2007, <http://www.rfc-editor.org/info/rfc5036>. [RFC5331] Aggarwal, R., Rekhter, Y., and E. Rosen, "MPLS Upstream Label Assignment and Context-Specific Label Space",Rahul Aggarwal, et al.,RFC 5331, August20082008, <http://www.rfc-editor.org/info/rfc5331>. [RFC5332]"MPLS Multicast Encapsulations", T.Eckert,E.T., Rosen,R.E., Ed., Aggarwal, R., and Y. Rekhter, "MPLS Multicast Encapsulations", RFC 5332, August20082008, <http://www.rfc-editor.org/info/rfc5332>. [RFC6074] Rosen, E., Davie, B., Radoaca, V., and W. Luo, "Provisioning, Auto-Discovery, and Signaling in Layer 2 Virtual Private Networks (L2VPNs)", RFC 6074, January 2011, <http://www.rfc-editor.org/info/rfc6074>. [RFC6368] Marques, P., Raszuk, R., Patel, K., Kumaki, K., and T. Yamagata, "Internal BGP asPE-CE protocol", Pedro Marques, et al.,the Provider/Customer Edge Protocol for BGP/MPLS IP Virtual Private Networks (VPNs)", RFC 6368, September20112011, <http://www.rfc-editor.org/info/rfc6368>. [RFC6388] Wijnands, IJ., Ed., Minei, I., Ed., Kompella, K., and B. Thomas, "Label Distribution Protocol Extensions for Point-to-Multipoint and Multipoint-to-Multipoint Label Switched Paths", RFC 6388, November 2011, <http://www.rfc-editor.org/info/rfc6388>. [RFC6513] Rosen, E., Ed., and R. Aggarwal, Ed., "Multicast in MPLS/BGP IP VPNs",Eric Rosen, et al.,RFC 6513, February20122012, <http://www.rfc-editor.org/info/rfc6513>. [RFC6514] Aggarwal, R., Rosen, E., Morin, T., and Y. Rekhter, "BGP Encodings and Procedures for Multicast in MPLS/BGP IP VPNs",R. Aggarwal, E. Rosen, T. Morin, Y. Rekhter,RFC 6514, February2012 [RFC6074] "Provisioning, Auto-Discovery, and Signaling in Layer 2 Virtual Private Networks (L2VPNs)", E.2012, <http://www.rfc-editor.org/info/rfc6514>. [RFC6625] Rosen,B. Davie, V. Radoaca, W. Luo, RFC 6074, January 2011 [RFC6388] "Label Distribution Protocol Extensions for Point-to- Multipoint and Multipoint-to-Multipoint Label Switched Paths", Wijnands, IJ.,E., Ed.,Minei, I.,Rekhter, Y., Ed.,Kompella, K.,Hendrickx, W., andB. Thomas, RFC 6388, November 2011 [RFC6625]R. Qiu, "Wildcards in Multicast VPN Auto-Discovery Routes",Eric Rosen, et al.,RFC 6625, May20122012, <http://www.rfc-editor.org/info/rfc6625>. [RFC7117]"Multicast in VPLS", R.Aggarwal,Y.R., Ed., Kamite,L.Y., Fang, L., Rekhter, Y., and C. Kodeboniya, "Multicast in Virtual Private LAN Service (VPLS)", RFC 7117, February2014 [pmsi-registry] L.2014, <http://www.rfc-editor.org/info/rfc7117>. [RFC7385] Andersson,et al.,L. and G. Swallow, "IANAregistryRegistry forPMSIP-Multicast Service Interface (PMSI) Tunnel Typecode points", draft-ietf-l3vpn-pmsi-registry, work in progress 18.2.Code Points", RFC 7385, October 2014, <http://www.rfc-editor.org/info/rfc7385>. 17.2. Informative References[SEAMLESS-MPLS] "Seamless MPLS Architecture", N. Leymann et. al., draft-ietf-mpls-seamless-mpls, work in progress[GTM] Zhang, J, Giuliano, L, Rosen, E., Ed., Subramanian, K., Pacella, D., and J. Schiller, "Global Table Multicast with BGP-MVPN Procedures", Work in Proress, draft-ietf- bess-mvpn-global-table-mcast-00, November 2014. [RFC5920] Fang, L., Ed., "Security Framework for MPLS and GMPLS Networks",L. Fang, et al.,RFC 5920, July20102010, <http://www.rfc-editor.org/info/rfc5920>. [RFC7024] Jeng, H., Uttaro, J., Jalil, L., Decraene, B., Rekhter, Y., and R. Aggarwal, "Virtual Hub-and-Spoke in BGP/MPLS VPNs",Huajin Jeng et. al.,RFC 7024, October2013 19. Author's Address2013, <http://www.rfc-editor.org/info/rfc7024>. [SEAMLESS-MPLS] Leymann, N., Ed., Decraene, B., Filsfils, C., Konstantynowicz, M., Ed., and D. Steinberg, "Seamless MPLS Architecture", Work in Progress, draft-ietf-mpls-seamless-mpls-07, June 2014. Acknowledgements We would like to thank Loa Andersson and Qin Wu for their review and comments. Authors' Addresses Yakov Rekhter Juniper Networks 1194 North Mathilda Ave. Sunnyvale, CA 94089 United StatesEmail: yakov@juniper.netEric C Rosen Juniper Networks 10 Technology Park Drive Westford, MA 01886 United States EMail: erosen@juniper.net Rahul AggarwalEmail:EMail: raggarwa_1@yahoo.com Thomas MorinFrance Telecom R & DOrange 2, avenue Pierre-Marzin 22307 Lannion Cedex FranceEmail: thomas.morin@orange-ftgroup.comEMail: thomas.morin@orange.com Irene GrosclaudeFrance Telecom R & DOrange 2, avenue Pierre-Marzin 22307 Lannion Cedex FranceEmail: irene.grosclaude@orange-ftgroup.comEMail: irene.grosclaude@orange.com Nicolai Leymann Deutsche Telekom AG Winterfeldtstrasse 21 Berlin 10781 GermanyEmail:EMail: n.leymann@telekom.de Samir Saad AT&TEmail:EMail: samirsaad1@outlook.comEric C Rosen Juniper Networks 10 Technology Park Drive Westford, MA 01886 Email: erosen@juniper.net