rfc9705xml2.original.xml   rfc9705.xml 
<?xml version="1.0" encoding="US-ASCII"?> <?xml version='1.0' encoding='UTF-8'?>
<!-- This template is for creating an Internet Draft using xml2rfc,
which is available here: http://xml.resource.org. -->
<!DOCTYPE rfc [ <!DOCTYPE rfc [
<!-- One method to get references from the online citation libraries. <!ENTITY nbsp "&#160;">
There has to be one entity for each item to be referenced. <!ENTITY zwsp "&#8203;">
An alternate method (rfc include) is described in the references. --> <!ENTITY nbhy "&#8209;">
<!ENTITY RFC2104 SYSTEM "http://xml.resource.org/public/rfc/bibxml/reference.RFC <!ENTITY wj "&#8288;">
.2104.xml">
<!ENTITY RFC2119 SYSTEM "http://xml.resource.org/public/rfc/bibxml/reference.RFC
.2119.xml">
<!ENTITY RFC2747 SYSTEM "http://xml.resource.org/public/rfc/bibxml/reference.RFC
.2747.xml">
<!ENTITY RFC3209 SYSTEM "http://xml.resource.org/public/rfc/bibxml/reference.RFC
.3209.xml">
<!ENTITY RFC4090 SYSTEM "http://xml.resource.org/public/rfc/bibxml/reference.RFC
.4090.xml">
<!ENTITY RFC2961 SYSTEM "http://xml.resource.org/public/rfc/bibxml/reference.RFC
.2961.xml">
<!ENTITY RFC2205 SYSTEM "http://xml.resource.org/public/rfc/bibxml/reference.RFC
.2205.xml">
<!ENTITY RFC4558 SYSTEM "http://xml.resource.org/public/rfc/bibxml/reference.RFC
.4558.xml">
<!ENTITY RFC3473 SYSTEM "http://xml.resource.org/public/rfc/bibxml/reference.RFC
.3473.xml">
<!ENTITY RFC5063 SYSTEM "http://xml.resource.org/public/rfc/bibxml/reference.RFC
.5063.xml">
<!ENTITY RFC8370 SYSTEM "http://xml.resource.org/public/rfc/bibxml/reference.RFC
.8370.xml">
<!ENTITY RFC8796 SYSTEM "http://xml.resource.org/public/rfc/bibxml/reference.RFC
.8796.xml">
<!ENTITY RFC5920 SYSTEM "http://xml.resource.org/public/rfc/bibxml/reference.RFC
.5920.xml">
<!ENTITY RFC8174 SYSTEM "http://xml.resource.org/public/rfc/bibxml/reference.RFC
.8174.xml">
<!ENTITY RFC8126 SYSTEM "http://xml.resource.org/public/rfc/bibxml/reference.RFC
.8126.xml">
]> ]>
<?xml-stylesheet type='text/xsl' href='rfc2629.xslt' ?>
<!-- used by XSLT processors -->
<!-- For a complete list and description of processing instructions (PIs),
please see http://xml.resource.org/authoring/README.html. -->
<!-- Below are generally applicable Processing Instructions (PIs) that most I-Ds
might want to use.
(Here they are set differently than their defaults in xml2rfc v1.32) -->
<?rfc strict="yes" ?>
<!-- give errors regarding ID-nits and DTD validation -->
<!-- control the table of contents (ToC) -->
<?rfc toc="yes"?>
<!-- generate a ToC -->
<?rfc tocdepth="4"?>
<!-- the number of levels of subsections in ToC. default: 3 -->
<!-- control references -->
<?rfc symrefs="yes"?>
<!-- use symbolic references tags, i.e, [RFC2119] instead of [1] -->
<?rfc sortrefs="yes" ?>
<!-- sort the reference entries alphabetically -->
<!-- control vertical white space
(using these PIs as follows is recommended by the RFC Editor) -->
<?rfc compact="yes" ?>
<!-- do not start each main section on a new page -->
<?rfc subcompact="no" ?>
<!-- keep one blank line between list items -->
<!-- end of list of popular I-D processing instructions -->
<rfc category="std" docName="draft-ietf-mpls-ri-rsvp-frr-22" ipr="pre5378Trust20
0902" submissionType="IETF" consensus="true" updates="4090">
<!-- category values: std, bcp, info, exp, and historic
ipr values: trust200902, noModificationTrust200902, noDerivativesTrust200902
,
or pre5378Trust200902
you can add the attributes updates="NNNN" and obsoletes="NNNN"
they will automatically be output with "(if approved)" -->
<!-- ***** FRONT MATTER ***** --> <rfc xmlns:xi="http://www.w3.org/2001/XInclude" category="std" docName="draft-ie tf-mpls-ri-rsvp-frr-22" number="9705" ipr="pre5378Trust200902" submissionType="I ETF" consensus="true" obsoletes="" updates="4090" tocInclude="true" tocDepth="4" symRefs="true" sortRefs="true" version="3" xml:lang="en" >
<front> <front>
<!-- The abbreviated title is used in the page header - it is only necessary <title abbrev="RI-RSVP-FRR Bypass">Refresh-Interval Independent RSVP Fast Rer
if the oute Facility Protection</title>
full title is longer than 39 characters --> <seriesInfo name="RFC" value="9705"/>
<author initials="C." surname="Ramachandran" fullname="Chandra Ramachandran"
<title abbrev="RI-RSVP FRR Bypass">Refresh-interval Independent FRR Facility >
Protection <organization>Juniper Networks, Inc.</organization>
</title> <address>
<email>csekar@juniper.net</email>
<!-- add 'role="editor"' below for the editors if appropriate --> </address>
<!-- Another author who claims to be an editor -->
<author initials="C. " surname="Ramachandran" fullname="Chandra Ramachandran
">
<organization>Juniper Networks, Inc.</organization>
<address>
<email>csekar@juniper.net</email>
</address>
</author> </author>
<author initials="T." surname="Saad" fullname="Tarek Saad">
<author initials="T. " surname="Saad" fullname="Tarek Saad"> <organization>Cisco Systems, Inc.</organization>
<organization>Cisco Systems, Inc.</organization> <address>
<address> <email>tsaad@cisco.com</email>
<email>tsaad@cisco.com</email> </address>
</address>
</author> </author>
<author initials="I." surname="Minei" fullname="Ina Minei">
<author initials="I. " surname="Minei" fullname="Ina Minei"> <organization>Google, Inc.</organization>
<organization>Google, Inc.</organization> <address>
<address> <email>inaminei@google.com</email>
<email>inaminei@google.com</email> </address>
</address>
</author> </author>
<author initials="D." surname="Pacella" fullname="Dante Pacella">
<author initials="D. " surname="Pacella" fullname="Dante Pacella"> <organization>Verizon, Inc.</organization>
<organization>Verizon, Inc.</organization> <address>
<address> <email>dante.j.pacella@verizon.com</email>
<email>dante.j.pacella@verizon.com</email> </address>
</address>
</author> </author>
<date year="2025" month="January"/>
<date year="2024" /> <area>RTG</area>
<workgroup>mpls</workgroup>
<!-- If the month and year are both specified and are the current ones, xml2r <keyword>ri-rsvp-frr</keyword>
fc will fill <keyword>RI-RSVP-FRR</keyword>
in the current day for you. If only the current year is specified, xml2r
fc will fill
in the current day and month for you. If the year is not the current one
, it is
necessary to specify at least a month (xml2rfc assumes day="1" if not sp
ecified for the
purpose of calculating the expiry date). With drafts it is normally suf
ficient to
specify just the year. -->
<!-- Meta-data Declarations -->
<area>Routing</area>
<workgroup>MPLS Working Group</workgroup>
<!-- WG name at the upperleft corner of the doc,
IETF is fine for individual submissions.
If this element is not present, the default is "Network Working Group",
which is used by the RFC Editor as a nod to the history of the IETF. -->
<keyword>template</keyword>
<!-- Keywords will be incorporated into HTML output
files in a meta tag but they have no effect on text or nroff
output. If you submit your draft to the RFC Editor, the
keywords will be used for the search engine. -->
<abstract> <abstract>
<t>The RSVP-TE Fast Reroute (FRR) extensions specified in RFC 4090
define two local repair techniques to reroute Label Switched Path (LSP)
traffic over pre-established backup tunnels. Facility backup method
allows one or more LSPs traversing a connected link or node to be
protected using a bypass tunnel. The many-to-one nature of local repair
technique is attractive from a scalability point of view. This document
enumerates facility backup procedures in RFC 4090 that rely on refresh
timeout, hence, making facility backup method refresh-interval
dependent. The RSVP-TE extensions defined in this document will enhance
the facility backup protection mechanism by making the corresponding
procedures refresh-interval independent, and hence, compatible with the
Refresh-Interval Independent RSVP (RI-RSVP) capability specified in RFC
8370. Hence, this document updates RFC 4090 in order to support the
RI-RSVP capability specified in RFC 8370.
</t>
</abstract>
</front>
<t>The RSVP-TE Fast Reroute extensions specified in RFC 4090 defines two local <middle>
repair techniques to reroute Label Switched Path (LSP) traffic over <section anchor="intro">
pre-established backup tunnel. Facility backup method allows one or more <name>Introduction</name>
LSPs traversing a connected link or node to be protected using a bypass <t>RSVP-TE relies on a periodic refresh of RSVP messages to synchronize
tunnel. The many-to-one nature of local repair technique is attractive and maintain the states related to the Label Switched Path (LSP) along the
from scalability point of view. This document enumerates facility backup reserved path. In the absence of refresh messages, the LSP-related
procedures in RFC 4090 that rely on refresh timeout and hence make states are automatically deleted. Reliance on periodic refreshes and
facility backup method refresh-interval dependent. The RSVP-TE extensions refresh timeouts are problematic from the scalability point of view. The
defined in this document will enhance the facility backup protection number of RSVP-TE LSPs that a router needs to maintain has been growing
mechanism by making the corresponding procedures refresh-interval in service provider networks, and the implementations should be capable
independent and hence compatible with Refresh-interval Independent RSVP of handling increases in LSP scale.
(RI-RSVP) specified in RFC 8370. Hence, this document updates RFC 4090 in
order to support RI-RSVP capability specified in RFC 8370.
</t>
</abstract>
<note title="Requirements Language">
<t>The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT",
"SHOULD", "SHOULD NOT", "RECOMMENDED", "NOT RECOMMENDED", "MAY", and "OPTIO
NAL" in this
document are to be interpreted as described in BCP 14 <xref target="RFC2119
"/>
<xref target="RFC8174"/> when, and only when, they
appear in all capitals, as shown here.
</t>
</note>
</front>
<middle>
<section anchor="intro" title="Introduction">
<t>RSVP-TE relies on periodic refresh of RSVP messages to synchronize and
maintain the Label Switched Path (LSP) related states along the reserved
path. In the absence of refresh messages, the LSP-related states are
automatically deleted. Reliance on periodic refreshes and refresh timeouts
are problematic from the scalability point of view. The number of RSVP-TE
LSPs that a router needs to maintain has been growing in service provider
networks and the implementations should be capable of handling increase in
LSP scale.
</t>
<t><xref target="RFC2961"/> specifies mechanisms to eliminate the reliance
on periodic
refresh and refresh timeout of RSVP messages and enables a router to
increase the message refresh interval to values much longer than the
default 30 seconds defined in <xref target="RFC2205"/>. However, the protoc
ol extensions
defined in <xref target="RFC4090"/> for supporting Fast Reroute (FRR) using
bypass tunnels
implicitly rely on short refresh timeouts to cleanup stale states.
</t>
<t>In order to eliminate the reliance on refresh timeouts, the routers
should unambiguously determine when a particular LSP state should be
deleted. In scenarios involving <xref target="RFC4090"/> FRR using bypass t
unnels,
additional explicit tear down messages are necessary. Refresh-interval
Independent RSVP FRR (RI-RSVP-FRR) extensions specified in this document
consists of procedures to enable LSP state cleanup that are essential in
supporting RI-RSVP capability for <xref target="RFC4090"/> FRR using bypass
tunnels.
</t>
<section anchor="intro_motivation" title="Motivation">
<t>Base RSVP <xref target="RFC2205"/> maintains state via the
generation of RSVP Path/Resv refresh messages. Refresh messages are used
to both synchronize state between RSVP neighbors and to recover from lost
RSVP messages. The use of Refresh messages to cover many possible
failures has resulted in a number of operational problems.
<list style="hanging">
<t hangText="-">One problem relates to RSVP control plane scaling due to
periodic refreshes of Path and Resv messages, another
relates to the reliability and latency of RSVP signaling.
</t> </t>
</list> <t><xref target="RFC2961"/> specifies mechanisms to eliminate the
<list style="hanging"> reliance on periodic refreshes and refresh timeouts of RSVP messages and
<t hangText="-">An additional problem is the time to clean up the stale enables a router to increase the message refresh interval to values much
state after a tear message is lost. For more on these longer than the default 30 seconds defined in <xref
problems see Section 1 of RSVP Refresh Overhead Reduction target="RFC2205"/>. However, the protocol extensions defined in <xref
Extensions <xref target="RFC2961"/>. target="RFC4090"/> for supporting Fast Reroute (FRR) using bypass
tunnels implicitly rely on short refresh timeouts to clean up stale
states.
</t> </t>
</list> <t>In order to eliminate the reliance on refresh timeouts, the routers
</t> should unambiguously determine when a particular LSP state should be
deleted. In scenarios involving FRR using bypass tunnels <xref
target="RFC4090"/>, additional explicit teardown messages are
necessary. The Refresh-Interval Independent RSVP-TE FRR (RI-RSVP-FRR)
extensions specified in this document consist of procedures to enable
LSP state cleanup that are essential in supporting the RI-RSVP capability
for FRR using bypass tunnels from <xref target="RFC4090"/>.
</t>
<section anchor="intro_motivation">
<name>Motivation</name>
<t>The problems listed above adversely affect RSVP control plane <t>Base RSVP <xref target="RFC2205"/> maintains state via the
scalability and RSVP-TE <xref target="RFC3209"/> inherited these problems generation of RSVP Path and Resv refresh messages. Refresh messages are
from standard RSVP. Procedures specified in <xref target="RFC2961"/> used to both synchronize state between RSVP neighbors and to recover
address the above-mentioned problems by eliminating dependency on from lost RSVP messages. The use of Refresh messages to cover many
refreshes for state synchronization and for recovering from lost RSVP possible failures has resulted in a number of operational problems.
messages, and by eliminating dependency on refresh timeout for stale </t>
state cleanup. Implementing these procedures allows implementations to <ul>
improve RSVP-TE control plane scalability. For more details on <li>One problem relates to RSVP control plane scaling due to
eliminating dependency on refresh timeout for stale state cleanup, refer periodic refreshes of Path and Resv messages.</li>
to "Refresh-interval Independent RSVP" section 3 of RSVP-TE Scaling <li>Another problem relates to the
Techniques <xref target="RFC8370"/>. reliability and latency of RSVP signaling.</li>
</t> <li>An additional problem is the time to clean up the stale state
after a tear message is lost. For more on these problems, see <xref
target="RFC2961" sectionFormat="of" section="1"/>.</li>
</ul>
<t>However, the facility backup protection procedures specified in <t>The problems listed above adversely affect RSVP control plane
scalability, and RSVP-TE <xref target="RFC3209"/> inherited these
problems from standard RSVP. Procedures specified in <xref
target="RFC2961"/> address the above-mentioned problems by eliminating
dependency on refreshes for state synchronization and for recovering
from lost RSVP messages, and also by eliminating dependency on refresh
timeout for stale state cleanup. Implementing these procedures allows
implementations to improve RSVP-TE control plane scalability. For more
details on eliminating dependency on refresh timeouts for stale state
cleanup, refer to <xref target="RFC8370" sectionFormat="of"
section="3"/>.
</t>
<t>However, the facility backup protection procedures specified in
<xref target="RFC4090"/> do not fully address stale state cleanup as the <xref target="RFC4090"/> do not fully address stale state cleanup as the
procedures depend on refresh timeouts for stale state cleanup. The procedures depend on refresh timeouts for stale state cleanup. The
updated facility backup protection procedures specified in this document, updated facility backup protection procedures specified in this document,
in combination with RSVP-TE Scaling Techniques <xref target="RFC8370"/>, in combination with RSVP-TE Scaling Techniques <xref target="RFC8370"/>,
eliminate this dependency on refresh timeouts for stale state cleanup. eliminate this dependency on refresh timeouts for stale state cleanup.
</t> </t>
<t>The procedures specified in this document assume reliable delivery of <t>The procedures specified in this document assume reliable delivery of
RSVP messages, as specified in <xref target="RFC2961"/>. Therefore, this RSVP messages, as specified in <xref target="RFC2961"/>. Therefore, <xref t
document makes support for <xref target="RFC2961"/> a pre-requisite. arget="RFC2961"/> is a prerequisite for this
</t> document.
</t>
</section>
</section> </section>
</section>
<section anchor="terminology" title="Terminology">
<t>The reader is expected to be familiar with the terminology in
<xref target="RFC2205"/>, <xref target="RFC3209"/>,
<xref target="RFC4090"/>, <xref target="RFC4558"/>,
<xref target="RFC8370"/> and <xref target="RFC8796"/>.
</t>
<t>Phop node: Previous-hop router along the label switched path
</t>
<t>PPhop node: Previous-Previous-hop router along the label switched path
</t>
<t>Nhop node: Next-hop router along the label switched path
</t>
<t>NNhop node: Next-Next-hop router along the label switched path
</t>
<t>PLR: Point of Local Repair router as defined in <xref target="RFC4090"/>
</t>
<t>MP: Merge Point router as defined in <xref target="RFC4090"/>
</t>
<t>LP-MP node: Merge Point router at the tail of Link-Protecting bypass tun
nel
</t>
<t>NP-MP node: Merge Point router at the tail of Node-Protecting bypass tun
nel
</t>
<t>RRO: Record Route Object as defined in <xref target="RFC3209"/>
</t>
<t>TED: Traffic Engineering Database
</t>
<t>LSP state: The combination of "path state" maintained as Path State Bloc
k
(PSB) and "reservation state" maintained as Reservation State Block (RSB)
forms an individual LSP state on an RSVP-TE speaker
</t>
<t>RI-RSVP: The set of procedures defined in Section 3 of RSVP-TE Scaling
Techniques <xref target="RFC8370"/> to eliminate RSVP's reliance on periodi
c
message refreshes
</t>
<t>B-SFRR-Ready: Bypass Summary FRR Ready Extended Association object defin
ed
in Summary FRR extensions <xref target="RFC8796"/> and is added by the PLR
for each protected LSP.
</t>
<t>RI-RSVP-FRR: The set of procedures defined in this document to eliminate
RSVP's reliance of periodic message refreshes when supporting facility back
up
protection <xref target="RFC4090"/>
</t>
<t>Conditional PathTear: A PathTear message containing a suggestion to a
receiving downstream router to retain the path state if the receiving route
r
is an NP-MP
</t>
<t>Remote PathTear: A PathTear message sent from a Point of Local Repair (P <section anchor="terms-abbrevs">
LR) <name>Abbreviations and Terminology</name>
to the MP to delete the LSP state on the MP if PLR had not previously sent <t>
the The key words "<bcp14>MUST</bcp14>", "<bcp14>MUST NOT</bcp14>",
backup Path state reliably "<bcp14>REQUIRED</bcp14>", "<bcp14>SHALL</bcp14>", "<bcp14>SHALL NOT</bcp14>
</t> ",
</section> "<bcp14>SHOULD</bcp14>", "<bcp14>SHOULD NOT</bcp14>",
"<bcp14>RECOMMENDED</bcp14>", "<bcp14>NOT RECOMMENDED</bcp14>",
<section anchor="prob_desc" title="Problem Description"> "<bcp14>MAY</bcp14>", and "<bcp14>OPTIONAL</bcp14>" in this document are to
be
interpreted as described in BCP&nbsp;14 <xref target="RFC2119"/> <xref
target="RFC8174"/> when, and only when, they appear in all capitals, as
shown here.
</t>
<t>
In addition, the reader is expected to be familiar with the terminology
in <xref
target="RFC2205"/>, <xref target="RFC3209"/>, <xref
target="RFC4090"/>, <xref target="RFC4558"/>, <xref
target="RFC8370"/>, and <xref target="RFC8796"/>.
</t>
<figure align="center" anchor="example_network" title="Example Topology"> <section anchor="abbrevs">
<artwork align="center"><![CDATA[ <name>Abbreviations</name>
<dl>
<dt>PHOP:</dt><dd>Previous-Hop (can refer to a router or node along the L
SP)</dd>
<dt>PPHOP:</dt><dd>Previous-Previous-Hop (can refer to a router or node a
long the LSP)</dd>
<dt>NHOP:</dt><dd>Next-Hop (can refer to a router or node along the LSP)<
/dd>
<dt>NNHOP:</dt><dd>Next-Next-Hop (can refer to a router or node along the
LSP)</dd>
<dt>PLR:</dt><dd>Point of Local Repair (can refer to a router as defined
in <xref target="RFC4090"/>)</dd>
<dt>MP:</dt><dd>Merge Point (can refer to a router as defined in <xref ta
rget="RFC4090"/>)</dd>
<dt>LP-MP:</dt><dd>Link-Protecting Merge Point (can refer to a router or
node at the tail of a Link-Protecting bypass tunnel</dd>
<dt>NP-MP:</dt><dd>Node-Protecting Merge Point (can refer to a router or
node at the tail of a Node-Protecting bypass tunnel</dd>
<dt>PSB:</dt><dd>Path State Block</dd>
<dt>RSB:</dt><dd>Reservation State Block</dd>
<dt>RRO:</dt><dd>Record Route Object (as defined in <xref target="RFC3209
"/>)</dd>
<dt>TED:</dt><dd>Traffic Engineering Database</dd>
<dt>RI-RSVP:</dt><dd>Refresh-Interval Independent RSVP (the set of proced
ures defined in <xref section="3" sectionFormat="of" target="RFC8370"/> to elimi
nate RSVP's reliance on periodic
message refreshes)</dd>
<dt>RI-RSVP-FRR:</dt><dd>Refresh-Interval Independent RSVP-TE FRR (the se
t of procedures defined in this document to eliminate
RSVP's reliance on periodic message refreshes when supporting facility ba
ckup
protection <xref target="RFC4090"/>)</dd>
</dl>
</section>
<section anchor="terms">
<name>Terminology</name>
<dl>
<dt>B-SFRR-Ready:</dt><dd>Bypass Summary FRR Ready Extended ASSOCIATION o
bject as defined
in <xref target="RFC8796"/> and added by the PLR
for each protected LSP</dd>
<dt>Conditional PathTear:</dt><dd>A PathTear message containing a suggest
ion to a
receiving downstream router to retain the path state if the receiving rou
ter
is an NP-MP</dd>
<dt>Remote PathTear:</dt><dd>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</dd>
<dt>LSP state</dt><dd>The combination of "path state" maintained as a PSB
and
"reservation state" maintained as an RSB forms an individual LSP state o
n an
RSVP-TE speaker</dd>
</dl>
</section>
</section>
<section anchor="prob_desc">
<name>Problem Description</name>
<figure anchor="example_network">
<name>Example Topology</name>
<artwork align="center"><![CDATA[
E E
/ \ / \
/ \ / \
/ \ / \
/ \ / \
/ \ / \
/ \ / \
A ----- B ----- C ----- D A ----- B ----- C ----- D
\ / \ /
\ / \ /
\ / \ /
\ / \ /
\ / \ /
\ / \ /
F F
]]></artwork> ]]></artwork>
</figure>
</figure>
<t>In the topology in <xref target="example_network"/>, consider a <t>In the topology in <xref target="example_network"/>, consider a
large number of LSPs from A to D transiting B and C. Assume that refresh large number of LSPs from A to D transiting B and C. Assume that refresh
interval has been configured to be long of the order of minutes and interval has been configured to be as long as the order of minutes and
refresh reduction extensions are enabled on all routers. that refresh reduction extensions are enabled on all routers.
</t> </t>
<t>In addition, assume that node protection has been configured for the LS
<t>Also assume that node protection has been configured for the LSPs Ps
and the LSPs are protected by each router in the following way and the LSPs are protected by each router in the following way:
</t>
<list style="hanging"> <ul>
<t hangText="-">A has made node protection available using bypass LSP <li>A has made node protection available using bypass LSP A -&gt; E
A -> E -> C; A is the PLR and C is the NP-MP -&gt; C; A is the PLR and C is the NP-MP.</li>
</t> <li>B has made node protection available using bypass LSP B -&gt; F
</list> -&gt; D; B is the PLR and D is the NP-MP.</li>
<list style="hanging"> <li>C has made link protection available using bypass LSP C -&gt; B
<t hangText="-">B has made node protection available using bypass LSP -&gt; F -&gt; D; C is the PLR and D is the LP-MP.</li>
B -> F -> D; B is the PLR and D is the NP-MP </ul>
</t>
</list>
<list style="hanging">
<t hangText="-">C has made link protection available using bypass LSP
C -> B -> F -> D; C is the PLR and D is the LP-MP
</t>
</list>
</t>
<t>In the above condition, assume that B-C link fails. The following is <t>
In the above condition, assume that the B-C link fails. The following is
the sequence of events that is expected to occur for all protected the sequence of events that is expected to occur for all protected
LSPs under normal conditions. LSPs under normal conditions.
</t>
<list style="hanging"> <ol type="Step %d.">
<t hangText="1.">B performs local repair and re-directs LSP traffic <li anchor="step1">B performs a local repair and redirects LSP traffic o
over the bypass LSP B -> F -> D. ver the bypass
</t> LSP B -&gt; F -&gt; D.</li>
</list> <li anchor="step2">B also creates a backup state for the LSP and triggers
<list style="hanging"> the sending of
<t hangText="2.">B also creates backup state for the LSP and triggers a backup LSP state to D over the bypass LSP B -&gt; F -&gt; D.</li>
sending of backup LSP state to D over the bypass LSP <li anchor="step3">D receives the backup LSP states and merges the backup
B -> F -> D. s with the
</t> protected LSPs.</li>
</list> <li anchor="step4">As the link on C, over which the LSP states are refre
<list style="hanging"> shed, has
<t hangText="3.">D receives backup LSP states and merges the backups failed, C will no longer receive state refreshes. Consequently, the
with the protected LSPs. protected LSP states on C will time out and C will send the teardown
</t> messages for all LSPs. As each router should consider itself as an MP,
</list> C will time out the state only after waiting for an additional
<list style="hanging"> duration equal to the refresh timeout.</li>
<t hangText="4.">As the link on C, over which the LSP states are </ol>
refreshed, has failed, C will no longer receive state
refreshes. Consequently, the protected LSP states on
C will time out and C will send the tear down messages
for all LSPs. As each router should consider itself
as an MP, C will time out the state only after waiting
for an additional duration equal to refresh timeout.
</t>
</list>
</t>
<t>While the above sequence of events has been described in <xref target= "RFC4090"/>, <t>While the above sequence of events has been described in <xref target=" 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:
</t>
<list style="hanging"> <ul>
<t hangText="-">If the protected LSP on C times out before D receives <li>If the protected LSP on C times out before D receives signaling
signaling for the backup LSP, then D would receive a for the backup LSP, then D would receive a PathTear from C prior to
PathTear from C prior to receiving signaling for the receiving signaling for the backup LSP, thus resulting in deleting the
backup LSP, thus resulting in deleting the LSP state. LSP state. This would be possible at scale even with the default refres
This would be possible at scale even with default h
refresh time. time.</li>
</t>
</list>
<list style="hanging">
<t hangText="-">If upon the link failure C is to keep state until its
timeout, then with long refresh interval this may
result in a large amount of stale state on C.
Alternatively, if upon the link failure C is to delete
the state and send a PathTear to D, this would result
in deleting the state on D, thus deleting the LSP. D
needs a reliable mechanism to determine whether it is
an MP or not to overcome this problem.
</t>
</list>
<list style="hanging">
<t hangText="-">If head-end A attempts to tear down LSP after step 1
but before step 2 of the above sequence, then B may
receive the tear down message before step 2 and
delete the LSP state from its state database. If B
deletes its state without informing D, with long
refresh interval this could cause (large) buildup of
stale state on D.
</t>
</list>
<list style="hanging">
<t hangText="-">If B fails to perform local repair in step 1, then B
will delete the LSP state from its state database
without informing D. As B deletes its state without
informing D, with long refresh interval this could
cause (large) buildup of stale state on D.
</t>
</list>
</t>
<t>The purpose of this document is to provide solutions to the above <li>If C is to keep state until its timeout upon the link failure,
problems which will then make it practical to scale up to a large then with a long refresh interval, this may result in a large amount
number of protected LSPs in the network. of stale state on C. Alternatively, if C is to
</t> delete the state and send a PathTear to D upon the link failure, then th
is would result in
deleting the state on D, thus deleting the LSP. D needs a reliable
mechanism to determine whether or not it is an MP to overcome this
problem.</li>
<li>If head-end A attempts to tear down the LSP after <xref target="step1
"
format="none">Step 1</xref> but before <xref target="step2"
format="none">Step 2</xref> of the above sequence, then B may receive
the teardown message before <xref target="step2" format="none">Step
2</xref> and delete the LSP state from its state database. If B
deletes its state without informing D, with a long refresh interval, this
could cause a (large) buildup of stale state on D.</li>
<li>If B fails to perform a local repair in <xref target="step1" format=
"none">Step 1</xref>, then B will delete
the LSP state from its state database without informing D. As B
deletes its state without informing D, with a long refresh interval, thi
s
could cause a (large) buildup of stale state on D.</li>
</ul>
<t>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
number of protected LSPs in the network.
</t>
</section> </section>
<section anchor="solution" title="Solution Aspects"> <section anchor="solution">
<t>The solution consists of five parts. <name>Solution Aspects</name>
<t>The solution consists of five parts:</t>
<ol>
<li>Utilize the MP determination mechanism specified in RSVP-TE Summary
FRR <xref target="RFC8796"/> that enables the PLR to signal the
availability of local protection to the MP. In addition, introduce PLR
and MP procedures to establish a Node-ID-based Hello session between the
PLR and the MP to detect router failures and to determine capability.
See <xref target="sig_handshake"/> of this document for more
details. This part of the solution reuses some of the extensions
defined in <xref target="RFC8796"/> and <xref target="RFC8370"/>, and th
e subsequent
subsections will list the extensions in these documents that are
utilized in this document.</li>
<list style="hanging"> <li>Handle upstream link or node failures by cleaning up LSP states if
<t hangText="-">Utilize MP determination mechanism specified in the node has not found itself as an MP through the MP determination
RSVP-TE Summary FRR <xref target="RFC8796"/> that enables mechanism. See <xref target="failures"/> of this document for more
the PLR to signal the availability of local protection to details.</li>
the MP. In addition, introduce PLR and MP procedures to
establish Node-ID based hello session between the PLR and
the MP to detect router failures and to determine capability.
See <xref target="sig_handshake"/> of this document for more det
ails. This part of the solution
re-uses some of the extensions defined in
RSVP-TE Summary FRR <xref target="RFC8796"/>
and RSVP-TE Scaling Techniques <xref target="RFC8370"/>, and
the subsequent sub-sections will list the extensions in these
drafts that are utilized in this document.
</t>
</list>
<list style="hanging">
<t hangText="-">Handle upstream link or node failures by cleaning up
LSP states if the node has not found itself as an MP through the
MP determination mechanism. See <xref target="failures"/> of thi
s document for more details.
</t>
</list>
<list style="hanging">
<t hangText="-">Introduce extensions to enable a router to send a tear
down message to the downstream router that enables the
receiving router to conditionally delete its local LSP state.
See <xref target="cnd_path_tear"/> of this document for more det
ails.
</t>
</list>
<list style="hanging">
<t hangText="-">Enhance facility backup protection by allowing a PLR to
directly send a tear down message to the MP without requiring
the PLR to either have a working bypass LSP or have already
signaled backup LSP state. See <xref target="rem_tear"/> of this
document for more details.
</t>
</list>
<list style="hanging">
<t hangText="-">Introduce extensions to enable the above procedures
to be backward compatible with routers along the LSP path
running implementation that do not support these procedures.
See <xref target="compatible"/> of this document for more detail
s.
</t>
</list>
</t>
<section anchor="adv_capability" title="Requirement on RFC 4090 Capable Node <li>Introduce extensions to enable a router to send a teardown
to advertise RI-RSVP Capability"> message to the downstream router that enables the receiving router to
<t>A node supporting facility backup protection <xref target="RFC4090"/> conditionally delete its local LSP state. See <xref
MUST NOT set the RI-RSVP flag (I bit) that is defined in Section 3.1 of target="cnd_path_tear"/> of this document for more details.</li>
RSVP-TE Scaling Techniques <xref target="RFC8370"/> unless it
supports all the extensions specified in the rest of this document.
Hence, this document updates <xref target="RFC4090"/> by defining exten
sions and
additional procedures over facility backup protection
<xref target="RFC4090"/> in order to advertise RI-RSVP capability
<xref target="RFC8370"/>. However, if a node supporting facility
backup protection <xref target="RFC4090"/> does set the RI-RSVP
capability (I bit) but does not support all the extensions specified
in the rest of this document, then it may result in lingering stale sta
tes
due to the long refresh intervals recommended by <xref target="RFC8370"
/>.
This can also disrupt normal Fast Reroute (FRR) operation.
<xref target="cap_bit_without_support"/> of this document delves on thi
s in detail.
</t>
</section>
<section anchor="sig_handshake" title="Signaling Handshake between PLR and M <li>Enhance facility backup protection by allowing a PLR to directly
P"> send a teardown message to the MP without requiring the PLR to either
<section anchor="sig_plr_behavior" title="PLR Behavior"> have a working bypass LSP or have already signaled the backup LSP
<t>As per the facility backup procedures <xref target="RFC4090"/>, when state. See <xref target="rem_tear"/> of this document for more
details.</li>
<li>Introduce extensions to enable the above procedures to be backward
compatible with routers along the LSP running implementations that
do not support these procedures. See <xref target="compatible"/> of
this document for more details.</li>
</ol>
<section anchor="adv_capability">
<name>Requirement for RFC 4090 Capable Nodes to Advertise the RI-RSVP Ca
pability</name>
<t>A node supporting facility backup protection <xref
target="RFC4090"/> <bcp14>MUST NOT</bcp14> set the RI-RSVP flag (I-bit)
that is defined in <xref target="RFC8370"
sectionFormat="of" section="3.1"/> unless it supports all the extensions
specified in the rest of this document. Hence, this document updates
<xref target="RFC4090"/> by defining extensions and additional
procedures over facility backup protection <xref target="RFC4090"/> in
order to advertise the RI-RSVP capability <xref
target="RFC8370"/>. However, if a node supporting facility backup
protection <xref target="RFC4090"/> does set the RI-RSVP capability (I-b
it) but does not support all the extensions specified in the rest of
this document, then it may result in lingering stale states due to the
long refresh intervals recommended by <xref target="RFC8370"/>. This
can also disrupt normal Fast Reroute (FRR) operations. <xref
target="cap_bit_without_support"/> of this document delves into this in
detail.
</t>
</section>
<section anchor="sig_handshake">
<name>Signaling Handshake Between PLR and MP</name>
<section anchor="sig_plr_behavior">
<name>PLR Behavior</name>
<t>As per the facility backup procedures <xref target="RFC4090"/>, whe
n
an LSP becomes operational on a node and the "local protection desire d" an LSP becomes operational on a node and the "local protection desire d"
flag has been set in the SESSION_ATTRIBUTE object carried in the Path flag has been set in the SESSION_ATTRIBUTE object carried in the Path
message corresponding to the LSP, then the node attempts to make loca l message corresponding to the LSP, then the node attempts to make loca l
protection available for the LSP. protection available for the LSP.
</t>
<ul>
<li>If the "node protection desired" flag is set, then the node
tries to become a PLR by attempting to create an NP-bypass LSP to
the NNHOP node avoiding the NHOP node on a protected LSP. In
case node protection could not be made available, the node
attempts to create an LP-bypass LSP to the NHOP node avoiding only
the link that the protected LSP takes to reach the NHOP.</li>
<li>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
link that the protected LSP takes to reach the NHOP.</li>
</ul>
<list style="hanging"> <t>With regard to the PLR procedures described above and specified
<t hangText="-">If the "node protection desired" flag is set, then in <xref target="RFC4090"/>, this document specifies the following
the node tries to become a PLR by attempting to create a additional procedures to support RI-RSVP <xref
NP-bypass LSP to the NNhop node avoiding the Nhop node on target="RFC8370"/>.</t>
protected LSP path. In case node protection could not be
made available, the node attempts to create an LP-bypass LSP
to the Nhop node avoiding only the link that the protected LSP
takes to reach the Nhop
</t>
</list>
<list style="hanging">
<t hangText="-">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 link that the protected LSP takes to reach the Nho
p
</t>
</list>
</t>
<t>With regard to the PLR procedures described above and that are
specified in <xref target="RFC4090"/>, this document specifies the fo
llowing
additional procedures to support RI-RSVP <xref target="RFC8370"/>.
<list style="hanging"> <ul>
<t hangText="-">While selecting the destination address of the bypass <li>While selecting the destination address of the bypass LSP, the
LSP, the PLR MUST select the router ID of the NNhop or Nhop PLR <bcp14>MUST</bcp14> select the router ID of the NNHOP or NHOP
node from the Node-ID sub-object included in the RRO object car node from the Node-ID sub-object included in the RRO that is
ried carried in the most recent Resv message corresponding to the
in the most recent Resv message corresponding to the LSP. If th LSP. If the MP has not included a Node-ID sub-object in the Resv
e RRO and if the PLR and the MP are in the same area, then the PLR
MP has not included a Node-ID sub-object in the Resv RRO and if may utilize the TED to determine the router ID corresponding to
the the interface address that is included by the MP in the RRO. If the
PLR and the MP are in the same area, then the PLR may utilize t NP-MP in a different IGP area has not included a Node-ID
he sub-object in the RRO, then the PLR <bcp14>MUST</bcp14> execute
TED to determine the router ID corresponding to the interface backward compatibility procedures as if the downstream nodes along
address included by the MP in the RRO object. If the NP-MP in a the LSP do not support the extensions defined in the document (see
different IGP area has not included a Node-ID sub-object in RRO <xref target="dnstr_no_support"/>).</li>
object, then the PLR MUST execute backward compatibility proced
ures
as if the downstream nodes along the LSP do not support the ext
ensions
defined in the document (see <xref target="dnstr_no_support"/>)
.
</t>
</list>
<list style="hanging">
<t hangText="-">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 LSP. While including its router ID
in
the Node-ID sub-object carried in the outgoing Path message, th
e
PLR MUST include the Node-ID sub-object after including its
IPv4/IPv6 address or unnumbered interface ID sub-object.
</t>
</list>
<list style="hanging">
<t hangText="-">In parallel to the attempt made to create NP-bypass
or LP-bypass, the PLR MUST initiate a Node-ID based Hello
session to the NNhop or Nhop node respectively along the LSP to
establish the RSVP-TE signaling adjacency. This Hello session i
s
used to detect MP node failure as well as determine the capabil
ity
of the MP node. If the MP has set the I-bit in the CAPABILITY
object <xref target="RFC8370"/> carried in Hello message
corresponding to the Node-ID based Hello session, then the PLR
MUST conclude that the MP supports refresh-interval
independent FRR procedures defined in this document. If the
MP has not sent Node-ID based Hello messages or has not set
the I-bit in CAPABILITY object <xref target="RFC8370"/>,
then the PLR MUST execute backward compatibility procedures
defined in <xref target="dnstr_no_support"/> of this document.
</t>
</list>
<list style="hanging">
<t hangText="-">When the PLR associates a bypass to a protected LSP, it
MUST include a B-SFRR-Ready Extended Association object
<xref target="RFC8796"/> and trigger a Path message to be sent
for the LSP. If a B-SFRR-Ready Extended Association object is
included in the Path message corresponding to the LSP, the
encoding and object ordering rules specified in RSVP-TE Summary
FRR
<xref target="RFC8796"/> MUST be followed. In addition to those
rules, the PLR MUST set the Association Source in the object to
its
Node-ID address.
</t>
</list>
</t>
</section> <li>The PLR <bcp14>MUST</bcp14> also include its router ID in a
Node-ID sub-object in the RRO that is carried in any subsequent Path
message corresponding to the LSP. While doing so, the
PLR <bcp14>MUST</bcp14> include the Node-ID sub-object after
including its IPv4/IPv6 address or unnumbered interface ID
sub-object.</li>
<section anchor="sig_rem_adjacency" title="Remote Signaling Adjacency"> <li>In parallel to the attempt made to create an NP-bypass or an
<t>A Node-ID based RSVP-TE Hello session is one in which Node-ID is LP-bypass, the PLR <bcp14>MUST</bcp14> initiate a Node-ID-based
Hello session to the NNHOP or NHOP node respectively along the LSP
to establish the RSVP-TE signaling adjacency. This Hello session
is used to detect MP node failure as well as to determine the
capability of the MP node. The
PLR <bcp14>MUST</bcp14> conclude that the MP supports the refresh-in
terval independent FRR procedures defined in this
document if the MP has set the I-bit in the
CAPABILITY object <xref target="RFC8370"/> carried in the Hello
message corresponding to the Node-ID-based Hello session.
If the MP has not sent Node-ID-based Hello messages or
has not set the I-bit in the CAPABILITY object <xref
target="RFC8370"/>, then the PLR <bcp14>MUST</bcp14> execute
backward compatibility procedures defined in <xref
target="dnstr_no_support"/> of this document.</li>
<li>When the PLR associates a bypass to a protected LSP, it
<bcp14>MUST</bcp14> include a B-SFRR-Ready Extended ASSOCIATION
object <xref target="RFC8796"/> and trigger a Path message to be
sent for the LSP. If a B-SFRR-Ready Extended ASSOCIATION object is
included in the Path message corresponding to the LSP, the
encoding and object ordering rules specified in RSVP-TE Summary
FRR <xref target="RFC8796"/> <bcp14>MUST</bcp14> be followed. In
addition to those rules, the PLR <bcp14>MUST</bcp14> set the
Association Source in the object to its Node-ID address.</li>
</ul>
</section>
<section anchor="sig_rem_adjacency">
<name>Remote Signaling Adjacency</name>
<t>A Node-ID-based RSVP-TE Hello session is one in which a Node-ID is
used in the source and the destination address fields of RSVP Hello used in the source and the destination address fields of RSVP Hello
messages <xref target="RFC4558"/>. This document extends Node-ID based messages <xref target="RFC4558"/>. This document extends Node-ID-based
RSVP Hello session to track the state of any RSVP-TE neighbor that is RSVP Hello sessions to track the state of any RSVP-TE neighbor that is
not directly connected by at least one interface. In order to apply not 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 defined in the document <bcp14>MUST</bcp14> set the TTL to 255 in all
Node-ID based Hello messages exchanged between the PLR and the MP. The outgoing
default hello interval for this Node-ID hello session MUST be set Node-ID-based Hello messages exchanged between the PLR and the MP. The
default hello interval for this Node-ID Hello session <bcp14>MUST</bcp
14> be set
to the default specified in RSVP-TE Scaling Techniques to the default specified in RSVP-TE Scaling Techniques
<xref target="RFC8370"/>. <xref target="RFC8370"/>.
</t> </t>
<t>In the rest of the document, the terms "signaling adjacency"
<t>In the rest of the document the term &quot;signaling adjacency&quot;, and "remote signaling adjacency" refer specifically to the
or &quot;remote signaling adjacency&quot; refers specifically to the
RSVP-TE signaling adjacency. RSVP-TE signaling adjacency.
</t> </t>
</section> </section>
<section anchor="sig_mp_behavior">
<section anchor="sig_mp_behavior" title="MP Behavior"> <name>MP Behavior</name>
<t>With regard to the MP procedures that are defined in <t>With regard to the MP procedures that are defined in
<xref target="RFC4090"/> this document specifies the following <xref target="RFC4090"/>, this document specifies the following
additional procedures to support RI-RSVP defined in additional procedures to support RI-RSVP as defined in
<xref target="RFC8370"/>. <xref target="RFC8370"/>.
</t> </t>
<t>Each node along an LSP supporting the extensions defined in
<t>Each node along an LSP path supporting the extensions defined in this document <bcp14>MUST</bcp14> also include its router ID in the No
this document MUST also include its router ID in the Node-ID de-ID
sub-object of the RRO object carried in the Resv message of the sub-object of the RRO that is carried in the Resv message of the
corresponding LSP. If the PLR has not included a Node-ID sub-object corresponding LSP. If the PLR has not included a Node-ID sub-object
in the RRO object carried in the Path message and if the PLR is in in the RRO that is carried in the Path message and if the PLR is in
a different IGP area, then the router MUST NOT execute the MP a different IGP area, then the router <bcp14>MUST NOT</bcp14> execute
the MP
procedures specified in this document for those LSPs. Instead, the procedures specified in this document for those LSPs. Instead, the
node MUST execute backward compatibility procedures defined in node <bcp14>MUST</bcp14> execute backward compatibility procedures def ined in
<xref target="upstr_no_support"/> of this document as if the upstream nodes along <xref target="upstr_no_support"/> of this document as if the upstream nodes along
the LSP do not support the extensions defined in this document. the LSP do not support the extensions defined in this document.
</t> </t>
<t>A node receiving a Path message should determine 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. 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
<xref target="upstr_no_support"/> of this document.
</t>
<t>If a matching B-SFRR-Ready Extended Association object is found in
in the Path message and if there is an operational remote Node-ID
signaling adjacency with the PLR (identified by the Association
source) that has advertised RI-RSVP capability (I-bit)
<xref target="RFC8370"/>, then the node MUST consider itself as the
MP for the PLR. The matching and ordering rules for Bypass Summary
FRR Extended Association specified in RSVP-TE Summary FRR
<xref target="RFC8796"/> MUST be followed by the implementations
supporting this document.
<list style="hanging"> <t>A node receiving a Path message should determine:</t>
<t hangText="-">If a matching Bypass Summary FRR Extended Association <ul>
object is included by the PPhop node of an LSP and if a <li>whether the message contains a B-SFRR-Ready Extended
corresponding Node-ID signaling adjacency exists with the ASSOCIATION object with its own address as the bypass destination
PPhop node, then the router MUST conclude it is the NP-MP. address and</li>
</t> <li>whether it has an operational Node-ID signaling adjacency with
</list> the Association Source.</li>
<list style="hanging"> </ul>
<t hangText="-">If a matching Bypass Summary FRR Extended Association
object is included by the Phop node of an LSP and if a
corresponding Node-ID signaling adjacency exists with the Phop
node, then the router MUST conclude it is the LP-MP.
</t>
</list>
</t>
</section>
<section anchor="sig_rem_state" title="&quot;Remote&quot; State on MP"> <t>The node <bcp14>MUST</bcp14> execute the
<t>Once a router concludes it is the MP for a PLR running backward compatibility procedures defined in
refresh-interval independent FRR procedures as described in the <xref target="upstr_no_support"/> of this document if:</t>
preceding section, it MUST create a remote path state for the LSP. <ul>
The only difference between the &quot;remote&quot; path state and <li>the PLR has not included the B-SFRR-Ready Extended
the LSP state is the RSVP_HOP object. The RSVP_HOP object in a ASSOCIATION object,</li>
&quot;remote&quot; path state contains the address that the PLR <li>there is no operational Node-ID signaling
uses to send Node-ID hello messages to the MP. adjacency with the PLR identified by the Association Source address, o
</t> r</li>
<li>the PLR has not advertised the RI-RSVP capability in its
Node-ID-based Hello messages.</li>
</ul>
<t>If a matching B-SFRR-Ready Extended ASSOCIATION object is found
in the Path message and if there is an operational remote Node-ID
signaling adjacency with the PLR (identified by the Association
Source) that has advertised the RI-RSVP capability (I-bit) <xref
target="RFC8370"/>, then the node <bcp14>MUST</bcp14> consider
itself as the MP for the PLR. The matching and ordering rules for
Bypass Summary FRR Extended Association specified in RSVP-TE Summary
FRR <xref target="RFC8796"/> <bcp14>MUST</bcp14> be followed by the
implementations supporting this document.
</t>
<ul>
<li>If a matching Bypass Summary FRR Extended Association object
is included by the PPHOP node of an LSP and if a corresponding
Node-ID signaling adjacency exists with the PPHOP node, then the
router <bcp14>MUST</bcp14> conclude it is the NP-MP.</li>
<li>If a matching Bypass Summary FRR Extended Association object
is included by the PHOP node of an LSP and if a corresponding
Node-ID signaling adjacency exists with the PHOP node, then the
router <bcp14>MUST</bcp14> conclude it is the LP-MP.</li>
</ul>
</section>
<t>The MP MUST consider the &quot;remote&quot; path state corresponding <section anchor="sig_rem_state">
<name>"Remote" State on MP</name>
<t>Once a router concludes it is the MP for a PLR running
refresh-interval independent FRR procedures as described in the
preceding section, it <bcp14>MUST</bcp14> create a remote path state
for the LSP. The only difference between the "remote" path state
and the LSP state is the 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 to the MP.
</t>
<t>The MP <bcp14>MUST</bcp14> consider the "remote" path state corresp
onding
to the LSP automatically deleted if: to the LSP automatically deleted if:
</t>
<list style="hanging"> <ul>
<t hangText="-">The MP later receives a Path message for the LSP with <li>the MP later receives a Path message for the LSP with no
no matching B-SFRR-Ready Extended Association object correspond matching B-SFRR-Ready Extended ASSOCIATION object corresponding to
ing the PLR's IP address contained in the Path RRO,</li>
to the PLR's IP address contained in the Path RRO, or <li>the Node-ID signaling adjacency with the PLR goes down,</li>
</t> <li>the MP receives backup LSP signaling for the LSP from the PLR,</
</list> li>
<list style="hanging"> <li>the MP receives a PathTear for the LSP, or</li>
<t hangText="-">The Node-ID signaling adjacency with the PLR goes down, <li>the MP deletes the LSP state on a local policy or an exception e
or vent.</li>
</t> </ul>
</list> <t>The purpose of "remote" path state is to enable the PLR
<list style="hanging">
<t hangText="-">The MP receives backup LSP signaling for the LSP from t
he PLR or
</t>
</list>
<list style="hanging">
<t hangText="-">The MP receives a PathTear for the LSP, or
</t>
</list>
<list style="hanging">
<t hangText="-">The MP deletes the LSP state on a local policy or an ex
ception event
</t>
</list>
</t>
<t>The purpose of &quot;remote&quot; path state is to enable the PLR
to explicitly tear down the path and reservation states corresponding to explicitly tear down the path and reservation states corresponding
to the LSP by sending a tear message for the &quot;remote&quot; path to the LSP by sending a tear message for the "remote" path
state. Such a message tearing down &quot;remote&quot; path state is state. Such a message tearing down the "remote" path state is
called &quot;Remote&quot; PathTear. called "Remote" PathTear.
</t> </t>
<t>The scenarios in which a "Remote" PathTear is applied are
<t>The scenarios in which a &quot;Remote&quot; PathTear is applied are
described in <xref target="rem_tear"/> of this document. described in <xref target="rem_tear"/> of this document.
</t> </t>
</section> </section>
</section> </section>
<section anchor="failures">
<section anchor="failures" title="Impact of Failures on LSP State"> <name>Impact of Failures on LSP State</name>
<t>This section describes the procedures that must be executed upon <t>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 adjacenc y procedures that must be executed upon detecting RSVP signaling adjacenc y
failures do not impact the RSVP-TE graceful restart mechanisms failures do not impact the RSVP-TE graceful restart mechanisms
(<xref target="RFC3473"/>, <xref target="RFC5063"/>). If a node <xref target="RFC3473"/> <xref target="RFC5063"/>. If a node
executing these procedures acts as a helper for a neighboring router, executing these procedures acts as a helper for a neighboring router,
then the signaling adjacency with the neighbor will be declared as havi ng then the signaling adjacency with the neighbor will be declared as havi ng
failed only after taking into account the grace period extended for the failed only after taking into account the grace period extended for the
neighbor by this node acting as a helper. neighbor by this node acting as a helper.
</t> </t>
<t>Node failures are detected from the state of Node-ID Hello
<t>Node failures are detected from the state of Node-ID hello
sessions established with immediate neighbors. RSVP-TE Scaling sessions established with immediate neighbors. RSVP-TE Scaling
Techniques <xref target="RFC8370"/> recommends that each node Techniques <xref target="RFC8370"/> recommends that each node
establish Node-ID hello sessions with all its immediate neighbors. establish Node-ID Hello sessions with all its immediate neighbors.
Non-immediate PLR or MP failure is detected from the state of remote A non-immediate PLR or MP failure is detected from the state of remote
signaling adjacency established according to signaling adjacency established according to
<xref target="sig_rem_adjacency"/> of this document. <xref target="sig_rem_adjacency"/> of this document.
</t> </t>
<section anchor="failures_nonmp">
<section anchor="failures_nonmp" title="Non-MP Behavior"> <name>Non-MP Behavior</name>
<t>When a router detects the Phop link or the Phop node failure for an LS <t>When a router detects the PHOP link or the PHOP node failure for an
P LSP
and the router is not an MP for the LSP, then it MUST send a Condition and the router is not an MP for the LSP, then it <bcp14>MUST</bcp14> s
al end a Conditional
PathTear (refer to <xref target="cnd_path_tear"/> of this document) PathTear (refer to <xref target="cnd_path_tear"/> of this document)
and delete the PSB and RSB states corresponding to and delete the PSB and RSB states corresponding to
the LSP. the LSP.
</t> </t>
</section> </section>
<section anchor="failures_lpmp">
<section anchor="failures_lpmp" title="LP-MP Behavior"> <name>LP-MP Behavior</name>
<t>When the Phop link for an LSP fails on a router that is an LP-MP for <t>When the PHOP link for an LSP fails on a router that is an LP-MP fo
the LSP, the LP-MP MUST retain the PSB and RSB states corresponding r
to the LSP till the occurrence of any of the following events. the LSP, the LP-MP <bcp14>MUST</bcp14> retain the PSB and RSB states c
orresponding
<list style="hanging"> to the LSP until the occurrence of any of the following events:
<t hangText="-">The Node-ID signaling adjacency with the Phop PLR goes d </t>
own, or <ul>
</t> <li>the Node-ID signaling adjacency with the PHOP PLR goes down,</li
</list> >
<list style="hanging"> <li>the MP receives a normal or "Remote" PathTear for its PSB, or</l
<t hangText="-">The MP receives a normal or &quot;Remote&quot; PathTear i>
for its PSB, or <li>the MP receives a ResvTear for its RSB.</li>
</t> </ul>
</list> <t>When a router that is an LP-MP for an LSP detects PHOP node failure
<list style="hanging"> from the Node-ID signaling adjacency state, the LP-MP <bcp14>MUST</bcp
<t hangText="-">The MP receives a ResvTear for its RSB. 14> send a normal
</t>
</list>
</t>
<t>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 norm
al
PathTear and delete the PSB and RSB states corresponding to the LSP. PathTear and delete the PSB and RSB states corresponding to the LSP.
</t> </t>
</section> </section>
<section anchor="failures_npmp" title="NP-MP Behavior">
<t>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
MUST retain the PSB and RSB states corresponding to the LSP till the
occurrence of any of the following events.
<list style="hanging">
<t hangText="-">The remote Node-ID signaling adjacency with the PPhop PL
R goes down, or
</t>
</list>
<list style="hanging">
<t hangText="-">The MP receives a normal or &quot;Remote&quot; PathTear
for its PSB, or
</t>
</list>
<list style="hanging">
<t hangText="-">The MP receives a ResvTear for its RSB.
</t>
</list>
</t>
<t>When a router that is an NP-MP for an LSP did not detect the Phop link
or the Phop node failure, but receives a Conditional PathTear from the
Phop node, then the router MUST retain the PSB and RSB states correspo
nding to the
LSP till the occurrence of any of the following events.
<list style="hanging">
<t hangText="-">The remote Node-ID signaling adjacency with the PPhop PL
R goes down, or
</t>
</list>
<list style="hanging">
<t hangText="-">The MP receives a normal or &quot;Remote&quot; PathTear
for its PSB, or
</t>
</list>
<list style="hanging">
<t hangText="-">The MP receives a ResvTear for its RSB.
</t>
</list>
</t>
<t>Receiving a Conditional PathTear from the Phop node will not impact <section anchor="failures_npmp">
the &quot;remote&quot; state from the PPhop PLR. Note that the Phop <name>NP-MP Behavior</name>
node must have sent the Conditional PathTear as it was not an MP for <t>When a router that is an NP-MP for an LSP detects PHOP link failure
the LSP (see <xref target="failures_nonmp"/> of this document). or PHOP node failure from the Node-ID signaling adjacency, the router
</t> <bcp14>MUST</bcp14> retain the PSB and RSB states corresponding to the
LSP until the
occurrence of any of the following events:
</t>
<ul>
<li>the remote Node-ID signaling adjacency with the PPHOP PLR goes d
own,</li>
<li>the MP receives a normal or "Remote" PathTear for its PSB, or</l
i>
<li>the MP receives a ResvTear for its RSB.</li>
</ul>
<t>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
from the PHOP node, then the router <bcp14>MUST</bcp14> retain the
PSB and RSB states corresponding to the LSP until the occurrence of
any of the following events:
</t>
<ul>
<li>the remote Node-ID signaling adjacency with the PPHOP PLR goes d
own,</li>
<li>the MP receives a normal or "Remote" PathTear for its PSB, or</l
i>
<li>the MP receives a ResvTear for its RSB.</li>
</ul>
<t>Receiving a Conditional PathTear from the PHOP node will not
impact 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 (see <xref target="failures_nonmp"/> of this document).
</t>
<t>In the example topology <xref target="example_network"/>, we assume <t>In the example topology in <xref target="example_network"/>, we ass
C &amp; D are the NP-MPs for the PLRs A &amp; B respectively. Now when ume
A-B link fails, as B is not an MP and its Phop link has failed, B will C and D are the NP-MPs for the PLRs A and B, respectively. Now, when t
delete the LSP state (this behavior is required for unprotected LSPs - he
A-B link fails, B will delete the LSP state, because B is not an MP an
d its PHOP link has failed (this behavior is required for unprotected LSPs;
refer to <xref target="failures_nonmp"/> of this document). In the dat a refer to <xref target="failures_nonmp"/> of this document). In the dat a
plane, that would require B to delete the label forwarding entry plane, that would require B to delete the label forwarding entry
corresponding to the LSP. So if B's downstream nodes C and D continue to corresponding to the LSP. Thus, if B's downstream nodes C and D contin ue to
retain state, it would not be correct for D to continue to assume itse lf retain state, it would not be correct for D to continue to assume itse lf
as the NP-MP for the PLR B. as the NP-MP for the PLR B.
</t> </t>
<t>The mechanism that enables D to stop considering itself as the
<t>The mechanism that enables D to stop considering itself as the NP-MP for B and delete the corresponding "remote" path
NP-MP for B and delete the corresponding &quot;remote&quot; path
state is given below. state is given below.
</t>
<ol>
<li>When C receives a Conditional PathTear from B, it decides to
retain the LSP state as it is the NP-MP of the PLR A. It also check
s
whether PHOP B had previously signaled availability of node
protection. As B had previously signaled NP availability by
including the B-SFRR-Ready Extended ASSOCIATION object, C removes th
e
B-SFRR-Ready Extended ASSOCIATION object containing the Association
Source set to B from the Path message and triggers a Path to
D.</li>
<li>When D receives the Path message, it realizes that it is no
longer the NP-MP for B and so it deletes the corresponding
"remote" path state. D does not propagate the Path further down
because the only change is that the B-SFRR-Ready Extended
ASSOCIATION object corresponding to Association Source B is no
longer present in the Path message.</li>
</ol>
</section>
<list style="hanging"> <section anchor="failures_lpnpmp">
<t hangText="1.">When C receives a Conditional PathTear from B, it <name>Behavior of a Router That Is Both the LP-MP and NP-MP</name>
decides to retain LSP state as it is the NP-MP of the PLR A. <t>A router may simultaneously be the LP-MP and the NP-MP for the
It also checks whether Phop B had previously signaled PHOP and PPHOP nodes of an LSP, respectively. If the PHOP link
availability of node protection. As B had previously signaled fails on such a node, the node <bcp14>MUST</bcp14> retain the PSB
NP availability by including B-SFRR-Ready Extended Association and RSB states corresponding to the LSP until the occurrence of any
object, C removes the B-SFRR-Ready Extended Association of the following events:
object containing Association Source set to B from the Path </t>
message and trigger a Path to D. <ul>
</t> <li>both Node-ID signaling adjacencies with PHOP and PPHOP nodes go
</list> down,</li>
<list style="hanging"> <li>the MP receives a normal or "Remote" PathTear for its PSB, or</l
<t hangText="2.">When D receives the Path message, it realizes that it i>
is no longer the NP-MP for B and so it deletes the <li>the MP receives a ResvTear for its RSB.</li>
corresponding &quot;remote&quot; path state. D does not </ul>
propagate the Path further down because the only change is that <t>If a router that is both an LP-MP and an NP-MP detects PHOP node
the B-SFRR-Ready Extended Association object corresponding to failure, then the node <bcp14>MUST</bcp14> retain the PSB and RSB stat
Association Source B is no longer present in the Path message. es corresponding
</t> to the LSP until the occurrence of any of the following events:
</list> </t>
</t> <ul>
</section> <li>the remote Node-ID signaling adjacency with the PPHOP PLR goes d
own,</li>
<section anchor="failures_lpnpmp" title="Behavior of a Router that is both <li>the MP receives a normal or "Remote" PathTear for its PSB, or</l
LP-MP and NP-MP"> i>
<t>A router may simultaneously be the LP-MP as well as the NP-MP for the <li>the MP receives a ResvTear for its RSB.</li>
Phop and the PPhop nodes respectively of an LSP. If the Phop link fail </ul>
s </section>
on such a node, the node MUST retain the PSB and RSB states correspond </section>
ing
to the LSP till the occurrence of any of the following events.
<list style="hanging">
<t hangText="-">Both Node-ID signaling adjacencies with Phop and PPhop n
odes go down, or
</t>
</list>
<list style="hanging">
<t hangText="-">The MP receives a normal or &quot;Remote&quot; PathTear
for its PSB, or
</t>
</list>
<list style="hanging">
<t hangText="-">The MP receives a ResvTear for its RSB.
</t>
</list>
</t>
<t>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 correspondin
g
to the LSP till the occurrence of any of the following events.
<list style="hanging">
<t hangText="-">The remote Node-ID signaling adjacency with the PPhop PL
R goes down, or
</t>
</list>
<list style="hanging">
<t hangText="-">The MP receives a normal or &quot;Remote&quot; PathTear
for its PSB, or
</t>
</list>
<list style="hanging">
<t hangText="-">The MP receives a ResvTear for its RSB.
</t>
</list>
</t>
</section>
</section>
<section anchor="cnd_path_tear" title="Conditional PathTear"> <section anchor="cnd_path_tear">
<t>In the example provided in <xref target="failures_npmp"/> of this docu <name>Conditional PathTear</name>
ment, B <t>In the example provided in <xref target="failures_npmp"/> of this
deletes the PSB and RSB states corresponding to the LSP once B detects document, B deletes the PSB and RSB states corresponding to the LSP
its Phop link went down as B is not an MP. If B were to send a once B detects its PHOP link has gone down as B is not an MP. If B
PathTear normally, then C would delete LSP state immediately. In were to send a PathTear normally, then C would delete the LSP state
order to avoid this, there should be some mechanism by which B can immediately. In order to avoid this, there should be some mechanism by
indicate to C that B does not require the receiving node to which B can indicate to C that B does not require the receiving node
unconditionally delete the LSP state immediately. For this, B MUST to unconditionally delete the LSP state immediately. For this, B
add a new optional CONDITIONS object in the PathTear. The CONDITIONS <bcp14>MUST</bcp14> add a new optional CONDITIONS object in the
object is defined in <xref target="cnd_path_tear_obj"/> of this documen PathTear. The CONDITIONS object is defined in <xref
t. If node C target="cnd_path_tear_obj"/> of this document. If node C also
also understands the new object, then C MUST NOT delete the LSP state understands the new object, then C <bcp14>MUST NOT</bcp14> delete the
if it is an NP-MP. LSP state if it is an NP-MP.
</t> </t>
<section anchor="cnd_path_tear_send" title="Sending Conditional PathTear"> <section anchor="cnd_path_tear_send">
<t>A router that is not an MP for an LSP MUST delete the PSB and RSB <name>Sending the Conditional PathTear</name>
states corresponding to the LSP if the Phop link or the Phop Node-ID <t>A router that is not an MP for an LSP <bcp14>MUST</bcp14> delete th
e PSB and RSB
states corresponding to the LSP if the PHOP link or the PHOP Node-ID
signaling adjacency goes down (see <xref target="failures_nonmp"/> of this document). signaling adjacency goes down (see <xref target="failures_nonmp"/> of this document).
The router MUST send a Conditional PathTear if the following are also The router <bcp14>MUST</bcp14> send a Conditional PathTear if the foll
true. owing are also
true:
<list style="hanging"> </t>
<t hangText="-">The ingress has requested node protection for the LSP, a <ul>
nd <li>the ingress has requested node protection for the LSP and</li>
</t> <li>no PathTear is received from the upstream node.</li>
</list> </ul>
<list style="hanging"> </section>
<t hangText="-">No PathTear is received from the upstream node
</t>
</list>
</t>
</section>
<section anchor="cnd_path_tear_recv" title="Processing Conditional PathTear <section anchor="cnd_path_tear_recv">
"> <name>Processing the Conditional PathTear</name>
<t>When a router that is not an NP-MP receives a Conditional PathTear, <t>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 <bcp14>MUST</bcp14> delete the PSB and RSB states correspondi
ng 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 <bcp14>MUST NOT</bcp14> 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.
</t> </t>
<t>When a node that is an NP-MP receives a Conditional PathTear, it
<t>When a node that is an NP-MP receives a Conditional PathTear, it <bcp14>MUST NOT</bcp14> delete the LSP state. The node <bcp14>MUST</bc
MUST NOT delete LSP state. The node MUST check whether the p14> check whether the
Phop node had previously included the B-SFRR-Ready Extended Associatio PHOP node had previously included the B-SFRR-Ready Extended ASSOCIATIO
n N
object in the Path. If the object had been included previously by the object in the Path. If the object had been included previously by the
Phop, then the node processing the Conditional PathTear from the Phop PHOP, then the node processing the Conditional PathTear from the PHOP
MUST remove the corresponding object and trigger a Path downstream. <bcp14>MUST</bcp14> remove the corresponding object and trigger a Path
</t> downstream.
</t>
<t>If a Conditional PathTear is received from a neighbor that has not <t>If a Conditional PathTear is received from a neighbor that has not
advertised support (refer to <xref target="compatible"/> of this docum ent) for the advertised support (refer to <xref target="compatible"/> of this docum ent) for the
new procedures defined in this document, then the node MUST new procedures defined in this document, then the node <bcp14>MUST</bc
consider the message as a normal PathTear. The node MUST propagate p14>
consider the message as a normal PathTear. The node <bcp14>MUST</bcp14
> propagate
the normal PathTear downstream and delete the LSP state. the normal PathTear downstream and delete the LSP state.
</t> </t>
</section> </section>
<section anchor="cnd_path_tear_obj">
<section anchor="cnd_path_tear_obj" title="CONDITIONS Object"> <name>CONDITIONS Object</name>
<t>Any implementation that does not support Conditional PathTear <t>Any implementation that does not support a Conditional PathTear
needs to ignore the new object but process the message as a normal needs to ignore the new object but process the message as a normal
PathTear without generating any error. For this reason, the Class-Num PathTear without generating any error. For this reason, the Class-Num
of the new object follows the pattern 10bbbbbb where 'b' represents a of the new object follows the pattern 10bbbbbb, where "b" represents a
bit. bit.
(The behavior for objects of this type is specified in Section 3.10 of (The behavior for objects of this type is specified in <xref target="R
<xref target="RFC2205"/>). FC2205" sectionFormat="of" section="3.10"/>.)
</t> </t>
<t>The new object is called the "CONDITIONS" object and will
<t>The new object is called as &quot;CONDITIONS&quot; object that will
specify the conditions under which default processing rules of the specify the conditions under which default processing rules of the
RSVP-TE message MUST be invoked. RSVP-TE message <bcp14>MUST</bcp14> be invoked.
</t> </t>
<t>The object has the following format:</t>
<t>The object has the following format: <figure anchor="fig_conditions">
<name>CONDITIONS Object</name>
<figure align="left" anchor="fig_conditions" title="CONDITIONS Object"> <artwork align="left"><![CDATA[
<artwork>
<![CDATA[
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|
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
]]> ]]></artwork>
</artwork> </figure>
</figure>
<?rfc subcompact="yes" ?> <dl spacing="compact" newline="false">
<list style="none"> <dt>Class:</dt> <dd>135</dd>
<t>Class: TBA1<br></br> <dt>C-type:</dt> <dd>1</dd>
C-type: 1<br></br> <dt>Flags:</dt> <dd>32 bit field</dd>
Flags is a 32 bit field. Bit 31 is the Merge-point condition (M) bi <dt>M:</dt> <dd>Bit 31 is the Merge-point condition (M) bit.
t: If the M bit is set to 1, then the PathTear message <bcp14>MUST</bc
If the M bit is set to 1, then the PathTear message MUST be process p14> be processed
ed according to the receiver router role, i.e., if the receiving route
according to the receiver router role, i.e. if the receiving router r
is an MP or not for the LSP. If it is not set, then the PathTear is an MP or not for the LSP. If it is not set, then the PathTear
message MUST be processed as a normal PathTear message for the LSP. message <bcp14>MUST</bcp14> be processed as a normal PathTear messa
<br></br> ge for the LSP.</dd>
Bits 0-30 are reserved, they MUST be set to zero on transmission an </dl>
d <t>Bits 0-30 are reserved; they <bcp14>MUST</bcp14> be set to zero on transmis
MUST be ignored on receipt.<br></br> sion and
</t> <bcp14>MUST</bcp14> be ignored on receipt.</t>
</list> </section>
</t> </section>
</section>
</section>
<section anchor="rem_tear" title="Remote State Teardown"> <section anchor="rem_tear">
<t>If the ingress wants to tear down the LSP because of a management <name>Remote State Teardown</name>
<t>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 a signaling to perform state cleanup. In this case, the PLR <bcp14>MUST<
&quot;Remote&quot; PathTear message instructing the MP to delete the P /bcp14> send a
SB "Remote" PathTear message instructing the MP to delete the PSB
and RSB states corresponding to the LSP. The TTL in the &quot;Remote&q and RSB states corresponding to the LSP. The TTL in the "Remote"
uot; PathTear message <bcp14>MUST</bcp14> be set to 255. Doing this enables
PathTear message MUST be set to 255. Doing this enables LSP state clea LSP state cleanup
nup
when the LSP is being locally repaired. when the LSP is being locally repaired.
</t> </t>
<t>Consider that node C in the example topology <t>Consider that node C in the example topology
(<xref target="example_network"/>) has gone down and node B locally (<xref target="example_network"/>) has gone down and node B locally
repairs the LSP. repairs the LSP:
<list style="hanging"> </t>
<t hangText="1.">Ingress A receives a management event to tear down the <ol>
LSP. <li>Ingress A receives a management event to tear down the LSP.</li>
</t> <li>A sends a normal PathTear for the LSP to B.</li>
</list> <li>Assume B has not initiated the backup signaling for the
<list style="hanging"> LSP during local repair. To enable LSP state cleanup, B sends a
<t hangText="2.">A sends a normal PathTear for the LSP to B. "Remote" PathTear with the destination IP address set to
</t> that of the node D used in the Node-ID signaling adjacency with D
</list> and the RSVP_HOP object containing the local address used in the
<list style="hanging"> Node-ID signaling adjacency.</li>
<t hangText="3.">Assume B has not initiated the backup signaling for the <li>B then deletes the PSB and RSB states corresponding to the LSP.</li
LSP during local repair. To enable LSP state cleanup, B sends a >
&quot;Remote&quot; PathTear with destination IP address set to <li>On D, there would be a remote signaling adjacency with
that of the node D used in the Node-ID signaling adjacency with B, and so D accepts the "Remote" PathTear and deletes the
D, PSB and RSB states corresponding to the LSP.</li>
and the RSVP_HOP object containing local address used in the </ol>
Node-ID signaling adjacency.
</t>
</list>
<list style="hanging">
<t hangText="4.">B then deletes the PSB and RSB states corresponding to
the LSP.
</t>
</list>
<list style="hanging">
<t hangText="5.">On D there would be a remote signaling adjacency with
B and so D accepts the &quot;Remote&quot; PathTear and delete th
e
PSB and RSB states corresponding to the LSP.
</t>
</list>
</t>
<section anchor="lcl_repair_fail" title="PLR Behavior on Local Repair Failu <section anchor="lcl_repair_fail">
re"> <name>PLR Behavior on Local Repair Failure</name>
<t>If local repair fails on the PLR after a failure, the PLR MUST send a <t>If local repair fails on the PLR after a failure, the PLR <bcp14>MU
&quot;Remote&quot; PathTear to the MP. The purpose of this is to clean ST</bcp14> send a
up LSP state from the PLR to the Egress. Upon receiving the PathTear, "Remote" PathTear to the MP. The purpose of this is to clean
the MP MUST delete the states corresponding to the LSP and also up LSP state from the PLR to the egress. Upon receiving the PathTear,
propagate the PathTear downstream thereby achieving state cleanup from the MP <bcp14>MUST</bcp14> delete the states corresponding to the LSP
and also
propagate the PathTear downstream, thereby achieving state cleanup fro
m
all downstream nodes up to the LSP egress. Note that in the case of li nk all downstream nodes up to the LSP egress. Note that in the case of li nk
protection, the PathTear MUST be directed to the LP-MP's Node-ID IP protection, the PathTear <bcp14>MUST</bcp14> be directed to the LP-MP'
address rather than the Nhop interface address. s Node-ID IP
</t> address rather than the NHOP interface address.
</section> </t>
</section>
<section anchor="resv_rro_chng" title="PLR Behavior on Resv RRO Change"> <section anchor="resv_rro_chng">
<t>When a PLR router that has already made NP available for an LSP <name>PLR Behavior on Resv RRO Change</name>
<t>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 indicates 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 path of that the router's former NP-MP is no longer present on the path of
the LSP, then the router MUST send a &quot;Remote&quot; PathTear the LSP, then the router <bcp14>MUST</bcp14> send a "Remote" PathTear
directly to its former NP-MP. directly to its former NP-MP.
</t> </t>
<t>In the example topology <xref target="example_network"/>, assume node <t>In the example topology in <xref target="example_network"/>, assume
node
A has made node protection available for an LSP and C has concluded it A has made node 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 t he is the NP-MP for PLR A. When the B-C link fails, then C, implementing the
procedure specified in <xref target="failures_lpnpmp"/> of this procedure specified in <xref target="failures_lpnpmp"/> of this
document, will retain the states corresponding to the LSP until: the document, will retain the states corresponding to the LSP until one of
remote Node-ID signaling adjacency with A goes down, or a PathTear or the following occurs:</t>
a ResvTear is received for its PSB or RSB respectively. If B also has <ul>
made node protection available, B will eventually complete backup LSP <li>the remote Node-ID signaling adjacency with A goes down
signaling with its NP-MP D and trigger a Resv to A with RRO changed. or</li>
The new RRO of the LSP carried in the Resv will not contain C. When A <li>a PathTear or a ResvTear is received for its PSB or RSB,
processes the Resv message with a new RRO not containing C - its forme respectively.</li>
r </ul>
NP-MP, A sends a &quot;Remote&quot; PathTear to C. When C receives <t>If B also has made node protection available, B will eventually
the &quot;Remote&quot; PathTear for its PSB state, C will send a norma complete backup LSP signaling with its NP-MP D and trigger a Resv
l to A with RRO changed. The new RRO of the LSP carried in the Resv
PathTear downstream to D and delete both the PSB and RSB states will not contain C. When A processes the Resv message with a new
corresponding to the LSP. As D has already received backup LSP RRO not containing C, its former NP-MP, A, sends a "Remote"
signaling from B, D will retain control plane and forwarding states PathTear to C. When C receives the "Remote" PathTear for its PSB
corresponding to the LSP. state, C will send a normal PathTear downstream to D and delete
</t> both the PSB and RSB states corresponding to the LSP. As D has
</section> already received backup LSP signaling from B, D will retain the contro
l
<section anchor="lcl_repair_preempt" title="LSP Preemption during Local Rep plane and forwarding states corresponding to the LSP.
air"> </t>
<section anchor="lcl_repair_preempt_lpnp" title="Preemption on LP-MP after </section>
Phop Link Failure"> <section anchor="lcl_repair_preempt">
<t>If an LSP is preempted on an LP-MP after its Phop link has already <name>LSP Preemption During Local Repair</name>
failed but the backup LSP has not been signaled yet as part of local <section anchor="lcl_repair_preempt_lpnp">
repair procedure, then the node MUST send a normal PathTear and delete <name>Preemption on LP-MP After PHOP Link Failure</name>
<t>If an LSP is preempted on an LP-MP after its PHOP link has alread
y
failed but the backup LSP has not been signaled yet as part of the loc
al
repair procedure, then the node <bcp14>MUST</bcp14> send a normal Path
Tear and delete
both the PSB and RSB states corresponding to the LSP. As the LP-MP has 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 LSP signal ing, retained the LSP state expecting the PLR to initiate backup LSP signal ing,
preemption would bring down the LSP and the node would not be LP-MP an preemption would bring down the LSP and the node would not be LP-MP an
y ymore, requiring the node to clean up the LSP state.
more requiring the node to clean up the LSP state. </t>
</t> </section>
</section>
<section anchor="lcl_repair_preempt_npmp" title="Preemption on NP-MP after <section anchor="lcl_repair_preempt_npmp">
Phop Link Failure"> <name>Preemption on NP-MP After PHOP Link Failure</name>
<t>If an LSP is preempted on an NP-MP after its Phop link has already <t>If an LSP is preempted on an NP-MP after its PHOP link has alread
y
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 <bcp14>MUST</bcp14> send a normal PathTear and delete the PSB and RSB
corresponding to the LSP. As the NP-MP has retained LSP state states
corresponding to the LSP. As the NP-MP has retained the LSP state
expecting the PLR to initiate backup LSP signaling, preemption expecting the PLR to initiate backup LSP signaling, preemption
would bring down the LSP and the node would not be NP-MP any more would bring down the LSP and the node would not be NP-MP anymore,
requiring the node to clean up LSP state. requiring the node to clean up LSP state.
</t> </t>
<t>Consider that B-C link goes down on the same example topology <t>Consider that the B-C link goes down on the same example topology
(<xref target="example_network"/>). As C is the NP-MP for the PLR A, C (<xref target="example_network"/>). As C is the NP-MP for the PLR A, C
will retain LSP state. will retain the LSP state.
<list style="hanging"> </t>
<t hangText="1.">The LSP is preempted on C.
</t> <ol>
</list> <li>The LSP is preempted on C.</li>
<list style="hanging"> <li>C will delete the RSB state corresponding to the
<t hangText="2.">C will delete the RSB state corresponding to the LSP. LSP. However, C cannot send a PathErr or a ResvTear to the PLR A
But C cannot send a PathErr or a ResvTear to the PLR A because because the backup LSP has not been signaled yet.</li>
the backup LSP has not been signaled yet. <li>As the only reason for C having retained state after PHOP
</t> node failure was that it was an NP-MP, C sends a normal PathTear
</list> to D and also deletes its PSB state. D would also delete the PSB
<list style="hanging"> and RSB states on receiving a PathTear from C.</li>
<t hangText="3.">As the only reason for C having retained state after <li>B starts backup LSP signaling to D. However, as D does not hav
Phop node failure was that it was an NP-MP, C sends a normal e
PathTear to D and delete its PSB state also. D would also delete the LSP state, it will reject the backup LSP Path message and send
the a
PSB and RSB states on receiving a PathTear from C. PathErr to B.</li>
</t> <li>B will delete its reservation and send a ResvTear to A.</li>
</list> </ol>
<list style="hanging"> </section>
<t hangText="4.">B starts backup LSP signaling to D. But as D does </section>
not have the LSP state, it will reject the backup LSP Path and
send a PathErr to B.
</t>
</list>
<list style="hanging">
<t hangText="5.">B will delete its reservation and send a ResvTear to A.
</t>
</list>
</t>
</section> </section>
</section>
</section>
<section anchor="compatible" title="Backward Compatibility Procedures"> <section anchor="compatible">
<t>&quot;Refresh interval Independent FRR&quot; or RI-RSVP-FRR refers to th <name>Backward Compatibility Procedures</name>
e <t>"Refresh-Interval Independent RSVP-TE FRR" and "RI-RSVP-FRR" refer to
set of procedures defined in this document to eliminate the reliance of the
set 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
<xref target="RFC8796"/> may apply to implementations that do not support <xref target="RFC8796"/> may apply to implementations that do not support
RI-RSVP-FRR. On the other hand, RI-RSVP-FRR extensions relating to LSP RI-RSVP-FRR. On the other hand, RI-RSVP-FRR extensions relating to LSP
state cleanup namely Conditional and &quot;Remote&quot; PathTear require state cleanup, namely Conditional and "Remote" PathTears, require
support from one-hop and two-hop neighboring nodes along the LSP path. support from one-hop and two-hop neighboring nodes along the LSP.
So procedures that fall under LSP state cleanup category MUST NOT be Thus, procedures that fall under the LSP state cleanup category <bcp14>MU
turned on if any of the nodes involved in the node protection FRR i.e. ST NOT</bcp14> be
the PLR, the MP and the intermediate node in the case of NP, does not 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) do not
support RI-RSVP-FRR extensions. Note that for LSPs requesting link support RI-RSVP-FRR extensions. Note that for LSPs requesting link
protection, only the PLR and the LP-MP MUST support the extensions. protection, only the PLR and the LP-MP <bcp14>MUST</bcp14> support the ex
</t> tensions.
<section anchor="compat_detect" title="Detecting Support for Refresh interv </t>
al Independent FRR">
<t>An implementation supporting RI-RSVP-FRR extensions MUST set the flag <section anchor="compat_detect">
&quot;Refresh interval Independent RSVP&quot; or RI-RSVP flag in the <name>Detecting Support for Refresh-Interval Independent RSVP-TE FRR</
name>
<t>An implementation supporting RI-RSVP-FRR extensions <bcp14>MUST</bc
p14> set the RI-RSVP Capable flag in the
CAPABILITY object carried in Hello messages as specified in RSVP-TE CAPABILITY object carried in Hello messages as specified in RSVP-TE
Scaling Techniques <xref target="RFC8370"/>. If an implementation does Scaling Techniques <xref target="RFC8370"/>. If an implementation does
not set the flag even if it supports RI-RSVP-FRR extensions, then its not set the flag even if it supports RI-RSVP-FRR extensions, then its
neighbors will view the node as any node that does not support the neighbors will view the node as any node that does not support the
extensions. extensions.
<list style="hanging"> </t>
<t hangText="-">As nodes supporting the RI-RSVP-FRR extensions initiate <ul>
Node-ID based signaling adjacency with all immediate neighbors, <li>As nodes supporting the RI-RSVP-FRR extensions initiate
such a node on the path of a protected LSP can determine whether Node-ID-based signaling adjacency with all immediate neighbors,
its Phop and Nhop neighbors support RI-RSVP-FRR enhancements. such a node on the path of a protected LSP can determine whether
</t> its PHOP and NHOP neighbors support RI-RSVP-FRR enhancements.</li>
</list>
<list style="hanging">
<t hangText="-">As nodes supporting the RI-RSVP-FRR extensions also initi
ate
Node-ID based signaling adjacency with the NNhop along the path of
the LSP requested node protection (see <xref target="sig_plr_behav
ior"/> of this document),
each node along the LSP path can determine whether its NNhop node
supports RI-RSVP-FRR enhancements. If the NNhop (a) does not reply
to remote Node-ID Hello messages or (b) does not set the RI-RSVP f
lag
in the CAPABILITY object carried in its Node-ID Hello messages, th
en
the node acting as the PLR can conclude that NNhop does not suppor
t
RI-RSVP-FRR extensions.
</t>
</list>
<list style="hanging">
<t hangText="-">If node protection is requested for an LSP and if (a)
the PPhop node has not included a matching B-SFRR-Ready Extended
Association object in its Path messages or (b) the PPhop node has
not initiated remote Node-ID Hello messages or (c) the PPhop node
does not set the RI-RSVP flag in the CAPABILITY object carried
in its Node-ID Hello messages, then the node MUST conclude
that the PLR does not support RI-RSVP-FRR extensions.
</t>
</list>
</t>
</section>
<section anchor="compat_procedures" title="Procedures for Backward Compatib <li>As nodes supporting the RI-RSVP-FRR extensions also initiate
ility"> Node-ID-based signaling adjacency with the NNHOP along the path of
<t>Every node that supports RI-RSVP-FRR MUST support the procedures define the LSP requesting node protection (see <xref
d target="sig_plr_behavior"/> of this document), each node along the
LSP can determine whether its NNHOP node supports RI-RSVP-FRR
enhancements. If the NNHOP (a) 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-ID Hello messages, then the
node acting as the PLR can conclude that NNHOP does not support
RI-RSVP-FRR extensions.</li>
<li>If node protection is requested for an LSP and if (a) the
PPHOP node has not included a matching B-SFRR-Ready Extended
ASSOCIATION object in its Path messages, (b) the PPHOP node has
not initiated remote Node-ID Hello messages, or (c) the PPHOP node
does not set the RI-RSVP flag in the CAPABILITY object carried in
its Node-ID Hello messages, then the node <bcp14>MUST</bcp14>
conclude that the PLR does not support RI-RSVP-FRR
extensions.</li>
</ul>
</section>
<section anchor="compat_procedures">
<name>Procedures for Backward Compatibility</name>
<t>Every node that supports RI-RSVP-FRR <bcp14>MUST</bcp14> support th
e procedures defined
in this section in order to support backward compatibility for in this section in order to support backward compatibility for
those subset of LSPs that also traverse nodes that do not support those subsets of LSPs that also traverse nodes that do not support
RI-RSVP-FRR. RI-RSVP-FRR.
</t> </t>
<section anchor="dnstr_no_support" title="Lack of support on Downstream No
de">
<t>The procedures on the downstream direction are as follows.
<list style="hanging">
<t hangText="-">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 &quot;refresh period&quot; in the TIME_VALUES object carried
in the Path messages to the default short refresh interval.
</t>
</list>
<list style="hanging">
<t hangText="-">If node protection is requested for the LSP and the NNhop
node along the LSP path does not support the RI-RSVP-FRR extensio
ns,
then the node MUST reduce the &quot;refresh period&quot; in the
TIME_VALUES object carried in the Path messages to the default sh
ort
refresh interval.
</t>
</list>
</t>
<t>If a node reduces the refresh time using the above procedures, it
MUST NOT send any &quot;Remote&quot; PathTear or Conditional PathTear
message to the downstream node.
</t>
<t>Consider the example topology in <xref target="example_network"/>.
If C does not support the RI-RSVP-FRR extensions, then:
<list style="hanging">
<t hangText="-">A and B reduce the refresh time to the default
short refresh interval of 30 seconds and trigger a Path message
</t>
</list>
<list style="hanging">
<t hangText="-">If B is not an MP and if Phop link of B fails, B
cannot send 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 if A did not set long refresh in the TIME_VALUES
object carried in the Path messages sent earlier.
</t>
</list>
</t>
</section>
<section anchor="upstr_no_support" title="Lack of support on Upstream Node <section anchor="dnstr_no_support">
"> <name>Lack of Support on Downstream Nodes</name>
<t>The procedures are as follows.
<list style="hanging">
<t hangText="-">If a node finds that the Phop node along the LSP path doe
s
not support the RI-RSVP-FRR extensions, then the node MUST reduce
the &quot;refresh period&quot; in the TIME_VALUES object carried
in
the Resv messages to the default short refresh interval.
</t>
</list>
<list style="hanging">
<t hangText="-">If node protection is requested for the LSP and the Phop
node along the LSP path does not support the RI-RSVP-FRR
extensions, then the node MUST reduce the &quot;refresh
period&quot; in the TIME_VALUES object carried in the Path
messages to the default short refresh interval (thus, the Nhop
can use compatible values when sending a Resv).
</t>
</list>
<list style="hanging">
<t hangText="-">If node protection is requested for the LSP and the
PPhop node does not support the RI-RSVP-FRR extensions, then
the node MUST reduce the &quot;refresh period&quot; in the
TIME_VALUES object carried in the Resv messages to the default
short refresh interval.
</t>
</list>
<list style="hanging">
<t hangText="-">If the node reduces the refresh time using the above
procedures, it MUST NOT execute MP procedures specified in
<xref target="failures"/> of this document.
</t>
</list>
</t>
</section>
<section anchor="incr_deploy" title="Incremental Deployment"> <t>The procedures on the downstream direction are as follows:</t>
<t>The backward compatibility procedures described in the previous <ul>
sub-sections imply that a router supporting the RI-RSVP-FRR <li>If a node finds that the NHOP node along the LSP does not
support the RI-RSVP-FRR extensions, then the node
<bcp14>MUST</bcp14> reduce the "refresh period" in the
TIME_VALUES object carried in the Path messages to the default
short refresh interval.</li>
<li>If node protection is requested for the LSP and the NNHOP
node along the LSP does not support the RI-RSVP-FRR
extensions, then the node <bcp14>MUST</bcp14> reduce the
"refresh period" in the TIME_VALUES object carried in the Path
messages to the default short refresh interval.</li>
</ul>
<t>If a node reduces the refresh time using the above procedures,
it <bcp14>MUST NOT</bcp14> send any "Remote" PathTear or
Conditional PathTear message to the downstream node.</t>
<t>Consider the example topology in <xref
target="example_network"/>. If C does not support the RI-RSVP-FRR
extensions, then:</t>
<ul>
<li>A and B reduce the refresh time to the default short
refresh interval of 30 seconds and trigger a Path message.</li>
<li>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 normally. Note that B can only normally time out the PSB s
tate A
if A did not set the long refresh in the TIME_VALUES
object carried in the Path messages sent earlier.</li>
</ul>
</section>
<section anchor="upstr_no_support">
<name>Lack of Support on Upstream Nodes</name>
<t>The procedures on the upstream direction are as follows:</t>
<ul>
<li>If a node finds that the PHOP node along the LSP does
not support the RI-RSVP-FRR extensions, then the node
<bcp14>MUST</bcp14> reduce the "refresh period" in the
TIME_VALUES object carried in the Resv messages to the default
short refresh interval.</li>
<li>If node protection is requested for the LSP and the PHOP
node along the LSP does not support the RI-RSVP-FRR
extensions, then the node <bcp14>MUST</bcp14> reduce the
"refresh period" in the TIME_VALUES object carried in the Path
messages to the default short refresh interval (thus, the NHOP
can use compatible values when sending a Resv).</li>
<li>If node protection is requested for the LSP and the PPHOP
node does not support the RI-RSVP-FRR extensions, then the node
<bcp14>MUST</bcp14> reduce the "refresh period" in the
TIME_VALUES object carried in the Resv messages to the default
short refresh interval.</li>
<li>If the node reduces the refresh time using the above
procedures, it <bcp14>MUST NOT</bcp14> execute MP procedures
specified in <xref target="failures"/> of this document.</li>
</ul>
</section>
<section anchor="incr_deploy">
<name>Incremental Deployment</name>
<t>The backward compatibility procedures described in the previous
subsections imply that a router supporting the RI-RSVP-FRR
extensions specified in this document can apply the procedures extensions specified in this document can apply the procedures
specified in the document either in the downstream or upstream specified in this document either in the downstream or upstream
direction of an LSP, depending on the capability of the routers direction of an LSP, depending on the capability of the routers
downstream or upstream in the LSP path. downstream or upstream in the LSP.
<list style="hanging"> </t>
<t hangText="-">RI-RSVP-FRR extensions and procedures are enabled for
downstream Path, PathTear and ResvErr messages corresponding <ul>
<li>RI-RSVP-FRR extensions and procedures are enabled for
downstream Path, PathTear, and ResvErr messages corresponding
to an LSP if link protection is requested for the LSP and the to an LSP if link protection is requested for the LSP and the
Nhop node supports the extensions NHOP node supports the extensions.</li>
</t>
</list> <li>RI-RSVP-FRR extensions and procedures are enabled for
<list style="hanging"> downstream Path, PathTear, and ResvErr messages corresponding
<t hangText="-">RI-RSVP-FRR extensions and procedures are enabled for
downstream Path, PathTear and ResvErr messages corresponding
to an LSP if node protection is requested for the LSP and both to an LSP if node protection is requested for the LSP and both
Nhop &amp; NNhop nodes support the extensions NHOP and NNHOP nodes support the extensions.</li>
</t>
</list> <li>RI-RSVP-FRR extensions and procedures are enabled for
<list style="hanging"> upstream PathErr, Resv, and ResvTear messages corresponding to an
<t hangText="-">RI-RSVP-FRR extensions and procedures are enabled for LSP if link protection is requested for the LSP and the PHOP
upstream PathErr, Resv and ResvTear messages corresponding to node supports the extensions.</li>
an LSP if link protection is requested for the LSP and the
Phop node supports the extensions <li>RI-RSVP-FRR extensions and procedures are enabled for
</t> upstream PathErr, Resv, and ResvTear messages corresponding to an
</list> LSP if node protection is requested for the LSP and both PHOP
<list style="hanging"> and PPHOP nodes support the extensions.</li>
<t hangText="-">RI-RSVP-FRR extensions and procedures are enabled for </ul>
upstream PathErr, Resv and ResvTear messages corresponding to
an LSP if node protection is requested for the LSP and both <t>For example, if an implementation supporting the RI-RSVP-FRR
Phop and the PPhop support the extensions extensions specified in this document is deployed on all routers in a
</t>
</list>
</t>
<t>For example, if an implementation supporting the RI-RSVP-FRR
extensions specified in this document is deployed on all routers in
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 request node protection, then the FRR extensions will only be
applied for the LSP segments that traverse the particular region. applied for the LSP segments that traverse the particular region.
This will aid incremental deployment of these extensions and also This will aid incremental deployment of these extensions and also
allow reaping the benefits of the extensions in portions of the allow reaping the benefits of the extensions in portions of the
network where it is supported. network where it is supported.
</t> </t>
</section>
</section>
</section> </section>
</section> <section anchor="cap_bit_without_support">
</section> <name>Consequences of Advertising RI-RSVP Without RI-RSVP-FRR</name>
<t>If a node supporting facility backup protection <xref target="RFC4090
<section anchor="cap_bit_without_support" title="Consequence of Advertisin "/>
g RI-RSVP without RI-RSVP-FRR"> sets the RI-RSVP capability (I-bit) but does not support the RI-RSVP-FR
<t>If a node supporting facility backup protection <xref target="RFC4090" R
/>
sets the RI-RSVP capability (I bit) but does not support the RI-RSVP-FR
R
extensions, due to an implementation bug or configuration error, then it extensions, due to an implementation bug or configuration error, then it
leaves room for stale state to linger around for an inordinate period leaves room for the stale state to linger around for an inordinate per
of iod of
time or disruption of normal FRR operation time or for disruption of normal FRR operations
(see <xref target="prob_desc"/> of this document). Consider the example (see <xref target="prob_desc"/> of this document). Consider the example
topology <xref target="example_network"/> provided in this document. topology (<xref target="example_network"/>) provided in this document.
<list style="hanging"> </t>
<t hangText="-">Assume node B does set RI-RSVP capability in its Node-ID
based Hello messages even though it does not support RI-RSVP-FRR
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 RI-RSVP-FRR procedures. If B simply leaves the LSP state
without deleting, then B may end up holding on to the stale state
until the (long) refresh timeout.
</t>
</list>
<list style="hanging">
<t hangText="-">Instead of node B, assume node C does set RI-RSVP
capability in its Node-id based Hello messages even though it
does not support RI-RSVP-FRR extensions. When B details the
failure of its Phop link along an LSP, it will send Conditional
PathTear to C as required by the RI-RSVP-FRR procedures. But,
C would not recognize the condition encoded in the PathTear and
end up tearing down the LSP.
</t>
</list>
<list style="hanging">
<t hangText="-">Assume node B does set RI-RSVP capability in its Node-ID
based Hello messages even though it does not support RI-RSVP-FRR
extensions. Also assume local repair is about to commence on node
B for an LSP that has only requested link protection. That is,
B has not initiated the backup LSP signaling for the LSP. If node
B
receives a normal PathTear at this time from ingress A because of
a
management event initiated on A, then B simply deletes the LSP
state without sending a Remote PathTear to the LP-MP C. So, C
may end up holding on to the stale state until the (long) refresh
timeout.
</t>
</list>
</t>
</section>
</section> <ul>
<li>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
extensions. When B detects the failure of its PHOP link along an
LSP, it will not send a Conditional PathTear to C as required by the
RI-RSVP-FRR procedures. If B simply leaves the LSP state without
deleting, then B may end up holding on to the stale state until the
(long) refresh timeout.</li>
<section anchor="Security" title="Security Considerations"> <li>Instead of node B, assume node C does set the RI-RSVP capability i
n
its Node-ID-based Hello messages even though it does not support
RI-RSVP-FRR extensions. When B details the failure of its PHOP link
along an LSP, it will send a Conditional PathTear to C as required by
the RI-RSVP-FRR procedures. However, C would not recognize the conditi
on
encoded in the PathTear and end up tearing down the LSP.</li>
<li>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
extensions. In addition, assume local repair is about to commence on n
ode B
for an LSP that has only requested link protection, that is, B has
not initiated the backup LSP signaling for the LSP. If node B
receives a normal PathTear at this time from ingress A because of a
management event initiated on A, then B simply deletes the LSP state
without sending a Remote PathTear to the LP-MP C, so C may end up
holding on to the stale state until the (long) refresh timeout.</li>
</ul>
</section>
</section>
<section anchor="Security">
<name>Security Considerations</name>
<t>The security considerations pertaining to the original RSVP protocol <t>The security considerations pertaining to the original RSVP protocol
<xref target="RFC2205"/>, <xref target="RFC3209"/> and <xref target="RF (<xref target="RFC2205"/>, <xref target="RFC3209"/>, and <xref target="
C5920"/> RFC5920"/>)
remain relevant. When using RSVP Cryptographic Authentication remain relevant. When using RSVP cryptographic authentication
<xref target="RFC2747"/>, more robust algorithms such as HMAC-SHA256, <xref target="RFC2747"/>, more robust algorithms such as HMAC-SHA256,
HMAC-SHA384, or HMAC-SHA512 <xref target="RFC2104"/><xref target="FIPS-1 HMAC-SHA384, or HMAC-SHA512 <xref target="RFC2104"/> <xref target="FIPS-
80-4"/> 180-4"/>
SHOULD be used when computing the keyed message digest where possible. <bcp14>SHOULD</bcp14> be used when computing the keyed message digest wh
ere possible.
</t> </t>
<t>This document extends the applicability of Node-ID based Hello session <t>This document extends the applicability of Node-ID-based Hello
between immediate neighbors. The Node-ID based Hello session between the P sessions between immediate neighbors. The Node-ID-based Hello session
LR between the PLR and the NP-MP may require the two routers to exchange
and the NP-MP may require the two routers to exchange Hello messages with Hello messages with a non-immediate neighbor. Therefore, the
non-immediate neighbor. So, the implementations SHOULD provide the implementations <bcp14>SHOULD</bcp14> provide the option to configure eith
option to configure Node-ID neighbor specific or global authentication er a
key to authentication messages received from Node-ID neighbors. The specific neighbor or global Node-ID authentication key to authentication
network administrator SHOULD utilize this option to enable RSVP-TE routers messages received from Node-ID neighbors. The network administrator
to authenticate Node-ID Hello messages received with TTL greater than 1. <bcp14>SHOULD</bcp14> utilize this option to enable RSVP-TE routers to
Implementations SHOULD also provide the option to specify a limit on the authenticate Node-ID Hello messages received with a TTL greater than 1.
number of Node-ID based Hello sessions that can be established on a Implementations <bcp14>SHOULD</bcp14> also provide the option to specify
router supporting the extensions defined in this document. a limit on the number of Node-ID-based Hello sessions that can be
established on a router supporting the extensions defined in this
document.
</t> </t>
</section> </section>
<section anchor="IANA" title="IANA Considerations"> <section anchor="IANA">
<section anchor="IANA_Conditions" title="CONDITIONS Object"> <name>IANA Considerations</name>
<t>IANA maintains the Class Names, Class Numbers, and Class Types registr <section anchor="IANA_Conditions">
ies <name>CONDITIONS Object</name>
in the &quot;RSVP parameters&quot; registry group (see <t>IANA maintains the "Class Names, Class Numbers, and Class Types" regi
http://www.iana.org/assignments/rsvp-parameters/rsvp-parameters.xml). stry
IANA is requested to extend these registries by adding a new Class Num in the "RSVP Parameters" registry group (see
ber <eref target="http://www.iana.org/assignments/rsvp-parameters/"/>).
(in the 10bbbbbb range) and assign a new C-Type under this Class Numbe IANA has extended these registries by adding a new Class Number
r, (in the 10bbbbbb range) and assigning a new C-Type under this Class Nu
mber,
as described below (see <xref target="cnd_path_tear_obj"/>): as described below (see <xref target="cnd_path_tear_obj"/>):
</t>
<artwork> <table anchor="table1">
<![CDATA[ <name>Class Names, Class Numbers, and Class Types</name>
Class Number Class Name Reference <thead>
TBA1 CONDITIONS This document <tr>
]]> <th>Class Number</th>
</artwork> <th>Class Name</th>
<th>Reference</th>
<t>Class Type of C-types - TBA1 CONDITIONS </t> </tr>
</thead>
<tbody>
<tr>
<td>135</td>
<td>CONDITIONS</td>
<td>RFC 9705</td>
</tr>
</tbody>
</table>
<artwork> <table anchor="table2">
<![CDATA[ <name>Class Type or C-Types - 135 CONDITIONS</name>
Value Class Name Reference <thead>
1 CONDITIONS This document <tr>
]]> <th>Value</th>
</artwork> <th>Description</th>
<th>Reference</th>
</tr>
</thead>
<tbody>
<tr>
<td>1</td>
<td>CONDITIONS</td>
<td>RFC 9705</td>
</tr>
</tbody>
</table>
<t>IANA has added a subregistry called "CONDITIONS Object
Flags" as shown below. Assignments of additional Class Type values
for Class Name "CONDITIONS" are to be performed via
"IETF Review" <xref target="RFC8126"/>.</t>
<t>IANA is requested to add a new sub-registry for &quot;CONDITIONS Objec <table anchor="table3">
t <name>CONDITIONS Object Flags</name>
Flags&quot; as shown below. Assignments of additional Class Type values <thead>
for Class Name &quot;CONDITIONS&quot; are to be performed via <tr>
&quot;IETF Review&quot; <xref target="RFC8126"/>.</t> <th>Bit Number</th>
<th>32-Bit Value</th>
<th>Name</th>
<th>Reference</th>
</tr>
</thead>
<tbody>
<tr>
<td>0-30</td>
<td></td>
<td>Unassigned</td>
<td></td>
</tr>
<tr>
<td>31</td>
<td>0x0001</td>
<td>Merge-point</td>
<td>RFC 9705</td>
</tr>
</tbody>
</table>
<artwork> <t>All assignments in this subregistry are to be performed via "IETF
<![CDATA[ Review" <xref target="RFC8126"/>.</t>
Bit Number 32-bit Value Name Reference
0-30 Unassigned
31 0x0001 Merge-point This document
]]>
</artwork>
<t>All assignments in this sub-registry are to be performed via </section>
&quot;IETF Review&quot; <xref target="RFC8126"/>.</t>
</t>
</section> </section>
</section>
<!-- This PI places the pagebreak correctly (before the section title) in the
text output. -->
<?rfc needLines="8" ?>
<section anchor="Acknowledgements" title="Acknowledgements"> </middle>
<t>We are very grateful to Yakov Rekhter for his contributions to the <back>
development of the idea and thorough review of content of the draft.
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.
</t>
</section>
<!-- Possibly a 'Contributors' section ... --> <references>
<name>References</name>
<references>
<name>Normative References</name>
<section anchor="Contributors" title="Contributors"> <xi:include href="https://bib.ietf.org/public/rfc/bibxml/reference.RFC.2
<t> 119.xml"/>
Markus Jork<br></br> <xi:include href="https://bib.ietf.org/public/rfc/bibxml/reference.RFC.2
Juniper Networks, Inc.<br></br> 747.xml"/>
Email: mjork@juniper.net <xi:include href="https://bib.ietf.org/public/rfc/bibxml/reference.RFC.3
</t> 209.xml"/>
<xi:include href="https://bib.ietf.org/public/rfc/bibxml/reference.RFC.4
090.xml"/>
<xi:include href="https://bib.ietf.org/public/rfc/bibxml/reference.RFC.2
961.xml"/>
<xi:include href="https://bib.ietf.org/public/rfc/bibxml/reference.RFC.2
205.xml"/>
<xi:include href="https://bib.ietf.org/public/rfc/bibxml/reference.RFC.4
558.xml"/>
<xi:include href="https://bib.ietf.org/public/rfc/bibxml/reference.RFC.3
473.xml"/>
<xi:include href="https://bib.ietf.org/public/rfc/bibxml/reference.RFC.5
063.xml"/>
<xi:include href="https://bib.ietf.org/public/rfc/bibxml/reference.RFC.8
126.xml"/>
<xi:include href="https://bib.ietf.org/public/rfc/bibxml/reference.RFC.8
174.xml"/>
<xi:include href="https://bib.ietf.org/public/rfc/bibxml/reference.RFC.8
370.xml"/>
<xi:include href="https://bib.ietf.org/public/rfc/bibxml/reference.RFC.8
796.xml"/>
</references>
<t> <references>
Harish Sitaraman<br></br> <name>Informative References</name>
Individual Contributor<br></br>
Email: harish.ietf@gmail.com
</t>
<t> <reference anchor="FIPS-180-4" target="https://nvlpubs.nist.gov/nistpubs
Vishnu Pavan Beeram<br></br> /FIPS/NIST.FIPS.180-4.pdf">
Juniper Networks, Inc.<br></br> <front>
Email: vbeeram@juniper.net <title>Secure Hash Standard</title>
</t> <author>
<organization>National Institute of Standards and Technology</orga
nization>
</author>
<date month="August" year="2015"/>
</front>
<seriesInfo name="FIPS PUB" value="180-4"/>
<seriesInfo name="DOI" value="10.6028/NIST.FIPS.180-4"/>
</reference>
<t> <xi:include href="https://bib.ietf.org/public/rfc/bibxml/reference.RFC.2
Ebben Aries<br></br> 104.xml"/>
Juniper Networks, Inc.<br></br> <xi:include href="https://bib.ietf.org/public/rfc/bibxml/reference.RFC.5
Email: exa@juniper.com 920.xml"/>
</t>
<t> </references>
Mike Taillon<br></br> </references>
Cisco Systems, Inc.<br></br>
Email: mtaillon@cisco.com
</t>
</section> <section anchor="Acknowledgements" numbered="false">
<name>Acknowledgements</name>
<t>We are very grateful to <contact fullname="Yakov Rekhter"/> for his
contributions to the development of the idea and thorough review of the
content of the document. We are thankful to <contact fullname="Raveendra
Torvi"/> and <contact fullname="Yimin Shen"/> for their comments and
inputs on early versions of the document. We also thank <contact
fullname="Alexander Okonnikov"/> for his review and comments on the
document.
</t>
</section>
</middle> <section anchor="Contributors" numbered="false">
<name>Contributors</name>
<back> <contact fullname="Markus Jork">
<!-- References split into informative and normative --> <organization>Juniper Networks, Inc.</organization>
<address>
<email>mjork@juniper.net</email>
</address>
</contact>
<!-- There are 2 ways to insert reference entries from the citation libraries <contact fullname="Harish Sitaraman">
: <organization>Individual Contributor</organization>
1. define an ENTITY at the top, and use "ampersand character"RFC2629; here ( <address>
as shown) <email>harish.ietf@gmail.com</email>
2. simply use a PI "less than character"?rfc include="reference.RFC.2119.xml </address>
"?> here </contact>
(for I-Ds: include="reference.I-D.narten-iana-considerations-rfc2434bis.x
ml")
Both are cited textually in the same manner: by using xref elements. <contact fullname="Vishnu Pavan Beeram">
If you use the PI option, xml2rfc will, by default, try to find included fil <organization>Juniper Networks, Inc.</organization>
es in the same <address>
directory as the including file. You can also define the XML_LIBRARY environ <email>vbeeram@juniper.net</email>
ment variable </address>
with a value containing a set of directories to search. These can be either </contact>
in the local
filing system or remote ones accessed by http (http://domain/dir/... ).-->
<references title="Normative References"> <contact fullname="Ebben Aries">
&RFC2119; <organization>Juniper Networks, Inc.</organization>
&RFC2747; <address>
&RFC3209; <email>exa@juniper.com</email>
&RFC4090; </address>
&RFC2961; </contact>
&RFC2205;
&RFC4558;
&RFC3473;
&RFC5063;
&RFC8126;
&RFC8174;
&RFC8370;
&RFC8796;
</references>
<references title="Informative References"> <contact fullname="Mike Taillon">
<reference anchor="FIPS-180-4"> <organization>Cisco Systems, Inc.</organization>
<front> <address>
<title>Secure Hash Standard</title> <postal/>
<author> <email>mtaillon@cisco.com</email>
<organization>National Institute of Standards and Technology</organizati </address>
on> </contact>
</author> </section>
<date month="August" year="2015"/>
</front>
<seriesInfo name="FIPS" value="180-4"/>
</reference>
&RFC2104;
&RFC5920;
</references>
</back> </back>
</rfc> </rfc>
 End of changes. 144 change blocks. 
1479 lines changed or deleted 1245 lines changed or added

This html diff was produced by rfcdiff 1.48.