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