idnits 2.17.1 draft-ietf-teas-pce-native-ip-14.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 (November 25, 2020) is 1245 days in the past. Is this intentional? Checking references for intended status: Informational ---------------------------------------------------------------------------- ** Obsolete normative reference: RFC 7752 (Obsoleted by RFC 9552) == Outdated reference: A later version (-30) exists of draft-ietf-pce-pcep-extension-native-ip-09 Summary: 1 error (**), 0 flaws (~~), 2 warnings (==), 1 comment (--). Run idnits with the --verbose option for more detailed information about the items above. -------------------------------------------------------------------------------- 2 TEAS Working Group A. Wang 3 Internet-Draft China Telecom 4 Intended status: Informational B. Khasanov 5 Expires: May 29, 2021 Yandex LLC 6 Q. Zhao 7 Etheric Networks 8 H. Chen 9 Futurewei 10 November 25, 2020 12 PCE in Native IP Network 13 draft-ietf-teas-pce-native-ip-14 15 Abstract 17 This document defines an architecture for providing traffic 18 engineering in a native IP network using multiple BGP sessions and a 19 Path Computation Element (PCE)-based central control mechanism. It 20 defines the Central Control Dynamic Routing (CCDR) procedures and 21 identifies needed extensions for the Path Computation Element 22 Communication Protocol (PCEP). 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 May 29, 2021. 41 Copyright Notice 43 Copyright (c) 2020 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. Terminology . . . . . . . . . . . . . . . . . . . . . . . . . 3 60 3. CCDR Architecture in Simple Topology . . . . . . . . . . . . 4 61 4. CCDR Architecture in Large Scale Topology . . . . . . . . . . 5 62 5. CCDR Multiple BGP Sessions Strategy . . . . . . . . . . . . . 6 63 6. PCEP Extension for Key Parameters Delivery . . . . . . . . . 8 64 7. Deployment Consideration . . . . . . . . . . . . . . . . . . 9 65 7.1. Scalability . . . . . . . . . . . . . . . . . . . . . . . 9 66 7.2. High Availability . . . . . . . . . . . . . . . . . . . . 9 67 7.3. Incremental deployment . . . . . . . . . . . . . . . . . 10 68 7.4. Loop Avoidance . . . . . . . . . . . . . . . . . . . . . 10 69 8. Security Considerations . . . . . . . . . . . . . . . . . . . 10 70 9. IANA Considerations . . . . . . . . . . . . . . . . . . . . . 10 71 10. Acknowledgement . . . . . . . . . . . . . . . . . . . . . . . 11 72 11. References . . . . . . . . . . . . . . . . . . . . . . . . . 11 73 11.1. Normative References . . . . . . . . . . . . . . . . . . 11 74 11.2. Informative References . . . . . . . . . . . . . . . . . 12 75 Authors' Addresses . . . . . . . . . . . . . . . . . . . . . . . 12 77 1. Introduction 79 [RFC8283], based on an extension of the PCE architecture described in 80 [RFC4655] , introduced a broader use applicability for a PCE as a 81 central controller. PCEP is continued to be used as the protocol 82 between PCE and PCC. Building on this work, this document describes 83 a solution using a PCE for centralized control in a native IP network 84 to provide End-to-End(E2E) performance assurance and QoS for traffic. 85 The solution combines the use of distributed routing protocols and a 86 centralized controller, referred to as Centralized Control Dynamic 87 Routing(CCDR). 89 [RFC8735] describes the scenarios and simulation results for traffic 90 engineering in a native IP network based on use of a CCDR 91 architecture. Per [RFC8735], the architecture for traffic 92 engineering in a native IP network should meet the following 93 criteria: 95 o Same solution for native IPv4 and IPv6 traffic. 97 o Support for intra-domain and inter-domain scenarios. 99 o Achieve End to End traffic assurance, with determined QoS 100 behavior, for traffic requiring a service assurance(prioritized 101 traffic). 103 o No changes in a router's forwarding behavior. 105 o Capability to use the power of centralized control and the 106 flexibility/robustness of a distributed network control plane. 108 o Support different network requirements such as large traffic 109 amount and prefix scale. 111 o Ability to adjust the optimal path dynamically upon the changes of 112 network status. No need for physical links resources reservations 113 to be done in advance. 115 Building on the above documents, this document defines an 116 architecture meeting these requirements by using multiple a BGP 117 session strategy and a PCE as the centralized controller. The 118 architecture depends on the central control (PCE) element to compute 119 the optimal path, and utilizes the dynamic routing behavior of IGP/ 120 BGP protocols for forwarding the traffic. 122 The related PCEP extensions are provided in draft 123 [I-D.ietf-pce-pcep-extension-native-ip]. 125 2. Terminology 127 This document uses the following terms defined in [RFC5440]: 129 o PCE 131 o PCEP 133 o PCC 135 Other terms are defined in this document: 137 o CCDR: Central Control Dynamic Routing 139 o E2E: End to End 141 o ECMP: Equal-Cost Multipath 143 o RR: Route Reflector 144 o SDN: Software Defined Network 146 3. CCDR Architecture in Simple Topology 148 Figure 1 illustrates the CCDR architecture for traffic engineering in 149 simple topology. The topology is comprised by four devices which are 150 SW1, SW2, R1, R2. There are multiple physical links between R1 and 151 R2. Traffic between prefix PF11(on SW1) and prefix PF21(on SW2) is 152 normal traffic, traffic between prefix PF12(on SW1) and prefix 153 PF22(on SW2) is priority traffic that should be treated accordingly. 155 +-----+ 156 +----------+ PCE +--------+ 157 | +-----+ | 158 | | 159 | BGP Session 1(lo11/lo21)| 160 +-------------------------+ 161 | | 162 | BGP Session 2(lo12/lo22)| 163 +-------------------------+ 164 PF12 | | PF22 165 PF11 | | PF21 166 +---+ +-----+-----+ +-----+-----+ +---+ 167 |SW1+---------+(lo11/lo12)+-------------+(lo21/lo22)+--------------+SW2| 168 +---+ | R1 +-------------+ R2 | +---+ 169 +-----------+ +-----------+ 171 Figure 1: CCDR architecture in simple topology 173 In the Intra-AS scenario, IGP and BGP combined with a PCE are 174 deployed between R1 and R2. In the inter-AS scenario, only the 175 native BGP protocol is deployed. The traffic between each address 176 pair may change in real time and the corresponding source/destination 177 addresses of the traffic may also change dynamically. 179 The key ideas of the CCDR architecture for this simple topology are 180 the following: 182 o Build two BGP sessions between R1 and R2, via the different 183 loopback addresses on these routers. 185 o Using the PCE, set the explicit peer route on R1 and R2 for BGP 186 next hop to different physical link addresses between R1 and R2. 187 The explicit peer route can be set in the format of a static 188 route, which is different from the route learned from the IGP 189 protocol. 191 o Send different prefixes via the established BGP sessions. For 192 example, PF11/PF21 via the BGP session 1 and PF12/PF22 via the BGP 193 session 2. 195 After the above actions, the bi-directional traffic between the PF11 196 and PF21, and the bi-directional traffic between PF12 and PF22 will 197 go through different physical links between R1 and R2. 199 If there is more traffic between PF12 and PF22 that needs to be 200 assured , one can add more physical links between R1 and R2 to reach 201 the next hop for BGP session 2. In this case, the prefixes that are 202 advertised by the BGP peers need not be changed. 204 If, for example, there is bi-directional priority traffic from 205 another address pair (for example prefix PF13/PF23), and the total 206 volume of priority traffic does not exceed the capacity of the 207 previously provisioned physical links, one need only to advertise the 208 newly added source/destination prefixes via the BGP session 2. The 209 bi-directional traffic between PF13/PF23 will go through the same 210 assigned dedicated physical links as the traffic between PF12/PF22. 212 Such a decoupling philosophy of the IGP/BGP traffic link and the 213 physical link achieves a flexible control capability for the network 214 traffic, achieving the needed QoS assurance to meet the application's 215 requirement. The router needs only support native IP and multiple 216 BGP sessions setup via different loopback addresses. 218 4. CCDR Architecture in Large Scale Topology 220 When the priority traffic spans across a large scale network, as that 221 illustrated in Figure 2, the multiple BGP sessions cannot be 222 established hop by hop, for example, the iBGP within one AS. 224 For such a scenario, we propose using a Route Reflector (RR) 225 [RFC4456] to achieve a similar effect. Every edge router will 226 establish two BGP sessions with the RR via different loopback 227 addresses respectively. The other steps for traffic differentiation 228 are the same as that described in the CCDR architecture for the 229 simple topology. 231 As shown in Figure 2, if we select R3 as the RR, every edge router(R1 232 and R7 in this example) will build two BGP session with the RR. If 233 the PCE selects the dedicated path as R1-R2-R4-R7, then the operator 234 should set the explicit peer routes via PCEP protocol on these 235 routers respectively, pointing to the BGP next hop (loopback 236 addresses of R1 and R7, which are used to send the prefix of the 237 priority traffic) to the selected forwarding address. 239 +-----+ 240 +----------------+ PCE +------------------+ 241 | +--+--+ | 242 | | | 243 | | | 244 | ++-+ | 245 +------------------+R3+-------------------+ 246 PF12 | +--+ | PF22 247 PF11 | | PF21 248 +---+ ++-+ +--+ +--+ +-++ +---+ 249 |SW1+-------+R1+----------+R5+----------+R6+---------+R7+--------+SW2| 250 +---+ ++-+ +--+ +--+ +-++ +---+ 251 | | 252 | | 253 | +--+ +--+ | 254 +------------+R2+----------+R4+-----------+ 255 +--+ +--+ 256 Figure 2: CCDR architecture in large scale network 258 5. CCDR Multiple BGP Sessions Strategy 260 Generally, different applications may require different QoS criteria, 261 which may include: 263 o Traffic that requires low latency and is not sensitive to packet 264 loss. 266 o Traffic that requires low packet loss and can endure higher 267 latency. 269 o Traffic that requires low jitter. 271 These different traffic requirements can be summarized in the 272 following table: 274 +----------------+-------------+---------------+-----------------+ 275 | Prefix Set No. | Latency | Packet Loss | Jitter | 276 +----------------+-------------+---------------+-----------------+ 277 | 1 | Low | Normal | Don't care | 278 +----------------+-------------+---------------+-----------------+ 279 | 2 | Normal | Low | Dont't care | 280 +----------------+-------------+---------------+-----------------+ 281 | 3 | Normal | Normal | Low | 282 +----------------+-------------+---------------+-----------------+ 283 Table 1. Traffic Requirement Criteria 285 For Prefix Set No.1, we can select the shortest distance path to 286 carry the traffic; for Prefix Set No.2, we can select the path that 287 has end to end under-loading links; for Prefix Set No.3, we can let 288 traffic pass over a determined single path, as no Equal Cost 289 Multipath (ECMP) distribution on the parallel links is desired. 291 It is almost impossible to provide an End-to-End (E2E) path 292 efficiently with latency, jitter, and packet loss constraints to meet 293 the above requirements in a large scale IP-based network only using a 294 distributed routing protocol, but these requirements can be met with 295 the assistance of PCE, as that described in [RFC4655] and [RFC8283]. 296 The PCE will have the overall network view, ability to collect the 297 real-time network topology, and the network performance information 298 about the underlying network. The PCE can select the appropriate 299 path to meet the various network performance requirements for 300 different traffic. 302 The architecture to implement the CCDR Multiple BGP sessions strategy 303 is as the follows: 305 The PCE will be responsible for the optimal path computation for the 306 different priority classes of traffic: 308 o PCE collects topology information via BGP-LS [RFC7752] and link 309 utilization information via the existing Network Monitoring System 310 (NMS) from the underlying network. 312 o PCE calculates the appropriate path based upon the application's 313 requirements, and sends the key parameters to edge/RR routers(R1, 314 R7 and R3 in Figure 3) to establish multiple BGP sessions. The 315 loopback addresses used for the BGP sessions should be planned in 316 advance and distributed in the domain. 318 o PCE sends the route information to the routers (R1,R2,R4,R7 in 319 Figure 3) on the forwarding path via PCEP 320 [I-D.ietf-pce-pcep-extension-native-ip] , to build the path to the 321 BGP next-hop of the advertised prefixes. 323 o PCE send the prefixes information to the PCC for advertising 324 different prefixes via the specified BGP session. 326 o If the priority traffic prefixes were changed but the total volume 327 of priority traffic does not exceed the physical capacity of the 328 previous E2E path, the PCE needs only change the prefixed 329 advertised via the edge routers (R1,R7 in Figure 3). 331 o If the volume of priority traffic exceeds the capacity of the 332 previous calculated path, the PCE can recalculate and add the 333 appropriate paths to accommodate the exceeding traffic. After 334 that, the PCE needs to update the on-path routers to build the 335 forwarding path hop by hop. 337 +------------+ 338 | Application| 339 +------+-----+ 340 | 341 +--------+---------+ 342 +----------+SDN Controller/PCE+-----------+ 343 | +--------^---------+ | 344 | | | 345 | | | 346 PCEP | BGP-LS|PCEP | PCEP 347 | | | 348 | +v-+ | 349 +------------------+R3+-------------------+ 350 PF12 | +--+ | PF22 351 PF11 | | PF21 352 +---+ +v-+ +--+ +--+ +-v+ +---+ 353 |SW1+-------+R1+----------+R5+----------+R6+---------+R7+--------+SW2| 354 +---+ ++-+ +--+ +--+ +-++ +---+ 355 | | 356 | | 357 | +--+ +--+ | 358 +------------+R2+----------+R4+-----------+ 360 Figure 3: CCDR architecture for Multi-BGP sessions deployment 362 6. PCEP Extension for Key Parameters Delivery 364 The PCEP protocol needs to be extended to transfer the following key 365 parameters: 367 o Peer information that is used to build the BGP session 369 o Explicit route information to BGP next hop of advertised prefixes 371 o Advertised prefixes and their associated BGP session. 373 Once the router receives such information, it should establish the 374 BGP session with the peer appointed in the PCEP message, build the 375 end to end dedicated path hop by hop, and advertise the prefixes that 376 contained in the corresponding PCEP message. 378 The dedicated path is preferred by making sure that the explicit 379 route created by PCE has the higher priority (lower route preference) 380 than the route information created by other dynamic protocols. 382 All above dynamically created states (BGP sessions, Explicit route, 383 Prefix advertised prefix, ) will be cleared on the expiration of 384 state timeout interval which is based on the existing Stateful PCE 385 [RFC8231] and PCECC [RFC8283] mechanism. 387 Regarding the BGP session, it is not different from that configured 388 via the manual or NETCONF/YANG. Different BGP sessions are used 389 mainly for the clarification of the network prefixes, which can be 390 differentiated via the different BGP nexthop. Based on this 391 strategy, if we manipulate the path to the BGP nexthop, then the path 392 to the prefixes that advertised with the BGP sessions will be changed 393 accordingly. Details of communications between PCEP and BGP 394 subsystems in the router's control plane are out of scope of this 395 draft and will be described in a separate 396 [I-D.ietf-pce-pcep-extension-native-ip] . 398 7. Deployment Consideration 400 7.1. Scalability 402 In the CCDR architecture, only the edge routers that connects with 403 PCE are responsible for the prefixes advertisement via the multiple 404 BGP sessions deployment. The route information for these prefixes 405 within the on-path routers is distributed via the BGP protocol. 407 For multiple domains deployment, the PCE, or the pool of PCEs 408 responsible for these domains, needs only to control the edge router 409 to build the multiple EBGP sessions; all other procedures are the 410 same as within one domain. 412 Unlike the solution from BGP Flowspec, the on-path router needs only 413 to keep the specific policy routes for the BGP next-hop of the 414 differentiate prefixes, not the specific routes to the prefixes 415 themselves. This lessens the burden of the table size of policy 416 based routes for the on-path routers; and has more expandability 417 compared with BGP flowspec or Openflow solutions. For example, if we 418 want to differentiate 1000 prefixes from the normal traffic, CCDR 419 needs only one explicit peer route in every on-path router, whereas 420 the BGP flowspec or Openflow solutions need 1000 policy routes on 421 them. 423 7.2. High Availability 425 The CCDR architecture is based on the use of the native IP protocol. 426 If the PCE fails, the forwarding plane will not be impacted, as the 427 BGP sessions between all the devices will not flap and the forwarding 428 table remains unchanged. 430 If one node on the optimal path is failed, the priority traffic will 431 fall over to the best-effort forwarding path. One can even design 432 several paths to load balance/hot-standby the priority traffic to 433 meet the path failure situation. 435 For ensuring high availability of a PCE/SDN-controllers architecture, 436 an operator should rely on existing high availability solutions for 437 SDN controllers, such as clustering technology and deployment. 439 7.3. Incremental deployment 441 Not every router within the network will support the PCEP extension 442 defined in [I-D.ietf-pce-pcep-extension-native-ip] simultaneously. 444 For such situations, routers on the edge of a domain can be upgraded 445 first, and then the traffic can be prioritized between different 446 domains. Within each domain, the traffic will be forwarded along the 447 best-effort path. A Service provider can selectively upgrade the 448 routers on each domain in sequence. 450 7.4. Loop Avoidance 452 A PCE needs to assure calculation of the E2E path based on the status 453 of network and the service requirements in real-time. 455 The PCE needs to consider the explicit route deployment order (for 456 example, from tail rotuer to head rotuer) to eliminate any possible 457 transient traffic loop. 459 8. Security Considerations 461 The setup of BGP sessions, prefix advertisement, and explicit peer 462 route establishment are all controlled by the PCE. To prevent a 463 bogus PCE sending harmful messages to the network nodes, the network 464 devices should authenticate the validity of the PCE and ensure a 465 secure communication channel between them. Mechanisms described in 466 [RFC8253] should be used. 468 The CCDR architecture does not require the changes of forwarding 469 behavior on the underlay devices, there will no additional security 470 impacts on these devices. 472 9. IANA Considerations 474 This document does not require any IANA actions. 476 10. Acknowledgement 478 The author would like to thank Deborah Brungard, Adrian Farrel, 479 Vishnu Beeram, Lou Berger, Dhruv Dhody, Raghavendra Mallya , Mike 480 Koldychev, Haomian Zheng, Penghui Mi, Shaofu Peng and Jessica Chen 481 for their supports and comments on this draft. 483 11. References 485 11.1. Normative References 487 [RFC4456] Bates, T., Chen, E., and R. Chandra, "BGP Route 488 Reflection: An Alternative to Full Mesh Internal BGP 489 (IBGP)", RFC 4456, DOI 10.17487/RFC4456, April 2006, 490 . 492 [RFC4655] Farrel, A., Vasseur, J., and J. Ash, "A Path Computation 493 Element (PCE)-Based Architecture", RFC 4655, 494 DOI 10.17487/RFC4655, August 2006, 495 . 497 [RFC5440] Vasseur, JP., Ed. and JL. Le Roux, Ed., "Path Computation 498 Element (PCE) Communication Protocol (PCEP)", RFC 5440, 499 DOI 10.17487/RFC5440, March 2009, 500 . 502 [RFC7752] Gredler, H., Ed., Medved, J., Previdi, S., Farrel, A., and 503 S. Ray, "North-Bound Distribution of Link-State and 504 Traffic Engineering (TE) Information Using BGP", RFC 7752, 505 DOI 10.17487/RFC7752, March 2016, 506 . 508 [RFC8231] Crabbe, E., Minei, I., Medved, J., and R. Varga, "Path 509 Computation Element Communication Protocol (PCEP) 510 Extensions for Stateful PCE", RFC 8231, 511 DOI 10.17487/RFC8231, September 2017, 512 . 514 [RFC8253] Lopez, D., Gonzalez de Dios, O., Wu, Q., and D. Dhody, 515 "PCEPS: Usage of TLS to Provide a Secure Transport for the 516 Path Computation Element Communication Protocol (PCEP)", 517 RFC 8253, DOI 10.17487/RFC8253, October 2017, 518 . 520 [RFC8283] Farrel, A., Ed., Zhao, Q., Ed., Li, Z., and C. Zhou, "An 521 Architecture for Use of PCE and the PCE Communication 522 Protocol (PCEP) in a Network with Central Control", 523 RFC 8283, DOI 10.17487/RFC8283, December 2017, 524 . 526 [RFC8735] Wang, A., Huang, X., Kou, C., Li, Z., and P. Mi, 527 "Scenarios and Simulation Results of PCE in a Native IP 528 Network", RFC 8735, DOI 10.17487/RFC8735, February 2020, 529 . 531 11.2. Informative References 533 [I-D.ietf-pce-pcep-extension-native-ip] 534 Wang, A., Khasanov, B., Fang, S., Tan, R., and C. Zhu, 535 "PCEP Extension for Native IP Network", draft-ietf-pce- 536 pcep-extension-native-ip-09 (work in progress), October 537 2020. 539 Authors' Addresses 541 Aijun Wang 542 China Telecom 543 Beiqijia Town, Changping District 544 Beijing 102209 545 China 547 Email: wangaj3@chinatelecom.cn 549 Boris Khasanov 550 Yandex LLC 551 Ulitsa Lva Tolstogo 16 552 Moscow 553 Russia 555 Email: bhassanov@yahoo.com 557 Quintin Zhao 558 Etheric Networks 559 1009 S CLAREMONT ST 560 SAN MATEO, CA 94402 561 USA 563 Email: qzhao@ethericnetworks.com 564 Huaimo Chen 565 Futurewei 566 Boston, MA 567 USA 569 Email: huaimo.chen@futurewei.com