draft-ietf-ccamp-loose-path-reopt-00.txt   draft-ietf-ccamp-loose-path-reopt-01.txt 
CCAMP WG
Internet Draft Jean-Philippe Vasseur CCAMP Working Group Jean-Philippe Vasseur
Proposed status: Standard (Editor) IETF Internet Draft (Editor)
Cisco Systems Proposed status: Informational Cisco Systems
Yuichi Ikejiri Yuichi Ikejiri
NTT Communications NTT Communications
Corporation Corporation
Raymond Zhang Raymond Zhang
Infonet Service Corporation Infonet Service Corporation
Document: draft-ietf-ccamp-loose-path-
reopt-00.txt
Expires: February 2005 August 2004
Reoptimization of MPLS Traffic Engineering loosely routed LSP Expires: November 2005 May 2005
draft-ietf-ccamp-loose-path-reopt-00.txt Reoptimization of Multiprotocol Label Switching (MPLS) Traffic
Engineering (TE) loosely routed Label Switch Path (LSP)
Status of this Memo draft-ietf-ccamp-loose-path-reopt-01.txt
By submitting this Internet-Draft, I certify that any applicable Status of this Memo
patent or IPR claims of which I am aware have been disclosed, and any
of which I become aware will be disclosed, in accordance with RFC
3668.
This document is an Internet-Draft and is in full conformance with By submitting this Internet-Draft, each author represents that any
all provisions of Section 10 of RFC2026 [i]. applicable patent or other IPR claims of which he or she is aware
have been or will be disclosed, and any of which he or she becomes
aware will be disclosed, in accordance with Section 6 of BCP 79.
Internet-Drafts are working documents of the Internet Engineering Internet-Drafts are working documents of the Internet Engineering
Task Force (IETF), its areas, and its working groups. Note that Task Force (IETF), its areas, and its working groups. Note that
other groups may also distribute working documents as Internet- other groups may also distribute working documents as
Drafts. Internet-Drafts.
Internet-Drafts are draft documents valid for a maximum of six months Internet-Drafts are draft documents valid for a maximum of six months
and may be updated, replaced, or obsoleted by other documents at any and may be updated, replaced, or obsoleted by other documents at any
time. It is inappropriate to use Internet-Drafts as reference time. It is inappropriate to use Internet-Drafts as reference
material or to cite them other than as "work in progress." material or to cite them other than as "work in progress."
The list of current Internet-Drafts can be accessed at The list of current Internet-Drafts can be accessed at
http://www.ietf.org/ietf/1id-abstracts.txt http://www.ietf.org/ietf/1id-abstracts.txt.
The list of Internet-Draft Shadow Directories can be accessed at The list of Internet-Draft Shadow Directories can be accessed at
http://www.ietf.org/shadow.html. http://www.ietf.org/shadow.html.
Abstract Copyright Notice
This document defines a mechanism for the reoptimization of loosely
routed MPLS and GMPLS Traffic Engineering LSPs. A loosely routed LSP
follows a path specified as a combination of strict and loose hop(s)
that contains at least one loose hop and zero or more strict hop(s).
The path calculation (which implies an ERO expansion) to reach a Copyright (C) The Internet Society (2005). All Rights Reserved.
loose hop is performed by the previous hop defined in the TE LSP
path. This document proposes a mechanism that allows:
- The TE LSP head-end LSR to trigger a new path re-evaluation on Abstract
every hop having a next hop defined as a loose hop,
- A mid-point LSR to signal to the head-end LSR that either a better This document defines a mechanism for the reoptimization of loosely
path exists to reach a loose hop (compared to the current path in routed MPLS and GMPLS (Generalized Multiprotocol Label Switching)
use) or that the TE LSP must be reoptimized because of some Traffic Engineering LSPs. A loosely routed LSP is defined as one
maintenance required on the TE LSP path. A better path is defined as that does not contain a full explicit route identifying each LSR
a lower cost path, where the cost is determined by the metric used to along the path of the LSP at the time it is signaled by the ingress
compute the path. LSR. Such an LSP is signaled with no ERO, with an ERO that contains
at least one loose hop, or with an ERO that contains an abstract
node that is not a simple abstract node (that is, an abstract node
that identifies more than one LSR). This document proposes a
mechanism that allows a TE LSP head-end LSR to trigger a new path re-
evaluation on every hop having a next hop defined as a loose or
abstract hop and a mid-point LSR to signal to the head-end LSR that a
better path exists (compared to the current path in use) or that the
TE LSP must be reoptimized because of some maintenance required on
the TE LSP path.
The proposed mechanism applies to intra-domain and inter-domain (IGP The proposed mechanism applies to the cases of intra and inter-domain
area or Autonomous System) packet and non-packet TE LSPs when the (IGP area or Autonomous System) packet and non-packet TE LSPs
path is defined as a list of loose hops or when a strict hop is a following a loosely routed path.
non-specific abstract node (e.g. IGP area, Autonomous Systems).
Conventions used in this document Conventions used in this document
The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT", The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT",
"SHOULD", "SHOULD NOT", "RECOMMENDED", "MAY", and "OPTIONAL" in this "SHOULD", "SHOULD NOT", "RECOMMENDED", "MAY", and "OPTIONAL" in this
document are to be interpreted as described in RFC-2119 [ii]. document are to be interpreted as described in RFC-2119.
Table of contents Table of contents
1. Introduction...................................................3 1. Notice.........................................................3
2. Establishment of a loosely routed TE LSP.......................3 2. Introduction...................................................3
3. Reoptimization of a loosely routed TE LSP path.................4 3. Establishment of a loosely routed TE LSP.......................4
4. Signalling extensions..........................................5 4. Reoptimization of a loosely routed TE LSP path.................5
4.1 Path re-evaluation request.................................5 5. Signalling extensions..........................................6
4.2 New error value sub-code...................................5 5.1 Path re-evaluation request.................................6
5. Mode of operation..............................................6 5.2 New error value sub-codes..................................6
5.1 Head-end reoptimization control............................6 6. Mode of operation..............................................7
5.2 Reoptimization triggers....................................6 6.1 Head-end reoptimization control............................7
5.3 Head-end request versus mid-point explicit notification modes 6.2 Reoptimization triggers....................................7
...............................................................6 6.3 Head-end request versus mid-point explicit notification
modes..........................................................7
5.3.1 Head-end request mode.......................................7 5.3.1 Head-end request mode.......................................7
5.3.2 Mid-point explicit notification mode........................8 5.3.2 Mid-point explicit notification mode........................9
5.3.3 ERO caching.................................................9 5.3.3 ERO caching.................................................9
6. Interoperability...............................................9 7. Interoperability..............................................10
7. Security considerations........................................9 8. Security considerations.......................................10
8. Acknowledgments................................................9 9. IANA considerations...........................................10
9. Intellectual property considerations...........................9 10. Acknowledgments..............................................10
10. References...................................................10 11. Intellectual property considerations.........................11
Normative references.............................................10 12. References...................................................11
Informative references...........................................10 11.1 Normative references........................................11
11. Author's Addresses...........................................11 11.2 Informative references......................................11
Full Copyright Statement.........................................11 13. Authors' Addresses...........................................12
14. Full Copyright Statement.....................................12
1. Introduction 1. Notice
The procedures described in this document are entirely optional
within an MPLS or GMPLS network. Implementations that do not support
the procedures described in this document will interoperate
seamlessly with those that do. Further, an implementation that does
not support the procedures described in this document will not be
impacted or implicated by a neighboring implementation that does
implement the procedures.
An ingress implementation that chooses not to support the procedures
described in this document may still achieve re-optimization by
periodically issuing a speculative make-before-break replacement of
an LSP without trying to discovery whether a more optimal path is
available in a downstream domain. Such a procedure would not be in
conflict with any mechanisms not already documented in [RFC3209] and
[RFC3473].
2. Introduction
The Traffic Engineering Work Group has specified a set of The Traffic Engineering Work Group has specified a set of
requirements for inter-area [INTER-AREA-TE-REQ] and inter-AS [INTER- requirements for inter-area [INTER-AREA-TE-REQ] and inter-AS [INTER-
AS-TE-REQ] MPLS Traffic Engineering. Both requirements documents AS-TE-REQ] MPLS Traffic Engineering. Both requirements documents
specify the need for some mechanism providing an option for the head- specify the need for some mechanism providing an option for the head-
end to control the reoptimization process, should a more optimal path end to control the reoptimization process, should a more optimal path
exist in a downstream domain (IGP area or Autonomous System). exist in a downstream domain (IGP area or Autonomous System).
This document defines a solution to meet this requirement, in This document defines a solution to meet this requirement and
addition to a mechanism to notify a Head-end LSR of the existence of proposes a set of mechanisms that allow:
such a more optimal path or the need to reoptimize due to some
maintenance required in a downstream domain.
2. Establishment of a loosely routed TE LSP - The TE LSP head-end LSR to trigger a new path re-evaluation on
every hop having a next hop defined as a loose hop or abstract
node,
A loosely routed explicit path is a path specified as a combination - A mid-point LSR to signal to the head-end LSR that either a
of strict and loose hop(s) that contains at least one loose hop and a better path exists to reach a loose/abstract hop (compared to the
set of zero or more strict hop(s). Loose hops are listed in the ERO current path in use) or that the TE LSP must be reoptimized because
object of the RSVP Path message with the L flag of the Ipv4 or the of some maintenance required on the TE LSP path. A better path is
IPv6 prefix sub-object set, as defined in [RSVP-TE]. In this case, defined as a lower cost path, where the cost is determined by the
each LSR along the path whose next hop is specified as a loose hop or metric used to compute the path.
3. Establishment of a loosely routed TE LSP
In the context of this document, a loosely routed LSP is defined as
one that does not contain a full explicit route identifying each LSR
along the path of the LSP at the time it is signaled by the ingress
LSR. Such an LSP is signaled with no ERO, with an ERO that contains
at least one loose hop, or with an ERO that contains an abstract
node that is not a simple abstract node (that is, an abstract node
that identifies more than one LSR). As defined in [RFC3209], loose
hops are listed in the Explicit Route Object (ERO) of the RSVP Path
message with the L flag of the IPv4 or the IPv6 prefix sub-object
set.
Each LSR along the path whose next hop is specified as a loose hop or
a non-specific abstract node triggers a path computation (also a non-specific abstract node triggers a path computation (also
referred to as an ERO expansion), before forwarding the RSVP Path referred to as an ERO expansion), before forwarding the RSVP Path
message downstream. The path computation may either be performed by message downstream. The computed path may either be partial (up to
means of CSPF or any Path Computation Element (PCE) and can be the next loose hop) or complete (set of strict hops up to the TE LSP
partial (up to the next loose hop) or complete (up to the TE LSP
destination). destination).
Note that the examples in the rest of this document are provided in Note that the examples in the rest of this document are provided in
the context of MPLS inter-area TE but the proposed mechanism equally the context of MPLS inter-area TE but the proposed mechanism equally
applies to loosely routed paths within a single routing domain and applies to loosely routed paths within a single routing domain and
across multiple Autonomous Systems. across multiple Autonomous Systems.
The examples below are provided with OSPF as the IGP but the The examples below are provided with OSPF as the IGP but the
described set of mechanisms similarly apply to IS-IS. described set of mechanisms similarly apply to IS-IS.
skipping to change at page 4, line 4 skipping to change at page 4, line 45
<---area 1--><-area 0--><-area 2-> <---area 1--><-area 0--><-area 2->
R1---R2----R3---R6 R8---R10 R1---R2----R3---R6 R8---R10
| | | / | \ | | | | / | \ |
| | | / | \ | | | | / | \ |
| | | / | \| | | | / | \|
R4---------R5---R7----R9---R11 R4---------R5---R7----R9---R11
Assumptions Assumptions
- R3, R5, R8 and R9 are ABRs - R3, R5, R8 and R9 are ABRs
- The path an inter-area TE LSP T1 from R1 (head-End LSR) to R11 - The path of an inter-area TE LSP T1 from R1 (head-end LSR) to R11
(tail-end LSR) is defined on R1 as the following loosely routed path: (tail-end LSR) is defined on R1 as the following loosely routed path:
R1-R3(loose)-R8(loose)-R11(loose). R3, R8 and R11 are defined as R1-R3(loose)-R8(loose)-R11(loose). R3, R8 and R11 are defined as
loose hops. loose hops.
Step 1: R1 determines that the next hop (R3) is a loose hop (not Step 1: R1 determines that the next hop (R3) is a loose hop (not
directly connected to R1) and then performs an ERO expansion directly connected to R1) and then performs an ERO expansion
operation to reach the next loose hops R3 either by means of CSPF or operation to reach the next loose hops R3. The new ERO becomes:
any other PCE-based path computation method. The new ERO becomes:
R2(S)-R3(S)-R8(L)-R11(L) where: R2(S)-R3(S)-R8(L)-R11(L) where:
S: Strict hop (L=0) S: Strict hop (L=0)
L: Loose hop (L=1) L: Loose hop (L=1)
The R1-R2-R3 path obeys T1Ăs set of constraints. The R1-R2-R3 path obeys T1's set of constraints.
Step 2: the RSVP Path message is then forwarded by R1 following the Step 2: the RSVP Path message is then forwarded by R1 following the
ERO path and reaches R3 with the following content: R8(L)-R11(L) ERO path and reaches R3 with the following content: R8(L)-R11(L)
Step 3: R3 determines that the next hop (R8) is a loose hop (not Step 3: R3 determines that the next hop (R8) is a loose hop (not
directly connected to R3) and then performs an ERO expansion directly connected to R3) and then performs an ERO expansion
operation to reach the next loose hops R8 either by means of CSPF or operation to reach the next loose hops R8. The new ERO becomes:
any other PCE-based path computation method. The new ERO becomes: R6(S)-R7(S)-R8(S)-R11(L).
R6(S)-R7(S)-R8(S)-R11(L)
Note: in this example, the assumption is made that the path is Note: in this example, the assumption is made that the path is
computed on a per loose hop basis, also referred to a partial route computed on a per loose hop basis, also referred to a partial route
computation. Note that PCE-based mechanisms may also allow for full computation. Note that some path computation techniques may result in
route computation (up to the final destination). complete paths (set of strict hops up to the final destination).
Step 4: the same procedure applies at R8 to reach T1Ăs destination Step 4: the same procedure applies at R8 to reach T1's destination
(R11). (R11).
3. Reoptimization of a loosely routed TE LSP path 4. Reoptimization of a loosely routed TE LSP path
Once a loosely routed explicit TE LSP is set up, it is maintained Once a loosely routed explicit TE LSP is set up, it is maintained
through normal RSVP procedures. During TE LSP life time, a more through normal RSVP procedures. During TE LSP life time, a more
optimal path might appear between an LSR and its next loose hop (for optimal path might appear between an LSR and its next loose hop (for
the sake of illustration, suppose in the example above that a link the sake of illustration, suppose in the example above that a link
between R6 and R8 is added or restored that provides a preferable between R6 and R8 is added or restored that provides a preferable
path between R3 and R8 (R3-R6-R8) than the existing R3-R6-R7-R8 path between R3 and R8 (R3-R6-R8) than the existing R3-R6-R7-R8
path). Since a preferable (e.g. shorter) path might not be visible path). Since a preferable (e.g. shorter) path might not be visible
from the head-end LSR by means of the IGP if it does not belong to from the head-end LSR by means of the IGP if it does not belong to
the head-end IGP area, the head-end cannot make use of this shorter the head-end IGP area, the head-end cannot make use of this shorter
skipping to change at page 5, line 11 skipping to change at page 5, line 48
accordingly. accordingly.
This document defines a mechanism that allows: This document defines a mechanism that allows:
- A head-end LSR to trigger on every LSR whose next hop is a - A head-end LSR to trigger on every LSR whose next hop is a
loose hop or an abstract node the re-evaluation of the current loose hop or an abstract node the re-evaluation of the current
path in order to detect a potential more optimal path, path in order to detect a potential more optimal path,
- A mid-point LSR whose next hop is a loose-hop or an abstract - A mid-point LSR whose next hop is a loose-hop or an abstract
node to signal (using a new Error value sub-code carried in a node to signal (using a new Error value sub-code carried in a
Path Error message) to the head-end that a more preferable path RSVP PathErr message) to the head-end that a more preferable
exists (a path with a lower cost, where the cost definition is path exists (a path with a lower cost, where the cost definition
determined by some metric). is determined by some metric).
Then once the existence of such a preferable path is notified to the Then once the existence of such a preferable path is notified to the
head-end LSR, the head-end LSR can decide (depending on the TE LSP head-end LSR, the head-end LSR can decide (depending on the TE LSP
characteristics) whether to perform a TE LSP graceful reoptimization. characteristics) whether to perform a TE LSP graceful reoptimization
such as the "Make Before Break" procedure defined in [RFC3209].
There is another scenario whereby notifying the head-end of the There is another scenario whereby notifying the head-end of the
existence of a better path is desirable: if the current path is about existence of a better path is desirable: if the current path is about
the fail due to some (link or node) required maintenance (see also the fail due to some (link or node) required maintenance.
[GR-SHUT]).
This allows the head-end to reoptimize a TE LSP making use of the non This allows the head-end to reoptimize a TE LSP making use of the non
disruptive make before break procedure if and only if a preferable disruptive make before break procedure if and only if a preferable
path exists and if such a reoptimization is desired. path exists and if such a reoptimization is desired.
4. Signalling extensions 5. Signalling extensions
New ERO flags and Error value sub-codes are proposed in this document A new flag in the SESSION ATTRIBUTE object and new Error value sub-
(to be assigned by IANA). codes in the ERROR SPEC object are proposed in this document (to be
assigned by IANA).
4.1 Path re-evaluation request 5.1 Path re-evaluation request
The following new flag of the SESSION_ATTRIBUTE object (C-Type 1 and The following new flag of the SESSION_ATTRIBUTE object (C-Type 1 and
7) is defined (suggested value to be confirmed by IANA): 7) is defined (suggested value to be confirmed by IANA):
Path re-evaluation request: 0x20 Path re-evaluation request: 0x20
This flag indicates that a path re-evaluation (of the current path in This flag indicates that a path re-evaluation (of the current path in
use) is requested. Note that this does not trigger any LSP Reroute use) is requested. Note that this does not trigger any LSP Reroute
but instead just signal the request to evaluate whether a preferable but instead just signals the request to evaluate whether a preferable
path exists. path exists.
Note: in case of link bundling for instance, although the resulting Note: in case of link bundling for instance, although the resulting
ERO might be identical, this might give the opportunity for a mid- ERO might be identical, this might give the opportunity for a mid-
point LSR to locally select another link within a bundle, although point LSR to locally select another link within a bundle, although
strictly speaking, the ERO has not changed. strictly speaking, the ERO has not changed.
4.2 New error value sub-code 5.2 New error value sub-codes
As defined in [RSVP-TE], the ERROR-CODE 25 in ERROR SPEC object As defined in [RFC3209], the ERROR-CODE 25 in ERROR SPEC object
corresponds to a Notify Error. corresponds to a Notify Error.
This document adds three new error value sub-codes (suggested values This document adds three new error value sub-codes (suggested values
to be confirmed by IANA): to be confirmed by IANA):
6 Preferable path exists 6 Preferable path exists
7 Local link maintenance required 7 Local link maintenance required
8 Local node maintenance required 8 Local node maintenance required
The details about the local maintenance required modes are detailed The details about the local maintenance required modes are detailed
in section 5.3.2 in section 5.3.2
5. Mode of operation 6. Mode of operation
5.1 Head-end reoptimization control 6.1 Head-end reoptimization control
The notification process of a preferable path (shorter path or new The notification process of a preferable path (shorter path or new
path due to some maintenance required on the current path) is by path due to some maintenance required on the current path) is by
nature de-correlated from the reoptimization operation. In other nature de-correlated from the reoptimization operation. In other
words, the location where a potentially preferable path is discovered words, the location where a potentially preferable path is discovered
does not have to be where the TE LSP is actually reoptimized. This does not have to be where the TE LSP is actually reoptimized. This
document applies to the context of a head-end reoptimization. document applies to the context of a head-end reoptimization.
5.2 Reoptimization triggers 6.2 Reoptimization triggers
There are three possible reoptimization triggers: There are three possible reoptimization triggers:
- Timer-based: a reoptimization is triggered (process evaluating - Timer-based: a reoptimization is triggered (process evaluating
whether a more optimal path can be found) when a configurable timer whether a more optimal path can be found) when a configurable timer
expires, expires,
- Event-driven: a reoptimization is triggered when a particular - Event-driven: a reoptimization is triggered when a particular
network event occurs (such as a ˘Link-UP÷ event), network event occurs (such as a "Link-UP" event),
- Operator-driven: a reoptimization is manually triggered by the - Operator-driven: a reoptimization is manually triggered by the
Operator. Operator.
It is RECOMMENDED for an implementation supporting the extensions It is RECOMMENDED for an implementation supporting the extensions
proposed in this document to support the aforementioned modes as path proposed in this document to support the aforementioned modes as path
re-evaluation triggers. re-evaluation triggers.
5.3 Head-end request versus mid-point explicit notification modes 6.3 Head-end request versus mid-point explicit notification modes
This document defines two modes: This document defines two modes:
1) ˘Head-end requesting mode÷: the request for a new path 1) "Head-end requesting mode": the request for a new path
evaluation of a loosely routed TE LSP is requested by the head- evaluation of a loosely routed TE LSP is requested by the head-
end LSR. end LSR.
2) ˘Mid-point explicit notification÷: a mid-point LSR having 2) "Mid-point explicit notification": a mid-point LSR having
determined that a preferable path (than the current path is use) determined that a preferable path (than the current path is use)
exists or having the need to perform a link/node local exists or having the need to perform a link/node local
maintenance explicitly notifies the head-end LSR which will in maintenance explicitly notifies the head-end LSR which will in
turn decide whether to perform a reoptimization. turn decide whether to perform a reoptimization.
5.3.1 Head-end request mode 6.3.1 Head-end request mode
In this mode, when a timer-based reoptimization is triggered on the In this mode, when a timer-based reoptimization is triggered on the
head-end LSR or the operator manually requests a reoptimization, the head-end LSR or the operator manually requests a reoptimization, the
head-end LSR immediately sends an RSVP Path message with the ˘Path head-end LSR immediately sends an RSVP Path message with the "Path
re-evaluation request÷ bit of the SESSION-ATTRIBUTE object set. This re-evaluation request" bit of the SESSION-ATTRIBUTE object set. This
bit is then cleared in subsequent RSVP path messages sent downstream. bit is then cleared in subsequent RSVP path messages sent downstream.
In order to handle the case of a lost Path message, the solution
consists of relying on the reliable messaging mechanism described in
[REFRESH-REDUCTION].
Upon receiving a Path message with the ˘Path re-evaluation request÷ Upon receiving a Path message with the "Path re-evaluation request"
bit set, every LSR for which the next abstract node contained in the bit set, every LSR for which the next abstract node contained in the
ERO is defined as a loose hop/abstract node, performs the following ERO is defined as a loose hop/abstract node, performs the following
set of actions: set of actions:
A path re-evaluation is triggered and the newly computed path is A path re-evaluation is triggered and the newly computed path is
compared to the existing path: compared to the existing path:
- If a preferable path can be found, the LSR MUST immediately - If a preferable path can be found, the LSR performing the path
send a Path Error to the head-end LSR (Error code 25 (Notify), re-evaluation MUST immediately send an RSVP PathErr to the head-
Error sub-code=6 (better path exists)). At this point, the LSR end LSR (Error code 25 (Notify), Error sub-code=6 (better path
MAY decide to clear the ˘Path re-evaluation request÷ bit of the exists)). At this point, the LSR MAY decide to not propagate
SESSION-ATTRIBUTE object in subsequent RSVP Path messages sent such bit in subsequent RSVP Path messages sent downstream for
downstream: this mode is the RECOMMENDED mode for the reasons the re-evaluated TE LSP: this mode is the RECOMMENDED mode for
described below. the reasons described below.
The sending of a Path Error Notify message ˘Preferable path The sending of an RSVP PathErr Notify message "Preferable path
exists÷ to the head-end LSR will notify the head-end LSR of the exists" to the head-end LSR will notify the head-end LSR of the
existence of a preferable path (e.g in a downstream area/AS or existence of a preferable path (e.g in a downstream area/AS or
in another location within a single domain). Hence, triggering in another location within a single domain). Hence, triggering
additional path re-evaluations on downstream nodes is additional path re-evaluations on downstream nodes is
unnecessary. The only motivation to forward subsequent RSVP Path unnecessary. The only motivation to forward subsequent RSVP Path
messages with the ˘Path re-evaluation request÷ bit of the messages with the "Path re-evaluation request" bit of the
SESSION-ATTRIBUTE object set would be to trigger path re- SESSION-ATTRIBUTE object set would be to trigger path re-
evaluation on downstream nodes that could in turn cache some evaluation on downstream nodes that could in turn cache some
potentially better paths downstream with the objective to reduce potentially better paths downstream with the objective to reduce
the signaling setup delay, should a reoptimization be performed the signaling setup delay, should a reoptimization be performed
by the head-end LSR. by the head-end LSR.
- If no preferable path can be found, the recommended mode is - If no preferable path can be found, the recommended mode is
for an LSR to relay the request (by setting the ˘Path re- for an LSR to relay the request (by setting the "Path re-
evaluation÷ bit of the SESSION-ATTRIBUTE object in RSVP path evaluation" bit of the SESSION-ATTRIBUTE object in RSVP path
message sent downstream). message sent downstream).
By preferable path, we mean a path having a lower cost. By default, Note that, by preferable path, we mean a path having a lower cost.
an LSR uses the TE metric to compute the shortest path that obeys a
set of constraints. Note that the head-end LSR might use the METRIC-
TYPE object (defined in [PATH-COMP]) in its path message to request
the LSR having a next hop defined as a loose hop or an abstract node
in the ERO to use another metric to determine a preferable path.
If the RSVP Path message with the ˘Path re-evaluation request÷ bit If the RSVP Path message with the "Path re-evaluation request" bit
set is lost, then the next request will be sent when the next set is lost, then the next request will be sent when the next
reoptimization trigger will occur on the head-end LSR. The solution reoptimization trigger will occur on the head-end LSR. The solution
to handle RSVP reliable messaging has been defined in [REFRESH- to handle RSVP reliable messaging has been defined in [REFRESH-
REDUCTION]. REDUCTION].
The network administrator may decide to establish some local policy The network administrator may decide to establish some local policy
specifying to ignore such request or to consider those requests not specifying to ignore such request or to consider those requests not
more frequently than a certain rate. more frequently than a certain rate.
The proposed mechanism does not make any assumption of the path The proposed mechanism does not make any assumption of the path
computation method performed by the ERO expansion process: it can computation method performed by the ERO expansion process.
either be local to each LSR in charge of computing the path to the
next loose hop/abstract node or PCE based.
5.3.2 Mid-point explicit notification mode 6.3.2 Mid-point explicit notification mode
In this mode, a mid-point LSR whose next hop is a loose hop or an In this mode, a mid-point LSR whose next hop is a loose hop or an
abstract node can locally trigger a path re-evaluation when a abstract node can locally trigger a path re-evaluation when a
configurable timer expires, some specific events occur (e.g. link-up configurable timer expires, some specific events occur (e.g. link-up
event for example) or the user explicitly requests it. If a event for example) or the user explicitly requests it. If a
preferable path is found compared to the existing one, the LSR sends preferable path is found compared to the existing one, the LSR sends
a Path Error to the head-end LSR (Error code 25 (Notify), Error sub- an RSVP PathErr to the head-end LSR (Error code 25 (Notify), Error
code=6 (˘preferable path exists÷). sub-code=6 ("preferable path exists").
There are other circumstances whereby a mid-point LSR MAY send an There are other circumstances whereby any mid-point LSR MAY send an
RSVP PathError message with the objective for the TE LSP to be RSVP PathErr message with the objective for the TE LSP to be rerouted
rerouted by its head-end LSR: when a link or a node will go down for by its head-end LSR: when a link or a node will go down for local
local maintenance reasons. In this case, the mid-point LSR where the maintenance reasons. In this case, the LSR where a local maintenance
local maintenance must be performed is responsible for sending an must be performed is responsible for sending an RSVP PathErr message
RSVP PathError message with Error code 25 and Error sub-code=7 or 8 with Error code 25 and Error sub-code=7 or 8 depending on the
depending on the affected network element (link or node). Then the affected network element (link or node). Then the first upstream node
first upstream node having performed the ERO expansion MUST perform having performed the ERO expansion MUST perform the following set of
the following set of actions: actions:
- The link (sub-code=7) or the node (sub-code=8) MUST be - The link (sub-code=7) or the node (sub-code=8) MUST be
locally registered for further reference (the TE database must locally registered for further reference (the TE database must
be updated) be updated)
- The RSVP Path Error message MUST be immediately forwarded - The RSVP PathErr message MUST be immediately forwarded
upstream to the head-end LSR. Note that in the case of TE LSP upstream to the head-end LSR. Note that in the case of TE LSP
spanning multiple administrative domains, it may be desirable spanning multiple administrative domains, it may be desirable
for the boundary LSR to modify the RSVP PathError message and for the boundary LSR to modify the RSVP PathErr message and
insert its own address for confidentiality reason. insert its own address for confidentiality reason.
Upon receiving a PathError message with Error code 25 and Error sub- Upon receiving an RSVP PathErr message with Error code 25 and Error
code 7 or 8, the Head-end LSR MUST perform a TE LSP reoptimization. sub-code 7 or 8, the Head-end LSR MUST perform a TE LSP
reoptimization.
Note that those modes are not exclusive: both the timer and event- Note that those modes are not exclusive: both the timer and event-
driven reoptimization triggers can be implemented on the head-end driven reoptimization triggers can be implemented on the head-end
and/or any mid-point LSR with potentially different timer values for and/or any mid-point LSR with potentially different timer values for
the timer driven reoptimization case. the timer driven reoptimization case.
A head-end LSR MAY decide upon receiving an explicit mid-point A head-end LSR MAY decide upon receiving an explicit mid-point
notification to delay its next path re-evaluation request. notification to delay its next path re-evaluation request.
5.3.3 ERO caching 6.3.3 ERO caching
Once a mid-point LSR has determined that a preferable path exists Once a mid-point LSR has determined that a preferable path exists
(after a reoptimization request has been received by the head-end LSR (after a reoptimization request has been received by the head-end LSR
or the reoptimization timer on the mid-point has fired), the more or the reoptimization timer on the mid-point has fired), the more
optimal path MAY be cached on the mid-point LSR for a limited amount optimal path MAY be cached on the mid-point LSR for a limited amount
of time to avoid having to recompute a path once the head-LSR of time to avoid having to recompute a path once the head-LSR
performs a make before break. This mode is optional. performs a make before break. This mode is optional. A default value
of 5 seconds is suggested.
6. Interoperability 7. Interoperability
An LSR not supporting the ˘Path re-evaluation request÷ bit of the An LSR not supporting the "Path re-evaluation request" bit of the
SESSION-ATTRIBUTE object SHALL forward it unmodified. SESSION-ATTRIBUTE object SHALL forward it unmodified.
Any head-end LSR not supporting a PathError Error code 25 message A head-end LSR not supporting an RSVP PathErr with Error code 25
with Error sub-code = 6, 7 or 8 MUST just silently ignore such Path message and Error sub-code = 6, 7 or 8 MUST just silently ignore such
Error messages. RSVP PathErr message.
7. Security considerations 8. Security considerations
This document defines a mechanism for a mid-point LSR to notify the This document defines a mechanism for a mid-point LSR to notify the
head-end LSR of this existence of a preferable path or the need to head-end LSR of this existence of a preferable path or the need to
reroute the TE LSP for maintenance purposes. Hence, in case of a TE reroute the TE LSP for maintenance purposes. Hence, in case of a TE
LSP spanning multiple administrative domains, it may be desirable for LSP spanning multiple administrative domains, it may be desirable for
a boundary LSR to modify the PathError message (Code 25, Error sub- a boundary LSR to modify the RSVP PathErr message (Code 25, Error
code=6 or 7) so as to preserve confidentiality across domains. sub-code=6,7 or 8) so as to preserve confidentiality across domains.
Furthermore, a head-end LSR may decide to ignore explicit
notification coming from a mid-point residing in another domain.
Similarly, an LSR may decide to ignore (or accept but up to a pre-
defined rate) path re-evaluation requests originated by a head-end
LSR of another domain.
8. Acknowledgments 9. IANA considerations
IANA will assign a new flag named "Path re-evaluation request" in the
SESSION-ATTRIBUTE object (C-Type 1 and 7) specified in [RFC3209].
Suggested value is (to be confirmed by IANA) 0x20.
IANA will also assign three new error sub-code values for the RSVP
PERR Notify message (Error code=25). Suggested values are (to be
confirmed by IANA):
6 Preferable path exists
7 Local link maintenance required
8 Local node maintenance required
10. Acknowledgments
The authors would like to thank Carol Iturralde, Miya Kohno, Francois The authors would like to thank Carol Iturralde, Miya Kohno, Francois
Le Faucheur, Philip Matthews, Jim Gibson, Jean-Louis Le Roux, Kenji Le Faucheur, Philip Matthews, Jim Gibson, Jean-Louis Le Roux, Kenji
Kumaki, Anca Zafir for their useful comments. A special thank to Kumaki, Anca Zafir, Dimitri Papadimitriou for their useful comments.
Adrian Farrel for his very valuable inputs. A special thank to Adrian Farrel for his very valuable inputs.
9. Intellectual property considerations 11. Intellectual property considerations
The IETF takes no position regarding the validity or scope of any The IETF takes no position regarding the validity or scope of any
Intellectual Property Rights or other rights that might be claimed to Intellectual Property Rights or other rights that might be claimed to
pertain to the implementation or use of the technology described in pertain to the implementation or use of the technology described in
this document or the extent to which any license under such rights this document or the extent to which any license under such rights
might or might not be available; nor does it represent that it has might or might not be available; nor does it represent that it has
made any independent effort to identify any such rights. Information made any independent effort to identify any such rights. Information
on the procedures with respect to rights in RFC documents can be on the procedures with respect to rights in RFC documents can be
found in BCP 78 and BCP 79. found in BCP 78 and BCP 79.
Copies of IPR disclosures made to the IETF Secretariat and any Copies of IPR disclosures made to the IETF Secretariat and any
assurances of licenses to be made available, or the result of an assurances of licenses to be made available, or the result of an
attempt made to obtain a general license or permission for the use of attempt made to obtain a general license or permission for the use of
such proprietary rights by implementers or users of this such proprietary rights by implementers or users of this
specification can be obtained from the IETF on-line IPR repository at specification can be obtained from the IETF on-line IPR repository at
http://www.ietf.org/ipr. http://www.ietf.org/ipr.
The IETF invites any interested party to bring to its attention any The IETF invites any interested party to bring to its attention any
copyrights, patents or patent applications, or other proprietary copyrights, patents or patent applications, or other proprietary
rights that may cover technology that may be required to implement rights that may cover technology that may be required to implement
this standard. Please address the information to the IETF at ietf- this standard. Please address the information to the IETF at
ipr@ietf.org. ietf-ipr@ietf.org.
10. References 12. References
Normative references 12.1 Normative references
[RFC] Bradner, S., "Key words for use in RFCs to Indicate Requirement [RFC] Bradner, S., "Key words for use in RFCs to Indicate Requirement
Levels," RFC 2119. Levels," RFC 2119.
[RFC3209] Awduche et al, "RSVP-TE: Extensions to RSVP for LSP [RFC3209] Awduche et al, "RSVP-TE: Extensions to RSVP for LSP
Tunnels", RFC3209, December 2001. Tunnels", RFC3209, December 2001.
[RFC3473] Berger L. et al.,"Generalized Multi-Protocol Label [RFC3473] Berger L. et al.,"Generalized Multi-Protocol Label
Switching (GMPLS) Signaling Resource ReserVation Protocol-Traffic Switching (GMPLS) Signaling Resource ReserVation Protocol-Traffic
Engineering (RSVP-TE) Extensions", RFC 3473, January 2003. Engineering (RSVP-TE) Extensions", RFC 3473, January 2003.
[REFRESH-REDUCTION] Berger et al, "RSVP Refresh Overhead Reduction [REFRESH-REDUCTION] Berger et al, "RSVP Refresh Overhead Reduction
Extensions", April 2001 Extensions", RFC2961, April 2001.
Informative references 12.2 Informative references
[TE-REQ] Awduche et al, "Requirements for Traffic Engineering over [TE-REQ] Awduche et al, "Requirements for Traffic Engineering over
MPLS", RFC2702, September 1999. MPLS", RFC2702, September 1999.
[INTER-AREA-TE-REQ], Le Roux, Vasseur, Boyle et al. "Requirements [INTER-AREA-TE-REQ], Le Roux, Vasseur, Boyle et al. "Requirements
for Inter-area MPLS Traffic Engineering ", draft-ietf-tewg-interarea- for Inter-area MPLS Traffic Engineering ", draft-ietf-tewg-interarea-
mpls-te-req-01, April 2004 (Work in progress). mpls-te-req-03, November 2004.
[INTER-AS-TE-REQ] Zhang et al, "MPLS Inter-AS Traffic Engineering [INTER-AS-TE-REQ] Zhang et al, "MPLS Inter-AS Traffic Engineering
requirements", draft-ietf-tewg-interas-mpls-te-req-06.txt, February requirements", draft-ietf-tewg-interas-mpls-te-req-09.txt, September
2004, Work in progress. 2004, Work in progress.
[INTER-DOMAIN-FW] Farrel A., Vasseur JP. and Ayyangar A., "A [INTER-DOMAIN-FW] Farrel A., Vasseur JP. and Ayyangar A., "A
Framework for Inter-Domain MPLS Traffic Engineering", draft-ietf- Framework for Inter-Domain MPLS Traffic Engineering", draft-ietf-
ccamp-inter-domain-framework-00.txt, August 2004, Work in progress ccamp-inter-domain-framework-02.txt, May 2005. Work in progress.
[INTER-DOMAIN-SIG] Ayyangar A. and Vasseur JP., "Inter domain MPLS
Traffic Engineering - RSVP-TE extensions ", draft-ayyangar-ccamp-
inter-domain-rsvp-te-00.txt÷, July 2004, Work in progress.
[INTER-DOMAIN-PATH-COMP] Vasseur JP., Ayyangar A., "Inter-domain [INTER-DOMAIN-SIG] Ayyangar A. and Vasseur JP., "Inter domain GMPLS
Traffic Engineering LSP path computation methods", draft-vasseur- Traffic Engineering - RSVP-TE extensions", draft-ietf-ccamp-inter-
ccamp-inter-domain-path-comp-00.txt, July 2004, Work in progress. domain-rsvp-te-00.txt", February 2005. Work in progress.
[GR-SHUT], Z. Ali et al, "Graceful Shutdown in MPLS Traffic [INTER-DOMAIN-PATH-COMP] Vasseur JP., Ayyangar A., "A Per-domain
Engineering Networks", draft-ali-ccamp-mpls-graceful-shutdown-00.txt, path computation method for computing Inter-domain Traffic
June 2004. Engineering (TE) Label Switched Path (LSP)", draft-ietf-ccamp-inter-
domain-pd-path-comp-00.txt, February 2005. Work in progress.
11. Author's Addresses 13. Authors' Addresses
Jean-Philippe Vasseur Jean-Philippe Vasseur (Editor)
CISCO Systems, Inc. CISCO Systems, Inc.
300 Beaver Brook 300 Beaver Brook
Boxborough, MA 01719 Boxborough, MA 01719
USA USA
Email: jpv@cisco.com Email: jpv@cisco.com
Yuichi Ikejiri Yuichi Ikejiri
NTT Communications Corporation NTT Communications Corporation
1-1-6, Uchisaiwai-cho, Chiyoda-ku 1-1-6, Uchisaiwai-cho, Chiyoda-ku
Tokyo 100-8019 Tokyo 100-8019
JAPAN JAPAN
Email: y.ikejiri@ntt.com Email: y.ikejiri@ntt.com
Raymond Zhang Raymond Zhang
Infonet Services Corporation Infonet Services Corporation
2160 E. Grand Ave. 2160 E. Grand Ave.
El Segundo, CA 90025 El Segundo, CA 90025
USA USA
Email: raymond_zhang@infonet.com Email: raymond_zhang@infonet.com
Full Copyright Statement 14. Full Copyright Statement
"Copyright (C) The Internet Society (year). This document is subject Copyright (C) The Internet Society (2005). This document is subject
to the rights, licenses and restrictions contained in BCP 78, and to the rights, licenses and restrictions contained in BCP 78, and
except as set forth therein, the authors retain all their rights." except as set forth therein, the authors retain all their rights.
"This document and the information contained herein are provided on This document and the information contained herein are provided on an
an
"AS IS" basis and THE CONTRIBUTOR, THE ORGANIZATION HE/SHE REPRESENTS "AS IS" basis and THE CONTRIBUTOR, THE ORGANIZATION HE/SHE REPRESENTS
OR IS SPONSORED BY (IF ANY), THE INTERNET SOCIETY AND THE INTERNET OR IS SPONSORED BY (IF ANY), THE INTERNET SOCIETY AND THE INTERNET
ENGINEERING TASK FORCE DISCLAIM ALL WARRANTIES, EXPRESS OR IMPLIED, ENGINEERING TASK FORCE DISCLAIM ALL WARRANTIES, EXPRESS OR
INCLUDING BUT NOT LIMITED TO ANY WARRANTY THAT THE USE OF THE IMPLIED,INCLUDING BUT NOT LIMITED TO ANY WARRANTY THAT THE USE OF THE
INFORMATION HEREIN WILL NOT INFRINGE ANY RIGHTS OR ANY IMPLIED INFORMATION HEREIN WILL NOT INFRINGE ANY RIGHTS OR ANY IMPLIED
WARRANTIES OF MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE." WARRANTIES OF MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE.
 End of changes. 

This html diff was produced by rfcdiff 1.23, available from http://www.levkowetz.com/ietf/tools/rfcdiff/