Cisco-IOS-XR-ifmgr-cfg

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

  • Version: 2020-10-01

    Cisco-IOS-XR-ifmgr-cfg@2020-10-01


    
      module Cisco-IOS-XR-ifmgr-cfg {
    
        yang-version 1;
    
        namespace
          "http://cisco.com/ns/yang/Cisco-IOS-XR-ifmgr-cfg";
    
        prefix ifmgr-cfg;
    
        import Cisco-IOS-XR-types {
          prefix xr;
        }
        import cisco-semver {
          prefix semver;
        }
    
        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 ifmgr package configuration.
    
    This module contains definitions
    for the following management objects:
      global-interface-configuration: Global scoped configuration
        for interfaces
      interface-configurations: Configuration for all interfaces
    
    Copyright (c) 2013-2020 by Cisco Systems, Inc.
    All rights reserved.";
    
        revision "2020-10-01" {
          description
            "Updated path for description configuration
    2020-10-01
      64-bit bandwidth support";
        }
    
        revision "2019-04-05" {
          description
            "Establish semantic version baseline.";
        }
    
        revision "2017-09-07" {
          description
            "Fixed type translation error.";
        }
    
        revision "2015-07-30" {
          description "Descriptions updated.";
        }
    
        revision "2015-01-07" {
          description "IOS XR 5.3.1 revision.";
        }
    
        semver:module-version "1.1.0";
        semver:module-version "1.0.0";
    
        typedef Interface-mode-enum {
          type enumeration {
            enum "default" {
              value 0;
              description
                "Default Interface Mode";
            }
            enum "point-to-point" {
              value 1;
              description
                "Point-to-Point Interface Mode";
            }
            enum "multipoint" {
              value 2;
              description
                "Multipoint Interface Mode";
            }
            enum "l2-transport" {
              value 3;
              description
                "L2 Transport Interface Mode";
            }
          }
          description "Interface mode enum";
        }
    
        typedef Interface-active {
          type string {
            pattern '(act)|(pre)';
          }
          description
            "act:The interface is active, pre:Preconfiguration";
        }
    
        typedef Secondary-admin-state-enum {
          type enumeration {
            enum "normal" {
              value 0;
              description "Normal Mode";
            }
            enum "maintenance" {
              value 1;
              description "Maintenance Mode";
            }
          }
          description
            "Secondary admin state enum";
        }
    
        typedef Link-status-enum {
          type enumeration {
            enum "default" {
              value 0;
              description
                "Display link status messages for physical links";
            }
            enum "disable" {
              value 1;
              description
                "Disable link status messages";
            }
            enum "software-interfaces" {
              value 2;
              description
                "Display link status messages for all interfaces";
            }
          }
          description "Link status enum";
        }
    
        container global-interface-configuration {
          description
            "Global scoped configuration for interfaces";
          leaf link-status {
            type Link-status-enum;
            default "default";
            description
              "Enable or disable link-status messages";
          }
        }  // container global-interface-configuration
    
        container interface-configurations {
          description
            "Configuration for all interfaces";
          list interface-configuration {
            key "active interface-name";
            description
              "The configuration for an interface";
            container dampening {
              description
                "Whether this interface's state changes are
    dampened or not";
              leaf args {
                type enumeration {
                  enum "default-values" {
                    value 0;
                    description "Default values";
                  }
                  enum "specify-half-life" {
                    value 1;
                    description
                      "Half Life Specified";
                  }
                  enum "specify-all" {
                    value 4;
                    description
                      "All Arguments except Restart Penalty
    Specified";
                  }
                  enum "specify-rp" {
                    value 5;
                    description
                      "All Arguments Specified";
                  }
                }
                description
                  "Dampening Arguments";
              }
    
              leaf half-life {
                when
                  "../args = 'specify-half-life' or ../args = 'specify-all' or ../args = 'specify-rp'" {
                  description
                    "../Args = SpecifyHalfLife or ../Args =
    SpecifyAll or ../Args = SpecifyRP";
                }
                type uint32 {
                  range "1..45";
                }
                units "minute";
                description
                  "Decay half life (in minutes)";
              }
    
              leaf reuse-threshold {
                when
                  "../args = 'specify-all' or ../args = 'specify-rp'" {
                  description
                    "../Args = SpecifyAll or ../Args = SpecifyRP";
                }
                type uint32 {
                  range "1..20000";
                }
                description "Reuse threshold";
              }
    
              leaf suppress-threshold {
                when
                  "../args = 'specify-all' or ../args = 'specify-rp'" {
                  description
                    "../Args = SpecifyAll or ../Args = SpecifyRP";
                }
                type uint32 {
                  range "1..20000";
                }
                description "Suppress threshold";
              }
    
              leaf suppress-time {
                when
                  "../args = 'specify-all' or ../args = 'specify-rp'" {
                  description
                    "../Args = SpecifyAll or ../Args = SpecifyRP";
                }
                type uint32 {
                  range "1..255";
                }
                units "minute";
                description
                  "Max suppress time (in minutes)";
              }
    
              leaf restart-penalty {
                when "../args = 'specify-rp'" {
                  description
                    "../Args = SpecifyRP";
                }
                type uint32 {
                  range "0..20000";
                }
                description "Restart penalty";
              }
            }  // container dampening
    
            container mtus {
              description
                "The MTU configuration for the interface";
              list mtu {
                key "owner";
                description
                  "The MTU for the interface";
                leaf owner {
                  type xr:Cisco-ios-xr-string;
                  description
                    "The Owner of the interface - eg. for
    'LoopbackX' main interface this is 'loopback'";
                }
    
                leaf mtu {
                  type uint32 {
                    range "64..65535";
                  }
                  mandatory true;
                  description "The MTU value";
                }
              }  // list mtu
            }  // container mtus
    
            container encapsulation {
              description
                "The encapsulation on the interface";
              leaf encapsulation {
                type string;
                description
                  "The encapsulation - e.g. hdlc, ppp";
              }
    
              leaf capsulation-options {
                type uint32;
                description
                  "The options for this capsulation, usually '0'";
              }
            }  // container encapsulation
    
            leaf shutdown {
              type empty;
              description
                "The existence of this configuration indicates
    the interface is shut down";
            }
    
            leaf interface-virtual {
              type empty;
              description
                "The mode in which an interface is running. The
    existence of this object causes the creation of
    the software virtual/subinterface.";
            }
    
            leaf secondary-admin-state {
              type Secondary-admin-state-enum;
              description
                "The secondary admin state of the interface";
            }
    
            leaf interface-mode-non-physical {
              type Interface-mode-enum;
              default "default";
              description
                "The mode in which an interface is running. The
    existence of this object causes the creation of
    the software subinterface.";
            }
    
            leaf bandwidth {
              type uint64 {
                range "0..18446744073709551615";
              }
              units "kbit/s";
              description
                "The bandwidth of the interface in kbps";
            }
    
            leaf link-status {
              type empty;
              description
                "Enable interface and line-protocol state change
    alarms";
            }
    
            leaf description {
              type string;
              description
                "The description of this interface";
            }
    
            leaf active {
              type Interface-active;
              description
                "Whether the interface is active or
    preconfigured";
            }
    
            leaf interface-name {
              type xr:Interface-name;
              description
                "The name of the interface";
            }
          }  // list interface-configuration
        }  // container interface-configurations
      }  // module Cisco-IOS-XR-ifmgr-cfg
    

© 2024 YumaWorks, Inc. All rights reserved.