idnits 2.17.1 draft-ietf-ccamp-wson-yang-17.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 131 instances of too long lines in the document, the longest one being 13 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 doesn't use any RFC 2119 keywords, yet seems to have RFC 2119 boilerplate text. -- The document date (November 26, 2018) is 1971 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) == Missing Reference: 'RFC8174' is mentioned on line 116, but not defined == Missing Reference: 'RFCXXXX' is mentioned on line 161, but not defined == Unused Reference: 'RFC6163' is defined on line 3481, but no explicit reference was found in the text == Unused Reference: 'RFC6205' is defined on line 3486, but no explicit reference was found in the text == Unused Reference: 'RFC7698' is defined on line 3502, but no explicit reference was found in the text ** Obsolete normative reference: RFC 6536 (Obsoleted by RFC 8341) Summary: 2 errors (**), 0 flaws (~~), 7 warnings (==), 1 comment (--). Run idnits with the --verbose option for more detailed information about the items above. -------------------------------------------------------------------------------- 1 CCAMP Working Group Y. Lee (Editor) 2 Internet Draft D. Dhody 3 Intended status: Standard Track A. Guo 4 Expires: May 27, 2019 Huawei 6 V. Lopez 7 Telefonica 9 D. King 10 U. of Lancaster 12 November 26, 2018 14 A YANG Data Model for WSON Optical Networks 16 draft-ietf-ccamp-wson-yang-17 18 Abstract 20 This document provides a YANG data model for the routing and 21 wavelength assignment (RWA) TE topology in wavelength switched 22 optical networks (WSONs). The YANG data model defined in this 23 document conforms to the Network Management Datastore Architecture 24 defined in RFC 8342. 26 Status of this Memo 28 This Internet-Draft is submitted to IETF in full conformance with 29 the provisions of BCP 78 and BCP 79. 31 Internet-Drafts are working documents of the Internet Engineering 32 Task Force (IETF), its areas, and its working groups. Note that 33 other groups may also distribute working documents as Internet- 34 Drafts. 36 Internet-Drafts are draft documents valid for a maximum of six 37 months and may be updated, replaced, or obsoleted by other documents 38 at any time. It is inappropriate to use Internet-Drafts as 39 reference material or to cite them other than as "work in progress." 41 The list of current Internet-Drafts can be accessed at 42 http://www.ietf.org/ietf/1id-abstracts.txt 44 The list of Internet-Draft Shadow Directories can be accessed at 45 http://www.ietf.org/shadow.html 47 This Internet-Draft will expire on May 27, 2019. 49 Copyright Notice 50 Copyright (c) 2018 IETF Trust and the persons identified as the 51 document authors. All rights reserved. 53 This document is subject to BCP 78 and the IETF Trust's Legal 54 Provisions Relating to IETF Documents 55 (http://trustee.ietf.org/license-info) in effect on the date of 56 publication of this document. Please review these documents 57 carefully, as they describe your rights and restrictions with 58 respect to this document. Code Components extracted from this 59 document must include Simplified BSD License text as described in 60 Section 4.e of the Trust Legal Provisions and are provided without 61 warranty as described in the Simplified BSD License. 63 Table of Contents 65 1. Introduction...................................................2 66 1.1. Requirements Language.....................................3 67 1.2. Terminology...............................................3 68 1.3. Tree diagram..............................................4 69 1.4. Prefixes in Data Node Names...............................4 70 2. YANG Model (Tree Structure)....................................4 71 3. IETF-WSON-Topology YANG Model.................................22 72 4. IETF-Layer0-Types YANG Model..................................58 73 5. Security Considerations.......................................71 74 6. IANA Considerations...........................................72 75 7. Acknowledgments...............................................73 76 8. References....................................................74 77 8.1. Normative References.....................................74 78 8.2. Informative References...................................74 79 9. Contributors..................................................76 80 Authors' Addresses...............................................76 82 1. Introduction 84 This document provides a YANG data model for the routing and 85 wavelength assignment (RWA) Traffic Engineering (TE) topology in 86 wavelength switched optical networks (WSONs). The YANG model 87 described in this document is a WSON technology-specific YANG model 88 based on the information model developed in [RFC7446] and the two 89 encoding documents [RFC7581] and [RFC7579] that developed protocol 90 independent encodings based on [RFC7446]. 92 This document augments the generic TE topology draft [TE-TOPO]. 94 What is not in scope of this document is both impairment-aware WSON 95 and flex-grid. 97 This document defines two YANG models: ietf-wson-topology (Section 98 3) and ietf-layer0-types (Section 4). 100 There are multiple applications for the yang data model defined in 101 this document. For example, nodes within the network can use the 102 data model to capture their understanding of the overall WSON 103 topology and expose it to a controller. A controller can further 104 propagate the topology to other controllers. The YANG model is used 105 by NETCONF [RFC6020], [RFC8341] or a RESTCONF [RFC8040] protocol. 106 The YANG data model defined in this document conforms to the Network 107 Management Datastore Architecture [RFC8342]. 109 1.1. Requirements Language 111 The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT", 112 "SHOULD", "SHOULD NOT", "RECOMMENDED", "NOT RECOMMENDED", "MAY", and 113 "OPTIONAL" in this document are to be interpreted as described in BCP 114 14 [RFC2119] [RFC8174] when, and only when, they appear in all 115 capitals, as shown here. 117 1.2. Terminology 119 Refer to [RFC7446] and [RFC7581] for the key terms used in this 120 document. 122 The following terms are defined in [RFC7950] and are not redefined 123 here: 125 o client 127 o server 129 o augment 131 o data model 133 o data node 135 The following terms are defined in [RFC6241] and are not redefined 136 here: 138 o configuration data 140 o state data 142 The terminology for describing YANG data models is found in 143 [RFC7950]. 145 1.3. Tree diagram 147 A simplified graphical representation of the data model is used in 148 chapter 2 of this this document. The meaning of the symbols in 149 these diagrams is defined in [RFC8340]. 151 1.4. Prefixes in Data Node Names 153 In this document, names of data nodes and other data model objects 154 are prefixed using the standard prefix associated with the 155 corresponding YANG imported modules, as shown in Table 1. 157 +-------------+-------------------------+-----------------+ 158 | Prefix | YANG module | Reference | 159 +-------------+-------------------------+-----------------+ 160 | layer0-type | ietf-layer0-types | [RFCXXXX] | 161 | wson | ietf-wson-topology | [RFCXXXX] | 162 | nw | ietf-network | [RFC8345] | 163 | nt | ietf-network-topology | [RFC8345] | 164 | tet | ietf-te-topology | [TE-TOPO] | 165 +-------------+-------------------------+-----------------+ 167 Table 1: Prefixes and corresponding YANG modules 169 Note: The RFC Editor will replace XXXX with the number assigned to 170 the RFC once this draft becomes an RFC. 172 2. YANG Model (Tree Structure) 174 module: ietf-wson-topology 175 augment /nw:networks/nw:network/nw:network-types/tet:te-topology: 176 +-rw wson-topology! 177 augment /nw:networks/nw:network/nt:link/tet:te/tet:te-link-attributes: 178 augment /nw:networks/nw:network/nw:node/nt:termination-point/tet:te: 179 +-rw supported-payload-types* [index] 180 | +-rw index uint16 181 | +-rw payload-type? string 182 +-rw client-facing? boolean 183 augment /nw:networks/nw:network/nw:node/tet:te/tet:te-node-attributes: 184 +-rw wson-node 185 +-rw node-type? identityref 186 augment /nw:networks/nw:network/nw:node/tet:te/tet:tunnel-termination-point: 187 +-rw supported-operational-modes* layer0-types:operational-mode 188 +-rw configured-operational-modes? layer0-types:operational-mode 189 +-rw supported-fec-types* identityref 190 +-rw supported-termination-types* identityref 191 +-rw supports-bit-stuffing? boolean 192 +-rw is-tunable? boolean 193 +-rw max-subcarrier-channel-num? uint8 194 augment /nw:networks/nw:network/nw:node/nt:termination- 195 point/tet:te/tet:interface-switching-capability/tet:max-lsp-bandwidth/tet:te- 196 bandwidth/tet:technology: 197 +-:(wson) 198 +-rw bandwidth-type? identityref 199 augment /nw:networks/nw:network/nw:node/tet:te/tet:te-node- 200 attributes/tet:connectivity-matrices/tet:path-constraints/tet:te- 201 bandwidth/tet:technology: 202 +-:(wson) 203 +-rw supported-bandwidth-list* identityref 204 augment /nw:networks/nw:network/nw:node/tet:te/tet:te-node- 205 attributes/tet:connectivity-matrices/tet:connectivity-matrix/tet:path- 206 constraints/tet:te-bandwidth/tet:technology: 207 +-:(wson) 208 +-rw supported-bandwidth-list* identityref 209 augment /nw:networks/nw:network/nw:node/tet:te/tet:information-source- 210 entry/tet:connectivity-matrices/tet:path-constraints/tet:te- 211 bandwidth/tet:technology: 212 +-:(wson) 213 +-ro supported-bandwidth-list* identityref 214 augment /nw:networks/nw:network/nw:node/tet:te/tet:information-source- 215 entry/tet:connectivity-matrices/tet:connectivity-matrix/tet:path- 216 constraints/tet:te-bandwidth/tet:technology: 217 +-:(wson) 218 +-ro supported-bandwidth-list* identityref 219 augment /nw:networks/nw:network/nw:node/tet:te/tet:tunnel-termination- 220 point/tet:client-layer-adaptation/tet:switching-capability/tet:te- 221 bandwidth/tet:technology: 222 +-:(wson) 223 +-rw supported-bandwidth-list* identityref 224 augment /nw:networks/nw:network/nw:node/tet:te/tet:tunnel-termination- 225 point/tet:local-link-connectivities/tet:path-constraints/tet:te- 226 bandwidth/tet:technology: 227 +-:(wson) 228 +-rw supported-bandwidth-list* identityref 230 augment /nw:networks/nw:network/nw:node/tet:te/tet:tunnel-termination- 231 point/tet:local-link-connectivities/tet:local-link-connectivity/tet:path- 232 constraints/tet:te-bandwidth/tet:technology: 233 +-:(wson) 234 +-rw supported-bandwidth-list* identityref 235 augment /nw:networks/nw:network/nt:link/tet:te/tet:te-link- 236 attributes/tet:interface-switching-capability/tet:max-lsp-bandwidth/tet:te- 237 bandwidth/tet:technology: 238 +-:(wson) 239 +-rw bandwidth-type? identityref 240 augment /nw:networks/nw:network/nt:link/tet:te/tet:te-link-attributes/tet:max- 241 link-bandwidth/tet:te-bandwidth/tet:technology: 242 +-:(wson) 243 +-rw supported-bandwidth-list* identityref 244 augment /nw:networks/nw:network/nt:link/tet:te/tet:te-link-attributes/tet:max- 245 resv-link-bandwidth/tet:te-bandwidth/tet:technology: 246 +-:(wson) 247 +-rw supported-bandwidth-list* identityref 248 augment /nw:networks/nw:network/nt:link/tet:te/tet:te-link- 249 attributes/tet:unreserved-bandwidth/tet:te-bandwidth/tet:technology: 250 +-:(wson) 251 +-rw supported-bandwidth-list* identityref 252 augment /nw:networks/nw:network/nt:link/tet:te/tet:information-source- 253 entry/tet:interface-switching-capability/tet:max-lsp-bandwidth/tet:te- 254 bandwidth/tet:technology: 255 +-:(wson) 256 +-ro bandwidth-type? identityref 257 augment /nw:networks/nw:network/nt:link/tet:te/tet:information-source- 258 entry/tet:max-link-bandwidth/tet:te-bandwidth/tet:technology: 259 +-:(wson) 260 +-ro supported-bandwidth-list* identityref 261 augment /nw:networks/nw:network/nt:link/tet:te/tet:information-source- 262 entry/tet:max-resv-link-bandwidth/tet:te-bandwidth/tet:technology: 263 +-:(wson) 264 +-ro supported-bandwidth-list* identityref 265 augment /nw:networks/nw:network/nt:link/tet:te/tet:information-source- 266 entry/tet:unreserved-bandwidth/tet:te-bandwidth/tet:technology: 267 +-:(wson) 268 +-ro supported-bandwidth-list* identityref 269 augment /nw:networks/tet:te/tet:templates/tet:link-template/tet:te-link- 270 attributes/tet:interface-switching-capability/tet:max-lsp-bandwidth/tet:te- 271 bandwidth/tet:technology: 272 +-:(wson) 273 +-rw bandwidth-type? identityref 274 augment /nw:networks/tet:te/tet:templates/tet:link-template/tet:te-link- 275 attributes/tet:max-link-bandwidth/tet:te-bandwidth/tet:technology: 276 +-:(wson) 277 +-rw supported-bandwidth-list* identityref 279 augment /nw:networks/tet:te/tet:templates/tet:link-template/tet:te-link- 280 attributes/tet:max-resv-link-bandwidth/tet:te-bandwidth/tet:technology: 281 +-:(wson) 282 +-rw supported-bandwidth-list* identityref 283 augment /nw:networks/tet:te/tet:templates/tet:link-template/tet:te-link- 284 attributes/tet:unreserved-bandwidth/tet:te-bandwidth/tet:technology: 285 +-:(wson) 286 +-rw supported-bandwidth-list* identityref 287 augment /nw:networks/nw:network/nw:node/tet:te/tet:te-node- 288 attributes/tet:connectivity-matrices/tet:label-restrictions/tet:label-restriction: 289 +-rw grid-type? identityref 290 +-rw priority? uint8 291 augment /nw:networks/nw:network/nw:node/tet:te/tet:te-node- 292 attributes/tet:connectivity-matrices/tet:label-restrictions/tet:label- 293 restriction/tet:label-start/tet:te-label/tet:technology: 294 +-:(wson) 295 +-rw (grid-type)? 296 +-:(dwdm) 297 | +-rw channel-freq? frequency-thz 298 +-:(cwdm) 299 +-rw channel-wavelength? uint32 300 augment /nw:networks/nw:network/nw:node/tet:te/tet:te-node- 301 attributes/tet:connectivity-matrices/tet:label-restrictions/tet:label- 302 restriction/tet:label-end/tet:te-label/tet:technology: 303 +-:(wson) 304 +-rw (grid-type)? 305 +-:(dwdm) 306 | +-rw channel-freq? frequency-thz 307 +-:(cwdm) 308 +-rw channel-wavelength? uint32 309 augment /nw:networks/nw:network/nw:node/tet:te/tet:te-node- 310 attributes/tet:connectivity-matrices/tet:underlay/tet:primary-path/tet:path- 311 element/tet:type/tet:label/tet:label-hop/tet:te-label/tet:technology: 312 +-:(wson) 313 +-rw (grid-type)? 314 +-:(dwdm) 315 | +-rw (single-or-super-channel)? 316 | +-:(single) 317 | | +-rw channel-freq? frequency-thz 318 | +-:(super) 319 | +-rw subcarrier-channels* frequency-thz 320 +-:(cwdm) 321 +-rw channel-wavelength? uint32 322 augment /nw:networks/nw:network/nw:node/tet:te/tet:te-node- 323 attributes/tet:connectivity-matrices/tet:underlay/tet:backup-path/tet:path- 324 element/tet:type/tet:label/tet:label-hop/tet:te-label/tet:technology: 325 +-:(wson) 326 +-rw (grid-type)? 327 +-:(dwdm) 328 | +-rw (single-or-super-channel)? 329 | +-:(single) 330 | | +-rw channel-freq? frequency-thz 331 | +-:(super) 332 | +-rw subcarrier-channels* frequency-thz 333 +-:(cwdm) 334 +-rw channel-wavelength? uint32 335 augment /nw:networks/nw:network/nw:node/tet:te/tet:te-node- 336 attributes/tet:connectivity- 337 matrices/tet:optimizations/tet:algorithm/tet:metric/tet:optimization- 338 metric/tet:explicit-route-exclude-objects/tet:route-object-exclude- 339 object/tet:type/tet:label/tet:label-hop/tet:te-label/tet:technology: 340 +-:(wson) 341 +-rw (grid-type)? 342 +-:(dwdm) 343 | +-rw (single-or-super-channel)? 344 | +-:(single) 345 | | +-rw channel-freq? frequency-thz 346 | +-:(super) 347 | +-rw subcarrier-channels* frequency-thz 348 +-:(cwdm) 349 +-rw channel-wavelength? uint32 350 augment /nw:networks/nw:network/nw:node/tet:te/tet:te-node- 351 attributes/tet:connectivity- 352 matrices/tet:optimizations/tet:algorithm/tet:metric/tet:optimization- 353 metric/tet:explicit-route-include-objects/tet:route-object-include- 354 object/tet:type/tet:label/tet:label-hop/tet:te-label/tet:technology: 355 +-:(wson) 356 +-rw (grid-type)? 357 +-:(dwdm) 358 | +-rw (single-or-super-channel)? 359 | +-:(single) 360 | | +-rw channel-freq? frequency-thz 361 | +-:(super) 362 | +-rw subcarrier-channels* frequency-thz 363 +-:(cwdm) 364 +-rw channel-wavelength? uint32 365 augment /nw:networks/nw:network/nw:node/tet:te/tet:te-node- 366 attributes/tet:connectivity-matrices/tet:path-properties/tet:path-route- 367 objects/tet:path-route-object/tet:type/tet:label/tet:label-hop/tet:te- 368 label/tet:technology: 369 +-:(wson) 370 +-ro (grid-type)? 371 +-:(dwdm) 372 | +-ro (single-or-super-channel)? 373 | +-:(single) 374 | | +-ro channel-freq? frequency-thz 375 | +-:(super) 376 | +-ro subcarrier-channels* frequency-thz 377 +-:(cwdm) 378 +-ro channel-wavelength? uint32 379 augment /nw:networks/nw:network/nw:node/tet:te/tet:te-node- 380 attributes/tet:connectivity-matrices/tet:connectivity-matrix/tet:from/tet:label- 381 restrictions/tet:label-restriction: 382 +-rw grid-type? identityref 383 +-rw priority? uint8 384 augment /nw:networks/nw:network/nw:node/tet:te/tet:te-node- 385 attributes/tet:connectivity-matrices/tet:connectivity-matrix/tet:from/tet:label- 386 restrictions/tet:label-restriction/tet:label-start/tet:te-label/tet:technology: 387 +-:(wson) 388 +-rw (grid-type)? 389 +-:(dwdm) 390 | +-rw channel-freq? frequency-thz 391 +-:(cwdm) 392 +-rw channel-wavelength? uint32 393 augment /nw:networks/nw:network/nw:node/tet:te/tet:te-node- 394 attributes/tet:connectivity-matrices/tet:connectivity-matrix/tet:from/tet:label- 395 restrictions/tet:label-restriction/tet:label-end/tet:te-label/tet:technology: 396 +-:(wson) 397 +-rw (grid-type)? 398 +-:(dwdm) 399 | +-rw channel-freq? frequency-thz 400 +-:(cwdm) 401 +-rw channel-wavelength? uint32 402 augment /nw:networks/nw:network/nw:node/tet:te/tet:te-node- 403 attributes/tet:connectivity-matrices/tet:connectivity-matrix/tet:to/tet:label- 404 restrictions/tet:label-restriction: 405 +-rw grid-type? identityref 406 +-rw priority? uint8 407 augment /nw:networks/nw:network/nw:node/tet:te/tet:te-node- 408 attributes/tet:connectivity-matrices/tet:connectivity-matrix/tet:to/tet:label- 409 restrictions/tet:label-restriction/tet:label-start/tet:te-label/tet:technology: 410 +-:(wson) 411 +-rw (grid-type)? 412 +-:(dwdm) 413 | +-rw channel-freq? frequency-thz 414 +-:(cwdm) 415 +-rw channel-wavelength? uint32 416 augment /nw:networks/nw:network/nw:node/tet:te/tet:te-node- 417 attributes/tet:connectivity-matrices/tet:connectivity-matrix/tet:to/tet:label- 418 restrictions/tet:label-restriction/tet:label-end/tet:te-label/tet:technology: 419 +-:(wson) 420 +-rw (grid-type)? 421 +-:(dwdm) 422 | +-rw channel-freq? frequency-thz 423 +-:(cwdm) 424 +-rw channel-wavelength? uint32 426 augment /nw:networks/nw:network/nw:node/tet:te/tet:te-node- 427 attributes/tet:connectivity-matrices/tet:connectivity- 428 matrix/tet:underlay/tet:primary-path/tet:path- 429 element/tet:type/tet:label/tet:label-hop/tet:te-label/tet:technology: 430 +-:(wson) 431 +-rw (grid-type)? 432 +-:(dwdm) 433 | +-rw (single-or-super-channel)? 434 | +-:(single) 435 | | +-rw channel-freq? frequency-thz 436 | +-:(super) 437 | +-rw subcarrier-channels* frequency-thz 438 +-:(cwdm) 439 +-rw channel-wavelength? uint32 440 augment /nw:networks/nw:network/nw:node/tet:te/tet:te-node- 441 attributes/tet:connectivity-matrices/tet:connectivity- 442 matrix/tet:underlay/tet:backup-path/tet:path-element/tet:type/tet:label/tet:label- 443 hop/tet:te-label/tet:technology: 444 +-:(wson) 445 +-rw (grid-type)? 446 +-:(dwdm) 447 | +-rw (single-or-super-channel)? 448 | +-:(single) 449 | | +-rw channel-freq? frequency-thz 450 | +-:(super) 451 | +-rw subcarrier-channels* frequency-thz 452 +-:(cwdm) 453 +-rw channel-wavelength? uint32 454 augment /nw:networks/nw:network/nw:node/tet:te/tet:te-node- 455 attributes/tet:connectivity-matrices/tet:connectivity- 456 matrix/tet:optimizations/tet:algorithm/tet:metric/tet:optimization- 457 metric/tet:explicit-route-exclude-objects/tet:route-object-exclude- 458 object/tet:type/tet:label/tet:label-hop/tet:te-label/tet:technology: 459 +-:(wson) 460 +-rw (grid-type)? 461 +-:(dwdm) 462 | +-rw (single-or-super-channel)? 463 | +-:(single) 464 | | +-rw channel-freq? frequency-thz 465 | +-:(super) 466 | +-rw subcarrier-channels* frequency-thz 467 +-:(cwdm) 468 +-rw channel-wavelength? uint32 469 augment /nw:networks/nw:network/nw:node/tet:te/tet:te-node- 470 attributes/tet:connectivity-matrices/tet:connectivity- 471 matrix/tet:optimizations/tet:algorithm/tet:metric/tet:optimization- 472 metric/tet:explicit-route-include-objects/tet:route-object-include- 473 object/tet:type/tet:label/tet:label-hop/tet:te-label/tet:technology: 474 +-:(wson) 475 +-rw (grid-type)? 476 +-:(dwdm) 477 | +-rw (single-or-super-channel)? 478 | +-:(single) 479 | | +-rw channel-freq? frequency-thz 480 | +-:(super) 481 | +-rw subcarrier-channels* frequency-thz 482 +-:(cwdm) 483 +-rw channel-wavelength? uint32 484 augment /nw:networks/nw:network/nw:node/tet:te/tet:te-node- 485 attributes/tet:connectivity-matrices/tet:connectivity-matrix/tet:path- 486 properties/tet:path-route-objects/tet:path-route- 487 object/tet:type/tet:label/tet:label-hop/tet:te-label/tet:technology: 488 +-:(wson) 489 +-ro (grid-type)? 490 +-:(dwdm) 491 | +-ro (single-or-super-channel)? 492 | +-:(single) 493 | | +-ro channel-freq? frequency-thz 494 | +-:(super) 495 | +-ro subcarrier-channels* frequency-thz 496 +-:(cwdm) 497 +-ro channel-wavelength? uint32 498 augment /nw:networks/nw:network/nw:node/tet:te/tet:information-source- 499 entry/tet:connectivity-matrices/tet:label-restrictions/tet:label-restriction: 500 +-ro grid-type? identityref 501 +-ro priority? uint8 502 augment /nw:networks/nw:network/nw:node/tet:te/tet:information-source- 503 entry/tet:connectivity-matrices/tet:label-restrictions/tet:label- 504 restriction/tet:label-start/tet:te-label/tet:technology: 505 +-:(wson) 506 +-ro (grid-type)? 507 +-:(dwdm) 508 | +-ro channel-freq? frequency-thz 509 +-:(cwdm) 510 +-ro channel-wavelength? uint32 511 augment /nw:networks/nw:network/nw:node/tet:te/tet:information-source- 512 entry/tet:connectivity-matrices/tet:label-restrictions/tet:label- 513 restriction/tet:label-end/tet:te-label/tet:technology: 514 +-:(wson) 515 +-ro (grid-type)? 516 +-:(dwdm) 517 | +-ro channel-freq? frequency-thz 518 +-:(cwdm) 519 +-ro channel-wavelength? uint32 520 augment /nw:networks/nw:network/nw:node/tet:te/tet:information-source- 521 entry/tet:connectivity-matrices/tet:underlay/tet:primary-path/tet:path- 522 element/tet:type/tet:label/tet:label-hop/tet:te-label/tet:technology: 523 +-:(wson) 524 +-ro (grid-type)? 525 +-:(dwdm) 526 | +-ro (single-or-super-channel)? 527 | +-:(single) 528 | | +-ro channel-freq? frequency-thz 529 | +-:(super) 530 | +-ro subcarrier-channels* frequency-thz 531 +-:(cwdm) 532 +-ro channel-wavelength? uint32 533 augment /nw:networks/nw:network/nw:node/tet:te/tet:information-source- 534 entry/tet:connectivity-matrices/tet:underlay/tet:backup-path/tet:path- 535 element/tet:type/tet:label/tet:label-hop/tet:te-label/tet:technology: 536 +-:(wson) 537 +-ro (grid-type)? 538 +-:(dwdm) 539 | +-ro (single-or-super-channel)? 540 | +-:(single) 541 | | +-ro channel-freq? frequency-thz 542 | +-:(super) 543 | +-ro subcarrier-channels* frequency-thz 544 +-:(cwdm) 545 +-ro channel-wavelength? uint32 546 augment /nw:networks/nw:network/nw:node/tet:te/tet:information-source- 547 entry/tet:connectivity- 548 matrices/tet:optimizations/tet:algorithm/tet:metric/tet:optimization- 549 metric/tet:explicit-route-exclude-objects/tet:route-object-exclude- 550 object/tet:type/tet:label/tet:label-hop/tet:te-label/tet:technology: 551 +-:(wson) 552 +-ro (grid-type)? 553 +-:(dwdm) 554 | +-ro (single-or-super-channel)? 555 | +-:(single) 556 | | +-ro channel-freq? frequency-thz 557 | +-:(super) 558 | +-ro subcarrier-channels* frequency-thz 559 +-:(cwdm) 560 +-ro channel-wavelength? uint32 561 augment /nw:networks/nw:network/nw:node/tet:te/tet:information-source- 562 entry/tet:connectivity- 563 matrices/tet:optimizations/tet:algorithm/tet:metric/tet:optimization- 564 metric/tet:explicit-route-include-objects/tet:route-object-include- 565 object/tet:type/tet:label/tet:label-hop/tet:te-label/tet:technology: 566 +-:(wson) 567 +-ro (grid-type)? 568 +-:(dwdm) 569 | +-ro (single-or-super-channel)? 570 | +-:(single) 571 | | +-ro channel-freq? frequency-thz 572 | +-:(super) 573 | +-ro subcarrier-channels* frequency-thz 574 +-:(cwdm) 575 +-ro channel-wavelength? uint32 576 augment /nw:networks/nw:network/nw:node/tet:te/tet:information-source- 577 entry/tet:connectivity-matrices/tet:path-properties/tet:path-route- 578 objects/tet:path-route-object/tet:type/tet:label/tet:label-hop/tet:te- 579 label/tet:technology: 580 +-:(wson) 581 +-ro (grid-type)? 582 +-:(dwdm) 583 | +-ro (single-or-super-channel)? 584 | +-:(single) 585 | | +-ro channel-freq? frequency-thz 586 | +-:(super) 587 | +-ro subcarrier-channels* frequency-thz 588 +-:(cwdm) 589 +-ro channel-wavelength? uint32 590 augment /nw:networks/nw:network/nw:node/tet:te/tet:information-source- 591 entry/tet:connectivity-matrices/tet:connectivity-matrix/tet:from/tet:label- 592 restrictions/tet:label-restriction: 593 +-ro grid-type? identityref 594 +-ro priority? uint8 595 augment /nw:networks/nw:network/nw:node/tet:te/tet:information-source- 596 entry/tet:connectivity-matrices/tet:connectivity-matrix/tet:from/tet:label- 597 restrictions/tet:label-restriction/tet:label-start/tet:te-label/tet:technology: 598 +-:(wson) 599 +-ro (grid-type)? 600 +-:(dwdm) 601 | +-ro channel-freq? frequency-thz 602 +-:(cwdm) 603 +-ro channel-wavelength? uint32 604 augment /nw:networks/nw:network/nw:node/tet:te/tet:information-source- 605 entry/tet:connectivity-matrices/tet:connectivity-matrix/tet:from/tet:label- 606 restrictions/tet:label-restriction/tet:label-end/tet:te-label/tet:technology: 607 +-:(wson) 608 +-ro (grid-type)? 609 +-:(dwdm) 610 | +-ro channel-freq? frequency-thz 611 +-:(cwdm) 612 +-ro channel-wavelength? uint32 613 augment /nw:networks/nw:network/nw:node/tet:te/tet:information-source- 614 entry/tet:connectivity-matrices/tet:connectivity-matrix/tet:to/tet:label- 615 restrictions/tet:label-restriction: 616 +-ro grid-type? identityref 617 +-ro priority? uint8 618 augment /nw:networks/nw:network/nw:node/tet:te/tet:information-source- 619 entry/tet:connectivity-matrices/tet:connectivity-matrix/tet:to/tet:label- 620 restrictions/tet:label-restriction/tet:label-start/tet:te-label/tet:technology: 621 +-:(wson) 622 +-ro (grid-type)? 623 +-:(dwdm) 624 | +-ro channel-freq? frequency-thz 625 +-:(cwdm) 626 +-ro channel-wavelength? uint32 627 augment /nw:networks/nw:network/nw:node/tet:te/tet:information-source- 628 entry/tet:connectivity-matrices/tet:connectivity-matrix/tet:to/tet:label- 629 restrictions/tet:label-restriction/tet:label-end/tet:te-label/tet:technology: 630 +-:(wson) 631 +-ro (grid-type)? 632 +-:(dwdm) 633 | +-ro channel-freq? frequency-thz 634 +-:(cwdm) 635 +-ro channel-wavelength? uint32 636 augment /nw:networks/nw:network/nw:node/tet:te/tet:information-source- 637 entry/tet:connectivity-matrices/tet:connectivity-matrix/tet:underlay/tet:primary- 638 path/tet:path-element/tet:type/tet:label/tet:label-hop/tet:te- 639 label/tet:technology: 640 +-:(wson) 641 +-ro (grid-type)? 642 +-:(dwdm) 643 | +-ro (single-or-super-channel)? 644 | +-:(single) 645 | | +-ro channel-freq? frequency-thz 646 | +-:(super) 647 | +-ro subcarrier-channels* frequency-thz 648 +-:(cwdm) 649 +-ro channel-wavelength? uint32 650 augment /nw:networks/nw:network/nw:node/tet:te/tet:information-source- 651 entry/tet:connectivity-matrices/tet:connectivity-matrix/tet:underlay/tet:backup- 652 path/tet:path-element/tet:type/tet:label/tet:label-hop/tet:te- 653 label/tet:technology: 654 +-:(wson) 655 +-ro (grid-type)? 656 +-:(dwdm) 657 | +-ro (single-or-super-channel)? 658 | +-:(single) 659 | | +-ro channel-freq? frequency-thz 660 | +-:(super) 661 | +-ro subcarrier-channels* frequency-thz 662 +-:(cwdm) 663 +-ro channel-wavelength? uint32 664 augment /nw:networks/nw:network/nw:node/tet:te/tet:information-source- 665 entry/tet:connectivity-matrices/tet:connectivity- 666 matrix/tet:optimizations/tet:algorithm/tet:metric/tet:optimization- 667 metric/tet:explicit-route-exclude-objects/tet:route-object-exclude- 668 object/tet:type/tet:label/tet:label-hop/tet:te-label/tet:technology: 669 +-:(wson) 670 +-ro (grid-type)? 671 +-:(dwdm) 672 | +-ro (single-or-super-channel)? 673 | +-:(single) 674 | | +-ro channel-freq? frequency-thz 675 | +-:(super) 676 | +-ro subcarrier-channels* frequency-thz 677 +-:(cwdm) 678 +-ro channel-wavelength? uint32 679 augment /nw:networks/nw:network/nw:node/tet:te/tet:information-source- 680 entry/tet:connectivity-matrices/tet:connectivity- 681 matrix/tet:optimizations/tet:algorithm/tet:metric/tet:optimization- 682 metric/tet:explicit-route-include-objects/tet:route-object-include- 683 object/tet:type/tet:label/tet:label-hop/tet:te-label/tet:technology: 684 +-:(wson) 685 +-ro (grid-type)? 686 +-:(dwdm) 687 | +-ro (single-or-super-channel)? 688 | +-:(single) 689 | | +-ro channel-freq? frequency-thz 690 | +-:(super) 691 | +-ro subcarrier-channels* frequency-thz 692 +-:(cwdm) 693 +-ro channel-wavelength? uint32 694 augment /nw:networks/nw:network/nw:node/tet:te/tet:information-source- 695 entry/tet:connectivity-matrices/tet:connectivity-matrix/tet:path- 696 properties/tet:path-route-objects/tet:path-route- 697 object/tet:type/tet:label/tet:label-hop/tet:te-label/tet:technology: 698 +-:(wson) 699 +-ro (grid-type)? 700 +-:(dwdm) 701 | +-ro (single-or-super-channel)? 702 | +-:(single) 703 | | +-ro channel-freq? frequency-thz 704 | +-:(super) 705 | +-ro subcarrier-channels* frequency-thz 706 +-:(cwdm) 707 +-ro channel-wavelength? uint32 708 augment /nw:networks/nw:network/nw:node/tet:te/tet:tunnel-termination- 709 point/tet:local-link-connectivities/tet:label-restrictions/tet:label-restriction: 710 +-rw grid-type? identityref 711 +-rw priority? uint8 712 augment /nw:networks/nw:network/nw:node/tet:te/tet:tunnel-termination- 713 point/tet:local-link-connectivities/tet:label-restrictions/tet:label- 714 restriction/tet:label-start/tet:te-label/tet:technology: 715 +-:(wson) 716 +-rw (grid-type)? 717 +-:(dwdm) 718 | +-rw channel-freq? frequency-thz 719 +-:(cwdm) 720 +-rw channel-wavelength? uint32 721 augment /nw:networks/nw:network/nw:node/tet:te/tet:tunnel-termination- 722 point/tet:local-link-connectivities/tet:label-restrictions/tet:label- 723 restriction/tet:label-end/tet:te-label/tet:technology: 724 +-:(wson) 725 +-rw (grid-type)? 726 +-:(dwdm) 727 | +-rw channel-freq? frequency-thz 728 +-:(cwdm) 729 +-rw channel-wavelength? uint32 730 augment /nw:networks/nw:network/nw:node/tet:te/tet:tunnel-termination- 731 point/tet:local-link-connectivities/tet:underlay/tet:primary-path/tet:path- 732 element/tet:type/tet:label/tet:label-hop/tet:te-label/tet:technology: 733 +-:(wson) 734 +-rw (grid-type)? 735 +-:(dwdm) 736 | +-rw (single-or-super-channel)? 737 | +-:(single) 738 | | +-rw channel-freq? frequency-thz 739 | +-:(super) 740 | +-rw subcarrier-channels* frequency-thz 741 +-:(cwdm) 742 +-rw channel-wavelength? uint32 743 augment /nw:networks/nw:network/nw:node/tet:te/tet:tunnel-termination- 744 point/tet:local-link-connectivities/tet:underlay/tet:backup-path/tet:path- 745 element/tet:type/tet:label/tet:label-hop/tet:te-label/tet:technology: 746 +-:(wson) 747 +-rw (grid-type)? 748 +-:(dwdm) 749 | +-rw (single-or-super-channel)? 750 | +-:(single) 751 | | +-rw channel-freq? frequency-thz 752 | +-:(super) 753 | +-rw subcarrier-channels* frequency-thz 754 +-:(cwdm) 755 +-rw channel-wavelength? uint32 756 augment /nw:networks/nw:network/nw:node/tet:te/tet:tunnel-termination- 757 point/tet:local-link- 758 connectivities/tet:optimizations/tet:algorithm/tet:metric/tet:optimization- 759 metric/tet:explicit-route-exclude-objects/tet:route-object-exclude- 760 object/tet:type/tet:label/tet:label-hop/tet:te-label/tet:technology: 761 +-:(wson) 762 +-rw (grid-type)? 763 +-:(dwdm) 764 | +-rw (single-or-super-channel)? 765 | +-:(single) 766 | | +-rw channel-freq? frequency-thz 767 | +-:(super) 768 | +-rw subcarrier-channels* frequency-thz 769 +-:(cwdm) 770 +-rw channel-wavelength? uint32 771 augment /nw:networks/nw:network/nw:node/tet:te/tet:tunnel-termination- 772 point/tet:local-link- 773 connectivities/tet:optimizations/tet:algorithm/tet:metric/tet:optimization- 774 metric/tet:explicit-route-include-objects/tet:route-object-include- 775 object/tet:type/tet:label/tet:label-hop/tet:te-label/tet:technology: 776 +-:(wson) 777 +-rw (grid-type)? 778 +-:(dwdm) 779 | +-rw (single-or-super-channel)? 780 | +-:(single) 781 | | +-rw channel-freq? frequency-thz 782 | +-:(super) 783 | +-rw subcarrier-channels* frequency-thz 784 +-:(cwdm) 785 +-rw channel-wavelength? uint32 786 augment /nw:networks/nw:network/nw:node/tet:te/tet:tunnel-termination- 787 point/tet:local-link-connectivities/tet:path-properties/tet:path-route- 788 objects/tet:path-route-object/tet:type/tet:label/tet:label-hop/tet:te- 789 label/tet:technology: 790 +-:(wson) 791 +-ro (grid-type)? 792 +-:(dwdm) 793 | +-ro (single-or-super-channel)? 794 | +-:(single) 795 | | +-ro channel-freq? frequency-thz 796 | +-:(super) 797 | +-ro subcarrier-channels* frequency-thz 798 +-:(cwdm) 799 +-ro channel-wavelength? uint32 800 augment /nw:networks/nw:network/nw:node/tet:te/tet:tunnel-termination- 801 point/tet:local-link-connectivities/tet:local-link-connectivity/tet:label- 802 restrictions/tet:label-restriction: 803 +-rw grid-type? identityref 804 +-rw priority? uint8 805 augment /nw:networks/nw:network/nw:node/tet:te/tet:tunnel-termination- 806 point/tet:local-link-connectivities/tet:local-link-connectivity/tet:label- 807 restrictions/tet:label-restriction/tet:label-start/tet:te-label/tet:technology: 808 +-:(wson) 809 +-rw (grid-type)? 810 +-:(dwdm) 811 | +-rw channel-freq? frequency-thz 812 +-:(cwdm) 813 +-rw channel-wavelength? uint32 814 augment /nw:networks/nw:network/nw:node/tet:te/tet:tunnel-termination- 815 point/tet:local-link-connectivities/tet:local-link-connectivity/tet:label- 816 restrictions/tet:label-restriction/tet:label-end/tet:te-label/tet:technology: 817 +-:(wson) 818 +-rw (grid-type)? 819 +-:(dwdm) 820 | +-rw channel-freq? frequency-thz 821 +-:(cwdm) 822 +-rw channel-wavelength? uint32 823 augment /nw:networks/nw:network/nw:node/tet:te/tet:tunnel-termination- 824 point/tet:local-link-connectivities/tet:local-link- 825 connectivity/tet:underlay/tet:primary-path/tet:path- 826 element/tet:type/tet:label/tet:label-hop/tet:te-label/tet:technology: 827 +-:(wson) 828 +-rw (grid-type)? 829 +-:(dwdm) 830 | +-rw (single-or-super-channel)? 831 | +-:(single) 832 | | +-rw channel-freq? frequency-thz 833 | +-:(super) 834 | +-rw subcarrier-channels* frequency-thz 835 +-:(cwdm) 836 +-rw channel-wavelength? uint32 837 augment /nw:networks/nw:network/nw:node/tet:te/tet:tunnel-termination- 838 point/tet:local-link-connectivities/tet:local-link- 839 connectivity/tet:underlay/tet:backup-path/tet:path- 840 element/tet:type/tet:label/tet:label-hop/tet:te-label/tet:technology: 841 +-:(wson) 842 +-rw (grid-type)? 843 +-:(dwdm) 844 | +-rw (single-or-super-channel)? 845 | +-:(single) 846 | | +-rw channel-freq? frequency-thz 847 | +-:(super) 848 | +-rw subcarrier-channels* frequency-thz 849 +-:(cwdm) 850 +-rw channel-wavelength? uint32 851 augment /nw:networks/nw:network/nw:node/tet:te/tet:tunnel-termination- 852 point/tet:local-link-connectivities/tet:local-link- 853 connectivity/tet:optimizations/tet:algorithm/tet:metric/tet:optimization- 854 metric/tet:explicit-route-exclude-objects/tet:route-object-exclude- 855 object/tet:type/tet:label/tet:label-hop/tet:te-label/tet:technology: 856 +-:(wson) 857 +-rw (grid-type)? 858 +-:(dwdm) 859 | +-rw (single-or-super-channel)? 860 | +-:(single) 861 | | +-rw channel-freq? frequency-thz 862 | +-:(super) 863 | +-rw subcarrier-channels* frequency-thz 864 +-:(cwdm) 865 +-rw channel-wavelength? uint32 867 augment /nw:networks/nw:network/nw:node/tet:te/tet:tunnel-termination- 868 point/tet:local-link-connectivities/tet:local-link- 869 connectivity/tet:optimizations/tet:algorithm/tet:metric/tet:optimization- 870 metric/tet:explicit-route-include-objects/tet:route-object-include- 871 object/tet:type/tet:label/tet:label-hop/tet:te-label/tet:technology: 872 +-:(wson) 873 +-rw (grid-type)? 874 +-:(dwdm) 875 | +-rw (single-or-super-channel)? 876 | +-:(single) 877 | | +-rw channel-freq? frequency-thz 878 | +-:(super) 879 | +-rw subcarrier-channels* frequency-thz 880 +-:(cwdm) 881 +-rw channel-wavelength? uint32 882 augment /nw:networks/nw:network/nw:node/tet:te/tet:tunnel-termination- 883 point/tet:local-link-connectivities/tet:local-link-connectivity/tet:path- 884 properties/tet:path-route-objects/tet:path-route- 885 object/tet:type/tet:label/tet:label-hop/tet:te-label/tet:technology: 886 +-:(wson) 887 +-ro (grid-type)? 888 +-:(dwdm) 889 | +-ro (single-or-super-channel)? 890 | +-:(single) 891 | | +-ro channel-freq? frequency-thz 892 | +-:(super) 893 | +-ro subcarrier-channels* frequency-thz 894 +-:(cwdm) 895 +-ro channel-wavelength? uint32 896 augment /nw:networks/nw:network/nt:link/tet:te/tet:te-link- 897 attributes/tet:underlay/tet:primary-path/tet:path- 898 element/tet:type/tet:label/tet:label-hop/tet:te-label/tet:technology: 899 +-:(wson) 900 +-rw (grid-type)? 901 +-:(dwdm) 902 | +-rw (single-or-super-channel)? 903 | +-:(single) 904 | | +-rw channel-freq? frequency-thz 905 | +-:(super) 906 | +-rw subcarrier-channels* frequency-thz 907 +-:(cwdm) 908 +-rw channel-wavelength? uint32 909 augment /nw:networks/nw:network/nt:link/tet:te/tet:te-link- 910 attributes/tet:underlay/tet:backup-path/tet:path- 911 element/tet:type/tet:label/tet:label-hop/tet:te-label/tet:technology: 912 +-:(wson) 913 +-rw (grid-type)? 914 +-:(dwdm) 915 | +-rw (single-or-super-channel)? 916 | +-:(single) 917 | | +-rw channel-freq? frequency-thz 918 | +-:(super) 919 | +-rw subcarrier-channels* frequency-thz 920 +-:(cwdm) 921 +-rw channel-wavelength? uint32 922 augment /nw:networks/nw:network/nt:link/tet:te/tet:te-link-attributes/tet:label- 923 restrictions/tet:label-restriction: 924 +-rw grid-type? identityref 925 +-rw priority? uint8 926 augment /nw:networks/nw:network/nt:link/tet:te/tet:te-link-attributes/tet:label- 927 restrictions/tet:label-restriction/tet:label-start/tet:te-label/tet:technology: 928 +-:(wson) 929 +-rw (grid-type)? 930 +-:(dwdm) 931 | +-rw channel-freq? frequency-thz 932 +-:(cwdm) 933 +-rw channel-wavelength? uint32 934 augment /nw:networks/nw:network/nt:link/tet:te/tet:te-link-attributes/tet:label- 935 restrictions/tet:label-restriction/tet:label-end/tet:te-label/tet:technology: 936 +-:(wson) 937 +-rw (grid-type)? 938 +-:(dwdm) 939 | +-rw channel-freq? frequency-thz 940 +-:(cwdm) 941 +-rw channel-wavelength? uint32 942 augment /nw:networks/nw:network/nt:link/tet:te/tet:information-source- 943 entry/tet:label-restrictions/tet:label-restriction: 944 +-ro grid-type? identityref 945 +-ro priority? uint8 946 augment /nw:networks/nw:network/nt:link/tet:te/tet:information-source- 947 entry/tet:label-restrictions/tet:label-restriction/tet:label-start/tet:te- 948 label/tet:technology: 949 +-:(wson) 950 +-ro (grid-type)? 951 +-:(dwdm) 952 | +-ro channel-freq? frequency-thz 953 +-:(cwdm) 954 +-ro channel-wavelength? uint32 955 augment /nw:networks/nw:network/nt:link/tet:te/tet:information-source- 956 entry/tet:label-restrictions/tet:label-restriction/tet:label-end/tet:te- 957 label/tet:technology: 958 +-:(wson) 959 +-ro (grid-type)? 960 +-:(dwdm) 961 | +-ro channel-freq? frequency-thz 962 +-:(cwdm) 963 +-ro channel-wavelength? uint32 965 augment /nw:networks/tet:te/tet:templates/tet:link-template/tet:te-link- 966 attributes/tet:underlay/tet:primary-path/tet:path- 967 element/tet:type/tet:label/tet:label-hop/tet:te-label/tet:technology: 968 +-:(wson) 969 +-rw (grid-type)? 970 +-:(dwdm) 971 | +-rw (single-or-super-channel)? 972 | +-:(single) 973 | | +-rw channel-freq? frequency-thz 974 | +-:(super) 975 | +-rw subcarrier-channels* frequency-thz 976 +-:(cwdm) 977 +-rw channel-wavelength? uint32 978 augment /nw:networks/tet:te/tet:templates/tet:link-template/tet:te-link- 979 attributes/tet:underlay/tet:backup-path/tet:path- 980 element/tet:type/tet:label/tet:label-hop/tet:te-label/tet:technology: 981 +-:(wson) 982 +-rw (grid-type)? 983 +-:(dwdm) 984 | +-rw (single-or-super-channel)? 985 | +-:(single) 986 | | +-rw channel-freq? frequency-thz 987 | +-:(super) 988 | +-rw subcarrier-channels* frequency-thz 989 +-:(cwdm) 990 +-rw channel-wavelength? uint32 991 augment /nw:networks/tet:te/tet:templates/tet:link-template/tet:te-link- 992 attributes/tet:label-restrictions/tet:label-restriction: 993 +-rw grid-type? identityref 994 +-rw priority? uint8 995 augment /nw:networks/tet:te/tet:templates/tet:link-template/tet:te-link- 996 attributes/tet:label-restrictions/tet:label-restriction/tet:label-start/tet:te- 997 label/tet:technology: 998 +-:(wson) 999 +-rw (grid-type)? 1000 +-:(dwdm) 1001 | +-rw channel-freq? frequency-thz 1002 +-:(cwdm) 1003 +-rw channel-wavelength? uint32 1004 augment /nw:networks/tet:te/tet:templates/tet:link-template/tet:te-link- 1005 attributes/tet:label-restrictions/tet:label-restriction/tet:label-end/tet:te- 1006 label/tet:technology: 1007 +-:(wson) 1008 +-rw (grid-type)? 1009 +-:(dwdm) 1010 | +-rw channel-freq? frequency-thz 1011 +-:(cwdm) 1012 +-rw channel-wavelength? uint32 1014 3. IETF-WSON-Topology YANG Model 1016 file "ietf-wson-topology@2018-11-26.yang" 1018 module ietf-wson-topology { 1020 yang-version 1.1; 1022 namespace "urn:ietf:params:xml:ns:yang:ietf-wson-topology"; 1024 prefix "wson"; 1026 import ietf-network { 1027 prefix "nw"; 1028 reference 1029 "RFC 8345: A YANG Data Model for Network Topologies"; 1030 } 1032 import ietf-network-topology { 1033 prefix "nt"; 1034 reference 1035 "RFC 8345: A YANG Data Model for Network Topologies"; 1036 } 1038 import ietf-te-topology { 1039 prefix "tet"; 1040 reference 1041 "draft-ietf-teas-yang-te-topo-18: YANG Data Model for 1042 Traffic Engineering (TE) Topologies"; 1043 } 1045 import ietf-layer0-types { 1046 prefix "layer0-types"; 1047 reference 1048 "draft-ietf-teas-yang-te-types-01: Traffic Engineering 1049 Common YANG Types"; 1051 } 1053 organization 1054 "IETF CCAMP Working Group"; 1056 contact 1057 "Editor: Young Lee 1058 Editor: Aihua Guo "; 1060 description 1061 "This module provides a YANG data model for the routing and 1062 wavelength assignment (RWA) Traffic Engineering (TE) 1063 topology in wavelength switched optical networks (WSONs). 1064 The YANG model described in this document is a WSON 1065 technology-specific YANG model augmenting the generic TE 1066 topology module [TE-TOPO] based on the information model 1067 developed in [RFC7446] and the two encoding documents 1068 [RFC7581] and [RFC7579] that developed protocol independent 1069 encodings based on [RFC7446]. 1071 Copyright (c) 2018 IETF Trust and the persons identified 1072 as authors of the code. All rights reserved. 1074 Redistribution and use in source and binary forms, with 1075 or without modification, is permitted pursuant to, and 1076 subject to the license terms contained in, the Simplified 1077 BSD License set forth in Section 4.c of the IETF Trust's 1078 Legal Provisions Relating to IETF Documents 1079 (http://trustee.ietf.org/license-info)."; 1081 revision 2018-11-26 { 1082 description 1083 "Initial Version"; 1085 reference 1086 "RFC XXX: A YANG Data Model for WSON (Wavelenghth Switched 1087 Optical Networks)"; 1088 } 1090 /* 1091 * Groupings 1092 */ 1093 grouping wson-node-attributes { 1094 description "WSON node attributes"; 1095 container wson-node { 1096 description "WSON node attrtibutes"; 1097 leaf node-type { 1098 type identityref { 1099 base layer0-types:layer0-node-type; 1100 } 1101 description "WSON node type"; 1102 } 1103 } 1104 } 1106 grouping wson-link-attributes { 1107 description 1108 "Future WSON link attributes extensions"; 1109 } 1111 grouping wson-tp-attributes { 1112 description "wson-tp-attributes"; 1114 list supported-payload-types { 1115 key "index"; 1116 description 1117 "Supported payload types of a TP (Termination Point). 1118 The payload type is defined as the generalized PIDs 1119 (Payload Identifiers) in GMPLS"; 1120 leaf index { 1121 type uint16; 1122 description "payload type index"; 1123 } 1124 leaf payload-type { 1125 type string; 1126 description "the payload type supported by this client TP"; 1127 reference 1128 "http://www.iana.org/assignments/gmpls-sig-parameters 1129 /gmpls-sig-parameters.xhtml"; 1130 } 1131 } 1132 leaf client-facing { 1133 type boolean; 1134 default 'false'; 1135 description 1136 "Indicates if it is a client-facing TP"; 1137 } 1138 } 1140 grouping wson-ttp-attributes { 1141 description 1142 "WSON tunnel termination point (e.g., tranponder) attributes"; 1144 leaf-list supported-operational-modes { 1145 type layer0-types:operational-mode; 1146 description 1147 "List of all supported vendor-specific 1148 mode identifiers"; 1149 } 1151 leaf configured-operational-modes { 1152 type layer0-types:operational-mode; 1153 description 1154 "Vendor-specific mode identifier configured 1155 on the TTP (TE-tunnel Termination Point)"; 1156 } 1158 leaf-list supported-fec-types { 1159 type identityref { 1160 base layer0-types:fec-type; 1161 } 1162 description 1163 "List of all supported FEC (Forward Error Correction) 1164 types by this TTP"; 1165 } 1167 leaf-list supported-termination-types { 1168 type identityref { 1169 base layer0-types:term-type; 1170 } 1171 description 1172 "List of all supported termination types by this TTP"; 1173 } 1175 leaf supports-bit-stuffing { 1176 type boolean; 1177 description 1178 "Indicates whether bit stuffing is supported by this TTP"; 1179 } 1181 leaf is-tunable { 1182 type boolean; 1183 description 1184 "Indicates if the TTP, or transponder, is tunable. Tunable 1185 transponders are assumed to be fully tunable to any of the 1186 96 channels within DWDM C-band"; 1187 } 1189 leaf max-subcarrier-channel-num { 1190 type uint8 { 1191 range "1..max"; 1193 } 1194 default 1; 1195 description 1196 "Indicates the maximum number of subcarrier channels for 1197 super-channel transponders. When the value equals 1 it 1198 represents regular single-channel transponder"; 1199 } 1200 } 1202 /* 1203 * Data nodes 1204 */ 1206 augment "/nw:networks/nw:network/nw:network-types" 1207 + "/tet:te-topology" { 1208 description "wson-topology augmented"; 1209 container wson-topology { 1210 presence "indicates a topology of WSON"; 1211 description 1212 "Container to identify WSON topology type"; 1213 } 1214 } 1216 augment "/nw:networks/nw:network/nt:link/tet:te" 1217 + "/tet:te-link-attributes" { 1218 when "/nw:networks/nw:network/nw:network-types" 1219 +"/tet:te-topology/wson:wson-topology" { 1220 description "This augment is only valid for WSON"; 1221 } 1222 description "WSON Link augmentation."; 1223 uses wson-link-attributes; 1224 } 1226 augment "/nw:networks/nw:network/nw:node/nt:termination-point/" 1227 + "tet:te" { 1228 when "/nw:networks/nw:network/nw:network-types" 1229 +"/tet:te-topology/wson:wson-topology" { 1230 description "This augment is only valid for WSON"; 1231 } 1232 description "WSON TP attributes"; 1233 uses wson-tp-attributes; 1234 } 1236 augment "/nw:networks/nw:network/nw:node/tet:te" 1237 + "/tet:te-node-attributes" { 1238 when "/nw:networks/nw:network/nw:network-types" 1239 +"/tet:te-topology/wson:wson-topology" { 1240 description "This augment is only valid for WSON"; 1241 } 1242 description "WSON Node augmentation"; 1243 uses wson-node-attributes; 1244 } 1246 augment "/nw:networks/nw:network/nw:node/tet:te" 1247 + "/tet:tunnel-termination-point" { 1248 when "/nw:networks/nw:network/nw:network-types" 1249 +"/tet:te-topology/wson:wson-topology" { 1250 description "This augment is only valid for WSON"; 1251 } 1252 description "WSON tunnel termination point augmentation"; 1253 uses wson-ttp-attributes; 1254 } 1256 /* 1257 * Augment TE bandwidth 1258 */ 1260 augment "/nw:networks/nw:network/nw:node/nt:termination-point/" 1261 + "tet:te/" 1262 + "tet:interface-switching-capability/tet:max-lsp-bandwidth/" 1263 + "tet:te-bandwidth/tet:technology" { 1264 when "../../../../../../nw:network-types/tet:te-topology/" 1265 + "wson:wson-topology" { 1266 description "Augment WSON TE bandwidth"; 1267 } 1268 description 1269 "Augment maximum LSP WSON bandwidth of link termination point 1270 (LTP)"; 1271 case wson { 1272 uses layer0-types:wson-path-bandwidth; 1273 } 1274 } 1276 augment "/nw:networks/nw:network/nw:node/tet:te/" 1277 + "tet:te-node-attributes/tet:connectivity-matrices/" 1278 + "tet:path-constraints/tet:te-bandwidth/tet:technology" { 1279 when "../../../../../../nw:network-types/tet:te-topology/" 1280 + "wson:wson-topology" { 1281 description "Augment WSON TE bandwidth"; 1282 } 1283 description 1284 "Augment WSON bandwidth path constraints of 1285 connectivity-matrices"; 1287 case wson { 1288 uses layer0-types:wson-link-bandwidth; 1289 } 1290 } 1292 augment "/nw:networks/nw:network/nw:node/tet:te/" 1293 + "tet:te-node-attributes/tet:connectivity-matrices/" 1294 + "tet:connectivity-matrix/" 1295 + "tet:path-constraints/tet:te-bandwidth/tet:technology" { 1296 when "../../../../../../../nw:network-types/tet:te-topology/" 1297 + "wson:wson-topology" { 1298 description "Augment WSON TE bandwidth"; 1299 } 1300 description 1301 "Augment WSON bandwidth path constraints of 1302 connectivity-matrix"; 1303 case wson { 1304 uses layer0-types:wson-link-bandwidth; 1305 } 1306 } 1308 augment "/nw:networks/nw:network/nw:node/tet:te/" 1309 + "tet:information-source-entry/tet:connectivity-matrices/" 1310 + "tet:path-constraints/tet:te-bandwidth/tet:technology" { 1311 when "../../../../../../nw:network-types/tet:te-topology/" 1312 + "wson:wson-topology" { 1313 description "Augment WSON TE bandwidth"; 1314 } 1315 description 1316 "Augment WSON bandwidth path constraints of 1317 connectivity-matrices information-source"; 1318 case wson { 1319 uses layer0-types:wson-link-bandwidth; 1320 } 1321 } 1323 augment "/nw:networks/nw:network/nw:node/tet:te/" 1324 + "tet:information-source-entry/tet:connectivity-matrices/" 1325 + "tet:connectivity-matrix/" 1326 + "tet:path-constraints/tet:te-bandwidth/tet:technology" { 1327 when "../../../../../../../nw:network-types/tet:te-topology/" 1328 + "wson:wson-topology" { 1329 description "Augment WSON TE bandwidth"; 1330 } 1331 description 1332 "Augment WSON bandwidth path constraints of 1333 connectivity-matrix information-source"; 1335 case wson { 1336 uses layer0-types:wson-link-bandwidth; 1337 } 1338 } 1340 augment "/nw:networks/nw:network/nw:node/tet:te/" 1341 + "tet:tunnel-termination-point/" 1342 + "tet:client-layer-adaptation/tet:switching-capability/" 1343 + "tet:te-bandwidth/tet:technology" { 1344 when "../../../../../../nw:network-types/tet:te-topology/" 1345 + "wson:wson-topology" { 1346 description "Augment WSON TE bandwidth"; 1347 } 1348 description 1349 "Augment client WSON bandwidth of tunnel termination point 1350 (TTP)"; 1351 case wson { 1352 uses layer0-types:wson-link-bandwidth; 1353 } 1354 } 1356 augment "/nw:networks/nw:network/nw:node/tet:te/" 1357 + "tet:tunnel-termination-point/" 1358 + "tet:local-link-connectivities/tet:path-constraints/" 1359 + "tet:te-bandwidth/tet:technology" { 1360 when "../../../../../../nw:network-types/tet:te-topology/" 1361 + "wson:wson-topology" { 1362 description "Augment WSON TE bandwidth"; 1363 } 1364 description 1365 "Augment WSON bandwidth path constraints of 1366 local-link-connectivities"; 1367 case wson { 1368 uses layer0-types:wson-link-bandwidth; 1369 } 1370 } 1372 augment "/nw:networks/nw:network/nw:node/tet:te/" 1373 + "tet:tunnel-termination-point/" 1374 + "tet:local-link-connectivities/" 1375 + "tet:local-link-connectivity/tet:path-constraints/" 1376 + "tet:te-bandwidth/tet:technology" { 1377 when "../../../../../../../nw:network-types/tet:te-topology/" 1378 + "wson:wson-topology" { 1379 description "Augment WSON TE bandwidth"; 1380 } 1381 description 1382 "Augment WSON bandwidth path constraints of 1383 local-link-connectivity (LLC)"; 1384 case wson { 1385 uses layer0-types:wson-link-bandwidth; 1386 } 1387 } 1389 augment "/nw:networks/nw:network/nt:link/tet:te/" 1390 + "tet:te-link-attributes/" 1391 + "tet:interface-switching-capability/tet:max-lsp-bandwidth/" 1392 + "tet:te-bandwidth/tet:technology" { 1393 when "../../../../../../nw:network-types/tet:te-topology/" 1394 + "wson:wson-topology" { 1395 description "WSON TE bandwidth"; 1396 } 1397 description "Augment maximum LSP WSON bandwidth of TE link"; 1398 case wson { 1399 uses layer0-types:wson-path-bandwidth; 1400 } 1401 } 1403 augment "/nw:networks/nw:network/nt:link/tet:te/" 1404 + "tet:te-link-attributes/" 1405 + "tet:max-link-bandwidth/" 1406 + "tet:te-bandwidth/tet:technology" { 1407 when "../../../../../nw:network-types/tet:te-topology/" 1408 + "wson:wson-topology" { 1409 description "WSON TE bandwidth"; 1410 } 1411 description 1412 "Augment maximum WSON bandwidth of TE link"; 1413 case wson { 1414 uses layer0-types:wson-link-bandwidth; 1415 } 1416 } 1418 augment "/nw:networks/nw:network/nt:link/tet:te/" 1419 + "tet:te-link-attributes/" 1420 + "tet:max-resv-link-bandwidth/" 1421 + "tet:te-bandwidth/tet:technology" { 1422 when "../../../../../nw:network-types/tet:te-topology/" 1423 + "wson:wson-topology" { 1424 description "WSON TE bandwidth"; 1425 } 1426 description 1427 "Augment maximum reservable WSON bandwidth of 1428 TE link"; 1430 case wson { 1431 uses layer0-types:wson-link-bandwidth; 1432 } 1433 } 1435 augment "/nw:networks/nw:network/nt:link/tet:te/" 1436 + "tet:te-link-attributes/" 1437 + "tet:unreserved-bandwidth/" 1438 + "tet:te-bandwidth/tet:technology" { 1439 when "../../../../../nw:network-types/tet:te-topology/" 1440 + "wson:wson-topology" { 1441 description "WSON TE bandwidth"; 1442 } 1443 description 1444 "Augment unreserved WSON bandwidth of TE Link"; 1445 case wson { 1446 uses layer0-types:wson-link-bandwidth; 1447 } 1448 } 1450 augment "/nw:networks/nw:network/nt:link/tet:te/" 1451 + "tet:information-source-entry/" 1452 + "tet:interface-switching-capability/" 1453 + "tet:max-lsp-bandwidth/" 1454 + "tet:te-bandwidth/tet:technology" { 1455 when "../../../../../../nw:network-types/tet:te-topology/" 1456 + "wson:wson-topology" { 1457 description "WSON TE bandwidth"; 1458 } 1459 description 1460 "Augment maximum LSP WSON bandwidth of TE link 1461 information-source"; 1462 case wson { 1463 uses layer0-types:wson-path-bandwidth; 1464 } 1465 } 1467 augment "/nw:networks/nw:network/nt:link/tet:te/" 1468 + "tet:information-source-entry/" 1469 + "tet:max-link-bandwidth/" 1470 + "tet:te-bandwidth/tet:technology" { 1471 when "../../../../../nw:network-types/tet:te-topology/" 1472 + "wson:wson-topology" { 1473 description "WSON TE bandwidth"; 1474 } 1475 description 1476 "Augment maximum WSON bandwidth of TE link 1477 information-source"; 1478 case wson { 1479 uses layer0-types:wson-link-bandwidth; 1480 } 1481 } 1483 augment "/nw:networks/nw:network/nt:link/tet:te/" 1484 + "tet:information-source-entry/" 1485 + "tet:max-resv-link-bandwidth/" 1486 + "tet:te-bandwidth/tet:technology" { 1487 when "../../../../../nw:network-types/tet:te-topology/" 1488 + "wson:wson-topology" { 1489 description "WSON TE bandwidth"; 1490 } 1491 description 1492 "Augment maximum reservable WSON bandwidth of TE link 1493 information-source"; 1494 case wson { 1495 uses layer0-types:wson-link-bandwidth; 1496 } 1497 } 1499 augment "/nw:networks/nw:network/nt:link/tet:te/" 1500 + "tet:information-source-entry/" 1501 + "tet:unreserved-bandwidth/" 1502 + "tet:te-bandwidth/tet:technology" { 1503 when "../../../../../nw:network-types/tet:te-topology/" 1504 + "wson:wson-topology" { 1505 description "WSON TE bandwidth"; 1506 } 1507 description 1508 "Augment unreserved WSON bandwidth of TE link 1509 information-source"; 1510 case wson { 1511 uses layer0-types:wson-link-bandwidth; 1512 } 1513 } 1515 augment "/nw:networks/tet:te/tet:templates/" 1516 + "tet:link-template/tet:te-link-attributes/" 1517 + "tet:interface-switching-capability/" 1518 + "tet:max-lsp-bandwidth/" 1519 + "tet:te-bandwidth/tet:technology" { 1520 description 1521 "Augment maximum WSON LSP bandwidth of TE link 1522 template"; 1523 case wson { 1524 uses layer0-types:wson-path-bandwidth; 1525 } 1526 } 1528 augment "/nw:networks/tet:te/tet:templates/" 1529 + "tet:link-template/tet:te-link-attributes/" 1530 + "tet:max-link-bandwidth/" 1531 + "tet:te-bandwidth/tet:technology" { 1532 description 1533 "Augment maximum WSON bandwidth of TE link template"; 1534 case wson { 1535 uses layer0-types:wson-link-bandwidth; 1536 } 1537 } 1539 augment "/nw:networks/tet:te/tet:templates/" 1540 + "tet:link-template/tet:te-link-attributes/" 1541 + "tet:max-resv-link-bandwidth/" 1542 + "tet:te-bandwidth/tet:technology" { 1543 description 1544 "Augment maximum reservable WSON bandwidth of TE link 1545 template"; 1546 case wson { 1547 uses layer0-types:wson-link-bandwidth; 1548 } 1549 } 1551 augment "/nw:networks/tet:te/tet:templates/" 1552 + "tet:link-template/tet:te-link-attributes/" 1553 + "tet:unreserved-bandwidth/" 1554 + "tet:te-bandwidth/tet:technology" { 1555 description 1556 "Augment unreserved WSON bandwidth of TE link template"; 1557 case wson { 1558 uses layer0-types:wson-link-bandwidth; 1559 } 1560 } 1562 /* 1563 * Augment TE label. 1564 */ 1566 augment "/nw:networks/nw:network/nw:node/tet:te/" 1567 + "tet:te-node-attributes/tet:connectivity-matrices/" 1568 + "tet:label-restrictions/tet:label-restriction" { 1569 when "../../../../../../nw:network-types/tet:te-topology/" 1570 + "wson:wson-topology" { 1572 description "Augment WSON TE label"; 1573 } 1574 description 1575 "Augment WSON label restrictions of connectivity-matrices"; 1576 uses layer0-types:layer0-label-restriction; 1577 } 1579 augment "/nw:networks/nw:network/nw:node/tet:te/" 1580 + "tet:te-node-attributes/tet:connectivity-matrices/" 1581 + "tet:label-restrictions/tet:label-restriction/" 1582 + "tet:label-start/" 1583 + "tet:te-label/tet:technology" { 1584 when "../../../../../../../../nw:network-types/tet:te-topology/" 1585 + "wson:wson-topology" { 1586 description "Augment WSON TE label"; 1587 } 1588 description 1589 "Augment WSON label restrictions start of 1590 connectivity-matrices"; 1591 case wson { 1592 uses layer0-types:wson-link-label; 1593 } 1594 } 1596 augment "/nw:networks/nw:network/nw:node/tet:te/" 1597 + "tet:te-node-attributes/tet:connectivity-matrices/" 1598 + "tet:label-restrictions/" 1599 + "tet:label-restriction/tet:label-end/" 1600 + "tet:te-label/tet:technology" { 1601 when "../../../../../../../../" 1602 + "nw:network-types/tet:te-topology/" 1603 + "wson:wson-topology" { 1604 description "Augment WSON TE label"; 1605 } 1606 description 1607 "Augment WSON label restrictions end of 1608 connectivity-matrices"; 1609 case wson { 1610 uses layer0-types:wson-link-label; 1611 } 1612 } 1614 augment "/nw:networks/nw:network/nw:node/tet:te/" 1615 + "tet:te-node-attributes/tet:connectivity-matrices/" 1616 + "tet:underlay/tet:primary-path/tet:path-element/" 1617 + "tet:type/tet:label/tet:label-hop/" 1618 + "tet:te-label/tet:technology" { 1620 when "../../../../../../../../../" 1621 + "nw:network-types/tet:te-topology/" 1622 + "wson:wson-topology" { 1623 description "Augment WSON TE label"; 1624 } 1625 description 1626 "Augment WSON label hop of underlay primary path of 1627 connectivity-matrices"; 1628 case wson { 1629 uses layer0-types:wson-path-label; 1630 } 1631 } 1633 augment "/nw:networks/nw:network/nw:node/tet:te/" 1634 + "tet:te-node-attributes/tet:connectivity-matrices/" 1635 + "tet:underlay/tet:backup-path/tet:path-element/" 1636 + "tet:type/tet:label/tet:label-hop/" 1637 + "tet:te-label/tet:technology" { 1638 when "../../../../../../../../../" 1639 + "nw:network-types/tet:te-topology/" 1640 + "wson:wson-topology" { 1641 description "Augment WSON TE label"; 1642 } 1643 description 1644 "Augment WSON label hop of underlay backup path of 1645 connectivity-matrices"; 1646 case wson { 1647 uses layer0-types:wson-path-label; 1648 } 1649 } 1651 augment "/nw:networks/nw:network/nw:node/tet:te/" 1652 + "tet:te-node-attributes/tet:connectivity-matrices/" 1653 + "tet:optimizations/tet:algorithm/tet:metric/" 1654 + "tet:optimization-metric/" 1655 + "tet:explicit-route-exclude-objects/" 1656 + "tet:route-object-exclude-object/" 1657 + "tet:type/tet:label/tet:label-hop/" 1658 + "tet:te-label/tet:technology" { 1659 when "../../../../../../../../../../" 1660 + "nw:network-types/tet:te-topology/" 1661 + "wson:wson-topology" { 1662 description "Augment WSON TE label"; 1663 } 1664 description 1665 "Augment WSON label hop of route-exclude of 1666 connectivity-matrices"; 1668 case wson { 1669 uses layer0-types:wson-path-label; 1670 } 1671 } 1673 augment "/nw:networks/nw:network/nw:node/tet:te/" 1674 + "tet:te-node-attributes/tet:connectivity-matrices/" 1675 + "tet:optimizations/tet:algorithm/tet:metric/" 1676 + "tet:optimization-metric/" 1677 + "tet:explicit-route-include-objects/" 1678 + "tet:route-object-include-object/" 1679 + "tet:type/tet:label/tet:label-hop/" 1680 + "tet:te-label/tet:technology" { 1681 when "../../../../../../../../../../" 1682 + "nw:network-types/tet:te-topology/" 1683 + "wson:wson-topology" { 1684 description "Augment WSON TE label"; 1685 } 1686 description 1687 "Augment WSON label hop of route-include of 1688 connectivity-matrices"; 1689 case wson { 1690 uses layer0-types:wson-path-label; 1691 } 1692 } 1694 augment "/nw:networks/nw:network/nw:node/tet:te/" 1695 + "tet:te-node-attributes/tet:connectivity-matrices/" 1696 + "tet:path-properties/tet:path-route-objects/" 1697 + "tet:path-route-object/tet:type/tet:label/tet:label-hop/" 1698 + "tet:te-label/tet:technology"{ 1699 when "../../../../../../../../../" 1700 + "nw:network-types/tet:te-topology/" 1701 + "wson:wson-topology" { 1702 description "Augment WSON TE label"; 1703 } 1704 description 1705 "Augment WSON label hop of path-route of 1706 connectivity-matrices"; 1707 case wson { 1708 uses layer0-types:wson-path-label; 1709 } 1710 } 1712 augment "/nw:networks/nw:network/nw:node/tet:te/" 1713 + "tet:te-node-attributes/tet:connectivity-matrices/" 1714 + "tet:connectivity-matrix/tet:from/" 1715 + "tet:label-restrictions/tet:label-restriction" { 1716 when "../../../../../../../../" 1717 + "nw:network-types/tet:te-topology/" 1718 + "wson:wson-topology" { 1719 description "Augment WSON TE label"; 1720 } 1721 description 1722 "Augment ingress WSON label restrictions of 1723 connectivity-matrix"; 1724 uses layer0-types:layer0-label-restriction; 1725 } 1727 augment "/nw:networks/nw:network/nw:node/tet:te/" 1728 + "tet:te-node-attributes/tet:connectivity-matrices/" 1729 + "tet:connectivity-matrix/tet:from/" 1730 + "tet:label-restrictions/tet:label-restriction/" 1731 + "tet:label-start/" 1732 + "tet:te-label/tet:technology" { 1733 when "../../../../../../../../../../" 1734 + "nw:network-types/tet:te-topology/" 1735 + "wson:wson-topology" { 1736 description "Augment WSON TE label"; 1737 } 1738 description 1739 "Augment ingress WSON label restrictions start of 1740 connectivity-matrix "; 1741 case wson { 1742 uses layer0-types:wson-link-label; 1743 } 1744 } 1746 augment "/nw:networks/nw:network/nw:node/tet:te/" 1747 + "tet:te-node-attributes/tet:connectivity-matrices/" 1748 + "tet:connectivity-matrix/tet:from/" 1749 + "tet:label-restrictions/tet:label-restriction/" 1750 + "tet:label-end/" 1751 + "tet:te-label/tet:technology" { 1752 when "../../../../../../../../../../" 1753 + "nw:network-types/tet:te-topology/" 1754 + "wson:wson-topology" { 1755 description "Augment WSON TE label"; 1756 } 1757 description 1758 "Augment ingress WSON label restrictions end of 1759 connectivity-matrix"; 1760 case wson { 1761 uses layer0-types:wson-link-label; 1763 } 1764 } 1766 augment "/nw:networks/nw:network/nw:node/tet:te/" 1767 + "tet:te-node-attributes/tet:connectivity-matrices/" 1768 + "tet:connectivity-matrix/tet:to/" 1769 + "tet:label-restrictions/tet:label-restriction" { 1770 when "../../../../../../../../" 1771 + "nw:network-types/tet:te-topology/" 1772 + "wson:wson-topology" { 1773 description "Augment WSON TE label"; 1774 } 1775 description 1776 "Augment egress WSON label restrictions of 1777 connectivity-matrix"; 1778 uses layer0-types:layer0-label-restriction; 1779 } 1781 augment "/nw:networks/nw:network/nw:node/tet:te/" 1782 + "tet:te-node-attributes/tet:connectivity-matrices/" 1783 + "tet:connectivity-matrix/tet:to/" 1784 + "tet:label-restrictions/tet:label-restriction/" 1785 + "tet:label-start/" 1786 + "tet:te-label/tet:technology" { 1787 when "../../../../../../../../../../" 1788 + "nw:network-types/tet:te-topology/" 1789 + "wson:wson-topology" { 1790 description "Augment WSON TE label"; 1791 } 1792 description 1793 "Augment egress WSON label restrictions start of 1794 connectivity-matrix"; 1795 case wson { 1796 uses layer0-types:wson-link-label; 1797 } 1798 } 1800 augment "/nw:networks/nw:network/nw:node/tet:te/" 1801 + "tet:te-node-attributes/tet:connectivity-matrices/" 1802 + "tet:connectivity-matrix/tet:to/" 1803 + "tet:label-restrictions/tet:label-restriction/" 1804 + "tet:label-end/" 1805 + "tet:te-label/tet:technology" { 1806 when "../../../../../../../../../../" 1807 + "nw:network-types/tet:te-topology/" 1808 + "wson:wson-topology" { 1809 description "Augment WSON TE label"; 1811 } 1812 description 1813 "Augment egress WSON label restrictions end of 1814 connectivity-matrix"; 1815 case wson { 1816 uses layer0-types:wson-link-label; 1817 } 1818 } 1820 augment "/nw:networks/nw:network/nw:node/tet:te/" 1821 + "tet:te-node-attributes/tet:connectivity-matrices/" 1822 + "tet:connectivity-matrix/" 1823 + "tet:underlay/tet:primary-path/tet:path-element/" 1824 + "tet:type/tet:label/tet:label-hop/" 1825 + "tet:te-label/tet:technology" { 1826 when "../../../../../../../../../../" 1827 + "nw:network-types/tet:te-topology/" 1828 + "wson:wson-topology" { 1829 description "Augment WSON TE label"; 1830 } 1831 description 1832 "Augment WSON label hop of underlay primary path of 1833 connectivity-matrix"; 1834 case wson { 1835 uses layer0-types:wson-path-label; 1836 } 1837 } 1839 augment "/nw:networks/nw:network/nw:node/tet:te/" 1840 + "tet:te-node-attributes/tet:connectivity-matrices/" 1841 + "tet:connectivity-matrix/" 1842 + "tet:underlay/tet:backup-path/tet:path-element/" 1843 + "tet:type/tet:label/tet:label-hop/" 1844 + "tet:te-label/tet:technology" { 1845 when "../../../../../../../../../../" 1846 + "nw:network-types/tet:te-topology/" 1847 + "wson:wson-topology" { 1848 description "Augment WSON TE label"; 1849 } 1850 description 1851 "Augment WSON label hop of underlay backup path of 1852 connectivity-matrix"; 1853 case wson { 1854 uses layer0-types:wson-path-label; 1855 } 1856 } 1857 augment "/nw:networks/nw:network/nw:node/tet:te/" 1858 + "tet:te-node-attributes/tet:connectivity-matrices/" 1859 + "tet:connectivity-matrix/tet:optimizations/" 1860 + "tet:algorithm/tet:metric/tet:optimization-metric/" 1861 + "tet:explicit-route-exclude-objects/" 1862 + "tet:route-object-exclude-object/tet:type/" 1863 + "tet:label/tet:label-hop/tet:te-label/tet:technology" { 1864 when "../../../../../../../../../../../" 1865 + "nw:network-types/tet:te-topology/" 1866 + "wson:wson-topology" { 1867 description "Augment WSON TE label"; 1868 } 1869 description 1870 "Augment WSON label hop of route-exclude of 1871 connectivity-matrix"; 1872 case wson { 1873 uses layer0-types:wson-path-label; 1874 } 1875 } 1877 augment "/nw:networks/nw:network/nw:node/tet:te/" 1878 + "tet:te-node-attributes/tet:connectivity-matrices/" 1879 + "tet:connectivity-matrix/tet:optimizations/" 1880 + "tet:algorithm/tet:metric/tet:optimization-metric/" 1881 + "tet:explicit-route-include-objects/" 1882 + "tet:route-object-include-object/tet:type/" 1883 + "tet:label/tet:label-hop/tet:te-label/tet:technology" { 1884 when "../../../../../../../../../../../" 1885 + "nw:network-types/tet:te-topology/" 1886 + "wson:wson-topology" { 1887 description "Augment WSON TE label"; 1888 } 1889 description 1890 "Augment WSON label hop of route-include of 1891 connectivity-matrix"; 1892 case wson { 1893 uses layer0-types:wson-path-label; 1894 } 1895 } 1897 augment "/nw:networks/nw:network/nw:node/tet:te/" 1898 + "tet:te-node-attributes/tet:connectivity-matrices/" 1899 + "tet:connectivity-matrix/" 1900 + "tet:path-properties/tet:path-route-objects/" 1901 + "tet:path-route-object/tet:type/" 1902 + "tet:label/tet:label-hop/tet:te-label/tet:technology" { 1903 when "../../../../../../../../../../" 1904 + "nw:network-types/tet:te-topology/" 1905 + "wson:wson-topology" { 1906 description "Augment WSON TE label"; 1907 } 1908 description 1909 "Augment WSON label hop of path-route of 1910 connectivity-matrix"; 1911 case wson { 1912 uses layer0-types:wson-path-label; 1913 } 1914 } 1916 augment "/nw:networks/nw:network/nw:node/tet:te/" 1917 + "tet:information-source-entry/" 1918 + "tet:connectivity-matrices/tet:label-restrictions/" 1919 + "tet:label-restriction" { 1920 when "../../../../../../nw:network-types/tet:te-topology/" 1921 + "wson:wson-topology" { 1922 description "Augment WSON TE label"; 1923 } 1924 description 1925 "Augment WSON label restrictions of connectivity-matrices 1926 information-source"; 1927 uses layer0-types:layer0-label-restriction; 1928 } 1930 augment "/nw:networks/nw:network/nw:node/tet:te/" 1931 + "tet:information-source-entry/" 1932 + "tet:connectivity-matrices/tet:label-restrictions/" 1933 + "tet:label-restriction/" 1934 + "tet:label-start/tet:te-label/tet:technology" { 1935 when "../../../../../../../../" 1936 + "nw:network-types/tet:te-topology/" 1937 + "wson:wson-topology" { 1938 description "Augment WSON TE label"; 1939 } 1940 description 1941 "Augment WSON label restrictions start of 1942 connectivity-matrices information-source"; 1943 case wson { 1944 uses layer0-types:wson-link-label; 1945 } 1946 } 1948 augment "/nw:networks/nw:network/nw:node/tet:te/" 1949 + "tet:information-source-entry/" 1950 + "tet:connectivity-matrices/tet:label-restrictions/" 1951 + "tet:label-restriction/" 1952 + "tet:label-end/tet:te-label/tet:technology" { 1953 when "../../../../../../../../" 1954 + "nw:network-types/tet:te-topology/" 1955 + "wson:wson-topology" { 1956 description "Augment WSON TE label"; 1957 } 1958 description 1959 "Augment WSON label restrictions end of 1960 connectivity-matrices information-source"; 1961 case wson { 1962 uses layer0-types:wson-link-label; 1963 } 1964 } 1966 augment "/nw:networks/nw:network/nw:node/tet:te/" 1967 + "tet:information-source-entry/tet:connectivity-matrices/" 1968 + "tet:underlay/tet:primary-path/tet:path-element/tet:type/" 1969 + "tet:label/tet:label-hop/tet:te-label/tet:technology" { 1970 when "../../../../../../../../../" 1971 + "nw:network-types/tet:te-topology/" 1972 + "wson:wson-topology" { 1973 description "Augment WSON TE label"; 1974 } 1975 description 1976 "Augment WSON label hop of underlay primary path of 1977 connectivity-matrices information-source"; 1978 case wson { 1979 uses layer0-types:wson-path-label; 1980 } 1981 } 1983 augment "/nw:networks/nw:network/nw:node/tet:te/" 1984 + "tet:information-source-entry/tet:connectivity-matrices/" 1985 + "tet:underlay/tet:backup-path/tet:path-element/tet:type/" 1986 + "tet:label/tet:label-hop/tet:te-label/tet:technology" { 1987 when "../../../../../../../../../" 1988 + "nw:network-types/tet:te-topology/" 1989 + "wson:wson-topology" { 1990 description "Augment WSON TE label"; 1991 } 1992 description 1993 "Augment label hop of underlay backup path of 1994 connectivity-matrices information-source"; 1995 case wson { 1996 uses layer0-types:wson-path-label; 1997 } 1999 } 2001 augment "/nw:networks/nw:network/nw:node/tet:te/" 2002 + "tet:information-source-entry/tet:connectivity-matrices/" 2003 + "tet:optimizations/tet:algorithm/tet:metric/" 2004 + "tet:optimization-metric/" 2005 + "tet:explicit-route-exclude-objects/" 2006 + "tet:route-object-exclude-object/tet:type/" 2007 + "tet:label/tet:label-hop/tet:te-label/tet:technology" { 2008 when "../../../../../../../../../../" 2009 + "nw:network-types/tet:te-topology/" 2010 + "wson:wson-topology" { 2011 description "Augment WSON TE label"; 2012 } 2013 description 2014 "Augment WSON label hop of route-exclude of 2015 connectivity-matrices information-source"; 2016 case wson { 2017 uses layer0-types:wson-path-label; 2018 } 2019 } 2021 augment "/nw:networks/nw:network/nw:node/tet:te/" 2022 + "tet:information-source-entry/tet:connectivity-matrices/" 2023 + "tet:optimizations/tet:algorithm/tet:metric/" 2024 + "tet:optimization-metric/" 2025 + "tet:explicit-route-include-objects/" 2026 + "tet:route-object-include-object/tet:type/" 2027 + "tet:label/tet:label-hop/tet:te-label/tet:technology" { 2028 when "../../../../../../../../../../" 2029 + "nw:network-types/tet:te-topology/" 2030 + "wson:wson-topology" { 2031 description "Augment WSON TE label"; 2032 } 2033 description 2034 "Augment WSON label hop of route-include of 2035 connectivity-matrices information-source"; 2036 case wson { 2037 uses layer0-types:wson-path-label; 2038 } 2039 } 2041 augment "/nw:networks/nw:network/nw:node/tet:te/" 2042 + "tet:information-source-entry/tet:connectivity-matrices/" 2043 + "tet:path-properties/tet:path-route-objects/" 2044 + "tet:path-route-object/tet:type/" 2045 + "tet:label/tet:label-hop/tet:te-label/tet:technology" { 2047 when "../../../../../../../../../" 2048 + "nw:network-types/tet:te-topology/" 2049 + "wson:wson-topology" { 2050 description "Augment WSON TE label"; 2051 } 2052 description 2053 "Augment WSON label hop of path-route of connectivity-matrices 2054 information-source"; 2055 case wson { 2056 uses layer0-types:wson-path-label; 2057 } 2058 } 2060 augment "/nw:networks/nw:network/nw:node/tet:te/" 2061 + "tet:information-source-entry/tet:connectivity-matrices/" 2062 + "tet:connectivity-matrix/" 2063 + "tet:from/tet:label-restrictions/tet:label-restriction" { 2064 when "../../../../../../../../" 2065 + "nw:network-types/tet:te-topology/" 2066 + "wson:wson-topology" { 2067 description "Augment WSON TE label"; 2068 } 2069 description 2070 "Augment ingress WSON label restrictions of 2071 connectivity-matrix information-source"; 2072 uses layer0-types:layer0-label-restriction; 2073 } 2075 augment "/nw:networks/nw:network/nw:node/tet:te/" 2076 + "tet:information-source-entry/tet:connectivity-matrices/" 2077 + "tet:connectivity-matrix/" 2078 + "tet:from/tet:label-restrictions/" 2079 + "tet:label-restriction/" 2080 + "tet:label-start/tet:te-label/tet:technology" { 2081 when "../../../../../../../../../../" 2082 + "nw:network-types/tet:te-topology/" 2083 + "wson:wson-topology" { 2084 description "Augment WSON TE label"; 2085 } 2086 description 2087 "Augment ingress WSON label restrictions start of 2088 connectivity-matrix information-source"; 2089 case wson { 2090 uses layer0-types:wson-link-label; 2091 } 2092 } 2093 augment "/nw:networks/nw:network/nw:node/tet:te/" 2094 + "tet:information-source-entry/tet:connectivity-matrices/" 2095 + "tet:connectivity-matrix/" 2096 + "tet:from/tet:label-restrictions/" 2097 + "tet:label-restriction/" 2098 + "tet:label-end/tet:te-label/tet:technology" { 2099 when "../../../../../../../../../../" 2100 + "nw:network-types/tet:te-topology/" 2101 + "wson:wson-topology" { 2102 description "Augment WSON TE label"; 2103 } 2104 description 2105 "Augment ingress WSON label restrictions end of 2106 connectivity-matrix information-source"; 2107 case wson { 2108 uses layer0-types:wson-link-label; 2109 } 2110 } 2112 augment "/nw:networks/nw:network/nw:node/tet:te/" 2113 + "tet:information-source-entry/tet:connectivity-matrices/" 2114 + "tet:connectivity-matrix/" 2115 + "tet:to/tet:label-restrictions/tet:label-restriction" { 2116 when "../../../../../../../../" 2117 + "nw:network-types/tet:te-topology/" 2118 + "wson:wson-topology" { 2119 description "Augment WSON TE label"; 2120 } 2121 description 2122 "Augment egress WSON label restrictions of connectivity-matrix 2123 information-source"; 2124 uses layer0-types:layer0-label-restriction; 2125 } 2127 augment "/nw:networks/nw:network/nw:node/tet:te/" 2128 + "tet:information-source-entry/tet:connectivity-matrices/" 2129 + "tet:connectivity-matrix/" 2130 + "tet:to/tet:label-restrictions/tet:label-restriction/" 2131 + "tet:label-start/tet:te-label/tet:technology" { 2132 when "../../../../../../../../../../" 2133 + "nw:network-types/tet:te-topology/" 2134 + "wson:wson-topology" { 2135 description "Augment WSON TE label"; 2136 } 2137 description 2138 "Augment egress WSON label restrictions start of 2139 connectivity-matrix information-source"; 2141 case wson { 2142 uses layer0-types:wson-link-label; 2143 } 2144 } 2146 augment "/nw:networks/nw:network/nw:node/tet:te/" 2147 + "tet:information-source-entry/tet:connectivity-matrices/" 2148 + "tet:connectivity-matrix/" 2149 + "tet:to/tet:label-restrictions/tet:label-restriction/" 2150 + "tet:label-end/tet:te-label/tet:technology" { 2151 when "../../../../../../../../../../" 2152 + "nw:network-types/tet:te-topology/" 2153 + "wson:wson-topology" { 2154 description "Augment WSON TE label"; 2155 } 2156 description 2157 "Augment egress WSON label restrictions end of 2158 connectivity-matrix information-source"; 2159 case wson { 2160 uses layer0-types:wson-link-label; 2161 } 2162 } 2164 augment "/nw:networks/nw:network/nw:node/tet:te/" 2165 + "tet:information-source-entry/tet:connectivity-matrices/" 2166 + "tet:connectivity-matrix/" 2167 + "tet:underlay/tet:primary-path/tet:path-element/tet:type/" 2168 + "tet:label/tet:label-hop/tet:te-label/tet:technology" { 2169 when "../../../../../../../../../../" 2170 + "nw:network-types/tet:te-topology/" 2171 + "wson:wson-topology" { 2172 description "Augment WSON TE label"; 2173 } 2174 description 2175 "Augment WSON label hop of underlay primary path of 2176 connectivity-matrix information-source"; 2177 case wson { 2178 uses layer0-types:wson-path-label; 2179 } 2180 } 2182 augment "/nw:networks/nw:network/nw:node/tet:te/" 2183 + "tet:information-source-entry/tet:connectivity-matrices/" 2184 + "tet:connectivity-matrix/" 2185 + "tet:underlay/tet:backup-path/tet:path-element/tet:type/" 2186 + "tet:label/tet:label-hop/tet:te-label/tet:technology" { 2187 when "../../../../../../../../../../" 2188 + "nw:network-types/tet:te-topology/" 2189 + "wson:wson-topology" { 2190 description "Augment WSON TE label"; 2191 } 2192 description 2193 "Augment WSON label hop of underlay backup path of 2194 connectivity-matrix information-source"; 2195 case wson { 2196 uses layer0-types:wson-path-label; 2197 } 2198 } 2200 augment "/nw:networks/nw:network/nw:node/tet:te/" 2201 + "tet:information-source-entry/tet:connectivity-matrices/" 2202 + "tet:connectivity-matrix/" 2203 + "tet:optimizations/tet:algorithm/tet:metric/" 2204 + "tet:optimization-metric/" 2205 + "tet:explicit-route-exclude-objects/" 2206 + "tet:route-object-exclude-object/tet:type/" 2207 + "tet:label/tet:label-hop/tet:te-label/tet:technology" { 2208 when "../../../../../../../../../../../" 2209 + "nw:network-types/tet:te-topology/" 2210 + "wson:wson-topology" { 2211 description "Augment WSON TE label"; 2212 } 2213 description 2214 "Augment label hop of route-exclude of connectivity-matrix 2215 information-source"; 2216 case wson { 2217 uses layer0-types:wson-path-label; 2218 } 2219 } 2221 augment "/nw:networks/nw:network/nw:node/tet:te/" 2222 + "tet:information-source-entry/tet:connectivity-matrices/" 2223 + "tet:connectivity-matrix/" 2224 + "tet:optimizations/tet:algorithm/tet:metric/" 2225 + "tet:optimization-metric/" 2226 + "tet:explicit-route-include-objects/" 2227 + "tet:route-object-include-object/tet:type/" 2228 + "tet:label/tet:label-hop/tet:te-label/tet:technology" { 2229 when "../../../../../../../../../../../" 2230 + "nw:network-types/tet:te-topology/" 2231 + "wson:wson-topology" { 2232 description "Augment WSON TE label"; 2233 } 2234 description 2235 "Augment WSON label hop of route-include of 2236 connectivity-matrix information-source"; 2237 case wson { 2238 uses layer0-types:wson-path-label; 2239 } 2240 } 2242 augment "/nw:networks/nw:network/nw:node/tet:te/" 2243 + "tet:information-source-entry/tet:connectivity-matrices/" 2244 + "tet:connectivity-matrix/" 2245 + "tet:path-properties/tet:path-route-objects/" 2246 + "tet:path-route-object/tet:type/" 2247 + "tet:label/tet:label-hop/tet:te-label/tet:technology" { 2248 when "../../../../../../../../../../" 2249 + "nw:network-types/tet:te-topology/" 2250 + "wson:wson-topology" { 2251 description "Augment WSON TE label"; 2252 } 2253 description 2254 "Augment WSON label hop of path-route of connectivity-matrix 2255 information-source"; 2256 case wson { 2257 uses layer0-types:wson-path-label; 2258 } 2259 } 2261 augment "/nw:networks/nw:network/nw:node/tet:te/" 2262 + "tet:tunnel-termination-point/" 2263 + "tet:local-link-connectivities/" 2264 + "tet:label-restrictions/tet:label-restriction" { 2265 when "../../../../../../nw:network-types/tet:te-topology/" 2266 + "wson:wson-topology" { 2267 description "Augment WSON TE label"; 2268 } 2269 description 2270 "Augment WSON label restrictions of 2271 local-link-connectivities"; 2272 uses layer0-types:layer0-label-restriction; 2273 } 2275 augment "/nw:networks/nw:network/nw:node/tet:te/" 2276 + "tet:tunnel-termination-point/" 2277 + "tet:local-link-connectivities/" 2278 + "tet:label-restrictions/tet:label-restriction/" 2279 + "tet:label-start/" 2280 + "tet:te-label/tet:technology" { 2281 when "../../../../../../../../" 2282 + "nw:network-types/tet:te-topology/" 2283 + "wson:wson-topology" { 2284 description "Augment WSON TE label"; 2285 } 2286 description 2287 "Augment WSON label restrictions start of 2288 local-link-connectivities"; 2289 case wson { 2290 uses layer0-types:wson-link-label; 2291 } 2292 } 2294 augment "/nw:networks/nw:network/nw:node/tet:te/" 2295 + "tet:tunnel-termination-point/" 2296 + "tet:local-link-connectivities/" 2297 + "tet:label-restrictions/tet:label-restriction/" 2298 + "tet:label-end/" 2299 + "tet:te-label/tet:technology"{ 2300 when "../../../../../../../../" 2301 + "nw:network-types/tet:te-topology/" 2302 + "wson:wson-topology" { 2303 description "Augment WSON TE label"; 2304 } 2305 description 2306 "Augment WSON label restrictions end of 2307 local-link-connectivities"; 2308 case wson { 2309 uses layer0-types:wson-link-label; 2310 } 2311 } 2313 augment "/nw:networks/nw:network/nw:node/tet:te/" 2314 + "tet:tunnel-termination-point/" 2315 + "tet:local-link-connectivities/" 2316 + "tet:underlay/tet:primary-path/tet:path-element/tet:type/" 2317 + "tet:label/tet:label-hop/tet:te-label/tet:technology" { 2318 when "../../../../../../../../../" 2319 + "nw:network-types/tet:te-topology/" 2320 + "wson:wson-topology" { 2321 description "Augment WSON TE label"; 2322 } 2323 description 2324 "Augment WSON label hop of underlay primary path of 2325 local-link-connectivities"; 2326 case wson { 2327 uses layer0-types:wson-path-label; 2328 } 2330 } 2332 augment "/nw:networks/nw:network/nw:node/tet:te/" 2333 + "tet:tunnel-termination-point/" 2334 + "tet:local-link-connectivities/" 2335 + "tet:underlay/tet:backup-path/tet:path-element/tet:type/" 2336 + "tet:label/tet:label-hop/tet:te-label/tet:technology" { 2337 when "../../../../../../../../../" 2338 + "nw:network-types/tet:te-topology/" 2339 + "wson:wson-topology" { 2340 description "Augment WSON TE label"; 2341 } 2342 description 2343 "Augment WSON label hop of underlay backup path of 2344 local-link-connectivities"; 2345 case wson { 2346 uses layer0-types:wson-path-label; 2347 } 2348 } 2350 augment "/nw:networks/nw:network/nw:node/tet:te/" 2351 + "tet:tunnel-termination-point/" 2352 + "tet:local-link-connectivities/" 2353 + "tet:optimizations/tet:algorithm/tet:metric/" 2354 + "tet:optimization-metric/" 2355 + "tet:explicit-route-exclude-objects/" 2356 + "tet:route-object-exclude-object/tet:type/" 2357 + "tet:label/tet:label-hop/tet:te-label/tet:technology" { 2358 when "../../../../../../../../../../" 2359 + "nw:network-types/tet:te-topology/" 2360 + "wson:wson-topology" { 2361 description "Augment WSON TE label"; 2362 } 2363 description 2364 "Augment WSON label hop of route-exclude of 2365 local-link-connectivities"; 2366 case wson { 2367 uses layer0-types:wson-path-label; 2368 } 2369 } 2371 augment "/nw:networks/nw:network/nw:node/tet:te/" 2372 + "tet:tunnel-termination-point/" 2373 + "tet:local-link-connectivities/" 2374 + "tet:optimizations/tet:algorithm/tet:metric/" 2375 + "tet:optimization-metric/" 2376 + "tet:explicit-route-include-objects/" 2377 + "tet:route-object-include-object/tet:type/" 2378 + "tet:label/tet:label-hop/tet:te-label/tet:technology" { 2379 when "../../../../../../../../../../" 2380 + "nw:network-types/tet:te-topology/" 2381 + "wson:wson-topology" { 2382 description "Augment WSON TE label"; 2383 } 2384 description 2385 "Augment label hop of route-include of 2386 local-link-connectivities"; 2387 case wson { 2388 uses layer0-types:wson-path-label; 2389 } 2390 } 2392 augment "/nw:networks/nw:network/nw:node/tet:te/" 2393 + "tet:tunnel-termination-point/" 2394 + "tet:local-link-connectivities/" 2395 + "tet:path-properties/tet:path-route-objects/" 2396 + "tet:path-route-object/tet:type/" 2397 + "tet:label/tet:label-hop/tet:te-label/tet:technology" { 2398 when "../../../../../../../../../" 2399 + "nw:network-types/tet:te-topology/" 2400 + "wson:wson-topology" { 2401 description "Augment WSON TE label"; 2402 } 2403 description 2404 "Augment WSON label hop of path-route of 2405 local-link-connectivities"; 2406 case wson { 2407 uses layer0-types:wson-path-label; 2408 } 2409 } 2411 augment "/nw:networks/nw:network/nw:node/tet:te/" 2412 + "tet:tunnel-termination-point/" 2413 + "tet:local-link-connectivities/" 2414 + "tet:local-link-connectivity/" 2415 + "tet:label-restrictions/tet:label-restriction" { 2416 when "../../../../../../../nw:network-types/tet:te-topology/" 2417 + "wson:wson-topology" { 2418 description "Augment WSON TE label"; 2419 } 2420 description 2421 "Augment WSON label restrictions of 2422 local-link-connectivity (LLC)"; 2423 uses layer0-types:layer0-label-restriction; 2425 } 2427 augment "/nw:networks/nw:network/nw:node/tet:te/" 2428 + "tet:tunnel-termination-point/" 2429 + "tet:local-link-connectivities/" 2430 + "tet:local-link-connectivity/" 2431 + "tet:label-restrictions/tet:label-restriction/" 2432 + "tet:label-start/tet:te-label/tet:technology" { 2433 when "../../../../../../../../../" 2434 + "nw:network-types/tet:te-topology/" 2435 + "wson:wson-topology" { 2436 description "Augment WSON TE label"; 2437 } 2438 description 2439 "Augment WSON label restrictions start of 2440 local-link-connectivity (LLC)"; 2441 case wson { 2442 uses layer0-types:wson-link-label; 2443 } 2444 } 2446 augment "/nw:networks/nw:network/nw:node/tet:te/" 2447 + "tet:tunnel-termination-point/" 2448 + "tet:local-link-connectivities/" 2449 + "tet:local-link-connectivity/" 2450 + "tet:label-restrictions/tet:label-restriction/" 2451 + "tet:label-end/tet:te-label/tet:technology" { 2452 when "../../../../../../../../../" 2453 + "nw:network-types/tet:te-topology/" 2454 + "wson:wson-topology" { 2455 description "Augment WSON TE label"; 2456 } 2457 description 2458 "Augment WSON label restrictions end of 2459 local-link-connectivity (LLC)"; 2460 case wson { 2461 uses layer0-types:wson-link-label; 2462 } 2463 } 2465 augment "/nw:networks/nw:network/nw:node/tet:te/" 2466 + "tet:tunnel-termination-point/" 2467 + "tet:local-link-connectivities/" 2468 + "tet:local-link-connectivity/" 2469 + "tet:underlay/tet:primary-path/tet:path-element/tet:type/" 2470 + "tet:label/tet:label-hop/tet:te-label/tet:technology" { 2471 when "../../../../../../../../../../" 2472 + "nw:network-types/tet:te-topology/" 2473 + "wson:wson-topology" { 2474 description "Augment WSON TE label"; 2475 } 2476 description 2477 "Augment WSON label hop of underlay primary path of 2478 local-link-connectivity (LLC)"; 2479 case wson { 2480 uses layer0-types:wson-path-label; 2481 } 2482 } 2484 augment "/nw:networks/nw:network/nw:node/tet:te/" 2485 + "tet:tunnel-termination-point/" 2486 + "tet:local-link-connectivities/" 2487 + "tet:local-link-connectivity/" 2488 + "tet:underlay/tet:backup-path/tet:path-element/tet:type/" 2489 + "tet:label/tet:label-hop/tet:te-label/tet:technology" { 2490 when "../../../../../../../../../../" 2491 + "nw:network-types/tet:te-topology/" 2492 + "wson:wson-topology" { 2493 description "Augment WSON TE label"; 2494 } 2495 description 2496 "Augment WSON label hop of underlay backup path of 2497 local-link-connectivity (LLC)"; 2498 case wson { 2499 uses layer0-types:wson-path-label; 2500 } 2501 } 2503 augment "/nw:networks/nw:network/nw:node/tet:te/" 2504 + "tet:tunnel-termination-point/" 2505 + "tet:local-link-connectivities/" 2506 + "tet:local-link-connectivity/" 2507 + "tet:optimizations/tet:algorithm/tet:metric/" 2508 + "tet:optimization-metric/" 2509 + "tet:explicit-route-exclude-objects/" 2510 + "tet:route-object-exclude-object/tet:type/" 2511 + "tet:label/tet:label-hop/tet:te-label/tet:technology" { 2512 when "../../../../../../../../../../../" 2513 + "nw:network-types/tet:te-topology/" 2514 + "wson:wson-topology" { 2515 description "Augment WSON TE label"; 2516 } 2517 description 2518 "Augment WSON label hop of route-exclude of 2519 local-link-connectivity (LLC)"; 2520 case wson { 2521 uses layer0-types:wson-path-label; 2522 } 2523 } 2525 augment "/nw:networks/nw:network/nw:node/tet:te/" 2526 + "tet:tunnel-termination-point/" 2527 + "tet:local-link-connectivities/" 2528 + "tet:local-link-connectivity/" 2529 + "tet:optimizations/tet:algorithm/tet:metric/" 2530 + "tet:optimization-metric/" 2531 + "tet:explicit-route-include-objects/" 2532 + "tet:route-object-include-object/tet:type/" 2533 + "tet:label/tet:label-hop/tet:te-label/tet:technology" { 2534 when "../../../../../../../../../../../" 2535 + "nw:network-types/tet:te-topology/" 2536 + "wson:wson-topology" { 2537 description "Augment WSON TE label"; 2538 } 2539 description 2540 "Augment WSON label hop of route-include of 2541 local-link-connectivity (LLC)"; 2542 case wson { 2543 uses layer0-types:wson-path-label; 2544 } 2545 } 2547 augment "/nw:networks/nw:network/nw:node/tet:te/" 2548 + "tet:tunnel-termination-point/" 2549 + "tet:local-link-connectivities/" 2550 + "tet:local-link-connectivity/" 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 + "wson:wson-topology" { 2557 description "Augment WSON TE label"; 2558 } 2559 description 2560 "Augment WSON label hop of path-route of 2561 local-link-connectivity (LLC)"; 2562 case wson { 2563 uses layer0-types:wson-path-label; 2564 } 2565 } 2566 augment "/nw:networks/nw:network/nt:link/tet:te/" 2567 + "tet:te-link-attributes/" 2568 + "tet:underlay/tet:primary-path/tet:path-element/tet:type/" 2569 + "tet:label/tet:label-hop/tet:te-label/tet:technology" { 2570 when "../../../../../../../../" 2571 + "nw:network-types/tet:te-topology/" 2572 + "wson:wson-topology" { 2573 description "Augment WSON TE label"; 2574 } 2575 description 2576 "Augment WSON label hop of underlay primary path of TE link"; 2577 case wson { 2578 uses layer0-types:wson-path-label; 2579 } 2580 } 2582 augment "/nw:networks/nw:network/nt:link/tet:te/" 2583 + "tet:te-link-attributes/" 2584 + "tet:underlay/tet:backup-path/tet:path-element/tet:type/" 2585 + "tet:label/tet:label-hop/tet:te-label/tet:technology" { 2586 when "../../../../../../../../" 2587 + "nw:network-types/tet:te-topology/" 2588 + "wson:wson-topology" { 2589 description "Augment WSON TE label"; 2590 } 2591 description 2592 "Augment WSON label hop of underlay backup path of TE link"; 2593 case wson { 2594 uses layer0-types:wson-path-label; 2595 } 2596 } 2598 augment "/nw:networks/nw:network/nt:link/tet:te/" 2599 + "tet:te-link-attributes/" 2600 + "tet:label-restrictions/tet:label-restriction" { 2601 when "../../../../../nw:network-types/tet:te-topology/" 2602 + "wson:wson-topology" { 2603 description "Augment WSON TE label"; 2604 } 2605 description 2606 "Augment WSON label restrictions of TE link"; 2607 uses layer0-types:layer0-label-restriction; 2608 } 2610 augment "/nw:networks/nw:network/nt:link/tet:te/" 2611 + "tet:te-link-attributes/" 2612 + "tet:label-restrictions/tet:label-restriction/" 2613 + "tet:label-start/tet:te-label/tet:technology" { 2614 when "../../../../../../../nw:network-types/tet:te-topology/" 2615 + "wson:wson-topology" { 2616 description "Augment WSON TE label"; 2617 } 2618 description 2619 "Augment WSON label restrictions start of TE link"; 2620 case wson { 2621 uses layer0-types:wson-link-label; 2622 } 2623 } 2625 augment "/nw:networks/nw:network/nt:link/tet:te/" 2626 + "tet:te-link-attributes/" 2627 + "tet:label-restrictions/tet:label-restriction/" 2628 + "tet:label-end/tet:te-label/tet:technology" { 2629 when "../../../../../../../nw:network-types/tet:te-topology/" 2630 + "wson:wson-topology" { 2631 description "Augment WSON TE label"; 2632 } 2633 description 2634 "Augment WSON label restrictions end of TE link"; 2635 case wson { 2636 uses layer0-types:wson-link-label; 2637 } 2638 } 2640 augment "/nw:networks/nw:network/nt:link/tet:te/" 2641 + "tet:information-source-entry/" 2642 + "tet:label-restrictions/tet:label-restriction" { 2643 when "../../../../../nw:network-types/tet:te-topology/" 2644 + "wson:wson-topology" { 2645 description "Augment WSON TE label"; 2646 } 2647 description 2648 "Augment WSON label restrictions of TE link 2649 information-source"; 2650 uses layer0-types:layer0-label-restriction; 2651 } 2653 augment "/nw:networks/nw:network/nt:link/tet:te/" 2654 + "tet:information-source-entry/" 2655 + "tet:label-restrictions/tet:label-restriction/" 2656 + "tet:label-start/tet:te-label/tet:technology" { 2657 when "../../../../../../../nw:network-types/tet:te-topology/" 2658 + "wson:wson-topology" { 2660 description "Augment WSON TE label"; 2661 } 2662 description 2663 "Augment WSON label restrictions start of TE link 2664 information-source"; 2665 case wson { 2666 uses layer0-types:wson-link-label; 2667 } 2668 } 2670 augment "/nw:networks/nw:network/nt:link/tet:te/" 2671 + "tet:information-source-entry/" 2672 + "tet:label-restrictions/tet:label-restriction/" 2673 + "tet:label-end/tet:te-label/tet:technology" { 2674 when "../../../../../../../nw:network-types/tet:te-topology/" 2675 + "wson:wson-topology" { 2676 description "Augment WSON TE label"; 2677 } 2678 description 2679 "Augment WSON label restrictions end of TE link 2680 information-source"; 2681 case wson { 2682 uses layer0-types:wson-link-label; 2683 } 2684 } 2686 augment "/nw:networks/tet:te/tet:templates/" 2687 + "tet:link-template/tet:te-link-attributes/" 2688 + "tet:underlay/tet:primary-path/tet:path-element/tet:type/" 2689 + "tet:label/tet:label-hop/tet:te-label/tet:technology" { 2690 description 2691 "Augment WSON label hop of underlay primary path of TE link 2692 template"; 2693 case wson { 2694 uses layer0-types:wson-path-label; 2695 } 2696 } 2698 augment "/nw:networks/tet:te/tet:templates/" 2699 + "tet:link-template/tet:te-link-attributes/" 2700 + "tet:underlay/tet:backup-path/tet:path-element/tet:type/" 2701 + "tet:label/tet:label-hop/tet:te-label/tet:technology" { 2702 description 2703 "Augment WSON label hop of underlay backup path of TE link 2704 template"; 2705 case wson { 2706 uses layer0-types:wson-path-label; 2708 } 2709 } 2711 augment "/nw:networks/tet:te/tet:templates/" 2712 + "tet:link-template/tet:te-link-attributes/" 2713 + "tet:label-restrictions/tet:label-restriction" { 2714 description 2715 "Augment WSON label restrictions of TE link template"; 2716 uses layer0-types:layer0-label-restriction; 2717 } 2719 augment "/nw:networks/tet:te/tet:templates/" 2720 + "tet:link-template/tet:te-link-attributes/" 2721 + "tet:label-restrictions/tet:label-restriction/" 2722 + "tet:label-start/tet:te-label/tet:technology" { 2723 description 2724 "Augment WSON label restrictions start of TE link template"; 2725 case wson { 2726 uses layer0-types:wson-link-label; 2727 } 2728 } 2730 augment "/nw:networks/tet:te/tet:templates/" 2731 + "tet:link-template/tet:te-link-attributes/" 2732 + "tet:label-restrictions/tet:label-restriction/" 2733 + "tet:label-end/tet:te-label/tet:technology" { 2734 description 2735 "Augment WSON label restrictions end of TE link template"; 2736 case wson { 2737 uses layer0-types:wson-link-label; 2738 } 2739 } 2740 } 2741 2743 4. IETF-Layer0-Types YANG Model 2745 file "ietf-layer0-types@2018-11-19.yang" 2747 module ietf-layer0-types { 2748 namespace "urn:ietf:params:xml:ns:yang:ietf-layer0-types"; 2749 prefix "layer0-types"; 2751 organization 2752 "IETF CCAMP Working Group"; 2753 contact 2754 "WG Web: 2755 WG List: 2757 Editor: Aihua Guo 2758 2760 Editor: Young Lee 2761 "; 2763 description 2764 "This module defines Optical Layer 0 types. This module 2765 provides groupings that can be applicable to Layer 0 2766 Fixed Optical Networks (e.g., CWDM (Coarse Wavelength 2767 Division Multiplexing) and DWDM (Dense Wavelength Division 2768 Multiplexing)) and Flexi-grid Optical Networks. 2770 Copyright (c) 2018 IETF Trust and the persons identified 2771 as authors of the code. All rights reserved. 2773 Redistribution and use in source and binary forms, with 2774 or without modification, is permitted pursuant to, and 2775 subject to the license terms contained in, the Simplified 2776 BSD License set forth in Section 4.c of the IETF Trust's 2777 Legal Provisions Relating to IETF Documents 2778 (http://trustee.ietf.org/license-info)."; 2780 revision "2018-11-26" { 2781 description 2782 "Initial Version"; 2783 reference 2784 "RFC XXX: A YANG Data Model for WSON (Wavelenghth Switched 2785 Optical Networks)"; 2786 } 2788 typedef operational-mode { 2789 type string; 2790 description 2791 "Vendor-specific mode that guarantees interoperability. 2792 It must be an string with the following format: 2793 B-DScW-ytz(v) where all these attributes are conformant 2794 to the ITU-T recomendation"; 2795 reference "ITU-T G.698.2 (11/2009) Section 5.3"; 2796 } 2798 typedef vendor-identifier { 2799 type string; 2800 description 2801 "vendor identifier that uses vendor-specific mode"; 2802 reference "TBD"; 2804 } 2806 typedef frequency-thz { 2807 type decimal64 { 2808 fraction-digits 5; 2809 } 2810 units THz; 2811 description 2812 "The DWDM frequency in THz, e.g., 193.12500"; 2813 reference 2814 "RFC6205"; 2815 } 2817 typedef frequency-ghz { 2818 type decimal64 { 2819 fraction-digits 5; 2820 } 2821 units GHz; 2822 description 2823 "The DWDM frequency in GHz, e.g., 193125.00"; 2824 reference 2825 "RFC6205"; 2826 } 2828 identity layer0-node-type { 2829 description 2830 "layer0 node type."; 2831 reference 2832 "RFC6163"; 2833 } 2835 identity flex-grid-node { 2836 base layer0-node-type; 2837 description 2838 "Flex Grid node"; 2839 } 2841 identity wson-node-foadm { 2842 base layer0-node-type; 2843 description 2844 "Fixed OADM (Optical Add-Drop Multiplexer) node"; 2845 } 2847 identity wson-node-roadm { 2848 base layer0-node-type; 2849 description 2850 "ROADM (Reconfigurable Optical Add-Drop Multiplexer) 2851 or OXC (Optical Cross Connect) node"; 2853 } 2855 identity wson-node-ila { 2856 base layer0-node-type; 2857 description 2858 "ILA (In-Line Amplifier) node"; 2859 } 2861 identity wavelength-assignment { 2862 description 2863 "Wavelength selection base"; 2864 } 2866 identity unspecified-wavelength-assignment { 2867 base wavelength-assignment; 2868 description 2869 "No method specified"; 2870 } 2872 identity first-fit-wavelength-asignment { 2873 base wavelength-assignment; 2874 description 2875 "All the available wavelengths are numbered, 2876 and this WA (Wavelength Assignment) method chooses 2877 the available wavelength with the lowest index"; 2878 } 2880 identity random-wavelength-asignment { 2881 base wavelength-assignment; 2882 description 2883 "This WA method chooses an available 2884 wavelength randomly"; 2885 } 2887 identity least-loaded-wavelength-asignment { 2888 base wavelength-assignment; 2889 description 2890 "This WA method selects the wavelength that 2891 has the largest residual capacity on the most loaded 2892 link along the route (in multi-fiber networks)"; 2893 } 2895 identity layer0-grid-type { 2896 description 2897 "Layer0 grid type."; 2898 } 2900 identity flex-grid-dwdm { 2901 base layer0-grid-type; 2902 description 2903 "Flex grid"; 2904 } 2906 identity wson-grid-dwdm { 2907 base layer0-grid-type; 2908 description 2909 "DWDM grid"; 2910 } 2912 identity wson-grid-cwdm { 2913 base layer0-grid-type; 2914 description 2915 "CWDM grid"; 2916 } 2918 identity term-type { 2919 description 2920 "Termination type."; 2921 } 2923 identity term-phys { 2924 base term-type; 2925 description 2926 "Physical Layer Termination"; 2927 } 2929 identity term-otu { 2930 base term-type; 2931 description 2932 "OTU (Optical Transport Unit) Termination"; 2933 } 2935 identity term-odu { 2936 base term-type; 2937 description 2938 "ODU (Optical Data Unit) Termination"; 2939 } 2941 identity term-opu { 2942 base term-type; 2943 description 2944 "OPU (Optical Payload Unit) Termination"; 2945 } 2947 identity term-section { 2948 base term-type; 2949 description 2950 "Section Layer Termination"; 2952 } 2954 identity layer0-bandwidth-type { 2955 description 2956 "Bandwidth type carried by a single wavelength channel"; 2957 } 2959 identity bw-otu1 { 2960 base layer0-bandwidth-type; 2961 description 2962 "OTU1 (2.66G)"; 2963 } 2965 identity bw-otu1e { 2966 base layer0-bandwidth-type; 2967 description 2968 "OTU1e (11.04G)"; 2969 } 2971 identity bw-otu1f { 2972 base layer0-bandwidth-type; 2973 description 2974 "OTU1f (11.27G)"; 2975 } 2977 identity bw-otu2 { 2978 base layer0-bandwidth-type; 2979 description 2980 "OTU2 (10.70G)"; 2981 } 2983 identity bw-otu2e { 2984 base layer0-bandwidth-type; 2985 description 2986 "OTU2e (11.09G)"; 2987 } 2989 identity bw-otu2f { 2990 base layer0-bandwidth-type; 2991 description 2992 "OTU2f (11.31G)"; 2993 } 2995 identity bw-otu3 { 2996 base layer0-bandwidth-type; 2997 description 2998 "OTU3 (43.01G)"; 2999 } 3000 identity bw-otu3e1 { 3001 base layer0-bandwidth-type; 3002 description 3003 "OTU3e1 (44.57G)"; 3004 } 3006 identity bw-otu3e2 { 3007 base layer0-bandwidth-type; 3008 description 3009 "OTU3e2 (44.58G)"; 3010 } 3012 identity bw-otu4 { 3013 base layer0-bandwidth-type; 3014 description 3015 "OTU4 (111.80G)"; 3016 } 3018 identity bw-otucn { 3019 base layer0-bandwidth-type; 3020 description 3021 "OTUCn (beyond 100G)"; 3022 } 3024 identity dwdm-ch-spc-type { 3025 description 3026 "DWDM channel spacing type"; 3027 } 3029 identity dwdm-100ghz { 3030 base dwdm-ch-spc-type; 3031 description 3032 "100GHz channel spacing"; 3033 } 3035 identity dwdm-50ghz { 3036 base dwdm-ch-spc-type; 3037 description 3038 "50GHz channel spacing"; 3039 } 3041 identity dwdm-25ghz { 3042 base dwdm-ch-spc-type; 3043 description 3044 "25GHz channel spacing"; 3045 } 3047 identity dwdm-12p5ghz { 3048 base dwdm-ch-spc-type; 3049 description 3050 "12.5GHz channel spacing"; 3051 } 3053 identity dwdm-6p25ghz { 3054 base dwdm-ch-spc-type; 3055 description 3056 "6.25GHz channel spacing"; 3057 } 3059 identity cwdm-ch-spc-type { 3060 description 3061 "CWDM channel spacing type."; 3062 } 3064 identity cwdm-20nm { 3065 base cwdm-ch-spc-type; 3066 description 3067 "20nm channel spacing"; 3068 } 3070 identity fec-type { 3071 description 3072 "FEC (Forward Error Correction) type"; 3073 } 3075 identity g-fec { 3076 base fec-type; 3077 description 3078 "G-FEC (Generic-FEC)"; 3079 } 3080 identity e-fec { 3081 base fec-type; 3082 description 3083 "E-FEC (Enhanced-FEC)"; 3084 } 3085 identity no-fec { 3086 base fec-type; 3087 description 3088 "No FEC"; 3089 } 3091 /* Groupings. */ 3092 grouping wson-path-bandwidth { 3093 description "WSON (Wavelength Switched Optical Network) 3094 path bandwidth attributes"; 3095 leaf bandwidth-type { 3096 type identityref { 3097 base layer0-bandwidth-type; 3099 } 3100 description "WSON bandwidth type"; 3101 } 3102 } 3104 grouping wson-link-bandwidth { 3105 description "WSON link bandwidth attributes"; 3106 leaf-list supported-bandwidth-list { 3107 type identityref { 3108 base layer0-bandwidth-type; 3109 } 3110 description "WSON bandwidth type"; 3111 } 3112 } 3114 grouping wson-link-label { 3115 description 3116 "Generic label for WSON links"; 3117 choice grid-type { 3118 description 3119 "Label for DWDM or CWDM grid"; 3120 case dwdm { 3121 leaf channel-freq { 3122 type frequency-thz; 3123 description 3124 "The DWDM fixed-grid channel frequency in THz, 3125 e.g., 193.12500"; 3126 reference 3127 "RFC6205"; 3128 } 3129 } 3130 case cwdm { 3131 leaf channel-wavelength { 3132 type uint32; 3133 units nm; 3134 description 3135 "The CWDM wavelength in nanometer, e.g., 1511"; 3136 reference 3137 "RFC6205"; 3138 } 3139 } 3140 } 3141 } 3143 grouping wson-path-label { 3144 description 3145 "Generic label for WSON paths"; 3146 choice grid-type { 3147 description 3148 "Label for DWDM or CWDM grid"; 3149 case dwdm { 3150 choice single-or-super-channel { 3151 description "single or super channel"; 3152 case single { 3153 leaf channel-freq { 3154 type frequency-thz; 3155 description 3156 "The DWDM fixed-grid channel frequency in THz, 3157 e.g., 193.12500"; 3158 } 3159 } 3160 case super { 3161 leaf-list subcarrier-channels { 3162 type frequency-thz; 3163 description 3164 "List of subcarrier channels for super channel"; 3165 } 3166 } 3167 } 3169 } 3170 case cwdm { 3171 leaf channel-wavelength { 3172 type uint32; 3173 units nm; 3174 description 3175 "The CWDM wavelength in nanometer, e.g., 1511"; 3176 reference 3177 "RFC6205"; 3178 } 3179 } 3180 } 3181 } 3183 grouping layer0-label-restriction { 3184 description 3185 "layer0 label restriction."; 3187 leaf grid-type { 3188 type identityref { 3189 base layer0-grid-type; 3190 } 3191 description "Grid type"; 3192 } 3193 leaf priority { 3194 type uint8; 3195 description "priority"; 3196 } 3198 } 3200 grouping wson-label-step { 3201 description "Label step information for WSON"; 3202 choice layer0-grid-type { 3203 description 3204 "WSON grid-type: DWDM, CWDM, etc."; 3205 case dwdm { 3206 leaf wson-dwdm { 3207 type identityref { 3208 base dwdm-ch-spc-type; 3209 } 3210 description 3211 "Label-step is the channel-spacing (GHz), e.g., 3212 100, 50, 25, or 12.5 GHz for DWDM"; 3213 reference 3214 "RFC6205"; 3215 } 3216 } 3217 case cwdm { 3218 leaf wson-cwdm { 3219 type identityref { 3220 base cwdm-ch-spc-type; 3221 } 3222 description 3223 "label-step is the channel-spacing (nm), i.e., 20 nm 3224 for CWDM, which is the only value defined for CWDM"; 3225 reference 3226 "RFC6205"; 3227 } 3228 } 3229 } 3230 } 3232 grouping flex-grid-node-attributes { 3233 description "Flex-grid node attributes"; 3235 container flex-grid-node { 3236 description "Flex-grid node attrtibutes"; 3237 leaf node-type { 3238 type identityref { 3239 base layer0-node-type; 3240 } 3241 description "Flex-grid node type"; 3242 } 3243 } 3244 } 3246 grouping flex-grid-path-bandwidth { 3247 description "Flex-grid path bandwidth attributes"; 3248 leaf bandwidth-type { 3249 type identityref { 3250 base layer0-bandwidth-type; 3251 } 3252 description "Flex-grid bandwidth type"; 3253 } 3254 } 3256 grouping flex-grid-link-bandwidth { 3257 description "flex-grid link bandwidth attributes"; 3258 leaf-list supported-bandwidth-list { 3259 type identityref { 3260 base layer0-bandwidth-type; 3261 } 3262 description "Flex-grid bandwidth type"; 3263 } 3264 } 3266 grouping flex-grid-link-label { 3267 description "Flex-grid link label."; 3268 leaf central-frequency { 3269 type frequency-thz; 3270 description 3271 "The DWDM flex-grid channel central frequency 3272 in THz, e.g., 193.12500"; 3273 reference 3274 "RFC7698"; 3275 } 3276 } 3278 grouping flex-grid-channel { 3279 description "Flex-grid channel grouping."; 3280 leaf central-frequency { 3281 type frequency-thz; 3282 description 3283 "Flex-grid central frequency in THz, e.g., 193.12500"; 3284 reference 3285 "RFC7698"; 3286 } 3288 leaf slot-width { 3289 type frequency-ghz; 3290 description 3291 "Flex-grid The DWDM slot width in GHz, e.g., 50, 100, 150"; 3292 reference 3293 "RFC7698"; 3294 } 3295 } 3296 grouping flex-grid-path-label { 3297 description "Flex-grid path label."; 3298 choice single-or-super-channel { 3299 description "single of super channel"; 3300 case single { 3301 uses flex-grid-channel; 3302 } 3303 case super { 3304 list subcarrier-channels { 3305 key central-frequency; 3306 uses flex-grid-channel; 3307 description 3308 "List of subcarrier channels for flex-grid 3309 super channel"; 3310 } 3311 } 3312 } 3313 } 3315 grouping flex-grid-label-restriction { 3316 description 3317 "Flex Grid-specific label restriction"; 3318 uses layer0-label-restriction; 3320 container flex-grid { 3321 description "flex-grid definition"; 3322 leaf nominal-central-frequency-granularity { 3323 type frequency-ghz; 3324 default 6.25; 3325 description 3326 "It is the spacing between allowed nominal central 3327 frequencies and it is set to 6.25 GHz"; 3328 reference 3329 "RFC7698"; 3330 } 3332 leaf slot-width-granularity { 3333 type frequency-ghz; 3334 default 12.5; 3335 description 3336 "Minimum space between slot widths"; 3337 reference 3338 "RFC7698"; 3339 } 3340 } 3341 } 3343 grouping flex-grid-label-step { 3344 description "Label step information for flex grid"; 3345 leaf flex { 3346 type identityref { 3347 base dwdm-ch-spc-type; 3348 } 3349 description 3350 "Label-step is the nominal central frequency 3351 granularity (GHz), e.g., 6.25 GHz"; 3352 reference 3353 "RFC7698"; 3354 } 3355 } 3356 } 3357 3359 5. Security Considerations 3361 The YANG module specified in this document defines a schema for data 3362 that is designed to be accessed via network management protocols 3363 such as NETCONF [RFC6241] or RESTCONF [RFC8040]. The lowest NETCONF 3364 layer is the secure transport layer, and the mandatory-to-implement 3365 secure transport is Secure Shell (SSH) [RFC6242]. The lowest 3366 RESTCONF layer is HTTPS, and the mandatory-to-implement secure 3367 transport is TLS [RFC8446]. 3369 The NETCONF access control model [RFC6536] provides the means to 3370 restrict access for particular NETCONF users to a preconfigured 3371 subset of all available NETCONF protocol operations and content. The 3372 NETCONF Protocol over Secure Shell (SSH) [RFC6242] describes a 3373 method for invoking and running NETCONF within a Secure Shell (SSH) 3374 session as an SSH subsystem. The Network Configuration Access 3375 Control Model (NACM) [RFC8341] provides the means to restrict access 3376 for particular NETCONF or RESTCONF users to a preconfigured subset 3377 of all available NETCONF or RESTCONF protocol operations and 3378 content. 3380 A number of configuration data nodes defined in this document are 3381 writable/deletable (i.e., "config true"). These data nodes may be 3382 considered sensitive or vulnerable in some network environments. 3384 There are a number of data nodes defined in this YANG module that 3385 are writable/creatable/deletable (i.e., config true, which is the 3386 default). These data nodes may be considered sensitive or 3387 vulnerable in some network environments. Write operations (e.g., 3388 edit-config) to these data nodes without proper protection can have 3389 a negative effect on network operations. These are the subtrees and 3390 data nodes and their sensitivity/vulnerability: 3392 /nw:networks/nw:network/nw:network-types/tet:te-topology 3394 /nw:networks/nw:network/nt:link/tet:te/tet:te-link-attributes 3396 /nw:networks/nw:network/nw:node/nt:termination-point/tet:te 3398 /nw:networks/nw:network/nw:node/tet:te/tet:te-node-attributes 3399 /te-connectivity-matrices/te-connectivity-matrix/tet:path- 3400 constraints/tet:te-bandwidth/tet:technology 3402 /nw:networks/nw:network/nw:node/tet:te 3403 /tet:tunnel-termination-point/tet:local-link-connectivities 3404 /tet:label-restrictions/tet:label-restriction 3406 6. IANA Considerations 3408 This document registers the following namespace URIs in the IETF XML 3409 registry [RFC3688]: 3411 -------------------------------------------------------------------- 3412 URI: urn:ietf:params:xml:ns:yang: ietf-wson-topology 3413 Registrant Contact: The IESG. 3414 XML: N/A, the requested URI is an XML namespace. 3415 -------------------------------------------------------------------- 3416 URI: urn:ietf:params:xml:ns:yang: ietf-layer0-types 3417 Registrant Contact: The IESG. 3418 XML: N/A, the requested URI is an XML namespace. 3419 -------------------------------------------------------------------- 3421 This document registers the following YANG modules in the YANG 3422 Module Names registry [RFC7950]: 3424 -------------------------------------------------------------------- 3425 name: ietf-wson-topology 3426 namespace: urn:ietf:params:xml:ns:yang:ietf-wson-topology 3427 reference: RFC XXXX (TDB) 3428 -------------------------------------------------------------------- 3429 name: ietf-layer0-types 3430 namespace: urn:ietf:params:xml:ns:yang: ietf-layer0-types 3431 reference: RFC XXXX (TDB) 3432 -------------------------------------------------------------------- 3434 7. Acknowledgments 3436 This document was prepared using 2-Word-v2.0.template.dot. 3438 8. References 3440 8.1. Normative References 3442 [RFC6020] Bjorklund, M., Ed., "YANG - A Data Modeling Language for 3443 the Network Configuration Protocol (NETCONF)", RFC 6020, 3444 October 2010. 3446 [RFC6241] R. Enns, Ed., M. Bjorklund, Ed., J. Schoenwaelder, Ed., 3447 "Network Configuration Protocol (NETCONF)", RFC 6241, June 3448 2011. 3450 [RFC6242] M. Wasserman, "Using the NETCONF Protocol over Secure 3451 Shell (SSH)", RFC 6242, June 2011. 3453 [RFC6536] A. Bierman, M. Bjorklund, "Network Configuration Protocol 3454 (NETCONF) Access Control Model", RFC 6536, March 2012. 3456 [RFC7950] Bjorklund, M., Ed., "The YANG 1.1 Data Modeling Language", 3457 RFC 7950, August 2016. 3459 [RFC8040] A. Bierman, M. Bjorklund, K. Watsen, "RESTCONF Protocol", 3460 RFC 8040, January 2017. 3462 [RFC8341] A. Bierman, M. Bjorklund, "Network Configuration Access 3463 Control Model", RFC 8341, March 2018. 3465 [RFC8446] E. Rescorla, "The Transport Layer Security (TLS) Protocol 3466 Version 1.3", RFC8446, August 2018. 3468 [TE-TOPO] X. Liu, et al., "YANG Data Model for TE Topologies", work 3469 in progress: draft-ietf-teas-yang-te-topo. 3471 8.2. Informative References 3473 [RFC2119] Bradner, S., "Key words for use in RFCs to Indicate 3474 Requirement Levels", BCP 14, RFC 2119, DOI 3475 10.17487/RFC2119, March 1997, . 3478 [RFC3688] M. Mealling, "The IETF XML Registry", RFC 3688, January 3479 2004. 3481 [RFC6163] Y. Lee, Ed. G. Berstein, Ed., W. Imajuku, "Framework for 3482 GMPLS and Path Computation Element (PCE) Control of 3483 Wavelength Switched Optical Networks (WSONs)", RFC 6163, 3484 April 2011. 3486 [RFC6205] T. Otani, Ed., D. Li, Ed., "Generalized Labels for Lambda- 3487 Switch-Capable (LSC) Label Switching Routers", RFC 6205, 3488 March 2011. 3490 [RFC7446] Y. Lee, G. Bernstein, D. Li, W. Imajuku, "Routing and 3491 Wavelength Assignment Information Model for Wavelength 3492 Switched Optical Networks", RFC 7446, Feburary 2015. 3494 [RFC7579] G. Bernstein, Y. Lee, D. Li, W. Imajuku, "General Network 3495 Element Constraint Encoding for GMPLS Controlled 3496 Networks", RFC 7579, June 2015. 3498 [RFC7581] G. Bernstein, Y. Lee, D. Li, W. Imajuku, "Routing and 3499 Wavelength Assignment Information Encoding for Wavelength 3500 Switched Optical Networks", RFC 7581, June 2015. 3502 [RFC7698] O. Gonzalez de Dios, Ed., R. Casellas, Ed., "Framework and 3503 Requirements for GMPLS-Based Control of Flexi-Grid Dense 3504 Wavelength Division Multiplexing (DWDM) Networks", RFC 3505 7698, November 2015. 3507 [RFC8340] M. Bjorklund and L. Berger, Ed., "YANG Tree Diagrams", RFC 3508 8340, March 2018. 3510 [RFC8342] M. Bjorklund, J. Schoenwaelder, P. Shafer, K. Watsen, R. 3511 Wilton, "Network Management Datastore Architecture 3512 (NMDA)", RFC 8342, March 2018. 3514 [RFC8345] A. Clemm, et al, "A YANG Data Model for Network 3515 Topologies", RFC 8345, March 2018. 3517 9. Contributors 3519 Authors' Addresses 3521 Young Lee (ed.) 3522 Huawei Technologies 3523 5700 Tennyson Parkway, Suite 600 3524 Plano, TX 75024 3525 USA 3526 Email: leeyoung@huawei.com 3528 Dhruv Dhody 3529 Huawei Technologies 3530 Divyashree Techno Park, Whitefield 3531 Bangalore, Karnataka 560066 3532 India 3533 EMail: dhruv.ietf@gmail.com 3535 Aihua Guo 3536 Huawei Technologies 3537 Email: aihuaguo@huawei.com 3539 Victor Lopez 3540 Telefonica 3541 Email: victor.lopezalvarez@telefonica.com 3543 Daniel King 3544 University of Lancaster 3545 Email: d.king@lancaster.ac.uk 3547 Bin Yeong Yoon 3548 ETRI 3549 218 Gaijeongro, Yuseong-gu 3550 Daejeon, Korea 3551 Email: byyun@etri.re.kr 3553 Ricard Vilalta 3554 CTTC 3555 Email: ricard.vilalta@cttc.es 3557 Italo Busi 3558 Huawei 3559 Email: Italo.Busi@huawei.com