draft-ietf-mpls-mldp-in-band-wildcard-encoding-01.txt   draft-ietf-mpls-mldp-in-band-wildcard-encoding-02.txt 
MPLS Working Group IJ. Wijnands, Ed. MPLS Working Group IJ. Wijnands, Ed.
Internet-Draft E. Rosen Internet-Draft E. Rosen
Intended status: Standards Track Cisco Updates: 6826,7246 (if approved) Cisco
Expires: September 4, 2014 A. Gulko Intended status: Standards Track A. Gulko
Thomson Reuters Expires: February 13, 2015 Thomson Reuters
U. Joorde U. Joorde
Deutsche Telekom Deutsche Telekom
J. Tantsura J. Tantsura
Ericsson Ericsson
March 3, 2014 August 12, 2014
mLDP In-Band Signaling with Wildcards mLDP In-Band Signaling with Wildcards
draft-ietf-mpls-mldp-in-band-wildcard-encoding-01 draft-ietf-mpls-mldp-in-band-wildcard-encoding-02
Abstract Abstract
There are scenarios in which an IP multicast tree traverses an MPLS There are scenarios in which an IP multicast tree traverses an MPLS
domain. In these scenarios, it can be desirable to convert the IP domain. In these scenarios, it can be desirable to convert the IP
multicast tree "seamlessly" to an MPLS multipoint label switched path multicast tree "seamlessly" to an MPLS multipoint label switched path
(MP-LSP) when it enters the MPLS domain, and then to convert it back (MP-LSP) when it enters the MPLS domain, and then to convert it back
to an IP multicast tree when it exits the MPLS domain. Previous to an IP multicast tree when it exits the MPLS domain. Previous
documents specify procedures that allow certain kinds of IP multicast documents specify procedures that allow certain kinds of IP multicast
trees (either "Source-Specific Multicast" trees or "Bidirectional trees (either "Source-Specific Multicast" trees or "Bidirectional
Multicast" trees) to be attached to an MPLS Multipoint Label Switched Multicast" trees) to be attached to an MPLS Multipoint Label Switched
Path (MP-LSP). However, the previous documents do not specify Path (MP-LSP). However, the previous documents do not specify
procedures for attaching IP "Any Source Multicast" trees to MP-LSPs, procedures for attaching IP "Any Source Multicast" trees to MP-LSPs,
nor do they specify procedures for aggregating multiple IP multicast nor do they specify procedures for aggregating multiple IP multicast
trees onto a single MP-LSP. This document specifies the procedures trees onto a single MP-LSP. This document specifies the procedures
to support these functions. It does so by defining "wildcard" to support these functions. It does so by defining "wildcard"
encodings that make it possible to specify, when setting up an MP- encodings that make it possible to specify, when setting up an MP-
LSP, that a set of IP multicast trees, or a shared IP multicast tree, LSP, that a set of IP multicast trees, or a shared IP multicast tree,
should be attached to that MP-LSP. Support for non-bidirectional IP should be attached to that MP-LSP. Support for non-bidirectional IP
"Any Source Multicast" trees is subject to certain applicability "Any Source Multicast" trees is subject to certain applicability
restrictions that are discussed in this document. restrictions that are discussed in this document. This document
updates RFCs 6826 and 7246.
Status of This Memo Status of This Memo
This Internet-Draft is submitted in full conformance with the This Internet-Draft is submitted 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). Note that other groups may also distribute Task Force (IETF). Note that other groups may also distribute
working documents as Internet-Drafts. The list of current Internet- working documents as Internet-Drafts. The list of current Internet-
Drafts is at http://datatracker.ietf.org/drafts/current/. Drafts is at http://datatracker.ietf.org/drafts/current/.
Internet-Drafts are draft documents valid for a maximum of six months Internet-Drafts are draft documents valid for a maximum of six months
and may be updated, replaced, or obsoleted by other documents at any and may be updated, replaced, or obsoleted by other documents at any
time. It is inappropriate to use Internet-Drafts as reference time. It is inappropriate to use Internet-Drafts as reference
material or to cite them other than as "work in progress." material or to cite them other than as "work in progress."
This Internet-Draft will expire on September 4, 2014. This Internet-Draft will expire on February 13, 2015.
Copyright Notice Copyright Notice
Copyright (c) 2014 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.
Table of Contents Table of Contents
1. Introduction . . . . . . . . . . . . . . . . . . . . . . . . 3 1. Introduction . . . . . . . . . . . . . . . . . . . . . . . . 3
2. Terminology and Definitions . . . . . . . . . . . . . . . . . 5 2. Terminology and Definitions . . . . . . . . . . . . . . . . . 5
3. Wildcards in mLDP Opaque Value TLVs . . . . . . . . . . . . . 7 3. Wildcards in mLDP Opaque Value TLVs . . . . . . . . . . . . . 6
3.1. Encoding the Wildcards . . . . . . . . . . . . . . . . . 7 3.1. Encoding the Wildcards . . . . . . . . . . . . . . . . . 7
3.2. Wildcard Semantics . . . . . . . . . . . . . . . . . . . 7 3.2. Wildcard Semantics . . . . . . . . . . . . . . . . . . . 7
3.3. Backwards Compatibility . . . . . . . . . . . . . . . . . 8 3.3. Backwards Compatibility . . . . . . . . . . . . . . . . . 8
3.4. Applicability Restrictions with regard to ASM . . . . . . 8 3.4. Applicability Restrictions with regard to ASM . . . . . . 8
4. Some Wildcard Use Cases . . . . . . . . . . . . . . . . . . . 9 4. Some Wildcard Use Cases . . . . . . . . . . . . . . . . . . . 9
4.1. PIM shared tree forwarding . . . . . . . . . . . . . . . 9 4.1. PIM shared tree forwarding . . . . . . . . . . . . . . . 9
4.2. IGMP/MLD Proxying . . . . . . . . . . . . . . . . . . . . 10 4.2. IGMP/MLD Proxying . . . . . . . . . . . . . . . . . . . . 10
4.3. Selective Source mapping . . . . . . . . . . . . . . . . 11 4.3. Selective Source mapping . . . . . . . . . . . . . . . . 10
5. Procedures for Wildcard Source Usage . . . . . . . . . . . . 11 5. Procedures for Wildcard Source Usage . . . . . . . . . . . . 11
6. Procedures for Wildcard Group Usage . . . . . . . . . . . . . 12 6. Procedures for Wildcard Group Usage . . . . . . . . . . . . . 12
7. Determining the MP-LSP Root (Ingress LSR) . . . . . . . . . . 13 7. Determining the MP-LSP Root (Ingress LSR) . . . . . . . . . . 12
8. Anycast RP . . . . . . . . . . . . . . . . . . . . . . . . . 13 8. Anycast RP . . . . . . . . . . . . . . . . . . . . . . . . . 13
9. Acknowledgements . . . . . . . . . . . . . . . . . . . . . . 13 9. Acknowledgements . . . . . . . . . . . . . . . . . . . . . . 13
10. IANA Considerations . . . . . . . . . . . . . . . . . . . . . 13 10. IANA Considerations . . . . . . . . . . . . . . . . . . . . . 13
11. Security Considerations . . . . . . . . . . . . . . . . . . . 13 11. Security Considerations . . . . . . . . . . . . . . . . . . . 13
12. References . . . . . . . . . . . . . . . . . . . . . . . . . 13 12. References . . . . . . . . . . . . . . . . . . . . . . . . . 13
12.1. Normative References . . . . . . . . . . . . . . . . . . 13 12.1. Normative References . . . . . . . . . . . . . . . . . . 13
12.2. Informative References . . . . . . . . . . . . . . . . . 14 12.2. Informative References . . . . . . . . . . . . . . . . . 14
Authors' Addresses . . . . . . . . . . . . . . . . . . . . . . . 15 Authors' Addresses . . . . . . . . . . . . . . . . . . . . . . . 14
1. Introduction 1. Introduction
[RFC6826] and [I-D.ietf-l3vpn-mldp-vrf-in-band-signaling] specify [RFC6826] and [RFC7246] specify procedures for mLDP ("Multicast
procedures for mLDP ("Multicast Extensions to the Label Distribution Extensions to the Label Distribution Protocol") that allow an IP
Protocol") that allow an IP multicast tree (either a "Source-Specific multicast tree (either a "Source-Specific Multicast" tree or a
Multicast" tree or a "Bidirectional multicast" tree) to be attached "Bidirectional multicast" tree) to be attached "seamlessly" to an
"seamlessly" to an MPLS Multipoint Label Switched Path (MP-LSP). MPLS Multipoint Label Switched Path (MP-LSP). This can be useful,
This can be useful, for example, when there is multicast data that for example, when there is multicast data that originates in a domain
originates in a domain that supports IP multicast, then has to be that supports IP multicast, then has to be forwarded across a domain
forwarded across a domain that supports MPLS multicast, then has to that supports MPLS multicast, then has to forwarded across another
forwarded across another domain that supports IP multicast. By domain that supports IP multicast. By attaching an IP multicast tree
attaching an IP multicast tree to an MP-LSP, data that is traveling to an MP-LSP, data that is traveling along the IP multicast tree can
along the IP multicast tree can be moved seamlessly to the MP-LSP be moved seamlessly to the MP-LSP when it enters the MPLS multicast
when it enters the MPLS multicast domain. The data then travels domain. The data then travels along the MP-LSP through the MPLS
along the MP-LSP through the MPLS domain. When the data reaches the domain. When the data reaches the boundary of the MPLS domain, it
boundary of the MPLS domain, it can be moved seamlessly to an IP can be moved seamlessly to an IP multicast tree. This ability to
multicast tree. This ability to attach IP multicast trees to MPLS attach IP multicast trees to MPLS MP-LSPs can be useful in either VPN
MP-LSPs can be useful in either VPN context or global context. context or global context.
In mLDP, every MP-LSP is identified by the combination of a "root In mLDP, every MP-LSP is identified by the combination of a "root
node" (or "Ingress LSR") and an "Opaque Value" that, in the context node" (or "Ingress LSR") and an "Opaque Value" that, in the context
of the root node, uniquely identifies the MP-LSP. These are encoded of the root node, uniquely identifies the MP-LSP. These are encoded
into an mLDP "FEC Element". To set up an MP-LSP, the Egress LSRs into an mLDP "FEC Element". To set up an MP-LSP, the Egress LSRs
originate mLDP control messages containing the FEC element. A given originate mLDP control messages containing the FEC element. A given
FEC Element value identifies a single MP-LSP, and is passed upstream FEC Element value identifies a single MP-LSP, and is passed upstream
from the Egress LSRs, through the intermediate LSRs, to the Ingress from the Egress LSRs, through the intermediate LSRs, to the Ingress
LSR. LSR.
In IP multicast, a multicast tree is identified by the combination of In IP multicast, a multicast tree is identified by the combination of
an IP source address ("S") and an IP group address ("G"), usually an IP source address ("S") and an IP group address ("G"), usually
written as "(S,G)". A tree carrying traffic of multiple sources is written as "(S,G)". A tree carrying traffic of multiple sources is
identified by its group address, and the identifier is written as identified by its group address, and the identifier is written as
"(*,G)". "(*,G)".
When an MP-LSP is being set up, the procedures of [RFC6826] and When an MP-LSP is being set up, the procedures of [RFC6826] and
[I-D.ietf-l3vpn-mldp-vrf-in-band-signaling], known as "mLDP In-Band [RFC7246], known as "mLDP In-Band Signaling", allow the Egress LSRs
Signaling", allow the Egress LSRs of the MP-LSP to encode the of the MP-LSP to encode the identifier of an IP multicast tree in the
identifier of an IP multicast tree in the "Opaque Value" field of the "Opaque Value" field of the mLDP FEC Element that identifies the MP-
mLDP FEC Element that identifies the MP-LSP. Only the Egress and LSP. Only the Egress and Ingress LSRs are aware that the mLDP FEC
Ingress LSRs are aware that the mLDP FEC Elements contain encodings Elements contain encodings of the IP multicast tree identifier;
of the IP multicast tree identifier; intermediate nodes along the MP- intermediate nodes along the MP-LSP do not take any account of the
LSP do not take any account of the internal structure of the FEC internal structure of the FEC Element's Opaque Value, and the
Element's Opaque Value, and the internal structure of the Opaque internal structure of the Opaque Value does not affect the operation
Value does not affect the operation of mLDP. By using mLDP In-Band of mLDP. By using mLDP In-Band Signaling, the Egress LSRs of an MP-
Signaling, the Egress LSRs of an MP-LSP inform the Ingress LSR that LSP inform the Ingress LSR that they expect traffic of the identified
they expect traffic of the identified IP multicast tree (and only IP multicast tree (and only that traffic) to be carried on the MP-
that traffic) to be carried on the MP-LSP. That is, mLDP In-Band LSP. That is, mLDP In-Band Signaling not only sets up the MP-LSP, it
Signaling not only sets up the MP-LSP, it also binds a given IP also binds a given IP multicast tree to the MP-LSP.
multicast tree to the MP-LSP.
If multicast is being done in a VPN context, the mLDP FEC elements If multicast is being done in a VPN context [RFC7246], the mLDP FEC
also contain a "Route Distinguisher" (RD) (see elements also contain a "Route Distinguisher" (RD) (see [RFC7246]),
[I-D.ietf-l3vpn-mldp-vrf-in-band-signaling]), as the IP multicast as the IP multicast trees are identified not merely by "(S,G)" but by
trees are identified not merely by "(S,G)" but by "(RD,S,G)". The "(RD,S,G)". The procedures of this document are also applicable in
procedures of this document are also applicable in this case. Of this case. Of course, when an Ingress LSR processes an In-Band
course, when an Ingress LSR processes an In-Band Signaling Opaque Signaling Opaque Value that contains an RD, it does so in the context
Value that contains an RD, it does so in the context of the VPN of the VPN associated with that RD.
associated with that RD.
If mLDP In-Band Signaling is not used, some other protocol must be If mLDP In-Band Signaling is not used, some other protocol must be
used to bind an IP multicast tree to the MP-LSP, and this requires used to bind an IP multicast tree to the MP-LSP, and this requires
additional communication mechanisms between the Ingress LSR and the additional communication mechanisms between the Ingress LSR and the
Egress LSRs of the MP-LSP. The purpose of mLDP In-Band Signaling is Egress LSRs of the MP-LSP. The purpose of mLDP In-Band Signaling is
to eliminate the need for these other protocols. to eliminate the need for these other protocols.
When following the procedures of [RFC6826] and When following the procedures of [RFC6826] and [RFC7246] for non-
[I-D.ietf-l3vpn-mldp-vrf-in-band-signaling] for non-bidirectional bidirectional trees, the Opaque Value has an IP Source Address (S)
trees, the Opaque Value has an IP Source Address (S) and an IP Group and an IP Group Address (G) encoded into it, thus enabling it to
Address (G) encoded into it, thus enabling it to identify a identify a particular IP multicast (S,G) tree. Only a single IP
particular IP multicast (S,G) tree. Only a single IP source-specific source-specific multicast tree (i.e., a single "(S,G)") can be
multicast tree (i.e., a single "(S,G)") can be identified in a given identified in a given FEC element. As a result, a given MP-LSP can
FEC element. As a result, a given MP-LSP can carry data from only a carry data from only a single IP source-specific multicast tree
single IP source-specific multicast tree (i.e., a single "(S,G) (i.e., a single "(S,G) tree"). However, there are scenarios in which
tree"). However, there are scenarios in which it would be desirable it would be desirable to aggregate a number of (S,G) trees on a
to aggregate a number of (S,G) trees on a single MP-LSP. Aggregation single MP-LSP. Aggregation allows a given number of IP multicast
allows a given number of IP multicast trees to using a smaller number trees to use a smaller number of MP-LSPs, thus saving state in the
of MP-LSPs, thus saving state in the network. network.
In addition, [RFC6826] and In addition, [RFC6826] and [RFC7246] do not support the attachment of
[I-D.ietf-l3vpn-mldp-vrf-in-band-signaling] do not support the an "Any Source Multicast" (ASM) shared tree to an MP-LSP, except in
attachment of an "Any Source Multicast" (ASM) shared tree to an MP- the case where the ASM shared tree is a "bidirectional" tree (i.e., a
LSP, except in the case where the ASM shared tree is a tree set up by BIDIR-PIM [RFC5015]). However, there are scenarios in
"bidirectional" tree (i.e., a tree set up by BIDIR-PIM [RFC5015]). which it would be desirable to attach a non-bidirectional ASM shared
However, there are scenarios in which it would be desirable to attach tree to an MP-LSP.
a non-bidirectional ASM shared tree to an MP-LSP.
This document specifies a way to encode an mLDP "Opaque Value" in This document specifies a way to encode an mLDP "Opaque Value" in
which either the "S" or the "G" or both are replaced by a "wildcard" which either the "S" or the "G" or both are replaced by a "wildcard"
(written as "*"). Procedures are described for using the wildcard (written as "*"). Procedures are described for using the wildcard
encoding to map non-bidirectional ASM shared trees to MP-LSPs, and encoding to map non-bidirectional ASM shared trees to MP-LSPs, and
for mapping multiple (S,G) trees (with a common value of S or a for mapping multiple (S,G) trees (with a common value of S or a
common value of G) to a single MP-LSP. common value of G) to a single MP-LSP.
Some example scenarios where wildcard encoding is useful are: Some example scenarios where wildcard encoding is useful are:
skipping to change at page 5, line 17 skipping to change at page 5, line 11
o IGMP/MLD proxying. o IGMP/MLD proxying.
o Selective Source mapping. o Selective Source mapping.
These scenarios are discussed in Section 4. Note that this list of These scenarios are discussed in Section 4. Note that this list of
scenarios is not meant to be exhaustive. scenarios is not meant to be exhaustive.
This draft specifies only the mLDP procedures that are specific to This draft specifies only the mLDP procedures that are specific to
the use of wildcards. mLDP In-Band Signaling procedures that are not the use of wildcards. mLDP In-Band Signaling procedures that are not
specific to the use of wildcards can be found in [RFC6826] and specific to the use of wildcards can be found in [RFC6826] and
[I-D.ietf-l3vpn-mldp-vrf-in-band-signaling]. Unless otherwise [RFC7246]. Unless otherwise specified in this document, those
specified in this document, those procedures still apply when procedures still apply when wildcards are used.
wildcards are used.
2. Terminology and Definitions 2. Terminology and Definitions
Readers of this document are assumed to be familiar with the Readers of this document are assumed to be familiar with the
terminology and concepts of the documents listed as Normative terminology and concepts of the documents listed as Normative
References. For convenience, some of the more frequently used terms References. For convenience, some of the more frequently used terms
appear below. appear below.
IGMP: IGMP:
Internet Group Management Protocol. Internet Group Management Protocol.
skipping to change at page 7, line 7 skipping to change at page 6, line 46
length field, followed by a value field. Note that the value length field, followed by a value field. Note that the value
field of a TLV may be sub-divided into a number of sub-fields. field of a TLV may be sub-divided into a number of sub-fields.
The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT", The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT",
"SHOULD", "SHOULD NOT", "RECOMMENDED", "NOT RECOMMENDED", "MAY", and "SHOULD", "SHOULD NOT", "RECOMMENDED", "NOT RECOMMENDED", "MAY", and
"OPTIONAL" in this document are to be interpreted as described in RFC "OPTIONAL" in this document are to be interpreted as described in RFC
2119 [RFC2119]. 2119 [RFC2119].
3. Wildcards in mLDP Opaque Value TLVs 3. Wildcards in mLDP Opaque Value TLVs
[RFC6826] and [I-D.ietf-l3vpn-mldp-vrf-in-band-signaling] define the [RFC6826] and [RFC7246] define the following Opaque Value TLVs:
following Opaque Value TLVs: Transit IPv4 Source TLV, Transit IPv6 Transit IPv4 Source TLV, Transit IPv6 Source TLV, Transit VPNv4
Source TLV, Transit VPNv4 Source TLV, and Transit VPNv6 Source TLV. Source TLV, and Transit VPNv6 Source TLV. The value field of each
The value field of each such TLV is divided into a number of sub- such TLV is divided into a number of sub-fields, one of which
fields, one of which contains an IP source address, and one of which contains an IP source address, and one of which contains an IP group
contains an IP group address. Per those documents, these fields must address. Per those documents, these fields must contain valid IP
contain valid IP addresses. addresses.
This document extends the definition of those TLVs by allowing either This document extends the definition of those TLVs by allowing either
the IP Source Address field or the IP Group Address field (or both) the IP Source Address field or the IP Group Address field (or both)
to specify a "wildcard" rather than a valid IP address. to specify a "wildcard" rather than a valid IP address.
3.1. Encoding the Wildcards 3.1. Encoding the Wildcards
A value of all zeroes in the IP Source Address sub-field is used to A value of all zeroes in the IP Source Address sub-field is used to
represent a wildcard source address. A value of all zeroes in the IP represent a wildcard source address. A value of all zeroes in the IP
Group Address sub-field is used to represent the wildcard group Group Address sub-field is used to represent the wildcard group
skipping to change at page 7, line 46 skipping to change at page 7, line 36
Group Address sub-field contains an IP multicast group address that Group Address sub-field contains an IP multicast group address that
is in the SSM address range, the TLV identifies the collection of PIM is in the SSM address range, the TLV identifies the collection of PIM
trees with the given group address. trees with the given group address.
If the IP Source Address sub-field contains a non-zero IP address, If the IP Source Address sub-field contains a non-zero IP address,
and the IP Group Address sub-field contains the wildcard, the TLV and the IP Group Address sub-field contains the wildcard, the TLV
identifies the collection of PIM-SSM trees that have the source identifies the collection of PIM-SSM trees that have the source
address as their root. address as their root.
Procedures for the use of the wildcards are discussed in Sections 4, Procedures for the use of the wildcards are discussed in Sections 4,
5 and 6. Please note that, as always, the structure of the Opaque 5 and 6. Please note that, as always, the structure of an Opaque
Value TLVs does not actually affect the operation of mLDP, but only Value TLV does not affect the operation of mLDP. The structure is
affects the interface between mLDP and IP multicast at the Ingress meaningful only to the IP multicast modules at the ingress and egress
LSR. LSRs.
Procedures for the use of a wildcard group in the following TLVs Procedures for the use of a wildcard group in the following TLVs
(defined in [RFC6826] or [I-D.ietf-l3vpn-mldp-vrf-in-band-signaling]) (defined in [RFC6826] or [RFC7246]) are outside the scope of the
are outside the scope of the current document: Transit IPv4 Bidir current document: Transit IPv4 Bidir TLV, Transit IPv6 Bidir TLV,
TLV, Transit IPv6 Bidir TLV, Transit VPNv4 Bidir TLV, Transit VPNv6 Transit VPNv4 Bidir TLV, Transit VPNv6 Bidir TLV.
Bidir TLV.
Procedures for the use of both a wildcard source and a wildcard group Procedures for the use of both a wildcard source and a wildcard group
in the same TLV are outside the scope of the current document. in the same TLV are outside the scope of the current document.
Note that the Bidir TLVs do not have a "Source Address" sub-field, Note that the Bidir TLVs do not have a "Source Address" sub-field,
and hence the notion of a wildcard source is not applicable to them. and hence the notion of a wildcard source is not applicable to them.
3.3. Backwards Compatibility 3.3. Backwards Compatibility
The procedures of this document do not change the behavior described The procedures of this document do not change the behavior described
in [RFC6826] and [I-D.ietf-l3vpn-mldp-vrf-in-band-signaling]. in [RFC6826] and [RFC7246].
A correctly operating Egress LSR that supports [RFC6826] and/or A correctly operating Egress LSR that supports [RFC6826] and/or
[I-D.ietf-l3vpn-mldp-vrf-in-band-signaling], but that does not [RFC7246], but that does not support this document, will never
support this document, will never generate mLDP FEC Element Opaque generate mLDP FEC Element Opaque values that contain source or group
values that contain source or group wildcards. wildcards.
Neither [RFC6826] nor [I-D.ietf-l3vpn-mldp-vrf-in-band-signaling] Neither [RFC6826] nor [RFC7246] specifies the behavior of an Ingress
specifies the behavior of an Ingress LSR that receives mLDP FEC LSR that receives mLDP FEC Element Opaque values that contain zeroes
Element Opaque values that contain zeroes in the Source Address or in the Source Address or Group Address sub-fields. However, if an
Group Address sub-fields. However, if an Ingress LSR supports Ingress LSR supports [RFC6826] and/or [RFC7246], but does not support
[RFC6826] and/or [I-D.ietf-l3vpn-mldp-vrf-in-band-signaling], but this document, it has no choice but to treat any such received FEC
does not support this document, it has no choice but to treat any elements as invalid; the procedures specified in [RFC6826] and
such received FEC elements as invalid; the procedures specified in [RFC7246] do not work when the Opaque values contain zeroes in the
[RFC6826] and [I-D.ietf-l3vpn-mldp-vrf-in-band-signaling] do not work Source Address or Group Address sub-fields.
when the Opaque values contain zeroes in the Source Address or Group
Address sub-fields.
The procedures of this document thus presuppose that if an Egress LSR The procedures of this document thus presuppose that if an Egress LSR
uses wildcard encodings when setting up an MP-LSP, then the Ingress uses wildcard encodings when setting up an MP-LSP, then the Ingress
LSR (i.e., the root of the multipoint LSP) supports the procedures of LSR (i.e., the root of the multipoint LSP) supports the procedures of
this document. An Egress LSR MUST NOT use wildcard encodings when this document. An Egress LSR MUST NOT use wildcard encodings when
setting up a particular multipoint LSP unless it is known a priori setting up a particular multipoint LSP unless it is known a priori
that the Ingress LSR supports the procedures of this document. How that the Ingress LSR supports the procedures of this document. How
this is known is outside the scope of this document. this is known is outside the scope of this document.
3.4. Applicability Restrictions with regard to ASM 3.4. Applicability Restrictions with regard to ASM
skipping to change at page 10, line 10 skipping to change at page 9, line 49
last hop router for group G learns that source S is transmitting to last hop router for group G learns that source S is transmitting to
G, the last hop router joins the (S,G) tree, and "prunes" S off the G, the last hop router joins the (S,G) tree, and "prunes" S off the
(*,G) tree. This allows each last hop router to receive the (*,G) tree. This allows each last hop router to receive the
multicast data along the shortest path from the source to the last multicast data along the shortest path from the source to the last
hop router. (Full details of this behavior can be found in hop router. (Full details of this behavior can be found in
[RFC4601].) [RFC4601].)
In some cases, however, a last hop router for group G may decide not In some cases, however, a last hop router for group G may decide not
to join the source trees, but rather to keep receiving all the to join the source trees, but rather to keep receiving all the
traffic for G from the (*,G) tree. In this case, we say that the traffic for G from the (*,G) tree. In this case, we say that the
last hop router has "threshold infinity" for group G. This is last hop router has "threshold infinity" for group G. This is
optional behaviour documented in [RFC4601]. "Threshold infinity" is optional behaviour documented in [RFC4601]. "Threshold infinity" is
often used in deployments where the RP is between the multicast often used in deployments where the RP is between the multicast
sources and the multicast receivers for group G, i.e., in deployments sources and the multicast receivers for group G, i.e., in deployments
where it is known that the shortest path from any source to any where it is known that the shortest path from any source to any
receiver of the group goes through the RP. In these deployments, receiver of the group goes through the RP. In these deployments,
there is no advantage for a last hop router to join a source tree, there is no advantage for a last hop router to join a source tree,
since the data is already traveling along the shortest path. The since the data is already traveling along the shortest path. The
only effect of executing the complicated procedures for joining a only effect of executing the complicated procedures for joining a
source tree and pruning the source off the shared tree would be to source tree and pruning the source off the shared tree would be to
increase the amount of multicast routing state that has to be increase the amount of multicast routing state that has to be
skipping to change at page 10, line 41 skipping to change at page 10, line 31
4.2. IGMP/MLD Proxying 4.2. IGMP/MLD Proxying
There are scenarios where the multicast senders and receivers are There are scenarios where the multicast senders and receivers are
directly connected to an MPLS routing domain, and where it is desired directly connected to an MPLS routing domain, and where it is desired
to use mLDP rather than PIM to set up "trees" through that domain. to use mLDP rather than PIM to set up "trees" through that domain.
In these scenarios we can apply "IGMP/MLD proxying" and eliminate the In these scenarios we can apply "IGMP/MLD proxying" and eliminate the
use of PIM. The senders and receivers consider the MPLS domain to be use of PIM. The senders and receivers consider the MPLS domain to be
single hop between each other. [RFC4605] documents procedures where single hop between each other. [RFC4605] documents procedures where
a multicast routing protocol is not nessesary to build a 'simple a multicast routing protocol is not necessary to build a 'simple
tree'. Within the MPLS domain, mLDP will be used to build a MP-LSP, tree'. Within the MPLS domain, mLDP will be used to build a MP-LSP,
but this is hidden from the senders and receivers. The procedures but this is hidden from the senders and receivers. The procedures
defined in [RFC4605] are applicable, since the senders and receivers defined in [RFC4605] are applicable, since the senders and receivers
are considered to be one hop away from each other. are considered to be one hop away from each other.
For mLDP to build the necessary MP-LSP, it needs to know the root of For mLDP to build the necessary MP-LSP, it needs to know the root of
the tree. Following the procedures as defined in [RFC4605] we depend the tree. Following the procedures as defined in [RFC4605] we depend
on manual configuration of the mLDP root for the ASM multicast group. on manual configuration of the mLDP root for the ASM multicast group.
Since the MP-LSP for a given ASM multicast group will carry traffic Since the MP-LSP for a given ASM multicast group will carry traffic
from all the sources for that group, the Opaque Value TLV used to from all the sources for that group, the Opaque Value TLV used to
skipping to change at page 12, line 27 skipping to change at page 12, line 17
2. If PIM is enabled and the identified group is a PIM-SSM group, 2. If PIM is enabled and the identified group is a PIM-SSM group,
all multicast sources known for the group on the Ingress LSR are all multicast sources known for the group on the Ingress LSR are
to be forwarded down the MP-LSP. In this scenario, it is assumed to be forwarded down the MP-LSP. In this scenario, it is assumed
that the Ingress LSR is already receiving all the necessary that the Ingress LSR is already receiving all the necessary
traffic. How the Ingress LSR receives this traffic is outside traffic. How the Ingress LSR receives this traffic is outside
the scope of this document. the scope of this document.
3. If PIM is not enabled for the identified group, the Ingress LSR 3. If PIM is not enabled for the identified group, the Ingress LSR
acts as if it had received a (*,G) IGMP/MLD report from a acts as if it had received a (*,G) IGMP/MLD report from a
downstream node, and the procedures as defined in [RFC4605] are downstream node, and the procedures as defined in [RFC4605] are
followed. followed. The ingress LSR should forward the (*,G) packets to
the egress LSR through the MP-LSP identified by the Opaque Value
TLV. (See also Section 4.2.)
6. Procedures for Wildcard Group Usage 6. Procedures for Wildcard Group Usage
The decision to use mLDP In-Band Signaling is made by the IP The decision to use mLDP In-Band Signaling is made by the IP
multicast component of an Egress LSR, based on provisioned policy. multicast component of an Egress LSR, based on provisioned policy.
The decision to use (or not to use) a wildcard in the IP Group The decision to use (or not to use) a wildcard in the IP Group
Address sub-field of an mLDP Opaque Value TLV is also made by the IP Address sub-field of an mLDP Opaque Value TLV is also made by the IP
multicast component of the Egress LSR, again based on provisioned multicast component of the Egress LSR, again based on provisioned
policy. As the policies needed in any one deployment may be very policy. As the policies needed in any one deployment may be very
different than the policies needed in another, this document does not different than the policies needed in another, this document does not
skipping to change at page 13, line 7 skipping to change at page 12, line 47
field contains a wildcard, the Ingress LSR examines its IP multicast field contains a wildcard, the Ingress LSR examines its IP multicast
routing table, to find all the IP multicast streams whose IP source routing table, to find all the IP multicast streams whose IP source
address is the address specified in the IP Source Address sub-field address is the address specified in the IP Source Address sub-field
of the TLV. All these streams SHOULD be forwarded down the MP-LSP of the TLV. All these streams SHOULD be forwarded down the MP-LSP
identified by the Opaque Value TLV. Note that some of these streams identified by the Opaque Value TLV. Note that some of these streams
may have SSM group addresses, while some may have ASM group may have SSM group addresses, while some may have ASM group
addresses. addresses.
7. Determining the MP-LSP Root (Ingress LSR) 7. Determining the MP-LSP Root (Ingress LSR)
Documents [RFC6826] and [I-D.ietf-l3vpn-mldp-vrf-in-band-signaling] Documents [RFC6826] and [RFC7246] describe procedures by which an
describe procedures by which an Egress LSR may determine the MP-LSP Egress LSR may determine the MP-LSP root node address corresponding
root node address corresponding to a given IP multicast stream, based to a given IP multicast stream, based upon the IP address of the
upon the IP address of the source of the IP multicast stream. When a source of the IP multicast stream. When a wildcard source encoding
wildcard source encoding is used, PIM is enabled, and the group is a is used, PIM is enabled, and the group is a non-bidirectional ASM
non-bidirectional ASM group, a similar procedure is applied. The group, a similar procedure is applied. The only difference from the
only difference from the above mentioned procedures is that the Proxy above mentioned procedures is that the Proxy device or RP address is
device or RP address is used instead of the Source to discover the used instead of the Source to discover the mLDP root node address.
mLDP root node address.
Other procedures for determining the root node are also allowed, as Other procedures for determining the root node are also allowed, as
determined by policy. determined by policy.
8. Anycast RP 8. Anycast RP
In the scenarios where mLDP In-Band Signaling is used, it is unlikely In the scenarios where mLDP In-Band Signaling is used, it is unlikely
that the RP-to-Group mappings are being dynamically distributed over that the RP-to-Group mappings are being dynamically distributed over
the MPLS core. It is more likely that the RP address is statically the MPLS core. It is more likely that the RP address is statically
configured at each multicast site. In these scenarios, it is configured at each multicast site. In these scenarios, it is
skipping to change at page 13, line 41 skipping to change at page 13, line 32
We would like to thank Loa Andersson, Pranjal Dutta, Lizhong Jin, and We would like to thank Loa Andersson, Pranjal Dutta, Lizhong Jin, and
Curtis Villamizar for their review and comments. Curtis Villamizar for their review and comments.
10. IANA Considerations 10. IANA Considerations
There are no new allocations required from IANA. There are no new allocations required from IANA.
11. Security Considerations 11. Security Considerations
There are no security considerations other then ones already There are no security considerations other then ones already
mentioned in [RFC6826] and mentioned in [RFC6826] and [RFC7246].
[I-D.ietf-l3vpn-mldp-vrf-in-band-signaling].
12. References 12. References
12.1. Normative References 12.1. Normative References
[I-D.ietf-l3vpn-mldp-vrf-in-band-signaling]
Wijnands, I., Hitchen, P., Leymann, N., Henderickx, W.,
arkadiy.gulko@thomsonreuters.com, a., and J. Tantsura,
"Multipoint Label Distribution Protocol In-Band Signaling
in a VRF Context", draft-ietf-l3vpn-mldp-vrf-in-band-
signaling-03 (work in progress), January 2014.
[RFC2119] Bradner, S., "Key words for use in RFCs to Indicate [RFC2119] Bradner, S., "Key words for use in RFCs to Indicate
Requirement Levels", BCP 14, RFC 2119, March 1997. Requirement Levels", BCP 14, RFC 2119, March 1997.
[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 Independent Multicast - Sparse Mode (PIM-SM):
Protocol Specification (Revised)", RFC 4601, August 2006. Protocol Specification (Revised)", RFC 4601, August 2006.
[RFC4605] Fenner, B., He, H., Haberman, B., and H. Sandick, [RFC4605] Fenner, B., He, H., Haberman, B., and H. Sandick,
"Internet Group Management Protocol (IGMP) / Multicast "Internet Group Management Protocol (IGMP) / Multicast
Listener Discovery (MLD)-Based Multicast Forwarding ("IGMP Listener Discovery (MLD)-Based Multicast Forwarding
/MLD Proxying")", RFC 4605, August 2006. ("IGMP/MLD Proxying")", RFC 4605, August 2006.
[RFC6826] Wijnands, IJ., Eckert, T., Leymann, N., and M. Napierala, [RFC6826] Wijnands, IJ., Eckert, T., Leymann, N., and M. Napierala,
"Multipoint LDP In-Band Signaling for Point-to-Multipoint "Multipoint LDP In-Band Signaling for Point-to-Multipoint
and Multipoint-to-Multipoint Label Switched Paths", RFC and Multipoint-to-Multipoint Label Switched Paths", RFC
6826, January 2013. 6826, January 2013.
[RFC7246] Wijnands, IJ., Hitchen, P., Leymann, N., Henderickx, W.,
Gulko, A., and J. Tantsura, "Multipoint Label Distribution
Protocol In-Band Signaling in a Virtual Routing and
Forwarding (VRF) Table Context", RFC 7246, June 2014.
12.2. Informative References 12.2. Informative References
[I-D.zzhang-l3vpn-mvpn-global-table-mcast] [I-D.zzhang-l3vpn-mvpn-global-table-mcast]
Zhang, J., Giuliano, L., Rosen, E., Subramanian, K., Zhang, J., Giuliano, L., Rosen, E., Subramanian, K.,
Pacella, D., and J. Schiller, "Global Table Multicast with Pacella, D., and J. Schiller, "Global Table Multicast with
BGP-MVPN Procedures", draft-zzhang-l3vpn-mvpn-global- BGP-MVPN Procedures", draft-zzhang-l3vpn-mvpn-global-
table-mcast-03 (work in progress), February 2014. table-mcast-04 (work in progress), May 2014.
[RFC3446] Kim, D., Meyer, D., Kilmer, H., and D. Farinacci, "Anycast [RFC3446] Kim, D., Meyer, D., Kilmer, H., and D. Farinacci, "Anycast
Rendevous Point (RP) mechanism using Protocol Independent Rendevous Point (RP) mechanism using Protocol Independent
Multicast (PIM) and Multicast Source Discovery Protocol Multicast (PIM) and Multicast Source Discovery Protocol
(MSDP)", RFC 3446, January 2003. (MSDP)", RFC 3446, January 2003.
[RFC3618] Fenner, B. and D. Meyer, "Multicast Source Discovery [RFC3618] Fenner, B. and D. Meyer, "Multicast Source Discovery
Protocol (MSDP)", RFC 3618, October 2003. Protocol (MSDP)", RFC 3618, October 2003.
[RFC5015] Handley, M., Kouvelas, I., Speakman, T., and L. Vicisano, [RFC5015] Handley, M., Kouvelas, I., Speakman, T., and L. Vicisano,
 End of changes. 30 change blocks. 
124 lines changed or deleted 116 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/