idnits 2.17.1 draft-dhody-pce-pcep-p2mp-per-destination-08.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 (April 23, 2015) is 3290 days in the past. Is this intentional? Checking references for intended status: Experimental ---------------------------------------------------------------------------- ** Obsolete normative reference: RFC 6006 (Obsoleted by RFC 8306) Summary: 1 error (**), 0 flaws (~~), 1 warning (==), 1 comment (--). Run idnits with the --verbose option for more detailed information about the items above. -------------------------------------------------------------------------------- 2 PCE Working Group D. Dhody 3 Internet-Draft U. Palle 4 Intended status: Experimental V. Kondreddy 5 Expires: October 25, 2015 Huawei Technologies 6 April 23, 2015 8 Supporting Explicit Inclusion or Exclusion of Abstract Nodes for a 9 Subset of P2MP Destinations in Path Computation Element Communication 10 Protocol (PCEP). 11 draft-dhody-pce-pcep-p2mp-per-destination-08 13 Abstract 15 The ability to determine paths of point-to-multipoint (P2MP) 16 Multiprotocol Label Switching (MPLS) and Generalized MPLS (GMPLS) 17 Traffic Engineering Label Switched Paths (TE LSPs) is one the key 18 requirements for Path Computation Element (PCE). The RFC 6006 and 19 RFC 7334 describes these mechanisms for intra and inter domain path 20 computation via PCE(s). 22 This document describes the motivation and PCEP extension for 23 explicitly specifying abstract nodes for inclusion or exclusion for a 24 subset of destinations during P2MP path computation via PCE(s). 26 Status of This Memo 28 This Internet-Draft is submitted in full conformance with the 29 provisions of BCP 78 and BCP 79. 31 Internet-Drafts are working documents of the Internet Engineering 32 Task Force (IETF). Note that other groups may also distribute 33 working documents as Internet-Drafts. The list of current Internet- 34 Drafts is at http://datatracker.ietf.org/drafts/current/. 36 Internet-Drafts are draft documents valid for a maximum of six months 37 and may be updated, replaced, or obsoleted by other documents at any 38 time. It is inappropriate to use Internet-Drafts as reference 39 material or to cite them other than as "work in progress." 41 This Internet-Draft will expire on October 25, 2015. 43 Copyright Notice 45 Copyright (c) 2015 IETF Trust and the persons identified as the 46 document authors. All rights reserved. 48 This document is subject to BCP 78 and the IETF Trust's Legal 49 Provisions Relating to IETF Documents 50 (http://trustee.ietf.org/license-info) in effect on the date of 51 publication of this document. Please review these documents 52 carefully, as they describe your rights and restrictions with respect 53 to this document. Code Components extracted from this document must 54 include Simplified BSD License text as described in Section 4.e of 55 the Trust Legal Provisions and are provided without warranty as 56 described in the Simplified BSD License. 58 Table of Contents 60 1. Introduction . . . . . . . . . . . . . . . . . . . . . . . . 2 61 1.1. Requirements Language . . . . . . . . . . . . . . . . . . 3 62 2. Terminology . . . . . . . . . . . . . . . . . . . . . . . . . 3 63 3. Motivation . . . . . . . . . . . . . . . . . . . . . . . . . 4 64 3.1. Domain Sequence Tree in Inter Domain P2MP Path 65 Computation . . . . . . . . . . . . . . . . . . . . . . . 4 66 3.1.1. PCE-sequence . . . . . . . . . . . . . . . . . . . . 5 67 3.2. Explicit inclusion or exclusion of abstract nodes . . . . 5 68 4. Detailed Description . . . . . . . . . . . . . . . . . . . . 6 69 4.1. Objective . . . . . . . . . . . . . . . . . . . . . . . . 6 70 4.2. Request Message Format . . . . . . . . . . . . . . . . . 6 71 4.3. Backward Compatibility . . . . . . . . . . . . . . . . . 7 72 5. IANA Considerations . . . . . . . . . . . . . . . . . . . . . 8 73 6. Security Considerations . . . . . . . . . . . . . . . . . . . 8 74 7. Manageability Considerations . . . . . . . . . . . . . . . . 8 75 7.1. Control of Function and Policy . . . . . . . . . . . . . 8 76 7.2. Information and Data Models . . . . . . . . . . . . . . . 8 77 7.3. Liveness Detection and Monitoring . . . . . . . . . . . . 8 78 7.4. Verify Correct Operations . . . . . . . . . . . . . . . . 8 79 7.5. Requirements On Other Protocols . . . . . . . . . . . . . 9 80 7.6. Impact On Network Operations . . . . . . . . . . . . . . 9 81 8. Acknowledgments . . . . . . . . . . . . . . . . . . . . . . . 9 82 9. References . . . . . . . . . . . . . . . . . . . . . . . . . 9 83 9.1. Normative References . . . . . . . . . . . . . . . . . . 9 84 9.2. Informative References . . . . . . . . . . . . . . . . . 9 85 Authors' Addresses . . . . . . . . . . . . . . . . . . . . . . . 10 87 1. Introduction 89 The PCE architecture is defined in [RFC4655]. [RFC5862] lay out the 90 requirements for PCEP to support P2MP path computation. [RFC6006] 91 describe an extension to PCEP to compute optimal constrained intra- 92 domain (G)MPLS P2MP TE LSPs. [RFC7334] describes the mechanism for 93 inter-domain P2MP path computation. 95 Further [RFC6006] describes mechanism to specify a list of nodes that 96 can be used as branch nodes or a list of nodes that cannot be used as 97 branch nodes via Branch Node Capability (BNC) object. The BNC object 98 is used to specify which nodes have the capability to act as a branch 99 nodes or which nodes lack the capabilty. It supports IPv4 and IPv6 100 prefix sub-objects only. 102 This document explains the need to add the capability to explicitly 103 specify any abstract nodes (not just nodes with branch node 104 capabiltiy) for inclusion or exclusion for a subset of destinations. 106 [RFC7334] describes the core-tree procedure to compute inter-domain 107 P2MP tree. It assumes that, due to deployment and commercial 108 limitations, the sequence of domains for a path (the path domain 109 tree) will be known in advance. For a group of destination which 110 belong to a particular destination domain, the domain-sequence needs 111 to be encoded separately as described in [DOMAIN-SEQ]. The 112 mechanism, as described in this document, of explicitly specifying 113 abstract nodes for inclusion or exclusion for a subset of 114 destinations can be used for this purpose, where abstract nodes are 115 domains. 117 1.1. Requirements Language 119 The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT", 120 "SHOULD", "SHOULD NOT", "RECOMMENDED", "MAY", and "OPTIONAL" in this 121 document are to be interpreted as described in [RFC2119]. 123 2. Terminology 125 The following terminology is used in this document. 127 IRO: Include Route Object. 129 PCC: Path Computation Client: any client application requesting a 130 path computation to be performed by a Path Computation Element. 132 PCE: Path Computation Element. An entity (component, application, 133 or network node) that is capable of computing a network path or 134 route based on a network graph and applying computational 135 constraints. 137 PCEP: Path Computation Element Protocol. 139 P2MP: Point-to-Multipoint 141 P2P: Point-to-Point 142 RRO: Record Route Object 144 RSVP: Resource Reservation Protocol 146 TE LSP: Traffic Engineering Label Switched Path. 148 XRO: Exclude Route Object. 150 3. Motivation 152 3.1. Domain Sequence Tree in Inter Domain P2MP Path Computation 154 [RFC7334] describes the core-tree procedure for inter-domain path 155 computation. The procedure assumes that the sequence of domains for 156 a path (the path domain tree) will be known in advance due to 157 deployment and commercial limitations (e.g., inter-AS peering 158 agreements). 160 In the Figure 1 below, D1 is the root domain; D5 and D6 are the 161 destination domains. The ingress is A in domain D1; egresses are X, 162 Y in Domain D6 and Z in Domain D5. 164 ----------- ---------- 165 | Domain D3 | | Domain D6| 166 | | |*** *** | 167 /| | |*X* *Y* | 168 / | | |*** *** | 169 / -----------\ /---------- 170 / \ / 171 / \ / 172 / \ / 173 ------------/ \------------/ 174 | Domain D1 | | Domain D4 | 175 | *** | | | 176 | *A* | | | 177 | *** | | | 178 ------------\ /------------\ 179 \ / \ 180 \ / \ 181 \ / \ 182 \ -----------/ \---------- 183 \ | Domain D2 | | Domain D5| 184 \| | |*** | 185 | | |*Z* | 186 | | |*** | 187 ----------- ---------- 189 Figure 1: Domain Topology Example 191 In the Figure 2 below, the P2MP tree spans 5 domains. Destination in 192 D6 (X and Y) would use the domain-sequence: D1-D3-D4-D6; and 193 destination in D5 (Z) would use the domain-sequence: D1-D3-D4-D5. 195 D3 D6 196 / \ / 197 D1 D4 198 \ 199 D5 201 Figure 2: Domain Sequence Tree 203 Since destinations in different destination domain will have 204 different domain sequence within the domain tree, it requires 205 following encoding- 207 o Destination X and Y: D1-D3-D4-D6 209 o Destination Z : D1-D3-D4-D5 211 An extension in P2MP Path Computation request is needed to support 212 this. (Refer Section 4.2) 214 The abstract nodes MAY include (but not limited to) domain subobjects 215 AS number and IGP Area as described in [DOMAIN-SEQ]. 217 3.1.1. PCE-sequence 219 [RFC7334] also mentions PCE-sequence (i.e. list of PCE for each 220 domain in the path domain tree). [RFC5886] specify PCE-ID object 221 (used to specify a PCE's IP address) and (list of PCE or 222 PCE-sequence). Like domain-sequence as explained above, PCE-sequence 223 will be different for different destinations and thus should be 224 encoded per subset of destinations. 226 3.2. Explicit inclusion or exclusion of abstract nodes 228 [RFC6006] describes four possible types of leaves in a P2MP request 229 encoded in P2MP END-POINTS object. 231 o New leaves to add 233 o Old leaves to remove 235 o Old leaves whose path can be modified/reoptimized 237 o Old leaves whose path must be left unchanged 239 [RFC6006] only allows to encode a list of nodes that have (or have 240 not) the branch node capability by using the Branch Node Capability 241 (BNC) Object. This object apply to all destinations (old and new) in 242 the P2MP tree. 244 For an existing P2MP tree with an overloaded branch node, when adding 245 a set of new leaves, administrator may want to exclude that 246 particular branch node to balance the final P2MP tree. This cannot 247 be achieved via the BNC object but by explicitly excluding a 248 particular node or including a different node, for the P2MP END- 249 POINTS object for new leaves only. 251 Administrator at the Ingress can exert stronger control by providing 252 explicit inclusion or exclusion of any abstract nodes (not limited to 253 specifying nodes with branch node capability) for a group (subset) of 254 destinations and not all destinations. 256 4. Detailed Description 258 4.1. Objective 260 [RFC6006] defines Request Message Format and Objects, along with 261 . This section introduce the use of , and which are added to the . 265 To allow abstract nodes to be explicitly included or excluded for a 266 subset of destinations (encoded in one object), changes 267 are made as shown below. 269 The abstract node (encoded as subobject in and ) MAY be an 270 absolute hop, IP-Prefix, AS or IGP Area. The subobjects are 271 described in [RFC3209], [RFC3477], [RFC4874] and [DOMAIN-SEQ]. 273 Note that one P2MP Path request can have multiple 274 objects and each P2MP object may have multiple 275 destinations, the , and is applied for all 276 destinations in one such P2MP object. 278 4.2. Request Message Format 280 The format of PCReq message is modified as follows: 282 ::= 283 284 where: 285 ::= 286 287 [] 288 [] 289 [] 290 [] 291 [] 292 [] 294 where: 295 ::= 296 297 [] 298 [] 299 [] 300 [][] 301 [] 303 ::=[] 305 ::=[][] 307 ::=[] 309 From [RFC6006] usage of is changed to in this document. 312 [RFC6006] describes Branch Node Capability (BNC) Object which is 313 different from the use of and to specify inclusion/ 314 exclusion of abstract nodes for a subset of destinations as described 315 here. 317 can be used to specify the Pce-sequence instead of domain- 318 sequence. 320 4.3. Backward Compatibility 322 A legacy implementation that does not support explicit inclusion or 323 exclusion of abstract nodes for a subset of P2MP destinations will 324 act according to the procedures set out in [RFC5440], that is it will 325 find the P2MP Path Request message out of order with respect to the 326 format specified in [RFC6006]. 328 5. IANA Considerations 330 There are no new IANA allocation in this document. 332 6. Security Considerations 334 PCEP security mechanisms as described in [RFC5440], [RFC6006] and 335 [RFC7334] are applicable for this document. 337 The new explicit inclusion or exclusion of abstract nodes for a 338 subset of P2MP destination defined in this document allow finer and 339 more specific control of the path computed by a PCE. Such control 340 increases the risk if a PCEP message is intercepted, modified, or 341 spoofed because it allows the attacker to exert control over the path 342 that the PCE will compute or to make the path computation impossible. 343 Therefore, the security techniques described in [RFC5440], [RFC6006] 344 and [RFC7334] are considered more important. 346 Note, however, that the route exclusion mechanisms also provide the 347 operator with the ability to route around vulnerable parts of the 348 network and may be used to increase overall network security. 350 7. Manageability Considerations 352 7.1. Control of Function and Policy 354 Mechanisms defined in this document do not add any new control 355 function/policy requirements in addition to those already listed in 356 [RFC6006]. 358 7.2. Information and Data Models 360 Mechanisms defined in this document do not imply any new MIB 361 requirements. 363 7.3. Liveness Detection and Monitoring 365 Mechanisms defined in this document do not imply any new liveness 366 detection and monitoring requirements in addition to those already 367 listed in [RFC6006]. 369 7.4. Verify Correct Operations 371 Mechanisms defined in this document do not imply any new operation 372 verification requirements in addition to those already listed in 373 [RFC6006]. 375 7.5. Requirements On Other Protocols 377 Mechanisms defined in this document do not imply any requirements on 378 other protocols in addition to those already listed in [RFC6006]. 380 7.6. Impact On Network Operations 382 Mechanisms defined in this document do not have any impact on network 383 operations in addition to those already listed in [RFC6006]. 385 8. Acknowledgments 387 We would like to thank Pradeep Shastry, Suresh babu, Quintin Zhao, 388 Daniel King and Chen Huaimo for their useful comments and 389 suggestions. 391 9. References 393 9.1. Normative References 395 [RFC2119] Bradner, S., "Key words for use in RFCs to Indicate 396 Requirement Levels", BCP 14, RFC 2119, March 1997. 398 [RFC5440] Vasseur, JP. and JL. Le Roux, "Path Computation Element 399 (PCE) Communication Protocol (PCEP)", RFC 5440, March 400 2009. 402 [RFC6006] Zhao, Q., King, D., Verhaeghe, F., Takeda, T., Ali, Z., 403 and J. Meuric, "Extensions to the Path Computation Element 404 Communication Protocol (PCEP) for Point-to-Multipoint 405 Traffic Engineering Label Switched Paths", RFC 6006, 406 September 2010. 408 9.2. Informative References 410 [RFC3209] Awduche, D., Berger, L., Gan, D., Li, T., Srinivasan, V., 411 and G. Swallow, "RSVP-TE: Extensions to RSVP for LSP 412 Tunnels", RFC 3209, December 2001. 414 [RFC3477] Kompella, K. and Y. Rekhter, "Signalling Unnumbered Links 415 in Resource ReSerVation Protocol - Traffic Engineering 416 (RSVP-TE)", RFC 3477, January 2003. 418 [RFC4655] Farrel, A., Vasseur, J., and J. Ash, "A Path Computation 419 Element (PCE)-Based Architecture", RFC 4655, August 2006. 421 [RFC4874] Lee, CY., Farrel, A., and S. De Cnodder, "Exclude Routes - 422 Extension to Resource ReserVation Protocol-Traffic 423 Engineering (RSVP-TE)", RFC 4874, April 2007. 425 [RFC5862] Yasukawa, S. and A. Farrel, "Path Computation Clients 426 (PCC) - Path Computation Element (PCE) Requirements for 427 Point-to-Multipoint MPLS-TE", RFC 5862, June 2010. 429 [RFC5886] Vasseur, JP., Le Roux, JL., and Y. Ikejiri, "A Set of 430 Monitoring Tools for Path Computation Element (PCE)-Based 431 Architecture", RFC 5886, June 2010. 433 [RFC7334] Zhao, Q., Dhody, D., King, D., Ali, Z., and R. Casellas, 434 "PCE-Based Computation Procedure to Compute Shortest 435 Constrained Point-to-Multipoint (P2MP) Inter-Domain 436 Traffic Engineering Label Switched Paths", RFC 7334, 437 August 2014. 439 [DOMAIN-SEQ] 440 Dhody, D., Palle, U., and R. Casellas, "Standard 441 Representation Of Domain Sequence (draft-ietf-pce-pcep- 442 domain-sequence)", December 2014. 444 Authors' Addresses 446 Dhruv Dhody 447 Huawei Technologies 448 Divyashree Techno Park, Whitefield 449 Bangalore, Karnataka 560037 450 India 452 EMail: dhruv.ietf@gmail.com 454 Udayasree Palle 455 Huawei Technologies 456 Divyashree Techno Park, Whitefield 457 Bangalore, Karnataka 560037 458 India 460 EMail: udayasree.palle@huawei.com 461 Venugopal Reddy Kondreddy 462 Huawei Technologies 463 Divyashree Techno Park, Whitefield 464 Bangalore, Karnataka 560037 465 India 467 EMail: venugopalreddyk@huawei.com