ADTRAN-AOS-DYN-STATS   DEFINITIONS ::= BEGIN

IMPORTS
    Gauge32, Integer32, OBJECT-TYPE, MODULE-IDENTITY
        FROM SNMPv2-SMI
    CounterBasedGauge64
        FROM HCNUM-TC
    DisplayString, RowStatus, TEXTUAL-CONVENTION
        FROM SNMPv2-TC
    MODULE-COMPLIANCE, OBJECT-GROUP
        FROM SNMPv2-CONF
    adIdentity
        FROM ADTRAN-MIB
    adGenAOSRouter, adGenAOSConformance
        FROM ADTRAN-AOS;


adGenAosDynamicStatsMib MODULE-IDENTITY
        LAST-UPDATED "201709120000Z"  -- Sep 12, 2017 / YYYYMMDDHHMMZ
        ORGANIZATION "ADTRAN, Inc."
        CONTACT-INFO
               "Technical Support Dept.
                Postal: ADTRAN, Inc.
                901 Explorer Blvdr
                Huntsville, AL 35806

                Tel: +1 800 726-8663
                Fax: +1 256 963 6217
                E-mail: support@adtran.com"

        DESCRIPTION
                "This MIB contains Dynamic Stats/Counters."
        ::= { adIdentity 10000 53 2 5 }

adGenAosDynamicStats    OBJECT IDENTIFIER ::= { adGenAOSRouter 5 }

     adGenAosDynamicStatsTable OBJECT-TYPE
         SYNTAX   SEQUENCE OF AdGenAosDynamicStatsEntry
         MAX-ACCESS   not-accessible
         STATUS   current
         DESCRIPTION
            "Creating a table."
         ::= { adGenAosDynamicStats 1 }

     adGenAosDynamicStatsEntry OBJECT-TYPE
         SYNTAX   AdGenAosDynamicStatsEntry
         MAX-ACCESS   not-accessible
         STATUS   current
         DESCRIPTION
            "The parameters for interfaces."
         INDEX { adGenAosDynamicStatsIndex }
         ::= { adGenAosDynamicStatsTable 1 }

     AdGenAosDynamicStatsEntry ::=
         SEQUENCE {
             adGenAosDynamicStatsIndex                              Integer32,
             adGenAosDynamicStatsCounterType                        DisplayString,
             adGenAosDynamicStatsCounterPort                        DisplayString,
             adGenAosDynamicStatsCounterStatus                      DisplayString,
             adGenAosDynamicStatsPacketCount                        CounterBasedGauge64,
             adGenAosDynamicStatsBytesCount                         CounterBasedGauge64,
             adGenAosDynamicStatsPacketsPerSecondAvg30s             Gauge32,
             adGenAosDynamicStatsPacketsPerSecondAvg5m              Gauge32,
             adGenAosDynamicStatsBitsPerSecondAvg30s                Gauge32,
             adGenAosDynamicStatsBitsPerSecondAvg5m                 Gauge32
         }

adGenAosDynamicStatsIndex OBJECT-TYPE
     SYNTAX      Integer32 (0..16)
     MAX-ACCESS  not-accessible
     STATUS      current
     DESCRIPTION
            "Uniquely identifies a Dynamic Counter."
     ::= { adGenAosDynamicStatsEntry 1 }

adGenAosDynamicStatsCounterType OBJECT-TYPE
    SYNTAX      DisplayString
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
            "Type of the Counter. Example: RX, TX, CONGEST etc."
    ::= { adGenAosDynamicStatsEntry 2 }

adGenAosDynamicStatsCounterPort OBJECT-TYPE
    SYNTAX      DisplayString
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
            "Port or Queue Number on which the counter is set."
    ::= { adGenAosDynamicStatsEntry 3 }

adGenAosDynamicStatsCounterStatus OBJECT-TYPE
    SYNTAX      DisplayString
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
            "Status of the counter."
    ::= { adGenAosDynamicStatsEntry 4 }

adGenAosDynamicStatsPacketCount OBJECT-TYPE
    SYNTAX      CounterBasedGauge64
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
            "Number of frames/packets received, transmitted, assigned to a queue or dropped due to congestion, depending on the Counter configuration."
    ::= { adGenAosDynamicStatsEntry 5 }

adGenAosDynamicStatsBytesCount OBJECT-TYPE
    SYNTAX      CounterBasedGauge64
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
            "Number of bytes/octets received, transmitted, assigned to a queue or dropped due to congestion, depending on the Counter configuration."
    ::= { adGenAosDynamicStatsEntry 6 }

adGenAosDynamicStatsPacketsPerSecondAvg30s OBJECT-TYPE
    SYNTAX      Gauge32
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
            "Average rate of frames/packets per second received, transmitted, assigned to a queue or dropped due to congestion (depending on the Counter configuration) in the last 30 seconds."
    ::= { adGenAosDynamicStatsEntry 7 }

adGenAosDynamicStatsPacketsPerSecondAvg5m OBJECT-TYPE
    SYNTAX      Gauge32
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
            "Average rate of frames/packets per second received, transmitted, assigned to a queue or dropped due to congestion (depending on the Counter configuration) in the last 5 minutes."
    ::= { adGenAosDynamicStatsEntry 8 }

adGenAosDynamicStatsBitsPerSecondAvg30s OBJECT-TYPE
    SYNTAX      Gauge32
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
            "Average rate of bits per second received, transmitted, assigned to a queue or dropped due to congestion (depending on the Counter configuration) in the last 30 seconds."
    ::= { adGenAosDynamicStatsEntry 9 }

adGenAosDynamicStatsBitsPerSecondAvg5m OBJECT-TYPE
    SYNTAX      Gauge32
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
            "Average rate of bits per second received, transmitted, assigned to a queue or dropped due to congestion (depending on the Counter configuration) in the last 5 minutes."
    ::= { adGenAosDynamicStatsEntry 10 }

    ------------------------------------------------------------
-- Conformance information
--
adGenAosDynamicStatsConformance OBJECT IDENTIFIER
   ::= { adGenAOSConformance 31 }

adGenAosDynamicStatsGroups OBJECT IDENTIFIER
   ::= { adGenAosDynamicStatsConformance 1 }

adGenAosDynamicStatsCompliances OBJECT IDENTIFIER
   ::= { adGenAosDynamicStatsConformance 2 }

-- Compliance statements
--

-- Full compliance statement
adGenAosDynamicStatsCompliance MODULE-COMPLIANCE
    STATUS  current
    DESCRIPTION
    "The compliance statement for SNMP entities which implement
    the adGenAosDynamicStats MIB."

    MODULE  -- this module

    GROUP  adGenAosDynamicStatsObjectsGroup
    DESCRIPTION
       "This optional group defines the notification generated by  events."
    ::= { adGenAosDynamicStatsCompliances 1 }

adGenAosDynamicStatsObjectsGroup OBJECT-GROUP
    OBJECTS {
             adGenAosDynamicStatsCounterType,
             adGenAosDynamicStatsCounterPort,
             adGenAosDynamicStatsCounterStatus,
             adGenAosDynamicStatsPacketCount,
             adGenAosDynamicStatsBytesCount,
             adGenAosDynamicStatsPacketsPerSecondAvg30s,
             adGenAosDynamicStatsPacketsPerSecondAvg5m,
             adGenAosDynamicStatsBitsPerSecondAvg30s,
             adGenAosDynamicStatsBitsPerSecondAvg5m
    }
    STATUS  current
    DESCRIPTION
       "A collection of objects containing the Dynamic Counter Details And Statistics."
    ::= { adGenAosDynamicStatsGroups 1 }

END
