idnits 2.17.1 draft-ietf-teas-scheduled-resources-02.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 (January 3, 2017) is 2660 days in the past. Is this intentional? Checking references for intended status: Proposed Standard ---------------------------------------------------------------------------- (See RFCs 3967 and 4897 for information about using normative references to lower-maturity documents in RFCs) == Missing Reference: 'T0' is mentioned on line 394, but not defined == Missing Reference: 'B0' is mentioned on line 394, but not defined == Missing Reference: 'T1' is mentioned on line 394, but not defined == Missing Reference: 'B1' is mentioned on line 394, but not defined == Missing Reference: 'T2' is mentioned on line 394, but not defined == Missing Reference: 'B2' is mentioned on line 394, but not defined == Missing Reference: 'T3' is mentioned on line 394, but not defined == Missing Reference: 'B3' is mentioned on line 394, but not defined == Outdated reference: A later version (-18) exists of draft-ietf-pce-pceps-11 == Outdated reference: A later version (-21) exists of draft-ietf-pce-stateful-pce-18 -- Obsolete informational reference (is this intentional?): RFC 7752 (Obsoleted by RFC 9552) Summary: 0 errors (**), 0 flaws (~~), 11 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: Standards Track H. Chen 5 Expires: July 7, 2017 Huawei 6 A. Farrel 7 Juniper Networks 8 January 3, 2017 10 Architecture for Scheduled Use of Resources 11 draft-ietf-teas-scheduled-resources-02 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 http://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 July 7, 2017. 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 (http://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. In all cases, 96 network planning consists of selecting paths for LSPs through the 97 network so that there will be no contention for resources; LSP 98 establishment is the act of setting up an LSP and reserving resources 99 within the network; and network optimization or re-optimization is 100 the process of re-positioning LSPs in the network to make the 101 unreserved network resources more useful for potential future LSPs 102 while ensuring that the established LSPs continue to fulfill their 103 objectives. 105 It is often the case that it is known that an LSP will be needed at 106 some time in the future. While a path for that LSP could be computed 107 using knowledge of the currently established LSPs and the currently 108 available resources, this does not give any degree of certainty that 109 the necessary resources will be available when it is time to set up 110 the new LSP. Yet setting up the LSP ahead of the time when it is 111 needed (which would guarantee the availability of the resources) is 112 wasteful since the network resources could be used for some other 113 purpose in the meantime. 115 Similarly, it may be known that an LSP will no longer be needed after 116 some future time and that it will be torn down releasing the network 117 resources that were assigned to it. This information can be helpful 118 in planning how a future LSP is placed in the network. 120 Time-Scheduled (TS) reservation of TE resources can be used to 121 provide resource booking for TE-LSPs so as to better guarantee 122 services for customers and to improve the efficiency of network 123 resource usage into the future. This document provides a framework 124 that describes and discusses the architecture for the scheduled 125 reservation of TE resources. This document does not describe 126 specific protocols or protocol extensions needed to realize this 127 service. 129 2. Problem Statement 131 2.1. Provisioning TE-LSPs and TE Resources 133 TE-LSPs in existing networks are provisioned using RSVP-TE as a 134 signaling protocol [RFC3209] [RFC3473], by direct control of network 135 elements such as in the Software Defined Networking (SDN) paradigm, 136 and using the PCE Communication Protocol (PCEP) [RFC5440] as a 137 control protocol. 139 TE resources are reserved at the point of use. That is, the 140 resources (wavelengths, timeslots, bandwidth, etc.) are reserved for 141 use on a specific link and are tracked by the Label Switching Routers 142 (LSRs) at the end points of the link. Those LSRs learn which 143 resources to reserve during the LSP setup process. 145 The use of TE resources can be varied by changing the parameters of 146 the LSP that uses them, and the resources can be released by tearing 147 down the LSP. 149 2.2. Selecting the Path of an LSP 151 Although TE-LSPs can determine their paths hop-by-hop using the 152 shortest path toward the destination to route the signaling protocol 153 messages [RFC3209], in practice this option is not applied because it 154 does not look far enough ahead into the network to verify that the 155 desired resources are available. Instead, the full length of the 156 path of an LSP is computed ahead of time either by the head-end LSR 157 of a signaled LSP, or by Path Computation Element (PCE) functionality 158 in a dedicated server or built into network management software 159 [RFC4655]. 161 Such full-path computation is applied in order that an end-to-end 162 view of the available resources in the network can be used to 163 determine the best likelihood of establishing a viable LSP that meets 164 the service requirements. Even in this situation, however, it is 165 possible that two LSPs being set up at the same time will compete for 166 scarce network resources meaning that one or both of them will fail 167 to be established. This situation is avoided by using a centralized 168 PCE that is aware of the LSP setup requests that are in progress. 170 2.3. Planning Future LSPs 172 LSPs may be established "on demand" when the requester determines 173 that a new LSP is needed. In this case, the path of the LSP is 174 computed as described in Section 2.2. 176 However, in many situations, the requester knows in advance that an 177 LSP will be needed at a particular time in the future. For example, 178 the requester may be aware of a large traffic flow that will start at 179 a well-known time, perhaps for a database synchronization or for the 180 exchange of content between streaming sites. Furthermore, the 181 requester may also know for how long the LSP is required before it 182 can be torn down. 184 The set of requests for future LSPs could be collected and held in a 185 central database (such as at a Network Management System - NMS): when 186 the time comes for each LSP to be set up the NMS can ask the PCE to 187 compute a path and can then request the LSP to be provisioned. This 188 approach has a number of drawbacks because it is not possible to 189 determine in advance whether it will be possible to deliver the LSP 190 since the resources it needs might be used by other LSPs in the 191 network. Thus, at the time the requester asks for the future LSP, 192 the NMS can only make a best-effort guarantee that the LSP will be 193 set up at the desired time. 195 A better solution, therefore, is for the requests for future LSPs to 196 be serviced at once. The paths of the LSPs can be computed ahead of 197 time and converted into reservations of network resources during 198 specific windows in the future. 200 2.4. Looking at Future Demands on TE Resources 202 While path computation as described in Section 2.2 takes account of 203 the currently available network resources, and can act to place LSPs 204 in the network so that there is the best possibility of future LSPs 205 being accommodated, it cannot handle all eventualities. It is simple 206 to construct scenarios where LSPs that are placed one at a time lead 207 to future LSPs being blocked, but where foreknowledge of all of the 208 LSPs would have made it possible for them all to be set up. 210 If, therefore, we were able to know in advance what LSPs were going 211 to be requested we could plan for them and ensure resources were 212 available. Furthermore, such an approach enables a commitment to be 213 made to a service user that an LSP will be set up and available at a 214 specific time. 216 This service can be achieved by tracking the current use of network 217 resources and also a future view of the resource usage. We call this 218 Time-Scheduled TE (TS-TE) resource reservation. 220 2.5. Requisite State Information 222 In order to achieve the TS-TE resource reservation, the use of 223 resources on the path needs to be scheduled. Scheduling state is 224 used to indicate when resources are reserved and when they are 225 available for use. 227 A simple information model for one piece of scheduling state is as 228 follows: 230 { 231 link id; 232 resource id or reserved capacity; 233 reservation start time; 234 reservation end time 235 } 237 The resource that is scheduled can be link capacity, physical 238 resources on a link, CPU utilization, memory, buffers on an 239 interfaces, etc. The resource might also be the maximal unreserved 240 bandwidth of the link over a time interval. For any one resource 241 there could be multiple pieces of scheduling state, and for any one 242 link, the timing windows might overlap. 244 There are multiple ways to realize this information model and 245 different ways to store the data. The resource state could be 246 expressed as a start time and an end time as shown above, or could be 247 expressed as a start time and a duration. Multiple periods, possibly 248 of different lengths, may be associated with one reservation request, 249 and a reservation might repeat on a regular cycle. Furthermore, the 250 current state of network reservation could be kept separate from the 251 scheduled usage, or everything could be merged into a single TS 252 database. 254 This scheduling state information can be used by applications to book 255 resources for future or now, so as to maximize chance of services 256 being delivered. Also, it can avoid contention for resources of 257 LSPs. 259 Note that it is also necessary to store the information about future 260 LSPs. This information is held to allow the LSPs to be instantiated 261 when they are due and using the paths/resources that have been 262 computed for them, but also to provide correlation with the TS-TE 263 resource reservations so that it is clear why resources were reserved 264 allowing pre-emption and handling release of reserved resources in 265 the event of cancellation of future LSPs. 267 3. Architectural Concepts 269 This section examines several important architectural concepts that 270 lead to design decisions that will influence how networks can achieve 271 TS-TE in a scalable and robust manner. 273 3.1. Where is Scheduling State Held? 275 The scheduling state information described in Section 2.5 has to be 276 held somewhere. There are two places where this makes sense: 278 o In the network nodes where the resources exist; 280 o In a central scheduling controller where decisions about resource 281 allocation are made. 283 The first of these makes policing of resource allocation easier. It 284 means that many points in the network can request immediate or 285 scheduled LSPs with the associated resource reservation and that all 286 such requests can be correlated at the point where the resources are 287 allocated. However, this approach has some scaling and technical 288 problems: 290 o The most obvious issue is that each network node must retain the 291 full time-based state for all of its resources. In a busy network 292 with a high arrival rate of new LSPs and a low hold time for each 293 LSP, this could be a lot of state. Yet network nodes are normally 294 implemented with minimal spare memory. 296 o In order that path computation can be performed, the computing 297 entity normally known as a Path Computation Element (PCE) 298 [RFC4655] needs access to a database of available links and nodes 299 in the network, and of the TE properties of the links. This 300 database is known as the Traffic Engineering Database (TED) and is 301 usually populated from information advertised in the IGP by each 302 of the network nodes or exported using BGP-LS [RFC7752]. To be 303 able to compute a path for a future LSP the PCE needs to populate 304 the TED with all of the future resource availability: if this 305 information is held on the network nodes it must also be 306 advertised in the IGP. This could be a significant scaling issue 307 for the IGP and the network nodes as all of the advertised 308 information is held at every network node and must be periodically 309 refreshed by the IGP. 311 o When a normal node restarts it can recover resource reservation 312 state from the forwarding hardware, from Non-Volatile Random- 313 Access Memory (NVRAM), or from adjacent nodes through the 314 signaling protocol [RFC5063]. If scheduling state is held at the 315 network nodes it must also be recovered after the restart of a 316 network node. This cannot be achieved from the forwarding 317 hardware because the reservation will not have been made, could 318 require additional expensive NVRAM, or might require that all 319 adjacent nodes also have the scheduling state in order to re- 320 install it on the restarting node. This is potentially complex 321 processing with scaling and cost implications. 323 Conversely, if the scheduling state is held centrally it is easily 324 available at the point of use. That is, the PCE can utilize the 325 state to plan future LSPs and can update that stored information with 326 the scheduled reservation of resources for those future LSPs. This 327 approach also has several issues: 329 o If there are multiple controllers then they must synchronize their 330 stored scheduling state as they each plan future LSPs, and must 331 have a mechanism to resolve resource contention. This is 332 relatively simple and is mitigated by the fact that there is ample 333 processing time to re-plan future LSPs in the case of resource 334 contention. 336 o If other sources of immediate LSPs are allowed (for example, other 337 controllers or autonomous action by head-end LSRs) then the 338 changes in resource availability caused by the setup or tear down 339 of these LSPs must be reflected in the TED (by use of the IGP as 340 currently) and may have an impact of planned future LSPs. This 341 impact can be mitigated by re-planning future LSPs or through LSP 342 preemption. 344 o If other sources of planned LSPs are allowed, they can request 345 path computation and resource reservation from the centralized PCE 346 using PCEP [RFC5440]. 348 o If the scheduling state is held centrally at a PCE, the state must 349 be held and restored after a system restart. This is relatively 350 easy to achieve on a central server that can have access to non- 351 volatile storage. The PCE could also synchronize the scheduling 352 state with other PCEs after restart. See Section 4.2 for details. 354 o Of course, a centralized system must store information about all 355 of the resources in the network. In a busy network with a high 356 arrival rate of new LSPs and a low hold time for each LSP, this 357 could be a lot of state. This is multiplied by the size of the 358 network measured both by the number of links and nodes, and by the 359 number of trackable resources on each link or at each node. The 360 challenge may be mitigated by the centralized server being 361 dedicated hardware, but the problem of collecting the information 362 from the network is only solved if the central server has full 363 control of the booking of resources and the establishment of new 364 LSPs. 366 Thus the architectural conclusion is that scheduling state should be 367 held centrally at the point of use and not in the network devices. 369 3.2. What State is Held? 371 As already described, the PCE needs access to an enhanced, time-based 372 TED. It stores the traffic engineering (TE) information such as 373 bandwidth for every link for a series of time intervals. There are a 374 few ways to store the TE information in the TED. For example, 375 suppose that the amount of the unreserved bandwidth at a priority 376 level for a link is Bj in a time interval from time Tj to Tk (k = 377 j+1), where j = 0, 1, 2, .... 379 Bandwidth 380 ^ 381 | B3 382 | B1 ___________ 383 | __________ 384 |B0 B4 385 |__________ B2 _________ 386 | ________________ 387 | 388 -+-------------------------------------------------------> Time 389 |T0 T1 T2 T3 T4 391 Figure 1: A Plot of Bandwidth Usage against Time 393 The unreserved bandwidth for the link can be represented and stored 394 in the TED as [T0, B0], [T1, B1], [T2, B2], [T3, B3], ... as shown in 395 Figure 1. 397 But it must be noted that service requests for future LSPs are known 398 in terms of the LSPs whose paths are computed and for which resources 399 are scheduled. For example, if the requester of a future LSP decides 400 to cancel the request or to modify the request, the PCE must be able 401 to map this to the resources that were reserved. When the LSP or the 402 request for the LSP with a number of time intervals is cancelled, the 403 PCE must release the resources that were reserved on each of the 404 links along the path of the LSP in every time intervals from the TED. 405 If the bandwidth reserved on a link for the LSP is B from time T2 to 406 T3 and the unreserved bandwidth on the link is B2 from T2 to T3, B is 407 added to the link for the time interval from T2 to T3 and the 408 unreserved bandwidth on the link from T2 to T3 will be B2 + B. 410 This suggests that the PCE needs an LSP Database (LSP-DB) 411 [I-D.ietf-pce-stateful-pce] that contains information not only about 412 LSPs that are active in the network, but also those that are planned. 413 The information for an LSP stored in the LSP-DB includes for each 414 time interval that applies to the LSP: the time interval, the paths 415 computed for the LSP satisfying the constraints in the time interval, 416 and the resources such as bandwidth reserved for the LSP in the time 417 interval. See also Section 2.3 419 It is an implementation choice how the TED and LSP-DB are stored both 420 for dynamic use and for recovery after failure or restart, but it may 421 be noted that all of the information in the scheduled TED can be 422 recovered from the active network state and from the scheduled LSP- 423 DB. 425 4. Architecture Overview 427 The architectural considerations and conclusions described in the 428 previous section lead to the architecture described in this section 429 and illustrated in Figure 2. The interfaces and interactions shown 430 on the figure and labeled (a) through (f) are described in 431 Section 4.1. 433 ------------------- 434 | Service Requester | 435 ------------------- 436 ^ 437 a| 438 v 439 ------- b -------- 440 | |<--->| LSP-DB | 441 | | -------- 442 | PCE | 443 | | c ----- 444 | |<---->| TED | 445 ------- ----- 446 ^ ^ 447 | | 448 d| |e 449 | | 450 ------+-----+-------------------- 451 | | Network 452 | -------- 453 | | Router | 454 v -------- 455 ----- ----- 456 | LSR |<------>| LSR | 457 ----- f ----- 459 Figure 2: Reference Architecture for Scheduled Use of Resources 461 4.1. Service Request 463 As shown in Figure 2, some component in the network requests a 464 service. This may be an application, an NMS, an LSR, or any 465 component that qualifies as a Path Computation Client (PCC). We show 466 this on the figure as the "Service Requester" and it sends a request 467 to the PCE for an LSP to be set up at some time (either now or in the 468 future). The request, indicated on Figure 2 by the arrow (a), 469 includes all of the parameters of the LSP that the requester wishes 470 to supply such as bandwidth, start time, and end time. Note that the 471 requester in this case may be the LSR shown in the figure or may be a 472 distinct system. 474 The PCE enters the LSP request in its LSP-DB (b), and uses 475 information from its TED (c) to compute a path that satisfies the 476 constraints (such as bandwidth) for the LSP in the time interval from 477 the start time to the end time. It updates the future resource 478 availability in the TED so that further path computations can take 479 account of the scheduled resource usage. It stores the path for the 480 LSP into the LSP-DB (b). 482 When it is time (i.e., at the start time) for the LSP to be set up, 483 the PCE sends a PCEP Initiate request to the head end LSR (d) 484 providing the path to be signaled as well as other parameters such as 485 the bandwidth of the LSP. 487 As the LSP is signaled between LSRs (f) the use of resources in the 488 network is updated and distributed using the IGP. This information 489 is shared with the PCE either through the IGP or using BGP-LS (e), 490 and the PCE updates the information stored in its TED (c). 492 After the LSP is set up, the head end LSR sends a PCEP LSP State 493 Report (PCRpt message) to the PCE (d). The report contains the 494 resources such as bandwidth usage for the LSP. The PCE updates the 495 status of the LSP in the LSP-DB according to the report. 497 When an LSP is no longer required (either because the Service 498 Requester has cancelled the request, or because the LSP's scheduled 499 lifetime has expired) the PCE can remove it. If the LSP is currently 500 active, the PCE instructs the head-end LSR to tear it down (d), and 501 the network resource usage will be updated by the IGP and advertised 502 back to the PCE through the IGP or BGP-LS (e). Once the LSP is no 503 longer active, the PCE can remove it from the LSP-DB (b). 505 4.2. Initialization and Recovery 507 When a PCE in the architecture shown in Figure 2 is initialized, it 508 must learn state from the network, from its stored databases, and 509 potentially from other PCEs in the network. 511 The first step is to get an accurate view of the topology and 512 resource availability in the network. This would normally involve 513 reading the state direct from the network via the IGP or BGP-LS (e), 514 but might include receiving a copy of the TED from another PCE. Note 515 that a TED stored from a previous instantiation of the PCE is 516 unlikely to be valid. 518 Next, the PCE must construct a time-based TED to show scheduled 519 resource usage. How it does this is implementation specific and this 520 document does not dictate any particular mechanism: it may recover a 521 time-based TED previously saved to non-volatile storage, or it may 522 reconstruct the time-based TED from information retrieved from the 523 LSP-DB previously saved to non-volatile storage. If there is more 524 than one PCE active in the network, the recovering PCE will need to 525 synchronize the LSP-DB and time-based TED with other PCEs (see 526 Section 4.3). 528 Note that the stored LSP-DB needs to include the intended state and 529 actual state of the LSPs so that when a PCE recovers it is able to 530 determine what actions are necessary. 532 4.3. Synchronization Between PCEs 534 If there is more than one PCE that supports scheduling active in the 535 network, it is important to achieve some consistency between the 536 scheduled TED and scheduled LSP-DB held by the PCEs. 538 [RFC7399] answers various questions around synchronization between 539 the PCEs. It should be noted that the time-based "scheduled" 540 information adds another dimension to the issue of synchronization 541 between PCEs. It should also be noted that a deployment may use a 542 primary PCE and the have other PCEs as backup, where a backup PCE can 543 take over only in the event of a failure of the primary PCE. 544 Alternatively, the PCEs may share the load at all times. The choice 545 of the synchronization technique is largely dependent on the 546 deployment of PCEs in the network. 548 One option for ensuring that multiple PCEs use the same scheduled 549 information is simply to have the PCEs driven from the same shared 550 database, but it is likely to be inefficient and interoperation 551 between multiple implementations will be harder. 553 Another option is for each PCE to be responsible for its own 554 scheduled database and to utilize some distributed database 555 synchronization mechanism to have consistent information. Depending 556 on the implementation, this could be efficient, but interoperation 557 between heterogeneous implementations is still hard. 559 A further approach is to utilize PCEP messages to synchronize the 560 scheduled state between PCEs. This approach would work well if the 561 number of PCEs which support scheduling is small, but as the number 562 increases considerable message exchange needs to happen to keep the 563 scheduled databases synchronized. Future solutions could also 564 utilize some synchronization optimization techniques for efficiency. 565 Another variation would be to request information from other PCEs for 566 a particular time slice, but this might have impact on the 567 optimization algorithm. 569 5. Multi-Domain Considerations 571 Multi-domain path computation usually requires some form of 572 cooperation between PCEs each of which has responsibility for 573 determining a segment of the end-to-end path in the domain for which 574 it has computationonal responsiblity. When computing a scheduled 575 path, resources need to be booked in all of the domains that the path 576 will cross so that they are available when the LSP is finlly 577 signalled. 579 Per-domain path computation [RFC5152] is not an appropriate mechanism 580 when a scheduled LSP is being computed because the computation 581 requests at downstream PCEs are only triggered by signaling. 582 However, a similar mechanism could be used where cooperating PCEs 583 exchange PCReq messages for a scheduled LSP as shown in Figure 3. In 584 this case the service requester asks for a scheduled LSP that will 585 span two domains (a). PCE1 computes a path across Domain 1 and 586 reserves the resources, and also asks PCE2 to compute and reserve in 587 Domain 2 (b). PCE2 may return a full path, or could return a path 588 key [RFC5520]. When it is time for LSP setup PCE1 triggers the head- 589 end LSR (c) and the LSP is signaled (d). If a path key is used, the 590 entry LSR in Domain 2 will consult PCE2 for the path expansion (e) 591 before completing signaling (f). 593 ------------------- 594 | Service Requester | 595 ------------------- 596 ^ 597 a| 598 v 599 ------ b ------ 600 | |<---------------->| | 601 | PCE1 | | PCE2 | 602 | | | | 603 ------ ------ 604 ^ ^ 605 | | 606 c| e| 607 | | 608 ----+----------------- ----+----------------- 609 | | Domain 1 | | | Domain 2 | 610 | v | | v | 611 | ----- d ----- | | ----- f ----- | 612 | | LSR |<--->| LSR |<-+--+->| LSR |<--->| LSR | | 613 | ----- ----- | | ----- ----- | 614 ---------------------- ---------------------- 616 Figure 3: Per-Domain Path Computation for Scheduled LSPs 618 Another mechanism for PCE cooperation in multi-domain LSP setup is 619 Backward- Recursive Path Computation (BRPC) [RFC5441]. This approach 620 relies on the downstream domain supply a variety of potential paths 621 to the upstream domain. Although BRPC can arrive at a more optimal 622 end-to-end path than per-domain path computation, it is not well 623 suited to LSP scheduling because the downstream PCE would need to 624 reserve resources on all of the potential paths and then release 625 those that the upstream PCE announced it did not plan to use. 627 Finally we should consider hierarchical PCE (H-PCE) [RFC6805]. This 628 mode of operatation is similar to that shown in Figure 3, but a 629 parent PCE is used to coordinate the requests to the child PCEs 630 resulting in better visibility of the end-to-end path and better 631 coordination of the resource booking. The sequenced flow of control 632 is shown in Figure 4. 634 ------------------- 635 | Service Requester | 636 ------------------- 637 ^ 638 a| 639 v 640 -------- 641 | | 642 | Parent | 643 | PCE | 644 | | 645 -------- 646 ^ ^ b 647 b| |_______________________ 648 | | 649 v v 650 ------ ------ 651 | | | | 652 | PCE1 | | PCE2 | 653 | | | | 654 ------ ------ 655 ^ ^ 656 | | 657 c| e| 658 | | 659 ----+----------------- ----+----------------- 660 | | Domain 1 | | | Domain 2 | 661 | v | | v | 662 | ----- d ----- | | ----- f ----- | 663 | | LSR |<--->| LSR |<-+--+->| LSR |<--->| LSR | | 664 | ----- ----- | | ----- ----- | 665 ---------------------- ---------------------- 667 Figure 4: Hierarchical PCE for Path Computation for Scheduled LSPs 669 6. Security Considerations 671 The protocol implications of scheduled resources are unchanged from 672 "on-demand" LSP computation and setup. A discussion of securing PCEP 673 is found in [RFC5440] and work to extend that security is provided in 674 [I-D.ietf-pce-pceps]. Furthermore, the path key mechanism described 675 in [RFC5520] can be used to enhance privacy and security. 677 Similarly, there is no change to the security implications for the 678 signaling of scheduled LSPs. A discussion of the security of the 679 signaling protocols that would be used is found in [RFC5920]. 681 However, the use of scheduled LSPs extends the attack surface for a 682 PCE-enabled TE system by providing a larger (logically infinte) 683 window during which an attack can be initiated or planned. That is, 684 if bogus scheduled LSPs can be requested, they can be entered into 685 the LSP-DB, then a large number of LSPs could be launched, or 686 significant network resources could be blocked. Of course, 687 additional authorization could be applied for access to LSP 688 scheduling, and diagnostic tools could inspect the LSP DB to spot 689 attacks. 691 7. IANA Considerations 693 This architecture document makes no request for IANA action. 695 8. Acknowledgements 697 This work has benefited from the discussions of resource scheduling 698 over the years. In particular the DRAGON project [DRAGON] and 699 [I-D.yong-ccamp-ason-gmpls-autobw-service] both of which provide 700 approaches to auto-bandwidth services in GMPLS networks. 702 Mehmet Toy, Lei Liu, and Khuzema Pithewan contributed the earlier 703 version of [I-D.chen-teas-frmwk-tts]. We would like to thank the 704 authors of that draft on Temporal Tunnel Services. 706 Thanks to Michael Scharf and Daniele Ceccarelli for useful comments 707 on this work. 709 9. Contributors 711 The following people contributed to discussions that led to the 712 development of this document: 714 Dhruv Dhody 715 Email: dhruv.dhody@huawei.com 717 10. Informative References 719 [DRAGON] National Science Foundation, "http://www.maxgigapop.net/ 720 wp-content/uploads/The-DRAGON-Project.pdf". 722 [I-D.chen-teas-frmwk-tts] 723 Chen, H., Toy, M., Liu, L., and K. Pithewan, "Framework 724 for Temporal Tunnel Services", draft-chen-teas-frmwk- 725 tts-01 (work in progress), March 2016. 727 [I-D.ietf-pce-pceps] 728 Lopez, D., Dios, O., Wu, W., and D. Dhody, "Secure 729 Transport for PCEP", draft-ietf-pce-pceps-11 (work in 730 progress), January 2017. 732 [I-D.ietf-pce-stateful-pce] 733 Crabbe, E., Minei, I., Medved, J., and R. Varga, "PCEP 734 Extensions for Stateful PCE", draft-ietf-pce-stateful- 735 pce-18 (work in progress), December 2016. 737 [I-D.yong-ccamp-ason-gmpls-autobw-service] 738 Yong, L. and Y. Lee, "ASON/GMPLS Extension for Reservation 739 and Time Based Automatic Bandwidth Service", draft-yong- 740 ccamp-ason-gmpls-autobw-service-00 (work in progress), 741 October 2006. 743 [RFC3209] Awduche, D., Berger, L., Gan, D., Li, T., Srinivasan, V., 744 and G. Swallow, "RSVP-TE: Extensions to RSVP for LSP 745 Tunnels", RFC 3209, DOI 10.17487/RFC3209, December 2001, 746 . 748 [RFC3473] Berger, L., Ed., "Generalized Multi-Protocol Label 749 Switching (GMPLS) Signaling Resource ReserVation Protocol- 750 Traffic Engineering (RSVP-TE) Extensions", RFC 3473, 751 DOI 10.17487/RFC3473, January 2003, 752 . 754 [RFC3945] Mannie, E., Ed., "Generalized Multi-Protocol Label 755 Switching (GMPLS) Architecture", RFC 3945, 756 DOI 10.17487/RFC3945, October 2004, 757 . 759 [RFC4655] Farrel, A., Vasseur, J., and J. Ash, "A Path Computation 760 Element (PCE)-Based Architecture", RFC 4655, 761 DOI 10.17487/RFC4655, August 2006, 762 . 764 [RFC5063] Satyanarayana, A., Ed. and R. Rahman, Ed., "Extensions to 765 GMPLS Resource Reservation Protocol (RSVP) Graceful 766 Restart", RFC 5063, DOI 10.17487/RFC5063, October 2007, 767 . 769 [RFC5152] Vasseur, JP., Ed., Ayyangar, A., Ed., and R. Zhang, "A 770 Per-Domain Path Computation Method for Establishing Inter- 771 Domain Traffic Engineering (TE) Label Switched Paths 772 (LSPs)", RFC 5152, DOI 10.17487/RFC5152, February 2008, 773 . 775 [RFC5440] Vasseur, JP., Ed. and JL. Le Roux, Ed., "Path Computation 776 Element (PCE) Communication Protocol (PCEP)", RFC 5440, 777 DOI 10.17487/RFC5440, March 2009, 778 . 780 [RFC5441] Vasseur, JP., Ed., Zhang, R., Bitar, N., and JL. Le Roux, 781 "A Backward-Recursive PCE-Based Computation (BRPC) 782 Procedure to Compute Shortest Constrained Inter-Domain 783 Traffic Engineering Label Switched Paths", RFC 5441, 784 DOI 10.17487/RFC5441, April 2009, 785 . 787 [RFC5520] Bradford, R., Ed., Vasseur, JP., and A. Farrel, 788 "Preserving Topology Confidentiality in Inter-Domain Path 789 Computation Using a Path-Key-Based Mechanism", RFC 5520, 790 DOI 10.17487/RFC5520, April 2009, 791 . 793 [RFC5920] Fang, L., Ed., "Security Framework for MPLS and GMPLS 794 Networks", RFC 5920, DOI 10.17487/RFC5920, July 2010, 795 . 797 [RFC6805] King, D., Ed. and A. Farrel, Ed., "The Application of the 798 Path Computation Element Architecture to the Determination 799 of a Sequence of Domains in MPLS and GMPLS", RFC 6805, 800 DOI 10.17487/RFC6805, November 2012, 801 . 803 [RFC7399] Farrel, A. and D. King, "Unanswered Questions in the Path 804 Computation Element Architecture", RFC 7399, 805 DOI 10.17487/RFC7399, October 2014, 806 . 808 [RFC7752] Gredler, H., Ed., Medved, J., Previdi, S., Farrel, A., and 809 S. Ray, "North-Bound Distribution of Link-State and 810 Traffic Engineering (TE) Information Using BGP", RFC 7752, 811 DOI 10.17487/RFC7752, March 2016, 812 . 814 Authors' Addresses 816 Yan Zhuang 817 Huawei 818 101 Software Avenue, Yuhua District 819 Nanjing, Jiangsu 210012 820 China 822 Email: zhuangyan.zhuang@huawei.com 823 Qin Wu 824 Huawei 825 101 Software Avenue, Yuhua District 826 Nanjing, Jiangsu 210012 827 China 829 Email: bill.wu@huawei.com 831 Huaimo Chen 832 Huawei 833 Boston, MA 834 US 836 Email: huaimo.chen@huawei.com 838 Adrian Farrel 839 Juniper Networks 841 Email: afarrel@juniper.net