1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201 202 203 204 205 206 207 208 209 210 211 212 213 214 215 216 217 218 219 220 221 222 223 224 225 226 227 228 229 230 231 232 233 234 235 236 237 238 239 240 241 242 243 244 245 246 247 248 249 250 251 252 253 254 255 256 257 258 259 260 261 262 263 264 265 266 267 268 269 270 271 272 273 274 275 276 277 278 279 280 281 282 283 284 285 286 287 288 289 290 291 292 293 294 295 296 297 298 299 300 301 302 303 304 305 306 307 308 309 310 311 312 313 314 315 316 317 318 319 320 321 322 323 324 325 326 327 328 329 330 331 332 333 334 335 336 337 338 339 340 341 342 343 344 345 346 347 348 349 350 351 352 353 354 355 356 357 358 359 360 361 362 363 364 365 366 367 368 369 370 371 372 373 374 375 376 377 378 379 380 381 382 383 384 385 386 387 388 389 390 391 392 393 394 395 396 397 398 399 400 401 402 403 404 405 406 407 408 409 410 411 412 413 414 415 416 417 418 419 420 421 422 423 424 425 426 427 428 429 430 431 432 433 434 435 436 437 438 439 440 441 442 443 444 445 446 447 448 449 450 451 452 453 454 455 456 457 458 459 460 461 462 463 464 465 466 467 468 469 470 471 472 473 474 475 476 477 478 479 480 481 482 483 484 485 486 487 488 489 490 491 492 493 494 495 496 497 498 499 500 501 502 503 504 505 506 507 508 509 510 511 512 513 514 515 516 517 518 519 520 521 522 523 524 525 526 527 528 529 530 531 532 533 534 535 536 537 538 539 540 541 542 543 544 545 546 547 548 549 550 551 552 553 554 555 556 557 558 559 560 561 562 563 564 565 566 567 568 569 570 571 572 573 574 575 576 577 578 579 580 581 582 583 584 585 586 587 588 589 590 591 592 593 594 595 596 597 598 599 600 601 602 603 604 605 606 607 608 609 610 611 612 613 614 615 616 617 618 619 620 621 622 623 624 625 626 627 628 629 630 631 632 633 634 635 636 637 638 639 640 641 642 643 644 645 646 647 648 649 650 651 652 653 654 655 656 657 658 659 660 661 662 663 664 665 666 667 668 669 670 671 672 673 674 675 676 677 678 679 680 681 682 683 684 685 686 687 688 689 690 691 692 693 694 695 696 697 698 699 700 701 702 703 704 705 706 707 708 709 710 711 712 713 714 715 716 717 718 719 720 721 722 723 724 725 726 727 728 729 730 731 732 733 734 735 736 737 738 739 740 741 742 743 744 745 746 747 748 749 750 751 752 753 754 755 756 757 758 759 760 761 762 763 764 765 766 767 768 769 770 771 772 773 774 775 776 777 778 779 780 781
  
     | 
    
      <pre>Network Working Group                                   JP. Vasseur, Ed.
Request for Comments: 4736                           Cisco Systems, Inc.
Category: Informational                                       Y. Ikejiri
                                          NTT Communications Corporation
                                                                R. Zhang
                                                              BT Infonet
                                                           November 2006
     <span class="h1">Reoptimization of Multiprotocol Label Switching (MPLS) Traffic</span>
       <span class="h1">Engineering (TE) Loosely Routed Label Switched Path (LSP)</span>
Status of This Memo
   This memo provides information for the Internet community.  It does
   not specify an Internet standard of any kind.  Distribution of this
   memo is unlimited.
Copyright Notice
   Copyright (C) The IETF Trust (2006).
Abstract
   This document defines a mechanism for the reoptimization of loosely
   routed MPLS and GMPLS (Generalized Multiprotocol Label Switching)
   Traffic Engineering (TE) Label Switched Paths (LSPs) signaled with
   Resource Reservation Protocol Traffic Engineering (RSVP-TE).  This
   document proposes a mechanism that allows a TE LSP head-end Label
   Switching Router (LSR) to trigger a new path re-evaluation on every
   hop that has 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) or that the TE LSP must be reoptimized
   (because of maintenance required on the TE LSP path).  The proposed
   mechanism applies to the cases of intra- and inter-domain (Interior
   Gateway Protocol area (IGP area) or Autonomous System) packet and
   non-packet TE LSPs following a loosely routed path.
<span class="grey">Vasseur, et al.              Informational                      [Page 1]</span></pre>
<hr class='noprint'/><!--NewPage--><pre class='newpage'><span id="page-2" ></span>
<span class="grey"><a href="./rfc4736">RFC 4736</a>               MPLS-TE Loosely Routed LSP          November 2006</span>
Table of Contents
   <a href="#section-1">1</a>. Introduction ....................................................<a href="#page-3">3</a>
   <a href="#section-2">2</a>. Terminology .....................................................<a href="#page-3">3</a>
      <a href="#section-2.1">2.1</a>. Requirements Language ......................................<a href="#page-4">4</a>
   <a href="#section-3">3</a>. Establishment of a Loosely Routed TE LSP ........................<a href="#page-4">4</a>
   <a href="#section-4">4</a>. Reoptimization of a Loosely Routed TE LSP Path ..................<a href="#page-6">6</a>
   <a href="#section-5">5</a>. Signaling Extensions ............................................<a href="#page-7">7</a>
      <a href="#section-5.1">5.1</a>. Path Re-Evaluation Request .................................<a href="#page-7">7</a>
      <a href="#section-5.2">5.2</a>. New Error Value Sub-Codes ..................................<a href="#page-7">7</a>
   <a href="#section-6">6</a>. Mode of Operation ...............................................<a href="#page-7">7</a>
      <a href="#section-6.1">6.1</a>. Head-End Reoptimization Control ............................<a href="#page-7">7</a>
      <a href="#section-6.2">6.2</a>. Reoptimization Triggers ....................................<a href="#page-8">8</a>
      6.3. Head-End Request versus Mid-Point Explicit
           Notification Functions .....................................<a href="#page-8">8</a>
           <a href="#section-6.3.1">6.3.1</a>. Head-End Request Function ...........................<a href="#page-8">8</a>
           <a href="#section-6.3.2">6.3.2</a>. Mid-Point Explicit Notification ....................<a href="#page-10">10</a>
           <a href="#section-6.3.3">6.3.3</a>. ERO Caching ........................................<a href="#page-10">10</a>
   <a href="#section-7">7</a>. Applicability and Interoperability .............................<a href="#page-11">11</a>
   <a href="#section-8">8</a>. IANA Considerations ............................................<a href="#page-11">11</a>
   <a href="#section-9">9</a>. Security Considerations ........................................<a href="#page-11">11</a>
   <a href="#section-10">10</a>. Acknowledgements ..............................................<a href="#page-12">12</a>
   <a href="#section-11">11</a>. References ....................................................<a href="#page-12">12</a>
      <a href="#section-11.1">11.1</a>. Normative References .....................................<a href="#page-12">12</a>
      <a href="#section-11.2">11.2</a>. Informative References ...................................<a href="#page-12">12</a>
<span class="grey">Vasseur, et al.              Informational                      [Page 2]</span></pre>
<hr class='noprint'/><!--NewPage--><pre class='newpage'><span id="page-3" ></span>
<span class="grey"><a href="./rfc4736">RFC 4736</a>               MPLS-TE Loosely Routed LSP          November 2006</span>
<span class="h2"><a class="selflink" id="section-1" href="#section-1">1</a>.  Introduction</span>
   This document defines a mechanism for the reoptimization of loosely
   routed MPLS and GMPLS (Generalized Multiprotocol Label Switching)
   Traffic Engineering LSPs signaled with RSVP-TE (see [<a href="./rfc3209" title=""RSVP-TE: Extensions to RSVP for LSP Tunnels"">RFC3209</a>] and
   [<a href="./rfc3473" title=""Generalized Multi-Protocol Label Switching (GMPLS) Signaling Resource ReserVation Protocol-Traffic Engineering (RSVP-TE) Extensions"">RFC3473</a>]).  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 Explicit Route Object (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).
   The Traffic Engineering Working Group (TE WG) has specified a set of
   requirements for inter-area and inter-AS MPLS Traffic Engineering
   (see [<a href="./rfc4105" title=""Requirements for Inter-Area MPLS Traffic Engineering"">RFC4105</a>] and [<a href="./rfc4216" title=""MPLS Inter-Autonomous System (AS) Traffic Engineering (TE) Requirements"">RFC4216</a>]).  Both requirements documents specify
   the need for some mechanism providing an option for the head-end LSR
   to control the reoptimization process should a more optimal path
   exist in a downstream domain (IGP area or Autonomous System).  This
   document defines a solution to meet this requirement and proposes two
   mechanisms:
   (1) The first mechanism allows a head-end LSR to trigger a new path
       re-evaluation on every hop that has a next hop defined as a loose
       hop or abstract node and get a notification from the mid-point as
       to whether a better path exists.
   (2) The second mechanism allows a mid-point LSR to explicitly signal
       to the head-end LSR either that a better path exists to reach a
       loose/abstract hop (compared to the current path) or that the TE
       LSP must be reoptimized because of some maintenance required
       along the TE LSP path.  In this case, the notification is sent by
       the mid-point LSR without being polled by the head-end LSR.
   A better path is defined as a lower cost path, where the cost is
   determined by the metric used to compute the path.
<span class="h2"><a class="selflink" id="section-2" href="#section-2">2</a>.  Terminology</span>
   ABR: Area Border Router.
   ERO: Explicit Route Object.
   LSR: Label Switching Router.
   TE LSP: Traffic Engineering Label Switched Path.
   TE LSP head-end: head/source of the TE LSP.
<span class="grey">Vasseur, et al.              Informational                      [Page 3]</span></pre>
<hr class='noprint'/><!--NewPage--><pre class='newpage'><span id="page-4" ></span>
<span class="grey"><a href="./rfc4736">RFC 4736</a>               MPLS-TE Loosely Routed LSP          November 2006</span>
   TE LSP tail-end: tail/destination of the TE LSP.
   Interior Gateway Protocol Area (IGP Area): OSPF Area or IS-IS level.
   Intra-area TE LSP: A TE LSP whose path does not transit across areas.
   Inter-area TE LSP: A TE LSP whose path transits across at least two
   different IGP areas.
   Inter-AS MPLS TE LSP: A TE LSP whose path transits across at least
   two different Autonomous Systems (ASes) or sub-ASes (BGP
   confederations).
<span class="h3"><a class="selflink" id="section-2.1" href="#section-2.1">2.1</a>.  Requirements Language</span>
   The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT",
   "SHOULD", "SHOULD NOT", "RECOMMENDED", "MAY", and "OPTIONAL" in this
   document are to be interpreted as described in <a href="./rfc2119">RFC 2119</a> [<a href="./rfc2119" title=""Key words for use in RFCs to Indicate Requirement Levels"">RFC2119</a>].
<span class="h2"><a class="selflink" id="section-3" href="#section-3">3</a>.  Establishment of a Loosely Routed TE LSP</span>
   The aim of this section is purely to summarize the mechanisms
   involved in the establishment of a loosely routed TE LSP, as
   specified in [<a href="./rfc3209" title=""RSVP-TE: Extensions to RSVP for LSP Tunnels"">RFC3209</a>].  The reader should see <a href="./rfc3209">RFC 3209</a> for a more
   detailed description of these mechanisms.
   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 specified in [<a href="./rfc3209" title=""RSVP-TE: Extensions to RSVP for LSP Tunnels"">RFC3209</a>], 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.
   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
   referred to as an ERO expansion), before forwarding the RSVP Path
   message downstream.  The computed path may be either partial (up to
   the next loose hop) or complete (set of strict hops up to the TE LSP
   destination).
   Note that although the examples in the rest of this document are
   provided in the context of MPLS inter-area TE, the proposed mechanism
   applies equally to loosely routed paths within a single routing
<span class="grey">Vasseur, et al.              Informational                      [Page 4]</span></pre>
<hr class='noprint'/><!--NewPage--><pre class='newpage'><span id="page-5" ></span>
<span class="grey"><a href="./rfc4736">RFC 4736</a>               MPLS-TE Loosely Routed LSP          November 2006</span>
   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 follows.
   <---area 1--><-area 0--><-area 2->
    R1---R2----R3---R6    R8---R10
     |          |    |   / | \  |
     |          |    |  /  |  \ |
     |          |    | /   |   \|
    R4---------R5---R7----R9---R11
   Assumptions
   - R3, R5, R8, and R9 are ABRs.
   - 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:  R1-R3(loose)-R8(loose)-R11(loose).  R3, R8, and R11 are
     defined as loose hops.
     Step 1: R1 determines that the next hop (R3) is a loose hop (not
     directly connected to R1) and then performs an ERO expansion
     operation to reach the next loose hops R3.  The new ERO becomes:
     R2(S)-R3(S)-R8(L)-R11(L), where S is a strict hop (L=0) and L is a
     loose hop (L=1).
     The R1-R2-R3 path satisfies T1's set of constraints.
     Step 2: The RSVP Path message is then forwarded by R1 following the
     path specified in the ERO object 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.  The new ERO becomes:
     R6(S)-R7(S)-R8(S)-R11(L).
     Note: In this example, the assumption is made that the path is
     computed on a per-loose-hop basis, also referred to as a partial
     route computation.  Note that other path computation techniques may
     result in complete paths (set of strict hops up to the final
     destination).
     Step 4: The same procedure is repeated by R8 to reach T1's
     destination (R11).
<span class="grey">Vasseur, et al.              Informational                      [Page 5]</span></pre>
<hr class='noprint'/><!--NewPage--><pre class='newpage'><span id="page-6" ></span>
<span class="grey"><a href="./rfc4736">RFC 4736</a>               MPLS-TE Loosely Routed LSP          November 2006</span>
<span class="h2"><a class="selflink" id="section-4" href="#section-4">4</a>.  Reoptimization of a Loosely Routed TE LSP Path</span>
   Once a loosely routed, explicit TE LSP is set up, it is maintained
   through normal RSVP procedures.  During the TE LSP lifetime, a more
   optimal path might appear between an LSR and its next loose hop (for
   the sake of illustration, suppose that in the example above a link
   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).  Since a preferable (e.g., shorter) path might not be visible
   from the head-end LSR by means of the IGP if the head-end LSR does
   not belong to the same IGP area where the associated topology change
   occurred, the head-end cannot make use of this shorter path (and
   reroute the LSP using a make-before-break technique as described in
   [<a href="./rfc3209" title=""RSVP-TE: Extensions to RSVP for LSP Tunnels"">RFC3209</a>]) when appropriate.  Thus, a new mechanism specified in this
   document is required to detect the existence of such a preferable
   path and to notify the head-end LSR accordingly.
   This document defines a mechanism that allows
   - 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 path in
     order to detect a potentially more optimal path; and
   - 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 RSVP
     PathErr message) to the head-end LSR that a preferable path exists
     (a path with a lower cost, where the cost definition is determined
     by some metric).
   Once the head-end LSR has been notified of the existence of such a
   preferable path, it can decide (depending on the TE LSP
   characteristics) whether to perform a TE LSP graceful reoptimization
   such as the "make-before-break" procedure.
   There is another scenario whereby notifying the head-end LSR of the
   existence of a better path is desirable: if the current path is about
   to fail due to some (link or node) required maintenance.
   This mechanism allows the head-end LSR to reoptimize a TE LSP by
   making use of the non-disruptive make-before-break procedure if and
   only if a preferable path exists and if such a reoptimization is
   desired.
<span class="grey">Vasseur, et al.              Informational                      [Page 6]</span></pre>
<hr class='noprint'/><!--NewPage--><pre class='newpage'><span id="page-7" ></span>
<span class="grey"><a href="./rfc4736">RFC 4736</a>               MPLS-TE Loosely Routed LSP          November 2006</span>
<span class="h2"><a class="selflink" id="section-5" href="#section-5">5</a>.  Signaling Extensions</span>
   A new flag in the SESSION ATTRIBUTE object and new Error Value sub-
   codes in the ERROR SPEC object are proposed in this document.
<span class="h3"><a class="selflink" id="section-5.1" href="#section-5.1">5.1</a>.  Path Re-Evaluation Request</span>
   The following new flag of the SESSION_ATTRIBUTE object (C-Type 1 and
   7) is defined:
   Path re-evaluation request: 0x20
   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
   but instead just signals a request to evaluate whether a preferable
   path exists.
   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.  However,
   strictly speaking, the ERO has not changed.
<span class="h3"><a class="selflink" id="section-5.2" href="#section-5.2">5.2</a>.  New Error Value Sub-Codes</span>
   As defined in [<a href="./rfc3209" title=""RSVP-TE: Extensions to RSVP for LSP Tunnels"">RFC3209</a>], the Error Code 25 in the ERROR SPEC object
   corresponds to a Notify Error.
   This document adds three new Error Value sub-codes:
   6 Preferable path exists
   7 Local link maintenance required
   8 Local node maintenance required
   The details about the local maintenance required modes are in <a href="#section-6.3.2">Section</a>
   <a href="#section-6.3.2">6.3.2</a>.
<span class="h2"><a class="selflink" id="section-6" href="#section-6">6</a>.  Mode of Operation</span>
<span class="h3"><a class="selflink" id="section-6.1" href="#section-6.1">6.1</a>.  Head-End Reoptimization Control</span>
   The notification process of a preferable 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 preferable 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 LSR reoptimization.
<span class="grey">Vasseur, et al.              Informational                      [Page 7]</span></pre>
<hr class='noprint'/><!--NewPage--><pre class='newpage'><span id="page-8" ></span>
<span class="grey"><a href="./rfc4736">RFC 4736</a>               MPLS-TE Loosely Routed LSP          November 2006</span>
<span class="h3"><a class="selflink" id="section-6.2" href="#section-6.2">6.2</a>.  Reoptimization Triggers</span>
   There are several possible reoptimization triggers:
   - 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 that an implementation supporting the extensions
   proposed in this document support the aforementioned modes as path
   re-evaluation triggers.
<span class="h3"><a class="selflink" id="section-6.3" href="#section-6.3">6.3</a>.  Head-End Request versus Mid-Point Explicit Notification Functions</span>
   This document defines two functions:
   1) "Head-end requesting function": The request for a new path
      evaluation of a loosely routed TE LSP is requested by the head-end
      LSR.
   2) "Mid-point explicit notification function": Having determined that
      a preferable path (other than the current path) exists or having
      the need to perform a link/node local maintenance, a mid-point LSR
      explicitly notifies the head-end LSR, which will in turn decide
      whether to perform a reoptimization.
<span class="h4"><a class="selflink" id="section-6.3.1" href="#section-6.3.1">6.3.1</a>.  Head-End Request Function</span>
   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 "Path re-evaluation
   request" bit of the SESSION-ATTRIBUTE object set.  This 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 [<a href="./rfc2961" title=""RSVP Refresh Overhead Reduction Extensions"">RFC2961</a>].
   Upon receiving a Path message with the "Path re-evaluation request"
   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
   set of actions:
<span class="grey">Vasseur, et al.              Informational                      [Page 8]</span></pre>
<hr class='noprint'/><!--NewPage--><pre class='newpage'><span id="page-9" ></span>
<span class="grey"><a href="./rfc4736">RFC 4736</a>               MPLS-TE Loosely Routed LSP          November 2006</span>
   A path re-evaluation is triggered, and the newly computed path is
   compared to the existing path:
   - If a preferable path can be found, the LSR performing the path re-
     evaluation MUST immediately send an RSVP PathErr to the head-end
     LSR (Error code 25 (Notify), Error sub-code=6 (better path
     exists)).  At this point, the LSR MAY decide not to propagate this
     bit in subsequent RSVP Path messages sent downstream for the re-
     evaluated TE LSP; this mode is the RECOMMENDED mode for the reasons
     described below.
     The sending of an RSVP PathErr Notify message "Preferable path
     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 in
     another location within a single domain).  Therefore, triggering
     additional path re-evaluations on downstream nodes is unnecessary.
     The only motivation to forward subsequent RSVP Path messages with
     the "Path re-evaluation 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 LSR.
   - If no preferable path can be found, the recommended mode is for an
     LSR to relay the request (by setting the "Path re-evaluation" bit
     of the SESSION-ATTRIBUTE object in RSVP path message sent
     downstream).
     Note that, by preferable path, we mean a path with a lower cost.
     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
     reoptimization trigger will occur on the head-end LSR.  The
     solution to handle RSVP reliable messaging has been defined in
     [<a href="./rfc2961" title=""RSVP Refresh Overhead Reduction Extensions"">RFC2961</a>].
     The network administrator may decide to establish some local policy
     specifying to ignore such request or not to consider those requests
     more frequently than at a certain rate.
     The proposed mechanism does not make any assumption of the path
     computation method performed by the ERO expansion process.
<span class="grey">Vasseur, et al.              Informational                      [Page 9]</span></pre>
<hr class='noprint'/><!--NewPage--><pre class='newpage'><span id="page-10" ></span>
<span class="grey"><a href="./rfc4736">RFC 4736</a>               MPLS-TE Loosely Routed LSP          November 2006</span>
<span class="h4"><a class="selflink" id="section-6.3.2" href="#section-6.3.2">6.3.2</a>.  Mid-Point Explicit Notification</span>
   By contrast with the head-end request function, in this case, a mid-
   point LSR whose next hop is a loose hop or an abstract node can
   locally trigger a path re-evaluation when a configurable timer
   expires, some specific events occur (e.g., link-up event), or the
   user explicitly requests it.  If a preferable path is found, the LSR
   sends an RSVP PathErr to the head-end LSR (Error code 25 (Notify),
   Error sub-code=6 ("preferable path exists").
   There is another circumstance whereby any mid-point LSR MAY send an
   RSVP PathErr 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 LSR where a local maintenance
   must be performed is responsible for sending an RSVP PathErr message
   with Error code 25 and Error sub-code=7 or 8, depending on the
   affected network element (link or node).  Then the first upstream
   node that has performed the ERO expansion MUST perform the following
   set of actions:
   - 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 PathErr message MUST be immediately forwarded upstream to
     the head-end LSR.  Note that in the case of TE LSP spanning
     multiple administrative domains, it may be desirable for the
     boundary LSR to modify the RSVP PathErr message and insert its own
     address for confidentiality.
   Upon receiving an RSVP PathErr message with Error code 25 and Error
   sub-code 7 or 8, the head-end LSR SHOULD perform a TE LSP
   reoptimization.
   Note that the two functions (head-end and mid-point driven) are not
   exclusive of each other: both the timer and event-driven
   reoptimization triggers can be implemented on the head-end or on any
   mid-point LSR with a potentially different timer value for the
   timer-driven reoptimization case.
   A head-end LSR MAY decide upon receiving an explicit mid-point
   notification to delay its next path re-evaluation request.
<span class="h4"><a class="selflink" id="section-6.3.3" href="#section-6.3.3">6.3.3</a>.  ERO Caching</span>
   Once a mid-point LSR has determined that a preferable path exists
   (after a reoptimization request has been received by the head-end LSR
   or the reoptimization timer on the mid-point has expired), the more
   optimal path MAY be cached on the mid-point LSR for a limited amount
<span class="grey">Vasseur, et al.              Informational                     [Page 10]</span></pre>
<hr class='noprint'/><!--NewPage--><pre class='newpage'><span id="page-11" ></span>
<span class="grey"><a href="./rfc4736">RFC 4736</a>               MPLS-TE Loosely Routed LSP          November 2006</span>
   of time to avoid having to recompute a path once the head-LSR
   performs a make-before-break.  This mode is optional.  A default
   value of 5 seconds for the caching timer is suggested.
<span class="h2"><a class="selflink" id="section-7" href="#section-7">7</a>.  Applicability and Interoperability</span>
   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 already documented in [<a href="./rfc3209" title=""RSVP-TE: Extensions to RSVP for LSP Tunnels"">RFC3209</a>] and
   [<a href="./rfc3473" title=""Generalized Multi-Protocol Label Switching (GMPLS) Signaling Resource ReserVation Protocol-Traffic Engineering (RSVP-TE) Extensions"">RFC3473</a>].
   An LSR not supporting the "Path re-evaluation request" bit of the
   SESSION-ATTRIBUTE object SHALL forward it unmodified.
   A head-end LSR not supporting an RSVP PathErr with Error code 25
   message and Error sub-code = 6, 7, or 8 MUST just silently ignore
   such an RSVP PathErr message.
<span class="h2"><a class="selflink" id="section-8" href="#section-8">8</a>.  IANA Considerations</span>
   IANA assigned three new error sub-code values for the RSVP PathErr
   Notify message (Error code=25):
   6 Preferable path exists
   7 Local link maintenance required
   8 Local node maintenance required
<span class="h2"><a class="selflink" id="section-9" href="#section-9">9</a>.  Security Considerations</span>
   This document defines a mechanism for a mid-point LSR to notify the
   head-end LSR of the existence of a preferable path or the need to
   reroute the TE LSP for maintenance purposes.  Hence, in the case of a
   TE LSP spanning multiple administrative domains, it may be desirable
   for a boundary LSR to modify the RSVP PathErr message (Code 25, Error
   sub-code = 6, 7, or 8) so as to preserve confidentiality across
<span class="grey">Vasseur, et al.              Informational                     [Page 11]</span></pre>
<hr class='noprint'/><!--NewPage--><pre class='newpage'><span id="page-12" ></span>
<span class="grey"><a href="./rfc4736">RFC 4736</a>               MPLS-TE Loosely Routed LSP          November 2006</span>
   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 to accept up to a pre-
   defined rate) path re-evaluation requests originated by a head-end
   LSR of another domain.
<span class="h2"><a class="selflink" id="section-10" href="#section-10">10</a>.  Acknowledgements</span>
   The authors would like to thank Carol Iturralde, Miya Kohno, Francois
   Le Faucheur, Philip Matthews, Jim Gibson, Jean-Louis Le Roux, Kenji
   Kumaki, Anca Zafir, and Dimitri Papadimitriou for their useful
   comments.  A special thanks to Adrian Farrel for his very valuable
   inputs.
<span class="h2"><a class="selflink" id="section-11" href="#section-11">11</a>.  References</span>
<span class="h3"><a class="selflink" id="section-11.1" href="#section-11.1">11.1</a>.  Normative References</span>
   [<a id="ref-RFC2119">RFC2119</a>]  Bradner, S., "Key words for use in RFCs to Indicate
              Requirement Levels", <a href="https://www.rfc-editor.org/bcp/bcp14">BCP 14</a>, <a href="./rfc2119">RFC 2119</a>, March 1997.
   [<a id="ref-RFC2961">RFC2961</a>]  Berger, L., Gan, D., Swallow, G., Pan, P., Tommasi, F.,
              and S. Molendini, "RSVP Refresh Overhead Reduction
              Extensions", <a href="./rfc2961">RFC 2961</a>, April 2001.
   [<a id="ref-RFC3209">RFC3209</a>]  Awduche, D., Berger, L., Gan, D., Li, T., Srinivasan, V.,
              and G. Swallow, "RSVP-TE: Extensions to RSVP for LSP
              Tunnels", <a href="./rfc3209">RFC 3209</a>, December 2001.
   [<a id="ref-RFC3473">RFC3473</a>]  Berger, L., "Generalized Multi-Protocol Label Switching
              (GMPLS) Signaling Resource ReserVation Protocol-Traffic
              Engineering (RSVP-TE) Extensions", <a href="./rfc3473">RFC 3473</a>, January 2003.
<span class="h3"><a class="selflink" id="section-11.2" href="#section-11.2">11.2</a>.  Informative References</span>
   [<a id="ref-RFC4105">RFC4105</a>]  Le Roux, J.-L., Vasseur, J.-P., and J. Boyle,
              "Requirements for Inter-Area MPLS Traffic Engineering",
              <a href="./rfc4105">RFC 4105</a>, June 2005.
   [<a id="ref-RFC4216">RFC4216</a>]  Zhang, R. and J.-P. Vasseur, "MPLS Inter-Autonomous System
              (AS) Traffic Engineering (TE) Requirements", <a href="./rfc4216">RFC 4216</a>,
              November 2005.
<span class="grey">Vasseur, et al.              Informational                     [Page 12]</span></pre>
<hr class='noprint'/><!--NewPage--><pre class='newpage'><span id="page-13" ></span>
<span class="grey"><a href="./rfc4736">RFC 4736</a>               MPLS-TE Loosely Routed LSP          November 2006</span>
Authors' Addresses
   JP Vasseur (Editor)
   Cisco Systems, Inc
   1414 Massachusetts Avenue
   Boxborough, MA  01719
   USA
   EMail: jpv@cisco.com
   Yuichi Ikejiri
   NTT Communications Corporation
   1-1-6, Uchisaiwai-cho, Chiyoda-ku
   Tokyo,   100-8019
   Japan
   EMail: y.ikejiri@ntt.com
   Raymond Zhang
   BT Infonet
   2160 E. Grand Ave.
   El Segundo, CA  90025
   USA
   EMail: raymond_zhang@bt.infonet.com
<span class="grey">Vasseur, et al.              Informational                     [Page 13]</span></pre>
<hr class='noprint'/><!--NewPage--><pre class='newpage'><span id="page-14" ></span>
<span class="grey"><a href="./rfc4736">RFC 4736</a>               MPLS-TE Loosely Routed LSP          November 2006</span>
Full Copyright Statement
   Copyright (C) The IETF Trust (2006).
   This document is subject to the rights, licenses and restrictions
   contained in <a href="https://www.rfc-editor.org/bcp/bcp78">BCP 78</a>, and except as set forth therein, the authors
   retain all their rights.
   This document and the information contained herein are provided on an
   "AS IS" basis and THE CONTRIBUTOR, THE ORGANIZATION HE/SHE REPRESENTS
   OR IS SPONSORED BY (IF ANY), THE INTERNET SOCIETY, THE IETF TRUST,
   AND THE INTERNET ENGINEERING TASK FORCE DISCLAIM ALL WARRANTIES,
   EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO ANY WARRANTY THAT
   THE USE OF THE INFORMATION HEREIN WILL NOT INFRINGE ANY RIGHTS OR ANY
   IMPLIED WARRANTIES OF MERCHANTABILITY OR FITNESS FOR A PARTICULAR
   PURPOSE.
Intellectual Property
   The IETF takes no position regarding the validity or scope of any
   Intellectual Property Rights 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; nor does it represent that it has
   made any independent effort to identify any such rights.  Information
   on the procedures with respect to rights in RFC documents can be
   found in <a href="https://www.rfc-editor.org/bcp/bcp78">BCP 78</a> and <a href="https://www.rfc-editor.org/bcp/bcp79">BCP 79</a>.
   Copies of IPR disclosures made to the IETF Secretariat 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 implementers or users of this
   specification can be obtained from the IETF on-line IPR repository at
   <a href="http://www.ietf.org/ipr">http://www.ietf.org/ipr</a>.
   The IETF invites any interested party to bring to its attention any
   copyrights, patents or patent applications, or other proprietary
   rights that may cover technology that may be required to implement
   this standard.  Please address the information to the IETF at
   ietf-ipr@ietf.org.
Acknowledgement
   Funding for the RFC Editor function is currently provided by the
   Internet Society.
Vasseur, et al.              Informational                     [Page 14]
</pre>
 
     |