RFC 6514
RFC 6514
RFC 6514
Aggarwal
Request for Comments: 6514 Juniper Networks
Category: Standards Track E. Rosen
ISSN: 2070-1721 Cisco Systems, Inc.
T. Morin
France Telecom - Orange
Y. Rekhter
Juniper Networks
February 2012
Abstract
Copyright Notice
Copyright (c) 2012 IETF Trust and the persons identified as the
document authors. All rights reserved.
Table of Contents
1. Introduction ....................................................4
2. Specification of Requirements ...................................4
3. Terminology .....................................................4
4. MCAST-VPN NLRI ..................................................5
4.1. Intra-AS I-PMSI A-D Route ...................................6
4.2. Inter-AS I-PMSI A-D Route ...................................7
4.3. S-PMSI A-D Route ............................................7
4.4. Leaf A-D Route ..............................................8
4.5. Source Active A-D Route .....................................9
4.6. C-Multicast Route ..........................................10
5. PMSI Tunnel Attribute ..........................................10
6. Source AS Extended Community ...................................13
7. VRF Route Import Extended Community ............................14
8. PE Distinguisher Labels Attribute ..............................15
9. MVPN Auto-Discovery/Binding ....................................16
9.1. MVPN Auto-Discovery/Binding - Intra-AS Operations ..........16
9.1.1. Originating Intra-AS I-PMSI A-D Routes .................16
9.1.2. Receiving Intra-AS I-PMSI A-D Routes ...................19
9.2. MVPN Auto-Discovery/Binding - Inter-AS Operations ..........20
9.2.1. Originating Inter-AS I-PMSI A-D Routes .................22
9.2.2. When Not to Originate Inter-AS I-PMSI A-D Routes .......23
9.2.3. Propagating Inter-AS I-PMSI A-D Routes .................23
9.2.3.1. Propagating Inter-AS I-PMSI A-D Routes - Overview ..23
9.2.3.2. Inter-AS I-PMSI A-D Route Received via EBGP ........24
9.2.3.2.1. Originating Leaf A-D Route into EBGP ...........25
9.2.3.3. Leaf A-D Route Received via EBGP ...................26
9.2.3.4. Inter-AS I-PMSI A-D Route Received via IBGP ........27
9.2.3.4.1. Originating Leaf A-D Route into IBGP ...........28
9.2.3.5. Leaf A-D Route Received via IBGP ...................29
9.2.3.6. Optimizing Bandwidth by IP Filtering on ASBRs ......30
10. Non-Congruent Unicast and Multicast Connectivity ..............30
11. Exchange of C-Multicast Routing Information among PEs .........32
11.1. Originating C-Multicast Routes by a PE ....................32
11.1.1. Originating Routes: PIM as the C-Multicast Protocol ...32
11.1.1.1. Originating Source Tree Join C-Multicast Route ....33
11.1.1.2. Originating Shared Tree Join C-Multicast Route ....33
11.1.2. Originating Routes: mLDP as the C-Multicast Protocol ..34
11.1.3. Constructing the Rest of the C-Multicast Route ........34
11.1.4. Unicast Route Changes .................................35
11.2. Propagating C-Multicast Routes by an ASBR .................36
11.3. Receiving C-Multicast Routes by a PE ......................37
11.3.1. Receiving Routes: PIM as the C-Multicast Protocol .....37
11.3.1.1. Receiving Source Tree Join C-Multicast Route ......38
11.3.1.2. Receiving Shared Tree Join C-Multicast Route ......38
11.3.2. Receiving Routes: mLDP as the C-Multicast Protocol ....39
11.4. C-Multicast Routes Aggregation ............................39
1. Introduction
This document also defines two new BGP Extended Communities: the
Source Autonomous System (AS) Extended Community and the VPN Routing
and Forwarding (VRF) Route Import Extended Community.
2. 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 [RFC2119].
3. Terminology
Throughout this document, we will use the term "VPN-IP route" to mean
a route that is either in the VPN-IPv4 address family [RFC4364] or in
the VPN-IPv6 address family [RFC4659].
4. MCAST-VPN NLRI
This document defines a new BGP NLRI, called the MCAST-VPN NLRI.
+-----------------------------------+
| Route Type (1 octet) |
+-----------------------------------+
| Length (1 octet) |
+-----------------------------------+
| Route Type specific (variable) |
+-----------------------------------+
The Route Type field defines the encoding of the rest of MCAST-VPN
NLRI (Route Type specific MCAST-VPN NLRI).
The Length field indicates the length in octets of the Route Type
specific field of the MCAST-VPN NLRI.
This document defines the following Route Types for A-D routes:
The following describes the format of the Route Type specific MCAST-
VPN NLRI for various Route Types defined in this document.
+-----------------------------------+
| RD (8 octets) |
+-----------------------------------+
| Originating Router’s IP Addr |
+-----------------------------------+
+-----------------------------------+
| RD (8 octets) |
+-----------------------------------+
| Source AS (4 octets) |
+-----------------------------------+
Two-octet ASNs are encoded in the two low-order octets of the Source
AS field, with the two high-order octets set to zero.
+-----------------------------------+
| RD (8 octets) |
+-----------------------------------+
| Multicast Source Length (1 octet) |
+-----------------------------------+
| Multicast Source (variable) |
+-----------------------------------+
| Multicast Group Length (1 octet) |
+-----------------------------------+
| Multicast Group (variable) |
+-----------------------------------+
| Originating Router’s IP Addr |
+-----------------------------------+
The Multicast Group field contains the C-G address or C-LDP (Label
Distribution Protocol) MP Opaque Value Element (use of C-LDP MP
Opaque Value Element is described in the Section 11.3.2. If the
Multicast Group field contains an IPv4 address, then the value of the
Multicast Group Length field is 32. If the Multicast Group field
contains an IPv6 address, then the value of the Multicast Group
Length field is 128.
+-----------------------------------+
| Route Key (variable) |
+-----------------------------------+
| Originating Router’s IP Addr |
+-----------------------------------+
Details of the use of the Leaf A-D route may be found in Sections
9.2.3.2.1, 9.2.3.3, 9.2.3.4.1, 9.2.3.5, and 12.3.
+-----------------------------------+
| RD (8 octets) |
+-----------------------------------+
| Multicast Source Length (1 octet) |
+-----------------------------------+
| Multicast Source (variable) |
+-----------------------------------+
| Multicast Group Length (1 octet) |
+-----------------------------------+
| Multicast Group (variable) |
+-----------------------------------+
Use of the Source Active A-D routes with the Multicast Source Length
field of 0 is outside the scope of this document.
The Multicast Group field contains the C-G address. If the Multicast
Group field contains an IPv4 address, then the value of the Multicast
Group Length field is 32. If the Multicast Group field contains an
IPv6 address, then the value of the Multicast Group Length field is
128.
A Shared Tree Join route and a Source Tree Join Route Type specific
MCAST-VPN NLRI consists of the following:
+-----------------------------------+
| RD (8 octets) |
+-----------------------------------+
| Source AS (4 octets) |
+-----------------------------------+
| Multicast Source Length (1 octet) |
+-----------------------------------+
| Multicast Source (variable) |
+-----------------------------------+
| Multicast Group Length (1 octet) |
+-----------------------------------+
| Multicast Group (variable) |
+-----------------------------------+
For a Shared Tree Join route, the Multicast Source field contains the
C-RP address; for a Source Tree Join route, the Multicast Source
field contains the C-S address. If the Multicast Source field
contains an IPv4 address, then the value of the Multicast Source
Length field is 32. If the Multicast Source field contains an IPv6
address, then the value of the Multicast Source Length field is 128.
The Multicast Group field contains the C-G address or C-MP Opaque
Value Element. If the Multicast Group field contains an IPv4
address, then the value of the Multicast Group Length field is 32.
If the Multicast Group field contains an IPv6 address, then the value
of the Multicast Group Length field is 128.
This document defines and uses a new BGP attribute called the
"P-Multicast Service Interface Tunnel (PMSI Tunnel) attribute". This
is an optional transitive BGP attribute. The format of this
attribute is defined as follows:
+---------------------------------+
| Flags (1 octet) |
+---------------------------------+
| Tunnel Type (1 octets) |
+---------------------------------+
| MPLS Label (3 octets) |
+---------------------------------+
| Tunnel Identifier (variable) |
+---------------------------------+
0 1 2 3 4 5 6 7
+-+-+-+-+-+-+-+-+
| reserved |L|
+-+-+-+-+-+-+-+-+
The Tunnel Type identifies the type of the tunneling technology used
to establish the PMSI tunnel. The type determines the syntax and
semantics of the Tunnel Identifier field. This document defines the
following Tunnel Types:
When the Tunnel Type is set to "No tunnel information present", the
PMSI Tunnel attribute carries no tunnel information (no Tunnel
Identifier). This type is to be used only in the following case: to
enable explicit tracking for a particular customer multicast flow (by
setting the Leaf Information Required flag to 1), but without binding
this flow to a particular provider tunnel (by omitting any tunnel
information).
When the Tunnel Type is set to PIM-SSM tree, the Tunnel Identifier is
<P-Root Node Address, P-Multicast Group>. The node that originates
the attribute MUST use the address carried in the P-Root Node Address
as the source IP address for the IP/GRE encapsulation of the MVPN
data. The P-Multicast Group in the Tunnel Identifier of the Tunnel
attribute MUST NOT be expected to be the same group for all Intra-AS
A-D routes for the same MVPN. According to [RFC4607], the group
address can be locally allocated by the originating PE without any
consideration for the group address used by other PE on the same
MVPN.
When the Tunnel Type is set to BIDIR-PIM tree, the Tunnel Identifier
is <Sender Address, P-Multicast Group>. The node that originated the
attribute MUST use the address carried in the Sender Address as the
source IP address for the IP/GRE encapsulation of the MVPN data.
When the Tunnel Type is set to PIM-SM or BIDIR-PIM tree, then the
P-Multicast Group in the Tunnel Identifier of the Tunnel attribute
SHOULD contain the same multicast group address for all Intra-AS
I-PMSI A-D routes for the same MVPN originated by PEs within a given
AS. How this multicast group address is chosen is outside the scope
of this specification.
When a router that receives a BGP Update that contains the PMSI
Tunnel attribute with its Partial bit set determines that the
attribute is malformed, the router SHOULD treat this Update as though
all the routes contained in this Update had been withdrawn.
This document defines a new BGP Extended Community called "VRF Route
Import".
+---------------------------------+
| PE Address |
+---------------------------------+
| Label (3 octets) |
+---------------------------------+
.......
+---------------------------------+
| PE Address |
+---------------------------------+
| Label (3 octets) |
+---------------------------------+
The Label field contains an MPLS label encoded as 3 octets, where the
high-order 20 bits contain the label value.
9. MVPN Auto-Discovery/Binding
The route carries a single MCAST-VPN NLRI with the RD set to the RD
of the VRF, and the Originating Router’s IP Address field set to the
IP address that the PE places in the Global Administrator field of
the VRF Route Import Extended Community of the VPN-IP routes
advertised by the PE. Note that the <RD, Originating Router’s IP
Address> tuple uniquely identifies a given multicast VRF.
The route carries the PMSI Tunnel attribute if and only if an I-PMSI
is used for the MVPN (the conditions under which an I-PMSI is used
can be found in [MVPN]). Depending on the technology used for the
P-tunnel for the MVPN on the PE, the PMSI Tunnel attribute of the
Intra-AS I-PMSI A-D route is constructed as follows.
participating in this MVPN and are part of the same AS. In addition,
in the inter-AS scenario with non-segmented inter-AS tunnels, the
tunnel types have to be supported by all PEs that are participating
in this MVPN, irrespective of whether or not these PEs are in the
same AS.
The Next Hop field of the MP_REACH_NLRI attribute of the route MUST
be set to the same IP address as the one carried in the Originating
Router’s IP Address field.
If the route does not carry the PMSI Tunnel attribute and ingress
replication is not used, either a) the PE that originated the route
will be using only S-PMSIs to send traffic to remote PEs, or b) as a
matter of policy, the PE that originated the route cannot send
multicast traffic from the MVPN sites connected to it to other sites
of that MVPN (in other words, the sites connected to the PE are only
in the Receiver Sites set).
+ If the PMSI Tunnel attribute does not carry a label, then all
packets that are received on the P-multicast tree, as identified
by the PMSI Tunnel attribute, are forwarded using the VRF that has
at least one of its import Route Targets that matches one of the
Route Targets of the received Intra-AS I-PMSI A-D route.
+ If the PMSI Tunnel attribute has the Tunnel Type set to mLDP P2MP
LSP, PIM-SSM tree, PIM-SM tree, BIDIR-PIM tree, or RSVP-TE P2MP
LSP, and the attribute also carries an MPLS label, then this is an
upstream-assigned label, and all packets that are received on the
P-multicast tree, as identified by the PMSI Tunnel attribute, with
that upstream-assigned label are forwarded using the VRF that has
at least one of its import Route Targets that matches one of the
Route Targets of the received Intra-AS I-PMSI A-D route.
+ The ASBR MUST be configured with the tunnel types for the intra-AS
segments of the MVPNs supported by the ASBR, as well as (depending
on the tunnel type) the information needed to create the PMSI
attribute for these tunnel types. Note that instead of being
configured, the ASBR MAY derive the tunnel types from the Intra-AS
I-PMSI A-D routes received by the ASBR.
(2) To allow more control over spreading MVPN traffic among multiple
ASBRs within a given AS, it is recommended that each ASBR have a
distinct RD per each MVPN; in which case, such an RD SHOULD be
auto-configured.
+ The route carries a single MCAST-VPN NLRI with the RD set to the
RD configured for that MVPN on the ASBR, and the Source AS set to
the ASN of the ASBR.
An Inter-AS I-PMSI A-D route for a given <AS, MVPN> indicates the
presence of the MVPN sites connected to one or more PEs of the AS.
If, for a given MVPN and a given AS, all of the sites connected to
the PEs within the AS are known a priori to have no multicast
sources, then ASBRs of that AS MAY refrain from originating an Inter-
AS I-PMSI A-D route for that MVPN at all.
Suppose that ASBR A installs an Inter-AS I-PMSI A-D route for MVPN V
that originated at a particular AS, AS1. The BGP Next Hop of that
route becomes A’s "upstream multicast hop" on a multicast
distribution tree for V that is rooted at AS1. When the Inter-AS
I-PMSI A-D routes have been distributed to all the necessary ASes,
they define a "reverse path" from any AS that supports MVPN V back to
AS1. For instance, if AS2 supports MVPN V, then there will be a
reverse path for MVPN V from AS2 to AS1. This path is a sequence of
ASBRs, the first of which is in AS2, and the last of which is in AS1.
Each ASBR in the sequence is the BGP Next Hop of the previous ASBR in
the sequence on the given Inter-AS I-PMSI A-D route.
The precise rules for distributing and processing the Inter-AS I-PMSI
A-D routes across ASes are given in the following sections.
When an ASBR receives, from one of its EBGP neighbors, a BGP Update
message that carries an Inter-AS I-PMSI A-D route, if (a) at least
one of the Route Targets carried in the message matches one of the
import Route Targets configured on the ASBR, and (b) the ASBR
determines that the received route is the best route for its NLRI,
the ASBR re-advertises this route to other PEs and ASBRs within its
own AS (handling of this route by other PEs and ASBRs is described in
Section 9.2.3.4).
When re-advertising an Inter-AS I-PMSI A-D route, the ASBR MUST set
the Next Hop field of the MP_REACH_NLRI attribute to a routable IP
address of the ASBR.
If the received Inter-AS I-PMSI A-D route carries the PMSI Tunnel
attribute, then, depending on the technology used to instantiate the
intra-AS segment of the inter-AS tunnel, the ASBR constructs the PMSI
Tunnel attribute of the re-advertised Inter-AS I-PMSI A-D route as
follows.
If the ASBR has already advertised Inter-AS I-PMSI A-D routes for
two or more MVPNs that it now desires to aggregate, then the ASBR
MUST re-advertise those routes. The re-advertised routes MUST be
the same as the original ones, except for the PMSI Tunnel
attribute and the MVPN label.
In addition, the ASBR MUST send to the EBGP neighbor from whom it
received the Inter-AS I-PMSI A-D route, a BGP Update message that
carries a Leaf A-D route constructed as follows.
+ The route carries a single MCAST-VPN NLRI with the Route Key field
set to the MCAST-VPN NLRI of the Inter-AS I-PMSI A-D route
received from that neighbor and the Originating Router’s IP
address set to the IP address of the ASBR (this MUST be a routable
IP address).
+ The Leaf A-D route MUST include the PMSI Tunnel attribute with the
Tunnel Type set to Ingress Replication and the Tunnel Identifier
set to a routable address of the advertising router. The PMSI
Tunnel attribute MUST carry a downstream-assigned MPLS label that
is used by the advertising router to demultiplex the MVPN traffic
received over a unicast tunnel from the EBGP neighbor.
The ASBR MUST set up its forwarding state such that packets that
arrive on the one-hop ASBR-ASBR LSP, as specified in the PMSI Tunnel
attribute of the Leaf A-D route, are transmitted on the intra-AS
segment, as specified in the PMSI Tunnel attribute of the Inter-AS
I-PMSI A-D route that the ASBR re-advertises in its own AS. However,
the packets MAY be filtered before forwarding, as specified in
Section 9.2.3.6.
When an ASBR receives, via EBGP, a Leaf A-D route originated by its
neighbor ASBR, if the Route Target carried in the Extended
Communities attribute of the route matches one of the ASBR Import RT
(auto-)configured on the ASBR, the ASBR performs the following.
+ The ASBR finds an Inter-AS I-PMSI A-D route whose MCAST-VPN NLRI
has the same value as the Route Key field of the Leaf A-D route.
When a PE/ASBR router receives, from one of its IBGP neighbors, a BGP
Update message that carries an Inter-AS I-PMSI A-D route, if (a) at
least one of the Route Targets carried in the message matches one of
the import Route Targets configured on the PE/ASBR, and (b) the
PE/ASBR determines that the received route is the best route to the
destination carried in the NLRI of the route, the PE/ASBR performs
the following operations.
+ If the router is a PE, then the router imports the route into the
VRF(s) that have the matching import Route Targets.
+ If the received Inter-AS I-PMSI A-D route carries the PMSI Tunnel
attribute with the Tunnel Type set to mLDP P2MP LSP, PIM-SSM tree,
PIM-SM tree, or BIDIR-PIM tree, the PE/ASBR SHOULD join as soon as
possible the P-multicast tree whose identity is carried in the
Tunnel Identifier.
+ If the received Inter-AS I-PMSI A-D route carries the PMSI Tunnel
attribute with the Tunnel Identifier set to RSVP-TE P2MP LSP, then
the ASBR that originated the route MUST establish an RSVP-TE P2MP
LSP with the local PE/ASBR as a leaf. This LSP MAY have been
established before the local PE/ASBR receives the route, or it MAY
be established after the local PE receives the route.
+ If the received Inter-AS I-PMSI A-D route carries the PMSI Tunnel
attribute with the Tunnel Type set to mLDP P2MP LSP, RSVP-TE P2MP
LSP, PIM-SSM, PIM-SM tree, or BIDIR-PIM tree, but the attribute
does not carry a label, then the P-multicast tree, as identified
by the PMSI Tunnel attribute, is an intra-AS LSP segment that is
part of the inter-AS tunnel for the MVPN advertised by the Inter-
AS I-PMSI A-D route and rooted at the AS that originated the
Inter-AS I-PMSI A-D route. If the PMSI Tunnel attribute carries a
(upstream-assigned) label, then a combination of this tree and the
label identifies the intra-AS segment. If the receiving router is
an ASBR, this intra-AS segment may further be stitched to the
ASBR-ASBR inter-AS segment of the inter-AS tunnel. If the PE/ASBR
has local receivers in the MVPN, packets received over the intra-
AS segment must be forwarded to the local receivers using the
local VRF.
+ The route carries a single MCAST-VPN NLRI with the Route Key field
set to the MCAST-VPN NLRI of the Inter-AS I-PMSI A-D route
received from that neighbor and the Originating Router’s IP
address set to the IP address of the PE/ASBR (this MUST be a
routable IP address).
+ If the received Inter-AS I-PMSI A-D route carries the PMSI Tunnel
attribute with the Tunnel Type set to Ingress Replication, then
the Leaf A-D route MUST carry the PMSI Tunnel attribute with the
Tunnel Type set to Ingress Replication. The Tunnel Identifier
MUST carry a routable address of the PE/ASBR. The PMSI Tunnel
attribute MUST carry a downstream-assigned MPLS label that is used
to demultiplex the MVPN traffic received over a unicast tunnel by
the PE/ASBR.
When an ASBR receives, via IBGP, a Leaf A-D route, if the Route
Target carried in the Extended Communities attribute of the route
matches one of the ASBR Import RT (auto-)configured on the ASBR, the
ASBR performs the following.
The ASBR finds an Inter-AS I-PMSI A-D route whose MCAST-VPN NLRI has
the same value as the Route Key field of the Leaf A-D route.
The received route may carry either (a) no PMSI Tunnel attribute, or
(b) the PMSI Tunnel attribute, but only with the Tunnel Type set to
Ingress Replication.
If the received route does not carry the PMSI Tunnel attribute, the
ASBR uses the information from the received route to determine the
leaves of the P-multicast tree rooted at the ASBR that would be used
for the intra-AS segment associated with the found Inter-AS I-PMSI
A-D route. The IP address of a leaf is the IP address carried in the
Originating Router’s IP address field of the received Leaf A-D route.
If the received route carries the PMSI Tunnel attribute with the
Tunnel Type set to Ingress Replication, the ASBR uses the information
carried by the route to construct the intra-AS segment with ingress
replication.
An ASBR that has a given Inter-AS I-PMSI A-D route MAY discard some
of the traffic carried in the tunnel specified in the PMSI Tunnel
attribute of this route, if the ASBR determines that there are no
downstream receivers for that traffic.
It is possible to deploy MVPN such that the multicast routing and the
unicast routing are "non-congruent". For instance, the CEs may be
distributing to the PEs a special set of unicast routes that are to
be used exclusively for the purpose of upstream multicast hop
selection, and not used for unicast routing at all. (For example,
when BGP is the CE-PE unicast routing protocol, the CEs may be using
SAFI 2 ("Network Layer Reachability Information used for multicast
If there is a separate UMH VRF, it MAY have its own import and export
Route Targets, different from the ones used by the unicast VRF.
These Route Targets MUST be used to control distribution of auto-
discovery routes. In addition, the export Route Targets of the UMH
VRF are added to the Route Targets used by the unicast VRF when
originating (unicast) VPN-IP routes. The import Route Targets
associated with a given UMH VRF are used to determine which of the
received (unicast) VPN-IP routes should be accepted into the UMH VRF.
If an MVPN has a UMH VRF distinct from its unicast VRF, then one
option to support non-congruency is to exchange the routes to/from
that UMH VRF by using the same AFI/SAFI as used by the routes from
the unicast VRF.
Another option is to exchange the routes to/from the UMH VRF using
the IPv4 or IPv6 AFI (as appropriate), but with the SAFI set to SAFI
129 "Multicast for BGP/MPLS IP Virtual Private Networks (VPNs)"
[IANA-SAFI]. The NLRI carried by these routes is defined as follows:
+---------------------------+
| Length (1 octet) |
+---------------------------+
| Prefix (variable) |
+---------------------------+
a) Length:
b) Prefix:
These routes MUST carry the VRF Route Import Extended Community. If,
for a given MVPN, BGP is used for exchanging C-multicast routes, or
if segmented inter-AS tunnels are used, then these routes MUST also
carry the Source AS Extended Community.
The semantics of the route are such that the PE has one or more
receivers for (C-S,C-G) in the sites connected to the PE (the route
has the (C-S,C-G) Join semantics).
The semantics of the route are such that the PE has one or more
receivers for (C-*,C-G) in the sites connected to the PE (the route
has the (C-*,C-G) Join semantics).
If the PE does not have state for <X, Y> in the VRF associated with
the CE, then the PE constructs a Source Tree Join C-multicast route
whose MCAST-VPN NLRI contains X as the Multicast Source field, and Y
as the Multicast Group field.
From the selected UMH route, the local PE extracts (a) the ASN of the
upstream PE (as carried in the Source AS Extended Community of the
route), and (b) the C-multicast Import RT of the VRF on the upstream
PE (the value of this C-multicast Import RT is the value of the VRF
Route Import Extended Community carried by the route). The Source AS
field in the C-multicast route is set to that AS. The Route Target
Extended Community of the C-multicast route is set to that
C-multicast Import RT.
If the local and the upstream PEs are in the same AS, then the RD of
the advertised MCAST-VPN NLRI is set to the RD of the VPN-IP route
that contains the address carried in the Multicast Source field.
If the local and the upstream PEs are in different ASes, then the
local PE finds in its VRF an Inter-AS I-PMSI A-D route whose Source
AS field carries the ASN of the upstream PE. The RD of the found
Inter-AS I-PMSI A-D route is used as the RD of the advertised
C-multicast route. The local PE constructs an IP-based Route Target
Extended Community by placing the Next Hop of the found Inter-AS I-
PMSI A-D route in the Global Administrator field of this Community,
with the Local Administrator field of this Community set to 0; it
then adds this Community to the Extended Communities attribute of the
C-multicast route. (Note that this Route Target is the same as the
ASBR Import RT of the ASBR identified by the Next Hop of the found
Inter-AS I-PMSI A-D route.)
If the Next Hop of the found (Inter-AS or Intra-AS) I-PMSI A-D route
is an EBGP neighbor of the local PE, then the PE advertises the C-
multicast route to that neighbor. If the Next Hop of the found
(Inter-AS or Intra-AS) I-PMSI A-D route is within the same AS as the
local PE, then the PE advertises the C-multicast route into IBGP.
result is that a different UMH route is selected, then for all C-G,
any previously originated C-multicast routes for (C-S,C-G) MUST be
re-originated.
If the ASBR is the ASBR that originated the found Inter-AS I-PMSI A-D
route, then before re-advertising the C-multicast route into IBGP,
the ASBR removes from the route the Route Target that matches one of
the ASBR Import RTs (auto-)configured on the ASBR.
If the ASBR is not the ASBR that originated the found Inter-AS I-PMSI
A-D route, then before re-advertising the C-multicast route, the ASBR
modifies the Extended Communities attribute of the C-multicast route
by replacing the Route Target of the route that matches one of the
ASBR Import RTs (auto-)configured on the ASBR with a new Route Target
constructed as follows. The new Route Target is an IP-based Route
Target that has the Global Administrator field set to the Next Hop of
the found Inter-AS I-PMSI A-D route, and Local Administrator field of
this Community set to 0. Note that this newly constructed Route
Target is the same as the ASBR Import RT of the ASBR identified by
the Next Hop of the found Inter-AS I-PMSI A-D route. The rest of the
Extended Communities attribute of the route SHOULD be passed
unmodified.
If the received route has the Route Type set to Source Tree Join,
then the PE creates a new (C-S,C-G) state in its MVPN-TIB from the
Multicast Source and Multicast Group fields in the MCAST-VPN NLRI of
the route, if such a state does not already exist.
When, for a said VRF, the last Source Tree Join C-multicast route for
(C-S,C-G) is withdrawn, resulting in the situation where the VRF
contains no Source Tree Join C-multicast route for (C-S,C-G), the PE
MUST remove the I-PMSI/S-PMSI from the outgoing interface list of the
(C-S,C-G) state. Depending on the (C-S,C-G) state of the PE-CE
interfaces, this may result in the PE using PIM procedures to prune
itself off the (C-S,C-G) tree. If C-G is not in the SSM range for
the VRF, then removing the I-PMSI/S-PMSI from the outgoing interface
list of the (C-S,C-G) state SHOULD be done after a delay that is
controlled by a timer. The value of the timer MUST be configurable.
The purpose of this timer is to ensure that the PE does not stop
forwarding (C-S,C-G) onto a PMSI tunnel until all the PEs of the same
MVPN have had time to receive the withdrawal of the Source Active A-D
route for (C-S,C-G) (see Section 13.1), and the PE connected to C-RP
starts forwarding (C-S,C-G) on the C-RPT.
If the received route has the Route Type set to Shared Tree Join,
then the PE creates a new (C-*,C-G) state in its MVPN-TIB with the RP
address for that state taken from the Multicast Source, and C-G for
that state taken from the Multicast Group fields of the MCAST-VPN
NLRI of the route, if such a state does not already exist. If there
is no S-PMSI for (C-*,C-G), then the PE adds I-PMSI to the outgoing
When, for a said VRF, the last Shared Tree Join C-multicast route for
(C-*,C-G) is withdrawn, resulting in the situation where the VRF
contains no Shared Tree Join C-multicast route for (C-*,C-G), the PE
MUST remove the I-PMSI/S-PMSI from the outgoing interface list of the
(C-*,C-G) state. Depending on the (C-*,C-G) state of the PE-CE
interfaces, this may result in the PE using PIM procedures to prune
itself off the (C-*,C-G) tree.
Note that C-multicast routes are "de facto" aggregated by BGP. This
is because the MCAST-VPN NLRIs advertised by multiple PEs, for a
C-multicast route for a particular C-S and C-G (or a particular C-*
and C-G) of a given MVPN are identical.
Further, a BGP receiver, which receives multiple such routes with the
same NLRI for the same C-multicast route, will potentially create
forwarding state based on a single C-multicast route. Per the
procedures described in Section 11.3, this forwarding state will be
the same as the state that would have been created based on another
route with same NLRI.
Depending on the type of P-multicast tree used for the P-tunnel, the
PMSI Tunnel attribute of the S-PMSI A-D route is constructed as
follows:
If all these aggregated S-PMSIs belong to the same MVPN, and this
MVPN uses PIM as its C-multicast routing protocol, then the
corresponding S-PMSI A-D routes MAY carry an MPLS upstream-assigned
label [RFC5331]. Moreover, in this case, the labels MUST be distinct
on a per-MVPN basis and MAY be distinct on a per-route basis.
If all these aggregated S-PMSIs belong to the MVPN(s) that uses mLDP
as its C-multicast routing protocol, then the corresponding S-PMSI
A-D routes MUST carry an MPLS upstream-assigned label [RFC5331], and
these labels MUST be distinct on a per-route (per-mLDP FEC) basis,
irrespective of whether the aggregated S-PMSIs belong to the same or
different MVPNs.
The Next Hop field of the MP_REACH_NLRI attribute of the route MUST
be set to the same IP address as the one carried in the Originating
Router’s IP Address field.
The route always carries a set of Route Targets. The default set of
Route Targets is determined as follows:
Procedures for handling an S-PMSI A-D route by ASBRs (both within and
outside of the AS of the PE that originates the route) are the same
as specified in Section 9.2.3, except that instead of Inter-AS I-PMSI
A-D routes, the procedures apply to S-PMSI A-D routes.
+ The S-PMSI A-D route and the Inter-AS I-PMSI A-D route originate
in the same AS. The Inter-AS I-PMSI A-D route carries the
originating AS in the Source AS field of the NLRI of the route and
in the AS_PATH attribute of the route. The S-PMSI A-D route
carries the originating AS in the AS_PATH attribute of the route.
+ The S-PMSI A-D route and the Inter-AS I-PMSI A-D route have
exactly the same set of RTs.
+ For each (C-S,C-G) mentioned in the S-PMSI route, if the ASBR has
installed a Source Tree Join (C-S,C-G) C-multicast route, then the
S-PMSI route was originated by the upstream PE of the C-multicast
route. The address of the upstream PE is carried in the RT of the
C-multicast route. The address of the PE that originated the
S-PMSI route is carried in the Originating Router’s IP Address
field of the MCAST-VPN NLRI of the route.
An ASBR that merges an S-PMSI A-D route into an Inter-AS I-PMSI A-D
route MUST NOT re-advertise the S-PMSI A-D route.
I-PMSI A-D routes, the procedures apply to S-PMSI A-D routes and (b)
a PE performs procedures specified in that section only if, in
addition to the criteria there, one of the following is true:
+ the PE does not originate a Source Tree Join (C-S,C-G), has not
received any Source Active A-D routes for (C-S,C-G), but does
originate a Shared Tree Join (C-*,C-G) route. The upstream PE for
that route is the PE that originates the received S-PMSI A-D
route.
If the received S-PMSI A-D route has a PMSI Tunnel attribute with the
Leaf Information Required flag set to 1, then the PE originates a
Leaf A-D route. The Route Key of the Leaf A-D route is set to the
MCAST-VPN NLRI of the S-PMSI A-D route. The rest of the Leaf A-D
route is constructed using the same procedures as specified in
section 9.2.3.4.1, except that instead of originating Leaf A-D routes
in response to receiving Inter-AS I-PMSI A-D routes, the procedures
apply to originating Leaf A-D routes in response to receiving S-PMSI
A-D routes.
group addresses belonging to the SSM range. The procedures also MUST
NOT be applied when the C-multicast routing protocol is BIDIR-PIM
[RFC5015].
The procedures of this section are applicable only to MVPNs that use
both shared (i.e., rooted at a C-RP) and source (i.e., rooted at a
C-S) inter-site C-trees.
These procedures are not applicable to MVPNs that do not use shared
inter-site C-trees and rely solely on source inter-site C-trees. See
Section 14 for the procedures applicable to that scenario.
Whether or not a given MVPN uses both inter-site shared and source
C-trees must be known a priori (e.g., via provisioning).
+ The RD in this NLRI is set to the RD of the VRF of the MVPN on the
PE.
+ The Multicast Group field MUST be set to C-G. The Multicast Group
Length field is set appropriately to reflect this.
The Next Hop field of the MP_REACH_NLRI attribute MUST be set to the
IP address that the PE places in the Global Administrator field of
the VRF Route Import Extended Community of the VPN-IP routes
advertised by the PE from the MVPN’s VRF.
The route SHOULD carry the same set of Route Targets as the Intra-AS
I-PMSI A-D route of the MVPN originated by the PE.
Using the normal BGP procedures, the Source Active A-D route is
propagated to all the PEs of the MVPN.
Note that the advertisement of a Source Active A-D route for a given
(C-S,C-G) could be combined, if desired, with the advertisement of an
S-PMSI A-D route for the same (C-S,C-G). This is accomplished by
using the same BGP Update message to carry both the NLRI of the
S-PMSI A-D route and the NLRI of the Source Active A-D route.
When a PE receives a new Source Active A-D route from some other PE,
the PE finds a VRF whose import Route Targets match one or more of
the Route Targets carried by the route. If the match is found, then
the PE updates the VRF with the received route.
When (as a result of receiving PIM messages from one of its CEs) a PE
creates in one of its MVPN-TIBs a (new) (C-*,C-G) entry with a non-
empty outgoing interface list that contains one or more PE-CE
interfaces, the PE MUST check if it has any matching Source Active
A-D routes. If there is one or more such matching route, such that
the PE does not have (C-S,C-G) state in its MVPN-TIB for (C-S,C-G)
carried in the route, then the PE selects one of them (using the BGP
route selection procedures), and sets up its forwarding path to
receive (C-S,C-G) traffic from the tunnel that the originator of the
selected Source Active A-D route uses for sending (C-S,C-G).
The PE finds a (C-*,C-G) entry in the MVPN-TIB whose C-G is the same
as the C-G carried in the Multicast Group field of the Source Active
A-D route.
If the outgoing interface list (oif) for the found (C-*,C-G) entry in
the MVPN-TIB on the PE contains either I-PMSI or S-PMSI, and the PE
does not originate the Source Tree Join C-multicast route for
(C-S,C-G) (where C-S is address carried in the Multicast Source field
and C-G is the address carried in the Multicast Group field of the
received Source Active A-D route), then the PE MUST transition the
(C-S,C-G,rpt) downstream state machine on I-PMSI/S-PMSI to the Prune
state. (Conceptually, the C-PIM state machine on the PE will act "as
if" it had received Prune (C-S,C-G,rpt) on I-PMSI/S-PMSI, without
Note that before C-S is pruned off the shared tree, there is a
possibility to have (C-S,C-G) packets sent at the same time on the
PMSI by distinct PEs. This would result in a transient unnecessary
traffic on the provider backbone. However, no duplicates will reach
customer hosts subscribed to C-G as long as the downstream PEs apply
procedures described in Section 9.1 of [MVPN].
Also, note that except for the scenario described in the third
paragraph of this section, in all other scenarios relying solely on
PIM procedures on the PE is sufficient to ensure the correct behavior
when pruning sources off the shared tree.
These procedures are not applicable to MVPNs that use both shared and
shortest path inter-site C-trees. See Section 13 for the procedures
applicable to that scenario.
+ The RD in this NLRI is set to the RD of the VRF of the MVPN on the
PE.
The Next Hop field of the MP_REACH_NLRI attribute MUST be set to the
IP address that the PE places in the Global Administrator field of
the VRF Route Import Extended Community of the VPN-IP routes
advertised by the PE.
The route SHOULD carry the same set of Route Targets as the Intra-AS
I-PMSI A-D route of the MVPN originated by the PE.
Using the normal BGP procedures, the Source Active A-D route is
propagated to all the PEs of the MVPN.
When a PE receives a new Source Active A-D route, the PE finds a VRF
whose import Route Targets match one or more of the Route Targets
carried by the route. If the match is found, then the PE updates the
VRF with the received route.
When (as a result of receiving PIM messages from one of its CEs) a PE
creates, in one of its MVPN-TIBs, a (new) (C-*,C-G) entry with a non-
empty outgoing interface list that contains one or more PE-CE
interfaces, the PE MUST check if it has any matching Source Active
A-D routes. If there is one or more such matching routes, and the
best path to C-S carried in the matching route(s) is reachable
through some other PE, then for each such route the PE MUST originate
a Source Tree Join C-multicast route. If there is one or more such
matching routes, and the best path to C-S carried in the matching
route(s) is reachable through a CE connected to the PE, then for each
such route the PE MUST originate a PIM Join (C-S,C-G) towards the CE.
+ Until the withdrawals are actually sent, multicast traffic for the
C-multicast routes in question will be continued to be transmitted
to the PE, which will just have to discard it. Note that the PE
may receive useless (multicast) traffic anyway, irrespective of
dampening of withdrawals of C-multicast routes due to the use of
I-PMSIs.
A PE router MUST NOT accept, from CEs routes, with MCAST-VPN SAFI.
This document defines a new BGP Extended Community called "VRF Route
Import" (Type value 0x010b). This Community is IP address specific,
of an extended type, and is transitive.
19. Acknowledgements
20. References
[RFC4271] Rekhter, Y., Ed., Li, T., Ed., and S. Hares, Ed., "A
Border Gateway Protocol 4 (BGP-4)", RFC 4271, January
2006.
[mLDP] Wijnands, IJ., Ed., Minei, I., Ed., Kompella, K., and B.
Thomas, "Label Distribution Protocol Extensions for
Point-to-Multipoint and Multipoint-to-Multipoint Label
Switched Paths", RFC 6388, November 2011.
[PIM-ANYCAST-RP]
Farinacci, D. and Y. Cai, "Anycast-RP Using Protocol
Independent Multicast (PIM)", RFC 4610, August 2006.
[RT-CONSTRAIN]
Marques, P., Bonica, R., Fang, L., Martini, L., Raszuk,
R., Patel, K., and J. Guichard, "Constrained Route
Distribution for Border Gateway Protocol/MultiProtocol
Label Switching (BGP/MPLS) Internet Protocol (IP) Virtual
Private Networks (VPNs)", RFC 4684, November 2006.
Authors’ Addresses
Rahul Aggarwal
Juniper Networks
1194 North Mathilda Ave.
Sunnyvale, CA 94089
EMail: raggarwa_1@yahoo.com
Eric C. Rosen
Cisco Systems, Inc.
1414 Massachusetts Avenue
Boxborough, MA, 01719
EMail: erosen@cisco.com
Thomas Morin
France Telecom - Orange
2, avenue Pierre-Marzin
22307 Lannion Cedex
France
EMail: thomas.morin@orange.com
Yakov Rekhter
Juniper Networks
1194 North Mathilda Ave.
Sunnyvale, CA 94089
EMail: yakov@juniper.net