-- MIB created 6/25/99 12:57:52, by
--   SMIC (the next generation) version 1.6.29, November 22, 1994.

CISCO-WRED-MIB DEFINITIONS ::= BEGIN

-- From file: "CISCO-WRED-MIB.my"

IMPORTS
    Integer32, Gauge32, Counter32
            FROM SNMPv2-SMI-v1
    OBJECT-TYPE
            FROM RFC-1212
    ifIndex
            FROM IF-MIB
    ciscoMgmt
            FROM CISCO-SMI;

ciscoWredMIB OBJECT IDENTIFIER ::= { ciscoMgmt 83 }
-- MODULE-IDENTITY
--  LastUpdated
--    9707180000Z
--  OrgName
--    Cisco Systems, Inc.
--  ContactInfo
--     Cisco Systems
--     Customer Service
--    
--    Postal: 170 W. Tasman Drive
--     San Jose, CA  95134-1706
--     USA
--    
--       Tel: +1 800 553-NETS
--    
--    E-mail: tgrennan-group@cisco.com
--  Descr
--    Cisco WRED MIB - Overview
--    
--      Cisco Weighted Random Early Detection/Drop is a method which avoids
--      traffic congestion on an output interface.  Congestion is
--      detected by computing the average output queue size against preset
--      thresholds. WRED support are on the IP fast switching and
--      IP flow switching only.  It does not apply to IP process switching.
--    
--      This MIB incorporates objects from the Cisco WRED line interfaces.
--      Its purpose is to provide Weighted Random Early Detection/Drop
--      packet configuration and packet filtering information.
--      
--      WRED are configured/enabled through the CLI command.
--      Defaults configuration values are assigned and values can be
--      modified through additional CLI commands.
--      
--  RevDate
--    9707180000Z
--  RevDescr
--    Initial version of this MIB module.

ciscoWredMIBObjects OBJECT IDENTIFIER ::= { ciscoWredMIB 1 }
cwredConfig     OBJECT IDENTIFIER ::= { ciscoWredMIBObjects 1 }
cwredStats      OBJECT IDENTIFIER ::= { ciscoWredMIBObjects 2 }
ciscoWredMIBConformance OBJECT IDENTIFIER ::= { ciscoWredMIB 3 }
ciscoWredMIBCompliances OBJECT IDENTIFIER ::= { ciscoWredMIBConformance 1 }
ciscoWredMIBGroups OBJECT IDENTIFIER ::= { ciscoWredMIBConformance 2 }

cwredConfigGlobTable OBJECT-TYPE
    SYNTAX SEQUENCE OF CwredConfigGlobEntry
    ACCESS not-accessible
    STATUS mandatory
    DESCRIPTION
        "A table of WRED global configuration variables."
    ::= { cwredConfig 1 }

cwredConfigGlobEntry OBJECT-TYPE
    SYNTAX CwredConfigGlobEntry
    ACCESS not-accessible
    STATUS mandatory
    DESCRIPTION
        "A collection of configuration entries on this 
        interface.  Entries are created and deleted via
        red command line interface."
    INDEX { ifIndex }
    ::= { cwredConfigGlobTable 1 }

CwredConfigGlobEntry ::= SEQUENCE {
    cwredConfigGlobQueueWeight Integer32
    }

cwredConfigGlobQueueWeight OBJECT-TYPE
    SYNTAX Integer32
    ACCESS read-only
    STATUS mandatory
    DESCRIPTION
        "The decay factor for the queue average calculation.
        Numbers are 2's exponent up to 16.
        The smaller the number, the faster it decays."
    ::= { cwredConfigGlobEntry 1 }

cwredConfigPrecedTable OBJECT-TYPE
    SYNTAX SEQUENCE OF CwredConfigPrecedEntry
    ACCESS not-accessible
    STATUS mandatory
    DESCRIPTION
        "A table of WRED configuration values with respect to
        the IP precedence of packets."
    ::= { cwredConfig 2 }

cwredConfigPrecedEntry OBJECT-TYPE
    SYNTAX CwredConfigPrecedEntry
    ACCESS not-accessible
    STATUS mandatory
    DESCRIPTION
        "WRED IP precedence configuration table entry.
        Entries are created and deleted via red command
        interface."
    INDEX { ifIndex, cwredConfigPrecedPrecedence }
    ::= { cwredConfigPrecedTable 1 }

CwredConfigPrecedEntry ::= SEQUENCE {
    cwredConfigPrecedPrecedence Integer32,
    cwredConfigPrecedMinDepthThreshold Integer32,
    cwredConfigPrecedMaxDepthThreshold Integer32,
    cwredConfigPrecedPktsDropFraction Integer32
    }

cwredConfigPrecedPrecedence OBJECT-TYPE
    SYNTAX Integer32(0..7)
    ACCESS not-accessible
    STATUS mandatory
    DESCRIPTION
        "The IP precedence of this entry."
    ::= { cwredConfigPrecedEntry 1 }

cwredConfigPrecedMinDepthThreshold OBJECT-TYPE
    SYNTAX Integer32
--  Units
--    packets
    ACCESS read-only
    STATUS mandatory
    DESCRIPTION
        "The average queue depth at which WRED begins to
        drop packets."
    ::= { cwredConfigPrecedEntry 2 }

cwredConfigPrecedMaxDepthThreshold OBJECT-TYPE
    SYNTAX Integer32
--  Units
--    packets
    ACCESS read-only
    STATUS mandatory
    DESCRIPTION
        "The average queue depth at which WRED may begin to
        drop all packets."
    ::= { cwredConfigPrecedEntry 3 }

cwredConfigPrecedPktsDropFraction OBJECT-TYPE
    SYNTAX Integer32
    ACCESS read-only
    STATUS mandatory
    DESCRIPTION
        "The fraction of packets to be dropped when the average queue
        depth is above cwredConfigPrecedMinDepthThreshold
        but below cwredConfigPrecedMaxDepthThreshold."
    ::= { cwredConfigPrecedEntry 4 }

cwredQueueTable OBJECT-TYPE
    SYNTAX SEQUENCE OF CwredQueueEntry
    ACCESS not-accessible
    STATUS mandatory
    DESCRIPTION
        "A table of WRED queue status variable."
    ::= { cwredStats 1 }

cwredQueueEntry OBJECT-TYPE
    SYNTAX CwredQueueEntry
    ACCESS not-accessible
    STATUS mandatory
    DESCRIPTION
        "A table of WRED queue status variable entry.
        Entries are created and deleted via the red
        command line interface."
    INDEX { ifIndex }
-- Augments cwredConfigGlobEntry
    ::= { cwredQueueTable 1 }

CwredQueueEntry ::= SEQUENCE {
    cwredQueueAverage Gauge32,
    cwredQueueDepth Gauge32
    }

cwredQueueAverage OBJECT-TYPE
    SYNTAX Gauge32
--  Units
--    packets
    ACCESS read-only
    STATUS mandatory
    DESCRIPTION
        "The computed queue average length."
    ::= { cwredQueueEntry 1 }

cwredQueueDepth OBJECT-TYPE
    SYNTAX Gauge32
--  Units
--    packets
    ACCESS read-only
    STATUS mandatory
    DESCRIPTION
        "The number of buffers/particles currently withheld in queue."
    ::= { cwredQueueEntry 2 }

cwredStatTable OBJECT-TYPE
    SYNTAX SEQUENCE OF CwredStatEntry
    ACCESS not-accessible
    STATUS mandatory
    DESCRIPTION
        "A table of WRED status information with respect to
        the IP precedence of packets."
    ::= { cwredStats 2 }

cwredStatEntry OBJECT-TYPE
    SYNTAX CwredStatEntry
    ACCESS not-accessible
    STATUS mandatory
    DESCRIPTION
        "The WRED interface status information entry.
        Entries are created and deleted via the red
        red command line interface."
    INDEX { ifIndex, cwredConfigPrecedPrecedence }
-- Augments cwredConfigPrecedEntry
    ::= { cwredStatTable 1 }

CwredStatEntry ::= SEQUENCE {
    cwredStatSwitchedPkts Counter32,
    cwredStatRandomFilteredPkts Counter32,
    cwredStatMaxFilteredPkts Counter32
    }

cwredStatSwitchedPkts OBJECT-TYPE
    SYNTAX Counter32
--  Units
--    packets
    ACCESS read-only
    STATUS mandatory
    DESCRIPTION
        "The number of packets output by WRED."
    ::= { cwredStatEntry 1 }

cwredStatRandomFilteredPkts OBJECT-TYPE
    SYNTAX Counter32
--  Units
--    packets
    ACCESS read-only
    STATUS mandatory
    DESCRIPTION
        "The number of packets filtered/dropped due to average
        queue length exceeds cwredConfigMinDepthThreshold
        and meet a defined random drop policy."
    ::= { cwredStatEntry 2 }

cwredStatMaxFilteredPkts OBJECT-TYPE
    SYNTAX Counter32
--  Units
--    packets
    ACCESS read-only
    STATUS mandatory
    DESCRIPTION
        "The number of packets filtered/dropped due to average
        queue length exceeds cwredConfigMaxDepthThreshold."
    ::= { cwredStatEntry 3 }

ciscoWredMIBGroup OBJECT IDENTIFIER ::= { ciscoWredMIBGroups 1 }
-- OBJECT-GROUP
--  Status
--    mandatory
--  Descr
--    A collection of objects providing WRED monitoring.
--  objects
--    cwredConfigGlobQueueWeight, 
--    cwredConfigPrecedMinDepthThreshold, 
--    cwredConfigPrecedMaxDepthThreshold, 
--    cwredConfigPrecedPktsDropFraction, cwredQueueAverage, 
--    cwredQueueDepth, cwredStatSwitchedPkts, 
--    cwredStatRandomFilteredPkts, cwredStatMaxFilteredPkts

ciscoWredMIBCompliance OBJECT IDENTIFIER ::= { ciscoWredMIBCompliances 1 }
-- MODULE-COMPLIANCE
--  Status
--    mandatory
--  Descr
--    The compliance statement for entities which implement
--    the WRED on a Cisco RSP platform.
--  Module
--    >>current<<
--   MandGroup
--    ciscoWredMIBGroup


END

