Cisco-IOS-XR-controller-otu-cfg

This module contains a collection of YANG definitions for Cisco IOS-XR controller-otu package configuration. This YANG module a...

  • Version: 2020-07-23

    Cisco-IOS-XR-controller-otu-cfg@2020-07-23


    
      module Cisco-IOS-XR-controller-otu-cfg {
    
        yang-version 1;
    
        namespace
          "http://cisco.com/ns/yang/Cisco-IOS-XR-controller-otu-cfg";
    
        prefix controller-otu-cfg;
    
        import cisco-semver {
          prefix semver;
        }
        import Cisco-IOS-XR-ifmgr-cfg {
          prefix a1;
        }
    
        organization "Cisco Systems, Inc.";
    
        contact
          "Cisco Systems, Inc.
         Customer Service
         
         Postal: 170 West Tasman Drive
         San Jose, CA 95134
         
         Tel: +1 800 553-NETS
         
         E-mail: cs-yang@cisco.com";
    
        description
          "This module contains a collection of YANG definitions
         for Cisco IOS-XR controller-otu package configuration.
         
         This YANG module augments the
           Cisco-IOS-XR-ifmgr-cfg
         module with configuration data.
         
         Copyright (c) 2013-2020 by Cisco Systems, Inc.
         All rights reserved.";
    
        revision "2020-07-23" {
          description
            "Added new enums to OTUForwardErrorCorrection
           2020-05-12
             Added flexo configuration";
        }
    
        revision "2019-12-05" {
          description
            "Changes made in SAPI/DAPI ASCII text to support 15 characters string.
           2019-07-31
           Changes made in PRBS leaf, added pattern and mode field as mandatory.";
        }
    
        revision "2019-04-05" {
          description
            "Establish semantic version baseline.";
        }
    
        revision "2017-05-01" {
          description
            "Fixing backward compatibility error in module.";
        }
    
        revision "2017-03-13" {
          description "PRBS Config added";
        }
    
        revision "2015-11-09" {
          description "IOS XR 6.0 revision.";
        }
    
        semver:module-version "2.1.0";
        semver:module-version "2.0.0";
        semver:module-version "2.0.0";
    
        typedef Otu-forward-error-correction {
          type enumeration {
            enum "none" {
              value 1;
              description "No Fec";
            }
            enum "standard" {
              value 2;
              description "Standard Fec";
            }
            enum "enhanced-i7" {
              value 4;
              description "EnhancedI7 Fec";
            }
            enum "enhanced-i4" {
              value 8;
              description "Enhanced I4 Fec";
            }
            enum "enhanced-swizzle" {
              value 16;
              description "EnhancedSwizzle Fec";
            }
            enum "enhanced-hg20" {
              value 32;
              description "EnhancedHG20 Fec";
            }
            enum "enhanced-hg7" {
              value 64;
              description "EnhancedHG7 Fec";
            }
            enum "enhanced-sd15" {
              value 512;
              description "EnhancedSD15 Fec";
            }
            enum "enhanced-sd27" {
              value 1024;
              description "EnhancedSD27 Fec";
            }
            enum "enhanced-sd15de" {
              value 2048;
              description "EnhancedSD27 Fec";
            }
            enum "enhanced-staircase-de" {
              value 4096;
              description
                "EnhancedStaircaseDE Fec";
            }
            enum "ofec" {
              value 8192;
              description "OFEC Fec";
            }
            enum "cfec" {
              value 16384;
              description "CFEC Fec";
            }
          }
          description
            "Otu forward error correction";
        }
    
        typedef Otn-per-mon {
          type enumeration {
            enum "disable" {
              value 0;
              description
                "Performance Monitoring Disabled";
            }
            enum "enable" {
              value 1;
              description
                "Performance Monitoring Enabled";
            }
          }
          description "Otn per mon";
        }
    
        typedef Otn-send-tti-type-os {
          type enumeration {
            enum "send-tti-os-ascii/os-ascii" {
              value 10;
              description
                "Send TTI OS ASCII string";
            }
            enum "send-tti-os-hex/os-hex" {
              value 12;
              description
                "Send TTI OS HEX string";
            }
          }
          description "Otn send tti type os";
        }
    
        typedef Otn-exp-tti-type-sapi {
          type enumeration {
            enum "exp-tti-sapi-ascii/sapi-ascii" {
              value 15;
              description
                "Expected TTI SAPI ASCII string";
            }
          }
          description "Otn exp tti type sapi";
        }
    
        typedef Otn-send-tti-type-sapi {
          type enumeration {
            enum
              "send-tti-sapi-ascii/sapi-ascii" {
              value 14;
              description
                "Send TTI SAPI ASCII string";
            }
          }
          description "Otn send tti type sapi";
        }
    
        typedef Otu-mode {
          type enumeration {
            enum "mode-source" {
              value 1;
              description "Prbs Mode Source";
            }
            enum "mode-sink" {
              value 2;
              description "Prbs Mode Sink";
            }
            enum "mode-source-sink" {
              value 3;
              description
                "Prbs Mode Source_Sink";
            }
          }
          description "Otu mode";
        }
    
        typedef Otn-sec-admin-state {
          type enumeration {
            enum "normal" {
              value 0;
              description "In normal state";
            }
            enum "maintenance" {
              value 1;
              description "Under maintenance";
            }
          }
          description "Otn sec admin state";
        }
    
        typedef Otn-exp-tti-type-os {
          type enumeration {
            enum "exp-tti-os-ascii/os-ascii" {
              value 11;
              description
                "Expected TTI OS ASCII string";
            }
            enum "exp-tti-os-hex/os-hex" {
              value 13;
              description
                "Expected TTI OS HEX string";
            }
          }
          description "Otn exp tti type os";
        }
    
        typedef Otn-loopback {
          type enumeration {
            enum "line" {
              value 2;
              description "Line loopback";
            }
            enum "internal" {
              value 4;
              description "Internal loopback";
            }
          }
          description "Otn loopback";
        }
    
        typedef Otu-pattern {
          type enumeration {
            enum "pattern-pn31" {
              value 1;
              description "Prbs pattern pn31";
            }
            enum "pattern-pn23" {
              value 2;
              description "Prbs pattern pn23";
            }
            enum "pattern-pn11" {
              value 4;
              description "Prbs pattern pn11";
            }
            enum "pattern-inverted-pn31" {
              value 8;
              description
                "Prbs pattern inverted pn31";
            }
            enum "pattern-inverted-pn11" {
              value 16;
              description
                "Prbs pattern inverted pn11";
            }
            enum "pattern-pn15" {
              value 32;
              description "Prbs pattern pn15";
            }
            enum "pattern-pn7" {
              value 64;
              description "Prbs pattern pn7";
            }
          }
          description "Otu pattern";
        }
    
        typedef Otn-exp-tti-type-full {
          type enumeration {
            enum "exp-tti-full-ascii/full-ascii" {
              value 5;
              description
                "Expected TTI Full ASCII string";
            }
            enum "exp-tti-hex/hex" {
              value 7;
              description
                "Expected TTI hex string";
            }
          }
          description "Otn exp tti type full";
        }
    
        typedef Otn-send-tti-type-full {
          type enumeration {
            enum
              "send-tti-full-ascii/full-ascii" {
              value 4;
              description
                "Send TTI Full ASCII string";
            }
            enum "send-tti-hex/hex" {
              value 6;
              description "Send TTI hex string";
            }
          }
          description "Otn send tti type full";
        }
    
        typedef Otn-exp-tti-type-dapi {
          type enumeration {
            enum "exp-tti-dapi-ascii/dapi-ascii" {
              value 9;
              description
                "Expected TTI DAPI ASCII string";
            }
          }
          description "Otn exp tti type dapi";
        }
    
        typedef Otn-send-tti-type-dapi {
          type enumeration {
            enum
              "send-tti-dapi-ascii/dapi-ascii" {
              value 8;
              description
                "Send TTI DAPI ASCII string";
            }
          }
          description "Otn send tti type dapi";
        }
    
        augment /a1:interface-configurations/a1:interface-configuration {
          description
            "This augment extends the configuration data of
           'Cisco-IOS-XR-ifmgr-cfg'";
          container otu {
            description
              "OTU port controller configuration";
            container otn-send-ttitcmos {
              description
                "Configure OTN Send TTI value for OS config";
              leaf string-type {
                type Otn-send-tti-type-os;
                description
                  "TTI string type (FULL ASCII or  DAPI ASCII or
                 SAPI ASCII or hex format or OS ASCII or OS
                 HEX)";
              }
    
              leaf osascii-string {
                when
                  "../string-type = 'send-tti-os-ascii/os-ascii'" {
                  description
                    "../StringType = SEND_TTI_OS_ASCII/OS_ASCII";
                }
                type string {
                  length "1..32";
                }
                description
                  "OS ASCII text (Max 32 characters)";
              }
    
              leaf oshex-string {
                when
                  "../string-type = 'send-tti-os-hex/os-hex'" {
                  description
                    "../StringType = SEND_TTI_OS_HEX/OS_HEX";
                }
                type string {
                  length "1..64";
                }
                description
                  "OS HEX text (Max 64 characters)";
              }
            }  // container otn-send-ttitcmos
    
            container flexo-ids {
              presence
                "Indicates a flexo-ids node is configured.";
              description
                "configuring group id and iid";
              leaf gid {
                type uint32 {
                  range "1..1048575";
                }
                mandatory true;
                description "Group id number";
              }
    
              leaf iid {
                type string;
                description "iid number";
              }
            }  // container flexo-ids
    
            container otn-send-ttitcmdapi {
              description
                "Configure OTN Send TTI value for DAPI configs";
              leaf string-type {
                type Otn-send-tti-type-dapi;
                description
                  "TTI string type (FULL ASCII or  DAPI ASCII or
                 SAPI ASCII or hex format or OS ASCII or OS
                 HEX)";
              }
    
              leaf dapi-ascii-string {
                when
                  "../string-type = 'send-tti-dapi-ascii/dapi-ascii'" {
                  description
                    "../StringType =
                   SEND_TTI_DAPI_ASCII/DAPI_ASCII";
                }
                type string {
                  length "1..15";
                }
                description
                  "DAPI ASCII text (Max 15 characters)";
              }
            }  // container otn-send-ttitcmdapi
    
            container otn-expected-ttisapi {
              description
                "Configure OTN Expected TTI value for SAPI
               configs";
              leaf string-type {
                type Otn-exp-tti-type-sapi;
                description
                  "TTI string type (FULL ASCII or  DAPI ASCII or
                 SAPI ASCII or hex format or OS ASCII or OS
                 HEX)";
              }
    
              leaf sapi-ascii-string {
                when
                  "../string-type = 'exp-tti-sapi-ascii/sapi-ascii'" {
                  description
                    "../StringType = EXP_TTI_SAPI_ASCII/SAPI_ASCII";
                }
                type string {
                  length "1..15";
                }
                description
                  "SAPI ASCII text (Max 15 characters)";
              }
            }  // container otn-expected-ttisapi
    
            container proactive-protection {
              description
                "Configure Proactive Protection";
              container trigger-threshold {
                description
                  "Proactive Protection Threshold";
                leaf coefficient {
                  type uint32 {
                    range "1..9";
                  }
                  description
                    "Bit error rate coefficient";
                }
    
                leaf power {
                  type uint32 {
                    range "3..9";
                  }
                  description
                    "Bit error rate power";
                }
    
                leaf enable {
                  type empty;
                  description
                    "Proactive Protection supported";
                }
              }  // container trigger-threshold
    
              container revert-window {
                description
                  "Proactive Protection Window";
                leaf value {
                  type uint32 {
                    range "2000..10000";
                  }
                  description
                    "Integration window for FRR trigger in MS";
                }
    
                leaf enable {
                  type empty;
                  description
                    "Enable Proactive Protection";
                }
              }  // container revert-window
    
              container trigger-window {
                description
                  "Proactive Protection Window";
                leaf value {
                  type uint32 {
                    range "10..10000";
                  }
                  description
                    "Integration window for FRR trigger in MS";
                }
    
                leaf enable {
                  type empty;
                  description
                    "Enable Proactive Protection";
                }
              }  // container trigger-window
    
              container revert-threshold {
                description
                  "Proactive Protection Threshold";
                leaf coefficient {
                  type uint32 {
                    range "1..9";
                  }
                  description
                    "Bit error rate coefficient";
                }
    
                leaf power {
                  type uint32 {
                    range "4..10";
                  }
                  description
                    "Bit error rate power";
                }
    
                leaf enable {
                  type empty;
                  description
                    "Proactive Protection supported";
                }
              }  // container revert-threshold
    
              leaf status {
                type empty;
                description
                  "Enable Proactive Protection";
              }
            }  // container proactive-protection
    
            container network-srlgs {
              description
                "Configure Network srlgs";
              list network-srlg {
                key "set-id";
                description
                  "Configure network srlg sets";
                leaf set-id {
                  type uint32 {
                    range "1..17";
                  }
                  description "Set index";
                }
    
                leaf srlg1 {
                  type uint32 {
                    range "0..4294967294";
                  }
                  description
                    "First value for Network SRLG";
                }
    
                leaf srlg2 {
                  type uint32 {
                    range "0..4294967294";
                  }
                  description
                    "Second value for Network SRLG";
                }
    
                leaf srlg3 {
                  type uint32 {
                    range "0..4294967294";
                  }
                  description
                    "Third value for Network SRLG";
                }
    
                leaf srlg4 {
                  type uint32 {
                    range "0..4294967294";
                  }
                  description
                    "Forth value for Network SRLG";
                }
    
                leaf srlg5 {
                  type uint32 {
                    range "0..4294967294";
                  }
                  description
                    "Fifth value for Network SRLG";
                }
    
                leaf srlg6 {
                  type uint32 {
                    range "0..4294967294";
                  }
                  description
                    "Sixth value for Network SRLG";
                }
              }  // list network-srlg
            }  // container network-srlgs
    
            container otn-send-tti {
              description
                "Configure OTN Send TTI value for Full ASCII/HEX";
              leaf string-type {
                type Otn-send-tti-type-full;
                description
                  "TTI string type (FULL ASCII or  DAPI ASCII or
                 SAPI ASCII or hex format or OS ASCII or OS
                 HEX)";
              }
    
              leaf full-ascii-string {
                when
                  "../string-type = 'send-tti-full-ascii/full-ascii'" {
                  description
                    "../StringType =
                   SEND_TTI_FULL_ASCII/FULL_ASCII";
                }
                type string {
                  length "1..64";
                }
                description
                  "Full ASCII text (Max 64 characters)";
              }
    
              leaf hex-string {
                when
                  "../string-type = 'send-tti-hex/hex'" {
                  description
                    "../StringType = SEND_TTI_HEX/Hex";
                }
                type string {
                  length "1..128";
                }
                description
                  "Hex nibbles (Max 128 - The string length
                 should be an even number)";
              }
            }  // container otn-send-tti
    
            container otn-expected-ttitcmdapi {
              description
                "Configure OTN Expected TTI value for DAPI
               configs";
              leaf string-type {
                type Otn-exp-tti-type-dapi;
                description
                  "TTI string type (FULL ASCII or  DAPI ASCII or
                 SAPI ASCII or hex format or OS ASCII or OS
                 HEX)";
              }
    
              leaf dapi-ascii-string {
                when
                  "../string-type = 'exp-tti-dapi-ascii/dapi-ascii'" {
                  description
                    "../StringType = EXP_TTI_DAPI_ASCII/DAPI_ASCII";
                }
                type string {
                  length "1..15";
                }
                description
                  "DAPI ASCII text (Max 15 characters)";
              }
            }  // container otn-expected-ttitcmdapi
    
            container otn-send-ttisapi {
              description
                "Configure OTN Send TTI value for SAPI configs";
              leaf string-type {
                type Otn-send-tti-type-sapi;
                description
                  "TTI string type (FULL ASCII or  DAPI ASCII or
                 SAPI ASCII or hex format or OS ASCII or OS
                 HEX)";
              }
    
              leaf sapi-ascii-string {
                when
                  "../string-type = 'send-tti-sapi-ascii/sapi-ascii'" {
                  description
                    "../StringType =
                   SEND_TTI_SAPI_ASCII/SAPI_ASCII";
                }
                type string {
                  length "1..15";
                }
                description
                  "SAPI ASCII text (Max 15 characters)";
              }
            }  // container otn-send-ttisapi
    
            container prbs {
              presence
                "Indicates a prbs node is configured.";
              description
                "Enable Prbs And configure";
              leaf mode-value {
                type Otu-mode;
                mandatory true;
                description "Mode value";
              }
    
              leaf patternvalue {
                type Otu-pattern;
                mandatory true;
                description "Pattern value";
              }
            }  // container prbs
    
            container otn-expected-ttitcmos {
              description
                "Configure OTN Expected TTI value for OS config";
              leaf string-type {
                type Otn-exp-tti-type-os;
                description
                  "TTI string type (FULL ASCII or  DAPI ASCII or
                 SAPI ASCII or hex format or OS ASCII or OS
                 HEX)";
              }
    
              leaf osascii-string {
                when
                  "../string-type = 'exp-tti-os-ascii/os-ascii'" {
                  description
                    "../StringType = EXP_TTI_OS_ASCII/OS_ASCII";
                }
                type string {
                  length "1..32";
                }
                description
                  "OS ASCII text (Max 32 characters)";
              }
    
              leaf oshex-string {
                when
                  "../string-type = 'exp-tti-os-hex/os-hex'" {
                  description
                    "../StringType = EXP_TTI_OS_HEX/OS_HEX";
                }
                type string {
                  length "1..64";
                }
                description
                  "OS HEX text (Max 64 characters)";
              }
            }  // container otn-expected-ttitcmos
    
            container otn-expected-tti {
              description
                "Configure OTN Expected TTI value for Full
               ASCII/HEX";
              leaf string-type {
                type Otn-exp-tti-type-full;
                description
                  "TTI string type (FULL ASCII or  DAPI ASCII or
                 SAPI ASCII or hex format or OS ASCII or OS
                 HEX)";
              }
    
              leaf full-ascii-string {
                when
                  "../string-type = 'exp-tti-full-ascii/full-ascii'" {
                  description
                    "../StringType = EXP_TTI_FULL_ASCII/FULL_ASCII";
                }
                type string {
                  length "1..64";
                }
                description
                  "Full ASCII text (Max 64 characters)";
              }
    
              leaf hex-string {
                when
                  "../string-type = 'exp-tti-hex/hex'" {
                  description
                    "../StringType = EXP_TTI_HEX/Hex";
                }
                type string {
                  length "1..128";
                }
                description
                  "Hex nibbles (Max 128 - The string length
                 should be an even number)";
              }
            }  // container otn-expected-tti
    
            leaf gcc {
              type empty;
              description
                "General Communication Channel configuration";
            }
    
            leaf sf {
              type uint32 {
                range "5..9";
              }
              description
                "Signal failure threshold";
            }
    
            leaf secondary-admin-state {
              type Otn-sec-admin-state;
              default "normal";
              description
                "Configure secondary admin state ";
            }
    
            leaf sd {
              type uint32 {
                range "5..9";
              }
              description
                "Signal degrade threshold";
            }
    
            leaf performance-monitoring {
              type Otn-per-mon;
              default "enable";
              description
                "Configure performance monitoring";
            }
    
            leaf loopback {
              type Otn-loopback;
              description "Type of Loopback";
            }
    
            leaf fec {
              type Otu-forward-error-correction;
              default "none";
              description
                "Configure forward error correction";
            }
          }  // container otu
        }
      }  // module Cisco-IOS-XR-controller-otu-cfg
    

© 2024 YumaWorks, Inc. All rights reserved.