idnits 2.17.1 draft-ietf-mpls-cr-ldp-01.txt: Checking boilerplate required by RFC 5378 and the IETF Trust (see https://trustee.ietf.org/license-info): ---------------------------------------------------------------------------- ** Looks like you're using RFC 2026 boilerplate. This must be updated to follow RFC 3978/3979, as updated by RFC 4748. Checking nits according to https://www.ietf.org/id-info/1id-guidelines.txt: ---------------------------------------------------------------------------- ** Missing expiration date. The document expiration date should appear on the first and last page. ** The document seems to lack a 1id_guidelines paragraph about 6 months document validity -- however, there's a paragraph with a matching beginning. Boilerplate error? == No 'Intended status' indicated for this document; assuming Proposed Standard == It seems as if not all pages are separated by form feeds - found 0 form feeds but 35 pages Checking nits according to https://www.ietf.org/id-info/checklist : ---------------------------------------------------------------------------- ** The document seems to lack an IANA Considerations section. (See Section 2.2 of https://www.ietf.org/id-info/checklist for how to handle the case when there are no actions for IANA.) ** The document seems to lack separate sections for Informative/Normative References. All references will be assumed normative when checking for downward references. ** There are 11 instances of too long lines in the document, the longest one being 7 characters in excess of 72. ** The abstract seems to contain references ([ARCH], [FRAME], [VPN1], [VPN2], [LDP], [ER], [VPN3], [TER]), which it shouldn't. Please replace those with straight textual mentions of the documents in question. ** The document seems to lack a both a reference to RFC 2119 and the recommended RFC 2119 boilerplate, even if it appears to use RFC 2119 keywords. RFC 2119 keyword, line 392: '... Mapping Message MUST include Label Re...' RFC 2119 keyword, line 395: '... Mapping Message MUST include LSPID TL...' RFC 2119 keyword, line 559: '...t node and its prior node MUST include...' RFC 2119 keyword, line 563: '...e and its prior node MAY include other...' RFC 2119 keyword, line 666: '...The value of PDR MUST be greater than ...' (14 more instances...) Miscellaneous warnings: ---------------------------------------------------------------------------- == The copyright year in the RFC 3978 Section 5.4 Copyright Line does not match the current year == Line 182 has weird spacing: '...Message as a...' == Line 1470 has weird spacing: '...trictly route...' == Line 1471 has weird spacing: '...SP. In this ...' == Line 1474 has weird spacing: '...ur node netwo...' == Line 1648 has weird spacing: '...vice is the ...' == (18 more instances...) -- The document seems to lack a disclaimer for pre-RFC5378 work, but may have content which was first submitted before 10 November 2008. If you have contacted all the original authors and they are all willing to grant the BCP78 rights to the IETF Trust, then this is fine, and you can ignore this comment. If not, you may need to add the pre-RFC5378 disclaimer. (See the Legal Provisions document at https://trustee.ietf.org/license-info for more information.) -- The document date (February 1999) is 9195 days in the past. Is this intentional? Checking references for intended status: Proposed Standard ---------------------------------------------------------------------------- (See RFCs 3967 and 4897 for information about using normative references to lower-maturity documents in RFCs) == Outdated reference: A later version (-11) exists of draft-ietf-mpls-ldp-03 == Outdated reference: A later version (-07) exists of draft-ietf-mpls-arch-04 == Outdated reference: A later version (-05) exists of draft-ietf-mpls-framework-02 -- Possible downref: Normative reference to a draft: ref. 'FRAME' == Outdated reference: A later version (-01) exists of draft-ietf-mpls-traffic-eng-00 ** Downref: Normative reference to an Informational draft: draft-ietf-mpls-traffic-eng (ref. 'TER') -- Possible downref: Normative reference to a draft: ref. 'ER' -- Possible downref: Normative reference to a draft: ref. 'VPN1' -- Possible downref: Normative reference to a draft: ref. 'VPN2' -- Possible downref: Normative reference to a draft: ref. 'VPN3' == Outdated reference: A later version (-04) exists of draft-ietf-mpls-ldp-state-00 ** Downref: Normative reference to an Informational draft: draft-ietf-mpls-ldp-state (ref. 'LDP-STATE') Summary: 10 errors (**), 0 flaws (~~), 14 warnings (==), 7 comments (--). Run idnits with the --verbose option for more detailed information about the items above. -------------------------------------------------------------------------------- 1 MPLS Working Group Bilel Jamoussi, Editor 2 Internet Draft Nortel Networks 3 Expiration Date: August 1999 5 February 1999 7 Constraint-Based LSP Setup using LDP 9 draft-ietf-mpls-cr-ldp-01.txt 11 Status of this Memo 13 This document is an Internet-Draft and is in full conformance with 14 all provisions of Section 10 of RFC2026. 16 Internet-Drafts are working documents of the Internet Engineering 17 Task Force (IETF), its areas, and its working groups. Note that 18 other groups may also distribute working documents as Internet- 19 Drafts. 21 Internet-Drafts are draft documents valid for a maximum of six months 22 and may be updated, replaced, or obsoleted by other documents at any 23 time. It is inappropriate to use Internet- Drafts as reference 24 material or to cite them other than as "work in progress." 26 The list of current Internet-Drafts can be accessed at 27 http://www.ietf.org/ietf/1id-abstracts.txt 29 The list of Internet-Draft Shadow Directories can be accessed at 30 http://www.ietf.org/shadow.html. 32 Distribution of this memo is unlimited. 34 Copyright Notice 36 Copyright (C) The Internet Society (1998). All Rights Reserved. 38 Abstract 40 Label Distribution Protocol (LDP) is defined in [LDP] for 41 distribution of labels inside one MPLS domain. One of the most 42 important services that may be offered using MPLS in general and LDP 43 in particular is support for constraint-based routing of traffic 44 across the routed network. Constraint-based routing offers the 45 opportunity to extend the information used to setup paths beyond what 46 is available for the routing protocol. For instance, an LSP can be 47 setup based on explicit route constraints, QoS constraints, and 48 others. Constraint-based routing (CR) is a mechanism used to meet 49 Traffic Engineering requirements that have been proposed by [FRAME], 50 [ARCH] and [TER]. These requirements may be met by extending LDP for 51 support of constraint-based routed label switched paths (CRLSPs). 53 CR-LDP Specification - 2 - Exp. August 1999 55 Other uses exist for CRLSPs as well ([VPN1], [VPN2] and [VPN3]). 57 This draft specifies mechanisms and TLVs for support of CRLSPs using 58 LDP. The Explicit Route object and procedures are extracted from 59 [ER]. 61 Table of Contents 63 1. Introduction ......................................... 3 64 2. Constraint-based Routing Overview .................... 3 65 2.1 Strict and Loose Explicit Routes ..................... 4 66 2.2 Traffic Characteristics .............................. 4 67 2.3 Pre-emption .......................................... 5 68 2.4 Route Pinning ........................................ 5 69 2.5 Resource Class ....................................... 5 70 3. Solution Overview .................................... 5 71 3.1 Required Messages and TLVs ........................... 7 72 3.2 Label Request Message ................................ 7 73 3.3 Label Mapping Message ................................ 8 74 3.4 Notification Message ................................. 9 75 3.5 Release & Withdraw Messages .......................... 9 76 4. Protocol Specification .............................. 9 77 4.1 Explicit Route TLV (ER-TLV) ......................... 10 78 4.2 Explicit Route Hop TLV .............................. 10 79 4.3 Traffic Parameters TLV .............................. 12 80 4.3.1 Semantics ........................................... 13 81 4.3.1.1 Frequency ........................................... 13 82 4.3.1.2 Peak Rate ........................................... 14 83 4.3.1.3 Committed Rate ...................................... 14 84 4.3.1.4 Excess Burst Size .................................... 14 85 4.3.1.5 Peak Rate Token Bucket................................ 14 86 4.3.1.6 Committed Data Rate Token Bucket ..................... 15 87 4.3.1.7 Weight ......................... ..................... 16 88 4.3.2 Procedures ........................................... 16 89 4.3.2.1 Label Request Message ................................ 16 90 4.3.2.2 Label Mapping Message ................................ 16 91 4.3.2.3 Notification Message ................................. 17 92 4.4 Preemption TLV ....................................... 18 93 4.5 LSPID TLV ........................................... 18 94 4.6 Resource Class TLV .................................. 19 95 4.7 ER-Hop Semantics ..................................... 19 96 4.7.1 ER-Hop 1 TLV IPv4 Prefix ............................. 20 97 4.7.2 ER-Hop 2 TLV IPv6 Prefix ............................. 20 98 4.7.3 ER-Hop 3 TLV AS Number ............................... 21 99 4.7.4 ER-Hop 4 TLV LSPID ................................... 21 100 4.8 Processing of the ER-TLV ............................. 22 101 4.8.1 Selection of the next hop ............................ 22 102 4.8.2 Adding the Label Request Message to the next hop ..... 24 103 4.9 Route Pinning TLV ................................... 24 104 4.10 CR-LSP FEC Element ................................... 24 105 4.11 Error Subcodes ...................................... 25 107 CR-LDP Specification - 3 - Exp. August 1999 109 5. Security Considerations .............................. 26 110 6. Acknowledgement ...................................... 26 111 7. References ........................................... 26 112 8. Author Information ................................... 28 114 Appendix A CRLSP Establishment Examples ......................... 30 115 A.1 Strict Explicit Route Example ........................ 30 116 A.2 Node Groups and Specific Nodes Example ............... 31 118 Appendix B QoS Service Examples ................................. 34 119 B.1 Service Examples ..................................... 34 120 B.2 Establishing CR-LSP Supporting Real-Time Applications. 35 121 B.3 Establishing CR-LSP Delay Insensitive Applications ... 36 123 1. Introduction 125 The need for constraint-based routing (CR) in MPLS has been explored 126 elsewhere [ARCH], [FRAME], and [TER]. Explicit routing is a subset 127 of the more general constraint-based routing function. At the MPLS WG 128 meeting held during the Washington IETF there was consensus that LDP 129 should support explicit routing of LSPs with provision for indication 130 of associated (forwarding) priority. In the Chicago meeting, a 131 decision was made that support for explicit path setup in LDP will be 132 moved to a separate document. This document provides that support and 133 it has been accepted as a working document in the Orlando meeting. 134 This specification proposes an end-to-end setup mechanism of a 135 constraint-based routed LSP (CRLSP) initiated by the ingress LSR. We 136 also specify mechanisms to provide means for reservation of resources 137 using LDP. 139 This document introduce TLVs and procedures that provide support for: 141 - Strict and Loose Explicit Routing 142 - Specification of Traffic Parameters 143 - Route Pinning 144 - CRLSP Pre-emption though setup/holding priorities 145 - Handling Failures 146 - LSPID 147 - Resource Class 149 Section 2 introduces the various constraints defined in this 150 specification. Section 3 outlines the CR-LDP solution. Section 4 151 defines the TLVs and procedures used to setup constraint-based routed 152 label switched paths. Appendix A provides several examples of CR-LSP 153 path setup. Appendix B provides Service Definition Examples. 155 2. Constraint-based Routing Overview 157 Constraint-based routing is a mechanism that supports the Traffic 158 Engineering requirements defined in [TER]. Explicit Routing is a 159 subset of the more general constraint-based routing where the 161 CR-LDP Specification - 4 - Exp. August 1999 163 constraint is the explicit route (ER). Other constraints are defined 164 to provide a network operator with control over the path taken by an 165 LSP. This section is an overview of the various constraints supported 166 by this specification. 168 2.1 Strict and Loose Explicit Routes 170 Like any other LSP an CRLSP is a path through an MPLS network. The 171 difference is that while other paths are setup solely based on 172 information in routing tables or from a management system, the 173 constraint-based route is calculated at one point at the edge of 174 network based on criteria, including but not limited to routing 175 information. The intention is that this functionality shall give 176 desired special characteristics to the LSP in order to better support 177 the traffic sent over the LSP. The reason for setting up CRLSPs, 178 might be that one wants to assign certain bandwidth or other Service 179 Class characteristics to the LSP, or that one wants to make sure that 180 alternative routes use physically separate paths through the network. 182 An explicit route is represented in a Label Request Message as a 183 list of nodes or groups of nodes along the constraint-based route. 184 When the CRLSP is established, all or a subset of the nodes in a 185 group may be traversed by the LSP. Certain operations to be 186 performed along the path can also be encoded in the constraint-based 187 route. 189 The capability to specify, in addition to specified nodes, groups of 190 nodes, of which a subset will be traversed by the CRLSP, allows the 191 system a significant amount of local flexibility in fulfilling a 192 request for a constraint-based route. This allows the generator of 193 the constraint-based route to have some degree of imperfect 194 information about the details of the path. 196 The constraint-based route is encoded as a series of ER-Hops 197 contained in a constraint-based route TLV. Each ER-Hop may identify 198 a group of nodes in the constraint-based route. A constraint-based 199 route is then a path including all of the identified groups of nodes. 201 To simplify the discussion, we call each group of nodes an abstract 202 node. Thus, we can also say that a constraint-based route is a path 203 including all of the abstract nodes, with the specified operations 204 occurring along that path. 206 2.2 Traffic Characteristics 208 The traffic characteristics of a path are described in the Traffic 209 Parameters TLV in terms of a peak rate, committed rate, and service 210 granularity. The peak and committed rates describe the bandwidth 211 constraints of a path while the service granularity can be used to 212 specify a constraint on the delay variation that the CRLDP MPLS 213 domain may introduce to a path's traffic. 215 CR-LDP Specification - 5 - Exp. August 1999 217 2.3 Pre-emption 219 CR-LDP signals the resources required by a path on each hop of the 220 route. If a route with sufficient resources can not be found, 221 existing paths may be rerouted to reallocate resources to the new 222 path. This is the process of path pre-emption. Setup and holding 223 priorities are used to rank existing paths (holding priority) and the 224 new path (setup priority) to determine if the new path can pre-empt 225 an existing path. 227 The setupPriority of a new CRLSP and the holdingPriority attributes 228 of the existing CRLSP are used to specify priorities. Signaling a 229 higher holding priority expresses that the path, once it has been 230 established, should have a lower chance of being pre-empted. 231 Signaling a higher setup priority expresses the expectation that, in 232 the case that resource are unavailable, the path is more likely to 233 pre-empt other paths. The exact rules determining bumping are an 234 aspect of network policy. 236 The allocation of setup and holding priority values to paths is an 237 aspect of network policy. 239 The setup and holding priority values range from zero (0) to seven 240 (7). The value zero (0) is the priority assigned to the most 241 important path. It is referred to as the highest priority. Seven (7) 242 is the priority for the least important path. The use of default 243 priority values is an aspect of network policy. 245 The setupPriority of a CRLSP should not be higher (numerically less) 246 than its holdingPriority since it might bump an LSP and be bumped by 247 next "equivalent" request. 249 2.4 Route Pinning 251 Route pinning is applicable to segments of an LSP that are loosely 252 routed - i.e. those segments which are specified with a next hop with 253 the 'L' bit set or where the next hop is an "abstract node". A CRLSP 254 may be setup using route pinning if it is undesirable to change the 255 path used by an LSP because a better next hop becomes available at 256 some LSR along the loosely routed portion of the LSP. 258 2.5 Resource Class 260 Network resources may be classified in various ways by the network 261 operator. These classes are also known as "colors" or "administrative 262 groups". When an CR-LSP is being established, it's necessary to 263 indicate which resource classes the CR-LSP can draw from. 265 3. Solution Overview 267 CRLSP over LDP Specification is designed with the following goals: 269 CR-LDP Specification - 6 - Exp. August 1999 271 1. Meet the requirements outlined in [TER] for performing traffic 272 engineering and provide a solid foundation for performing more 273 general constraint-based routing. 275 2. Build on already specified functionality that meets the 276 requirements whenever possible. Hence, this specifications is 277 based on [LDP] and the Explicit Route object and procedures 278 defined in [ER]. 280 3. Keep the solution simple. 282 In this document, support for unidirectional point-to-point CRLSPs is 283 specified. Support for point-to-multipoint, multipoint-to-point, is 284 for further study (FFS). 286 Support for constraint-based routed LSPs in this specification 287 depends on the following minimal LDP behaviors as specified in [LDP]: 289 - Basic and/or Extended Discovery Mechanisms. 291 - Use the Label Request Message defined in [LDP] in downstream on 292 demand label advertisement mode with ordered control. 294 - Use the Label Mapping Message defined in [LDP] in downstream on 295 demand mode with ordered control. 297 - Use the Notification Message defined in [LDP]. 299 - Use the Withdraw and Release Messages defined in [LDP]. 301 - Use the Loop Detection (in the case of loosely routed segments 302 of a CRLSP) mechanisms defined in [LDP]. 304 In addition, the following functionality is added to what's defined 305 in [LDP]: 307 - The Label Request Message used to setup a CRLSP includes one or 308 more CR-TLVs defined in Section 4. For instance, the Label Request 309 Message may include the ER-TLV. 311 - An LSR implicitly infers ordered control from the existence of 312 one or more CR-TLVs in the Label Request Message. This means that 313 the LSR can still be configured for independent control for LSPs 314 established as a result of dynamic routing. However, when a Label 315 Request Message includes one or more of the CR-TLVs, then ordered 316 control is used to setup the CRLSP. Note that this is also true 317 for the loosely routed parts of a CRLSP. 319 - New status codes are defined to handle error notification for 320 failure of established paths specified in the CR-TLV. 322 CR-LDP Specification - 7 - Exp. August 1999 324 Examples of CRLSP establishment are given in Appendix A to illustrate 325 how the mechanisms described in this draft work. 327 3.1 Required Messages and TLVs 329 Any Messages, TLVs, and procedures not defined explicitly in this 330 document are defined in the [LDP] Specification. The state 331 transitions which relate to CR-LDP messages can be found in [LDP- 332 STATE]. 334 The following subsections are meant as a cross reference to the [LDP] 335 document and indication of additional functionality beyond what's 336 defined in [LDP] where necessary. 338 3.2 Label Request Message 340 The Label Request Message is as defined in 3.5.8 of [LDP] with the 341 following modifications (required only if any of the CR-TLVs is 342 included in the Label Request Message): 344 - Only a single FEC-TLV may be included in the Label Request 345 Message. The CR-LSP FEC TLV should be used. 347 - The Return Message ID TLV is MANDATORY. 349 - The Optional Parameters TLV includes the definition of any of 350 the Constraint-based TLVs specified in Section 4. 352 - The Procedures to handle the Label Request Message are augmented 353 by the procedures for processing of the CR-TLVs as defined in 354 Section 4. 356 The encoding for the CR-LDP Label Request Message is as follows: 358 CR-LDP Specification - 8 - Exp. August 1999 360 0 1 2 3 361 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 362 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 363 |U| Label Request (0x0401) | Message Length | 364 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 365 | Message ID | 366 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 367 | FEC TLV | 368 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 369 | Return Message ID TLV (mandatory) | 370 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 371 | LSPID TLV (CR-LDP, mandatory) | 372 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 373 | ER-TLV (CR-LDP, optional) | 374 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 375 | Traffic TLV (CR-LDP, optional) | 376 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 377 | Pinning TLV (CR-LDP, optional) | 378 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 379 | Resource Class TLV (CR-LDP, optional) | 380 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 381 | Pre-emption TLV (CR-LDP, optional) | 382 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 384 3.3 Label Mapping Message 386 The Label Mapping Message is as defined in 3.5.7 of [LDP] with the 387 following modifications: 389 - Only a single Label-TLV may be included in the Label Mapping 390 Message. 392 - The Label Mapping Message MUST include Label Request Message ID 393 TLV. 395 - The Label Mapping Message MUST include LSPID TLV. 397 - The Label Mapping Message Procedures are limited to downstream 398 on demand ordered control mode. 400 A Mapping message is transmitted by a downstream LSR to an upstream 401 LSR under one of the following conditions: 403 1. The LSR is the egress end of the CRLSP and an upstream mapping 404 has been requested. 406 2. The LSR received a mapping from its downstream next hop LSR for 407 an CRLSP for which an upstream request is still pending. 409 The encoding for the CR-LDP Label Mapping Message is as follows: 411 CR-LDP Specification - 9 - Exp. August 1999 413 0 1 2 3 414 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 415 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 416 |U| Label Mapping (0x0400) | Message Length | 417 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 418 | Message ID | 419 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 420 | FEC TLV | 421 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 422 | Label TLV | 423 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 424 | Label Request Message ID TLV (mandatory) | 425 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 426 | LSPID TLV (CR-LDP, mandatory) | 427 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 428 | Traffic TLV (CR-LDP, optional) | 429 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 431 3.4 Notification Message 433 The Notification Message is as defined in Section 3.5.1 of [LDP] and 434 the Status TLV encoding is as defined in Section 3.4.7 of [LDP]. 436 Establishment of an Explicitly Routed LSP may fail for a variety of 437 reasons. All such failures are considered advisory conditions and 438 they are signaled by the Notification Message. 440 Notification Messages carry Status TLVs to specify events being 441 signaled. New status codes are defined in Section 4.11 to signal 442 error notifications associated with the establishment of a CRLSP and 443 the processing of the CR-TLV. 445 The Notification Message must carry the LSPID TLV of the 446 corresponding CRLSP. 448 3.5 Release and Withdraw Messages 450 The Label Release and Label Withdraw Messages are used as specified 451 in [LDP] to clear CR-LSPs. These message may also carry the LSPID 452 TLV. 454 4. Protocol Specification 456 The Label Request Messages defined in [LDP] optionally carries one or 457 more of the optional Constraint-based Routing TLVs (CR-TLVs) defined 458 in this section. If needed, other constraints can be supported later 459 through the definition of new TLVs. In this specification, the 460 following TLVs are defined: 462 - Explicit Route TLV 464 CR-LDP Specification - 10 - Exp. August 1999 466 - Explicit Route Hop TLV 467 - Traffic Parameters TLV 468 - Preemption TLV 469 - LSPID TLV 470 - Route Pinning TLV 471 - Resource Class TLV 472 - CRLSP FEC TLV 474 4.1 Explicit Route TLV (ER-TLV) 476 The ER-TLV is an object that specifies the path to be taken by the 477 LSP being established. It is composed of one or more Explicit Route 478 Hop TLVs (ER-Hop TLVs) defined in Section 4.2. 480 0 1 2 3 481 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 482 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 483 |U|F| ER-TLV (0x0800) | Length | 484 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 485 | ER-Hop TLV 1 | 486 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 487 | ER-Hop TLV 2 | 488 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 489 ~ ............ ~ 490 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 491 | ER-Hop TLV n | 492 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 494 U bit 495 Unknown TLV bit. As defined in [LDP]. 497 F bit 498 Forward unknown TLV bit. As defined in [LDP]. 500 Type 501 A two byte field carrying the value of the ER-TLV type which 502 is 0x800. 504 Length 505 Specifies the length of the value field in bytes. 507 ER-Hop TLVs 508 One or more ER-Hop TLVs defined in Section 4.2. 510 4.2 Explicit Route Hop TLV (ER-Hop TLV) 512 The contents of an ER-TLV are a series of variable length ER-Hop 513 TLVs. Each ER-Hop TLV has the form: 515 CR-LDP Specification - 11 - Exp. August 1999 517 0 1 2 3 518 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 519 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 520 |U|F| ER-Hop-Type | Length | 521 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 522 |L| Content // | 523 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 525 U bit 526 Unknown TLV bit. As defined in [LDP]. 528 F bit 529 Forward unknown TLV bit. As defined in [LDP]. 531 ER-Hop Type 532 A fourteen-bit field indicating the type of contents of 533 the ER-Hop. Currently defined values are: 535 Value Type 536 ----- ------------------------ 537 0x801 IPv4 prefix 538 0x802 IPv6 prefix 539 0x803 Autonomous system number 540 0x804 LSPID 542 Length 543 Specifies the length of the value field in bytes. 545 L bit 546 The L bit is an attribute of the ER-Hop. The L bit is set if the 547 ER-Hop represents a loose hop in the explicit route. If the bit is 548 not set, the ER-Hop represents a strict hop in the explicit route. 550 The L bit in the ER-Hop is a one-bit attribute. If the L bit is 551 set, then the value of the attribute is "loose." Otherwise, the 552 value of the attribute is "strict." For brevity, we say that if 553 the value of the ER-Hop attribute is loose then it is a "loose 554 ER-Hop." Otherwise, it's a "strict ER-Hop." Further, we say that 555 the abstract node of a strict or loose ER-Hop is a strict or a 556 loose node, respectively. Loose and strict nodes are always 557 interpreted relative to their prior abstract nodes. 559 The path between a strict node and its prior node MUST include 560 only network nodes from the strict node and its prior abstract 561 node. 563 The path between a loose node and its prior node MAY include other 564 network nodes which are not part of the strict node or its prior 565 abstract node. 567 CR-LDP Specification - 12 - Exp. August 1999 569 Contents 570 A variable length field containing the node or abstract node that 571 is the consecutive nodes that make up the explicit routed LSP. 573 4.3 Traffic Parameters TLV 575 The following sections describe the CRLSP Traffic Parameters. The 576 required characteristics of a CRLSP are expressed by the Traffic 577 Parameter values. 579 A Traffic Parameters TLV, is used to signal the Traffic Parameter 580 values. The Traffic Parameters are defined in the subsequent 581 sections. 583 The Traffic Parameters TLV contains a Flags field, a Frequency, a 584 Weight, and the five Traffic Parameters PDR, PBS, CDR, CBS, EBS. The 585 Traffic Parameters TLV is shown below: 587 0 1 2 3 588 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 589 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 590 |U|F| Traf. Param. TLV (0x0810)| Length | 591 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 592 | Flags | Frequency | Reserved | Weight | 593 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 594 | Peak Data Rate (PDR) | 595 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 596 | Peak Burst Size (PBS) | 597 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 598 | Committed Data Rate (CDR) | 599 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 600 | Committed Burst Size (CBS) | 601 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 602 | Excess Burst Size (EBS) | 603 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 605 U bit 606 Unknown TLV bit. As defined in [LDP]. 608 F bit 609 Forward unknown TLV bit. As defined in [LDP]. 611 Type 612 A fourteen-bit field carrying the value of the ER-TLV type which 613 is 0x810. 615 Length 616 Specifies the length of the value field in bytes. 618 Flags 619 The Flags field is shown below: 621 CR-LDP Specification - 13 - Exp. August 1999 623 +--+--+--+--+--+--+--+--+ 624 | Res |F6|F5|F4|F3|F2|F1| 625 +--+--+--+--+--+--+--+--+ 627 Res - These bits are reserved. 628 Zero on transmission. 629 Ignored on receipt. 630 F1 - Corresponds to the PDR. 631 F2 - Corresponds to the PBS. 632 F3 - Corresponds to the CDR. 633 F4 - Corresponds to the CBS. 634 F5 - Corresponds to the EBS. 635 F6 - Corresponds to the Weight. 637 Each flag Fi is a Negotiable Flag corresponding to a Traffic 638 Parameter. The Negotiable Flag value zero denotes NotNegotiable 639 and value one denotes Negotiable. 641 Frequency 642 The Frequency field is coded as an 8 bit unsigned integer with 643 the following code points defined: 645 0 - Unspecified 646 1 - Frequent 647 2 - VeryFrequest 648 3-255 - Reserved 650 Reserved 651 Zero on transmission. Ignored on receipt. 653 Weight 654 An 8 bit unsigned integer indicating the weight of the CRLSP. 655 Valid weight values are from 1 to 255. The value 0 means 656 that weight is not applicable for the CRLSP. 658 Traffic Parameters 659 Each Traffic Parameter is encoded as a 32 bit IEEE single- 660 precision floating point number. A value of positive infinity is 661 represented as an IEEE single-precision floating-point number with 662 an exponent of all ones (255) and a sign and mantissa of all 663 zeros. The values PDR and CDR are in units of bytes per second. 664 The values PBS, CBS and EBS are in units of bytes. 666 The value of PDR MUST be greater than or equal to the value of CDR 667 in a correctly encoded Traffic Parameters TLV. 669 4.3.1 Semantics 671 4.3.1.1 Frequency 673 CR-LDP Specification - 14 - Exp. August 1999 675 The Frequency specifies at what granularity the CDR allocated to the 676 CRLSP is made available. The value VeryFrequently means that the 677 available rate should average at least the CDR when measured over any 678 time interval equal to or longer than the shortest packet time at the 679 CDR. The value Frequently means that the available rate should 680 average at least the CDR when measured over any time interval equal 681 to or longer than a small number of shortest packet times at the CDR. 682 The value Unspecified means that the CDR MAY be provided at any 683 granularity. 685 4.3.1.2 Peak Rate 687 The Peak Rate defines the maximum rate at which traffic SHOULD be 688 sent to the CRLSP. The Peak Rate is useful for the purpose of 689 resource allocation. If resource allocation within the MPLS domain 690 depends on the Peak Rate value then it should be enforced at the 691 ingress to the MPLS domain. 693 The Peak Rate is defined in terms of the two Traffic Parameters PDR 694 and PBS, see section 4.3.1.5 below. 696 4.3.1.3 Committed Rate 698 The Committed Rate defines the rate that the MPLS domain commits to 699 be available to the CRLSP. 701 The Committed Rate is defined in terms of the two Traffic Parameters 702 CDR and CBS, see section 4.3.1.6 below. 704 4.3.1.4 Excess Burst Size 706 The Excess Burst Size may be used at the edge of an MPLS domain for 707 the purpose of traffic conditioning. The EBS MAY be used to measure 708 the extent by which the traffic sent on a CRLSP exceeds the committed 709 rate. 711 The possible traffic conditioning actions, such as passing, marking 712 or dropping, are specific to the MPLS domain. 714 The Excess Burst Size is defined together with the Committed Rate, 715 see section 4.3.1.6 below. 717 4.3.1.5 Peak Rate Token Bucket 719 The Peak Rate of a CRLSP is specified in terms of a token bucket P 720 with token rate PDR and maximum token bucket size PBS. 722 The token bucket P is initially (at time 0) full, i.e., the token 723 count Tp(0) = PBS. Thereafter, the token count Tp, if less than PBS, 724 is incremented by one PDR times per second. When a packet of size B 725 bytes arrives at time t, the following happens: 727 CR-LDP Specification - 15 - Exp. August 1999 729 o If Tp(t)-B >= 0, the packet is not in excess of the peak 730 rate and Tp is decremented by B down to the minimum value 731 of 0, else 733 o the packet is in excess of the peak rate and Tp is 734 not decremented. 736 Note that according to the above definition, a positive infinite 737 value of either PDR or PBS implies that arriving packets are never in 738 excess of the peak rate. 740 The actual implementation of a LSR doesn't need to be modeled 741 according to the above formal token bucket specification. 743 4.3.1.6 Committed Data Rate Token Bucket 745 The committed rate of a CRLSP is specified in terms of a token bucket 746 C with rate CDR. The extent by which the offered rate exceeds the 747 committed rate MAY be measured in terms of another token bucket E, 748 which also operates at rate CDR. The maximum size of the token 749 bucket C is CBS and the maximum size of the token bucket E is EBS. 751 The token buckets C and E are initially (at time 0) full, i.e., the 752 token count Tc(0) = CBS and the token count Te(0) = EBS. Thereafter, 753 the token counts Tc and Te are updated CDR times per second as 754 follows: 756 o If Tc is less than CBS, Tc is incremented by one, else 758 o if Te is less then EBS, Te is incremented by one, else 760 o neither Tc nor Te is incremented. 762 When a packet of size B bytes arrives at time t, the following 763 happens: 765 o If Tc(t)-B >= 0, the packet is not in excess of the Committed 766 Rate and Tc is decremented 767 by B down to the minimum value of 0, else 769 o if Te(t)-B >= 0, the packet is in excess of the Committed Rate 770 but is not in excess of the EBS and Te is 771 decremented by B down to the minimum value of 0, else 773 o the packet is in excess of both the Committed Rate and the EBS 774 and neither Tc nor Tc is decremented. 776 Note that according to the above specification, a CDR value of 777 positive infinity implies that arriving packets are never in excess 778 of either the Committed Rate or EBS. A positive infinite value of 779 either CBS or EBS implies that the respective limit cannot be 781 CR-LDP Specification - 16 - Exp. August 1999 783 exceeded. 785 The actual implementation of a LSR doesn't need to be modeled 786 according to the above formal specification. 788 4.3.1.7 Weight 790 The weight determines the CRLSP's relative share of the possible 791 excess bandwidth above its committed rate. The definition of 792 "relative share" is MPLS domain specific. 794 4.3.2 Procedures 796 4.3.2.1 Label Request Message 798 If an LSR receives an incorrectly encoded Traffic Parameters TLV in 799 which the value of PDR is less than the value of CDR then it MUST 800 send a Notification Message including the Status code Traffic 801 Parameters Unavailable to the upstream LSR from which it received the 802 erroneous message. 804 If a Traffic Parameter is indicated as Negotiable in the Label 805 Request Message by the corresponding Negotiable Flag then an LSR MAY 806 replace the Traffic Parameter value with a smaller value. 808 If the Weight is indicated as Negotiable in the Label Request Message 809 by the corresponding Negotiable Flag then an LSR may adjust replace 810 the Weight value with a lower value (down to 1). 812 If, after possible Traffic Parameter negotiation, an LSR can support 813 the CRLSP Traffic Parameters then the LSR MUST reserve the 814 corresponding resources for the CRLSP. 816 If, after possible Traffic Parameter negotiation, an LSR cannot 817 support the CRLSP Traffic Parameters then the LSR MUST send a 818 notification message that contains the Resource Unavailable status 819 code. 821 4.3.2.2 Label Mapping Message 823 If an LSR receives an incorrectly encoded Traffic Parameters TLV in 824 which the value of PDR is less than the value of CDR then it MUST 825 send a Label Release message containing the Status code Traffic 826 Parameters Unavailable to the LSR from which it received the 827 erroneous message. 829 The egress LSR MUST include the (possibly negotiated) Traffic 830 Parameters and Weight in the Label Mapping message. 832 The Traffic Parameters and the Weight in a Label Mapping message MUST 833 be forwarded unchanged. 835 CR-LDP Specification - 17 - Exp. August 1999 837 An LSR SHOULD adjust the resources that it reserved for a CRLSP when 838 it receives a Label Mapping Message if the Traffic Parameters differ 839 from those in the corresponding Label Request Message. 841 4.3.2.3 Notification Message 843 If an LSR receives a Notification Message for a CRLSP, it SHOULD 844 release any resources that it possibly had reserved for the CRLSP. 846 In addition, on receiving a Notification Message from a Downstream 847 LSR that is associated with a Label Request from an upstream LSR, the 848 local LSR MUST propagate the Notification message using the 849 procedures in [LDP]. 851 4.4 Preemption TLV 853 0 1 2 3 854 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 855 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 856 |U|F| Preemption-TLV (0x0820) | Length | 857 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 858 | SetPrio | HoldPrio | Reserved | 859 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 861 U bit 862 Unknown TLV bit. As defined in [LDP]. 864 F bit 865 Forward unknown TLV bit. As defined in [LDP]. 867 Type 868 A fourteen-bit field carrying the value of the Preemption-TLV 869 type which is 0x810. 871 Length 872 Specifies the length of the value field in bytes. 874 Reserved 875 Zero on transmission. Ignored on receipt. 877 SetPrio 878 A SetupPriority of value zero (0) is the priority assigned to the 879 most important path. It is referred to as the highest priority. 880 Seven (7) is the priority for the least important path. The higher 881 the setup priority, the more paths CR-LDP can bump to set up the 882 path. 884 HoldPrio 885 A HoldingPriority of value zero (0) is the priority assigned to 886 the most important path. It is referred to as the highest 887 priority. Seven (7) is the priority for the least important path. 889 CR-LDP Specification - 18 - Exp. August 1999 891 The higher the holding priority, the less likely it is for CR-LDP 892 to reallocate its bandwidth to a new path. 894 4.5 LSPID TLV 896 LSPID is a unique identifier of a CRLSP within an MPLS network. 898 The LSPID is composed of the ingress LSR Router ID and a Locally 899 unique CRLSP ID to that LSR. 901 The LSPID is useful in network management, in CR-LSP repair, and in 902 using an already established CR-LSP as a hop in an ER-TLV. 904 0 1 2 3 905 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 906 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 907 |U|F| LSPID-TLV (0x0821) | Length | 908 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 909 | Reserved | Local CRLSP ID | 910 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 911 | Ingress LSR Router ID | 912 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 914 U bit 915 Unknown TLV bit. As defined in [LDP]. 917 F bit 918 Forward unknown TLV bit. As defined in [LDP]. 920 Type 921 A fourteen-bit field carrying the value of the LSPID-TLV 922 type which is 0x821. 924 Length 925 Specifies the length of the value field in bytes. 927 Reserved 928 Zero on transmission. Ignored on receipt. 930 Local CRLSP ID 931 The Local LSP ID is an identifier of the CRLSP locally unique 932 within the Ingress LSR originating the CRLDP. 934 Ingress LSR Router ID 935 A 4 byte field indicating the Ingress LSR ID. 937 4.6 Resource Class (Color) TLV 939 The Resource Class as defined in [TER] is used to specify which links 940 are acceptable by this CRLSP. This information allows for the 942 CR-LDP Specification - 19 - Exp. August 1999 944 networks topology to be pruned. 946 0 1 2 3 947 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 948 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 949 |U|F| ResCls-TLV (0x0822) | Length | 950 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 951 | RsCls | 952 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 954 U bit 955 Unknown TLV bit. As defined in [LDP]. 957 F bit 958 Forward unknown TLV bit. As defined in [LDP]. 960 Type 961 A fourteen-bit field carrying the value of the ResCls-TLV 962 type which is 0x822. 964 Length 965 Specifies the length of the value field in bytes. 967 RsCls 968 The Resource Class bit mask indicating which of the 969 32 "administrative groups" or "colors" of links 970 the CRLSP can traverse. 972 4.7 ER-Hop semantics 974 4.7.1. ER-Hop 1: The IPv4 prefix 976 The abstract node represented by this ER-Hop is the set of nodes 977 which have an IP address which lies within this prefix. Note that a 978 prefix length of 32 indicates a single IPv4 node. 980 0 1 2 3 981 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 982 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 983 |U|F| 0x801 | Length | 984 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 985 |L| Reserved | PreLen | 986 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 987 | IPv4 Address (4 bytes) | 988 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 990 U bit 991 Unknown TLV bit. As defined in [LDP]. 993 F bit 994 Forward unknown TLV bit. As defined in [LDP]. 996 CR-LDP Specification - 20 - Exp. August 1999 998 Type 999 IPv4 Address 0x801 1001 Length 1002 Specifies the length of the value field in bytes. 1004 L Bit 1005 Set to indicate Loose hop. 1006 Cleared to indicate a strict hop. 1008 Reserved 1009 Zero on transmission. Ignored on receipt. 1011 PreLen 1012 Prefix Length 1-32 1014 IP Address 1015 A four byte field indicating the IP Address. 1017 4.7.2. ER-Hop 2: The IPv6 address 1019 0 1 2 3 1020 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 1021 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 1022 |U|F| 0x802 | Length | 1023 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 1024 |L| Reserved | PreLen | 1025 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 1026 | IPV6 address | 1027 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 1028 | IPV6 address (continued) | 1029 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 1030 | IPV6 address (continued) | 1031 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 1032 | IPV6 address (continued) | 1033 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 1035 U bit 1036 Unknown TLV bit. As defined in [LDP]. 1038 F bit 1039 Forward unknown TLV bit. As defined in [LDP]. 1041 Type 1042 0x802 IPv6 address 1044 Length 1045 Specifies the length of the value field in bytes. 1047 L Bit 1048 Set to indicate Loose hop. 1050 CR-LDP Specification - 21 - Exp. August 1999 1052 Cleared to indicate a strict hop. 1054 Reserved 1055 Zero on transmission. Ignored on receipt. 1057 PreLen 1058 Prefix Length 1-128 1060 IPv6 address 1061 A 128-bit unicast host address. 1063 4.7.3. ER-Hop 32: The autonomous system number 1065 The abstract node represented by this ER-Hop is the set of nodes 1066 belonging to the autonomous system. 1068 0 1 2 3 1069 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 1070 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 1071 |U|F| 0x803 | Length | 1072 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 1073 |L| Reserved | AS Number | 1074 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 1076 U bit 1077 Unknown TLV bit. As defined in [LDP]. 1079 F bit 1080 Forward unknown TLV bit. As defined in [LDP]. 1082 Type 1083 AS Number 0x803 1085 Length 1086 Specifies the length of the value field in bytes. 1088 L Bit 1089 Set to indicate Loose hop. 1090 Cleared to indicate a strict hop. 1092 Reserved 1093 Zero on transmission. Ignored on receipt. 1095 AS Number 1096 Autonomous System number 1098 4.7.4. ER-Hop 4: LSPID 1100 The LSPID is used to identify the tunnel ingress point as the next 1101 hop in the ER. This ER-Hop allows for stacking new CR-LSPs within an 1102 already established CR-LSP. It also allows for splicing the CR-LSP 1104 CR-LDP Specification - 22 - Exp. August 1999 1106 being established with an existing CR-LSP. 1108 0 1 2 3 1109 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 1110 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 1111 |U|F| 0x804 | Length | 1112 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 1113 |L| Reserved | Local LSPID | 1114 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 1115 | Ingress LSR Router ID | 1116 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 1118 U bit 1119 Unknown TLV bit. As defined in [LDP]. 1121 F bit 1122 Forward unknown TLV bit. As defined in [LDP]. 1124 Type 1125 LSPID 0x804 1127 Length 1128 Specifies the length of the value field in bytes. 1130 L Bit 1131 Set to indicate Loose hop. 1132 Cleared to indicate a strict hop. 1134 Reserved 1135 Zero on transmission. Ignored on receipt. 1137 Local LSPID 1138 A 2 byte field indicating the LSPID which is unique 1139 with reference to the its Ingress LSR. 1141 Ingress LSR Router ID 1142 A 4 byte field indicating the Ingress LSR ID. 1144 4.8. Processing of the Explicit Route TLV 1146 4.8.1. Selection of the next hop 1148 A Label Request Message containing a explicit route TLV must 1149 determine the next hop for this path. Selection of this next hop may 1150 involve a selection from a set of possible alternatives. The 1151 mechanism for making a selection from this set is implementation 1152 dependent and is outside of the scope of this specification. 1153 Selection of particular paths is also outside of the scope of this 1154 specification, but it is assumed that each node will make a best 1155 effort attempt to determine a loop-free path. Note that such best 1157 CR-LDP Specification - 23 - Exp. August 1999 1159 efforts may be overridden by local policy. 1161 To determine the next hop for the path, a node performs the following 1162 steps: 1164 1) The node receiving the Label Request Message must first 1165 evaluate the first ER-Hop. If the L bit is not set in the first 1166 ER-Hop and if the node is not part of the abstract node described 1167 by the first ER-Hop, it has received the message in error, and 1168 should return a "Bad initial ER-Hop" error. If the L bit is set 1169 and the local node is not part of the abstract node described by 1170 the first ER-Hop, the node selects a next hop that is along the 1171 path to the abstract node described by the first ER-Hop. If there 1172 is no first ER-Hop, the message is also in error and the system 1173 should return a "Bad Explicit Routing TLV" error. 1175 2) If there is no second ER-Hop, this indicates the end of the 1176 explicit route. The explicit route TLV should be removed from the 1177 Label Request Message. This node may or may not be the end of the 1178 LSP. Processing continues with section 4.8.2, where a new 1179 explicit route TLV may be added to the Label Request Message. 1181 3) If the node is also a part of the abstract node described by 1182 the second ER-Hop, then the node deletes the first ER-Hop and 1183 continues processing with step 2, above. Note that this makes the 1184 second ER-Hop into the first ER-Hop of the next iteration. 1186 4) The node determines if it is topologically adjacent to the 1187 abstract node described by the second ER-Hop. If so, the node 1188 selects a particular next hop which is a member of the abstract 1189 node. The node then deletes the first ER-Hop and continues 1190 processing with section 4.8.2. 1192 5) Next, the node selects a next hop within the abstract node of 1193 the first ER-Hop that is along the path to the abstract node of 1194 the second ER-Hop. If no such path exists then there are two 1195 cases: 1197 5a) If the second ER-Hop is a strict ER-Hop, then there is an 1198 error and the node should return a "Bad strict node" error. 1200 5b) Otherwise, if the second ER-Hop is a loose ER-Hop, then the 1201 node selects any next hop that is along the path to the next 1202 abstract node. If no path exists within the MPLS domain, then 1203 there is an error, and the node should return a "Bad loose node" 1204 error. 1206 6) Finally, the node replaces the first ER-Hop with any ER-Hop 1207 that denotes an abstract node containing the next hop. This is 1208 necessary so that when the explicit route is received by the next 1209 hop, it will be accepted. 1211 CR-LDP Specification - 24 - Exp. August 1999 1213 7) Progress the Label Request Message to the next hop. 1215 4.8.2. Adding ER-Hops to the explicit route TLV 1217 After selecting a next hop, the node may alter the explicit route in 1218 the following ways. 1220 If, as part of executing the algorithm in section 4.8.1, the explicit 1221 route TLV is removed, the node may add a new explicit route TLV. 1223 Otherwise, if the node is a member of the abstract node for the first 1224 ER-Hop, then a series of ER-Hops may be inserted before the first 1225 ER-Hop or may replace the first ER-Hop. Each ER-Hop in this series 1226 must denote an abstract node that is a subset of the current abstract 1227 node. 1229 Alternately, if the first ER-Hop is a loose ER-Hop, an arbitrary 1230 series of ER-Hops may be inserted prior to the first ER-Hop. 1232 4.9 Route Pinning TLV 1234 0 1 2 3 1235 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 1236 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 1237 |U|F| 0x823 | Length | 1238 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 1239 |P| Reserved | 1240 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 1242 U bit 1243 Unknown TLV bit. As defined in [LDP]. 1245 F bit 1246 Forward unknown TLV bit. As defined in [LDP]. 1248 Type 1249 Pinning-TLV type 0x823 1251 Length 1252 Specifies the length of the value field in bytes. 1254 P Bit 1255 The P bit is set to 1 to indicate that route pinning is requested. 1256 The P bit is set to 0 to indicate that route pinning is not 1257 requested 1259 Reserved 1260 Zero on transmission. Ignored on receipt. 1262 4.10 CRLSP FEC Element 1264 CR-LDP Specification - 25 - Exp. August 1999 1266 A new FEC element is introduced in this specification to support CR- 1267 LSPs. The CRLDP FEC Element is an opaque FEC. 1269 FEC Element Type Value 1270 type name 1272 CRLSP 0x04 No value; i.e., 0 value octets; 1273 see below. 1275 CRLSP FEC Element 1276 To be used only in Messages of CR-LSPs. 1278 The CR-LSP FEC TLV encoding is as follows: 1280 0 1 2 3 1281 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 1282 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 1283 |U|F| FEC(0x0100) | Length | 1284 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 1285 | CR-LSP (4) | Reserved | 1286 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 1288 U bit 1289 Unknown TLV bit. As defined in [LDP]. 1291 F bit 1292 Forward unknown TLV bit. As defined in [LDP]. 1294 Type 1295 FEC TLV type 0x0100 1297 Length 1298 Specifies the length of the value field in bytes. 1300 CR-LSP FEC Element Type 1301 0x04 1303 Reserved 1304 Zero on transmission. Ignored on receipt. 1306 4.11 Error subcodes 1308 In the processing described above, certain errors need to be reported 1309 as part of the Notification Message. This section defines the status 1310 codes for the errors described in this specification. 1312 CR-LDP Specification - 26 - Exp. August 1999 1314 Status Code Type 1315 -------------------------------------- ---------- 1316 Bad Explicit Routing TLV Error 0x04000001 1317 Bad Strict Node Error 0x04000002 1318 Bad Loose Node Error 0x04000003 1319 Bad Initial ER-Hop Error 0x04000004 1320 Resource Unavailable 0x04000005 1321 Traffic Parameters Unavailable 0x04000006 1322 Setup abort 0x04000007 1324 5. Security 1326 Pre-emption has to be controlled by the MPLS domain. 1328 Resource reservation requires the LSRs to have an LSP admission 1329 control function. 1331 Normal routing can be bypassed by Traffic Engineered LSPs. 1333 6. Acknowledgments 1335 The messages used to signal the CRLSP setup are based on the work 1336 done by the [LDP] team. The Explicit Route object and procedures used 1337 in this specification are based on [ER]. 1339 The authors would also like to acknowledge the careful review and 1340 comments of Ken Hayward, Greg Wright, Geetha Brown, Brian Williams, 1341 Paul Beaubien, Matthew Yuen, Liam Casey, and Ankur Anand. 1343 7. References 1345 [LDP] Andersson et al, "Label Distribution Protocol Specification" 1346 work in progress (draft-ietf-mpls-ldp-03), Feb. 1999. 1348 [ARCH] Rosen et al, "Multiprotocol Label Switching Architecture", 1349 work in progress (draft-ietf-mpls-arch-04), Feb. 1999. 1351 [FRAME] Callon et al, "Framework for Multiprotocol Label Switching", 1352 work in progress (draft-ietf-mpls-framework-02), November 1353 1997. 1355 [TER] Awduche et al, "Requirements for Traffic Engineering Over 1356 MPLS", work in progress (draft-ietf-mpls-traffic-eng-00), 1357 August 1998. 1359 [ER] Guerin et al, "Setting up Reservations on Explicit Paths 1360 using RSVP", work in progress (draft-guerin-expl-path-rsvp- 1361 01) 1362 November 1997. 1364 CR-LDP Specification - 27 - Exp. August 1999 1366 [VPN1] Heinanen et al, "MPLS Mappings of Generic VPN Mechanisms", 1367 work in progress (draft-heinanen-generic-vpn-mpls-00), 1368 August 1998. 1370 [VPN2] Jamieson et al, "MPLS VPN Architecture" work in progress 1371 (draft-jamieson-mpls-vpn-00), August 1998. 1373 [VPN3] T. Li, "CPE based VPNs using MPLS", work in progress (draft- 1374 li-mpls-vpn-00.txt), October 1998. 1376 [LDP-STATE] L. Wu, et. al., "LDP State Machine" work in progress 1377 (draft-ietf-mpls-ldp-state-00), Feb 1999. 1379 CR-LDP Specification - 28 - Exp. August 1999 1381 8. Author Information 1383 Osama S. Aboul-Magd Loa Andersson 1384 Nortel Networks Director Bay Architecture Lab,EMEA 1385 P O Box 3511 Station C Kungsgatan 34, PO Box 1788 1386 Ottawa, ON K1Y 4H7 111 97 Stockholm, Sweden 1387 Canada phone: +46 8 441 78 34 1388 phone: +1 613 763-5827 mobile +46 70 522 78 34 1389 osama@NortelNetworks.com loa_andersson@baynetworks.com 1391 Peter Ashwood-Smith Ross Callon 1392 Nortel Networks IronBridge Networks 1393 P O Box 3511 Station C 55 Hayden Avenue, 1394 Ottawa, ON K1Y 4H7 Lexington, MA 02173 1395 Canada Phone: +1-781-402-8017 1396 phone: +1 613 763-4534 rcallon@ironbridgenetworks.com 1397 petera@NortelNetworks.com 1399 Ram Dantu Paul Doolan 1400 Alcatel USA Inc. Ennovate Networks 1401 IP Competence Center 330 Codman Hill Rd 1402 1201 E. Campbell Road.,446-315 Marlborough MA 01719 1403 Richadson, TX USA., 75081-2206 Phone: 978-263-2002 1404 Phone: 972 996 2938 pdoolan@ennovatenetworks.com 1405 Fax: 972 996 5902 1406 ram.dantu@aud.alcatel.com 1408 Nancy Feldman Andre Fredette 1409 IBM Corp. Nortel Networks 1410 17 Skyline Drive 3 Federal Street 1411 Hawthorne NY 10532 Billerica, MA 01821 1412 Phone: 914-784-3254 fredette@baynetworks.com 1413 nkf@us.ibm.com 1415 Eric Gray Joel M. Halpern 1416 Lucent Technologies, Inc Newbridge Networks Inc. 1417 1600 Osgood St. 593 Herndon Parkway 1418 North Andover, MA 01847 Herndon, VA 20170 1419 Phone: 603-659-3386 phone: 1-703-736-5954 1420 ewgray@lucent.com jhalpern@newbridge.com 1422 Juha Heinanen Fiffi Hellstrand 1423 Telia Finland, Inc. Ericsson Telecom AB 1424 Myyrmaentie 2 S-126 25 STOCKHOLM 1425 01600 VANTAA Sweden 1426 Finland Tel: +46 8 719 4933 1427 Tel: +358 41 500 4808 etxfiff@etxb.ericsson.se 1428 jh@telia.fi 1430 CR-LDP Specification - 29 - Exp. August 1999 1432 Bilel Jamoussi Timothy E. Kilty 1433 Nortel Networks Northchurch Communications 1434 P O Box 3511 Station C 5 Corporate Drive, 1435 Ottawa, ON K1Y 4H7 Andover, MA 018110 1436 Canada phone: 978 691-4656 1437 phone: +1 613 765-4814 tkilty@northc.com 1438 jamoussi@NortelNetworks.com 1440 Andrew G. Malis Muckai K Girish 1441 Ascend Communications, Inc. SBC Technology Resources, Inc. 1442 1 Robbins Road 4698 Willow Road 1443 Westford, MA 01886 Pleasanton, CA 94588 1444 phone: 978 952-7414 Phone: (925) 598-1263 1445 fax: 978 392-2074 Fax: (925) 598-1321 1446 malis@ascend.com mgirish@tri.sbc.com 1448 Kenneth Sundell Pasi Vaananen 1449 Ericsson Nokia Telecommunications 1450 SE-126 25 Stockholm 3 Burlington Woods Drive, Suite 250 1451 Sweden Burlington, MA 01803 1452 kenneth.sundell@etx.ericsson.se Phone: +1-781-238-4981 1453 pasi.vaananen@ntc.nokia.com 1455 Tom Worster Liwen Wu 1456 General DataComm, Inc. Alcatel U.S.A 1457 5 Mount Royal Ave. 44983 Knoll Square 1458 Marlboro MA 01752 Ashburn, Va. 20147 1459 tom.worster@gdc.com USA 1460 Phone: (703) 724-2619 1461 FAX: (703) 724-2005 1462 liwen.wu@adn.alcatel.com 1464 CR-LDP Specification - 30 - Exp. August 1999 1466 Appendix A: CRLSP Establishment Examples 1468 A.1 Strict Explicit Route Example 1470 This appendix provides an example for the setup of a strictly routed 1471 CRLSP. In this example, each abstract node is represented by a 1472 specific node. 1474 The sample network used here is a four node network with two edge 1475 LSRs and two core LSRs as follows: 1477 a b c 1478 LSR1------LSR2------LSR3------LSR4 1480 LSR1 generates a Label Request Message as described in Section 3.1 of 1481 this draft and sends it to LSR2. This message includes the CR-TLV. 1483 The ER-TLV is composed by a vector of three ER-Hop TLVs . 1484 The ER-Hop TLVs used in this example are of type 0x0801 (IPv4 prefix) 1485 with a prefix length of 32. Hence, each ER-Hop TLV identifies a 1486 specific node as opposed to a group of nodes. 1488 At LSR2, the following processing of the ER-TLV per Section 4.8.1 of 1489 this draft takes place: 1491 1) The first hop is part of the abstract node LSR2. Therefore, 1492 the first step passes the test. Go to step 2. 1494 2) There is a second ER-Hop, . Go to step 3. 1496 3) LSR2 is not part of the abstract node described by the second 1497 ER-Hop . Go to Step 4. 1499 4) LSR2 determines that it is topologically adjacent to the 1500 abstract node described by the second ER-Hop . LSR2 selects a 1501 next hop (LSR3) which is the abstract node. LSR2 deletes the first 1502 ER-Hop from the ER-TLV which now becomes . Go to 1503 Section 4.8.2. 1505 At LSR2, the following processing of Section 4.8.2 takes place: 1507 Executing algorithm 4.8.1 did not result in the removal of the 1508 ER-TLV. 1510 Also, LSR2 is not a member of the abstract node described by the 1511 first ER-Hop . 1513 Finally, the first ER-Hop is a strict hop. 1515 Therefore, processing section 4.8.2 does not result in the 1516 insertion of new ER-Hops. The selection of the next hop has been 1518 CR-LDP Specification - 31 - Exp. August 1999 1520 already done is step 4 of Section 4.8.1 and the processing of the 1521 ER-TLV is completed at LSR2. In this case, the Label Request 1522 Message including the ER-TLV is progressed by LSR2 to LSR3. 1524 At LSR3, a similar processing to the ER-TLV takes place except that 1525 the incoming ER-TLV = and the outgoing ER-TLV is . 1527 At LSR4, the following processing of section 4.8.1 takes place: 1529 1) The first hop is part of the abstract node LSR4. Therefore, 1530 the first step passes the test. Go to step 2. 1532 2) There is no second ER-Hop, this indicates the end of the CRLSP. 1533 The ER-TLV is removed from the Label Request Message. Processing 1534 continues with Section 4.8.2. 1536 At LSR4, the following processing of Section 4.8.2 takes place: 1538 Executing algorithm 4.8.1 resulted in the removal of the ER-TLV. 1539 LSR4 does not add a new ER-TLV. 1541 Therefore, processing section 4.8.2 does not result in the 1542 insertion of new ER-Hops. This indicates the end of the CRLSP and 1543 the processing of the ER-TLV is completed at LSR4. 1545 At LSR4, processing of Section 3.2 is invoked. The first condition is 1546 satisfied (LSR4 is the egress end of the CRLSP and upstream mapping 1547 has been requested). Therefore, a Label Mapping Message is generated 1548 by LSR4 and sent to LSR3. 1550 At LSR3, the processing of Section 3.2 is invoked. The second 1551 condition is satisfied (LSR3 received a mapping from its downstream 1552 next hop LSR4 for a CRLSP for which an upstream request is still 1553 pending). Therefore, a Label Mapping Message is generated by LSR3 and 1554 sent to LSR2. 1556 At LSR2, a similar processing to LSR 3 takes place and a Label 1557 Mapping Message is sent back to LSR1 which completes the end-to-end 1558 CRLSP setup. 1560 A.2. Node Groups and Specific Nodes Example 1562 A request at an ingress LSR to setup a CRLSP might originate from a 1563 management system or an application, the details are implementation 1564 specific. 1566 The ingress LSR uses information provided by the management system or 1567 the application and possibly also information from the routing 1568 database to calculated the explicit route and to create the Label 1569 Request Message. 1571 CR-LDP Specification - 32 - Exp. August 1999 1573 The Label request message carries together with other necessary 1574 information a ER-TLV defining the explicitly routed path. In our 1575 example the list of hops in the ER-Hop TLV is supposed to contain an 1576 abstract node representing a group of nodes, an abstract node 1577 representing a specific node, another abstract node representing a 1578 group of nodes, and an abstract node representing a specific egress 1579 point. 1581 In--{Group 1}--{Specific A}--{Group 2}--{Specific Out: B} 1583 The ER-TLV contains four ER-Hop TLVs: 1585 1. An ER-Hop TLV that specifies a group of LSR valid for the first 1586 abstract node representing a group of nodes (Group 1). 1588 2. An ER-Hop TLV that indicates the specific node (Node A). 1590 3. An ER-Hop TLV that specifies a group of LSRs valid for the 1591 second abstract node representing a group of nodes (Group 2). 1593 4. An ER-Hop TLV that indicates the specific egress point for the 1594 CRLSP (Node B). 1596 All the ER-Hop TLVs are strictly routed nodes. 1598 The setup procedure for this CRLSP works as follows: 1600 1. The ingress node sends the Label Request Message to a node that 1601 is a member the group of nodes indicated in the first ER-Hop TLV, 1602 following normal routing for the specific node (A). 1604 2. The node that receives the message identifies itself as part of 1605 the group indicated in the first ER-Hop TLV, and that it is not 1606 the specific node (A) in the second. Further it realizes that the 1607 specific node (A) is not one of its next hops. 1609 3. It keeps the ER-Hop TLVs intact and sends a Label Request 1610 Message to a node that is part of the group indicated in the first 1611 ER-Hop TLV (Group 1), following normal routing for the specific 1612 node (A). 1614 4. The node that receives the message identifies itself as part of 1615 the group indicated in the first ER-Hop TLV, and that it is not 1616 the specific node (A) in the second ER-Hop TLV. Further it 1617 realizes that the specific node (A) is one of its next hops. 1619 5. It removes the first ER-Hop TLVs and sends a Label Request 1620 Message to the specific node (A). 1622 6. The specific node (A) recognizes itself in the first ER-Hop 1623 TLV. Removes the specific ER-Hop TLV. 1625 CR-LDP Specification - 33 - Exp. August 1999 1627 7. It sends a Label Request Message to a node that is a member of 1628 the group (Group 2) indicated in the ER-Hop TLV. 1630 8. The node that receives the message identifies itself as part of 1631 the group indicated in the first ER-Hop TLV, further it realizes 1632 that the specific egress node (B) is one of its next hops. 1634 9. It sends a Label Request Message to the specific egress node 1635 (B). 1637 10. The specific egress node (B) recognizes itself as the egress 1638 for the CRLSP, it returns a Label Mapping Message, that will 1639 traverse the same path as the Label Request Message in the 1640 opposite direction. 1642 CR-LDP Specification - 34 - Exp. August 1999 1644 Appendix B. QoS Service Examples 1646 B.1 Service Examples 1648 Construction of an end-to-end service is the result of the rules 1649 enforced at the edge and the treatment that packets receive at the 1650 network nodes. The rules define the traffic conditioning actions that 1651 are implemented at the edge and they include policing with pass, 1652 mark, and drop capabilities. The edge rules are expected to be 1653 defined by the mutual agreements between the service providers and 1654 their customers and they will constitute an essential part of the 1655 SLA. Therefore edge rules are not included in the signaling protocol. 1657 Packets treatment at a network node is usually referred to as the 1658 local behavior. Local behavior could be specified in many ways. One 1659 example for local behavior specification is the service frequency 1660 introduced in section 4.3.2.1., together with the resource 1661 reservation rules implemented at the nodes. 1663 Edge rules and local behaviors can be viewed as the main building 1664 blocks for the end-to-end service construction. The following table 1665 illustrates the applicability of the building block approach for 1666 constructing different services including those defined for ATM. 1668 Service PDR PBS CDR CBS EBS Service Conditioning 1669 Examples Frequency Action 1670 --------------------------------------------------------------------------- 1672 DS S S =PDR =PBS 0 Frequent drop>PDR 1674 TS S S S S 0 Unspecified drop>PDR,PBS 1675 mark>CDR,CBS 1677 BE inf inf inf inf 0 Unspecified - 1679 FRS S S CIR ~B_C ~B_E Unspecified drop>PDR,PBS 1680 mark>CDR,CBS,EBS 1682 ATM-CBR PCR CDVT =PCR =CDVT 0 VeryFrequent drop>PCR 1684 ATM-VBR.3(rt) PCR CDVT SCR MBS 0 Frequent drop>PCR 1685 mark>SCR,MBS 1687 ATM-VBR.3(nrt) PCR CDVT SCR MBS 0 Unspecified drop>PCR 1688 mark>SCR,MBS 1690 ATM-UBR PCR CDVT - - 0 Unspecified drop>PCR 1692 ATM-GFR.1 PCR CDVT MCR MBS 0 Unspecified drop>PCR 1694 CR-LDP Specification - 35 - Exp. August 1999 1696 ATM-GFR.2 PCR CDVT MCR MBS 0 Unspecified drop>PCR 1697 mark>MCR,MFS 1699 int-serv-CL p m r b 0 Frequent drop>p 1700 drop>r,b 1702 S= User specified 1704 In the above table, the DS refers to a delay sensitive service where 1705 the network commits to deliver with high probability user datagrams 1706 at a rate of PDR with minimum delay and delay requirements. Datagrams 1707 in excess of PDR will be discarded. 1709 The TS refers to a generic throughput sensitive service where the 1710 network commit to deliver with high probability user datagrams at a 1711 rate of at least CDR. The user may transmit at a rate higher than CDR 1712 but datagrams in excess of CDR would have a lower probability of 1713 being delivered. 1715 The BE is the best effort service and it implies that there are no 1716 expected service guarantees from the network. 1718 B.2. Establishing CR-LSP Supporting Real-Time Applications 1720 In this scenario the customer needs to establish an LSP for 1721 supporting real-time applications such voice and video. The Delay- 1722 sensitive (DS) service is requested in this case. 1724 The first step is the specification of the traffic parameters in the 1725 signaling message. The two parameters of interest to the DS service 1726 are the PDR and the PBS and their values are specified by the user 1727 based on his requirements. Since all the traffic parameters are 1728 included in the signaling message, appropriate values must be 1729 assigned to all of them. For DS service, the CDR and the CBS values 1730 are set equal to the PDR and the PBS respectively. An indication of 1731 whether the parameter values are subject to negotiation is flagged. 1733 The transport characteristics of the DS service requires that 1734 Frequent frequency to be requested to reflect the real-time delay 1735 requirements of the service. 1737 In addition to the transport characteristics, both the network 1738 provider and the customer need to agree on the actions enforced at 1739 the edge. The specification of those actions is expected to be a part 1740 of the service level agreement (SLA) negotiation and is not included 1741 in the signaling protocol. For DS service, the edge action is to drop 1742 packets that exceed the PDR and the PBS specifications. 1744 The signaling message will be sent in the direction of the ER path 1745 and the LSP is established following the normal LDP procedures. Each 1747 CR-LDP Specification - 36 - Exp. August 1999 1749 LSR applies its admission control rules. If sufficient resources are 1750 not available and the parameter values are subject to negotiation, 1751 then the LSR could negotiate down either the PDR, the PBS, or both. 1752 The new parameters values are echoed back in the Label Mapping 1753 Message. LSRs might need to re-adjust their resource reservations 1754 based on the new traffic parameter values. 1756 B.3. Establishing CR-LSP Supporting Delay Insensitive Applications 1758 In this example we assume that a throughput sensitive (TS) service is 1759 requested. For resource allocation the user assigns values for PDR, 1760 PBS, CDR, and CBS. The negotiation flag is set if the traffic 1761 parameters are subject to negotiation. 1763 Since the service is delay insensitive by definition, the Unspecified 1764 frequency is signaled to indicate that the service frequency is not 1765 an issue. 1767 Similar to the previous example, the edge actions are not subject for 1768 signaling and are specified in the service level agreement between 1769 the user and the network provider. 1771 For TS service, the edge rules might include marking to indicate high 1772 discard precedence values for all packets that exceed CDR and the 1773 CBS. The edge rules will also include dropping of packets that are do 1774 not conform to either PDR and PBS. 1776 Each LSR of the LSP is expected to run its admission control rules 1777 and negotiate traffic parameters down if sufficient resources do not 1778 exist. The new parameters values are echoed back in the Label Mapping 1779 Message. LSRs might need to re-adjust their resources based on the 1780 new traffic parameter values.