idnits 2.17.1 draft-ietf-teas-scheduled-resources-04.txt: Checking boilerplate required by RFC 5378 and the IETF Trust (see https://trustee.ietf.org/license-info): ---------------------------------------------------------------------------- No issues found here. Checking nits according to https://www.ietf.org/id-info/1id-guidelines.txt: ---------------------------------------------------------------------------- No issues found here. Checking nits according to https://www.ietf.org/id-info/checklist : ---------------------------------------------------------------------------- No issues found here. Miscellaneous warnings: ---------------------------------------------------------------------------- == The copyright year in the IETF Trust and authors Copyright Line does not match the current year -- The document date (December 2, 2017) is 2327 days in the past. Is this intentional? Checking references for intended status: Informational ---------------------------------------------------------------------------- == Missing Reference: 'T0' is mentioned on line 395, but not defined == Missing Reference: 'B0' is mentioned on line 395, but not defined == Missing Reference: 'T1' is mentioned on line 395, but not defined == Missing Reference: 'B1' is mentioned on line 395, but not defined == Missing Reference: 'T2' is mentioned on line 395, but not defined == Missing Reference: 'B2' is mentioned on line 395, but not defined == Missing Reference: 'T3' is mentioned on line 395, but not defined == Missing Reference: 'B3' is mentioned on line 395, but not defined -- Obsolete informational reference (is this intentional?): RFC 7752 (Obsoleted by RFC 9552) Summary: 0 errors (**), 0 flaws (~~), 9 warnings (==), 2 comments (--). Run idnits with the --verbose option for more detailed information about the items above. -------------------------------------------------------------------------------- 2 TEAS Working Group Y. Zhuang 3 Internet-Draft Q. Wu 4 Intended status: Informational H. Chen 5 Expires: June 5, 2018 Huawei 6 A. Farrel 7 Juniper Networks 8 December 2, 2017 10 Architecture for Scheduled Use of Resources 11 draft-ietf-teas-scheduled-resources-04 13 Abstract 15 Time-scheduled reservation of traffic engineering (TE) resources can 16 be used to provide resource booking for TE Label Switched Paths so as 17 to better guarantee services for customers and to improve the 18 efficiency of network resource usage into the future. This document 19 provides a framework that describes and discusses the architecture 20 for the scheduled reservation of TE resources. This document does 21 not describe specific protocols or protocol extensions needed to 22 realize this service. 24 Status of This Memo 26 This Internet-Draft is submitted in full conformance with the 27 provisions of BCP 78 and BCP 79. 29 Internet-Drafts are working documents of the Internet Engineering 30 Task Force (IETF). Note that other groups may also distribute 31 working documents as Internet-Drafts. The list of current Internet- 32 Drafts is at https://datatracker.ietf.org/drafts/current/. 34 Internet-Drafts are draft documents valid for a maximum of six months 35 and may be updated, replaced, or obsoleted by other documents at any 36 time. It is inappropriate to use Internet-Drafts as reference 37 material or to cite them other than as "work in progress." 39 This Internet-Draft will expire on June 5, 2018. 41 Copyright Notice 43 Copyright (c) 2017 IETF Trust and the persons identified as the 44 document authors. All rights reserved. 46 This document is subject to BCP 78 and the IETF Trust's Legal 47 Provisions Relating to IETF Documents 48 (https://trustee.ietf.org/license-info) in effect on the date of 49 publication of this document. Please review these documents 50 carefully, as they describe your rights and restrictions with respect 51 to this document. Code Components extracted from this document must 52 include Simplified BSD License text as described in Section 4.e of 53 the Trust Legal Provisions and are provided without warranty as 54 described in the Simplified BSD License. 56 Table of Contents 58 1. Introduction . . . . . . . . . . . . . . . . . . . . . . . . 2 59 2. Problem Statement . . . . . . . . . . . . . . . . . . . . . . 3 60 2.1. Provisioning TE-LSPs and TE Resources . . . . . . . . . . 3 61 2.2. Selecting the Path of an LSP . . . . . . . . . . . . . . 4 62 2.3. Planning Future LSPs . . . . . . . . . . . . . . . . . . 4 63 2.4. Looking at Future Demands on TE Resources . . . . . . . . 5 64 2.5. Requisite State Information . . . . . . . . . . . . . . . 5 65 3. Architectural Concepts . . . . . . . . . . . . . . . . . . . 6 66 3.1. Where is Scheduling State Held? . . . . . . . . . . . . . 6 67 3.2. What State is Held? . . . . . . . . . . . . . . . . . . . 8 68 4. Architecture Overview . . . . . . . . . . . . . . . . . . . . 10 69 4.1. Service Request . . . . . . . . . . . . . . . . . . . . . 10 70 4.2. Initialization and Recovery . . . . . . . . . . . . . . . 11 71 4.3. Synchronization Between PCEs . . . . . . . . . . . . . . 12 72 5. Multi-Domain Considerations . . . . . . . . . . . . . . . . . 13 73 6. Security Considerations . . . . . . . . . . . . . . . . . . . 15 74 7. IANA Considerations . . . . . . . . . . . . . . . . . . . . . 16 75 8. Acknowledgements . . . . . . . . . . . . . . . . . . . . . . 16 76 9. Contributors . . . . . . . . . . . . . . . . . . . . . . . . 16 77 10. Informative References . . . . . . . . . . . . . . . . . . . 16 78 Authors' Addresses . . . . . . . . . . . . . . . . . . . . . . . 18 80 1. Introduction 82 Traffic Engineering Label Switched Paths (TE-LSPs) are connection 83 oriented tunnels in packet and non-packet networks [RFC3209], 84 [RFC3945]. TE-LSPs may reserve network resources for use by the 85 traffic they carry, thus providing some guarantees of service 86 delivery and allowing a network operator to plan the use of the 87 resources across the whole network. 89 In some technologies (such as wavelength switched optical networks) 90 the resource is synonymous with the label that is switched on the 91 path of the LSP so that it is not possible to establish an LSP that 92 can carry traffic without assigning a concrete resource to the LSP. 93 In other technologies (such as packet switched networks) the 94 resources assigned to an LSP are a measure of the capacity of a link 95 that is dedicated for use by the traffic on the LSP. 97 In all cases, network planning consists of selecting paths for LSPs 98 through the network so that there will be no contention for 99 resources. LSP establishment is the act of setting up an LSP and 100 reserving resources within the network. Network optimization or re- 101 optimization is the process of re-positioning LSPs in the network to 102 make the unreserved network resources more useful for potential 103 future LSPs while ensuring that the established LSPs continue to 104 fulfill their objectives. 106 It is often the case that it is known that an LSP will be needed at 107 some time in the future. While a path for that LSP could be computed 108 using knowledge of the currently established LSPs and the currently 109 available resources, this does not give any degree of certainty that 110 the necessary resources will be available when it is time to set up 111 the new LSP. Yet setting up the LSP ahead of the time when it is 112 needed (which would guarantee the availability of the resources) is 113 wasteful since the network resources could be used for some other 114 purpose in the meantime. 116 Similarly, it may be known that an LSP will no longer be needed after 117 some future time and that it will be torn down releasing the network 118 resources that were assigned to it. This information can be helpful 119 in planning how a future LSP is placed in the network. 121 Time-Scheduled (TS) reservation of TE resources can be used to 122 provide resource booking for TE-LSPs so as to better guarantee 123 services for customers and to improve the efficiency of network 124 resource usage into the future. This document provides a framework 125 that describes and discusses the architecture for the scheduled 126 reservation of TE resources. This document does not describe 127 specific protocols or protocol extensions needed to realize this 128 service. 130 2. Problem Statement 132 2.1. Provisioning TE-LSPs and TE Resources 134 TE-LSPs in existing networks are provisioned using RSVP-TE as a 135 signaling protocol [RFC3209] [RFC3473], by direct control of network 136 elements such as in the Software Defined Networking (SDN) paradigm, 137 and using the PCE Communication Protocol (PCEP) [RFC5440] as a 138 control protocol. 140 TE resources are reserved at the point of use. That is, the 141 resources (wavelengths, timeslots, bandwidth, etc.) are reserved for 142 use on a specific link and are tracked by the Label Switching Routers 143 (LSRs) at the end points of the link. Those LSRs learn which 144 resources to reserve during the LSP setup process. 146 The use of TE resources can be varied by changing the parameters of 147 the LSP that uses them, and the resources can be released by tearing 148 down the LSP. 150 2.2. Selecting the Path of an LSP 152 Although TE-LSPs can determine their paths hop-by-hop using the 153 shortest path toward the destination to route the signaling protocol 154 messages [RFC3209], in practice this option is not applied because it 155 does not look far enough ahead into the network to verify that the 156 desired resources are available. Instead, the full length of the 157 path of an LSP is computed ahead of time either by the head-end LSR 158 of a signaled LSP, or by Path Computation Element (PCE) functionality 159 in a dedicated server or built into network management software 160 [RFC4655]. 162 Such full-path computation is applied in order that an end-to-end 163 view of the available resources in the network can be used to 164 determine the best likelihood of establishing a viable LSP that meets 165 the service requirements. Even in this situation, however, it is 166 possible that two LSPs being set up at the same time will compete for 167 scarce network resources meaning that one or both of them will fail 168 to be established. This situation is avoided by using a centralized 169 PCE that is aware of the LSP setup requests that are in progress. 171 2.3. Planning Future LSPs 173 LSPs may be established "on demand" when the requester determines 174 that a new LSP is needed. In this case, the path of the LSP is 175 computed as described in Section 2.2. 177 However, in many situations, the requester knows in advance that an 178 LSP will be needed at a particular time in the future. For example, 179 the requester may be aware of a large traffic flow that will start at 180 a well-known time, perhaps for a database synchronization or for the 181 exchange of content between streaming sites. Furthermore, the 182 requester may also know for how long the LSP is required before it 183 can be torn down. 185 The set of requests for future LSPs could be collected and held in a 186 central database (such as at a Network Management System - NMS): when 187 the time comes for each LSP to be set up the NMS can ask the PCE to 188 compute a path and can then request the LSP to be provisioned. This 189 approach has a number of drawbacks because it is not possible to 190 determine in advance whether it will be possible to deliver the LSP 191 since the resources it needs might be used by other LSPs in the 192 network. Thus, at the time the requester asks for the future LSP, 193 the NMS can only make a best-effort guarantee that the LSP will be 194 set up at the desired time. 196 A better solution, therefore, is for the requests for future LSPs to 197 be serviced at once. The paths of the LSPs can be computed ahead of 198 time and converted into reservations of network resources during 199 specific windows in the future. 201 2.4. Looking at Future Demands on TE Resources 203 While path computation as described in Section 2.2 takes account of 204 the currently available network resources, and can act to place LSPs 205 in the network so that there is the best possibility of future LSPs 206 being accommodated, it cannot handle all eventualities. It is simple 207 to construct scenarios where LSPs that are placed one at a time lead 208 to future LSPs being blocked, but where foreknowledge of all of the 209 LSPs would have made it possible for them all to be set up. 211 If, therefore, we were able to know in advance what LSPs were going 212 to be requested we could plan for them and ensure resources were 213 available. Furthermore, such an approach enables a commitment to be 214 made to a service user that an LSP will be set up and available at a 215 specific time. 217 This service can be achieved by tracking the current use of network 218 resources and also a future view of the resource usage. We call this 219 Time-Scheduled TE (TS-TE) resource reservation. 221 2.5. Requisite State Information 223 In order to achieve the TS-TE resource reservation, the use of 224 resources on the path needs to be scheduled. Scheduling state is 225 used to indicate when resources are reserved and when they are 226 available for use. 228 A simple information model for one piece of scheduling state is as 229 follows: 231 { 232 link id; 233 resource id or reserved capacity; 234 reservation start time; 235 reservation end time 236 } 238 The resource that is scheduled can be link capacity, physical 239 resources on a link, CPU utilization, memory, buffers on an 240 interfaces, etc. The resource might also be the maximal unreserved 241 bandwidth of the link over a time interval. For any one resource 242 there could be multiple pieces of scheduling state, and for any one 243 link, the timing windows might overlap. 245 There are multiple ways to realize this information model and 246 different ways to store the data. The resource state could be 247 expressed as a start time and an end time as shown above, or could be 248 expressed as a start time and a duration. Multiple periods, possibly 249 of different lengths, may be associated with one reservation request, 250 and a reservation might repeat on a regular cycle. Furthermore, the 251 current state of network reservation could be kept separate from the 252 scheduled usage, or everything could be merged into a single TS 253 database. 255 This scheduling state information can be used by applications to book 256 resources for future or now, so as to maximize chance of services 257 being delivered. Also, it can avoid contention for resources of 258 LSPs. 260 Note that it is also necessary to store the information about future 261 LSPs. This information is held to allow the LSPs to be instantiated 262 when they are due and using the paths/resources that have been 263 computed for them, but also to provide correlation with the TS-TE 264 resource reservations so that it is clear why resources were reserved 265 allowing pre-emption and handling release of reserved resources in 266 the event of cancellation of future LSPs. 268 3. Architectural Concepts 270 This section examines several important architectural concepts that 271 lead to design decisions that will influence how networks can achieve 272 TS-TE in a scalable and robust manner. 274 3.1. Where is Scheduling State Held? 276 The scheduling state information described in Section 2.5 has to be 277 held somewhere. There are two places where this makes sense: 279 o In the network nodes where the resources exist; 281 o In a central scheduling controller where decisions about resource 282 allocation are made. 284 The first of these makes policing of resource allocation easier. It 285 means that many points in the network can request immediate or 286 scheduled LSPs with the associated resource reservation and that all 287 such requests can be correlated at the point where the resources are 288 allocated. However, this approach has some scaling and technical 289 problems: 291 o The most obvious issue is that each network node must retain the 292 full time-based state for all of its resources. In a busy network 293 with a high arrival rate of new LSPs and a low hold time for each 294 LSP, this could be a lot of state. Yet network nodes are normally 295 implemented with minimal spare memory. 297 o In order that path computation can be performed, the computing 298 entity normally known as a Path Computation Element (PCE) 299 [RFC4655] needs access to a database of available links and nodes 300 in the network, and of the TE properties of the links. This 301 database is known as the Traffic Engineering Database (TED) and is 302 usually populated from information advertised in the IGP by each 303 of the network nodes or exported using BGP-LS [RFC7752]. To be 304 able to compute a path for a future LSP the PCE needs to populate 305 the TED with all of the future resource availability: if this 306 information is held on the network nodes it must also be 307 advertised in the IGP. This could be a significant scaling issue 308 for the IGP and the network nodes as all of the advertised 309 information is held at every network node and must be periodically 310 refreshed by the IGP. 312 o When a normal node restarts it can recover resource reservation 313 state from the forwarding hardware, from Non-Volatile Random- 314 Access Memory (NVRAM), or from adjacent nodes through the 315 signaling protocol [RFC5063]. If scheduling state is held at the 316 network nodes it must also be recovered after the restart of a 317 network node. This cannot be achieved from the forwarding 318 hardware because the reservation will not have been made, could 319 require additional expensive NVRAM, or might require that all 320 adjacent nodes also have the scheduling state in order to re- 321 install it on the restarting node. This is potentially complex 322 processing with scaling and cost implications. 324 Conversely, if the scheduling state is held centrally it is easily 325 available at the point of use. That is, the PCE can utilize the 326 state to plan future LSPs and can update that stored information with 327 the scheduled reservation of resources for those future LSPs. This 328 approach also has several issues: 330 o If there are multiple controllers then they must synchronize their 331 stored scheduling state as they each plan future LSPs, and must 332 have a mechanism to resolve resource contention. This is 333 relatively simple and is mitigated by the fact that there is ample 334 processing time to re-plan future LSPs in the case of resource 335 contention. 337 o If other sources of immediate LSPs are allowed (for example, other 338 controllers or autonomous action by head-end LSRs) then the 339 changes in resource availability caused by the setup or tear down 340 of these LSPs must be reflected in the TED (by use of the IGP as 341 currently) and may have an impact of planned future LSPs. This 342 impact can be mitigated by re-planning future LSPs or through LSP 343 preemption. 345 o If other sources of planned LSPs are allowed, they can request 346 path computation and resource reservation from the centralized PCE 347 using PCEP [RFC5440]. 349 o If the scheduling state is held centrally at a PCE, the state must 350 be held and restored after a system restart. This is relatively 351 easy to achieve on a central server that can have access to non- 352 volatile storage. The PCE could also synchronize the scheduling 353 state with other PCEs after restart. See Section 4.2 for details. 355 o Of course, a centralized system must store information about all 356 of the resources in the network. In a busy network with a high 357 arrival rate of new LSPs and a low hold time for each LSP, this 358 could be a lot of state. This is multiplied by the size of the 359 network measured both by the number of links and nodes, and by the 360 number of trackable resources on each link or at each node. The 361 challenge may be mitigated by the centralized server being 362 dedicated hardware, but the problem of collecting the information 363 from the network is only solved if the central server has full 364 control of the booking of resources and the establishment of new 365 LSPs. 367 Thus the architectural conclusion is that scheduling state should be 368 held centrally at the point of use and not in the network devices. 370 3.2. What State is Held? 372 As already described, the PCE needs access to an enhanced, time-based 373 TED. It stores the traffic engineering (TE) information such as 374 bandwidth for every link for a series of time intervals. There are a 375 few ways to store the TE information in the TED. For example, 376 suppose that the amount of the unreserved bandwidth at a priority 377 level for a link is Bj in a time interval from time Tj to Tk (k = 378 j+1), where j = 0, 1, 2, .... 380 Bandwidth 381 ^ 382 | B3 383 | B1 ___________ 384 | __________ 385 |B0 B4 386 |__________ B2 _________ 387 | ________________ 388 | 389 -+-------------------------------------------------------> Time 390 |T0 T1 T2 T3 T4 392 Figure 1: A Plot of Bandwidth Usage against Time 394 The unreserved bandwidth for the link can be represented and stored 395 in the TED as [T0, B0], [T1, B1], [T2, B2], [T3, B3], ... as shown in 396 Figure 1. 398 But it must be noted that service requests for future LSPs are known 399 in terms of the LSPs whose paths are computed and for which resources 400 are scheduled. For example, if the requester of a future LSP decides 401 to cancel the request or to modify the request, the PCE must be able 402 to map this to the resources that were reserved. When the LSP or the 403 request for the LSP with a number of time intervals is cancelled, the 404 PCE must release the resources that were reserved on each of the 405 links along the path of the LSP in every time intervals from the TED. 406 If the bandwidth reserved on a link for the LSP is B from time T2 to 407 T3 and the unreserved bandwidth on the link is B2 from T2 to T3, B is 408 added to the link for the time interval from T2 to T3 and the 409 unreserved bandwidth on the link from T2 to T3 will be B2 + B. 411 This suggests that the PCE needs an LSP Database (LSP-DB) 412 [I-D.ietf-pce-stateful-pce] that contains information not only about 413 LSPs that are active in the network, but also those that are planned. 414 The information for an LSP stored in the LSP-DB includes for each 415 time interval that applies to the LSP: the time interval, the paths 416 computed for the LSP satisfying the constraints in the time interval, 417 and the resources such as bandwidth reserved for the LSP in the time 418 interval. See also Section 2.3 420 It is an implementation choice how the TED and LSP-DB are stored both 421 for dynamic use and for recovery after failure or restart, but it may 422 be noted that all of the information in the scheduled TED can be 423 recovered from the active network state and from the scheduled LSP- 424 DB. 426 4. Architecture Overview 428 The architectural considerations and conclusions described in the 429 previous section lead to the architecture described in this section 430 and illustrated in Figure 2. The interfaces and interactions shown 431 on the figure and labeled (a) through (f) are described in 432 Section 4.1. 434 ------------------- 435 | Service Requester | 436 ------------------- 437 ^ 438 a| 439 v 440 ------- b -------- 441 | |<--->| LSP-DB | 442 | | -------- 443 | PCE | 444 | | c ----- 445 | |<---->| TED | 446 ------- ----- 447 ^ ^ 448 | | 449 d| |e 450 | | 451 ------+-----+-------------------- 452 | | Network 453 | -------- 454 | | Router | 455 v -------- 456 ----- ----- 457 | LSR |<------>| LSR | 458 ----- f ----- 460 Figure 2: Reference Architecture for Scheduled Use of Resources 462 4.1. Service Request 464 As shown in Figure 2, some component in the network requests a 465 service. This may be an application, an NMS, an LSR, or any 466 component that qualifies as a Path Computation Client (PCC). We show 467 this on the figure as the "Service Requester" and it sends a request 468 to the PCE for an LSP to be set up at some time (either now or in the 469 future). The request, indicated on Figure 2 by the arrow (a), 470 includes all of the parameters of the LSP that the requester wishes 471 to supply such as bandwidth, start time, and end time. Note that the 472 requester in this case may be the LSR shown in the figure or may be a 473 distinct system. 475 The PCE enters the LSP request in its LSP-DB (b), and uses 476 information from its TED (c) to compute a path that satisfies the 477 constraints (such as bandwidth) for the LSP in the time interval from 478 the start time to the end time. It updates the future resource 479 availability in the TED so that further path computations can take 480 account of the scheduled resource usage. It stores the path for the 481 LSP into the LSP-DB (b). 483 When it is time (i.e., at the start time) for the LSP to be set up, 484 the PCE sends a PCEP Initiate request to the head end LSR (d) 485 providing the path to be signaled as well as other parameters such as 486 the bandwidth of the LSP. 488 As the LSP is signaled between LSRs (f) the use of resources in the 489 network is updated and distributed using the IGP. This information 490 is shared with the PCE either through the IGP or using BGP-LS (e), 491 and the PCE updates the information stored in its TED (c). 493 After the LSP is set up, the head end LSR sends a PCEP LSP State 494 Report (PCRpt message) to the PCE (d). The report contains the 495 resources such as bandwidth usage for the LSP. The PCE updates the 496 status of the LSP in the LSP-DB according to the report. 498 When an LSP is no longer required (either because the Service 499 Requester has cancelled the request, or because the LSP's scheduled 500 lifetime has expired) the PCE can remove it. If the LSP is currently 501 active, the PCE instructs the head-end LSR to tear it down (d), and 502 the network resource usage will be updated by the IGP and advertised 503 back to the PCE through the IGP or BGP-LS (e). Once the LSP is no 504 longer active, the PCE can remove it from the LSP-DB (b). 506 4.2. Initialization and Recovery 508 When a PCE in the architecture shown in Figure 2 is initialized, it 509 must learn state from the network, from its stored databases, and 510 potentially from other PCEs in the network. 512 The first step is to get an accurate view of the topology and 513 resource availability in the network. This would normally involve 514 reading the state direct from the network via the IGP or BGP-LS (e), 515 but might include receiving a copy of the TED from another PCE. Note 516 that a TED stored from a previous instantiation of the PCE is 517 unlikely to be valid. 519 Next, the PCE must construct a time-based TED to show scheduled 520 resource usage. How it does this is implementation specific and this 521 document does not dictate any particular mechanism: it may recover a 522 time-based TED previously saved to non-volatile storage, or it may 523 reconstruct the time-based TED from information retrieved from the 524 LSP-DB previously saved to non-volatile storage. If there is more 525 than one PCE active in the network, the recovering PCE will need to 526 synchronize the LSP-DB and time-based TED with other PCEs (see 527 Section 4.3). 529 Note that the stored LSP-DB needs to include the intended state and 530 actual state of the LSPs so that when a PCE recovers it is able to 531 determine what actions are necessary. 533 4.3. Synchronization Between PCEs 535 If there is more than one PCE that supports scheduling active in the 536 network, it is important to achieve some consistency between the 537 scheduled TED and scheduled LSP-DB held by the PCEs. 539 [RFC7399] answers various questions around synchronization between 540 the PCEs. It should be noted that the time-based "scheduled" 541 information adds another dimension to the issue of synchronization 542 between PCEs. It should also be noted that a deployment may use a 543 primary PCE and the have other PCEs as backup, where a backup PCE can 544 take over only in the event of a failure of the primary PCE. 545 Alternatively, the PCEs may share the load at all times. The choice 546 of the synchronization technique is largely dependent on the 547 deployment of PCEs in the network. 549 One option for ensuring that multiple PCEs use the same scheduled 550 information is simply to have the PCEs driven from the same shared 551 database, but it is likely to be inefficient and interoperation 552 between multiple implementations will be harder. 554 Another option is for each PCE to be responsible for its own 555 scheduled database and to utilize some distributed database 556 synchronization mechanism to have consistent information. Depending 557 on the implementation, this could be efficient, but interoperation 558 between heterogeneous implementations is still hard. 560 A further approach is to utilize PCEP messages to synchronize the 561 scheduled state between PCEs. This approach would work well if the 562 number of PCEs which support scheduling is small, but as the number 563 increases considerable message exchange needs to happen to keep the 564 scheduled databases synchronized. Future solutions could also 565 utilize some synchronization optimization techniques for efficiency. 566 Another variation would be to request information from other PCEs for 567 a particular time slice, but this might have impact on the 568 optimization algorithm. 570 5. Multi-Domain Considerations 572 Multi-domain path computation usually requires some form of 573 cooperation between PCEs each of which has responsibility for 574 determining a segment of the end-to-end path in the domain for which 575 it has computationonal responsiblity. When computing a scheduled 576 path, resources need to be booked in all of the domains that the path 577 will cross so that they are available when the LSP is finlly 578 signalled. 580 Per-domain path computation [RFC5152] is not an appropriate mechanism 581 when a scheduled LSP is being computed because the computation 582 requests at downstream PCEs are only triggered by signaling. 583 However, a similar mechanism could be used where cooperating PCEs 584 exchange PCReq messages for a scheduled LSP as shown in Figure 3. In 585 this case the service requester asks for a scheduled LSP that will 586 span two domains (a). PCE1 computes a path across Domain 1 and 587 reserves the resources, and also asks PCE2 to compute and reserve in 588 Domain 2 (b). PCE2 may return a full path, or could return a path 589 key [RFC5520]. When it is time for LSP setup PCE1 triggers the head- 590 end LSR (c) and the LSP is signaled (d). If a path key is used, the 591 entry LSR in Domain 2 will consult PCE2 for the path expansion (e) 592 before completing signaling (f). 594 ------------------- 595 | Service Requester | 596 ------------------- 597 ^ 598 a| 599 v 600 ------ b ------ 601 | |<---------------->| | 602 | PCE1 | | PCE2 | 603 | | | | 604 ------ ------ 605 ^ ^ 606 | | 607 c| e| 608 | | 609 ----+----------------- ----+----------------- 610 | | Domain 1 | | | Domain 2 | 611 | v | | v | 612 | ----- d ----- | | ----- f ----- | 613 | | LSR |<--->| LSR |<-+--+->| LSR |<--->| LSR | | 614 | ----- ----- | | ----- ----- | 615 ---------------------- ---------------------- 617 Figure 3: Per-Domain Path Computation for Scheduled LSPs 619 Another mechanism for PCE cooperation in multi-domain LSP setup is 620 Backward- Recursive Path Computation (BRPC) [RFC5441]. This approach 621 relies on the downstream domain supply a variety of potential paths 622 to the upstream domain. Although BRPC can arrive at a more optimal 623 end-to-end path than per-domain path computation, it is not well 624 suited to LSP scheduling because the downstream PCE would need to 625 reserve resources on all of the potential paths and then release 626 those that the upstream PCE announced it did not plan to use. 628 Finally we should consider hierarchical PCE (H-PCE) [RFC6805]. This 629 mode of operatation is similar to that shown in Figure 3, but a 630 parent PCE is used to coordinate the requests to the child PCEs 631 resulting in better visibility of the end-to-end path and better 632 coordination of the resource booking. The sequenced flow of control 633 is shown in Figure 4. 635 ------------------- 636 | Service Requester | 637 ------------------- 638 ^ 639 a| 640 v 641 -------- 642 | | 643 | Parent | 644 | PCE | 645 | | 646 -------- 647 ^ ^ b 648 b| |_______________________ 649 | | 650 v v 651 ------ ------ 652 | | | | 653 | PCE1 | | PCE2 | 654 | | | | 655 ------ ------ 656 ^ ^ 657 | | 658 c| e| 659 | | 660 ----+----------------- ----+----------------- 661 | | Domain 1 | | | Domain 2 | 662 | v | | v | 663 | ----- d ----- | | ----- f ----- | 664 | | LSR |<--->| LSR |<-+--+->| LSR |<--->| LSR | | 665 | ----- ----- | | ----- ----- | 666 ---------------------- ---------------------- 668 Figure 4: Hierarchical PCE for Path Computation for Scheduled LSPs 670 6. Security Considerations 672 The protocol implications of scheduled resources are unchanged from 673 "on-demand" LSP computation and setup. A discussion of securing PCEP 674 is found in [RFC5440] and work to extend that security is provided in 675 [I-D.ietf-pce-pceps]. Furthermore, the path key mechanism described 676 in [RFC5520] can be used to enhance privacy and security. 678 Similarly, there is no change to the security implications for the 679 signaling of scheduled LSPs. A discussion of the security of the 680 signaling protocols that would be used is found in [RFC5920]. 682 However, the use of scheduled LSPs extends the attack surface for a 683 PCE-enabled TE system by providing a larger (logically infinte) 684 window during which an attack can be initiated or planned. That is, 685 if bogus scheduled LSPs can be requested, they can be entered into 686 the LSP-DB, then a large number of LSPs could be launched, or 687 significant network resources could be blocked. Of course, 688 additional authorization could be applied for access to LSP 689 scheduling, and diagnostic tools could inspect the LSP DB to spot 690 attacks. 692 7. IANA Considerations 694 This architecture document makes no request for IANA action. 696 8. Acknowledgements 698 This work has benefited from the discussions of resource scheduling 699 over the years. In particular the DRAGON project [DRAGON] and 700 [I-D.yong-ccamp-ason-gmpls-autobw-service] both of which provide 701 approaches to auto-bandwidth services in GMPLS networks. 703 Mehmet Toy, Lei Liu, and Khuzema Pithewan contributed the earlier 704 version of [I-D.chen-teas-frmwk-tts]. We would like to thank the 705 authors of that draft on Temporal Tunnel Services. 707 Thanks to Michael Scharf and Daniele Ceccarelli for useful comments 708 on this work. 710 9. Contributors 712 The following people contributed to discussions that led to the 713 development of this document: 715 Dhruv Dhody 716 Email: dhruv.dhody@huawei.com 718 10. Informative References 720 [DRAGON] National Science Foundation, "http://www.maxgigapop.net/ 721 wp-content/uploads/The-DRAGON-Project.pdf". 723 [I-D.chen-teas-frmwk-tts] 724 Chen, H., Toy, M., Liu, L., and K. Pithewan, "Framework 725 for Temporal Tunnel Services", draft-chen-teas-frmwk- 726 tts-01 (work in progress), March 2016. 728 [I-D.ietf-pce-pceps] 729 Lopez, D., Dios, O., Wu, Q., and D. Dhody, "Secure 730 Transport for PCEP", draft-ietf-pce-pceps-18 (work in 731 progress), September 2017. 733 [I-D.ietf-pce-stateful-pce] 734 Crabbe, E., Minei, I., Medved, J., and R. Varga, "PCEP 735 Extensions for Stateful PCE", draft-ietf-pce-stateful- 736 pce-21 (work in progress), June 2017. 738 [I-D.yong-ccamp-ason-gmpls-autobw-service] 739 Yong, L. and Y. Lee, "ASON/GMPLS Extension for Reservation 740 and Time Based Automatic Bandwidth Service", draft-yong- 741 ccamp-ason-gmpls-autobw-service-00 (work in progress), 742 October 2006. 744 [RFC3209] Awduche, D., Berger, L., Gan, D., Li, T., Srinivasan, V., 745 and G. Swallow, "RSVP-TE: Extensions to RSVP for LSP 746 Tunnels", RFC 3209, DOI 10.17487/RFC3209, December 2001, 747 . 749 [RFC3473] Berger, L., Ed., "Generalized Multi-Protocol Label 750 Switching (GMPLS) Signaling Resource ReserVation Protocol- 751 Traffic Engineering (RSVP-TE) Extensions", RFC 3473, 752 DOI 10.17487/RFC3473, January 2003, 753 . 755 [RFC3945] Mannie, E., Ed., "Generalized Multi-Protocol Label 756 Switching (GMPLS) Architecture", RFC 3945, 757 DOI 10.17487/RFC3945, October 2004, 758 . 760 [RFC4655] Farrel, A., Vasseur, J., and J. Ash, "A Path Computation 761 Element (PCE)-Based Architecture", RFC 4655, 762 DOI 10.17487/RFC4655, August 2006, 763 . 765 [RFC5063] Satyanarayana, A., Ed. and R. Rahman, Ed., "Extensions to 766 GMPLS Resource Reservation Protocol (RSVP) Graceful 767 Restart", RFC 5063, DOI 10.17487/RFC5063, October 2007, 768 . 770 [RFC5152] Vasseur, JP., Ed., Ayyangar, A., Ed., and R. Zhang, "A 771 Per-Domain Path Computation Method for Establishing Inter- 772 Domain Traffic Engineering (TE) Label Switched Paths 773 (LSPs)", RFC 5152, DOI 10.17487/RFC5152, February 2008, 774 . 776 [RFC5440] Vasseur, JP., Ed. and JL. Le Roux, Ed., "Path Computation 777 Element (PCE) Communication Protocol (PCEP)", RFC 5440, 778 DOI 10.17487/RFC5440, March 2009, 779 . 781 [RFC5441] Vasseur, JP., Ed., Zhang, R., Bitar, N., and JL. Le Roux, 782 "A Backward-Recursive PCE-Based Computation (BRPC) 783 Procedure to Compute Shortest Constrained Inter-Domain 784 Traffic Engineering Label Switched Paths", RFC 5441, 785 DOI 10.17487/RFC5441, April 2009, 786 . 788 [RFC5520] Bradford, R., Ed., Vasseur, JP., and A. Farrel, 789 "Preserving Topology Confidentiality in Inter-Domain Path 790 Computation Using a Path-Key-Based Mechanism", RFC 5520, 791 DOI 10.17487/RFC5520, April 2009, 792 . 794 [RFC5920] Fang, L., Ed., "Security Framework for MPLS and GMPLS 795 Networks", RFC 5920, DOI 10.17487/RFC5920, July 2010, 796 . 798 [RFC6805] King, D., Ed. and A. Farrel, Ed., "The Application of the 799 Path Computation Element Architecture to the Determination 800 of a Sequence of Domains in MPLS and GMPLS", RFC 6805, 801 DOI 10.17487/RFC6805, November 2012, 802 . 804 [RFC7399] Farrel, A. and D. King, "Unanswered Questions in the Path 805 Computation Element Architecture", RFC 7399, 806 DOI 10.17487/RFC7399, October 2014, 807 . 809 [RFC7752] Gredler, H., Ed., Medved, J., Previdi, S., Farrel, A., and 810 S. Ray, "North-Bound Distribution of Link-State and 811 Traffic Engineering (TE) Information Using BGP", RFC 7752, 812 DOI 10.17487/RFC7752, March 2016, 813 . 815 Authors' Addresses 817 Yan Zhuang 818 Huawei 819 101 Software Avenue, Yuhua District 820 Nanjing, Jiangsu 210012 821 China 823 Email: zhuangyan.zhuang@huawei.com 824 Qin Wu 825 Huawei 826 101 Software Avenue, Yuhua District 827 Nanjing, Jiangsu 210012 828 China 830 Email: bill.wu@huawei.com 832 Huaimo Chen 833 Huawei 834 Boston, MA 835 US 837 Email: huaimo.chen@huawei.com 839 Adrian Farrel 840 Juniper Networks 842 Email: afarrel@juniper.net