idnits 2.17.1 draft-ietf-ccamp-layer0-types-ext-01.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 abstract seems to contain references ([RFC9093], [RFC9094]), which it shouldn't. Please replace those with straight textual mentions of the documents in question. == The 'Updates: ' line in the draft header should list only the _numbers_ of the RFCs which will be updated by this document (if approved); it should not include the word 'RFC' in the list. Miscellaneous warnings: ---------------------------------------------------------------------------- == The copyright year in the IETF Trust and authors Copyright Line does not match the current year == Line 867 has weird spacing: '... leaf min-O...' == Line 877 has weird spacing: '... leaf min-Q...' == The document doesn't use any RFC 2119 keywords, yet seems to have RFC 2119 boilerplate text. -- The document date (25 October 2021) is 912 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-optical-impairment-topology-yang' is defined on line 1156, but no explicit reference was found in the text == Unused Reference: 'RFC8795' is defined on line 1178, but no explicit reference was found in the text == Unused Reference: 'RFC2629' is defined on line 1205, but no explicit reference was found in the text == Outdated reference: A later version (-15) exists of draft-ietf-ccamp-optical-impairment-topology-yang-07 == Outdated reference: A later version (-10) exists of draft-ietf-ccamp-dwdm-if-param-yang-06 -- Obsolete informational reference (is this intentional?): RFC 2629 (Obsoleted by RFC 7749) -- Obsolete informational reference (is this intentional?): RFC 5226 (Obsoleted by RFC 8126) Summary: 1 error (**), 0 flaws (~~), 10 warnings (==), 3 comments (--). Run idnits with the --verbose option for more detailed information about the items above. -------------------------------------------------------------------------------- 2 CCAMP D. Beller, Ed. 3 Internet-Draft S. Belotti, Ed. 4 Updates: RFC9093 (if approved) Nokia 5 Intended status: Standards Track H. Zheng 6 Expires: 28 April 2022 I. Busi 7 Huawei 8 E. Le Rouzic 9 Orange 10 25 October 2021 12 A YANG Data Model for Layer 0 Types - Revision 2 13 draft-ietf-ccamp-layer0-types-ext-01 15 Abstract 17 This document defines a collection of common data types and groupings 18 in the YANG data modeling language, which are used in several YANG 19 modules for wavelength Division multiplexing (WDM) transport 20 networks. The YANG module ietf-layer0-types-ext updates ietf- 21 layer0-types defined in [RFC9093], which has been reduced in scope 22 prior to publication to only cover spectrum management related 23 aspects required for the YANG module ietf-wson-topology defined in 24 [RFC9094]. 26 To be completed 28 Status of This Memo 30 This Internet-Draft is submitted in full conformance with the 31 provisions of BCP 78 and BCP 79. 33 Internet-Drafts are working documents of the Internet Engineering 34 Task Force (IETF). Note that other groups may also distribute 35 working documents as Internet-Drafts. The list of current Internet- 36 Drafts is at https://datatracker.ietf.org/drafts/current/. 38 Internet-Drafts are draft documents valid for a maximum of six months 39 and may be updated, replaced, or obsoleted by other documents at any 40 time. It is inappropriate to use Internet-Drafts as reference 41 material or to cite them other than as "work in progress." 43 This Internet-Draft will expire on 28 April 2022. 45 Copyright Notice 47 Copyright (c) 2021 IETF Trust and the persons identified as the 48 document authors. All rights reserved. 50 This document is subject to BCP 78 and the IETF Trust's Legal 51 Provisions Relating to IETF Documents (https://trustee.ietf.org/ 52 license-info) in effect on the date of publication of this document. 53 Please review these documents carefully, as they describe your rights 54 and restrictions with respect to this document. Code Components 55 extracted from this document must include Simplified BSD License text 56 as described in Section 4.e of the Trust Legal Provisions and are 57 provided without warranty as described in the Simplified BSD License. 59 Table of Contents 61 1. Introduction . . . . . . . . . . . . . . . . . . . . . . . . 2 62 1.1. Requirements Language . . . . . . . . . . . . . . . . . . 2 63 1.2. Terminology . . . . . . . . . . . . . . . . . . . . . . . 3 64 2. Extensions for the Layer 0 Types Module . . . . . . . . . . . 3 65 3. Layer0 Types Revision 2 YANG CODE . . . . . . . . . . . . . . 4 66 4. Acknowledgements . . . . . . . . . . . . . . . . . . . . . . 24 67 5. Contributors . . . . . . . . . . . . . . . . . . . . . . . . 24 68 6. IANA Considerations . . . . . . . . . . . . . . . . . . . . . 24 69 7. Security Considerations . . . . . . . . . . . . . . . . . . . 25 70 8. References . . . . . . . . . . . . . . . . . . . . . . . . . 25 71 8.1. Normative References . . . . . . . . . . . . . . . . . . 25 72 8.2. Informative References . . . . . . . . . . . . . . . . . 25 73 Authors' Addresses . . . . . . . . . . . . . . . . . . . . . . . 26 75 1. Introduction 77 YANG [RFC7950] is a data modeling language used to model 78 configuration data, state data, Remote Procedure Calls, and 79 notifications for network management protocols such as NETCONF 80 [RFC6241]. The YANG language supports a small set of built-in data 81 types and provides mechanisms to derive other types from the built-in 82 types. 84 This document introduces a collection of common data types derived 85 from the built-in YANG data types. The derived types and groupings 86 are designed to be the common types applicable for modeling Traffic 87 Engineering (TE) features as well as non-TE features (e.g., physical 88 network configuration aspect) for Layer 0 optical networks in 89 model(s) defined outside of this document. 91 1.1. Requirements Language 93 The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT", 94 "SHOULD", "SHOULD NOT", "RECOMMENDED", "MAY", and "OPTIONAL" in this 95 document are to be interpreted as described in RFC 2119 [RFC2119]. 97 1.2. Terminology 99 2. Extensions for the Layer 0 Types Module 101 This document defines YANG module extensions for common Layer 0 102 types. named ietf-layer0-types-ext. This module can be used for 103 both WSON and Flexi-grid DWDM networks but in particular is adding 104 common types used in the context of optical impairment aware topology 105 model in WSON and SSONs. The ietf-layer0-types-ext module contains 106 the following YANG identities, types and groupings that can be reused 107 in other YANG modules: 109 transceiver-capabilities: 111 a YANG grouping to define the transceiver capabilities (also called 112 "modes") needed to determine optical signal compatibility. 114 standard-mode: 116 a YANG grouping for ITU-T G.698.2 standard mode that guarantees 117 interoperability. 119 organizational-mode: 121 a YANG grouping to define transponder operational mode supported by 122 organizations or vendors. 124 common-explicit-mode: 126 a YANG grouping to define the list of attributes related to optical 127 impairments limits in case of transceiver explicit mode. This 128 grouping should be the same used in 129 [I-D.ietf-ccamp-dwdm-if-param-yang]. 131 common-organizational-explicit-mode: 133 a YANG grouping to define the common capabilities attributes limit 134 range in case of operational mode and explicit mode. Also this 135 grouping should be used in [I-D.ietf-ccamp-dwdm-if-param-yang]. 137 cd-pmd-penalty: 139 a YANG grouping to define the triplet used as entries in the list 140 optional penalty associated with a given accumulated CD and PMD. 141 This list of triplet cd, pmd, penalty can be used to sample the 142 function penalty = f(CD, PMD). 144 [Editor's note: There is still stuff from the xml template that needs 145 to be removed] 147 3. Layer0 Types Revision 2 YANG CODE 149 The YANG code is developed on GitHub and can also be found in the 150 following CCAMP repository: 152 https://github.com/ietf-ccamp-wg/ietf-ccamp-layer0-types-ext 154 [Editor's note: YANG code below always has to be updated before 155 submitting a new revision!] 157 file "ietf-layer0-types-ext@2021-10-18.yang" 158 module ietf-layer0-types-ext { 159 namespace "urn:ietf:params:xml:ns:yang:ietf-layer0-types-ext"; 160 prefix "l0-types-ext"; 162 organization 163 "IETF CCAMP Working Group"; 164 contact 165 "WG Web: 166 WG List: 168 Editor: Dieter Beller 169 171 Editor: Sergio Belotti 172 174 Editor: Italo Busi 175 177 Editor: Haomian Zheng 178 "; 180 // Additional contacts TBA (contributors) 182 description 183 "Description to be added!!! 185 Copyright (c) 2021 IETF Trust and the persons identified 186 as authors of the code. All rights reserved. 188 Redistribution and use in source and binary forms, with 189 or without modification, is permitted pursuant to, and 190 subject to the license terms contained in, the Simplified 191 BSD License set forth in Section 4.c of the IETF Trust's 192 Legal Provisions Relating to IETF Documents 193 (http://trustee.ietf.org/license-info). 195 This version of this YANG module is part of RFC XXXX; see 196 the RFC itself for full legal notices."; 198 revision "2021-10-18" { 199 description 200 "Initial Version"; 201 reference 202 "RFC XXXX: A YANG Data Model for Layer 0 Types - Revision 2"; 203 } 205 /* 206 * Identities 207 */ 209 identity modulation { 210 description "base identity for modulation type"; 211 } 213 identity QPSK { 214 base modulation; 215 description 216 "QPSK (Quadrature Phase Shift Keying) modulation"; 217 } 219 identity DP-QPSK { 220 base modulation; 221 description 222 "DP-QPSK (Dual Polarization Quadrature 223 Phase Shift Keying) modulation"; 224 } 226 identity QAM8 { 227 base modulation; 228 description 229 "8QAM (8-State Quadrature Amplitude Modulation) modulation"; 230 } 232 identity QAM16 { 233 base modulation; 234 description 235 "QAM16 (Quadrature Amplitude Modulation)"; 236 } 238 identity DP-QAM8 { 239 base modulation; 240 description 241 "DP-QAM8 (Dual Polarization Quadrature Amplitude Modulation)"; 242 } 244 identity DC-DP-QAM8 { 245 base modulation; 246 description 247 "DC DP-QAM8 (Dual Carrier Dual Polarization Quadrature 248 Amplitude Modulation)"; 249 } 251 identity DP-QAM16 { 252 base modulation; 253 description 254 "DP-QAM16 (Dual Polarization Quadrature Amplitude 255 Modulation)"; 256 } 258 identity DC-DP-QAM16 { 259 base modulation; 260 description 261 "DC DP-QAM16 (Dual Carrier Dual Polarization Quadrature 262 Amplitude Modulation)"; 263 } 265 identity fec-type { 266 description 267 "Base identity from which specific FEC 268 (Forward Error Correction) type identities are derived."; 269 } 271 identity g-fec { 272 base fec-type; 273 description 274 "G-FEC (Generic-FEC)"; 275 } 276 identity e-fec { 277 base fec-type; 278 description 279 "E-FEC (Enhanced-FEC)"; 280 } 281 identity no-fec { 282 base fec-type; 283 description 284 "No FEC"; 285 } 287 identity reed-solomon { 288 base fec-type; 289 description 290 "Reed-Solomon error correction"; 291 } 293 identity hamming-code { 294 base fec-type; 295 description 296 "Hamming Code error correction"; 297 } 299 identity golay { 300 base fec-type; 301 description "Golay error correction"; 302 } 304 identity line-coding { 305 description 306 "base line-coding class"; 307 reference 308 "ITU-T G.698.2-201811 section 7"; 309 } 311 identity line-coding-NRZ-2p5G { 312 base line-coding; 313 description 314 "ITU-T G.698.2-201811 section 7 table 8-1"; 315 } 317 identity line-coding-NRZ-OTU1 { 318 base line-coding; 319 description 320 "ITU-T G.698.2-201811 section 7 table 8-2"; 321 } 323 identity line-coding-NRZ-10G { 324 base line-coding; 325 description 326 "ITU-T G.698.2-201811 section 7 table 8-3/8-5"; 327 } 329 identity line-coding-NRZ-OTU2 { 330 base line-coding; 331 description 332 "ITU-T G.698.2-201811 section 7 table 8-4/8-6"; 333 } 335 identity wavelength-assignment { 336 description 337 "Wavelength selection base"; 338 reference 339 "RFC6163:Framework for GMPLS and Path Computation Element 340 (PCE) Control of Wavelength Switched Optical Networks (WSONs)"; 341 } 343 identity unspecified-wavelength-assignment { 344 base wavelength-assignment; 345 description 346 "No method specified"; 347 } 349 identity first-fit-wavelength-assignment { 350 base wavelength-assignment; 351 description 352 "All the available wavelengths are numbered, 353 and this WA (Wavelength Assignment) method chooses 354 the available wavelength with the lowest index"; 355 } 357 identity random-wavelength-assignment { 358 base wavelength-assignment; 359 description 360 "This WA method chooses an available 361 wavelength randomly"; 362 } 364 identity least-loaded-wavelength-assignment { 365 base wavelength-assignment; 366 description 367 "This WA method selects the wavelength that 368 has the largest residual capacity on the most loaded 369 link along the route (in multi-fiber networks)"; 370 } 372 identity term-type { 373 description 374 "Termination type"; 375 reference 376 "ITU-T G.709: Interfaces for the Optical Transport Network"; 377 } 379 identity term-phys { 380 base term-type; 381 description 382 "Physical layer termination"; 383 } 384 identity term-otu { 385 base term-type; 386 description 387 "OTU (Optical Transport Unit) termination"; 388 } 390 identity term-odu { 391 base term-type; 392 description 393 "ODU (Optical Data Unit) termination"; 394 } 396 identity term-opu { 397 base term-type; 398 description 399 "OPU (Optical Payload Unit) termination"; 400 } 402 identity otu-type { 403 description 404 "Base identity from which specific OTU identities are derived"; 405 reference 406 "ITU-T G.709: Interfaces for the Optical Transport Network"; 407 } 409 identity OTU1 { 410 base otu-type; 411 description 412 "OTU1 (2.66 Gb/s)"; 413 } 415 identity OTU1e { 416 base otu-type; 417 description 418 "OTU1e (11.04 Gb/s)"; 419 } 421 identity OTU1f { 422 base otu-type; 423 description 424 "OTU1f (11.27 Gb/s)"; 425 } 427 identity OTU2 { 428 base otu-type; 429 description 430 "OTU2 (10.70 Gb/s)"; 431 } 432 identity OTU2e { 433 base otu-type; 434 description 435 "OTU2e (11.09 Gb/s)"; 436 } 438 identity OTU2f { 439 base otu-type; 440 description 441 "OTU2f (11.31G)"; 442 } 444 identity OTU3 { 445 base otu-type; 446 description 447 "OTU3 (43.01 Gb/s)"; 448 } 450 identity OTU3e1 { 451 base otu-type; 452 description 453 "OTU3e1 (44.57 Gb/s)"; 454 } 456 identity OTU3e2 { 457 base otu-type; 458 description 459 "OTU3e2 (44.58 Gb/s)"; 460 } 462 identity OTU4 { 463 base otu-type; 464 description 465 "OTU4 (111.80 Gb/s)"; 466 } 468 identity OTUCn { 469 base otu-type; 470 description 471 "OTUCn (n x 105.25 Gb/s)"; 472 } 474 identity type-power-mode { 475 description 476 "power equalization mode used within the 477 OMS and its elements"; 478 } 479 identity power-spectral-density { 480 base type-power-mode; 481 description 482 "all elements must use power spectral density (W/Hz)"; 483 } 485 identity carrier-power { 486 base type-power-mode; 487 description 488 "all elements must use power (dBm)"; 489 } 491 /* 492 * Typedefs 493 */ 495 typedef operational-mode { 496 type string; 497 description 498 "Organization/vendor specific mode that guarantees 499 interoperability."; 500 reference "ITU-T G.698.2 (11/2018)"; 501 } 503 typedef standard-mode { 504 type string; 505 description 506 "ITU-T G.698.2 standard mode that guarantees 507 interoperability. 508 It must be an string with the following format: 509 B-DScW-ytz(v) where all these attributes 510 are conformant 511 to the ITU-T recomendation"; 512 reference "ITU-T G.698.2 (11/2018)"; 513 } 515 typedef organization-identifier { 516 type string; 517 description 518 "vendor/organization identifier that uses a private mode 519 out of already defined in G.698.2 ITU-T application-code"; 520 reference 521 "RFC7581: Routing and Wavelength Assignment Information 522 Encoding for Wavelength Switched Optical Networks"; 523 } 525 typedef frequency-thz { 526 type decimal64 { 527 fraction-digits 6; 528 } 529 units THz; 530 description 531 "The DWDM frequency in THz, e.g., 193.112500"; 532 reference 533 "RFC6205: Generalized Labels for 534 Lambda-Switch-Capable (LSC) Label Switching Routers"; 535 } 536 typedef frequency-ghz { 537 type decimal64 { 538 fraction-digits 3; 539 } 540 units GHz; 541 description 542 "The DWDM frequency in GHz, e.g., 193112.500"; 543 reference 544 "RFC6205: Generalized Labels for 545 Lambda-Switch-Capable (LSC) Label Switching Routers"; 546 } 548 typedef dbm-t { 549 type int32; 550 units ".01dbm"; 551 description 552 "Amplifiers and Transceivers Power in dBm."; 553 } 555 typedef snr { 556 type decimal64 { 557 fraction-digits 2; 558 } 559 units "dB@0.1nm"; 560 description 561 "(Optical) Signal to Noise Ratio measured over 0.1 nm 562 resolution bandwidth"; 563 } 565 typedef fiber-type { 566 type enumeration { 567 enum G.652 { 568 description "G.652 Standard Singlemode Fiber"; 569 } 570 enum G.654 { 571 description "G.654 Cutoff Shifted Fiber"; 572 } 573 enum G.653 { 574 description "G.653 Dispersion Shifted Fiber"; 576 } 577 enum G.655 { 578 description "G.655 Non-Zero Dispersion Shifted Fiber"; 579 } 580 enum G.656 { 581 description "G.656 Non-Zero Dispersion for Wideband 582 Optical Transport"; 583 } 584 enum G.657 { 585 description "G.657 Bend-Insensitive Fiber"; 586 } 587 } 588 description 589 "ITU-T based fiber-types"; 590 } 592 /* 593 * Groupings 594 */ 596 /* supported inverse multiplexing capabilities such as 597 max. OTSiG:OTSi cardinality 598 It is a transponder attribute not transceiver 599 */ 601 /* leaf multiplexing-cap { 602 type uint32; 603 config false; 604 description "supported inverse multiplexing capabilities 605 such as max. OTSiG:OTSi cardinality"; 606 } 607 */ 609 grouping transceiver-capabilities { 610 description 611 "This grouping is intended to be use for reporting the 612 capabilities of a transceiver."; 614 container supported-modes { 615 description 616 "Transceiver's supported modes."; 617 list supported-mode { 618 key "mode-id"; 619 config false; 620 description "list of supported transceiver's modes."; 621 leaf mode-id { 622 type string { 623 length "1..255"; 625 } 626 description "ID for the supported transceiver's mode."; 627 } 628 choice mode { 629 mandatory true; 630 description 631 "Indicates whether the transceiver's mode is a standard 632 mode, an organizational mode or an explicit mode."; 633 case G.698.2 { 634 uses standard-mode; 635 } 636 case organizational-mode { 637 container organizational-mode { 638 description 639 "The set of attributes for an organizational mode"; 640 uses organizational-mode; 641 uses common-organizational-explicit-mode; 642 } // container organizational-mode 643 } 644 case explicit-mode { 645 container explicit-mode { 646 description 647 "The set of attributes for an explicit mode"; 648 container supported-modes { 649 description 650 "Container for all the standard and organizational 651 modes supported by the transceiver's explicit 652 mode."; 653 leaf-list supported-application-codes { 654 type leafref { 655 path "../../../mode-id"; 656 } 657 must "../../../../" 658 + "supported-mode[mode-id=current()]/" 659 + "standard-mode" { 660 description 661 "The pointer is only for application codes 662 supported by transceiver."; 663 } 664 description 665 "List of pointers to the application codes 666 supported by the transceiver's explicit mode."; 667 } 668 leaf-list supported-organizational-modes { 669 type leafref { 670 path "../../../mode-id"; 671 } 672 must "../../../../" 673 + "supported-mode[mode-id=current()]/" 674 + "organizational-mode" { 675 description 676 "The pointer is only for organizational modes 677 supported by transceiver."; 678 } 679 description 680 "List of pointers to the organizational modes 681 supported by the transceiver's explicit mode."; 682 } 683 } // container supported-modes 684 uses common-explicit-mode; 685 uses common-organizational-explicit-mode; 686 } // container explicit-mode 687 } // end of case explicit-mode 688 } // end of choice 689 } // list supported-modes 690 } // container supported-modes 691 } // grouping transceiver-capabilities 693 grouping standard-mode { 694 description 695 "ITU-T G.698.2 standard mode that guarantees interoperability. 696 It must be an string with the following format: 697 B-DScW-ytz(v) where all these attributes are conformant 698 to the ITU-T recomendation"; 700 leaf standard-mode { 701 type standard-mode; 702 config false; 703 description 704 "G.698.2 standard mode"; 705 } 706 } 708 grouping organizational-mode { 709 description 710 "Transponder operational mode supported by organizations or 711 vendor"; 713 leaf operational-mode { 714 type operational-mode; 715 config false; 716 description 717 "configured organization- or vendor-specific 718 application identifiers (AI) supported by the transponder"; 719 } 720 leaf organization-identifier { 721 type organization-identifier; 722 config false; 723 description 724 "organization identifier that uses organizational 725 mode"; 726 } 727 } 729 grouping cd-pmd-penalty { 730 description "entries of table; triplet chromatic 731 dispersion, polarization mode dispersion and 732 associated penalty"; 734 leaf chromatic-dispersion { 735 type decimal64 { 736 fraction-digits 2; 737 range "0..max"; 738 } 739 units "ps/nm"; 740 config false; 741 mandatory true; 742 description "chromatic dispersion"; 743 } 744 leaf polarization-mode-dispersion { 745 type decimal64 { 746 fraction-digits 2; 747 range "0..max"; 748 } 749 units "ps"; 750 config false; 751 mandatory true; 752 description "Polarization mode dispersion"; 753 } 754 leaf penalty { 755 type decimal64 { 756 fraction-digits 2; 757 range "0..max"; 758 } 759 units "dB"; 760 config false; 761 mandatory true; 762 description "Associated penalty on the receiver"; 763 } 764 } 766 grouping pdl-penalty { 767 description 768 "entries of table; pair of values polarization dependent loss 769 and associated penalty"; 771 leaf max-polarization-dependent-loss { 772 type decimal64 { 773 fraction-digits 2; 774 } 775 units "dB"; 776 config false; 777 mandatory true; 778 description 779 "Maximum acceptable accumulate polarization dependent loss"; 780 } 781 leaf penalty { 782 type uint8; 783 units "dB"; 784 config false; 785 mandatory true; 786 description "Associated penalty on the receiver"; 787 } 788 } 790 /* 791 * This grouping represent the list of attributes related to 792 * optical impairment limits for explicit mode 793 * (min OSNR, max PMD, max CD, max PDL, Q-factor limit, etc.) 794 * In case of standard and operational mode the attributes are 795 * implicit 796 */ 798 grouping common-explicit-mode { 799 description "Attributes capabilities related to 800 explicit mode of an optical transceiver"; 802 leaf line-coding-bitrate { 803 type identityref { 804 base line-coding; 805 } 806 config false; 807 description "Bit rate/line coding of optical tributary signal"; 808 reference 809 "ITU-T G.698.2 section 7.1.2"; 810 } 811 leaf max-polarization-mode-dispersion { 812 type decimal64 { 813 fraction-digits 2; 814 range "0..max"; 815 } 816 units "ps"; 817 config false; 818 description 819 "Maximum acceptable accumulated polarization mode 820 dispersion on the receiver"; 821 } 822 leaf max-chromatic-dispersion { 823 type decimal64 { 824 fraction-digits 2; 825 range "0..max"; 826 } 827 units "ps/nm"; 828 config false; 829 description 830 "Maximum acceptable accumulated chromatic dispersion 831 on the receiver"; 832 } 833 list chromatic-and-polarization-dispersion-penalty { 834 config false; 835 description 836 "Optional penalty associated with a given accumulated 837 CD and PMD. 838 This list of triplet cd, pmd, penalty can be used to 839 sample the function penalty = f(CD, PMD)."; 840 uses cd-pmd-penalty ; 841 } 842 leaf max-diff-group-delay { 843 type int32; 844 config false; 845 description "Maximum Differential group delay of this mode 846 for this lane"; 847 } 848 list max-polarization-dependent-loss-penalty { 849 config false; 850 description 851 "Optional penalty associated with the maximum acceptable 852 accumulated polarization dependent loss. 853 This list of pair pdl and penalty can be used to 854 sample the function pdl = f(penalty)."; 855 uses pdl-penalty ; 856 } 857 leaf available-modulation-type { 858 type identityref { 859 base modulation; 860 } 861 config false; 862 description 863 "Modulation type the specific transceiver in the list 864 can support"; 866 } 867 leaf min-OSNR { 868 type snr; 869 config false; 870 description "min OSNR measured over 0.1 nm 871 resolution bandwidth: 872 if received OSNR at minimum Rx-power is lower than MIN-OSNR, 873 an increased level of bit-errors post-FEC needs 874 to be expected."; 875 // change resolution BW from 12.5 GHz to 0.1 nm 876 } 877 leaf min-Q-factor { 878 type int32; 879 units "dB"; 880 config false; 881 description "min Qfactor at FEC threshold"; 882 } 883 leaf available-baud-rate { 884 type uint32; 885 units Bd; 886 config false; 887 description 888 "Baud-rate the specific transceiver in 889 the list can support. 890 Baud-rate is the unit for 891 symbol rate or modulation rate 892 in symbols per second or 893 pulses per second. 894 It is the number of distinct symbol 895 changes (signal events) made to the 896 transmission medium 897 per second in a digitally 898 modulated signal or a line code"; 899 } 900 leaf roll-off { 901 type decimal64 { 902 fraction-digits 4; 903 range "0..1"; 904 } 905 config false; 906 description 907 "the roll-off factor (beta with values from 0 to 1) 908 identifies how the real signal shape exceed 909 the baud rate. If=0 it is exactly matching 910 the baud rate.If=1 the signal exceeds the 911 50% of the baud rate at each side."; 912 } 913 leaf min-carrier-spacing { 914 type frequency-ghz; 915 config false; 916 description 917 "This attribute specifies the minimum nominal difference 918 between the carrier frequencies of two homogeneous OTSis 919 (which have the same optical characteristics but the central 920 frequencies) such that if they are placed next to each other 921 the interference due to spectrum overlap between them can be 922 considered negligible. 924 In case of heterogeneous OTSi it is up to path computation 925 engine to determine the minimum distance between the carrier 926 frequency of the two adjacent OTSi."; 927 } 928 leaf available-fec-type { 929 type identityref { 930 base fec-type; 931 } 932 config false; 933 description "Available FEC"; 934 } 935 leaf fec-code-rate { 936 type decimal64 { 937 fraction-digits 8; 938 range "0..max"; 939 } 940 config false; 941 description "FEC-code-rate"; 942 } 943 leaf fec-threshold { 944 type decimal64 { 945 fraction-digits 8; 946 range "0..max"; 947 } 948 config false; 949 description 950 "Threshold on the BER, for which FEC 951 is able to correct errors"; 952 } 953 } // grouping common-explicit-mode 955 grouping common-organizational-explicit-mode { 956 description "Common capability attributes limit range 957 in case of operational mode and explicit mode. 958 These attributes are supported separately in 959 case of application codes"; 961 /* transmitter tuning range (f_tx-min, f_tx-max) */ 962 leaf min-central-frequency { 963 type frequency-thz; 964 config false; 965 description 966 "This parameter indicates the minimum frequency for the 967 transmitter tuning range."; 968 } 969 leaf max-central-frequency { 970 type frequency-thz; 971 config false; 972 description 973 "This parameter indicates the maximum frequency for the 974 transmitter tuning range."; 975 } 977 /* transmitter-tunability-grid */ 979 leaf central-frequency-step { 980 type frequency-ghz; 981 config false; 982 description 983 "This parameter indicates the transmitter tunability grid as 984 the distance between two adjacent carrier frequencies of 985 the transmitter tuning range."; 986 } 988 /* supported transmitter power range [p_tx-min, p_tx_max] */ 990 leaf tx-channel-power-min { 991 type dbm-t; 992 config false; 993 description "The minimum output power of this interface"; 994 } 995 leaf tx-channel-power-max { 996 type dbm-t; 997 config false; 998 description "The maximum output power of this interface"; 999 } 1001 /* supported receiver power range [p_rx-min, p_rx_max] */ 1003 leaf rx-channel-power-min { 1004 type dbm-t; 1005 config false; 1006 description "The minimum input power of this interface"; 1007 } 1008 leaf rx-channel-power-max { 1009 type dbm-t; 1010 config false; 1011 description "The maximum input power of this interface"; 1012 } 1014 leaf rx-total-power-max { 1015 type dbm-t; 1016 config false; 1017 description "Maximum rx optical power for 1018 all the channels"; 1019 } 1021 } // grouping common-organizational-explicit-mode 1023 /* This grouping represent the list of configured parameters */ 1024 /* values independent of operational mode */ 1026 grouping common-transceiver-configured-param { 1027 description "Capability of an optical transceiver"; 1029 leaf otsi-carrier-frequency { 1030 type frequency-thz; 1031 description 1032 "OTSi carrier frequency, equivalent to the 1033 actual configured transmitter frequency"; 1034 } 1035 leaf tx-channel-power { 1036 type dbm-t; 1037 description "The current channel transmit power"; 1038 } 1039 leaf rx-channel-power { 1040 type dbm-t; 1041 config false; 1042 description "The current channel received power "; 1043 } 1044 leaf rx-total-power { 1045 type dbm-t; 1046 config false; 1047 description "Current total received power"; 1048 } 1049 } // grouping for configured attributes out of mode 1051 grouping l0-tunnel-attributes { 1052 description 1053 "Parameters for Layer0 (WSON or Flexi-Grid) Tunnels."; 1054 leaf fec-type { 1055 type identityref { 1056 base fec-type; 1057 } 1058 description 1059 "FEC type."; 1060 } 1061 leaf termination-type { 1062 type identityref { 1063 base term-type; 1064 } 1065 description 1066 "Termination type."; 1067 } 1068 leaf bit-stuffing { 1069 type boolean; 1070 description 1071 "Bit stuffing enabled/disabled."; 1072 } 1073 } 1075 grouping l0-path-constraints { 1076 description 1077 "Global named path constraints configuration 1078 grouping for Layer0 (WSON or Flexi-Grid) paths."; 1079 leaf wavelength-assignment { 1080 type identityref { 1081 base wavelength-assignment; 1082 } 1083 description "Wavelength Allocation Method"; 1084 } 1085 } 1087 grouping frequency-range { 1088 description 1089 "The parameters that define a frequency range."; 1090 leaf lower-frequency { 1091 type frequency-thz; 1092 mandatory true; 1093 description 1094 "The lower frequency boundary of the 1095 frequency range."; 1096 } 1097 leaf upper-frequency { 1098 type frequency-thz; 1099 must '. > ../lower-frequency' { 1100 error-message 1101 "The upper frequency must be greater than the lower 1102 frequency."; 1103 } 1104 mandatory true; 1105 description 1106 "The upper frequency boundary of the 1107 frequency range."; 1108 } 1109 } 1110 } 1111 1113 Figure 1 1115 4. Acknowledgements 1117 To be added if any. 1119 5. Contributors 1121 Gabriele Galimberti 1122 Cisco 1124 Email: ggalimbe@cisco.com 1126 Enrico Griseri 1127 Nokia 1129 Email: Enrico.Griseri@nokia.com 1131 Aihua Guo 1132 Futurewei 1134 Email: aihuaguo@futurewei.com 1136 6. IANA Considerations 1138 This memo includes no request to IANA. 1140 All drafts are required to have an IANA considerations section (see 1141 Guidelines for Writing an IANA Considerations Section in RFCs 1142 [RFC5226] for a guide). If the draft does not require IANA to do 1143 anything, the section contains an explicit statement that this is the 1144 case (as above). If there are no requirements for IANA, the section 1145 will be removed during conversion into an RFC by the RFC Editor. 1147 7. Security Considerations 1149 All drafts are required to have a security considerations section. 1150 See RFC 3552 [RFC3552] for a guide. 1152 8. References 1154 8.1. Normative References 1156 [I-D.ietf-ccamp-optical-impairment-topology-yang] 1157 Lee, Y., Rouzic, E. L., Lopez, V., Galimberti, G., and D. 1158 Beller, "A YANG Data Model for Optical Impairment-aware 1159 Topology", Work in Progress, Internet-Draft, draft-ietf- 1160 ccamp-optical-impairment-topology-yang-07, 8 July 2021, 1161 . 1164 [RFC2119] Bradner, S., "Key words for use in RFCs to Indicate 1165 Requirement Levels", BCP 14, RFC 2119, 1166 DOI 10.17487/RFC2119, March 1997, 1167 . 1169 [RFC6241] Enns, R., Ed., Bjorklund, M., Ed., Schoenwaelder, J., Ed., 1170 and A. Bierman, Ed., "Network Configuration Protocol 1171 (NETCONF)", RFC 6241, DOI 10.17487/RFC6241, June 2011, 1172 . 1174 [RFC7950] Bjorklund, M., Ed., "The YANG 1.1 Data Modeling Language", 1175 RFC 7950, DOI 10.17487/RFC7950, August 2016, 1176 . 1178 [RFC8795] Liu, X., Bryskin, I., Beeram, V., Saad, T., Shah, H., and 1179 O. Gonzalez de Dios, "YANG Data Model for Traffic 1180 Engineering (TE) Topologies", RFC 8795, 1181 DOI 10.17487/RFC8795, August 2020, 1182 . 1184 [RFC9093] Zheng, H., Lee, Y., Guo, A., Lopez, V., and D. King, "A 1185 YANG Data Model for Layer 0 Types", RFC 9093, 1186 DOI 10.17487/RFC9093, August 2021, 1187 . 1189 [RFC9094] Zheng, H., Lee, Y., Guo, A., Lopez, V., and D. King, "A 1190 YANG Data Model for Wavelength Switched Optical Networks 1191 (WSONs)", RFC 9094, DOI 10.17487/RFC9094, August 2021, 1192 . 1194 8.2. Informative References 1196 [I-D.ietf-ccamp-dwdm-if-param-yang] 1197 Galimberti, G., Kunze, R., Burk, A., Hiremagalur, D., and 1198 G. Grammel, "A YANG model to manage the optical interface 1199 parameters for an external transponder in a WDM network", 1200 Work in Progress, Internet-Draft, draft-ietf-ccamp-dwdm- 1201 if-param-yang-06, 12 July 2021, 1202 . 1205 [RFC2629] Rose, M., "Writing I-Ds and RFCs using XML", RFC 2629, 1206 DOI 10.17487/RFC2629, June 1999, 1207 . 1209 [RFC3552] Rescorla, E. and B. Korver, "Guidelines for Writing RFC 1210 Text on Security Considerations", BCP 72, RFC 3552, 1211 DOI 10.17487/RFC3552, July 2003, 1212 . 1214 [RFC5226] Narten, T. and H. Alvestrand, "Guidelines for Writing an 1215 IANA Considerations Section in RFCs", RFC 5226, 1216 DOI 10.17487/RFC5226, May 2008, 1217 . 1219 Authors' Addresses 1221 Dieter Beller (editor) 1222 Nokia 1224 Email: Dieter.Beller@nokia.com 1226 Sergio Belotti (editor) 1227 Nokia 1229 Email: Sergio.Belotti@nokia.com 1231 Haomian Zheng 1232 Huawei 1234 Email: ZhengHaomian@huawei.com 1236 Italo Busi 1237 Huawei 1239 Email: Italo.Busi@huawei.com 1240 Esther Le Rouzic 1241 Orange 1243 Email: esther.lerouzic@orange.com