draft-ietf-mpls-pim-sm-over-mldp-01.txt   draft-ietf-mpls-pim-sm-over-mldp-02.txt 
Network Working Group Yakov Rekhter Network Working Group Yakov Rekhter
Internet Draft Juniper Networks Internet Draft Juniper Networks
Intended status: Standards Track Intended status: Standards Track
Expires: March 2015 Rahul Aggarwal Expires: April 2015 Rahul Aggarwal
Arktan Arktan
Nicolai Leymann Nicolai Leymann
Deutsche Telekom Deutsche Telekom
Wim Henderickx Wim Henderickx
Alcatel-Lucent Alcatel-Lucent
Quintin Zhao Quintin Zhao
Huawei Huawei
Richard Li Richard Li
Huawei Huawei
September 8 2014 October 20, 2014
Carrying PIM-SM in ASM mode Trees over P2MP mLDP LSPs Carrying PIM-SM in ASM mode Trees over P2MP mLDP LSPs
draft-ietf-mpls-pim-sm-over-mldp-01.txt draft-ietf-mpls-pim-sm-over-mldp-02.txt
Status of this Memo Status of this Memo
This Internet-Draft is submitted to IETF in full conformance with the This Internet-Draft is submitted to IETF in full conformance with the
provisions of BCP 78 and BCP 79. provisions of BCP 78 and BCP 79.
Internet-Drafts are working documents of the Internet Engineering Internet-Drafts are working documents of the Internet Engineering
Task Force (IETF), its areas, and its working groups. Note that other Task Force (IETF), its areas, and its working groups. Note that other
groups may also distribute working documents as Internet-Drafts. groups may also distribute working documents as Internet-Drafts.
skipping to change at page 2, line 7 skipping to change at page 2, line 7
material or to cite them other than as "work in progress." material or to cite them other than as "work in progress."
The list of current Internet-Drafts can be accessed at The list of current Internet-Drafts can be accessed at
http://www.ietf.org/ietf/1id-abstracts.txt. http://www.ietf.org/ietf/1id-abstracts.txt.
The list of Internet-Draft Shadow Directories can be accessed at The list of Internet-Draft Shadow Directories can be accessed at
http://www.ietf.org/shadow.html. http://www.ietf.org/shadow.html.
Copyright Notice Copyright Notice
Copyright (c) 2015 IETF Trust and the persons identified as the Copyright (c) 2014 IETF Trust and the persons identified as the
document authors. All rights reserved. document authors. All rights reserved.
This document is subject to BCP 78 and the IETF Trust's Legal This document is subject to BCP 78 and the IETF Trust's Legal
Provisions Relating to IETF Documents Provisions Relating to IETF Documents
(http://trustee.ietf.org/license-info) in effect on the date of (http://trustee.ietf.org/license-info) in effect on the date of
publication of this document. Please review these documents publication of this document. Please review these documents
carefully, as they describe your rights and restrictions with respect carefully, as they describe your rights and restrictions with respect
to this document. Code Components extracted from this document must to this document. Code Components extracted from this document must
include Simplified BSD License text as described in Section 4.e of include Simplified BSD License text as described in Section 4.e of
the Trust Legal Provisions and are provided without warranty as the Trust Legal Provisions and are provided without warranty as
described in the Simplified BSD License. described in the Simplified BSD License.
Abstract Abstract
When IP multicast trees created by PIM-SM in Any Source Multicast 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 (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 to map such trees to Point-to-Multipoint Label Switched Paths. This
document describes how to accomplish this in the case where such document describes how to accomplish this in the case where such
Point-to-Multipoint Label Switched Paths are established using mLDP. 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 Contents Table of Contents
1 Specification of Requirements ......................... 3 1 Introduction ................................................. 3
2 Introduction .......................................... 3 1.1 Specification of Requirements ................................ 5
3 Option 1 - Non-transitive mapping of IP multicast shared tree 5 2 Mechanism 1 - Non-transitive Mapping of IP Multicast Shared Trees 5
3.1 Originating Source Active auto-discovery routes (Option 1) 5 2.1 Originating Source Active Auto-Discovery Routes (Mechanism 1) .. 5
3.2 Receiving BGP Source Active auto-discovery route by LSR ...6 2.2 Receiving BGP Source Active Auto-Discovery Route by LSR ....... 6
3.3 Handling (S, G, RPT-bit) state ........................ 6 2.3 Handling (S, G, RPT-bit) State ............................... 6
4 Option 2 - Transitive mapping of IP multicast shared tree .6 3 Mechanism 2 - Transitive Mapping of IP Multicast Shared Tree ... 6
4.1 In-band signaling for IP Multicast Shared Tree ........ 7 3.1 In-band Signaling for IP Multicast Shared Trees .............. 7
4.2 Originating Source Active auto-discovery routes (Option 2) 8 3.2 Originating Source Active Auto-Discovery Routes (Mechanism 2) .. 8
4.3 Receiving BGP Source Active auto-discovery route ...... 9 3.3 Receiving BGP Source Active Auto-Discovery Route ............. 9
4.4 Pruning Sources off the Shared Tree ................... 9 3.4 Pruning Sources Off the Shared Tree .......................... 9
4.5 More on handling (S,G,RPT-bit) state .................. 10 3.5 More on Handling (S,G,RPT-bit) State ......................... 10
5 IANA Considerations ................................... 10 4 IANA Considerations .......................................... 10
6 Security Considerations ............................... 10 5 Security Considerations ...................................... 10
7 Acknowledgements ...................................... 10 6 Acknowledgements ............................................. 10
8 Normative References .................................. 11 7 Normative References ......................................... 11
9 Informative References ................................ 11 8 Informative References ....................................... 11
10 Authors' Addresses .................................... 11 9 Authors' Addresses ........................................... 11
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. Introduction 1. Introduction
[RFC6826] describes how to map Point-to-Multipoint Label Switched [RFC6826] describes how to map Point-to-Multipoint Label Switched
Paths (P2MP LSPs) created by mLDP [mLDP] to multicast trees created Paths (P2MP LSPs) created by mLDP [RFC6388] to multicast trees
by PIM-SM in SSM mode [RFC4607]. This document describes how to map created by PIM-SM in Source-Specific Multicast (SSM) mode [RFC4607].
mLDP P2MP trees to multicast trees created by PIM-SM in ASM mode. It This document describes how to map mLDP P2MP trees to multicast trees
describes two possible options for doing this. created by PIM-SM in Any-Source Multicast (ASM) mode. It describes
two possible mechanisms for doing this.
An implementation MAY support Option 1, as described in Section 3 of The first mechanism, described in Section 3, is optional for
this document. An implementation MUST support Option 2, as described implementations, but the second mechanism, described in Section 4, is
in Section 4 of this document. mandatory for all implementations claiming conformance to this
specification.
Note that from a deployment point of view these two options are Note that from a deployment point of view these two mechanisms are
mutually exclusive. That is on the same network one could either mutually exclusive. That is on the same network one could deploy
deploy Option 1, or Option 2, but not both. either one of the mechanisms, but not both.
The reader of this document is expected to be familiar with PIM-SM The reader of this document is expected to be familiar with PIM-SM
[RFC4601] and mLDP [mLDP]. [RFC4601] and mLDP [RFC6388].
This document relies on the procedures in [RFC6826] to support Source This document relies on the procedures in [RFC6826] to support Source
Trees. E.g., following these procedures an LSR may initiate a mLDP Trees. E.g., following these procedures a Label Switching Router
Label Map with the Transit IPv4/IPv6 Source TLV for (S, G) when (LSR) may initiate an mLDP Label Map with the Transit IPv4/IPv6
receiving PIM (S,G) Join. Source TLV for (S, G) when receiving a PIM (S,G) Join.
This document uses BGP Source Active auto-discovery routes, as This document uses BGP Source Active auto-discovery routes, as
defined in [MVPN-BGP]. defined in [RFC6514].
In a deployment scenario where the service provider has provisioned In a deployment scenario where the service provider has provisioned
the network in such a way that the RP for a particular ASM group G is the network in such a way that the Rendezvous Point (RP) for a
always between the receivers and the sources. If the network is particular ASM group G is always between the receivers and the
provisioned in this manner, the ingress PE for (S,G) is always the sources. If the network is provisioned in this manner, the ingress PE
same as the ingress PE for the RP, and thus the Source Active A-D for (S,G) is always the same as the ingress PE for the RP, and thus
routes are never needed. If it is known a priori that the network is the Source Active auto-discovery (A-D) routes are never needed. If it
provisioned in this manner, mLDP in-band signaling can be supported is known a priori that the network is provisioned in this manner,
using a different set of procedures, as specified in [draft- mLDP in-band signaling can be supported using a different set of
wijnands]. A service provider will provision the PE routers either procedures, as specified in [draft-wijnands]. A service provider will
to use [draft-wijnands] procedures or to use the procedures of this provision the PE routers either to use [draft-wijnands] procedures or
document. to use the procedures of this document.
Like [RFC6826], each IP multicast tree is mapped one-to-one to a P2MP 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 LSP in the MPLS network. This type of service works well if the
number of LSPs that are created is under control of the MPLS network number of LSPs that are created is under control of the MPLS network
operator, or if the number of LSPs for a particular service are known operator, or if the number of LSPs for a particular service is known
to be limited in number. to be limited.
It is to be noted that the existing BGP MVPN [MVPN-BGP] procedures It is to be noted that the existing BGP Multicast VPN (MVPN)
may be used to map Internet IP multicast trees to P2MP LSPs. These procedures [RFC6514] can be used to map Internet IP multicast trees
procedures would accomplish this for IP multicast trees created by to P2MP LSPs. These procedures would accomplish this for IP
PIM-SM in SSM mode as well as for IP multicast trees created by PIM- multicast trees created by PIM-SM in SSM mode as well as for IP
SM in ASM mode. Furthermore, these procedures would also support the multicast trees created by PIM-SM in ASM mode. Furthermore, these
ability to aggregate multiple IP multicast trees to one P2MP LSP in procedures would also support the ability to aggregate multiple IP
the MPLS network. The details of this particular approach are out of multicast trees to one P2MP LSP in the MPLS network. The details of
scope of this document. this particular approach are out of scope of this document.
This document assumes that a given LSR may have some of its This document assumes that a given LSR may have some of its
interfaces IP multicast capable, while other interfaces being MPLS interfaces IP multicast capable, while other interfaces being MPLS
capable. capable.
3. Option 1 - Non-transitive mapping of IP multicast shared tree 1.1. Specification of Requirements
This option does not transit IP multicast shared trees over the MPLS The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT",
network. Therefore, when an LSR creates (*, G) state (as a result of "SHOULD", "SHOULD NOT", "RECOMMENDED", "MAY", and "OPTIONAL" in this
receiving PIM messages on one of its IP multicast interfaces), the document are to be interpreted as described in RFC 2119 [RFC2119].
LSR does not propagate this state in mLDP.
3.1. Originating Source Active auto-discovery routes (Option 1) 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) 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 Active Auto-Discovery Routes (Mechanism 1)
Whenever (as a result of receiving either PIM Register or MSDP Whenever (as a result of receiving either PIM Register or MSDP
messages) a Rendezvous Point (RP) discovers a new multicast source, messages) an RP discovers a new multicast source, the RP SHOULD
the RP SHOULD originate a BGP Source Active auto-discovery route. originate a BGP Source Active auto-discovery route. The route carries
The route carries a single MCAST-VPN NLRI [MVPN-BGP] constructed as a single MCAST-VPN Network Layer Reachability Information (NLRI)
follows: [RFC6514] constructed as follows:
+ The Route Distinguisher (RD) in this NLRI is set to 0. + The Route Distinguisher (RD) in this NLRI is set to 0.
+ The Multicast Source field MUST be set to S. This could be either + The Multicast Source field is set to S. This could be either an
an IPv4 or an IPv6 address. The Multicast Source Length field is IPv4 or an IPv6 address. The Multicast Source Length field is set
set appropriately to reflect this. appropriately to reflect the address type.
+ The Multicast Group field MUST be set to G. This could be either + The Multicast Group field is set to G. This could be either an
an IPv4 or an IPv6 address. The Multicast Group Length field is IPv4 or an IPv6 address. The Multicast Group Length field is set
set appropriately to reflect this. appropriately to reflect this address type.
To constrain distribution of the Source Active auto-discovery route To constrain distribution of the Source Active auto-discovery route
to the AS of the advertising RP this route SHOULD carry the NO_EXPORT to the AS of the advertising RP this route SHOULD carry the NO_EXPORT
Community ([RFC1997]). Community ([RFC1997]).
Using the normal BGP procedures the Source Active auto-discovery Using the normal BGP procedures the Source Active auto-discovery
route is propagated to all other LSRs within the AS. route is propagated to all other LSRs within the AS.
Whenever the RP discovers that the source is no longer active, the RP 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 MUST withdraw the Source Active auto-discovery route if such a route
was previously advertised by the RP. was previously advertised by the RP.
3.2. Receiving BGP Source Active auto-discovery route by LSR 2.2. Receiving BGP Source Active Auto-Discovery Route by LSR
Consider an LSR that has some of its interfaces capable of IP Consider an LSR that has some of its interfaces capable of IP
multicast and some capable of MPLS multicast. multicast and some capable of MPLS multicast.
When as a result of receiving PIM messages on one of its IP multicast When as a result of receiving PIM messages on one of its IP multicast
interfaces such LSR creates in its Tree Information Base (TIB) a new interfaces an LSR creates in its Tree Information Base (TIB) a new
(*, G) entry with a non-empty outgoing interface list that contains (*, G) entry with a non-empty outgoing interface list that contains
one or more IP multicast interfaces, the LSR MUST check if it has any one or more IP multicast interfaces, the LSR MUST check if it has any
Source Active auto-discovery routes for that G. If there is such a 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 route, S of that route is reachable via an MPLS interface, and the
LSR does not have (S, G) state in its TIB for (S, G) carried in the LSR does not have (S, G) state in its TIB for (S, G) carried in the
route, then the LSR originates the mLDP Label Map with the Transit route, then the LSR originates the mLDP Label Map with the Transit
IPv4/IPv6 Source TLV carrying (S,G), as specified in [RFC6826]. IPv4/IPv6 Source TLV carrying (S,G), as specified in [RFC6826].
When an LSR receives a new Source Active auto-discovery route, the When an LSR receives a new Source Active auto-discovery route, the
LSR MUST check if its TIB contains an (*, G) entry with the same G as LSR MUST check if its TIB contains a (*, G) entry with the same G as
carried in the Source Active auto-discovery route. If such an entry 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 is found, S is reachable via an MPLS interface, and the LSR does not
have (S, G) state in its TIB for (S, G) carried in the route, then have (S, G) state in its TIB for (S, G) carried in the route, then
the LSR originates an mLDP Label Map with the Transit IPv4/IPv6 the LSR originates an mLDP Label Map with the Transit IPv4/IPv6
Source TLV carrying (S,G), as specified in [RFC6826]. Source TLV carrying (S,G), as specified in [RFC6826].
3.3. Handling (S, G, RPT-bit) state 2.3. Handling (S, G, RPT-bit) State
Creation and deletion of (S, G, RPT-bit) PIM state ([RFC4601]) on a Creation and deletion of (S, G, RPT-bit) PIM state ([RFC4601]) on an
LSR that resulted from receiving PIM messages on one of its IP LSR that resulted from receiving PIM messages on one of its IP
multicast interfaces does not result in any mLDP and/or BGP actions multicast interfaces does not result in any mLDP and/or BGP actions
by the LSR. by the LSR.
4. Option 2 - Transitive mapping of IP multicast shared tree 3. Mechanism 2 - Transitive Mapping of IP Multicast Shared Tree
This option enables transit of IP multicast shared trees over the This mechanism enables transit of IP multicast shared trees over the
MPLS network. Therefore, when an LSR creates (*, G) state as a result MPLS network. Therefore, when an LSR creates (*, G) state as a result
of receiving PIM messages on one of its IP multicast interfaces, the of receiving PIM messages on one of its IP multicast interfaces, the
LSR does propagate this state in mLDP, as described below. LSR propagates this state in mLDP, as described below.
Note that in the deployment scenarios where for a given G none of the Note that in the deployment scenarios where for a given G none of the
PEs originate an (S, G) mLDP Label Map with the Transit IPv4/IPv6 PEs originate an (S, G) mLDP Label Map with the Transit IPv4/IPv6
Source TLV, no Source Active auto-discovery routes will be used. One Source TLV, no Source Active auto-discovery routes will be used. One
other scenario where no Source Active auto-discovery routes will be other scenario where no Source Active auto-discovery routes will be
used is described in section "Originating Source Active auto- used is described in section "Originating Source Active Auto-
discovery routes (Option 2)". In all these scenarios the only part of Discovery Routes (Mechanism 2)". In all these scenarios the only part
Option 2 that will be used is the in-band signaling for IP Multicast of Mechanism 2 that is used is the in-band signaling for IP Multicast
Shared Tree, as described in the next section. Shared Trees, as described in the next section.
4.1. In-band signaling for IP Multicast Shared Tree 3.1. In-band Signaling for IP Multicast Shared Trees
To provide support for in-band mLDP signaling of IP multicast shared To provide support for in-band mLDP signaling of IP multicast shared
trees this document defines two new mLDP TLVs: Transit IPv4 Shared trees this document defines two new mLDP TLVs: Transit IPv4 Shared
Tree TLV, and Transit IPv6 Shared Tree TLV. Tree TLV, and Transit IPv6 Shared Tree TLV.
These two TLVs have exactly the same encoding/format as the IPv4/IPv6 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 Tree TLVs defined in [RFC6826], except that instead of the
Source field they have the RP field, and this field carries the Source field they have an RP field that carries the address of the
address of the RP, as follows: RP, as follows:
Transit IPv4 Shared Tree TLV: Transit IPv4 Shared Tree TLV:
0 1 2 3 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 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 | Type | Length | RP |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Group | | Group |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| | |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
Type: TBD (to be assigned by IANA). Type: TBD1 (to be assigned by IANA).
Length: 8 Length: 8
RP: IPv4 RP address, 4 octets. RP: IPv4 RP address, 4 octets.
Group: IPv4 multicast group address, 4 octets. Group: IPv4 multicast group address, 4 octets.
Transit IPv6 Shared Tree TLV: Transit IPv6 Shared Tree TLV:
0 1 2 3 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 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 ~ | Type | Length | RP ~
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
~ | Group ~ ~ | Group ~
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
~ | ~ |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
Type: TBD (to be assigned by IANA). Type: TBD2 (to be assigned by IANA).
Length: 32 Length: 32
RP: IPv6 RP address, 16 octets. RP: IPv6 RP address, 16 octets.
Group: IPv6 multicast group address, 16 octets. Group: IPv6 multicast group address, 16 octets.
Procedures for in-band signaling for IP multicast shared trees with Procedures for in-band signaling for IP multicast shared trees with
mLDP follow the same procedures as for in-band signaling for IP mLDP follow the same procedures as for in-band signaling for IP
multicast source trees specified in [RFC6826], except that while the multicast source trees specified in [RFC6826], except that while the
latter signals (S,G) state using Transit IPv4/IPv6 Source TLVs, the latter signals (S,G) state using Transit IPv4/IPv6 Source TLVs, the
former signals (*,G) state using Transit IPv4/IPv6 Shared Tree TLVs. former signals (*,G) state using Transit IPv4/IPv6 Shared Tree TLVs.
4.2. Originating Source Active auto-discovery routes (Option 2) 3.2. Originating Source Active Auto-Discovery Routes (Mechanism 2)
Consider an LSR that has some of its interfaces capable of IP Consider an LSR that has some of its interfaces capable of IP
multicast and some capable of MPLS multicast. multicast and some capable of MPLS multicast.
Whenever such LSR creates an (S, G) state as a result of receiving an Whenever such an LSR creates an (S, G) state as a result of receiving
mLDP Label Map with the Transit IPv4/IPv6 Source TLV for (S, G), if an mLDP Label Map with the Transit IPv4/IPv6 Source TLV for (S, G)
the LSR MUST originate a BGP Source Active auto-discovery route if
all of the following are true: all of the following are true:
+ S is reachable via one of the IP multicast capable interfaces, + S is reachable via one of the IP multicast capable interfaces,
+ the LSR determines that G is in the PIM-SM in ASM mode range, and + the LSR determines that G is in the PIM-SM in ASM mode range, and
+ the LSR does not have an (*, G) state with one of the IP + the LSR does not have an (*, G) state with one of the IP
multicast capable interfaces as an incoming interface (iif) for multicast capable interfaces as an incoming interface (iif) for
that state that state.
the LSR MUST originate a BGP Source Active auto-discovery route.
The route carries a single MCAST-VPN NLRI constructed as follows: The route carries a single MCAST-VPN NLRI constructed as follows:
+ The RD in this NLRI is set to 0. + The RD in this NLRI is set to 0.
+ The Multicast Source field MUST be set to S. The Multicast Source + The Multicast Source field is set to S. The Multicast Source
Length field is set appropriately to reflect this. Length field is set appropriately to reflect this address type.
+ The Multicast Group field MUST be set to G. The Multicast Group + The Multicast Group field is set to G. The Multicast Group Length
Length field is set appropriately to reflect this. field is set appropriately to reflect this address type.
To constrain distribution of the Source Active auto-discovery route To constrain distribution of the Source Active auto-discovery route
to the AS of the advertising LSR this route SHOULD carry the to the AS of the advertising LSR this route SHOULD carry the
NO_EXPORT Community ([RFC1997]). NO_EXPORT Community ([RFC1997]).
Using the normal BGP procedures the Source Active auto-discovery Using the normal BGP procedures the Source Active auto-discovery
route is propagated to all other LSRs within the AS. route is propagated to all other LSRs within the AS.
Whenever the LSR deletes the (S,G) state that was previously created Whenever the LSR receiving an mLDP Label Map with the Transit
as a result of receiving an mLDP Label Map with the Transit IPv4/IPv6 IPv4/IPv6 Source TLV for (S,G) deletes the (S,G) state that was
Source TLV for (S,G), the LSR that deletes the state MUST also previously created, the LSR that deletes the state MUST also withdraw
withdraw the Source Active auto-discovery route, if such a route was the Source Active auto-discovery route, if such a route was
advertised when the state was created. advertised when the state was created.
Note that whenever an LSR creates an (S,G) state as a result of 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 receiving an mLDP Label Map with the Transit IPv4/IPv6 Source TLV for
(S,G) with S reachable via one of the IP multicast capable (S,G) with S reachable via one of the IP multicast capable
interfaces, and the LSR already has a (*,G) state with RP reachable interfaces, and the LSR already has a (*,G) state with RP reachable
via one of the IP multicast capable interfaces as a result of via one of the IP multicast capable interfaces as a result of
receiving an mLDP Label Map with the Transit IPv4/IPv6 Shared Tree receiving an mLDP Label Map with the Transit IPv4/IPv6 Shared Tree
TLV for (*,G), the LSR does not originate a Source Active auto- TLV for (*,G), the LSR does not originate a Source Active auto-
discovery route. discovery route.
4.3. Receiving BGP Source Active auto-discovery route 3.3. Receiving BGP Source Active Auto-Discovery Route
Procedures for receiving BGP Source Active auto-discovery routes are Procedures for receiving BGP Source Active Auto-Discovery routes are
the same as with Option 1. the same as with Mechanism 1.
4.4. Pruning Sources off the Shared Tree 3.4. Pruning Sources Off the Shared Tree
If after receiving a new Source Active auto-discovery route for (S,G) If after receiving a new Source Active auto-discovery route for (S,G)
the LSR determines that (a) it has the (*, G) entry in its TIB, (b) the LSR determines that (a) it has the (*, G) entry in its TIB, (b)
the incoming interface list (iif) for that entry contains one of the the incoming interface list (iif) for that entry contains one of the
IP interfaces, (c) at least one of the MPLS interfaces is in the IP interfaces, (c) at least one of the MPLS interfaces is in the
outgoing interface list (oif) for that entry, and (d) the LSR does outgoing interface list (oif) for that entry, and (d) the LSR does
not originate an mLDP Label Mapping message for (S,G) with the not originate an mLDP Label Mapping message for (S,G) with the
Transit IPv4/IPv6 Source TLV, then the LSR MUST transition the Transit IPv4/IPv6 Source TLV, then the LSR MUST transition the
(S,G,RPT-bit) downstream state to the Prune state. [Conceptually the (S,G,RPT-bit) downstream state to the Prune state. (Conceptually the
PIM state machine on the LSR will act "as if" it had received 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 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 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 may result in the LSR using PIM procedures to prune S off the Shared
(*,G) tree. (*,G) tree.
The LSR MUST keep the (S,G,RPT-bit) downstream state machine in the The LSR MUST keep the (S,G,RPT-bit) downstream state machine in the
Prune state for as long as (a) the outgoing interface list (oif) for Prune state for as long as (a) the outgoing interface list (oif) for
(*, G) contains one of the MPLS interfaces, and (b) the LSR has at (*, 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 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 LSR does not originate the mLDP Label Mapping message for (S,G) with
the Transit IPv4/IPv6 Source TLV. Once either of these conditions the Transit IPv4/IPv6 Source TLV. Once either of these conditions
become no longer valid, the LSR MUST transition the (S,G,RPT-bit) become no longer valid, the LSR MUST transition the (S,G,RPT-bit)
downstream state machine to the NoInfo state. downstream state machine to the NoInfo state.
Note that except for the scenario described in the first paragraph of Note that except for the scenario described in the first paragraph of
this section, in all other scenarios relying solely on PIM procedures this section, it is sufficient to rely solely on the PIM procedures
on the LSR is sufficient to ensure the correct behavior when pruning on the LSR to ensure the correct behavior when pruning sources off
sources off the shared tree. the shared tree.
4.5. More on handling (S,G,RPT-bit) state 3.5. More on Handling (S,G,RPT-bit) State
Creation and deletion of (S,G,RPT-bit) state on a LSR that resulted Creation and deletion of (S,G,RPT-bit) state on a LSR that resulted
from receiving PIM messages on one of its IP multicast interfaces from receiving PIM messages on one of its IP multicast interfaces
does not result in any mLDP and/or BGP actions by the LSR. does not result in any mLDP and/or BGP actions by the LSR.
5. IANA Considerations 4. IANA Considerations
This document requires allocation from the LDP MP Opaque Value IANA maintains a registry called "Label Distribution Protocol (LDP)
Element type name space managed by IANA the following two new mLDP Parameters" with a subregistry called "LDP MP Opaque Value Element
TLVs: Transit IPv4 Shared Tree TLV, and Transit IPv6 Shared Tree TLV. basic type". IANA is requested to allocate two new values as follows:
6. Security Considerations Value | Name | Reference
------+------------------------------+------------
TBD1 | Transit IPv4 Shared Tree TLV | [This.I-D]
TBD2 | Transit IPv6 Shared Tree TLV | [This.I-D]
All the security considerations for mLDP ([mLDP]) apply here. IANA is requested to assign consecutive values.
7. Acknowledgements 5. Security Considerations
Use of Source Active auto-discovery routes was borrowed from [MVPN- All the security considerations for mLDP ([RFC6388]) apply here.
BGP]. Some text in this document was borrowed from [MVPN-BGP].
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]. Some of the text in this document was borrowed from [RFC6826].
We would like to acknowledge Arkadiy Gulko for his review and We would like to acknowledge Arkadiy Gulko for his review and
comments. comments.
We would also like to thank Xuxiaohu, Gregory Mirsky, and Rajiv Asati We would also like to thank Xuxiaohu, Gregory Mirsky, Rajiv Asati,
for their review and comments. and Adrian Farrell for their review and comments.
8. Normative References
[mLDP] Minei, I., "Label Distribution Protocol Extensions for Point-
to- Multipoint and Multipoint-to-Multipoint Label Switched Paths",
RFC6388, November 2011.
[RFC6826] "In-band signaling for Point-to-Multipoint and Multipoint-
to-Multipoint Label Switched Paths", I. Wijnands et al., RFC6826,
January 2013
[MVPN-BGP] "BGP Encodings and Procedures for Multicast in MPLS/BGP IP 7. Normative References
VPNs", R. Aggarwal et al., RFC6514, February 2012
[RFC1997] R. Chandra, P. Traina, T. Li, "BGP Communities Attribute", [RFC1997] R. Chandra, P. Traina, T. Li, "BGP Communities Attribute",
RFC1997, August 1996. RFC1997, August 1996.
[RFC2119] "Key words for use in RFCs to Indicate Requirement [RFC2119] "Key words for use in RFCs to Indicate Requirement
Levels.", Bradner, RFC2119, March 1997. Levels.", Bradner, RFC2119, March 1997.
9. Informative References [RFC6388] Minei, I., "Label Distribution Protocol Extensions for
Point-to-Multipoint and Multipoint-to-Multipoint Label Switched
Paths", RFC6388, November 2011.
[RFC6514] "BGP Encodings and Procedures for Multicast in MPLS/BGP IP
VPNs", R. Aggarwal et al., RFC6514, February 2012
[RFC6826] "In-band signaling for Point-to-Multipoint and Multipoint-
to-Multipoint Label Switched Paths", I. Wijnands et al., RFC6826,
January 2013
8. Informative References
[RFC4601] Fenner, B., Handley, M., Holbrook, H., and I. Kouvelas, [RFC4601] Fenner, B., Handley, M., Holbrook, H., and I. Kouvelas,
"Protocol Independent Multicast - Sparse Mode (PIM-SM): Protocol "Protocol Independent Multicast - Sparse Mode (PIM-SM): Protocol
Specification (Revised)", RFC 4601, August 2006. Specification (Revised)", RFC 4601, August 2006.
[RFC4607] Holbrook, H. and B. Cain, "Source-Specific Multicast for [RFC4607] Holbrook, H. and B. Cain, "Source-Specific Multicast for
IP", RFC 4607, August 2006. IP", RFC 4607, August 2006.
[draft-wijnands] Wijnands IJ, et. al., "mLDP In-Band Signaling with [draft-wijnands] Wijnands IJ, et. al., "mLDP In-Band Signaling with
Wildcards", draft-ietf-mpls-mldp-in-band-wildcard-encoding, work in Wildcards", draft-ietf-mpls-mldp-in-band-wildcard-encoding, work in
progress progress
10. Authors' Addresses 9. Authors' Addresses
Yakov Rekhter Yakov Rekhter
Juniper Networks, Inc. Juniper Networks, Inc.
e-mail: yakov@juniper.net e-mail: yakov@juniper.net
Rahul Aggarwal Rahul Aggarwal
e-mail: raggarwa_1@yahoo.com e-mail: raggarwa_1@yahoo.com
Nicolai Leymann Nicolai Leymann
Deutsche Telekom Deutsche Telekom
Winterfeldtstrasse 21 Winterfeldtstrasse 21
Berlin 10781 Berlin 10781
Germany Germany
e-mail: nicolai.leymann@t-systems.com e-mail: nicolai.leymann@t-systems.com
Wim Henderickx Wim Henderickx
Alcatel-Lucent Alcatel-Lucent
Email: wim.henderickx@alcatel-lucent.com Email: wim.henderickx@alcatel-lucent.com
Richard Li
Huawei
Email: renwei.li@huawei.com
Quintin Zhao Quintin Zhao
Huawei Huawei
Email: quintin.zhao@huawei.com Email: quintin.zhao@huawei.com
Richard Li
Huawei
Email: renwei.li@huawei.com
 End of changes. 64 change blocks. 
155 lines changed or deleted 161 lines changed or added

This html diff was produced by rfcdiff 1.41. The latest version is available from http://tools.ietf.org/tools/rfcdiff/