idnits 2.17.1 draft-ietf-ccamp-eth-client-te-topo-yang-02.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 : ---------------------------------------------------------------------------- ** There are 11 instances of too long lines in the document, the longest one being 2 characters in excess of 72. Miscellaneous warnings: ---------------------------------------------------------------------------- == The copyright year in the IETF Trust and authors Copyright Line does not match the current year -- The document date (7 March 2022) is 779 days in the past. Is this intentional? Checking references for intended status: Proposed Standard ---------------------------------------------------------------------------- (See RFCs 3967 and 4897 for information about using normative references to lower-maturity documents in RFCs) == Outdated reference: A later version (-18) exists of draft-ietf-ccamp-otn-topo-yang-13 Summary: 1 error (**), 0 flaws (~~), 2 warnings (==), 1 comment (--). Run idnits with the --verbose option for more detailed information about the items above. -------------------------------------------------------------------------------- 2 CCAMP Working Group H. Zheng 3 Internet-Draft Huawei Technologies 4 Intended status: Standards Track A. Guo 5 Expires: 8 September 2022 Futurewei 6 I. Busi 7 Huawei Technologies 8 Y. Xu 9 CAICT 10 Y. Zhao 11 China Mobile 12 X. Liu 13 Volta Networks 14 7 March 2022 16 A YANG Data Model for Ethernet TE Topology 17 draft-ietf-ccamp-eth-client-te-topo-yang-02 19 Abstract 21 A transport network is a server-layer network to provide connectivity 22 services to its client. In this draft the topology of Ethernet with 23 TE is described with YANG data model. 25 Status of This Memo 27 This Internet-Draft is submitted in full conformance with the 28 provisions of BCP 78 and BCP 79. 30 Internet-Drafts are working documents of the Internet Engineering 31 Task Force (IETF). Note that other groups may also distribute 32 working documents as Internet-Drafts. The list of current Internet- 33 Drafts is at https://datatracker.ietf.org/drafts/current/. 35 Internet-Drafts are draft documents valid for a maximum of six months 36 and may be updated, replaced, or obsoleted by other documents at any 37 time. It is inappropriate to use Internet-Drafts as reference 38 material or to cite them other than as "work in progress." 40 This Internet-Draft will expire on 8 September 2022. 42 Copyright Notice 44 Copyright (c) 2022 IETF Trust and the persons identified as the 45 document authors. All rights reserved. 47 This document is subject to BCP 78 and the IETF Trust's Legal 48 Provisions Relating to IETF Documents (https://trustee.ietf.org/ 49 license-info) in effect on the date of publication of this document. 50 Please review these documents carefully, as they describe your rights 51 and restrictions with respect to this document. Code Components 52 extracted from this document must include Revised BSD License text as 53 described in Section 4.e of the Trust Legal Provisions and are 54 provided without warranty as described in the Revised BSD License. 56 Table of Contents 58 1. Introduction . . . . . . . . . . . . . . . . . . . . . . . . 2 59 2. Terminology and Notations . . . . . . . . . . . . . . . . . . 3 60 3. YANG Model for Topology of Client Layer . . . . . . . . . . . 3 61 3.1. YANG Tree for Ethernet Topology . . . . . . . . . . . . . 3 62 4. YANG Code for Topology Client Layer . . . . . . . . . . . . . 20 63 4.1. The ETH Topology YANG Code . . . . . . . . . . . . . . . 20 64 5. Considerations and Open Issue . . . . . . . . . . . . . . . . 62 65 6. IANA Considerations . . . . . . . . . . . . . . . . . . . . . 63 66 7. Manageability Considerations . . . . . . . . . . . . . . . . 63 67 8. Security Considerations . . . . . . . . . . . . . . . . . . . 63 68 9. Acknowledgements . . . . . . . . . . . . . . . . . . . . . . 64 69 10. Contributors . . . . . . . . . . . . . . . . . . . . . . . . 64 70 11. References . . . . . . . . . . . . . . . . . . . . . . . . . 64 71 11.1. Normative References . . . . . . . . . . . . . . . . . . 64 72 11.2. Informative References . . . . . . . . . . . . . . . . . 65 73 Authors' Addresses . . . . . . . . . . . . . . . . . . . . . . . 65 75 1. Introduction 77 A transport network is a server-layer network designed to provide 78 connectivity services for a client-layer network to carry the client 79 traffic transparently across the server-layer network resources. The 80 topology model in Traffic-Engineered network has been defined in both 81 generic way and technology-specific way. The generic model, which is 82 the base TE YANG model, can be found at [RFC8795]. Technology- 83 specific models, such as OTN/WSON topology model, have also been 84 defined in [I-D.ietf-ccamp-otn-topo-yang] and 85 [I-D.ietf-ccamp-wson-yang] respectively. Corresponding topology on 86 client-layer is also required, to have a complete topology view from 87 the perspective of network controllers. 89 This document defines a data model of all client-layer Topology, 90 using YANG language defined in [RFC7950]. The model is augmenting 91 the generic TE topology model, and can be used by either applications 92 exposing to a network controller or among controllers. Furthermore, 93 it can be used by an application for topology description in client- 94 layer network. 96 2. Terminology and Notations 98 A simplified graphical representation of the data model is used in 99 this document. The meaning of the symbols in the YANG data tree 100 presented later in this document is defined in [RFC8340]. They are 101 provided below for reference. 103 * Brackets "[" and "]" enclose list keys. 105 * Abbreviations before data node names: "rw" means configuration 106 (read-write) and "ro" state data (read-only). 108 * Symbols after data node names: "?" means an optional node, "!" 109 means a presence container, and "*" denotes a list and leaf-list. 111 * Parentheses enclose choice and case nodes, and case nodes are also 112 marked with a colon (":"). 114 * Ellipsis ("...") stands for contents of subtrees that are not 115 shown. 117 3. YANG Model for Topology of Client Layer 119 3.1. YANG Tree for Ethernet Topology 121 module: ietf-eth-te-topology 122 augment /nw:networks/nw:network/nw:network-types 123 /tet:te-topology: 124 +--rw eth-tran-topology! 125 augment /nw:networks/nw:network/nw:node 126 /nt:termination-point: 127 +--rw ltp-mac-address? 128 | yang:mac-address 129 +--rw port-vlan-id? 130 | etht-types:vlanid 131 +--rw maximum-frame-size? uint16 132 +--rw (direction)? 133 | +--:(symmetrical) 134 | | +--rw ingress-egress-bandwidth-profile 135 | | +--rw bandwidth-profile-type? 136 | | | etht-types:bandwidth-profile-type 137 | | +--rw CIR? uint64 138 | | +--rw CBS? uint64 139 | | +--rw EIR? uint64 140 | | +--rw EBS? uint64 141 | | +--rw color-aware? boolean 142 | | +--rw coupling-flag? boolean 143 | +--:(asymmetrical) 144 | +--rw ingress-bandwidth-profile 145 | | +--rw bandwidth-profile-type? 146 | | | etht-types:bandwidth-profile-type 147 | | +--rw CIR? uint64 148 | | +--rw CBS? uint64 149 | | +--rw EIR? uint64 150 | | +--rw EBS? uint64 151 | | +--rw color-aware? boolean 152 | | +--rw coupling-flag? boolean 153 | +--rw egress-bandwidth-profile 154 | +--rw bandwidth-profile-type? 155 | | etht-types:bandwidth-profile-type 156 | +--rw CIR? uint64 157 | +--rw CBS? uint64 158 | +--rw EIR? uint64 159 | +--rw EBS? uint64 160 | +--rw color-aware? boolean 161 | +--rw coupling-flag? boolean 162 +--rw eth-svc! 163 +--rw client-facing? boolean 164 +--rw supported-classification 165 | +--rw port-classification? boolean 166 | +--rw vlan-classification 167 | +--rw vlan-tag-classification? boolean 168 | +--rw outer-tag 169 | | +--rw supported-tag-types* 170 | | | etht-types:eth-tag-classify 171 | | +--rw vlan-bundling? boolean 172 | | +--rw vlan-range? 173 | | etht-types:vid-range-type 174 | +--rw second-tag 175 | +--rw second-tag-classification? boolean 176 | +--rw supported-tag-types* 177 | | etht-types:eth-tag-classify 178 | +--rw vlan-bundling? boolean 179 | +--rw vlan-range? 180 | etht-types:vid-range-type 181 +--rw supported-vlan-operations 182 +--rw asymmetrical-operations? boolean 183 +--rw transparent-vlan-operations? boolean 184 +--rw vlan-pop 185 | +--rw vlan-pop-operations? boolean 186 | +--rw max-pop-tags? uint8 187 +--rw vlan-push 188 +--rw vlan-push-operation? boolean 189 +--rw outer-tag 190 | +--rw supported-tag-types* 191 | | etht-types:eth-tag-type 192 | +--rw vlan-range? 193 | etht-types:vid-range-type 194 +--rw second-tag 195 +--rw push-second-tag? boolean 196 +--rw supported-tag-types* 197 | etht-types:eth-tag-type 198 +--rw vlan-range? 199 etht-types:vid-range-type 200 augment /nw:networks/nw:network/nw:node 201 /nt:termination-point/tet:te 202 /tet:interface-switching-capability 203 /tet:max-lsp-bandwidth/tet:te-bandwidth 204 /tet:technology: 205 +--:(eth) 206 +--rw eth-bandwidth? uint64 207 augment /nw:networks/nw:network/nw:node/tet:te 208 /tet:te-node-attributes 209 /tet:connectivity-matrices/tet:path-constraints 210 /tet:te-bandwidth/tet:technology: 211 +--:(eth) 212 +--rw eth-bandwidth? uint64 213 augment /nw:networks/nw:network/nw:node/tet:te 214 /tet:te-node-attributes 215 /tet:connectivity-matrices 216 /tet:connectivity-matrix/tet:path-constraints 217 /tet:te-bandwidth/tet:technology: 218 +--:(eth) 219 +--rw eth-bandwidth? uint64 220 augment /nw:networks/nw:network/nw:node/tet:te 221 /tet:information-source-entry 222 /tet:connectivity-matrices/tet:path-constraints 223 /tet:te-bandwidth/tet:technology: 224 +--:(eth) 225 +--ro eth-bandwidth? uint64 226 augment /nw:networks/nw:network/nw:node/tet:te 227 /tet:information-source-entry 228 /tet:connectivity-matrices 229 /tet:connectivity-matrix/tet:path-constraints 230 /tet:te-bandwidth/tet:technology: 231 +--:(eth) 232 +--ro eth-bandwidth? uint64 233 augment /nw:networks/nw:network/nw:node/tet:te 234 /tet:tunnel-termination-point 235 /tet:client-layer-adaptation 236 /tet:switching-capability/tet:te-bandwidth 237 /tet:technology: 238 +--:(eth) 239 +--rw eth-bandwidth? uint64 241 augment /nw:networks/nw:network/nw:node/tet:te 242 /tet:tunnel-termination-point 243 /tet:local-link-connectivities 244 /tet:path-constraints/tet:te-bandwidth 245 /tet:technology: 246 +--:(eth) 247 +--rw eth-bandwidth? uint64 248 augment /nw:networks/nw:network/nw:node/tet:te 249 /tet:tunnel-termination-point 250 /tet:local-link-connectivities 251 /tet:local-link-connectivity 252 /tet:path-constraints/tet:te-bandwidth 253 /tet:technology: 254 +--:(eth) 255 +--rw eth-bandwidth? uint64 256 augment /nw:networks/nw:network/nt:link/tet:te 257 /tet:te-link-attributes 258 /tet:interface-switching-capability 259 /tet:max-lsp-bandwidth/tet:te-bandwidth 260 /tet:technology: 261 +--:(eth) 262 +--rw eth-bandwidth? uint64 263 augment /nw:networks/nw:network/nt:link/tet:te 264 /tet:te-link-attributes/tet:max-link-bandwidth 265 /tet:te-bandwidth/tet:technology: 266 +--:(eth) 267 +--rw eth-bandwidth? uint64 268 augment /nw:networks/nw:network/nt:link/tet:te 269 /tet:te-link-attributes 270 /tet:max-resv-link-bandwidth/tet:te-bandwidth 271 /tet:technology: 272 +--:(eth) 273 +--rw eth-bandwidth? uint64 274 augment /nw:networks/nw:network/nt:link/tet:te 275 /tet:te-link-attributes/tet:unreserved-bandwidth 276 /tet:te-bandwidth/tet:technology: 277 +--:(eth) 278 +--rw eth-bandwidth? uint64 279 augment /nw:networks/nw:network/nt:link/tet:te 280 /tet:information-source-entry 281 /tet:interface-switching-capability 282 /tet:max-lsp-bandwidth/tet:te-bandwidth 283 /tet:technology: 284 +--:(eth) 285 +--ro eth-bandwidth? uint64 286 augment /nw:networks/nw:network/nt:link/tet:te 287 /tet:information-source-entry 288 /tet:max-link-bandwidth/tet:te-bandwidth 289 /tet:technology: 290 +--:(eth) 291 +--ro eth-bandwidth? uint64 292 augment /nw:networks/nw:network/nt:link/tet:te 293 /tet:information-source-entry 294 /tet:max-resv-link-bandwidth/tet:te-bandwidth 295 /tet:technology: 296 +--:(eth) 297 +--ro eth-bandwidth? uint64 298 augment /nw:networks/nw:network/nt:link/tet:te 299 /tet:information-source-entry 300 /tet:unreserved-bandwidth/tet:te-bandwidth 301 /tet:technology: 302 +--:(eth) 303 +--ro eth-bandwidth? uint64 304 augment /nw:networks/tet:te/tet:templates 305 /tet:link-template/tet:te-link-attributes 306 /tet:interface-switching-capability 307 /tet:max-lsp-bandwidth/tet:te-bandwidth 308 /tet:technology: 309 +--:(eth) 310 +--rw eth-bandwidth? uint64 311 augment /nw:networks/tet:te/tet:templates 312 /tet:link-template/tet:te-link-attributes 313 /tet:max-link-bandwidth/tet:te-bandwidth 314 /tet:technology: 315 +--:(eth) 316 +--rw eth-bandwidth? uint64 317 augment /nw:networks/tet:te/tet:templates 318 /tet:link-template/tet:te-link-attributes 319 /tet:max-resv-link-bandwidth/tet:te-bandwidth 320 /tet:technology: 321 +--:(eth) 322 +--rw eth-bandwidth? uint64 323 augment /nw:networks/tet:te/tet:templates 324 /tet:link-template/tet:te-link-attributes 325 /tet:unreserved-bandwidth/tet:te-bandwidth 326 /tet:technology: 327 +--:(eth) 328 +--rw eth-bandwidth? uint64 329 augment /nw:networks/nw:network/nw:node/tet:te 330 /tet:te-node-attributes 331 /tet:connectivity-matrices 332 /tet:label-restrictions/tet:label-restriction: 333 +--rw tag-type? etht-types:eth-tag-type 334 +--rw priority? uint8 335 augment /nw:networks/nw:network/nw:node/tet:te 336 /tet:te-node-attributes 337 /tet:connectivity-matrices 338 /tet:label-restrictions/tet:label-restriction 339 /tet:label-start/tet:te-label/tet:technology: 340 +--:(eth) 341 +--rw vlanid? etht-types:vlanid 342 augment /nw:networks/nw:network/nw:node/tet:te 343 /tet:te-node-attributes 344 /tet:connectivity-matrices 345 /tet:label-restrictions/tet:label-restriction 346 /tet:label-end/tet:te-label/tet:technology: 347 +--:(eth) 348 +--rw vlanid? etht-types:vlanid 349 augment /nw:networks/nw:network/nw:node/tet:te 350 /tet:te-node-attributes 351 /tet:connectivity-matrices 352 /tet:label-restrictions/tet:label-restriction 353 /tet:label-step/tet:technology: 354 +--:(eth) 355 +--rw eth-step? uint16 356 augment /nw:networks/nw:network/nw:node/tet:te 357 /tet:te-node-attributes 358 /tet:connectivity-matrices/tet:underlay 359 /tet:primary-path/tet:path-element/tet:type 360 /tet:label/tet:label-hop/tet:te-label 361 /tet:technology: 362 +--:(eth) 363 +--rw vlanid? etht-types:vlanid 364 augment /nw:networks/nw:network/nw:node/tet:te 365 /tet:te-node-attributes 366 /tet:connectivity-matrices/tet:underlay 367 /tet:backup-path/tet:path-element/tet:type 368 /tet:label/tet:label-hop/tet:te-label 369 /tet:technology: 370 +--:(eth) 371 +--rw vlanid? etht-types:vlanid 372 augment /nw:networks/nw:network/nw:node/tet:te 373 /tet:te-node-attributes 374 /tet:connectivity-matrices/tet:optimizations 375 /tet:algorithm/tet:metric 376 /tet:optimization-metric 377 /tet:explicit-route-exclude-objects 378 /tet:route-object-exclude-object/tet:type 379 /tet:label/tet:label-hop/tet:te-label 380 /tet:technology: 381 +--:(eth) 382 +--rw vlanid? etht-types:vlanid 383 augment /nw:networks/nw:network/nw:node/tet:te 384 /tet:te-node-attributes 385 /tet:connectivity-matrices/tet:optimizations 386 /tet:algorithm/tet:metric 387 /tet:optimization-metric 388 /tet:explicit-route-include-objects 389 /tet:route-object-include-object/tet:type 390 /tet:label/tet:label-hop/tet:te-label 391 /tet:technology: 392 +--:(eth) 393 +--rw vlanid? etht-types:vlanid 394 augment /nw:networks/nw:network/nw:node/tet:te 395 /tet:te-node-attributes 396 /tet:connectivity-matrices/tet:path-properties 397 /tet:path-route-objects/tet:path-route-object 398 /tet:type/tet:label/tet:label-hop/tet:te-label 399 /tet:technology: 400 +--:(eth) 401 +--ro vlanid? etht-types:vlanid 402 augment /nw:networks/nw:network/nw:node/tet:te 403 /tet:te-node-attributes 404 /tet:connectivity-matrices 405 /tet:connectivity-matrix/tet:from 406 /tet:label-restrictions/tet:label-restriction: 407 +--rw tag-type? etht-types:eth-tag-type 408 +--rw priority? uint8 409 augment /nw:networks/nw:network/nw:node/tet:te 410 /tet:te-node-attributes 411 /tet:connectivity-matrices 412 /tet:connectivity-matrix/tet:from 413 /tet:label-restrictions/tet:label-restriction 414 /tet:label-start/tet:te-label/tet:technology: 415 +--:(eth) 416 +--rw vlanid? etht-types:vlanid 417 augment /nw:networks/nw:network/nw:node/tet:te 418 /tet:te-node-attributes 419 /tet:connectivity-matrices 420 /tet:connectivity-matrix/tet:from 421 /tet:label-restrictions/tet:label-restriction 422 /tet:label-end/tet:te-label/tet:technology: 423 +--:(eth) 424 +--rw vlanid? etht-types:vlanid 425 augment /nw:networks/nw:network/nw:node/tet:te 426 /tet:te-node-attributes 427 /tet:connectivity-matrices 428 /tet:connectivity-matrix/tet:from 429 /tet:label-restrictions/tet:label-restriction 430 /tet:label-step/tet:technology: 431 +--:(eth) 432 +--rw eth-step? uint16 434 augment /nw:networks/nw:network/nw:node/tet:te 435 /tet:te-node-attributes 436 /tet:connectivity-matrices 437 /tet:connectivity-matrix/tet:to 438 /tet:label-restrictions/tet:label-restriction: 439 +--rw tag-type? etht-types:eth-tag-type 440 +--rw priority? uint8 441 augment /nw:networks/nw:network/nw:node/tet:te 442 /tet:te-node-attributes 443 /tet:connectivity-matrices 444 /tet:connectivity-matrix/tet:to 445 /tet:label-restrictions/tet:label-restriction 446 /tet:label-start/tet:te-label/tet:technology: 447 +--:(eth) 448 +--rw vlanid? etht-types:vlanid 449 augment /nw:networks/nw:network/nw:node/tet:te 450 /tet:te-node-attributes 451 /tet:connectivity-matrices 452 /tet:connectivity-matrix/tet:to 453 /tet:label-restrictions/tet:label-restriction 454 /tet:label-end/tet:te-label/tet:technology: 455 +--:(eth) 456 +--rw vlanid? etht-types:vlanid 457 augment /nw:networks/nw:network/nw:node/tet:te 458 /tet:te-node-attributes 459 /tet:connectivity-matrices 460 /tet:connectivity-matrix/tet:to 461 /tet:label-restrictions/tet:label-restriction 462 /tet:label-step/tet:technology: 463 +--:(eth) 464 +--rw eth-step? uint16 465 augment /nw:networks/nw:network/nw:node/tet:te 466 /tet:te-node-attributes 467 /tet:connectivity-matrices 468 /tet:connectivity-matrix/tet:underlay 469 /tet:primary-path/tet:path-element/tet:type 470 /tet:label/tet:label-hop/tet:te-label 471 /tet:technology: 472 +--:(eth) 473 +--rw vlanid? etht-types:vlanid 474 augment /nw:networks/nw:network/nw:node/tet:te 475 /tet:te-node-attributes 476 /tet:connectivity-matrices 477 /tet:connectivity-matrix/tet:underlay 478 /tet:backup-path/tet:path-element/tet:type 479 /tet:label/tet:label-hop/tet:te-label 480 /tet:technology: 481 +--:(eth) 482 +--rw vlanid? etht-types:vlanid 483 augment /nw:networks/nw:network/nw:node/tet:te 484 /tet:te-node-attributes 485 /tet:connectivity-matrices 486 /tet:connectivity-matrix/tet:optimizations 487 /tet:algorithm/tet:metric 488 /tet:optimization-metric 489 /tet:explicit-route-exclude-objects 490 /tet:route-object-exclude-object/tet:type 491 /tet:label/tet:label-hop/tet:te-label 492 /tet:technology: 493 +--:(eth) 494 +--rw vlanid? etht-types:vlanid 495 augment /nw:networks/nw:network/nw:node/tet:te 496 /tet:te-node-attributes 497 /tet:connectivity-matrices 498 /tet:connectivity-matrix/tet:optimizations 499 /tet:algorithm/tet:metric 500 /tet:optimization-metric 501 /tet:explicit-route-include-objects 502 /tet:route-object-include-object/tet:type 503 /tet:label/tet:label-hop/tet:te-label 504 /tet:technology: 505 +--:(eth) 506 +--rw vlanid? etht-types:vlanid 507 augment /nw:networks/nw:network/nw:node/tet:te 508 /tet:te-node-attributes 509 /tet:connectivity-matrices 510 /tet:connectivity-matrix/tet:path-properties 511 /tet:path-route-objects/tet:path-route-object 512 /tet:type/tet:label/tet:label-hop/tet:te-label 513 /tet:technology: 514 +--:(eth) 515 +--ro vlanid? etht-types:vlanid 516 augment /nw:networks/nw:network/nw:node/tet:te 517 /tet:information-source-entry 518 /tet:connectivity-matrices 519 /tet:label-restrictions/tet:label-restriction: 520 +--ro tag-type? etht-types:eth-tag-type 521 +--ro priority? uint8 522 augment /nw:networks/nw:network/nw:node/tet:te 523 /tet:information-source-entry 524 /tet:connectivity-matrices 525 /tet:label-restrictions/tet:label-restriction 526 /tet:label-start/tet:te-label/tet:technology: 527 +--:(eth) 528 +--ro vlanid? etht-types:vlanid 529 augment /nw:networks/nw:network/nw:node/tet:te 530 /tet:information-source-entry 531 /tet:connectivity-matrices 532 /tet:label-restrictions/tet:label-restriction 533 /tet:label-end/tet:te-label/tet:technology: 534 +--:(eth) 535 +--ro vlanid? etht-types:vlanid 536 augment /nw:networks/nw:network/nw:node/tet:te 537 /tet:information-source-entry 538 /tet:connectivity-matrices 539 /tet:label-restrictions/tet:label-restriction 540 /tet:label-step/tet:technology: 541 +--:(eth) 542 +--ro eth-step? uint16 543 augment /nw:networks/nw:network/nw:node/tet:te 544 /tet:information-source-entry 545 /tet:connectivity-matrices/tet:underlay 546 /tet:primary-path/tet:path-element/tet:type 547 /tet:label/tet:label-hop/tet:te-label 548 /tet:technology: 549 +--:(eth) 550 +--ro vlanid? etht-types:vlanid 551 augment /nw:networks/nw:network/nw:node/tet:te 552 /tet:information-source-entry 553 /tet:connectivity-matrices/tet:underlay 554 /tet:backup-path/tet:path-element/tet:type 555 /tet:label/tet:label-hop/tet:te-label 556 /tet:technology: 557 +--:(eth) 558 +--ro vlanid? etht-types:vlanid 559 augment /nw:networks/nw:network/nw:node/tet:te 560 /tet:information-source-entry 561 /tet:connectivity-matrices/tet:optimizations 562 /tet:algorithm/tet:metric 563 /tet:optimization-metric 564 /tet:explicit-route-exclude-objects 565 /tet:route-object-exclude-object/tet:type 566 /tet:label/tet:label-hop/tet:te-label 567 /tet:technology: 568 +--:(eth) 569 +--ro vlanid? etht-types:vlanid 570 augment /nw:networks/nw:network/nw:node/tet:te 571 /tet:information-source-entry 572 /tet:connectivity-matrices/tet:optimizations 573 /tet:algorithm/tet:metric 574 /tet:optimization-metric 575 /tet:explicit-route-include-objects 576 /tet:route-object-include-object/tet:type 577 /tet:label/tet:label-hop/tet:te-label 578 /tet:technology: 579 +--:(eth) 580 +--ro vlanid? etht-types:vlanid 581 augment /nw:networks/nw:network/nw:node/tet:te 582 /tet:information-source-entry 583 /tet:connectivity-matrices/tet:path-properties 584 /tet:path-route-objects/tet:path-route-object 585 /tet:type/tet:label/tet:label-hop/tet:te-label 586 /tet:technology: 587 +--:(eth) 588 +--ro vlanid? etht-types:vlanid 589 augment /nw:networks/nw:network/nw:node/tet:te 590 /tet:information-source-entry 591 /tet:connectivity-matrices 592 /tet:connectivity-matrix/tet:from 593 /tet:label-restrictions/tet:label-restriction: 594 +--ro tag-type? etht-types:eth-tag-type 595 +--ro priority? uint8 596 augment /nw:networks/nw:network/nw:node/tet:te 597 /tet:information-source-entry 598 /tet:connectivity-matrices 599 /tet:connectivity-matrix/tet:from 600 /tet:label-restrictions/tet:label-restriction 601 /tet:label-start/tet:te-label/tet:technology: 602 +--:(eth) 603 +--ro vlanid? etht-types:vlanid 604 augment /nw:networks/nw:network/nw:node/tet:te 605 /tet:information-source-entry 606 /tet:connectivity-matrices 607 /tet:connectivity-matrix/tet:from 608 /tet:label-restrictions/tet:label-restriction 609 /tet:label-end/tet:te-label/tet:technology: 610 +--:(eth) 611 +--ro vlanid? etht-types:vlanid 612 augment /nw:networks/nw:network/nw:node/tet:te 613 /tet:information-source-entry 614 /tet:connectivity-matrices 615 /tet:connectivity-matrix/tet:from 616 /tet:label-restrictions/tet:label-restriction 617 /tet:label-step/tet:technology: 618 +--:(eth) 619 +--ro eth-step? uint16 620 augment /nw:networks/nw:network/nw:node/tet:te 621 /tet:information-source-entry 622 /tet:connectivity-matrices 623 /tet:connectivity-matrix/tet:to 624 /tet:label-restrictions/tet:label-restriction: 625 +--ro tag-type? etht-types:eth-tag-type 626 +--ro priority? uint8 627 augment /nw:networks/nw:network/nw:node/tet:te 628 /tet:information-source-entry 629 /tet:connectivity-matrices 630 /tet:connectivity-matrix/tet:to 631 /tet:label-restrictions/tet:label-restriction 632 /tet:label-start/tet:te-label/tet:technology: 633 +--:(eth) 634 +--ro vlanid? etht-types:vlanid 635 augment /nw:networks/nw:network/nw:node/tet:te 636 /tet:information-source-entry 637 /tet:connectivity-matrices 638 /tet:connectivity-matrix/tet:to 639 /tet:label-restrictions/tet:label-restriction 640 /tet:label-end/tet:te-label/tet:technology: 641 +--:(eth) 642 +--ro vlanid? etht-types:vlanid 643 augment /nw:networks/nw:network/nw:node/tet:te 644 /tet:information-source-entry 645 /tet:connectivity-matrices 646 /tet:connectivity-matrix/tet:to 647 /tet:label-restrictions/tet:label-restriction 648 /tet:label-step/tet:technology: 649 +--:(eth) 650 +--ro eth-step? uint16 651 augment /nw:networks/nw:network/nw:node/tet:te 652 /tet:information-source-entry 653 /tet:connectivity-matrices 654 /tet:connectivity-matrix/tet:underlay 655 /tet:primary-path/tet:path-element/tet:type 656 /tet:label/tet:label-hop/tet:te-label 657 /tet:technology: 658 +--:(eth) 659 +--ro vlanid? etht-types:vlanid 660 augment /nw:networks/nw:network/nw:node/tet:te 661 /tet:information-source-entry 662 /tet:connectivity-matrices 663 /tet:connectivity-matrix/tet:underlay 664 /tet:backup-path/tet:path-element/tet:type 665 /tet:label/tet:label-hop/tet:te-label 666 /tet:technology: 667 +--:(eth) 668 +--ro vlanid? etht-types:vlanid 669 augment /nw:networks/nw:network/nw:node/tet:te 670 /tet:information-source-entry 671 /tet:connectivity-matrices 672 /tet:connectivity-matrix/tet:optimizations 673 /tet:algorithm/tet:metric 674 /tet:optimization-metric 675 /tet:explicit-route-exclude-objects 676 /tet:route-object-exclude-object/tet:type 677 /tet:label/tet:label-hop/tet:te-label 678 /tet:technology: 679 +--:(eth) 680 +--ro vlanid? etht-types:vlanid 681 augment /nw:networks/nw:network/nw:node/tet:te 682 /tet:information-source-entry 683 /tet:connectivity-matrices 684 /tet:connectivity-matrix/tet:optimizations 685 /tet:algorithm/tet:metric 686 /tet:optimization-metric 687 /tet:explicit-route-include-objects 688 /tet:route-object-include-object/tet:type 689 /tet:label/tet:label-hop/tet:te-label 690 /tet:technology: 691 +--:(eth) 692 +--ro vlanid? etht-types:vlanid 693 augment /nw:networks/nw:network/nw:node/tet:te 694 /tet:information-source-entry 695 /tet:connectivity-matrices 696 /tet:connectivity-matrix/tet:path-properties 697 /tet:path-route-objects/tet:path-route-object 698 /tet:type/tet:label/tet:label-hop/tet:te-label 699 /tet:technology: 700 +--:(eth) 701 +--ro vlanid? etht-types:vlanid 702 augment /nw:networks/nw:network/nw:node/tet:te 703 /tet:tunnel-termination-point 704 /tet:local-link-connectivities 705 /tet:label-restrictions/tet:label-restriction: 706 +--rw tag-type? etht-types:eth-tag-type 707 +--rw priority? uint8 708 augment /nw:networks/nw:network/nw:node/tet:te 709 /tet:tunnel-termination-point 710 /tet:local-link-connectivities 711 /tet:label-restrictions/tet:label-restriction 712 /tet:label-start/tet:te-label/tet:technology: 713 +--:(eth) 714 +--rw vlanid? etht-types:vlanid 715 augment /nw:networks/nw:network/nw:node/tet:te 716 /tet:tunnel-termination-point 717 /tet:local-link-connectivities 718 /tet:label-restrictions/tet:label-restriction 719 /tet:label-end/tet:te-label/tet:technology: 720 +--:(eth) 721 +--rw vlanid? etht-types:vlanid 723 augment /nw:networks/nw:network/nw:node/tet:te 724 /tet:tunnel-termination-point 725 /tet:local-link-connectivities 726 /tet:label-restrictions/tet:label-restriction 727 /tet:label-step/tet:technology: 728 +--:(eth) 729 +--rw eth-step? uint16 730 augment /nw:networks/nw:network/nw:node/tet:te 731 /tet:tunnel-termination-point 732 /tet:local-link-connectivities/tet:underlay 733 /tet:primary-path/tet:path-element/tet:type 734 /tet:label/tet:label-hop/tet:te-label 735 /tet:technology: 736 +--:(eth) 737 +--rw vlanid? etht-types:vlanid 738 augment /nw:networks/nw:network/nw:node/tet:te 739 /tet:tunnel-termination-point 740 /tet:local-link-connectivities/tet:underlay 741 /tet:backup-path/tet:path-element/tet:type 742 /tet:label/tet:label-hop/tet:te-label 743 /tet:technology: 744 +--:(eth) 745 +--rw vlanid? etht-types:vlanid 746 augment /nw:networks/nw:network/nw:node/tet:te 747 /tet:tunnel-termination-point 748 /tet:local-link-connectivities/tet:optimizations 749 /tet:algorithm/tet:metric 750 /tet:optimization-metric 751 /tet:explicit-route-exclude-objects 752 /tet:route-object-exclude-object/tet:type 753 /tet:label/tet:label-hop/tet:te-label 754 /tet:technology: 755 +--:(eth) 756 +--rw vlanid? etht-types:vlanid 757 augment /nw:networks/nw:network/nw:node/tet:te 758 /tet:tunnel-termination-point 759 /tet:local-link-connectivities/tet:optimizations 760 /tet:algorithm/tet:metric 761 /tet:optimization-metric 762 /tet:explicit-route-include-objects 763 /tet:route-object-include-object/tet:type 764 /tet:label/tet:label-hop/tet:te-label 765 /tet:technology: 766 +--:(eth) 767 +--rw vlanid? etht-types:vlanid 768 augment /nw:networks/nw:network/nw:node/tet:te 769 /tet:tunnel-termination-point 770 /tet:local-link-connectivities 771 /tet:path-properties/tet:path-route-objects 772 /tet:path-route-object/tet:type/tet:label 773 /tet:label-hop/tet:te-label/tet:technology: 774 +--:(eth) 775 +--ro vlanid? etht-types:vlanid 776 augment /nw:networks/nw:network/nw:node/tet:te 777 /tet:tunnel-termination-point 778 /tet:local-link-connectivities 779 /tet:local-link-connectivity 780 /tet:label-restrictions/tet:label-restriction: 781 +--rw tag-type? etht-types:eth-tag-type 782 +--rw priority? uint8 783 augment /nw:networks/nw:network/nw:node/tet:te 784 /tet:tunnel-termination-point 785 /tet:local-link-connectivities 786 /tet:local-link-connectivity 787 /tet:label-restrictions/tet:label-restriction 788 /tet:label-start/tet:te-label/tet:technology: 789 +--:(eth) 790 +--rw vlanid? etht-types:vlanid 791 augment /nw:networks/nw:network/nw:node/tet:te 792 /tet:tunnel-termination-point 793 /tet:local-link-connectivities 794 /tet:local-link-connectivity 795 /tet:label-restrictions/tet:label-restriction 796 /tet:label-end/tet:te-label/tet:technology: 797 +--:(eth) 798 +--rw vlanid? etht-types:vlanid 799 augment /nw:networks/nw:network/nw:node/tet:te 800 /tet:tunnel-termination-point 801 /tet:local-link-connectivities 802 /tet:local-link-connectivity 803 /tet:label-restrictions/tet:label-restriction 804 /tet:label-step/tet:technology: 805 +--:(eth) 806 +--rw eth-step? uint16 807 augment /nw:networks/nw:network/nw:node/tet:te 808 /tet:tunnel-termination-point 809 /tet:local-link-connectivities 810 /tet:local-link-connectivity/tet:underlay 811 /tet:primary-path/tet:path-element/tet:type 812 /tet:label/tet:label-hop/tet:te-label 813 /tet:technology: 814 +--:(eth) 815 +--rw vlanid? etht-types:vlanid 816 augment /nw:networks/nw:network/nw:node/tet:te 817 /tet:tunnel-termination-point 818 /tet:local-link-connectivities 819 /tet:local-link-connectivity/tet:underlay 820 /tet:backup-path/tet:path-element/tet:type 821 /tet:label/tet:label-hop/tet:te-label 822 /tet:technology: 823 +--:(eth) 824 +--rw vlanid? etht-types:vlanid 825 augment /nw:networks/nw:network/nw:node/tet:te 826 /tet:tunnel-termination-point 827 /tet:local-link-connectivities 828 /tet:local-link-connectivity/tet:optimizations 829 /tet:algorithm/tet:metric 830 /tet:optimization-metric 831 /tet:explicit-route-exclude-objects 832 /tet:route-object-exclude-object/tet:type 833 /tet:label/tet:label-hop/tet:te-label 834 /tet:technology: 835 +--:(eth) 836 +--rw vlanid? etht-types:vlanid 837 augment /nw:networks/nw:network/nw:node/tet:te 838 /tet:tunnel-termination-point 839 /tet:local-link-connectivities 840 /tet:local-link-connectivity/tet:optimizations 841 /tet:algorithm/tet:metric 842 /tet:optimization-metric 843 /tet:explicit-route-include-objects 844 /tet:route-object-include-object/tet:type 845 /tet:label/tet:label-hop/tet:te-label 846 /tet:technology: 847 +--:(eth) 848 +--rw vlanid? etht-types:vlanid 849 augment /nw:networks/nw:network/nw:node/tet:te 850 /tet:tunnel-termination-point 851 /tet:local-link-connectivities 852 /tet:local-link-connectivity/tet:path-properties 853 /tet:path-route-objects/tet:path-route-object 854 /tet:type/tet:label/tet:label-hop/tet:te-label 855 /tet:technology: 856 +--:(eth) 857 +--ro vlanid? etht-types:vlanid 858 augment /nw:networks/nw:network/nt:link/tet:te 859 /tet:te-link-attributes/tet:underlay 860 /tet:primary-path/tet:path-element/tet:type 861 /tet:label/tet:label-hop/tet:te-label 862 /tet:technology: 863 +--:(eth) 864 +--rw vlanid? etht-types:vlanid 865 augment /nw:networks/nw:network/nt:link/tet:te 866 /tet:te-link-attributes/tet:underlay 867 /tet:backup-path/tet:path-element/tet:type 868 /tet:label/tet:label-hop/tet:te-label 869 /tet:technology: 870 +--:(eth) 871 +--rw vlanid? etht-types:vlanid 872 augment /nw:networks/nw:network/nt:link/tet:te 873 /tet:te-link-attributes/tet:label-restrictions 874 /tet:label-restriction: 875 +--rw tag-type? etht-types:eth-tag-type 876 +--rw priority? uint8 877 augment /nw:networks/nw:network/nt:link/tet:te 878 /tet:te-link-attributes/tet:label-restrictions 879 /tet:label-restriction/tet:label-start 880 /tet:te-label/tet:technology: 881 +--:(eth) 882 +--rw vlanid? etht-types:vlanid 883 augment /nw:networks/nw:network/nt:link/tet:te 884 /tet:te-link-attributes/tet:label-restrictions 885 /tet:label-restriction/tet:label-end 886 /tet:te-label/tet:technology: 887 +--:(eth) 888 +--rw vlanid? etht-types:vlanid 889 augment /nw:networks/nw:network/nt:link/tet:te 890 /tet:te-link-attributes/tet:label-restrictions 891 /tet:label-restriction/tet:label-step 892 /tet:technology: 893 +--:(eth) 894 +--rw eth-step? uint16 895 augment /nw:networks/nw:network/nt:link/tet:te 896 /tet:information-source-entry 897 /tet:label-restrictions/tet:label-restriction: 898 +--ro tag-type? etht-types:eth-tag-type 899 +--ro priority? uint8 900 augment /nw:networks/nw:network/nt:link/tet:te 901 /tet:information-source-entry 902 /tet:label-restrictions/tet:label-restriction 903 /tet:label-start/tet:te-label/tet:technology: 904 +--:(eth) 905 +--ro vlanid? etht-types:vlanid 906 augment /nw:networks/nw:network/nt:link/tet:te 907 /tet:information-source-entry 908 /tet:label-restrictions/tet:label-restriction 909 /tet:label-end/tet:te-label/tet:technology: 910 +--:(eth) 911 +--ro vlanid? etht-types:vlanid 912 augment /nw:networks/nw:network/nt:link/tet:te 913 /tet:information-source-entry 914 /tet:label-restrictions/tet:label-restriction 915 /tet:label-step/tet:technology: 916 +--:(eth) 917 +--ro eth-step? uint16 918 augment /nw:networks/tet:te/tet:templates 919 /tet:link-template/tet:te-link-attributes 920 /tet:underlay/tet:primary-path/tet:path-element 921 /tet:type/tet:label/tet:label-hop/tet:te-label 922 /tet:technology: 923 +--:(eth) 924 +--rw vlanid? etht-types:vlanid 925 augment /nw:networks/tet:te/tet:templates 926 /tet:link-template/tet:te-link-attributes 927 /tet:underlay/tet:backup-path/tet:path-element 928 /tet:type/tet:label/tet:label-hop/tet:te-label 929 /tet:technology: 930 +--:(eth) 931 +--rw vlanid? etht-types:vlanid 932 augment /nw:networks/tet:te/tet:templates 933 /tet:link-template/tet:te-link-attributes 934 /tet:label-restrictions/tet:label-restriction: 935 +--rw tag-type? etht-types:eth-tag-type 936 +--rw priority? uint8 937 augment /nw:networks/tet:te/tet:templates 938 /tet:link-template/tet:te-link-attributes 939 /tet:label-restrictions/tet:label-restriction 940 /tet:label-start/tet:te-label/tet:technology: 941 +--:(eth) 942 +--rw vlanid? etht-types:vlanid 943 augment /nw:networks/tet:te/tet:templates 944 /tet:link-template/tet:te-link-attributes 945 /tet:label-restrictions/tet:label-restriction 946 /tet:label-end/tet:te-label/tet:technology: 947 +--:(eth) 948 +--rw vlanid? etht-types:vlanid 949 augment /nw:networks/tet:te/tet:templates 950 /tet:link-template/tet:te-link-attributes 951 /tet:label-restrictions/tet:label-restriction 952 /tet:label-step/tet:technology: 953 +--:(eth) 954 +--rw eth-step? uint16 956 4. YANG Code for Topology Client Layer 958 4.1. The ETH Topology YANG Code 959 file "ietf-eth-te-topology@2019-11-18.yang" 960 module ietf-eth-te-topology { 962 namespace "urn:ietf:params:xml:ns:yang:ietf-eth-te-topology"; 964 prefix "ethtetopo"; 966 import ietf-network { 967 prefix "nw"; 968 } 970 import ietf-network-topology { 971 prefix "nt"; 972 } 974 import ietf-te-topology { 975 prefix "tet"; 976 } 978 import ietf-yang-types { 979 prefix "yang"; 980 } 982 import ietf-eth-tran-types { 983 prefix "etht-types"; 984 } 986 organization 987 "Internet Engineering Task Force (IETF) CCAMP WG"; 988 contact 989 " 990 WG List: 992 ID-draft editor: 993 Haomian Zheng (zhenghaomian@huawei.com); 994 Italo Busi (italo.busi@huawei.com); 995 Aihua Guo (aihuaguo.ietf@gmail.com); 996 Yunbin Xu (xuyunbin@caict.ac.cn); 997 Yang Zhao (zhaoyangyjy@chinamobile.com); 998 Xufeng Liu (xufeng.liu.ietf@gmail.com); 999 "; 1001 description 1002 "This module defines a YANG data model for describing 1003 layer-2 Ethernet transport topologies. The model fully 1004 conforms to the Network Management Datastore 1005 Architecture (NMDA). 1007 Copyright (c) 2019 IETF Trust and the persons 1008 identified as authors of the code. All rights reserved. 1010 Redistribution and use in source and binary forms, with or 1011 without modification, is permitted pursuant to, and subject 1012 to the license terms contained in, the Simplified BSD License 1013 set forth in Section 4.c of the IETF Trust's Legal Provisions 1014 Relating to IETF Documents 1015 (https://trustee.ietf.org/license-info). 1016 This version of this YANG module is part of RFC XXXX; see 1017 the RFC itself for full legal notices."; 1019 revision 2019-11-18 { 1020 description 1021 "Initial Revision"; 1022 reference 1023 "RFC XXXX: A YANG Data Model for Client-layer Topology"; 1024 // RFC Ed.: replace XXXX with actual RFC number, update date 1025 // information and remove this note 1026 } 1028 /* 1029 * Groupings 1030 */ 1032 grouping eth-tran-topology-type { 1033 description 1034 "Identifies the Ethernet Transport topology type"; 1036 container eth-tran-topology { 1037 presence "indicates a topology type of 1038 Ethernet Transport Network."; 1039 description "Eth transport topology type"; 1040 } 1041 } 1043 grouping ltp-bandwidth-profiles { 1044 description 1045 "A grouping which represents the bandwidth profile(s) 1046 for the ETH LTP."; 1048 choice direction { 1049 description 1050 "Whether the bandwidth profiles are symmetrical or 1051 asymmetrical"; 1052 case symmetrical { 1053 description 1054 "The same bandwidth profile is used to describe the ingress 1055 and the egress bandwidth profile."; 1057 container ingress-egress-bandwidth-profile { 1058 description 1059 "The bandwith profile used in the ingress and egress 1060 direction."; 1061 uses etht-types:etht-bandwidth-profiles; 1062 } 1063 } 1064 case asymmetrical { 1065 description 1066 "Different ingress and egress bandwidth profiles 1067 can be specified."; 1068 container ingress-bandwidth-profile { 1069 description 1070 "The bandwidth profile used in the ingress direction."; 1071 uses etht-types:etht-bandwidth-profiles; 1072 } 1073 container egress-bandwidth-profile { 1074 description 1075 "The bandwidth profile used in the egress direction."; 1076 uses etht-types:etht-bandwidth-profiles; 1077 } 1078 } 1079 } 1080 } 1082 grouping eth-ltp-attributes { 1083 description 1084 "Ethernet transport link termination point attributes"; 1086 /* 1087 * Open Issue: should we remove this attribute 1088 * (duplicates with I2RS L2 attributes)? 1089 */ 1090 leaf ltp-mac-address { 1091 type yang:mac-address; 1092 description "the MAC address of the LTP."; 1093 } 1094 /* 1095 * Open Issue: should we remove this attribute 1096 * (duplicates with I2RS L2 attributes)? 1097 */ 1098 leaf port-vlan-id { 1099 type etht-types:vlanid; 1100 description "the port VLAN ID of the LTP."; 1101 } 1102 /* 1103 * Open Issue: should we remove this attribute 1104 * (duplicates with I2RS L2 attributes)? 1105 */ 1106 leaf maximum-frame-size { 1107 type uint16 { 1108 range "64 .. 65535"; 1109 } 1110 description 1111 "Maximum frame size"; 1112 } 1113 uses ltp-bandwidth-profiles; 1114 } 1116 grouping svc-vlan-classification { 1117 description 1118 "Grouping defining the capabilities for VLAN classification."; 1120 leaf-list supported-tag-types { 1121 type etht-types:eth-tag-classify; 1122 description 1123 "List of VLAN tag types that can be used for the VLAN 1124 classification. In case VLAN classification is not 1125 supported, the list is empty."; 1126 } 1127 leaf vlan-bundling { 1128 type boolean; 1129 description 1130 "In case VLAN classification is supported, indicates whether 1131 VLAN bundling classification is also supported."; 1132 } 1133 leaf vlan-range { 1134 type etht-types:vid-range-type; 1135 description 1136 "In case VLAN classification is supported, indicates the 1137 of available VLAN ID values."; 1138 } 1139 } 1141 grouping svc-vlan-push { 1142 description 1143 "Grouping defining the capabilities for VLAN push or swap 1144 operations."; 1146 leaf-list supported-tag-types { 1147 type etht-types:eth-tag-type; 1148 description 1149 "List of VLAN tag types that can be used to push or swap a 1150 VLAN tag. In case VLAN push/swap is not supported, the list 1151 is empty."; 1152 } 1153 leaf vlan-range { 1154 type etht-types:vid-range-type; 1155 description 1156 "In case VLAN push/swap operation is supported, the range 1157 of available VLAN ID values."; 1158 } 1159 } 1161 grouping eth-ltp-svc-attributes { 1162 description 1163 "Ethernet link termination point (LTP) service attributes."; 1165 container supported-classification { 1166 description 1167 "Service classification capability supported by the ETH LTP."; 1169 leaf port-classification { 1170 type boolean; 1171 description 1172 "Indicates that the ETH LTP support port-based service 1173 classification."; 1174 } 1175 container vlan-classification { 1176 description 1177 "Service classification capabilities based on the VLAN 1178 tag(s) supported by the ETH LTP."; 1180 leaf vlan-tag-classification { 1181 type boolean; 1182 description 1183 "Indicates that the ETH LTP supports VLAN service 1184 classification."; 1185 } 1186 container outer-tag { 1187 description 1188 "Service classification capabilities based on the outer 1189 VLAN tag, supported by the ETH LTP."; 1190 uses svc-vlan-classification; 1191 } 1192 container second-tag { 1193 description 1194 "Service classification capabilities based on the second 1195 VLAN tag, supported by the ETH LTP."; 1196 /* 1197 * Open issue: indicates that second-tag-classification 1198 * can be True only if outer-tag-classification is also True. 1200 */ 1201 leaf second-tag-classification { 1202 type boolean; 1203 description 1204 "Indicates that the ETH LTP support VLAN service 1205 classification based on the second VLAN tag."; 1206 } 1207 uses svc-vlan-classification; 1208 } 1209 } 1210 } 1212 container supported-vlan-operations { 1213 description 1214 "Reports the VLAN operations supported by the ETH LTP."; 1216 leaf asymmetrical-operations { 1217 type boolean; 1218 description 1219 "Indicates whether the ETH LTP supports also asymmetrical 1220 VLAN operations.It is assumed that symmetrical VLAN 1221 operations are alwyas supported."; 1222 } 1223 leaf transparent-vlan-operations { 1224 type boolean; 1225 description 1226 "Indicates that the ETH LTP supports transparent 1227 operations."; 1228 } 1229 container vlan-pop { 1230 description 1231 "Indicates VLAN pop or swap operations capabilities."; 1233 leaf vlan-pop-operations { 1234 type boolean; 1235 description 1236 "Indicates that the ETH LTP supports VLAN pop or 1237 swap operations."; 1238 } 1239 leaf max-pop-tags { 1240 type uint8 { 1241 range "1..2"; 1242 } 1243 description 1244 "Indicates the maximum number of tags that can be 1245 popped/swapped."; 1246 } 1247 } 1248 container vlan-push { 1249 description 1250 "Indicates VLAN push or swap operations capabilities."; 1252 leaf vlan-push-operation { 1253 type boolean; 1254 description 1255 "Indicates that the ETH LTP supports VLAN push or 1256 swap operations."; 1257 } 1258 container outer-tag { 1259 description 1260 "Indicates the supported VLAN operation capabilities 1261 on the outer VLAN tag."; 1262 uses svc-vlan-push; 1263 } 1264 container second-tag { 1265 description 1266 "Indicates the supported VLAN operation capabilities 1267 on the second VLAN tag."; 1268 leaf push-second-tag { 1269 type boolean; 1270 description 1271 "Indicates that the ETH LTP supports VLAN push or swap 1272 operations for the second VLAN tag."; 1273 } 1274 uses svc-vlan-push; 1275 } 1276 } 1277 } 1278 } 1280 /* 1281 * Data nodes 1282 */ 1284 augment "/nw:networks/nw:network/nw:network-types/tet:te-topology" { 1285 description 1286 "Augment network types to include ETH transport newtork"; 1288 uses eth-tran-topology-type; 1289 } 1291 augment "/nw:networks/nw:network/nw:node/nt:termination-point" { 1292 when "../../nw:network-types/tet:te-topology/" 1293 + "ethtetopo:eth-tran-topology" { 1294 description 1295 "Augment only for ETH transport network"; 1297 } 1298 description 1299 "Augment ETH LTP attributes"; 1301 uses eth-ltp-attributes; 1303 container eth-svc { 1304 presence "client-facing LTP."; 1305 description 1306 "ETH LTP Service attributes."; 1308 leaf client-facing { 1309 type boolean; 1310 default "false"; 1311 description 1312 "Indicates whether this LTP is a client-facing LTP."; 1313 } 1314 uses eth-ltp-svc-attributes; 1315 } 1316 } 1318 /* 1319 * Augment TE bandwidth 1320 */ 1322 /* Augment maximum LSP bandwidth of link terminationpoint (LTP) */ 1323 augment "/nw:networks/nw:network/nw:node/nt:termination-point/" 1324 + "tet:te/" 1325 + "tet:interface-switching-capability/tet:max-lsp-bandwidth/" 1326 + "tet:te-bandwidth/tet:technology" { 1327 when "../../../../../../nw:network-types/tet:te-topology/" 1328 + "ethtetopo:eth-tran-topology" { 1329 description "Ethernet TE bandwidth"; 1330 } 1331 description "Ethernet bandwidth."; 1332 case eth { 1333 uses etht-types:eth-bandwidth; 1334 } 1335 } 1336 /* Augment bandwidth path constraints of connectivity-matrices */ 1337 augment "/nw:networks/nw:network/nw:node/tet:te/" 1338 + "tet:te-node-attributes/tet:connectivity-matrices/" 1339 + "tet:path-constraints/tet:te-bandwidth/tet:technology" { 1340 when "../../../../../../nw:network-types/tet:te-topology/" 1341 + "ethtetopo:eth-tran-topology" { 1342 description "Ethernet TE bandwidth"; 1343 } 1344 description "Ethernet bandwidth."; 1345 case eth { 1346 uses etht-types:eth-bandwidth; 1347 } 1348 } 1350 /* Augment bandwidth path constraints of connectivity-matrix */ 1351 augment "/nw:networks/nw:network/nw:node/tet:te/" 1352 + "tet:te-node-attributes/tet:connectivity-matrices/" 1353 + "tet:connectivity-matrix/" 1354 + "tet:path-constraints/tet:te-bandwidth/tet:technology" { 1355 when "../../../../../../../nw:network-types/tet:te-topology/" 1356 + "ethtetopo:eth-tran-topology" { 1357 description "Ethernet TE bandwidth"; 1358 } 1359 description "Ethernet bandwidth."; 1360 case eth { 1361 uses etht-types:eth-bandwidth; 1362 } 1363 } 1365 /* Augment bandwidth path constraints of connectivity-matrices 1366 * information-source */ 1367 augment "/nw:networks/nw:network/nw:node/tet:te/" 1368 + "tet:information-source-entry/tet:connectivity-matrices/" 1369 + "tet:path-constraints/tet:te-bandwidth/tet:technology" { 1370 when "../../../../../../nw:network-types/tet:te-topology/" 1371 + "ethtetopo:eth-tran-topology" { 1372 description "Ethernet TE bandwidth"; 1373 } 1374 description "Ethernet bandwidth."; 1375 case eth { 1376 uses etht-types:eth-bandwidth; 1377 } 1378 } 1380 /* Augment bandwidth path constraints of connectivity-matrix 1381 * information-source */ 1382 augment "/nw:networks/nw:network/nw:node/tet:te/" 1383 + "tet:information-source-entry/tet:connectivity-matrices/" 1384 + "tet:connectivity-matrix/" 1385 + "tet:path-constraints/tet:te-bandwidth/tet:technology" { 1386 when "../../../../../../../nw:network-types/tet:te-topology/" 1387 + "ethtetopo:eth-tran-topology" { 1388 description "Ethernet TE bandwidth"; 1389 } 1390 description "Ethernet bandwidth."; 1391 case eth { 1392 uses etht-types:eth-bandwidth; 1394 } 1395 } 1397 /* Augment client bandwidth of tunnel termination point (TTP) */ 1398 augment "/nw:networks/nw:network/nw:node/tet:te/" 1399 + "tet:tunnel-termination-point/" 1400 + "tet:client-layer-adaptation/tet:switching-capability/" 1401 + "tet:te-bandwidth/tet:technology" { 1402 when "../../../../../../nw:network-types/tet:te-topology/" 1403 + "ethtetopo:eth-tran-topology" { 1404 description "Ethernet TE bandwidth"; 1405 } 1406 description "Ethernet bandwidth."; 1407 case eth { 1408 uses etht-types:eth-bandwidth; 1409 } 1410 } 1412 /* Augment bandwidth path constraints of local-link-connectivities */ 1413 augment "/nw:networks/nw:network/nw:node/tet:te/" 1414 + "tet:tunnel-termination-point/" 1415 + "tet:local-link-connectivities/tet:path-constraints/" 1416 + "tet:te-bandwidth/tet:technology" { 1417 when "../../../../../../nw:network-types/tet:te-topology/" 1418 + "ethtetopo:eth-tran-topology" { 1419 description "Ethernet TE bandwidth"; 1420 } 1421 description "Ethernet bandwidth."; 1422 case eth { 1423 uses etht-types:eth-bandwidth; 1424 } 1425 } 1427 /* Augment bandwidth path constraints of local-link-connectivity */ 1428 augment "/nw:networks/nw:network/nw:node/tet:te/" 1429 + "tet:tunnel-termination-point/" 1430 + "tet:local-link-connectivities/" 1431 + "tet:local-link-connectivity/tet:path-constraints/" 1432 + "tet:te-bandwidth/tet:technology" { 1433 when "../../../../../../../nw:network-types/tet:te-topology/" 1434 + "ethtetopo:eth-tran-topology" { 1435 description "Ethernet TE bandwidth"; 1436 } 1437 description "Ethernet bandwidth."; 1438 case eth { 1439 uses etht-types:eth-bandwidth; 1440 } 1441 } 1442 /* Augment maximum LSP bandwidth of TE link */ 1443 augment "/nw:networks/nw:network/nt:link/tet:te/" 1444 + "tet:te-link-attributes/" 1445 + "tet:interface-switching-capability/tet:max-lsp-bandwidth/" 1446 + "tet:te-bandwidth/tet:technology" { 1447 when "../../../../../../nw:network-types/tet:te-topology/" 1448 + "ethtetopo:eth-tran-topology" { 1449 description "Ethernet TE bandwidth"; 1450 } 1451 description "Ethernet bandwidth."; 1452 case eth { 1453 uses etht-types:eth-bandwidth; 1454 } 1455 } 1457 /* Augment maximum bandwidth of TE link */ 1458 augment "/nw:networks/nw:network/nt:link/tet:te/" 1459 + "tet:te-link-attributes/" 1460 + "tet:max-link-bandwidth/" 1461 + "tet:te-bandwidth/tet:technology" { 1462 when "../../../../../nw:network-types/tet:te-topology/" 1463 + "ethtetopo:eth-tran-topology" { 1464 description "Ethernet TE bandwidth"; 1465 } 1466 description "Ethernet bandwidth."; 1467 case eth { 1468 uses etht-types:eth-bandwidth; 1469 } 1470 } 1472 /* Augment maximum reservable bandwidth of TE link */ 1473 augment "/nw:networks/nw:network/nt:link/tet:te/" 1474 + "tet:te-link-attributes/" 1475 + "tet:max-resv-link-bandwidth/" 1476 + "tet:te-bandwidth/tet:technology" { 1477 when "../../../../../nw:network-types/tet:te-topology/" 1478 + "ethtetopo:eth-tran-topology" { 1479 description "Ethernet TE bandwidth"; 1480 } 1481 description "Ethernet bandwidth."; 1482 case eth { 1483 uses etht-types:eth-bandwidth; 1484 } 1485 } 1487 /* Augment unreserved bandwidth of TE Link */ 1488 augment "/nw:networks/nw:network/nt:link/tet:te/" 1489 + "tet:te-link-attributes/" 1490 + "tet:unreserved-bandwidth/" 1491 + "tet:te-bandwidth/tet:technology" { 1492 when "../../../../../nw:network-types/tet:te-topology/" 1493 + "ethtetopo:eth-tran-topology" { 1494 description "Ethernet TE bandwidth"; 1495 } 1496 description "Ethernet bandwidth."; 1497 case eth { 1498 uses etht-types:eth-bandwidth; 1499 } 1500 } 1501 /* Augment maximum LSP bandwidth of TE link information-source */ 1502 augment "/nw:networks/nw:network/nt:link/tet:te/" 1503 + "tet:information-source-entry/" 1504 + "tet:interface-switching-capability/" 1505 + "tet:max-lsp-bandwidth/" 1506 + "tet:te-bandwidth/tet:technology" { 1507 when "../../../../../../nw:network-types/tet:te-topology/" 1508 + "ethtetopo:eth-tran-topology" { 1509 description "Ethernet TE bandwidth"; 1510 } 1511 description "Ethernet bandwidth."; 1512 case eth { 1513 uses etht-types:eth-bandwidth; 1514 } 1515 } 1517 /* Augment maximum bandwidth of TE link information-source */ 1518 augment "/nw:networks/nw:network/nt:link/tet:te/" 1519 + "tet:information-source-entry/" 1520 + "tet:max-link-bandwidth/" 1521 + "tet:te-bandwidth/tet:technology" { 1522 when "../../../../../nw:network-types/tet:te-topology/" 1523 + "ethtetopo:eth-tran-topology" { 1524 description "Ethernet TE bandwidth"; 1525 } 1526 description "Ethernet bandwidth."; 1527 case eth { 1528 uses etht-types:eth-bandwidth; 1529 } 1530 } 1532 /* Augment maximum reservable bandwidth of TE link 1533 * information-source */ 1534 augment "/nw:networks/nw:network/nt:link/tet:te/" 1535 + "tet:information-source-entry/" 1536 + "tet:max-resv-link-bandwidth/" 1537 + "tet:te-bandwidth/tet:technology" { 1539 when "../../../../../nw:network-types/tet:te-topology/" 1540 + "ethtetopo:eth-tran-topology" { 1541 description "Ethernet TE bandwidth"; 1542 } 1543 description "Ethernet bandwidth."; 1544 case eth { 1545 uses etht-types:eth-bandwidth; 1546 } 1547 } 1549 /* Augment unreserved bandwidth of TE link information-source */ 1550 augment "/nw:networks/nw:network/nt:link/tet:te/" 1551 + "tet:information-source-entry/" 1552 + "tet:unreserved-bandwidth/" 1553 + "tet:te-bandwidth/tet:technology" { 1554 when "../../../../../nw:network-types/tet:te-topology/" 1555 + "ethtetopo:eth-tran-topology" { 1556 description "Ethernet TE bandwidth"; 1557 } 1558 description "Ethernet bandwidth."; 1559 case eth { 1560 uses etht-types:eth-bandwidth; 1561 } 1562 } 1564 /* Augment maximum LSP bandwidth of TE link template */ 1565 augment "/nw:networks/tet:te/tet:templates/" 1566 + "tet:link-template/tet:te-link-attributes/" 1567 + "tet:interface-switching-capability/" 1568 + "tet:max-lsp-bandwidth/" 1569 + "tet:te-bandwidth/tet:technology" { 1570 /* 1571 when "../../../../../../nw:network-types/tet:te-topology/" 1572 + "ethtetopo:eth-tran-topology" { 1573 description "Ethernet TE bandwidth"; 1574 } 1575 */ 1576 description "Ethernet bandwidth."; 1577 case eth { 1578 uses etht-types:eth-bandwidth; 1579 } 1580 } 1582 /* Augment maximum bandwidth of TE link template */ 1583 augment "/nw:networks/tet:te/tet:templates/" 1584 + "tet:link-template/tet:te-link-attributes/" 1585 + "tet:max-link-bandwidth/" 1586 + "tet:te-bandwidth/tet:technology" { 1588 /* 1589 when "../../../../../nw:network-types/tet:te-topology/" 1590 + "ethtetopo:eth-tran-topology" { 1591 description "Ethernet TE bandwidth"; 1592 } 1593 */ 1594 description "Ethernet bandwidth."; 1595 case eth { 1596 uses etht-types:eth-bandwidth; 1597 } 1598 } 1600 /* Augment maximum reservable bandwidth of TE link template */ 1601 augment "/nw:networks/tet:te/tet:templates/" 1602 + "tet:link-template/tet:te-link-attributes/" 1603 + "tet:max-resv-link-bandwidth/" 1604 + "tet:te-bandwidth/tet:technology" { 1605 /* 1606 when "../../../../../nw:network-types/tet:te-topology/" 1607 + "ethtetopo:eth-tran-topology" { 1608 description "Ethernet TE bandwidth"; 1609 } 1610 */ 1611 description "Ethernet bandwidth."; 1612 case eth { 1613 uses etht-types:eth-bandwidth; 1614 } 1615 } 1617 /* Augment unreserved bandwidth of TE link template */ 1618 augment "/nw:networks/tet:te/tet:templates/" 1619 + "tet:link-template/tet:te-link-attributes/" 1620 + "tet:unreserved-bandwidth/" 1621 + "tet:te-bandwidth/tet:technology" { 1622 /* 1623 when "../../../../../../nw:network-types/tet:te-topology/" 1624 + "ethtetopo:eth-tran-topology" { 1625 description "Ethernet TE bandwidth"; 1626 } 1627 */ 1628 description "Ethernet bandwidth."; 1629 case eth { 1630 uses etht-types:eth-bandwidth; 1631 } 1632 } 1634 /* 1635 * Augment TE label. 1637 */ 1639 /* Augment label restrictions of connectivity-matrices */ 1640 augment "/nw:networks/nw:network/nw:node/tet:te/" 1641 + "tet:te-node-attributes/tet:connectivity-matrices/" 1642 + "tet:label-restrictions/tet:label-restriction" { 1643 when "../../../../../../nw:network-types/tet:te-topology/" 1644 + "ethtetopo:eth-tran-topology" { 1645 description "Ethernet TE label"; 1646 } 1647 description "Ethernet label restriction."; 1648 uses etht-types:eth-label-restriction; 1649 } 1651 /* Augment label restrictions start of connectivity-matrices */ 1652 augment "/nw:networks/nw:network/nw:node/tet:te/" 1653 + "tet:te-node-attributes/tet:connectivity-matrices/" 1654 + "tet:label-restrictions/tet:label-restriction/" 1655 + "tet:label-start/tet:te-label/tet:technology" { 1656 when "../../../../../../../../nw:network-types/tet:te-topology/" 1657 + "ethtetopo:eth-tran-topology" { 1658 description "Ethernet TE label"; 1659 } 1660 description "Ethernet label."; 1661 case eth { 1662 uses etht-types:eth-label; 1663 } 1664 } 1666 /* Augment label restrictions end of connectivity-matrices */ 1667 augment "/nw:networks/nw:network/nw:node/tet:te/" 1668 + "tet:te-node-attributes/tet:connectivity-matrices/" 1669 + "tet:label-restrictions/tet:label-restriction/tet:label-end/" 1670 + "tet:te-label/tet:technology" { 1671 when "../../../../../../../../nw:network-types/tet:te-topology/" 1672 + "ethtetopo:eth-tran-topology" { 1673 description "Ethernet TE label"; 1674 } 1675 description "Ethernet label."; 1676 case eth { 1677 uses etht-types:eth-label; 1678 } 1679 } 1681 /* Augment label restrictions step of connectivity-matrices */ 1682 augment "/nw:networks/nw:network/nw:node/tet:te/" 1683 + "tet:te-node-attributes/tet:connectivity-matrices/" 1684 + "tet:label-restrictions/tet:label-restriction/" 1685 + "tet:label-step/tet:technology" { 1686 when "../../../../../../../nw:network-types/tet:te-topology/" 1687 + "ethtetopo:eth-tran-topology" { 1688 description "Ethernet TE label"; 1689 } 1690 description "Ethernet label."; 1691 case eth { 1692 uses etht-types:eth-label-step; 1693 } 1694 } 1696 /* Augment label hop of underlay primary path of 1697 * connectivity-matrices */ 1698 augment "/nw:networks/nw:network/nw:node/tet:te/" 1699 + "tet:te-node-attributes/tet:connectivity-matrices/" 1700 + "tet:underlay/tet:primary-path/tet:path-element/" 1701 + "tet:type/tet:label/tet:label-hop/" 1702 + "tet:te-label/tet:technology" { 1703 when "../../../../../../../../../" 1704 + "nw:network-types/tet:te-topology/" 1705 + "ethtetopo:eth-tran-topology" { 1706 description "Ethernet TE label"; 1707 } 1708 description "Ethernet label."; 1709 case eth { 1710 uses etht-types:eth-label; 1711 } 1712 } 1713 /* Augment label hop of underlay backup path of 1714 * connectivity-matrices */ 1715 augment "/nw:networks/nw:network/nw:node/tet:te/" 1716 + "tet:te-node-attributes/tet:connectivity-matrices/" 1717 + "tet:underlay/tet:backup-path/tet:path-element/" 1718 + "tet:type/tet:label/tet:label-hop/" 1719 + "tet:te-label/tet:technology" { 1720 when "../../../../../../../../../" 1721 + "nw:network-types/tet:te-topology/" 1722 + "ethtetopo:eth-tran-topology" { 1723 description "Ethernet TE label"; 1724 } 1725 description "Ethernet label."; 1726 case eth { 1727 uses etht-types:eth-label; 1728 } 1729 } 1731 /* Augment label hop of route-exclude of connectivity-matrices */ 1732 augment "/nw:networks/nw:network/nw:node/tet:te/" 1733 + "tet:te-node-attributes/tet:connectivity-matrices/" 1734 + "tet:optimizations/tet:algorithm/tet:metric/" 1735 + "tet:optimization-metric/" 1736 + "tet:explicit-route-exclude-objects/" 1737 + "tet:route-object-exclude-object/" 1738 + "tet:type/tet:label/tet:label-hop/" 1739 + "tet:te-label/tet:technology" { 1740 when "../../../../../../../../../../" 1741 + "nw:network-types/tet:te-topology/" 1742 + "ethtetopo:eth-tran-topology" { 1743 description "Ethernet TE label"; 1744 } 1745 description "Ethernet label."; 1746 case eth { 1747 uses etht-types:eth-label; 1748 } 1749 } 1751 /* Augment label hop of route-include of connectivity-matrices */ 1752 augment "/nw:networks/nw:network/nw:node/tet:te/" 1753 + "tet:te-node-attributes/tet:connectivity-matrices/" 1754 + "tet:optimizations/tet:algorithm/tet:metric/" 1755 + "tet:optimization-metric/" 1756 + "tet:explicit-route-include-objects/" 1757 + "tet:route-object-include-object/" 1758 + "tet:type/tet:label/tet:label-hop/" 1759 + "tet:te-label/tet:technology" { 1760 when "../../../../../../../../../../" 1761 + "nw:network-types/tet:te-topology/" 1762 + "ethtetopo:eth-tran-topology" { 1763 description "Ethernet TE label"; 1764 } 1765 description "Ethernet label."; 1766 case eth { 1767 uses etht-types:eth-label; 1768 } 1769 } 1771 /* Augment label hop of path-route of connectivity-matrices */ 1772 augment "/nw:networks/nw:network/nw:node/tet:te/" 1773 + "tet:te-node-attributes/tet:connectivity-matrices/" 1774 + "tet:path-properties/tet:path-route-objects/" 1775 + "tet:path-route-object/tet:type/tet:label/tet:label-hop/" 1776 + "tet:te-label/tet:technology"{ 1777 when "../../../../../../../../../" 1778 + "nw:network-types/tet:te-topology/" 1779 + "ethtetopo:eth-tran-topology" { 1780 description "Ethernet TE label"; 1782 } 1783 description "Ethernet label."; 1784 case eth { 1785 uses etht-types:eth-label; 1786 } 1787 } 1789 /* Augment ingress label restrictions of connectivity-matrix */ 1790 augment "/nw:networks/nw:network/nw:node/tet:te/" 1791 + "tet:te-node-attributes/tet:connectivity-matrices/" 1792 + "tet:connectivity-matrix/tet:from/" 1793 + "tet:label-restrictions/tet:label-restriction" { 1794 when "../../../../../../../../nw:network-types/tet:te-topology/" 1795 + "ethtetopo:eth-tran-topology" { 1796 description "Ethernet TE label"; 1797 } 1798 description "Ethernet label."; 1799 uses etht-types:eth-label-restriction; 1800 } 1802 /* Augment ingress label restrictions start of 1803 * connectivity-matrix */ 1804 augment "/nw:networks/nw:network/nw:node/tet:te/" 1805 + "tet:te-node-attributes/tet:connectivity-matrices/" 1806 + "tet:connectivity-matrix/tet:from/" 1807 + "tet:label-restrictions/tet:label-restriction/" 1808 + "tet:label-start/tet:te-label/tet:technology" { 1809 when "../../../../../../../../../../" 1810 + "nw:network-types/tet:te-topology/" 1811 + "ethtetopo:eth-tran-topology" { 1812 description "Ethernet TE label"; 1813 } 1814 description "Ethernet label."; 1815 case eth { 1816 uses etht-types:eth-label; 1817 } 1818 } 1820 /* Augment ingress label restrictions end of connectivity-matrix */ 1821 augment "/nw:networks/nw:network/nw:node/tet:te/" 1822 + "tet:te-node-attributes/tet:connectivity-matrices/" 1823 + "tet:connectivity-matrix/tet:from/" 1824 + "tet:label-restrictions/tet:label-restriction/tet:label-end/" 1825 + "tet:te-label/tet:technology" { 1826 when "../../../../../../../../../../" 1827 + "nw:network-types/tet:te-topology/" 1828 + "ethtetopo:eth-tran-topology" { 1829 description "Ethernet TE label"; 1831 } 1832 description "Ethernet label."; 1833 case eth { 1834 uses etht-types:eth-label; 1835 } 1836 } 1838 /* Augment ingress label restrictions step of connectivity-matrix */ 1839 augment "/nw:networks/nw:network/nw:node/tet:te/" 1840 + "tet:te-node-attributes/tet:connectivity-matrices/" 1841 + "tet:connectivity-matrix/tet:from/" 1842 + "tet:label-restrictions/tet:label-restriction/" 1843 + "tet:label-step/tet:technology" { 1844 when "../../../../../../../../../" 1845 + "nw:network-types/tet:te-topology/" 1846 + "ethtetopo:eth-tran-topology" { 1847 description "Ethernet TE label"; 1848 } 1849 description "Ethernet label."; 1850 case eth { 1851 uses etht-types:eth-label-step; 1852 } 1853 } 1855 /* Augment egress label restrictions of connectivity-matrix */ 1856 augment "/nw:networks/nw:network/nw:node/tet:te/" 1857 + "tet:te-node-attributes/tet:connectivity-matrices/" 1858 + "tet:connectivity-matrix/tet:to/" 1859 + "tet:label-restrictions/tet:label-restriction" { 1860 when "../../../../../../../../nw:network-types/tet:te-topology/" 1861 + "ethtetopo:eth-tran-topology" { 1862 description "Ethernet TE label"; 1863 } 1864 description "Ethernet label."; 1865 uses etht-types:eth-label-restriction; 1866 } 1868 /* Augment egress label restrictions start of 1869 * connectivity-matrix */ 1870 augment "/nw:networks/nw:network/nw:node/tet:te/" 1871 + "tet:te-node-attributes/tet:connectivity-matrices/" 1872 + "tet:connectivity-matrix/tet:to/" 1873 + "tet:label-restrictions/tet:label-restriction/" 1874 + "tet:label-start/tet:te-label/tet:technology" { 1875 when "../../../../../../../../../../" 1876 + "nw:network-types/tet:te-topology/" 1877 + "ethtetopo:eth-tran-topology" { 1878 description "Ethernet TE label"; 1880 } 1881 description "Ethernet label."; 1882 case eth { 1883 uses etht-types:eth-label; 1884 } 1885 } 1887 /* Augment egress label restrictions end of connectivity-matrix */ 1888 augment "/nw:networks/nw:network/nw:node/tet:te/" 1889 + "tet:te-node-attributes/tet:connectivity-matrices/" 1890 + "tet:connectivity-matrix/tet:to/" 1891 + "tet:label-restrictions/tet:label-restriction/tet:label-end/" 1892 + "tet:te-label/tet:technology" { 1893 when "../../../../../../../../../../" 1894 + "nw:network-types/tet:te-topology/" 1895 + "ethtetopo:eth-tran-topology" { 1896 description "Ethernet TE label"; 1897 } 1898 description "Ethernet label."; 1899 case eth { 1900 uses etht-types:eth-label; 1901 } 1902 } 1904 /* Augment egress label restrictions step of connectivity-matrix */ 1905 augment "/nw:networks/nw:network/nw:node/tet:te/" 1906 + "tet:te-node-attributes/tet:connectivity-matrices/" 1907 + "tet:connectivity-matrix/tet:to/" 1908 + "tet:label-restrictions/tet:label-restriction/" 1909 + "tet:label-step/tet:technology" { 1910 when "../../../../../../../../../" 1911 + "nw:network-types/tet:te-topology/" 1912 + "ethtetopo:eth-tran-topology" { 1913 description "Ethernet TE label"; 1914 } 1915 description "Ethernet label."; 1916 case eth { 1917 uses etht-types:eth-label-step; 1918 } 1919 } 1921 /* Augment label hop of underlay primary path of connectivity-matrix */ 1922 augment "/nw:networks/nw:network/nw:node/tet:te/" 1923 + "tet:te-node-attributes/tet:connectivity-matrices/" 1924 + "tet:connectivity-matrix/" 1925 + "tet:underlay/tet:primary-path/tet:path-element/" 1926 + "tet:type/tet:label/tet:label-hop/" 1927 + "tet:te-label/tet:technology" { 1929 when "../../../../../../../../../../" 1930 + "nw:network-types/tet:te-topology/" 1931 + "ethtetopo:eth-tran-topology" { 1932 description "Ethernet TE label"; 1933 } 1934 description "Ethernet label."; 1935 case eth { 1936 uses etht-types:eth-label; 1937 } 1938 } 1940 /* Augment label hop of underlay backup path of connectivity-matrix */ 1941 augment "/nw:networks/nw:network/nw:node/tet:te/" 1942 + "tet:te-node-attributes/tet:connectivity-matrices/" 1943 + "tet:connectivity-matrix/" 1944 + "tet:underlay/tet:backup-path/tet:path-element/" 1945 + "tet:type/tet:label/tet:label-hop/" 1946 + "tet:te-label/tet:technology" { 1947 when "../../../../../../../../../../" 1948 + "nw:network-types/tet:te-topology/" 1949 + "ethtetopo:eth-tran-topology" { 1950 description "Ethernet TE label"; 1951 } 1952 description "Ethernet label."; 1953 case eth { 1954 uses etht-types:eth-label; 1955 } 1956 } 1958 /* Augment label hop of route-exclude of connectivity-matrix */ 1959 augment "/nw:networks/nw:network/nw:node/tet:te/" 1960 + "tet:te-node-attributes/tet:connectivity-matrices/" 1961 + "tet:connectivity-matrix/tet:optimizations/" 1962 + "tet:algorithm/tet:metric/tet:optimization-metric/" 1963 + "tet:explicit-route-exclude-objects/" 1964 + "tet:route-object-exclude-object/tet:type/" 1965 + "tet:label/tet:label-hop/tet:te-label/tet:technology" { 1966 when "../../../../../../../../../../../" 1967 + "nw:network-types/tet:te-topology/" 1968 + "ethtetopo:eth-tran-topology" { 1969 description "Ethernet TE label"; 1970 } 1971 description "Ethernet label."; 1972 case eth { 1973 uses etht-types:eth-label; 1974 } 1975 } 1976 /* Augment label hop of route-include of connectivity-matrix */ 1977 augment "/nw:networks/nw:network/nw:node/tet:te/" 1978 + "tet:te-node-attributes/tet:connectivity-matrices/" 1979 + "tet:connectivity-matrix/tet:optimizations/" 1980 + "tet:algorithm/tet:metric/tet:optimization-metric/" 1981 + "tet:explicit-route-include-objects/" 1982 + "tet:route-object-include-object/tet:type/" 1983 + "tet:label/tet:label-hop/tet:te-label/tet:technology" { 1984 when "../../../../../../../../../../../" 1985 + "nw:network-types/tet:te-topology/" 1986 + "ethtetopo:eth-tran-topology" { 1987 description "Ethernet TE label"; 1988 } 1989 description "Ethernet label."; 1990 case eth { 1991 uses etht-types:eth-label; 1992 } 1993 } 1995 /* Augment label hop of path-route of connectivity-matrix */ 1996 augment "/nw:networks/nw:network/nw:node/tet:te/" 1997 + "tet:te-node-attributes/tet:connectivity-matrices/" 1998 + "tet:connectivity-matrix/" 1999 + "tet:path-properties/tet:path-route-objects/" 2000 + "tet:path-route-object/tet:type/" 2001 + "tet:label/tet:label-hop/tet:te-label/tet:technology" { 2002 when "../../../../../../../../../../" 2003 + "nw:network-types/tet:te-topology/" 2004 + "ethtetopo:eth-tran-topology" { 2005 description "Ethernet TE label"; 2006 } 2007 description "Ethernet label."; 2008 case eth { 2009 uses etht-types:eth-label; 2010 } 2011 } 2013 /* Augment label restrictions of connectivity-matrices 2014 * information-source */ 2015 augment "/nw:networks/nw:network/nw:node/tet:te/" 2016 + "tet:information-source-entry/" 2017 + "tet:connectivity-matrices/tet:label-restrictions/" 2018 + "tet:label-restriction" { 2019 when "../../../../../../nw:network-types/tet:te-topology/" 2020 + "ethtetopo:eth-tran-topology" { 2021 description "Ethernet TE label"; 2022 } 2023 description "Ethernet label."; 2024 uses etht-types:eth-label-restriction; 2025 } 2027 /* Augment label restrictions start of connectivity-matrices 2028 * information-source */ 2029 augment "/nw:networks/nw:network/nw:node/tet:te/" 2030 + "tet:information-source-entry/" 2031 + "tet:connectivity-matrices/tet:label-restrictions/" 2032 + "tet:label-restriction/" 2033 + "tet:label-start/tet:te-label/tet:technology" { 2034 when "../../../../../../../../" 2035 + "nw:network-types/tet:te-topology/" 2036 + "ethtetopo:eth-tran-topology" { 2037 description "Ethernet TE label"; 2038 } 2039 description "Ethernet label."; 2040 case eth { 2041 uses etht-types:eth-label; 2042 } 2043 } 2045 /* Augment label restrictions end of connectivity-matrices 2046 * information-source */ 2047 augment "/nw:networks/nw:network/nw:node/tet:te/" 2048 + "tet:information-source-entry/" 2049 + "tet:connectivity-matrices/tet:label-restrictions/" 2050 + "tet:label-restriction/" 2051 + "tet:label-end/tet:te-label/tet:technology" { 2052 when "../../../../../../../../" 2053 + "nw:network-types/tet:te-topology/" 2054 + "ethtetopo:eth-tran-topology" { 2055 description "Ethernet TE label"; 2056 } 2057 description "Ethernet label."; 2058 case eth { 2059 uses etht-types:eth-label; 2060 } 2061 } 2063 /* Augment label restrictions step of connectivity-matrices 2064 * information-source */ 2065 augment "/nw:networks/nw:network/nw:node/tet:te/" 2066 + "tet:information-source-entry/" 2067 + "tet:connectivity-matrices/tet:label-restrictions/" 2068 + "tet:label-restriction/" 2069 + "tet:label-step/tet:technology" { 2070 when "../../../../../../../" 2071 + "nw:network-types/tet:te-topology/" 2072 + "ethtetopo:eth-tran-topology" { 2073 description "Ethernet TE label"; 2074 } 2075 description "Ethernet label."; 2076 case eth { 2077 uses etht-types:eth-label-step; 2078 } 2079 } 2081 /* Augment label hop of underlay primary path of 2082 * connectivity-matrices information-source */ 2083 augment "/nw:networks/nw:network/nw:node/tet:te/" 2084 + "tet:information-source-entry/tet:connectivity-matrices/" 2085 + "tet:underlay/tet:primary-path/tet:path-element/tet:type/" 2086 + "tet:label/tet:label-hop/tet:te-label/tet:technology" { 2087 when "../../../../../../../../../" 2088 + "nw:network-types/tet:te-topology/" 2089 + "ethtetopo:eth-tran-topology" { 2090 description "Ethernet TE label"; 2091 } 2092 description "Ethernet label."; 2093 case eth { 2094 uses etht-types:eth-label; 2095 } 2096 } 2098 /* Augment label hop of underlay backup path of 2099 * connectivity-matrices information-source */ 2100 augment "/nw:networks/nw:network/nw:node/tet:te/" 2101 + "tet:information-source-entry/tet:connectivity-matrices/" 2102 + "tet:underlay/tet:backup-path/tet:path-element/tet:type/" 2103 + "tet:label/tet:label-hop/tet:te-label/tet:technology" { 2104 when "../../../../../../../../../" 2105 + "nw:network-types/tet:te-topology/" 2106 + "ethtetopo:eth-tran-topology" { 2107 description "Ethernet TE label"; 2108 } 2109 description "Ethernet label."; 2110 case eth { 2111 uses etht-types:eth-label; 2112 } 2113 } 2115 /* Augment label hop of route-exclude of 2116 * connectivity-matrices information-source */ 2117 augment "/nw:networks/nw:network/nw:node/tet:te/" 2118 + "tet:information-source-entry/tet:connectivity-matrices/" 2119 + "tet:optimizations/tet:algorithm/tet:metric/" 2120 + "tet:optimization-metric/" 2121 + "tet:explicit-route-exclude-objects/" 2122 + "tet:route-object-exclude-object/tet:type/" 2123 + "tet:label/tet:label-hop/tet:te-label/tet:technology" { 2124 when "../../../../../../../../../../" 2125 + "nw:network-types/tet:te-topology/" 2126 + "ethtetopo:eth-tran-topology" { 2127 description "Ethernet TE label"; 2128 } 2129 description "Ethernet label."; 2130 case eth { 2131 uses etht-types:eth-label; 2132 } 2133 } 2135 /* Augment label hop of route-include of 2136 * connectivity-matrices information-source */ 2137 augment "/nw:networks/nw:network/nw:node/tet:te/" 2138 + "tet:information-source-entry/tet:connectivity-matrices/" 2139 + "tet:optimizations/tet:algorithm/tet:metric/" 2140 + "tet:optimization-metric/" 2141 + "tet:explicit-route-include-objects/" 2142 + "tet:route-object-include-object/tet:type/" 2143 + "tet:label/tet:label-hop/tet:te-label/tet:technology" { 2144 when "../../../../../../../../../../" 2145 + "nw:network-types/tet:te-topology/" 2146 + "ethtetopo:eth-tran-topology" { 2147 description "Ethernet TE label"; 2148 } 2149 description "Ethernet label."; 2150 case eth { 2151 uses etht-types:eth-label; 2152 } 2153 } 2155 /* Augment label hop of path-route of 2156 * connectivity-matrices information-source */ 2157 augment "/nw:networks/nw:network/nw:node/tet:te/" 2158 + "tet:information-source-entry/tet:connectivity-matrices/" 2159 + "tet:path-properties/tet:path-route-objects/" 2160 + "tet:path-route-object/tet:type/" 2161 + "tet:label/tet:label-hop/tet:te-label/tet:technology" { 2162 when "../../../../../../../../../" 2163 + "nw:network-types/tet:te-topology/" 2164 + "ethtetopo:eth-tran-topology" { 2165 description "Ethernet TE label"; 2166 } 2167 description "Ethernet label."; 2168 case eth { 2169 uses etht-types:eth-label; 2170 } 2171 } 2173 /* Augment ingress label restrictions of 2174 * connectivity-matrix information-source */ 2175 augment "/nw:networks/nw:network/nw:node/tet:te/" 2176 + "tet:information-source-entry/tet:connectivity-matrices/" 2177 + "tet:connectivity-matrix/" 2178 + "tet:from/tet:label-restrictions/tet:label-restriction" { 2179 when "../../../../../../../../nw:network-types/tet:te-topology/" 2180 + "ethtetopo:eth-tran-topology" { 2181 description "Ethernet TE label"; 2182 } 2183 description "Ethernet label."; 2184 uses etht-types:eth-label-restriction; 2185 } 2187 /* Augment ingress label restrictions start of 2188 * connectivity-matrix information-source */ 2189 augment "/nw:networks/nw:network/nw:node/tet:te/" 2190 + "tet:information-source-entry/tet:connectivity-matrices/" 2191 + "tet:connectivity-matrix/" 2192 + "tet:from/tet:label-restrictions/tet:label-restriction/" 2193 + "tet:label-start/tet:te-label/tet:technology" { 2194 when "../../../../../../../../../../" 2195 + "nw:network-types/tet:te-topology/" 2196 + "ethtetopo:eth-tran-topology" { 2197 description "Ethernet TE label"; 2198 } 2199 description "Ethernet label."; 2200 case eth { 2201 uses etht-types:eth-label; 2202 } 2203 } 2205 /* Augment ingress label restrictions end of 2206 * connectivity-matrix information-source */ 2207 augment "/nw:networks/nw:network/nw:node/tet:te/" 2208 + "tet:information-source-entry/tet:connectivity-matrices/" 2209 + "tet:connectivity-matrix/" 2210 + "tet:from/tet:label-restrictions/tet:label-restriction/" 2211 + "tet:label-end/tet:te-label/tet:technology" { 2212 when "../../../../../../../../../../" 2213 + "nw:network-types/tet:te-topology/" 2214 + "ethtetopo:eth-tran-topology" { 2215 description "Ethernet TE label"; 2217 } 2218 description "Ethernet label."; 2219 case eth { 2220 uses etht-types:eth-label; 2221 } 2222 } 2224 /* Augment ingress label restrictions step of 2225 * connectivity-matrix information-source */ 2226 augment "/nw:networks/nw:network/nw:node/tet:te/" 2227 + "tet:information-source-entry/tet:connectivity-matrices/" 2228 + "tet:connectivity-matrix/" 2229 + "tet:from/tet:label-restrictions/tet:label-restriction/" 2230 + "tet:label-step/tet:technology" { 2231 when "../../../../../../../../../" 2232 + "nw:network-types/tet:te-topology/" 2233 + "ethtetopo:eth-tran-topology" { 2234 description "Ethernet TE label"; 2235 } 2236 description "Ethernet label."; 2237 case eth { 2238 uses etht-types:eth-label-step; 2239 } 2240 } 2242 /* Augment egress label restrictions of 2243 * connectivity-matrix information-source */ 2244 augment "/nw:networks/nw:network/nw:node/tet:te/" 2245 + "tet:information-source-entry/tet:connectivity-matrices/" 2246 + "tet:connectivity-matrix/" 2247 + "tet:to/tet:label-restrictions/tet:label-restriction" { 2248 when "../../../../../../../../nw:network-types/tet:te-topology/" 2249 + "ethtetopo:eth-tran-topology" { 2250 description "Ethernet TE label"; 2251 } 2252 description "Ethernet label."; 2253 uses etht-types:eth-label-restriction; 2254 } 2256 /* Augment egress label restrictions start of 2257 * connectivity-matrix information-source */ 2258 augment "/nw:networks/nw:network/nw:node/tet:te/" 2259 + "tet:information-source-entry/tet:connectivity-matrices/" 2260 + "tet:connectivity-matrix/" 2261 + "tet:to/tet:label-restrictions/tet:label-restriction/" 2262 + "tet:label-start/tet:te-label/tet:technology" { 2263 when "../../../../../../../../../../" 2264 + "nw:network-types/tet:te-topology/" 2265 + "ethtetopo:eth-tran-topology" { 2266 description "Ethernet TE label"; 2267 } 2268 description "Ethernet label."; 2269 case eth { 2270 uses etht-types:eth-label; 2271 } 2272 } 2274 /* Augment egress label restrictions end of 2275 * connectivity-matrix information-source */ 2276 augment "/nw:networks/nw:network/nw:node/tet:te/" 2277 + "tet:information-source-entry/tet:connectivity-matrices/" 2278 + "tet:connectivity-matrix/" 2279 + "tet:to/tet:label-restrictions/tet:label-restriction/" 2280 + "tet:label-end/tet:te-label/tet:technology" { 2281 when "../../../../../../../../../../" 2282 + "nw:network-types/tet:te-topology/" 2283 + "ethtetopo:eth-tran-topology" { 2284 description "Ethernet TE label"; 2285 } 2286 description "Ethernet label."; 2287 case eth { 2288 uses etht-types:eth-label; 2289 } 2290 } 2292 /* Augment egress label restrictions step of 2293 * connectivity-matrix information-source */ 2294 augment "/nw:networks/nw:network/nw:node/tet:te/" 2295 + "tet:information-source-entry/tet:connectivity-matrices/" 2296 + "tet:connectivity-matrix/" 2297 + "tet:to/tet:label-restrictions/tet:label-restriction/" 2298 + "tet:label-step/tet:technology" { 2299 when "../../../../../../../../../" 2300 + "nw:network-types/tet:te-topology/" 2301 + "ethtetopo:eth-tran-topology" { 2302 description "Ethernet TE label"; 2303 } 2304 description "Ethernet label."; 2305 case eth { 2306 uses etht-types:eth-label-step; 2307 } 2308 } 2310 /* Augment label hop of underlay primary path of 2311 * connectivity-matrix information-source */ 2312 augment "/nw:networks/nw:network/nw:node/tet:te/" 2313 + "tet:information-source-entry/tet:connectivity-matrices/" 2314 + "tet:connectivity-matrix/" 2315 + "tet:underlay/tet:primary-path/tet:path-element/tet:type/" 2316 + "tet:label/tet:label-hop/tet:te-label/tet:technology" { 2317 when "../../../../../../../../../../" 2318 + "nw:network-types/tet:te-topology/" 2319 + "ethtetopo:eth-tran-topology" { 2320 description "Ethernet TE label"; 2321 } 2322 description "Ethernet label."; 2323 case eth { 2324 uses etht-types:eth-label; 2325 } 2326 } 2328 /* Augment label hop of underlay backup path of 2329 * connectivity-matrix information-source */ 2330 augment "/nw:networks/nw:network/nw:node/tet:te/" 2331 + "tet:information-source-entry/tet:connectivity-matrices/" 2332 + "tet:connectivity-matrix/" 2333 + "tet:underlay/tet:backup-path/tet:path-element/tet:type/" 2334 + "tet:label/tet:label-hop/tet:te-label/tet:technology" { 2335 when "../../../../../../../../../../" 2336 + "nw:network-types/tet:te-topology/" 2337 + "ethtetopo:eth-tran-topology" { 2338 description "Ethernet TE label"; 2339 } 2340 description "Ethernet label."; 2341 case eth { 2342 uses etht-types:eth-label; 2343 } 2344 } 2346 /* Augment label hop of route-exclude of 2347 * connectivity-matrix information-source */ 2348 augment "/nw:networks/nw:network/nw:node/tet:te/" 2349 + "tet:information-source-entry/tet:connectivity-matrices/" 2350 + "tet:connectivity-matrix/" 2351 + "tet:optimizations/tet:algorithm/tet:metric/" 2352 + "tet:optimization-metric/" 2353 + "tet:explicit-route-exclude-objects/" 2354 + "tet:route-object-exclude-object/tet:type/" 2355 + "tet:label/tet:label-hop/tet:te-label/tet:technology" { 2356 when "../../../../../../../../../../../" 2357 + "nw:network-types/tet:te-topology/" 2358 + "ethtetopo:eth-tran-topology" { 2359 description "Ethernet TE label"; 2360 } 2361 description "Ethernet label."; 2362 case eth { 2363 uses etht-types:eth-label; 2364 } 2365 } 2367 /* Augment label hop of route-include of 2368 * connectivity-matrix information-source */ 2369 augment "/nw:networks/nw:network/nw:node/tet:te/" 2370 + "tet:information-source-entry/tet:connectivity-matrices/" 2371 + "tet:connectivity-matrix/" 2372 + "tet:optimizations/tet:algorithm/tet:metric/" 2373 + "tet:optimization-metric/" 2374 + "tet:explicit-route-include-objects/" 2375 + "tet:route-object-include-object/tet:type/" 2376 + "tet:label/tet:label-hop/tet:te-label/tet:technology" { 2377 when "../../../../../../../../../../../" 2378 + "nw:network-types/tet:te-topology/" 2379 + "ethtetopo:eth-tran-topology" { 2380 description "Ethernet TE label"; 2381 } 2382 description "Ethernet label."; 2383 case eth { 2384 uses etht-types:eth-label; 2385 } 2386 } 2388 /* Augment label hop of path-route of 2389 * connectivity-matrix information-source */ 2390 augment "/nw:networks/nw:network/nw:node/tet:te/" 2391 + "tet:information-source-entry/tet:connectivity-matrices/" 2392 + "tet:connectivity-matrix/" 2393 + "tet:path-properties/tet:path-route-objects/" 2394 + "tet:path-route-object/tet:type/" 2395 + "tet:label/tet:label-hop/tet:te-label/tet:technology" { 2396 when "../../../../../../../../../../" 2397 + "nw:network-types/tet:te-topology/" 2398 + "ethtetopo:eth-tran-topology" { 2399 description "Ethernet TE label"; 2400 } 2401 description "Ethernet label."; 2402 case eth { 2403 uses etht-types:eth-label; 2404 } 2405 } 2406 /* Augment label restrictions of local-link-connectivities */ 2407 augment "/nw:networks/nw:network/nw:node/tet:te/" 2408 + "tet:tunnel-termination-point/" 2409 + "tet:local-link-connectivities/" 2410 + "tet:label-restrictions/tet:label-restriction" { 2411 when "../../../../../../nw:network-types/tet:te-topology/" 2412 + "ethtetopo:eth-tran-topology" { 2413 description "Ethernet TE label"; 2414 } 2415 description "Ethernet label."; 2416 uses etht-types:eth-label-restriction; 2417 } 2419 /* Augment label restrictions start of local-link-connectivities */ 2420 augment "/nw:networks/nw:network/nw:node/tet:te/" 2421 + "tet:tunnel-termination-point/" 2422 + "tet:local-link-connectivities/" 2423 + "tet:label-restrictions/tet:label-restriction/" 2424 + "tet:label-start/tet:te-label/tet:technology" { 2425 when "../../../../../../../../nw:network-types/tet:te-topology/" 2426 + "ethtetopo:eth-tran-topology" { 2427 description "Ethernet TE label"; 2428 } 2429 description "Ethernet label."; 2430 case eth { 2431 uses etht-types:eth-label; 2432 } 2433 } 2435 /* Augment label restrictions end of local-link-connectivities */ 2436 augment "/nw:networks/nw:network/nw:node/tet:te/" 2437 + "tet:tunnel-termination-point/" 2438 + "tet:local-link-connectivities/" 2439 + "tet:label-restrictions/tet:label-restriction/" 2440 + "tet:label-end/tet:te-label/tet:technology"{ 2441 when "../../../../../../../../nw:network-types/tet:te-topology/" 2442 + "ethtetopo:eth-tran-topology" { 2443 description "Ethernet TE label"; 2444 } 2445 description "Ethernet label."; 2446 case eth { 2447 uses etht-types:eth-label; 2448 } 2449 } 2451 /* Augment label restrictions step of local-link-connectivities */ 2452 augment "/nw:networks/nw:network/nw:node/tet:te/" 2453 + "tet:tunnel-termination-point/" 2454 + "tet:local-link-connectivities/" 2455 + "tet:label-restrictions/tet:label-restriction/" 2456 + "tet:label-step/tet:technology"{ 2458 when "../../../../../../../nw:network-types/tet:te-topology/" 2459 + "ethtetopo:eth-tran-topology" { 2460 description "Ethernet TE label"; 2461 } 2462 description "Ethernet label."; 2463 case eth { 2464 uses etht-types:eth-label-step; 2465 } 2466 } 2468 /* Augment label hop of underlay primary path of 2469 * local-link-connectivities */ 2470 augment "/nw:networks/nw:network/nw:node/tet:te/" 2471 + "tet:tunnel-termination-point/" 2472 + "tet:local-link-connectivities/" 2473 + "tet:underlay/tet:primary-path/tet:path-element/tet:type/" 2474 + "tet:label/tet:label-hop/tet:te-label/tet:technology" { 2475 when "../../../../../../../../../" 2476 + "nw:network-types/tet:te-topology/" 2477 + "ethtetopo:eth-tran-topology" { 2478 description "Ethernet TE label"; 2479 } 2480 description "Ethernet label."; 2481 case eth { 2482 uses etht-types:eth-label; 2483 } 2484 } 2486 /* Augment label hop of underlay backup path of 2487 * local-link-connectivities */ 2488 augment "/nw:networks/nw:network/nw:node/tet:te/" 2489 + "tet:tunnel-termination-point/" 2490 + "tet:local-link-connectivities/" 2491 + "tet:underlay/tet:backup-path/tet:path-element/tet:type/" 2492 + "tet:label/tet:label-hop/tet:te-label/tet:technology" { 2493 when "../../../../../../../../../" 2494 + "nw:network-types/tet:te-topology/" 2495 + "ethtetopo:eth-tran-topology" { 2496 description "Ethernet TE label"; 2497 } 2498 description "Ethernet label."; 2499 case eth { 2500 uses etht-types:eth-label; 2501 } 2502 } 2504 /* Augment label hop of route-exclude of 2505 * local-link-connectivities */ 2507 augment "/nw:networks/nw:network/nw:node/tet:te/" 2508 + "tet:tunnel-termination-point/" 2509 + "tet:local-link-connectivities/" 2510 + "tet:optimizations/tet:algorithm/tet:metric/" 2511 + "tet:optimization-metric/" 2512 + "tet:explicit-route-exclude-objects/" 2513 + "tet:route-object-exclude-object/tet:type/" 2514 + "tet:label/tet:label-hop/tet:te-label/tet:technology" { 2515 when "../../../../../../../../../../" 2516 + "nw:network-types/tet:te-topology/" 2517 + "ethtetopo:eth-tran-topology" { 2518 description "Ethernet TE label"; 2519 } 2520 description "Ethernet label."; 2521 case eth { 2522 uses etht-types:eth-label; 2523 } 2524 } 2526 /* Augment label hop of route-include of 2527 * local-link-connectivities */ 2528 augment "/nw:networks/nw:network/nw:node/tet:te/" 2529 + "tet:tunnel-termination-point/" 2530 + "tet:local-link-connectivities/" 2531 + "tet:optimizations/tet:algorithm/tet:metric/" 2532 + "tet:optimization-metric/" 2533 + "tet:explicit-route-include-objects/" 2534 + "tet:route-object-include-object/tet:type/" 2535 + "tet:label/tet:label-hop/tet:te-label/tet:technology" { 2536 when "../../../../../../../../../../" 2537 + "nw:network-types/tet:te-topology/" 2538 + "ethtetopo:eth-tran-topology" { 2539 description "Ethernet TE label"; 2540 } 2541 description "Ethernet label."; 2542 case eth { 2543 uses etht-types:eth-label; 2544 } 2545 } 2547 /* Augment label hop of path-route of local-link-connectivities */ 2548 augment "/nw:networks/nw:network/nw:node/tet:te/" 2549 + "tet:tunnel-termination-point/" 2550 + "tet:local-link-connectivities/" 2551 + "tet:path-properties/tet:path-route-objects/" 2552 + "tet:path-route-object/tet:type/" 2553 + "tet:label/tet:label-hop/tet:te-label/tet:technology" { 2554 when "../../../../../../../../../" 2555 + "nw:network-types/tet:te-topology/" 2556 + "ethtetopo:eth-tran-topology" { 2557 description "Ethernet TE label"; 2558 } 2559 description "Ethernet label."; 2560 case eth { 2561 uses etht-types:eth-label; 2562 } 2563 } 2565 /* Augment label restrictions of local-link-connectivity */ 2566 augment "/nw:networks/nw:network/nw:node/tet:te/" 2567 + "tet:tunnel-termination-point/" 2568 + "tet:local-link-connectivities/" 2569 + "tet:local-link-connectivity/" 2570 + "tet:label-restrictions/tet:label-restriction" { 2571 when "../../../../../../../nw:network-types/tet:te-topology/" 2572 + "ethtetopo:eth-tran-topology" { 2573 description "Ethernet TE label"; 2574 } 2575 description "Ethernet label."; 2576 uses etht-types:eth-label-restriction; 2577 } 2579 /* Augment label restrictions start of local-link-connectivity */ 2580 augment "/nw:networks/nw:network/nw:node/tet:te/" 2581 + "tet:tunnel-termination-point/" 2582 + "tet:local-link-connectivities/" 2583 + "tet:local-link-connectivity/" 2584 + "tet:label-restrictions/tet:label-restriction/" 2585 + "tet:label-start/tet:te-label/tet:technology" { 2586 when "../../../../../../../../../" 2587 + "nw:network-types/tet:te-topology/" 2588 + "ethtetopo:eth-tran-topology" { 2589 description "Ethernet TE label"; 2590 } 2591 description "Ethernet label."; 2592 case eth { 2593 uses etht-types:eth-label; 2594 } 2595 } 2597 /* Augment label restrictions end of local-link-connectivity */ 2598 augment "/nw:networks/nw:network/nw:node/tet:te/" 2599 + "tet:tunnel-termination-point/" 2600 + "tet:local-link-connectivities/" 2601 + "tet:local-link-connectivity/" 2602 + "tet:label-restrictions/tet:label-restriction/" 2603 + "tet:label-end/tet:te-label/tet:technology" { 2604 when "../../../../../../../../../" 2605 + "nw:network-types/tet:te-topology/" 2606 + "ethtetopo:eth-tran-topology" { 2607 description "Ethernet TE label"; 2608 } 2609 description "Ethernet label."; 2610 case eth { 2611 uses etht-types:eth-label; 2612 } 2613 } 2615 /* Augment label restrictions step of local-link-connectivity */ 2616 augment "/nw:networks/nw:network/nw:node/tet:te/" 2617 + "tet:tunnel-termination-point/" 2618 + "tet:local-link-connectivities/" 2619 + "tet:local-link-connectivity/" 2620 + "tet:label-restrictions/tet:label-restriction/" 2621 + "tet:label-step/tet:technology" { 2622 when "../../../../../../../../" 2623 + "nw:network-types/tet:te-topology/" 2624 + "ethtetopo:eth-tran-topology" { 2625 description "Ethernet TE label"; 2626 } 2627 description "Ethernet label."; 2628 case eth { 2629 uses etht-types:eth-label-step; 2630 } 2631 } 2633 /* Augment label hop of underlay primary path of 2634 * local-link-connectivity */ 2635 augment "/nw:networks/nw:network/nw:node/tet:te/" 2636 + "tet:tunnel-termination-point/" 2637 + "tet:local-link-connectivities/" 2638 + "tet:local-link-connectivity/" 2639 + "tet:underlay/tet:primary-path/tet:path-element/tet:type/" 2640 + "tet:label/tet:label-hop/tet:te-label/tet:technology" { 2641 when "../../../../../../../../../../" 2642 + "nw:network-types/tet:te-topology/" 2643 + "ethtetopo:eth-tran-topology" { 2644 description "Ethernet TE label"; 2645 } 2646 description "Ethernet label."; 2647 case eth { 2648 uses etht-types:eth-label; 2649 } 2650 } 2651 /* Augment label hop of underlay backup path of 2652 * local-link-connectivity (LLC) */ 2653 augment "/nw:networks/nw:network/nw:node/tet:te/" 2654 + "tet:tunnel-termination-point/" 2655 + "tet:local-link-connectivities/" 2656 + "tet:local-link-connectivity/" 2657 + "tet:underlay/tet:backup-path/tet:path-element/tet:type/" 2658 + "tet:label/tet:label-hop/tet:te-label/tet:technology" { 2659 when "../../../../../../../../../../" 2660 + "nw:network-types/tet:te-topology/" 2661 + "ethtetopo:eth-tran-topology" { 2662 description "Ethernet TE label"; 2663 } 2664 description "Ethernet label."; 2665 case eth { 2666 uses etht-types:eth-label; 2667 } 2668 } 2670 /* Augment label hop of route-exclude of 2671 * local-link-connectivity (LLC) */ 2672 augment "/nw:networks/nw:network/nw:node/tet:te/" 2673 + "tet:tunnel-termination-point/" 2674 + "tet:local-link-connectivities/" 2675 + "tet:local-link-connectivity/" 2676 + "tet:optimizations/tet:algorithm/tet:metric/" 2677 + "tet:optimization-metric/" 2678 + "tet:explicit-route-exclude-objects/" 2679 + "tet:route-object-exclude-object/tet:type/" 2680 + "tet:label/tet:label-hop/tet:te-label/tet:technology" { 2681 when "../../../../../../../../../../../" 2682 + "nw:network-types/tet:te-topology/" 2683 + "ethtetopo:eth-tran-topology" { 2684 description "Ethernet TE label"; 2685 } 2686 description "Ethernet label."; 2687 case eth { 2688 uses etht-types:eth-label; 2689 } 2690 } 2692 /* Augment label hop of route-include of 2693 * local-link-connectivity (LLC) */ 2694 augment "/nw:networks/nw:network/nw:node/tet:te/" 2695 + "tet:tunnel-termination-point/" 2696 + "tet:local-link-connectivities/" 2697 + "tet:local-link-connectivity/" 2698 + "tet:optimizations/tet:algorithm/tet:metric/" 2699 + "tet:optimization-metric/" 2700 + "tet:explicit-route-include-objects/" 2701 + "tet:route-object-include-object/tet:type/" 2702 + "tet:label/tet:label-hop/tet:te-label/tet:technology" { 2703 when "../../../../../../../../../../../" 2704 + "nw:network-types/tet:te-topology/" 2705 + "ethtetopo:eth-tran-topology" { 2706 description "Ethernet TE label"; 2707 } 2708 description "Ethernet label."; 2709 case eth { 2710 uses etht-types:eth-label; 2711 } 2712 } 2714 /* Augment label hop of path-route of 2715 * local-link-connectivity (LLC) */ 2716 augment "/nw:networks/nw:network/nw:node/tet:te/" 2717 + "tet:tunnel-termination-point/" 2718 + "tet:local-link-connectivities/" 2719 + "tet:local-link-connectivity/" 2720 + "tet:path-properties/tet:path-route-objects/" 2721 + "tet:path-route-object/tet:type/" 2722 + "tet:label/tet:label-hop/tet:te-label/tet:technology" { 2723 when "../../../../../../../../../../" 2724 + "nw:network-types/tet:te-topology/" 2725 + "ethtetopo:eth-tran-topology" { 2726 description "Ethernet TE label"; 2727 } 2728 description "Ethernet label."; 2729 case eth { 2730 uses etht-types:eth-label; 2731 } 2732 } 2734 /* Augment label hop of underlay primary path of TE link */ 2735 augment "/nw:networks/nw:network/nt:link/tet:te/" 2736 + "tet:te-link-attributes/" 2737 + "tet:underlay/tet:primary-path/tet:path-element/tet:type/" 2738 + "tet:label/tet:label-hop/tet:te-label/tet:technology" { 2739 when "../../../../../../../../" 2740 + "nw:network-types/tet:te-topology/" 2741 + "ethtetopo:eth-tran-topology" { 2742 description "Ethernet TE label"; 2743 } 2744 description "Ethernet label."; 2745 case eth { 2746 uses etht-types:eth-label; 2748 } 2749 } 2751 /* Augment label hop of underlay backup path of TE link */ 2752 augment "/nw:networks/nw:network/nt:link/tet:te/" 2753 + "tet:te-link-attributes/" 2754 + "tet:underlay/tet:backup-path/tet:path-element/tet:type/" 2755 + "tet:label/tet:label-hop/tet:te-label/tet:technology" { 2756 when "../../../../../../../../" 2757 + "nw:network-types/tet:te-topology/" 2758 + "ethtetopo:eth-tran-topology" { 2759 description "Ethernet TE label"; 2760 } 2761 description "Ethernet label."; 2762 case eth { 2763 uses etht-types:eth-label; 2764 } 2765 } 2767 /* Augment label restrictions of TE link */ 2768 augment "/nw:networks/nw:network/nt:link/tet:te/" 2769 + "tet:te-link-attributes/" 2770 + "tet:label-restrictions/tet:label-restriction" { 2771 when "../../../../../nw:network-types/tet:te-topology/" 2772 + "ethtetopo:eth-tran-topology" { 2773 description "Ethernet TE label"; 2774 } 2775 description "Ethernet label."; 2776 uses etht-types:eth-label-restriction; 2777 } 2779 /* Augment label restrictions start of TE link */ 2780 augment "/nw:networks/nw:network/nt:link/tet:te/" 2781 + "tet:te-link-attributes/" 2782 + "tet:label-restrictions/tet:label-restriction/" 2783 + "tet:label-start/tet:te-label/tet:technology" { 2784 when "../../../../../../../nw:network-types/tet:te-topology/" 2785 + "ethtetopo:eth-tran-topology" { 2786 description "Ethernet TE label"; 2787 } 2788 description "Ethernet label."; 2789 case eth { 2790 uses etht-types:eth-label; 2791 } 2792 } 2794 /* Augment label restrictions end of TE link */ 2795 augment "/nw:networks/nw:network/nt:link/tet:te/" 2796 + "tet:te-link-attributes/" 2797 + "tet:label-restrictions/tet:label-restriction/" 2798 + "tet:label-end/tet:te-label/tet:technology" { 2799 when "../../../../../../../nw:network-types/tet:te-topology/" 2800 + "ethtetopo:eth-tran-topology" { 2801 description "Ethernet TE label"; 2802 } 2803 description "Ethernet label."; 2804 case eth { 2805 uses etht-types:eth-label; 2806 } 2807 } 2809 /* Augment label restrictions step of TE link */ 2810 augment "/nw:networks/nw:network/nt:link/tet:te/" 2811 + "tet:te-link-attributes/" 2812 + "tet:label-restrictions/tet:label-restriction/" 2813 + "tet:label-step/tet:technology" { 2814 when "../../../../../../nw:network-types/tet:te-topology/" 2815 + "ethtetopo:eth-tran-topology" { 2816 description "Ethernet TE label"; 2817 } 2818 description "Ethernet label."; 2819 case eth { 2820 uses etht-types:eth-label-step; 2821 } 2822 } 2824 /* Augment label restrictions of TE link information-source */ 2825 augment "/nw:networks/nw:network/nt:link/tet:te/" 2826 + "tet:information-source-entry/" 2827 + "tet:label-restrictions/tet:label-restriction" { 2828 when "../../../../../nw:network-types/tet:te-topology/" 2829 + "ethtetopo:eth-tran-topology" { 2830 description "Ethernet TE label"; 2831 } 2832 description "Ethernet label."; 2833 uses etht-types:eth-label-restriction; 2834 } 2836 /* Augment label restrictions start of TE link information-source */ 2837 augment "/nw:networks/nw:network/nt:link/tet:te/" 2838 + "tet:information-source-entry/" 2839 + "tet:label-restrictions/tet:label-restriction/" 2840 + "tet:label-start/tet:te-label/tet:technology" { 2841 when "../../../../../../../nw:network-types/tet:te-topology/" 2842 + "ethtetopo:eth-tran-topology" { 2843 description "Ethernet TE label"; 2845 } 2846 description "Ethernet label."; 2847 case eth { 2848 uses etht-types:eth-label; 2849 } 2850 } 2851 /* Augment label restrictions end of TE link information-source */ 2852 augment "/nw:networks/nw:network/nt:link/tet:te/" 2853 + "tet:information-source-entry/" 2854 + "tet:label-restrictions/tet:label-restriction/" 2855 + "tet:label-end/tet:te-label/tet:technology" { 2856 when "../../../../../../../nw:network-types/tet:te-topology/" 2857 + "ethtetopo:eth-tran-topology" { 2858 description "Ethernet TE label"; 2859 } 2860 description "Ethernet label."; 2861 case eth { 2862 uses etht-types:eth-label; 2863 } 2864 } 2866 /* Augment label restrictions step of TE link information-source */ 2867 augment "/nw:networks/nw:network/nt:link/tet:te/" 2868 + "tet:information-source-entry/" 2869 + "tet:label-restrictions/tet:label-restriction/" 2870 + "tet:label-step/tet:technology" { 2871 when "../../../../../../nw:network-types/tet:te-topology/" 2872 + "ethtetopo:eth-tran-topology" { 2873 description "Ethernet TE label"; 2874 } 2875 description "Ethernet label."; 2876 case eth { 2877 uses etht-types:eth-label-step; 2878 } 2879 } 2881 /* Augment label hop of underlay primary path of TE link template */ 2882 augment "/nw:networks/tet:te/tet:templates/" 2883 + "tet:link-template/tet:te-link-attributes/" 2884 + "tet:underlay/tet:primary-path/tet:path-element/tet:type/" 2885 + "tet:label/tet:label-hop/tet:te-label/tet:technology" { 2886 /* 2887 when "../../../../../../../../../../" 2888 + "nw:network-types/tet:te-topology/" 2889 + "ethtetopo:eth-tran-topology" { 2890 description "Ethernet TE label"; 2891 } 2892 */ 2893 description "Ethernet label."; 2894 case eth { 2895 uses etht-types:eth-label; 2896 } 2897 } 2899 /* Augment label hop of underlay backup path of TE link template */ 2900 augment "/nw:networks/tet:te/tet:templates/" 2901 + "tet:link-template/tet:te-link-attributes/" 2902 + "tet:underlay/tet:backup-path/tet:path-element/tet:type/" 2903 + "tet:label/tet:label-hop/tet:te-label/tet:technology" { 2904 /* 2905 when "../../../../../../../../../../nw:network-types/" 2906 + "tet:te-topology/ethtetopo:eth-tran-topology" { 2907 description "Ethernet TE label"; 2908 } 2909 */ 2910 description "Ethernet label."; 2911 case eth { 2912 uses etht-types:eth-label; 2913 } 2914 } 2916 /* Augment label restrictions of TE link template */ 2917 augment "/nw:networks/tet:te/tet:templates/" 2918 + "tet:link-template/tet:te-link-attributes/" 2919 + "tet:label-restrictions/tet:label-restriction" { 2920 /* 2921 when "../../../../../nw:network-types/tet:te-topology/" 2922 + "ethtetopo:eth-tran-topology" { 2923 description "Ethernet TE label"; 2924 } 2925 */ 2926 description "Ethernet label."; 2927 uses etht-types:eth-label-restriction; 2928 } 2930 /* Augment label restrictions start of TE link template */ 2931 augment "/nw:networks/tet:te/tet:templates/" 2932 + "tet:link-template/tet:te-link-attributes/" 2933 + "tet:label-restrictions/tet:label-restriction/" 2934 + "tet:label-start/tet:te-label/tet:technology" { 2935 /* 2936 when "../../../../../../../nw:network-types/tet:te-topology/" 2937 + "ethtetopo:eth-tran-topology" { 2938 description "Ethernet TE label"; 2939 } 2940 */ 2941 description "Ethernet label."; 2942 case eth { 2943 uses etht-types:eth-label; 2944 } 2945 } 2947 /* Augment label restrictions end of TE link template */ 2948 augment "/nw:networks/tet:te/tet:templates/" 2949 + "tet:link-template/tet:te-link-attributes/" 2950 + "tet:label-restrictions/tet:label-restriction/" 2951 + "tet:label-end/tet:te-label/tet:technology" { 2952 /* 2953 when "../../../../../../../nw:network-types/tet:te-topology/" 2954 + "ethtetopo:eth-tran-topology" { 2955 description "Ethernet TE label"; 2956 } 2957 */ 2958 description "Ethernet label."; 2959 case eth { 2960 uses etht-types:eth-label; 2961 } 2962 } 2964 /* Augment label restrictions step of TE link template */ 2965 augment "/nw:networks/tet:te/tet:templates/" 2966 + "tet:link-template/tet:te-link-attributes/" 2967 + "tet:label-restrictions/tet:label-restriction/" 2968 + "tet:label-step/tet:technology" { 2969 /* 2970 when "../../../../../../nw:network-types/tet:te-topology/" 2971 + "ethtetopo:eth-tran-topology" { 2972 description "Ethernet TE label"; 2973 } 2974 */ 2975 description "Ethernet label."; 2976 case eth { 2977 uses etht-types:eth-label-step; 2978 } 2979 } 2981 } 2982 2984 5. Considerations and Open Issue 2986 Editor Notes: This section is used to note temporary discussion/ 2987 conclusion that to be fixed in the future version, and will be 2988 removed before publication. 2990 Update in draft-zheng-ccamp-client-topo-yang-10: there is no open 2991 issue in this version. 2993 201902: we have noticed that Ethernet is the only client signal (on 2994 the perspective of OTN) which need a topology. So it is possible 2995 that the title of this document will be changed to "A YANG Data Model 2996 for Ethernet Topology". The proposal of this work is that the 2997 document will follow up the progress of draft-zheng-ccamp-client- 2998 signal-yang, with draft-zheng-ccamp-client-tunnel-yang together. 2999 (solved in -06) 3001 201902: will have to align with TE topology model, currently is a 3002 totally different format with necessary parameters, a big change is 3003 expected. (solved in -06.) 3005 6. IANA Considerations 3007 It is proposed that IANA should assign new URIs from the "IETF XML 3008 Registry" [RFC3688] as follows: 3010 URI: urn:ietf:params:xml:ns:yang:ietf-eth-te-topology 3011 Registrant Contact: The IESG 3012 XML: N/A; the requested URI is an XML namespace. 3014 This document registers following YANG modules in the YANG Module 3015 Names registry [RFC7950]. 3017 name: ietf-eth-te-topology 3018 namespace: urn:ietf:params:xml:ns:yang:ietf-eth-te-topology 3019 prefix: ethtetopo 3020 reference: RFC XXXX (This document) 3022 7. Manageability Considerations 3024 TBD. 3026 8. Security Considerations 3028 The data following the model defined in this document is exchanged 3029 via, for example, the interface between an orchestrator and a 3030 transport network controller. The security concerns mentioned in 3031 [RFC8795] for using ietf-te-topology.yang model also applies to this 3032 document. 3034 The YANG module defined in this document can be accessed via the 3035 RESTCONF protocol defined in [RFC8040], or maybe via the NETCONF 3036 protocol [RFC6241]. 3038 There are a number of data nodes defined in the YANG module which are 3039 writable/creatable/deletable (i.e., config true, which is the 3040 default). These data nodes may be considered sensitive or vulnerable 3041 in some network environments. Write operations (e.g., POST) to these 3042 data nodes without proper protection can have a negative effect on 3043 network operations. 3045 Editors note: to list specific subtrees and data nodes and their 3046 sensitivity/vulnerability. 3048 9. Acknowledgements 3050 We would like to thank Igor Bryskin and Daniel King for their 3051 comments and discussions. 3053 10. Contributors 3055 Yanlei Zheng China Unicom Email: zhengyanlei@chinaunicom.cn 3057 Zhe Liu Huawei Technologies, Email: liuzhe123@huawei.com 3059 Sergio Belotti Nokia, Email: sergio.belotti@nokia.com 3061 Yingxi Yao Shanghai Bell, yingxi.yao@nokia-sbell.com 3063 Giuseppe Fioccola Huawei Technologies giuseppe.fioccola@huawei.com 3065 11. References 3067 11.1. Normative References 3069 [I-D.ietf-ccamp-otn-topo-yang] 3070 Zheng, H., Busi, I., Liu, X., Belotti, S., and O. G. D. 3071 Dios, "A YANG Data Model for Optical Transport Network 3072 Topology", Work in Progress, Internet-Draft, draft-ietf- 3073 ccamp-otn-topo-yang-13, 12 July 2021, 3074 . 3077 [RFC3688] Mealling, M., "The IETF XML Registry", BCP 81, RFC 3688, 3078 DOI 10.17487/RFC3688, January 2004, 3079 . 3081 [RFC6241] Enns, R., Ed., Bjorklund, M., Ed., Schoenwaelder, J., Ed., 3082 and A. Bierman, Ed., "Network Configuration Protocol 3083 (NETCONF)", RFC 6241, DOI 10.17487/RFC6241, June 2011, 3084 . 3086 [RFC7950] Bjorklund, M., Ed., "The YANG 1.1 Data Modeling Language", 3087 RFC 7950, DOI 10.17487/RFC7950, August 2016, 3088 . 3090 [RFC8040] Bierman, A., Bjorklund, M., and K. Watsen, "RESTCONF 3091 Protocol", RFC 8040, DOI 10.17487/RFC8040, January 2017, 3092 . 3094 [RFC8795] Liu, X., Bryskin, I., Beeram, V., Saad, T., Shah, H., and 3095 O. Gonzalez de Dios, "YANG Data Model for Traffic 3096 Engineering (TE) Topologies", RFC 8795, 3097 DOI 10.17487/RFC8795, August 2020, 3098 . 3100 11.2. Informative References 3102 [I-D.ietf-ccamp-wson-yang] 3103 Zheng, H., Lee, Y., Guo, A., Lopez, V., and D. King, "A 3104 YANG Data Model for Wavelength Switched Optical Networks 3105 (WSONs)", Work in Progress, Internet-Draft, draft-ietf- 3106 ccamp-wson-yang-28, 29 December 2020, 3107 . 3110 [RFC8340] Bjorklund, M. and L. Berger, Ed., "YANG Tree Diagrams", 3111 BCP 215, RFC 8340, DOI 10.17487/RFC8340, March 2018, 3112 . 3114 Authors' Addresses 3116 Haomian Zheng 3117 Huawei Technologies 3118 H1, Huawei Xiliu Beipo Village, Songshan Lake 3119 Dongguan 3120 Guangdong, 523808 3121 China 3122 Email: zhenghaomian@huawei.com 3124 Aihua Guo 3125 Futurewei 3126 Email: aihuaguo@futurewei.com 3127 Italo Busi 3128 Huawei Technologies 3129 Email: Italo.Busi@huawei.com 3131 Yunbin Xu 3132 CAICT 3133 Email: xuyunbin@caict.ac.cn 3135 Yang Zhao 3136 China Mobile 3137 Email: zhaoyangyjy@chinamobile.com 3139 Xufeng Liu 3140 Volta Networks 3141 Email: xufeng.liu.ietf@gmail.com