idnits 2.17.1 draft-ietf-ccamp-wson-yang-24.txt: Checking boilerplate required by RFC 5378 and the IETF Trust (see https://trustee.ietf.org/license-info): ---------------------------------------------------------------------------- No issues found here. Checking nits according to https://www.ietf.org/id-info/1id-guidelines.txt: ---------------------------------------------------------------------------- No issues found here. Checking nits according to https://www.ietf.org/id-info/checklist : ---------------------------------------------------------------------------- No issues found here. Miscellaneous warnings: ---------------------------------------------------------------------------- == The copyright year in the IETF Trust and authors Copyright Line does not match the current year == The document doesn't use any RFC 2119 keywords, yet seems to have RFC 2119 boilerplate text. -- The document date (May 8, 2020) is 1449 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: 'RFCXXXX' is mentioned on line 161, but not defined == Unused Reference: 'I-D.ietf-ccamp-layer0-types' is defined on line 2717, but no explicit reference was found in the text == Outdated reference: A later version (-16) exists of draft-ietf-ccamp-flexigrid-yang-05 == Outdated reference: A later version (-09) exists of draft-ietf-ccamp-layer0-types-04 == Outdated reference: A later version (-15) exists of draft-ietf-ccamp-optical-impairment-topology-yang-03 -- Possible downref: Non-RFC (?) normative reference: ref. 'ITU-Tg6982' Summary: 0 errors (**), 0 flaws (~~), 7 warnings (==), 2 comments (--). Run idnits with the --verbose option for more detailed information about the items above. -------------------------------------------------------------------------------- 2 CCAMP Working Group H. Zheng 3 Internet-Draft Huawei Technologies 4 Intended status: Standards Track Y. Lee 5 Expires: November 9, 2020 Samsung 6 A. Guo 7 Futurewei 8 V. Lopez 9 Telefonica 10 D. King 11 University of Lancaster 12 May 8, 2020 14 A YANG Data Model for WSON (Wavelength Switched Optical Networks) 15 draft-ietf-ccamp-wson-yang-24 17 Abstract 19 This document provides a YANG data model for the routing and 20 wavelength assignment (RWA) TE topology in wavelength switched 21 optical networks (WSONs). The YANG data model defined in this 22 document conforms to the Network Management Datastore Architecture 23 (NMDA). 25 Status of This Memo 27 This Internet-Draft is submitted in full conformance with the 28 provisions of BCP 78 and BCP 79. 30 Internet-Drafts are working documents of the Internet Engineering 31 Task Force (IETF). Note that other groups may also distribute 32 working documents as Internet-Drafts. The list of current Internet- 33 Drafts is at https://datatracker.ietf.org/drafts/current/. 35 Internet-Drafts are draft documents valid for a maximum of six months 36 and may be updated, replaced, or obsoleted by other documents at any 37 time. It is inappropriate to use Internet-Drafts as reference 38 material or to cite them other than as "work in progress." 40 This Internet-Draft will expire on November 9, 2020. 42 Copyright Notice 44 Copyright (c) 2020 IETF Trust and the persons identified as the 45 document authors. All rights reserved. 47 This document is subject to BCP 78 and the IETF Trust's Legal 48 Provisions Relating to IETF Documents 49 (https://trustee.ietf.org/license-info) in effect on the date of 50 publication of this document. Please review these documents 51 carefully, as they describe your rights and restrictions with respect 52 to this document. Code Components extracted from this document must 53 include Simplified BSD License text as described in Section 4.e of 54 the Trust Legal Provisions and are provided without warranty as 55 described in the Simplified BSD License. 57 Table of Contents 59 1. Introduction . . . . . . . . . . . . . . . . . . . . . . . . 2 60 1.1. Requirements Language . . . . . . . . . . . . . . . . . . 3 61 1.2. Terminology and Notations . . . . . . . . . . . . . . . . 3 62 1.3. Tree Diagram . . . . . . . . . . . . . . . . . . . . . . 4 63 1.4. Prefix in Data Node Names . . . . . . . . . . . . . . . . 4 64 2. YANG Model (Tree Structure) for WSON topology . . . . . . . . 4 65 3. The YANG Code for WSON topology . . . . . . . . . . . . . . . 24 66 4. Security Considerations . . . . . . . . . . . . . . . . . . . 56 67 5. IANA Considerations . . . . . . . . . . . . . . . . . . . . . 56 68 6. Contributors . . . . . . . . . . . . . . . . . . . . . . . . 57 69 7. References . . . . . . . . . . . . . . . . . . . . . . . . . 57 70 7.1. Normative References . . . . . . . . . . . . . . . . . . 57 71 7.2. Informative References . . . . . . . . . . . . . . . . . 59 72 Authors' Addresses . . . . . . . . . . . . . . . . . . . . . . . 59 74 1. Introduction 76 This document provides a YANG data model for the routing and 77 wavelength assignment (RWA) Traffic Engineering (TE) topology in 78 transparent wavelength switched optical networks (WSONs). The YANG 79 model described in this document is a WSON technology-specific YANG 80 model based on the information model developed in [RFC7446] and the 81 two encoding documents [RFC7581] and [RFC7579] that developed 82 protocol independent encodings based on [RFC7446]. 84 [ITU-Tg6982] defines amplified multichannel dense wavelength division 85 multiplexing applications with single channel optical interfaces. 86 The YANG data model defined in this document refers to the standard 87 application mode defined in [ITU-Tg6982]. 89 What is not in scope of this document is both impairment-aware 90 optical networks and flexi-grid. Refer to 91 [I-D.ietf-ccamp-optical-impairment-topology-yang] for impairement- 92 aware optical network topology model and 93 [I-D.ietf-ccamp-flexigrid-yang] for flexi-grid optical network 94 topology model. 96 Additionally, transponders and resource blocks (e.g., 3R 97 Regeneration) models are not in the scope of this document. 99 This document defines one YANG model: ietf-wson-topology (Section 3). 100 This document augments the generic TE topology draft 101 [I-D.ietf-teas-yang-te-topo]. 103 There are multiple applications for the yang data model defined in 104 this document. For example, nodes within the network can use the 105 data model to capture their understanding of the overall WSON 106 topology and expose it to a controller. A controller can further 107 propagate the topology to other controllers. The YANG model is used 108 by NETCONF [RFC6020], [RFC8341] or a RESTCONF [RFC8040] protocol. 109 The YANG data model defined in this document conforms to the Network 110 Management Datastore Architecture [RFC8342]. 112 1.1. Requirements Language 114 The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT", 115 "SHOULD", "SHOULD NOT", "RECOMMENDED", "NOT RECOMMENDED", "MAY", and 116 "OPTIONAL" in this document are to be interpreted as described in BCP 117 14 [RFC2119] [RFC8174] when, and only when, they appear in all 118 capitals, as shown here. 120 1.2. Terminology and Notations 122 Refer to [RFC7446] and [RFC7581] for the key terms used in this 123 document. The following terms are defined in [RFC7950] and are not 124 redefined here: 126 o client 128 o server 130 o augment 132 o data model 134 o data node 136 The following terms are defined in [RFC6241] and are not redefined 137 here: 139 o configuration data 141 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 these 149 diagrams is defined in [RFC8340]. 151 1.4. Prefix 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 the following table. 157 +-------------+-------------------------+------------------------+ 158 | Prefix | YANG module | Reference | 159 +-------------+-------------------------+------------------------+ 160 | layer0-types| ietf-layer0-types |[ietf-ccamp-layer-types]| 161 | wson | ietf-wson-topology | [RFCXXXX] | 162 | nw | ietf-network | [RFC8345] | 163 | nt | ietf-network-topology | [RFC8345] | 164 | tet | ietf-te-topology |[ietf-teas-yang-te-topo]| 165 +-------------+-------------------------+------------------------+ 167 Note: The RFC Editor will replace XXXX with the number assigned to 168 the RFC once this draft becomes an RFC. 170 2. YANG Model (Tree Structure) for WSON topology 172 module: ietf-wson-topology 173 augment /nw:networks/nw:network/nw:network-types 174 /tet:te-topology: 175 +--rw wson-topology! 176 augment /nw:networks/nw:network/nw:node/tet:te 177 /tet:te-node-attributes: 178 +--rw wson-node! 179 +--rw is-reconfigurable-node? boolean 180 augment /nw:networks/nw:network/nw:node/tet:te 181 /tet:te-node-attributes/tet:connectivity-matrices 182 /tet:label-restrictions/tet:label-restriction: 183 +--rw grid-type? identityref 184 +--rw priority? uint8 185 augment /nw:networks/nw:network/nw:node/tet:te 186 /tet:te-node-attributes/tet:connectivity-matrices 187 /tet:label-restrictions/tet:label-restriction 188 /tet:label-start/tet:te-label/tet:technology: 189 +--:(wson) 190 +--rw (grid-type)? 191 +--:(dwdm) 192 | +--rw dwdm-n? l0-types:dwdm-n 193 +--:(cwdm) 194 +--rw cwdm-n? l0-types:cwdm-n 195 augment /nw:networks/nw:network/nw:node/tet:te 196 /tet:te-node-attributes/tet:connectivity-matrices 197 /tet:label-restrictions/tet:label-restriction 198 /tet:label-end/tet:te-label/tet:technology: 199 +--:(wson) 200 +--rw (grid-type)? 201 +--:(dwdm) 202 | +--rw dwdm-n? l0-types:dwdm-n 203 +--:(cwdm) 204 +--rw cwdm-n? l0-types:cwdm-n 205 augment /nw:networks/nw:network/nw:node/tet:te 206 /tet:te-node-attributes/tet:connectivity-matrices 207 /tet:label-restrictions/tet:label-restriction 208 /tet:label-step/tet:technology: 209 +--:(wson) 210 +--rw (l0-grid-type)? 211 +--:(dwdm) 212 | +--rw wson-dwdm-channel-spacing? identityref 213 +--:(cwdm) 214 +--rw wson-cwdm-channel-spacing? identityref 215 augment /nw:networks/nw:network/nw:node/tet:te 216 /tet:te-node-attributes/tet:connectivity-matrices 217 /tet:underlay/tet:primary-path/tet:path-element 218 /tet:type/tet:label/tet:label-hop/tet:te-label 219 /tet:technology: 220 +--:(wson) 221 +--rw (grid-type)? 222 +--:(dwdm) 223 | +--rw (single-or-super-channel)? 224 | +--:(single) 225 | | +--rw dwdm-n? l0-types:dwdm-n 226 | +--:(super) 227 | +--rw subcarrier-dwdm-n* l0-types:dwdm-n 228 +--:(cwdm) 229 +--rw cwdm-n? l0-types:cwdm-n 230 augment /nw:networks/nw:network/nw:node/tet:te 231 /tet:te-node-attributes/tet:connectivity-matrices 232 /tet:underlay/tet:backup-path/tet:path-element 233 /tet:type/tet:label/tet:label-hop/tet:te-label 234 /tet:technology: 236 +--:(wson) 237 +--rw (grid-type)? 238 +--:(dwdm) 239 | +--rw (single-or-super-channel)? 240 | +--:(single) 241 | | +--rw dwdm-n? l0-types:dwdm-n 242 | +--:(super) 243 | +--rw subcarrier-dwdm-n* l0-types:dwdm-n 244 +--:(cwdm) 245 +--rw cwdm-n? l0-types:cwdm-n 246 augment /nw:networks/nw:network/nw:node/tet:te 247 /tet:te-node-attributes/tet:connectivity-matrices 248 /tet:optimizations/tet:algorithm/tet:metric 249 /tet:optimization-metric 250 /tet:explicit-route-exclude-objects 251 /tet:route-object-exclude-object/tet:type/tet:label 252 /tet:label-hop/tet:te-label/tet:technology: 253 +--:(wson) 254 +--rw (grid-type)? 255 +--:(dwdm) 256 | +--rw (single-or-super-channel)? 257 | +--:(single) 258 | | +--rw dwdm-n? l0-types:dwdm-n 259 | +--:(super) 260 | +--rw subcarrier-dwdm-n* l0-types:dwdm-n 261 +--:(cwdm) 262 +--rw cwdm-n? l0-types:cwdm-n 263 augment /nw:networks/nw:network/nw:node/tet:te 264 /tet:te-node-attributes/tet:connectivity-matrices 265 /tet:optimizations/tet:algorithm/tet:metric 266 /tet:optimization-metric 267 /tet:explicit-route-include-objects 268 /tet:route-object-include-object/tet:type/tet:label 269 /tet:label-hop/tet:te-label/tet:technology: 270 +--:(wson) 271 +--rw (grid-type)? 272 +--:(dwdm) 273 | +--rw (single-or-super-channel)? 274 | +--:(single) 275 | | +--rw dwdm-n? l0-types:dwdm-n 276 | +--:(super) 277 | +--rw subcarrier-dwdm-n* l0-types:dwdm-n 278 +--:(cwdm) 279 +--rw cwdm-n? l0-types:cwdm-n 280 augment /nw:networks/nw:network/nw:node/tet:te 281 /tet:te-node-attributes/tet:connectivity-matrices 282 /tet:path-properties/tet:path-route-objects 283 /tet:path-route-object/tet:type/tet:label 284 /tet:label-hop/tet:te-label/tet:technology: 285 +--:(wson) 286 +--ro (grid-type)? 287 +--:(dwdm) 288 | +--ro (single-or-super-channel)? 289 | +--:(single) 290 | | +--ro dwdm-n? l0-types:dwdm-n 291 | +--:(super) 292 | +--ro subcarrier-dwdm-n* l0-types:dwdm-n 293 +--:(cwdm) 294 +--ro cwdm-n? l0-types:cwdm-n 295 augment /nw:networks/nw:network/nw:node/tet:te 296 /tet:te-node-attributes/tet:connectivity-matrices 297 /tet:connectivity-matrix/tet:from 298 /tet:label-restrictions/tet:label-restriction: 299 +--rw grid-type? identityref 300 +--rw priority? uint8 301 augment /nw:networks/nw:network/nw:node/tet:te 302 /tet:te-node-attributes/tet:connectivity-matrices 303 /tet:connectivity-matrix/tet:from 304 /tet:label-restrictions/tet:label-restriction 305 /tet:label-start/tet:te-label/tet:technology: 306 +--:(wson) 307 +--rw (grid-type)? 308 +--:(dwdm) 309 | +--rw dwdm-n? l0-types:dwdm-n 310 +--:(cwdm) 311 +--rw cwdm-n? l0-types:cwdm-n 312 augment /nw:networks/nw:network/nw:node/tet:te 313 /tet:te-node-attributes/tet:connectivity-matrices 314 /tet:connectivity-matrix/tet:from 315 /tet:label-restrictions/tet:label-restriction 316 /tet:label-end/tet:te-label/tet:technology: 317 +--:(wson) 318 +--rw (grid-type)? 319 +--:(dwdm) 320 | +--rw dwdm-n? l0-types:dwdm-n 321 +--:(cwdm) 322 +--rw cwdm-n? l0-types:cwdm-n 323 augment /nw:networks/nw:network/nw:node/tet:te 324 /tet:te-node-attributes/tet:connectivity-matrices 325 /tet:connectivity-matrix/tet:from 326 /tet:label-restrictions/tet:label-restriction 327 /tet:label-step/tet:technology: 328 +--:(wson) 329 +--rw (l0-grid-type)? 330 +--:(dwdm) 331 | +--rw wson-dwdm-channel-spacing? identityref 332 +--:(cwdm) 333 +--rw wson-cwdm-channel-spacing? identityref 334 augment /nw:networks/nw:network/nw:node/tet:te 335 /tet:te-node-attributes/tet:connectivity-matrices 336 /tet:connectivity-matrix/tet:to 337 /tet:label-restrictions/tet:label-restriction: 338 +--rw grid-type? identityref 339 +--rw priority? uint8 340 augment /nw:networks/nw:network/nw:node/tet:te 341 /tet:te-node-attributes/tet:connectivity-matrices 342 /tet:connectivity-matrix/tet:to 343 /tet:label-restrictions/tet:label-restriction 344 /tet:label-start/tet:te-label/tet:technology: 345 +--:(wson) 346 +--rw (grid-type)? 347 +--:(dwdm) 348 | +--rw dwdm-n? l0-types:dwdm-n 349 +--:(cwdm) 350 +--rw cwdm-n? l0-types:cwdm-n 351 augment /nw:networks/nw:network/nw:node/tet:te 352 /tet:te-node-attributes/tet:connectivity-matrices 353 /tet:connectivity-matrix/tet:to 354 /tet:label-restrictions/tet:label-restriction 355 /tet:label-end/tet:te-label/tet:technology: 356 +--:(wson) 357 +--rw (grid-type)? 358 +--:(dwdm) 359 | +--rw dwdm-n? l0-types:dwdm-n 360 +--:(cwdm) 361 +--rw cwdm-n? l0-types:cwdm-n 362 augment /nw:networks/nw:network/nw:node/tet:te 363 /tet:te-node-attributes/tet:connectivity-matrices 364 /tet:connectivity-matrix/tet:to 365 /tet:label-restrictions/tet:label-restriction 366 /tet:label-step/tet:technology: 367 +--:(wson) 368 +--rw (l0-grid-type)? 369 +--:(dwdm) 370 | +--rw wson-dwdm-channel-spacing? identityref 371 +--:(cwdm) 372 +--rw wson-cwdm-channel-spacing? identityref 373 augment /nw:networks/nw:network/nw:node/tet:te 374 /tet:te-node-attributes/tet:connectivity-matrices 375 /tet:connectivity-matrix/tet:underlay 376 /tet:primary-path/tet:path-element/tet:type/tet:label 377 /tet:label-hop/tet:te-label/tet:technology: 378 +--:(wson) 379 +--rw (grid-type)? 380 +--:(dwdm) 381 | +--rw (single-or-super-channel)? 382 | +--:(single) 383 | | +--rw dwdm-n? l0-types:dwdm-n 384 | +--:(super) 385 | +--rw subcarrier-dwdm-n* l0-types:dwdm-n 386 +--:(cwdm) 387 +--rw cwdm-n? l0-types:cwdm-n 388 augment /nw:networks/nw:network/nw:node/tet:te 389 /tet:te-node-attributes/tet:connectivity-matrices 390 /tet:connectivity-matrix/tet:underlay/tet:backup-path 391 /tet:path-element/tet:type/tet:label/tet:label-hop 392 /tet:te-label/tet:technology: 393 +--:(wson) 394 +--rw (grid-type)? 395 +--:(dwdm) 396 | +--rw (single-or-super-channel)? 397 | +--:(single) 398 | | +--rw dwdm-n? l0-types:dwdm-n 399 | +--:(super) 400 | +--rw subcarrier-dwdm-n* l0-types:dwdm-n 401 +--:(cwdm) 402 +--rw cwdm-n? l0-types:cwdm-n 403 augment /nw:networks/nw:network/nw:node/tet:te 404 /tet:te-node-attributes/tet:connectivity-matrices 405 /tet:connectivity-matrix/tet:optimizations 406 /tet:algorithm/tet:metric/tet:optimization-metric 407 /tet:explicit-route-exclude-objects 408 /tet:route-object-exclude-object/tet:type/tet:label 409 /tet:label-hop/tet:te-label/tet:technology: 410 +--:(wson) 411 +--rw (grid-type)? 412 +--:(dwdm) 413 | +--rw (single-or-super-channel)? 414 | +--:(single) 415 | | +--rw dwdm-n? l0-types:dwdm-n 416 | +--:(super) 417 | +--rw subcarrier-dwdm-n* l0-types:dwdm-n 418 +--:(cwdm) 419 +--rw cwdm-n? l0-types:cwdm-n 420 augment /nw:networks/nw:network/nw:node/tet:te 421 /tet:te-node-attributes/tet:connectivity-matrices 422 /tet:connectivity-matrix/tet:optimizations 423 /tet:algorithm/tet:metric/tet:optimization-metric 424 /tet:explicit-route-include-objects 425 /tet:route-object-include-object/tet:type/tet:label 426 /tet:label-hop/tet:te-label/tet:technology: 427 +--:(wson) 428 +--rw (grid-type)? 429 +--:(dwdm) 430 | +--rw (single-or-super-channel)? 431 | +--:(single) 432 | | +--rw dwdm-n? l0-types:dwdm-n 433 | +--:(super) 434 | +--rw subcarrier-dwdm-n* l0-types:dwdm-n 435 +--:(cwdm) 436 +--rw cwdm-n? l0-types:cwdm-n 437 augment /nw:networks/nw:network/nw:node/tet:te 438 /tet:te-node-attributes/tet:connectivity-matrices 439 /tet:connectivity-matrix/tet:path-properties 440 /tet:path-route-objects/tet:path-route-object 441 /tet:type/tet:label/tet:label-hop/tet:te-label 442 /tet:technology: 443 +--:(wson) 444 +--ro (grid-type)? 445 +--:(dwdm) 446 | +--ro (single-or-super-channel)? 447 | +--:(single) 448 | | +--ro dwdm-n? l0-types:dwdm-n 449 | +--:(super) 450 | +--ro subcarrier-dwdm-n* l0-types:dwdm-n 451 +--:(cwdm) 452 +--ro cwdm-n? l0-types:cwdm-n 453 augment /nw:networks/nw:network/nw:node/tet:te 454 /tet:information-source-entry 455 /tet:connectivity-matrices/tet:label-restrictions 456 /tet:label-restriction: 457 +--ro grid-type? identityref 458 +--ro priority? uint8 459 augment /nw:networks/nw:network/nw:node/tet:te 460 /tet:information-source-entry 461 /tet:connectivity-matrices/tet:label-restrictions 462 /tet:label-restriction/tet:label-start/tet:te-label 463 /tet:technology: 464 +--:(wson) 465 +--ro (grid-type)? 466 +--:(dwdm) 467 | +--ro dwdm-n? l0-types:dwdm-n 468 +--:(cwdm) 469 +--ro cwdm-n? l0-types:cwdm-n 470 augment /nw:networks/nw:network/nw:node/tet:te 471 /tet:information-source-entry 472 /tet:connectivity-matrices/tet:label-restrictions 473 /tet:label-restriction/tet:label-end/tet:te-label 474 /tet:technology: 475 +--:(wson) 476 +--ro (grid-type)? 477 +--:(dwdm) 478 | +--ro dwdm-n? l0-types:dwdm-n 479 +--:(cwdm) 480 +--ro cwdm-n? l0-types:cwdm-n 481 augment /nw:networks/nw:network/nw:node/tet:te 482 /tet:information-source-entry 483 /tet:connectivity-matrices/tet:label-restrictions 484 /tet:label-restriction/tet:label-step/tet:technology: 485 +--:(wson) 486 +--ro (l0-grid-type)? 487 +--:(dwdm) 488 | +--ro wson-dwdm-channel-spacing? identityref 489 +--:(cwdm) 490 +--ro wson-cwdm-channel-spacing? identityref 491 augment /nw:networks/nw:network/nw:node/tet:te 492 /tet:information-source-entry 493 /tet:connectivity-matrices/tet:underlay 494 /tet:primary-path/tet:path-element/tet:type/tet:label 495 /tet:label-hop/tet:te-label/tet:technology: 496 +--:(wson) 497 +--ro (grid-type)? 498 +--:(dwdm) 499 | +--ro (single-or-super-channel)? 500 | +--:(single) 501 | | +--ro dwdm-n? l0-types:dwdm-n 502 | +--:(super) 503 | +--ro subcarrier-dwdm-n* l0-types:dwdm-n 504 +--:(cwdm) 505 +--ro cwdm-n? l0-types:cwdm-n 506 augment /nw:networks/nw:network/nw:node/tet:te 507 /tet:information-source-entry 508 /tet:connectivity-matrices/tet:underlay 509 /tet:backup-path/tet:path-element/tet:type/tet:label 510 /tet:label-hop/tet:te-label/tet:technology: 511 +--:(wson) 512 +--ro (grid-type)? 513 +--:(dwdm) 514 | +--ro (single-or-super-channel)? 515 | +--:(single) 516 | | +--ro dwdm-n? l0-types:dwdm-n 517 | +--:(super) 518 | +--ro subcarrier-dwdm-n* l0-types:dwdm-n 519 +--:(cwdm) 520 +--ro cwdm-n? l0-types:cwdm-n 521 augment /nw:networks/nw:network/nw:node/tet:te 522 /tet:information-source-entry 523 /tet:connectivity-matrices/tet:optimizations 524 /tet:algorithm/tet:metric/tet:optimization-metric 525 /tet:explicit-route-exclude-objects 526 /tet:route-object-exclude-object/tet:type/tet:label 527 /tet:label-hop/tet:te-label/tet:technology: 528 +--:(wson) 529 +--ro (grid-type)? 530 +--:(dwdm) 531 | +--ro (single-or-super-channel)? 532 | +--:(single) 533 | | +--ro dwdm-n? l0-types:dwdm-n 534 | +--:(super) 535 | +--ro subcarrier-dwdm-n* l0-types:dwdm-n 536 +--:(cwdm) 537 +--ro cwdm-n? l0-types:cwdm-n 538 augment /nw:networks/nw:network/nw:node/tet:te 539 /tet:information-source-entry 540 /tet:connectivity-matrices/tet:optimizations 541 /tet:algorithm/tet:metric/tet:optimization-metric 542 /tet:explicit-route-include-objects 543 /tet:route-object-include-object/tet:type/tet:label 544 /tet:label-hop/tet:te-label/tet:technology: 545 +--:(wson) 546 +--ro (grid-type)? 547 +--:(dwdm) 548 | +--ro (single-or-super-channel)? 549 | +--:(single) 550 | | +--ro dwdm-n? l0-types:dwdm-n 551 | +--:(super) 552 | +--ro subcarrier-dwdm-n* l0-types:dwdm-n 553 +--:(cwdm) 554 +--ro cwdm-n? l0-types:cwdm-n 555 augment /nw:networks/nw:network/nw:node/tet:te 556 /tet:information-source-entry 557 /tet:connectivity-matrices/tet:path-properties 558 /tet:path-route-objects/tet:path-route-object 559 /tet:type/tet:label/tet:label-hop/tet:te-label 560 /tet:technology: 561 +--:(wson) 562 +--ro (grid-type)? 563 +--:(dwdm) 564 | +--ro (single-or-super-channel)? 565 | +--:(single) 566 | | +--ro dwdm-n? l0-types:dwdm-n 567 | +--:(super) 568 | +--ro subcarrier-dwdm-n* l0-types:dwdm-n 569 +--:(cwdm) 570 +--ro cwdm-n? l0-types:cwdm-n 571 augment /nw:networks/nw:network/nw:node/tet:te 572 /tet:information-source-entry 573 /tet:connectivity-matrices/tet:connectivity-matrix 574 /tet:from/tet:label-restrictions 575 /tet:label-restriction: 576 +--ro grid-type? identityref 577 +--ro priority? uint8 578 augment /nw:networks/nw:network/nw:node/tet:te 579 /tet:information-source-entry 580 /tet:connectivity-matrices/tet:connectivity-matrix 581 /tet:from/tet:label-restrictions 582 /tet:label-restriction/tet:label-start/tet:te-label 583 /tet:technology: 584 +--:(wson) 585 +--ro (grid-type)? 586 +--:(dwdm) 587 | +--ro dwdm-n? l0-types:dwdm-n 588 +--:(cwdm) 589 +--ro cwdm-n? l0-types:cwdm-n 590 augment /nw:networks/nw:network/nw:node/tet:te 591 /tet:information-source-entry 592 /tet:connectivity-matrices/tet:connectivity-matrix 593 /tet:from/tet:label-restrictions 594 /tet:label-restriction/tet:label-end/tet:te-label 595 /tet:technology: 596 +--:(wson) 597 +--ro (grid-type)? 598 +--:(dwdm) 599 | +--ro dwdm-n? l0-types:dwdm-n 600 +--:(cwdm) 601 +--ro cwdm-n? l0-types:cwdm-n 602 augment /nw:networks/nw:network/nw:node/tet:te 603 /tet:information-source-entry 604 /tet:connectivity-matrices/tet:connectivity-matrix 605 /tet:from/tet:label-restrictions 606 /tet:label-restriction/tet:label-step/tet:technology: 607 +--:(wson) 608 +--ro (l0-grid-type)? 609 +--:(dwdm) 610 | +--ro wson-dwdm-channel-spacing? identityref 611 +--:(cwdm) 612 +--ro wson-cwdm-channel-spacing? identityref 613 augment /nw:networks/nw:network/nw:node/tet:te 614 /tet:information-source-entry 615 /tet:connectivity-matrices/tet:connectivity-matrix 616 /tet:to/tet:label-restrictions/tet:label-restriction: 617 +--ro grid-type? identityref 618 +--ro priority? uint8 619 augment /nw:networks/nw:network/nw:node/tet:te 620 /tet:information-source-entry 621 /tet:connectivity-matrices/tet:connectivity-matrix 622 /tet:to/tet:label-restrictions/tet:label-restriction 623 /tet:label-start/tet:te-label/tet:technology: 624 +--:(wson) 625 +--ro (grid-type)? 626 +--:(dwdm) 627 | +--ro dwdm-n? l0-types:dwdm-n 628 +--:(cwdm) 629 +--ro cwdm-n? l0-types:cwdm-n 630 augment /nw:networks/nw:network/nw:node/tet:te 631 /tet:information-source-entry 632 /tet:connectivity-matrices/tet:connectivity-matrix 633 /tet:to/tet:label-restrictions/tet:label-restriction 634 /tet:label-end/tet:te-label/tet:technology: 635 +--:(wson) 636 +--ro (grid-type)? 637 +--:(dwdm) 638 | +--ro dwdm-n? l0-types:dwdm-n 639 +--:(cwdm) 640 +--ro cwdm-n? l0-types:cwdm-n 641 augment /nw:networks/nw:network/nw:node/tet:te 642 /tet:information-source-entry 643 /tet:connectivity-matrices/tet:connectivity-matrix 644 /tet:to/tet:label-restrictions/tet:label-restriction 645 /tet:label-step/tet:technology: 646 +--:(wson) 647 +--ro (l0-grid-type)? 648 +--:(dwdm) 649 | +--ro wson-dwdm-channel-spacing? identityref 650 +--:(cwdm) 651 +--ro wson-cwdm-channel-spacing? identityref 652 augment /nw:networks/nw:network/nw:node/tet:te 653 /tet:information-source-entry 654 /tet:connectivity-matrices/tet:connectivity-matrix 655 /tet:underlay/tet:primary-path/tet:path-element 656 /tet:type/tet:label/tet:label-hop/tet:te-label 657 /tet:technology: 658 +--:(wson) 659 +--ro (grid-type)? 660 +--:(dwdm) 661 | +--ro (single-or-super-channel)? 662 | +--:(single) 663 | | +--ro dwdm-n? l0-types:dwdm-n 664 | +--:(super) 665 | +--ro subcarrier-dwdm-n* l0-types:dwdm-n 666 +--:(cwdm) 667 +--ro cwdm-n? l0-types:cwdm-n 669 augment /nw:networks/nw:network/nw:node/tet:te 670 /tet:information-source-entry 671 /tet:connectivity-matrices/tet:connectivity-matrix 672 /tet:underlay/tet:backup-path/tet:path-element 673 /tet:type/tet:label/tet:label-hop/tet:te-label 674 /tet:technology: 675 +--:(wson) 676 +--ro (grid-type)? 677 +--:(dwdm) 678 | +--ro (single-or-super-channel)? 679 | +--:(single) 680 | | +--ro dwdm-n? l0-types:dwdm-n 681 | +--:(super) 682 | +--ro subcarrier-dwdm-n* l0-types:dwdm-n 683 +--:(cwdm) 684 +--ro cwdm-n? l0-types:cwdm-n 685 augment /nw:networks/nw:network/nw:node/tet:te 686 /tet:information-source-entry 687 /tet:connectivity-matrices/tet:connectivity-matrix 688 /tet:optimizations/tet:algorithm/tet:metric 689 /tet:optimization-metric 690 /tet:explicit-route-exclude-objects 691 /tet:route-object-exclude-object/tet:type/tet:label 692 /tet:label-hop/tet:te-label/tet:technology: 693 +--:(wson) 694 +--ro (grid-type)? 695 +--:(dwdm) 696 | +--ro (single-or-super-channel)? 697 | +--:(single) 698 | | +--ro dwdm-n? l0-types:dwdm-n 699 | +--:(super) 700 | +--ro subcarrier-dwdm-n* l0-types:dwdm-n 701 +--:(cwdm) 702 +--ro cwdm-n? l0-types:cwdm-n 703 augment /nw:networks/nw:network/nw:node/tet:te 704 /tet:information-source-entry 705 /tet:connectivity-matrices/tet:connectivity-matrix 706 /tet:optimizations/tet:algorithm/tet:metric 707 /tet:optimization-metric 708 /tet:explicit-route-include-objects 709 /tet:route-object-include-object/tet:type/tet:label 710 /tet:label-hop/tet:te-label/tet:technology: 711 +--:(wson) 712 +--ro (grid-type)? 713 +--:(dwdm) 714 | +--ro (single-or-super-channel)? 715 | +--:(single) 716 | | +--ro dwdm-n? l0-types:dwdm-n 717 | +--:(super) 718 | +--ro subcarrier-dwdm-n* l0-types:dwdm-n 719 +--:(cwdm) 720 +--ro cwdm-n? l0-types:cwdm-n 721 augment /nw:networks/nw:network/nw:node/tet:te 722 /tet:information-source-entry 723 /tet:connectivity-matrices/tet:connectivity-matrix 724 /tet:path-properties/tet:path-route-objects 725 /tet:path-route-object/tet:type/tet:label 726 /tet:label-hop/tet:te-label/tet:technology: 727 +--:(wson) 728 +--ro (grid-type)? 729 +--:(dwdm) 730 | +--ro (single-or-super-channel)? 731 | +--:(single) 732 | | +--ro dwdm-n? l0-types:dwdm-n 733 | +--:(super) 734 | +--ro subcarrier-dwdm-n* l0-types:dwdm-n 735 +--:(cwdm) 736 +--ro cwdm-n? l0-types:cwdm-n 737 augment /nw:networks/nw:network/nw:node/tet:te 738 /tet:tunnel-termination-point 739 /tet:local-link-connectivities/tet:label-restrictions 740 /tet:label-restriction: 741 +--rw grid-type? identityref 742 +--rw priority? uint8 743 augment /nw:networks/nw:network/nw:node/tet:te 744 /tet:tunnel-termination-point 745 /tet:local-link-connectivities/tet:label-restrictions 746 /tet:label-restriction/tet:label-start/tet:te-label 747 /tet:technology: 748 +--:(wson) 749 +--rw (grid-type)? 750 +--:(dwdm) 751 | +--rw dwdm-n? l0-types:dwdm-n 752 +--:(cwdm) 753 +--rw cwdm-n? l0-types:cwdm-n 754 augment /nw:networks/nw:network/nw:node/tet:te 755 /tet:tunnel-termination-point 756 /tet:local-link-connectivities/tet:label-restrictions 757 /tet:label-restriction/tet:label-end/tet:te-label 758 /tet:technology: 759 +--:(wson) 760 +--rw (grid-type)? 761 +--:(dwdm) 762 | +--rw dwdm-n? l0-types:dwdm-n 763 +--:(cwdm) 764 +--rw cwdm-n? l0-types:cwdm-n 766 augment /nw:networks/nw:network/nw:node/tet:te 767 /tet:tunnel-termination-point 768 /tet:local-link-connectivities/tet:label-restrictions 769 /tet:label-restriction/tet:label-step/tet:technology: 770 +--:(wson) 771 +--rw (l0-grid-type)? 772 +--:(dwdm) 773 | +--rw wson-dwdm-channel-spacing? identityref 774 +--:(cwdm) 775 +--rw wson-cwdm-channel-spacing? identityref 776 augment /nw:networks/nw:network/nw:node/tet:te 777 /tet:tunnel-termination-point 778 /tet:local-link-connectivities/tet:underlay 779 /tet:primary-path/tet:path-element/tet:type/tet:label 780 /tet:label-hop/tet:te-label/tet:technology: 781 +--:(wson) 782 +--rw (grid-type)? 783 +--:(dwdm) 784 | +--rw (single-or-super-channel)? 785 | +--:(single) 786 | | +--rw dwdm-n? l0-types:dwdm-n 787 | +--:(super) 788 | +--rw subcarrier-dwdm-n* l0-types:dwdm-n 789 +--:(cwdm) 790 +--rw cwdm-n? l0-types:cwdm-n 791 augment /nw:networks/nw:network/nw:node/tet:te 792 /tet:tunnel-termination-point 793 /tet:local-link-connectivities/tet:underlay 794 /tet:backup-path/tet:path-element/tet:type/tet:label 795 /tet:label-hop/tet:te-label/tet:technology: 796 +--:(wson) 797 +--rw (grid-type)? 798 +--:(dwdm) 799 | +--rw (single-or-super-channel)? 800 | +--:(single) 801 | | +--rw dwdm-n? l0-types:dwdm-n 802 | +--:(super) 803 | +--rw subcarrier-dwdm-n* l0-types:dwdm-n 804 +--:(cwdm) 805 +--rw cwdm-n? l0-types:cwdm-n 806 augment /nw:networks/nw:network/nw:node/tet:te 807 /tet:tunnel-termination-point 808 /tet:local-link-connectivities/tet:optimizations 809 /tet:algorithm/tet:metric/tet:optimization-metric 810 /tet:explicit-route-exclude-objects 811 /tet:route-object-exclude-object/tet:type/tet:label 812 /tet:label-hop/tet:te-label/tet:technology: 813 +--:(wson) 814 +--rw (grid-type)? 815 +--:(dwdm) 816 | +--rw (single-or-super-channel)? 817 | +--:(single) 818 | | +--rw dwdm-n? l0-types:dwdm-n 819 | +--:(super) 820 | +--rw subcarrier-dwdm-n* l0-types:dwdm-n 821 +--:(cwdm) 822 +--rw cwdm-n? l0-types:cwdm-n 823 augment /nw:networks/nw:network/nw:node/tet:te 824 /tet:tunnel-termination-point 825 /tet:local-link-connectivities/tet:optimizations 826 /tet:algorithm/tet:metric/tet:optimization-metric 827 /tet:explicit-route-include-objects 828 /tet:route-object-include-object/tet:type/tet:label 829 /tet:label-hop/tet:te-label/tet:technology: 830 +--:(wson) 831 +--rw (grid-type)? 832 +--:(dwdm) 833 | +--rw (single-or-super-channel)? 834 | +--:(single) 835 | | +--rw dwdm-n? l0-types:dwdm-n 836 | +--:(super) 837 | +--rw subcarrier-dwdm-n* l0-types:dwdm-n 838 +--:(cwdm) 839 +--rw cwdm-n? l0-types:cwdm-n 840 augment /nw:networks/nw:network/nw:node/tet:te 841 /tet:tunnel-termination-point 842 /tet:local-link-connectivities/tet:path-properties 843 /tet:path-route-objects/tet:path-route-object 844 /tet:type/tet:label/tet:label-hop/tet:te-label 845 /tet:technology: 846 +--:(wson) 847 +--ro (grid-type)? 848 +--:(dwdm) 849 | +--ro (single-or-super-channel)? 850 | +--:(single) 851 | | +--ro dwdm-n? l0-types:dwdm-n 852 | +--:(super) 853 | +--ro subcarrier-dwdm-n* l0-types:dwdm-n 854 +--:(cwdm) 855 +--ro cwdm-n? l0-types:cwdm-n 856 augment /nw:networks/nw:network/nw:node/tet:te 857 /tet:tunnel-termination-point 858 /tet:local-link-connectivities 859 /tet:local-link-connectivity/tet:label-restrictions 860 /tet:label-restriction: 861 +--rw grid-type? identityref 862 +--rw priority? uint8 863 augment /nw:networks/nw:network/nw:node/tet:te 864 /tet:tunnel-termination-point 865 /tet:local-link-connectivities 866 /tet:local-link-connectivity/tet:label-restrictions 867 /tet:label-restriction/tet:label-start/tet:te-label 868 /tet:technology: 869 +--:(wson) 870 +--rw (grid-type)? 871 +--:(dwdm) 872 | +--rw dwdm-n? l0-types:dwdm-n 873 +--:(cwdm) 874 +--rw cwdm-n? l0-types:cwdm-n 875 augment /nw:networks/nw:network/nw:node/tet:te 876 /tet:tunnel-termination-point 877 /tet:local-link-connectivities 878 /tet:local-link-connectivity/tet:label-restrictions 879 /tet:label-restriction/tet:label-end/tet:te-label 880 /tet:technology: 881 +--:(wson) 882 +--rw (grid-type)? 883 +--:(dwdm) 884 | +--rw dwdm-n? l0-types:dwdm-n 885 +--:(cwdm) 886 +--rw cwdm-n? l0-types:cwdm-n 887 augment /nw:networks/nw:network/nw:node/tet:te 888 /tet:tunnel-termination-point 889 /tet:local-link-connectivities 890 /tet:local-link-connectivity/tet:label-restrictions 891 /tet:label-restriction/tet:label-step/tet:technology: 892 +--:(wson) 893 +--rw (l0-grid-type)? 894 +--:(dwdm) 895 | +--rw wson-dwdm-channel-spacing? identityref 896 +--:(cwdm) 897 +--rw wson-cwdm-channel-spacing? identityref 898 augment /nw:networks/nw:network/nw:node/tet:te 899 /tet:tunnel-termination-point 900 /tet:local-link-connectivities 901 /tet:local-link-connectivity/tet:underlay 902 /tet:primary-path/tet:path-element/tet:type/tet:label 903 /tet:label-hop/tet:te-label/tet:technology: 904 +--:(wson) 905 +--rw (grid-type)? 906 +--:(dwdm) 907 | +--rw (single-or-super-channel)? 908 | +--:(single) 909 | | +--rw dwdm-n? l0-types:dwdm-n 910 | +--:(super) 911 | +--rw subcarrier-dwdm-n* l0-types:dwdm-n 912 +--:(cwdm) 913 +--rw cwdm-n? l0-types:cwdm-n 914 augment /nw:networks/nw:network/nw:node/tet:te 915 /tet:tunnel-termination-point 916 /tet:local-link-connectivities 917 /tet:local-link-connectivity/tet:underlay 918 /tet:backup-path/tet:path-element/tet:type/tet:label 919 /tet:label-hop/tet:te-label/tet:technology: 920 +--:(wson) 921 +--rw (grid-type)? 922 +--:(dwdm) 923 | +--rw (single-or-super-channel)? 924 | +--:(single) 925 | | +--rw dwdm-n? l0-types:dwdm-n 926 | +--:(super) 927 | +--rw subcarrier-dwdm-n* l0-types:dwdm-n 928 +--:(cwdm) 929 +--rw cwdm-n? l0-types:cwdm-n 930 augment /nw:networks/nw:network/nw:node/tet:te 931 /tet:tunnel-termination-point 932 /tet:local-link-connectivities 933 /tet:local-link-connectivity/tet:optimizations 934 /tet:algorithm/tet:metric/tet:optimization-metric 935 /tet:explicit-route-exclude-objects 936 /tet:route-object-exclude-object/tet:type/tet:label 937 /tet:label-hop/tet:te-label/tet:technology: 938 +--:(wson) 939 +--rw (grid-type)? 940 +--:(dwdm) 941 | +--rw (single-or-super-channel)? 942 | +--:(single) 943 | | +--rw dwdm-n? l0-types:dwdm-n 944 | +--:(super) 945 | +--rw subcarrier-dwdm-n* l0-types:dwdm-n 946 +--:(cwdm) 947 +--rw cwdm-n? l0-types:cwdm-n 948 augment /nw:networks/nw:network/nw:node/tet:te 949 /tet:tunnel-termination-point 950 /tet:local-link-connectivities 951 /tet:local-link-connectivity/tet:optimizations 952 /tet:algorithm/tet:metric/tet:optimization-metric 953 /tet:explicit-route-include-objects 954 /tet:route-object-include-object/tet:type/tet:label 955 /tet:label-hop/tet:te-label/tet:technology: 956 +--:(wson) 957 +--rw (grid-type)? 958 +--:(dwdm) 959 | +--rw (single-or-super-channel)? 960 | +--:(single) 961 | | +--rw dwdm-n? l0-types:dwdm-n 962 | +--:(super) 963 | +--rw subcarrier-dwdm-n* l0-types:dwdm-n 964 +--:(cwdm) 965 +--rw cwdm-n? l0-types:cwdm-n 966 augment /nw:networks/nw:network/nw:node/tet:te 967 /tet:tunnel-termination-point 968 /tet:local-link-connectivities 969 /tet:local-link-connectivity/tet:path-properties 970 /tet:path-route-objects/tet:path-route-object 971 /tet:type/tet:label/tet:label-hop/tet:te-label 972 /tet:technology: 973 +--:(wson) 974 +--ro (grid-type)? 975 +--:(dwdm) 976 | +--ro (single-or-super-channel)? 977 | +--:(single) 978 | | +--ro dwdm-n? l0-types:dwdm-n 979 | +--:(super) 980 | +--ro subcarrier-dwdm-n* l0-types:dwdm-n 981 +--:(cwdm) 982 +--ro cwdm-n? l0-types:cwdm-n 983 augment /nw:networks/nw:network/nt:link/tet:te 984 /tet:te-link-attributes/tet:underlay/tet:primary-path 985 /tet:path-element/tet:type/tet:label/tet:label-hop 986 /tet:te-label/tet:technology: 987 +--:(wson) 988 +--rw (grid-type)? 989 +--:(dwdm) 990 | +--rw (single-or-super-channel)? 991 | +--:(single) 992 | | +--rw dwdm-n? l0-types:dwdm-n 993 | +--:(super) 994 | +--rw subcarrier-dwdm-n* l0-types:dwdm-n 995 +--:(cwdm) 996 +--rw cwdm-n? l0-types:cwdm-n 997 augment /nw:networks/nw:network/nt:link/tet:te 998 /tet:te-link-attributes/tet:underlay/tet:backup-path 999 /tet:path-element/tet:type/tet:label/tet:label-hop 1000 /tet:te-label/tet:technology: 1001 +--:(wson) 1002 +--rw (grid-type)? 1003 +--:(dwdm) 1004 | +--rw (single-or-super-channel)? 1005 | +--:(single) 1006 | | +--rw dwdm-n? l0-types:dwdm-n 1007 | +--:(super) 1008 | +--rw subcarrier-dwdm-n* l0-types:dwdm-n 1009 +--:(cwdm) 1010 +--rw cwdm-n? l0-types:cwdm-n 1011 augment /nw:networks/nw:network/nt:link/tet:te 1012 /tet:te-link-attributes/tet:label-restrictions 1013 /tet:label-restriction: 1014 +--rw grid-type? identityref 1015 +--rw priority? uint8 1016 augment /nw:networks/nw:network/nt:link/tet:te 1017 /tet:te-link-attributes/tet:label-restrictions 1018 /tet:label-restriction/tet:label-start/tet:te-label 1019 /tet:technology: 1020 +--:(wson) 1021 +--rw (grid-type)? 1022 +--:(dwdm) 1023 | +--rw dwdm-n? l0-types:dwdm-n 1024 +--:(cwdm) 1025 +--rw cwdm-n? l0-types:cwdm-n 1026 augment /nw:networks/nw:network/nt:link/tet:te 1027 /tet:te-link-attributes/tet:label-restrictions 1028 /tet:label-restriction/tet:label-end/tet:te-label 1029 /tet:technology: 1030 +--:(wson) 1031 +--rw (grid-type)? 1032 +--:(dwdm) 1033 | +--rw dwdm-n? l0-types:dwdm-n 1034 +--:(cwdm) 1035 +--rw cwdm-n? l0-types:cwdm-n 1036 augment /nw:networks/nw:network/nt:link/tet:te 1037 /tet:te-link-attributes/tet:label-restrictions 1038 /tet:label-restriction/tet:label-step/tet:technology: 1039 +--:(wson) 1040 +--rw (l0-grid-type)? 1041 +--:(dwdm) 1042 | +--rw wson-dwdm-channel-spacing? identityref 1043 +--:(cwdm) 1044 +--rw wson-cwdm-channel-spacing? identityref 1045 augment /nw:networks/nw:network/nt:link/tet:te 1046 /tet:information-source-entry/tet:label-restrictions 1047 /tet:label-restriction: 1048 +--ro grid-type? identityref 1049 +--ro priority? uint8 1050 augment /nw:networks/nw:network/nt:link/tet:te 1051 /tet:information-source-entry/tet:label-restrictions 1052 /tet:label-restriction/tet:label-start/tet:te-label 1053 /tet:technology: 1055 +--:(wson) 1056 +--ro (grid-type)? 1057 +--:(dwdm) 1058 | +--ro dwdm-n? l0-types:dwdm-n 1059 +--:(cwdm) 1060 +--ro cwdm-n? l0-types:cwdm-n 1061 augment /nw:networks/nw:network/nt:link/tet:te 1062 /tet:information-source-entry/tet:label-restrictions 1063 /tet:label-restriction/tet:label-end/tet:te-label 1064 /tet:technology: 1065 +--:(wson) 1066 +--ro (grid-type)? 1067 +--:(dwdm) 1068 | +--ro dwdm-n? l0-types:dwdm-n 1069 +--:(cwdm) 1070 +--ro cwdm-n? l0-types:cwdm-n 1071 augment /nw:networks/nw:network/nt:link/tet:te 1072 /tet:information-source-entry/tet:label-restrictions 1073 /tet:label-restriction/tet:label-step/tet:technology: 1074 +--:(wson) 1075 +--ro (l0-grid-type)? 1076 +--:(dwdm) 1077 | +--ro wson-dwdm-channel-spacing? identityref 1078 +--:(cwdm) 1079 +--ro wson-cwdm-channel-spacing? identityref 1080 augment /nw:networks/tet:te/tet:templates/tet:link-template 1081 /tet:te-link-attributes/tet:underlay/tet:primary-path 1082 /tet:path-element/tet:type/tet:label/tet:label-hop 1083 /tet:te-label/tet:technology: 1084 +--:(wson) 1085 +--rw (grid-type)? 1086 +--:(dwdm) 1087 | +--rw (single-or-super-channel)? 1088 | +--:(single) 1089 | | +--rw dwdm-n? l0-types:dwdm-n 1090 | +--:(super) 1091 | +--rw subcarrier-dwdm-n* l0-types:dwdm-n 1092 +--:(cwdm) 1093 +--rw cwdm-n? l0-types:cwdm-n 1094 augment /nw:networks/tet:te/tet:templates/tet:link-template 1095 /tet:te-link-attributes/tet:underlay/tet:backup-path 1096 /tet:path-element/tet:type/tet:label/tet:label-hop 1097 /tet:te-label/tet:technology: 1098 +--:(wson) 1099 +--rw (grid-type)? 1100 +--:(dwdm) 1101 | +--rw (single-or-super-channel)? 1102 | +--:(single) 1103 | | +--rw dwdm-n? l0-types:dwdm-n 1104 | +--:(super) 1105 | +--rw subcarrier-dwdm-n* l0-types:dwdm-n 1106 +--:(cwdm) 1107 +--rw cwdm-n? l0-types:cwdm-n 1108 augment /nw:networks/tet:te/tet:templates/tet:link-template 1109 /tet:te-link-attributes/tet:label-restrictions 1110 /tet:label-restriction: 1111 +--rw grid-type? identityref 1112 +--rw priority? uint8 1113 augment /nw:networks/tet:te/tet:templates/tet:link-template 1114 /tet:te-link-attributes/tet:label-restrictions 1115 /tet:label-restriction/tet:label-start/tet:te-label 1116 /tet:technology: 1117 +--:(wson) 1118 +--rw (grid-type)? 1119 +--:(dwdm) 1120 | +--rw dwdm-n? l0-types:dwdm-n 1121 +--:(cwdm) 1122 +--rw cwdm-n? l0-types:cwdm-n 1123 augment /nw:networks/tet:te/tet:templates/tet:link-template 1124 /tet:te-link-attributes/tet:label-restrictions 1125 /tet:label-restriction/tet:label-end/tet:te-label 1126 /tet:technology: 1127 +--:(wson) 1128 +--rw (grid-type)? 1129 +--:(dwdm) 1130 | +--rw dwdm-n? l0-types:dwdm-n 1131 +--:(cwdm) 1132 +--rw cwdm-n? l0-types:cwdm-n 1133 augment /nw:networks/tet:te/tet:templates/tet:link-template 1134 /tet:te-link-attributes/tet:label-restrictions 1135 /tet:label-restriction/tet:label-step/tet:technology: 1136 +--:(wson) 1137 +--rw (l0-grid-type)? 1138 +--:(dwdm) 1139 | +--rw wson-dwdm-channel-spacing? identityref 1140 +--:(cwdm) 1141 +--rw wson-cwdm-channel-spacing? identityref 1143 3. The YANG Code for WSON topology 1145 file "ietf-wson-topology@2020-05-08.yang" 1146 module ietf-wson-topology { 1147 yang-version 1.1; 1149 namespace "urn:ietf:params:xml:ns:yang:ietf-wson-topology"; 1151 prefix "wson"; 1153 import ietf-network { 1154 prefix "nw"; 1155 reference 1156 "RFC 8345: A YANG Data Model for Network Topologies"; 1157 } 1159 import ietf-network-topology { 1160 prefix "nt"; 1161 reference 1162 "RFC 8345: A YANG Data Model for Network Topologies"; 1163 } 1165 import ietf-te-topology { 1166 prefix "tet"; 1167 reference 1168 "RFC YYYY: YANG Data Model for 1169 Traffic Engineering (TE) Topologies"; 1170 } 1172 /* Note: The RFC Editor will replace YYYY with the number assigned to 1173 the RFC once draft-ietf-teas-yang-te-topo becomes an RFC.*/ 1175 import ietf-layer0-types { 1176 prefix "l0-types"; 1177 reference 1178 "RFC XXXX: A YANG Data Model for WSON 1179 (Wavelength Switched Optical Networks)"; 1180 } 1182 /* Note: The RFC Editor will replace XXXX with the number assigned to 1183 the RFC once draft-ietf-ccamp-layer0-types becomes an RFC.*/ 1185 organization 1186 "IETF CCAMP Working Group"; 1188 contact 1189 "Editor: Haomian Zheng 1190 Editor: Young Lee 1191 Editor: Aihua Guo 1192 Editor: Victor Lopez 1193 Editor: Daniel King "; 1195 description 1196 "This module provides a YANG data model for the routing and 1197 wavelength assignment (RWA) Traffic Engineering (TE) 1198 topology in wavelength switched optical networks (WSONs). 1199 The YANG model described in this document is a WSON 1200 technology-specific YANG model augmenting the generic TE 1201 topology module (ietf-te-topology) based on the information 1202 model developed in RFC 7446 and the two encoding documents 1203 RFC 7579. 1205 Copyright (c) 2020 IETF Trust and the persons identified 1206 as authors of the code. All rights reserved. 1208 Redistribution and use in source and binary forms, with 1209 or without modification, is permitted pursuant to, and 1210 subject to the license terms contained in, the Simplified 1211 BSD License set forth in Section 4.c of the IETF Trust's 1212 Legal Provisions Relating to IETF Documents 1213 (http://trustee.ietf.org/license-info). 1215 This version of this YANG module is part of RFC XXXX; see 1216 the RFC itself for full legal notices."; 1218 revision 2020-05-08 { 1219 description 1220 "Initial Version"; 1222 reference 1223 "RFC XXXX: A YANG Data Model for WSON (Wavelength Switched 1224 Optical Networks)"; 1225 } 1227 /* 1228 * Groupings 1229 */ 1231 grouping wson-node-attributes { 1232 description "WSON node attributes"; 1233 container wson-node { 1234 presence "The TE node is a WSON node."; 1235 description "WSON node attributes"; 1236 leaf is-reconfigurable-node { 1237 type boolean; 1238 default true; 1239 description 1240 "Indicates whether the WSON node is reconfigurable: 1241 - true: the node is reconfigurable 1242 (e.g., it is representing a ROADM node); 1244 - false: the node is not reconfigurable 1245 (e.g., it is representing a FOADM node)."; 1246 } 1247 } 1248 } 1250 /* 1251 * Data nodes 1252 */ 1254 augment "/nw:networks/nw:network/nw:network-types" 1255 + "/tet:te-topology" { 1256 description "wson-topology augmented"; 1257 container wson-topology { 1258 presence "indicates a topology of WSON"; 1259 description 1260 "Container to identify WSON topology type"; 1261 } 1262 } 1264 augment "/nw:networks/nw:network/nw:node/tet:te" 1265 + "/tet:te-node-attributes" { 1266 when "/nw:networks/nw:network/nw:network-types" 1267 +"/tet:te-topology/wson:wson-topology" { 1268 description "This augment is only valid for WSON"; 1269 } 1270 description "WSON Node augmentation"; 1271 uses wson-node-attributes; 1272 } 1274 /* 1275 * Augment TE label. 1276 */ 1278 augment "/nw:networks/nw:network/nw:node/tet:te/" 1279 + "tet:te-node-attributes/tet:connectivity-matrices/" 1280 + "tet:label-restrictions/tet:label-restriction" { 1281 when "../../../../../../nw:network-types/tet:te-topology/" 1282 + "wson:wson-topology" { 1283 description "Augment WSON TE label"; 1284 } 1285 description 1286 "Augment WSON label restrictions of connectivity-matrices"; 1287 uses l0-types:l0-label-range-info; 1288 } 1290 augment "/nw:networks/nw:network/nw:node/tet:te/" 1291 + "tet:te-node-attributes/tet:connectivity-matrices/" 1292 + "tet:label-restrictions/tet:label-restriction/" 1293 + "tet:label-start/" 1294 + "tet:te-label/tet:technology" { 1295 when "../../../../../../../../nw:network-types/tet:te-topology/" 1296 + "wson:wson-topology" { 1297 description "Augment WSON TE label"; 1298 } 1299 description 1300 "Augment WSON label restrictions start of 1301 connectivity-matrices"; 1302 case wson { 1303 uses l0-types:wson-label-start-end; 1304 } 1305 } 1307 augment "/nw:networks/nw:network/nw:node/tet:te/" 1308 + "tet:te-node-attributes/tet:connectivity-matrices/" 1309 + "tet:label-restrictions/" 1310 + "tet:label-restriction/tet:label-end/" 1311 + "tet:te-label/tet:technology" { 1312 when "../../../../../../../../" 1313 + "nw:network-types/tet:te-topology/" 1314 + "wson:wson-topology" { 1315 description "Augment WSON TE label"; 1316 } 1317 description 1318 "Augment WSON label restrictions end of 1319 connectivity-matrices"; 1320 case wson { 1321 uses l0-types:wson-label-start-end; 1322 } 1323 } 1324 augment "/nw:networks/nw:network/nw:node/tet:te/" 1325 + "tet:te-node-attributes/tet:connectivity-matrices/" 1326 + "tet:label-restrictions/" 1327 + "tet:label-restriction/tet:label-step/" 1328 + "tet:technology" { 1329 when "../../../../../../../" 1330 + "nw:network-types/tet:te-topology/" 1331 + "wson:wson-topology" { 1332 description "Augment WSON TE label"; 1333 } 1334 description 1335 "Augment WSON label restrictions step of 1336 connectivity-matrices"; 1337 case wson { 1338 uses l0-types:wson-label-step; 1339 } 1341 } 1342 augment "/nw:networks/nw:network/nw:node/tet:te/" 1343 + "tet:te-node-attributes/tet:connectivity-matrices/" 1344 + "tet:underlay/tet:primary-path/tet:path-element/" 1345 + "tet:type/tet:label/tet:label-hop/" 1346 + "tet:te-label/tet:technology" { 1347 when "../../../../../../../../../" 1348 + "nw:network-types/tet:te-topology/" 1349 + "wson:wson-topology" { 1350 description "Augment WSON TE label"; 1351 } 1352 description 1353 "Augment WSON label hop of underlay primary path of 1354 connectivity-matrices"; 1355 case wson { 1356 uses l0-types:wson-label-hop; 1357 } 1358 } 1360 augment "/nw:networks/nw:network/nw:node/tet:te/" 1361 + "tet:te-node-attributes/tet:connectivity-matrices/" 1362 + "tet:underlay/tet:backup-path/tet:path-element/" 1363 + "tet:type/tet:label/tet:label-hop/" 1364 + "tet:te-label/tet:technology" { 1365 when "../../../../../../../../../" 1366 + "nw:network-types/tet:te-topology/" 1367 + "wson:wson-topology" { 1368 description "Augment WSON TE label"; 1369 } 1370 description 1371 "Augment WSON label hop of underlay backup path of 1372 connectivity-matrices"; 1373 case wson { 1374 uses l0-types:wson-label-hop; 1375 } 1376 } 1378 augment "/nw:networks/nw:network/nw:node/tet:te/" 1379 + "tet:te-node-attributes/tet:connectivity-matrices/" 1380 + "tet:optimizations/tet:algorithm/tet:metric/" 1381 + "tet:optimization-metric/" 1382 + "tet:explicit-route-exclude-objects/" 1383 + "tet:route-object-exclude-object/" 1384 + "tet:type/tet:label/tet:label-hop/" 1385 + "tet:te-label/tet:technology" { 1386 when "../../../../../../../../../../" 1387 + "nw:network-types/tet:te-topology/" 1388 + "wson:wson-topology" { 1390 description "Augment WSON TE label"; 1391 } 1392 description 1393 "Augment WSON label hop of route-exclude of 1394 connectivity-matrices"; 1395 case wson { 1396 uses l0-types:wson-label-hop; 1397 } 1398 } 1400 augment "/nw:networks/nw:network/nw:node/tet:te/" 1401 + "tet:te-node-attributes/tet:connectivity-matrices/" 1402 + "tet:optimizations/tet:algorithm/tet:metric/" 1403 + "tet:optimization-metric/" 1404 + "tet:explicit-route-include-objects/" 1405 + "tet:route-object-include-object/" 1406 + "tet:type/tet:label/tet:label-hop/" 1407 + "tet:te-label/tet:technology" { 1408 when "../../../../../../../../../../" 1409 + "nw:network-types/tet:te-topology/" 1410 + "wson:wson-topology" { 1411 description "Augment WSON TE label"; 1412 } 1413 description 1414 "Augment WSON label hop of route-include of 1415 connectivity-matrices"; 1416 case wson { 1417 uses l0-types:wson-label-hop; 1418 } 1419 } 1421 augment "/nw:networks/nw:network/nw:node/tet:te/" 1422 + "tet:te-node-attributes/tet:connectivity-matrices/" 1423 + "tet:path-properties/tet:path-route-objects/" 1424 + "tet:path-route-object/tet:type/tet:label/tet:label-hop/" 1425 + "tet:te-label/tet:technology"{ 1426 when "../../../../../../../../../" 1427 + "nw:network-types/tet:te-topology/" 1428 + "wson:wson-topology" { 1429 description "Augment WSON TE label"; 1430 } 1431 description 1432 "Augment WSON label hop of path-route of 1433 connectivity-matrices"; 1434 case wson { 1435 uses l0-types:wson-label-hop; 1436 } 1437 } 1438 augment "/nw:networks/nw:network/nw:node/tet:te/" 1439 + "tet:te-node-attributes/tet:connectivity-matrices/" 1440 + "tet:connectivity-matrix/tet:from/" 1441 + "tet:label-restrictions/tet:label-restriction" { 1442 when "../../../../../../../../" 1443 + "nw:network-types/tet:te-topology/" 1444 + "wson:wson-topology" { 1445 description "Augment WSON TE label"; 1446 } 1447 description 1448 "Augment ingress WSON label restrictions of 1449 connectivity-matrix"; 1450 uses l0-types:l0-label-range-info; 1451 } 1453 augment "/nw:networks/nw:network/nw:node/tet:te/" 1454 + "tet:te-node-attributes/tet:connectivity-matrices/" 1455 + "tet:connectivity-matrix/tet:from/" 1456 + "tet:label-restrictions/tet:label-restriction/" 1457 + "tet:label-start/" 1458 + "tet:te-label/tet:technology" { 1459 when "../../../../../../../../../../" 1460 + "nw:network-types/tet:te-topology/" 1461 + "wson:wson-topology" { 1462 description "Augment WSON TE label"; 1463 } 1464 description 1465 "Augment ingress WSON label restrictions start of 1466 connectivity-matrix "; 1467 case wson { 1468 uses l0-types:wson-label-start-end; 1469 } 1470 } 1472 augment "/nw:networks/nw:network/nw:node/tet:te/" 1473 + "tet:te-node-attributes/tet:connectivity-matrices/" 1474 + "tet:connectivity-matrix/tet:from/" 1475 + "tet:label-restrictions/tet:label-restriction/" 1476 + "tet:label-end/" 1477 + "tet:te-label/tet:technology" { 1478 when "../../../../../../../../../../" 1479 + "nw:network-types/tet:te-topology/" 1480 + "wson:wson-topology" { 1481 description "Augment WSON TE label"; 1482 } 1483 description 1484 "Augment ingress WSON label restrictions end of 1485 connectivity-matrix"; 1487 case wson { 1488 uses l0-types:wson-label-start-end; 1489 } 1490 } 1492 augment "/nw:networks/nw:network/nw:node/tet:te/" 1493 + "tet:te-node-attributes/tet:connectivity-matrices/" 1494 + "tet:connectivity-matrix/tet:from/" 1495 + "tet:label-restrictions/tet:label-restriction/" 1496 + "tet:label-step/" 1497 + "tet:technology" { 1498 when "../../../../../../../../../" 1499 + "nw:network-types/tet:te-topology/" 1500 + "wson:wson-topology" { 1501 description "Augment WSON TE label"; 1502 } 1503 description 1504 "Augment ingress WSON label restrictions step of 1505 connectivity-matrix"; 1506 case wson { 1507 uses l0-types:wson-label-step; 1508 } 1509 } 1511 augment "/nw:networks/nw:network/nw:node/tet:te/" 1512 + "tet:te-node-attributes/tet:connectivity-matrices/" 1513 + "tet:connectivity-matrix/tet:to/" 1514 + "tet:label-restrictions/tet:label-restriction" { 1515 when "../../../../../../../../" 1516 + "nw:network-types/tet:te-topology/" 1517 + "wson:wson-topology" { 1518 description "Augment WSON TE label"; 1519 } 1520 description 1521 "Augment egress WSON label restrictions of 1522 connectivity-matrix"; 1523 uses l0-types:l0-label-range-info; 1524 } 1526 augment "/nw:networks/nw:network/nw:node/tet:te/" 1527 + "tet:te-node-attributes/tet:connectivity-matrices/" 1528 + "tet:connectivity-matrix/tet:to/" 1529 + "tet:label-restrictions/tet:label-restriction/" 1530 + "tet:label-start/" 1531 + "tet:te-label/tet:technology" { 1532 when "../../../../../../../../../../" 1533 + "nw:network-types/tet:te-topology/" 1534 + "wson:wson-topology" { 1536 description "Augment WSON TE label"; 1537 } 1538 description 1539 "Augment egress WSON label restrictions start of 1540 connectivity-matrix"; 1541 case wson { 1542 uses l0-types:wson-label-start-end; 1543 } 1544 } 1546 augment "/nw:networks/nw:network/nw:node/tet:te/" 1547 + "tet:te-node-attributes/tet:connectivity-matrices/" 1548 + "tet:connectivity-matrix/tet:to/" 1549 + "tet:label-restrictions/tet:label-restriction/" 1550 + "tet:label-end/" 1551 + "tet:te-label/tet:technology" { 1552 when "../../../../../../../../../../" 1553 + "nw:network-types/tet:te-topology/" 1554 + "wson:wson-topology" { 1555 description "Augment WSON TE label"; 1556 } 1557 description 1558 "Augment egress WSON label restrictions end of 1559 connectivity-matrix"; 1560 case wson { 1561 uses l0-types:wson-label-start-end; 1562 } 1563 } 1565 augment "/nw:networks/nw:network/nw:node/tet:te/" 1566 + "tet:te-node-attributes/tet:connectivity-matrices/" 1567 + "tet:connectivity-matrix/tet:to/" 1568 + "tet:label-restrictions/tet:label-restriction/" 1569 + "tet:label-step/" 1570 + "tet:technology" { 1571 when "../../../../../../../../../" 1572 + "nw:network-types/tet:te-topology/" 1573 + "wson:wson-topology" { 1574 description "Augment WSON TE label"; 1575 } 1576 description 1577 "Augment egress WSON label restrictions step of 1578 connectivity-matrix"; 1579 case wson { 1580 uses l0-types:wson-label-step; 1581 } 1582 } 1583 augment "/nw:networks/nw:network/nw:node/tet:te/" 1584 + "tet:te-node-attributes/tet:connectivity-matrices/" 1585 + "tet:connectivity-matrix/" 1586 + "tet:underlay/tet:primary-path/tet:path-element/" 1587 + "tet:type/tet:label/tet:label-hop/" 1588 + "tet:te-label/tet:technology" { 1589 when "../../../../../../../../../../" 1590 + "nw:network-types/tet:te-topology/" 1591 + "wson:wson-topology" { 1592 description "Augment WSON TE label"; 1593 } 1594 description 1595 "Augment WSON label hop of underlay primary path of 1596 connectivity-matrix"; 1597 case wson { 1598 uses l0-types:wson-label-hop; 1599 } 1600 } 1602 augment "/nw:networks/nw:network/nw:node/tet:te/" 1603 + "tet:te-node-attributes/tet:connectivity-matrices/" 1604 + "tet:connectivity-matrix/" 1605 + "tet:underlay/tet:backup-path/tet:path-element/" 1606 + "tet:type/tet:label/tet:label-hop/" 1607 + "tet:te-label/tet:technology" { 1608 when "../../../../../../../../../../" 1609 + "nw:network-types/tet:te-topology/" 1610 + "wson:wson-topology" { 1611 description "Augment WSON TE label"; 1612 } 1613 description 1614 "Augment WSON label hop of underlay backup path of 1615 connectivity-matrix"; 1616 case wson { 1617 uses l0-types:wson-label-hop; 1618 } 1619 } 1620 augment "/nw:networks/nw:network/nw:node/tet:te/" 1621 + "tet:te-node-attributes/tet:connectivity-matrices/" 1622 + "tet:connectivity-matrix/tet:optimizations/" 1623 + "tet:algorithm/tet:metric/tet:optimization-metric/" 1624 + "tet:explicit-route-exclude-objects/" 1625 + "tet:route-object-exclude-object/tet:type/" 1626 + "tet:label/tet:label-hop/tet:te-label/tet:technology" { 1627 when "../../../../../../../../../../../" 1628 + "nw:network-types/tet:te-topology/" 1629 + "wson:wson-topology" { 1630 description "Augment WSON TE label"; 1632 } 1633 description 1634 "Augment WSON label hop of route-exclude of 1635 connectivity-matrix"; 1636 case wson { 1637 uses l0-types:wson-label-hop; 1638 } 1639 } 1641 augment "/nw:networks/nw:network/nw:node/tet:te/" 1642 + "tet:te-node-attributes/tet:connectivity-matrices/" 1643 + "tet:connectivity-matrix/tet:optimizations/" 1644 + "tet:algorithm/tet:metric/tet:optimization-metric/" 1645 + "tet:explicit-route-include-objects/" 1646 + "tet:route-object-include-object/tet:type/" 1647 + "tet:label/tet:label-hop/tet:te-label/tet:technology" { 1648 when "../../../../../../../../../../../" 1649 + "nw:network-types/tet:te-topology/" 1650 + "wson:wson-topology" { 1651 description "Augment WSON TE label"; 1652 } 1653 description 1654 "Augment WSON label hop of route-include of 1655 connectivity-matrix"; 1656 case wson { 1657 uses l0-types:wson-label-hop; 1658 } 1659 } 1661 augment "/nw:networks/nw:network/nw:node/tet:te/" 1662 + "tet:te-node-attributes/tet:connectivity-matrices/" 1663 + "tet:connectivity-matrix/" 1664 + "tet:path-properties/tet:path-route-objects/" 1665 + "tet:path-route-object/tet:type/" 1666 + "tet:label/tet:label-hop/tet:te-label/tet:technology" { 1667 when "../../../../../../../../../../" 1668 + "nw:network-types/tet:te-topology/" 1669 + "wson:wson-topology" { 1670 description "Augment WSON TE label"; 1671 } 1672 description 1673 "Augment WSON label hop of path-route of 1674 connectivity-matrix"; 1675 case wson { 1676 uses l0-types:wson-label-hop; 1677 } 1678 } 1679 augment "/nw:networks/nw:network/nw:node/tet:te/" 1680 + "tet:information-source-entry/" 1681 + "tet:connectivity-matrices/tet:label-restrictions/" 1682 + "tet:label-restriction" { 1683 when "../../../../../../nw:network-types/tet:te-topology/" 1684 + "wson:wson-topology" { 1685 description "Augment WSON TE label"; 1686 } 1687 description 1688 "Augment WSON label restrictions of connectivity-matrices 1689 information-source"; 1690 uses l0-types:l0-label-range-info; 1691 } 1693 augment "/nw:networks/nw:network/nw:node/tet:te/" 1694 + "tet:information-source-entry/" 1695 + "tet:connectivity-matrices/tet:label-restrictions/" 1696 + "tet:label-restriction/" 1697 + "tet:label-start/tet:te-label/tet:technology" { 1698 when "../../../../../../../../" 1699 + "nw:network-types/tet:te-topology/" 1700 + "wson:wson-topology" { 1701 description "Augment WSON TE label"; 1702 } 1703 description 1704 "Augment WSON label restrictions start of 1705 connectivity-matrices information-source"; 1706 case wson { 1707 uses l0-types:wson-label-start-end; 1708 } 1709 } 1711 augment "/nw:networks/nw:network/nw:node/tet:te/" 1712 + "tet:information-source-entry/" 1713 + "tet:connectivity-matrices/tet:label-restrictions/" 1714 + "tet:label-restriction/" 1715 + "tet:label-end/tet:te-label/tet:technology" { 1716 when "../../../../../../../../" 1717 + "nw:network-types/tet:te-topology/" 1718 + "wson:wson-topology" { 1719 description "Augment WSON TE label"; 1720 } 1721 description 1722 "Augment WSON label restrictions end of 1723 connectivity-matrices information-source"; 1724 case wson { 1725 uses l0-types:wson-label-start-end; 1726 } 1728 } 1730 augment "/nw:networks/nw:network/nw:node/tet:te/" 1731 + "tet:information-source-entry/" 1732 + "tet:connectivity-matrices/tet:label-restrictions/" 1733 + "tet:label-restriction/" 1734 + "tet:label-step/tet:technology" { 1735 when "../../../../../../../" 1736 + "nw:network-types/tet:te-topology/" 1737 + "wson:wson-topology" { 1738 description "Augment WSON TE label"; 1739 } 1740 description 1741 "Augment WSON label restrictions step of 1742 connectivity-matrices information-source"; 1743 case wson { 1744 uses l0-types:wson-label-step; 1745 } 1746 } 1748 augment "/nw:networks/nw:network/nw:node/tet:te/" 1749 + "tet:information-source-entry/tet:connectivity-matrices/" 1750 + "tet:underlay/tet:primary-path/tet:path-element/tet:type/" 1751 + "tet:label/tet:label-hop/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 WSON label hop of underlay primary path of 1759 connectivity-matrices information-source"; 1760 case wson { 1761 uses l0-types:wson-label-hop; 1762 } 1763 } 1765 augment "/nw:networks/nw:network/nw:node/tet:te/" 1766 + "tet:information-source-entry/tet:connectivity-matrices/" 1767 + "tet:underlay/tet:backup-path/tet:path-element/tet:type/" 1768 + "tet:label/tet:label-hop/tet:te-label/tet:technology" { 1769 when "../../../../../../../../../" 1770 + "nw:network-types/tet:te-topology/" 1771 + "wson:wson-topology" { 1772 description "Augment WSON TE label"; 1773 } 1774 description 1775 "Augment label hop of underlay backup path of 1776 connectivity-matrices information-source"; 1777 case wson { 1778 uses l0-types:wson-label-hop; 1779 } 1780 } 1782 augment "/nw:networks/nw:network/nw:node/tet:te/" 1783 + "tet:information-source-entry/tet:connectivity-matrices/" 1784 + "tet:optimizations/tet:algorithm/tet:metric/" 1785 + "tet:optimization-metric/" 1786 + "tet:explicit-route-exclude-objects/" 1787 + "tet:route-object-exclude-object/tet:type/" 1788 + "tet:label/tet:label-hop/tet:te-label/tet:technology" { 1789 when "../../../../../../../../../../" 1790 + "nw:network-types/tet:te-topology/" 1791 + "wson:wson-topology" { 1792 description "Augment WSON TE label"; 1793 } 1794 description 1795 "Augment WSON label hop of route-exclude of 1796 connectivity-matrices information-source"; 1797 case wson { 1798 uses l0-types:wson-label-hop; 1799 } 1800 } 1802 augment "/nw:networks/nw:network/nw:node/tet:te/" 1803 + "tet:information-source-entry/tet:connectivity-matrices/" 1804 + "tet:optimizations/tet:algorithm/tet:metric/" 1805 + "tet:optimization-metric/" 1806 + "tet:explicit-route-include-objects/" 1807 + "tet:route-object-include-object/tet:type/" 1808 + "tet:label/tet:label-hop/tet:te-label/tet:technology" { 1809 when "../../../../../../../../../../" 1810 + "nw:network-types/tet:te-topology/" 1811 + "wson:wson-topology" { 1812 description "Augment WSON TE label"; 1813 } 1814 description 1815 "Augment WSON label hop of route-include of 1816 connectivity-matrices information-source"; 1817 case wson { 1818 uses l0-types:wson-label-hop; 1819 } 1820 } 1822 augment "/nw:networks/nw:network/nw:node/tet:te/" 1823 + "tet:information-source-entry/tet:connectivity-matrices/" 1824 + "tet:path-properties/tet:path-route-objects/" 1825 + "tet:path-route-object/tet:type/" 1826 + "tet:label/tet:label-hop/tet:te-label/tet:technology" { 1827 when "../../../../../../../../../" 1828 + "nw:network-types/tet:te-topology/" 1829 + "wson:wson-topology" { 1830 description "Augment WSON TE label"; 1831 } 1832 description 1833 "Augment WSON label hop of path-route of connectivity-matrices 1834 information-source"; 1835 case wson { 1836 uses l0-types:wson-label-hop; 1837 } 1838 } 1840 augment "/nw:networks/nw:network/nw:node/tet:te/" 1841 + "tet:information-source-entry/tet:connectivity-matrices/" 1842 + "tet:connectivity-matrix/" 1843 + "tet:from/tet:label-restrictions/tet:label-restriction" { 1844 when "../../../../../../../../" 1845 + "nw:network-types/tet:te-topology/" 1846 + "wson:wson-topology" { 1847 description "Augment WSON TE label"; 1848 } 1849 description 1850 "Augment ingress WSON label restrictions of 1851 connectivity-matrix information-source"; 1852 uses l0-types:l0-label-range-info; 1853 } 1855 augment "/nw:networks/nw:network/nw:node/tet:te/" 1856 + "tet:information-source-entry/tet:connectivity-matrices/" 1857 + "tet:connectivity-matrix/" 1858 + "tet:from/tet:label-restrictions/" 1859 + "tet:label-restriction/" 1860 + "tet:label-start/tet:te-label/tet:technology" { 1861 when "../../../../../../../../../../" 1862 + "nw:network-types/tet:te-topology/" 1863 + "wson:wson-topology" { 1864 description "Augment WSON TE label"; 1865 } 1866 description 1867 "Augment ingress WSON label restrictions start of 1868 connectivity-matrix information-source"; 1869 case wson { 1870 uses l0-types:wson-label-start-end; 1871 } 1873 } 1874 augment "/nw:networks/nw:network/nw:node/tet:te/" 1875 + "tet:information-source-entry/tet:connectivity-matrices/" 1876 + "tet:connectivity-matrix/" 1877 + "tet:from/tet:label-restrictions/" 1878 + "tet:label-restriction/" 1879 + "tet:label-end/tet:te-label/tet:technology" { 1880 when "../../../../../../../../../../" 1881 + "nw:network-types/tet:te-topology/" 1882 + "wson:wson-topology" { 1883 description "Augment WSON TE label"; 1884 } 1885 description 1886 "Augment ingress WSON label restrictions end of 1887 connectivity-matrix information-source"; 1888 case wson { 1889 uses l0-types:wson-label-start-end; 1890 } 1891 } 1893 augment "/nw:networks/nw:network/nw:node/tet:te/" 1894 + "tet:information-source-entry/tet:connectivity-matrices/" 1895 + "tet:connectivity-matrix/" 1896 + "tet:from/tet:label-restrictions/" 1897 + "tet:label-restriction/" 1898 + "tet:label-step/tet:technology" { 1899 when "../../../../../../../../../" 1900 + "nw:network-types/tet:te-topology/" 1901 + "wson:wson-topology" { 1902 description "Augment WSON TE label"; 1903 } 1904 description 1905 "Augment ingress WSON label restrictions step of 1906 connectivity-matrix information-source"; 1907 case wson { 1908 uses l0-types:wson-label-step; 1909 } 1910 } 1912 augment "/nw:networks/nw:network/nw:node/tet:te/" 1913 + "tet:information-source-entry/tet:connectivity-matrices/" 1914 + "tet:connectivity-matrix/" 1915 + "tet:to/tet:label-restrictions/tet:label-restriction" { 1916 when "../../../../../../../../" 1917 + "nw:network-types/tet:te-topology/" 1918 + "wson:wson-topology" { 1919 description "Augment WSON TE label"; 1920 } 1921 description 1922 "Augment egress WSON label restrictions of connectivity-matrix 1923 information-source"; 1924 uses l0-types:l0-label-range-info; 1925 } 1927 augment "/nw:networks/nw:network/nw:node/tet:te/" 1928 + "tet:information-source-entry/tet:connectivity-matrices/" 1929 + "tet:connectivity-matrix/" 1930 + "tet:to/tet:label-restrictions/tet:label-restriction/" 1931 + "tet:label-start/tet:te-label/tet:technology" { 1932 when "../../../../../../../../../../" 1933 + "nw:network-types/tet:te-topology/" 1934 + "wson:wson-topology" { 1935 description "Augment WSON TE label"; 1936 } 1937 description 1938 "Augment egress WSON label restrictions start of 1939 connectivity-matrix information-source"; 1940 case wson { 1941 uses l0-types:wson-label-start-end; 1942 } 1943 } 1945 augment "/nw:networks/nw:network/nw:node/tet:te/" 1946 + "tet:information-source-entry/tet:connectivity-matrices/" 1947 + "tet:connectivity-matrix/" 1948 + "tet:to/tet:label-restrictions/tet:label-restriction/" 1949 + "tet:label-end/tet:te-label/tet:technology" { 1950 when "../../../../../../../../../../" 1951 + "nw:network-types/tet:te-topology/" 1952 + "wson:wson-topology" { 1953 description "Augment WSON TE label"; 1954 } 1955 description 1956 "Augment egress WSON label restrictions end of 1957 connectivity-matrix information-source"; 1958 case wson { 1959 uses l0-types:wson-label-start-end; 1960 } 1961 } 1963 augment "/nw:networks/nw:network/nw:node/tet:te/" 1964 + "tet:information-source-entry/tet:connectivity-matrices/" 1965 + "tet:connectivity-matrix/" 1966 + "tet:to/tet:label-restrictions/tet:label-restriction/" 1967 + "tet:label-step/tet:technology" { 1968 when "../../../../../../../../../" 1969 + "nw:network-types/tet:te-topology/" 1970 + "wson:wson-topology" { 1971 description "Augment WSON TE label"; 1972 } 1973 description 1974 "Augment egress WSON label restrictions step of 1975 connectivity-matrix information-source"; 1976 case wson { 1977 uses l0-types:wson-label-step; 1978 } 1979 } 1981 augment "/nw:networks/nw:network/nw:node/tet:te/" 1982 + "tet:information-source-entry/tet:connectivity-matrices/" 1983 + "tet:connectivity-matrix/" 1984 + "tet:underlay/tet:primary-path/tet:path-element/tet:type/" 1985 + "tet:label/tet:label-hop/tet:te-label/tet:technology" { 1986 when "../../../../../../../../../../" 1987 + "nw:network-types/tet:te-topology/" 1988 + "wson:wson-topology" { 1989 description "Augment WSON TE label"; 1990 } 1991 description 1992 "Augment WSON label hop of underlay primary path of 1993 connectivity-matrix information-source"; 1994 case wson { 1995 uses l0-types:wson-label-hop; 1996 } 1997 } 1999 augment "/nw:networks/nw:network/nw:node/tet:te/" 2000 + "tet:information-source-entry/tet:connectivity-matrices/" 2001 + "tet:connectivity-matrix/" 2002 + "tet:underlay/tet:backup-path/tet:path-element/tet:type/" 2003 + "tet:label/tet:label-hop/tet:te-label/tet:technology" { 2004 when "../../../../../../../../../../" 2005 + "nw:network-types/tet:te-topology/" 2006 + "wson:wson-topology" { 2007 description "Augment WSON TE label"; 2008 } 2009 description 2010 "Augment WSON label hop of underlay backup path of 2011 connectivity-matrix information-source"; 2012 case wson { 2013 uses l0-types:wson-label-hop; 2014 } 2015 } 2016 augment "/nw:networks/nw:network/nw:node/tet:te/" 2017 + "tet:information-source-entry/tet:connectivity-matrices/" 2018 + "tet:connectivity-matrix/" 2019 + "tet:optimizations/tet:algorithm/tet:metric/" 2020 + "tet:optimization-metric/" 2021 + "tet:explicit-route-exclude-objects/" 2022 + "tet:route-object-exclude-object/tet:type/" 2023 + "tet:label/tet:label-hop/tet:te-label/tet:technology" { 2024 when "../../../../../../../../../../../" 2025 + "nw:network-types/tet:te-topology/" 2026 + "wson:wson-topology" { 2027 description "Augment WSON TE label"; 2028 } 2029 description 2030 "Augment label hop of route-exclude of connectivity-matrix 2031 information-source"; 2032 case wson { 2033 uses l0-types:wson-label-hop; 2034 } 2035 } 2037 augment "/nw:networks/nw:network/nw:node/tet:te/" 2038 + "tet:information-source-entry/tet:connectivity-matrices/" 2039 + "tet:connectivity-matrix/" 2040 + "tet:optimizations/tet:algorithm/tet:metric/" 2041 + "tet:optimization-metric/" 2042 + "tet:explicit-route-include-objects/" 2043 + "tet:route-object-include-object/tet:type/" 2044 + "tet:label/tet:label-hop/tet:te-label/tet:technology" { 2045 when "../../../../../../../../../../../" 2046 + "nw:network-types/tet:te-topology/" 2047 + "wson:wson-topology" { 2048 description "Augment WSON TE label"; 2049 } 2050 description 2051 "Augment WSON label hop of route-include of 2052 connectivity-matrix information-source"; 2053 case wson { 2054 uses l0-types:wson-label-hop; 2055 } 2056 } 2058 augment "/nw:networks/nw:network/nw:node/tet:te/" 2059 + "tet:information-source-entry/tet:connectivity-matrices/" 2060 + "tet:connectivity-matrix/" 2061 + "tet:path-properties/tet:path-route-objects/" 2062 + "tet:path-route-object/tet:type/" 2063 + "tet:label/tet:label-hop/tet:te-label/tet:technology" { 2065 when "../../../../../../../../../../" 2066 + "nw:network-types/tet:te-topology/" 2067 + "wson:wson-topology" { 2068 description "Augment WSON TE label"; 2069 } 2070 description 2071 "Augment WSON label hop of path-route of connectivity-matrix 2072 information-source"; 2073 case wson { 2074 uses l0-types:wson-label-hop; 2075 } 2076 } 2078 augment "/nw:networks/nw:network/nw:node/tet:te/" 2079 + "tet:tunnel-termination-point/" 2080 + "tet:local-link-connectivities/" 2081 + "tet:label-restrictions/tet:label-restriction" { 2082 when "../../../../../../nw:network-types/tet:te-topology/" 2083 + "wson:wson-topology" { 2084 description "Augment WSON TE label"; 2085 } 2086 description 2087 "Augment WSON label restrictions of 2088 local-link-connectivities"; 2089 uses l0-types:l0-label-range-info; 2090 } 2092 augment "/nw:networks/nw:network/nw:node/tet:te/" 2093 + "tet:tunnel-termination-point/" 2094 + "tet:local-link-connectivities/" 2095 + "tet:label-restrictions/tet:label-restriction/" 2096 + "tet:label-start/" 2097 + "tet:te-label/tet:technology" { 2098 when "../../../../../../../../" 2099 + "nw:network-types/tet:te-topology/" 2100 + "wson:wson-topology" { 2101 description "Augment WSON TE label"; 2102 } 2103 description 2104 "Augment WSON label restrictions start of 2105 local-link-connectivities"; 2106 case wson { 2107 uses l0-types:wson-label-start-end; 2108 } 2109 } 2111 augment "/nw:networks/nw:network/nw:node/tet:te/" 2112 + "tet:tunnel-termination-point/" 2113 + "tet:local-link-connectivities/" 2114 + "tet:label-restrictions/tet:label-restriction/" 2115 + "tet:label-end/" 2116 + "tet:te-label/tet:technology"{ 2117 when "../../../../../../../../" 2118 + "nw:network-types/tet:te-topology/" 2119 + "wson:wson-topology" { 2120 description "Augment WSON TE label"; 2121 } 2122 description 2123 "Augment WSON label restrictions end of 2124 local-link-connectivities"; 2125 case wson { 2126 uses l0-types:wson-label-start-end; 2127 } 2128 } 2130 augment "/nw:networks/nw:network/nw:node/tet:te/" 2131 + "tet:tunnel-termination-point/" 2132 + "tet:local-link-connectivities/" 2133 + "tet:label-restrictions/tet:label-restriction/" 2134 + "tet:label-step/" 2135 + "tet:technology"{ 2136 when "../../../../../../../" 2137 + "nw:network-types/tet:te-topology/" 2138 + "wson:wson-topology" { 2139 description "Augment WSON TE label"; 2140 } 2141 description 2142 "Augment WSON label restrictions step of 2143 local-link-connectivities"; 2144 case wson { 2145 uses l0-types:wson-label-step; 2146 } 2147 } 2149 augment "/nw:networks/nw:network/nw:node/tet:te/" 2150 + "tet:tunnel-termination-point/" 2151 + "tet:local-link-connectivities/" 2152 + "tet:underlay/tet:primary-path/tet:path-element/tet:type/" 2153 + "tet:label/tet:label-hop/tet:te-label/tet:technology" { 2154 when "../../../../../../../../../" 2155 + "nw:network-types/tet:te-topology/" 2156 + "wson:wson-topology" { 2157 description "Augment WSON TE label"; 2158 } 2159 description 2160 "Augment WSON label hop of underlay primary path of 2161 local-link-connectivities"; 2162 case wson { 2163 uses l0-types:wson-label-hop; 2164 } 2165 } 2167 augment "/nw:networks/nw:network/nw:node/tet:te/" 2168 + "tet:tunnel-termination-point/" 2169 + "tet:local-link-connectivities/" 2170 + "tet:underlay/tet:backup-path/tet:path-element/tet:type/" 2171 + "tet:label/tet:label-hop/tet:te-label/tet:technology" { 2172 when "../../../../../../../../../" 2173 + "nw:network-types/tet:te-topology/" 2174 + "wson:wson-topology" { 2175 description "Augment WSON TE label"; 2176 } 2177 description 2178 "Augment WSON label hop of underlay backup path of 2179 local-link-connectivities"; 2180 case wson { 2181 uses l0-types:wson-label-hop; 2182 } 2183 } 2185 augment "/nw:networks/nw:network/nw:node/tet:te/" 2186 + "tet:tunnel-termination-point/" 2187 + "tet:local-link-connectivities/" 2188 + "tet:optimizations/tet:algorithm/tet:metric/" 2189 + "tet:optimization-metric/" 2190 + "tet:explicit-route-exclude-objects/" 2191 + "tet:route-object-exclude-object/tet:type/" 2192 + "tet:label/tet:label-hop/tet:te-label/tet:technology" { 2193 when "../../../../../../../../../../" 2194 + "nw:network-types/tet:te-topology/" 2195 + "wson:wson-topology" { 2196 description "Augment WSON TE label"; 2197 } 2198 description 2199 "Augment WSON label hop of route-exclude of 2200 local-link-connectivities"; 2201 case wson { 2202 uses l0-types:wson-label-hop; 2203 } 2204 } 2206 augment "/nw:networks/nw:network/nw:node/tet:te/" 2207 + "tet:tunnel-termination-point/" 2208 + "tet:local-link-connectivities/" 2209 + "tet:optimizations/tet:algorithm/tet:metric/" 2210 + "tet:optimization-metric/" 2211 + "tet:explicit-route-include-objects/" 2212 + "tet:route-object-include-object/tet:type/" 2213 + "tet:label/tet:label-hop/tet:te-label/tet:technology" { 2214 when "../../../../../../../../../../" 2215 + "nw:network-types/tet:te-topology/" 2216 + "wson:wson-topology" { 2217 description "Augment WSON TE label"; 2218 } 2219 description 2220 "Augment label hop of route-include of 2221 local-link-connectivities"; 2222 case wson { 2223 uses l0-types:wson-label-hop; 2224 } 2225 } 2227 augment "/nw:networks/nw:network/nw:node/tet:te/" 2228 + "tet:tunnel-termination-point/" 2229 + "tet:local-link-connectivities/" 2230 + "tet:path-properties/tet:path-route-objects/" 2231 + "tet:path-route-object/tet:type/" 2232 + "tet:label/tet:label-hop/tet:te-label/tet:technology" { 2233 when "../../../../../../../../../" 2234 + "nw:network-types/tet:te-topology/" 2235 + "wson:wson-topology" { 2236 description "Augment WSON TE label"; 2237 } 2238 description 2239 "Augment WSON label hop of path-route of 2240 local-link-connectivities"; 2241 case wson { 2242 uses l0-types:wson-label-hop; 2243 } 2244 } 2246 augment "/nw:networks/nw:network/nw:node/tet:te/" 2247 + "tet:tunnel-termination-point/" 2248 + "tet:local-link-connectivities/" 2249 + "tet:local-link-connectivity/" 2250 + "tet:label-restrictions/tet:label-restriction" { 2251 when "../../../../../../../nw:network-types/tet:te-topology/" 2252 + "wson:wson-topology" { 2253 description "Augment WSON TE label"; 2254 } 2255 description 2256 "Augment WSON label restrictions of 2257 local-link-connectivity (LLC)"; 2258 uses l0-types:l0-label-range-info; 2259 } 2261 augment "/nw:networks/nw:network/nw:node/tet:te/" 2262 + "tet:tunnel-termination-point/" 2263 + "tet:local-link-connectivities/" 2264 + "tet:local-link-connectivity/" 2265 + "tet:label-restrictions/tet:label-restriction/" 2266 + "tet:label-start/tet:te-label/tet:technology" { 2267 when "../../../../../../../../../" 2268 + "nw:network-types/tet:te-topology/" 2269 + "wson:wson-topology" { 2270 description "Augment WSON TE label"; 2271 } 2272 description 2273 "Augment WSON label restrictions start of 2274 local-link-connectivity (LLC)"; 2275 case wson { 2276 uses l0-types:wson-label-start-end; 2277 } 2278 } 2280 augment "/nw:networks/nw:network/nw:node/tet:te/" 2281 + "tet:tunnel-termination-point/" 2282 + "tet:local-link-connectivities/" 2283 + "tet:local-link-connectivity/" 2284 + "tet:label-restrictions/tet:label-restriction/" 2285 + "tet:label-end/tet:te-label/tet:technology" { 2286 when "../../../../../../../../../" 2287 + "nw:network-types/tet:te-topology/" 2288 + "wson:wson-topology" { 2289 description "Augment WSON TE label"; 2290 } 2291 description 2292 "Augment WSON label restrictions end of 2293 local-link-connectivity (LLC)"; 2294 case wson { 2295 uses l0-types:wson-label-start-end; 2296 } 2297 } 2299 augment "/nw:networks/nw:network/nw:node/tet:te/" 2300 + "tet:tunnel-termination-point/" 2301 + "tet:local-link-connectivities/" 2302 + "tet:local-link-connectivity/" 2303 + "tet:label-restrictions/tet:label-restriction/" 2304 + "tet:label-step/tet:technology" { 2306 when "../../../../../../../../" 2307 + "nw:network-types/tet:te-topology/" 2308 + "wson:wson-topology" { 2309 description "Augment WSON TE label"; 2310 } 2311 description 2312 "Augment WSON label restrictions step of 2313 local-link-connectivity (LLC)"; 2314 case wson { 2315 uses l0-types:wson-label-step; 2316 } 2317 } 2319 augment "/nw:networks/nw:network/nw:node/tet:te/" 2320 + "tet:tunnel-termination-point/" 2321 + "tet:local-link-connectivities/" 2322 + "tet:local-link-connectivity/" 2323 + "tet:underlay/tet:primary-path/tet:path-element/tet:type/" 2324 + "tet:label/tet:label-hop/tet:te-label/tet:technology" { 2325 when "../../../../../../../../../../" 2326 + "nw:network-types/tet:te-topology/" 2327 + "wson:wson-topology" { 2328 description "Augment WSON TE label"; 2329 } 2330 description 2331 "Augment WSON label hop of underlay primary path of 2332 local-link-connectivity (LLC)"; 2333 case wson { 2334 uses l0-types:wson-label-hop; 2335 } 2336 } 2338 augment "/nw:networks/nw:network/nw:node/tet:te/" 2339 + "tet:tunnel-termination-point/" 2340 + "tet:local-link-connectivities/" 2341 + "tet:local-link-connectivity/" 2342 + "tet:underlay/tet:backup-path/tet:path-element/tet:type/" 2343 + "tet:label/tet:label-hop/tet:te-label/tet:technology" { 2344 when "../../../../../../../../../../" 2345 + "nw:network-types/tet:te-topology/" 2346 + "wson:wson-topology" { 2347 description "Augment WSON TE label"; 2348 } 2349 description 2350 "Augment WSON label hop of underlay backup path of 2351 local-link-connectivity (LLC)"; 2352 case wson { 2353 uses l0-types:wson-label-hop; 2355 } 2356 } 2358 augment "/nw:networks/nw:network/nw:node/tet:te/" 2359 + "tet:tunnel-termination-point/" 2360 + "tet:local-link-connectivities/" 2361 + "tet:local-link-connectivity/" 2362 + "tet:optimizations/tet:algorithm/tet:metric/" 2363 + "tet:optimization-metric/" 2364 + "tet:explicit-route-exclude-objects/" 2365 + "tet:route-object-exclude-object/tet:type/" 2366 + "tet:label/tet:label-hop/tet:te-label/tet:technology" { 2367 when "../../../../../../../../../../../" 2368 + "nw:network-types/tet:te-topology/" 2369 + "wson:wson-topology" { 2370 description "Augment WSON TE label"; 2371 } 2372 description 2373 "Augment WSON label hop of route-exclude of 2374 local-link-connectivity (LLC)"; 2375 case wson { 2376 uses l0-types:wson-label-hop; 2377 } 2378 } 2380 augment "/nw:networks/nw:network/nw:node/tet:te/" 2381 + "tet:tunnel-termination-point/" 2382 + "tet:local-link-connectivities/" 2383 + "tet:local-link-connectivity/" 2384 + "tet:optimizations/tet:algorithm/tet:metric/" 2385 + "tet:optimization-metric/" 2386 + "tet:explicit-route-include-objects/" 2387 + "tet:route-object-include-object/tet:type/" 2388 + "tet:label/tet:label-hop/tet:te-label/tet:technology" { 2389 when "../../../../../../../../../../../" 2390 + "nw:network-types/tet:te-topology/" 2391 + "wson:wson-topology" { 2392 description "Augment WSON TE label"; 2393 } 2394 description 2395 "Augment WSON label hop of route-include of 2396 local-link-connectivity (LLC)"; 2397 case wson { 2398 uses l0-types:wson-label-hop; 2399 } 2400 } 2402 augment "/nw:networks/nw:network/nw:node/tet:te/" 2403 + "tet:tunnel-termination-point/" 2404 + "tet:local-link-connectivities/" 2405 + "tet:local-link-connectivity/" 2406 + "tet:path-properties/tet:path-route-objects/" 2407 + "tet:path-route-object/tet:type/" 2408 + "tet:label/tet:label-hop/tet:te-label/tet:technology" { 2409 when "../../../../../../../../../../" 2410 + "nw:network-types/tet:te-topology/" 2411 + "wson:wson-topology" { 2412 description "Augment WSON TE label"; 2413 } 2414 description 2415 "Augment WSON label hop of path-route of 2416 local-link-connectivity (LLC)"; 2417 case wson { 2418 uses l0-types:wson-label-hop; 2419 } 2420 } 2421 augment "/nw:networks/nw:network/nt:link/tet:te/" 2422 + "tet:te-link-attributes/" 2423 + "tet:underlay/tet:primary-path/tet:path-element/tet:type/" 2424 + "tet:label/tet:label-hop/tet:te-label/tet:technology" { 2425 when "../../../../../../../../" 2426 + "nw:network-types/tet:te-topology/" 2427 + "wson:wson-topology" { 2428 description "Augment WSON TE label"; 2429 } 2430 description 2431 "Augment WSON label hop of underlay primary path of TE link"; 2432 case wson { 2433 uses l0-types:wson-label-hop; 2434 } 2435 } 2437 augment "/nw:networks/nw:network/nt:link/tet:te/" 2438 + "tet:te-link-attributes/" 2439 + "tet:underlay/tet:backup-path/tet:path-element/tet:type/" 2440 + "tet:label/tet:label-hop/tet:te-label/tet:technology" { 2441 when "../../../../../../../../" 2442 + "nw:network-types/tet:te-topology/" 2443 + "wson:wson-topology" { 2444 description "Augment WSON TE label"; 2445 } 2446 description 2447 "Augment WSON label hop of underlay backup path of TE link"; 2448 case wson { 2449 uses l0-types:wson-label-hop; 2450 } 2452 } 2454 augment "/nw:networks/nw:network/nt:link/tet:te/" 2455 + "tet:te-link-attributes/" 2456 + "tet:label-restrictions/tet:label-restriction" { 2457 when "../../../../../nw:network-types/tet:te-topology/" 2458 + "wson:wson-topology" { 2459 description "Augment WSON TE label"; 2460 } 2461 description 2462 "Augment WSON label restrictions of TE link"; 2463 uses l0-types:l0-label-range-info; 2464 } 2466 augment "/nw:networks/nw:network/nt:link/tet:te/" 2467 + "tet:te-link-attributes/" 2468 + "tet:label-restrictions/tet:label-restriction/" 2469 + "tet:label-start/tet:te-label/tet:technology" { 2470 when "../../../../../../../nw:network-types/tet:te-topology/" 2471 + "wson:wson-topology" { 2472 description "Augment WSON TE label"; 2473 } 2474 description 2475 "Augment WSON label restrictions start of TE link"; 2476 case wson { 2477 uses l0-types:wson-label-start-end; 2478 } 2479 } 2481 augment "/nw:networks/nw:network/nt:link/tet:te/" 2482 + "tet:te-link-attributes/" 2483 + "tet:label-restrictions/tet:label-restriction/" 2484 + "tet:label-end/tet:te-label/tet:technology" { 2485 when "../../../../../../../nw:network-types/tet:te-topology/" 2486 + "wson:wson-topology" { 2487 description "Augment WSON TE label"; 2488 } 2489 description 2490 "Augment WSON label restrictions end of TE link"; 2491 case wson { 2492 uses l0-types:wson-label-start-end; 2493 } 2494 } 2496 augment "/nw:networks/nw:network/nt:link/tet:te/" 2497 + "tet:te-link-attributes/" 2498 + "tet:label-restrictions/tet:label-restriction/" 2499 + "tet:label-step/tet:technology" { 2501 when "../../../../../../nw:network-types/tet:te-topology/" 2502 + "wson:wson-topology" { 2503 description "Augment WSON TE label"; 2504 } 2505 description 2506 "Augment WSON label restrictions step of TE link"; 2507 case wson { 2508 uses l0-types:wson-label-step; 2509 } 2510 } 2512 augment "/nw:networks/nw:network/nt:link/tet:te/" 2513 + "tet:information-source-entry/" 2514 + "tet:label-restrictions/tet:label-restriction" { 2515 when "../../../../../nw:network-types/tet:te-topology/" 2516 + "wson:wson-topology" { 2517 description "Augment WSON TE label"; 2518 } 2519 description 2520 "Augment WSON label restrictions of TE link 2521 information-source"; 2522 uses l0-types:l0-label-range-info; 2523 } 2525 augment "/nw:networks/nw:network/nt:link/tet:te/" 2526 + "tet:information-source-entry/" 2527 + "tet:label-restrictions/tet:label-restriction/" 2528 + "tet:label-start/tet:te-label/tet:technology" { 2529 when "../../../../../../../nw:network-types/tet:te-topology/" 2530 + "wson:wson-topology" { 2531 description "Augment WSON TE label"; 2532 } 2533 description 2534 "Augment WSON label restrictions start of TE link 2535 information-source"; 2536 case wson { 2537 uses l0-types:wson-label-start-end; 2538 } 2539 } 2541 augment "/nw:networks/nw:network/nt:link/tet:te/" 2542 + "tet:information-source-entry/" 2543 + "tet:label-restrictions/tet:label-restriction/" 2544 + "tet:label-end/tet:te-label/tet:technology" { 2545 when "../../../../../../../nw:network-types/tet:te-topology/" 2546 + "wson:wson-topology" { 2547 description "Augment WSON TE label"; 2548 } 2549 description 2550 "Augment WSON label restrictions end of TE link 2551 information-source"; 2552 case wson { 2553 uses l0-types:wson-label-start-end; 2554 } 2555 } 2557 augment "/nw:networks/nw:network/nt:link/tet:te/" 2558 + "tet:information-source-entry/" 2559 + "tet:label-restrictions/tet:label-restriction/" 2560 + "tet:label-step/tet:technology" { 2561 when "../../../../../../nw:network-types/tet:te-topology/" 2562 + "wson:wson-topology" { 2563 description "Augment WSON TE label"; 2564 } 2565 description 2566 "Augment WSON label restrictions step of TE link 2567 information-source"; 2568 case wson { 2569 uses l0-types:wson-label-step; 2570 } 2571 } 2573 augment "/nw:networks/tet:te/tet:templates/" 2574 + "tet:link-template/tet:te-link-attributes/" 2575 + "tet:underlay/tet:primary-path/tet:path-element/tet:type/" 2576 + "tet:label/tet:label-hop/tet:te-label/tet:technology" { 2577 description 2578 "Augment WSON label hop of underlay primary path of TE link 2579 template"; 2580 case wson { 2581 uses l0-types:wson-label-hop; 2582 } 2583 } 2585 augment "/nw:networks/tet:te/tet:templates/" 2586 + "tet:link-template/tet:te-link-attributes/" 2587 + "tet:underlay/tet:backup-path/tet:path-element/tet:type/" 2588 + "tet:label/tet:label-hop/tet:te-label/tet:technology" { 2589 description 2590 "Augment WSON label hop of underlay backup path of TE link 2591 template"; 2592 case wson { 2593 uses l0-types:wson-label-hop; 2594 } 2595 } 2596 augment "/nw:networks/tet:te/tet:templates/" 2597 + "tet:link-template/tet:te-link-attributes/" 2598 + "tet:label-restrictions/tet:label-restriction" { 2599 description 2600 "Augment WSON label restrictions of TE link template"; 2601 uses l0-types:l0-label-range-info; 2602 } 2604 augment "/nw:networks/tet:te/tet:templates/" 2605 + "tet:link-template/tet:te-link-attributes/" 2606 + "tet:label-restrictions/tet:label-restriction/" 2607 + "tet:label-start/tet:te-label/tet:technology" { 2608 description 2609 "Augment WSON label restrictions start of TE link template"; 2610 case wson { 2611 uses l0-types:wson-label-start-end; 2612 } 2613 } 2615 augment "/nw:networks/tet:te/tet:templates/" 2616 + "tet:link-template/tet:te-link-attributes/" 2617 + "tet:label-restrictions/tet:label-restriction/" 2618 + "tet:label-end/tet:te-label/tet:technology" { 2619 description 2620 "Augment WSON label restrictions end of TE link template"; 2621 case wson { 2622 uses l0-types:wson-label-start-end; 2623 } 2624 } 2626 augment "/nw:networks/tet:te/tet:templates/" 2627 + "tet:link-template/tet:te-link-attributes/" 2628 + "tet:label-restrictions/tet:label-restriction/" 2629 + "tet:label-step/tet:technology" { 2630 description 2631 "Augment WSON label restrictions step of TE link template"; 2632 case wson { 2633 uses l0-types:wson-label-step; 2634 } 2635 } 2636 } 2638 2640 4. Security Considerations 2642 The YANG module specified in this document defines a schema for data 2643 that is designed to be accessed via network management protocols such 2644 as NETCONF [RFC6241] or RESTCONF [RFC8040]. The lowest NETCONF layer 2645 is the secure transport layer, and the mandatory-to-implement secure 2646 transport is Secure Shell (SSH) [RFC6242]. The lowest RESTCONF layer 2647 is HTTPS, and the mandatory-to-implement secure transport is TLS 2648 [RFC8446]. 2650 The NETCONF Protocol over Secure Shell (SSH) [RFC6242] describes a 2651 method for invoking and running NETCONF within a Secure Shell (SSH) 2652 session as an SSH subsystem. The NETCONF access control model 2653 [RFC8341] provides the means to restrict access for particular 2654 NETCONF or RESTCONF users to a preconfigured subset of all available 2655 NETCONF or RESTCONF protocol operations and content. 2657 There are a number of data nodes defined in this YANG module that are 2658 writable/creatable/deletable (i.e., config true, which is the 2659 default). These data nodes may be considered sensitive or vulnerable 2660 in some network environments. Write operations (e.g., edit-config) 2661 to these data nodes without proper protection can have a negative 2662 effect on network operations. These are the subtrees and data nodes 2663 and their sensitivity/vulnerability: 2665 /nw:networks/nw:network/nw:network-types/tet:te-topology 2666 /nw:networks/nw:network/nt:link/tet:te/tet:te-link-attributes 2667 /nw:networks/nw:network/nw:node/nt:termination-point/tet:te 2668 /nw:networks/nw:network/.../tet:te-bandwidth/tet:technology 2669 /nw:networks/nw:network/nw:node/tet:te/.../tet:label-restriction 2670 /nw:networks/nw:network/nw:node/.../tet:te-label/tet:technology 2672 5. IANA Considerations 2674 It is proposed that IANA should assign new URIs from the "IETF XML 2675 Registry" [RFC3688] as follows: 2677 URI: urn:ietf:params:xml:ns:yang:ietf-wson-topology 2678 Registrant Contact: The IESG 2679 XML: N/A; the requested URI is an XML namespace. 2681 This document registers a YANG module in the YANG Module Names 2682 registry [RFC7950] and [RFC6020]. 2684 name: ietf-wson-topology 2685 namespace: urn:ietf:params:xml:ns:yang:ietf-wson-topology 2686 prefix: wson 2687 reference: RFC XXXX 2689 6. Contributors 2691 Dhruv Dhody 2692 Huawei Technologies 2693 Email: dhruv.ietf@gmail.com 2695 Bin Yeong Yoon 2696 ETRI 2697 Email: byyun@etri.re.kr 2699 Ricard Vilalta 2700 CTTC 2701 Email: vricard.vilalta@cttc.es 2703 Italo Busi 2704 Huawei Technologies 2705 Email: Italo.Busi@huawei.com 2707 7. References 2709 7.1. Normative References 2711 [I-D.ietf-ccamp-flexigrid-yang] 2712 Madrid, U., Perdices, D., Lopezalvarez, V., King, D., Lee, 2713 Y., and H. Zheng, "YANG data model for Flexi-Grid Optical 2714 Networks", draft-ietf-ccamp-flexigrid-yang-05 (work in 2715 progress), January 2020. 2717 [I-D.ietf-ccamp-layer0-types] 2718 Zheng, H., Lee, Y., Guo, A., Lopezalvarez, V., and D. 2719 King, "A YANG Data Model for Layer 0 Types", draft-ietf- 2720 ccamp-layer0-types-04 (work in progress), May 2020. 2722 [I-D.ietf-ccamp-optical-impairment-topology-yang] 2723 Lee, Y., Lopezalvarez, V., Galimberti, G., and D. Beller, 2724 "A Yang Data Model for Optical Impairment-aware Topology", 2725 draft-ietf-ccamp-optical-impairment-topology-yang-03 (work 2726 in progress), March 2020. 2728 [I-D.ietf-teas-yang-te-topo] 2729 Liu, X., Bryskin, I., Beeram, V., Saad, T., Shah, H., and 2730 O. Dios, "YANG Data Model for Traffic Engineering (TE) 2731 Topologies", draft-ietf-teas-yang-te-topo-22 (work in 2732 progress), June 2019. 2734 [ITU-Tg6982] 2735 International Telecommunication Union, "Amplified 2736 multichannel dense wavelength division multiplexing 2737 applications with single channel optical interfaces", 2738 ITU-T G.698.2, November 2018. 2740 [RFC2119] Bradner, S., "Key words for use in RFCs to Indicate 2741 Requirement Levels", BCP 14, RFC 2119, 2742 DOI 10.17487/RFC2119, March 1997, 2743 . 2745 [RFC6020] Bjorklund, M., Ed., "YANG - A Data Modeling Language for 2746 the Network Configuration Protocol (NETCONF)", RFC 6020, 2747 DOI 10.17487/RFC6020, October 2010, 2748 . 2750 [RFC6241] Enns, R., Ed., Bjorklund, M., Ed., Schoenwaelder, J., Ed., 2751 and A. Bierman, Ed., "Network Configuration Protocol 2752 (NETCONF)", RFC 6241, DOI 10.17487/RFC6241, June 2011, 2753 . 2755 [RFC6242] Wasserman, M., "Using the NETCONF Protocol over Secure 2756 Shell (SSH)", RFC 6242, DOI 10.17487/RFC6242, June 2011, 2757 . 2759 [RFC7579] Bernstein, G., Ed., Lee, Y., Ed., Li, D., Imajuku, W., and 2760 J. Han, "General Network Element Constraint Encoding for 2761 GMPLS-Controlled Networks", RFC 7579, 2762 DOI 10.17487/RFC7579, June 2015, 2763 . 2765 [RFC7950] Bjorklund, M., Ed., "The YANG 1.1 Data Modeling Language", 2766 RFC 7950, DOI 10.17487/RFC7950, August 2016, 2767 . 2769 [RFC8040] Bierman, A., Bjorklund, M., and K. Watsen, "RESTCONF 2770 Protocol", RFC 8040, DOI 10.17487/RFC8040, January 2017, 2771 . 2773 [RFC8174] Leiba, B., "Ambiguity of Uppercase vs Lowercase in RFC 2774 2119 Key Words", BCP 14, RFC 8174, DOI 10.17487/RFC8174, 2775 May 2017, . 2777 [RFC8340] Bjorklund, M. and L. Berger, Ed., "YANG Tree Diagrams", 2778 BCP 215, RFC 8340, DOI 10.17487/RFC8340, March 2018, 2779 . 2781 [RFC8341] Bierman, A. and M. Bjorklund, "Network Configuration 2782 Access Control Model", STD 91, RFC 8341, 2783 DOI 10.17487/RFC8341, March 2018, 2784 . 2786 [RFC8342] Bjorklund, M., Schoenwaelder, J., Shafer, P., Watsen, K., 2787 and R. Wilton, "Network Management Datastore Architecture 2788 (NMDA)", RFC 8342, DOI 10.17487/RFC8342, March 2018, 2789 . 2791 [RFC8345] Clemm, A., Medved, J., Varga, R., Bahadur, N., 2792 Ananthakrishnan, H., and X. Liu, "A YANG Data Model for 2793 Network Topologies", RFC 8345, DOI 10.17487/RFC8345, March 2794 2018, . 2796 [RFC8446] Rescorla, E., "The Transport Layer Security (TLS) Protocol 2797 Version 1.3", RFC 8446, DOI 10.17487/RFC8446, August 2018, 2798 . 2800 7.2. Informative References 2802 [RFC3688] Mealling, M., "The IETF XML Registry", BCP 81, RFC 3688, 2803 DOI 10.17487/RFC3688, January 2004, 2804 . 2806 [RFC7446] Lee, Y., Ed., Bernstein, G., Ed., Li, D., and W. Imajuku, 2807 "Routing and Wavelength Assignment Information Model for 2808 Wavelength Switched Optical Networks", RFC 7446, 2809 DOI 10.17487/RFC7446, February 2015, 2810 . 2812 [RFC7581] Bernstein, G., Ed., Lee, Y., Ed., Li, D., Imajuku, W., and 2813 J. Han, "Routing and Wavelength Assignment Information 2814 Encoding for Wavelength Switched Optical Networks", 2815 RFC 7581, DOI 10.17487/RFC7581, June 2015, 2816 . 2818 Authors' Addresses 2819 Haomian Zheng 2820 Huawei Technologies 2821 H1, Huawei Xiliu Beipo Village, Songshan Lake 2822 Dongguan, Guangdong 523808 2823 China 2825 Email: zhenghaomian@huawei.com 2827 Young Lee 2828 Samsung 2829 South Korea 2831 Email: younglee.tx@gmail.com 2833 Aihua Guo 2834 Futurewei 2836 Email: aihuaguo@futurewei.com 2838 Victor Lopez 2839 Telefonica 2841 Email: victor.lopezalvarez@telefonica.com 2843 Daniel King 2844 University of Lancaster 2846 Email: d.king@lancaster.ac.uk