idnits 2.17.1 draft-chen-pce-controller-bier-te-00.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 (September 24, 2020) is 1303 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) == Unused Reference: 'RFC8283' is defined on line 460, but no explicit reference was found in the text == Outdated reference: A later version (-13) exists of draft-ietf-bier-te-arch-08 == Outdated reference: A later version (-14) exists of draft-ietf-pce-pcep-extension-for-pce-controller-07 == Outdated reference: A later version (-13) exists of draft-ietf-pce-pcep-flowspec-10 == Outdated reference: A later version (-10) exists of draft-litkowski-pce-state-sync-08 == Outdated reference: A later version (-09) exists of draft-zhao-pce-pcep-extension-pce-controller-sr-07 ** Downref: Normative reference to an Informational RFC: RFC 4655 ** Downref: Normative reference to an Informational RFC: RFC 8283 Summary: 2 errors (**), 0 flaws (~~), 7 warnings (==), 1 comment (--). Run idnits with the --verbose option for more detailed information about the items above. -------------------------------------------------------------------------------- 2 PCE WG R. Chen 3 Internet-Draft B. Xu 4 Intended status: Standards Track ch. Zhu 5 Expires: March 28, 2021 ZTE Corporation 6 September 24, 2020 8 PCEP Procedures and Protocol Extensions for Using PCE as a Central 9 Controller (PCECC) of BIER-TE 10 draft-chen-pce-controller-bier-te-00 12 Abstract 14 This document specifies extensions to PCEP protocol when a PCE-based 15 controller is also responsible for configuring the forwarding actions 16 on the routers, in addition to computing the paths for packet flows 17 in a BIER-TE network and telling the edge routers what instructions 18 to attach to packets as they enter the network. 20 Status of This Memo 22 This Internet-Draft is submitted in full conformance with the 23 provisions of BCP 78 and BCP 79. 25 Internet-Drafts are working documents of the Internet Engineering 26 Task Force (IETF). Note that other groups may also distribute 27 working documents as Internet-Drafts. The list of current Internet- 28 Drafts is at https://datatracker.ietf.org/drafts/current/. 30 Internet-Drafts are draft documents valid for a maximum of six months 31 and may be updated, replaced, or obsoleted by other documents at any 32 time. It is inappropriate to use Internet-Drafts as reference 33 material or to cite them other than as "work in progress." 35 This Internet-Draft will expire on March 28, 2021. 37 Copyright Notice 39 Copyright (c) 2020 IETF Trust and the persons identified as the 40 document authors. All rights reserved. 42 This document is subject to BCP 78 and the IETF Trust's Legal 43 Provisions Relating to IETF Documents 44 (https://trustee.ietf.org/license-info) in effect on the date of 45 publication of this document. Please review these documents 46 carefully, as they describe your rights and restrictions with respect 47 to this document. Code Components extracted from this document must 48 include Simplified BSD License text as described in Section 4.e of 49 the Trust Legal Provisions and are provided without warranty as 50 described in the Simplified BSD License. 52 Table of Contents 54 1. Introduction . . . . . . . . . . . . . . . . . . . . . . . . 2 55 2. Conventions used in this document . . . . . . . . . . . . . . 3 56 3. PCECC BIER-TE Requirements . . . . . . . . . . . . . . . . . 3 57 4. Procedures for Using the PCE as the Central Controller 58 (PCECC) in BIER . . . . . . . . . . . . . . . . . . . . . . . 4 59 4.1. Stateful PCE Model . . . . . . . . . . . . . . . . . . . 4 60 4.2. New Functions . . . . . . . . . . . . . . . . . . . . . . 4 61 4.3. PCECC Capability Advertisement . . . . . . . . . . . . . 4 62 4.4. BIER Path Operations . . . . . . . . . . . . . . . . . . 4 63 4.4.1. PCECC Bit Index Explicit Replication (BIER)-TE . . . 5 64 4.4.1.1. PCECC BIER-TE information allocation . . . . . . 5 65 4.4.1.2. Redundant PCEs . . . . . . . . . . . . . . . . . 5 66 4.4.1.3. Re Delegation and Cleanup . . . . . . . . . . . . 5 67 4.4.1.4. Synchronization of BIER information Allocations . 5 68 4.5. PCEP messages . . . . . . . . . . . . . . . . . . . . . . 5 69 4.5.1. The OPEN Object . . . . . . . . . . . . . . . . . . . 6 70 4.5.1.1. PCECC Capability sub-TLV . . . . . . . . . . . . 6 71 4.5.2. PATH-SETUP-TYPE TLV . . . . . . . . . . . . . . . . . 6 72 4.5.3. CCI object . . . . . . . . . . . . . . . . . . . . . 6 73 4.5.3.1. BIER Encapsulation Sub-TLV . . . . . . . . . . . 8 74 4.5.3.2. Address TLVs . . . . . . . . . . . . . . . . . . 8 75 4.5.3.3. ROUTE-DISTINGUISHER TLV . . . . . . . . . . . . . 9 76 4.5.3.4. FEC object . . . . . . . . . . . . . . . . . . . 9 77 5. Security Considerations . . . . . . . . . . . . . . . . . . . 9 78 6. IANA Considerations . . . . . . . . . . . . . . . . . . . . . 9 79 7. Contributors . . . . . . . . . . . . . . . . . . . . . . . . 9 80 8. Acknowledgements . . . . . . . . . . . . . . . . . . . . . . 9 81 9. Normative References . . . . . . . . . . . . . . . . . . . . 10 82 Authors' Addresses . . . . . . . . . . . . . . . . . . . . . . . 11 84 1. Introduction 86 [RFC8283]introduces the architecture for PCE as a central controller 87 as an extension of the architecture described in[RFC4655] and assumes 88 the continued use of PCEP as the protocol used between PCE and PCC. 89 [RFC8283]further examines the motivations and applicability for PCEP 90 as a Southbound Interface (SBI), and introduces the implications for 91 the protocol. 93 [I-D.ietf-pce-pcep-extension-for-pce-controller]specify the 94 procedures and PCEP protocol extensions for using the PCE as the 95 central controller for static LSPs, where LSPs can be provisioned as 96 explicit label instructions at each hop on the end-to-end path. Each 97 router along the path must be told what label-forwarding instructions 98 to program and what resources to reserve. The PCE-based controller 99 keeps a view of the network and determines the paths of the end-to- 100 end LSPs, and the controller uses PCEP to communicate with each 101 router along the path of the end-to-end LSP. 103 Bit Index Explicit Replication (BIER)-TE shares architecture and 104 packet formats with BIER as described in [RFC8279]. BIER-TE forwards 105 and replicates packets based on a BitString in the packet header, but 106 every BitPosition of the BitString of a BIER-TE packet indicates one 107 or more adjacencies as described in [I-D.ietf-bier-te-arch]. 109 This document extends 110 [I-D.ietf-pce-pcep-extension-for-pce-controller] to specify the 111 procedures and PCEP protocol extensions for using the PCE as the 112 central controller for BIER-TE. 114 2. Conventions used in this document 116 The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT", 117 "SHOULD", "SHOULD NOT", "RECOMMENDED", "MAY", and "OPTIONAL" in this 118 document are to be interpreted as described in RFC2119. 120 3. PCECC BIER-TE Requirements 122 Following key requirements for PCECC BIER-TE should be considered 123 when`designing the PCECC based solution: 125 o PCEP speaker supporting this draft needs to have the capability to 126 advertise its PCECC BIER-TE capability to its peers. 128 o PCEP speaker not supporting this draft needs to be able to reject 129 PCECC BIER-TE related message with a reason code that indicates no 130 support for PCECC. 132 o PCEP procedures needs to provide a means to update (or cleanup) 133 the BIER-TE related informations (BIER subdomain-id, adjacencies 134 BitPosition(s), and Adjacency Types etc) to the PCC. 136 o PCEP procedures needs to provide a means to synchronize the BIER- 137 TE related informations(BIER subdomain-id, adjacencies 138 BitPosition(s), and Adjacency Types etc) between PCE to PCC in the 139 PCEP messages. 141 4. Procedures for Using the PCE as the Central Controller (PCECC) in 142 BIER 144 4.1. Stateful PCE Model 146 Active stateful PCE is described in [RFC8231]. PCE as a central 147 controller (PCECC) reuses existing Active stateful PCE mechanism as 148 much as possible to control the LSP. 150 4.2. New Functions 152 This document uses the same PCEP messages and its extensions which 153 are described in [I-D.ietf-pce-pcep-extension-for-pce-controller]for 154 PCECC BIER-TE as well. 156 PCEP messages PCRpt, PCInitiate, PCUpd are also used to send LSP 157 Reports, LSP setup and LSP update respectively. The extended 158 PCInitiate message described in 159 [I-D.ietf-pce-pcep-extension-for-pce-controller] is used to download 160 or cleanup central controller's instructions (CCIs) (BIER-TE related 161 informations in scope of this document). The extended PCRpt message 162 described in [I-D.ietf-pce-pcep-extension-for-pce-controller] is also 163 used to report the CCIs (BIER-TE related informations) from PCC to 164 PCE. 166 [I-D.ietf-pce-pcep-extension-for-pce-controller]specify an object 167 called CCI for the encoding of central controller's instructions.This 168 document extends the CCI by defining another object-type for BIER-TE. 170 4.3. PCECC Capability Advertisement 172 During PCEP Initialization Phase, PCEP Speakers (PCE or PCC) 173 advertise their support of PCECC extensions. A PCEP Speaker includes 174 the "PCECC Capability" sub-TLV, described in 175 [I-D.ietf-pce-pcep-extension-for-pce-controller]. 177 This document adds T-bit in PCECC-CAPABILITY sub-TLV for BIER-TE. 179 4.4. BIER Path Operations 181 The PCEP messages pertaining to PCECC BIER-TE MUST include PATH- 182 SETUP-TYPE TLV [RFC8408] with PST=TBD in the SRP object to clearly 183 identify the PCECC BIER-TE LSP is intended. 185 4.4.1. PCECC Bit Index Explicit Replication (BIER)-TE 187 Bit Index Explicit Replication (BIER)-TE shares architecture and 188 packet formats with BIER as described in [RFC8279]. BIER-TE forwards 189 and replicates packets based on a BitString in the packet header, but 190 every BitPosition of the BitString of a BIER-TE packet indicates one 191 or more adjacencies as described in [I-D.ietf-bier-te-arch]. 193 This document proposes a new mechanism where PCE allocates centrally 194 and uses PCEP to advertise the BIER-TE information(BIER subdomain-id, 195 adjacencies BitPosition(s), and Adjacency Types etc). 197 4.4.1.1. PCECC BIER-TE information allocation 199 Each node (PCC) is allocated a node BIER-TE information by the PCECC. 200 The PCECC sends PCInitiate message to update the BIFT table of each 201 node.The BIER-TE information mainly includes BIER subdomain-id, 202 adjacencies BitPosition(s), and Adjacency Types etc. On receiving 203 the BIER-TE information allocation, each node (PCC) download the 204 forwarding instructions accordingly. 206 4.4.1.2. Redundant PCEs 208 [I-D.litkowski-pce-state-sync] describes synchronization mechanism 209 between the stateful PCEs. The BIER-TE informations allocated by a 210 PCE MUST also be synchronized among PCEs for PCECC BIER-TE state 211 synchronization. 213 4.4.1.3. Re Delegation and Cleanup 215 [I-D.ietf-pce-pcep-extension-for-pce-controller] describes the action 216 needed for CCIs for the Basic PCECC LSP on this terminated 217 session.Similarly actions should be applied for the BIER-TE 218 information as well. 220 4.4.1.4. Synchronization of BIER information Allocations 222 [I-D.ietf-pce-pcep-extension-for-pce-controller]describes the 223 synchronization of Central Controller's Instructions (CCI) via LSP 224 state synchronization as described in [RFC8231] and [RFC8232].Same 225 procedures should be applied for BIER-TE information as well. 227 4.5. PCEP messages 228 4.5.1. The OPEN Object 230 4.5.1.1. PCECC Capability sub-TLV 232 [I-D.ietf-pce-pcep-extension-for-pce-controller] defined the 233 PCECCCAPABILITY TLV. A new T-bit is defined in PCECC-CAPABILITY sub- 234 TLV for PCECC BIER-TE: 236 0 1 2 3 237 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 238 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 239 | Type=TBD | Length | 240 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 241 | Flags |T|I|S| 242 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 244 Figure 1 246 T (PCECC BIER-TE CAPABILITY - 1 bit): If set to 1 by a PCEP speaker, 247 it indicates that the PCEP speaker is capable for PCECC BIER-TE 248 capability and PCE would allocate BIER-TE information on this 249 session. 251 4.5.2. PATH-SETUP-TYPE TLV 253 The PATH-SETUP-TYPE TLV is defined in [RFC8408]. PST = TBD is used 254 when Path is setup via PCECC BIER-TE mode.On a PCRpt/PCUpd/PCInitiate 255 message, the PST=TBD indicates that this path was setup via a PCECC 256 BIER-TE based mechanism where either the BIER-TE informations were 257 allocated/instructed by PCE via PCECC mechanism. 259 4.5.3. CCI object 261 The Central Control Instructions (CCI) Object is used by the PCE to 262 specify the forwarding instructions is defined in 263 [I-D.ietf-pce-pcep-extension-for-pce-controller]. This document 264 defines another object-type for BIER-TE purpose. 266 CCI Object-Type is TBD for BIER-TE as below 267 0 1 2 3 268 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 269 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 270 | CC-ID | 271 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 272 | subdomain-ID | BSL | Flags | 273 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 274 | SI |adj-t| BitPosition | Reserved| 275 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 276 | | 277 // Optional TLV // 278 | | 279 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 281 Figure 2 283 The field CC-ID is as described in 284 [I-D.ietf-pce-pcep-extension-for-pce-controller]. 286 BIER subdomain-ID: Unique value identifying the BIER subdomain. (as 287 defined in [RFC8401]. 289 BSL: A 1 octet field encodes the length in bits of the BitString as 290 per [RFC8296], the maximum length of the BitString is 5,it indicates 291 the length of BitString is 1024.It is used to refer to the number of 292 bits in the BitString. 294 SI: Set Identifier (Section 1 of [RFC8279] used in the encapsulation 295 for this BIER subdomain for this BitString length, 1 octet. 297 BitPositions: BitPositions indicate adjacencies,16bit. 299 The "Reserved" (1 octets) fields are currently unused, and MUST be 300 set to zero on transmission and ignored on reception. 302 Adjacency Types:There are three types in this document. 304 o 0b000:Forward Connected 306 o 0b001:Forward Routed 308 o 0b010: Local Decap 310 o ECMP will discuss in next version. 312 Optional TLV: There are three optional TLV are defined/reused in this 313 draft. 315 4.5.3.1. BIER Encapsulation Sub-TLV 317 0 1 2 3 318 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 319 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 320 | Type | Length | 321 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 322 | Flage | ET| Reserved | 323 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 324 | Max SI |BS Len | BIFT-id | 325 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 327 Figure 3 329 The code point for the TLV type is to be defined by IANA. 331 Length:4 333 ET-Flag:ET(Encapsulation type) Flag,There are two Encapsulation 334 Types: 336 o 0b00-MPLS encapsulation. 338 o 0b01-Non-MPLS encapsulation. 340 Max SI: A 1 octet field encoding the Maximum Set Identifier(Section 1 341 of [RFC8279] ) used in the encapsulation for this BIER subdomain for 342 this BitString length. 344 Local BitString Length (BS Len): Encoded BitString length as per 345 [RFC8296]. 347 BIFT-id: A 20 bit field encoding the first BIFT-id of the BIFT-id 348 range. 350 4.5.3.2. Address TLVs 352 When the adjacency type is 0b000:Forward Connected, the BFR address 353 information (BFR out-interface and nexthop informations) should be 354 carried in the CCI Object. 356 Address TLVs defined in 357 [I-D.ietf-pce-pcep-extension-for-pce-controller] are used to 358 associate the next-hop information, so we Reuse ADDRESS TLV to carry 359 the BFR out-interface and nexthop informations. 361 4.5.3.3. ROUTE-DISTINGUISHER TLV 363 When the adjacency type is 0b001: Forward Routed, a VRF and the next- 364 hop informations should be carried in the CCI Object, so we reuse the 365 ROUTE-DISTINGUISHER TLV defined in [I-D.ietf-pce-pcep-flowspec] and 366 Address TLVs defined in 367 [I-D.ietf-pce-pcep-extension-for-pce-controller] to carry the next 368 hop is associated with a specific VPN identified by the RD. 370 When the adjacency type is 0b010: Local Decap, only a VRF should be 371 carried in the CCI Object. Reuse the ROUTE-DISTINGUISHER TLV which 372 is defined in [I-D.ietf-pce-pcep-flowspec] carries an RD value, used 373 to identify a VRF. 375 4.5.3.4. FEC object 377 BIER-TE information is always associated with adjacency, so we reuse 378 FEC Object 1'IPv4 Node ID' and FEC Object-Type 2 'IPv6 Node ID' 379 defined in [I-D.zhao-pce-pcep-extension-pce-controller-sr] to clearly 380 identify the adjacency for which a SI: BitPosition is being 381 allocated. 383 5. Security Considerations 385 TBD. 387 6. IANA Considerations 389 TBD. 391 7. Contributors 393 The following author contributed significantly to this document: 395 Dhruv Dhody 397 Huawei 399 rdhruv.ietf@gmail.com 401 8. Acknowledgements 403 TBD. 405 9. Normative References 407 [I-D.ietf-bier-te-arch] 408 Eckert, T., Cauchie, G., and M. Menth, "Tree Engineering 409 for Bit Index Explicit Replication (BIER-TE)", draft-ietf- 410 bier-te-arch-08 (work in progress), July 2020. 412 [I-D.ietf-pce-pcep-extension-for-pce-controller] 413 Li, Z., Peng, S., Negi, M., Zhao, Q., and C. Zhou, "PCEP 414 Procedures and Protocol Extensions for Using PCE as a 415 Central Controller (PCECC) of LSPs", draft-ietf-pce-pcep- 416 extension-for-pce-controller-07 (work in progress), 417 September 2020. 419 [I-D.ietf-pce-pcep-flowspec] 420 Dhody, D., Farrel, A., and Z. Li, "PCEP Extension for Flow 421 Specification", draft-ietf-pce-pcep-flowspec-10 (work in 422 progress), August 2020. 424 [I-D.litkowski-pce-state-sync] 425 Litkowski, S., Sivabalan, S., Li, C., and H. Zheng, "Inter 426 Stateful Path Computation Element (PCE) Communication 427 Procedures.", draft-litkowski-pce-state-sync-08 (work in 428 progress), July 2020. 430 [I-D.zhao-pce-pcep-extension-pce-controller-sr] 431 Li, Z., Peng, S., Negi, M., Zhao, Q., and C. Zhou, "PCEP 432 Procedures and Protocol Extensions for Using PCE as a 433 Central Controller (PCECC) of SR-LSPs", draft-zhao-pce- 434 pcep-extension-pce-controller-sr-07 (work in progress), 435 July 2020. 437 [RFC4655] Farrel, A., Vasseur, J., and J. Ash, "A Path Computation 438 Element (PCE)-Based Architecture", RFC 4655, 439 DOI 10.17487/RFC4655, August 2006, 440 . 442 [RFC8231] Crabbe, E., Minei, I., Medved, J., and R. Varga, "Path 443 Computation Element Communication Protocol (PCEP) 444 Extensions for Stateful PCE", RFC 8231, 445 DOI 10.17487/RFC8231, September 2017, 446 . 448 [RFC8232] Crabbe, E., Minei, I., Medved, J., Varga, R., Zhang, X., 449 and D. Dhody, "Optimizations of Label Switched Path State 450 Synchronization Procedures for a Stateful PCE", RFC 8232, 451 DOI 10.17487/RFC8232, September 2017, 452 . 454 [RFC8279] Wijnands, IJ., Ed., Rosen, E., Ed., Dolganow, A., 455 Przygienda, T., and S. Aldrin, "Multicast Using Bit Index 456 Explicit Replication (BIER)", RFC 8279, 457 DOI 10.17487/RFC8279, November 2017, 458 . 460 [RFC8283] Farrel, A., Ed., Zhao, Q., Ed., Li, Z., and C. Zhou, "An 461 Architecture for Use of PCE and the PCE Communication 462 Protocol (PCEP) in a Network with Central Control", 463 RFC 8283, DOI 10.17487/RFC8283, December 2017, 464 . 466 [RFC8296] Wijnands, IJ., Ed., Rosen, E., Ed., Dolganow, A., 467 Tantsura, J., Aldrin, S., and I. Meilik, "Encapsulation 468 for Bit Index Explicit Replication (BIER) in MPLS and Non- 469 MPLS Networks", RFC 8296, DOI 10.17487/RFC8296, January 470 2018, . 472 [RFC8401] Ginsberg, L., Ed., Przygienda, T., Aldrin, S., and Z. 473 Zhang, "Bit Index Explicit Replication (BIER) Support via 474 IS-IS", RFC 8401, DOI 10.17487/RFC8401, June 2018, 475 . 477 [RFC8408] Sivabalan, S., Tantsura, J., Minei, I., Varga, R., and J. 478 Hardwick, "Conveying Path Setup Type in PCE Communication 479 Protocol (PCEP) Messages", RFC 8408, DOI 10.17487/RFC8408, 480 July 2018, . 482 Authors' Addresses 484 Ran Chen 485 ZTE Corporation 487 Email: chen.ran@zte.com.cn 489 BenChong Xu 490 ZTE Corporation 492 Email: xu.benchong@zte.com.cn 494 Chun Zhu 495 ZTE Corporation 497 Email: zhu.chun@zte.com.cn