org-openroadm-link

YANG definitions for an amplifier in Network Model Copyright of the Members of the Open ROADM MSA Agreement dated (c) 2017, Al...

  • Version: 2022-09-30

    org-openroadm-link@2022-09-30


    
      module org-openroadm-link {
    
        yang-version 1.1;
    
        namespace "http://org/openroadm/link";
    
        prefix link;
    
        import ietf-network {
          prefix nd;
          revision-date "2018-02-26";
        }
        import org-openroadm-equipment-states-types {
          prefix
            org-openroadm-equipment-states-types;
          revision-date "2019-11-29";
        }
        import org-openroadm-common-link-types {
          prefix
            org-openroadm-common-link-types;
          revision-date "2019-11-29";
        }
        import org-openroadm-common-node-types {
          prefix
            org-openroadm-common-node-types;
          revision-date "2021-05-28";
        }
        import org-openroadm-amplifier {
          prefix org-openroadm-amplifier;
          revision-date "2021-09-24";
        }
        import org-openroadm-network-types {
          prefix org-openroadm-network-types;
          revision-date "2022-09-30";
        }
        import org-openroadm-common-network {
          prefix cnet;
          revision-date "2022-09-30";
        }
    
        organization "Open ROADM MSA";
    
        contact "OpenROADM.org.";
    
        description
          "YANG definitions for an amplifier in Network Model
    
    
         Copyright of the Members of the Open ROADM MSA Agreement dated (c) 2017,
         All other rights reserved.
    
         Redistribution and use in source and binary forms, with or without modification,
         are permitted provided that the following conditions are met:
    
         * Redistributions of source code must retain the above copyright notice, this
           list of conditions and the following disclaimer.
         * Redistributions in binary form must reproduce the above copyright notice,
           this list of conditions and the following disclaimer in the documentation and/or
           other materials provided with the distribution.
         * Neither the Members of the Open ROADM MSA Agreement nor the names of its
           contributors may be used to endorse or promote products derived from this software
           without specific prior written permission.
    
         THIS SOFTWARE IS PROVIDED BY THE MEMBERS OF THE OPEN ROADM MSA  AGREEMENT ''AS IS''
         AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
         WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.
         IN NO EVENT THE MEMBERS OF THE OPEN ROADM MSA  AGREEMENT BE LIABLE FOR ANY DIRECT,
         INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT
         NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;  LOSS OF USE, DATA,
         OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
         WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
         ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
         POSSIBILITY OF SUCH DAMAGE.";
    
        revision "2022-09-30" {
          description "Version 12.0";
        }
    
        revision "2022-05-27" {
          description "Version 11.1";
        }
    
        revision "2022-03-25" {
          description "Version 11.0";
        }
    
        revision "2021-12-10" {
          description "Version 10.1";
        }
    
        revision "2021-09-24" {
          description "Version 10.0";
        }
    
        revision "2021-05-28" {
          description "Version 9.1";
        }
    
        revision "2021-03-26" {
          description "Version 9.0";
        }
    
        revision "2020-12-11" {
          description "Version 8.1";
        }
    
        revision "2020-05-29" {
          description "Version 7.1.0";
        }
    
        revision "2020-03-27" {
          description "Version 7.0.0";
        }
    
        revision "2019-11-29" {
          description "Version 6.1.0";
        }
    
        revision "2019-09-27" {
          description "Version 6.0.0";
        }
    
        revision "2019-05-31" {
          description "Version 5.1.0";
        }
    
        revision "2019-03-29" {
          description "Version 5.0.0";
        }
    
        revision "2018-11-30" {
          description "Version 4.1.0";
        }
    
        revision "2018-09-28" {
          description "Version 4.0.0";
        }
    
        revision "2018-03-30" {
          description "Version 3.0.0";
        }
    
        revision "2017-12-15" {
          description "Version 2.2";
        }
    
        revision "2017-09-29" {
          description "Version 2.1";
        }
    
        revision "2017-07-28" {
          description
            "Version 2.0.1 - added revision-date to imports";
        }
    
        revision "2017-06-17" {
          description "Version 2.0";
        }
    
    
        grouping span-attributes {
          leaf auto-spanloss {
            type boolean;
            default "true";
            description
              "Flag to enable/disable automatic spanloss measurement";
          }
    
          leaf spanloss-base {
            type org-openroadm-common-link-types:ratio-dB;
            description
              "Baseline ROADM span loss measured and accepted during
             degree turn-up. May be re-set to current value after a fiber repair or change.";
          }
    
          leaf spanloss-current {
            type org-openroadm-common-link-types:ratio-dB;
            description
              "Current ROADM span loss measured and accepted during
             degree turn-up. Updated periodically if auto-spanloss is enabled.";
          }
    
          leaf spanloss-last-measured {
            type org-openroadm-common-link-types:ratio-dB;
            description
              "Last measured ROADM span loss, may or may not have been accepted and pushed to the NE.";
          }
    
          leaf engineered-spanloss {
            type org-openroadm-common-link-types:ratio-dB;
            description
              "ROADM span loss provided by an external system";
          }
    
          uses org-openroadm-network-types:link-concatenation {
            augment link-concatenation {
              leaf fiber-type {
                type enumeration {
                  enum "smf" {
                    value 0;
                    description
                      "Single Mode Fiber";
                  }
                  enum "eleaf" {
                    value 1;
                    description "ELEAF";
                  }
                  enum "oleaf" {
                    value 2;
                    description "OLEAF";
                  }
                  enum "dsf" {
                    value 3;
                    description "DSF";
                  }
                  enum "truewave" {
                    value 4;
                    description
                      "TRUEWAVE Reduced Slope";
                  }
                  enum "truewavec" {
                    value 5;
                    description
                      "TRUEWAVE Classic";
                  }
                  enum "nz-dsf" {
                    value 6;
                    description "NZ-DSF";
                  }
                  enum "ull" {
                    value 7;
                    description
                      "Ultra Low Loss (ULL)";
                  }
                }
              }
    
              leaf pmd {
                type org-openroadm-common-link-types:fiber-pmd;
                description "Total PMD";
              }
    
              leaf subject-to-high-SOP-changes {
                type boolean;
                description
                  "identifies fibers that may experience high polarization rotation rates
                    \t   and which might be inadequate for some modulation format";
              }
            }
          }
    
          uses org-openroadm-network-types:future-SRLGs {
            augment future-SRLGs {
              leaf-list SRLG-Id {
                type leafref {
                  path
                    "/nd:networks/nd:network/cnet:SRLG-list/cnet:SRLG-Id";
                }
              }
            }
          }
        }  // grouping span-attributes
    
        grouping amplified-link-attributes {
          list amplified-link {
            key "section-elt-number";
            description
              "defines the spans and the amplifier blocks of the amplified lines";
            leaf section-elt-number {
              type uint16;
              description
                "Id of the section element (whether it's a Span or an Amp)";
            }
    
            container section-element {
              choice section-element {
                container ila {
                  uses org-openroadm-amplifier:amplifier-node-attributes;
    
                  uses org-openroadm-network-types:type-variety-grp;
    
                  leaf node-id {
                    type org-openroadm-common-node-types:node-id-type;
                    mandatory true;
                    description
                      "Node id corresponding to the amplifier ";
                  }
    
                  leaf administrative-state {
                    type org-openroadm-equipment-states-types:admin-states;
                  }
                }  // container ila
                container span {
                  uses link:span-attributes;
    
                  leaf administrative-state {
                    type org-openroadm-equipment-states-types:admin-states;
                  }
                }  // container span
              }  // choice section-element
            }  // container section-element
          }  // list amplified-link
        }  // grouping amplified-link-attributes
      }  // module org-openroadm-link
    

© 2023 YumaWorks, Inc. All rights reserved.