ELTEX-FASTPATH-QOS-COS-MIB DEFINITIONS ::= BEGIN

IMPORTS
    MODULE-IDENTITY, OBJECT-TYPE,
    Unsigned32, Gauge32, Counter64       FROM SNMPv2-SMI
    DisplayString                        FROM SNMPv2-TC
    MODULE-COMPLIANCE, OBJECT-GROUP      FROM SNMPv2-CONF
    ifIndex                              FROM IF-MIB
    eltFastpathQosMIB                    FROM ELTEX-FASTPATH-QOS-MIB;

eltFastpathQosCosMIB MODULE-IDENTITY
    LAST-UPDATED "201703090000Z" -- 09 Mar 2017 12:00:00 GMT
    ORGANIZATION "Eltex Enterprise Co, Ltd."
    CONTACT-INFO "www.eltex-co.ru"
    DESCRIPTION
        "The MIB definitaions for Quality of Service - CoS Flex package."

    -- Revision history.
    REVISION
        "201703090000Z"
    DESCRIPTION
        "Initial revision."

    ::= { eltFastpathQosMIB 1 }


efpQosCosObjects              OBJECT IDENTIFIER ::= { eltFastpathQosCosMIB 1 }

--**************************************************************************************
--    efpQosCosStatistics
--**************************************************************************************

efpQosCosStatistics           OBJECT IDENTIFIER ::= { efpQosCosObjects 3 }

--**************************************************************************************
--    efpAgentCosTrafficInfoTable
--**************************************************************************************

efpAgentCosTrafficInfoTable OBJECT-TYPE
    SYNTAX         SEQUENCE OF EfpAgentCosTrafficInfoEntry
    MAX-ACCESS     not-accessible
    STATUS         current
    DESCRIPTION
        "A table containing traffic counters for interfaces."
    ::= { efpQosCosStatistics 1 }

efpAgentCosTrafficInfoEntry OBJECT-TYPE
    SYNTAX         EfpAgentCosTrafficInfoEntry
    MAX-ACCESS     not-accessible
    STATUS         current
    DESCRIPTION
        "CoS queue counters for an interface."
    INDEX { ifIndex }
    ::= { efpAgentCosTrafficInfoTable 1 }

EfpAgentCosTrafficInfoEntry ::=
    SEQUENCE {
     efpAgentCosTrafficInfoTotalPass
             Counter64,
     efpAgentCosTrafficInfoTotalDrops
             Counter64,
     efpAgentCosTrafficInfoTxQueue
             Gauge32,
     efpAgentCosTrafficInfoRxQueue
             Gauge32,
     efpAgentCosTrafficInfoRedDrops
             Counter64,
     efpAgentCosTrafficInfoYellowDrops
             Counter64,
     efpAgentCosTrafficInfoWredQueue
             Gauge32
    }

efpAgentCosTrafficInfoTotalPass OBJECT-TYPE
    SYNTAX      Counter64
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "The number of packets that have been
        transmitted on the interface."
    ::= { efpAgentCosTrafficInfoEntry 1 }

efpAgentCosTrafficInfoTotalDrops OBJECT-TYPE
    SYNTAX      Counter64
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "The number of packets that have been
        dropped on the interface due to congestion."
    ::= { efpAgentCosTrafficInfoEntry 2 }

efpAgentCosTrafficInfoTxQueue OBJECT-TYPE
    SYNTAX Gauge32
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "The number of cells in the transmit queue
        on the interface."
    ::= { efpAgentCosTrafficInfoEntry 3 }

efpAgentCosTrafficInfoRxQueue OBJECT-TYPE
    SYNTAX      Gauge32
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "The number of cells in the receive queue
        on the interface."
    ::= { efpAgentCosTrafficInfoEntry 4 }

efpAgentCosTrafficInfoRedDrops OBJECT-TYPE
    SYNTAX      Counter64
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "The number of red (exceeded) packets
        that were dropped on the interface."
    ::= { efpAgentCosTrafficInfoEntry 5 }

efpAgentCosTrafficInfoYellowDrops OBJECT-TYPE
    SYNTAX      Counter64
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "The number of yellow (conformed) packets
        that were dropped on the interface."
    ::= { efpAgentCosTrafficInfoEntry 6 }

efpAgentCosTrafficInfoWredQueue OBJECT-TYPE
    SYNTAX Gauge32
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "The number of packets in the WRED transmit
        queue on the interface."
    ::= { efpAgentCosTrafficInfoEntry 7 }

--**************************************************************************************
--  efpAgentCosTrafficInfoQueueTable
--**************************************************************************************

efpAgentCosTrafficInfoQueueTable OBJECT-TYPE
    SYNTAX         SEQUENCE OF EfpAgentCosTrafficInfoQueueEntry
    MAX-ACCESS     not-accessible
    STATUS         current
    DESCRIPTION
        "A table containing traffic counters for CoS queues."
    ::= { efpQosCosStatistics 2 }

efpAgentCosTrafficInfoQueueEntry OBJECT-TYPE
    SYNTAX         EfpAgentCosTrafficInfoQueueEntry
    MAX-ACCESS     not-accessible
    STATUS         current
    DESCRIPTION
        "CoS queue counters for a port and a CoS queue."
    INDEX { ifIndex, efpAgentCosTrafficInfoQueueIndex }
    ::= { efpAgentCosTrafficInfoQueueTable 1 }

EfpAgentCosTrafficInfoQueueEntry ::=
    SEQUENCE {
     efpAgentCosTrafficInfoQueueIndex
             Unsigned32,
     efpAgentCosTrafficInfoQueueName
             DisplayString,
     efpAgentCosTrafficInfoQueueTotalPass
             Counter64,
     efpAgentCosTrafficInfoQueueTotalDrops
             Counter64,
     efpAgentCosTrafficInfoQueueTxQueue
             Gauge32,
     efpAgentCosTrafficInfoQueueWredQueue
             Gauge32
    }

efpAgentCosTrafficInfoQueueIndex OBJECT-TYPE
    SYNTAX      Unsigned32
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
        "Index of the CoS queue."
    ::= { efpAgentCosTrafficInfoQueueEntry 1 }

efpAgentCosTrafficInfoQueueName OBJECT-TYPE
    SYNTAX      DisplayString (SIZE(0..3))
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Name of the CoS queue (can be UCn or MCn,
        where n is the queue number)."
    ::= { efpAgentCosTrafficInfoQueueEntry 2 }

efpAgentCosTrafficInfoQueueTotalPass OBJECT-TYPE
    SYNTAX      Counter64
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "The number of packets that have been
        transmitted on the CoS queue."
    ::= { efpAgentCosTrafficInfoQueueEntry 3 }

efpAgentCosTrafficInfoQueueTotalDrops OBJECT-TYPE
    SYNTAX      Counter64
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "The number of packets that have been
        dropped on the CoS queue due to congestion."
    ::= { efpAgentCosTrafficInfoQueueEntry 4 }

efpAgentCosTrafficInfoQueueTxQueue OBJECT-TYPE
    SYNTAX Gauge32
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "The number of cells in the transmit queue
        for the CoS queue."
    ::= { efpAgentCosTrafficInfoQueueEntry 5 }

efpAgentCosTrafficInfoQueueWredQueue OBJECT-TYPE
    SYNTAX Gauge32
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "The number of packets in the WRED transmit
        queue for the CoS queue."
    ::= { efpAgentCosTrafficInfoQueueEntry 6 }


--**************************************************************************************
efpQosCosNotifications        OBJECT IDENTIFIER ::= { eltFastpathQosCosMIB 2 }

efpQosCosNotificationsPrefix  OBJECT IDENTIFIER ::= { efpQosCosNotifications 0 }

-- conformance information
efpQosCosConformance          OBJECT IDENTIFIER ::= { eltFastpathQosCosMIB 3 }

efpQosCosCompliances          OBJECT IDENTIFIER ::= { efpQosCosConformance 1 }

-- compliance statements
efpQosCosCompliance MODULE-COMPLIANCE
    STATUS  obsolete
    DESCRIPTION
            "The compliance statement for SNMP entities which implement
            version 1 of the eltFastpathQosCosMIB MIB."
    MODULE  -- this module
        MANDATORY-GROUPS {
            efpAgentQosCosTrafficInfoGroup
        }
        GROUP           efpAgentQosCosTrafficInfoQueueGroup
        DESCRIPTION
            "Implementation of the efpAgentQosCosTrafficInfoQueueGroup is only
            mandatory on supporting systems."
    ::= { efpQosCosCompliances 1 }

efpQosCosCompliance2 MODULE-COMPLIANCE
    STATUS  current
    DESCRIPTION
            "The compliance statement for SNMP entities which implement
            version 2 of the eltFastpathQosCosMIB MIB."
    MODULE  -- this module
        MANDATORY-GROUPS {
            efpAgentQosCosTrafficInfoGroup
        }
        GROUP           efpAgentQosCosTrafficInfoQueueGroup
        DESCRIPTION
            "Implementation of the efpAgentQosCosTrafficInfoQueueGroup is only
            mandatory on supporting systems."
    ::= { efpQosCosCompliances 2 }

efpQosCosGroups               OBJECT IDENTIFIER ::= { efpQosCosConformance 2 }

efpAgentQosCosTrafficInfoGroup OBJECT-GROUP
    OBJECTS {
             efpAgentCosTrafficInfoTotalPass,
             efpAgentCosTrafficInfoTotalDrops,
             efpAgentCosTrafficInfoTxQueue,
             efpAgentCosTrafficInfoRxQueue,
             efpAgentCosTrafficInfoRedDrops,
             efpAgentCosTrafficInfoYellowDrops,
             efpAgentCosTrafficInfoWredQueue
            }
    STATUS  current
    DESCRIPTION
            "The collection of objects which are used to represent
            interface traffic stats."
    ::= { efpQosCosGroups 1 }

efpAgentQosCosTrafficInfoQueueGroup OBJECT-GROUP
    OBJECTS {
            efpAgentCosTrafficInfoQueueName,
            efpAgentCosTrafficInfoQueueTotalPass,
            efpAgentCosTrafficInfoQueueTotalDrops,
            efpAgentCosTrafficInfoQueueTxQueue,
            efpAgentCosTrafficInfoQueueWredQueue
            }
    STATUS  current
    DESCRIPTION
            "The collection of objects which are used to represent
            queue traffic stats."
    ::= { efpQosCosGroups 2 }

END
