rfc9705.original   rfc9705.txt 
MPLS Working Group C. Ramachandran Internet Engineering Task Force (IETF) C. Ramachandran
Internet-Draft Juniper Networks, Inc. Request for Comments: 9705 Juniper Networks, Inc.
Updates: 4090 (if approved) T. Saad Updates: 4090 T. Saad
Intended status: Standards Track Cisco Systems, Inc. Category: Standards Track Cisco Systems, Inc.
Expires: 14 February 2025 I. Minei ISSN: 2070-1721 I. Minei
Google, Inc. Google, Inc.
D. Pacella D. Pacella
Verizon, Inc. Verizon, Inc.
13 August 2024 December 2024
Refresh-interval Independent FRR Facility Protection Refresh-Interval Independent Fast Reroute (FRR) Facility Protection
draft-ietf-mpls-ri-rsvp-frr-22
Abstract Abstract
The RSVP-TE Fast Reroute extensions specified in RFC 4090 defines two The RSVP-TE Fast Reroute (FRR) extensions specified in RFC 4090
local repair techniques to reroute Label Switched Path (LSP) traffic define two local repair techniques to reroute Label Switched Path
over pre-established backup tunnel. Facility backup method allows (LSP) traffic over pre-established backup tunnels. Facility backup
one or more LSPs traversing a connected link or node to be protected methods allow one or more LSPs traversing a connected link or node to
using a bypass tunnel. The many-to-one nature of local repair be protected using a bypass tunnel. The many-to-one nature of local
technique is attractive from scalability point of view. This repair techniques is attractive from a scalability point of view.
document enumerates facility backup procedures in RFC 4090 that rely This document enumerates facility backup procedures in RFC 4090 that
on refresh timeout and hence make facility backup method refresh- rely on refresh timeout, hence, making facility backup methods
interval dependent. The RSVP-TE extensions defined in this document refresh-interval dependent. The RSVP-TE extensions defined in this
will enhance the facility backup protection mechanism by making the document will enhance the facility backup protection mechanism by
corresponding procedures refresh-interval independent and hence making the corresponding procedures refresh-interval independent, and
compatible with Refresh-interval Independent RSVP (RI-RSVP) specified hence, compatible with the Refresh-Interval Independent RSVP (RI-
in RFC 8370. Hence, this document updates RFC 4090 in order to RSVP) capability specified in RFC 8370. Hence, this document updates
support RI-RSVP capability specified in RFC 8370. RFC 4090 in order to support the RI-RSVP capability specified in RFC
8370.
Requirements Language
The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT",
"SHOULD", "SHOULD NOT", "RECOMMENDED", "NOT RECOMMENDED", "MAY", and
"OPTIONAL" in this document are to be interpreted as described in BCP
14 [RFC2119] [RFC8174] when, and only when, they appear in all
capitals, as shown here.
Status of This Memo Status of This Memo
This Internet-Draft is submitted in full conformance with the This is an Internet Standards Track document.
provisions of BCP 78 and BCP 79.
Internet-Drafts are working documents of the Internet Engineering
Task Force (IETF). Note that other groups may also distribute
working documents as Internet-Drafts. The list of current Internet-
Drafts is at https://datatracker.ietf.org/drafts/current/.
Internet-Drafts are draft documents valid for a maximum of six months This document is a product of the Internet Engineering Task Force
and may be updated, replaced, or obsoleted by other documents at any (IETF). It represents the consensus of the IETF community. It has
time. It is inappropriate to use Internet-Drafts as reference received public review and has been approved for publication by the
material or to cite them other than as "work in progress." Internet Engineering Steering Group (IESG). Further information on
Internet Standards is available in Section 2 of RFC 7841.
This Internet-Draft will expire on 14 February 2025. Information about the current status of this document, any errata,
and how to provide feedback on it may be obtained at
https://www.rfc-editor.org/info/rfc9705.
Copyright Notice Copyright Notice
Copyright (c) 2024 IETF Trust and the persons identified as the Copyright (c) 2024 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 (https://trustee.ietf.org/ Provisions Relating to IETF Documents
license-info) in effect on the date of publication of this document. (https://trustee.ietf.org/license-info) in effect on the date of
Please review these documents carefully, as they describe your rights publication of this document. Please review these documents
and restrictions with respect to this document. Code Components carefully, as they describe your rights and restrictions with respect
extracted from this document must include Revised BSD License text as to this document. Code Components extracted from this document must
described in Section 4.e of the Trust Legal Provisions and are include Revised BSD License text as described in Section 4.e of the
provided without warranty as described in the Revised BSD License. Trust Legal Provisions and are provided without warranty as described
in the Revised BSD License.
This document may contain material from IETF Documents or IETF This document may contain material from IETF Documents or IETF
Contributions published or made publicly available before November Contributions published or made publicly available before November
10, 2008. The person(s) controlling the copyright in some of this 10, 2008. The person(s) controlling the copyright in some of this
material may not have granted the IETF Trust the right to allow material may not have granted the IETF Trust the right to allow
modifications of such material outside the IETF Standards Process. modifications of such material outside the IETF Standards Process.
Without obtaining an adequate license from the person(s) controlling Without obtaining an adequate license from the person(s) controlling
the copyright in such materials, this document may not be modified the copyright in such materials, this document may not be modified
outside the IETF Standards Process, and derivative works of it may outside the IETF Standards Process, and derivative works of it may
not be created outside the IETF Standards Process, except to format not be created outside the IETF Standards Process, except to format
it for publication as an RFC or to translate it into languages other it for publication as an RFC or to translate it into languages other
than English. than English.
Table of Contents Table of Contents
1. Introduction . . . . . . . . . . . . . . . . . . . . . . . . 3 1. Introduction
1.1. Motivation . . . . . . . . . . . . . . . . . . . . . . . 4 1.1. Motivation
2. Terminology . . . . . . . . . . . . . . . . . . . . . . . . . 5 2. Terminology
3. Problem Description . . . . . . . . . . . . . . . . . . . . . 6 2.1. Requirements Language
4. Solution Aspects . . . . . . . . . . . . . . . . . . . . . . 8 3. Problem Description
4.1. Requirement on RFC 4090 Capable Node to advertise RI-RSVP 4. Solution Aspects
Capability . . . . . . . . . . . . . . . . . . . . . . . 9 4.1. Requirement on RFC 4090 Capable Node to Advertise the
4.2. Signaling Handshake between PLR and MP . . . . . . . . . 9 RI-RSVP Capability
4.2.1. PLR Behavior . . . . . . . . . . . . . . . . . . . . 9 4.2. Signaling Handshake Between PLR and MP
4.2.2. Remote Signaling Adjacency . . . . . . . . . . . . . 10 4.2.1. PLR Behavior
4.2.3. MP Behavior . . . . . . . . . . . . . . . . . . . . . 11 4.2.2. Remote Signaling Adjacency
4.2.4. "Remote" State on MP . . . . . . . . . . . . . . . . 12 4.2.3. MP Behavior
4.3. Impact of Failures on LSP State . . . . . . . . . . . . . 12 4.2.4. "Remote" State on MP
4.3.1. Non-MP Behavior . . . . . . . . . . . . . . . . . . . 13 4.3. Impact of Failures on LSP State
4.3.2. LP-MP Behavior . . . . . . . . . . . . . . . . . . . 13 4.3.1. Non-MP Behavior
4.3.3. NP-MP Behavior . . . . . . . . . . . . . . . . . . . 13 4.3.2. LP-MP Behavior
4.3.4. Behavior of a Router that is both LP-MP and NP-MP . . 15 4.3.3. NP-MP Behavior
4.4. Conditional PathTear . . . . . . . . . . . . . . . . . . 15 4.3.4. Behavior of a Router That Is Both the LP-MP and NP-MP
4.4.1. Sending Conditional PathTear . . . . . . . . . . . . 15 4.4. Conditional PathTear
4.4.2. Processing Conditional PathTear . . . . . . . . . . . 16 4.4.1. Sending the Conditional PathTear
4.4.3. CONDITIONS Object . . . . . . . . . . . . . . . . . . 16 4.4.2. Processing the Conditional PathTear
4.5. Remote State Teardown . . . . . . . . . . . . . . . . . . 17 4.4.3. CONDITIONS Object
4.5.1. PLR Behavior on Local Repair Failure . . . . . . . . 18 4.5. Remote State Teardown
4.5.2. PLR Behavior on Resv RRO Change . . . . . . . . . . . 18 4.5.1. PLR Behavior on Local Repair Failure
4.5.3. LSP Preemption during Local Repair . . . . . . . . . 18 4.5.2. PLR Behavior on Resv RRO Change
4.5.3.1. Preemption on LP-MP after Phop Link Failure . . . 19 4.5.3. LSP Preemption During Local Repair
4.5.3.2. Preemption on NP-MP after Phop Link Failure . . . 19 4.5.3.1. Preemption on LP-MP After Phop Link Failure
4.6. Backward Compatibility Procedures . . . . . . . . . . . . 20 4.5.3.2. Preemption on NP-MP After Phop Link Failure
4.6.1. Detecting Support for Refresh interval Independent 4.6. Backward Compatibility Procedures
FRR . . . . . . . . . . . . . . . . . . . . . . . . . 20 4.6.1. Detecting Support for Refresh-Interval Independent FRR
4.6.2. Procedures for Backward Compatibility . . . . . . . . 21 4.6.2. Procedures for Backward Compatibility
4.6.2.1. Lack of support on Downstream Node . . . . . . . 21 4.6.2.1. Lack of Support on Downstream Nodes
4.6.2.2. Lack of support on Upstream Node . . . . . . . . 21 4.6.2.2. Lack of Support on Upstream Nodes
4.6.2.3. Incremental Deployment . . . . . . . . . . . . . 22 4.6.2.3. Incremental Deployment
4.7. Consequence of Advertising RI-RSVP without RI-RSVP-FRR . 23 4.7. Consequences of Advertising RI-RSVP Without RI-RSVP-FRR
5. Security Considerations . . . . . . . . . . . . . . . . . . . 24 5. Security Considerations
6. IANA Considerations . . . . . . . . . . . . . . . . . . . . . 24 6. IANA Considerations
6.1. CONDITIONS Object . . . . . . . . . . . . . . . . . . . . 24 6.1. CONDITIONS Object
7. Acknowledgements . . . . . . . . . . . . . . . . . . . . . . 25 7. References
8. Contributors . . . . . . . . . . . . . . . . . . . . . . . . 25 7.1. Normative References
9. References . . . . . . . . . . . . . . . . . . . . . . . . . 25 7.2. Informative References
9.1. Normative References . . . . . . . . . . . . . . . . . . 25 Acknowledgements
9.2. Informative References . . . . . . . . . . . . . . . . . 27 Contributors
Authors' Addresses . . . . . . . . . . . . . . . . . . . . . . . 27 Authors' Addresses
1. Introduction 1. Introduction
RSVP-TE relies on periodic refresh of RSVP messages to synchronize RSVP-TE relies on a periodic refresh of RSVP messages to synchronize
and maintain the Label Switched Path (LSP) related states along the and maintain the states related to the Label Switched Path (LSP)
reserved path. In the absence of refresh messages, the LSP-related along the reserved path. In the absence of refresh messages, the
states are automatically deleted. Reliance on periodic refreshes and LSP-related states are automatically deleted. Reliance on periodic
refresh timeouts are problematic from the scalability point of view. refreshes and refresh timeouts are problematic from the scalability
The number of RSVP-TE LSPs that a router needs to maintain has been point of view. The number of RSVP-TE LSPs that a router needs to
growing in service provider networks and the implementations should maintain has been growing in service provider networks, and the
be capable of handling increase in LSP scale. implementations should be capable of handling increases in LSP scale.
[RFC2961] specifies mechanisms to eliminate the reliance on periodic [RFC2961] specifies mechanisms to eliminate the reliance on periodic
refresh and refresh timeout of RSVP messages and enables a router to refreshes and refresh timeouts of RSVP messages and enables a router
increase the message refresh interval to values much longer than the to increase the message refresh interval to values much longer than
default 30 seconds defined in [RFC2205]. However, the protocol the default 30 seconds defined in [RFC2205]. However, the protocol
extensions defined in [RFC4090] for supporting Fast Reroute (FRR) extensions defined in [RFC4090] for supporting Fast Reroute (FRR)
using bypass tunnels implicitly rely on short refresh timeouts to using bypass tunnels implicitly rely on short refresh timeouts to
cleanup stale states. clean up stale states.
In order to eliminate the reliance on refresh timeouts, the routers In order to eliminate the reliance on refresh timeouts, the routers
should unambiguously determine when a particular LSP state should be should unambiguously determine when a particular LSP state should be
deleted. In scenarios involving [RFC4090] FRR using bypass tunnels, deleted. In scenarios involving FRR using bypass tunnels [RFC4090],
additional explicit tear down messages are necessary. Refresh- additional explicit teardown messages are necessary. The Refresh-
interval Independent RSVP FRR (RI-RSVP-FRR) extensions specified in Interval Independent RSVP FRR (RI-RSVP-FRR) extensions specified in
this document consists of procedures to enable LSP state cleanup that this document consist of procedures to enable LSP state cleanup that
are essential in supporting RI-RSVP capability for [RFC4090] FRR are essential in supporting the RI-RSVP capability for FRR using
using bypass tunnels. bypass tunnels from [RFC4090].
1.1. Motivation 1.1. Motivation
Base RSVP [RFC2205] maintains state via the generation of RSVP Path/ Base RSVP [RFC2205] maintains state via the generation of RSVP Path
Resv refresh messages. Refresh messages are used to both synchronize and Resv refresh messages. Refresh messages are used to both
state between RSVP neighbors and to recover from lost RSVP messages. synchronize state between RSVP neighbors and to recover from lost
The use of Refresh messages to cover many possible failures has RSVP messages. The use of Refresh messages to cover many possible
resulted in a number of operational problems. failures has resulted in a number of operational problems.
- One problem relates to RSVP control plane scaling due to periodic * One problem relates to RSVP control plane scaling due to periodic
refreshes of Path and Resv messages, another relates to the refreshes of Path and Resv messages and another relates to the
reliability and latency of RSVP signaling. reliability and latency of RSVP signaling.
- An additional problem is the time to clean up the stale state * An additional problem is the time to clean up the stale state
after a tear message is lost. For more on these problems see after a tear message is lost. For more on these problems, see
Section 1 of RSVP Refresh Overhead Reduction Extensions [RFC2961]. Section 1 of [RFC2961].
The problems listed above adversely affect RSVP control plane The problems listed above adversely affect RSVP control plane
scalability and RSVP-TE [RFC3209] inherited these problems from scalability, and RSVP-TE [RFC3209] inherited these problems from
standard RSVP. Procedures specified in [RFC2961] address the above- standard RSVP. Procedures specified in [RFC2961] address the above-
mentioned problems by eliminating dependency on refreshes for state mentioned problems by eliminating dependency on refreshes for state
synchronization and for recovering from lost RSVP messages, and by synchronization and for recovering from lost RSVP messages, and also
eliminating dependency on refresh timeout for stale state cleanup. by eliminating dependency on refresh timeout for stale state cleanup.
Implementing these procedures allows implementations to improve RSVP- Implementing these procedures allows implementations to improve RSVP-
TE control plane scalability. For more details on eliminating TE control plane scalability. For more details on eliminating
dependency on refresh timeout for stale state cleanup, refer to dependency on refresh timeouts for stale state cleanup, refer to
"Refresh-interval Independent RSVP" section 3 of RSVP-TE Scaling Section 3 of [RFC8370].
Techniques [RFC8370].
However, the facility backup protection procedures specified in However, the facility backup protection procedures specified in
[RFC4090] do not fully address stale state cleanup as the procedures [RFC4090] do not fully address stale state cleanup as the procedures
depend on refresh timeouts for stale state cleanup. The updated depend on refresh timeouts for stale state cleanup. The updated
facility backup protection procedures specified in this document, in facility backup protection procedures specified in this document, in
combination with RSVP-TE Scaling Techniques [RFC8370], eliminate this combination with RSVP-TE Scaling Techniques [RFC8370], eliminate this
dependency on refresh timeouts for stale state cleanup. dependency on refresh timeouts for stale state cleanup.
The procedures specified in this document assume reliable delivery of The procedures specified in this document assume reliable delivery of
RSVP messages, as specified in [RFC2961]. Therefore, this document RSVP messages, as specified in [RFC2961]. Therefore, this document
makes support for [RFC2961] a pre-requisite. makes support for [RFC2961] a prerequisite.
2. Terminology 2. Terminology
The reader is expected to be familiar with the terminology in The reader is expected to be familiar with the terminology in
[RFC2205], [RFC3209], [RFC4090], [RFC4558], [RFC8370] and [RFC8796]. [RFC2205], [RFC3209], [RFC4090], [RFC4558], [RFC8370], and [RFC8796].
Phop node: Previous-hop router along the label switched path Phop node: Previous-Hop router along the LSP
PPhop node: Previous-Previous-hop router along the label switched PPhop node: Previous-Previous-Hop router along the LSP
path
Nhop node: Next-hop router along the label switched path Nhop node: Next-Hop router along the LSP
NNhop node: Next-Next-hop router along the label switched path NNhop node: Next-Next-Hop router along the LSP
PLR: Point of Local Repair router as defined in [RFC4090] PLR: Point of Local Repair router as defined in [RFC4090]
MP: Merge Point router as defined in [RFC4090] MP: Merge Point router as defined in [RFC4090]
LP-MP node: Merge Point router at the tail of Link-Protecting bypass LP-MP node: Merge Point router at the tail of Link-Protecting bypass
tunnel tunnel
NP-MP node: Merge Point router at the tail of Node-Protecting bypass NP-MP node: Merge Point router at the tail of Node-Protecting bypass
tunnel tunnel
RRO: Record Route Object as defined in [RFC3209] PSB: Path State Block
TED: Traffic Engineering Database RSB: Reservation State Block
LSP state: The combination of "path state" maintained as Path State RRO: Record Route Object as defined in [RFC3209]
Block (PSB) and "reservation state" maintained as Reservation State
Block (RSB) forms an individual LSP state on an RSVP-TE speaker
RI-RSVP: The set of procedures defined in Section 3 of RSVP-TE TED: Traffic Engineering Database
Scaling Techniques [RFC8370] to eliminate RSVP's reliance on periodic
message refreshes
B-SFRR-Ready: Bypass Summary FRR Ready Extended Association object LSP state: The combination of "path state" maintained as a PSB and
defined in Summary FRR extensions [RFC8796] and is added by the PLR "reservation state" maintained as an RSB forms an individual LSP
for each protected LSP. state on an RSVP-TE speaker
RI-RSVP-FRR: The set of procedures defined in this document to RI-RSVP: The set of procedures defined in Section 3 of [RFC8370] to
eliminate RSVP's reliance of periodic message refreshes when eliminate RSVP's reliance on periodic message refreshes
supporting facility backup protection [RFC4090]
Conditional PathTear: A PathTear message containing a suggestion to a B-SFRR-Ready: Bypass Summary FRR Ready Extended Association object
receiving downstream router to retain the path state if the receiving as defined in [RFC8796] and added by the PLR for each protected
router is an NP-MP LSP
Remote PathTear: A PathTear message sent from a Point of Local Repair RI-RSVP-FRR: The set of procedures defined in this document to
(PLR) to the MP to delete the LSP state on the MP if PLR had not eliminate RSVP's reliance on periodic message refreshes when
previously sent the backup Path state reliably supporting facility backup protection [RFC4090]
Conditional PathTear: A PathTear message containing a suggestion to
a receiving downstream router to retain the path state if the
receiving router is an NP-MP
Remote PathTear: A PathTear message sent from a PLR to the MP to
delete the LSP state on the MP if the PLR had not previously sent
the backup path state reliably
2.1. Requirements Language
The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT",
"SHOULD", "SHOULD NOT", "RECOMMENDED", "NOT RECOMMENDED", "MAY", and
"OPTIONAL" in this document are to be interpreted as described in
BCP 14 [RFC2119] [RFC8174] when, and only when, they appear in all
capitals, as shown here.
3. Problem Description 3. Problem Description
E E
/ \ / \
/ \ / \
/ \ / \
/ \ / \
/ \ / \
/ \ / \
skipping to change at page 6, line 42 skipping to change at line 273
\ / \ /
F F
Figure 1: Example Topology Figure 1: Example Topology
In the topology in Figure 1, consider a large number of LSPs from A In the topology in Figure 1, consider a large number of LSPs from A
to D transiting B and C. Assume that refresh interval has been to D transiting B and C. Assume that refresh interval has been
configured to be long of the order of minutes and refresh reduction configured to be long of the order of minutes and refresh reduction
extensions are enabled on all routers. extensions are enabled on all routers.
Also assume that node protection has been configured for the LSPs and In addition, assume that node protection has been configured for the
the LSPs are protected by each router in the following way LSPs and the LSPs are protected by each router in the following way:
- A has made node protection available using bypass LSP A -> E -> C; * A has made node protection available using bypass LSP A -> E -> C;
A is the PLR and C is the NP-MP A is the PLR and C is the NP-MP.
- B has made node protection available using bypass LSP B -> F -> D; * B has made node protection available using bypass LSP B -> F -> D;
B is the PLR and D is the NP-MP B is the PLR and D is the NP-MP.
- C has made link protection available using bypass LSP C -> B -> F * C has made link protection available using bypass LSP C -> B -> F
-> D; C is the PLR and D is the LP-MP -> D; C is the PLR and D is the LP-MP.
In the above condition, assume that B-C link fails. The following is In the above condition, assume that the B-C link fails. The
the sequence of events that is expected to occur for all protected following is the sequence of events that is expected to occur for all
LSPs under normal conditions. protected LSPs under normal conditions.
1. B performs local repair and re-directs LSP traffic over the Step 1. B performs a local repair and redirects LSP traffic over the
bypass LSP B -> F -> D. bypass LSP B -> F -> D.
2. B also creates backup state for the LSP and triggers sending of Step 2. B also creates a backup state for the LSP and triggers the
backup LSP state to D over the bypass LSP B -> F -> D. sending of a backup LSP state to D over the bypass LSP B ->
F -> D.
3. D receives backup LSP states and merges the backups with the Step 3. D receives the backup LSP states and merges the backups with
protected LSPs. the protected LSPs.
4. As the link on C, over which the LSP states are refreshed, has Step 4. As the link on C, over which the LSP states are refreshed,
failed, C will no longer receive state refreshes. Consequently, has failed, C will no longer receive state refreshes.
the protected LSP states on C will time out and C will send the Consequently, the protected LSP states on C will time out
tear down messages for all LSPs. As each router should consider and C will send the teardown messages for all LSPs. As each
itself as an MP, C will time out the state only after waiting for router should consider itself as an MP, C will time out the
an additional duration equal to refresh timeout. state only after waiting for an additional duration equal to
the refresh timeout.
While the above sequence of events has been described in [RFC4090], While the above sequence of events has been described in [RFC4090],
there are a few problems for which no mechanism has been specified there are a few problems for which no mechanism has been specified
explicitly. explicitly:
- If the protected LSP on C times out before D receives signaling * If the protected LSP on C times out before D receives signaling
for the backup LSP, then D would receive a PathTear from C prior for the backup LSP, then D would receive a PathTear from C prior
to receiving signaling for the backup LSP, thus resulting in to receiving signaling for the backup LSP, thus resulting in
deleting the LSP state. This would be possible at scale even with deleting the LSP state. This would be possible at scale even with
default refresh time. the default refresh time.
- If upon the link failure C is to keep state until its timeout, * If C is to keep state until its timeout upon the link failure,
then with long refresh interval this may result in a large amount then with a long refresh interval, this may result in a large
of stale state on C. Alternatively, if upon the link failure C is amount of stale state on C. Alternatively, if C is to delete the
to delete the state and send a PathTear to D, this would result in state and send a PathTear to D upon the link failure, then this
deleting the state on D, thus deleting the LSP. D needs a would result in deleting the state on D, thus deleting the LSP. D
reliable mechanism to determine whether it is an MP or not to needs a reliable mechanism to determine whether or not it is an MP
overcome this problem. to overcome this problem.
- If head-end A attempts to tear down LSP after step 1 but before * If head-end A attempts to tear down the LSP after Step 1 but
step 2 of the above sequence, then B may receive the tear down before Step 2 of the above sequence, then B may receive the
message before step 2 and delete the LSP state from its state teardown message before Step 2 and delete the LSP state from its
database. If B deletes its state without informing D, with long state database. If B deletes its state without informing D, with
refresh interval this could cause (large) buildup of stale state a long refresh interval, this could cause a (large) buildup of
on D. stale state on D.
- If B fails to perform local repair in step 1, then B will delete * If B fails to perform a local repair in Step 1, then B will delete
the LSP state from its state database without informing D. As B the LSP state from its state database without informing D. As B
deletes its state without informing D, with long refresh interval deletes its state without informing D, with a long refresh
this could cause (large) buildup of stale state on D. interval, this could cause a (large) buildup of stale state on D.
The purpose of this document is to provide solutions to the above The purpose of this document is to provide solutions to the above
problems which will then make it practical to scale up to a large problems, which will then make it practical to scale up to a large
number of protected LSPs in the network. number of protected LSPs in the network.
4. Solution Aspects 4. Solution Aspects
The solution consists of five parts. The solution consists of five parts:
- Utilize MP determination mechanism specified in RSVP-TE Summary 1. Utilize the MP determination mechanism specified in RSVP-TE
FRR [RFC8796] that enables the PLR to signal the availability of Summary FRR [RFC8796] that enables the PLR to signal the
local protection to the MP. In addition, introduce PLR and MP availability of local protection to the MP. In addition,
procedures to establish Node-ID based hello session between the introduce PLR and MP procedures to establish Node-ID-based Hello
PLR and the MP to detect router failures and to determine sessions between the PLR and the MP to detect router failures and
capability. See Section 4.2 of this document for more details. to determine capability. See Section 4.2 of this document for
This part of the solution re-uses some of the extensions defined more details. This part of the solution reuses some of the
in RSVP-TE Summary FRR [RFC8796] and RSVP-TE Scaling Techniques extensions defined in [RFC8796] and [RFC8370], and the subsequent
[RFC8370], and the subsequent sub-sections will list the subsections will list the extensions in these documents that are
extensions in these drafts that are utilized in this document. utilized in this document.
- Handle upstream link or node failures by cleaning up LSP states if 2. Handle upstream link or node failures by cleaning up LSP states
the node has not found itself as an MP through the MP if the node has not found itself as an MP through the MP
determination mechanism. See Section 4.3 of this document for determination mechanism. See Section 4.3 of this document for
more details. more details.
- Introduce extensions to enable a router to send a tear down 3. Introduce extensions to enable a router to send a teardown
message to the downstream router that enables the receiving router message to the downstream router that enables the receiving
to conditionally delete its local LSP state. See Section 4.4 of router to conditionally delete its local LSP state. See
this document for more details. Section 4.4 of this document for more details.
- Enhance facility backup protection by allowing a PLR to directly 4. Enhance facility backup protection by allowing a PLR to directly
send a tear down message to the MP without requiring the PLR to send a teardown message to the MP without requiring the PLR to
either have a working bypass LSP or have already signaled backup either have a working bypass LSP or have already signaled the
LSP state. See Section 4.5 of this document for more details. backup LSP state. See Section 4.5 of this document for more
details.
- Introduce extensions to enable the above procedures to be backward 5. Introduce extensions to enable the above procedures to be
compatible with routers along the LSP path running implementation backward compatible with routers along the LSP path running
that do not support these procedures. See Section 4.6 of this implementations that do not support these procedures. See
document for more details. Section 4.6 of this document for more details.
4.1. Requirement on RFC 4090 Capable Node to advertise RI-RSVP 4.1. Requirement on RFC 4090 Capable Node to Advertise the RI-RSVP
Capability Capability
A node supporting facility backup protection [RFC4090] MUST NOT set A node supporting facility backup protection [RFC4090] MUST NOT set
the RI-RSVP flag (I bit) that is defined in Section 3.1 of RSVP-TE the RI-RSVP flag (I-bit) that is defined in Section 3.1 of [RFC8370]
Scaling Techniques [RFC8370] unless it supports all the extensions unless it supports all the extensions specified in the rest of this
specified in the rest of this document. Hence, this document updates document. Hence, this document updates [RFC4090] by defining
[RFC4090] by defining extensions and additional procedures over extensions and additional procedures over facility backup protection
facility backup protection [RFC4090] in order to advertise RI-RSVP [RFC4090] in order to advertise the RI-RSVP capability [RFC8370].
capability [RFC8370]. However, if a node supporting facility backup However, if a node supporting facility backup protection [RFC4090]
protection [RFC4090] does set the RI-RSVP capability (I bit) but does does set the RI-RSVP capability (I-bit) but does not support all the
not support all the extensions specified in the rest of this extensions specified in the rest of this document, then it may result
document, then it may result in lingering stale states due to the in lingering stale states due to the long refresh intervals
long refresh intervals recommended by [RFC8370]. This can also recommended by [RFC8370]. This can also disrupt normal Fast Reroute
disrupt normal Fast Reroute (FRR) operation. Section 4.7 of this (FRR) operations. Section 4.7 of this document delves into this in
document delves on this in detail. detail.
4.2. Signaling Handshake between PLR and MP 4.2. Signaling Handshake Between PLR and MP
4.2.1. PLR Behavior 4.2.1. PLR Behavior
As per the facility backup procedures [RFC4090], when an LSP becomes As per the facility backup procedures [RFC4090], when an LSP becomes
operational on a node and the "local protection desired" flag has operational on a node and the "local protection desired" flag has
been set in the SESSION_ATTRIBUTE object carried in the Path message been set in the SESSION_ATTRIBUTE object carried in the Path message
corresponding to the LSP, then the node attempts to make local corresponding to the LSP, then the node attempts to make local
protection available for the LSP. protection available for the LSP.
- If the "node protection desired" flag is set, then the node tries * If the "node protection desired" flag is set, then the node tries
to become a PLR by attempting to create a NP-bypass LSP to the to become a PLR by attempting to create an NP-bypass LSP to the
NNhop node avoiding the Nhop node on protected LSP path. In case NNhop node avoiding the Nhop node on a protected LSP path. In
node protection could not be made available, the node attempts to case node protection could not be made available, the node
create an LP-bypass LSP to the Nhop node avoiding only the link attempts to create an LP-bypass LSP to the Nhop node avoiding only
that the protected LSP takes to reach the Nhop the link that the protected LSP takes to reach the Nhop.
- If the "node protection desired" flag is not set, then the PLR * If the "node protection desired" flag is not set, then the PLR
attempts to create an LP-bypass LSP to the Nhop node avoiding the attempts to create an LP-bypass LSP to the Nhop node avoiding the
link that the protected LSP takes to reach the Nhop link that the protected LSP takes to reach the Nhop.
With regard to the PLR procedures described above and that are With regard to the PLR procedures described above and specified in
specified in [RFC4090], this document specifies the following [RFC4090], this document specifies the following additional
additional procedures to support RI-RSVP [RFC8370]. procedures to support RI-RSVP [RFC8370].
- While selecting the destination address of the bypass LSP, the PLR * While selecting the destination address of the bypass LSP, the PLR
MUST select the router ID of the NNhop or Nhop node from the Node- MUST select the router ID of the NNhop or Nhop node from the Node-
ID sub-object included in the RRO object carried in the most ID sub-object included in the RRO object that is carried in the
recent Resv message corresponding to the LSP. If the MP has not most recent Resv message corresponding to the LSP. If the MP has
included a Node-ID sub-object in the Resv RRO and if the PLR and not included a Node-ID sub-object in the Resv RRO and if the PLR
the MP are in the same area, then the PLR may utilize the TED to and the MP are in the same area, then the PLR may utilize the TED
determine the router ID corresponding to the interface address to determine the router ID corresponding to the interface address
included by the MP in the RRO object. If the NP-MP in a different that is included by the MP in the RRO object. If the NP-MP in a
IGP area has not included a Node-ID sub-object in RRO object, then different IGP area has not included a Node-ID sub-object in the
the PLR MUST execute backward compatibility procedures as if the RRO object, then the PLR MUST execute backward compatibility
downstream nodes along the LSP do not support the extensions procedures as if the downstream nodes along the LSP do not support
defined in the document (see Section 4.6.2.1). the extensions defined in the document (see Section 4.6.2.1).
- The PLR MUST also include its router ID in a Node-ID sub-object in * The PLR MUST also include its router ID in a Node-ID sub-object in
RRO object carried in any subsequent Path message corresponding to the RRO object that is carried in any subsequent Path message
the LSP. While including its router ID in the Node-ID sub-object corresponding to the LSP. While including its router ID in the
carried in the outgoing Path message, the PLR MUST include the Node-ID sub-object carried in the outgoing Path message, the PLR
Node-ID sub-object after including its IPv4/IPv6 address or MUST include the Node-ID sub-object after including its IPv4/IPv6
unnumbered interface ID sub-object. address or unnumbered interface ID sub-object.
- In parallel to the attempt made to create NP-bypass or LP-bypass, * In parallel to the attempt made to create an NP-bypass or an LP-
the PLR MUST initiate a Node-ID based Hello session to the NNhop bypass, the PLR MUST initiate a Node-ID-based Hello session to the
or Nhop node respectively along the LSP to establish the RSVP-TE NNhop or Nhop node respectively along the LSP to establish the
signaling adjacency. This Hello session is used to detect MP node RSVP-TE signaling adjacency. This Hello session is used to detect
failure as well as determine the capability of the MP node. If MP node failure as well as to determine the capability of the MP
the MP has set the I-bit in the CAPABILITY object [RFC8370] node. If the MP has set the I-bit in the CAPABILITY object
carried in Hello message corresponding to the Node-ID based Hello [RFC8370] carried in the Hello message corresponding to the Node-
session, then the PLR MUST conclude that the MP supports refresh- ID-based Hello session, then the PLR MUST conclude that the MP
interval independent FRR procedures defined in this document. If supports refresh-interval independent FRR procedures defined in
the MP has not sent Node-ID based Hello messages or has not set this document. If the MP has not sent Node-ID-based Hello
the I-bit in CAPABILITY object [RFC8370], then the PLR MUST messages or has not set the I-bit in the CAPABILITY object
execute backward compatibility procedures defined in [RFC8370], then the PLR MUST execute backward compatibility
Section 4.6.2.1 of this document. procedures defined in Section 4.6.2.1 of this document.
- When the PLR associates a bypass to a protected LSP, it MUST * When the PLR associates a bypass to a protected LSP, it MUST
include a B-SFRR-Ready Extended Association object [RFC8796] and include a B-SFRR-Ready Extended Association object [RFC8796] and
trigger a Path message to be sent for the LSP. If a B-SFRR-Ready trigger a Path message to be sent for the LSP. If a B-SFRR-Ready
Extended Association object is included in the Path message Extended Association object is included in the Path message
corresponding to the LSP, the encoding and object ordering rules corresponding to the LSP, the encoding and object ordering rules
specified in RSVP-TE Summary FRR [RFC8796] MUST be followed. In specified in RSVP-TE Summary FRR [RFC8796] MUST be followed. In
addition to those rules, the PLR MUST set the Association Source addition to those rules, the PLR MUST set the Association Source
in the object to its Node-ID address. in the object to its Node-ID address.
4.2.2. Remote Signaling Adjacency 4.2.2. Remote Signaling Adjacency
A Node-ID based RSVP-TE Hello session is one in which Node-ID is used A Node-ID-based RSVP-TE Hello session is one in which a Node-ID is
in the source and the destination address fields of RSVP Hello used in the source and the destination address fields of RSVP Hello
messages [RFC4558]. This document extends Node-ID based RSVP Hello messages [RFC4558]. This document extends Node-ID-based RSVP Hello
session to track the state of any RSVP-TE neighbor that is not sessions to track the state of any RSVP-TE neighbor that is not
directly connected by at least one interface. In order to apply directly connected by at least one interface. In order to apply
Node-ID based RSVP-TE Hello session between any two routers that are Node-ID-based RSVP-TE Hello sessions between any two routers that are
not immediate neighbors, the router that supports the extensions not immediate neighbors, the router that supports the extensions
defined in the document MUST set TTL to 255 in all outgoing Node-ID defined in the document MUST set the TTL to 255 in all outgoing Node-
based Hello messages exchanged between the PLR and the MP. The ID-based Hello messages exchanged between the PLR and the MP. The
default hello interval for this Node-ID hello session MUST be set to default hello interval for this Node-ID Hello session MUST be set to
the default specified in RSVP-TE Scaling Techniques [RFC8370]. the default specified in RSVP-TE Scaling Techniques [RFC8370].
In the rest of the document the term "signaling adjacency", or In the rest of the document, the terms "signaling adjacency" and
"remote signaling adjacency" refers specifically to the RSVP-TE "remote signaling adjacency" refer specifically to the RSVP-TE
signaling adjacency. signaling adjacency.
4.2.3. MP Behavior 4.2.3. MP Behavior
With regard to the MP procedures that are defined in [RFC4090] this With regard to the MP procedures that are defined in [RFC4090], this
document specifies the following additional procedures to support RI- document specifies the following additional procedures to support RI-
RSVP defined in [RFC8370]. RSVP as defined in [RFC8370].
Each node along an LSP path supporting the extensions defined in this Each node along an LSP path supporting the extensions defined in this
document MUST also include its router ID in the Node-ID sub-object of document MUST also include its router ID in the Node-ID sub-object of
the RRO object carried in the Resv message of the corresponding LSP. the RRO object that is carried in the Resv message of the
If the PLR has not included a Node-ID sub-object in the RRO object corresponding LSP. If the PLR has not included a Node-ID sub-object
carried in the Path message and if the PLR is in a different IGP in the RRO object that is carried in the Path message and if the PLR
area, then the router MUST NOT execute the MP procedures specified in is in a different IGP area, then the router MUST NOT execute the MP
this document for those LSPs. Instead, the node MUST execute procedures specified in this document for those LSPs. Instead, the
backward compatibility procedures defined in Section 4.6.2.2 of this node MUST execute backward compatibility procedures defined in
document as if the upstream nodes along the LSP do not support the Section 4.6.2.2 of this document as if the upstream nodes along the
extensions defined in this document. LSP do not support the extensions defined in this document.
A node receiving a Path message should determine whether the message A node receiving a Path message should determine:
contains a B-SFRR-Ready Extended Association object with its own
address as the bypass destination address and whether it has an
operational Node-ID signaling adjacency with the Association source.
If the PLR has not included the B-SFRR-Ready Extended Association
object or if there is no operational Node-ID signaling adjacency with
the PLR identified by the Association source address or if the PLR
has not advertised RI-RSVP capability in its Node-ID based Hello
messages, then the node MUST execute the backward compatibility
procedures defined in Section 4.6.2.2 of this document.
If a matching B-SFRR-Ready Extended Association object is found in in * whether the message contains a B-SFRR-Ready Extended Association
object with its own address as the bypass destination address and
* whether it has an operational Node-ID signaling adjacency with the
Association source.
The node MUST execute the backward compatibility procedures defined
in Section 4.6.2.2 of this document if:
* the PLR has not included the B-SFRR-Ready Extended Association
object,
* there is no operational Node-ID signaling adjacency with the PLR
identified by the Association source address, or
* the PLR has not advertised the RI-RSVP capability in its Node-ID-
based Hello messages.
If a matching B-SFRR-Ready Extended Association object is found in
the Path message and if there is an operational remote Node-ID the Path message and if there is an operational remote Node-ID
signaling adjacency with the PLR (identified by the Association signaling adjacency with the PLR (identified by the Association
source) that has advertised RI-RSVP capability (I-bit) [RFC8370], source) that has advertised the RI-RSVP capability (I-bit) [RFC8370],
then the node MUST consider itself as the MP for the PLR. The then the node MUST consider itself as the MP for the PLR. The
matching and ordering rules for Bypass Summary FRR Extended matching and ordering rules for Bypass Summary FRR Extended
Association specified in RSVP-TE Summary FRR [RFC8796] MUST be Association specified in RSVP-TE Summary FRR [RFC8796] MUST be
followed by the implementations supporting this document. followed by the implementations supporting this document.
- If a matching Bypass Summary FRR Extended Association object is * If a matching Bypass Summary FRR Extended Association object is
included by the PPhop node of an LSP and if a corresponding Node- included by the PPhop node of an LSP and if a corresponding Node-
ID signaling adjacency exists with the PPhop node, then the router ID signaling adjacency exists with the PPhop node, then the router
MUST conclude it is the NP-MP. MUST conclude it is the NP-MP.
- If a matching Bypass Summary FRR Extended Association object is * If a matching Bypass Summary FRR Extended Association object is
included by the Phop node of an LSP and if a corresponding Node-ID included by the Phop node of an LSP and if a corresponding Node-ID
signaling adjacency exists with the Phop node, then the router signaling adjacency exists with the Phop node, then the router
MUST conclude it is the LP-MP. MUST conclude it is the LP-MP.
4.2.4. "Remote" State on MP 4.2.4. "Remote" State on MP
Once a router concludes it is the MP for a PLR running refresh- Once a router concludes it is the MP for a PLR running refresh-
interval independent FRR procedures as described in the preceding interval independent FRR procedures as described in the preceding
section, it MUST create a remote path state for the LSP. The only section, it MUST create a remote path state for the LSP. The only
difference between the "remote" path state and the LSP state is the difference between the "remote" path state and the LSP state is the
RSVP_HOP object. The RSVP_HOP object in a "remote" path state RSVP_HOP object. The RSVP_HOP object in a "remote" path state
contains the address that the PLR uses to send Node-ID hello messages contains the address that the PLR uses to send Node-ID Hello messages
to the MP. to the MP.
The MP MUST consider the "remote" path state corresponding to the LSP The MP MUST consider the "remote" path state corresponding to the LSP
automatically deleted if: automatically deleted if:
- The MP later receives a Path message for the LSP with no matching * the MP later receives a Path message for the LSP with no matching
B-SFRR-Ready Extended Association object corresponding to the B-SFRR-Ready Extended Association object corresponding to the
PLR's IP address contained in the Path RRO, or PLR's IP address contained in the Path RRO,
- The Node-ID signaling adjacency with the PLR goes down, or * the Node-ID signaling adjacency with the PLR goes down,
- The MP receives backup LSP signaling for the LSP from the PLR or * the MP receives backup LSP signaling for the LSP from the PLR,
- The MP receives a PathTear for the LSP, or * the MP receives a PathTear for the LSP, or
- The MP deletes the LSP state on a local policy or an exception * the MP deletes the LSP state on a local policy or an exception
event event.
The purpose of "remote" path state is to enable the PLR to explicitly The purpose of "remote" path state is to enable the PLR to explicitly
tear down the path and reservation states corresponding to the LSP by tear down the path and reservation states corresponding to the LSP by
sending a tear message for the "remote" path state. Such a message sending a tear message for the "remote" path state. Such a message
tearing down "remote" path state is called "Remote" PathTear. tearing down the "remote" path state is called "Remote" PathTear.
The scenarios in which a "Remote" PathTear is applied are described The scenarios in which a "Remote" PathTear is applied are described
in Section 4.5 of this document. in Section 4.5 of this document.
4.3. Impact of Failures on LSP State 4.3. Impact of Failures on LSP State
This section describes the procedures that must be executed upon This section describes the procedures that must be executed upon
different kinds of failures by nodes along the path of the LSP. The different kinds of failures by nodes along the path of the LSP. The
procedures that must be executed upon detecting RSVP signaling procedures that must be executed upon detecting RSVP signaling
adjacency failures do not impact the RSVP-TE graceful restart adjacency failures do not impact the RSVP-TE graceful restart
mechanisms ([RFC3473], [RFC5063]). If a node executing these mechanisms [RFC3473] [RFC5063]. If a node executing these procedures
procedures acts as a helper for a neighboring router, then the acts as a helper for a neighboring router, then the signaling
signaling adjacency with the neighbor will be declared as having adjacency with the neighbor will be declared as having failed only
failed only after taking into account the grace period extended for after taking into account the grace period extended for the neighbor
the neighbor by this node acting as a helper. by this node acting as a helper.
Node failures are detected from the state of Node-ID hello sessions Node failures are detected from the state of Node-ID Hello sessions
established with immediate neighbors. RSVP-TE Scaling Techniques established with immediate neighbors. RSVP-TE Scaling Techniques
[RFC8370] recommends that each node establish Node-ID hello sessions [RFC8370] recommends that each node establish Node-ID Hello sessions
with all its immediate neighbors. Non-immediate PLR or MP failure is with all its immediate neighbors. A non-immediate PLR or MP failure
detected from the state of remote signaling adjacency established is detected from the state of remote signaling adjacency established
according to Section 4.2.2 of this document. according to Section 4.2.2 of this document.
4.3.1. Non-MP Behavior 4.3.1. Non-MP Behavior
When a router detects the Phop link or the Phop node failure for an When a router detects the Phop link or the Phop node failure for an
LSP and the router is not an MP for the LSP, then it MUST send a LSP and the router is not an MP for the LSP, then it MUST send a
Conditional PathTear (refer to Section 4.4 of this document) and Conditional PathTear (refer to Section 4.4 of this document) and
delete the PSB and RSB states corresponding to the LSP. delete the PSB and RSB states corresponding to the LSP.
4.3.2. LP-MP Behavior 4.3.2. LP-MP Behavior
When the Phop link for an LSP fails on a router that is an LP-MP for When the Phop link for an LSP fails on a router that is an LP-MP for
the LSP, the LP-MP MUST retain the PSB and RSB states corresponding the LSP, the LP-MP MUST retain the PSB and RSB states corresponding
to the LSP till the occurrence of any of the following events. to the LSP until the occurrence of any of the following events:
- The Node-ID signaling adjacency with the Phop PLR goes down, or * the Node-ID signaling adjacency with the Phop PLR goes down,
- The MP receives a normal or "Remote" PathTear for its PSB, or * the MP receives a normal or "Remote" PathTear for its PSB, or
- The MP receives a ResvTear for its RSB. * the MP receives a ResvTear for its RSB.
When a router that is an LP-MP for an LSP detects Phop node failure When a router that is an LP-MP for an LSP detects Phop node failure
from the Node-ID signaling adjacency state, the LP-MP MUST send a from the Node-ID signaling adjacency state, the LP-MP MUST send a
normal PathTear and delete the PSB and RSB states corresponding to normal PathTear and delete the PSB and RSB states corresponding to
the LSP. the LSP.
4.3.3. NP-MP Behavior 4.3.3. NP-MP Behavior
When a router that is an NP-MP for an LSP detects Phop link failure, When a router that is an NP-MP for an LSP detects Phop link failure
or Phop node failure from the Node-ID signaling adjacency, the router or Phop node failure from the Node-ID signaling adjacency, the router
MUST retain the PSB and RSB states corresponding to the LSP till the MUST retain the PSB and RSB states corresponding to the LSP until the
occurrence of any of the following events. occurrence of any of the following events:
- The remote Node-ID signaling adjacency with the PPhop PLR goes * the remote Node-ID signaling adjacency with the PPhop PLR goes
down, or down,
- The MP receives a normal or "Remote" PathTear for its PSB, or * the MP receives a normal or "Remote" PathTear for its PSB, or
- The MP receives a ResvTear for its RSB. * the MP receives a ResvTear for its RSB.
When a router that is an NP-MP for an LSP did not detect the Phop When a router that is an NP-MP for an LSP does not detect the Phop
link or the Phop node failure, but receives a Conditional PathTear link or the Phop node failure but receives a Conditional PathTear
from the Phop node, then the router MUST retain the PSB and RSB from the Phop node, then the router MUST retain the PSB and RSB
states corresponding to the LSP till the occurrence of any of the states corresponding to the LSP until the occurrence of any of the
following events. following events:
- The remote Node-ID signaling adjacency with the PPhop PLR goes * the remote Node-ID signaling adjacency with the PPhop PLR goes
down, or down,
- The MP receives a normal or "Remote" PathTear for its PSB, or * the MP receives a normal or "Remote" PathTear for its PSB, or
- The MP receives a ResvTear for its RSB. * the MP receives a ResvTear for its RSB.
Receiving a Conditional PathTear from the Phop node will not impact Receiving a Conditional PathTear from the Phop node will not impact
the "remote" state from the PPhop PLR. Note that the Phop node must the "remote" state from the PPhop PLR. Note that the Phop node must
have sent the Conditional PathTear as it was not an MP for the LSP have sent the Conditional PathTear as it was not an MP for the LSP
(see Section 4.3.1 of this document). (see Section 4.3.1 of this document).
In the example topology Figure 1, we assume C & D are the NP-MPs for In the example topology in Figure 1, we assume C and D are the NP-MPs
the PLRs A & B respectively. Now when A-B link fails, as B is not an for the PLRs A and B, respectively. Now, when the A-B link fails, B
MP and its Phop link has failed, B will delete the LSP state (this will delete the LSP state, because B is not an MP and its Phop link
behavior is required for unprotected LSPs - refer to Section 4.3.1 of has failed (this behavior is required for unprotected LSPs; refer to
this document). In the data plane, that would require B to delete Section 4.3.1 of this document). In the data plane, that would
the label forwarding entry corresponding to the LSP. So if B's require B to delete the label forwarding entry corresponding to the
downstream nodes C and D continue to retain state, it would not be LSP. Thus, if B's downstream nodes C and D continue to retain state,
correct for D to continue to assume itself as the NP-MP for the PLR it would not be correct for D to continue to assume itself as the NP-
B. MP for the PLR B.
The mechanism that enables D to stop considering itself as the NP-MP The mechanism that enables D to stop considering itself as the NP-MP
for B and delete the corresponding "remote" path state is given for B and delete the corresponding "remote" path state is given
below. below.
1. When C receives a Conditional PathTear from B, it decides to 1. When C receives a Conditional PathTear from B, it decides to
retain LSP state as it is the NP-MP of the PLR A. It also checks retain the LSP state as it is the NP-MP of the PLR A. It also
whether Phop B had previously signaled availability of node checks whether Phop B had previously signaled availability of
protection. As B had previously signaled NP availability by node protection. As B had previously signaled NP availability by
including B-SFRR-Ready Extended Association object, C removes the including the B-SFRR-Ready Extended Association object, C removes
B-SFRR-Ready Extended Association object containing Association the B-SFRR-Ready Extended Association object containing the
Source set to B from the Path message and trigger a Path to D. Association Source set to B from the Path message and triggers a
Path to D.
2. When D receives the Path message, it realizes that it is no 2. When D receives the Path message, it realizes that it is no
longer the NP-MP for B and so it deletes the corresponding longer the NP-MP for B and so it deletes the corresponding
"remote" path state. D does not propagate the Path further down "remote" path state. D does not propagate the Path further down
because the only change is that the B-SFRR-Ready Extended because the only change is that the B-SFRR-Ready Extended
Association object corresponding to Association Source B is no Association object corresponding to Association Source B is no
longer present in the Path message. longer present in the Path message.
4.3.4. Behavior of a Router that is both LP-MP and NP-MP 4.3.4. Behavior of a Router That Is Both the LP-MP and NP-MP
A router may simultaneously be the LP-MP as well as the NP-MP for the A router may simultaneously be the LP-MP and the NP-MP for the Phop
Phop and the PPhop nodes respectively of an LSP. If the Phop link and PPhop nodes of an LSP, respectively. If the Phop link fails on
fails on such a node, the node MUST retain the PSB and RSB states such a node, the node MUST retain the PSB and RSB states
corresponding to the LSP till the occurrence of any of the following corresponding to the LSP until the occurrence of any of the following
events. events:
- Both Node-ID signaling adjacencies with Phop and PPhop nodes go * both Node-ID signaling adjacencies with Phop and PPhop nodes go
down, or down,
- The MP receives a normal or "Remote" PathTear for its PSB, or * the MP receives a normal or "Remote" PathTear for its PSB, or
- The MP receives a ResvTear for its RSB. * the MP receives a ResvTear for its RSB.
If a router that is both an LP-MP and an NP-MP detects Phop node If a router that is both an LP-MP and an NP-MP detects Phop node
failure, then the node MUST retain the PSB and RSB states failure, then the node MUST retain the PSB and RSB states
corresponding to the LSP till the occurrence of any of the following corresponding to the LSP until the occurrence of any of the following
events. events:
- The remote Node-ID signaling adjacency with the PPhop PLR goes * the remote Node-ID signaling adjacency with the PPhop PLR goes
down, or down,
- The MP receives a normal or "Remote" PathTear for its PSB, or * the MP receives a normal or "Remote" PathTear for its PSB, or
- The MP receives a ResvTear for its RSB. * the MP receives a ResvTear for its RSB.
4.4. Conditional PathTear 4.4. Conditional PathTear
In the example provided in Section 4.3.3 of this document, B deletes In the example provided in Section 4.3.3 of this document, B deletes
the PSB and RSB states corresponding to the LSP once B detects its the PSB and RSB states corresponding to the LSP once B detects its
Phop link went down as B is not an MP. If B were to send a PathTear Phop link that went down as B is not an MP. If B were to send a
normally, then C would delete LSP state immediately. In order to PathTear normally, then C would delete the LSP state immediately. In
avoid this, there should be some mechanism by which B can indicate to order to avoid this, there should be some mechanism by which B can
C that B does not require the receiving node to unconditionally indicate to C that B does not require the receiving node to
delete the LSP state immediately. For this, B MUST add a new unconditionally delete the LSP state immediately. For this, B MUST
optional CONDITIONS object in the PathTear. The CONDITIONS object is add a new optional CONDITIONS object in the PathTear. The CONDITIONS
defined in Section 4.4.3 of this document. If node C also object is defined in Section 4.4.3 of this document. If node C also
understands the new object, then C MUST NOT delete the LSP state if understands the new object, then C MUST NOT delete the LSP state if
it is an NP-MP. it is an NP-MP.
4.4.1. Sending Conditional PathTear 4.4.1. Sending the Conditional PathTear
A router that is not an MP for an LSP MUST delete the PSB and RSB A router that is not an MP for an LSP MUST delete the PSB and RSB
states corresponding to the LSP if the Phop link or the Phop Node-ID states corresponding to the LSP if the Phop link or the Phop Node-ID
signaling adjacency goes down (see Section 4.3.1 of this document). signaling adjacency goes down (see Section 4.3.1 of this document).
The router MUST send a Conditional PathTear if the following are also The router MUST send a Conditional PathTear if the following are also
true. true:
- The ingress has requested node protection for the LSP, and * the ingress has requested node protection for the LSP and
- No PathTear is received from the upstream node * no PathTear is received from the upstream node.
4.4.2. Processing Conditional PathTear 4.4.2. Processing the Conditional PathTear
When a router that is not an NP-MP receives a Conditional PathTear, When a router that is not an NP-MP receives a Conditional PathTear,
the node MUST delete the PSB and RSB states corresponding to the LSP, the node MUST delete the PSB and RSB states corresponding to the LSP
and process the Conditional PathTear by considering it as a normal and process the Conditional PathTear by considering it as a normal
PathTear. Specifically, the node MUST NOT propagate the Conditional PathTear. Specifically, the node MUST NOT propagate the Conditional
PathTear downstream but remove the optional object and send a normal PathTear downstream but remove the optional object and send a normal
PathTear downstream. PathTear downstream.
When a node that is an NP-MP receives a Conditional PathTear, it MUST When a node that is an NP-MP receives a Conditional PathTear, it MUST
NOT delete LSP state. The node MUST check whether the Phop node had NOT delete the LSP state. The node MUST check whether the Phop node
previously included the B-SFRR-Ready Extended Association object in had previously included the B-SFRR-Ready Extended Association object
the Path. If the object had been included previously by the Phop, in the Path. If the object had been included previously by the Phop,
then the node processing the Conditional PathTear from the Phop MUST then the node processing the Conditional PathTear from the Phop MUST
remove the corresponding object and trigger a Path downstream. remove the corresponding object and trigger a Path downstream.
If a Conditional PathTear is received from a neighbor that has not If a Conditional PathTear is received from a neighbor that has not
advertised support (refer to Section 4.6 of this document) for the advertised support (refer to Section 4.6 of this document) for the
new procedures defined in this document, then the node MUST consider new procedures defined in this document, then the node MUST consider
the message as a normal PathTear. The node MUST propagate the normal the message as a normal PathTear. The node MUST propagate the normal
PathTear downstream and delete the LSP state. PathTear downstream and delete the LSP state.
4.4.3. CONDITIONS Object 4.4.3. CONDITIONS Object
Any implementation that does not support Conditional PathTear needs Any implementation that does not support a Conditional PathTear needs
to ignore the new object but process the message as a normal PathTear to ignore the new object but process the message as a normal PathTear
without generating any error. For this reason, the Class-Num of the without generating any error. For this reason, the Class-Num of the
new object follows the pattern 10bbbbbb where 'b' represents a bit. new object follows the pattern 10bbbbbb, where "b" represents a bit.
(The behavior for objects of this type is specified in Section 3.10 (The behavior for objects of this type is specified in Section 3.10
of [RFC2205]). of [RFC2205].)
The new object is called as "CONDITIONS" object that will specify the The new object is called the "CONDITIONS" object and will specify the
conditions under which default processing rules of the RSVP-TE conditions under which default processing rules of the RSVP-TE
message MUST be invoked. message MUST be invoked.
The object has the following format: The object has the following format:
0 1 2 3 0 1 2 3
0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Length | Class | C-type | | Length | Class | C-type |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Flags (Reserved) |M| | Flags (Reserved) |M|
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
Figure 2: CONDITIONS Object Figure 2: CONDITIONS Object
* Class: TBA1 Class: 135
C-type: 1 C-type: 1
Flags is a 32 bit field. Bit 31 is the Merge-point condition (M) Flags: 32 bit field
bit: If the M bit is set to 1, then the PathTear message MUST be M: Bit 31 is the Merge-point condition (M) bit. If the M bit is set
processed according to the receiver router role, i.e. if the to 1, then the PathTear message MUST be processed according to the
receiving router is an MP or not for the LSP. If it is not set, receiver router role, i.e., if the receiving router is an MP or
then the PathTear message MUST be processed as a normal PathTear not for the LSP. If it is not set, then the PathTear message MUST
message for the LSP. be processed as a normal PathTear message for the LSP.
Bits 0-30 are reserved, they MUST be set to zero on transmission
and MUST be ignored on receipt. Bits 0-30 are reserved; they MUST be set to zero on transmission and
MUST be ignored on receipt.
4.5. Remote State Teardown 4.5. Remote State Teardown
If the ingress wants to tear down the LSP because of a management If the ingress wants to tear down the LSP because of a management
event while the LSP is being locally repaired at a transit PLR, it event while the LSP is being locally repaired at a transit PLR, it
would not be desirable to wait till the completion of backup LSP would not be desirable to wait until the completion of backup LSP
signaling to perform state cleanup. In this case, the PLR MUST send signaling to perform state cleanup. In this case, the PLR MUST send
a "Remote" PathTear message instructing the MP to delete the PSB and a "Remote" PathTear message instructing the MP to delete the PSB and
RSB states corresponding to the LSP. The TTL in the "Remote" RSB states corresponding to the LSP. The TTL in the "Remote"
PathTear message MUST be set to 255. Doing this enables LSP state PathTear message MUST be set to 255. Doing this enables LSP state
cleanup when the LSP is being locally repaired. cleanup when the LSP is being locally repaired.
Consider that node C in the example topology (Figure 1) has gone down Consider that node C in the example topology (Figure 1) has gone down
and node B locally repairs the LSP. and node B locally repairs the LSP:
1. Ingress A receives a management event to tear down the LSP. 1. Ingress A receives a management event to tear down the LSP.
2. A sends a normal PathTear for the LSP to B. 2. A sends a normal PathTear for the LSP to B.
3. Assume B has not initiated the backup signaling for the LSP 3. Assume B has not initiated the backup signaling for the LSP
during local repair. To enable LSP state cleanup, B sends a during local repair. To enable LSP state cleanup, B sends a
"Remote" PathTear with destination IP address set to that of the "Remote" PathTear with the destination IP address set to that of
node D used in the Node-ID signaling adjacency with D, and the the node D used in the Node-ID signaling adjacency with D and the
RSVP_HOP object containing local address used in the Node-ID RSVP_HOP object containing the local address used in the Node-ID
signaling adjacency. signaling adjacency.
4. B then deletes the PSB and RSB states corresponding to the LSP. 4. B then deletes the PSB and RSB states corresponding to the LSP.
5. On D there would be a remote signaling adjacency with B and so D 5. On D, there would be a remote signaling adjacency with B, and so
accepts the "Remote" PathTear and delete the PSB and RSB states D accepts the "Remote" PathTear and deletes the PSB and RSB
corresponding to the LSP. states corresponding to the LSP.
4.5.1. PLR Behavior on Local Repair Failure 4.5.1. PLR Behavior on Local Repair Failure
If local repair fails on the PLR after a failure, the PLR MUST send a If local repair fails on the PLR after a failure, the PLR MUST send a
"Remote" PathTear to the MP. The purpose of this is to clean up LSP "Remote" PathTear to the MP. The purpose of this is to clean up LSP
state from the PLR to the Egress. Upon receiving the PathTear, the state from the PLR to the egress. Upon receiving the PathTear, the
MP MUST delete the states corresponding to the LSP and also propagate MP MUST delete the states corresponding to the LSP and also propagate
the PathTear downstream thereby achieving state cleanup from all the PathTear downstream, thereby achieving state cleanup from all
downstream nodes up to the LSP egress. Note that in the case of link downstream nodes up to the LSP egress. Note that in the case of link
protection, the PathTear MUST be directed to the LP-MP's Node-ID IP protection, the PathTear MUST be directed to the LP-MP's Node-ID IP
address rather than the Nhop interface address. address rather than the Nhop interface address.
4.5.2. PLR Behavior on Resv RRO Change 4.5.2. PLR Behavior on Resv RRO Change
When a PLR router that has already made NP available for an LSP When a PLR router that has already made NP available for an LSP
detects a change in the RRO carried in the Resv message that detects a change in the RRO carried in the Resv message that
indicates that the router's former NP-MP is no longer present on the indicates that the router's former NP-MP is no longer present on the
path of the LSP, then the router MUST send a "Remote" PathTear path of the LSP, then the router MUST send a "Remote" PathTear
directly to its former NP-MP. directly to its former NP-MP.
In the example topology Figure 1, assume node A has made node In the example topology in Figure 1, assume node A has made node
protection available for an LSP and C has concluded it is the NP-MP protection available for an LSP and C has concluded it is the NP-MP
for PLR A. When the B-C link fails then C, implementing the for PLR A. When the B-C link fails, then C, implementing the
procedure specified in Section 4.3.4 of this document, will retain procedure specified in Section 4.3.4 of this document, will retain
the states corresponding to the LSP until: the remote Node-ID the states corresponding to the LSP until one of the following
signaling adjacency with A goes down, or a PathTear or a ResvTear is occurs:
received for its PSB or RSB respectively. If B also has made node
protection available, B will eventually complete backup LSP signaling
with its NP-MP D and trigger a Resv to A with RRO changed. The new
RRO of the LSP carried in the Resv will not contain C. When A
processes the Resv message with a new RRO not containing C - its
former NP-MP, A sends a "Remote" PathTear to C. When C receives the
"Remote" PathTear for its PSB state, C will send a normal PathTear
downstream to D and delete both the PSB and RSB states corresponding
to the LSP. As D has already received backup LSP signaling from B, D
will retain control plane and forwarding states corresponding to the
LSP.
4.5.3. LSP Preemption during Local Repair * the remote Node-ID signaling adjacency with A goes down or
4.5.3.1. Preemption on LP-MP after Phop Link Failure
* a PathTear or a ResvTear is received for its PSB or RSB,
respectively.
If B also has made node protection available, B will eventually
complete backup LSP signaling with its NP-MP D and trigger a Resv to
A with RRO changed. The new RRO of the LSP carried in the Resv will
not contain C. When A processes the Resv message with a new RRO not
containing C, its former NP-MP, A, sends a "Remote" PathTear to C.
When C receives the "Remote" PathTear for its PSB state, C will send
a normal PathTear downstream to D and delete both the PSB and RSB
states corresponding to the LSP. As D has already received backup
LSP signaling from B, D will retain the control plane and forwarding
states corresponding to the LSP.
4.5.3. LSP Preemption During Local Repair
4.5.3.1. Preemption on LP-MP After Phop Link Failure
If an LSP is preempted on an LP-MP after its Phop link has already If an LSP is preempted on an LP-MP after its Phop link has already
failed but the backup LSP has not been signaled yet as part of local failed but the backup LSP has not been signaled yet as part of the
repair procedure, then the node MUST send a normal PathTear and local repair procedure, then the node MUST send a normal PathTear and
delete both the PSB and RSB states corresponding to the LSP. As the delete both the PSB and RSB states corresponding to the LSP. As the
LP-MP has retained the LSP state expecting the PLR to initiate backup LP-MP has retained the LSP state expecting the PLR to initiate backup
LSP signaling, preemption would bring down the LSP and the node would LSP signaling, preemption would bring down the LSP and the node would
not be LP-MP any more requiring the node to clean up the LSP state. not be LP-MP anymore, requiring the node to clean up the LSP state.
4.5.3.2. Preemption on NP-MP after Phop Link Failure 4.5.3.2. Preemption on NP-MP After Phop Link Failure
If an LSP is preempted on an NP-MP after its Phop link has already If an LSP is preempted on an NP-MP after its Phop link has already
failed but the backup LSP has not been signaled yet, then the node failed but the backup LSP has not been signaled yet, then the node
MUST send a normal PathTear and delete the PSB and RSB states MUST send a normal PathTear and delete the PSB and RSB states
corresponding to the LSP. As the NP-MP has retained LSP state corresponding to the LSP. As the NP-MP has retained the LSP state
expecting the PLR to initiate backup LSP signaling, preemption would expecting the PLR to initiate backup LSP signaling, preemption would
bring down the LSP and the node would not be NP-MP any more requiring bring down the LSP and the node would not be NP-MP anymore, requiring
the node to clean up LSP state. the node to clean up LSP state.
Consider that B-C link goes down on the same example topology Consider that the B-C link goes down on the same example topology
(Figure 1). As C is the NP-MP for the PLR A, C will retain LSP (Figure 1). As C is the NP-MP for the PLR A, C will retain the LSP
state. state.
1. The LSP is preempted on C. 1. The LSP is preempted on C.
2. C will delete the RSB state corresponding to the LSP. But C 2. C will delete the RSB state corresponding to the LSP. However, C
cannot send a PathErr or a ResvTear to the PLR A because the cannot send a PathErr or a ResvTear to the PLR A because the
backup LSP has not been signaled yet. backup LSP has not been signaled yet.
3. As the only reason for C having retained state after Phop node 3. As the only reason for C having retained state after Phop node
failure was that it was an NP-MP, C sends a normal PathTear to D failure was that it was an NP-MP, C sends a normal PathTear to D
and delete its PSB state also. D would also delete the PSB and and also deletes its PSB state. D would also delete the PSB and
RSB states on receiving a PathTear from C. RSB states on receiving a PathTear from C.
4. B starts backup LSP signaling to D. But as D does not have the 4. B starts backup LSP signaling to D. However, as D does not have
LSP state, it will reject the backup LSP Path and send a PathErr the LSP state, it will reject the backup LSP Path and send a
to B. PathErr to B.
5. B will delete its reservation and send a ResvTear to A. 5. B will delete its reservation and send a ResvTear to A.
4.6. Backward Compatibility Procedures 4.6. Backward Compatibility Procedures
"Refresh interval Independent FRR" or RI-RSVP-FRR refers to the set "Refresh-Interval Independent FRR" and "RI-RSVP-FRR" refer to the set
of procedures defined in this document to eliminate the reliance of of procedures defined in this document to eliminate the reliance on
periodic refreshes. The extensions proposed in RSVP-TE Summary FRR periodic refreshes. The extensions proposed in RSVP-TE Summary FRR
[RFC8796] may apply to implementations that do not support RI-RSVP- [RFC8796] may apply to implementations that do not support RI-RSVP-
FRR. On the other hand, RI-RSVP-FRR extensions relating to LSP state FRR. On the other hand, RI-RSVP-FRR extensions relating to LSP state
cleanup namely Conditional and "Remote" PathTear require support from cleanup, namely Conditional and "Remote" PathTears, require support
one-hop and two-hop neighboring nodes along the LSP path. So from one-hop and two-hop neighboring nodes along the LSP path. Thus,
procedures that fall under LSP state cleanup category MUST NOT be procedures that fall under the LSP state cleanup category MUST NOT be
turned on if any of the nodes involved in the node protection FRR turned on if any of the nodes involved in the node protection FRR
i.e. the PLR, the MP and the intermediate node in the case of NP, (i.e., the PLR, the MP, and the intermediate node in the case of NP)
does not support RI-RSVP-FRR extensions. Note that for LSPs do not support RI-RSVP-FRR extensions. Note that for LSPs requesting
requesting link protection, only the PLR and the LP-MP MUST support link protection, only the PLR and the LP-MP MUST support the
the extensions. extensions.
4.6.1. Detecting Support for Refresh interval Independent FRR 4.6.1. Detecting Support for Refresh-Interval Independent FRR
An implementation supporting RI-RSVP-FRR extensions MUST set the flag An implementation supporting RI-RSVP-FRR extensions MUST set the flag
"Refresh interval Independent RSVP" or RI-RSVP flag in the CAPABILITY "Refresh interval Independent RSVP" or RI-RSVP flag in the CAPABILITY
object carried in Hello messages as specified in RSVP-TE Scaling object carried in Hello messages as specified in RSVP-TE Scaling
Techniques [RFC8370]. If an implementation does not set the flag Techniques [RFC8370]. If an implementation does not set the flag
even if it supports RI-RSVP-FRR extensions, then its neighbors will even if it supports RI-RSVP-FRR extensions, then its neighbors will
view the node as any node that does not support the extensions. view the node as any node that does not support the extensions.
- As nodes supporting the RI-RSVP-FRR extensions initiate Node-ID * As nodes supporting the RI-RSVP-FRR extensions initiate Node-ID-
based signaling adjacency with all immediate neighbors, such a based signaling adjacency with all immediate neighbors, such a
node on the path of a protected LSP can determine whether its Phop node on the path of a protected LSP can determine whether its Phop
and Nhop neighbors support RI-RSVP-FRR enhancements. and Nhop neighbors support RI-RSVP-FRR enhancements.
- As nodes supporting the RI-RSVP-FRR extensions also initiate Node- * As nodes supporting the RI-RSVP-FRR extensions also initiate Node-
ID based signaling adjacency with the NNhop along the path of the ID-based signaling adjacency with the NNhop along the path of the
LSP requested node protection (see Section 4.2.1 of this LSP requesting node protection (see Section 4.2.1 of this
document), each node along the LSP path can determine whether its document), each node along the LSP path can determine whether its
NNhop node supports RI-RSVP-FRR enhancements. If the NNhop (a) NNhop node supports RI-RSVP-FRR enhancements. If the NNhop (a)
does not reply to remote Node-ID Hello messages or (b) does not does not reply to remote Node-ID Hello messages or (b) does not
set the RI-RSVP flag in the CAPABILITY object carried in its Node- set the RI-RSVP flag in the CAPABILITY object carried in its Node-
ID Hello messages, then the node acting as the PLR can conclude ID Hello messages, then the node acting as the PLR can conclude
that NNhop does not support RI-RSVP-FRR extensions. that NNhop does not support RI-RSVP-FRR extensions.
- If node protection is requested for an LSP and if (a) the PPhop * If node protection is requested for an LSP and if (a) the PPhop
node has not included a matching B-SFRR-Ready Extended Association node has not included a matching B-SFRR-Ready Extended Association
object in its Path messages or (b) the PPhop node has not object in its Path messages, (b) the PPhop node has not initiated
initiated remote Node-ID Hello messages or (c) the PPhop node does remote Node-ID Hello messages, or (c) the PPhop node does not set
not set the RI-RSVP flag in the CAPABILITY object carried in its the RI-RSVP flag in the CAPABILITY object carried in its Node-ID
Node-ID Hello messages, then the node MUST conclude that the PLR Hello messages, then the node MUST conclude that the PLR does not
does not support RI-RSVP-FRR extensions. support RI-RSVP-FRR extensions.
4.6.2. Procedures for Backward Compatibility 4.6.2. Procedures for Backward Compatibility
Every node that supports RI-RSVP-FRR MUST support the procedures Every node that supports RI-RSVP-FRR MUST support the procedures
defined in this section in order to support backward compatibility defined in this section in order to support backward compatibility
for those subset of LSPs that also traverse nodes that do not support for those subsets of LSPs that also traverse nodes that do not
RI-RSVP-FRR. support RI-RSVP-FRR.
4.6.2.1. Lack of support on Downstream Node 4.6.2.1. Lack of Support on Downstream Nodes
The procedures on the downstream direction are as follows. The procedures on the downstream direction are as follows:
- If a node finds that the Nhop node along the LSP does not support * If a node finds that the Nhop node along the LSP does not support
the RI-RSVP-FRR extensions, then the node MUST reduce the "refresh the RI-RSVP-FRR extensions, then the node MUST reduce the "refresh
period" in the TIME_VALUES object carried in the Path messages to period" in the TIME_VALUES object carried in the Path messages to
the default short refresh interval. the default short refresh interval.
- If node protection is requested for the LSP and the NNhop node * If node protection is requested for the LSP and the NNhop node
along the LSP path does not support the RI-RSVP-FRR extensions, along the LSP path does not support the RI-RSVP-FRR extensions,
then the node MUST reduce the "refresh period" in the TIME_VALUES then the node MUST reduce the "refresh period" in the TIME_VALUES
object carried in the Path messages to the default short refresh object carried in the Path messages to the default short refresh
interval. interval.
If a node reduces the refresh time using the above procedures, it If a node reduces the refresh time using the above procedures, it
MUST NOT send any "Remote" PathTear or Conditional PathTear message MUST NOT send any "Remote" PathTear or Conditional PathTear message
to the downstream node. to the downstream node.
Consider the example topology in Figure 1. If C does not support the Consider the example topology in Figure 1. If C does not support the
RI-RSVP-FRR extensions, then: RI-RSVP-FRR extensions, then:
- A and B reduce the refresh time to the default short refresh * A and B reduce the refresh time to the default short refresh
interval of 30 seconds and trigger a Path message interval of 30 seconds and trigger a Path message.
- If B is not an MP and if Phop link of B fails, B cannot send * If B is not an MP and if the Phop link of B fails, B cannot send a
Conditional PathTear to C but times out the PSB state from A Conditional PathTear to C but times out the PSB state from A
normally. Note that B can time out the PSB state A normally only normally. Note that B can only normally time out the PSB state A
if A did not set long refresh in the TIME_VALUES object carried in if A did not set the long refresh in the TIME_VALUES object
the Path messages sent earlier. carried in the Path messages sent earlier.
4.6.2.2. Lack of support on Upstream Node 4.6.2.2. Lack of Support on Upstream Nodes
The procedures are as follows. The procedures on the upstream direction are as follows:
- If a node finds that the Phop node along the LSP path does not * If a node finds that the Phop node along the LSP path does not
support the RI-RSVP-FRR extensions, then the node MUST reduce the support the RI-RSVP-FRR extensions, then the node MUST reduce the
"refresh period" in the TIME_VALUES object carried in the Resv "refresh period" in the TIME_VALUES object carried in the Resv
messages to the default short refresh interval. messages to the default short refresh interval.
- If node protection is requested for the LSP and the Phop node * If node protection is requested for the LSP and the Phop node
along the LSP path does not support the RI-RSVP-FRR extensions, along the LSP path does not support the RI-RSVP-FRR extensions,
then the node MUST reduce the "refresh period" in the TIME_VALUES then the node MUST reduce the "refresh period" in the TIME_VALUES
object carried in the Path messages to the default short refresh object carried in the Path messages to the default short refresh
interval (thus, the Nhop can use compatible values when sending a interval (thus, the Nhop can use compatible values when sending a
Resv). Resv).
- If node protection is requested for the LSP and the PPhop node * If node protection is requested for the LSP and the PPhop node
does not support the RI-RSVP-FRR extensions, then the node MUST does not support the RI-RSVP-FRR extensions, then the node MUST
reduce the "refresh period" in the TIME_VALUES object carried in reduce the "refresh period" in the TIME_VALUES object carried in
the Resv messages to the default short refresh interval. the Resv messages to the default short refresh interval.
- If the node reduces the refresh time using the above procedures, * If the node reduces the refresh time using the above procedures,
it MUST NOT execute MP procedures specified in Section 4.3 of this it MUST NOT execute MP procedures specified in Section 4.3 of this
document. document.
4.6.2.3. Incremental Deployment 4.6.2.3. Incremental Deployment
The backward compatibility procedures described in the previous sub- The backward compatibility procedures described in the previous
sections imply that a router supporting the RI-RSVP-FRR extensions subsections imply that a router supporting the RI-RSVP-FRR extensions
specified in this document can apply the procedures specified in the specified in this document can apply the procedures specified in this
document either in the downstream or upstream direction of an LSP, document either in the downstream or upstream direction of an LSP,
depending on the capability of the routers downstream or upstream in depending on the capability of the routers downstream or upstream in
the LSP path. the LSP path.
- RI-RSVP-FRR extensions and procedures are enabled for downstream * RI-RSVP-FRR extensions and procedures are enabled for downstream
Path, PathTear and ResvErr messages corresponding to an LSP if Path, PathTear, and ResvErr messages corresponding to an LSP if
link protection is requested for the LSP and the Nhop node link protection is requested for the LSP and the Nhop node
supports the extensions supports the extensions.
- RI-RSVP-FRR extensions and procedures are enabled for downstream * RI-RSVP-FRR extensions and procedures are enabled for downstream
Path, PathTear and ResvErr messages corresponding to an LSP if Path, PathTear, and ResvErr messages corresponding to an LSP if
node protection is requested for the LSP and both Nhop & NNhop node protection is requested for the LSP and both Nhop and NNhop
nodes support the extensions nodes support the extensions.
- RI-RSVP-FRR extensions and procedures are enabled for upstream * RI-RSVP-FRR extensions and procedures are enabled for upstream
PathErr, Resv and ResvTear messages corresponding to an LSP if PathErr, Resv, and ResvTear messages corresponding to an LSP if
link protection is requested for the LSP and the Phop node link protection is requested for the LSP and the Phop node
supports the extensions supports the extensions.
- RI-RSVP-FRR extensions and procedures are enabled for upstream * RI-RSVP-FRR extensions and procedures are enabled for upstream
PathErr, Resv and ResvTear messages corresponding to an LSP if PathErr, Resv, and ResvTear messages corresponding to an LSP if
node protection is requested for the LSP and both Phop and the node protection is requested for the LSP and both Phop and PPhop
PPhop support the extensions nodes support the extensions.
For example, if an implementation supporting the RI-RSVP-FRR For example, if an implementation supporting the RI-RSVP-FRR
extensions specified in this document is deployed on all routers in extensions specified in this document is deployed on all routers in a
particular region of the network and if all the LSPs in the network particular region of the network and if all the LSPs in the network
request node protection, then the FRR extensions will only be applied request node protection, then the FRR extensions will only be applied
for the LSP segments that traverse the particular region. This will for the LSP segments that traverse the particular region. This will
aid incremental deployment of these extensions and also allow reaping aid incremental deployment of these extensions and also allow reaping
the benefits of the extensions in portions of the network where it is the benefits of the extensions in portions of the network where it is
supported. supported.
4.7. Consequence of Advertising RI-RSVP without RI-RSVP-FRR 4.7. Consequences of Advertising RI-RSVP Without RI-RSVP-FRR
If a node supporting facility backup protection [RFC4090] sets the If a node supporting facility backup protection [RFC4090] sets the
RI-RSVP capability (I bit) but does not support the RI-RSVP-FRR RI-RSVP capability (I-bit) but does not support the RI-RSVP-FRR
extensions, due to an implementation bug or configuration error, then extensions, due to an implementation bug or configuration error, then
it leaves room for stale state to linger around for an inordinate it leaves room for the stale state to linger around for an inordinate
period of time or disruption of normal FRR operation (see Section 3 period of time or for disruption of normal FRR operations (see
of this document). Consider the example topology Figure 1 provided Section 3 of this document). Consider the example topology
in this document. (Figure 1) provided in this document.
- Assume node B does set RI-RSVP capability in its Node-ID based * Assume node B does set the RI-RSVP capability in its Node-ID-based
Hello messages even though it does not support RI-RSVP-FRR Hello messages even though it does not support RI-RSVP-FRR
extensions. When B detects the failure of its Phop link along an extensions. When B detects the failure of its Phop link along an
LSP, it will not send Conditional PathTear to C as required by the LSP, it will not send a Conditional PathTear to C as required by
RI-RSVP-FRR procedures. If B simply leaves the LSP state without the RI-RSVP-FRR procedures. If B simply leaves the LSP state
deleting, then B may end up holding on to the stale state until without deleting, then B may end up holding on to the stale state
the (long) refresh timeout. until the (long) refresh timeout.
- Instead of node B, assume node C does set RI-RSVP capability in * Instead of node B, assume node C does set the RI-RSVP capability
its Node-id based Hello messages even though it does not support in its Node-ID-based Hello messages even though it does not
RI-RSVP-FRR extensions. When B details the failure of its Phop support RI-RSVP-FRR extensions. When B details the failure of its
link along an LSP, it will send Conditional PathTear to C as Phop link along an LSP, it will send a Conditional PathTear to C
required by the RI-RSVP-FRR procedures. But, C would not as required by the RI-RSVP-FRR procedures. However, C would not
recognize the condition encoded in the PathTear and end up tearing recognize the condition encoded in the PathTear and end up tearing
down the LSP. down the LSP.
- Assume node B does set RI-RSVP capability in its Node-ID based * Assume node B does set the RI-RSVP capability in its Node-ID-based
Hello messages even though it does not support RI-RSVP-FRR Hello messages even though it does not support RI-RSVP-FRR
extensions. Also assume local repair is about to commence on node extensions. In addition, assume local repair is about to commence
B for an LSP that has only requested link protection. That is, B on node B for an LSP that has only requested link protection, that
has not initiated the backup LSP signaling for the LSP. If node B is, B has not initiated the backup LSP signaling for the LSP. If
receives a normal PathTear at this time from ingress A because of node B receives a normal PathTear at this time from ingress A
a management event initiated on A, then B simply deletes the LSP because of a management event initiated on A, then B simply
state without sending a Remote PathTear to the LP-MP C. So, C may deletes the LSP state without sending a Remote PathTear to the LP-
end up holding on to the stale state until the (long) refresh MP C, so C may end up holding on to the stale state until the
timeout. (long) refresh timeout.
5. Security Considerations 5. Security Considerations
The security considerations pertaining to the original RSVP protocol The security considerations pertaining to the original RSVP protocols
[RFC2205], [RFC3209] and [RFC5920] remain relevant. When using RSVP ([RFC2205], [RFC3209], and [RFC5920]) remain relevant. When using
Cryptographic Authentication [RFC2747], more robust algorithms such RSVP cryptographic authentication [RFC2747], more robust algorithms
as HMAC-SHA256, HMAC-SHA384, or HMAC-SHA512 [RFC2104][FIPS-180-4] such as HMAC-SHA256, HMAC-SHA384, or HMAC-SHA512 [RFC2104]
SHOULD be used when computing the keyed message digest where [FIPS-180-4] SHOULD be used when computing the keyed message digest
possible. where possible.
This document extends the applicability of Node-ID based Hello This document extends the applicability of Node-ID-based Hello
session between immediate neighbors. The Node-ID based Hello session sessions between immediate neighbors. The Node-ID-based Hello
between the PLR and the NP-MP may require the two routers to exchange session between the PLR and the NP-MP may require the two routers to
Hello messages with non-immediate neighbor. So, the implementations exchange Hello messages with a non-immediate neighbor. Therefore,
SHOULD provide the option to configure Node-ID neighbor specific or the implementations SHOULD provide the option to configure a Node-ID
global authentication key to authentication messages received from neighbor specific or global authentication key to authentication
Node-ID neighbors. The network administrator SHOULD utilize this messages received from Node-ID neighbors. The network administrator
option to enable RSVP-TE routers to authenticate Node-ID Hello SHOULD utilize this option to enable RSVP-TE routers to authenticate
messages received with TTL greater than 1. Implementations SHOULD Node-ID Hello messages received with a TTL greater than 1.
also provide the option to specify a limit on the number of Node-ID Implementations SHOULD also provide the option to specify a limit on
based Hello sessions that can be established on a router supporting the number of Node-ID-based Hello sessions that can be established on
the extensions defined in this document. a router supporting the extensions defined in this document.
6. IANA Considerations 6. IANA Considerations
6.1. CONDITIONS Object 6.1. CONDITIONS Object
IANA maintains the Class Names, Class Numbers, and Class Types IANA maintains the "Class Names, Class Numbers, and Class Types"
registries in the "RSVP parameters" registry group (see registry in the "RSVP Parameters" registry group (see
http://www.iana.org/assignments/rsvp-parameters/rsvp-parameters.xml). http://www.iana.org/assignments/rsvp-parameters/). IANA has extended
IANA is requested to extend these registries by adding a new Class these registries by adding a new Class Number (in the 10bbbbbb range)
Number (in the 10bbbbbb range) and assign a new C-Type under this and assigning a new C-Type under this Class Number, as described
Class Number, as described below (see Section 4.4.3): below (see Section 4.4.3):
Class Number Class Name Reference
TBA1 CONDITIONS This document
Class Type of C-types - TBA1 CONDITIONS
Value Class Name Reference
1 CONDITIONS This document
IANA is requested to add a new sub-registry for "CONDITIONS Object
Flags" as shown below. Assignments of additional Class Type values
for Class Name "CONDITIONS" are to be performed via "IETF Review"
[RFC8126].
Bit Number 32-bit Value Name Reference
0-30 Unassigned
31 0x0001 Merge-point This document
All assignments in this sub-registry are to be performed via "IETF
Review" [RFC8126].
7. Acknowledgements +==============+============+===========+
| Class Number | Class Name | Reference |
+==============+============+===========+
| 135 | CONDITIONS | RFC 9705 |
+--------------+------------+-----------+
We are very grateful to Yakov Rekhter for his contributions to the Table 1: Class Names, Class Numbers,
development of the idea and thorough review of content of the draft. and Class Types
We are thankful to Raveendra Torvi and Yimin Shen for their comments
and inputs on early versions of the draft. We also thank Alexander
Okonnikov for his review and comments on the draft.
8. Contributors +=======+=============+===========+
| Value | Description | Reference |
+=======+=============+===========+
| 1 | CONDITIONS | RFC 9705 |
+-------+-------------+-----------+
Markus Jork Table 2: Class Type or C-Types
Juniper Networks, Inc. - 135 CONDITIONS
Email: mjork@juniper.net
Harish Sitaraman IANA has added a subregistry called "CONDITIONS Object Flags" as
Individual Contributor shown below. Assignments of additional Class Type values for Class
Email: harish.ietf@gmail.com Name "CONDITIONS" are to be performed via "IETF Review" [RFC8126].
Vishnu Pavan Beeram +============+==============+=============+===========+
Juniper Networks, Inc. | Bit Number | 32-Bit Value | Name | Reference |
Email: vbeeram@juniper.net +============+==============+=============+===========+
| 0-30 | | Unassigned | |
+------------+--------------+-------------+-----------+
| 31 | 0x0001 | Merge-point | RFC 9705 |
+------------+--------------+-------------+-----------+
Ebben Aries Table 3: CONDITIONS Object Flags
Juniper Networks, Inc.
Email: exa@juniper.com
Mike Taillon All assignments in this subregistry are to be performed via "IETF
Cisco Systems, Inc. Review" [RFC8126].
Email: mtaillon@cisco.com
9. References 7. References
9.1. Normative References 7.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, Requirement Levels", BCP 14, RFC 2119,
DOI 10.17487/RFC2119, March 1997, DOI 10.17487/RFC2119, March 1997,
<https://www.rfc-editor.org/info/rfc2119>. <https://www.rfc-editor.org/info/rfc2119>.
[RFC2205] Braden, R., Ed., Zhang, L., Berson, S., Herzog, S., and S. [RFC2205] Braden, R., Ed., Zhang, L., Berson, S., Herzog, S., and S.
Jamin, "Resource ReSerVation Protocol (RSVP) -- Version 1 Jamin, "Resource ReSerVation Protocol (RSVP) -- Version 1
Functional Specification", RFC 2205, DOI 10.17487/RFC2205, Functional Specification", RFC 2205, DOI 10.17487/RFC2205,
September 1997, <https://www.rfc-editor.org/info/rfc2205>. September 1997, <https://www.rfc-editor.org/info/rfc2205>.
skipping to change at page 27, line 25 skipping to change at line 1227
T. Saad, "Techniques to Improve the Scalability of RSVP-TE T. Saad, "Techniques to Improve the Scalability of RSVP-TE
Deployments", RFC 8370, DOI 10.17487/RFC8370, May 2018, Deployments", RFC 8370, DOI 10.17487/RFC8370, May 2018,
<https://www.rfc-editor.org/info/rfc8370>. <https://www.rfc-editor.org/info/rfc8370>.
[RFC8796] Taillon, M., Saad, T., Ed., Gandhi, R., Deshmukh, A., [RFC8796] Taillon, M., Saad, T., Ed., Gandhi, R., Deshmukh, A.,
Jork, M., and V. Beeram, "RSVP-TE Summary Fast Reroute Jork, M., and V. Beeram, "RSVP-TE Summary Fast Reroute
Extensions for Label Switched Path (LSP) Tunnels", Extensions for Label Switched Path (LSP) Tunnels",
RFC 8796, DOI 10.17487/RFC8796, July 2020, RFC 8796, DOI 10.17487/RFC8796, July 2020,
<https://www.rfc-editor.org/info/rfc8796>. <https://www.rfc-editor.org/info/rfc8796>.
9.2. Informative References 7.2. Informative References
[FIPS-180-4] [FIPS-180-4]
National Institute of Standards and Technology, "Secure National Institute of Standards and Technology, "Secure
Hash Standard", FIPS 180-4, August 2015. Hash Standard", FIPS PUB 180-4,
DOI 10.6028/NIST.FIPS.180-4, August 2015,
<https://nvlpubs.nist.gov/nistpubs/FIPS/
NIST.FIPS.180-4.pdf>.
[RFC2104] Krawczyk, H., Bellare, M., and R. Canetti, "HMAC: Keyed- [RFC2104] Krawczyk, H., Bellare, M., and R. Canetti, "HMAC: Keyed-
Hashing for Message Authentication", RFC 2104, Hashing for Message Authentication", RFC 2104,
DOI 10.17487/RFC2104, February 1997, DOI 10.17487/RFC2104, February 1997,
<https://www.rfc-editor.org/info/rfc2104>. <https://www.rfc-editor.org/info/rfc2104>.
[RFC5920] Fang, L., Ed., "Security Framework for MPLS and GMPLS [RFC5920] Fang, L., Ed., "Security Framework for MPLS and GMPLS
Networks", RFC 5920, DOI 10.17487/RFC5920, July 2010, Networks", RFC 5920, DOI 10.17487/RFC5920, July 2010,
<https://www.rfc-editor.org/info/rfc5920>. <https://www.rfc-editor.org/info/rfc5920>.
Acknowledgements
We are very grateful to Yakov Rekhter for his contributions to the
development of the idea and thorough review of the content of the
document. We are thankful to Raveendra Torvi and Yimin Shen for
their comments and inputs on early versions of the document. We also
thank Alexander Okonnikov for his review and comments on the
document.
Contributors
Markus Jork
Juniper Networks, Inc.
Email: mjork@juniper.net
Harish Sitaraman
Individual Contributor
Email: harish.ietf@gmail.com
Vishnu Pavan Beeram
Juniper Networks, Inc.
Email: vbeeram@juniper.net
Ebben Aries
Juniper Networks, Inc.
Email: exa@juniper.com
Mike Taillon
Cisco Systems, Inc.
Email: mtaillon@cisco.com
Authors' Addresses Authors' Addresses
Chandra Ramachandran Chandra Ramachandran
Juniper Networks, Inc. Juniper Networks, Inc.
Email: csekar@juniper.net Email: csekar@juniper.net
Tarek Saad Tarek Saad
Cisco Systems, Inc. Cisco Systems, Inc.
Email: tsaad@cisco.com Email: tsaad@cisco.com
Ina Minei Ina Minei
Google, Inc. Google, Inc.
Email: inaminei@google.com Email: inaminei@google.com
Dante Pacella Dante Pacella
Verizon, Inc. Verizon, Inc.
Email: dante.j.pacella@verizon.com Email: dante.j.pacella@verizon.com
 End of changes. 208 change blocks. 
620 lines changed or deleted 659 lines changed or added

This html diff was produced by rfcdiff 1.48.