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