Network Working Group Yakov RekhterInternetDraftEngineering Task Force (IETF) Y. Rekhter Request for Comments: 7442 Juniper NetworksIntended status:Category: Standards TrackExpires: May 2015 RahulR. Aggarwal ISSN: 2070-1721 ArktanNicolaiN. Leymann Deutsche TelekomWimW. Henderickx Alcatel-LucentQuintinQ. ZhaoHuawei RichardR. Li HuaweiNovember 28, 2014January 2015 CarryingPIM-SMProtocol Independent Multicast - Sparse Mode (PIM-SM) inASM modeAny-Source Multicast (ASM) Mode Trees over Multipoint LDP (mLDP) Abstract When IP multicast trees created by Protocol Independent Multicast - Sparse Mode (PIM-SM) in Any-Source Multicast (ASM) mode need to pass through an MPLS domain, it may be desirable to map such trees to Point-to-Multipoint Label Switched Paths (P2MP LSPs). This document describes how to accomplish this in the case where such P2MPmLDPLSPsdraft-ietf-mpls-pim-sm-over-mldp-03.txtare established using Label Distribution Protocol (LDP) Extensions for P2MP and Multipoint-to-Multipoint LSPs: Multipoint LDP (mLDP). 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/rfc7442. Copyright Notice Copyright (c)20142015 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.Abstract When IP multicast trees created by PIM-SM in Any Source Multicast (ASM) mode need to pass through an MPLS domain, it may be desirable to map such trees to Point-to-Multipoint Label Switched Paths. This document describes how to accomplish this in the case where such Point-to-Multipoint Label Switched Paths are established using Label Distribution Protocol Extensions for Point-to-Multipoint and Multipoint-to-Multipoint Label Switched Paths Multipoint LDP (mLDP).Table of Contents11. Introduction................................................. 3 1.1....................................................3 1.1. Specification of Requirements................................ 5 2..............................4 2. Mechanism 1 - Non-transitive Mapping of IP Multicast Shared Trees5 2.1....................................................4 2.1. Originating Source ActiveAuto-DiscoveryAuto-discovery Routes (Mechanism 1).. 5 2.2..............................................4 2.2. Receiving Source ActiveAuto-Discovery RouteAuto-discovery Routes by LSR.......... 6 2.3.......5 2.3. Handling(S, G, RPT-bit)(S,G,RPT-bit) State............................... 6 3...............................5 3. Mechanism 2 - Transitive Mapping of IP Multicast SharedTree ... 6 3.1 In-bandTrees ...6 3.1. In-Band Signaling for IP Multicast Shared Trees.............. 7 3.2............6 3.2. Originating Source ActiveAuto-DiscoveryAuto-discovery Routes (Mechanism 2).. 8 3.3..............................................7 3.3. Receiving Source ActiveAuto-Discovery Route ................. 9 3.4Auto-discovery Routes ..............8 3.4. Pruning Sources Off the Shared Tree.......................... 9 3.5........................8 3.5. More on Handling (S,G,RPT-bit) State......................... 10 4.......................9 4. IANA Considerations.......................................... 10 5.............................................9 5. Security Considerations...................................... 10 6 Acknowledgements ............................................. 10 7.........................................9 6. References .....................................................10 6.1. Normative References......................................... 11 8......................................10 6.2. Informative References....................................... 11 9....................................10 Acknowledgements ..................................................11 Authors' Addresses........................................... 11................................................11 1. Introduction [RFC6826] describes how to map Point-to-Multipoint Label Switched Paths (P2MP LSPs) created by mLDP [RFC6388] to multicast trees created byPIM-SMProtocol Independent Multicast - Sparse Mode (PIM-SM) in Source-Specific Multicast (SSM) mode [RFC4607]. This document describes how to map mLDP P2MP trees to multicast trees created by PIM-SM in Any-Source Multicast (ASM) mode. It describes two possible mechanisms for doing this. The first mechanism, described in Section 2, is OPTIONAL for implementations, but the second mechanism, described in Section 3, is REQUIRED for all implementations claiming conformance to this specification. Note that from a deployment point of view these two mechanisms are mutually exclusive. Thatisis, on the same network one could deploy either one of the mechanisms, but not both. The reader of this document is expected to be familiar with PIM-SM [RFC4601] and mLDP [RFC6388]. This document relies on the procedures in [RFC6826] to supportSource Trees. E.g.,source trees. For example, following these procedures a Label Switching Router (LSR) may initiate an mLDP Label Map with the Transit IPv4/IPv6 Source TLV for(S, G)(S,G) when receiving a PIM (S,G) Join. This document uses BGP Source Active auto-discovery routes, as defined in [RFC6514]. For the sake of brevity in the rest ofthe documentthis document, we'll refer to these routes as just "Source Activeauto- discoveryauto-discovery routes". Consider a deployment scenario where the service provider has provisioned the network in such a way that the Rendezvous Point (RP) for a particular ASM group G is always between the receivers and the sources. If the network is provisioned in this manner, the ingressPEProvider Edge (PE) for (S,G) is always the same as the ingress PE for the RP, and thus the Source Active auto-discovery (A-D) routes are never needed. If it is known a priori that the network is provisioned in this manner, mLDP in-band signaling can be supported using a different set of procedures, as specified in[draft-wijnands].[RFC7438]. A service provider will provision the PE routerseither to use [draft-wijnands] procedures orto use either the proceduresofin [RFC7438] or those described in this document. Like [RFC6826], each IP multicast tree is mapped one-to-one to a P2MP LSP in the MPLS network. This type of service works well if the number of LSPs that are created is under the control of the MPLS network operator, or if the number of LSPs for a particular service is known to be limited. It is to be noted that the existing BGP Multicast VPN (MVPN) procedures [RFC6514] can be used to map Internet IP multicast trees to P2MP LSPs. These procedures would accomplish this for IP multicast trees created by PIM-SM in SSMmodemode, as well as for IP multicast trees created by PIM-SM in ASM mode. Furthermore, these procedures would also support the ability to aggregate multiple IP multicast trees to one P2MP LSP in the MPLS network. The details of this particular approach are out of scopeoffor this document. This document assumes that a given LSR may have someof itsinterfaces that are IP multicast capable, while other interfacesbeingwould be MPLS capable. 1.1. Specification of Requirements The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT", "SHOULD", "SHOULD NOT", "RECOMMENDED", "MAY", and "OPTIONAL" in this document are to be interpreted as described in RFC 2119 [RFC2119]. 2. Mechanism 1 - Non-transitive Mapping of IP Multicast Shared Trees This mechanism does not transit IP multicast shared trees over the MPLS network. Therefore, when an LSR creates(*, G)(*,G) state (as a result of receiving PIM messages on one of its IP multicast interfaces), the LSR does not propagate this state in mLDP. 2.1. Originating Source ActiveAuto-DiscoveryAuto-discovery Routes (Mechanism 1) Whenever (as a result of receiving either PIM Register orMSDPMulticast Source Discovery Protocol (MSDP) messages) an RP discovers a new multicast source, the RP SHOULD originate a Source Active auto-discovery route. The route carries a single MCAST-VPN Network Layer Reachability Information (NLRI)[RFC6514][RFC6514], constructed as follows: + The Route Distinguisher (RD) in this NLRI is set to 0. + The Multicast Source field is set to S. This could be either an IPv4 or an IPv6 address. The Multicast Source Length field is set appropriately to reflect the address type. + The Multicast Group field is set to G. This could be either an IPv4 or an IPv6 address. The Multicast Group Length field is set appropriately to reflect this address type. To constrain distribution of the Source Active auto-discovery route to theASAutonomous System (AS) of the advertisingRPRP, this route SHOULD carry the NO_EXPORT Community ([RFC1997]). Using the normal BGPproceduresprocedures, the Source Active auto-discovery route is propagated to all other LSRs within the AS. Whenever the RP discovers that the source is no longer active, the RP MUST withdraw the Source Active auto-discovery route if such a route was previously advertised by the RP. 2.2. Receiving Source ActiveAuto-Discovery RouteAuto-discovery Routes by LSR Consider an LSR that has some of its interfaces capable of IP multicast and some capable of MPLS multicast.WhenWhen, as a result of receiving PIM messages on one of its IP multicastinterfacesinterfaces, an LSR 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 LSR MUST check to see if it has any Source Active auto-discovery routes for that G. If there is such a route, S of that route is reachable via an MPLS interface, and the LSR does not have(S, G)(S,G) state in its TIB for(S, G)(S,G) carried in the route, then the LSR originates the mLDP Label Map with the Transit IPv4/IPv6 Source TLV carrying (S,G), as specified in [RFC6826]. When an LSR receives a new Source Active auto-discovery route, the LSR MUST check to see if its TIB contains a(*, G)(*,G) entry with the same G as that carried in the Source Active auto-discovery route. If such an entry is found, S is reachable via an MPLS interface, and the LSR does not have(S, G)(S,G) state in its TIB for(S, G)(S,G) carried in the route, then the LSR originates an mLDP Label Map with the Transit IPv4/IPv6 Source TLV carrying (S,G), as specified in [RFC6826]. 2.3. Handling(S, G, RPT-bit)(S,G,RPT-bit) StateCreationThe creation and deletion of(S, G, RPT-bit)(S,G,RPT-bit) PIM state ([RFC4601]) on an LSR that resulted from receiving PIM messages on one of its IP multicast interfacesdoesdo not result in any mLDP and/or BGP actions by the LSR. 3. Mechanism 2 - Transitive Mapping of IP Multicast SharedTreeTrees This mechanism enables transit of IP multicast shared trees over the MPLS network. Therefore, when an LSR creates(*, G)(*,G) state as a result of receiving PIM messages on one of its IP multicast interfaces, the LSR propagates this state in mLDP, as described below. Note that in the deployment scenarioswherewhere, for a givenGG, none of the PEs originate an(S, G)(S,G) mLDP Label Map with the Transit IPv4/IPv6 Source TLV, no Source Active auto-discovery routes will be used. One other scenario where no Source Active auto-discovery routes will be used is described insection "OriginatingSection 3.2 ("Originating Source ActiveAuto- DiscoveryAuto-discovery Routes (Mechanism2)".2)"). In all of thesescenariosscenarios, the only part of Mechanism 2 that is used is the in-band signaling for IP Multicast Shared Trees, as described in the next section. 3.1.In-bandIn-Band Signaling for IP Multicast Shared Trees To provide support for in-band mLDP signaling of IP multicast sharedtreestrees, this document defines two new mLDP TLVs: the Transit IPv4 Shared TreeTLV,TLV and the Transit IPv6 Shared Tree TLV. These two TLVs have exactly the same encoding/format as the IPv4/IPv6 Source Tree TLVs defined in [RFC6826], except that instead of the Source field they have an RP field that carries the address of the RP, as follows: Transit IPv4 Shared Tree TLV: 0 1 2 3 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | Type | Length | RP | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | | Group | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ Type:TBD1 (to be assigned by IANA).11 Length: 8 RP: IPv4 RP address, 4 octets. Group: IPv4 multicast group address, 4 octets. Transit IPv6 Shared Tree TLV: 0 1 2 3 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | Type | Length | RP ~ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ ~ | Group ~ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ ~ | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ Type:TBD2 (to be assigned by IANA).12 Length: 32 RP: IPv6 RP address, 16 octets. Group: IPv6 multicast group address, 16 octets. Procedures for in-band signaling for IP multicast shared trees with mLDP follow the same procedures as those for in-band signaling for IP multicast sourcetreestrees, as specified in [RFC6826], except that while the latter signals (S,G) state using Transit IPv4/IPv6 Source TLVs, the former signals (*,G) state using Transit IPv4/IPv6 Shared Tree TLVs. 3.2. Originating Source ActiveAuto-DiscoveryAuto-discovery Routes (Mechanism 2) Consider an LSR that has some of its interfaces capable of IP multicast and some capable of MPLS multicast. Whenever such an LSR creates an(S, G)(S,G) state as a result of receiving an mLDP Label Map with the Transit IPv4/IPv6 Source TLV for(S, G)(S,G), the LSR MUST originate a Source Active auto-discovery route if all of the following are true: + S is reachable via one of theIP multicast capableIP-multicast-capable interfaces, + the LSR determines that G is in the PIM-SM in ASM mode range, and + the LSR does not havean (*, G)a (*,G) state with one of theIP multicastIP-multicast- capable interfaces as an incoming interface (iif) for that state. The route carries a single MCAST-VPNNLRINLRI, constructed as follows: + The RD in this NLRI is set to 0. + The Multicast Source field is set to S. The Multicast Source Length field is set appropriately to reflect this address type. + The Multicast Group field is set to G. The Multicast Group Length field is set appropriately to reflect this address type. To constrain distribution of the Source Active auto-discovery route to the AS of the advertisingLSRLSR, this route SHOULD carry the NO_EXPORT Community ([RFC1997]). Using the normal BGPproceduresprocedures, the Source Active auto-discovery route is propagated to all other LSRs within the AS. Whenever the LSR receiving an mLDP Label Map with the Transit IPv4/IPv6 Source TLV for (S,G) deletes the (S,G) state that was previously created, the LSR that deletes the state MUST also withdraw the Source Active auto-discovery route, if such a route was advertised when the state was created. Note that whenever an LSR creates an (S,G) state as a result of receiving an mLDP Label Map with the Transit IPv4/IPv6 Source TLV for (S,G) with S reachable via one of theIP multicast capableIP-multicast-capable interfaces, and the LSR already has a (*,G) state with the RP reachable via one of theIP multicast capableIP-multicast-capable interfaces as a result of receiving an mLDP Label Map with the Transit IPv4/IPv6 Shared Tree TLV for (*,G), the LSR does not originate a Source Activeauto- discoveryauto-discovery route. 3.3. Receiving Source ActiveAuto-Discovery RouteAuto-discovery Routes Procedures for receiving Source ActiveAuto-Discoveryauto-discovery routes are the same aswiththose for Mechanism 1. 3.4. Pruning Sources Off the Shared TreeIfIf, after receiving a new Source Active auto-discovery route for(S,G)(S,G), the LSR 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) at least one of the MPLS interfaces is in the outgoing interfacelist(oif) list for that entry, and (d) the LSR does not originate an mLDP Label Mapping message for (S,G) with the Transit IPv4/IPv6 Source TLV, then the LSR MUST transition the (S,G,RPT-bit) downstream state to the Prune state.(Conceptually(Conceptually, the PIM state machine on the LSR will act "as if" it had received Prune(S,G,rpt) on one of its MPLS interfaces, without actually having received one.) Depending on the (S,G,RPT-bit) state on the iif, this may result in the LSR using PIM procedures to prune S off the Shared (*,G) tree. The LSR MUST keep the (S,G,RPT-bit) downstream state machine in the Prune state for as long as (a) the outgoing interfacelist(oif) list for(*, G)(*,G) contains one of the MPLS interfaces,and(b) the LSR has at least one Source Active auto-discovery route for (S,G), and (c) the LSR does not originate the mLDP Label Mapping message for (S,G) with the Transit IPv4/IPv6 Source TLV. Onceeitherone or more of these conditions become no longer valid, the LSR MUST transition the (S,G,RPT-bit) downstream state machine to the NoInfo state. Note that except for the scenario described in the first paragraph of this section, it is sufficient to rely solely on the PIM procedures on the LSR to ensure the correct behavior when pruning sources off the shared tree. 3.5. More on Handling (S,G,RPT-bit) StateCreationThe creation and deletion of (S,G,RPT-bit) state onaan LSR that resulted from receiving PIM messages on one of its IP multicast interfacesdoesdo not result in any mLDP and/or BGP actions by the LSR. 4. IANA Considerations IANA maintains a registry called "Label Distribution Protocol (LDP) Parameters" with a subregistry called "LDP MP Opaque Value Element basic type". IANAis requested to allocatehas allocated two newvaluesvalues, as follows: Value | Name | Reference ------+------------------------------+------------TBD111 | Transit IPv4 Shared Tree TLV |[This.I-D] TBD2[RFC7442] 12 | Transit IPv6 Shared Tree TLV |[This.I-D] IANA is requested to assign consecutive values.[RFC7442] 5. Security Considerations All of the security considerations for mLDP ([RFC6388]) apply here. From the security considerations point ofviewview, the use of Shared Tree TLVs is no different than the use of Source TLVs [RFC6826]. 6.Acknowledgements Use of Source Active auto-discovery routes was borrowed from [RFC6514]. Some text in this document was borrowed from [RFC6514]. Some of the text in this document was borrowed from [RFC6826]. We would like to acknowledge Arkadiy Gulko for his review and comments. We would also like to thank Xuxiaohu, Gregory Mirsky, Rajiv Asati, and Adrian Farrell for their review and comments. 7.References 6.1. Normative References [RFC1997]R.Chandra,P.R., Traina, P., and T. Li, "BGP Communities Attribute",RFC1997,RFC 1997, August1996.1996, <http://www.rfc-editor.org/info/rfc1997>. [RFC2119] Bradner, S., "Key words for use in RFCs to Indicate RequirementLevels.", Bradner, RFC2119,Levels", BCP 14, RFC 2119, March1997.1997, <http://www.rfc-editor.org/info/rfc2119>. [RFC4601] Fenner, B., Handley, M., Holbrook, H., and I. Kouvelas, "Protocol Independent Multicast - Sparse Mode (PIM-SM): Protocol Specification (Revised)", RFC 4601, August2006.2006, <http://www.rfc-editor.org/info/rfc4601>. [RFC6388] Wijnands, IJ., Ed., Minei, I., Ed., Kompella, K., and B. Thomas, "Label Distribution Protocol Extensions forPoint-to-MultipointPoint- to-Multipoint and Multipoint-to-Multipoint Label Switched Paths",RFC6388,RFC 6388, November2011.2011, <http://www.rfc-editor.org/info/rfc6388>. [RFC6514] Aggarwal, R., Rosen, E., Morin, T., and Y. Rekhter, "BGP Encodings and Procedures for Multicast in MPLS/BGP IP VPNs",R. Aggarwal et al., RFC6514,RFC 6514, February20122012, <http://www.rfc-editor.org/info/rfc6514>. [RFC6826]"In-band signalingWijnands, IJ., Ed., Eckert, T., Leymann, N., and M. Napierala, "Multipoint LDP In-Band Signaling forPoint-to-MultipointPoint-to- Multipoint andMultipoint- to-MultipointMultipoint-to-Multipoint Label Switched Paths",I. Wijnands et al., RFC6826,RFC 6826, January2013 8.2013, <http://www.rfc-editor.org/info/rfc6826>. 6.2. Informative References [RFC4607] Holbrook, H. and B. Cain, "Source-Specific Multicast for IP", RFC 4607, August2006. [draft-wijnands] Wijnands IJ, et. al., "mLDP2006, <http://www.rfc-editor.org/ info/rfc4607>. [RFC7438] Wijnands, IJ., Ed., Rosen, E., Gulko, A., Joorde, U., and J. Tantsura, "Multipoint LDP (mLDP) In-Band Signaling with Wildcards",draft-ietf-mpls-mldp-in-band-wildcard-encoding, workRFC 7438, January 2015, <http://www.rfc-editor.org/info/rfc7438>. Acknowledgements The use of Source Active auto-discovery routes was borrowed from [RFC6514]. Some text inprogress 9.this document was borrowed from [RFC6514]. Some of the text in this document was borrowed from [RFC6826]. We would like to acknowledge Arkadiy Gulko for his review and comments. We would also like to thank Xuxiaohu, Gregory Mirsky, Rajiv Asati, and Adrian Farrel for their review and comments. Authors' Addresses Yakov Rekhter Juniper Networks, Inc.e-mail:EMail: yakov@juniper.net Rahul Aggarwale-mail:Arktan EMail: raggarwa_1@yahoo.com Nicolai Leymann Deutsche Telekom Winterfeldtstrasse 21 Berlin 10781 Germanye-mail: nicolai.leymann@t-systems.comEMail: N.Leymann@telekom.de Wim Henderickx Alcatel-LucentEmail:EMail: wim.henderickx@alcatel-lucent.com Quintin Zhao HuaweiEmail:EMail: quintin.zhao@huawei.com Richard Li HuaweiEmail:EMail: renwei.li@huawei.com