idnits 2.17.1 draft-ietf-ccamp-layer1-types-05.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 : ---------------------------------------------------------------------------- ** The document seems to lack a both a reference to RFC 2119 and the recommended RFC 2119 boilerplate, even if it appears to use RFC 2119 keywords. RFC 2119 keyword, line 1223: '...s are given, they all MUST be disjoint...' RFC 2119 keyword, line 1224: '... and MUST be in ascending or...' Miscellaneous warnings: ---------------------------------------------------------------------------- == The copyright year in the IETF Trust and authors Copyright Line does not match the current year == Line 293 has weird spacing: '...ad-rate uin...' -- The document date (March 9, 2020) is 1508 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) == Unused Reference: 'I-D.ietf-ccamp-transport-nbi-app-statement' is defined on line 1486, but no explicit reference was found in the text -- Possible downref: Non-RFC (?) normative reference: ref. 'ITU-Tg7044' -- Possible downref: Non-RFC (?) normative reference: ref. 'ITU-Tg709' -- Possible downref: Non-RFC (?) normative reference: ref. 'ITU-Tgsup43' -- Possible downref: Non-RFC (?) normative reference: ref. 'MEF63' ** Downref: Normative reference to an Informational RFC: RFC 7963 -- Possible downref: Non-RFC (?) normative reference: ref. 'Telcordia' == Outdated reference: A later version (-12) exists of draft-ietf-ccamp-client-signal-yang-01 == Outdated reference: A later version (-26) exists of draft-ietf-ccamp-l1csm-yang-10 == Outdated reference: A later version (-18) exists of draft-ietf-ccamp-otn-topo-yang-09 == Outdated reference: A later version (-20) exists of draft-ietf-ccamp-otn-tunnel-model-09 == Outdated reference: A later version (-17) exists of draft-ietf-ccamp-transport-nbi-app-statement-10 Summary: 2 errors (**), 0 flaws (~~), 8 warnings (==), 6 comments (--). Run idnits with the --verbose option for more detailed information about the items above. -------------------------------------------------------------------------------- 2 CCAMP Working Group H. Zheng 3 Internet-Draft I. Busi 4 Intended status: Standards Track Huawei Technologies 5 Expires: September 10, 2020 March 9, 2020 7 A YANG Data Model for Layer 1 Types 8 draft-ietf-ccamp-layer1-types-05 10 Abstract 12 This document defines a collection of common data types and groupings 13 in YANG data modeling language for layer 1 networks. These derived 14 common types and groupings are intended to be imported by modules 15 that specifies the OTN networks, including the topology, tunnel, 16 client signal adaptation and service. 18 Status of This Memo 20 This Internet-Draft is submitted in full conformance with the 21 provisions of BCP 78 and BCP 79. 23 Internet-Drafts are working documents of the Internet Engineering 24 Task Force (IETF). Note that other groups may also distribute 25 working documents as Internet-Drafts. The list of current Internet- 26 Drafts is at https://datatracker.ietf.org/drafts/current/. 28 Internet-Drafts are draft documents valid for a maximum of six months 29 and may be updated, replaced, or obsoleted by other documents at any 30 time. It is inappropriate to use Internet-Drafts as reference 31 material or to cite them other than as "work in progress." 33 This Internet-Draft will expire on September 10, 2020. 35 Copyright Notice 37 Copyright (c) 2020 IETF Trust and the persons identified as the 38 document authors. All rights reserved. 40 This document is subject to BCP 78 and the IETF Trust's Legal 41 Provisions Relating to IETF Documents 42 (https://trustee.ietf.org/license-info) in effect on the date of 43 publication of this document. Please review these documents 44 carefully, as they describe your rights and restrictions with respect 45 to this document. Code Components extracted from this document must 46 include Simplified BSD License text as described in Section 4.e of 47 the Trust Legal Provisions and are provided without warranty as 48 described in the Simplified BSD License. 50 Table of Contents 52 1. Introduction . . . . . . . . . . . . . . . . . . . . . . . . 2 53 2. Terminology and Notations . . . . . . . . . . . . . . . . . . 3 54 3. Prefix in Data Node Names . . . . . . . . . . . . . . . . . . 3 55 4. Layer 1 Types Overview . . . . . . . . . . . . . . . . . . . 3 56 4.1. Relationship with other Modules . . . . . . . . . . . . . 3 57 4.2. Content in Layer 1 Type Module . . . . . . . . . . . . . 3 58 4.3. OTN Label and Label Range . . . . . . . . . . . . . . . . 5 59 4.4. ODUflex . . . . . . . . . . . . . . . . . . . . . . . . . 6 60 4.4.1. Resizable ODUflex . . . . . . . . . . . . . . . . . . 8 61 5. YANG Code for Layer1 Types . . . . . . . . . . . . . . . . . 9 62 6. Security Considerations . . . . . . . . . . . . . . . . . . . 27 63 7. IANA Considerations . . . . . . . . . . . . . . . . . . . . . 28 64 8. Acknowledgements . . . . . . . . . . . . . . . . . . . . . . 28 65 9. Contributors . . . . . . . . . . . . . . . . . . . . . . . . 28 66 10. References . . . . . . . . . . . . . . . . . . . . . . . . . 30 67 10.1. Normative References . . . . . . . . . . . . . . . . . . 30 68 10.2. Informative References . . . . . . . . . . . . . . . . . 31 69 Appendix A. Examples of OTN Label Ranges . . . . . . . . . . . . 32 70 Authors' Addresses . . . . . . . . . . . . . . . . . . . . . . . 38 72 1. Introduction 74 This document introduces a collection of common data types which 75 would be used in Layer 1 networks. The derived types and groupings 76 are designed to be the common types applicable for modeling Traffic 77 Engineering (TE) features for Layer 1 networks. 79 Typical Layer 1 network, the Optical Transport Networking, was 80 specified in [RFC7062]. Corresponding routing and signaling protocol 81 have been specified in [RFC7138] and [RFC7139]. The types and 82 groupings defined in this document is consistent to these document, 83 and will be imported in other Layer 1 data models, including but not 84 restrictive to, [I-D.ietf-ccamp-otn-topo-yang], 85 [I-D.ietf-ccamp-otn-tunnel-model], 86 [I-D.ietf-ccamp-client-signal-yang] and [I-D.ietf-ccamp-l1csm-yang]. 88 The data model in this draft has only types defined including 89 groupings, typedef and identities. There is no need to include 90 configuration and state data according to the new Network Management 91 Datastore Architecture [RFC8342]. The content in this draft is in 92 consistent with other specifications, including [MEF63] for Layer 1 93 service attributes, [ITU-Tg709] and [ITU-Tgsup43] for OTN data plane 94 definitions. 96 2. Terminology and Notations 98 Refer to [RFC7062] for the key terms used in this document, and the 99 terminology for describing YANG data models can be found in 100 [RFC7950]. 102 3. Prefix in Data Node Names 104 In this document, names of data nodes and other data model objects 105 are prefixed using the standard prefix associated with the 106 corresponding YANG imported modules. 108 +-------------+---------------------------+----------------------+ 109 | Prefix | YANG module | Reference | 110 +-------------+---------------------------+----------------------+ 111 | l1-types | ietf-layer1-types | This Document | 112 +-------------+---------------------------+----------------------+ 114 4. Layer 1 Types Overview 116 4.1. Relationship with other Modules 118 This document defines one YANG module for common Layer 1 types. The 119 objective is to specifies common Layer 1 TE types that can be 120 imported by layer 1 specific technology, for example OTN, in its 121 technology-specific modules such as topology and tunnels. It is 122 worth noting that the generic traffic-engineering (TE) types module 123 is specified in [I-D.ietf-teas-yang-te-types] as ietf-te-types, and 124 both the module ietf-te-types and ietf-layer1-types are needed to be 125 imported when the OTN is configured. Generic attributes such as te- 126 bandwidth and te-label, are indicated in ietf-te-types in 127 [I-D.ietf-teas-yang-te-types], while the OTN-specific attributes, 128 such as odu-type, are indicated in ietf-layer1-types in this 129 document. 131 4.2. Content in Layer 1 Type Module 133 The module ietf-layer1-types contains the following YANG reusable 134 types and groupings: 136 tributary-slot-granularity: 138 This is to define the granularity of the server layer ODU Link (HO 139 ODUk or ODUCn) supporting a client layer ODU LSP (LO ODUj or ODUk, 140 respectively). Three granularities, 1.25G/2.5G/5G, have been 141 specified. 143 odu-type: 145 This is to specify the type of ODUk LSP, including the types 146 specified in [RFC7139] and [RFC7963]. 148 client-signal: 150 This is to specify the client signal types of OTN networks. The 151 initial input was the G-PID specified in [RFC7139]. Identities about 152 a few categories of client signal types, including ETH, STM-n, OC 153 [Telcordia] and Fiber Channel have been specified. 155 otn-label-range-type: 157 The label range type of OTN has two different representations, 158 tributary slots (TS) and tributary port number (TPN), according to 159 [RFC7139]. Respective representation is specified under this same 160 base type. 162 otn-link-bandwidth: 164 This grouping defines the link bandwidth information and could be 165 used in OTN topology model for bandwidth representation. All the 166 bandwidth related sections in generic module, 167 [I-D.ietf-teas-yang-te-types], need to be augmented with this 168 grouping for the usage of Layer 1. 170 otn-path-bandwidth: 172 This grouping defines the path bandwidth information and could be 173 used in OTN topology model for bandwidth representation. All the 174 bandwidth related sections in generic module, 175 [I-D.ietf-teas-yang-te-types], need to be augmented with this 176 grouping for the usage of Layer 1. This grouping is also applicable 177 to set up the OTN tunnel. 179 otn-label-range-info and otn-label-step: 181 These groupings are used for the augmentation of OTN label in a 182 specific way. 184 otn-label-start-end and otn-label-hop: 186 These groupings are used for the augmentation of label for OTN link 187 and path respectively. 189 optical-interface-func: 191 The optical interface function is specified in [MEF63]. This 192 grouping describes the functionality which encodes bits for 193 transmission and the corresponding decode upon reception. 195 service-performance-metric: 197 The service performance metric is a quantitative characterization of 198 Layer 1 characteristic information delivery quality experienced by 199 the Layer 1 subscriber. 201 4.3. OTN Label and Label Range 203 As described in [RFC7139], the OTN label usually represents the 204 Tributary Port Number (TPN) and the related set of Tributary Slots 205 (TS) assigned to a client layer ODU LSP (LO ODUj or ODUk) on a given 206 server layer ODU (HO-ODU or ODUCn, respectively) Link (e.g., ODU2 LSP 207 over ODU3 Link). Some special OTN label values are also defined for 208 an ODUk LSP being setup over an OTUk Link. 210 The same OTN label shall be assigned to the same ODUk LSP at the two 211 ends of an OTN Link. 213 As described in [RFC7139], TPN can be a number from 1 to 4095 and TS 214 are numbered from 1 to 4095, although the actual maximum values 215 depend on the type of server layer ODU. For example, a server layer 216 ODU4 provides 80 time slots (numbered from 1 to 80) and the TPN 217 values can be any number from 1 to 80. 219 The OTN Label Range represents the values for the TPN and TS that are 220 available for ODUk LSPs to be setup over a given OTN Link. 222 The OTN Label Range is defined by the label-restriction list, defined 223 in [I-D.ietf-teas-yang-te-types], which, for OTN, should be augmented 224 using the otn-label-range-info grouping. 226 Each entry in the label-restriction list represents either the range 227 of the available TPN values or the range of the available TS values: 228 the range-type attribute in the otn-label-range-info grouping defines 229 the type of range for each entry of the list. 231 Each entry of the label-restriction list, as defined in 232 [I-D.ietf-teas-yang-te-types], defines a label-start, a label-end, a 233 label-step and a range-bitmap. The label-start and label-end 234 definitions for OTN should be augmented using the otn-label-start-end 235 grouping. The label-step definition for OTN should be augmented 236 using the otn-label-step grouping. It is expected that the otn- 237 label-step will always be equal to its default value (i.e., 1), which 238 is defined in [I-D.ietf-teas-yang-te-types]. 240 As described in [RFC7139], in some cases, the TPN assignment rules is 241 flexible (e.g., ODU4 Link) while in other cases the TPN assignment 242 rules are fixed (e.g., ODU1 Link). In the former case, both TPN and 243 TS ranges are reported, while in the latter case, the TPN range is 244 not reported to indicate that the TPN shall be set equal to the TS 245 number assigned to the ODUk LSP. 247 As described in [RFC7139], in some cases, the TPN assignment rules 248 depends on the TS Granularity (e.g., ODU2 or ODU3 Links). Different 249 entries in the label-restriction list will report different TPN 250 ranges for each TS granularity supported by the link, as indicated by 251 the tsg attribute in the otn-label-range-info grouping. 253 As described in [RFC7139], in some cases, the TPN ranges are 254 different for different types of ODUk LSPs. For example, on an ODU2 255 Link with 1,25G TS granularity, there is TPN range 1-4 for ODU1 and 256 another TPN range 1-8 in common for ODU0 and ODUflex. Different 257 entries in the label-restriction list will report different TPN 258 ranges for different set of ODUk types, as indicated by the odu-type- 259 list in the otn-label-range-info grouping. 261 Appendix A provides some examples of how the TPN and TS label ranges 262 described in Table 3 and Table 4 of [RFC7139] can be represented in 263 YANG using the groupings defined in this document. 265 4.4. ODUflex 267 ODUflex is a type of ODU which has a flexible bit rate which should 268 be configured when setting up an ODUflex LSP. 270 [ITU-Tg709], defines six types of ODUflex: ODUflex(CBR), 271 ODUflex(GFP), ODUflex(GFP,n,k), ODUflex(IMP), ODUflex(IMP,s) and 272 ODUflex(FlexE-aware). 274 The main difference between these types of ODUflex is the formula 275 used to calculate the nominal bit rate of the ODUflex, as described 276 in Table 7-2 of [ITU-Tg709]. A choice has been defined to describe 277 these cases: 279 +--rw (oduflex-type)? 280 +--:(generic) 281 | +--rw nominal-bit-rate uint64 282 +--:(cbr) 283 | +--rw client-type identityref 284 +--:(gfp-n-k) 285 | +--rw gfp-n uint8 286 | +--rw gfp-k? l1-types:gfp-k 287 +--:(flexe-client) 288 | +--rw flexe-client 289 | l1-types:flexe-client-rate 290 +--:(flexe-aware) 291 | +--rw flexe-aware-n uint16 292 +--:(packet) 293 +--rw opuflex-payload-rate uint64 295 The (generic) case has been added to allow defining the ODUflex 296 nominal bit rate independently from the type of ODUflex. This could 297 be useful for forward compatibility in the transit domain/nodes where 298 the setup of ODUflex LSPs does not depend from the ODUflex type. 300 In order to simplify interoperability it is recommended to use 301 (generic) case only when needed and to use the ODUflex specific type 302 case whenever possible. 304 The (cbr) case is used for Constant Bit Rate (CBR) client signals. 305 The client-type indicates which is the CBR client signal carried by 306 the ODUflex and, implicitly, also the client signal bit rate which is 307 used to calculate the ODUflex(CBR) nominal bit rate as described in 308 Table 7-2 of [ITU-Tg709]. 310 The (gfp-n-k) case is used for GFP-F mapped client signals based on 311 ODUk.ts and n 1.25G tributary slots. The gfp-k defines the nominal 312 bit-rate of the ODUk.ts which, together with the value of gfp-n, is 313 used to calculated the ODUflex(GFP,n,k) nominal bit rate as described 314 in Table 7-8 and Table L-7 of [ITU-Tg709] . With few exceptions, 315 shown in Table L-7 of [ITU-Tg709], the nominal bit-rate of the 316 ODUk.ts could be inferred from the value of n, as shown in Table 7-8 317 of [ITU-Tg709] and therefore the gfp-k is optional. 319 The (flexe-client) case is used for IMP mapped FlexE Client signals, 320 The flexe-client represents the type of FlexE Client carried by the 321 ODUflex which implicitly defines the value of s used to calculate the 322 ODUflex(s) nominal bit rate as described in Table 7-2 of [ITU-Tg709]. 323 The '10G' and '40G' enumeration values are used for 10G and 40G FlexE 324 Clients to implicitly define the values of s=2 and s=8. For the n x 325 25G FlexE Clients the value of n is used to defines the value of s=5 326 x n. 328 The (flexe-aware) case is used for FlexE-aware client signals. The 329 flexe-aware-n represents the value n (n = n1 + n2 + ... + np) which 330 is used to calculate the ODUflex(FlexE-aware) nominal bit rate as 331 described in Table 7-2 of [ITU-Tg709]. 333 When (packet) case is used for both the GFP-F mapped client signals 334 and the IMP mapped client signals. The opuflex-payload-rate is 335 either the GFP-F encapsulated packet client nominal bit rate or the 336 64b/66b encoded packet client nominal bit rate. The calculation of 337 ODUflex(GFP) nominal bit rate is defined in section 12.2.5 of 338 [ITU-Tg709], and the calculation of ODUflex(IMP) nominal bit rate is 339 defined in section 12.2.6 of [ITU-Tg709]. The same formula is used 340 in both cases. 342 Section 5.1 and 5.2 of [RFC7139] defines two rules to compute the 343 number of tributary slots to be allocated to ODUflex(CBR) and 344 ODUflex(GFP) LSPs when carried over an HO-ODUk link. According to 345 section 19.6 of [ITU-Tg709], the rules in section 5.2 applies only to 346 ODUflex(GFP,n,k) while the rules defined in section 5.1 applies to 347 any other ODUflex type, including but not being limited to 348 ODUflex(CBR). Section 20.5 of [ITU-Tg709] defines the rules to 349 compute the number of tributary slots to be allocated to ODUflex LSPs 350 when carried over an ODUCn link. 352 Following the [ITU-Tg709] definitions, the rules defined for 353 ODUflex(GFP,n,k) are used only when the (gfp-n-k) case is used. In 354 all the other cases, including the (generic) case, the rules defined 355 any other ODUflex type are used. 357 The number of available ODUs, defined for each ODUk type, including 358 ODUflex, together with the number of available time-slots, reported 359 as part of the OTN label range, provides sufficient information to 360 infer the OTN link bandwidth availability for ODUflex LSPs. This 361 information is independent from the ODUflex type. 363 4.4.1. Resizable ODUflex 365 Resizable ODUflex is a special type of ODUflex that supports the 366 procedures defined in [ITU-Tg7044] for hitless resizing of the 367 ODUflex nominal bit rate. 369 Two odu-type identities have been defined for ODUflex: 371 o The ODUflex identity, which is used with any type of non-resizable 372 ODUflex, as defined in Table 7-2 of [ITU-Tg709]. 374 o The ODUflex-resizable identity, which used only with resizable 375 ODUflex(GFP,n,k). 377 These two identities are used to identify whether an ODUflex(GFP,n,k) 378 LSP shall or not support the [ITU-Tg7044] hitless resizing procedures 379 as well as whether an OTN link supports only the setup of non- 380 resizable ODUflex LSPs or also the setup of resizable 381 ODUflex(GFP,n,k) LSP but with different capabilities (e.g., a lower 382 number of LSPs). 384 5. YANG Code for Layer1 Types 386 file "ietf-layer1-types@2020-03-09.yang" 387 module ietf-layer1-types { 388 yang-version 1.1; 389 namespace "urn:ietf:params:xml:ns:yang:ietf-layer1-types"; 390 prefix "l1-types"; 392 organization 393 "IETF CCAMP Working Group"; 394 contact 395 "WG Web: 396 WG List: 398 Editor: Haomian Zheng 399 401 Editor: Italo Busi 402 "; 404 description 405 "This module defines Layer 1 types. The model fully conforms 406 to the Network Management Datastore Architecture (NMDA). 408 Copyright (c) 2020 IETF Trust and the persons 409 identified as authors of the code. All rights reserved. 411 Redistribution and use in source and binary forms, with or 412 without modification, is permitted pursuant to, and subject 413 to the license terms contained in, the Simplified BSD License 414 set forth in Section 4.c of the IETF Trust's Legal Provisions 415 Relating to IETF Documents 416 (https://trustee.ietf.org/license-info). 417 This version of this YANG module is part of RFC XXXX; see 418 the RFC itself for full legal notices."; 420 revision "2020-03-09" { 421 description 422 "Initial Version"; 423 reference 424 "RFC XXXX: A YANG Data Model for Layer 1 Types"; 425 // RFC Editor: replace XXXX with actual RFC number, update date 426 // information and remove this note 427 } 429 typedef otn-tpn 430 { 431 type uint16 { 432 range "1..4095"; 433 } 434 description 435 "Tributary Port Number for OTN. "; 436 reference 437 "RFC7139: GMPLS Signaling Extensions for Control of Evolving 438 G.709 Optical Transport Networks."; 439 } 441 typedef otn-ts 442 { 443 type uint16 { 444 range "1..4095"; 445 } 446 description 447 "Tributary Slot for OTN. "; 448 reference 449 "RFC7139: GMPLS Signaling Extensions for Control of Evolving 450 G.709 Optical Transport Networks."; 451 } 453 typedef otn-label-range-type { 454 type enumeration { 455 enum trib-slot { 456 description 457 "Defines a range of OTN tributary slots. "; 458 } 459 enum trib-port { 460 description 461 "Defines a range of OTN tributary ports. "; 462 } 463 } 464 description 465 "Defines the type of OTN label range: TS or TPN. "; 466 } 468 typedef gfp-k { 469 type enumeration { 470 enum 2 { 471 description 472 "The ODU2.ts rate (1,249,177.230 kbit/s) is used 473 to compute the rate of an ODUflex(GFP,n,2). "; 474 } 475 enum 3 { 476 description 477 "The ODU3.ts rate (1,254,470.354 kbit/s) is used 478 to compute the rate of an ODUflex(GFP,n,3). "; 479 } 480 enum 4 { 481 description 482 "The ODU4.ts rate (1,301,467.133 kbit/s) is used 483 to compute the rate of an ODUflex(GFP,n,4). "; 484 } 485 } 486 description 487 "The ODUk.ts used to compute the rate of an ODUflex(GFP,n,k)"; 488 reference 489 "Table 7-8 and L-7 of G.709"; 490 } 492 typedef flexe-client-rate { 493 type union { 494 type uint16; 495 type enumeration { 496 enum "10G" { 497 description 498 "Represents a 10G FlexE Client signal (s=2)"; 499 } 500 enum "40G" { 501 description 502 "Represents a 40G FlexE Client signal (s=8)"; 503 } 504 } 505 } 506 description 507 "The FlexE Client signal rate (s x 5,156,250.000 kbit/s) 508 used to compute the rate of an ODUflex(IMP, s). 509 Valid values for s are s=2 (10G), s=4 (40G) and 510 s=5 x n (n x 25G). 511 In the first two cases an enumeration value 512 (either 10G or 40G) is used, while in the latter case 513 the value of n is used"; 514 reference 515 "Table 7-2 of G.709"; 516 } 518 identity tributary-slot-granularity { 519 description 520 "Tributary slot granularity"; 521 reference 522 "G.709/Y.1331, February 2016: Interfaces for the Optical 523 Transport Network (OTN)"; 524 } 526 identity tsg-1.25G { 527 base tributary-slot-granularity; 528 description 529 "1.25G tributary slot granularity"; 530 } 532 identity tsg-2.5G { 533 base tributary-slot-granularity; 534 description 535 "2.5G tributary slot granularity"; 536 } 538 identity tsg-5G { 539 base tributary-slot-granularity; 540 description 541 "5G tributary slot granularity"; 542 } 544 identity odu-type { 545 description 546 "Base identity for protocol framing used by tributary signals."; 547 } 549 identity ODU0 { 550 base odu-type; 551 description 552 "ODU0 protocol (1.24Gb/s). "; 553 reference "RFC7139/ITU-T G.709"; 554 } 556 identity ODU1 { 557 base odu-type; 558 description 559 "ODU1 protocol (2.49Gb/s)."; 560 reference "RFC7139/ITU-T G.709"; 561 } 563 identity ODU1e { 564 base odu-type; 565 description 566 "ODU1e protocol (10.35Gb/s)."; 567 reference "RFC7963/ITU-T G.sup43"; 568 } 570 identity ODU2 { 571 base odu-type; 572 description 573 "ODU2 protocol (10.03Gb/s)."; 574 reference "RFC7139/ITU-T G.709"; 575 } 577 identity ODU2e { 578 base odu-type; 579 description 580 "ODU2e protocol (10.39Gb/s)."; 581 reference "RFC7139/ITU-T G.709"; 582 } 584 identity ODU3 { 585 base odu-type; 586 description 587 "ODU3 protocol (40.31Gb/s)."; 588 reference "RFC7139/ITU-T G.709"; 589 } 591 identity ODU3e1 { 592 base odu-type; 593 description 594 "ODU3e1 protocol (41.77Gb/s)."; 595 reference "RFC7963/ITU-T G.sup43"; 596 } 598 identity ODU3e2 { 599 base odu-type; 600 description 601 "ODU3e2 protocol (41.78Gb/s)."; 602 reference "RFC7963/ITU-T G.sup43"; 603 } 605 identity ODU4 { 606 base odu-type; 607 description 608 "ODU4 protocol (104.79Gb/s)."; 609 reference "RFC7139/ITU-T G.709"; 610 } 612 identity ODUflex { 613 base odu-type; 614 description 615 "ODUflex protocol (flexibile bit rate, not resizable). 616 It could be used for any type of ODUflex, including 617 ODUflex(CBR), ODUflex(GFP), ODUflex(GFP,n,k), ODUflex(IMP,s), 618 ODUflex(IMP) and ODUflex(FlexE-aware)."; 619 reference "RFC7139/ITU-T G.709"; 620 } 622 identity ODUflex-resizable { 623 base odu-type; 624 description 625 "ODUflex protocol (flexibile bit rate, resizable). 626 It could be used only for ODUflex(GFP,n,k)."; 627 reference "RFC7139/ITU-T G.709 and ITU-T G.7044"; 628 } 630 identity client-signal { 631 description 632 "Base identity from which specific client signals for the 633 tunnel are derived"; 634 } 636 identity ETH-1Gb { 637 base client-signal; 638 description 639 "Client signal type of 1GbE"; 640 reference "RFC7139/ITU-T G.709"; 641 } 643 identity ETH-10Gb-LAN { 644 base client-signal; 645 description 646 "Client signal type of ETH-10Gb-LAN (10.3 Gb/s)"; 647 reference "RFC7139/ITU-T G.709/IEEE 802.3 Clause 49"; 648 } 650 identity ETH-10Gb-WAN { 651 base client-signal; 652 description 653 "Client signal type of ETH-10Gb-WAN (9.95 Gb/s)"; 654 reference "RFC7139/ITU-T G.709/IEEE 802.3 Clause 50"; 655 } 657 identity ETH-40Gb { 658 base client-signal; 659 description 660 "Client signal type of 40GbE"; 661 reference "RFC7139/ITU-T G.709"; 663 } 665 identity ETH-100Gb { 666 base client-signal; 667 description 668 "Client signal type of 100GbE"; 669 reference "RFC7139/ITU-T G.709"; 670 } 672 identity STM-1 { 673 base client-signal; 674 description 675 "Client signal type of STM-1"; 676 reference "RFC7139/ITU-T G.709"; 677 } 679 identity STM-4 { 680 base client-signal; 681 description 682 "Client signal type of STM-4"; 683 reference "RFC7139/ITU-T G.709"; 684 } 686 identity STM-16 { 687 base client-signal; 688 description 689 "Client signal type of STM-16"; 690 reference "RFC7139/ITU-T G.709"; 691 } 693 identity STM-64 { 694 base client-signal; 695 description 696 "Client signal type of STM-64"; 697 reference "RFC7139/ITU-T G.709"; 698 } 700 identity STM-256 { 701 base client-signal; 702 description 703 "Client signal type of STM-256"; 704 reference "RFC7139/ITU-T G.709"; 705 } 706 identity OC-3 { 707 base client-signal; 708 description 709 "Client signal type of OC3"; 710 reference "Telcordia GR-253-CORE"; 712 } 714 identity OC-12 { 715 base client-signal; 716 description 717 "Client signal type of OC12"; 718 reference "Telcordia GR-253-CORE"; 719 } 721 identity OC-48 { 722 base client-signal; 723 description 724 "Client signal type of OC48"; 725 reference "Telcordia GR-253-CORE"; 726 } 728 identity OC-192 { 729 base client-signal; 730 description 731 "Client signal type of OC192"; 732 reference "Telcordia GR-253-CORE"; 733 } 735 identity OC-768 { 736 base client-signal; 737 description 738 "Client signal type of OC768"; 739 reference "Telcordia GR-253-CORE"; 740 } 742 identity FC-100 { 743 base client-signal; 744 description 745 "Client signal type of Fibre Channel FC-100"; 746 reference "RFC4328/RFC7139"; 747 } 749 identity FC-200 { 750 base client-signal; 751 description 752 "Client signal type of Fibre Channel FC-200"; 753 reference "RFC4328/RFC7139"; 754 } 756 identity FC-400 { 757 base client-signal; 758 description 759 "Client signal type of Fibre Channel FC-400"; 761 reference "RFC4328/RFC7139"; 762 } 764 identity FC-800 { 765 base client-signal; 766 description 767 "Client signal type of Fibre Channel FC-800"; 768 reference "RFC4328/RFC7139"; 769 } 771 identity FC-1200 { 772 base client-signal; 773 description 774 "Client signal type of Fibre Channel FC-1200"; 775 reference "RFC4328/RFC7139"; 776 } 778 identity FC-1600 { 779 base client-signal; 780 description 781 "Client signal type of Fibre Channel FC-1600"; 782 reference "RFC4328/RFC7139"; 783 } 785 identity FC-3200 { 786 base client-signal; 787 description 788 "Client signal type of Fibre Channel FC-3200"; 789 reference "RFC4328/RFC7139"; 790 } 792 identity FICON-4G { 793 base client-signal; 794 description 795 "Client signal type of Fibre Connection 4G"; 796 reference "RFC4328/RFC7139"; 797 } 799 identity FICON-8G { 800 base client-signal; 801 description 802 "Client signal type of Fibre Connection 8G"; 803 reference "RFC4328/RFC7139"; 804 } 806 identity coding-func { 807 description 808 "Base identity from which coding function is derived."; 810 reference "MEF63: Subscriber Layer 1 Service Attributes"; 811 } 813 identity ETH-1000X { 814 base "coding-func"; 815 description 816 "PCS clause 36 coding function that corresponds to 817 1000BASE-X"; 818 reference "MEF63: Subscriber Layer 1 Service Attributes"; 819 } 821 identity ETH-10GW { 822 base "coding-func"; 823 description 824 "PCS clause 49 and WIS clause 50 coding func that 825 corresponds to 10GBASE-W (WAN PHY)"; 826 reference "MEF63: Subscriber Layer 1 Service Attributes"; 827 } 829 identity ETH-10GR { 830 base "coding-func"; 831 description 832 "PCS clause 49 coding function that corresponds to 833 10GBASE-R (LAN PHY)"; 834 reference "MEF63: Subscriber Layer 1 Service Attributes"; 835 } 837 identity ETH-40GR { 838 base "coding-func"; 839 description 840 "PCS clause 82 coding function that corresponds to 841 40GBASE-R"; 842 reference "MEF63: Subscriber Layer 1 Service Attributes"; 843 } 845 identity ETH-100GR { 846 base "coding-func"; 847 description 848 "PCS clause 82 coding function that corresponds to 849 100GBASE-R"; 850 reference "MEF63: Subscriber Layer 1 Service Attributes"; 851 } 853 identity optical-interface-func { 854 description 855 "base identity from which optical-interface-function is 856 derived."; 857 reference "MEF63: Subscriber Layer 1 Service Attributes"; 859 } 861 identity SX-PMD-1000 { 862 base "optical-interface-func"; 863 description 864 "SX-PMD-clause-38 Optical Interface function for 865 1000BASE-X PCS-36"; 866 reference "MEF63: Subscriber Layer 1 Service Attributes"; 867 } 869 identity LX-PMD-1000 { 870 base "optical-interface-func"; 871 description 872 "LX-PMD-clause-38 Optical Interface function for 873 1000BASE-X PCS-36"; 874 reference "MEF63: Subscriber Layer 1 Service Attributes"; 875 } 877 identity LX10-PMD-1000 { 878 base "optical-interface-func"; 879 description 880 "LX10-PMD-clause-59 Optical Interface function for 881 1000BASE-X PCS-36"; 882 reference "MEF63: Subscriber Layer 1 Service Attributes"; 883 } 885 identity BX10-PMD-1000 { 886 base "optical-interface-func"; 887 description 888 "BX10-PMD-clause-59 Optical Interface function for 889 1000BASE-X PCS-36"; 890 reference "MEF63: Subscriber Layer 1 Service Attributes"; 891 } 893 identity LW-PMD-10G { 894 base "optical-interface-func"; 895 description 896 "LW-PMD-clause-52 Optical Interface function for 897 10GBASE-W PCS-49-WIS-50"; 898 reference "MEF63: Subscriber Layer 1 Service Attributes"; 899 } 901 identity EW-PMD-10G { 902 base "optical-interface-func"; 903 description 904 "EW-PMD-clause-52 Optical Interface function for 905 10GBASE-W PCS-49-WIS-50"; 906 reference "MEF63: Subscriber Layer 1 Service Attributes"; 908 } 910 identity LR-PMD-10G { 911 base "optical-interface-func"; 912 description 913 "LR-PMD-clause-52 Optical Interface function for 914 10GBASE-R PCS-49"; 915 reference "MEF63: Subscriber Layer 1 Service Attributes"; 916 } 918 identity ER-PMD-10G { 919 base "optical-interface-func"; 920 description 921 "ER-PMD-clause-52 Optical Interface function for 922 10GBASE-R PCS-49"; 923 reference "MEF63: Subscriber Layer 1 Service Attributes"; 924 } 926 identity LR4-PMD-40G { 927 base "optical-interface-func"; 928 description 929 "LR4-PMD-clause-87 Optical Interface function for 930 40GBASE-R PCS-82"; 931 reference "MEF63: Subscriber Layer 1 Service Attributes"; 932 } 934 identity ER4-PMD-40G { 935 base "optical-interface-func"; 936 description 937 "ER4-PMD-clause-87 Optical Interface function for 938 40GBASE-R PCS-82"; 939 reference "MEF63: Subscriber Layer 1 Service Attributes"; 940 } 942 identity FR-PMD-40G { 943 base "optical-interface-func"; 944 description 945 "FR-PMD-clause-89 Optical Interface function for 946 40GBASE-R PCS-82"; 947 reference "MEF63: Subscriber Layer 1 Service Attributes"; 948 } 950 identity LR4-PMD-100G { 951 base "optical-interface-func"; 952 description 953 "LR4-PMD-clause-88 Optical Interface function for 954 100GBASE-R PCS-82"; 955 reference "MEF63: Subscriber Layer 1 Service Attributes"; 957 } 959 identity ER4-PMD-100G { 960 base "optical-interface-func"; 961 description 962 "ER4-PMD-clause-88 Optical Interface function for 963 100GBASE-R PCS-82"; 964 reference "MEF63: Subscriber Layer 1 Service Attributes"; 965 } 967 identity service-performance-metric { 968 description 969 "Base identity of service-specific performance metric"; 970 reference "MEF63: Subscriber Layer 1 Service Attributes"; 971 } 973 identity one-way-delay { 974 base "service-performance-metric"; 975 description "one way delay."; 976 reference "MEF63: Subscriber Layer 1 Service Attributes"; 977 } 979 identity one-way-errored-second { 980 base "service-performance-metric"; 981 description "one way errored second"; 982 reference "MEF63: Subscriber Layer 1 Service Attributes"; 983 } 985 identity one-way-severely-errored-second { 986 base "service-performance-metric"; 987 description "one way severely errored second"; 988 reference "MEF63: Subscriber Layer 1 Service Attributes"; 989 } 991 identity one-way-unavailable-second { 992 base "service-performance-metric"; 993 description "one way unavailable second"; 994 reference "MEF63: Subscriber Layer 1 Service Attributes"; 995 } 997 identity one-way-availability { 998 base "service-performance-metric"; 999 description "one way availability"; 1000 reference "MEF63: Subscriber Layer 1 Service Attributes"; 1001 } 1003 grouping otn-link-bandwidth { 1004 description "link bandwidth attributes for OTN"; 1005 list odulist { 1006 key "odu-type"; 1007 description 1008 "OTN bandwidth definition"; 1009 leaf odu-type { 1010 type identityref { 1011 base l1-types:odu-type; 1012 } 1013 description "ODU type"; 1014 } 1015 leaf number { 1016 type uint16; 1017 description "Number of ODUs"; 1018 } 1019 } 1020 } 1022 grouping otn-path-bandwidth { 1023 description 1024 "path bandwidth attributes for OTN"; 1025 leaf odu-type { 1026 type identityref { 1027 base l1-types:odu-type; 1028 } 1029 description "ODU type"; 1030 } 1031 choice oduflex-type { 1032 when "odu-type = 'ODUflex' or 'ODUflex-resizable'" { 1033 description 1034 "applicable when odu-type is ODUflex or ODUflex-resizable"; 1035 } 1036 description 1037 "Types of ODUflex used to compute the ODUflex 1038 nominal bit rate."; 1039 reference 1040 "Table 7-2 of G.709"; 1041 case generic { 1042 leaf nominal-bit-rate { 1043 type uint64; 1044 units "bps"; 1045 mandatory true; 1046 description 1047 "Nominal ODUflex bit rate."; 1048 } 1049 } 1050 case cbr { 1051 leaf client-type { 1052 type identityref { 1053 base l1-types:client-signal; 1054 } 1055 mandatory true; 1056 description 1057 "The CBR client signal for an ODUflex(CBR)."; 1058 } 1059 } 1060 case gfp-n-k { 1061 leaf gfp-n { 1062 type uint8 { 1063 range "1..80"; 1064 } 1065 mandatory true; 1066 description 1067 "The value of n for an ODUflex(GFP,n,k)."; 1068 reference 1069 "Tables 7-8 and L-7 of G.709"; 1070 } 1071 leaf gfp-k { 1072 type l1-types:gfp-k; 1073 description 1074 "The value of k for an ODUflex(GFP,n,k). 1075 If omitted, it is calculated from the value of gfp-n 1076 as described in Table 7-8 of G.709"; 1077 reference 1078 "Tables 7-8 and L-7 of G.709"; 1079 } 1080 } 1081 case flexe-client { 1082 leaf flexe-client { 1083 type l1-types:flexe-client-rate; 1084 mandatory true; 1085 description 1086 "The rate of the FlexE-client for an ODUflex(IMP,s)."; 1087 } 1088 } 1089 case flexe-aware { 1090 leaf flexe-aware-n { 1091 type uint16; 1092 mandatory true; 1093 description 1094 "The rate of FlexE-aware client signal 1095 for ODUflex(FlexE-aware)"; 1096 } 1097 } 1098 case packet { 1099 leaf opuflex-payload-rate { 1100 type uint64; 1101 units "Kbps"; 1102 mandatory true; 1103 description 1104 "Either the GFP-F encapsulated packet client nominal 1105 bit rate for an ODUflex(GFP) or the 64b/66b encoded 1106 packet client nominal bit rate for an ODUflex(IMP)."; 1107 } 1108 } 1109 } 1110 } 1112 grouping otn-label-range-info { 1113 description 1114 "label range information for OTN, is dependent on the 1115 range-type, must be used together with the following 1116 groupings: otn-label-start-end and otn-label-step. "; 1117 leaf range-type { 1118 type l1-types:otn-label-range-type; 1119 description "The type of range (e.g., TPN or TS) 1120 to which the label range applies"; 1121 } 1122 leaf tsg { 1123 type identityref { 1124 base l1-types:tributary-slot-granularity; 1125 } 1126 description 1127 "Tributary slot granularity (TSG) to which the label range 1128 applies. 1129 This leaf shall be present when the range-type is TS; 1130 This leaf can be omitted when mapping an ODUk over an OTUk 1131 Link. In this case the range-type is tpn, with only one entry 1132 (ODUk), and the tpn range has only one value (1). "; 1133 reference 1134 "G.709/Y.1331, February 2016: Interfaces for the 1135 Optical Transport Network (OTN)"; 1136 } 1137 leaf-list odu-type-list { 1138 type identityref { 1139 base odu-type; 1140 } 1141 description 1142 "List of ODU types to which the label range applies. 1143 An Empty odu-type-list means that the label range 1144 applies to all the supported ODU types."; 1145 } 1146 leaf priority { 1147 type uint8; 1148 description 1149 "Priority in Interface Switching Capability 1150 Descriptor (ISCD)."; 1151 reference "RFC4203."; 1152 } 1153 } 1155 grouping otn-label-start-end { 1156 description 1157 "The OTN label-start or label-end used to specify an OTN label 1158 range. this grouping is dependent on the range-type, 1159 must be used together with the following groupings: 1160 otn-label-range-info and otn-label-step. "; 1161 choice range-type { 1162 description 1163 "OTN label range type, either TPN range or TS range"; 1164 case trib-port { 1165 leaf otn-tpn { 1166 when "../../../range-type = 'trib-port'" { 1167 description 1168 "valid only when range-type represented by trib-port"; 1169 } 1170 type l1-types:otn-tpn; 1171 description 1172 "Tributary Port Number."; 1173 reference 1174 "RFC7139: GMPLS Signaling Extensions for Control of Evolving 1175 G.709 Optical Transport Networks."; 1176 } 1177 } 1178 case trib-slot { 1179 leaf otn-ts { 1180 when "../../../range-type = 'trib-slot'" { 1181 description 1182 "valid only when range-type represented by trib-slot"; 1183 } 1184 type l1-types:otn-ts; 1185 description 1186 "Tributary Slot Number."; 1187 reference 1188 "RFC7139: GMPLS Signaling Extensions for Control of Evolving 1189 G.709 Optical Transport Networks."; 1190 } 1191 } 1192 } 1193 } 1195 grouping otn-label-hop { 1196 description "OTN Label. "; 1197 reference "RFC7139, section 6. "; 1198 leaf otn-tpn { 1199 type l1-types:otn-tpn; 1200 description 1201 "Tributary Port Number."; 1202 reference 1203 "RFC7139: GMPLS Signaling Extensions for Control of Evolving 1204 G.709 Optical Transport Networks."; 1205 } 1206 leaf tsg { 1207 type identityref { 1208 base l1-types:tributary-slot-granularity; 1209 } 1210 description "Tributary slot granularity."; 1211 reference 1212 "G.709/Y.1331, February 2016: Interfaces for the 1213 Optical Transport Network (OTN)"; 1214 } 1215 leaf ts-list { 1216 type string { 1217 pattern "([1-9][0-9]{0,3}(-[1-9][0-9]{0,3})?" 1218 + "(,[1-9][0-9]{0,3}(-[1-9][0-9]{0,3})?)*)"; 1219 } 1220 description 1221 "A list of available tributary slots ranging 1222 between 1 and 4095. If multiple values or 1223 ranges are given, they all MUST be disjoint 1224 and MUST be in ascending order. 1225 For example 1-20,25,50-1000. "; 1226 reference 1227 "RFC 7139: GMPLS Signaling Extensions for Control 1228 of Evolving G.709 Optical Transport Networks"; 1229 } 1230 } 1232 grouping otn-label-step { 1233 description 1234 "Label step for OTN, is dependent on the range-type, 1235 must be used together with the following groupings: 1236 otn-label-range-info and otn-label-start-end. "; 1237 choice range-type { 1238 description 1239 "OTN label range type, either TPN range or TS range"; 1240 case trib-port { 1241 leaf otn-tpn { 1242 when "../../../range-type = 'trib-port'" { 1243 description 1244 "valid only when range-type represented by trib-port"; 1246 } 1247 type l1-types:otn-tpn; 1248 description 1249 "Label step which represents possible increments for 1250 Tributary Port Number."; 1251 reference 1252 "RFC7139: GMPLS Signaling Extensions for Control of 1253 Evolving G.709 Optical Transport Networks."; 1254 } 1255 } 1256 case trib-slot { 1257 leaf otn-ts { 1258 when "../../../range-type = 'trib-slot'" { 1259 description 1260 "valid only when range-type represented by trib-slot"; 1261 } 1262 type l1-types:otn-ts; 1263 description 1264 "Label step which represents possible increments for 1265 Tributary Slot Number."; 1266 reference 1267 "RFC7139: GMPLS Signaling Extensions for Control of Evolving 1268 G.709 Optical Transport Networks."; 1269 } 1270 } 1271 } 1272 } 1274 } 1276 1278 6. Security Considerations 1280 The YANG module specified in this document defines a schema for data 1281 that is designed to be accessed via network management protocols such 1282 as NETCONF [RFC6241] or RESTCONF [RFC8040]. The lowest NETCONF layer 1283 is the secure transport layer, and the mandatory-to-implement secure 1284 transport is Secure Shell (SSH) [RFC6242]. The lowest RESTCONF layer 1285 is HTTPS, and the mandatory-to-implement secure transport is TLS 1286 [RFC8446]. 1288 The NETCONF access control model [RFC8341] provides the means to 1289 restrict access for particular NETCONF or RESTCONF users to a 1290 preconfigured subset of all available NETCONF or RESTCONF protocol 1291 operations and content. 1293 The YANG module in this document defines layer 1 type definitions 1294 (i.e., typedef, identity and grouping statements) in YANG data 1295 modeling language to be imported and used by other layer 1 1296 technology-specific modules. When imported and used, the resultant 1297 schema will have data nodes that can be writable, or readable. The 1298 access to such data nodes may be considered sensitive or vulnerable 1299 in some network environments. Write operations (e.g., edit-config) 1300 to these data nodes without proper protection can have a negative 1301 effect on network operations. 1303 The security considerations spelled out in the YANG 1.1 specification 1304 [RFC7950] apply for this document as well. 1306 7. IANA Considerations 1308 It is proposed that IANA should assign new URIs from the "IETF XML 1309 Registry" [RFC3688] as follows: 1311 URI: urn:ietf:params:xml:ns:yang:ietf-layer1-types 1312 Registrant Contact: The IESG 1313 XML: N/A; the requested URI is an XML namespace. 1315 This document registers following YANG modules in the YANG Module 1316 Names registry [RFC7950]. 1318 name: ietf-layer1-types 1319 namespace: urn:ietf:params:xml:ns:yang:ietf-otn-types 1320 prefix: l1-types 1321 reference: RFC XXXX 1323 8. Acknowledgements 1325 The authors and the working group give their sincere thanks for 1326 Robert Wilton for the YANG doctor review, and Tom Petch for his 1327 comments during the model and document development. 1329 9. Contributors 1331 Dieter Beller 1332 Nokia 1333 Email: dieter.beller@nokia.com 1335 Sergio Belotti 1336 Nokia 1337 Email: sergio.belotti@nokia.com 1339 Yanlei Zheng 1340 China Unicom 1341 Email: zhengyanlei@chinaunicom.cn 1343 Aihua Guo 1344 Futurewei Technologies 1345 Email: aihuaguo@futurewei.com 1347 Young Lee 1348 Samsung 1349 Email: younglee.tx@gmail.com 1351 Lei Wang 1352 China Mobile 1353 Email: wangleiyj@chinamobile.com 1355 Oscar Gonzalez de Dios 1356 Telefonica 1357 Email: oscar.gonzalezdedios@telefonica.com 1359 Xufeng Liu 1360 Volta Networks 1361 Email: xufeng.liu.ietf@gmail.com 1363 Yunbin Xu 1364 CAICT 1365 Email: xuyunbin@caict.ac.cn 1367 Anurag Sharma 1368 Google 1369 Email: ansha@google.com 1371 Rajan Rao 1372 Infinera 1373 Email: rrao@infinera.com 1375 Victor Lopez 1376 Telefonica 1377 Email: victor.lopezalvarez@telefonica.com 1379 Yunbo Li 1380 China Mobile 1381 Email: liyunbo@chinamobile.com 1383 10. References 1385 10.1. Normative References 1387 [I-D.ietf-teas-yang-te-types] 1388 Saad, T., Gandhi, R., Liu, X., Beeram, V., and I. Bryskin, 1389 "Traffic Engineering Common YANG Types", draft-ietf-teas- 1390 yang-te-types-13 (work in progress), November 2019. 1392 [ITU-Tg7044] 1393 International Telecommunication Union, "Hitless adjustment 1394 of ODUflex(GFP)", ITU-T G.7044, October 2011. 1396 [ITU-Tg709] 1397 International Telecommunication Union, "Interfaces for the 1398 optical transport network", ITU-T G.709, March 2020. 1400 [ITU-Tgsup43] 1401 International Telecommunication Union, "Transport of IEEE 1402 10GBASE-R in optical transport networks (OTN)", 1403 ITU-T G.sup43, February 2011. 1405 [MEF63] Metro Ethernet Forum, "Subscriber Layer1 Service 1406 Attributes Technical Specification", MEF 63, August 2018. 1408 [RFC3688] Mealling, M., "The IETF XML Registry", BCP 81, RFC 3688, 1409 DOI 10.17487/RFC3688, January 2004, 1410 . 1412 [RFC6241] Enns, R., Ed., Bjorklund, M., Ed., Schoenwaelder, J., Ed., 1413 and A. Bierman, Ed., "Network Configuration Protocol 1414 (NETCONF)", RFC 6241, DOI 10.17487/RFC6241, June 2011, 1415 . 1417 [RFC6242] Wasserman, M., "Using the NETCONF Protocol over Secure 1418 Shell (SSH)", RFC 6242, DOI 10.17487/RFC6242, June 2011, 1419 . 1421 [RFC7139] Zhang, F., Ed., Zhang, G., Belotti, S., Ceccarelli, D., 1422 and K. Pithewan, "GMPLS Signaling Extensions for Control 1423 of Evolving G.709 Optical Transport Networks", RFC 7139, 1424 DOI 10.17487/RFC7139, March 2014, 1425 . 1427 [RFC7950] Bjorklund, M., Ed., "The YANG 1.1 Data Modeling Language", 1428 RFC 7950, DOI 10.17487/RFC7950, August 2016, 1429 . 1431 [RFC7963] Ali, Z., Bonfanti, A., Hartley, M., and F. Zhang, "RSVP-TE 1432 Extension for Additional Signal Types in G.709 Optical 1433 Transport Networks (OTNs)", RFC 7963, 1434 DOI 10.17487/RFC7963, August 2016, 1435 . 1437 [RFC8040] Bierman, A., Bjorklund, M., and K. Watsen, "RESTCONF 1438 Protocol", RFC 8040, DOI 10.17487/RFC8040, January 2017, 1439 . 1441 [RFC8341] Bierman, A. and M. Bjorklund, "Network Configuration 1442 Access Control Model", STD 91, RFC 8341, 1443 DOI 10.17487/RFC8341, March 2018, 1444 . 1446 [RFC8342] Bjorklund, M., Schoenwaelder, J., Shafer, P., Watsen, K., 1447 and R. Wilton, "Network Management Datastore Architecture 1448 (NMDA)", RFC 8342, DOI 10.17487/RFC8342, March 2018, 1449 . 1451 [RFC8446] Rescorla, E., "The Transport Layer Security (TLS) Protocol 1452 Version 1.3", RFC 8446, DOI 10.17487/RFC8446, August 2018, 1453 . 1455 [Telcordia] 1456 Telcordia, "Synchronous Optical Network Transport Systems: 1457 Common Generic Criteria, Issue 5", Telcordia GR-253-CORE, 1458 October 2009. 1460 10.2. Informative References 1462 [I-D.ietf-ccamp-client-signal-yang] 1463 Zheng, H., Guo, A., Busi, I., Snitser, A., Lazzeri, F., 1464 Xu, Y., Zhao, Y., Liu, X., and G. Fioccola, "A YANG Data 1465 Model for Transport Network Client Signals", draft-ietf- 1466 ccamp-client-signal-yang-01 (work in progress), November 1467 2019. 1469 [I-D.ietf-ccamp-l1csm-yang] 1470 Lee, Y., Lee, K., Zheng, H., Dhody, D., Dios, O., and D. 1471 Ceccarelli, "A YANG Data Model for L1 Connectivity Service 1472 Model (L1CSM)", draft-ietf-ccamp-l1csm-yang-10 (work in 1473 progress), September 2019. 1475 [I-D.ietf-ccamp-otn-topo-yang] 1476 Zheng, H., Busi, I., Liu, X., Belotti, S., and O. Dios, "A 1477 YANG Data Model for Optical Transport Network Topology", 1478 draft-ietf-ccamp-otn-topo-yang-09 (work in progress), 1479 November 2019. 1481 [I-D.ietf-ccamp-otn-tunnel-model] 1482 Zheng, H., Busi, I., Belotti, S., Lopezalvarez, V., and Y. 1483 Xu, "OTN Tunnel YANG Model", draft-ietf-ccamp-otn-tunnel- 1484 model-09 (work in progress), November 2019. 1486 [I-D.ietf-ccamp-transport-nbi-app-statement] 1487 Busi, I., King, D., Zheng, H., and Y. Xu, "Transport 1488 Northbound Interface Applicability Statement", draft-ietf- 1489 ccamp-transport-nbi-app-statement-10 (work in progress), 1490 November 2019. 1492 [I-D.ietf-netmod-artwork-folding] 1493 Watsen, K., Auerswald, E., Farrel, A., and Q. WU, 1494 "Handling Long Lines in Inclusions in Internet-Drafts and 1495 RFCs", draft-ietf-netmod-artwork-folding-12 (work in 1496 progress), January 2020. 1498 [RFC7062] Zhang, F., Ed., Li, D., Li, H., Belotti, S., and D. 1499 Ceccarelli, "Framework for GMPLS and PCE Control of G.709 1500 Optical Transport Networks", RFC 7062, 1501 DOI 10.17487/RFC7062, November 2013, 1502 . 1504 [RFC7138] Ceccarelli, D., Ed., Zhang, F., Belotti, S., Rao, R., and 1505 J. Drake, "Traffic Engineering Extensions to OSPF for 1506 GMPLS Control of Evolving G.709 Optical Transport 1507 Networks", RFC 7138, DOI 10.17487/RFC7138, March 2014, 1508 . 1510 Appendix A. Examples of OTN Label Ranges 1512 This appendix provides some examples of how the TPN and TS label 1513 ranges described in Table 3 and Table 4 of [RFC7139] can be 1514 represented in YANG using the groupings defined in this document. 1516 It also considers the OTUk links in addition to HO-ODUk links. 1518 The JSON code examples provided in this appendix provides some 1519 embedded comments following the conventions in section 3.2 of [I- 1520 D.ietf-ccamp-transport-nbi-app-statement] and have been folded using 1521 the tool in [I-D.ietf-netmod-artwork-folding]. 1523 ========== NOTE: '\\' line wrapping per BCP XXX (RFC XXXX) ========== 1525 { 1526 "examples of label-restrictions for different OTN Links": [ 1527 { 1528 "// ": "HO-ODU1 or OTU1 Link", 1529 "label-restrictions": { 1530 "label-restriction": [ 1531 { 1532 "index ": 1, 1533 "// ___DEFAULT___ restriction": "inclusive", 1534 "range-type": "label-range-trib-port", 1535 "// ___NOT-PRESENT___ tsg": "", 1536 "odu-type-list": "[ ODU1 ]", 1537 "// ___DEFAULT___ priority": 7, 1538 "// tpn-range": 1, 1539 "// ___ COMMENT ___": "Since no TS range and no TSG are \ 1540 \reported for ODU1, the link is an OTU1 Link. TS allocation is not n\ 1541 \eeded and TPN shall be set to '1' for mapping ODU1 over OTU1. This \ 1542 \entry is not present if the OTN Link is an HO-ODU1 Link." 1543 }, 1544 { 1545 "index ": 2, 1546 "// ___DEFAULT___ restriction": "inclusive", 1547 "range-type": "label-range-trib-slot", 1548 "tsg": "tsg-1.25G", 1549 "odu-type-list": "[ ODU0 ]", 1550 "// ts-range": "1-2", 1551 "// ___ COMMENT ___": "Since no TPN range is reportd for\ 1552 \ ODU0 with 1.25G TSG, the TPN allocation rule is fixed (TPN = TS#) \ 1553 \for mapping LO-ODU0 over HO-ODU1 with 1.25G TSG. See Table 4 of [RF\ 1554 \C7139]." 1555 } 1556 ] 1557 } 1558 }, 1559 { 1560 "// ": "HO-ODU2 or OTU2 Link", 1561 "label-restrictions": { 1562 "label-restriction": [ 1563 { 1564 "index ": 1, 1565 "// ___DEFAULT___ restriction": "inclusive", 1566 "range-type": "label-range-trib-port", 1567 "// ___NOT-PRESENT___ tsg": "", 1568 "odu-type-list": "[ ODU2 ]", 1569 "// ___ DEFAULT ___ priority": 7, 1570 "// tpn-range": 1, 1571 "// ___ COMMENT ___": "Since no TS range and no TSG are \ 1572 \reported for ODU2, the link is an OTU2 Link. TS allocation is not n\ 1573 \eeded and TPN shall be set to '1' for mapping ODU2 over OTU2. This \ 1574 \entry is not present if the OTN Link is an HO-ODU2 Link." 1575 }, 1576 { 1577 "index ": 2, 1578 "// ___DEFAULT___ restriction": "inclusive", 1579 "range-type": "label-range-trib-slot", 1580 "tsg": "tsg-1.25G", 1581 "odu-type-list": "[ ODUFlex-cbr, ODUFlex-gfp, ODU0, ODU1\ 1582 \ ]", 1583 "// ___ DEFAULT ___ priority": 7, 1584 "// ts-range": "1-8" 1585 }, 1586 { 1587 "index ": 3, 1588 "// ___DEFAULT___ restriction": "inclusive", 1589 "range-type": "label-range-trib-port", 1590 "tsg": "tsg-1.25G ", 1591 "odu-type-list": "[ ODUFlex-cbr, ODUFlex-gfp, ODU0 ]", 1592 "// ___ DEFAULT ___ priority": 7, 1593 "// tpn-range": "1-8", 1594 "// ___ COMMENT ___": "Since this TPN range is reported \ 1595 \for ODUflex and ODU0 with 1.25G TSG, the TPN assignment rule is fle\ 1596 \xible within a common range for mapping LO-ODUflex and LO-ODU0 over\ 1597 \ HO-ODU2 with 1.25G TSG. See Table 4 of [RFC7139]." 1598 }, 1599 { 1600 "index ": 4, 1601 "// ___DEFAULT___ restriction": "inclusive", 1602 "range-type": "label-range-trib-port", 1603 "tsg": "tsg-1.25G", 1604 "odu-type-list": "[ ODU1 ]", 1605 "// ___ DEFAULT ___ priority": 7, 1606 "// tpn-range": "1-4", 1607 "// ___ COMMENT ___": "Since this TPN range is reported \ 1608 \for ODU1 with 1.25G TSG, the TPN assignment rule is flexible within\ 1609 \ a common range for mapping LO-ODU1 over HO-ODU2 with 1.25G TSG. Se\ 1610 \e Table 4 of [RFC7139]." 1611 }, 1612 { 1613 "index ": 5, 1614 "// ___DEFAULT___ restriction": "inclusive", 1615 "range-type": "label-range-trib-slot", 1616 "tsg": "tsg-2.5G", 1617 "odu-type-list": "[ ODU1 ]", 1618 "// ___ DEFAULT ___ priority": 7, 1619 "// ts-range": "1-4", 1620 "// ___ COMMENT ___": "Since no TPN range is reported fo\ 1621 \r ODU1 with 2.5G TSG, the TPN allocation rule is fixed (TPN = TS#) \ 1622 \for mapping LO-ODU1 over HO-ODU2 with 2.5G TSG. See Table 3 of [RFC\ 1623 \7139]." 1624 } 1625 ] 1626 } 1627 }, 1628 { 1629 "// ": "HO-ODU3 or OTU3 Link", 1630 "label-restrictions": { 1631 "label-restriction": [ 1632 { 1633 "index ": 1, 1634 "// ___DEFAULT___ restriction": "inclusive", 1635 "range-type": "label-range-trib-port", 1636 "// ___NOT-PRESENT___ tsg": "", 1637 "odu-type-list": "[ ODU3 ]", 1638 "// ___ DEFAULT ___ priority": 7, 1639 "// tpn-range": 1, 1640 "// ___ COMMENT ___": "Since no TS range and no TSG are \ 1641 \reported for ODU3, the link is an OTU3 Link. TS allocation is not n\ 1642 \eeded and TPN shall be set to '1' for mapping ODU3 over OTU3. This \ 1643 \entry is not present if the OTN Link is an HO-ODU3 Link." 1644 }, 1645 { 1646 "index ": 2, 1647 "// ___DEFAULT___ restriction": "inclusive", 1648 "range-type": "label-range-trib-slot", 1649 "tsg": "tsg-1.25G", 1650 "odu-type-list": "[ ODUFlex-cbr, ODUFlex-gfp, ODU0, ODU1\ 1651 \, ODU2, ODU2e ]", 1652 "// ___ DEFAULT ___ priority": 7, 1653 "// ts-range": "1-32" 1654 }, 1655 { 1656 "index ": 3, 1657 "// ___DEFAULT___ restriction": "inclusive", 1658 "range-type": "label-range-trib-port", 1659 "tsg": "tsg-1.25G", 1660 "odu-type-list": "[ ODUFlex-cbr, ODUFlex-gfp, ODU0, ODU2\ 1661 \e ]", 1662 "// ___ DEFAULT ___ priority": 7, 1663 "// tpn-range": "1-32", 1664 "// ___ COMMENT ___": "Since this TPN range is reported \ 1665 \for ODUflex, ODU0 and ODU2e with 1.25G TSG, the TPN assignment rule\ 1666 \ is flexible within a common range for mapping LO-ODUflex, LO-ODU0 \ 1667 \and LO-ODU2e over HO-ODU3 with 1.25G TSG. See Table 4 of [RFC7139]." 1668 }, 1669 { 1670 "index ": 4, 1671 "// ___DEFAULT___ restriction": "inclusive", 1672 "range-type": "label-range-trib-port", 1673 "tsg": "tsg-1.25G", 1674 "odu-type-list": "[ ODU1 ]", 1675 "// ___ DEFAULT ___ priority": 7, 1676 "// tpn-range": "1-16", 1677 "// ___ COMMENT ___": "Since this TPN range is reported \ 1678 \for ODU1 with 1.25G TSG, the TPN assignment rule is flexible within\ 1679 \ a common range for mapping LO-ODU1 over HO-ODU3 with 1.25G TSG. Se\ 1680 \e Table 4 of [RFC7139]." 1681 }, 1682 { 1683 "index ": 5, 1684 "// ___DEFAULT___ restriction": "inclusive", 1685 "range-type": "label-range-trib-port", 1686 "tsg": "tsg-1.25G", 1687 "odu-type-list": "[ ODU2 ]", 1688 "// ___ DEFAULT ___ priority": 7, 1689 "// tpn-range": "1-4", 1690 "// ___ COMMENT ___": "Since this TPN range is reported \ 1691 \for ODU2 with 1.25G TSG, the TPN assignment rule is flexible within\ 1692 \ a common range for mapping LO-ODU2 over HO-ODU3 with 1.25G TSG. Se\ 1693 \e Table 4 of [RFC7139]." 1694 }, 1695 { 1696 "index ": 6, 1697 "// ___DEFAULT___ restriction": "inclusive", 1698 "range-type": "label-range-trib-slot", 1699 "tsg": "tsg-2.5G", 1700 "odu-type-list": "[ ODU1, ODU2 ]", 1701 "// ___ DEFAULT ___ priority": 7, 1702 "// ts-range": "1-16" 1703 }, 1704 { 1705 "index ": 7, 1706 "// ___DEFAULT___ restriction": "inclusive", 1707 "range-type": "label-range-trib-port", 1708 "tsg": "tsg-2.5G ", 1709 "odu-type-list": "[ ODU2 ]", 1710 "// ___ DEFAULT ___ priority": 7, 1711 "// tpn-range": "1-4", 1712 "// ___ COMMENT ___": "Since this TPN range is reported \ 1713 \for ODU2 with 2.5G TSG, the TPN assignment rule is flexible within \ 1714 \a common range for mapping LO-ODU2 over HO-ODU3. Since no TPN range\ 1715 \ is reported for ODU1 with 2.5G TSG, the TPN allocation rule is fix\ 1716 \ed (TPN = TS#) for mapping LO-ODU1 over HO-ODU3 with 2.5G TSG. See \ 1717 \Table 3 of [RFC7139]." 1718 } 1719 ] 1720 } 1721 }, 1722 { 1723 "// ": "HO-ODU4 or OTU4 Link", 1724 "label-restrictions": { 1725 "label-restriction": [ 1726 { 1727 "index ": 1, 1728 "// ___DEFAULT___ restriction": "inclusive", 1729 "range-type": "label-range-trib-port", 1730 "// ___NOT-PRESENT___ tsg": "", 1731 "odu-type-list": "[ ODU4 ]", 1732 "// ___ DEFAULT ___ priority": 7, 1733 "// tpn-range": 1, 1734 "// ___ COMMENT ___": "Since no TS range and no TSG are \ 1735 \reported for ODU4, the link is an OTU4 Link. TS allocation is not n\ 1736 \eeded and TPN shall be set to '1' for mapping ODU4 over OTU4. This \ 1737 \entry is not present if the OTN Link is an HO-ODU4 Link." 1738 }, 1739 { 1740 "index ": 2, 1741 "// ___DEFAULT___ restriction": "inclusive", 1742 "range-type": "label-range-trib-slot", 1743 "tsg": "tsg-1.25G", 1744 "odu-type-list": "[ ODUFlex-cbr, ODUFlex-gfp, ODU0, ODU1\ 1745 \, ODU2, ODU2e, ODU3 ]", 1746 "// ___ DEFAULT ___ priority": 7, 1747 "// ts-range": "1-80" 1748 }, 1749 { 1750 "index ": 3, 1751 "// ___DEFAULT___ restriction": "inclusive", 1752 "range-type": "label-range-trib-port", 1753 "tsg": "tsg-1.25G", 1754 "odu-type-list": "[ ODUFlex-cbr, ODUFlex-gfp, ODU0, ODU1\ 1755 \, ODU2, ODU2e, ODU3 ]", 1756 "// ___ DEFAULT ___ priority": 7, 1757 "// tpn-range": "1-80", 1758 "// ___ COMMENT ___": "Since this TPN range is reported \ 1759 \for any LO-ODUj with 1.25G TSG, the TPN assignment rule is flexible\ 1760 \ within a common range for mapping any LO-ODUj over HO-ODU4 with 1.\ 1761 \25G TSG. See Table 4 of [RFC7139]." 1762 } 1764 ] 1765 } 1766 }, 1767 { 1768 "// ": "ODUC1 Link", 1769 "label-restrictions": { 1770 "label-restriction": [ 1771 { 1772 "index ": 1, 1773 "// ___DEFAULT___ restriction": "inclusive", 1774 "range-type": "label-range-trib-slot", 1775 "tsg": "tsg-5G", 1776 "odu-type-list": "[ ODUFlex-cbr, ODUFlex-gfp, ODU0, ODU1\ 1777 \, ODU2, ODU2e, ODU3, ODU4 ]", 1778 "// ___ DEFAULT ___ priority": 7, 1779 "// ts-range": "1-20", 1780 "// ___ COMMENT ___": "Since the TS range is specified f\ 1781 \or any ODUk, the OTN Link is an ODUCn Link." 1782 }, 1783 { 1784 "index ": 2, 1785 "// ___DEFAULT___ restriction": "inclusive", 1786 "range-type": "label-range-trib-port", 1787 "tsg": "tsg-5G", 1788 "odu-type-list": "[ ODUFlex-cbr, ODUFlex-gfp, ODU0, ODU1\ 1789 \, ODU2, ODU2e, ODU3, ODU4 ]", 1790 "// ___ DEFAULT ___ priority": 7, 1791 "// tpn-range": "1-10", 1792 "// ___ COMMENT ___": "Since this TPN range is reported \ 1793 \for any ODUk with 5G TSG, the TPN assignment rule is flexible withi\ 1794 \n a common range for mapping any ODUk over ODUCn with 5G TSG." 1795 } 1796 ] 1797 } 1798 } 1799 ] 1800 } 1802 Authors' Addresses 1803 Haomian Zheng 1804 Huawei Technologies 1805 H1, Huawei Industrial Base, Songshanhu 1806 Dongguan, Guangdong 523808 1807 China 1809 Email: zhenghaomian@huawei.com 1811 Italo Busi 1812 Huawei Technologies 1813 Milan 1814 Italy 1816 Email: Italo.Busi@huawei.com