draft-ietf-bess-mvpn-fast-failover-00.txt   draft-ietf-bess-mvpn-fast-failover-01.txt 
Network Working Group T. Morin, Ed. Network Working Group T. Morin, Ed.
Internet-Draft Orange Internet-Draft Orange
Intended status: Standards Track R. Kebler, Ed. Intended status: Standards Track R. Kebler, Ed.
Expires: June 11, 2016 Juniper Networks Expires: January 8, 2017 Juniper Networks
December 9, 2015 July 7, 2016
Multicast VPN fast upstream failover Multicast VPN fast upstream failover
draft-ietf-bess-mvpn-fast-failover-00 draft-ietf-bess-mvpn-fast-failover-01
Abstract Abstract
This document defines multicast VPN extensions and procedures that This document defines multicast VPN extensions and procedures that
allow fast failover for upstream failures, by allowing downstream PEs allow fast failover for upstream failures, by allowing downstream PEs
to take into account the status of Provider-Tunnels (P-tunnels) when to take into account the status of Provider-Tunnels (P-tunnels) when
selecting the upstream PE for a VPN multicast flow, and extending BGP selecting the upstream PE for a VPN multicast flow, and extending BGP
MVPN routing so that a C-multicast route can be advertized toward a MVPN routing so that a C-multicast route can be advertized toward a
standby upstream PE. standby upstream PE.
skipping to change at page 1, line 41 skipping to change at page 1, line 41
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 June 11, 2016. This Internet-Draft will expire on January 8, 2017.
Copyright Notice Copyright Notice
Copyright (c) 2015 IETF Trust and the persons identified as the Copyright (c) 2016 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
skipping to change at page 2, line 29 skipping to change at page 2, line 29
3. UMH Selection based on tunnel status . . . . . . . . . . . . 3 3. UMH Selection based on tunnel status . . . . . . . . . . . . 3
3.1. Determining the status of a tunnel . . . . . . . . . . . 4 3.1. Determining the status of a tunnel . . . . . . . . . . . 4
3.1.1. mVPN tunnel root tracking . . . . . . . . . . . . . . 5 3.1.1. mVPN tunnel root tracking . . . . . . . . . . . . . . 5
3.1.2. PE-P Upstream link status . . . . . . . . . . . . . . 5 3.1.2. PE-P Upstream link status . . . . . . . . . . . . . . 5
3.1.3. P2MP RSVP-TE tunnels . . . . . . . . . . . . . . . . 5 3.1.3. P2MP RSVP-TE tunnels . . . . . . . . . . . . . . . . 5
3.1.4. Leaf-initiated P-tunnels . . . . . . . . . . . . . . 6 3.1.4. Leaf-initiated P-tunnels . . . . . . . . . . . . . . 6
3.1.5. (S,G) counter information . . . . . . . . . . . . . . 6 3.1.5. (S,G) counter information . . . . . . . . . . . . . . 6
3.1.6. BFD Discriminator . . . . . . . . . . . . . . . . . . 6 3.1.6. BFD Discriminator . . . . . . . . . . . . . . . . . . 6
3.1.7. Per PE-CE link BFD Discriminator . . . . . . . . . . 8 3.1.7. Per PE-CE link BFD Discriminator . . . . . . . . . . 8
4. Standby C-multicast route . . . . . . . . . . . . . . . . . . 9 4. Standby C-multicast route . . . . . . . . . . . . . . . . . . 9
4.1. Downstream PE behavior . . . . . . . . . . . . . . . . . 9 4.1. Downstream PE behavior . . . . . . . . . . . . . . . . . 10
4.2. Upstream PE behavior . . . . . . . . . . . . . . . . . . 10 4.2. Upstream PE behavior . . . . . . . . . . . . . . . . . . 11
4.3. Reachability determination . . . . . . . . . . . . . . . 11 4.3. Reachability determination . . . . . . . . . . . . . . . 12
4.4. Inter-AS . . . . . . . . . . . . . . . . . . . . . . . . 12 4.4. Inter-AS . . . . . . . . . . . . . . . . . . . . . . . . 12
4.4.1. Inter-AS procedures for downstream PEs, ASBR fast 4.4.1. Inter-AS procedures for downstream PEs, ASBR fast
failover . . . . . . . . . . . . . . . . . . . . . . 12 failover . . . . . . . . . . . . . . . . . . . . . . 13
4.4.2. Inter-AS procedures for ASBRs . . . . . . . . . . . . 12 4.4.2. Inter-AS procedures for ASBRs . . . . . . . . . . . . 13
5. Hot leaf standby . . . . . . . . . . . . . . . . . . . . . . 13 5. Hot leaf standby . . . . . . . . . . . . . . . . . . . . . . 13
6. Duplicate packets . . . . . . . . . . . . . . . . . . . . . . 14 6. Duplicate packets . . . . . . . . . . . . . . . . . . . . . . 14
7. IANA Considerations . . . . . . . . . . . . . . . . . . . . . 14 7. IANA Considerations . . . . . . . . . . . . . . . . . . . . . 14
8. Security Considerations . . . . . . . . . . . . . . . . . . . 14 8. Security Considerations . . . . . . . . . . . . . . . . . . . 15
9. Acknowledgements . . . . . . . . . . . . . . . . . . . . . . 14 9. Acknowledgements . . . . . . . . . . . . . . . . . . . . . . 15
10. Contributor Addresses . . . . . . . . . . . . . . . . . . . . 14 10. Contributor Addresses . . . . . . . . . . . . . . . . . . . . 15
11. References . . . . . . . . . . . . . . . . . . . . . . . . . 16 11. References . . . . . . . . . . . . . . . . . . . . . . . . . 17
11.1. Normative References . . . . . . . . . . . . . . . . . . 16 11.1. Normative References . . . . . . . . . . . . . . . . . . 17
11.2. Informative References . . . . . . . . . . . . . . . . . 17 11.2. Informative References . . . . . . . . . . . . . . . . . 17
Authors' Addresses . . . . . . . . . . . . . . . . . . . . . . . 17 Authors' Addresses . . . . . . . . . . . . . . . . . . . . . . . 18
1. Introduction 1. Introduction
In the context of multicast in BGP/MPLS VPNs, it is desirable to In the context of multicast in BGP/MPLS VPNs, it is desirable to
provide mechanisms allowing fast recovery of connectivity on provide mechanisms allowing fast recovery of connectivity on
different types of failures. This document addresses failures of different types of failures. This document addresses failures of
elements in the provider network that are upstream of PEs connected elements in the provider network that are upstream of PEs connected
to VPN sites with receivers. to VPN sites with receivers.
The sections 3 and 4 describe two independent mechanisms, allowing Section 3 describes local procedures allowing an egress PE (a PE
different levels of resiliency, and providing different failure connected to a receiver site) to take into account the status of
coverage: P-Tunnels to determine the Upstream Multicast Hop (UMH) for a given
(C-S, C-G). This method does not provide a "fast failover" solution
o Section 3 describes local procedures allowing an egress PE (a PE when used alone, but can be used with the following sections for a
connected to a receiver site) to take into account the status of "fast failover" solution.
P-Tunnels to determine the Upstream Multicast Hop (UMH) for a
given (C-S, C-G). This method does not provide a "fast failover"
solution when used alone, but can be used with the following
sections for a "fast failover" solution.
o Section 4 describes protocol extensions that can speed up failover Section 4 describes protocol extensions that can speed up failover by
by not requiring any multicast VPN routing message exchange at not requiring any multicast VPN routing message exchange at recovery
recovery time. time.
Moreover, section 5 describes a "hot leaf standby" mechanism, that Moreover, section 5 describes a "hot leaf standby" mechanism, that
uses a combination of these two mechanisms. This approach has uses a combination of these two mechanisms. This approach has
similarities with the solution described in [I-D.mofrr] to improve similarities with the solution described in [RFC7431] to improve
failover times when PIM routing is used in a network given some failover times when PIM routing is used in a network given some
topology and metric constraints. topology and metric constraints.
2. Terminology 2. Terminology
The terminology used in this document is the terminology defined in The terminology used in this document is the terminology defined in
[RFC6513] and [RFC6514]. [RFC6513] and [RFC6514].
x-PMSI: I-PMSI or S-PMSI
3. UMH Selection based on tunnel status 3. UMH Selection based on tunnel status
Current multicast VPN specifications [RFC6513], section 5.1, describe Current multicast VPN specifications [RFC6513], section 5.1, describe
the procedures used by a multicast VPN downstream PE to determine the procedures used by a multicast VPN downstream PE to determine
what the upstream multicast hop (UMH) is for a said (C-S,C-G). what the upstream multicast hop (UMH) is for a given (C-S,C-G).
The procedure described here is an OPTIONAL procedure that consists The procedure described here is an OPTIONAL procedure that consists
of having a downstream PE take into account the status of P-tunnels of having a downstream PE take into account the status of P-tunnels
rooted at each possible upstream PEs, for including or not including rooted at each possible upstream PEs, for including or not including
each said PE in the list of candidate UMHs for a said (C-S,C-G) each given PE in the list of candidate UMHs for a given (C-S,C-G)
state. The result is that, if a P-tunnel is "down" (see state. The result is that, if a P-tunnel is "down" (see
Section 3.1), the PE that is the root of the P-Tunnel will not be Section 3.1), the PE that is the root of the P-Tunnel will not be
considered for UMH selection, which will result in the downstream PE considered for UMH selection, which will result in the downstream PE
to failover to the upstream PE which is next in the list of to failover to the upstream PE which is next in the list of
candidates. candidates.
A downstream PE monitors the status of the tunnels of UMHs that are A downstream PE monitors the status of the tunnels of UMHs that are
ahead of the current one. Whenever the downstream PE determines that ahead of the current one. Whenever the downstream PE determines that
one of these tunnels is no longer "known to down", the PE selects the one of these tunnels is no longer "known to down", the PE selects the
UMH corresponding to that as the new UMH. UMH corresponding to that as the new UMH.
More precisely, UMH determination for a said (C-S,C-G) will consider More precisely, UMH determination for a given (C-S,C-G) will consider
the UMH candidates in the following order: the UMH candidates in the following order:
o first, the UMH candidates that either (a) advertise a PMSI bound o first, the UMH candidates that either (a) advertise a PMSI bound
to a tunnel, where the specified tunnel is not known to be down or to a tunnel, where the specified tunnel is not known to be down or
(b) do not advertise any I- or S- PMSI applicable to the said (b) do not advertise any x-PMSI applicable to the given (C-S,C-G)
(C-S,C-G) but have associated a VRF Route Import BGP attribute to but have associated a VRF Route Import BGP attribute to the
the unicast VPN route for S (this is necessary to avoid unicast VPN route for S (this is necessary to avoid incorrectly
considering some invalid UMH PEs that use a policy where no I-PMSI invalidating an UMH PE that would use a policy where no I-PMSI is
is advertized for a said VRF and where only S-PMSI are used, the advertized for a given VRF and where only S-PMSI are used, the
S-PMSI advertisement being possibly done only after the upstream S-PMSI advertisement being possibly done only after the upstream
PE receives a C-multicast route for (C-S, C-G)/(C-*, C-G) to be PE receives a C-multicast route for (C-S, C-G)/(C-*, C-G) to be
carried over the advertized S-PMSI) carried over the advertized S-PMSI)
o second, the UMH candidates that advertise a PMSI bound to a tunnel o second, the UMH candidates that advertise a PMSI bound to a tunnel
that is "down" -- these will thus be used as a last resort to that is "down" -- these will thus be used as a last resort to
ensure a graceful fallback to the basic MVPN UMH selection ensure a graceful fallback to the basic MVPN UMH selection
procedures in the hypothetical case where a false negative would procedures in the hypothetical case where a false negative would
occur when determining the status of all tunnels occur when determining the status of all tunnels
For a said downstream PE and a said VRF, the P-tunnel corresponding For a given downstream PE and a given VRF, the P-tunnel corresponding
to a said upstream PE for a said (C-S,C-G) state is the S-PMSI tunnel to a given upstream PE for a given (C-S,C-G) state is the S-PMSI
advertized by that upstream PE for this (C-S,C-G) and imported into tunnel advertized by that upstream PE for this (C-S,C-G) and imported
that VRF, or if there isn't any such S-PMSI, the I-PMSI tunnel into that VRF, or if there isn't any such S-PMSI, the I-PMSI tunnel
advertized by that PE and imported into that VRF. advertized by that PE and imported into that VRF.
Note that this documents assumes that if a site of a given MVPN that Note that this documents assumes that if a site of a given MVPN that
contains C-S is dual-homed to two PEs, then all the other sites of contains C-S is dual-homed to two PEs, then all the other sites of
that MVPN would have two unicast VPN routes (VPN-IPv4 or VPN-IPv6) that MVPN would have two unicast VPN routes (VPN-IPv4 or VPN-IPv6)
routes to C-S, each with its own RD. routes to C-S, each with its own RD.
3.1. Determining the status of a tunnel 3.1. Determining the status of a tunnel
Different factors can be considered to determine the "status" of a Different factors can be considered to determine the "status" of a
skipping to change at page 5, line 26 skipping to change at page 5, line 24
the root of the tunnel, as determined in the PMSI tunnel attribute, the root of the tunnel, as determined in the PMSI tunnel attribute,
is reachable through unicast routing tables. In this case the is reachable through unicast routing tables. In this case the
downstream PE can immediately update its UMH when the reachability downstream PE can immediately update its UMH when the reachability
condition changes. condition changes.
This is similar to BGP next-hop tracking for VPN routes, except that This is similar to BGP next-hop tracking for VPN routes, except that
the address considered is not the BGP next-hop address, but the root the address considered is not the BGP next-hop address, but the root
address in the PMSI tunnel attribute. address in the PMSI tunnel attribute.
If BGP next-hop tracking is done for VPN routes, and the root address If BGP next-hop tracking is done for VPN routes, and the root address
of a said tunnel happens to be the same as the next-hop address in of a given tunnel happens to be the same as the next-hop address in
the BGP autodiscovery route advertising the tunnel, then this the BGP autodiscovery route advertising the tunnel, then this
mechanisms may be omitted for this tunnel, as it will not bring any mechanisms may be omitted for this tunnel, as it will not bring any
specific benefit. specific benefit.
3.1.2. PE-P Upstream link status 3.1.2. PE-P Upstream link status
A condition to consider a tunnel status as up can be that the last- A condition to consider a tunnel status as up can be that the last-
hop link of the P-tunnel is up. hop link of the P-tunnel is up.
This method should not be used when there is a fast restoration This method should not be used when there is a fast restoration
skipping to change at page 6, line 4 skipping to change at page 5, line 50
considered up if one or more of the P2MP RSVP-TE LSPs, identified by considered up if one or more of the P2MP RSVP-TE LSPs, identified by
the P-Tunnel Attribute, are in up state. The determination of the P-Tunnel Attribute, are in up state. The determination of
whether a P2MP RSVP-TE LSP is in up state requires Path and Resv whether a P2MP RSVP-TE LSP is in up state requires Path and Resv
state for the LSP and is based on procedures in [RFC4875]. In this state for the LSP and is based on procedures in [RFC4875]. In this
case the downstream PE can immediately update its UMH when the case the downstream PE can immediately update its UMH when the
reachability condition changes. reachability condition changes.
When signaling state for a P2MP TE LSP is removed (e.g. if the When signaling state for a P2MP TE LSP is removed (e.g. if the
ingress of the P2MP TE LSP sends a PathTear message) or the P2MP TE ingress of the P2MP TE LSP sends a PathTear message) or the P2MP TE
LSP changes state from up to down as determined by procedures in LSP changes state from up to down as determined by procedures in
[RFC4875], the status of the corresponding P-Tunnel SHOULD be re- [RFC4875], the status of the corresponding P-Tunnel SHOULD be re-
evaluated. If the P-Tunnel transitions from up to down state, the evaluated. If the P-Tunnel transitions from up to down state, the
upstream PE, that is the ingress of the P-Tunnel, SHOULD not be upstream PE, that is the ingress of the P-Tunnel, SHOULD not be
considered a valid UMH. considered a valid UMH.
3.1.4. Leaf-initiated P-tunnels 3.1.4. Leaf-initiated P-tunnels
A PE can be removed from the UMH candidate list for a said (S,G) if A PE can be removed from the UMH candidate list for a given (S,G) if
the P-tunnel for this S,G (I or S , depending) is leaf triggered the P-tunnel for this S,G (I or S , depending) is leaf triggered
(PIM, mLDP), but for some reason internal to the protocol the (PIM, mLDP), but for some reason internal to the protocol the
upstream one-hop branch of the tunnel from P to PE cannot be built. upstream one-hop branch of the tunnel from P to PE cannot be built.
In this case the downstream PE can immediately update its UMH when In this case the downstream PE can immediately update its UMH when
the reachability condition changes. the reachability condition changes.
3.1.5. (S,G) counter information 3.1.5. (S,G) counter information
In cases, where the downstream node can be configured so that the In cases, where the downstream node can be configured so that the
maximum inter-packet time is known for all the multicast flows mapped maximum inter-packet time is known for all the multicast flows mapped
skipping to change at page 6, line 44 skipping to change at page 6, line 41
This method can be applicable for instance when a (S,G) flow is This method can be applicable for instance when a (S,G) flow is
mapped on an S-PMSI. mapped on an S-PMSI.
In cases where this mechanism is used in conjunction with In cases where this mechanism is used in conjunction with
Hot leaf standby, then no prior knowledge of the rate of the Hot leaf standby, then no prior knowledge of the rate of the
multicast streams is required ; downstream PEs can compare reception multicast streams is required ; downstream PEs can compare reception
on the two P-tunnels to determine when one of them is down. on the two P-tunnels to determine when one of them is down.
3.1.6. BFD Discriminator 3.1.6. BFD Discriminator
P-tunnel status can be derived from the status of a BFD session whose P-tunnel status can be derived from the status of a multipoint BFD
discriminator is advertized along with an x-PMSI A-D route. session [I-D.ietf-bfd-multipoint] whose discriminator is advertized
along with an x-PMSI A-D route.
3.1.6.1. Root PE Procedures 3.1.6.1. Upstream PE Procedures
When it is desired to track the P-Tunnel status using BFD, the Root When it is desired to track the P-Tunnel status using BFD, the
PE MUST include the BGP-BFD Attribute in the x-PMSI A-D Route. Upstream PE MUST include the BGP-BFD Attribute in the x-PMSI A-D
Route.
If a P-Tunnel is already signaled, and then it is desired to track If a P-Tunnel is already signaled, and then it is desired to track
the P-Tunnel status using BFD, x-PMSI A-D Route must be re-sent with the P-Tunnel status using BFD, x-PMSI A-D Route must be re-sent with
the same attributes as before, but the BGP-BFD Attribute MUST be the same attributes as before, but the BGP-BFD Attribute MUST be
included. included.
If P-Tunnel is already signaled, and P-Tunnel status tracked using If P-Tunnel is already signaled, and P-Tunnel status tracked using
BFD and it is desired to stop tracking P-Tunnel status using BFD, BFD and it is desired to stop tracking P-Tunnel status using BFD,
then x-PMSI A-D Route MUST be re-sent with the same attributes as then x-PMSI A-D Route MUST be re-sent with the same attributes as
before, but the BGP-BFD Attribute MUST be excluded. before, but the BGP-BFD Attribute MUST be excluded.
3.1.6.2. Leaf PE Procedures 3.1.6.2. Downstream PE Procedures
On receiving the BFD attribute in the x-PMSI A-D Route, the Leaf PE On receiving the BFD attribute in the x-PMSI A-D Route, the
MUST associate the received discriminator with the P-Tunnel Downstream PE MUST associate the received discriminator with the
originating from the Root PE. Once the Leaf PE start getting the BFD P-Tunnel originating from the Root PE. Once the Downstream PE start
probes from the Root PE with the said discriminator, the BFD session getting the BFD probes from the Upstream PE with the given
will be declared up and will then be used to track the health of the discriminator, the BFD session will be declared up and will then be
P-Tunnel. used to track the health of the P-Tunnel.
If the Leaf PE does not receive BFD probes for a P-Tunnel from the If the Downstream PE does not receive BFD probes for a P-Tunnel from
Root PE for Detection Time, the BFD session would be brought down. the Upstream PE for Detection Time, the BFD session would be brought
And, it would declare the P-tunnel associated with the discriminator down. And, it would declare the P-tunnel associated with the
as down. discriminator as down.
Leaf PE then can then initiate a switchover of the traffic from the Downstream PE then can then initiate a switchover of the traffic from
Primary Tunnel, to the Standby Tunnel. the Primary Tunnel, to the Standby Tunnel.
When Leaf PE's P-Tunnel is already up, it receives new x-PMSI A-D When Downstream PE's P-Tunnel is already up, it receives new x-PMSI
Route with BGP-BFD attribute, it must accept the x-PMSI A-D Route and A-D Route with BGP-BFD attribute, it must accept the x-PMSI A-D Route
associate the discriminator with the P-tunnel. When the BFD probes and associate the discriminator with the P-tunnel. When the BFD
are received with the said discriminator, the BFD session is declared probes are received with the given discriminator, the BFD session is
up. declared up.
When Leaf PE's P-Tunnel is already up, and is tracked with BFD, and When Downstream PE's P-Tunnel is already up, and is tracked with BFD,
it receives new x-PMSI A-D Route without BGP-BFD attribute, it must and it receives new x-PMSI A-D Route without BGP-BFD attribute, it
accept the x-PMSI A-D Route the BFD session should be declared admin must accept the x-PMSI A-D Route the BFD session should be declared
down. Receiver node SHOULD not switch the traffic to the Standby admin down. Receiver node SHOULD not switch the traffic to the
P-tunnel. Standby P-tunnel.
When such a procedure is used, in context where fast restoration When such a procedure is used, in context where fast restoration
mechanisms are used for the P-tunnels, leaf PEs should be configured mechanisms are used for the P-tunnels, leaf PEs should be configured
to wait before updating the UMH, to let the P-tunnel restoration to wait before updating the UMH, to let the P-tunnel restoration
mechanism happen. A configurable timer MUST be provided for this mechanism happen. A configurable timer MUST be provided for this
purpose, and it is recommended to provide a reasonable default value purpose, and it is recommended to provide a reasonable default value
for this timer. for this timer.
3.1.6.3. BGP-BFD Attribute 3.1.6.3. BGP-BFD Attribute
skipping to change at page 8, line 27 skipping to change at page 8, line 27
The Flags field has the following format: The Flags field has the following format:
0 1 2 3 4 5 6 7 0 1 2 3 4 5 6 7
+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+
| reserved | | reserved |
+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+
3.1.7. Per PE-CE link BFD Discriminator 3.1.7. Per PE-CE link BFD Discriminator
The following approach is proposed for fast failover on PE-CE link The following approach is proposed for fast failover on PE-CE link
failures, in which UMH selection for a said (S,G) takes into account failures, in which UMH selection for a given C-multicast route takes
the state of a BFD session dedicated to the state of the upstream PE- into account the state of a BFD session dedicated to the state of the
CE link. upstream PE-CE link.
If this approach is enabled: 3.1.7.1. Upstream PE Procedures
o each upstream PE: for each PE-CE link for which this protection is For each protected PE-CE link, the upstream PE initiates a multipoint
wanted, initiates a multipoint BFD session toward downstream PEs, BFD session [I-D.ietf-bfd-multipoint] toward downstream PEs, with a
with a trigger causing such a session to be torn down if the trigger causing such a session to be torn down if the associated PE-
associated PE-CE link is detected as down. CE link is detected as down.
o each upstream PE: for each prefix of a PE-CE link for which For SSM groups, the upstream PE advertises a (S,G) S-PMSI A-D route
protection is wanted, advertizes a wildcard S-PMSI covering the or wildcard (S,*) S-PMSI A-D route for each received SSM (S,G)
sources inside this prefix, and signals along with this S-PMSI the C-multicast route for which protection is desired. For each ASM
multipoint BFD session discriminator associated with the PE-CE (S,G) C-multicast route for which protection is desired, the upstream
link. (note that all these S-PMSIs can perfectly use the same PE advertises a (S,G) S-PMSI A-D route. For each ASM (*,G)
P-tunnel) C-Multicast route for which protection is desired, the upstream PE
advertises a wildcard (*,G) S-PMSI A-D route. Note that all S-PMSI
A-D routes can signal the same P-Tunnel, so there is no need for a
new P-Tunnel for each S-PMSI A-D route. Multicast flows for which
protection is desired is controlled by configuration/policy on the
upstream PE. The protected link is the RPF PE-CE interface towards
the src/RP. The upstream PE advertises the BFD discriminator of the
protected link in the S-PMSI A-D route. If the route to the src/RP
changes such that the RPF interface is changed to be a new PE-CE
interface, then the upstream PE will update the S-PMSI A-D route with
the BFD discriminator associated with the new RPF link.
o each downstream PE: if an S-PMSI bound to a said (S,G) is signaled 3.1.7.2. Downstream PE Procedures
with a multipoint BFD session, then the upstream PE is considered
during UMH selection for (S,G) if and only if the corresponding If an S-PMSI A-D route bound to a given C-multicast is signaled with
BFD session is up. Whenever the BFD session goes down the S-PMSI a multipoint BFD session, then the upstream PE is considered during
P-tunnel will be considered down and the downstream PE will switch UMH selection for the C-multicast if and only if the corresponding
to the backup P-tunnel. Note that the P-tunnel is considered down BFD session is not known to be down. Whenever the BFD session goes
only for the (S,G) states that match to an S-PMSI signaling the down the Provider Tunnel will be considered down, and the downstream
BFD discriminator of a BFD session which is down PE will switch to the backup Provider Tunnel. Note that the Provider
Tunnel is considered down only for the C-multicast states that match
to an S-PMSI A-D route which signaled the BFD discriminator of a BFD
session which is down.
4. Standby C-multicast route 4. Standby C-multicast route
The procedures described below are limited to the case where the site The procedures described below are limited to the case where the site
that contains C-S is connected to exactly two PEs. The procedures that contains C-S is connected to exactly two PEs. The procedures
require all the PEs of that MVPN to follow the single forwarder PE require all the PEs of that MVPN to follow the single forwarder PE
selection, as specified in [RFC6513]. The procedures assume that if selection, as specified in [RFC6513]. The procedures assume that if
a site of a given MVPN that contains C-S is dual-homed to two PEs, a site of a given MVPN that contains C-S is dual-homed to two PEs,
then all the other sites of that MVPN would have two unicast VPN then all the other sites of that MVPN would have two unicast VPN
routes (VPN-IPv4 or VPN-IPv6) routes to C-S, each with its own RD. routes (VPN-IPv4 or VPN-IPv6) routes to C-S, each with its own RD.
As long as C-S is reachable via both PEs, a said downstream PE will As long as C-S is reachable via both PEs, a given downstream PE will
select one of the PEs connected to C-S as its Upstream PE with select one of the PEs connected to C-S as its Upstream PE with
respect to C-S. We will refer to the other PE connected to C-S as respect to C-S. We will refer to the other PE connected to C-S as
the "Standby Upstream PE". Note that if the connectivity to C-S the "Standby Upstream PE". Note that if the connectivity to C-S
through the Primary Upstream PE becomes unavailable, then the PE will through the Primary Upstream PE becomes unavailable, then the PE will
select the Standby Upstream PE as its Upstream PE with respect to select the Standby Upstream PE as its Upstream PE with respect to
C-S. C-S. When the Primary PE later becomes available, then the PE will
select the Primary Upstream PE again as its Upstream PE. This is
referred to as "revertive" behavior, and MUST be supported. Non-
revertive behavior would refer to the behavior of continuing to
select the backup PE as the UMH even after the Primary has come up.
This non-revertive behavior can also be optionally supported by an
implementation and would be enabled through some configuration.
For readability, in the following sub-sections, the procedures are For readability, in the following sub-sections, the procedures are
described for BGP C-multicast Source Tree Join routes, but they apply described for BGP C-multicast Source Tree Join routes, but they apply
equally to BGP C-multicast Shared Tree Join routes failover for the equally to BGP C-multicast Shared Tree Join routes failover for the
case where the customer RP is dual-homed (substitute "C-RP" to case where the customer RP is dual-homed (substitute "C-RP" to
"C-S"). "C-S").
4.1. Downstream PE behavior 4.1. Downstream PE behavior
When a (downstream) PE connected to some site of an MVPN needs to When a (downstream) PE connected to some site of an MVPN needs to
skipping to change at page 10, line 26 skipping to change at page 10, line 44
The normal and the standby C-multicast routes must have their Local The normal and the standby C-multicast routes must have their Local
Preference attribute adjusted so that, if two C-multicast routes with Preference attribute adjusted so that, if two C-multicast routes with
same NLRI are received by a BGP peer, one carrying the "Standby PE" same NLRI are received by a BGP peer, one carrying the "Standby PE"
attribute and the other one *not* carrying the "Standby PE" attribute and the other one *not* carrying the "Standby PE"
community, then preference is given to the one *not* carrying the community, then preference is given to the one *not* carrying the
"Standby PE" attribute. Such a situation can happen when, for "Standby PE" attribute. Such a situation can happen when, for
instance due to transient unicast routing inconsistencies, two instance due to transient unicast routing inconsistencies, two
different downstream PEs consider different upstream PEs to be the different downstream PEs consider different upstream PEs to be the
primary one ; in that case, without any precaution taken, both primary one ; in that case, without any precaution taken, both
upstream PEs would process a standby C-multicast route and possibly upstream PEs would process a standby C-multicast route and possibly
stop forwarding at the same time. For this purpose a Standby BGP stop forwarding at the same time. For this purpose, routes that
C-multicast route MUST have the LOCAL_PREF attribute set to zero. carry the "Standby PE" BGP Community MUST have the LOCAL_PREF
attribute set to zero.
Note that, when a PE advertizes such a Standby C-multicast join for Note that, when a PE advertizes such a Standby C-multicast join for
an (S,G) it must join the corresponding P-tunnel. an (S,G) it must join the corresponding P-tunnel.
If at some later point the local PE determines that C-S is no longer If at some later point the local PE determines that C-S is no longer
reachable through the Primary Upstream PE, the Standby Upstream PE reachable through the Primary Upstream PE, the Standby Upstream PE
becomes the Upstream PE, and the local PE re-sends the C-multicast becomes the Upstream PE, and the local PE re-sends the C-multicast
route with RT that identifies the Standby Upstream PE, except that route with RT that identifies the Standby Upstream PE, except that
now the route does not carry the Standby PE BGP Community (which now the route does not carry the Standby PE BGP Community (which
results in replacing the old route with a new route, with the only results in replacing the old route with a new route, with the only
skipping to change at page 11, line 22 skipping to change at page 11, line 43
C-multicast route, the PE MAY install VRF PIM state corresponding C-multicast route, the PE MAY install VRF PIM state corresponding
to this BGP Source Tree Join route (the result will be that Join to this BGP Source Tree Join route (the result will be that Join
messages will be sent to the CE toward C-S, and that the PE will messages will be sent to the CE toward C-S, and that the PE will
receive (C-S,C-G) traffic) receive (C-S,C-G) traffic)
b) based on local policy, as soon as the PE receives this Standby BGP b) based on local policy, as soon as the PE receives this Standby BGP
C-multicast route, the PE MAY forward (C-S, C-G) traffic to other C-multicast route, the PE MAY forward (C-S, C-G) traffic to other
PEs through a P-tunnel independently of the reachability of C-S PEs through a P-tunnel independently of the reachability of C-S
through some other PE. [note that this implies also doing (a)] through some other PE. [note that this implies also doing (a)]
Doing neither (a), nor (b) for a said (C-S,C-G) is called "cold root Doing neither (a), nor (b) for a given (C-S,C-G) is called "cold root
standby". standby".
Doing (a) but not (b) for a said (C-S,C-G) is called "warm root Doing (a) but not (b) for a given (C-S,C-G) is called "warm root
standby". standby".
Doing (b) (which implies also doing (a)) for a said (C-S,C-G) is Doing (b) (which implies also doing (a)) for a given (C-S,C-G) is
called "hot root standby". called "hot root standby".
Note that, if an upstream PE uses an S-PMSI only policy, it shall Note that, if an upstream PE uses an S-PMSI only policy, it shall
advertise an S-PMSI for an (S,G) as soon as it receives a C-multicast advertise an S-PMSI for an (S,G) as soon as it receives a C-multicast
route for (S,G), normal or Standby ; i.e. it shall not wait for route for (S,G), normal or Standby ; i.e. it shall not wait for
receiving a non-Standby C-multicast route before advertising the receiving a non-Standby C-multicast route before advertising the
corresponding S-PMSI. corresponding S-PMSI.
Section 9.3.2 of [RFC6514], describes the procedures of sending a Section 9.3.2 of [RFC6514], describes the procedures of sending a
Source-Active A-D result as a result of receiving the C-multicast Source-Active A-D result as a result of receiving the C-multicast
skipping to change at page 12, line 20 skipping to change at page 12, line 42
4.4. Inter-AS 4.4. Inter-AS
If the non-segmented inter-AS approach is used, the procedures in If the non-segmented inter-AS approach is used, the procedures in
section 4 can be applied. section 4 can be applied.
When multicast VPNs are used in a inter-AS context with the segmented When multicast VPNs are used in a inter-AS context with the segmented
inter-AS approach described in section 8.2 of [RFC6514], the inter-AS approach described in section 8.2 of [RFC6514], the
procedures in this section can be applied. procedures in this section can be applied.
A pre-requisite for the procedures described below to be applied for A pre-requisite for the procedures described below to be applied for
a source of a said MVPN is: a source of a given MVPN is:
o that any PE of this MVPN receives two Inter-AS I-PMSI auto- o that any PE of this MVPN receives two Inter-AS I-PMSI auto-
discovery routes advertized by the AS of the source (or more) discovery routes advertized by the AS of the source (or more)
o that these Inter-AS I-PMSI autodiscovery routes have distinct o that these Inter-AS I-PMSI autodiscovery routes have distinct
Route Distinguishers (as described in item "(2)" of section 9.2 of Route Distinguishers (as described in item "(2)" of section 9.2 of
[RFC6514]). [RFC6514]).
As an example, these conditions will be satisfied when the source is As an example, these conditions will be satisfied when the source is
dual homed to an AS that connects to the receiver AS through two ASBR dual homed to an AS that connects to the receiver AS through two ASBR
skipping to change at page 13, line 23 skipping to change at page 13, line 47
have a MED attribute set of 0xffff and should be re-advertized in have a MED attribute set of 0xffff and should be re-advertized in
iBGP with a LOCAL_PREF attribute set to zero iBGP with a LOCAL_PREF attribute set to zero
Other ASBR procedures are applied without modification. Other ASBR procedures are applied without modification.
5. Hot leaf standby 5. Hot leaf standby
The mechanisms defined in sections Section 4 and Section 3 can be The mechanisms defined in sections Section 4 and Section 3 can be
used together as follows. used together as follows.
The principle is that, for a said VRF (or possibly only for a said The principle is that, for a given VRF (or possibly only for a given
C-S,C-G): C-S,C-G):
o downstream PEs advertise a Standby BGP C-multicast route (based on o downstream PEs advertise a Standby BGP C-multicast route (based on
Section 4) Section 4)
o upstream PEs use the "hot standby" optional behavior and thus will o upstream PEs use the "hot standby" optional behavior and thus will
forward traffic for a said multicast state as soon as they have forward traffic for a given multicast state as soon as they have
whether a (primary) BGP C-multicast route or a Standby BGP whether a (primary) BGP C-multicast route or a Standby BGP
C-multicast route for that state (or both) C-multicast route for that state (or both)
o downstream PEs accept traffic from the primary or standby tunnel, o downstream PEs accept traffic from the primary or standby tunnel,
based on the status of the tunnel (based on Section 3) based on the status of the tunnel (based on Section 3)
Other combinations of the mechanisms proposed in Section 4) and Other combinations of the mechanisms proposed in Section 4) and
Section 3 are for further study. Section 3 are for further study.
Note that the same level of protection would be achievable with a Note that the same level of protection would be achievable with a
skipping to change at page 14, line 34 skipping to change at page 15, line 9
Allocation is expected from IANA for the BGP "Standby PE" community. Allocation is expected from IANA for the BGP "Standby PE" community.
(TBC) (TBC)
[Note to RFC Editor: this section may be removed on publication as an [Note to RFC Editor: this section may be removed on publication as an
RFC.] RFC.]
8. Security Considerations 8. Security Considerations
9. Acknowledgements 9. Acknowledgements
The authors want to thank Greg Reaume and Eric Rosen for their review The authors want to thank Greg Reaume, Eric Rosen, and Jeffrey Zhang
and useful feedback. for their review and useful feedback.
10. Contributor Addresses 10. Contributor Addresses
Below is a list of other contributing authors in alphabetical order: Below is a list of other contributing authors in alphabetical order:
Rahul Aggarwal Rahul Aggarwal
Arktan Arktan
Email: raggarwa_1@yahoo.com Email: raggarwa_1@yahoo.com
skipping to change at page 16, line 37 skipping to change at page 17, line 18
USA USA
Email: kanwar.singh@alcatel-lucent.com Email: kanwar.singh@alcatel-lucent.com
11. References 11. References
11.1. Normative References 11.1. Normative References
[I-D.ietf-bfd-multipoint] [I-D.ietf-bfd-multipoint]
Katz, D., Ward, D., and S. Pallagatti, "BFD for Multipoint Katz, D., Ward, D., and S. Pallagatti, "BFD for Multipoint
Networks", draft-ietf-bfd-multipoint-06 (work in Networks", draft-ietf-bfd-multipoint-08 (work in
progress), January 2015. progress), April 2016.
[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.
[RFC4875] Aggarwal, R., Papadimitriou, D., and S. Yasukawa, [RFC4875] Aggarwal, R., Papadimitriou, D., and S. Yasukawa,
"Extensions to Resource Reservation Protocol - Traffic "Extensions to Resource Reservation Protocol - Traffic
Engineering (RSVP-TE) for Point-to-Multipoint TE Label Engineering (RSVP-TE) for Point-to-Multipoint TE Label
Switched Paths (LSPs)", RFC 4875, May 2007. Switched Paths (LSPs)", RFC 4875, May 2007.
[RFC6513] Aggarwal, R., Bandi, S., Cai, Y., Morin, T., Rekhter, Y., [RFC6513] Aggarwal, R., Bandi, S., Cai, Y., Morin, T., Rekhter, Y.,
Rosen, E., Wijnands, I., and S. Yasukawa, "Multicast in Rosen, E., Wijnands, I., and S. Yasukawa, "Multicast in
MPLS/BGP IP VPNs", RFC 6513, February 2012. MPLS/BGP IP VPNs", RFC 6513, February 2012.
[RFC6514] Aggarwal, R., Rosen, E., Morin, T., and Y. Rekhter, "BGP [RFC6514] Aggarwal, R., Rosen, E., Morin, T., and Y. Rekhter, "BGP
Encodings and Procedures for Multicast in MPLS/BGP IP Encodings and Procedures for Multicast in MPLS/BGP IP
VPNs", RFC 6514, February 2012. VPNs", RFC 6514, February 2012.
11.2. Informative References 11.2. Informative References
[I-D.mofrr]
Karan, A., Filsfils, C., Farinacci, D., Decraene, B.,
Leymann, N., and T. Telkamp, "Multicast only Fast Re-
Route", draft-ietf-rtgwg-mofrr-08 (work in progress),
February 2015.
[RFC4090] Pan, P., Swallow, G., and A. Atlas, "Fast Reroute [RFC4090] Pan, P., Swallow, G., and A. Atlas, "Fast Reroute
Extensions to RSVP-TE for LSP Tunnels", RFC 4090, May Extensions to RSVP-TE for LSP Tunnels", RFC 4090, May
2005. 2005.
[RFC7431] Karan, A., Filsfils, C., Wijnands, IJ., and B. Decraene,
"Multicast-only Fast Re-Route", RFC 7431, August 2015.
Authors' Addresses Authors' Addresses
Thomas Morin (editor) Thomas Morin (editor)
Orange Orange
2, avenue Pierre Marzin 2, avenue Pierre Marzin
Lannion 22307 Lannion 22307
France France
Email: thomas.morin@orange-ftgroup.com Email: thomas.morin@orange-ftgroup.com
 End of changes. 47 change blocks. 
115 lines changed or deleted 131 lines changed or added

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