idnits 2.17.1 draft-ietf-tsvwg-rsvp-dste-01.txt: Checking boilerplate required by RFC 5378 and the IETF Trust (see https://trustee.ietf.org/license-info): ---------------------------------------------------------------------------- ** It looks like you're using RFC 3978 boilerplate. You should update this to the boilerplate described in the IETF Trust License Policy document (see https://trustee.ietf.org/license-info), which is required now. -- Found old boilerplate from RFC 3978, Section 5.1 on line 25. -- Found old boilerplate from RFC 3978, Section 5.5 on line 1156. -- Found old boilerplate from RFC 3979, Section 5, paragraph 1 on line 1131. -- Found old boilerplate from RFC 3979, Section 5, paragraph 2 on line 1138. -- Found old boilerplate from RFC 3979, Section 5, paragraph 3 on line 1144. ** This document has an original RFC 3978 Section 5.4 Copyright Line, instead of the newer IETF Trust Copyright according to RFC 4748. ** This document has an original RFC 3978 Section 5.5 Disclaimer, instead of the newer disclaimer which includes the IETF Trust according to RFC 4748. Checking nits according to https://www.ietf.org/id-info/1id-guidelines.txt: ---------------------------------------------------------------------------- ** The document is more than 15 pages and seems to lack a Table of Contents. == 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 29 pages Checking nits according to https://www.ietf.org/id-info/checklist : ---------------------------------------------------------------------------- ** The document seems to lack an Authors' Addresses Section. ** There are 6 instances of too long lines in the document, the longest one being 1 character in excess of 72. ** The abstract seems to contain references ([RFC2119]), which it shouldn't. Please replace those with straight textual mentions of the documents in question. Miscellaneous warnings: ---------------------------------------------------------------------------- == The copyright year in the RFC 3978 Section 5.4 Copyright Line does not match the current year == Line 32 has weird spacing: '... and may be...' == Using lowercase 'not' together with uppercase 'MUST', 'SHALL', 'SHOULD', or 'RECOMMENDED' is not an accepted usage according to RFC 2119. Please use uppercase 'NOT' together with RFC 2119 keywords (if that is what you mean). Found 'MUST not' in this paragraph: As with [LSP-HIER], the IP TTL vs. RSVP TTL check MUST not be made. The Deaggregator is informed that this check is not to be made because of the presence of the IF_ID RSVP HOP object. -- 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 2006) is 6645 days in the past. Is this intentional? -- Found something which looks like a code comment -- if you have code sections in the document, please surround them with '' and '' lines. Checking references for intended status: Proposed Standard ---------------------------------------------------------------------------- (See RFCs 3967 and 4897 for information about using normative references to lower-maturity documents in RFCs) == Missing Reference: 'RFC2205' is mentioned on line 587, but not defined == Unused Reference: 'RFC3668' is defined on line 979, but no explicit reference was found in the text == Unused Reference: 'BCP-78' is defined on line 982, but no explicit reference was found in the text ** Obsolete normative reference: RFC 3668 (Obsoleted by RFC 3979) ** Obsolete normative reference: RFC 3978 (ref. 'BCP-78') (Obsoleted by RFC 5378) ** Downref: Normative reference to an Informational RFC: RFC 1633 (ref. 'INT-SERV') ** Downref: Normative reference to an Informational RFC: RFC 2475 (ref. 'DIFFSERV') ** Downref: Normative reference to an Informational RFC: RFC 2998 (ref. 'INT-DIFF') ** Downref: Normative reference to an Informational RFC: RFC 2702 (ref. 'MPLS-TE') == Outdated reference: A later version (-02) exists of draft-vasseur-ccamp-automesh-00 Summary: 13 errors (**), 0 flaws (~~), 9 warnings (==), 8 comments (--). Run idnits with the --verbose option for more detailed information about the items above. -------------------------------------------------------------------------------- 1 RSVP Aggregation over MPLS TE tunnels February 2006 3 Internet Draft Francois Le Faucheur 4 Michael DiBiasio 5 Bruce Davie 6 Cisco Systems, Inc. 8 Michael Davenport 9 Chris Christou 10 Booz Allen Hamilton 12 Jerry Ash 13 Bur Goode 14 AT&T 15 draft-ietf-tsvwg-rsvp-dste-01.txt 16 Expires: August 2006 February 2006 18 Aggregation of RSVP Reservations over MPLS TE/DS-TE Tunnels 20 Status of this Memo 22 By submitting this Internet-Draft, each author represents that any 23 applicable patent or other IPR claims of which he or she is aware 24 have been or will be disclosed, and any of which he or she becomes 25 aware will be disclosed, in accordance with Section 6 of BCP 79. 27 Internet-Drafts are working documents of the Internet Engineering 28 Task Force (IETF), its areas, and its working groups. Note that other 29 groups may also distribute working documents as Internet-Drafts. 31 Internet-Drafts are draft documents valid for a maximum of six months 32 and may be updated, replaced, or obsoleted by other documents at any 33 time. It is inappropriate to use Internet-Drafts as reference 34 material or to cite them other than as "work in progress." 36 The list of current Internet-Drafts can be accessed at 37 http://www.ietf.org/ietf/1id-abstracts.txt. 39 The list of Internet-Draft Shadow Directories can be accessed at 40 http://www.ietf.org/shadow.html. 42 Abstract 44 RFC 3175 specifies aggregation of RSVP end-to-end reservations over 45 aggregate RSVP reservations. This document specifies aggregation of 46 RSVP end-to-end reservations over MPLS Traffic Engineering (TE) 48 RSVP Aggregation over MPLS TE tunnels February 2006 50 tunnels or MPLS Diffserv-aware MPLS Traffic Engineering (DS-TE) 51 Tunnels. This approach is based on RFC 3175 and simply modifies the 52 corresponding procedures for operations over MPLS TE tunnels instead 53 of aggregate RSVP reservations. This approach can be used to achieve 54 admission control of a very large number of flows in a scalable 55 manner since the devices in the core of the network are unaware of 56 the end-to-end RSVP reservations and are only aware of the MPLS TE 57 tunnels. 59 Copyright Notice 60 Copyright (C) The Internet Society (2006). 62 Specification of Requirements 64 The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT", 65 "SHOULD", "SHOULD NOT", "RECOMMENDED", "MAY", and "OPTIONAL" in this 66 document are to be interpreted as described in [RFC2119]. 68 1. Introduction 70 The Integrated Services (Intserv) [INT-SERV] architecture provides a 71 means for the delivery of end-to-end Quality of Service (QoS) to 72 applications over heterogeneous networks. 74 [RSVP] defines the Resource reSerVation Protocol which can be used by 75 applications to request resources from the network. The network 76 responds by explicitely admitting or rejecting these RSVP requests. 77 Certain applications that have quantifiable resource requirements 78 express these requirements using Intserv parameters as defined in the 79 appropriate Intserv service specifications ([GUARANTEED], 80 [CONTROLLED]). 82 The Differentiated Services (DiffServ) architecture ([DIFFSERV]) was 83 then developed to support differentiated treatment of packets in very 84 large scale environments. In contrast to the per-flow orientation of 85 Intserv and RSVP, Diffserv networks classify packets into one of a 86 small number of aggregated flows or "classes", based on the Diffserv 87 codepoint (DSCP) in the packet IP header. At each Diffserv router, 88 packets are subjected to a "per-hop behavior" (PHB), which is invoked 89 by the DSCP. The primary benefit of Diffserv is its scalability. 90 Diffserv eliminates the need for per-flow state and per-flow 91 processing and therefore scales well to large networks. 93 However, DiffServ does not include any mechanism for communication 94 between applications and the network. Thus, as detailed in [INT-DIFF], 95 significant benefits can be achieved by using Intserv over Diffserv 96 including resource based admission control, policy based admission 98 RSVP Aggregation over MPLS TE tunnels February 2006 100 control, assistance in traffic identification /classification and 101 traffic conditioning. As discussed in [INT-DIFF], Intserv can operate 102 over Diffserv in multiple ways. For example, the Diffserv region may 103 be statically provisioned or may be RSVP aware. When it is RSVP aware, 104 several mechanisms may be used to support dynamic provisioning and 105 topology aware admission control including aggregate RSVP 106 reservations, per flow RSVP or a bandwidth broker. The advantage of 107 using aggregate RSVP reservations is that it offers dynamic, 108 topology-aware admission control over the Diffserv region without 109 per-flow reservations and the associated level of RSVP signaling in 110 the Diffserv core. In turn, this allows dynamic, topology aware 111 admission control of flows requiring QoS reservations over the 112 Diffserv core even when the total number of such flows carried over 113 the Diffserv core is extremely large. 115 [RSVP-AGG] describes in detail how to perform such aggregation of end 116 to end RSVP reservations over aggregate RSVP reservations in a 117 Diffserv cloud. It establishes an architecture where multiple end-to- 118 end RSVP reservations sharing the same ingress router (Aggregator) 119 and the same egress router (Deaggregator) at the edges of an 120 "aggregation region", can be mapped onto a single aggregate 121 reservation within the aggregation region. This considerably reduces 122 the amount of reservation state that needs to be maintained by 123 routers within the aggregation region. Furthermore, traffic belonging 124 to aggregate reservations is classified in the data path purely using 125 Diffserv marking. 127 [MPLS-TE] describes how MPLS Traffic Engineering (TE) Tunnels can be 128 used to carry arbitrary aggregates of traffic for the purposes of 129 traffic engineering. [RSVP-TE] specifies how such MPLS TE Tunnels can 130 be established using RSVP-TE signaling. . MPLS TE uses Constraint 131 Based Routing to compute the path for a TE tunnel. Then, Admission 132 Control is performed during the establishment of TE Tunnels to ensure 133 they are granted their requested resources. 135 [DSTE-REQ] presents the Service Providers requirements for support of 136 Diff-Serv-aware MPLS Traffic Engineering (DS-TE). With DS-TE, 137 separate DS-TE tunnels can be used to carry different Diffserv 138 classes of traffic and different resource constraints can be enforced 139 for these different classes. [DSTE-PROTO] specifies RSVP-TE signaling 140 extensions as well as OSPF and ISIS extensions for support of DS-TE. 142 In the rest of this document we will refer to both TE tunnels and DS- 143 TE tunnels simply as "TE tunnels". 145 TE tunnels have much in common with the aggregate RSVP reservations 146 used in [RSVP-AGG]: 147 - a TE tunnel is subject to Admission Control and thus is 148 effectively an aggregate bandwidth reservation 150 RSVP Aggregation over MPLS TE tunnels February 2006 152 - In the data plane, packet scheduling relies exclusively on 153 Diff-Serv classification and PHBs 154 - Both TE tunnels and aggregate RSVP reservations are controlled 155 by "intelligent" devices on the edge of the "aggregation core" 156 (Head-end and Tail-end in the case of TE tunnels, Aggregator 157 and Deaggregator in the case of aggregate RSVP reservations 158 - Both TE tunnels and aggregate RSVP reservations are signaled 159 using the RSVP protocol (with some extensions defined in [RSVP- 160 TE] and [DSTE-PROTO] respectively for TE tunnels and DS-TE 161 tunnels). 163 This document provides a detailed specification for performing 164 aggregation of end-to-end RSVP reservations over MPLS TE tunnels 165 (which act as aggregate reservations in the core). This document 166 builds on the RSVP Aggregation procedures defined in [RSVP-AGG], and 167 only changes those where necessary to operate over TE tunnels. With 168 [RSVP-AGG], a lot of responsibilities (such as mapping end-to-end 169 reservations to Aggregate reservations and resizing the Aggregate 170 reservations) are assigned to the Deaggregator (which is the 171 equivalent of the Tunnel Tail-end) while with TE, the tunnels are 172 controlled by the Tunnel Head-end. Hence, the main change over the 173 RSVP Aggregations procedures defined in [RSVP-AGG] is to modify these 174 procedures to reassign responsibilities from the Deaggregator to the 175 Aggregator (i.e. the tunnel Head-end). 177 [LSP-HIER] defines how to aggregate MPLS TE Label Switched Paths 178 (LSPs) by creating a hierarchy of such LSPs. This involves nesting of 179 end-to-end LSPs into an aggregate LSP in the core (by using the label 180 stack construct). Since end-to-end TE LSPs are themselves signaled 181 with RSVP-TE and reserve resources at every hop, this can be looked 182 at as a form of aggregation of RSVP(-TE) reservations over MPLS TE 183 Tunnels. This document capitalizes on the similarities between 184 nesting of TE LSPs over TE tunnels and RSVP aggregation over TE 185 tunnels and reuses the procedures of [LSP-HIER] wherever possible. 187 This document also builds on the "RSVP over Tunnels" concepts of RFC 188 2746 [RSVP-TUN]. It differs from that specification in the following 189 ways 190 - Whereas RFC 2746 describes operation with IP tunnels, this 191 draft describes operation over MPLS tunnels. One consequence of 192 this difference is the need to deal with penultimate hop 193 popping (PHP). 194 - MPLS-TE tunnels inherently reserve resources, whereas the 195 tunnels in RFC 2746 do not have resource reservations by 196 default. This leads to some simplifications in the current 197 draft. 198 - There is exactly one reservation per MPLS-TE tunnel, whereas 199 RFC 2746 permits many reservations per tunnel. 201 RSVP Aggregation over MPLS TE tunnels February 2006 203 - We have assumed in the current draft that a given MPLS-TE 204 tunnel will carry reserved traffic and nothing but reserved 205 traffic, which negates the requirement of RFC 2746 to 206 distinguish reserved and non-reserved traffic traversing the 207 same tunnel by using distinct encapsulations. 208 - There may be several MPLS-TE tunnels that share common head and 209 tail end routers, with head-end policy determining which tunnel 210 is appropriate for a particular flow. This scenario does not 211 appear to be addressed in RFC 2746. 213 At the same time, this draft does have many similarities with RFC 214 2746. MPLS-TE tunnels are "type 2 tunnels" in the nomenclature of RFC 215 2746: 216 " 217 The (logical) link may be able to promise that some overall 218 level of resources is available to carry traffic, but not to 219 allocate resources specifically to individual data flows. 220 " 222 Aggregation of end-to-end RSVP reservations over TE tunnels combines 223 the benefits of [RSVP-AGG] with the benefits of MPLS including the 224 following: 225 - applications can benefit from dynamic, topology-aware resource- 226 based admission control over any segment of the end to end path 227 including the core 228 - as per regular RSVP behavior, RSVP does not impose any burden 229 on routers where such admission control is not needed (for 230 example if the links upstream and downstream of the MPLS TE 231 core are vastly over-engineered compared to the core capacity, 232 admission control is not required on these over-engineered 233 links and RSVP need not be processed on the corresponding 234 router hops) 235 - the core scalability is not affected (relative to the 236 traditional MPLS TE deployment model) since the core remains 237 unaware of end-to-end RSVP reservations and only has to 238 maintain aggregate TE tunnels and since the datapath 239 classification and scheduling in the core relies purely on 240 Diffserv mechanism (or more precisely MPLS Diffserv mechanisms 241 as specified in [DIFF-MPLS]) 242 - the aggregate reservation (and thus the traffic from the 243 corresponding end to end reservations) can be network 244 engineered via the use of Constraint based routing (e.g. 245 affinity, optimization on different metrics) and when needed 246 can take advantage of resources on other paths than the 247 shortest path 248 - the aggregate reservations (and thus the traffic from the 249 corresponding end to end reservations) can be protected against 250 failure through the use of MPLS Fast Reroute 252 RSVP Aggregation over MPLS TE tunnels February 2006 254 This document, like [RSVP-AGG], covers aggregation of unicast 255 sessions. Aggregation of multicast sessions is for further study. 257 1.1. Changes from previous versions 259 The changes from version draft-ietf-tsvwg-rsvp-dste-00 to version 260 draft-ietf-tsvwg-rsvp-dste-01 of this draft address comments from the 261 "RSVP Review team" and from the Working Group Last Call. The 262 significant changes are: 263 - added text in multiple sub-sections of section 3 to describe 264 operations when the Aggregator and Deaggregator also behave as 265 IPsec security gateways. 266 - added text in section 3 to further clarify relationship with 267 [LSP-HIER] 268 - added text in section 8 to refer to some security 269 considerations of [LSP-HIER] which are applicable to this 270 document 271 - edits in section 3.2 about forwarding of E2E path 272 - edits in section 3.4 about processing of E2E Path 273 - edits in section 3.6 to describe operations in case of TE 274 tunnel mapping change 275 - added section 3.7 to clarify forwarding of E2E traffic by 276 Aggregator 277 - cleaned up usage of MUST/SHOULD/MAY 278 - clarifications and editorials. 280 The significant changes from version draft-lefaucheur-rsvp-dste-02 281 to version draft-ietf-tsvwg-rsvp-dste-00 of this draft were: 282 - added a SHOULD for use of Make-Before-Break when resizing TE 283 tunnel 284 - added clarification text about E2E Resv hiding from Transit 285 LSRs 286 - added reference to [RSVP-GEN-AGG] in section 5. 287 - added definition of E2E reservation in section 2. 288 - removed the case where E2E reservation is a TE tunnel (already 289 covered in [LSP-HIER]) 291 The significant changes from version draft-lefaucheur-rsvp-dste-01 to 292 version draft-lefaucheur-rsvp-dste-02 of this draft were: 293 - Alignment with RSVP operations of draft-ietf-mpls-lsp-hierarchy 294 - Addition of an appendix providing an example usage scenario for 295 information purposes 297 The significant changes from version draft-lefaucheur-rsvp-dste-00 to 298 version draft-lefaucheur-rsvp-dste-01 of this draft were: 299 - added discussion of the relationship to RFC 2746 [RSVP-TUN] 300 - added discussion of mapping policy at aggregator 301 - added discussion of "RSVP proxy" behavior in conjunction with 302 the aggregation scheme described here 304 RSVP Aggregation over MPLS TE tunnels February 2006 306 - added discussion on TTL processing on Deaggregator 308 2. Definitions 310 For readability, a number of definitions from [RSVP-AGG] as well as 311 definitions for commonly used MPLS TE terms are provided here: 313 Aggregator This is the process in (or associated with) the router 314 at the ingress edge of the aggregation region (with 315 respect to the end to end RSVP reservation) and 316 behaving in accordance with [RSVP-AGG]. In this 317 document, it is also the TE Tunnel Head-end. 319 Deaggregator This is the process in (or associated with) the router 320 at the egress edge of the aggregation region (with 321 respect to the end to end RSVP reservation) and 322 behaving in accordance with [RSVP-AGG]. In this 323 document, it is also the TE Tunnel Tail-end 325 E2E End to end 327 E2E reservation This is an RSVP reservation such that: 328 (i) corresponding Path messages are initiated 329 upstream of the Aggregator and terminated 330 downstream of the Deaggregator, and 331 (ii) corresponding Resv messages are initiated 332 downstream of the Deaggregator and 333 terminated upstream of the Aggregator, and 334 (iii) this RSVP reservation is to be aggregated 335 over an MPLS TE tunnel between the 336 Aggregator and Deaggregator. 337 An E2E RSVP reservation may be a per-flow 338 reservation. Alternatively, the E2E reservation 339 may itself be an aggregate reservation of various 340 types (e.g. Aggregate IP reservation, Aggregate 341 IPsec reservation). See section 4 and 5 for more 342 details on the types of E2E RSVP reservations. As 343 per regular RSVP operations, E2E RSVP reservations 344 are unidirectional. 346 Head-end 347 This is the Label Switch Router responsible for 348 establishing, maintaining and tearing down a given TE 349 tunnel. 351 Tail-end 352 This is the Label Switch Router responsible for 353 terminating a given TE tunnel 355 RSVP Aggregation over MPLS TE tunnels February 2006 357 Transit LSR This is a Label Switch router that is on the path of a 358 given TE tunnel and is neither the Head-end nor the 359 Tail-end 361 3. Operations of RSVP Aggregation over TE with pre-established Tunnels 363 [RSVP-AGG] supports operations both in the case where aggregate RSVP 364 reservations are pre-established and in the case where Aggregators 365 and Deaggregators have to dynamically discover each other and 366 dynamically establish the necessary aggregate RSVP reservations. 368 Similarly, RSVP Aggregation over TE tunnels could operate both in the 369 case where the TE tunnels are pre-established and in the case where 370 the tunnels need to be dynamically established. 372 In this document we provide a detailed description of the procedures 373 in the case where TE tunnels are already established. These 374 procedures are based on those defined in [LSP-HIER]. The routing 375 aspects discussed in section 3 of [LSP-HIER] are not relevant here 376 because those aim at allowing the constraint based routing of end-to- 377 end TE LSPs to take into account the (aggregate) TE tunnels. In the 378 present document, the end-to-end RSVP reservations to be aggregated 379 over the TE tunnels rely on regular SPF routing. However, as already 380 mentioned in [LSP-HIER], we note that a TE Tunnel may be advertised 381 into ISIS or OSPF, to be used in normal SPF by nodes upstream of the 382 Aggregator. This would affect SPF routing and thus routing of end-to- 383 end RSVP reservations. The control of aggregation boundaries 384 discussed in section 6 of [LSP-HIER] is also not relevant here. This 385 uses information exchanged in GMPLS protocols to dynamically discover 386 the aggregation boundary. In this document, TE tunnels are pre- 387 established, so that the aggregation boundary can be easily inferred. 388 The signaling aspects discussed in section 6.2 of [LSP-HIER] apply to 389 the establishment/termination of the aggregate TE tunnels when this 390 is triggered by GMPLS mechanisms (e.g. as a result of an end-to-end 391 TE LSP establishment request received at the aggregation boundary) . 392 As this document assumes pre-established tunnels, those aspects are 393 not relevant here. The signaling aspects discussed in section 6.1 of 394 [LSP-HIER] relate to the establishment/maintenance of the end-to-end 395 TE LSPs over the aggregate TE tunnel. This document describes how to 396 use the same procedures as those specified in section 6.1 of [LSP- 397 HIER], but for the establishment of end-to-end RSVP reservations 398 (instead of end-to-end TE LSPs) over the TE tunnels. This is covered 399 further in section 3 of the present document. 401 Pre-establishment of the TE tunnels may be triggered by any 402 mechanisms including for example manual configuration or automatic 403 establishment of a TE tunnel mesh through dynamic discovery of TE 404 Mesh membership as allowed in [AUTOMESH]. 406 RSVP Aggregation over MPLS TE tunnels February 2006 408 Procedures in the case of dynamically established TE tunnels are for 409 further studies. 411 3.1. Reference Model 413 I----I I----I 414 H--I R I\ I-----I I------I /I R I--H 415 H--I I\\I I I---I I I//I I--H 416 I----I \I He/ I I T I I Te/ I/ I----I 417 I Agg I=======================I Deag I 418 /I I I I I I\ 419 H--------//I I I---I I I\\--------H 420 H--------/ I-----I I------I \--------H 422 H = Host requesting end-to-end RSVP reservations 423 R = RSVP router 424 He/Agg = TE tunnel Head-end/Aggregator 425 Te/Deag = TE tunnel Tail-end/Deaggregator 426 T = Transit LSR 428 -- = E2E RSVP reservation 429 == = TE Tunnel 431 3.2. Receipt of E2E Path message By the Aggregator 433 The first event is the arrival of the E2E Path message at the 434 Aggregator. The Aggregator MUST follow traditional RSVP procedures 435 for processing of this E2E path message augmented with the extensions 436 documented in this section. 438 The Aggregator MUST first attempt to map the E2E reservation onto a 439 TE tunnel. This decision is made in accordance with routing 440 information as well as any local policy information that may be 441 available at the Aggregator. Examples of such policies appear in the 442 following paragraphs. Just for illustration purposes, among many 443 other criteria, such mapping policies might take into account the 444 Intserv service type, the Application Identity [RSVP-APPID] and/or 445 the signaled preemption [RSVP-PREEMP] of the E2E reservation (for 446 example, the aggregator may take into account the E2E reservations 447 RSVP preemption priority and the MPLS TE Tunnel set-up and/or hold 448 priorities when mapping the E2E reservation onto an MPLS TE tunnel). 450 There are situations where the Aggregator is able to make a final 451 mapping decision. That would be the case, for example, if there is a 452 single TE tunnel towards the destination and if the policy is to map 453 any E2E RSVP reservation onto TE Tunnels. 455 RSVP Aggregation over MPLS TE tunnels February 2006 457 There are situations where the Aggregator is not able to make a final 458 determination. That would be the case, for example, if routing 459 identifies two DS-TE tunnels towards the destination, one belonging 460 to DS-TE Class-Type 1 and one to Class-Type 0, if the policy is to 461 map Intserv Guaranteed Services reservations to a Class-Type 1 tunnel 462 and Intserv Controlled Load reservations to a Class-Type 0 tunnel, 463 and if the E2E RSVP Path message advertises both Guaranteed Service 464 and Controlled Load. 466 Whether final or tentative, the Aggregator makes a mapping decision 467 and selects a TE tunnel. Before forwarding the E2E Path message 468 towards the receiver, the Aggregator SHOULD update the ADSPEC inside 469 the E2E Path message to reflect the impact of the MPLS TE cloud onto 470 the QoS achievable by the E2E flow. This update is a local matter and 471 may be based on configured information, on information available in 472 the MPLS TE topology database, on the current TE tunnel path, on 473 information collected via RSVP-TE signaling, or combinations of those. 475 The Aggregator MUST then forward the E2E Path message to the 476 Deaggregator (which is the tail-end of the selected TE tunnel). In 477 accordance with [LSP-HIER], the Aggregator MUST send the E2E Path 478 message with an IF_ID RSVP_HOP object instead of an RSVP_HOP object. 479 The data interface identification MUST identify the TE Tunnel. 481 The preferred method for the Aggregator to send the E2E Path message 482 is to address it directly to the Deaggregator by setting the 483 destination address in the IP Header of the E2E Path message to the 484 Deaggregator address. The Router Alert is not set in the E2E Path 485 message. 487 An alternate method for the Aggregator to send the E2E Path is to 488 encapsulate the E2E Path message in an IP tunnel or in the TE tunnel 489 itself and unicast the E2E Path message to the Deaggregator, without 490 the Router Alert option. 492 With both methods, the Router Alert is not set. Thus, the E2E Path 493 message will not be visible to routers along the path from the 494 Aggregator to the Deaggregator. Therefore, in contrast to the 495 procedures of [RSVP-AGG], the IP Protocol number need not be modified 496 to "RSVP-E2E-IGNORE"; it MUST be left as is (indicating "RSVP") by 497 the Aggregator. 499 In some environments, the Aggregator and Deaggregator MAY also act as 500 IPsec Security Gateways in order to provide IPsec protection to E2E 501 traffic when it transits between the Aggregator and the Deaggregator. 502 In that case, to transmit the E2E Path message to the Deaggregator, 503 the Aggregator MUST send the E2E Path message into the relevant IPsec 504 tunnel terminating on the Deaggregator. 506 RSVP Aggregation over MPLS TE tunnels February 2006 508 3.3. Handling of E2E Path message By Transit LSRs 510 Since the E2E Path message is addressed directly to the Deaggregator 511 and does not have Router Alert set, it is hidden from all transit 512 LSRs. 514 3.4. Receipt of E2E Path Message by Deaggregator 516 On receipt of the E2E Path message addressed to it, the Deaggregator 517 will notice that the IP Protocol number is set to "RSVP" and will 518 thus perform RSVP processing of the E2E Path message. 520 As with [LSP-HIER], the IP TTL vs. RSVP TTL check MUST not be made. 521 The Deaggregator is informed that this check is not to be made 522 because of the presence of the IF_ID RSVP HOP object. 524 The Deaggregator MAY support the option to perform the following 525 checks (defined in [LSP-HIER]) by the receiver Y of the IF_ID 526 RSVP_HOP object: 528 1. Make sure that the data interface identified in the IF_ID 529 RSVP_HOP object actually terminates on Y. 530 2. Find the "other end" of the above data interface, say X. 531 Make sure that the PHOP in the IF_ID RSVP_HOP object is a 532 control channel address that belongs to the same node as X. 534 The information necessary to perform these checks may not always be 535 available to the Deaggregator. Hence, the Deaggregator MUST support 536 operations in such environments where the checks cannot be made. 538 The Deaggregator MUST forward the E2E Path downstream towards the 539 receiver. In doing so, the Deaggregator sets the destination address 540 in the IP header of the E2E Path message to the IP address found in 541 the destination address field of the Session object. The Deaggregator 542 also sets the Router Alert. 544 An E2E PathErr sent by the Deaggregator in response to the E2E Path 545 message (which contains an IF_ID RSVP_HOP object) SHOULD contain an 546 IF_ID RSVP_HOP object. 548 3.5. Handling of E2E Resv Message by Deaggregator 550 As per regular RSVP operations, after receipt of the E2E Path, the 551 receiver generates an E2E Resv message which travels upstream hop-by- 552 hop towards the sender. 554 RSVP Aggregation over MPLS TE tunnels February 2006 556 On receipt of the E2E Resv, the Deaggregator MUST follow traditional 557 RSVP procedures on receipt of the E2E Resv message. This includes 558 performing admission control for the segment downstream of the 559 Deaggregator and forwarding the E2E Resv message to the PHOP signaled 560 earlier in the E2E Path message and which identifies the Aggregator. 561 Since the E2E Resv message is directly addressed to the Aggregator 562 and does not carry the Router Alert option (as per traditional RSVP 563 Resv procedures), the E2E Resv message is hidden from the routers 564 between the Deaggregator and the Aggregator which, therefore, handle 565 the E2E Resv message as a regular IP packet. 567 If the Aggregator and Deaggregator are also acting as IPsec Security 568 Gateways, the Deaggregator MUST send the E2E Resv message into the 569 relevant IPsec tunnel terminating on the Aggregator. 571 3.6. Handling of E2E Resv Message by the Aggregator 573 The Aggregator is responsible for ensuring that there is sufficient 574 bandwidth available and reserved over the appropriate TE tunnel to 575 the Deaggregator for the E2E reservation. 577 On receipt of the E2E Resv message, the Aggregator MUST first perform 578 the final mapping onto the final TE tunnel (if the previous mapping 579 was only a tentative one). 581 If the tunnel did not change during the final mapping, the Aggregator 582 continues processing of the E2E Resv as described in the four 583 following paragraphs. 585 The aggregator calculates the size of the resource request using 586 traditional RSVP procedures. That is, it follows the procedures in 587 [RFC2205] to determine the resource requirements from the Sender 588 Tspec and the Flowspec contained in the Resv. Then it compares the 589 resource request with the available resources of the selected TE 590 tunnel. 592 If sufficient bandwidth is available on the final TE tunnel, the 593 Aggregator MUST update its internal understanding of how much of the 594 TE Tunnel is in use and MUST forward the E2E Resv messages to the 595 corresponding PHOP. 597 As noted in [RSVP-AGG], a range of policies MAY be applied to the re- 598 sizing of the aggregate reservation (in this case, the TE tunnel.) 599 For example, the policy may be that the reserved bandwidth of the 600 tunnel can only be changed by configuration. More dynamic policies 601 are also possible, whereby the aggregator may attempt to increase the 602 reserved bandwidth of the tunnel in response to the amount of 604 RSVP Aggregation over MPLS TE tunnels February 2006 606 allocated bandwidth that has been used by E2E reservations. 607 Furthermore, to avoid the delay associated with the increase of the 608 Tunnel size, the Aggregator may attempt to anticipate the increases 609 in demand and adjust the TE tunnel size ahead of actual needs by E2E 610 reservations. In order to reduce disruptions, the aggregator SHOULD 611 use "make-before-break" procedures as described in [RSVP-TE] to alter 612 the TE tunnel bandwidth". 614 If sufficient bandwidth is not available on the final TE Tunnel, the 615 Aggregator MUST follow the normal RSVP procedure for a reservation 616 being placed with insufficient bandwidth to support this reservation. 617 That is, the reservation is not installed and a ResvError is sent 618 back towards the receiver. 620 If the tunnel did change during the final mapping, the Aggregator 621 MUST first resend to the Deaggregator an E2E Path message with the 622 IF_ID RSVP_HOP data interface identification identifying the final TE 623 Tunnel. If needed, the ADSPEC information in this E2E Path message 624 SHOULD be updated. Then the Aggregator MUST 625 - either drop the E2E Resv message 626 - or proceed with the processing of the E2E Resv in the same 627 manner as in the case where the tunnel did not change and 628 described above. 629 In the former case, admission control over the final TE tunnel (and 630 forwarding of E2E Resv message upstream towards the sender) would 631 only occur when the Aggregator receives the subsequent E2E Resv 632 message (that will be sent by the Deaggregator in response to the 633 resent E2E Path). In the latter case, admission control over the 634 final Tunnel is carried out by Aggregator right away and if 635 successful the E2E Resv message is generated upstream towards the 636 sender. 638 3.7. Forwarding of E2E traffic by Aggregator 640 When the Aggregator receives a data packet belonging to an E2E 641 reservations currently mapped over a given TE tunnel, the Aggregator 642 MUST encapsulate the packet into that TE tunnel. 644 If the Aggregator and Deaggregator are also acting as IPsec Security 645 Gateways, the Aggregator MUST also encapsulate the data packet into 646 the relevant IPsec tunnel terminating on the Deaggregator before 647 transmission into the MPLS TE tunnel. 649 3.8. Removal of E2E reservations 651 RSVP Aggregation over MPLS TE tunnels February 2006 653 E2E reservations are removed in the usual way via PathTear, ResvTear, 654 timeout, or as the result of an error condition. When a reservation 655 is removed, the Aggregator MUST update its local view of the 656 resources available on the corresponding TE tunnel accordingly. 658 3.9. Removal of TE Tunnel 660 Should a TE Tunnel go away (presumably due to a configuration change, 661 route change, or policy event), the aggregator behaves much like a 662 conventional RSVP router in the face of a link failure. That is, it 663 may try to forward the Path messages onto another tunnel, if routing 664 and policy permit, or it may send Path_Error messages to the sender 665 if no suitable tunnel exists. In case the Path messages are forwarded 666 onto another tunnel which terminates on a different Deaggregator, or 667 the reservation is torn-down via Path Error messages, the reservation 668 state established on the router acting as the Deaggregator before the 669 TE tunnel went away, will time out since it will no longer be 670 refreshed. 672 RSVP Aggregation over MPLS TE tunnels February 2006 674 3.10. Example Signaling Flow 676 Aggregator Deaggregator 678 (*) 679 RSVP-TE Path 680 =========================> 682 RSVP-TE Resv 683 <========================= 684 (**) 686 E2E Path 687 --------------> 688 (1) 689 E2E Path 690 -------------------------------> 691 (2) 692 E2E Path 693 -----------> 695 E2E Resv 696 <----------- 697 (3) 698 E2E Resv 699 <----------------------------- 700 (4) 701 E2E Resv 702 <------------- 704 (*) Aggregator is triggered to pre-establish the TE Tunnel(s) 706 (**) TE Tunnel(s) are pre-established 708 (1) Aggregator tentatively selects the TE tunnel and forwards 709 E2E path to Deaggregator 711 (2) Deaggregator forwards the E2E Path towards receiver 713 (3) Deaggregator forwards the E2E Resv to the Aggregator 715 (4) Aggregator selects final TE tunnel, checks that there is 716 sufficient bandwidth on TE tunnel and forwards E2E Resv to 718 RSVP Aggregation over MPLS TE tunnels February 2006 720 PHOP. If final tunnel is different from tunnel tentatively 721 selected, the Aggregator re-sends an E2E Path. 723 4. IPv4 and IPv6 Applicability 725 The procedures defined in this document are applicable to all the 726 following cases: 728 (1) Aggregation of E2E IPv4 RSVP reservations over IPv4 TE 729 Tunnels 730 (2) Aggregation of E2E IPv6 RSVP reservations over IPv6 TE 731 Tunnels 732 (3) Aggregation of E2E IPv6 RSVP reservations over IPv4 TE 733 tunnels, provided a mechanism such as [6PE] is used by the 734 Aggregator and Deaggregator for routing of IPv6 traffic over 735 an IPv4 MPLS core, 736 (4) Aggregation of E2E IPv4 RSVP reservations over IPv6 TE 737 tunnels, provided a mechanism is used by the Aggregator and 738 Deaggregator for routing IPv4 traffic over IPv6 MPLS. 740 5. E2E Reservations Applicability 742 The procedures defined in this document are applicable to many types 743 of E2E RSVP reservations including the following cases: 744 (1) the E2E RSVP reservation is a per-flow reservation where the 745 flow is characterized by the usual 5-tuple 746 (2) the E2E reservation is an aggregate reservation for multiple 747 flows as described in [RSVP-AGG] or [RSVP-GEN-AGG] where the 748 set of flows is characterized by the 750 (3) the E2E reservation is a reservation for an IPsec protected 751 flow. For example, where the flow is characterized by the 752 as described in 753 [RSVP-IPSEC] 754 IPsec 756 6. Example Deployment Scenarios 758 6.1. Voice and Video Reservations Scenario 760 An example application of the procedures specified in this document 761 is admission control of voice and video in environments with very 762 high numbers of hosts. In the example illustrated below, hosts 763 generate end-to-end per-flow reservations for each of their video 764 streams associated with a video-conference, each of their audio 765 streams associated with a video-conference and each of their voice 766 calls. These reservations are aggregated over MPLS DS-TE tunnels over 768 RSVP Aggregation over MPLS TE tunnels February 2006 770 the packet core. The mapping policy defined by the user maybe that 771 all the reservations for audio and voice streams are mapped onto DS- 772 TE tunnels of Class-Type 1 while reservations for video streams are 773 mapped onto DS-TE tunnels of Class-Type 0. 775 ------ ------ 776 I H I# ------- -------- #I H I 777 I I\#I I ----- I I#/I I 778 -----I \I Agg I I T I I Deag I/ ------ 779 I I==========================I I 780 ------ /I I::::::::::I I:::::::::::I I\ ------ 781 I H I/#I I ----- I I#\I H I 782 I I# ------- -------- #I I 783 ------ ------ 785 H = Host 786 Agg = Aggregator (TE Tunnel Head-end) 787 Deagg = Deaggregator (TE Tunnel Tail-end) 788 T = Transit LSR 790 / = E2E RSVP reservation for a Voice flow 791 # = E2E RSVP reservation for a Video flow 792 == = DS-TE Tunnel from Class-Type 1 793 :: = DS-TE Tunnel from Class-Type 0 795 6.2. PSTN/3G Voice Trunking Scenario 797 An example application of the procedures specified in this document 798 is voice call admission control in large scale telephony trunking 799 environments. A Trunk VoIP Gateway may generate one aggregate RSVP 800 reservation for all the calls in place towards another given remote 801 Trunk VoIP Gateway (with resizing of this aggregate reservation in a 802 step function depending on current number of calls). In turn, these 803 reservations may be aggregated over MPLS TE tunnels over the packet 804 core so that tunnel Head-ends act as Aggregators and perform 805 admission control of Trunk Gateway reservations into MPLS TE Tunnels. 806 The MPLS TE tunnels may be protected by MPLS Fast Reroute. 807 This scenario is illustrated below: 809 RSVP Aggregation over MPLS TE tunnels February 2006 811 ------ ------ 812 I GW I\ ------- -------- /I GW I 813 I I\\I I ----- I I//I I 814 -----I \I Agg I I T I I Deag I/ ------ 815 I I==========================I I 816 ------ /I I I I I I\ ------ 817 I GW I//I I ----- I I\\I GW I 818 I I/ ------- -------- \I I 819 ------ ------ 821 GW = VoIP Gateway 822 Agg = Aggregator (TE Tunnel Head-end) 823 Deagg = Deaggregator (TE Tunnel Tail-end) 824 T = Transit LSR 826 / = Aggregate Gateway to Gateway E2E RSVP reservation 827 == = TE Tunnel 829 7. Optional Use of RSVP Proxy on RSVP Aggregator 831 A number of approaches ([RSVP-PROXY], [L-RSVP]) have been, or are 832 being, discussed in the IETF in order to allow a network node to 833 behave as an RSVP proxy which: 834 - originates the Resv Message (in response to the Path message) on 835 behalf of the destination node 836 - originates the Path message (in response to some trigger) on 837 behalf of the source node. 839 We observe that such approaches may optionally be used in conjunction 840 with the aggregation of RSVP reservations over MPLS TE tunnels as 841 specified in this document. In particular, we consider the case where 842 the RSVP Aggregator/Deaggregator also behaves as the RSVP proxy. 844 As discussed in [RSVP-PROXY]: 846 "The proxy functionality does not imply merely generating a single 847 Resv message. Proxying the Resv involves installing state in the node 848 doing the proxy i.e. the proxying node should act as if it had 849 received a Resv from the true endpoint. This involves reserving 850 resources (if required), sending periodic refreshes of the Resv 851 message and tearing down the reservation if the Path is torn down." 853 Hence, when behaving as the RSVP Proxy, the RSVP Aggregator may 854 effectively perform resource reservation over the MPLS TE Tunnel (and 855 hence over the whole segment between the RSVP Aggregator and the RSVP 857 RSVP Aggregation over MPLS TE tunnels February 2006 859 Deaggregator) even if the RSVP signaling only takes place upstream of 860 the MPLS TE Tunnel (i.e. between the host and the RSVP aggregator). 862 Also, the RSVP Proxy can generate the Path message on behalf of the 863 remote source host in order to achieve reservation in the return 864 direction (i.e. from RSVP aggregator/Deaggregator to host). 866 The resulting Signaling Flow is illustrated below, covering 867 reservations for both directions: 869 I----I I--------------I I------I I--------------I I----I 870 I I I Aggregator/ I I MPLS I I Aggregator/ I I I 871 IHostI I Deaggregator/I I cloudI I Deaggregator/I IHostI 872 I I I RSVP Proxy I I I I RSVP Proxy I I I 873 I----I I--------------I I------I I--------------I I----I 875 ==========TE Tunnel==========> 876 <========= TE Tunnel========== 878 Path Path 879 ------------> (1)-\ /-(i) <---------- 880 Resv I I Resv 881 <------------ (2)-/ \-(ii) ------------> 882 Path Path 883 <------------ (3) (iii) ------------> 884 Resv Resv 885 ------------> <------------ 887 (1)(i) : Aggregator/Deaggregator/Proxy receives Path message, 888 selects the TE tunnel, performs admission control over the TE Tunnel. 889 (1) and (i) happens independently of each other. 891 (2)(ii) : Aggregator/Deaggregator/Proxy generates the Resv message 892 towards Host. (2) is triggered by (1) and (ii) is triggered by (i). 893 Before generating this Resv message, the Aggregator/Proxy performs 894 admission control of the corresponding reservation over the TE tunnel 895 that will eventually carry the corresponding traffic. 897 (3)(iii) : Aggregator/Deaggregator/Proxy generates the Path message 898 towards Host for reservation in return direction. The actual trigger 899 for this depends on the actual RSVP proxy solution. As an example, 900 (3) and (iii) may simply be triggered respectively by (1) and (i). 902 Note that the details of the signaling flow may vary slightly 903 depending on the actual approach used for RSVP Proxy. For example, if 904 the [L-RSVP] approach was used instead of [RSVP-PROXY], an additional 905 PathRequest message would be needed from host to 907 RSVP Aggregation over MPLS TE tunnels February 2006 909 Aggregator/Deaggregator/Proxy in order to trigger the generation of 910 the Path message for return direction. 912 But regardless of the details of the call flow and of the actual RSVP 913 Proxy approach, RSVP proxy may optionally be deployed in combination 914 with RSVP Aggregation over MPLS TE Tunnels, in such a way which 915 ensures (when used on both the Host-Aggregator and Deaggregator-Host 916 sides, and when both end systems support RSVP) that: 918 (i) admission control and resource reservation is performed on 919 every segment of the end-to-end path (i.e. between source 920 host and Aggregator, over the TE Tunnel between the 921 Aggregator and Deaggregator which itself has been subject 922 to admission control by MPLS TE, between Deaggregator and 923 destination host) 925 (ii) this is achieved in both direction 927 (iii) RSVP signaling is localized between hosts and 928 Aggregator/Deaggregator, which may result in significant 929 reduction in reservation establishment delays (and in turn 930 in post dial delay in the case where these reservations 931 are pre-conditions for voice call establishment), 932 particularly in the case where the MPLS TE tunnels span 933 long distances with high propagation delays. 935 8. Security Considerations 937 The security issues inherent to the use of RSVP, RSVP Aggregation and 938 MPLS TE apply. Those can be addressed as discussed in [RSVP], [RSVP- 939 AGG] and [RSVP-TE]. 941 Section 7 of [LSP-HIER] discusses security considerations stemming 942 from the fact that the implicit assumption of a binding between data 943 interface and the interface over which a control message is sent is 944 no longer valid. These security considerations are equally applicable 945 to the present document. 947 In addition, in the case where the Aggregators dynamically resize the 948 TE tunnels based on the current level of reservation, there are risks 949 that the TE tunnels used for RSVP aggregation hog resources in the 950 core which could prevent other TE Tunnels from being established. 951 There are also potential risks that such resizing results in 952 significant computation and signaling as well as churn on tunnel 953 paths. Such risks can be mitigated by configuration options allowing 954 control of TE tunnel dynamic resizing (maximum Te tunnel size, 955 maximum resizing frequency,...) and/or possibly by the use of TE 956 preemption. 958 RSVP Aggregation over MPLS TE tunnels February 2006 960 If the Aggregator and Deaggregator are also acting as IPsec Security 961 Gateways, the Security Considerations of [SEC-ARCH] apply. 963 9. IANA Considerations 965 This document has no actions for IANA. 967 10. Acknowledgments 969 This document builds on the [RSVP-AGG], [RSVP-TUN] and [LSP-HIER] 970 specifications. Also, we would like to thank Tom Phelan, John Drake, 971 Arthi Ayyangar, Fred Baker, Subha Dhesikan, Kwok-Ho Chan, Carol 972 Iturralde and James Gibson for their input into this document. 974 11. Normative References 976 [RFC2119] S. Bradner, Key words for use in RFCs to Indicate 977 Requirement Levels, RFC2119, March 1997. 979 [RFC3668] S. Bradner, Intellectual Property Rights in IETF Technology, 980 RFC 3668, February 2004. 982 [BCP-78], S. Bradner, IETF Rights in Contributions, RFC3978, March 983 2005. 985 [RSVP] Braden et al., Resource ReSerVation Protocol (RSVP) -- Version 986 1 Functional Specification, RFC 2205, September 1997. 988 [INT-SERV] Braden, R., Clark, D. and S. Shenker, Integrated Services 989 in the Internet Architecture: an Overview, RFC 1633, June 1994. 991 [GUARANTEED] Shenker et al., Specification of Guaranteed Quality of 992 Service, RFC2212 994 [CONTROLLED] Wroclawski, Specification of the Controlled-Load Network 995 Element Service, RFC2211 997 [DIFFSERV] Blake et al., An Architecture for Differentiated Services, 998 RFC 2475 1000 [INT-DIFF] A Framework for Integrated Services Operation over 1001 Diffserv Networks, RFC 2998, November 2000. 1003 [RSVP-AGG] Baker et al, Aggregation of RSVP for IPv4 and IPv6 1004 Reservations, RFC 3175, September 2001. 1006 RSVP Aggregation over MPLS TE tunnels February 2006 1008 [MPLS-TE] Awduche et al., "Requirements for Traffic Engineering over 1009 MPLS", RFC 2702, September 1999. 1011 [RSVP-TE] Awduche et al, RSVP-TE: Extensions to RSVP for LSP Tunnels, 1012 RFC 3209, December 2001. 1014 [DSTE-PROTO] Le Faucheur et al, Protocol extensions for support of 1015 Diff-Serv-aware MPLS Traffic Engineering, RFC 4124, June 2005. 1017 [LSP-HIER] Kompella et al, Label Switched Paths (LSP) Hierarchy with 1018 Generalized Multi-Protocol Label Switching (GMPLS) Traffic 1019 Engineering (TE), RFC 4206 1020 , October 2005 1022 [SEC-ARCH] Kent and Seo, Security Architecture for the Internet 1023 Protocol, RFC 4301, December 2005 1025 12. Informative References 1027 [DIFF-MPLS] Le Faucheur et al, MPLS Support of Diff-Serv, RFC3270, 1028 May 2002. 1030 [DSTE-REQ] Le Faucheur et al, Requirements for support of Diff-Serv- 1031 aware MPLS Traffic Engineering, RFC3564, July 2003. 1033 [6PE] De Clercq et al, Connecting IPv6 Islands over IPv4 MPLS using 1034 IPv6 Provider Edge Routers (6PE), work in progress 1036 [RSVP-IPSEC] Berger et al, RSVP Extensions for IPSEC Data Flows, RFC 1037 2207 1039 [RSVP-GEN-AGG] Le Faucheur et al, Generic Aggregate RSVP Reservations, 1040 draft-lefaucheur-rsvp-ipsec, work in progress 1042 [RSVP-TUN] Terzis et al., RSVP Operation Over IP Tunnels, RFC 2746, 1043 January 2000 1045 [RSVP-PREEMP] Herzog, Signaled Preemption Priority Policy Element, 1046 RFC 3181 1048 [L-RSVP] Manner et al., Localized RSVP, draft-manner-lrsvp-04.txt, 1049 work in progress. 1051 [RSVP-PROXY] Gai et al., RSVP Proxy, draft-ietf-rsvp-proxy-03.txt 1052 (expired), work in progress. 1054 RSVP Aggregation over MPLS TE tunnels February 2006 1056 [RSVP-APPID] Bernet et al., Identity Representation for RSVP, RFC 1057 3182. 1059 [AUTOMESH] Vasseur and Leroux, Routing extensions for discovery of 1060 Multiprotocol (MPLS) Label Switch Router (LSR) Traffic Engineering 1061 (TE) mesh membership, draft-vasseur-ccamp-automesh-00.txt, work in 1062 progress. 1064 [SIP-RSVP] Camarillo, Integration of Resource Management and Session 1065 Initiation Protocol (SIP), RFC 3312 1067 13. Authors Address: 1069 Francois Le Faucheur 1070 Cisco Systems, Inc. 1071 Village d'Entreprise Green Side - Batiment T3 1072 400, Avenue de Roumanille 1073 06410 Biot Sophia-Antipolis 1074 France 1075 Email: flefauch@cisco.com 1077 Michael DiBiasio 1078 Cisco Systems, Inc. 1079 300 Beaver Brook Road 1080 Boxborough, MA 01719 1081 USA 1082 Email: dibiasio@cisco.com 1084 Bruce Davie 1085 Cisco Systems, Inc. 1086 300 Beaver Brook Road 1087 Boxborough, MA 01719 1088 USA 1089 Email: bdavie@cisco.com 1091 Christou Christou 1092 Booz Allen Hamilton 1093 8283 Greensboro Drive 1094 McLean, VA 22102 1095 USA 1096 Email: christou_chris@bah.com 1098 Michael Davenport 1099 Booz Allen Hamilton 1101 RSVP Aggregation over MPLS TE tunnels February 2006 1103 8283 Greensboro Drive 1104 McLean, VA 22102 1105 USA 1106 Email: davenport_michael@bah.com 1108 Jerry Ash 1109 AT&T 1110 200 Laurel Avenue 1111 Middletown, NJ 07748, USA 1112 USA 1113 Email: gash@att.com 1115 Bur Goode 1116 AT&T 1117 32 Old Orchard Drive 1118 Weston, CT 06883 1119 USA 1120 Email: bgoode@att.com 1122 14. IPR Statements 1124 The IETF takes no position regarding the validity or scope of any 1125 Intellectual Property Rights or other rights that might be claimed to 1126 pertain to the implementation or use of the technology described in 1127 this document or the extent to which any license under such rights 1128 might or might not be available; nor does it represent that it has 1129 made any independent effort to identify any such rights. Information 1130 on the procedures with respect to rights in RFC documents can be 1131 found in BCP 78 and BCP 79. 1133 Copies of IPR disclosures made to the IETF Secretariat and any 1134 assurances of licenses to be made available, or the result of an 1135 attempt made to obtain a general license or permission for the use of 1136 such proprietary rights by implementers or users of this 1137 specification can be obtained from the IETF on-line IPR repository at 1138 http://www.ietf.org/ipr. 1140 The IETF invites any interested party to bring to its attention any 1141 copyrights, patents or patent applications, or other proprietary 1142 rights that may cover technology that may be required to implement 1143 this standard. 1144 Please address the information to the IETF at ietf-ipr@ietf.org. 1146 RSVP Aggregation over MPLS TE tunnels February 2006 1148 15. Disclaimer of Validity 1150 This document and the information contained herein are provided on an 1151 "AS IS" basis and THE CONTRIBUTOR, THE ORGANIZATION HE/SHE REPRESENTS 1152 OR IS SPONSORED BY (IF ANY), THE INTERNET SOCIETY AND THE INTERNET 1153 ENGINEERING TASK FORCE DISCLAIM ALL WARRANTIES, EXPRESS OR IMPLIED, 1154 INCLUDING BUT NOT LIMITED TO ANY WARRANTY THAT THE USE OF THE 1155 INFORMATION HEREIN WILL NOT INFRINGE ANY RIGHTS OR ANY IMPLIED 1156 WARRANTIES OF MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. 1158 16. Copyright Notice 1160 Copyright (C) The Internet Society (2005). This document is subject 1161 to the rights, licenses and restrictions contained in BCP 78, and 1162 except as set forth therein, the authors retain all their rights. 1164 Appendix A - Example Usage of RSVP Aggregation over DSTE Tunnels for 1165 VoIP Call Admission Control (CAC) 1167 This Appendix presents an example scenario where the mechanisms 1168 described in this document are used, in combination with other 1169 mechanisms specified by the IETF, to achieve Call Admission Control 1170 (CAC) of Voice over IP (VoIP) traffic over the packet core. 1172 The information is that Appendix is purely informational and 1173 illustrative. 1175 Consider the scenario depicted in Figure A1. VoIP Gateways GW1 and 1176 GW2 are both signaling and media gateways. They are connected to an 1177 MPLS network via edge routers PE1 and PE2, respectively. In each 1178 direction, a DSTE tunnel passes from the head-end edge router, 1179 through core network P routers, to the tail-end edge router. GW1 and 1180 GW2 are RSVP-enabled. The RSVP reservations established by GW1 and 1181 GW2 are aggregated by PE1 and PE2 over the DS-TE tunnels. For 1182 reservations going from GW1 to GW2, PE1 serves as the 1183 aggregator/head-end and PE2 serves as the de-aggregator/tail-end. For 1184 reservations going from GW2 to GW2, PE2 serves as the 1185 aggregator/head-end and PE1 serves as the de-aggregator/tail-end. 1187 To determine whether there is sufficient bandwidth in the MPLS core 1188 to complete a connection, the originating and destination GWs each 1189 send for each connection a Resource Reservation Protocol (RSVP) 1190 bandwidth request to the network PE router to which it is connected. 1191 The bandwidth request takes into account VoIP header compression, 1192 where applicable. As part of its Aggregator role, the PE router 1193 effectively performs admission control of the bandwidth request 1195 RSVP Aggregation over MPLS TE tunnels February 2006 1197 generated by the GW onto the resources of the corresponding DS-TE 1198 tunnel. 1200 In this example, in addition to behaving as Aggregator/Deaggregator, 1201 PE1 and PE2 behave as RSVP proxy. So when a PE receives a Path 1202 message from a GW, it does not propagate the Path message any further. 1203 Rather, the PE performs admission control of the bandwidth signaled 1204 in the Path message over the DSTE tunnel towards the destination. 1205 Assuming there is enough bandwidth available on that tunnel, the PE 1206 adjusts its book-keeping of remaining available bandwidth on the 1207 tunnel and generates a Resv message back towards the GW to confirm 1208 resources have been reserved over the DSTE tunnel. 1210 ,-. ,-. 1211 _.---' `---' `-+ 1212 ,-'' +------------+ : 1213 ( | | `. 1214 \ ,' CCA `. : 1215 \ ,' | | `. ; 1216 ;' +------------+ `._ 1217 ,'+ ; `. 1218 ,' -+ Application Layer' `. 1219 SIP,' `---+ | ; `.SIP 1220 ,' `------+---' `. 1221 ,' `. 1222 ,' `. 1223 ,' ,-. ,-. `. 1224 ,' ,--+ `--+--'- --'\ `._ 1225 +-`--+_____+------+ { +----+ +----+ `. +------+_____+----+ 1226 |GW1 | RSVP| |______| P |___| P |______| | RSVP|GW2 | 1227 | |-----| PE1 | { +----+ +----+ /+| PE2 |-----| | 1228 | | | |==========================>| | | | 1229 +-:--+ RTP | |<==========================| | RTP +-:--+ 1230 _|..__ +------+ { DSTE Tunnels ; +------+ __----|--. 1231 _,' \-| ./ -'._ / | 1232 | Access \ / +----+ \, |_ Access | 1233 | Network | \_ | P | | / Network | 1234 | / `| +----+ / | ' 1235 `--. ,.__,| | IP/MPLS Network / '---'- ----' 1236 '`' '' ' .._,,'`.__ _/ '---' | 1237 | '`''' | 1238 C1 C2 1240 Figure A1. Integration of SIP Resource Management, DSTE 1241 and RSVP Aggregation 1243 [SIP-RSVP] discusses how network quality of service can be made a 1244 precondition for establishment of sessions initiated by the Session 1246 RSVP Aggregation over MPLS TE tunnels February 2006 1248 Initiation Protocol (SIP). These preconditions require that the 1249 participant reserve network resources before continuing with the 1250 session. The reservation of network resources are performed through a 1251 signaling protocol such as RSVP. 1253 Our example environment relies of [SIP-RSVP] to synchronize RSVP 1254 bandwidth reservations with SIP. For example, the RSVP bandwidth 1255 requests may be integrated into the call setup flow as follows (See 1256 call setup flow diagram in Figure A2): 1258 - Caller C1 initiates a call by sending a SIP INVITE to VoIP 1259 gateway GW1, which passes the INVITE along to the call control 1260 agent (CCA). The INVITE message may contain a list of codecs 1261 that the calling phone can support. 1263 - VoIP gateway GW2, chooses a compatible codec from the list and 1264 responds with a SIP message 183 Session Progress. 1266 - When GW1 receives the SIP response message and learns the codec 1267 to be used, it knows how much bandwidth is required for the 1268 call. 1270 - GW1 sends an RSVP Path message to PE1, requesting bandwidth for 1271 the call. 1273 - GW2 also sends an RSVP Path message to PE2. 1275 - Assuming that the tunnel (from left to right) has sufficient 1276 bandwidth, PE1 responds to GW1 with a Resv message 1278 - Again assuming the tunnel (from right to left) has sufficient 1279 bandwidth, PE2 responds to GW2 with a Resv message 1281 - GW2 sends a SIP 200 OK message to GW1. 1283 - GW1 sends a SIP UPDATE message to GW2. 1285 - Upon receiving the UPDATE, GW2 sends the INVITE to the 1286 destination phone, which responds with SIP message 180 RINGING. 1288 - When (and if) the called party answers, the destination phone 1289 responds with another SIP 200 OK which completes the connection 1290 and tells the calling party that there is now reserved 1291 bandwidth in both directions so that conversation can begin. 1293 - RTP media streams in both directions pass through the DSTE 1294 tunnels as they traverse the MPLS network. 1296 RSVP Aggregation over MPLS TE tunnels February 2006 1298 IP-Phone/ IP-Phone/ 1299 TA-C1 GW1 PE1 CCA PE2 GW2 TA-C2 1300 | INVITE|(SDP1) | INVITE | INVITE | | | 1301 |---------->|-------|---------->|------------|------->| | 1302 | 100|TRYING | | | | | 1303 |<----------|-------|-----------| | | | 1304 | 183|(SDP2) | | | | | 1305 |<----------|-------|-----------|------------|--------| | 1306 | | PATH | | | PATH | | 1307 | |------>| | |<-------| | 1308 | | RESV | | | RESV | | 1309 | |<------| | |------->| | 1310 | | | UPDATE|(SDP3) | | | 1311 | |-------|-----------|------------|------->| | 1312 | | | 200 OK|(SDP4) | | | 1313 | |<------|-----------|------------|--------| INVITE | 1314 | | | | | |---------->| 1315 |180 RINGING| | 180|RINGING | |180 RINGING| 1316 |<----------|<------|-----------|------------|--------|<----------| 1317 | 200 OK | 200|OK | 200|OK | 200 OK | 1318 |<----------|<------|-----------|<-----------|--------|<----------| 1319 | | | | | | | 1320 | | | DSTE|TUNNEL | | | 1321 | RTP|MEDIA |-----------|------------| | | 1322 |===========|=======|===========|============|========|==========>| 1323 | | |-----------|------------| | | 1324 | | | | | | | 1325 | | |-----------|------------| | | 1326 |<==========|=======|===========|============|========|===========| 1327 | | |-----------|------------| | | 1328 DSTE TUNNEL 1330 Figure A2. VoIP QoS CAC using SIP with Preconditions 1332 Through the collaboration between SIP resource management, RSVP 1333 signaling, RSVP Aggregation and DS-TE as described above, we see 1334 that: 1335 a) the PE and GW collaborate to determine whether there is enough 1336 bandwidth on the tunnel between the calling and called GWs to 1337 accommodate the connection, 1338 b) the corresponding accept/reject decision is communicated to the 1339 GWs on a connection-by-connection basis, and 1340 c) the PE can optimize network resources by dynamically adjusting 1341 the bandwidth of each tunnel according to the load over that tunnel. 1342 For example, if a tunnel is operating near capacity, the network may 1343 dynamically adjust the tunnel size within a set of parameters. 1345 RSVP Aggregation over MPLS TE tunnels February 2006 1347 We note that admission Control of voice calls over the core network 1348 capacity is achieved in a hierarchical manner whereby: 1349 - DSTE tunnels are subject to Admission Control over the 1350 resources of the MPLS TE core 1351 - Voice calls are subject to CAC over the DSTE tunnel bandwidth 1352 This hierarchy is a key element in the scalability of this CAC 1353 solution for voice calls over an MPLS Core. 1355 It is also possible for the GWs to use aggregate RSVP reservations 1356 themselves instead of per-call RSVP reservations. For example, 1357 instead of setting one reservation for each call GW1 has in place 1358 towards GW2, GW1 may establish one (or a small number of) aggregate 1359 reservations as defined in [RSVP-AGG] which is used for all (or a 1360 subset of all) the calls towards GW2. This effectively provides an 1361 additional level of hierarchy whereby: 1362 - 1363 DSTE tunnels are subject to Admission Control over the 1364 resources of the MPLS TE core 1365 - Aggregate RSVP reservations (for the calls from one GW to 1366 another GW) are subject to Admission Control over the DSTE 1367 tunnels (as per the "RSVP Aggregation over TE Tunnels" 1368 procedures defined in this document) 1369 - Voice calls are subject to CAC by the GW over the aggregate 1370 reservation towards the appropriate destination GW. 1371 This pushes even further the scalability limits of this voice CAC 1372 architecture.