idnits 2.17.1 draft-ietf-teas-yang-te-mpls-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 (November 04, 2018) is 1999 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 (-14) exists of draft-ietf-mpls-static-yang-06 == Outdated reference: A later version (-19) exists of draft-ietf-teas-yang-rsvp-09 == Outdated reference: A later version (-09) exists of draft-ietf-teas-yang-rsvp-te-04 == Outdated reference: A later version (-36) exists of draft-ietf-teas-yang-te-17 == Outdated reference: A later version (-13) exists of draft-ietf-teas-yang-te-types-01 Summary: 0 errors (**), 0 flaws (~~), 7 warnings (==), 1 comment (--). Run idnits with the --verbose option for more detailed information about the items above. -------------------------------------------------------------------------------- 2 TEAS Working Group T. Saad 3 Internet-Draft R. Gandhi 4 Intended status: Standards Track Cisco Systems Inc 5 Expires: May 8, 2019 X. Liu 6 Volta Networks 7 V. Beeram 8 Juniper Networks 9 I. Bryskin 10 Huawei Technologies 11 November 04, 2018 13 A YANG Data Model for MPLS Traffic Engineering Tunnels and Interfaces 14 draft-ietf-teas-yang-te-mpls-00 16 Abstract 18 This document defines a YANG data model for the configuration and 19 management of Multiprotocol Label Switching (MPLS) Traffic 20 Engineering (TE) interfaces, tunnels and Label Switched Paths (LSPs). 21 The model augments the TE generic YANG model for MPLS packet 22 dataplane technology. 24 This model covers data for configuration, operational state, remote 25 procedural calls, and event notifications. 27 Status of This Memo 29 This Internet-Draft is submitted in full conformance with the 30 provisions of BCP 78 and BCP 79. 32 Internet-Drafts are working documents of the Internet Engineering 33 Task Force (IETF). Note that other groups may also distribute 34 working documents as Internet-Drafts. The list of current Internet- 35 Drafts is at https://datatracker.ietf.org/drafts/current/. 37 Internet-Drafts are draft documents valid for a maximum of six months 38 and may be updated, replaced, or obsoleted by other documents at any 39 time. It is inappropriate to use Internet-Drafts as reference 40 material or to cite them other than as "work in progress." 42 This Internet-Draft will expire on May 8, 2019. 44 Copyright Notice 46 Copyright (c) 2018 IETF Trust and the persons identified as the 47 document authors. All rights reserved. 49 This document is subject to BCP 78 and the IETF Trust's Legal 50 Provisions Relating to IETF Documents 51 (https://trustee.ietf.org/license-info) in effect on the date of 52 publication of this document. Please review these documents 53 carefully, as they describe your rights and restrictions with respect 54 to this document. Code Components extracted from this document must 55 include Simplified BSD License text as described in Section 4.e of 56 the Trust Legal Provisions and are provided without warranty as 57 described in the Simplified BSD License. 59 Table of Contents 61 1. Introduction . . . . . . . . . . . . . . . . . . . . . . . . 2 62 1.1. Terminology . . . . . . . . . . . . . . . . . . . . . . . 2 63 1.2. Prefixes in Data Node Names . . . . . . . . . . . . . . . 3 64 1.3. Acronyms and Abbreviations . . . . . . . . . . . . . . . 3 65 2. MPLS TE YANG Model . . . . . . . . . . . . . . . . . . . . . 3 66 2.1. Module(s) Relationship . . . . . . . . . . . . . . . . . 3 67 2.2. Model Tree Diagram . . . . . . . . . . . . . . . . . . . 4 68 2.3. MPLS TE YANG Module . . . . . . . . . . . . . . . . . . . 6 69 3. IANA Considerations . . . . . . . . . . . . . . . . . . . . . 16 70 4. Security Considerations . . . . . . . . . . . . . . . . . . . 16 71 5. Contributors . . . . . . . . . . . . . . . . . . . . . . . . 16 72 6. Normative References . . . . . . . . . . . . . . . . . . . . 17 73 Authors' Addresses . . . . . . . . . . . . . . . . . . . . . . . 19 75 1. Introduction 77 YANG [RFC6020] and [RFC7950] is a data modeling language used to 78 define the contents of a conceptual data store that allows networked 79 devices to be managed using NETCONF [RFC6241]. YANG has proved 80 relevant beyond its initial confines, as bindings to other interfaces 81 (e.g. RESTCONF [RFC8040]) and encoding other than XML (e.g. JSON) 82 are being defined. Furthermore, YANG data models can be used as the 83 basis of implementation for other interfaces, such as CLI and 84 programmatic APIs. 86 This document describes the YANG data model for configuration and 87 management of MPLS TE tunnels, LSPs, and interfaces. Other YANG 88 module(s) that model TE signaling protocols, such as RSVP-TE 89 ([RFC3209], [RFC3473]) may augment this model with MPLS signaling 90 specific data. 92 1.1. Terminology 94 The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT", 95 "SHOULD", "SHOULD NOT", "RECOMMENDED", "NOT RECOMMENDED", "MAY", and 96 "OPTIONAL" in this document are to be interpreted as described in BCP 97 14 [RFC2119] [RFC8174] when, and only when, they appear in all 98 capitals, as shown here. 100 The terminology for describing YANG data models is found in 101 [RFC7950]. 103 1.2. Prefixes in Data Node Names 105 In this document, names of data nodes and other data model objects 106 are prefixed using the standard prefix associated with the 107 corresponding YANG imported modules, as shown in Table 1. 109 +---------------+--------------------+-------------------------------+ 110 | Prefix | YANG module | Reference | 111 +---------------+--------------------+-------------------------------+ 112 | yang | ietf-yang-types | [RFC6991] | 113 | inet | ietf-inet-types | [RFC6991] | 114 | rt-types | ietf-routing-types | [RFC8294] | 115 | te | ietf-te | [I-D.ietf-teas-yang-te] | 116 | te-dev | ietf-te-device | [I-D.ietf-teas-yang-te] | 117 | te-mpls | ietf-te-mpls | This document | 118 | te-types | ietf-te-types | [I-D.ietf-teas-yang-te-types] | 119 | te-mpls-types | ietf-te-mpls-types | [I-D.ietf-teas-yang-te-types] | 120 +---------------+--------------------+-------------------------------+ 122 Table 1: Prefixes and corresponding YANG modules 124 1.3. Acronyms and Abbreviations 126 MPLS: Multiprotocol Label Switching LSP: Label Switched Path LSR: 127 Label Switching Router LER: Label Edge Router TE: Traffic 128 Engineering 130 2. MPLS TE YANG Model 132 The MPLS TE YANG model covers the configuration, state, RPC and 133 notifications data pertaining to MPLS TE interfaces, tunnels and LSPs 134 parameters. The data specific to the signaling protocol used to 135 establish MPLS LSP(s) is outside the scope of this document and is 136 covered in other documents, e.g. in [I-D.ietf-teas-yang-rsvp] and 137 [I-D.ietf-teas-yang-rsvp-te]. 139 2.1. Module(s) Relationship 141 The MPLS TE YANG module "ietf-te-mpls" imports the following modules: 143 o ietf-te defined in [I-D.ietf-teas-yang-te] 144 o ietf-te-types and ietf-te-mpls-types defined in 145 [I-D.ietf-teas-yang-te-types] 147 o ietf-routing-types defined in [RFC8294] 149 o ietf-mpls-static defined in [I-D.ietf-mpls-static-yang] 151 TE generic +---------+ o: augment 152 module | ietf-te | 153 +---------+ 154 o o 155 | | 156 +-----+ +-----+ 157 | | 158 +--------------+ +--------------+ 159 RSVP-TE | ietf-rsvp-te | | ietf-te-mpls | 160 +--------------+ +--------------+ 162 Figure 1: Relationship of MPLS TE module with TE generic and RSVP-TE 163 YANG modules 165 The MPLS TE YANG module "ietf-te-mpls" augments the "ietf-te" TE 166 generic YANG module as shown in Figure 1. 168 2.2. Model Tree Diagram 170 Figure 2 shows the tree diagram of the MPLS TE YANG model that is 171 defined in ietf-te-mpls.yang. 173 module: ietf-te-mpls 174 augment /te:te/te:tunnels/te:tunnel: 175 +--rw tunnel-igp-shortcut 176 | +--rw shortcut-eligible? boolean 177 | +--rw metric-type? identityref 178 | +--rw metric? int32 179 | +--rw routing-afs* inet:ip-version 180 +--rw forwarding 181 | +--rw binding-label? rt-types:mpls-label 182 | +--rw load-share? uint32 183 | +--rw policy-class? uint8 184 +--rw bandwidth-mpls 185 +--rw specification-type? 186 te-mpls-types:te-bandwidth-requested-type 187 +--rw set-bandwidth? te-mpls-types:bandwidth-kbps 188 +--rw class-type? te-types:te-ds-class 189 +--ro state 190 | +--ro signaled-bandwidth? te-mpls-types:bandwidth-kbps 191 +--rw auto-bandwidth 192 +--rw enabled? boolean 193 +--rw min-bw? te-mpls-types:bandwidth-kbps 194 +--rw max-bw? te-mpls-types:bandwidth-kbps 195 +--rw adjust-interval? uint32 196 +--rw adjust-threshold? rt-types:percentage 197 +--rw overflow 198 | +--rw enabled? boolean 199 | +--rw overflow-threshold? rt-types:percentage 200 | +--rw trigger-event-count? uint16 201 +--rw underflow 202 +--rw enabled? boolean 203 +--rw underflow-threshold? rt-types:percentage 204 +--rw trigger-event-count? uint16 205 augment 206 /te:te/te:tunnels/te:tunnel/te:p2p-primary-paths/te:p2p-primary-path: 207 +--rw static-lsp-name? mpls-static:static-lsp-ref 208 augment 209 /te:te/te:tunnels/te:tunnel/te:p2p-primary-paths/te:p2p-primary-path/ 210 te:state: 211 +--ro static-lsp-name? mpls-static:static-lsp-ref 212 augment 213 /te:te/te:tunnels/te:tunnel/te:p2p-secondary-paths/ 214 te:p2p-secondary-path: 215 +--rw static-lsp-name? mpls-static:static-lsp-ref 216 augment 217 /te:te/te:tunnels/te:tunnel/te:p2p-secondary-paths/ 218 te:p2p-secondary-path/te:state: 219 +--ro static-lsp-name? mpls-static:static-lsp-ref 220 augment 221 /te:te/te:globals/te:named-path-constraints/te:named-path-constraint: 222 +--rw bandwidth 223 +--rw specification-type? 224 te-mpls-types:te-bandwidth-requested-type 225 +--rw set-bandwidth? te-mpls-types:bandwidth-kbps 226 +--rw class-type? te-types:te-ds-class 227 +--ro state 228 +--ro signaled-bandwidth? te-mpls-types:bandwidth-kbps 229 augment 230 /te:te/te:tunnels/te:tunnel/te:p2p-primary-paths/te:p2p-primary-path/ 231 te:state/te:lsps/te:lsp: 232 +--ro performance-metric-one-way 233 | +--ro one-way-delay? uint32 234 | +--ro one-way-min-delay? uint32 235 | +--ro one-way-max-delay? uint32 236 | +--ro one-way-delay-variation? uint32 237 | +--ro one-way-packet-loss? decimal64 238 | +--ro one-way-residual-bandwidth? 239 rt-types:bandwidth-ieee-float32 240 | +--ro one-way-available-bandwidth? 241 rt-types:bandwidth-ieee-float32 242 | +--ro one-way-utilized-bandwidth? 243 rt-types:bandwidth-ieee-float32 244 +--ro performance-metric-two-way 245 +--ro two-way-delay? uint32 246 +--ro two-way-min-delay? uint32 247 +--ro two-way-max-delay? uint32 248 +--ro two-way-delay-variation? uint32 249 +--ro two-way-packet-loss? decimal64 251 Figure 2: MPLS TE model configuration and state tree 253 2.3. MPLS TE YANG Module 255 file "ietf-te-mpls@2018-11-02.yang" 256 module ietf-te-mpls { 257 yang-version 1.1; 258 namespace "urn:ietf:params:xml:ns:yang:ietf-te-mpls"; 260 /* Replace with IANA when assigned */ 261 prefix "te-mpls"; 263 /* Import TE base model */ 264 import ietf-te { 265 prefix te; 266 reference "draft-ietf-teas-yang-te: A YANG Data Model for Traffic 267 Engineering Tunnels and Interfaces"; 268 } 270 /* Import TE MPLS types */ 271 import ietf-te-mpls-types { 272 prefix "te-mpls-types"; 273 reference "draft-ietf-teas-yang-te-types: A YANG Data Model for 274 Common Traffic Engineering Types"; 275 } 277 /* Import TE generic types */ 278 import ietf-te-types { 279 prefix te-types; 280 reference "draft-ietf-teas-yang-te-types: A YANG Data Model for 281 Common Traffic Engineering Types"; 282 } 284 /* Import routing types */ 285 import ietf-routing-types { 286 prefix "rt-types"; 287 reference "RFC6991: Common YANG Data Types"; 288 } 290 import ietf-mpls-static { 291 prefix mpls-static; 292 reference "draft-ietf-mpls-static-yang: A YANG Data Model 293 for MPLS Static LSPs"; 294 } 296 import ietf-inet-types { 297 prefix inet; 298 reference "RFC6991: Common YANG Data Types"; 299 } 301 organization 302 "IETF Traffic Engineering Architecture and Signaling (TEAS) 303 Working Group"; 305 contact 306 "WG Web: 307 WG List: 309 WG Chair: Lou Berger 310 312 WG Chair: Vishnu Pavan Beeram 313 315 Editor: Tarek Saad 316 318 Editor: Rakesh Gandhi 319 321 Editor: Vishnu Pavan Beeram 322 324 Editor: Xufeng Liu 325 327 Editor: Igor Bryskin 328 "; 330 description 331 "YANG data module for MPLS TE configurations, 332 state, RPC and notifications."; 334 revision "2018-11-02" { 335 description "Latest update to MPLS TE YANG module."; 336 reference "RFC3209"; 337 } 339 /* MPLS TE tunnel properties*/ 341 grouping tunnel-igp-shortcut_config { 342 description "TE tunnel IGP shortcut configs"; 343 leaf shortcut-eligible { 344 type boolean; 345 default "true"; 346 description 347 "Whether this LSP is considered to be eligible for us as a 348 shortcut in the IGP. In the case that this leaf is set to 349 true, the IGP SPF calculation uses the metric specified to 350 determine whether traffic should be carried over this LSP"; 351 } 352 leaf metric-type { 353 type identityref { 354 base te-types:LSP_METRIC_TYPE; 355 } 356 default te-types:LSP_METRIC_INHERITED; 357 description 358 "The type of metric specification that should be used to set 359 the LSP(s) metric"; 360 } 361 leaf metric { 362 type int32; 363 description 364 "The value of the metric that should be specified. The value 365 supplied in this leaf is used in conjunction with the metric 366 type to determine the value of the metric used by the system. 367 Where the metric-type is set to LSP_METRIC_ABSOLUTE - the 368 value of this leaf is used directly; where it is set to 369 LSP_METRIC_RELATIVE, the relevant (positive or negative) 370 offset is used to formulate the metric; where metric-type 371 is LSP_METRIC_INHERITED, the value of this leaf is not 372 utilized"; 373 } 374 leaf-list routing-afs { 375 type inet:ip-version; 376 description 377 "Address families"; 378 } 379 } 381 grouping tunnel-igp-shortcuts { 382 description 383 "TE tunnel IGP shortcut grouping"; 384 container tunnel-igp-shortcut { 385 description 386 "Tunnel IGP shortcut properties"; 387 uses tunnel-igp-shortcut_config; 388 } 389 } 391 grouping tunnel-forwarding-adjacency_configs { 392 description "Tunnel forwarding adjacency grouping"; 393 leaf binding-label { 394 type rt-types:mpls-label; 395 description "MPLS tunnel binding label"; 396 } 397 leaf load-share { 398 type uint32 { 399 range "1..4294967295"; 400 } 401 description "ECMP tunnel forwarding 402 load-share factor."; 403 } 404 leaf policy-class { 405 type uint8 { 406 range "1..7"; 407 } 408 description 409 "The class associated with this tunnel"; 410 } 411 } 413 grouping tunnel-forwarding-adjacency { 414 description "Properties for using tunnel in forwarding."; 415 container forwarding { 416 description 417 "Tunnel forwarding properties container"; 418 uses tunnel-forwarding-adjacency_configs; 419 } 420 } 422 /*** End of MPLS TE tunnel configuration/state */ 423 grouping te-lsp-auto-bandwidth_config { 424 description 425 "Configuration parameters related to autobandwidth"; 427 leaf enabled { 428 type boolean; 429 default false; 430 description 431 "Enables MPLS auto-bandwidth on the 432 LSP"; 433 } 435 leaf min-bw { 436 type te-mpls-types:bandwidth-kbps; 437 description 438 "set the minimum bandwidth in Kbps for an 439 auto-bandwidth LSP"; 440 } 442 leaf max-bw { 443 type te-mpls-types:bandwidth-kbps; 444 description 445 "set the maximum bandwidth in Kbps for an 446 auto-bandwidth LSP"; 447 } 449 leaf adjust-interval { 450 type uint32; 451 description 452 "time in seconds between adjustments to 453 LSP bandwidth"; 454 } 456 leaf adjust-threshold { 457 type rt-types:percentage; 458 description 459 "percentage difference between the LSP's 460 specified bandwidth and its current bandwidth 461 allocation -- if the difference is greater than the 462 specified percentage, auto-bandwidth adjustment is 463 triggered"; 464 } 465 } 467 grouping te-lsp-overflow_config { 468 description 469 "configuration for MPLS LSP bandwidth 470 overflow adjustment"; 472 leaf enabled { 473 type boolean; 474 default false; 475 description 476 "Enables MPLS LSP bandwidth overflow 477 adjustment on the LSP"; 478 } 479 leaf overflow-threshold { 480 type rt-types:percentage; 481 description 482 "bandwidth percentage change to trigger 483 an overflow event"; 485 } 487 leaf trigger-event-count { 488 type uint16; 489 description 490 "number of consecutive overflow sample 491 events needed to trigger an overflow adjustment"; 492 } 493 } 495 grouping te-lsp-underflow_config { 496 description 497 "configuration for MPLS LSP bandwidth 498 underflow adjustment"; 500 leaf enabled { 501 type boolean; 502 default false; 503 description 504 "enables bandwidth underflow 505 adjustment on the LSP"; 506 } 508 leaf underflow-threshold { 509 type rt-types:percentage; 510 description 511 "bandwidth percentage change to trigger 512 and underflow event"; 513 } 515 leaf trigger-event-count { 516 type uint16; 517 description 518 "number of consecutive underflow sample 519 events needed to trigger an underflow adjustment"; 520 } 521 } 522 grouping te-tunnel-bandwidth_config { 523 description 524 "Configuration parameters related to bandwidth for a tunnel"; 526 leaf specification-type { 527 type te-mpls-types:te-bandwidth-requested-type; 528 default SPECIFIED; 529 description 530 "The method used for setting the bandwidth, either explicitly 531 specified or configured"; 532 } 534 leaf set-bandwidth { 535 when "../specification-type = 'SPECIFIED'" { 536 description 537 "The bandwidth value when bandwidth is explicitly 538 specified"; 539 } 540 type te-mpls-types:bandwidth-kbps; 541 description 542 "set bandwidth explicitly, e.g., using 543 offline calculation"; 544 } 545 leaf class-type { 546 type te-types:te-ds-class; 547 description 548 "The Class-Type of traffic transported by the LSP."; 549 reference "RFC4124: section-4.3.1"; 550 } 551 } 553 grouping te-tunnel-bandwidth_state { 554 description 555 "Operational state parameters relating to bandwidth for a tunnel"; 557 leaf signaled-bandwidth { 558 type te-mpls-types:bandwidth-kbps; 559 description 560 "The currently signaled bandwidth of the LSP. In the case where 561 the bandwidth is specified explicitly, then this will match the 562 value of the set-bandwidth leaf; in cases where the bandwidth is 563 dynamically computed by the system, the current value of the 564 bandwidth should be reflected."; 565 } 566 } 568 grouping tunnel-bandwidth_top { 569 description 570 "Top level grouping for specifying bandwidth for a tunnel"; 572 container bandwidth-mpls { 573 description 574 "Bandwidth configuration for TE LSPs"; 576 uses te-tunnel-bandwidth_config; 578 container state { 579 config false; 580 description 581 "State parameters related to bandwidth 582 configuration of TE tunnels"; 583 uses te-tunnel-bandwidth_state; 584 } 586 container auto-bandwidth { 587 when "../specification-type = 'AUTO'" { 588 description 589 "Include this container for auto bandwidth 590 specific configuration"; 591 } 592 description 593 "Parameters related to auto-bandwidth"; 595 uses te-lsp-auto-bandwidth_config; 597 container overflow { 598 description 599 "configuration of MPLS overflow bandwidth 600 adjustment for the LSP"; 602 uses te-lsp-overflow_config; 603 } 605 container underflow { 606 description 607 "configuration of MPLS underflow bandwidth 608 adjustment for the LSP"; 610 uses te-lsp-underflow_config; 611 } 612 } 613 } 614 } 616 grouping te-path-bandwidth_top { 617 description 618 "Top level grouping for specifying bandwidth for a TE path"; 620 container bandwidth { 621 description 622 "Bandwidth configuration for TE LSPs"; 624 uses te-tunnel-bandwidth_config; 625 container state { 626 config false; 627 description 628 "State parameters related to bandwidth 629 configuration of TE tunnels"; 630 uses te-tunnel-bandwidth_state; 631 } 632 } 633 } 635 /** 636 * MPLS TE augmentations 637 */ 639 /* MPLS TE tunnel augmentations */ 640 augment "/te:te/te:tunnels/te:tunnel" { 641 description "MPLS TE tunnel config augmentations"; 642 uses tunnel-igp-shortcuts; 643 uses tunnel-forwarding-adjacency; 644 uses tunnel-bandwidth_top; 645 } 647 /* MPLS TE LSPs augmentations */ 648 augment "/te:te/te:tunnels/te:tunnel/" + 649 "te:p2p-primary-paths/te:p2p-primary-path" { 650 when "/te:te/te:tunnels/te:tunnel" + 651 "/te:p2p-primary-paths/te:p2p-primary-path" + 652 "/te:path-setup-protocol = 'te-types:path-setup-static'" { 653 description 654 "When the path is statically provisioned"; 655 } 656 description "MPLS TE LSP augmentation"; 657 leaf static-lsp-name { 658 type mpls-static:static-lsp-ref; 659 description "Static LSP name"; 660 } 661 } 663 augment "/te:te/te:tunnels/te:tunnel/" + 664 "te:p2p-primary-paths/te:p2p-primary-path/" + 665 "te:state" { 666 description "MPLS TE LSP augmentation"; 667 leaf static-lsp-name { 668 type mpls-static:static-lsp-ref; 669 description "Static LSP name"; 671 } 672 } 673 augment "/te:te/te:tunnels/te:tunnel/" + 674 "te:p2p-secondary-paths/te:p2p-secondary-path" { 675 when "/te:te/te:tunnels/te:tunnel" + 676 "/te:p2p-secondary-paths/te:p2p-secondary-path/" + 677 "te:path-setup-protocol = 'te-types:path-setup-static'" { 678 description 679 "When the path is statically provisioned"; 680 } 681 description "MPLS TE LSP augmentation"; 682 leaf static-lsp-name { 683 type mpls-static:static-lsp-ref; 684 description "Static LSP name"; 685 } 686 } 687 augment "/te:te/te:tunnels/te:tunnel/" + 688 "te:p2p-secondary-paths/te:p2p-secondary-path/" + 689 "te:state" { 690 description "MPLS TE LSP augmentation"; 691 leaf static-lsp-name { 692 type mpls-static:static-lsp-ref; 693 description "Static LSP name"; 694 } 695 } 697 augment "/te:te/te:globals/te:named-path-constraints/" + 698 "te:named-path-constraint" { 699 description "foo"; 700 uses te-path-bandwidth_top; 701 } 703 augment "/te:te/te:tunnels/te:tunnel/te:p2p-primary-paths" + 704 "/te:p2p-primary-path/te:state/te:lsps/te:lsp" { 705 description 706 "MPLS TE generic data augmentation pertaining to specific TE 707 LSP"; 708 uses te-types:performance-metric-container; 709 } 710 } 711 713 Figure 3: TE generic YANG module 715 3. IANA Considerations 717 This document registers the following URIs in the IETF XML registry 718 [RFC3688]. Following the format in [RFC3688], the following 719 registration is requested to be made. 721 URI: urn:ietf:params:xml:ns:yang:ietf-te-mpls XML: N/A, the requested 722 URI is an XML namespace. 724 This document registers a YANG module in the YANG Module Names 725 registry [RFC6020]. 727 name: ietf-te-mpls namespace: urn:ietf:params:xml:ns:yang:ietf-te- 728 mpls prefix: ietf-te-mpls reference: RFC3209 730 4. Security Considerations 732 The YANG module defined in this memo is designed to be accessed via 733 the NETCONF protocol [RFC6241]. The lowest NETCONF layer is the 734 secure transport layer and the mandatory-to-implement secure 735 transport is SSH [RFC6242]. The NETCONF access control model 736 [RFC8341] provides means to restrict access for particular NETCONF 737 users to a pre-configured subset of all available NETCONF protocol 738 operations and content. 740 A number of data nodes defined in this YANG module are 741 writable/creatable/deletable (i.e., config true, which is the 742 default). These data nodes may be considered sensitive or vulnerable 743 in some network environments. Write operations (e.g., ) 744 to these data nodes without proper protection can have a negative 745 effect on MPLS network operations. Following are the subtrees and 746 data nodes and their sensitivity/vulnerability: 748 "/te/tunnels": This list specifies the configured TE tunnels on a 749 device. Unauthorized access to this list could cause the device to 750 ignore packets it should receive and process. 752 5. Contributors 754 Himanshu Shah 755 Ciena 756 Email: hshah@ciena.com 758 6. Normative References 760 [I-D.ietf-mpls-static-yang] 761 Saad, T., Raza, K., Gandhi, R., Liu, X., Beeram, V., Shah, 762 H., and I. Bryskin, "A YANG Data Model for MPLS Static 763 LSPs", draft-ietf-mpls-static-yang-06 (work in progress), 764 October 2018. 766 [I-D.ietf-teas-yang-rsvp] 767 Beeram, V., Saad, T., Gandhi, R., Liu, X., Bryskin, I., 768 and H. Shah, "A YANG Data Model for Resource Reservation 769 Protocol (RSVP)", draft-ietf-teas-yang-rsvp-09 (work in 770 progress), May 2018. 772 [I-D.ietf-teas-yang-rsvp-te] 773 Beeram, V., Saad, T., Gandhi, R., Liu, X., Bryskin, I., 774 and H. Shah, "A YANG Data Model for RSVP-TE", draft-ietf- 775 teas-yang-rsvp-te-04 (work in progress), October 2018. 777 [I-D.ietf-teas-yang-te] 778 Saad, T., Gandhi, R., Liu, X., Beeram, V., Shah, H., and 779 I. Bryskin, "A YANG Data Model for Traffic Engineering 780 Tunnels and Interfaces", draft-ietf-teas-yang-te-17 (work 781 in progress), October 2018. 783 [I-D.ietf-teas-yang-te-types] 784 Saad, T., Gandhi, R., Liu, X., Beeram, V., and I. Bryskin, 785 "Traffic Engineering Common YANG Types", draft-ietf-teas- 786 yang-te-types-01 (work in progress), October 2018. 788 [RFC2119] Bradner, S., "Key words for use in RFCs to Indicate 789 Requirement Levels", BCP 14, RFC 2119, 790 DOI 10.17487/RFC2119, March 1997, 791 . 793 [RFC3209] Awduche, D., Berger, L., Gan, D., Li, T., Srinivasan, V., 794 and G. Swallow, "RSVP-TE: Extensions to RSVP for LSP 795 Tunnels", RFC 3209, DOI 10.17487/RFC3209, December 2001, 796 . 798 [RFC3473] Berger, L., Ed., "Generalized Multi-Protocol Label 799 Switching (GMPLS) Signaling Resource ReserVation Protocol- 800 Traffic Engineering (RSVP-TE) Extensions", RFC 3473, 801 DOI 10.17487/RFC3473, January 2003, 802 . 804 [RFC3688] Mealling, M., "The IETF XML Registry", BCP 81, RFC 3688, 805 DOI 10.17487/RFC3688, January 2004, 806 . 808 [RFC6020] Bjorklund, M., Ed., "YANG - A Data Modeling Language for 809 the Network Configuration Protocol (NETCONF)", RFC 6020, 810 DOI 10.17487/RFC6020, October 2010, 811 . 813 [RFC6241] Enns, R., Ed., Bjorklund, M., Ed., Schoenwaelder, J., Ed., 814 and A. Bierman, Ed., "Network Configuration Protocol 815 (NETCONF)", RFC 6241, DOI 10.17487/RFC6241, June 2011, 816 . 818 [RFC6242] Wasserman, M., "Using the NETCONF Protocol over Secure 819 Shell (SSH)", RFC 6242, DOI 10.17487/RFC6242, June 2011, 820 . 822 [RFC6991] Schoenwaelder, J., Ed., "Common YANG Data Types", 823 RFC 6991, DOI 10.17487/RFC6991, July 2013, 824 . 826 [RFC7950] Bjorklund, M., Ed., "The YANG 1.1 Data Modeling Language", 827 RFC 7950, DOI 10.17487/RFC7950, August 2016, 828 . 830 [RFC8040] Bierman, A., Bjorklund, M., and K. Watsen, "RESTCONF 831 Protocol", RFC 8040, DOI 10.17487/RFC8040, January 2017, 832 . 834 [RFC8174] Leiba, B., "Ambiguity of Uppercase vs Lowercase in RFC 835 2119 Key Words", BCP 14, RFC 8174, DOI 10.17487/RFC8174, 836 May 2017, . 838 [RFC8294] Liu, X., Qu, Y., Lindem, A., Hopps, C., and L. Berger, 839 "Common YANG Data Types for the Routing Area", RFC 8294, 840 DOI 10.17487/RFC8294, December 2017, 841 . 843 [RFC8341] Bierman, A. and M. Bjorklund, "Network Configuration 844 Access Control Model", STD 91, RFC 8341, 845 DOI 10.17487/RFC8341, March 2018, 846 . 848 Authors' Addresses 850 Tarek Saad 851 Cisco Systems Inc 853 Email: tsaad@cisco.com 855 Rakesh Gandhi 856 Cisco Systems Inc 858 Email: rgandhi@cisco.com 860 Xufeng Liu 861 Volta Networks 863 Email: xufeng.liu.ietf@gmail.com 865 Vishnu Pavan Beeram 866 Juniper Networks 868 Email: vbeeram@juniper.net 870 Igor Bryskin 871 Huawei Technologies 873 Email: Igor.Bryskin@huawei.com