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