netconfcentral logo

AGENTX-MIB.yang



  module AGENTX-MIB {

    yang-version 1;

    namespace
      "urn:ietf:params:xml:ns:yang:smiv2:AGENTX-MIB";

    prefix agentx-mib;

    import SNMP-FRAMEWORK-MIB {
      prefix snmp-framework;
    }
    import SNMPv2-TC {
      prefix smiv2;
    }
    import yang-smi {
      prefix smi;
    }
    import ietf-yang-types {
      prefix yang;
    }

    organization "AgentX Working Group";

    contact
      "WG-email:   agentx@dorothy.bmc.com
      Subscribe:  agentx-request@dorothy.bmc.com
      WG-email Archive:  ftp://ftp.peer.com/pub/agentx/archives
      FTP repository:  ftp://ftp.peer.com/pub/agentx
      http://www.ietf.org/html.charters/agentx-charter.html
      
      Chair:      Bob Natale
                  ACE*COMM Corporation
      Email:      bnatale@acecomm.com
      
      WG editor:  Mark Ellison
                  Ellison Software Consulting, Inc.
      Email:      ellison@world.std.com
      
      Co-author:  Lauren Heintz
                  Cisco Systems,
      EMail:      lheintz@cisco.com
      
      Co-author:  Smitha Gudur
                  Independent Consultant
      Email:      sgudur@hotmail.com";

    description
      "This is the MIB module for the SNMP Agent Extensibility
      Protocol (AgentX).  This MIB module will be implemented by
      the master agent.";

    revision "2000-01-10" {
      description
        "Initial version published as RFC 2742.";
    }


    typedef AgentxTAddress {
      type binary {
        length "0..255";
      }
      description
        "Denotes a transport service address.  This is identical to
         the TAddress textual convention (SNMPv2-SMI) except that
         zero-length values are permitted.";
    }

    container agentxGeneral {
      smi:oid "1.3.6.1.2.1.74.1.1";
      leaf agentxDefaultTimeout {
        smi:default "5";
        smi:oid "1.3.6.1.2.1.74.1.1.1";
        type int32 {
          range "0..255";
        }
        units "seconds";
        config false;
        description
          "The default length of time, in seconds, that the master
            agent should allow to elapse after dispatching a message
            to a session before it regards the subagent as not
            responding.  This is a system-wide value that may
            override the timeout value associated with a particular
            session (agentxSessionTimeout) or a particular registered
            MIB region (agentxRegTimeout).  If the associated value of
            agentxSessionTimeout and agentxRegTimeout are zero, or
            impractical in accordance with implementation-specific
            procedure of the master agent, the value represented by
            this object will be the effective timeout value for the
            
            master agent to await a response to a dispatch from a
            given subagent.";
      }

      leaf agentxMasterAgentXVer {
        smi:oid "1.3.6.1.2.1.74.1.1.2";
        type int32 {
          range "1..255";
        }
        config false;
        description
          "The AgentX protocol version supported by this master agent.
            The current protocol version is 1.  Note that the master agent
            must also allow interaction with earlier version subagents.";
      }
    }  // container agentxGeneral

    container agentxConnection {
      smi:oid "1.3.6.1.2.1.74.1.2";
      leaf agentxConnTableLastChange {
        smi:oid "1.3.6.1.2.1.74.1.2.1";
        type yang:timestamp;
        config false;
        description
          "The value of sysUpTime when the last row creation or deletion
            occurred in the agentxConnectionTable.";
      }

      list agentxConnectionEntry {
        smi:oid "1.3.6.1.2.1.74.1.2.2.1";
        key "agentxConnIndex";
        description
          "An agentxConnectionEntry contains information describing a
            single AgentX transport connection.  A connection may be
            
            used to support zero or more AgentX sessions.  An entry is
            created when a new transport connection is established,
            and is destroyed when the transport connection is terminated.";
        leaf agentxConnIndex {
          smi:oid "1.3.6.1.2.1.74.1.2.2.1.1";
          type uint32 {
            range "1..4294967295";
          }
          description
            "agentxConnIndex contains the value that uniquely identifies
               an open transport connection used by this master agent
               to provide AgentX service.  Values of this index should
               not be re-used.  The value assigned to a given transport
               connection is constant for the lifetime of that connection.";
        }

        leaf agentxConnOpenTime {
          smi:oid "1.3.6.1.2.1.74.1.2.2.1.2";
          type yang:timestamp;
          config false;
          description
            "The value of sysUpTime when this connection was established
               and, therefore, its value when this entry was added to the table.";
        }

        leaf agentxConnTransportDomain {
          smi:oid "1.3.6.1.2.1.74.1.2.2.1.3";
          type smiv2:TDomain;
          config false;
          description
            "The transport protocol in use for this connection to the
               subagent.";
        }

        leaf agentxConnTransportAddress {
          smi:oid "1.3.6.1.2.1.74.1.2.2.1.4";
          type AgentxTAddress;
          config false;
          description
            "The transport address of the remote (subagent) end of this
               connection to the master agent.  This object may be zero-length
               for unix-domain sockets (and possibly other types of transport
               addresses) since the subagent need not bind a filename to its
               local socket.";
        }
      }  // list agentxConnectionEntry
    }  // container agentxConnection

    container agentxSession {
      smi:oid "1.3.6.1.2.1.74.1.3";
      leaf agentxSessionTableLastChange {
        smi:oid "1.3.6.1.2.1.74.1.3.1";
        type yang:timestamp;
        config false;
        description
          "The value of sysUpTime when the last row creation or deletion
            occurred in the agentxSessionTable.";
      }

      list agentxSessionEntry {
        smi:oid "1.3.6.1.2.1.74.1.3.2.1";
        key "agentxConnIndex agentxSessionIndex";
        description
          "Information about a single open session between the AgentX
            master agent and a subagent is contained in this entry.  An
            entry is created when a new session is successfully established
            and is destroyed either when the subagent transport connection
            has terminated or when the subagent session is closed.";
        leaf agentxConnIndex {
          type leafref {
            path "/agentx-mib:agentxConnection/agentx-mib:agentxConnectionEntry/agentx-mib:agentxConnIndex";
          }
          description
            "Automagically generated leafref leaf.";
        }

        leaf agentxSessionIndex {
          smi:oid "1.3.6.1.2.1.74.1.3.2.1.1";
          type uint32 {
            range "0..4294967295";
          }
          description
            "A unique index for the subagent session.  It is the same as
               h.sessionID defined in the agentx header.  Note that if
               a subagent's session with the master agent is closed for
               any reason its index should not be re-used.
               A value of zero(0) is specifically allowed in order
               to be compatible with the definition of h.sessionId.";
        }

        leaf agentxSessionObjectID {
          smi:oid "1.3.6.1.2.1.74.1.3.2.1.2";
          type yang:object-identifier;
          config false;
          description
            "This is taken from the o.id field of the agentx-Open-PDU.
               This attribute will report a value of '0.0' for subagents
               not supporting the notion of an AgentX session object
               identifier.";
        }

        leaf agentxSessionDescr {
          smi:oid "1.3.6.1.2.1.74.1.3.2.1.3";
          type snmp-framework:SnmpAdminString;
          config false;
          description
            "A textual description of the session.  This is analogous to
               sysDescr defined in the SNMPv2-MIB in RFC 1907 [19] and is
               taken from the o.descr field of the agentx-Open-PDU.
               This attribute will report a zero-length string value for
               subagents not supporting the notion of a session description.";
        }

        leaf agentxSessionAdminStatus {
          smi:oid "1.3.6.1.2.1.74.1.3.2.1.4";
          type enumeration {
            enum "up" {
              value 1;
            }
            enum "down" {
              value 2;
            }
          }
          description
            "The administrative (desired) status of the session.  Setting
               the value to 'down(2)' closes the subagent session (with c.reason
               set to 'reasonByManager').";
        }

        leaf agentxSessionOpenTime {
          smi:oid "1.3.6.1.2.1.74.1.3.2.1.5";
          type yang:timestamp;
          config false;
          description
            "The value of sysUpTime when this session was opened and,
               therefore, its value when this entry was added to the table.";
        }

        leaf agentxSessionAgentXVer {
          smi:oid "1.3.6.1.2.1.74.1.3.2.1.6";
          type int32 {
            range "1..255";
          }
          config false;
          description
            "The version of the AgentX protocol supported by the
               session.  This must be less than or equal to the value of
               agentxMasterAgentXVer.";
        }

        leaf agentxSessionTimeout {
          smi:oid "1.3.6.1.2.1.74.1.3.2.1.7";
          type int32 {
            range "0..255";
          }
          units "seconds";
          config false;
          description
            "The length of time, in seconds, that a master agent should
               allow to elapse after dispatching a message to this session
               before it regards the subagent as not responding.  This value
               is taken from the o.timeout field of the agentx-Open-PDU.
               This is a session-specific value that may be overridden by
               values associated with the specific registered MIB regions
               (see agentxRegTimeout). A value of zero(0) indicates that
               the master agent's default timeout value should be used
               
               (see agentxDefaultTimeout).";
        }
      }  // list agentxSessionEntry
    }  // container agentxSession

    container agentxRegistration {
      smi:oid "1.3.6.1.2.1.74.1.4";
      leaf agentxRegistrationTableLastChange {
        smi:oid "1.3.6.1.2.1.74.1.4.1";
        type yang:timestamp;
        config false;
        description
          "The value of sysUpTime when the last row creation or deletion
            occurred in the agentxRegistrationTable.";
      }

      list agentxRegistrationEntry {
        smi:oid "1.3.6.1.2.1.74.1.4.2.1";
        key "agentxConnIndex agentxSessionIndex agentxRegIndex";
        description
          "Contains information for a single registered region.  An
            entry is created when a session  successfully registers a
            region and is destroyed for any of three reasons: this region
            is unregistered by the session, the session is closed,
            or the subagent connection is closed.";
        leaf agentxConnIndex {
          type leafref {
            path "/agentx-mib:agentxConnection/agentx-mib:agentxConnectionEntry/agentx-mib:agentxConnIndex";
          }
          description
            "Automagically generated leafref leaf.";
        }

        leaf agentxSessionIndex {
          type leafref {
            path "/agentx-mib:agentxSession/agentx-mib:agentxSessionEntry/agentx-mib:agentxSessionIndex";
          }
          description
            "Automagically generated leafref leaf.";
        }

        leaf agentxRegIndex {
          smi:oid "1.3.6.1.2.1.74.1.4.2.1.1";
          type uint32 {
            range "1..4294967295";
          }
          description
            "agentxRegIndex uniquely identifies a registration entry.
               This value is constant for the lifetime of an entry.";
        }

        leaf agentxRegContext {
          smi:oid "1.3.6.1.2.1.74.1.4.2.1.2";
          type binary;
          config false;
          description
            "The context in which the session supports the objects in this
               region.  A zero-length context indicates the default context.";
        }

        leaf agentxRegStart {
          smi:oid "1.3.6.1.2.1.74.1.4.2.1.3";
          type yang:object-identifier;
          config false;
          description
            "The starting OBJECT IDENTIFIER of this registration entry.  The
               session identified by agentxSessionIndex implements objects
               starting at this value (inclusive).  Note that this value could
               identify an object type, an object instance, or a partial object
               instance.";
        }

        leaf agentxRegRangeSubId {
          smi:oid "1.3.6.1.2.1.74.1.4.2.1.4";
          type uint32;
          config false;
          description
            "agentxRegRangeSubId is used to specify the range.  This is
               taken from r.region_subid in the registration PDU.  If the value
               of this object is zero, no range is specified.  If it is non-zero,
               it identifies the `nth' sub-identifier in r.region for which
               this entry's agentxRegUpperBound value is substituted in the
               OID for purposes of defining the region's upper bound.";
        }

        leaf agentxRegUpperBound {
          smi:oid "1.3.6.1.2.1.74.1.4.2.1.5";
          type uint32;
          config false;
          description
            "agentxRegUpperBound represents the upper-bound sub-identifier in
               a registration.  This is taken from the r.upper_bound in the
               registration PDU.  If agentxRegRangeSubid (r.region_subid) is
               zero, this value is also zero and is not used to define an upper
               bound for this registration.";
        }

        leaf agentxRegPriority {
          smi:oid "1.3.6.1.2.1.74.1.4.2.1.6";
          type uint32;
          config false;
          description
            "The registration priority.  Lower values have higher priority.
               This value is taken from r.priority in the register PDU.
               Sessions should use the value of 127 for r.priority if a
               default value is desired.";
        }

        leaf agentxRegTimeout {
          smi:oid "1.3.6.1.2.1.74.1.4.2.1.7";
          type int32 {
            range "0..255";
          }
          units "seconds";
          config false;
          description
            "The timeout value, in seconds, for responses to
               requests associated with this registered MIB region.
               A value of zero(0) indicates the default value (indicated
               by by agentxSessionTimeout or agentxDefaultTimeout) is to
               be used.  This value is taken from the r.timeout field of
               the agentx-Register-PDU.";
        }

        leaf agentxRegInstance {
          smi:oid "1.3.6.1.2.1.74.1.4.2.1.8";
          type smiv2:TruthValue;
          config false;
          description
            "The value of agentxRegInstance is `true' for
               registrations for which the INSTANCE_REGISTRATION
               was set, and is `false' for all other registrations.";
        }
      }  // list agentxRegistrationEntry
    }  // container agentxRegistration
  }  // module AGENTX-MIB