idnits 2.17.1 draft-dhody-pce-pcep-srv6-yang-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 doesn't use any RFC 2119 keywords, yet seems to have RFC 2119 boilerplate text. -- The document date (October 19, 2018) is 2016 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) == Outdated reference: A later version (-36) exists of draft-ietf-teas-yang-te-16 == Outdated reference: A later version (-16) exists of draft-ietf-pce-segment-routing-14 == Outdated reference: A later version (-06) exists of draft-raza-spring-srv6-yang-01 == Outdated reference: A later version (-23) exists of draft-ietf-pce-pcep-yang-09 == Outdated reference: A later version (-04) exists of draft-negi-pce-segment-routing-ipv6-02 Summary: 0 errors (**), 0 flaws (~~), 7 warnings (==), 1 comment (--). Run idnits with the --verbose option for more detailed information about the items above. -------------------------------------------------------------------------------- 2 PCE Working Group D. Dhody, Ed. 3 Internet-Draft Huawei Technologies 4 Intended status: Standards Track S. Sivabalan 5 Expires: April 22, 2019 Cisco Systems, Inc. 6 October 19, 2018 8 A YANG Data Model for Segment Routing in IPv6 (SRv6) support in Path 9 Computation Element Communications Protocol (PCEP) 10 draft-dhody-pce-pcep-srv6-yang-00 12 Abstract 14 This document augments a YANG data model for the management of Path 15 Computation Element communications Protocol (PCEP) for communications 16 between a Path Computation Client (PCC) and a Path Computation 17 Element (PCE), or between two PCEs in support for Segment Routing in 18 IPv6. The data model includes configuration data and state data 19 (status information and counters for the collection of statistics). 21 Status of This Memo 23 This Internet-Draft is submitted in full conformance with the 24 provisions of BCP 78 and BCP 79. 26 Internet-Drafts are working documents of the Internet Engineering 27 Task Force (IETF). Note that other groups may also distribute 28 working documents as Internet-Drafts. The list of current Internet- 29 Drafts is at https://datatracker.ietf.org/drafts/current/. 31 Internet-Drafts are draft documents valid for a maximum of six months 32 and may be updated, replaced, or obsoleted by other documents at any 33 time. It is inappropriate to use Internet-Drafts as reference 34 material or to cite them other than as "work in progress." 36 This Internet-Draft will expire on April 22, 2019. 38 Copyright Notice 40 Copyright (c) 2018 IETF Trust and the persons identified as the 41 document authors. All rights reserved. 43 This document is subject to BCP 78 and the IETF Trust's Legal 44 Provisions Relating to IETF Documents 45 (https://trustee.ietf.org/license-info) in effect on the date of 46 publication of this document. Please review these documents 47 carefully, as they describe your rights and restrictions with respect 48 to this document. Code Components extracted from this document must 49 include Simplified BSD License text as described in Section 4.e of 50 the Trust Legal Provisions and are provided without warranty as 51 described in the Simplified BSD License. 53 Table of Contents 55 1. Introduction . . . . . . . . . . . . . . . . . . . . . . . . 2 56 2. Requirements Language . . . . . . . . . . . . . . . . . . . . 3 57 3. Terminology and Notation . . . . . . . . . . . . . . . . . . 3 58 3.1. Tree Diagrams . . . . . . . . . . . . . . . . . . . . . . 4 59 3.2. Prefixes in Data Node Names . . . . . . . . . . . . . . . 4 60 4. The Design of PCEP-SRv6 Data Model . . . . . . . . . . . . . 4 61 4.1. The Overview of PCEP SRv6 Data Model . . . . . . . . . . 4 62 5. PCEP-SRv6 YANG Modules . . . . . . . . . . . . . . . . . . . 5 63 5.1. ietf-pcep-srv6 module . . . . . . . . . . . . . . . . . . 5 64 6. Security Considerations . . . . . . . . . . . . . . . . . . . 9 65 7. IANA Considerations . . . . . . . . . . . . . . . . . . . . . 9 66 8. Acknowledgements . . . . . . . . . . . . . . . . . . . . . . 10 67 9. References . . . . . . . . . . . . . . . . . . . . . . . . . 10 68 9.1. Normative References . . . . . . . . . . . . . . . . . . 10 69 9.2. Informative References . . . . . . . . . . . . . . . . . 12 70 Authors' Addresses . . . . . . . . . . . . . . . . . . . . . . . 12 72 1. Introduction 74 The Path Computation Element (PCE) defined in [RFC4655] is an entity 75 that is capable of computing a network path or route based on a 76 network graph, and applying computational constraints. A Path 77 Computation Client (PCC) may make requests to a PCE for paths to be 78 computed. 80 PCEP is the communication protocol between a PCC and PCE and is 81 defined in [RFC5440]. PCEP interactions include path computation 82 requests and path computation replies as well as notifications of 83 specific states related to the use of a PCE in the context of 84 Multiprotocol Label Switching (MPLS) and Generalized MPLS (GMPLS) 85 Traffic Engineering (TE). [RFC8231] specifies extensions to PCEP to 86 enable stateful control of MPLS TE LSPs. 88 [I-D.negi-pce-segment-routing-ipv6] extends 89 [I-D.ietf-pce-segment-routing] to support SR for IPv6 data plane. 91 [I-D.ietf-pce-pcep-yang] defines a YANG [RFC7950] data model for the 92 management of PCEP speakers. This document contains a specification 93 of the PCEP-SRv6 YANG module, "ietf-pcep-srv6" which provides the 94 PCEP-SRv6 [I-D.negi-pce-segment-routing-ipv6] data model. 96 The PCEP operational state is included in the same tree as the PCEP 97 configuration consistent with Network Management Datastore 98 Architecture [RFC8342]. The origin of the data is indicated as per 99 the origin metadata annotation. 101 2. Requirements Language 103 The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT", 104 "SHOULD", "SHOULD NOT", "RECOMMENDED", "NOT RECOMMENDED", "MAY", and 105 "OPTIONAL" in this document are to be interpreted as described in BCP 106 14 [RFC2119] [RFC8174] when, and only when, they appear in all 107 capitals, as shown here. 109 3. Terminology and Notation 111 This document also uses the following terms defined in [RFC7420]: 113 o PCEP entity: a local PCEP speaker. 115 o PCEP peer: to refer to a remote PCEP speaker. 117 o PCEP speaker: where it is not necessary to distinguish between 118 local and remote. 120 Further, this document also uses the following terms defined in 121 [RFC8231] : 123 o Stateful PCE, Passive Stateful PCE, Active Stateful PCE 125 o Delegation, Revocation, Redelegation 127 o LSP State Report, Path Computation Report message (PCRpt). 129 o LSP State Update, Path Computation Update message (PCUpd). 131 [RFC8281] : 133 o PCE-initiated LSP, Path Computation LSP Initiate Message 134 (PCInitiate). 136 [RFC8408] : 138 o Path Setup Type (PST). 140 [I-D.ietf-pce-segment-routing] : 142 o Segment Routing (SR). 144 [I-D.negi-pce-segment-routing-ipv6] : 146 o Segment Routing in IPv6 (SRv6). 148 3.1. Tree Diagrams 150 A simplified graphical representation of the data model is used in 151 this document. The meaning of the symbols in these diagrams is 152 defined in [RFC8340]. 154 3.2. Prefixes in Data Node Names 156 In this document, names of data nodes and other data model objects 157 are often used without a prefix, as long as it is clear from the 158 context in which YANG module each name is defined. Otherwise, names 159 are prefixed using the standard prefix associated with the 160 corresponding YANG module, as shown in Table 1. 162 +----------+-----------------+-----------------------------+ 163 | Prefix | YANG module | Reference | 164 +----------+-----------------+-----------------------------+ 165 | te-types | ietf-te-types | [I-D.ietf-teas-yang-te] | 166 | p | ietf-pcep | [I-D.ietf-pce-pcep-yang] | 167 | st | ietf-srv6-types | [I-D.raza-spring-srv6-yang] | 168 +----------+-----------------+-----------------------------+ 170 Table 1: Prefixes and corresponding YANG modules 172 4. The Design of PCEP-SRv6 Data Model 174 4.1. The Overview of PCEP SRv6 Data Model 176 The PCEP-SRv6 YANG module defined in this document has all the common 177 building blocks for the PCEP-SRv6 extention. 179 module: ietf-pcep-srv6 180 augment /p:pcep/p:entity/p:capability: 181 +--rw srv6 {srv6}? 182 +--rw enabled? boolean 183 +--rw max-sl? uint8 184 +--rw sl-limit? boolean 185 augment /p:pcep/p:entity/p:peers/p:peer/p:capability: 186 +--rw srv6 {srv6}? 187 +--rw enabled? boolean 188 +--rw max-sl? uint8 189 +--rw sl-limit? boolean 190 augment /p:pcep/p:entity/p:lsp-db/p:lsp: 191 +--ro srv6 {srv6}? 192 +--ro segment-list 193 +--ro segment* [index] 194 +--ro index uint32 195 +--ro sid-value? st:srv6-sid 196 groupings: 197 segment-list 198 +---- segment-list 199 +---- segment* [index] 200 +---- index? uint32 201 +---- sid-value? st:srv6-sid 203 segment-properties 204 +---- index? uint32 205 +---- sid-value? st:srv6-sid 207 srv6 208 +---- srv6 {srv6}? 209 +---- enabled? boolean 210 +---- max-sl? uint8 211 +---- sl-limit? boolean 213 5. PCEP-SRv6 YANG Modules 215 5.1. ietf-pcep-srv6 module 217 RFC Ed.: In this section, replace all occurrences of 'XXXX' with the 218 actual RFC number and all occurrences of the revision date below with 219 the date of RFC publication (and remove this note). 221 file "ietf-pcep-srv6@2018-10-19.yang" 222 module ietf-pcep-srv6 { 224 yang-version 1.1; 225 namespace "urn:ietf:params:xml:ns:yang:ietf-pcep-srv6"; 226 prefix ps; 228 import ietf-srv6-types { 229 prefix "st"; 230 reference "RFC XXXX"; 231 } 233 import ietf-te-types { 234 prefix "te-types"; 235 reference "RFC XXXX"; 236 } 238 import ietf-pcep { 239 prefix "p"; 240 reference "RFC XXXX"; 241 } 243 organization 244 "IETF PCE (Path Computation Element) Working Group"; 246 contact 247 "WG Web: 248 WG List: 249 Editor: Dhruv Dhody 250 "; 251 description 252 "The YANG module augments the PCEP yang operational 253 model with SRv6"; 255 revision 2018-10-19 { 256 description "Initial revision."; 257 reference 258 "RFC XXXX: A YANG Data Model for Path Computation 259 Element Communications Protocol 260 (PCEP) - Segement Routing in IPv6 261 (SRv6)"; 262 } 264 /* Identity */ 265 identity path-setup-srv6 { 266 base te-types:path-signaling-type; 267 description 268 "SRv6 path setup type"; 269 } 270 /* Features */ 271 feature srv6 { 272 description 273 "Support Segment Routing in IPv6 (SRv6) for PCE."; 274 } 276 /* Groupings */ 277 grouping srv6 { 278 description 279 "SRv6"; 280 container srv6 { 281 if-feature srv6; 282 description 283 "If SRv6 is supported"; 284 leaf enabled{ 285 type boolean; 286 description 287 "Enabled or Disabled"; 288 } 289 leaf max-sl { 290 type uint8; 291 description 292 "Max value of the segment left field in SRH"; 293 } 294 leaf sl-limit{ 295 type boolean; 296 default false; 297 description 298 "True indicates no limit on SL, the 299 leaf max-sl is ignored"; 300 } 301 } 302 } 304 grouping segment-list { 305 description 306 "Segment list grouping"; 307 container segment-list { 308 description 309 "Segments for given segment list"; 311 list segment { 312 key "index"; 313 description "Configure Segment/hop at the index"; 314 uses segment-properties; 315 } 316 } 317 } 318 grouping segment-properties { 319 description "Segment properties grouping"; 320 leaf index { 321 type uint32; 322 description "Segment index"; 323 } 324 leaf sid-value { 325 type st:srv6-sid; 326 description "SRv6 SID value"; 327 } 328 } 330 /* 331 * Augment modules to add SRv6 332 */ 333 augment "/p:pcep/p:entity/p:capability"{ 334 description 335 "Augmenting SRv6"; 336 uses srv6; 337 } 338 augment "/p:pcep/p:entity/p:peers/p:peer/p:capability"{ 339 description 340 "Augmenting SRv6"; 341 uses srv6; 342 } 343 augment "/p:pcep/p:entity/p:lsp-db/p:lsp"{ 344 description 345 "Augmenting SRv6"; 346 container srv6 { 347 when "/p:pcep/p:entity/p:lsp-db/p:lsp/p:pst 348 = 'path-setup-srv6'" { 349 description 350 "For SRv6 path"; 351 } 352 if-feature srv6; 353 uses segment-list; 354 description 355 "SRv6"; 356 } 357 } 359 }//module 361 363 6. Security Considerations 365 The YANG module defined in this document is designed to be accessed 366 via network management protocol such as NETCONF [RFC6241] or RESTCONF 367 [RFC8040]. The lowest NETCONF layer is the secure transport layer 368 and the mandatory-to-implement secure transport is SSH [RFC6242]. 369 The lowest RESTCONF layer is HTTPS, and the mandatory-to-implement 370 secure transport is TLS [RFC8446] 372 The NETCONF access control model [RFC8341] provides the means to 373 restrict access for particular NETCONF or RESTCONF users to a pre- 374 configured subset of all available NETCONF or RESTCONF protocol 375 operations and content. 377 There are a number of data nodes defined in the YANG module which are 378 writable/creatable/deletable (i.e., config true, which is the 379 default). These data nodes may be considered sensitive or vulnerable 380 in some network environments. Write operations (e.g., ) 381 to these data nodes without proper protection can have a negative 382 effect on network operations. These are the subtrees and data nodes 383 and their sensitivity/vulnerability: 385 /p:pcep/p:entity/p:capability/ps:srv6 - configure local SRv6 386 capability and parameters. 388 /p:pcep/p:entity/p:peers/p:peer/p:capability/ps:srv6 - configure 389 peer's SRv6 capability and parameters. 391 Unauthorized access to above list can adversely affect the PCEP 392 session between the local entity and the peers. This may lead to 393 inability to compute new paths, stateful operations on the delegated 394 as well as PCE-initiated LSPs. 396 Some of the readable data nodes in this YANG module may be considered 397 sensitive or vulnerable in some network environments. It is thus 398 important to control read access (e.g., via get, get-config, or 399 notification) to these data nodes. These are the subtrees and data 400 nodes and their sensitivity/vulnerability: 402 /p:pcep/p:entity/p:lsp-db/p:lsp/ps:srv6 - The SRv6 SID in the 403 network. Unauthorized access to this could provide the all path 404 and network usage information. 406 7. IANA Considerations 408 This document registers a URI in the "IETF XML Registry" [RFC3688]. 409 Following the format in RFC 3688, the following registration has been 410 made. 412 URI: urn:ietf:params:xml:ns:yang:ietf-pcep-srv6 414 Registrant Contact: The PCE WG of the IETF. 416 XML: N/A; the requested URI is an XML namespace. 418 This document registers a YANG module in the "YANG Module Names" 419 registry [RFC6020]. 421 Name: ietf-pcep 422 Namespace: urn:ietf:params:xml:ns:yang:ietf-pcep-srv6 423 Prefix: ps 424 Reference: This I-D 426 8. Acknowledgements 428 9. References 430 9.1. Normative References 432 [RFC2119] Bradner, S., "Key words for use in RFCs to Indicate 433 Requirement Levels", BCP 14, RFC 2119, 434 DOI 10.17487/RFC2119, March 1997, 435 . 437 [RFC3688] Mealling, M., "The IETF XML Registry", BCP 81, RFC 3688, 438 DOI 10.17487/RFC3688, January 2004, 439 . 441 [RFC5440] Vasseur, JP., Ed. and JL. Le Roux, Ed., "Path Computation 442 Element (PCE) Communication Protocol (PCEP)", RFC 5440, 443 DOI 10.17487/RFC5440, March 2009, 444 . 446 [RFC6020] Bjorklund, M., Ed., "YANG - A Data Modeling Language for 447 the Network Configuration Protocol (NETCONF)", RFC 6020, 448 DOI 10.17487/RFC6020, October 2010, 449 . 451 [RFC6241] Enns, R., Ed., Bjorklund, M., Ed., Schoenwaelder, J., Ed., 452 and A. Bierman, Ed., "Network Configuration Protocol 453 (NETCONF)", RFC 6241, DOI 10.17487/RFC6241, June 2011, 454 . 456 [RFC6242] Wasserman, M., "Using the NETCONF Protocol over Secure 457 Shell (SSH)", RFC 6242, DOI 10.17487/RFC6242, June 2011, 458 . 460 [RFC7950] Bjorklund, M., Ed., "The YANG 1.1 Data Modeling Language", 461 RFC 7950, DOI 10.17487/RFC7950, August 2016, 462 . 464 [RFC8040] Bierman, A., Bjorklund, M., and K. Watsen, "RESTCONF 465 Protocol", RFC 8040, DOI 10.17487/RFC8040, January 2017, 466 . 468 [RFC8174] Leiba, B., "Ambiguity of Uppercase vs Lowercase in RFC 469 2119 Key Words", BCP 14, RFC 8174, DOI 10.17487/RFC8174, 470 May 2017, . 472 [RFC8231] Crabbe, E., Minei, I., Medved, J., and R. Varga, "Path 473 Computation Element Communication Protocol (PCEP) 474 Extensions for Stateful PCE", RFC 8231, 475 DOI 10.17487/RFC8231, September 2017, 476 . 478 [RFC8281] Crabbe, E., Minei, I., Sivabalan, S., and R. Varga, "Path 479 Computation Element Communication Protocol (PCEP) 480 Extensions for PCE-Initiated LSP Setup in a Stateful PCE 481 Model", RFC 8281, DOI 10.17487/RFC8281, December 2017, 482 . 484 [RFC8340] Bjorklund, M. and L. Berger, Ed., "YANG Tree Diagrams", 485 BCP 215, RFC 8340, DOI 10.17487/RFC8340, March 2018, 486 . 488 [RFC8341] Bierman, A. and M. Bjorklund, "Network Configuration 489 Access Control Model", STD 91, RFC 8341, 490 DOI 10.17487/RFC8341, March 2018, 491 . 493 [RFC8408] Sivabalan, S., Tantsura, J., Minei, I., Varga, R., and J. 494 Hardwick, "Conveying Path Setup Type in PCE Communication 495 Protocol (PCEP) Messages", RFC 8408, DOI 10.17487/RFC8408, 496 July 2018, . 498 [RFC8446] Rescorla, E., "The Transport Layer Security (TLS) Protocol 499 Version 1.3", RFC 8446, DOI 10.17487/RFC8446, August 2018, 500 . 502 [I-D.ietf-teas-yang-te] 503 Saad, T., Gandhi, R., Liu, X., Beeram, V., Shah, H., and 504 I. Bryskin, "A YANG Data Model for Traffic Engineering 505 Tunnels and Interfaces", draft-ietf-teas-yang-te-16 (work 506 in progress), July 2018. 508 [I-D.ietf-pce-segment-routing] 509 Sivabalan, S., Filsfils, C., Tantsura, J., Henderickx, W., 510 and J. Hardwick, "PCEP Extensions for Segment Routing", 511 draft-ietf-pce-segment-routing-14 (work in progress), 512 October 2018. 514 [I-D.raza-spring-srv6-yang] 515 Raza, K., Rajamanickam, J., Liu, X., Hu, Z., Hussain, I., 516 Shah, H., daniel.voyer@bell.ca, d., Elmalky, H., 517 Matsushima, S., Horiba, K., and A. Abdelsalam, "YANG Data 518 Model for SRv6 Base and Static", draft-raza-spring- 519 srv6-yang-01 (work in progress), March 2018. 521 [I-D.ietf-pce-pcep-yang] 522 Dhody, D., Hardwick, J., Beeram, V., and J. Tantsura, "A 523 YANG Data Model for Path Computation Element 524 Communications Protocol (PCEP)", draft-ietf-pce-pcep- 525 yang-09 (work in progress), October 2018. 527 [I-D.negi-pce-segment-routing-ipv6] 528 Negi, M., Kaladharan, P., Dhody, D., and S. Sivabalan, 529 "PCEP Extensions for Segment Routing leveraging the IPv6 530 data plane", draft-negi-pce-segment-routing-ipv6-02 (work 531 in progress), June 2018. 533 9.2. Informative References 535 [RFC4655] Farrel, A., Vasseur, J., and J. Ash, "A Path Computation 536 Element (PCE)-Based Architecture", RFC 4655, 537 DOI 10.17487/RFC4655, August 2006, 538 . 540 [RFC7420] Koushik, A., Stephan, E., Zhao, Q., King, D., and J. 541 Hardwick, "Path Computation Element Communication Protocol 542 (PCEP) Management Information Base (MIB) Module", 543 RFC 7420, DOI 10.17487/RFC7420, December 2014, 544 . 546 [RFC8342] Bjorklund, M., Schoenwaelder, J., Shafer, P., Watsen, K., 547 and R. Wilton, "Network Management Datastore Architecture 548 (NMDA)", RFC 8342, DOI 10.17487/RFC8342, March 2018, 549 . 551 Authors' Addresses 552 Dhruv Dhody (editor) 553 Huawei Technologies 554 Divyashree Techno Park, Whitefield 555 Bangalore, Karnataka 560066 556 India 558 EMail: dhruv.ietf@gmail.com 560 Siva Sivabalan 561 Cisco Systems, Inc. 562 2000 Innovation Drive 563 Kanata, Ontario K2K 3E8 564 Canada 566 EMail: msiva@cisco.com