draft-ietf-rtgwg-multihomed-prefix-lfa-02.txt   draft-ietf-rtgwg-multihomed-prefix-lfa-03.txt 
Routing Area Working Group P. Sarkar, Ed. Routing Area Working Group P. Sarkar, Ed.
Internet-Draft Individual Internet-Draft Arrcus, Inc.
Updates: 5286 (if approved) S. Hegde Updates: 5286 (if approved) S. Hegde
Intended status: Standards Track C. Bowers Intended status: Standards Track C. Bowers
Expires: January 26, 2018 Juniper Networks, Inc. Expires: May 3, 2018 Juniper Networks, Inc.
U. Chunduri, Ed. U. Chunduri, Ed.
Huawei Technologies Huawei Technologies
J. Tantsura J. Tantsura
Individual Individual
B. Decraene B. Decraene
Orange Orange
H. Gredler H. Gredler
RtBrick, Inc. RtBrick, Inc.
July 25, 2017 October 30, 2017
LFA selection for Multi-Homed Prefixes LFA selection for Multi-Homed Prefixes
draft-ietf-rtgwg-multihomed-prefix-lfa-02 draft-ietf-rtgwg-multihomed-prefix-lfa-03
Abstract Abstract
This document shares experience gained from implementing algorithms This document shares experience gained from implementing algorithms
to determine Loop-Free Alternates for multi-homed prefixes. In to determine Loop-Free Alternates for multi-homed prefixes. In
particular, this document provides explicit inequalities that can be particular, this document provides explicit inequalities that can be
used to evaluate neighbors as a potential alternates for multi-homed used to evaluate neighbors as a potential alternates for multi-homed
prefixes. It also provides detailed criteria for evaluating prefixes. It also provides detailed criteria for evaluating
potential alternates for external prefixes advertised by OSPF ASBRs. potential alternates for external prefixes advertised by OSPF ASBRs.
This documents updates and expands some of the "Routing Aspects" as This documents updates and expands some of the "Routing Aspects" as
skipping to change at page 1, line 46 skipping to change at page 1, line 46
document are to be interpreted as described in RFC2119 [RFC2119]. document are to be interpreted as described in RFC2119 [RFC2119].
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 https://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 January 26, 2018. This Internet-Draft will expire on May 3, 2018.
Copyright Notice Copyright Notice
Copyright (c) 2017 IETF Trust and the persons identified as the Copyright (c) 2017 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 (https://trustee.ietf.org/license-info) in effect on the date of
publication of this document. Please review these documents publication of this document. Please review these documents
carefully, as they describe your rights and restrictions with respect carefully, as they describe your rights and restrictions with respect
to this document. Code Components extracted from this document must to this document. Code Components extracted from this document must
include Simplified BSD License text as described in Section 4.e of include Simplified BSD License text as described in Section 4.e of
the Trust Legal Provisions and are provided without warranty as the Trust Legal Provisions and are provided without warranty as
described in the Simplified BSD License. described in the Simplified BSD License.
Table of Contents Table of Contents
1. Introduction . . . . . . . . . . . . . . . . . . . . . . . . 3 1. Introduction . . . . . . . . . . . . . . . . . . . . . . . . 3
1.1. Acronyms . . . . . . . . . . . . . . . . . . . . . . . . 3 1.1. Acronyms . . . . . . . . . . . . . . . . . . . . . . . . 3
2. LFA inequalities for MHPs . . . . . . . . . . . . . . . . . . 4 2. LFA inequalities for MHPs . . . . . . . . . . . . . . . . . . 4
3. LFA selection for the multi-homed prefixes . . . . . . . . . 4 3. LFA selection for the multi-homed prefixes . . . . . . . . . 4
3.1. Improved coverage with simplified approach to MHPs . . . 6 3.1. Improved coverage with simplified approach to MHPs . . . 6
3.2. IS-IS ATT Bit considerations . . . . . . . . . . . . . . 7 3.2. IS-IS ATT Bit considerations . . . . . . . . . . . . . . 8
4. LFA selection for the multi-homed external prefixes . . . . . 8 4. LFA selection for the multi-homed external prefixes . . . . . 8
4.1. IS-IS . . . . . . . . . . . . . . . . . . . . . . . . . . 8 4.1. IS-IS . . . . . . . . . . . . . . . . . . . . . . . . . . 8
4.2. OSPF . . . . . . . . . . . . . . . . . . . . . . . . . . 8 4.2. OSPF . . . . . . . . . . . . . . . . . . . . . . . . . . 8
4.2.1. Rules to select alternate ASBR . . . . . . . . . . . 8 4.2.1. Rules to select alternate ASBR . . . . . . . . . . . 9
4.2.2. Multiple ASBRs belonging different area . . . . . . . 9 4.2.2. Multiple ASBRs belonging different area . . . . . . . 10
4.2.3. Type 1 and Type 2 costs . . . . . . . . . . . . . . . 10 4.2.3. Type 1 and Type 2 costs . . . . . . . . . . . . . . . 11
4.2.4. RFC1583compatibility is set to enabled . . . . . . . 10 4.2.4. RFC1583compatibility is set to enabled . . . . . . . 11
4.2.5. Type 7 routes . . . . . . . . . . . . . . . . . . . . 10 4.2.5. Type 7 routes . . . . . . . . . . . . . . . . . . . . 11
4.2.6. Inequalities to be applied for alternate ASBR 4.2.6. Inequalities to be applied for alternate ASBR
selection . . . . . . . . . . . . . . . . . . . . . . 10 selection . . . . . . . . . . . . . . . . . . . . . . 11
4.2.6.1. Forwarding address set to non-zero value . . . . 10 4.2.6.1. Forwarding address set to non-zero value . . . . 11
4.2.6.2. ASBRs advertising type1 and type2 cost . . . . . 11 4.2.6.2. ASBRs advertising type1 and type2 cost . . . . . 12
5. LFA Extended Procedures . . . . . . . . . . . . . . . . . . . 12 5. LFA Extended Procedures . . . . . . . . . . . . . . . . . . . 13
5.1. Links with IGP MAX_METRIC . . . . . . . . . . . . . . . . 12 5.1. Links with IGP MAX_METRIC . . . . . . . . . . . . . . . . 13
5.2. Multi Topology Considerations . . . . . . . . . . . . . . 13 5.2. Multi Topology Considerations . . . . . . . . . . . . . . 14
6. Acknowledgements . . . . . . . . . . . . . . . . . . . . . . 14 6. Acknowledgements . . . . . . . . . . . . . . . . . . . . . . 15
7. Security Considerations . . . . . . . . . . . . . . . . . . . 14 7. Security Considerations . . . . . . . . . . . . . . . . . . . 15
8. References . . . . . . . . . . . . . . . . . . . . . . . . . 14 8. References . . . . . . . . . . . . . . . . . . . . . . . . . 15
8.1. Normative References . . . . . . . . . . . . . . . . . . 14 8.1. Normative References . . . . . . . . . . . . . . . . . . 15
8.2. Informative References . . . . . . . . . . . . . . . . . 14 8.2. Informative References . . . . . . . . . . . . . . . . . 16
Authors' Addresses . . . . . . . . . . . . . . . . . . . . . . . 15 Authors' Addresses . . . . . . . . . . . . . . . . . . . . . . . 16
1. Introduction 1. Introduction
The use of Loop-Free Alternates (LFA) for IP Fast Reroute is The use of Loop-Free Alternates (LFA) for IP Fast Reroute is
specified in [RFC5286]. Section 6.1 of [RFC5286] describes a method specified in [RFC5286]. Section 6.1 of [RFC5286] describes a method
to determine loop-free alternates for a multi-homed prefixes (MHPs). to determine loop-free alternates for a multi-homed prefixes (MHPs).
This document describes a procedure using explicit inequalities that This document describes a procedure using explicit inequalities that
can be used by a computing router to evaluate a neighbor as a can be used by a computing router to evaluate a neighbor as a
potential alternate for a multi-homed prefix. The results obtained potential alternate for a multi-homed prefix. The results obtained
are equivalent to those obtained using the method described in are equivalent to those obtained using the method described in
skipping to change at page 3, line 45 skipping to change at page 3, line 45
AF - Address Family AF - Address Family
ATT - IS-IS Attach Bit ATT - IS-IS Attach Bit
ECMP - Equal Cost Multi Path ECMP - Equal Cost Multi Path
IGP - Interior Gateway Protocol IGP - Interior Gateway Protocol
IS-IS - Intermediate System to Intermediate System IS-IS - Intermediate System to Intermediate System
LSP - IS-IS Link State PDU
OSPF - Open Shortest Path First OSPF - Open Shortest Path First
MHP - Multi-homed Prefix MHP - Multi-homed Prefix
MT - Multi Topology MT - Multi Topology
SPF - Shortest Path First PDU SPF - Shortest Path First PDU
2. LFA inequalities for MHPs 2. LFA inequalities for MHPs
This document proposes the following set of LFA inequalities for This document proposes the following set of LFA inequalities for
selecting the most appropriate LFAs for multi-homed prefixes (MHPs). selecting the most appropriate LFAs for multi-homed prefixes (MHPs).
They can be derived from the inequalities in [RFC5286] combined with They can be derived from the inequalities in [RFC5286] combined with
the observation that D_opt(N,P) = Min (D_opt(N,PO_i) + cost(PO_i,P)) the observation that D_opt(N,P) = Min (D_opt(N,PO_i) + cost(PO_i,P))
over all PO_i over all PO_i
skipping to change at page 4, line 25 skipping to change at page 4, line 26
D_opt(S,PO_best) + cost(PO_best,P) D_opt(S,PO_best) + cost(PO_best,P)
Link-Protection + Downstream-paths-only: Link-Protection + Downstream-paths-only:
D_opt(N,PO_i)+ cost(PO_i,P) < D_opt(S,PO_best) + cost(PO_best,P) D_opt(N,PO_i)+ cost(PO_i,P) < D_opt(S,PO_best) + cost(PO_best,P)
Node-Protection: Node-Protection:
D_opt(N,PO_i)+ cost(PO_i,P) < D_opt(N,E) + D_opt(N,PO_i)+ cost(PO_i,P) < D_opt(N,E) +
D_opt(E,PO_best) + cost(PO_best,P) D_opt(E,PO_best) + cost(PO_best,P)
Where, Where,
P - The multi-homed prefix being evaluated for
computing alternates
S - The computing router S - The computing router
N - The alternate router being evaluated N - The alternate router being evaluated
E - The primary next-hop on shortest path from S to E - The primary next-hop on shortest path from S to
prefix P. prefix P.
PO_i - The specific prefix-originating router being PO_i - The specific prefix-originating router being
evaluated. evaluated.
PO_best - The prefix-originating router on the shortest path PO_best - The prefix-originating router on the shortest path
from the computing router S to prefix P. from the computing router S to prefix P.
Cost (X,P) - Cost of reaching the prefix P from prefix Cost (X,P) - Cost of reaching the prefix P from prefix
originating node X. originating node X.
D_opt(X,Y) - Distance on the shortest path from node X to node D_opt(X,Y) - Distance on the shortest path from node X to node
Y. Y.
Figure 1: LFA inequalities for MHPs Figure 1: LFA inequalities for MHPs
3. LFA selection for the multi-homed prefixes 3. LFA selection for the multi-homed prefixes
To compute a valid LFA for a given multi-homed prefix P, through an To compute a valid LFA for a given multi-homed prefix P, a computing
alternate neighbor N a computing router S MUST follow one of the router S MUST follow one of the appropriate procedures below, for
appropriate procedures below. each alternate neighbor N.
Link-Protection : Link-Protection :
================= =================
1. If alternate neighbor N is also prefix-originator of P, 1. If alternate neighbor N is also prefix-originator of P,
1.a. Select N as a LFA for prefix P (irrespective of 1.a. Select N as a LFA for prefix P (irrespective of
the metric advertised by N for the prefix P). the metric advertised by N for the prefix P).
2. Else, evaluate the link-protecting LFA inequality for P with 2. Else, evaluate the link-protecting LFA inequality for P with
the N as the alternate neighbor. the N as the alternate neighbor.
2.a. If LFA inequality condition is met, 2.a. If LFA inequality condition is met,
select N as a LFA for prefix P. select N as a LFA for prefix P.
skipping to change at page 5, line 38 skipping to change at page 5, line 38
the metric advertised by N for the prefix P). the metric advertised by N for the prefix P).
2. Else, evaluate the appropriate node-protecting LFA inequality 2. Else, evaluate the appropriate node-protecting LFA inequality
for P with the N as the alternate neighbor. for P with the N as the alternate neighbor.
2.a. If LFA inequality condition is met, 2.a. If LFA inequality condition is met,
select N as a LFA for prefix P. select N as a LFA for prefix P.
2.b. Else, N is not a LFA for prefix P. 2.b. Else, N is not a LFA for prefix P.
Figure 2: Rules for selecting LFA for MHPs Figure 2: Rules for selecting LFA for MHPs
In case an alternate neighbor N is also one of the prefix-originators In case an alternate neighbor N is also one of the prefix-originators
of prefix P, N MAY be selected as a valid LFA for P. of prefix P, N MAY be selected as a valid LFA for P since being a
prefix-originator it is guaranteed that N will not loop back packets
destined for prefix P to computing router S.
However, if N is not a prefix-originator of P, the computing router However, if N is not a prefix-originator of P, the computing router
SHOULD evaluate one of the corresponding LFA inequalities, as SHOULD evaluate one of the corresponding LFA inequalities, as
mentioned in Figure 1, once for each remote node that originated the mentioned in Figure 1, once for each remote node that originated the
prefix. In case the inequality is satisfied by the neighbor N router prefix. In case the inequality is satisfied by the neighbor N router
S MUST choose neighbor N, as one of the valid LFAs for the prefix P. S MUST choose neighbor N, as one of the valid LFAs for the prefix P.
When computing a downstream-only LFA, in addition to being a prefix- When computing a downstream-only LFA, in addition to being a prefix-
originator of P, router N MUST also satisfy the downstream-only LFA originator of P, router N MUST also satisfy the downstream-only LFA
inequality specified in Figure 1. inequality specified in Figure 1.
skipping to change at page 6, line 25 skipping to change at page 6, line 28
lower coverage. If an implementation chooses to simplify the multi- lower coverage. If an implementation chooses to simplify the multi-
homed prefix calculation by assuming that the MHP is solely attached homed prefix calculation by assuming that the MHP is solely attached
to the router that was its pre-failure optimal point of attachment, to the router that was its pre-failure optimal point of attachment,
the procedure described in this memo can potentially improve coverage the procedure described in this memo can potentially improve coverage
for equal cost multi path (ECMP) MHPs without incurring extra for equal cost multi path (ECMP) MHPs without incurring extra
computational cost. computational cost.
The approach specified in [RFC5286] Section 6.1 last paragraph, is to The approach specified in [RFC5286] Section 6.1 last paragraph, is to
simplify the MHP as solely attached to the router that was its pre- simplify the MHP as solely attached to the router that was its pre-
failure optimal point of attachment; though it is a scalable approach failure optimal point of attachment; though it is a scalable approach
and simplifies computation, [RFC5286] notes this may result in little and simplifies computation, [RFC5286] notes this MAY result in little
less coverage. less coverage.
This document improves the above approach to provide loop-free This document improves the above approach to provide loop-free
alternatives without any additional cost for equal cost multi path alternatives without any additional cost for ECMP MHPs as described
MHPs as described through the below example network. The approach through the below example network. The approach specified here MAY
specified here MAY also be applicable for handling default routes as also be applicable for handling default routes as explained in
explained in Section 3.2. Section 3.2.
5 +---+ 8 +---+ 5 +---+ 5 +---+ 8 +---+ 5 +---+
+-----| S |------| A |-----| B | +-----| S |------| A |-----| B |
| +---+ +---+ +---+ | +---+ +---+ +---+
| | | | | |
| 5 | 5 | | 5 | 5 |
| | | | | |
+---+ 5 +---+ 4 +---+ 1 +---+ +---+ 5 +---+ 4 +---+ 1 +---+
| C |---| E |-----| M |-------| F | | C |---| E |-----| M |-------| F |
+---+ +---+ +---+ +---+ +---+ +---+ +---+ +---+
skipping to change at page 7, line 15 skipping to change at page 7, line 20
attachment and share the same primary next-hop. Hence, an attachment and share the same primary next-hop. Hence, an
implementation MAY compare the kind of protection A provides to F implementation MAY compare the kind of protection A provides to F
(link-and-node protection) with the kind of protection C provides to (link-and-node protection) with the kind of protection C provides to
E (link protection) and inherit the better alternative to prefix p E (link protection) and inherit the better alternative to prefix p
and here it is A. and here it is A.
However, in the below network prefix p has an ECMP through both node However, in the below network prefix p has an ECMP through both node
E and node F with cost 20. Though it has 2 pre-failure optimal E and node F with cost 20. Though it has 2 pre-failure optimal
points of attachment, the primary next-hop to each pre-failure points of attachment, the primary next-hop to each pre-failure
optimal point of attachment is different. In this case, prefix p optimal point of attachment is different. In this case, prefix p
shall inherit corresponding LFA to each primary next-hop calculated MUST inherit corresponding LFAs of each primary next-hop calculated
for the router advertising the same respectively (node E's and node for the router advertising the same respectively. In the below
F's LFA). diagram that would be node E's and node F's LFA i.e., node N1 and
node N2 respectively.
+---+ 3 +---+ 4 +----+
| S |----------------| B | +------------------| N2 |
+---+ +---+ | +----+
| | | | 4
10 | 1 | 10 +---+ 3 +---+
| | +------| S |----------------| B |
+---+ 6 +---+ | +---+ +---+
| E |-----------------| F | | | |
+---+ +---+ | 10 | 1 |
| | |
+----+ 5 +---+ 16 +---+
| N1 |----| E |-----------------| F |
+----+ +---+ +---+
| 10 16 | | 10 16 |
+-----------p---------+ +-----------p---------+
Figure 4: MHP with different ECMP Next-hops Figure 4: MHP with different ECMP Next-hops
In summary, if there are multiple pre-failure points of attachment In summary, if there are multiple pre-failure points of attachment
for a MHP and primary next-hop of a MHP is same as that of the for a MHP and primary next-hop of a MHP is same as that of the
primary next-hop of the router that was pre-failure optimal point of primary next-hop of the router that was pre-failure optimal point of
attachment, an implementation MAY provide the better protection to attachment, an implementation MAY provide the better protection to
MHP without incurring any additional computation cost. MHP without incurring any additional computation cost.
3.2. IS-IS ATT Bit considerations 3.2. IS-IS ATT Bit considerations
Per [RFC1195] a default route needs to be added in Level1 (L1) router Per [RFC1195] a default route needs to be added in Level1 (L1) router
to the closest reachable Level1/Level2 (L1/L2) router in the network to the closest reachable Level1/Level2 (L1/L2) router in the network
advertising ATT (attach) bit in its LSP-0 fragment. All L1 routers advertising ATT (attach) bit in its LSP-0 fragment. All L1 routers
in the area would do this during the decision process with the next- in the area would do this during the decision process with the next-
hop of the default route set to the adjacent router through which the hop of the default route set to the adjacent router through which the
closest L1/L2 router is reachable. The base LFA specification closest L1/L2 router is reachable. The base LFA specification
[RFC5286] does not specify any procedure for computing LFA for a [RFC5286] does not specify any procedure for computing LFA for a
default route in IS-IS L1 area. Potentially one MAY consider a default route in IS-IS L1 area. This document specifies, potentially
default route is being advertised from the border L1/L2 router where a node MAY consider a default route is being advertised from the
ATT bit is set and can do LFA computation for the default route. border L1/L2 router where ATT bit is set and can do LFA computation
for the default route. But, when multiple ECMP L1/L2 routers are
But, when multiple ECMP L1/L2 routers are reachable in an L1 area reachable in an L1 area corresponding best LFAs SHOULD be given for
corresponding best LFAs SHOULD be given for each primary next-hop each primary next-hop associated with default route. Considerations
associated with default route. Considerations as specified in as specified in Section 3 and Section 3.1 are applicable for default
Section 3 and Section 3.1 are applicable for default routes, if the routes, if the default route is considered as ECMP MHP. Note that,
default route is considered as ECMP MHP. this document doesn't alter any ECMP handling rules or computation of
LFAs for ECMP in general as laid out in [RFC5286].
4. LFA selection for the multi-homed external prefixes 4. LFA selection for the multi-homed external prefixes
Redistribution of external routes into IGP is required in case of two Redistribution of external routes into IGP is required in case of two
different networks getting merged into one or during protocol different networks getting merged into one or during protocol
migrations. External routes could be distributed into an IGP domain migrations. External routes could be distributed into an IGP domain
via multiple nodes to avoid a single point of failure. via multiple nodes to avoid a single point of failure.
During LFA calculation, alternate LFA next-hops to reach the best During LFA calculation, alternate LFA next-hops to reach the best
ASBR could be used as LFA for the routes redistributed via that ASBR. ASBR could be used as LFA for the routes redistributed via that ASBR.
skipping to change at page 8, line 34 skipping to change at page 8, line 48
distributing nodes in the network. distributing nodes in the network.
4.1. IS-IS 4.1. IS-IS
LFA evaluation for multi-homed external prefixes in IS-IS is similar LFA evaluation for multi-homed external prefixes in IS-IS is similar
to the multi-homed internal prefixes. Inequalities described in sec to the multi-homed internal prefixes. Inequalities described in sec
2 would also apply to multi-homed external prefixes as well. 2 would also apply to multi-homed external prefixes as well.
4.2. OSPF 4.2. OSPF
Loop free Alternates [RFC 5286] describes mechanisms to apply Loop free Alternates [RFC5286] describes mechanisms to apply
inequalities to find the loop free alternate neighbor. For the inequalities to find the loop free alternate neighbor. For the
selection of alternate ASBR for LFA consideration, additional rules selection of alternate ASBR for LFA consideration, additional rules
have to be applied in selecting the alternate ASBR due to the have to be applied in selecting the alternate ASBR due to the
external route calculation rules imposed by [RFC 2328]. external route calculation rules imposed by [RFC2328].
This document also defines the inequalities defined in RFC [5286] This document also defines the inequalities defined in [RFC5286]
specifically for the alternate loop-free ASBR evaluation. specifically for the alternate loop-free ASBR evaluation.
4.2.1. Rules to select alternate ASBR 4.2.1. Rules to select alternate ASBR
The process to select an alternate ASBR is best explained using the The process to select an alternate ASBR is best explained using the
rules below. The below process is applied when primary ASBR for the rules below. The below process is applied when primary ASBR for the
concerned prefix is chosen and there is an alternate ASBR originating concerned prefix is chosen and there is an alternate ASBR originating
same prefix. same prefix.
1. If RFC1583Compatibility is disabled 1. If RFC1583Compatibility is disabled
1a. if primary ASBR and alternate ASBR are intra area 1a. if primary ASBR and alternate ASBR are intra area
non-backbone path go to step 2. non-backbone path go to step 2.
1b. If primary ASBR and alternate ASBR belong to 1b. If primary ASBR and alternate ASBR belong to
intra-area backbone and/or inter-area path go intra-area backbone and/or inter-area path go
to step 2. to step 2.
1c. for other paths, skip the alternate ASBR and 1c. for other paths, skip this alternate ASBR and
consider next ASBR. consider next ASBR.
2. If cost type (type1/type2) advertised by alternate 2. If cost type (type1/type2) advertised by alternate
ASBR same as primary ASBR same as primary
2a. If not same skip alternate ASBR and consider next ASBR. 2a. If not, same skip alternate ASBR and consider
next ASBR.
2b. If same proceed to step 3.
3. If cost type is type1 3. If cost type is type1
3a. If cost is same, program ECMP 3a. If cost is same, program ECMP and return.
3b. else go to step 5. 3b. else go to step 5.
4 If cost type is type 2 4 If cost type is type 2
4a. If cost is different, skip alternate ASBR and 4a. If cost is different, skip alternate ASBR and
consider next ASBR consider next ASBR.
4b. If type2 cost is same, compare type 1 cost. 4b. If type2 cost is same, proceed to step 4c to compare
4c. If type1 cost is also same program ECMP. compare type 1 cost.
4c. If type1 cost is also same program ECMP and return.
4d. If type 1 cost is different go to step 5. 4d. If type 1 cost is different go to step 5.
5. If route type (type 5/type 7) 5. If route type (type 5/type 7)
5a. If route type is same, check route p-bit, 5a. If route type is same, check route p-bit,
forwarding address field for routes from both forwarding address field for routes from both
ASBRs ASBRs match. If p-bit matches proceed to step 6.
match. If not skip alternate ASBR and consider If not, skip this alternate ASBR and consider
next ASBR. next ASBR.
5b. If route type is not same, skip ASBR 5b. If route type is not same, skip this alternate ASBR
and consider next ASBR. and consider next alternate ASBR.
6. Apply inequality on the alternate ASBR. 6. Apply inequality on the alternate ASBR.
Figure 5: Rules for selecting alternate ASBR in OSPF Figure 5: Rules for selecting alternate ASBR in OSPF
4.2.2. Multiple ASBRs belonging different area 4.2.2. Multiple ASBRs belonging different area
When "RFC1583compatibility" is set to disabled, OSPF[RFC2328] defines When "RFC1583compatibility" is set to disabled, OSPF [RFC2328]
certain rules of preference to choose the ASBRs. While selecting defines certain rules of preference to choose the ASBRs. While
alternate ASBR for loop evaluation for LFA, these rules should be selecting alternate ASBR for loop evaluation for LFA, these rules
applied and ensured that the alternate neighbor does not loop the should be applied and ensured that the alternate neighbor does not
traffic back. loop the traffic back.
When there are multiple ASBRs belonging to different area advertising When there are multiple ASBRs belonging to different area advertising
the same prefix, pruning rules as defined in RFC 2328 section 16.4.1 the same prefix, pruning rules as defined in [RFC2328] section 16.4.1
are applied. The alternate ASBRs pruned using above rules are not are applied. The alternate ASBRs pruned using above rules are not
considered for LFA evaluation. considered for LFA evaluation.
4.2.3. Type 1 and Type 2 costs 4.2.3. Type 1 and Type 2 costs
If there are multiple ASBRs not pruned via rules defined in 3.2.2, If there are multiple ASBRs not pruned via rules defined in 3.2.2,
the cost type advertised by the ASBRs is compared. ASBRs advertising the cost type advertised by the ASBRs is compared. ASBRs advertising
Type1 costs are preferred and the type2 costs are pruned. If two Type1 costs are preferred and the type2 costs are pruned. If two
ASBRs advertise same type2 cost, the alternate ASBRs are considered ASBRs advertise same type2 cost, the alternate ASBRs are considered
along with their type1 cost for evaluation. If the two ASBRs with along with their type1 cost for evaluation. If the two ASBRs with
skipping to change at page 13, line 24 skipping to change at page 14, line 24
+---+ +---+
10 | 10 |
+---+ +---+
|D2 | |D2 |
+---+ +---+
Figure 8: Link with IGP MAX_METRIC Figure 8: Link with IGP MAX_METRIC
In the simple example network, all the link costs have a cost of 10 In the simple example network, all the link costs have a cost of 10
in both directions, except for the link between S and N2. The S-N2 in both directions, except for the link between S and N2. The S-N2
link has a cost of 10 in the direction from S to N2, and a cost of link has a cost of 10 in the forward direction i.e., from S to N2,
MAX_METRIC in the direction from N2 to S (0xffffff /2^24 - 1 for IS- and a cost of MAX_METRIC (0xffffff /2^24 - 1 for IS-IS and 0xffff for
IS and 0xffff for OSPF) for a specific end to end Traffic Engineering OSPF) in the reverse direction i.e., from N2 to S for a specific end-
(TE) requirement of the operator. At node S, D1 is reachable through to-end Traffic Engineering (TE) requirement of the operator. At node
N1 with cost 20, and D2 is reachable through N2 with cost 20. Even S, D1 is reachable through N1 with cost 20, and D2 is reachable
though neighbor N2 satisfies basic loop-free condition (inequality 1 through N2 with cost 20. Even though neighbor N2 satisfies basic
of [RFC5286]) for D1 this could be excluded as potential alternative loop-free condition (inequality 1 of [RFC5286]) for D1, S's neighbor
because of the current exclusions as specified in section 3.5 and 3.6 N2 could be excluded as a potential alternative because of the
procedure of [RFC5286]. But, as the primary traffic destined to D2 current exclusions as specified in section 3.5 and 3.6 procedure of
continue to use the link and hence irrespective of the reverse metric [RFC5286]. But, as the primary traffic destined to D2 continue to
in this case, the same link MAY be used as a potential LFA for D1. use the link and hence irrespective of the reverse metric in this
case, same link MAY be used as a potential LFA for D1.
Alternatively, reverse metric of the link MAY be configured with Alternatively, reverse metric of the link MAY be configured with
MAX_METRIC-1, so that the link can be used as an alternative while MAX_METRIC-1, so that the link can be used as an alternative while
meeting the TE requirements. meeting the operator's TE requirements and without having to update
the router to fix this particular issue.
5.2. Multi Topology Considerations 5.2. Multi Topology Considerations
Section 6.2 and 6.3.2 of [RFC5286] state that multi-topology OSPF and Section 6.2 and 6.3.2 of [RFC5286] state that multi-topology OSPF and
ISIS are out of scope for that specification. This memo clarifies ISIS are out of scope for that specification. This memo clarifies
and describes the applicability. and describes the applicability.
In Multi Topology (MT) IGP deployments, for each MT ID, a separate In Multi Topology (MT) IGP deployments, for each MT ID, a separate
shortest path tree (SPT) is built with topology specific adjacencies, shortest path tree (SPT) is built with topology specific adjacencies,
the LFA principles laid out in [RFC5286] are actually applicable for the LFA principles laid out in [RFC5286] are actually applicable for
MT IS-IS [RFC5120] LFA SPF. The primary difference in this case is, MT IS-IS [RFC5120] LFA SPF. The primary difference in this case is,
identifying the eligible-set of neighbors for each LFA computation identifying the eligible-set of neighbors for each LFA computation
which is done per MT ID. The eligible-set for each MT ID is which is done per MT ID. The eligible-set for each MT ID is
determined by the presence of IGP adjacency from Source to the determined by the presence of IGP adjacency from Source to the
neighboring node on that MT-ID apart from the administrative neighboring node on that MT-ID apart from the administrative
restrictions and other checks laid out in [RFC5286]. The same is restrictions and other checks laid out in [RFC5286]. The same is
also applicable for OSPF [RFC4915] [MT-OSPF] or different AFs in also applicable for MT-OSPF [RFC4915] or different AFs in multi
multi instance OSPFv3 [RFC5838]. instance OSPFv3 [RFC5838].
However for MT IS-IS, if a default topology is used with MT-ID 0 However for MT IS-IS, if a "standart topology" is used with MT-ID #0
[RFC5286] and both IPv4 [RFC5305] and IPv6 routes/AFs [RFC5308] are [RFC5286] and both IPv4 [RFC5305] and IPv6 routes/AFs [RFC5308] are
present, then the condition of network congruency is applicable for present, then the condition of network congruency is applicable for
LFA computation as well. Network congruency here refers to, having LFA computation as well. Network congruency here refers to, having
same address families provisioned on all the links and all the nodes same address families provisioned on all the links and all the nodes
of the network with MT-ID 0. Here with single decision process both of the network with MT-ID #0. Here with single decision process both
IPv4 and IPv6 next-hops are computed for all the prefixes in the IPv4 and IPv6 next-hops are computed for all the prefixes in the
network and similarly with one LFA computation from all eligible network and similarly with one LFA computation from all eligible
neighbors per [RFC5286], all potential alternatives can be computed. neighbors per [RFC5286], all potential alternatives can be computed.
6. Acknowledgements 6. Acknowledgements
Thanks to Alia Atlas and Salih K A for their useful feedback and Thanks to Alia Atlas and Salih K A for their useful feedback and
inputs. inputs. Thanks to Stewart Bryant for being document shepherd and
providing detailed review comments.
7. Security Considerations 7. Security Considerations
This document does not introduce any change in any of the protocol This document does not introduce any change in any of the protocol
specifications and also this does not introduce any new security [RFC1195] [RFC5120] [RFC2328] [RFC5838] specifications discussed here
issues other than as noted in the LFA base specification [RFC5286]. and also this does not introduce any new security issues other than
as noted in the LFA base specification [RFC5286].
8. References 8. References
8.1. Normative References 8.1. Normative References
[RFC1195] Callon, R., "Use of OSI IS-IS for routing in TCP/IP and
dual environments", RFC 1195, DOI 10.17487/RFC1195,
December 1990, <http://www.rfc-editor.org/info/rfc1195>.
[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, Requirement Levels", BCP 14, RFC 2119,
DOI 10.17487/RFC2119, March 1997, DOI 10.17487/RFC2119, March 1997,
<http://www.rfc-editor.org/info/rfc2119>. <https://www.rfc-editor.org/info/rfc2119>.
[RFC5286] Atlas, A., Ed. and A. Zinin, Ed., "Basic Specification for
IP Fast Reroute: Loop-Free Alternates", RFC 5286,
DOI 10.17487/RFC5286, September 2008,
<https://www.rfc-editor.org/info/rfc5286>.
8.2. Informative References 8.2. Informative References
[RFC1195] Callon, R., "Use of OSI IS-IS for routing in TCP/IP and
dual environments", RFC 1195, DOI 10.17487/RFC1195,
December 1990, <https://www.rfc-editor.org/info/rfc1195>.
[RFC2328] Moy, J., "OSPF Version 2", STD 54, RFC 2328,
DOI 10.17487/RFC2328, April 1998,
<https://www.rfc-editor.org/info/rfc2328>.
[RFC3137] Retana, A., Nguyen, L., White, R., Zinin, A., and D. [RFC3137] Retana, A., Nguyen, L., White, R., Zinin, A., and D.
McPherson, "OSPF Stub Router Advertisement", RFC 3137, McPherson, "OSPF Stub Router Advertisement", RFC 3137,
DOI 10.17487/RFC3137, June 2001, DOI 10.17487/RFC3137, June 2001,
<http://www.rfc-editor.org/info/rfc3137>. <https://www.rfc-editor.org/info/rfc3137>.
[RFC4915] Psenak, P., Mirtorabi, S., Roy, A., Nguyen, L., and P. [RFC4915] Psenak, P., Mirtorabi, S., Roy, A., Nguyen, L., and P.
Pillay-Esnault, "Multi-Topology (MT) Routing in OSPF", Pillay-Esnault, "Multi-Topology (MT) Routing in OSPF",
RFC 4915, DOI 10.17487/RFC4915, June 2007, RFC 4915, DOI 10.17487/RFC4915, June 2007,
<http://www.rfc-editor.org/info/rfc4915>. <https://www.rfc-editor.org/info/rfc4915>.
[RFC5120] Przygienda, T., Shen, N., and N. Sheth, "M-ISIS: Multi [RFC5120] Przygienda, T., Shen, N., and N. Sheth, "M-ISIS: Multi
Topology (MT) Routing in Intermediate System to Topology (MT) Routing in Intermediate System to
Intermediate Systems (IS-ISs)", RFC 5120, Intermediate Systems (IS-ISs)", RFC 5120,
DOI 10.17487/RFC5120, February 2008, DOI 10.17487/RFC5120, February 2008,
<http://www.rfc-editor.org/info/rfc5120>. <https://www.rfc-editor.org/info/rfc5120>.
[RFC5286] Atlas, A., Ed. and A. Zinin, Ed., "Basic Specification for
IP Fast Reroute: Loop-Free Alternates", RFC 5286,
DOI 10.17487/RFC5286, September 2008,
<http://www.rfc-editor.org/info/rfc5286>.
[RFC5305] Li, T. and H. Smit, "IS-IS Extensions for Traffic [RFC5305] Li, T. and H. Smit, "IS-IS Extensions for Traffic
Engineering", RFC 5305, DOI 10.17487/RFC5305, October Engineering", RFC 5305, DOI 10.17487/RFC5305, October
2008, <http://www.rfc-editor.org/info/rfc5305>. 2008, <https://www.rfc-editor.org/info/rfc5305>.
[RFC5308] Hopps, C., "Routing IPv6 with IS-IS", RFC 5308, [RFC5308] Hopps, C., "Routing IPv6 with IS-IS", RFC 5308,
DOI 10.17487/RFC5308, October 2008, DOI 10.17487/RFC5308, October 2008,
<http://www.rfc-editor.org/info/rfc5308>. <https://www.rfc-editor.org/info/rfc5308>.
[RFC5838] Lindem, A., Ed., Mirtorabi, S., Roy, A., Barnes, M., and [RFC5838] Lindem, A., Ed., Mirtorabi, S., Roy, A., Barnes, M., and
R. Aggarwal, "Support of Address Families in OSPFv3", R. Aggarwal, "Support of Address Families in OSPFv3",
RFC 5838, DOI 10.17487/RFC5838, April 2010, RFC 5838, DOI 10.17487/RFC5838, April 2010,
<http://www.rfc-editor.org/info/rfc5838>. <https://www.rfc-editor.org/info/rfc5838>.
[RFC7916] Litkowski, S., Ed., Decraene, B., Filsfils, C., Raza, K.,
Horneffer, M., and P. Sarkar, "Operational Management of
Loop-Free Alternates", RFC 7916, DOI 10.17487/RFC7916,
July 2016, <http://www.rfc-editor.org/info/rfc7916>.
Authors' Addresses Authors' Addresses
Pushpasis Sarkar (editor) Pushpasis Sarkar (editor)
Individual Arrcus, Inc.
Email: pushpasis.ietf@gmail.com Email: pushpasis.ietf@gmail.com
Shraddha Hegde Shraddha Hegde
Juniper Networks, Inc. Juniper Networks, Inc.
Electra, Exora Business Park Electra, Exora Business Park
Bangalore, KA 560103 Bangalore, KA 560103
India India
Email: shraddha@juniper.net Email: shraddha@juniper.net
 End of changes. 48 change blocks. 
118 lines changed or deleted 135 lines changed or added

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