idnits 2.17.1 draft-ietf-teas-yang-l3-te-topo-09.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 20, 2020) is 1247 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) No issues found here. Summary: 0 errors (**), 0 flaws (~~), 1 warning (==), 1 comment (--). Run idnits with the --verbose option for more detailed information about the items above. -------------------------------------------------------------------------------- 2 Network Working Group X. Liu 3 Internet-Draft Volta Networks 4 Intended status: Standards Track I. Bryskin 5 Expires: May 24, 2021 Individual 6 V. Beeram 7 T. Saad 8 Juniper Networks 9 H. Shah 10 Ciena 11 O. Gonzalez de Dios 12 Telefonica 13 November 20, 2020 15 YANG Data Model for Layer 3 TE Topologies 16 draft-ietf-teas-yang-l3-te-topo-09 18 Abstract 20 This document defines a YANG data model for layer 3 traffic 21 engineering topologies. 23 Status of This Memo 25 This Internet-Draft is submitted in full conformance with the 26 provisions of BCP 78 and BCP 79. 28 Internet-Drafts are working documents of the Internet Engineering 29 Task Force (IETF). Note that other groups may also distribute 30 working documents as Internet-Drafts. The list of current Internet- 31 Drafts is at https://datatracker.ietf.org/drafts/current/. 33 Internet-Drafts are draft documents valid for a maximum of six months 34 and may be updated, replaced, or obsoleted by other documents at any 35 time. It is inappropriate to use Internet-Drafts as reference 36 material or to cite them other than as "work in progress." 38 This Internet-Draft will expire on May 24, 2021. 40 Copyright Notice 42 Copyright (c) 2020 IETF Trust and the persons identified as the 43 document authors. All rights reserved. 45 This document is subject to BCP 78 and the IETF Trust's Legal 46 Provisions Relating to IETF Documents 47 (https://trustee.ietf.org/license-info) in effect on the date of 48 publication of this document. Please review these documents 49 carefully, as they describe your rights and restrictions with respect 50 to this document. Code Components extracted from this document must 51 include Simplified BSD License text as described in Section 4.e of 52 the Trust Legal Provisions and are provided without warranty as 53 described in the Simplified BSD License. 55 Table of Contents 57 1. Introduction . . . . . . . . . . . . . . . . . . . . . . . . 2 58 1.1. Terminology . . . . . . . . . . . . . . . . . . . . . . . 3 59 1.2. Tree Diagrams . . . . . . . . . . . . . . . . . . . . . . 3 60 2. Modeling Considerations for L3 TE Topologies . . . . . . . . 3 61 2.1. Relationship Between Layer 3 Unicast Topology and TE 62 topology . . . . . . . . . . . . . . . . . . . . . . . . 4 63 2.2. Relationship Modeling . . . . . . . . . . . . . . . . . . 5 64 2.2.1. Topology Referencing . . . . . . . . . . . . . . . . 5 65 2.2.2. Node Referencing . . . . . . . . . . . . . . . . . . 6 66 2.2.3. Link Termination Point Referencing . . . . . . . . . 7 67 2.2.4. Link Referencing . . . . . . . . . . . . . . . . . . 7 68 2.3. Topology Type Modeling . . . . . . . . . . . . . . . . . 7 69 3. Packet Switching Technology Extensions . . . . . . . . . . . 7 70 3.1. Technology Specific Link Attributes . . . . . . . . . . . 7 71 3.2. Performance Metric . . . . . . . . . . . . . . . . . . . 8 72 4. Complete Model Tree Structure . . . . . . . . . . . . . . . . 9 73 4.1. Layer 3 TE Topology Module . . . . . . . . . . . . . . . 9 74 4.2. Packet Switching TE Topology Module . . . . . . . . . . . 9 75 5. YANG Modules . . . . . . . . . . . . . . . . . . . . . . . . 29 76 5.1. Layer 3 TE Topology Module . . . . . . . . . . . . . . . 29 77 5.2. Packet Switching TE Topology Module . . . . . . . . . . . 34 78 6. IANA Considerations . . . . . . . . . . . . . . . . . . . . . 42 79 7. Security Considerations . . . . . . . . . . . . . . . . . . . 44 80 8. References . . . . . . . . . . . . . . . . . . . . . . . . . 46 81 8.1. Normative References . . . . . . . . . . . . . . . . . . 46 82 8.2. Informative References . . . . . . . . . . . . . . . . . 48 83 Appendix A. Companion YANG Model for Non-NMDA Compliant 84 Implementations . . . . . . . . . . . . . . . . . . 49 85 A.1. Layer 3 TE Topology State Module . . . . . . . . . . . . 49 86 A.2. Packet Switching TE Topology State Module . . . . . . . . 52 87 Appendix B. Data Tree Example . . . . . . . . . . . . . . . . . 59 88 Authors' Addresses . . . . . . . . . . . . . . . . . . . . . . . 69 90 1. Introduction 92 This document defines a YANG [RFC7950] data model for describing the 93 relationship between a layer 3 unicast topology [RFC8346] and a 94 Traffic Engineering (TE) topology [I-D.ietf-teas-yang-te-topo]. 96 When traffic engineering is enabled on a layer 3 unicast topology, 97 there will be a corresponding TE topology. The TE topology may or 98 may not be congruent to the layer 3 unicast topology. When such a 99 congruent TE topology exists, there will be a one-to-one association 100 between the one modeling element in the layer 3 unicast topology to 101 another element in the TE topology. When such a congruent TE 102 topology does not exist, the association will not be one-to-one. 103 This YANG data model allows both cases. 105 1.1. Terminology 107 The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT", 108 "SHOULD", "SHOULD NOT", "RECOMMENDED", "NOT RECOMMENDED", "MAY", and 109 "OPTIONAL" in this document are to be interpreted as described in BCP 110 14, [RFC2119] [RFC8174] when, and only when, they appear in all 111 capitals, as shown here. 113 The following terms are defined in [RFC7950] and are not redefined 114 here: 116 o augment 118 o data model 120 o data node 122 1.2. Tree Diagrams 124 Tree diagrams used in this document follow the notation defined in 125 [RFC8340]. 127 2. Modeling Considerations for L3 TE Topologies 129 A layer 3 TE topology is a layer 3 unicast topology with additional 130 TE capabilities enabled. [RFC8346] defines a YANG data model for 131 layer 3 unicast topologies, consisting of two modules: ietf-l3- 132 unicast-topology and ietf-l3-unicast-topology-state. The YANG data 133 model defined in this document augments the YANG data model defined 134 in [RFC8346]. This document specifies two YANG modules ietf-l3-te- 135 topology and ietf-l3-te-topology-state, augmenting ietf-l3-unicast- 136 topology and ietf-l3-unicast-topology-state respectively, to add 137 additional TE capabilities. 139 +------------------------+ 140 | Network Topology | 141 | ietf-network-topology | Defined in RFC 8345 142 +------------^-----------+ 143 | 144 | augments 145 | (A "inheritance" relation) 146 | 147 +----------------------------+ 148 | Layer 3 Unicast Topology | 149 | ietf-l3-unicast-topology | Defined in RFC 8346 150 +--------------^-------------+ 151 | 152 | augments 153 | (A "inheritance" relation) 154 | 155 +------------^-----------+ 156 | Layer 3 TE Topology | 157 | ietf-l3-te-topology | Defined in this document 158 +------------------------+ 160 Figure 1: Model Augmentations 162 2.1. Relationship Between Layer 3 Unicast Topology and TE topology 164 In general, the layer 3 unicast topology model specified in [RFC8346] 165 and the TE topology model specified in [I-D.ietf-teas-yang-te-topo] 166 can be used independently. This document provides a method to use 167 both together. 169 When traffic engineering is enabled on a layer 3 unicast topology, 170 there will be a resulting layer 3 TE topology, which is modeled by 171 the YANG modules defined in this document. A layer 3 TE topology 172 augments a layer 3 unicast topology, so it inherits all the objects 173 and properties of the base layer 3 unicast topology. In addition, in 174 such a layer 3 TE topology, the objects that are inherited from the 175 base layer 3 unicast topology to this layer 3 TE topology may be 176 associated to the objects in one coresponding TE topology. Such 177 associations are supported by the module ietf-l3-te-topology defined 178 in this document. 180 +----------------------------+ +----------------------+ 181 | Layer 3 Topology | | TE Topology | 182 | ietf-l3-unicast-topology | | ietf-te-topology | 183 +--------------^-------------+ +----------------------+ 184 | A 185 | augments | 186 | / 187 | / references by "leafref" 188 +------------^-----------+ / (An "association" relation) 189 | Layer 3 TE Topology |__/ 190 | ietf-l3-te-topology | 191 +------------------------+ 193 Figure 2: Model References 195 The properties of the relations between the objects in a layer 3 TE 196 topology and the objects in the corresponding TE topology are: 198 o The associations are between objects of the same class, i.e. node 199 to node or link to link. 201 o The multiplicity of such an association is: 0..1 to 0..1. An 202 object in a layer 3 TE topology modeled by ietf-l3-te-topology may 203 be associated with zero or one object in the corresponding TE 204 topology. 206 2.2. Relationship Modeling 208 YANG data type leafref is used to model the association relationship 209 between a layer 3 TE topology and a TE topology. YANG "must" 210 statements are used to enforce that the referenced objects are in a 211 topology of the proper type. 213 2.2.1. Topology Referencing 215 When TE is enabled on a layer 3 unicast topology, if the TE topology 216 is not congruent to the layer 3 unicast topology, the layer 3 TE 217 topology will have a reference to the corresponding TE topology. 218 Such a reference is modeled as follows: 220 augment /nw:networks/nw:network/l3t:l3-topology-attributes: 221 +--rw l3-te-topology-attributes 222 +--rw network-ref? -> /nw:networks/network/network-id 224 The above network-ref is a YANG data node of type leafref, used to 225 indicate the network-id of the corresponding TE topology. The 226 leafref relationship is illustrated by the simplified data instances 227 in the following diagram. 229 +-------------------------------+ +--------------------------+ 230 | ietf-l3-te-topology: | | ietf-te-topology: | 231 |+-----------------------------+| |+------------------------+| 232 || ietf-l3-unicast-topology: || || ietf-network-topology: || 233 ||+---------------------------+|| +-->|| network-id (key) || 234 ||| ietf-network-topology: ||| | || network-types: { || 235 ||| network-id (key) ||| | || te-topology || 236 ||| network-types: { ||| | || } || 237 ||| l3-unicast-topology: {||| | || || 238 ||| l3-te ||| | |+------------------------+| 239 ||| } ||| | | | 240 ||| } ||| | +--------------------------+ 241 ||| ||| | 242 ||+---------------------------+|| | 243 || || | 244 |+-----------------------------+| | 245 | network-ref |--+ 246 +-------------------------------+ 248 Figure 3: Topology Referencing 250 network-id defined in in [RFC8345] uniquely identifies a network 251 topology instance of any type. As shown in the above diagram, the 252 value of network-ref in the ietf-l3-te-topology instance matches the 253 value of network-id in the ietf-te-topology instance. To ensure that 254 the topology instance identified by this network-id is of type "te- 255 topology", a "must" statement is defined in module ietf-l3-te- 256 topology. Such "must" statements are also used in all the following 257 leafref nodes in this section. 259 If the TE topology is congruent to the layer 3 unicast topology, the 260 above reference can still be used to specified TE parameters defined 261 in the TE topology model. 263 2.2.2. Node Referencing 265 When TE is enabled on a layer 3 unicast topology, if the TE topology 266 is not congruent to the layer 3 unicast topology, a node in the layer 267 3 TE topology may have a reference to the corresponding node in the 268 TE Topology. Such a reference is modeled as follows: 270 augment /nw:networks/nw:network/nw:node/l3t:l3-node-attributes: 271 +--rw l3-te-node-attributes 272 +--rw node-ref? leafref 273 +--rw network-ref? -> /nw:networks/network/network-id 275 2.2.3. Link Termination Point Referencing 277 When TE is enabled on a layer 3 unicast topology, if the TE topology 278 is not congruent to the layer 3 unicast topology, a link termination 279 point in the layer 3 TE topology may have a reference to the 280 corresponding link termination point in the TE Topology. Such a 281 reference is modeled as follows: 283 augment /nw:networks/nw:network/nw:node/nt:termination-point 284 /l3t:l3-termination-point-attributes: 285 +--rw l3-te-tp-attributes 286 +--rw tp-ref? leafref 287 +--rw node-ref? leafref 288 +--rw network-ref? -> /nw:networks/network/network-id 290 2.2.4. Link Referencing 292 When TE is enabled on a layer 3 unicast topology, if the TE topology 293 is not congruent to the layer 3 unicast topology, a link in the layer 294 3 topology may have a reference to the corresponding link in the TE 295 Topology. Such a reference is modeled as follows: 297 augment /nw:networks/nw:network/nt:link/l3t:l3-link-attributes: 298 +--rw l3-te-link-attributes 299 +--rw link-ref? leafref 300 +--rw network-ref? -> /nw:networks/network/network-id 302 2.3. Topology Type Modeling 304 A new topology type is defined in this document, to indicate a 305 topology that is a layer 3 TE topology, which both inherits l3 306 unicast topology properties and is capable of TE. 308 augment /nw:networks/nw:network/nw:network-types 309 /l3t:l3-unicast-topology: 310 +--rw l3-te! 312 3. Packet Switching Technology Extensions 314 The technology agnostic TE Topology model is defined in 315 [I-D.ietf-teas-yang-te-topo], which is extended by this document to 316 cover the Packet Switch Capable (PSC) technology [RFC3471] [RFC7074]. 318 3.1. Technology Specific Link Attributes 320 The technology agnostic TE Topology model is augmented with packet 321 switching specific link attributes: 323 augment /nw:networks/tet:te/tet:templates/tet:link-template 324 /tet:te-link-attributes 325 /tet:interface-switching-capability: 326 +--rw packet-switch-capable 327 +--rw minimum-lsp-bandwidth? rt-types:bandwidth-ieee-float32 328 +--rw interface-mtu? uint16 329 augment /nw:networks/nw:network/nt:link/tet:te 330 /tet:te-link-attributes 331 /tet:interface-switching-capability: 332 +--rw packet-switch-capable 333 +--rw minimum-lsp-bandwidth? rt-types:bandwidth-ieee-float32 334 +--rw interface-mtu? uint16 335 augment /nw:networks/nw:network/nt:link/tet:te 336 /tet:information-source-entry 337 /tet:interface-switching-capability: 338 +--ro packet-switch-capable 339 +--ro minimum-lsp-bandwidth? rt-types:bandwidth-ieee-float32 340 +--ro interface-mtu? uint16 342 3.2. Performance Metric 344 [RFC7471], [RFC8570] and [RFC7823] specify TE performance metric 345 parameters and their usage. The packet switching augmentations 346 specified in this document support such a capability, which can be 347 conditional enabled by a YANG feature "te-performance-metric". 349 augment /nw:networks/nw:network/nw:node/tet:te 350 /tet:te-node-attributes/tet:connectivity-matrices: 351 +--rw performance-metric 352 +--rw measurement 353 | ...... 354 +--rw normality 355 | ...... 356 +--rw throttle 357 ...... 359 Such an augmentation has been applied to: 361 o Connectivity matrices container 363 o Connectivity matrix entry 365 o Local link connectivities container 367 o Local link connectivity entry 369 o TE link attributes container in a TE link template 370 o TE link attributes container in a TE link 372 o Information source entry in a TE link 374 4. Complete Model Tree Structure 376 4.1. Layer 3 TE Topology Module 378 The model tree structure of the layer 3 TE topology module is as 379 shown below: 381 module: ietf-l3-te-topology 382 augment /nw:networks/nw:network/nw:network-types 383 /l3t:l3-unicast-topology: 384 +--rw l3-te! 385 augment /nw:networks/nw:network/l3t:l3-topology-attributes: 386 +--rw l3-te-topology-attributes 387 +--rw network-ref? -> /nw:networks/network/network-id 388 augment /nw:networks/nw:network/nw:node/l3t:l3-node-attributes: 389 +--rw l3-te-node-attributes 390 +--rw node-ref? leafref 391 +--rw network-ref? -> /nw:networks/network/network-id 392 augment /nw:networks/nw:network/nw:node/nt:termination-point 393 /l3t:l3-termination-point-attributes: 394 +--rw l3-te-tp-attributes 395 +--rw tp-ref? leafref 396 +--rw node-ref? leafref 397 +--rw network-ref? -> /nw:networks/network/network-id 398 augment /nw:networks/nw:network/nt:link/l3t:l3-link-attributes: 399 +--rw l3-te-link-attributes 400 +--rw link-ref? leafref 401 +--rw network-ref? -> /nw:networks/network/network-id 403 4.2. Packet Switching TE Topology Module 405 This is an augmentation to base TE topology model. 407 module: ietf-te-topology-packet 408 augment /nw:networks/nw:network/nw:network-types/tet:te-topology: 409 +--rw packet! 410 augment /nw:networks/nw:network/nw:node/tet:te 411 /tet:te-node-attributes/tet:connectivity-matrices: 413 +--ro performance-metrics-one-way {te-performance-metric}? 414 | +--ro one-way-delay? uint32 415 | +--ro one-way-delay-normality? 416 | | te-types:performance-metrics-normality 417 | +--ro one-way-residual-bandwidth? 418 | | rt-types:bandwidth-ieee-float32 419 | +--ro one-way-residual-bandwidth-normality? 420 | | te-types:performance-metrics-normality 421 | +--ro one-way-available-bandwidth? 422 | | rt-types:bandwidth-ieee-float32 423 | +--ro one-way-available-bandwidth-normality? 424 | | te-types:performance-metrics-normality 425 | +--ro one-way-utilized-bandwidth? 426 | | rt-types:bandwidth-ieee-float32 427 | +--ro one-way-utilized-bandwidth-normality? 428 | | te-types:performance-metrics-normality 429 | +--ro one-way-min-delay? uint32 430 | +--ro one-way-min-delay-normality? 431 | | te-types:performance-metrics-normality 432 | +--ro one-way-max-delay? uint32 433 | +--ro one-way-max-delay-normality? 434 | | te-types:performance-metrics-normality 435 | +--ro one-way-delay-variation? uint32 436 | +--ro one-way-delay-variation-normality? 437 | | te-types:performance-metrics-normality 438 | +--ro one-way-packet-loss? decimal64 439 | +--ro one-way-packet-loss-normality? 440 | te-types:performance-metrics-normality 441 +--ro performance-metrics-two-way {te-performance-metric}? 442 | +--ro two-way-delay? uint32 443 | +--ro two-way-delay-normality? 444 | | te-types:performance-metrics-normality 445 | +--ro two-way-min-delay? uint32 446 | +--ro two-way-min-delay-normality? 447 | | te-types:performance-metrics-normality 448 | +--ro two-way-max-delay? uint32 449 | +--ro two-way-max-delay-normality? 450 | | te-types:performance-metrics-normality 451 | +--ro two-way-delay-variation? uint32 452 | +--ro two-way-delay-variation-normality? 453 | | te-types:performance-metrics-normality 454 | +--ro two-way-packet-loss? decimal64 455 | +--ro two-way-packet-loss-normality? 456 | te-types:performance-metrics-normality 457 +--rw throttle {te-performance-metric}? 458 +--rw one-way-delay-offset? uint32 459 +--rw measure-interval? uint32 460 +--rw advertisement-interval? uint32 461 +--rw suppression-interval? uint32 462 +--rw threshold-out 463 | +--rw one-way-delay? uint32 464 | +--rw one-way-residual-bandwidth? 465 | | rt-types:bandwidth-ieee-float32 466 | +--rw one-way-available-bandwidth? 467 | | rt-types:bandwidth-ieee-float32 468 | +--rw one-way-utilized-bandwidth? 469 | | rt-types:bandwidth-ieee-float32 470 | +--rw two-way-delay? uint32 471 | +--rw one-way-min-delay? uint32 472 | +--rw one-way-max-delay? uint32 473 | +--rw one-way-delay-variation? uint32 474 | +--rw one-way-packet-loss? decimal64 475 | +--rw two-way-min-delay? uint32 476 | +--rw two-way-max-delay? uint32 477 | +--rw two-way-delay-variation? uint32 478 | +--rw two-way-packet-loss? decimal64 479 +--rw threshold-in 480 | +--rw one-way-delay? uint32 481 | +--rw one-way-residual-bandwidth? 482 | | rt-types:bandwidth-ieee-float32 483 | +--rw one-way-available-bandwidth? 484 | | rt-types:bandwidth-ieee-float32 485 | +--rw one-way-utilized-bandwidth? 486 | | rt-types:bandwidth-ieee-float32 487 | +--rw two-way-delay? uint32 488 | +--rw one-way-min-delay? uint32 489 | +--rw one-way-max-delay? uint32 490 | +--rw one-way-delay-variation? uint32 491 | +--rw one-way-packet-loss? decimal64 492 | +--rw two-way-min-delay? uint32 493 | +--rw two-way-max-delay? uint32 494 | +--rw two-way-delay-variation? uint32 495 | +--rw two-way-packet-loss? decimal64 496 +--rw threshold-accelerated-advertisement 497 +--rw one-way-delay? uint32 498 +--rw one-way-residual-bandwidth? 499 | rt-types:bandwidth-ieee-float32 500 +--rw one-way-available-bandwidth? 501 | rt-types:bandwidth-ieee-float32 502 +--rw one-way-utilized-bandwidth? 503 | rt-types:bandwidth-ieee-float32 504 +--rw two-way-delay? uint32 505 +--rw one-way-min-delay? uint32 506 +--rw one-way-max-delay? uint32 507 +--rw one-way-delay-variation? uint32 508 +--rw one-way-packet-loss? decimal64 509 +--rw two-way-min-delay? uint32 510 +--rw two-way-max-delay? uint32 511 +--rw two-way-delay-variation? uint32 512 +--rw two-way-packet-loss? decimal64 513 augment /nw:networks/nw:network/nw:node/tet:te 514 /tet:te-node-attributes/tet:connectivity-matrices 515 /tet:connectivity-matrix: 516 +--ro performance-metrics-one-way {te-performance-metric}? 517 | +--ro one-way-delay? uint32 518 | +--ro one-way-delay-normality? 519 | | te-types:performance-metrics-normality 520 | +--ro one-way-residual-bandwidth? 521 | | rt-types:bandwidth-ieee-float32 522 | +--ro one-way-residual-bandwidth-normality? 523 | | te-types:performance-metrics-normality 524 | +--ro one-way-available-bandwidth? 525 | | rt-types:bandwidth-ieee-float32 526 | +--ro one-way-available-bandwidth-normality? 527 | | te-types:performance-metrics-normality 528 | +--ro one-way-utilized-bandwidth? 529 | | rt-types:bandwidth-ieee-float32 530 | +--ro one-way-utilized-bandwidth-normality? 531 | | te-types:performance-metrics-normality 532 | +--ro one-way-min-delay? uint32 533 | +--ro one-way-min-delay-normality? 534 | | te-types:performance-metrics-normality 535 | +--ro one-way-max-delay? uint32 536 | +--ro one-way-max-delay-normality? 537 | | te-types:performance-metrics-normality 538 | +--ro one-way-delay-variation? uint32 539 | +--ro one-way-delay-variation-normality? 540 | | te-types:performance-metrics-normality 541 | +--ro one-way-packet-loss? decimal64 542 | +--ro one-way-packet-loss-normality? 543 | te-types:performance-metrics-normality 544 +--ro performance-metrics-two-way {te-performance-metric}? 545 | +--ro two-way-delay? uint32 546 | +--ro two-way-delay-normality? 547 | | te-types:performance-metrics-normality 548 | +--ro two-way-min-delay? uint32 549 | +--ro two-way-min-delay-normality? 550 | | te-types:performance-metrics-normality 551 | +--ro two-way-max-delay? uint32 552 | +--ro two-way-max-delay-normality? 553 | | te-types:performance-metrics-normality 554 | +--ro two-way-delay-variation? uint32 555 | +--ro two-way-delay-variation-normality? 556 | | te-types:performance-metrics-normality 557 | +--ro two-way-packet-loss? decimal64 558 | +--ro two-way-packet-loss-normality? 559 | te-types:performance-metrics-normality 560 +--rw throttle {te-performance-metric}? 561 +--rw one-way-delay-offset? uint32 562 +--rw measure-interval? uint32 563 +--rw advertisement-interval? uint32 564 +--rw suppression-interval? uint32 565 +--rw threshold-out 566 | +--rw one-way-delay? uint32 567 | +--rw one-way-residual-bandwidth? 568 | | rt-types:bandwidth-ieee-float32 569 | +--rw one-way-available-bandwidth? 570 | | rt-types:bandwidth-ieee-float32 571 | +--rw one-way-utilized-bandwidth? 572 | | rt-types:bandwidth-ieee-float32 573 | +--rw two-way-delay? uint32 574 | +--rw one-way-min-delay? uint32 575 | +--rw one-way-max-delay? uint32 576 | +--rw one-way-delay-variation? uint32 577 | +--rw one-way-packet-loss? decimal64 578 | +--rw two-way-min-delay? uint32 579 | +--rw two-way-max-delay? uint32 580 | +--rw two-way-delay-variation? uint32 581 | +--rw two-way-packet-loss? decimal64 582 +--rw threshold-in 583 | +--rw one-way-delay? uint32 584 | +--rw one-way-residual-bandwidth? 585 | | rt-types:bandwidth-ieee-float32 586 | +--rw one-way-available-bandwidth? 587 | | rt-types:bandwidth-ieee-float32 588 | +--rw one-way-utilized-bandwidth? 589 | | rt-types:bandwidth-ieee-float32 590 | +--rw two-way-delay? uint32 591 | +--rw one-way-min-delay? uint32 592 | +--rw one-way-max-delay? uint32 593 | +--rw one-way-delay-variation? uint32 594 | +--rw one-way-packet-loss? decimal64 595 | +--rw two-way-min-delay? uint32 596 | +--rw two-way-max-delay? uint32 597 | +--rw two-way-delay-variation? uint32 598 | +--rw two-way-packet-loss? decimal64 599 +--rw threshold-accelerated-advertisement 600 +--rw one-way-delay? uint32 601 +--rw one-way-residual-bandwidth? 602 | rt-types:bandwidth-ieee-float32 603 +--rw one-way-available-bandwidth? 604 | rt-types:bandwidth-ieee-float32 605 +--rw one-way-utilized-bandwidth? 606 | rt-types:bandwidth-ieee-float32 607 +--rw two-way-delay? uint32 608 +--rw one-way-min-delay? uint32 609 +--rw one-way-max-delay? uint32 610 +--rw one-way-delay-variation? uint32 611 +--rw one-way-packet-loss? decimal64 612 +--rw two-way-min-delay? uint32 613 +--rw two-way-max-delay? uint32 614 +--rw two-way-delay-variation? uint32 615 +--rw two-way-packet-loss? decimal64 616 augment /nw:networks/nw:network/nw:node/tet:te 617 /tet:information-source-entry/tet:connectivity-matrices: 618 +--ro performance-metrics-one-way {te-performance-metric}? 619 | +--ro one-way-delay? uint32 620 | +--ro one-way-delay-normality? 621 | | te-types:performance-metrics-normality 622 | +--ro one-way-residual-bandwidth? 623 | | rt-types:bandwidth-ieee-float32 624 | +--ro one-way-residual-bandwidth-normality? 625 | | te-types:performance-metrics-normality 626 | +--ro one-way-available-bandwidth? 627 | | rt-types:bandwidth-ieee-float32 628 | +--ro one-way-available-bandwidth-normality? 629 | | te-types:performance-metrics-normality 630 | +--ro one-way-utilized-bandwidth? 631 | | rt-types:bandwidth-ieee-float32 632 | +--ro one-way-utilized-bandwidth-normality? 633 | | te-types:performance-metrics-normality 634 | +--ro one-way-min-delay? uint32 635 | +--ro one-way-min-delay-normality? 636 | | te-types:performance-metrics-normality 637 | +--ro one-way-max-delay? uint32 638 | +--ro one-way-max-delay-normality? 639 | | te-types:performance-metrics-normality 640 | +--ro one-way-delay-variation? uint32 641 | +--ro one-way-delay-variation-normality? 642 | | te-types:performance-metrics-normality 643 | +--ro one-way-packet-loss? decimal64 644 | +--ro one-way-packet-loss-normality? 645 | te-types:performance-metrics-normality 646 +--ro performance-metrics-two-way {te-performance-metric}? 647 | +--ro two-way-delay? uint32 648 | +--ro two-way-delay-normality? 649 | | te-types:performance-metrics-normality 650 | +--ro two-way-min-delay? uint32 651 | +--ro two-way-min-delay-normality? 652 | | te-types:performance-metrics-normality 653 | +--ro two-way-max-delay? uint32 654 | +--ro two-way-max-delay-normality? 655 | | te-types:performance-metrics-normality 656 | +--ro two-way-delay-variation? uint32 657 | +--ro two-way-delay-variation-normality? 658 | | te-types:performance-metrics-normality 659 | +--ro two-way-packet-loss? decimal64 660 | +--ro two-way-packet-loss-normality? 661 | te-types:performance-metrics-normality 662 +--ro throttle {te-performance-metric}? 663 +--ro one-way-delay-offset? uint32 664 +--ro measure-interval? uint32 665 +--ro advertisement-interval? uint32 666 +--ro suppression-interval? uint32 667 +--ro threshold-out 668 | +--ro one-way-delay? uint32 669 | +--ro one-way-residual-bandwidth? 670 | | rt-types:bandwidth-ieee-float32 671 | +--ro one-way-available-bandwidth? 672 | | rt-types:bandwidth-ieee-float32 673 | +--ro one-way-utilized-bandwidth? 674 | | rt-types:bandwidth-ieee-float32 675 | +--ro two-way-delay? uint32 676 | +--ro one-way-min-delay? uint32 677 | +--ro one-way-max-delay? uint32 678 | +--ro one-way-delay-variation? uint32 679 | +--ro one-way-packet-loss? decimal64 680 | +--ro two-way-min-delay? uint32 681 | +--ro two-way-max-delay? uint32 682 | +--ro two-way-delay-variation? uint32 683 | +--ro two-way-packet-loss? decimal64 684 +--ro threshold-in 685 | +--ro one-way-delay? uint32 686 | +--ro one-way-residual-bandwidth? 687 | | rt-types:bandwidth-ieee-float32 688 | +--ro one-way-available-bandwidth? 689 | | rt-types:bandwidth-ieee-float32 690 | +--ro one-way-utilized-bandwidth? 691 | | rt-types:bandwidth-ieee-float32 692 | +--ro two-way-delay? uint32 693 | +--ro one-way-min-delay? uint32 694 | +--ro one-way-max-delay? uint32 695 | +--ro one-way-delay-variation? uint32 696 | +--ro one-way-packet-loss? decimal64 697 | +--ro two-way-min-delay? uint32 698 | +--ro two-way-max-delay? uint32 699 | +--ro two-way-delay-variation? uint32 700 | +--ro two-way-packet-loss? decimal64 701 +--ro threshold-accelerated-advertisement 702 +--ro one-way-delay? uint32 703 +--ro one-way-residual-bandwidth? 704 | rt-types:bandwidth-ieee-float32 705 +--ro one-way-available-bandwidth? 706 | rt-types:bandwidth-ieee-float32 707 +--ro one-way-utilized-bandwidth? 708 | rt-types:bandwidth-ieee-float32 709 +--ro two-way-delay? uint32 710 +--ro one-way-min-delay? uint32 711 +--ro one-way-max-delay? uint32 712 +--ro one-way-delay-variation? uint32 713 +--ro one-way-packet-loss? decimal64 714 +--ro two-way-min-delay? uint32 715 +--ro two-way-max-delay? uint32 716 +--ro two-way-delay-variation? uint32 717 +--ro two-way-packet-loss? decimal64 718 augment /nw:networks/nw:network/nw:node/tet:te 719 /tet:information-source-entry/tet:connectivity-matrices 720 /tet:connectivity-matrix: 721 +--ro performance-metrics-one-way {te-performance-metric}? 722 | +--ro one-way-delay? uint32 723 | +--ro one-way-delay-normality? 724 | | te-types:performance-metrics-normality 725 | +--ro one-way-residual-bandwidth? 726 | | rt-types:bandwidth-ieee-float32 727 | +--ro one-way-residual-bandwidth-normality? 728 | | te-types:performance-metrics-normality 729 | +--ro one-way-available-bandwidth? 730 | | rt-types:bandwidth-ieee-float32 731 | +--ro one-way-available-bandwidth-normality? 732 | | te-types:performance-metrics-normality 733 | +--ro one-way-utilized-bandwidth? 734 | | rt-types:bandwidth-ieee-float32 735 | +--ro one-way-utilized-bandwidth-normality? 736 | | te-types:performance-metrics-normality 737 | +--ro one-way-min-delay? uint32 738 | +--ro one-way-min-delay-normality? 739 | | te-types:performance-metrics-normality 740 | +--ro one-way-max-delay? uint32 741 | +--ro one-way-max-delay-normality? 742 | | te-types:performance-metrics-normality 743 | +--ro one-way-delay-variation? uint32 744 | +--ro one-way-delay-variation-normality? 745 | | te-types:performance-metrics-normality 746 | +--ro one-way-packet-loss? decimal64 747 | +--ro one-way-packet-loss-normality? 748 | te-types:performance-metrics-normality 749 +--ro performance-metrics-two-way {te-performance-metric}? 750 | +--ro two-way-delay? uint32 751 | +--ro two-way-delay-normality? 752 | | te-types:performance-metrics-normality 753 | +--ro two-way-min-delay? uint32 754 | +--ro two-way-min-delay-normality? 755 | | te-types:performance-metrics-normality 756 | +--ro two-way-max-delay? uint32 757 | +--ro two-way-max-delay-normality? 758 | | te-types:performance-metrics-normality 759 | +--ro two-way-delay-variation? uint32 760 | +--ro two-way-delay-variation-normality? 761 | | te-types:performance-metrics-normality 762 | +--ro two-way-packet-loss? decimal64 763 | +--ro two-way-packet-loss-normality? 764 | te-types:performance-metrics-normality 765 +--ro throttle {te-performance-metric}? 766 +--ro one-way-delay-offset? uint32 767 +--ro measure-interval? uint32 768 +--ro advertisement-interval? uint32 769 +--ro suppression-interval? uint32 770 +--ro threshold-out 771 | +--ro one-way-delay? uint32 772 | +--ro one-way-residual-bandwidth? 773 | | rt-types:bandwidth-ieee-float32 774 | +--ro one-way-available-bandwidth? 775 | | rt-types:bandwidth-ieee-float32 776 | +--ro one-way-utilized-bandwidth? 777 | | rt-types:bandwidth-ieee-float32 778 | +--ro two-way-delay? uint32 779 | +--ro one-way-min-delay? uint32 780 | +--ro one-way-max-delay? uint32 781 | +--ro one-way-delay-variation? uint32 782 | +--ro one-way-packet-loss? decimal64 783 | +--ro two-way-min-delay? uint32 784 | +--ro two-way-max-delay? uint32 785 | +--ro two-way-delay-variation? uint32 786 | +--ro two-way-packet-loss? decimal64 787 +--ro threshold-in 788 | +--ro one-way-delay? uint32 789 | +--ro one-way-residual-bandwidth? 790 | | rt-types:bandwidth-ieee-float32 791 | +--ro one-way-available-bandwidth? 792 | | rt-types:bandwidth-ieee-float32 793 | +--ro one-way-utilized-bandwidth? 794 | | rt-types:bandwidth-ieee-float32 795 | +--ro two-way-delay? uint32 796 | +--ro one-way-min-delay? uint32 797 | +--ro one-way-max-delay? uint32 798 | +--ro one-way-delay-variation? uint32 799 | +--ro one-way-packet-loss? decimal64 800 | +--ro two-way-min-delay? uint32 801 | +--ro two-way-max-delay? uint32 802 | +--ro two-way-delay-variation? uint32 803 | +--ro two-way-packet-loss? decimal64 804 +--ro threshold-accelerated-advertisement 805 +--ro one-way-delay? uint32 806 +--ro one-way-residual-bandwidth? 807 | rt-types:bandwidth-ieee-float32 808 +--ro one-way-available-bandwidth? 809 | rt-types:bandwidth-ieee-float32 810 +--ro one-way-utilized-bandwidth? 811 | rt-types:bandwidth-ieee-float32 812 +--ro two-way-delay? uint32 813 +--ro one-way-min-delay? uint32 814 +--ro one-way-max-delay? uint32 815 +--ro one-way-delay-variation? uint32 816 +--ro one-way-packet-loss? decimal64 817 +--ro two-way-min-delay? uint32 818 +--ro two-way-max-delay? uint32 819 +--ro two-way-delay-variation? uint32 820 +--ro two-way-packet-loss? decimal64 821 augment /nw:networks/nw:network/nw:node/tet:te 822 /tet:tunnel-termination-point 823 /tet:local-link-connectivities: 824 +--ro performance-metrics-one-way {te-performance-metric}? 825 | +--ro one-way-delay? uint32 826 | +--ro one-way-delay-normality? 827 | | te-types:performance-metrics-normality 828 | +--ro one-way-residual-bandwidth? 829 | | rt-types:bandwidth-ieee-float32 830 | +--ro one-way-residual-bandwidth-normality? 831 | | te-types:performance-metrics-normality 832 | +--ro one-way-available-bandwidth? 833 | | rt-types:bandwidth-ieee-float32 834 | +--ro one-way-available-bandwidth-normality? 835 | | te-types:performance-metrics-normality 836 | +--ro one-way-utilized-bandwidth? 837 | | rt-types:bandwidth-ieee-float32 838 | +--ro one-way-utilized-bandwidth-normality? 839 | | te-types:performance-metrics-normality 840 | +--ro one-way-min-delay? uint32 841 | +--ro one-way-min-delay-normality? 842 | | te-types:performance-metrics-normality 843 | +--ro one-way-max-delay? uint32 844 | +--ro one-way-max-delay-normality? 845 | | te-types:performance-metrics-normality 846 | +--ro one-way-delay-variation? uint32 847 | +--ro one-way-delay-variation-normality? 848 | | te-types:performance-metrics-normality 849 | +--ro one-way-packet-loss? decimal64 850 | +--ro one-way-packet-loss-normality? 851 | te-types:performance-metrics-normality 852 +--ro performance-metrics-two-way {te-performance-metric}? 853 | +--ro two-way-delay? uint32 854 | +--ro two-way-delay-normality? 855 | | te-types:performance-metrics-normality 856 | +--ro two-way-min-delay? uint32 857 | +--ro two-way-min-delay-normality? 858 | | te-types:performance-metrics-normality 859 | +--ro two-way-max-delay? uint32 860 | +--ro two-way-max-delay-normality? 861 | | te-types:performance-metrics-normality 862 | +--ro two-way-delay-variation? uint32 863 | +--ro two-way-delay-variation-normality? 864 | | te-types:performance-metrics-normality 865 | +--ro two-way-packet-loss? decimal64 866 | +--ro two-way-packet-loss-normality? 867 | te-types:performance-metrics-normality 868 +--rw throttle {te-performance-metric}? 869 +--rw one-way-delay-offset? uint32 870 +--rw measure-interval? uint32 871 +--rw advertisement-interval? uint32 872 +--rw suppression-interval? uint32 873 +--rw threshold-out 874 | +--rw one-way-delay? uint32 875 | +--rw one-way-residual-bandwidth? 876 | | rt-types:bandwidth-ieee-float32 877 | +--rw one-way-available-bandwidth? 878 | | rt-types:bandwidth-ieee-float32 879 | +--rw one-way-utilized-bandwidth? 880 | | rt-types:bandwidth-ieee-float32 881 | +--rw two-way-delay? uint32 882 | +--rw one-way-min-delay? uint32 883 | +--rw one-way-max-delay? uint32 884 | +--rw one-way-delay-variation? uint32 885 | +--rw one-way-packet-loss? decimal64 886 | +--rw two-way-min-delay? uint32 887 | +--rw two-way-max-delay? uint32 888 | +--rw two-way-delay-variation? uint32 889 | +--rw two-way-packet-loss? decimal64 890 +--rw threshold-in 891 | +--rw one-way-delay? uint32 892 | +--rw one-way-residual-bandwidth? 893 | | rt-types:bandwidth-ieee-float32 894 | +--rw one-way-available-bandwidth? 895 | | rt-types:bandwidth-ieee-float32 896 | +--rw one-way-utilized-bandwidth? 897 | | rt-types:bandwidth-ieee-float32 898 | +--rw two-way-delay? uint32 899 | +--rw one-way-min-delay? uint32 900 | +--rw one-way-max-delay? uint32 901 | +--rw one-way-delay-variation? uint32 902 | +--rw one-way-packet-loss? decimal64 903 | +--rw two-way-min-delay? uint32 904 | +--rw two-way-max-delay? uint32 905 | +--rw two-way-delay-variation? uint32 906 | +--rw two-way-packet-loss? decimal64 907 +--rw threshold-accelerated-advertisement 908 +--rw one-way-delay? uint32 909 +--rw one-way-residual-bandwidth? 910 | rt-types:bandwidth-ieee-float32 911 +--rw one-way-available-bandwidth? 912 | rt-types:bandwidth-ieee-float32 913 +--rw one-way-utilized-bandwidth? 914 | rt-types:bandwidth-ieee-float32 915 +--rw two-way-delay? uint32 916 +--rw one-way-min-delay? uint32 917 +--rw one-way-max-delay? uint32 918 +--rw one-way-delay-variation? uint32 919 +--rw one-way-packet-loss? decimal64 920 +--rw two-way-min-delay? uint32 921 +--rw two-way-max-delay? uint32 922 +--rw two-way-delay-variation? uint32 923 +--rw two-way-packet-loss? decimal64 924 augment /nw:networks/nw:network/nw:node/tet:te 925 /tet:tunnel-termination-point 926 /tet:local-link-connectivities 927 /tet:local-link-connectivity: 928 +--ro performance-metrics-one-way {te-performance-metric}? 929 | +--ro one-way-delay? uint32 930 | +--ro one-way-delay-normality? 931 | | te-types:performance-metrics-normality 932 | +--ro one-way-residual-bandwidth? 933 | | rt-types:bandwidth-ieee-float32 934 | +--ro one-way-residual-bandwidth-normality? 935 | | te-types:performance-metrics-normality 936 | +--ro one-way-available-bandwidth? 937 | | rt-types:bandwidth-ieee-float32 938 | +--ro one-way-available-bandwidth-normality? 939 | | te-types:performance-metrics-normality 940 | +--ro one-way-utilized-bandwidth? 941 | | rt-types:bandwidth-ieee-float32 942 | +--ro one-way-utilized-bandwidth-normality? 943 | | te-types:performance-metrics-normality 944 | +--ro one-way-min-delay? uint32 945 | +--ro one-way-min-delay-normality? 946 | | te-types:performance-metrics-normality 947 | +--ro one-way-max-delay? uint32 948 | +--ro one-way-max-delay-normality? 949 | | te-types:performance-metrics-normality 950 | +--ro one-way-delay-variation? uint32 951 | +--ro one-way-delay-variation-normality? 952 | | te-types:performance-metrics-normality 953 | +--ro one-way-packet-loss? decimal64 954 | +--ro one-way-packet-loss-normality? 955 | te-types:performance-metrics-normality 956 +--ro performance-metrics-two-way {te-performance-metric}? 957 | +--ro two-way-delay? uint32 958 | +--ro two-way-delay-normality? 959 | | te-types:performance-metrics-normality 960 | +--ro two-way-min-delay? uint32 961 | +--ro two-way-min-delay-normality? 962 | | te-types:performance-metrics-normality 963 | +--ro two-way-max-delay? uint32 964 | +--ro two-way-max-delay-normality? 965 | | te-types:performance-metrics-normality 966 | +--ro two-way-delay-variation? uint32 967 | +--ro two-way-delay-variation-normality? 968 | | te-types:performance-metrics-normality 969 | +--ro two-way-packet-loss? decimal64 970 | +--ro two-way-packet-loss-normality? 971 | te-types:performance-metrics-normality 972 +--rw throttle {te-performance-metric}? 973 +--rw one-way-delay-offset? uint32 974 +--rw measure-interval? uint32 975 +--rw advertisement-interval? uint32 976 +--rw suppression-interval? uint32 977 +--rw threshold-out 978 | +--rw one-way-delay? uint32 979 | +--rw one-way-residual-bandwidth? 980 | | rt-types:bandwidth-ieee-float32 981 | +--rw one-way-available-bandwidth? 982 | | rt-types:bandwidth-ieee-float32 983 | +--rw one-way-utilized-bandwidth? 984 | | rt-types:bandwidth-ieee-float32 985 | +--rw two-way-delay? uint32 986 | +--rw one-way-min-delay? uint32 987 | +--rw one-way-max-delay? uint32 988 | +--rw one-way-delay-variation? uint32 989 | +--rw one-way-packet-loss? decimal64 990 | +--rw two-way-min-delay? uint32 991 | +--rw two-way-max-delay? uint32 992 | +--rw two-way-delay-variation? uint32 993 | +--rw two-way-packet-loss? decimal64 994 +--rw threshold-in 995 | +--rw one-way-delay? uint32 996 | +--rw one-way-residual-bandwidth? 997 | | rt-types:bandwidth-ieee-float32 998 | +--rw one-way-available-bandwidth? 999 | | rt-types:bandwidth-ieee-float32 1000 | +--rw one-way-utilized-bandwidth? 1001 | | rt-types:bandwidth-ieee-float32 1002 | +--rw two-way-delay? uint32 1003 | +--rw one-way-min-delay? uint32 1004 | +--rw one-way-max-delay? uint32 1005 | +--rw one-way-delay-variation? uint32 1006 | +--rw one-way-packet-loss? decimal64 1007 | +--rw two-way-min-delay? uint32 1008 | +--rw two-way-max-delay? uint32 1009 | +--rw two-way-delay-variation? uint32 1010 | +--rw two-way-packet-loss? decimal64 1011 +--rw threshold-accelerated-advertisement 1012 +--rw one-way-delay? uint32 1013 +--rw one-way-residual-bandwidth? 1014 | rt-types:bandwidth-ieee-float32 1015 +--rw one-way-available-bandwidth? 1016 | rt-types:bandwidth-ieee-float32 1017 +--rw one-way-utilized-bandwidth? 1018 | rt-types:bandwidth-ieee-float32 1019 +--rw two-way-delay? uint32 1020 +--rw one-way-min-delay? uint32 1021 +--rw one-way-max-delay? uint32 1022 +--rw one-way-delay-variation? uint32 1023 +--rw one-way-packet-loss? decimal64 1024 +--rw two-way-min-delay? uint32 1025 +--rw two-way-max-delay? uint32 1026 +--rw two-way-delay-variation? uint32 1027 +--rw two-way-packet-loss? decimal64 1028 augment /nw:networks/tet:te/tet:templates/tet:link-template 1029 /tet:te-link-attributes: 1030 +--ro performance-metrics-one-way {te-performance-metric}? 1031 | +--ro one-way-delay? uint32 1032 | +--ro one-way-delay-normality? 1033 | | te-types:performance-metrics-normality 1034 | +--ro one-way-residual-bandwidth? 1035 | | rt-types:bandwidth-ieee-float32 1036 | +--ro one-way-residual-bandwidth-normality? 1037 | | te-types:performance-metrics-normality 1038 | +--ro one-way-available-bandwidth? 1039 | | rt-types:bandwidth-ieee-float32 1040 | +--ro one-way-available-bandwidth-normality? 1041 | | te-types:performance-metrics-normality 1042 | +--ro one-way-utilized-bandwidth? 1043 | | rt-types:bandwidth-ieee-float32 1044 | +--ro one-way-utilized-bandwidth-normality? 1045 | | te-types:performance-metrics-normality 1046 | +--ro one-way-min-delay? uint32 1047 | +--ro one-way-min-delay-normality? 1048 | | te-types:performance-metrics-normality 1049 | +--ro one-way-max-delay? uint32 1050 | +--ro one-way-max-delay-normality? 1051 | | te-types:performance-metrics-normality 1052 | +--ro one-way-delay-variation? uint32 1053 | +--ro one-way-delay-variation-normality? 1054 | | te-types:performance-metrics-normality 1055 | +--ro one-way-packet-loss? decimal64 1056 | +--ro one-way-packet-loss-normality? 1057 | te-types:performance-metrics-normality 1058 +--ro performance-metrics-two-way {te-performance-metric}? 1059 | +--ro two-way-delay? uint32 1060 | +--ro two-way-delay-normality? 1061 | | te-types:performance-metrics-normality 1062 | +--ro two-way-min-delay? uint32 1063 | +--ro two-way-min-delay-normality? 1064 | | te-types:performance-metrics-normality 1065 | +--ro two-way-max-delay? uint32 1066 | +--ro two-way-max-delay-normality? 1067 | | te-types:performance-metrics-normality 1068 | +--ro two-way-delay-variation? uint32 1069 | +--ro two-way-delay-variation-normality? 1070 | | te-types:performance-metrics-normality 1071 | +--ro two-way-packet-loss? decimal64 1072 | +--ro two-way-packet-loss-normality? 1073 | te-types:performance-metrics-normality 1074 +--rw throttle {te-performance-metric}? 1075 +--rw one-way-delay-offset? uint32 1076 +--rw measure-interval? uint32 1077 +--rw advertisement-interval? uint32 1078 +--rw suppression-interval? uint32 1079 +--rw threshold-out 1080 | +--rw one-way-delay? uint32 1081 | +--rw one-way-residual-bandwidth? 1082 | | rt-types:bandwidth-ieee-float32 1083 | +--rw one-way-available-bandwidth? 1084 | | rt-types:bandwidth-ieee-float32 1085 | +--rw one-way-utilized-bandwidth? 1086 | | rt-types:bandwidth-ieee-float32 1087 | +--rw two-way-delay? uint32 1088 | +--rw one-way-min-delay? uint32 1089 | +--rw one-way-max-delay? uint32 1090 | +--rw one-way-delay-variation? uint32 1091 | +--rw one-way-packet-loss? decimal64 1092 | +--rw two-way-min-delay? uint32 1093 | +--rw two-way-max-delay? uint32 1094 | +--rw two-way-delay-variation? uint32 1095 | +--rw two-way-packet-loss? decimal64 1096 +--rw threshold-in 1097 | +--rw one-way-delay? uint32 1098 | +--rw one-way-residual-bandwidth? 1099 | | rt-types:bandwidth-ieee-float32 1100 | +--rw one-way-available-bandwidth? 1101 | | rt-types:bandwidth-ieee-float32 1102 | +--rw one-way-utilized-bandwidth? 1103 | | rt-types:bandwidth-ieee-float32 1104 | +--rw two-way-delay? uint32 1105 | +--rw one-way-min-delay? uint32 1106 | +--rw one-way-max-delay? uint32 1107 | +--rw one-way-delay-variation? uint32 1108 | +--rw one-way-packet-loss? decimal64 1109 | +--rw two-way-min-delay? uint32 1110 | +--rw two-way-max-delay? uint32 1111 | +--rw two-way-delay-variation? uint32 1112 | +--rw two-way-packet-loss? decimal64 1113 +--rw threshold-accelerated-advertisement 1114 +--rw one-way-delay? uint32 1115 +--rw one-way-residual-bandwidth? 1116 | rt-types:bandwidth-ieee-float32 1117 +--rw one-way-available-bandwidth? 1118 | rt-types:bandwidth-ieee-float32 1119 +--rw one-way-utilized-bandwidth? 1120 | rt-types:bandwidth-ieee-float32 1121 +--rw two-way-delay? uint32 1122 +--rw one-way-min-delay? uint32 1123 +--rw one-way-max-delay? uint32 1124 +--rw one-way-delay-variation? uint32 1125 +--rw one-way-packet-loss? decimal64 1126 +--rw two-way-min-delay? uint32 1127 +--rw two-way-max-delay? uint32 1128 +--rw two-way-delay-variation? uint32 1129 +--rw two-way-packet-loss? decimal64 1130 augment /nw:networks/nw:network/nt:link/tet:te 1131 /tet:te-link-attributes: 1132 +--ro performance-metrics-one-way {te-performance-metric}? 1133 | +--ro one-way-delay? uint32 1134 | +--ro one-way-delay-normality? 1135 | | te-types:performance-metrics-normality 1136 | +--ro one-way-residual-bandwidth? 1137 | | rt-types:bandwidth-ieee-float32 1138 | +--ro one-way-residual-bandwidth-normality? 1139 | | te-types:performance-metrics-normality 1140 | +--ro one-way-available-bandwidth? 1141 | | rt-types:bandwidth-ieee-float32 1142 | +--ro one-way-available-bandwidth-normality? 1143 | | te-types:performance-metrics-normality 1144 | +--ro one-way-utilized-bandwidth? 1145 | | rt-types:bandwidth-ieee-float32 1146 | +--ro one-way-utilized-bandwidth-normality? 1147 | | te-types:performance-metrics-normality 1148 | +--ro one-way-min-delay? uint32 1149 | +--ro one-way-min-delay-normality? 1150 | | te-types:performance-metrics-normality 1151 | +--ro one-way-max-delay? uint32 1152 | +--ro one-way-max-delay-normality? 1153 | | te-types:performance-metrics-normality 1154 | +--ro one-way-delay-variation? uint32 1155 | +--ro one-way-delay-variation-normality? 1156 | | te-types:performance-metrics-normality 1157 | +--ro one-way-packet-loss? decimal64 1158 | +--ro one-way-packet-loss-normality? 1159 | te-types:performance-metrics-normality 1160 +--ro performance-metrics-two-way {te-performance-metric}? 1161 | +--ro two-way-delay? uint32 1162 | +--ro two-way-delay-normality? 1163 | | te-types:performance-metrics-normality 1164 | +--ro two-way-min-delay? uint32 1165 | +--ro two-way-min-delay-normality? 1166 | | te-types:performance-metrics-normality 1167 | +--ro two-way-max-delay? uint32 1168 | +--ro two-way-max-delay-normality? 1169 | | te-types:performance-metrics-normality 1170 | +--ro two-way-delay-variation? uint32 1171 | +--ro two-way-delay-variation-normality? 1172 | | te-types:performance-metrics-normality 1173 | +--ro two-way-packet-loss? decimal64 1174 | +--ro two-way-packet-loss-normality? 1175 | te-types:performance-metrics-normality 1176 +--rw throttle {te-performance-metric}? 1177 +--rw one-way-delay-offset? uint32 1178 +--rw measure-interval? uint32 1179 +--rw advertisement-interval? uint32 1180 +--rw suppression-interval? uint32 1181 +--rw threshold-out 1182 | +--rw one-way-delay? uint32 1183 | +--rw one-way-residual-bandwidth? 1184 | | rt-types:bandwidth-ieee-float32 1185 | +--rw one-way-available-bandwidth? 1186 | | rt-types:bandwidth-ieee-float32 1187 | +--rw one-way-utilized-bandwidth? 1188 | | rt-types:bandwidth-ieee-float32 1189 | +--rw two-way-delay? uint32 1190 | +--rw one-way-min-delay? uint32 1191 | +--rw one-way-max-delay? uint32 1192 | +--rw one-way-delay-variation? uint32 1193 | +--rw one-way-packet-loss? decimal64 1194 | +--rw two-way-min-delay? uint32 1195 | +--rw two-way-max-delay? uint32 1196 | +--rw two-way-delay-variation? uint32 1197 | +--rw two-way-packet-loss? decimal64 1198 +--rw threshold-in 1199 | +--rw one-way-delay? uint32 1200 | +--rw one-way-residual-bandwidth? 1201 | | rt-types:bandwidth-ieee-float32 1202 | +--rw one-way-available-bandwidth? 1203 | | rt-types:bandwidth-ieee-float32 1204 | +--rw one-way-utilized-bandwidth? 1205 | | rt-types:bandwidth-ieee-float32 1206 | +--rw two-way-delay? uint32 1207 | +--rw one-way-min-delay? uint32 1208 | +--rw one-way-max-delay? uint32 1209 | +--rw one-way-delay-variation? uint32 1210 | +--rw one-way-packet-loss? decimal64 1211 | +--rw two-way-min-delay? uint32 1212 | +--rw two-way-max-delay? uint32 1213 | +--rw two-way-delay-variation? uint32 1214 | +--rw two-way-packet-loss? decimal64 1215 +--rw threshold-accelerated-advertisement 1216 +--rw one-way-delay? uint32 1217 +--rw one-way-residual-bandwidth? 1218 | rt-types:bandwidth-ieee-float32 1219 +--rw one-way-available-bandwidth? 1220 | rt-types:bandwidth-ieee-float32 1221 +--rw one-way-utilized-bandwidth? 1222 | rt-types:bandwidth-ieee-float32 1223 +--rw two-way-delay? uint32 1224 +--rw one-way-min-delay? uint32 1225 +--rw one-way-max-delay? uint32 1226 +--rw one-way-delay-variation? uint32 1227 +--rw one-way-packet-loss? decimal64 1228 +--rw two-way-min-delay? uint32 1229 +--rw two-way-max-delay? uint32 1230 +--rw two-way-delay-variation? uint32 1231 +--rw two-way-packet-loss? decimal64 1232 augment /nw:networks/nw:network/nt:link/tet:te 1233 /tet:information-source-entry: 1234 +--ro performance-metrics-one-way {te-performance-metric}? 1235 | +--ro one-way-delay? uint32 1236 | +--ro one-way-delay-normality? 1237 | | te-types:performance-metrics-normality 1238 | +--ro one-way-residual-bandwidth? 1239 | | rt-types:bandwidth-ieee-float32 1240 | +--ro one-way-residual-bandwidth-normality? 1241 | | te-types:performance-metrics-normality 1242 | +--ro one-way-available-bandwidth? 1243 | | rt-types:bandwidth-ieee-float32 1244 | +--ro one-way-available-bandwidth-normality? 1245 | | te-types:performance-metrics-normality 1246 | +--ro one-way-utilized-bandwidth? 1247 | | rt-types:bandwidth-ieee-float32 1248 | +--ro one-way-utilized-bandwidth-normality? 1249 | | te-types:performance-metrics-normality 1250 | +--ro one-way-min-delay? uint32 1251 | +--ro one-way-min-delay-normality? 1252 | | te-types:performance-metrics-normality 1253 | +--ro one-way-max-delay? uint32 1254 | +--ro one-way-max-delay-normality? 1255 | | te-types:performance-metrics-normality 1256 | +--ro one-way-delay-variation? uint32 1257 | +--ro one-way-delay-variation-normality? 1258 | | te-types:performance-metrics-normality 1259 | +--ro one-way-packet-loss? decimal64 1260 | +--ro one-way-packet-loss-normality? 1261 | te-types:performance-metrics-normality 1262 +--ro performance-metrics-two-way {te-performance-metric}? 1263 | +--ro two-way-delay? uint32 1264 | +--ro two-way-delay-normality? 1265 | | te-types:performance-metrics-normality 1266 | +--ro two-way-min-delay? uint32 1267 | +--ro two-way-min-delay-normality? 1268 | | te-types:performance-metrics-normality 1269 | +--ro two-way-max-delay? uint32 1270 | +--ro two-way-max-delay-normality? 1271 | | te-types:performance-metrics-normality 1272 | +--ro two-way-delay-variation? uint32 1273 | +--ro two-way-delay-variation-normality? 1274 | | te-types:performance-metrics-normality 1275 | +--ro two-way-packet-loss? decimal64 1276 | +--ro two-way-packet-loss-normality? 1277 | te-types:performance-metrics-normality 1278 +--ro throttle {te-performance-metric}? 1279 +--ro one-way-delay-offset? uint32 1280 +--ro measure-interval? uint32 1281 +--ro advertisement-interval? uint32 1282 +--ro suppression-interval? uint32 1283 +--ro threshold-out 1284 | +--ro one-way-delay? uint32 1285 | +--ro one-way-residual-bandwidth? 1286 | | rt-types:bandwidth-ieee-float32 1287 | +--ro one-way-available-bandwidth? 1288 | | rt-types:bandwidth-ieee-float32 1289 | +--ro one-way-utilized-bandwidth? 1290 | | rt-types:bandwidth-ieee-float32 1291 | +--ro two-way-delay? uint32 1292 | +--ro one-way-min-delay? uint32 1293 | +--ro one-way-max-delay? uint32 1294 | +--ro one-way-delay-variation? uint32 1295 | +--ro one-way-packet-loss? decimal64 1296 | +--ro two-way-min-delay? uint32 1297 | +--ro two-way-max-delay? uint32 1298 | +--ro two-way-delay-variation? uint32 1299 | +--ro two-way-packet-loss? decimal64 1300 +--ro threshold-in 1301 | +--ro one-way-delay? uint32 1302 | +--ro one-way-residual-bandwidth? 1303 | | rt-types:bandwidth-ieee-float32 1304 | +--ro one-way-available-bandwidth? 1305 | | rt-types:bandwidth-ieee-float32 1306 | +--ro one-way-utilized-bandwidth? 1307 | | rt-types:bandwidth-ieee-float32 1308 | +--ro two-way-delay? uint32 1309 | +--ro one-way-min-delay? uint32 1310 | +--ro one-way-max-delay? uint32 1311 | +--ro one-way-delay-variation? uint32 1312 | +--ro one-way-packet-loss? decimal64 1313 | +--ro two-way-min-delay? uint32 1314 | +--ro two-way-max-delay? uint32 1315 | +--ro two-way-delay-variation? uint32 1316 | +--ro two-way-packet-loss? decimal64 1317 +--ro threshold-accelerated-advertisement 1318 +--ro one-way-delay? uint32 1319 +--ro one-way-residual-bandwidth? 1320 | rt-types:bandwidth-ieee-float32 1321 +--ro one-way-available-bandwidth? 1322 | rt-types:bandwidth-ieee-float32 1323 +--ro one-way-utilized-bandwidth? 1324 | rt-types:bandwidth-ieee-float32 1325 +--ro two-way-delay? uint32 1326 +--ro one-way-min-delay? uint32 1327 +--ro one-way-max-delay? uint32 1328 +--ro one-way-delay-variation? uint32 1329 +--ro one-way-packet-loss? decimal64 1330 +--ro two-way-min-delay? uint32 1331 +--ro two-way-max-delay? uint32 1332 +--ro two-way-delay-variation? uint32 1333 +--ro two-way-packet-loss? decimal64 1334 augment /nw:networks/tet:te/tet:templates/tet:link-template 1335 /tet:te-link-attributes 1336 /tet:interface-switching-capability: 1337 +--rw packet-switch-capable 1338 +--rw minimum-lsp-bandwidth? rt-types:bandwidth-ieee-float32 1339 +--rw interface-mtu? uint16 1340 augment /nw:networks/nw:network/nt:link/tet:te 1341 /tet:te-link-attributes 1342 /tet:interface-switching-capability: 1343 +--rw packet-switch-capable 1344 +--rw minimum-lsp-bandwidth? rt-types:bandwidth-ieee-float32 1345 +--rw interface-mtu? uint16 1346 augment /nw:networks/nw:network/nt:link/tet:te 1347 /tet:information-source-entry 1348 /tet:interface-switching-capability: 1349 +--ro packet-switch-capable 1350 +--ro minimum-lsp-bandwidth? rt-types:bandwidth-ieee-float32 1351 +--ro interface-mtu? uint16 1353 5. YANG Modules 1355 5.1. Layer 3 TE Topology Module 1357 This module references [RFC8345], [RFC8346], and 1358 [I-D.ietf-teas-yang-te-topo]. 1360 file "ietf-l3-te-topology@2020-05-03.yang" 1361 module ietf-l3-te-topology { 1362 yang-version 1.1; 1363 namespace "urn:ietf:params:xml:ns:yang:ietf-l3-te-topology"; 1364 prefix "l3tet"; 1366 import ietf-network { 1367 prefix "nw"; 1368 reference "RFC 8345: A YANG Data Model for Network Topologies"; 1369 } 1370 import ietf-network-topology { 1371 prefix "nt"; 1372 reference "RFC 8345: A YANG Data Model for Network Topologies"; 1373 } 1374 import ietf-l3-unicast-topology { 1375 prefix "l3t"; 1376 reference "RFC 8346: A YANG Data Model for Layer 3 Topologies"; 1377 } 1378 import ietf-te-topology { 1379 prefix "tet"; 1380 reference 1381 "I-D.ietf-teas-yang-te-topo: YANG Data Model for Traffic 1382 Engineering (TE) Topologies"; 1383 } 1385 organization 1386 "IETF Traffic Engineering Architecture and Signaling (TEAS) 1387 Working Group"; 1389 contact 1390 "WG Web: 1391 WG List: 1393 Editor: Xufeng Liu 1394 1396 Editor: Igor Bryskin 1397 1399 Editor: Vishnu Pavan Beeram 1400 1402 Editor: Tarek Saad 1403 1405 Editor: Himanshu Shah 1406 1408 Editor: Oscar Gonzalez De Dios 1409 "; 1411 description 1412 "YANG data model for representing and manipulating Layer 3 TE 1413 Topologies. 1415 Copyright (c) 2018 IETF Trust and the persons identified as 1416 authors of the code. All rights reserved. 1418 Redistribution and use in source and binary forms, with or 1419 without modification, is permitted pursuant to, and subject to 1420 the license terms contained in, the Simplified BSD License set 1421 forth in Section 4.c of the IETF Trust's Legal Provisions 1422 Relating to IETF Documents 1423 (http://trustee.ietf.org/license-info). 1425 This version of this YANG module is part of RFC XXXX; see the 1426 RFC itself for full legal notices."; 1428 revision 2020-05-03 { 1430 description 1431 "Initial revision"; 1432 reference "RFC XXXX: YANG Data Model for Layer 3 TE Topologies"; 1433 } 1435 grouping l3-te-topology-type { 1436 description 1437 "Identifies the L3 TE topology type."; 1438 container l3-te { 1439 presence "Indicates L3 TE Topology"; 1440 description 1441 "Its presence identifies the L3 TE topology type."; 1442 } 1443 } 1445 augment "/nw:networks/nw:network/nw:network-types/" 1446 + "l3t:l3-unicast-topology" { 1447 description 1448 "Defines the L3 TE topology type."; 1449 uses l3-te-topology-type; 1450 } 1452 augment "/nw:networks/nw:network/l3t:l3-topology-attributes" { 1453 when "../nw:network-types/l3t:l3-unicast-topology/l3tet:l3-te" { 1454 description 1455 "Augment only for L3 TE topology"; 1456 } 1457 description 1458 "Augment topology configuration"; 1459 uses l3-te-topology-attributes; 1460 } 1462 augment "/nw:networks/nw:network/nw:node/l3t:l3-node-attributes" { 1463 when "../../nw:network-types/l3t:l3-unicast-topology/" 1464 + "l3tet:l3-te" { 1465 description 1466 "Augment only for L3 TE topology"; 1467 } 1468 description 1469 "Augment node configuration"; 1470 uses l3-te-node-attributes; 1471 } 1473 augment "/nw:networks/nw:network/nw:node/nt:termination-point/" 1474 + "l3t:l3-termination-point-attributes" { 1475 when "../../../nw:network-types/l3t:l3-unicast-topology/" 1476 + "l3tet:l3-te" { 1477 description 1478 "Augment only for L3 TE topology"; 1479 } 1480 description 1481 "Augment termination point configuration"; 1482 uses l3-te-tp-attributes; 1483 } 1485 augment "/nw:networks/nw:network/nt:link/l3t:l3-link-attributes" { 1486 when "../../nw:network-types/l3t:l3-unicast-topology/" 1487 + "l3tet:l3-te" { 1488 description 1489 "Augment only for L3 TE topology"; 1490 } 1491 description 1492 "Augment link configuration"; 1493 uses l3-te-link-attributes; 1494 } 1496 grouping l3-te-topology-attributes { 1497 description 1498 "L3 TE topology scope attributes"; 1499 container l3-te-topology-attributes { 1500 must "/nw:networks/nw:network" 1501 + "[nw:network-id = current()/network-ref]/nw:network-types/" 1502 + "tet:te-topology" { 1503 error-message 1504 "The referenced network must be a TE topology."; 1505 description 1506 "The referenced network must be a TE topology."; 1507 } 1508 description 1509 "Containing TE topology references"; 1510 uses nw:network-ref; 1511 } // l3-te-topology-attributes 1512 } // l3-te-topology-attributes 1513 grouping l3-te-node-attributes { 1514 description 1515 "L3 TE node scope attributes"; 1516 container l3-te-node-attributes { 1517 must "/nw:networks/nw:network" 1518 + "[nw:network-id = current()/network-ref]/nw:network-types/" 1519 + "tet:te-topology" { 1520 error-message 1521 "The referenced network must be a TE topology."; 1522 description 1523 "The referenced network must be a TE topology."; 1524 } 1525 description 1526 "Containing TE node references"; 1527 uses nw:node-ref; 1528 } // l3-te 1529 } // l3-te-node-attributes 1531 grouping l3-te-tp-attributes { 1532 description 1533 "L3 TE termination point scope attributes"; 1534 container l3-te-tp-attributes { 1535 must "/nw:networks/nw:network" 1536 + "[nw:network-id = current()/network-ref]/nw:network-types/" 1537 + "tet:te-topology" { 1538 error-message 1539 "The referenced network must be a TE topology."; 1540 description 1541 "The referenced network must be a TE topology."; 1542 } 1543 description 1544 "Containing TE termination point references"; 1545 uses nt:tp-ref; 1546 } // l3-te 1547 } // l3-te-tp-attributes 1549 grouping l3-te-link-attributes { 1550 description 1551 "L3 TE link scope attributes"; 1552 container l3-te-link-attributes { 1553 must "/nw:networks/nw:network" 1554 + "[nw:network-id = current()/network-ref]/nw:network-types/" 1555 + "tet:te-topology" { 1556 error-message 1557 "The referenced network must be a TE topology."; 1558 description 1559 "The referenced network must be a TE topology."; 1560 } 1561 description 1562 "Containing TE link references"; 1563 uses nt:link-ref; 1564 } 1565 } // l3-te-link-attributes 1566 } 1567 1569 5.2. Packet Switching TE Topology Module 1571 This module references [RFC7471], [RFC7823], [RFC8294], [RFC8345], 1572 [RFC8346]. [RFC8570], [I-D.ietf-teas-yang-te-types], and 1573 [I-D.ietf-teas-yang-te-topo]. 1575 file "ietf-te-topology-packet@2020-07-03.yang" 1576 module ietf-te-topology-packet { 1577 yang-version 1.1; 1578 namespace "urn:ietf:params:xml:ns:yang:ietf-te-topology-packet"; 1580 prefix "tet-pkt"; 1582 import ietf-network { 1583 prefix "nw"; 1584 reference 1585 "RFC 8345: A YANG Data Model for Network Topologies"; 1586 } 1588 import ietf-network-topology { 1589 prefix "nt"; 1590 reference 1591 "RFC 8345: A YANG Data Model for Network Topologies"; 1592 } 1594 import ietf-routing-types { 1595 prefix "rt-types"; 1596 reference 1597 "RFC 8294: Common YANG Data Types for the Routing Area"; 1598 } 1600 import ietf-te-topology { 1601 prefix "tet"; 1602 reference 1603 "I-D.ietf-teas-yang-te-topo: YANG Data Model for Traffic 1604 Engineering (TE) Topologies"; 1605 } 1606 import ietf-te-types { 1607 prefix "te-types"; 1608 reference 1609 "I-D.ietf-teas-yang-te-types: Traffic Engineering Common YANG 1610 Types"; 1611 } 1613 import ietf-te-packet-types { 1614 prefix "te-packet-types"; 1615 reference 1616 "I-D.ietf-teas-yang-te-types: Traffic Engineering Common YANG 1617 Types"; 1618 } 1620 organization 1621 "Traffic Engineering Architecture and Signaling (TEAS) 1622 Working Group"; 1624 contact 1625 "WG Web: 1626 WG List: 1628 Editor: Xufeng Liu 1629 1631 Editor: Igor Bryskin 1632 1634 Editor: Vishnu Pavan Beeram 1635 1637 Editor: Tarek Saad 1638 1640 Editor: Himanshu Shah 1641 1643 Editor: Oscar Gonzalez De Dios 1644 "; 1646 description 1647 "YANG data model for representing and manipulating PSC (Packet 1648 Switching) TE Topologies. 1650 Copyright (c) 2018 IETF Trust and the persons identified as 1651 authors of the code. All rights reserved. 1653 Redistribution and use in source and binary forms, with or 1654 without modification, is permitted pursuant to, and subject to 1655 the license terms contained in, the Simplified BSD License set 1656 forth in Section 4.c of the IETF Trust's Legal Provisions 1657 Relating to IETF Documents 1658 (http://trustee.ietf.org/license-info). 1660 This version of this YANG module is part of RFC XXXX; see the 1661 RFC itself for full legal notices."; 1663 revision 2020-07-03 { 1664 description 1665 "Initial revision"; 1666 reference 1667 "RFC XXXX: YANG Data Model for Layer 3 TE Topologies"; 1668 } 1670 /* 1671 * Features 1672 */ 1674 feature te-performance-metric { 1675 description 1676 "This feature indicates that the system supports 1677 TE performance metric."; 1678 reference 1679 "RFC7471: OSPF Traffic Engineering (TE) Metric Extensions. 1680 RFC8570: IS-IS Traffic Engineering (TE) Metric Extensions. 1681 RFC7823: Performance-Based Path Selection for Explicitly 1682 Routed Label Switched Paths (LSPs) Using TE Metric 1683 Extensions"; 1684 } 1686 /* 1687 * Groupings 1688 */ 1689 grouping packet-switch-capable-container { 1690 description 1691 "The container of packet switch capable attributes."; 1692 container packet-switch-capable { 1693 description 1694 "Interface has packet-switching capabilities."; 1695 leaf minimum-lsp-bandwidth { 1696 type rt-types:bandwidth-ieee-float32; 1697 description 1698 "Minimum LSP Bandwidth. Units in bytes per second"; 1699 } 1700 leaf interface-mtu { 1701 type uint16; 1702 description 1703 "Interface MTU."; 1704 } 1705 } 1706 } 1708 /* 1709 * Augmentations 1710 */ 1711 /* Augmentations to network-types */ 1712 augment "/nw:networks/nw:network/nw:network-types/" 1713 + "tet:te-topology" { 1714 description 1715 "Defines the packet TE topology type."; 1716 container packet { 1717 presence "Indicates packet TE topology."; 1718 description 1719 "Its presence identifies the packet TE topology type."; 1720 } 1721 } 1723 /* Augmentations to connectivity-matrix */ 1724 augment "/nw:networks/nw:network/nw:node/tet:te/" 1725 + "tet:te-node-attributes/tet:connectivity-matrices" { 1726 when "../../../../nw:network-types/tet:te-topology/" 1727 + "tet-pkt:packet" { 1728 description 1729 "Augment only for packet TE topology"; 1730 } 1731 description 1732 "Parameters for PSC TE topology."; 1733 uses te-packet-types:performance-metrics-attributes-packet { 1734 if-feature te-performance-metric; 1735 refine performance-metrics-one-way { 1736 config false; 1737 } 1738 refine performance-metrics-two-way { 1739 config false; 1740 } 1741 } 1742 uses 1743 te-packet-types:performance-metrics-throttle-container-packet { 1744 if-feature te-performance-metric; 1745 } 1746 } 1748 augment "/nw:networks/nw:network/nw:node/tet:te/" 1749 + "tet:te-node-attributes/tet:connectivity-matrices/" 1750 + "tet:connectivity-matrix" { 1751 when "../../../../../nw:network-types/tet:te-topology/" 1752 + "tet-pkt:packet" { 1753 description 1754 "Augment only for packet TE topology"; 1755 } 1756 description 1757 "Parameters for PSC TE topology."; 1758 uses te-packet-types:performance-metrics-attributes-packet { 1759 if-feature te-performance-metric; 1760 refine performance-metrics-one-way { 1761 config false; 1762 } 1763 refine performance-metrics-two-way { 1764 config false; 1765 } 1766 } 1767 uses 1768 te-packet-types:performance-metrics-throttle-container-packet { 1769 if-feature te-performance-metric; 1770 } 1771 } 1773 augment "/nw:networks/nw:network/nw:node/tet:te/" 1774 + "tet:information-source-entry/tet:connectivity-matrices" { 1775 when "../../../../nw:network-types/tet:te-topology/" 1776 + "tet-pkt:packet" { 1777 description 1778 "Augment only for packet TE topology"; 1779 } 1780 description 1781 "Parameters for PSC TE topology."; 1782 uses te-packet-types:performance-metrics-attributes-packet { 1783 if-feature te-performance-metric; 1784 } 1785 uses 1786 te-packet-types:performance-metrics-throttle-container-packet { 1787 if-feature te-performance-metric; 1788 } 1789 } 1791 augment "/nw:networks/nw:network/nw:node/tet:te/" 1792 + "tet:information-source-entry/tet:connectivity-matrices/" 1793 + "tet:connectivity-matrix" { 1794 when "../../../../../nw:network-types/tet:te-topology/" 1795 + "tet-pkt:packet" { 1796 description 1797 "Augment only for packet TE topology"; 1799 } 1800 description 1801 "Parameters for PSC TE topology."; 1802 uses te-packet-types:performance-metrics-attributes-packet { 1803 if-feature te-performance-metric; 1804 } 1805 uses 1806 te-packet-types:performance-metrics-throttle-container-packet { 1807 if-feature te-performance-metric; 1808 } 1809 } 1811 /* Augmentations to tunnel-termination-point */ 1812 augment "/nw:networks/nw:network/nw:node/tet:te/" 1813 + "tet:tunnel-termination-point/" 1814 + "tet:local-link-connectivities" { 1815 when "../../../../nw:network-types/tet:te-topology/" 1816 + "tet-pkt:packet" { 1817 description 1818 "Augment only for packet TE topology"; 1819 } 1820 description 1821 "Parameters for PSC TE topology."; 1822 uses te-packet-types:performance-metrics-attributes-packet { 1823 if-feature te-performance-metric; 1824 refine performance-metrics-one-way { 1825 config false; 1826 } 1827 refine performance-metrics-two-way { 1828 config false; 1829 } 1830 } 1831 uses 1832 te-packet-types:performance-metrics-throttle-container-packet { 1833 if-feature te-performance-metric; 1834 } 1835 } 1837 augment "/nw:networks/nw:network/nw:node/tet:te/" 1838 + "tet:tunnel-termination-point/" 1839 + "tet:local-link-connectivities/" 1840 + "tet:local-link-connectivity" { 1841 when "../../../../../nw:network-types/tet:te-topology/" 1842 + "tet-pkt:packet" { 1843 description 1844 "Augment only for packet TE topology"; 1845 } 1846 description 1847 "Parameters for PSC TE topology."; 1848 uses te-packet-types:performance-metrics-attributes-packet { 1849 if-feature te-performance-metric; 1850 refine performance-metrics-one-way { 1851 config false; 1852 } 1853 refine performance-metrics-two-way { 1854 config false; 1855 } 1856 } 1857 uses 1858 te-packet-types:performance-metrics-throttle-container-packet { 1859 if-feature te-performance-metric; 1860 } 1861 } 1863 /* Augmentations to te-link-attributes */ 1864 augment "/nw:networks/tet:te/tet:templates/" 1865 + "tet:link-template/tet:te-link-attributes" { 1866 when "tet:interface-switching-capability " 1867 + "[tet:switching-capability = 'te-types:switching-psc1']" { 1868 description 1869 "Valid only for PSC"; 1870 } 1871 description 1872 "Parameters for PSC TE topology."; 1873 uses te-packet-types:performance-metrics-attributes-packet { 1874 if-feature te-performance-metric; 1875 refine performance-metrics-one-way { 1876 config false; 1877 } 1878 refine performance-metrics-two-way { 1879 config false; 1880 } 1881 } 1882 uses 1883 te-packet-types:performance-metrics-throttle-container-packet { 1884 if-feature te-performance-metric; 1885 } 1886 } 1888 augment "/nw:networks/nw:network/nt:link/tet:te/" 1889 + "tet:te-link-attributes" { 1890 when "(../../../nw:network-types/tet:te-topology/tet-pkt:packet)" 1891 + " and (tet:interface-switching-capability " 1892 + "[tet:switching-capability = 'te-types:switching-psc1'])" { 1893 description 1894 "Valid only for PSC"; 1896 } 1897 description 1898 "Parameters for PSC TE topology."; 1899 uses te-packet-types:performance-metrics-attributes-packet { 1900 if-feature te-performance-metric; 1901 refine performance-metrics-one-way { 1902 config false; 1903 } 1904 refine performance-metrics-two-way { 1905 config false; 1906 } 1907 } 1908 uses 1909 te-packet-types:performance-metrics-throttle-container-packet { 1910 if-feature te-performance-metric; 1911 } 1912 } 1914 augment "/nw:networks/nw:network/nt:link/tet:te/" 1915 + "tet:information-source-entry" { 1916 when "(../../../nw:network-types/tet:te-topology/tet-pkt:packet)" 1917 + " and (tet:interface-switching-capability " 1918 + "[tet:switching-capability = 'te-types:switching-psc1'])" { 1919 description 1920 "Valid only for PSC"; 1921 } 1922 description 1923 "Parameters for PSC TE topology."; 1924 uses te-packet-types:performance-metrics-attributes-packet { 1925 if-feature te-performance-metric; 1926 } 1927 uses 1928 te-packet-types:performance-metrics-throttle-container-packet { 1929 if-feature te-performance-metric; 1930 } 1931 } 1933 /* Augmentations to interface-switching-capability */ 1934 augment "/nw:networks/tet:te/tet:templates/" 1935 + "tet:link-template/tet:te-link-attributes/" 1936 + "tet:interface-switching-capability" { 1937 when "tet:switching-capability = 'te-types:switching-psc1' " { 1938 description 1939 "Valid only for PSC"; 1940 } 1941 description 1942 "Parameters for PSC TE topology."; 1943 uses packet-switch-capable-container; 1945 } 1947 augment "/nw:networks/nw:network/nt:link/tet:te/" 1948 + "tet:te-link-attributes/" 1949 + "tet:interface-switching-capability" { 1950 when "(../../../../nw:network-types/tet:te-topology/" 1951 + "tet-pkt:packet) and " 1952 + "(tet:switching-capability = 'te-types:switching-psc1')" { 1953 description 1954 "Valid only for PSC"; 1955 } 1956 description 1957 "Parameters for PSC TE topology."; 1958 uses packet-switch-capable-container; 1959 } 1961 augment "/nw:networks/nw:network/nt:link/tet:te/" 1962 + "tet:information-source-entry/" 1963 + "tet:interface-switching-capability" { 1964 when "(../../../../nw:network-types/tet:te-topology/" 1965 + "tet-pkt:packet) and " 1966 + "(tet:switching-capability = 'te-types:switching-psc1')" { 1967 description 1968 "Valid only for PSC"; 1969 } 1970 description 1971 "Parameters for PSC TE topology."; 1972 uses packet-switch-capable-container; 1973 } 1974 } 1975 1977 6. IANA Considerations 1979 RFC Ed.: In this section, replace all occurrences of 'XXXX' with the 1980 actual RFC number (and remove this note). 1982 This document registers the following namespace URIs in the IETF XML 1983 registry [RFC3688]: 1985 -------------------------------------------------------------------- 1986 URI: urn:ietf:params:xml:ns:yang:ietf-l3-te-topology 1987 Registrant Contact: The IESG. 1988 XML: N/A, the requested URI is an XML namespace. 1989 -------------------------------------------------------------------- 1990 -------------------------------------------------------------------- 1991 URI: urn:ietf:params:xml:ns:yang:ietf-l3-te-topology-state 1992 Registrant Contact: The IESG. 1993 XML: N/A, the requested URI is an XML namespace. 1994 -------------------------------------------------------------------- 1996 -------------------------------------------------------------------- 1997 URI: urn:ietf:params:xml:ns:yang:ietf-te-topology-packet 1998 Registrant Contact: The IESG. 1999 XML: N/A, the requested URI is an XML namespace. 2000 -------------------------------------------------------------------- 2002 -------------------------------------------------------------------- 2003 URI: urn:ietf:params:xml:ns:yang:ietf-te-topology-packet-state 2004 Registrant Contact: The IESG. 2005 XML: N/A, the requested URI is an XML namespace. 2006 -------------------------------------------------------------------- 2008 This document registers the following YANG modules in the YANG Module 2009 Names registry [RFC6020]: 2011 -------------------------------------------------------------------- 2012 name: ietf-l3-te-topology 2013 namespace: urn:ietf:params:xml:ns:yang:ietf-l3-te-topology 2014 prefix: l3tet 2015 reference: RFC XXXX 2016 -------------------------------------------------------------------- 2018 -------------------------------------------------------------------- 2019 name: ietf-l3-te-topology-state 2020 namespace: urn:ietf:params:xml:ns:yang:ietf-l3-te-topology-state 2021 prefix: l3tet-s 2022 reference: RFC XXXX 2023 -------------------------------------------------------------------- 2025 -------------------------------------------------------------------- 2026 name: ietf-te-topology-packet 2027 namespace: urn:ietf:params:xml:ns:yang:ietf-te-topology-packet 2028 prefix: tet-pkt 2029 reference: RFC XXXX 2030 -------------------------------------------------------------------- 2032 -------------------------------------------------------------------- 2033 name: ietf-te-topology-packet-state 2034 namespace: urn:ietf:params:xml:ns:yang:ietf-te-topology-packet-state 2035 prefix: tet-pkt-s 2036 reference: RFC XXXX 2037 -------------------------------------------------------------------- 2039 7. Security Considerations 2041 The YANG module specified in this document defines a schema for data 2042 that is designed to be accessed via network management protocols such 2043 as NETCONF [RFC6241] or RESTCONF [RFC8040]. The lowest NETCONF layer 2044 is the secure transport layer, and the mandatory-to-implement secure 2045 transport is Secure Shell (SSH) [RFC6242]. The lowest RESTCONF layer 2046 is HTTPS, and the mandatory-to-implement secure transport is TLS 2047 [RFC8446]. 2049 The Network Configuration Access Control Model (NACM) [RFC8341] 2050 provides the means to restrict access for particular NETCONF or 2051 RESTCONF users to a preconfigured subset of all available NETCONF or 2052 RESTCONF protocol operations and content. 2054 There are a number of data nodes defined in this YANG module that are 2055 writable/creatable/deletable (i.e., config true, which is the 2056 default). These data nodes may be considered sensitive or vulnerable 2057 in some network environments. Write operations (e.g., edit-config) 2058 to these data nodes without proper protection can have a negative 2059 effect on network operations. These are the subtrees and data nodes 2060 and their sensitivity/vulnerability: 2062 /nw:networks/nw:network/nw:network-types/l3t:l3-unicast-topology/ 2063 l3-te 2064 This subtree specifies the layer 3 TE topology type. Modifying 2065 the configurations can make layer 3 TE topology type invalid and 2066 cause interruption to all layer 3 TE networks. 2068 /nw:networks/nw:network/l3t:l3-topology-attributes/l3-te-topology- 2069 attributes 2070 This subtree specifies the topology-wide configurations, including 2071 the reference to a TE topology from a layer 3 TE topology. 2072 Modifying the configurations here can cause traffic disabled or 2073 rerouted in this topology and the connected topologies. 2075 /nw:networks/nw:network/nw:node/l3t:l3-node-attributes/l3-te-node- 2076 attributes 2077 This subtree specifies the configurations of layer 3 TE nodes. 2078 Modifying the configurations in this subtree can change the 2079 relationship between a TE node and a node in a layer 3 TE 2080 topology, causing traffic disabled or rerouted in the specified 2081 nodes and the related layer 3 topologies. 2083 /nw:networks/nw:network/nw:node/nt:termination-point//l3t:l3- 2084 termination-point-attributes/l3-te-tp-attributes 2085 This subtree specifies the configurations of layer 3 TE link 2086 termination points. Modifying the configurations in this subtree 2087 can change the relationship between a TE link termination point 2088 and a link termination point in a layer 3 TE topology, causing 2089 traffic disabled or rerouted on the related layer 3 links and the 2090 related layer 3 topologies. 2092 /nw:networks/nw:network/nt:link/l3t:l3-link-attributes/l3-te-link- 2093 attributes 2094 This subtree specifies the configurations of layer 3 TE links. 2095 Modifying the configurations in this subtree can change the 2096 relationship between a TE link and a link in a layer 3 TE 2097 topology, causing traffic disabled or rerouted on the specified 2098 layer 3 link and the related layer 3 topologies. 2100 performance-metric containers 2101 The container "performance-metric" is augmented to multiple 2102 locations of the base TE topology model, as specified in 2103 Section 3.2. Modifying the configuration in such a container can 2104 change the behaviors of performance metric monitoring, causing 2105 traffic disabled or rerouted on the related layer 3 links, nodes, 2106 or topologies. 2108 Some of the readable data nodes in this YANG module may be considered 2109 sensitive or vulnerable in some network environments. It is thus 2110 important to control read access (e.g., via get, get-config, or 2111 notification) to these data nodes. These are the subtrees and data 2112 nodes and their sensitivity/vulnerability: 2114 /nw:networks/nw:network/nw:network-types/l3t:l3-unicast-topology/ 2115 l3-te 2116 Unauthorized access to this subtree can disclose the layer 3 TE 2117 topology type. 2119 /nw:networks/nw:network/l3t:l3-topology-attributes/l3-te-topology- 2120 attributes 2121 Unauthorized access to this subtree can disclose the topology-wide 2122 configurations, including the reference to a TE topology from a 2123 layer 3 topology. 2125 /nw:networks/nw:network/nw:node/l3t:l3-node-attributes/l3-te-node- 2126 attributes 2127 Unauthorized access to this subtree can disclose the operational 2128 state information of layer 3 TE nodes. 2130 /nw:networks/nw:network/nw:node/nt:termination-point//l3t:l3- 2131 termination-point-attributes/l3-te-tp-attributes 2132 Unauthorized access to this subtree can disclose the operational 2133 state information of layer 3 TE link termination points. 2135 /nw:networks/nw:network/nt:link/l3t:l3-link-attributes/l3-te-link- 2136 attributes 2137 Unauthorized access to this subtree can disclose the operational 2138 state information of layer 3 TE links. 2140 performance-metric containers 2141 The container "performance-metric" is augmented to multiple 2142 locations of the base TE topology model, as specified in 2143 Section 3.2. Unauthorized access to this subtree can disclose the 2144 operational state information of performance metric monitoring. 2146 8. References 2148 8.1. Normative References 2150 [RFC2119] Bradner, S., "Key words for use in RFCs to Indicate 2151 Requirement Levels", BCP 14, RFC 2119, 2152 DOI 10.17487/RFC2119, March 1997, 2153 . 2155 [RFC3471] Berger, L., Ed., "Generalized Multi-Protocol Label 2156 Switching (GMPLS) Signaling Functional Description", 2157 RFC 3471, DOI 10.17487/RFC3471, January 2003, 2158 . 2160 [RFC3688] Mealling, M., "The IETF XML Registry", BCP 81, RFC 3688, 2161 DOI 10.17487/RFC3688, January 2004, 2162 . 2164 [RFC6020] Bjorklund, M., Ed., "YANG - A Data Modeling Language for 2165 the Network Configuration Protocol (NETCONF)", RFC 6020, 2166 DOI 10.17487/RFC6020, October 2010, 2167 . 2169 [RFC6241] Enns, R., Ed., Bjorklund, M., Ed., Schoenwaelder, J., Ed., 2170 and A. Bierman, Ed., "Network Configuration Protocol 2171 (NETCONF)", RFC 6241, DOI 10.17487/RFC6241, June 2011, 2172 . 2174 [RFC6242] Wasserman, M., "Using the NETCONF Protocol over Secure 2175 Shell (SSH)", RFC 6242, DOI 10.17487/RFC6242, June 2011, 2176 . 2178 [RFC7074] Berger, L. and J. Meuric, "Revised Definition of the GMPLS 2179 Switching Capability and Type Fields", RFC 7074, 2180 DOI 10.17487/RFC7074, November 2013, 2181 . 2183 [RFC7471] Giacalone, S., Ward, D., Drake, J., Atlas, A., and S. 2184 Previdi, "OSPF Traffic Engineering (TE) Metric 2185 Extensions", RFC 7471, DOI 10.17487/RFC7471, March 2015, 2186 . 2188 [RFC7950] Bjorklund, M., Ed., "The YANG 1.1 Data Modeling Language", 2189 RFC 7950, DOI 10.17487/RFC7950, August 2016, 2190 . 2192 [RFC8040] Bierman, A., Bjorklund, M., and K. Watsen, "RESTCONF 2193 Protocol", RFC 8040, DOI 10.17487/RFC8040, January 2017, 2194 . 2196 [RFC8174] Leiba, B., "Ambiguity of Uppercase vs Lowercase in RFC 2197 2119 Key Words", BCP 14, RFC 8174, DOI 10.17487/RFC8174, 2198 May 2017, . 2200 [RFC8294] Liu, X., Qu, Y., Lindem, A., Hopps, C., and L. Berger, 2201 "Common YANG Data Types for the Routing Area", RFC 8294, 2202 DOI 10.17487/RFC8294, December 2017, 2203 . 2205 [RFC8341] Bierman, A. and M. Bjorklund, "Network Configuration 2206 Access Control Model", STD 91, RFC 8341, 2207 DOI 10.17487/RFC8341, March 2018, 2208 . 2210 [RFC8342] Bjorklund, M., Schoenwaelder, J., Shafer, P., Watsen, K., 2211 and R. Wilton, "Network Management Datastore Architecture 2212 (NMDA)", RFC 8342, DOI 10.17487/RFC8342, March 2018, 2213 . 2215 [RFC8345] Clemm, A., Medved, J., Varga, R., Bahadur, N., 2216 Ananthakrishnan, H., and X. Liu, "A YANG Data Model for 2217 Network Topologies", RFC 8345, DOI 10.17487/RFC8345, March 2218 2018, . 2220 [RFC8346] Clemm, A., Medved, J., Varga, R., Liu, X., 2221 Ananthakrishnan, H., and N. Bahadur, "A YANG Data Model 2222 for Layer 3 Topologies", RFC 8346, DOI 10.17487/RFC8346, 2223 March 2018, . 2225 [RFC8446] Rescorla, E., "The Transport Layer Security (TLS) Protocol 2226 Version 1.3", RFC 8446, DOI 10.17487/RFC8446, August 2018, 2227 . 2229 [RFC8570] Ginsberg, L., Ed., Previdi, S., Ed., Giacalone, S., Ward, 2230 D., Drake, J., and Q. Wu, "IS-IS Traffic Engineering (TE) 2231 Metric Extensions", RFC 8570, DOI 10.17487/RFC8570, March 2232 2019, . 2234 [I-D.ietf-teas-yang-te-types] 2235 Saad, T., Gandhi, R., Liu, X., Beeram, V., and I. Bryskin, 2236 "Traffic Engineering Common YANG Types", draft-ietf-teas- 2237 yang-te-types-13 (work in progress), November 2019. 2239 [I-D.ietf-teas-yang-te-topo] 2240 Liu, X., Bryskin, I., Beeram, V., Saad, T., Shah, H., and 2241 O. Dios, "YANG Data Model for Traffic Engineering (TE) 2242 Topologies", draft-ietf-teas-yang-te-topo-22 (work in 2243 progress), June 2019. 2245 8.2. Informative References 2247 [RFC7823] Atlas, A., Drake, J., Giacalone, S., and S. Previdi, 2248 "Performance-Based Path Selection for Explicitly Routed 2249 Label Switched Paths (LSPs) Using TE Metric Extensions", 2250 RFC 7823, DOI 10.17487/RFC7823, May 2016, 2251 . 2253 [RFC7951] Lhotka, L., "JSON Encoding of Data Modeled with YANG", 2254 RFC 7951, DOI 10.17487/RFC7951, August 2016, 2255 . 2257 [RFC8340] Bjorklund, M. and L. Berger, Ed., "YANG Tree Diagrams", 2258 BCP 215, RFC 8340, DOI 10.17487/RFC8340, March 2018, 2259 . 2261 Appendix A. Companion YANG Model for Non-NMDA Compliant Implementations 2263 The YANG modules ietf-l3-te-topology and ietf-te-topology-packet 2264 defined in this document are designed to be used in conjunction with 2265 implementations that support the Network Management Datastore 2266 Architecture (NMDA) defined in [RFC8342]. In order to allow 2267 implementations to use the model even in cases when NMDA is not 2268 supported, the following companion modules, ietf-l3-te-topology-state 2269 and ietf-te-topology-packet-state, are defined as state models, which 2270 mirror the modules ietf-l3-te-topology and ietf-te-topology-packet 2271 defined earlier in this document. However, all data nodes in the 2272 companion module are non-configurable, to represent the applied 2273 configuration or the derived operational states. 2275 The companion modules, ietf-l3-te-topology-state and ietf-te- 2276 topology-packet-state, are redundant and SHOULD NOT be supported by 2277 implementations that support NMDA. 2279 As the structure of the companion modules mirrors that of the 2280 coorespinding NMDA models, the YANG trees of the companion modules 2281 are not depicted separately. 2283 A.1. Layer 3 TE Topology State Module 2285 This module references [RFC8345], and [RFC8346]. 2287 file "ietf-l3-te-topology-state@2020-05-03.yang" 2288 module ietf-l3-te-topology-state { 2289 yang-version 1.1; 2290 namespace "urn:ietf:params:xml:ns:yang:ietf-l3-te-topology-state"; 2291 prefix "l3tet-s"; 2293 import ietf-l3-te-topology { 2294 prefix "l3tet"; 2295 } 2296 import ietf-network-state { 2297 prefix "nw-s"; 2298 reference "RFC 8345: A YANG Data Model for Network Topologies"; 2299 } 2300 import ietf-network-topology-state { 2301 prefix "nt-s"; 2302 reference "RFC 8345: A YANG Data Model for Network Topologies"; 2303 } 2304 import ietf-l3-unicast-topology-state { 2305 prefix "l3t-s"; 2306 reference "RFC 8346: A YANG Data Model for Layer 3 Topologies"; 2307 } 2308 organization 2309 "IETF Traffic Engineering Architecture and Signaling (TEAS) 2310 Working Group"; 2312 contact 2313 "WG Web: 2314 WG List: 2316 Editor: Xufeng Liu 2317 2319 Editor: Igor Bryskin 2320 2322 Editor: Vishnu Pavan Beeram 2323 2325 Editor: Tarek Saad 2326 2328 Editor: Himanshu Shah 2329 2331 Editor: Oscar Gonzalez De Dios 2332 "; 2334 description 2335 "YANG data model for representing operational state information 2336 of Layer 3 TE Topologies, when NMDA is not supported. 2338 Copyright (c) 2018 IETF Trust and the persons identified as 2339 authors of the code. All rights reserved. 2341 Redistribution and use in source and binary forms, with or 2342 without modification, is permitted pursuant to, and subject to 2343 the license terms contained in, the Simplified BSD License set 2344 forth in Section 4.c of the IETF Trust's Legal Provisions 2345 Relating to IETF Documents 2346 (http://trustee.ietf.org/license-info). 2348 This version of this YANG module is part of RFC XXXX; see the 2349 RFC itself for full legal notices."; 2351 revision 2020-05-03 { 2352 description 2353 "Initial revision"; 2354 reference "RFC XXXX: YANG Data Model for Layer 3 TE Topologies"; 2355 } 2356 augment "/nw-s:networks/nw-s:network/nw-s:network-types/" 2357 + "l3t-s:l3-unicast-topology" { 2358 description 2359 "Defines the L3 TE topology type."; 2360 uses l3tet:l3-te-topology-type; 2361 } 2363 augment "/nw-s:networks/nw-s:network/" 2364 + "l3t-s:l3-topology-attributes" { 2365 when "../nw-s:network-types/l3t-s:l3-unicast-topology/" 2366 + "l3tet-s:l3-te" { 2367 description 2368 "Augment only for L3 TE topology"; 2369 } 2370 description 2371 "Augment topology configuration"; 2372 uses l3tet:l3-te-topology-attributes; 2373 } 2375 augment "/nw-s:networks/nw-s:network/nw-s:node/" 2376 + "l3t-s:l3-node-attributes" { 2377 when "../../nw-s:network-types/l3t-s:l3-unicast-topology/" 2378 + "l3tet-s:l3-te" { 2379 description 2380 "Augment only for L3 TE topology"; 2381 } 2382 description 2383 "Augment node configuration"; 2384 uses l3tet:l3-te-node-attributes; 2385 } 2387 augment "/nw-s:networks/nw-s:network/nw-s:node/" 2388 + "nt-s:termination-point/" 2389 + "l3t-s:l3-termination-point-attributes" { 2390 when "../../../nw-s:network-types/l3t-s:l3-unicast-topology/" 2391 + "l3tet-s:l3-te" { 2392 description 2393 "Augment only for L3 TE topology"; 2394 } 2395 description 2396 "Augment termination point configuration"; 2397 uses l3tet:l3-te-tp-attributes; 2398 } 2400 augment "/nw-s:networks/nw-s:network/nt-s:link/" 2401 + "l3t-s:l3-link-attributes" { 2402 when "../../nw-s:network-types/l3t-s:l3-unicast-topology/" 2403 + "l3tet-s:l3-te" { 2404 description 2405 "Augment only for L3 TE topology"; 2406 } 2407 description 2408 "Augment link configuration"; 2409 uses l3tet:l3-te-link-attributes; 2410 } 2411 } 2412 2414 A.2. Packet Switching TE Topology State Module 2416 file "ietf-te-topology-packet-state@2020-07-03.yang" 2417 module ietf-te-topology-packet-state { 2418 yang-version 1.1; 2419 namespace 2420 "urn:ietf:params:xml:ns:yang:ietf-te-topology-packet-state"; 2422 prefix "tet-pkt-s"; 2424 import ietf-te-topology-packet { 2425 prefix "tet-pkt"; 2426 } 2428 import ietf-network-state { 2429 prefix "nw-s"; 2430 reference 2431 "RFC 8345: A YANG Data Model for Network Topologies"; 2432 } 2434 import ietf-network-topology-state { 2435 prefix "nt-s"; 2436 reference 2437 "RFC 8345: A YANG Data Model for Network Topologies"; 2438 } 2440 import ietf-te-topology-state { 2441 prefix "tet-s"; 2442 reference 2443 "I-D.ietf-teas-yang-te-topo: YANG Data Model for Traffic 2444 Engineering (TE) Topologies"; 2445 } 2447 import ietf-te-types { 2448 prefix "te-types"; 2449 reference 2450 "I-D.ietf-teas-yang-te-types: Traffic Engineering Common YANG 2451 Types"; 2452 } 2454 import ietf-te-packet-types { 2455 prefix "te-packet-types"; 2456 reference 2457 "I-D.ietf-teas-yang-te-types: Traffic Engineering Common YANG 2458 Types"; 2459 } 2461 organization 2462 "Traffic Engineering Architecture and Signaling (TEAS) 2463 Working Group"; 2465 contact 2466 "WG Web: 2467 WG List: 2469 Editor: Xufeng Liu 2470 2472 Editor: Igor Bryskin 2473 2475 Editor: Vishnu Pavan Beeram 2476 2478 Editor: Tarek Saad 2479 2481 Editor: Himanshu Shah 2482 2484 Editor: Oscar Gonzalez De Dios 2485 "; 2487 description 2488 "YANG data model for representing operational state information 2489 of PSC (Packet Switching) TE Topologies, when NMDA is not 2490 supported. 2492 Copyright (c) 2018 IETF Trust and the persons identified as 2493 authors of the code. All rights reserved. 2495 Redistribution and use in source and binary forms, with or 2496 without modification, is permitted pursuant to, and subject to 2497 the license terms contained in, the Simplified BSD License set 2498 forth in Section 4.c of the IETF Trust's Legal Provisions 2499 Relating to IETF Documents 2500 (http://trustee.ietf.org/license-info). 2502 This version of this YANG module is part of RFC XXXX; see the 2503 RFC itself for full legal notices."; 2505 revision 2020-07-03 { 2506 description 2507 "Initial revision"; 2508 reference 2509 "RFC XXXX: YANG Data Model for Layer 3 TE Topologies"; 2510 } 2512 /* 2513 * Augmentations 2514 */ 2515 /* Augmentations to network-types */ 2516 augment "/nw-s:networks/nw-s:network/nw-s:network-types/" 2517 + "tet-s:te-topology" { 2518 description 2519 "Defines the packet TE topology type."; 2520 container packet { 2521 presence "Indicates packet TE topology."; 2522 description 2523 "Its presence identifies the packet TE topology type."; 2524 } 2525 } 2527 /* Augmentations to connectivity-matrix */ 2528 augment "/nw-s:networks/nw-s:network/nw-s:node/tet-s:te/" 2529 + "tet-s:te-node-attributes/tet-s:connectivity-matrices" { 2530 when "../../../../nw-s:network-types/tet-s:te-topology/" 2531 + "tet-pkt-s:packet" { 2532 description 2533 "Augment only for packet TE topology"; 2534 } 2535 description 2536 "Parameters for PSC (Packet Switching) TE topology."; 2537 uses te-packet-types:performance-metrics-attributes-packet { 2538 if-feature tet-pkt:te-performance-metric; 2539 } 2540 uses 2541 te-packet-types:performance-metrics-throttle-container-packet { 2542 if-feature tet-pkt:te-performance-metric; 2543 } 2544 } 2545 augment "/nw-s:networks/nw-s:network/nw-s:node/tet-s:te/" 2546 + "tet-s:te-node-attributes/tet-s:connectivity-matrices/" 2547 + "tet-s:connectivity-matrix" { 2548 when "../../../../../nw-s:network-types/tet-s:te-topology/" 2549 + "tet-pkt-s:packet" { 2550 description 2551 "Augment only for packet TE topology"; 2552 } 2553 description 2554 "Parameters for PSC TE topology."; 2555 uses te-packet-types:performance-metrics-attributes-packet { 2556 if-feature tet-pkt:te-performance-metric; 2557 } 2558 uses 2559 te-packet-types:performance-metrics-throttle-container-packet { 2560 if-feature tet-pkt:te-performance-metric; 2561 } 2562 } 2564 augment "/nw-s:networks/nw-s:network/nw-s:node/tet-s:te/" 2565 + "tet-s:information-source-entry/" 2566 + "tet-s:connectivity-matrices" { 2567 when "../../../../nw-s:network-types/tet-s:te-topology/" 2568 + "tet-pkt-s:packet" { 2569 description 2570 "Augment only for packet TE topology"; 2571 } 2572 description 2573 "Parameters for PSC TE topology."; 2574 uses te-packet-types:performance-metrics-attributes-packet { 2575 if-feature tet-pkt:te-performance-metric; 2576 } 2577 uses 2578 te-packet-types:performance-metrics-throttle-container-packet { 2579 if-feature tet-pkt:te-performance-metric; 2580 } 2581 } 2583 augment "/nw-s:networks/nw-s:network/nw-s:node/tet-s:te/" 2584 + "tet-s:information-source-entry/" 2585 + "tet-s:connectivity-matrices/" 2586 + "tet-s:connectivity-matrix" { 2587 when "../../../../../nw-s:network-types/tet-s:te-topology/" 2588 + "tet-pkt-s:packet" { 2589 description 2590 "Augment only for packet TE topology"; 2591 } 2592 description 2593 "Parameters for PSC TE topology."; 2594 uses te-packet-types:performance-metrics-attributes-packet { 2595 if-feature tet-pkt:te-performance-metric; 2596 } 2597 uses 2598 te-packet-types:performance-metrics-throttle-container-packet { 2599 if-feature tet-pkt:te-performance-metric; 2600 } 2601 } 2603 /* Augmentations to tunnel-termination-point */ 2604 augment "/nw-s:networks/nw-s:network/nw-s:node/tet-s:te/" 2605 + "tet-s:tunnel-termination-point/" 2606 + "tet-s:local-link-connectivities" { 2607 when "../../../../nw-s:network-types/tet-s:te-topology/" 2608 + "tet-pkt-s:packet" { 2609 description 2610 "Augment only for packet TE topology"; 2611 } 2612 description 2613 "Parameters for PSC TE topology."; 2614 uses te-packet-types:performance-metrics-attributes-packet { 2615 if-feature tet-pkt:te-performance-metric; 2616 } 2617 uses 2618 te-packet-types:performance-metrics-throttle-container-packet { 2619 if-feature tet-pkt:te-performance-metric; 2620 } 2621 } 2623 augment "/nw-s:networks/nw-s:network/nw-s:node/tet-s:te/" 2624 + "tet-s:tunnel-termination-point/" 2625 + "tet-s:local-link-connectivities/" 2626 + "tet-s:local-link-connectivity" { 2627 when "../../../../../nw-s:network-types/tet-s:te-topology/" 2628 + "tet-pkt-s:packet" { 2629 description 2630 "Augment only for packet TE topology"; 2631 } 2632 description 2633 "Parameters for PSC TE topology."; 2634 uses te-packet-types:performance-metrics-attributes-packet { 2635 if-feature tet-pkt:te-performance-metric; 2636 } 2637 uses 2638 te-packet-types:performance-metrics-throttle-container-packet { 2639 if-feature tet-pkt:te-performance-metric; 2640 } 2642 } 2644 /* Augmentations to te-link-attributes */ 2645 augment "/nw-s:networks/tet-s:te/tet-s:templates/" 2646 + "tet-s:link-template/tet-s:te-link-attributes" { 2647 when "tet-s:interface-switching-capability " 2648 + "[tet-s:switching-capability = 'te-types:switching-psc1']" { 2649 description 2650 "Valid only for PSC"; 2651 } 2652 description 2653 "Parameters for PSC TE topology."; 2654 uses te-packet-types:performance-metrics-attributes-packet { 2655 if-feature tet-pkt:te-performance-metric; 2656 } 2657 uses 2658 te-packet-types:performance-metrics-throttle-container-packet { 2659 if-feature tet-pkt:te-performance-metric; 2660 } 2661 } 2663 augment "/nw-s:networks/nw-s:network/nt-s:link/tet-s:te/" 2664 + "tet-s:te-link-attributes" { 2665 when "(../../../nw-s:network-types/tet-s:te-topology/" 2666 + "tet-pkt-s:packet) and " 2667 + "(tet-s:interface-switching-capability " 2668 + "[tet-s:switching-capability = 'te-types:switching-psc1'])" { 2669 description "Valid only for PSC"; 2670 } 2671 description 2672 "Parameters for PSC TE topology."; 2673 uses te-packet-types:performance-metrics-attributes-packet { 2674 if-feature tet-pkt:te-performance-metric; 2675 } 2676 uses 2677 te-packet-types:performance-metrics-throttle-container-packet { 2678 if-feature tet-pkt:te-performance-metric; 2679 } 2680 } 2682 augment "/nw-s:networks/nw-s:network/nt-s:link/tet-s:te/" 2683 + "tet-s:information-source-entry" { 2684 when "(../../../nw-s:network-types/tet-s:te-topology/" 2685 + "tet-pkt-s:packet) and " 2686 + "(tet-s:interface-switching-capability " 2687 + "[tet-s:switching-capability = 'te-types:switching-psc1'])" { 2688 description "Valid only for PSC"; 2689 } 2690 description 2691 "Parameters for PSC TE topology."; 2692 uses te-packet-types:performance-metrics-attributes-packet { 2693 if-feature tet-pkt:te-performance-metric; 2694 } 2695 uses 2696 te-packet-types:performance-metrics-throttle-container-packet { 2697 if-feature tet-pkt:te-performance-metric; 2698 } 2699 } 2701 /* Augmentations to interface-switching-capability */ 2702 augment "/nw-s:networks/tet-s:te/tet-s:templates/" 2703 + "tet-s:link-template/tet-s:te-link-attributes/" 2704 + "tet-s:interface-switching-capability" { 2705 when "tet-s:switching-capability = 'te-types:switching-psc1' " { 2706 description "Valid only for PSC"; 2707 } 2708 description 2709 "Parameters for PSC TE topology."; 2710 uses tet-pkt:packet-switch-capable-container; 2711 } 2713 augment "/nw-s:networks/nw-s:network/nt-s:link/tet-s:te/" 2714 + "tet-s:te-link-attributes/" 2715 + "tet-s:interface-switching-capability" { 2716 when "(../../../../nw-s:network-types/tet-s:te-topology/" 2717 + "tet-pkt-s:packet) and " 2718 + "(tet-s:switching-capability = 'te-types:switching-psc1')" { 2719 description "Valid only for PSC"; 2720 } 2721 description 2722 "Parameters for PSC TE topology."; 2723 uses tet-pkt:packet-switch-capable-container; 2724 } 2726 augment "/nw-s:networks/nw-s:network/nt-s:link/tet-s:te/" 2727 + "tet-s:information-source-entry/" 2728 + "tet-s:interface-switching-capability" { 2729 when "(../../../../nw-s:network-types/tet-s:te-topology/" 2730 + "tet-pkt-s:packet) and " 2731 + "(tet-s:switching-capability = 'te-types:switching-psc1')" { 2732 description 2733 "Valid only for PSC"; 2734 } 2735 description 2736 "Parameters for PSC TE topology."; 2737 uses tet-pkt:packet-switch-capable-container; 2739 } 2740 } 2741 2743 Appendix B. Data Tree Example 2745 This section contains an example of an instance data tree in the JSON 2746 encoding [RFC7951]. The example instantiates "ietf-l3-te-topology" 2747 for the topology that is depicted in the following diagram. 2749 +------------+ +------------+ 2750 | D1 | | D2 | 2751 /-\ /-\ (TE) /-\ /-\ 2752 | | 1-0-1 | |---------------->| | 2-1-1 | | 2753 | | 1-2-1 | |<----------------| | 2-0-1 | | 2754 \-/ 1-3-1 \-/ (TE) \-/ 2-3-1 \-/ 2755 | /----\ | | /----\ | 2756 +---| |---+ +---| |---+ 2757 \----/ \----/ 2758 A | A | 2759 (TE)| |(TE) (Non-TE)| |(Non-TE) 2760 | | | | 2761 | | +------------+ | | 2762 | | | D3 | | | 2763 | | /-\ /-\ | | 2764 | +----->| | 3-1-1 | |-------+ | 2765 +---------| | 3-2-1 | |<---------+ 2766 \-/ \-/ 2767 | | 2768 +------------+ 2770 The corresponding instance data tree is depicted below. Note that 2771 some lines have been wrapped to adhere to the 72-character line 2772 limitation of RFCs. 2774 { 2775 "ietf-network:networks": { 2776 "network": [ 2777 { 2778 "network-id":"example-topo-te", 2779 "network-types": { 2780 "ietf-te-topology:te-topology": { 2781 } 2782 }, 2783 "ietf-te-topology:te-topology-identifier": { 2784 "provider-id":200, 2785 "client-id":300, 2786 "topology-id":"example-topo-te" 2787 }, 2788 "ietf-te-topology:te": { 2789 }, 2790 "node": [ 2791 { 2792 "node-id":"D1", 2793 "ietf-te-topology:te-node-id":"2.0.1.1", 2794 "ietf-te-topology:te": { 2795 "te-node-attributes": { 2796 } 2797 }, 2798 "ietf-network-topology:termination-point": [ 2799 { 2800 "tp-id":"1-2-1", 2801 "ietf-te-topology:te-tp-id":10201, 2802 "ietf-te-topology:te": { 2803 "interface-switching-capability": [ 2804 { 2805 "switching-capability": 2806 "ietf-te-types:switching-psc1", 2807 "encoding": 2808 "ietf-te-types:lsp-encoding-ethernet" 2809 } 2810 ] 2811 } 2812 }, 2813 { 2814 "tp-id": "1-3-1", 2815 "ietf-te-topology:te-tp-id":10301, 2816 "ietf-te-topology:te": { 2817 "interface-switching-capability": [ 2818 { 2819 "switching-capability": 2820 "ietf-te-types:switching-psc1", 2821 "encoding": 2822 "ietf-te-types:lsp-encoding-ethernet" 2823 } 2824 ] 2825 } 2826 } 2827 ] 2828 }, 2829 { 2830 "node-id":"D2", 2831 "ietf-te-topology:te-node-id":"2.0.2.1", 2832 "ietf-te-topology:te": { 2833 "te-node-attributes": { 2834 } 2835 }, 2836 "ietf-network-topology:termination-point": [ 2837 { 2838 "tp-id":"2-1-1", 2839 "ietf-te-topology:te-tp-id":20101, 2840 "ietf-te-topology:te": { 2841 "interface-switching-capability": [ 2842 { 2843 "switching-capability": 2844 "ietf-te-types:switching-psc1", 2845 "encoding": 2846 "ietf-te-types:lsp-encoding-ethernet" 2847 } 2848 ] 2849 } 2850 } 2851 ] 2852 }, 2853 { 2854 "node-id":"D3", 2855 "ietf-te-topology:te-node-id":"2.0.3.1", 2856 "ietf-te-topology:te": { 2857 "te-node-attributes": { 2858 } 2859 }, 2860 "ietf-network-topology:termination-point": [ 2861 { 2862 "tp-id":"3-1-1", 2863 "ietf-te-topology:te-tp-id":30101, 2864 "ietf-te-topology:te": { 2865 "interface-switching-capability": [ 2866 { 2867 "switching-capability": 2868 "ietf-te-types:switching-psc1", 2869 "encoding": 2870 "ietf-te-types:lsp-encoding-ethernet" 2871 } 2872 ] 2873 } 2874 } 2875 ] 2876 } 2877 ], 2878 "ietf-network-topology:link": [ 2879 { 2880 "link-id":"D1,1-2-1,D2,2-1-1", 2881 "source": { 2882 "source-node":"D1", 2883 "source-tp":"1-2-1" 2884 }, 2885 "destination": { 2886 "dest-node":"D2", 2887 "dest-tp":"2-1-1" 2888 }, 2889 "ietf-te-topology:te": { 2890 "te-link-attributes": { 2891 "interface-switching-capability": [ 2892 { 2893 "switching-capability": 2894 "ietf-te-types:switching-psc1", 2895 "encoding":"ietf-te-types:lsp-encoding-ethernet" 2896 } 2897 ], 2898 "max-link-bandwidth": { 2899 "te-bandwidth": { 2900 "generic":"0x1p+18" 2901 } 2902 }, 2903 "te-default-metric":100 2904 } 2905 } 2906 }, 2907 { 2908 "link-id":"D2,2-1-1,D1,1-2-1", 2909 "source": { 2910 "source-node":"D2", 2911 "source-tp":"2-1-1" 2912 }, 2913 "destination": { 2914 "dest-node":"D1", 2915 "dest-tp":"1-2-1" 2916 }, 2917 "ietf-te-topology:te": { 2918 "te-link-attributes": { 2919 "interface-switching-capability": [ 2920 { 2921 "switching-capability": 2922 "ietf-te-types:switching-psc1", 2923 "encoding":"ietf-te-types:lsp-encoding-ethernet" 2924 } 2925 ], 2926 "max-link-bandwidth": { 2927 "te-bandwidth": { 2928 "generic":"0x1p+18" 2929 } 2930 }, 2931 "te-default-metric":100 2932 } 2933 } 2934 }, 2935 { 2936 "link-id":"D1,1-3-1,D3,3-1-1", 2937 "source": { 2938 "source-node":"D1", 2939 "source-tp":"1-3-1" 2940 }, 2941 "destination": { 2942 "dest-node":"D3", 2943 "dest-tp":"3-1-1" 2944 }, 2945 "ietf-te-topology:te": { 2946 "te-link-attributes": { 2947 "interface-switching-capability": [ 2948 { 2949 "switching-capability": 2950 "ietf-te-types:switching-psc1", 2951 "encoding":"ietf-te-types:lsp-encoding-ethernet" 2952 } 2953 ], 2954 "max-link-bandwidth": { 2955 "te-bandwidth": { 2956 "generic":"0x1p+18" 2957 } 2958 }, 2959 "te-default-metric":100 2960 } 2961 } 2962 }, 2963 { 2964 "link-id":"D3,3-1-1,D1,1-3-1", 2965 "source": { 2966 "source-node":"D3", 2967 "source-tp":"3-1-1" 2968 }, 2969 "destination": { 2970 "dest-node":"D1", 2971 "dest-tp":"1-3-1" 2972 }, 2973 "ietf-te-topology:te": { 2974 "te-link-attributes": { 2975 "interface-switching-capability": [ 2976 { 2977 "switching-capability": 2978 "ietf-te-types:switching-psc1", 2979 "encoding":"ietf-te-types:lsp-encoding-ethernet" 2980 } 2981 ], 2982 "max-link-bandwidth": { 2983 "te-bandwidth": { 2984 "generic":"0x1p+18" 2985 } 2986 }, 2987 "te-default-metric":100 2988 } 2989 } 2990 } 2991 ] 2992 }, 2993 { 2994 "network-id":"example-topo-l3-te", 2995 "network-types": { 2996 "ietf-l3-unicast-topology:l3-unicast-topology": { 2997 "ietf-l3-te-topology:l3-te": { 2998 } 2999 } 3000 }, 3001 "ietf-l3-unicast-topology:l3-topology-attributes": { 3002 "ietf-l3-te-topology:l3-te-topology-attributes": { 3003 "network-ref":"example-topo-te" 3004 } 3005 }, 3006 "node": [ 3007 { 3008 "node-id":"D1", 3009 "ietf-l3-unicast-topology:l3-node-attributes": { 3010 "router-id": [ 3011 "203.0.113.1" 3012 ], 3013 "prefix": [ 3014 { 3015 "prefix":"203.0.113.1/32" 3016 } 3017 ], 3018 "ietf-l3-te-topology:l3-te-node-attributes": { 3019 "node-ref":"D1", 3020 "network-ref":"example-topo-te" 3021 } 3022 }, 3023 "ietf-network-topology:termination-point": [ 3024 { 3025 "tp-id":"1-0-1", 3026 "ietf-l3-unicast-topology:l3-termination-point-attributes": { 3027 "unnumbered-id":101 3028 } 3029 }, 3030 { 3031 "tp-id":"1-2-1", 3032 "ietf-l3-unicast-topology:l3-termination-point-attributes": { 3033 "unnumbered-id":121, 3034 "ietf-l3-te-topology:l3-te-tp-attributes": { 3035 "network-ref":"example-topo-te", 3036 "tp-ref":"1-2-1" 3037 } 3038 } 3039 }, 3040 { 3041 "tp-id":"1-3-1", 3042 "ietf-l3-unicast-topology:l3-termination-point-attributes": { 3043 "unnumbered-id":131, 3044 "ietf-l3-te-topology:l3-te-tp-attributes": { 3045 "network-ref":"example-topo-te", 3046 "tp-ref":"1-3-1" 3047 } 3048 } 3049 } 3050 ] 3051 }, 3052 { 3053 "node-id":"D2", 3054 "ietf-l3-unicast-topology:l3-node-attributes": { 3055 "router-id": [ 3056 "203.0.113.2" 3057 ], 3058 "prefix": [ 3059 { 3060 "prefix":"203.0.113.2/32" 3061 } 3062 ], 3063 "ietf-l3-te-topology:l3-te-node-attributes": { 3064 "node-ref":"D2", 3065 "network-ref":"example-topo-te" 3066 } 3067 }, 3068 "ietf-network-topology:termination-point": [ 3069 { 3070 "tp-id":"2-0-1", 3072 "ietf-l3-unicast-topology:l3-termination-point-attributes": { 3073 "unnumbered-id":201 3074 } 3075 }, 3076 { 3077 "tp-id":"2-1-1", 3078 "ietf-l3-unicast-topology:l3-termination-point-attributes": { 3079 "unnumbered-id":211, 3080 "ietf-l3-te-topology:l3-te-tp-attributes": { 3081 "tp-ref":"2-1-1", 3082 "network-ref":"example-topo-te" 3083 } 3084 } 3085 }, 3086 { 3087 "tp-id":"2-3-1", 3088 "ietf-l3-unicast-topology:l3-termination-point-attributes": { 3089 "unnumbered-id":231 3090 } 3091 } 3092 ] 3093 }, 3094 { 3095 "node-id":"D3", 3096 "ietf-l3-unicast-topology:l3-node-attributes": { 3097 "router-id": [ 3098 "203.0.113.3" 3099 ], 3100 "prefix": [ 3101 { 3102 "prefix":"203.0.113.3/32" 3103 } 3104 ], 3105 "ietf-l3-te-topology:l3-te-node-attributes": { 3106 "node-ref":"D3", 3107 "network-ref":"example-topo-te" 3108 } 3109 }, 3110 "ietf-network-topology:termination-point": [ 3111 { 3112 "tp-id":"3-0-1", 3113 "ietf-l3-unicast-topology:l3-termination-point-attributes": { 3114 "unnumbered-id":301 3115 } 3116 }, 3117 { 3118 "tp-id":"3-1-1", 3119 "ietf-l3-unicast-topology:l3-termination-point-attributes": { 3120 "unnumbered-id":311, 3121 "ietf-l3-te-topology:l3-te-tp-attributes": { 3122 "tp-ref":"3-1-1", 3123 "network-ref":"example-topo-te" 3124 } 3125 } 3126 }, 3127 { 3128 "tp-id":"3-2-1", 3129 "ietf-l3-unicast-topology:l3-termination-point-attributes": { 3130 "unnumbered-id":321 3131 } 3132 } 3133 ] 3134 } 3135 ], 3136 "ietf-network-topology:link": [ 3137 { 3138 "link-id":"D1,1-2-1,D2,2-1-1", 3139 "source": { 3140 "source-node":"D1", 3141 "source-tp":"1-2-1" 3142 }, 3143 "destination": { 3144 "dest-node":"D2", 3145 "dest-tp":"2-1-1" 3146 }, 3147 "ietf-l3-unicast-topology:l3-link-attributes": { 3148 "metric1":"100", 3149 "ietf-l3-te-topology:l3-te-link-attributes": { 3150 "link-ref":"D1,1-2-1,D2,2-1-1", 3151 "network-ref":"example-topo-te" 3152 } 3153 } 3154 }, 3155 { 3156 "link-id":"D2,2-1-1,D1,1-2-1", 3157 "source": { 3158 "source-node":"D2", 3159 "source-tp":"2-1-1" 3160 }, 3161 "destination": { 3162 "dest-node":"D1", 3163 "dest-tp":"1-2-1" 3164 }, 3165 "ietf-l3-unicast-topology:l3-link-attributes": { 3166 "metric1":"100", 3167 "ietf-l3-te-topology:l3-te-link-attributes": { 3168 "link-ref":"D2,2-1-1,D1,1-2-1", 3169 "network-ref":"example-topo-te" 3170 } 3171 } 3172 }, 3173 { 3174 "link-id":"D1,1-3-1,D3,3-1-1", 3175 "source": { 3176 "source-node":"D1", 3177 "source-tp":"1-3-1" 3178 }, 3179 "destination": { 3180 "dest-node":"D3", 3181 "dest-tp":"3-1-1" 3182 }, 3183 "ietf-l3-unicast-topology:l3-link-attributes": { 3184 "metric1":"100", 3185 "ietf-l3-te-topology:l3-te-link-attributes": { 3186 "link-ref":"D1,1-3-1,D3,3-1-1", 3187 "network-ref":"example-topo-te" 3188 } 3189 } 3190 }, 3191 { 3192 "link-id":"D3,3-1-1,D1,1-3-1", 3193 "source": { 3194 "source-node":"D3", 3195 "source-tp":"3-1-1" 3196 }, 3197 "destination": { 3198 "dest-node":"D1", 3199 "dest-tp":"1-3-1" 3200 }, 3201 "ietf-l3-unicast-topology:l3-link-attributes": { 3202 "metric1":"100", 3203 "ietf-l3-te-topology:l3-te-link-attributes": { 3204 "link-ref":"D3,3-1-1,D1,1-3-1", 3205 "network-ref":"example-topo-te" 3206 } 3207 } 3208 }, 3209 { 3210 "link-id":"D2,2-3-1,D3,3-2-1", 3211 "source": { 3212 "source-node":"D2", 3213 "source-tp":"2-3-1" 3214 }, 3215 "destination": { 3216 "dest-node":"D3", 3217 "dest-tp":"3-2-1" 3218 }, 3219 "ietf-l3-unicast-topology:l3-link-attributes": { 3220 "metric1":"100" 3221 } 3222 }, 3223 { 3224 "link-id":"D3,3-2-1,D2,2-3-1", 3225 "source": { 3226 "source-node":"D3", 3227 "source-tp":"3-2-1" 3228 }, 3229 "destination": { 3230 "dest-node":"D2", 3231 "dest-tp":"2-3-1" 3232 }, 3233 "ietf-l3-unicast-topology:l3-link-attributes": { 3234 "metric1":"100" 3235 } 3236 } 3237 ] 3238 } 3239 ] 3240 } 3241 } 3243 Authors' Addresses 3245 Xufeng Liu 3246 Volta Networks 3248 EMail: xufeng.liu.ietf@gmail.com 3250 Igor Bryskin 3251 Individual 3253 EMail: i_bryskin@yahoo.com 3255 Vishnu Pavan Beeram 3256 Juniper Networks 3258 EMail: vbeeram@juniper.net 3259 Tarek Saad 3260 Juniper Networks 3262 EMail: tsaad@juniper.net 3264 Himanshu Shah 3265 Ciena 3267 EMail: hshah@ciena.com 3269 Oscar Gonzalez de Dios 3270 Telefonica 3272 EMail: oscar.gonzalezdedios@telefonica.com