[Docs] [txt|pdf] [Tracker] [Email] [Diff1] [Diff2] [Nits] [IPR]

Versions: 00 01 02 draft-ietf-ccamp-loose-path-reopt

draft-vasseur-ccamp-loose-path-reopt-01.txt                April 2004

IETF Internet Draft                      Jean-Philippe Vasseur (Editor)
Proposed Status : Standard                           Cisco Systems, Inc
Expires: October 2004                                    Yuichi Ikejiri
                                         NTT Communications Corporation

                                                             April 2004


  Reoptimization of MPLS Traffic Engineering loosely routed LSP paths

Status of this Memo

This document is an Internet-Draft and is in full conformance with all
provisions of Section 10 of RFC2026. Internet-Drafts are
Working documents of the Internet Engineering Task Force (IETF), its
areas, and its working groups.  Note that other groups may also
distribute working documents as Internet-Drafts.

Internet-Drafts are draft documents valid for a maximum of six months
and may be updated, replaced, or obsoleted by other documents at any
time. It is inappropriate to use Internet-Drafts as reference material
or to cite them other than as "work in progress."

The list of current Internet-Drafts can be accessed at
The list of Internet-Draft Shadow Directories can be accessed at

 Vasseur and Ikejiri                                         1

draft-vasseur-ccamp-loose-path-reopt-01.txt                 April 2004

Table of content

1. Introduction
2. Establishment of a loosely routed TE LSP
3. Reoptimization of a loosely routed TE LSP path
4. Signalling extensions
4.1 ERO expansion signaling request
4.2 New Path Error sub-codes
5. Mode of operation
5.1 Head-end reoptimization control
5.2 Reoptimization triggers
5.3 Head-end request versus mid-point explicit notification modes
5.3.1 Head-end request mode
5.3.2 Mid-point explicit notification mode
5.3.3 ERO cashing
6. Interoperability
7. Security considerations
8. Acknowledgments
9. Intellectual property


The aim of this document is to propose a mechanism for the
reoptimization of MPLS Traffic Engineering loosely routed LSP paths. A
loosely routed LSP path is 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 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 ERO expansion on 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
  path exists to reach a loose hop (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. A better path is defined as
  a lower cost path, where the cost is determined by the metric used
  to compute the path.

The proposed mechanism applies to intra-domain and inter-domain packet
and non-packet TE LSPs when the path is defined as a list of loose
hops. Examples of domains are IGP areas and Autonomous Systems.

1.     Introduction

The Traffic Engineering Work Group has specified a set of requirements
for inter-area [INTER-AREA-TE-REQ] and inter-AS [INTER-AS-TE-REQ] MPLS
Traffic Engineering. Both requirements documents specify the need for
some mechanism providing an option for the head-end to control the

 Vasseur and Ikejiri                                         2

draft-vasseur-ccamp-loose-path-reopt-01.txt                 April 2004

reoptimization process, should a more optimal path exist in a
downstream domain (IGP area or Autonomous System).

This document proposed a solution to meet this requirement, in addition
to some mechanism to discover the existence of 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

A loosely routed explicit path is a path specified as a combination of
strict and loose hop(s) that contains at least one loose hop and a set
of zero or more strict hop(s). Loose hops are listed in the ERO object
of the RSVP Path message with the L flag of the Ipv4 or the IPv6 prefix
sub-object set, as defined in [RSVP-TE]. In this case, each LSR along
path whose next hop is specified as a loose hop triggers a path
computation (also referred to as an ERO expansion), before forwarding
the RSVP Path message downstream. The path computation may be either be
performed by means of CSPF or any Path Computation Element (PCE) and
can be partial (up to the next loose hop) and complete (up to the TE
LSP destination).

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
applies to loosely routed explicit paths within a single routing domain
and across multiple Autonomous Systems.

The examples below are provided with OSPF as the IGP but the described
set of mechanisms similarly apply to IS-IS.

An example of an explicit loosely routed TE LSP signaling.

<---area 1--><-area 0--><-area 2->

 R1---R2----R3---R6    R8-----R10
  |          |    |   / |\    |
  |          |    | --  | --\ |
  |          |    |/    |    \|

- R3, R5, R8 and R9 are ABRs
- The path 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: R1-
R3(loose)-R8(loose)-R11(loose). R3, R8 and R11 are defined as loose

Step 1: R1 builds the following ERO object: R1(S)-R2(S)-R3(S)-R8(L)-
R11(L) where:
      S: Strict hop (L=0)
      L: Loose hop (L=1)

 Vasseur and Ikejiri                                         3

draft-vasseur-ccamp-loose-path-reopt-01.txt                 April 2004

The R1-R2-R3 path obeys T1Æs set of constraints

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)

Step 3: R3 determines that the next hop (R8) is a loose hop (not
directly connected to R3) and then performs an ERO expansion operation
to reach the next loose hops R8 either by means of CSPF or any other
PCE-based path computation method. The new ERO becomes: R6(S)-R7(S)-

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 computation.
Note that PCE-based mechanisms may also allow for full route
computation (up to the final destination).

Step 4: the same procedure applies at R8 to reach T1Æs destination:

3.     Reoptimization of a loosely routed TE LSP path

Once a loosely routed explicit TE LSP is set up, it is maintained
through normal RSVP procedures. Then a more 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 between R6 and R8 is added or
restored that provides a shorter path between R3 and R8 (R3-R6-R8) than
the existing R3-R6-R7-R8 path). Since the better path is not visible
from the head-end LSR by means of the IGP because it does not belong to
the head-end IGP area, the head-end cannot make use of this better path
(and perform a make before break) when appropriate. Hence some
mechanism is required to detect the existence of such a better path and
notifies the head-end accordingly.

This document proposes a mechanism that allows:

      - A head-end LSR to trigger on every LSR whose next hop is a
      loose hop the re-evaluation of the current path in order to
      detect a potential more optimal path,

      - A mid-point LSR whose next hop is a loose-hop to signal
      (using a new ERROR-SPEC sub-code carried in a Path Error Notify
      message) to the head-end that a better path exists (a path with
      a lower cost, where the cost is defined by the metric used to
      compute the path û see [SEC-METRIC], [METRIC]).

Then once the existence of such a better path is notified to the head-
end, the head-end LSR can decide (depending on the TE LSP
characteristics) whether to perform a TE LSP graceful reoptimization.
There is another scenario whereby notifying the head-end of the

 Vasseur and Ikejiri                                         4

draft-vasseur-ccamp-loose-path-reopt-01.txt                 April 2004

existence of a better path is desirable: if the current path is about
the fail due to some (link or node) required maintenance.

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 better path
exists and if such a reoptimized is desired.

4.     Signalling extensions

4.1.    ERO expansion signaling request

The following new flag of the SESSION_ATTRIBUTE object (C-Type 1 and 7)
is defined:

      ERO Expansion request:  0x20

This flag indicates that a new ERO expansion is requested.

Note: in case of link bundling for instance, although the resulting ERO
might be identical, this might give the opportunity for a mid-point LSR
to locally select another link within a bundle, although strictly
speaking, the ERO has not changed.

4.2.   New Path Error sub-code

As defined in [RSVP-TE], the ERROR-CODE 25 an ERROR SPEC object
corresponds to a Path Error - Notify Error.

This document proposes to add three new sub-codes:
      6       Better path exists
      7      Local link maintenance required
      8      Local node maintenance required

The details about the local maintenance required modes are detailed in
section 5.3.2

5.     Mode of operation

5.1.   Head-end reoptimization control

The notification process of a better path (shorter path or new path due
to some maintenance required on the current path) is by nature de-
correlated from the reoptimization operation. In other words, the
location where a potentially more optimal path is discovered does not
have to be where the TE LSP is actually reoptimized. This document
applies to the context of a head-end reoptimization.

5.2.   Reoptimization triggers

There are two possible reoptimization triggers:

 Vasseur and Ikejiri                                         5

draft-vasseur-ccamp-loose-path-reopt-01.txt                 April 2004

      - Timer-based: a reoptimization is triggered (process
      evaluating whether a more optimal path can be found) when a
      configurable timer expires,

      - Event-driven: a reoptimization is triggered when a
      particular network event occurs (such as a ôLink-UPö event),

      - Operator-driven: a reoptimization is manually triggered by
      the Operator.

It is RECOMMENDED for an implementation supporting the extensions
proposed in this document to support both modes.

5.3.   Head-end request versus mid-point explicit notification modes

This document defines two modes:

      - ôHead-end requesting modeö: the request for a new path
      evaluation of a loosely routed TE LSP is requested by the head-
      end LSR.

      - ôMid-point explicit notificationö: a mid-point LSR having
      determined that a better path (than the current path is use)
      exists or having the desire to perform a link/node local
      maintenance explicitly notifies the head-end LSR which will in
      turn decide whether to perform a reoptimization.

      Head-end request mode

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 immediately sends an RSVP Path message with the ôERO
Expansion requestö bit of the SESSION-ATTRIBUTE object set. This bit is
then cleared in subsequent RSVP path messages sent downstream.

Upon receiving a Path message with the ôERO expansion requestö bit set,
every LSR for which the next abstract node contained in the ERO is
defined as a loose hop, performs the following set of actions:

1) A new ERO expansion is triggered and the newly computed path is
compared to the existing path:

      - If a better path can be found, the LSR MUST immediately send
      a Path Error to the head-end LSR (Error code 25 (Notify), sub-
      code=6 (better path exists)). At this point, the LSR MAY decide
      to clear the ERO expansion request bit of the SESSION-ATTRIBUTE
      object in subsequent RSVP Path messages sent downstream: this
      mode is the RECOMMENDED mode.

      The sending of a Path Error Notify message ôBetter path existsö
      to the head-end LSR will notify the head-end LSR of the

 Vasseur and Ikejiri                                         6

draft-vasseur-ccamp-loose-path-reopt-01.txt                 April 2004

      existence of a better path (e.g in a downstream area/AS or in
      another location within a single domain). Hence, triggering
      additional ERO expansions on downstream nodes is unnecessary.
      The only motivation to forward subsequent RSVP Path messages
      with the ôExpansion request bitö of the SESSION-ATTRIBUTE
      object set would be to trigger path re-evaluation on downstream
      nodes that could in turn cache some potentially better paths
      downstream with the objective to reduce the signaling setup
      delay, should a reoptimization be performed by the head-end

      - If no better path can be found, the recommended mode is for
      an LSR to relay the request (by setting the ERO expansion bit
      of the SESSION-ATTRIBUTE object in RSVP path message sent
      downstream) only if no better path has been found on this mid-
      point LSR.

By better path, we mean a path having a lower cost. By default, 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 in the ERO to use another
metric to determine the best path.

If the RSVP Path message with the ôERO expansion requestö bit set is
lost, then the next request will be sent when the reoptimization event
will trigger on the head-end LSR. The solution to handle RSVP reliable
messaging has been defined in [REFRESH-REDUCTION].

The network administrator may decide to establish some local policy
specifying to ignore such request or to consider those requests not
more frequently than a certain rate.

The proposed mechanism does not make any assumption of the path
computation method performed by the ERO expansion process: it can
either be CSPF or PCE based.

      Mid-point explicit notification mode

In this mode, a mid-point LSR whose next abstract node is a loose hop
can locally trigger an ERO expansion (when a configurable timer expires
or on event-driven basis (link-up event for example) or the user
explicitly requests it). If a better path is found compared to the
existing one, the LSR sends a Path Error to the head-end LSR (Error
code 25 (Notify), sub-code=6 (better path exists)).

There are other circumstances in which a mid-point LSR MAY send an RSVP
Path Error Notify message with the objective for the TE LSP to be
rerouted by its head-end LSR: when a link or a node will go down for
local maintenance reasons. In this case, the mid-point LSR where the
local maintenance must be performed is responsible for sending an RSVP

 Vasseur and Ikejiri                                         7

draft-vasseur-ccamp-loose-path-reopt-01.txt                 April 2004

Path Error Notify message with the sub-code=7 or 8 depending on the
affected network element (link or node). Then the first upstream node
having performed the ERO expansion MUST perform the following set of

      - The link (sub-code=7) or the node (sub-code=8) MUST be
      locally registered for further reference (the TE database must
      be updated)

      - The RSVP Path Error message MUST be immediately forwarded
      unchanged upstream to the head-end LSR.

Upon, receiving a Path Error Notify message with 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 even-driven
reoptimization triggers can be implemented on the head-end and/or any
mid-point LSR with potentially different timer values for the timer
driven reoptimization case.

A head-end LSR MAY decide upon receiving an explicit mid-point
notification to delay its next ERO expansion request.

      ERO caching

Once a mid-point LSR has determined that a better path exists (after a
reoptimization request has been received by the head-end LSR 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 of time to
avoid having to recompute a route once the head-LSR performs a make
before break. This mode is optional.

6.     Interoperability

An LSR not supporting the ôERO expansion requestö bit of the SESSION-
ATTRIBUTE object SHOULD just ignore it.

Any head-end LSR not supporting a Path Error Notify message with sub-
code = 6, 7 or 8 MUST just silently ignore such Path Error messages.

7.     Security Considerations

The practice described in this document does not raise specific
security issues beyond those of existing TE.

8.     Acknowledgments

The authors would like to thank Carol Iturralde, Miya Kohno, Francois
Le Faucheur, Philip Matthews, Jim Gibson, Raymond Zhang, Jean-Louis Le
Roux and Kenji Kumaki for their useful and valuable comments.

 Vasseur and Ikejiri                                         8

draft-vasseur-ccamp-loose-path-reopt-01.txt                 April 2004

9.     Intellectual Property

The IETF takes no position regarding the validity or scope of any
intellectual property or other rights that might be claimed to pertain
to the implementation or use of the technology described in this
document or the extent to which any license under such rights might or
might not be available; neither does it represent that it has made any
effort to identify any such rights. Information on the IETF's
procedures with respect to rights in standards-track and standards-
related documentation can be found in BCP-11. Copies of claims of
rights made available for publication and any 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 such proprietary rights by
implementors or users of this specification can be obtained from the
IETF Secretariat.

The IETF invites any interested party to bring to its attention any
copyrights, patents or patent applications, or other proprietary rights
which may cover technology that may be required to practice this
standard. Please address the information to the IETF Executive

The IETF has been notified of intellectual property rights claimed in
regard to some or all of the specification contained in this document.
For more information consult the online list of claimed rights.

Normative References

[RFC] Bradner, S., "Key words for use in RFCs to Indicate Requirement
Levels," RFC 2119.

[RSVP-TE] Awduche et al, "RSVP-TE: Extensions to RSVP for LSP Tunnels",
RFC3209, December 2001.

Informative references

[TE-REQ] Awduche et al, Requirements for Traffic Engineering over MPLS,
RFC2702, September 1999.

[METRICS] Fedyk et al, ôMultiple Metrics for Traffic Engineering with
IS-IS and OSPFö, draft-fedyk-isis-ospf-te-metrics-01.txt, November

[DS-TE] Le Faucheur et al, ôRequirements for support of Diff-Serv-aware
MPLS Traffic Engineeringö, draft-ietf-tewg-diff-te-reqts-01.txt, June

 Vasseur and Ikejiri                                         9

draft-vasseur-ccamp-loose-path-reopt-01.txt                 April 2004

[MULTI-AREA-TE] Kompella et al, ôMulti-area MPLS Traffic Engineeringö,
draft-kompella-mpls-multiarea-te-03.txt, June 2002.

[SEC-METRIC] Le Faucheur et all,ô Use of Interior Gateway Protocol
(IGP) Metric as a second MPLS Traffic Engineering Metricö, draft-ietf-
tewg-te-metric-igp-02.txt, September, 2002.

[INTER-AREA-TE-REQ], Le Roux, Vasseur, Boyle et al. ½ Requirements for
Inter-area MPLS Traffic Engineering ©, draft-ietf-tewg-interarea-mpls-
te-req-01, April 2004 (Work in progress).

[INTER-AS-TE-REQ] Zhang et al, ôMPLS Inter-AS Traffic Engineering
requirementsö, draft-ietf-tewg-interas-mpls-te-req-06.txt, February
2004, Work in progress.

[INTER-AREA-AS] Vasseur and Ayyangar, ôInter-area and Inter-AS Traffic
Engineeringö, draft-vasseur-inter-area-AS-TE-00.txt, February 2004,
work in progress.

[REFRESH-REDUCTION] Berger et al, ôRSVP Refresh Overhead Reduction
Extensionsö, April 2001

Authors' addresses:                                                 Formatted:

Jean-Philippe Vasseur
Cisco Systems, Inc.
300 Beaver Brook Road
Boxborough , MA - 01719
Email: jpv@cisco.com                                                 Formatted:
Yuichi Ikejiri                                                      Formatted:
NTT Communications Corporation                                        Field Code
1-1-6, Uchisaiwai-cho, Chiyoda-ku
Tokyo 100-8019
Email: y.ikejiri@ntt.com                                             Formatted:
Full Copyright Statement                                             Formatted:
                                                                  Field Code
   Copyright (C) The Internet Society (2004). All Rights

   This document and translations of it may be copied and
   furnished to others, and derivative works that comment on
   or otherwise explain it or assist in its implementation may
   be prepared, copied, published and distributed, in whole or
   in part, without restriction of any kind, provided that the
   above copyright notice and this paragraph are included on
   all such copies and derivative works.  However, this
   document itself may not be modified in any way, such as by

 Vasseur and Ikejiri                                        10

draft-vasseur-ccamp-loose-path-reopt-01.txt                 April 2004

   removing the copyright notice or references to the Internet
   Society or other Internet organizations, except as needed
   for the purpose of developing Internet standards in which
   case the procedures for copyrights defined in the Internet
   Standards process must be followed, or as required to
   translate it into languages other than English.

   The limited permissions granted above are perpetual and
   will not be revoked by the Internet Society or its
   successors or assigns. This document and the information
   contained herein is provided on an "AS IS" basis and THE

 Vasseur and Ikejiri                                        11

Html markup produced by rfcmarkup 1.129d, available from https://tools.ietf.org/tools/rfcmarkup/