draft-ietf-rtgwg-mofrr-04.txt   draft-ietf-rtgwg-mofrr-05.txt 
Network Working Group A. Karan Network Working Group A. Karan
Internet-Draft C. Filsfils Internet-Draft C. Filsfils
Intended status: Informational Cisco Systems, Inc. Intended status: Informational IJ. Wijnands, Ed.
Expires: November 15, 2014 D. Farinacci Expires: August 7, 2015 Cisco Systems, Inc.
lispers.net
IJ. Wijnands, Ed.
Cisco Systems, Inc.
B. Decraene B. Decraene
Orange Orange
U. Joorde February 3, 2015
Deutsche Telekom
W. Henderickx
Alcatel-Lucent
May 14, 2014
Multicast only Fast Re-Route Multicast only Fast Re-Route
draft-ietf-rtgwg-mofrr-04 draft-ietf-rtgwg-mofrr-05
Abstract Abstract
As IPTV deployments grow in number and size, service providers are As IPTV deployments grow in number and size, service providers are
looking for solutions that minimize the service disruption due to looking for solutions that minimize the service disruption due to
faults in the IP network carrying the packets for these services. faults in the IP network carrying the packets for these services.
This draft describes a mechanism for minimizing packet loss in a This document describes a mechanism for minimizing packet loss in a
network when node or link failures occur. Multicast only Fast Re- network when node or link failures occur. Multicast only Fast Re-
Route (MoFRR) works by making simple enhancements to multicast Route (MoFRR) works by making simple enhancements to multicast
routing protocols such as PIM and mLDP. routing protocols such as PIM and mLDP.
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 November 15, 2014. This Internet-Draft will expire on August 7, 2015.
Copyright Notice Copyright Notice
Copyright (c) 2014 IETF Trust and the persons identified as the Copyright (c) 2015 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 . . . . . . . . . . . . . . . . . . . . . . . . 2 1. Introduction . . . . . . . . . . . . . . . . . . . . . . . . . 3
1.1. Conventions used in this document . . . . . . . . . . . . 3 1.1. Conventions used in this document . . . . . . . . . . . . 3
1.2. Terminology . . . . . . . . . . . . . . . . . . . . . . . 3 1.2. Terminology . . . . . . . . . . . . . . . . . . . . . . . 3
2. Basic Overview . . . . . . . . . . . . . . . . . . . . . . . 4 2. Basic Overview . . . . . . . . . . . . . . . . . . . . . . . . 4
3. Determination of the secondary UMH . . . . . . . . . . . . . 5 3. Determination of the secondary UMH . . . . . . . . . . . . . . 5
3.1. ECMP-mode MoFRR . . . . . . . . . . . . . . . . . . . . . 5 3.1. ECMP-mode MoFRR . . . . . . . . . . . . . . . . . . . . . 5
3.2. Non-ECMP-mode MoFRR . . . . . . . . . . . . . . . . . . . 5 3.2. Non-ECMP-mode MoFRR . . . . . . . . . . . . . . . . . . . 5
4. Upstream Multicast Hop Selection . . . . . . . . . . . . . . 5 4. Upstream Multicast Hop Selection . . . . . . . . . . . . . . . 6
4.1. PIM . . . . . . . . . . . . . . . . . . . . . . . . . . . 6 4.1. PIM . . . . . . . . . . . . . . . . . . . . . . . . . . . 6
4.2. mLDP . . . . . . . . . . . . . . . . . . . . . . . . . . 6 4.2. mLDP . . . . . . . . . . . . . . . . . . . . . . . . . . . 6
5. Detecting Failures . . . . . . . . . . . . . . . . . . . . . 6 5. Detecting Failures . . . . . . . . . . . . . . . . . . . . . . 6
6. MoFRR applicability . . . . . . . . . . . . . . . . . . . . . 7 6. MoFRR applicability . . . . . . . . . . . . . . . . . . . . . 7
6.1. Dual-Plane Topology . . . . . . . . . . . . . . . . . . . 7 6.1. Dual-Plane Topology . . . . . . . . . . . . . . . . . . . 7
6.2. Capacity Planning for MoFRR . . . . . . . . . . . . . . . 10 6.2. Capacity Planning for MoFRR . . . . . . . . . . . . . . . 10
6.3. PE nodes . . . . . . . . . . . . . . . . . . . . . . . . 11 6.3. PE nodes . . . . . . . . . . . . . . . . . . . . . . . . . 11
6.4. Other Applications . . . . . . . . . . . . . . . . . . . 11 6.4. Other Applications . . . . . . . . . . . . . . . . . . . . 11
7. IANA Considerations . . . . . . . . . . . . . . . . . . . . . 11 7. IANA Considerations . . . . . . . . . . . . . . . . . . . . . 11
8. Security Considerations . . . . . . . . . . . . . . . . . . . 12 8. Security Considerations . . . . . . . . . . . . . . . . . . . 12
9. Acknowledgments . . . . . . . . . . . . . . . . . . . . . . . 12 9. Acknowledgments . . . . . . . . . . . . . . . . . . . . . . . 12
10. Contributor Addresses . . . . . . . . . . . . . . . . . . . . 12 10. Contributor Addresses . . . . . . . . . . . . . . . . . . . . 12
11. References . . . . . . . . . . . . . . . . . . . . . . . . . 12 11. References . . . . . . . . . . . . . . . . . . . . . . . . . . 13
11.1. Normative References . . . . . . . . . . . . . . . . . . 12 11.1. Normative References . . . . . . . . . . . . . . . . . . . 13
11.2. Informative References . . . . . . . . . . . . . . . . . 12 11.2. Informative References . . . . . . . . . . . . . . . . . . 13
Authors' Addresses . . . . . . . . . . . . . . . . . . . . . . . 13 Authors' Addresses . . . . . . . . . . . . . . . . . . . . . . . . 14
1. Introduction 1. Introduction
Different solutions have been developed and deployed to improve Different solutions have been developed and deployed to improve
service guarantees, both for multicast video traffic and Video on service guarantees, both for multicast video traffic and Video on
Demand traffic. Most of these solutions are geared towards finding Demand traffic. Most of these solutions are geared towards finding
an alternate path around one or more failed network elements (link, an alternate path around one or more failed network elements (link,
node, path failures). node, path failures).
This draft describes a mechanism for minimizing packet loss in a This document describes a mechanism for minimizing packet loss in a
network when node or link failures occur. Multicast only Fast Re- network when node or link failures occur. Multicast only Fast Re-
Route (MoFRR) works by making simple changes to the way selected Route (MoFRR) works by making simple changes to the way selected
routers use multicast protocols such as PIM and mLDP. No changes to routers use multicast protocols such as PIM and mLDP. No changes to
the protocols themselves are required. With MoFRR, in many cases, the protocols themselves are required. With MoFRR, in many cases,
multicast routing protocols don't necessarily have to depend on or multicast routing protocols don't necessarily have to depend on or
have to wait on unicast routing protocols to detect network failures, have to wait on unicast routing protocols to detect network failures,
see Section 5 see Section 5
On a Merge Point MoFRR logic determines a primary Upstream Multicast On a Merge Point MoFRR logic determines a primary Upstream Multicast
Hop (UMH) and a secondary UMH and joins the tree via both Hop (UMH) and a secondary UMH and joins the tree via both
skipping to change at page 3, line 50 skipping to change at page 4, line 11
mLDP: Multi-point Label Distribution Protocol. mLDP: Multi-point Label Distribution Protocol.
PIM: Protocol Independent Multicast. PIM: Protocol Independent Multicast.
UMH: Upstream Multicast Hop, a candidate next-hop that can be used UMH: Upstream Multicast Hop, a candidate next-hop that can be used
to reach the root of the tree. to reach the root of the tree.
tree: Either a PIM (S,G)/(*,G) tree or a mLDP P2MP or MP2MP LSP. tree: Either a PIM (S,G)/(*,G) tree or a mLDP P2MP or MP2MP LSP.
OIF: Outgoing InterFace, an interface used to forward multicast OIF: Outgoing InterFace, an interface used to forward multicast
packets down the tree towards the receivers. Either a PIM (S,G)/ packets down the tree towards the receivers. Either a PIM
(*,G) tree or a mLDP P2MP or MP2MP LSP. (S,G)/(*,G) tree or a mLDP P2MP or MP2MP LSP.
LFA: Loop Free Alternate as defined in [RFC5286]. In unicast Fast LFA: Loop Free Alternate as defined in [RFC5286] In unicast Fast
ReRoute, this is an alternate next-hop which can be used to reach ReRoute, this is an alternate next-hop which can be used to reach
a unicast destination without using the protected link or node. a unicast destination without using the protected link or node.
Merge Point: A router that joins a multicast stream via two Merge Point: A router that joins a multicast stream via two
divergent upstream paths. divergent upstream paths.
RPF: Reverse Path Forwarding. RPF: Reverse Path Forwarding.
RP: Rendezvous Point. RP: Rendezvous Point.
skipping to change at page 4, line 31 skipping to change at page 4, line 40
MVPN: Multicast Virtual Private Networks. MVPN: Multicast Virtual Private Networks.
2. Basic Overview 2. Basic Overview
The basic idea of MoFRR is for a Merge Point router to join a The basic idea of MoFRR is for a Merge Point router to join a
multicast tree via two divergent upstream paths in order to get multicast tree via two divergent upstream paths in order to get
maximum redundancy. The determination of this alternate upstream is maximum redundancy. The determination of this alternate upstream is
defined in Section 3. defined in Section 3.
In order to maximize robustness against any failure, the two paths In order maximize robustness against any failure, the two paths
should be as diverse as possible. Ideally, they should not merge should be as diverse as possible. Ideally, they should not merge
upstream. Sometimes the topology guarantees maximal redundancy, upstream. Sometimes the topology guarantees maximal redundancy,
other times additional configuration or techniques are needed to other times additional configuration or techniques are needed to
enforce it. See Section 6 for more discussion on the applicability enforce it. See Section 6 for more discussion on the applicability
of MoFRR depending on the network topology. of MoFRR depending on the network topology.
A Merge Point router should only accept and forward on one of the A Merge Point router should only accept and forward on one of the
upstream paths at a time in order to avoid duplicate packet upstream paths at a time in order to avoid duplicate packet
forwarding. The selection of the primary and secondary UMH is done forwarding. The selection of the primary and secondary UMH is done
by the MoFRR logic and normally based on unicast routing to find loop by the MoFRR logic and normally based on unicast routing to find loop
skipping to change at page 5, line 21 skipping to change at page 5, line 27
If the IGP installs two ECMP paths to the source, then as per If the IGP installs two ECMP paths to the source, then as per
[RFC5286] the LFA is a primary Next-hop. If the Multicast tree is [RFC5286] the LFA is a primary Next-hop. If the Multicast tree is
enabled for ECMP-Mode MoFRR, the router installs them as primary and enabled for ECMP-Mode MoFRR, the router installs them as primary and
secondary UMH. Before the failure, only packets received from the secondary UMH. Before the failure, only packets received from the
primary UMH path are processed while packets received from the primary UMH path are processed while packets received from the
secondary UMH are dropped. secondary UMH are dropped.
The selected primary UMH SHOULD be the same as if the MoFRR extension The selected primary UMH SHOULD be the same as if the MoFRR extension
was not enabled. was not enabled.
If more than two ECMP paths exist, one is selected as primary and If more than two ECMP paths exist, one is selected as primary and and
another one as secondary UMH. The selection of the primary and other as secondary UMH. The selection of the primary and secondary
secondary is a local decision. Information from the IGP link-state is a local decision. Information from the IGP link-state topology
topology could be leveraged to optimize this selection such that the could be leveraged to optimize this selection such that the primary
primary and secondary path are maximal divergent and don't lead to and secondary path are maximal divergent and don't lead to the same
the same upstream node. Note that MoFRR does not restrict the number upstream node. Note that MoFRR does not restrict the number of UMH
of UMH paths that are joined. Implementations may use as many paths paths that are joined. Implementations may use as many paths as are
as are configured. configured.
3.2. Non-ECMP-mode MoFRR 3.2. Non-ECMP-mode MoFRR
A router configured for non-ECMP-mode MoFRR for a Multicast tree A router X configured for non-ECMP-mode MoFRR for a Multicast tree
joins a primary path to its primary UMH and a secondary path to LFA joins a primary path to its primary UMH R(X) and a secondary path to
UMH. In order to prevent control-plane loops a router MUST stop LFA UMH N. In order to prevent control-plane loops a router MUST stop
joining the secondary UMH if this UMH is the only member in the OIF joining the secondary UMH if this UMH is the only member in the OIF
list. list.
To illustrate the reason for this rule, let's consider the example in To illustrate the reason for this rule, let's consider the example in
FIG3. If PE1 and PE2 have received an IGMP request for a Multicast FIG3. If PE1 and PE2 have received an IGMP request for a Multicast
tree, they will both join the primary path on their plane and a tree, they will both join the primary path on their plane and a
secondary path to the neighbor PE. If their receivers would leave at secondary path to the neighbor PE. If their receivers would leave at
the same time, it could be possible for the Multicast tree on PE1 and the same time, it could be possible for the Multicast tree on PE1 and
PE2 to never get deleted as each PE refresh each other via the PE2 to never get deleted as each PE refresh each other via the
secondary path joins (remember that a secondary path join is not secondary path joins (remember that a secondary path join is not
skipping to change at page 7, line 5 skipping to change at page 7, line 11
A second option consists of comparing the packets received on the A second option consists of comparing the packets received on the
primary and secondary streams but only forwarding one of them -- the primary and secondary streams but only forwarding one of them -- the
first one received, no matter which interface it is received on. first one received, no matter which interface it is received on.
Zero packet loss is possible for RTP-based streams. Zero packet loss is possible for RTP-based streams.
A third option assumes a minimum known packet rate for a given data A third option assumes a minimum known packet rate for a given data
stream. If a packet is not received on the primary RPF within this stream. If a packet is not received on the primary RPF within this
time frame, the router assumes primary path failure and switches to time frame, the router assumes primary path failure and switches to
the secondary RPF interface. 50msec switch-over may be possible for the secondary RPF interface. 50msec switch-over may be possible for
high rate stream (e.g. IP TV where SD video has a continuous inter- high rate stream (e.g. IP TV where SD video has a continuous inter-
packet gap of ~ 3msec) but in general the delay is dependant on the packet gap of ~ 3msec) but in general the delay is dependant on the
rate of the multicast stream. rate of the multicast stream.
A fourth option leverages the significant improvements of the IGP A fourth option leverages the significant improvements of the IGP
convergence speed. When the primary path to the source is withdrawn convergence speed. When the primary path to the source is withdrawn
by the IGP, the MoFRR-enabled router switches over to the backup by the IGP, the MoFRR-enabled router switches over to the backup
path, the UMH is changed to the secondary UMH. Since the secondary path, the UMH is changed to the secondary UMH. Since the secondary
path is already in place, and assuming it is disjoint from the path is already in place, and assuming it is disjoint from the
primary path, convergence times would not include the time required primary path, convergence times would not include the time required
to build a new tree and hence are smaller. Sub-second to sub-200msec to build a new tree and hence are smaller. Sub-second to sub-200msec
skipping to change at page 8, line 40 skipping to change at page 8, line 40
PE1 PE2 PE1 PE2
P = Primary path P = Primary path
S = Secondary path S = Secondary path
FIG1. Two-Plane Network Design FIG1. Two-Plane Network Design
The topology has two planes, a primary plane and a secondary plane The topology has two planes, a primary plane and a secondary plane
that are fully disjoint from each other all the way into the POPs. that are fully disjoint from each other all the way into the POPs.
This two plane design is common in service provider networks as it This two plane design is common in service provider networks as it
eliminates single point of failures in their core network. The links eliminates single point of failures in their core network. The links
marked P indicate the normal path of how the PIM joins flow from the marked PJ indicate the normal path of how the PIM joins flow from the
POPs towards the source of the network. Multicast streams, POPs towards the source of the network. Multicast streams,
especially for the densely watched channels, typically flow along especially for the densely watched channels, typically flow along
both the planes in the network anyway. both the planes in the network anyway.
The only change MoFRR adds to this is on the links marked S where the The only change MoFRR adds to this is on the links marked S where the
PE routers join a secondary path to their secondary ECMP UMH. As a PE routers join a secondary path to their secondary ECMP UMH. As a
result of this, each PE router receives two copies of the same result of this, each PE router receives two copies of the same
stream, one from the primary plane and the other from the secondary stream, one from the primary plane and the other from the secondary
plane. As a result of normal UMH behavior, the multicast stream plane. As a result of normal UMH behavior, the multicast stream
received over the primary path is accepted and forwarded to the received over the primary path is accepted and forwarded to the
skipping to change at page 9, line 43 skipping to change at page 9, line 42
the secondary disjoint stream.(see Section 5 options 2, 3, 4) the secondary disjoint stream.(see Section 5 options 2, 3, 4)
3. Capacity Efficiency: as illustrated in the previous example, the 3. Capacity Efficiency: as illustrated in the previous example, the
Multicast trees corresponding to IPTV channels cover the backbone Multicast trees corresponding to IPTV channels cover the backbone
and distribution topology in a very dense manner. As a and distribution topology in a very dense manner. As a
consequence, the secondary path graft into the normal Multicast consequence, the secondary path graft into the normal Multicast
trees (ie. trees signaled by PIM or mLDP without MoFRR extension) trees (ie. trees signaled by PIM or mLDP without MoFRR extension)
at the aggregation level and hence do not demand any extra at the aggregation level and hence do not demand any extra
capacity either on the distribution links or in the backbone. capacity either on the distribution links or in the backbone.
They simply use the capacity that is normally used, without any They simply use the capacity that is normally used, without any
duplication. This is different from conventional multicast FRR duplication. This is different from conventional FRR mechanisms
mechanisms which often duplicate the capacity requirements when which often duplicate the capacity requirements when the backup
the backup path crosses links/nodes which already carry the path crosses links/nodes which already carry the primary/normal
primary/normal tree and hence twice as much capacity is required. tree and hence twice as much capacity is required.
4. Loop free: the secondary path join is sent on an ECMP disjoint 4. Loop free: the secondary path join is sent on an ECMP disjoint
path. By definition, the neighbor receiving this request is path. By definition, the neighbor receiving this request is
closer to the source and hence will not cause a loop. closer to the source and hence will not cause a loop.
The topology we just analyzed is very frequent and can be modelled as The topology we just analyzed is very frequent and can be modelled as
per Fig2. The PE has two ECMP disjoint paths to the source. Each per Fig2. The PE has two ECMP disjoint paths to the source. Each
ECMP path uses a disjoint plane of the network. ECMP path uses a disjoint plane of the network.
Source Source
skipping to change at page 12, line 13 skipping to change at page 12, line 13
This document makes no request of IANA. This document makes no request of IANA.
8. Security Considerations 8. Security Considerations
There are no security considerations for this design other than what There are no security considerations for this design other than what
is already in the main PIM specification [RFC4601] and mLDP is already in the main PIM specification [RFC4601] and mLDP
specification [RFC6388]. specification [RFC6388].
9. Acknowledgments 9. Acknowledgments
The authors would like to thank John Zwiebel, Greg Shepherd, Dave Thanks to Dave Oran and Alvaro Retana for their review and comments
Oran and Alvaro Retana for their review of the draft. on this document.
The authors would like to especially acknowledge the contribution
from Dino Farinacci, John Zwiebel and Greg Shepherd for the genesis
of the MoFRR concept.
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:
Dino Farinacci
Email: farinacci@gmail.com
Wim Henderickx
Alcatel-Lucent
Copernicuslaan 50
Antwerp 2018
Belgium
Email: wim.henderickx@alcatel-lucent.com
Uwe Joorde
Deutsche Telekom
Dahlweg 100
D-48153 Muenster
Germany
Email: Uwe.Joorde@telekom.de
Nicolai Leymann Nicolai Leymann
Deutsche Telekom Deutsche Telekom
Winterfeldtstrasse 21 Winterfeldtstrasse 21
Berlin 10781 Berlin 10781
DE DE
Email: N.Leymann@telekom.de Email: N.Leymann@telekom.de
Jeff Tantsura Jeff Tantsura
Ericsson Ericsson
300 Holger Way 300 Holger Way
San Jose CA 95134 San Jose CA 95134
USA USA
Email: jeff.tantsura@ericsson.com
11. References 11. References
11.1. Normative References 11.1. Normative References
[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.
[RFC5286] Atlas, A. and A. Zinin, "Basic Specification for IP Fast [RFC5286] Atlas, A. and A. Zinin, "Basic Specification for IP Fast
Reroute: Loop-Free Alternates", RFC 5286, September 2008. Reroute: Loop-Free Alternates", RFC 5286, September 2008.
skipping to change at page 13, line 28 skipping to change at page 14, line 35
Email: apoorva@cisco.com Email: apoorva@cisco.com
Clarence Filsfils Clarence Filsfils
Cisco Systems, Inc. Cisco Systems, Inc.
De kleetlaan 6a De kleetlaan 6a
Diegem BRABANT 1831 Diegem BRABANT 1831
Belgium Belgium
Email: cfilsfil@cisco.com Email: cfilsfil@cisco.com
Dino Farinacci
lispers.net
USA
Email: farinacci@gmail.com
IJsbrand Wijnands (editor) IJsbrand Wijnands (editor)
Cisco Systems, Inc. Cisco Systems, Inc.
De Kleetlaan 6a De Kleetlaan 6a
Diegem 1831 Diegem 1831
BE BE
Email: ice@cisco.com Email: ice@cisco.com
Bruno Decraene Bruno Decraene
Orange Orange
38-40 rue du General Leclerc 38-40 rue du General Leclerc
Issy Moulineaux Cedex 9, 92794 Issy Moulineaux Cedex 9, 92794
FR FR
Email: bruno.decraene@orange.com Email: bruno.decraene@orange.com
Uwe Joorde
Deutsche Telekom
Hammer Str. 216-226
Muenster D-48153
DE
Email: Uwe.Joorde@telekom.de
Wim Henderickx
Alcatel-Lucent
Copernicuslaan 50
Antwerp 2018
Belgium
Email: wim.henderickx@alcatel-lucent.com
 End of changes. 23 change blocks. 
70 lines changed or deleted 78 lines changed or added

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