306 lines
8.2 KiB
Plaintext
306 lines
8.2 KiB
Plaintext
-- *****************************************************************
|
|
-- MIB for FIFO, Priority, Custom, and Fair Queuing
|
|
--
|
|
-- May 1995, Fred Baker
|
|
--
|
|
-- Copyright (c) 1995-1996 by cisco Systems, Inc.
|
|
-- All rights reserved.
|
|
-- *****************************************************************
|
|
|
|
CISCO-QUEUE-MIB DEFINITIONS ::= BEGIN
|
|
|
|
IMPORTS
|
|
MODULE-IDENTITY, OBJECT-TYPE,
|
|
Counter32, Integer32, Gauge32
|
|
FROM SNMPv2-SMI
|
|
MODULE-COMPLIANCE, OBJECT-GROUP
|
|
FROM SNMPv2-CONF
|
|
TEXTUAL-CONVENTION
|
|
FROM SNMPv2-TC
|
|
ifIndex
|
|
FROM RFC1213-MIB
|
|
ciscoMgmt
|
|
FROM CISCO-SMI;
|
|
|
|
ciscoQueueMIB MODULE-IDENTITY
|
|
LAST-UPDATED "9505310000Z"
|
|
ORGANIZATION "Cisco Systems, Inc."
|
|
CONTACT-INFO
|
|
" Cisco Systems
|
|
Customer Service
|
|
|
|
Postal: 170 West Tasman Drive
|
|
San Jose, CA 95134
|
|
USA
|
|
|
|
Tel: +1 800 553-NETS
|
|
|
|
E-mail: cs-snmp@cisco.com"
|
|
DESCRIPTION
|
|
"This is the MIB module for objects used to manage
|
|
interface queuing in Cisco devices."
|
|
REVISION "9508210000Z"
|
|
DESCRIPTION
|
|
"Minor cleanups to pacify mib compiler."
|
|
::= { ciscoMgmt 37 }
|
|
|
|
ciscoQueueObjects OBJECT IDENTIFIER ::= { ciscoQueueMIB 1 }
|
|
ciscoQueueTraps OBJECT IDENTIFIER ::= { ciscoQueueMIB 2 }
|
|
ciscoQueueConformance OBJECT IDENTIFIER ::= { ciscoQueueMIB 3 }
|
|
|
|
CQAlgorithm ::= TEXTUAL-CONVENTION
|
|
STATUS current
|
|
DESCRIPTION
|
|
"The type of queuing algorithm used on the interface."
|
|
SYNTAX INTEGER {
|
|
fifo(1), -- First In First Out
|
|
priority(2), -- Priority Queuing
|
|
custom(3), -- Custom Queuing
|
|
weightedFair(4) -- Weighted Fair Queuing
|
|
}
|
|
|
|
-- Queue Interface Table
|
|
--
|
|
-- This table describes Cisco specific queuing extensions
|
|
|
|
cQIfTable OBJECT-TYPE
|
|
SYNTAX SEQUENCE OF CQIfEntry
|
|
MAX-ACCESS not-accessible
|
|
STATUS current
|
|
DESCRIPTION
|
|
"This table contains objects that describe the queues on a
|
|
Cisco Interface.
|
|
|
|
An interface queue is modeled as a collection of one or more
|
|
secondary queues that feed into a device's hardware queue. The
|
|
hardware queue has a maximum depth set by the MCI tx-queue-limit
|
|
command or equivalent. The secondary queues (also known as the
|
|
'hold queue') have maximum depths set by the hold-queue command
|
|
or equivalent.
|
|
|
|
This table parallels the ifTable, and indicates the type of
|
|
queuing in use on the interface, number of queues, and similar
|
|
parameters."
|
|
::= { ciscoQueueObjects 1 }
|
|
|
|
cQIfEntry OBJECT-TYPE
|
|
SYNTAX CQIfEntry
|
|
MAX-ACCESS not-accessible
|
|
STATUS current
|
|
DESCRIPTION
|
|
"A list of queue attributes for an interface."
|
|
INDEX { ifIndex }
|
|
::= { cQIfTable 1 }
|
|
|
|
CQIfEntry ::= SEQUENCE {
|
|
cQIfQType CQAlgorithm,
|
|
cQIfTxLimit Integer32,
|
|
cQIfSubqueues Integer32
|
|
}
|
|
|
|
cQIfQType OBJECT-TYPE
|
|
SYNTAX CQAlgorithm
|
|
MAX-ACCESS read-only
|
|
STATUS current
|
|
DESCRIPTION
|
|
"The type of queuing used in the Hold Queue.
|
|
|
|
First In First Out Queuing implies that the interface always
|
|
transmits messages in the order that they are received.
|
|
|
|
Priority Queuing sorts messages out by the use of access lists.
|
|
Messages in a higher priority queue are always sent in
|
|
preference to messages in a lower priority queue.
|
|
|
|
Custom Queuing sorts messages out by the use of access lists.
|
|
Sub-queues are selected in round robin order as either the
|
|
sub-queue is drained or a given number of octets is moved from
|
|
the sub-queue to the transmission queue.
|
|
|
|
Weighted Fair Queuing sorts messages by 'conversation', which
|
|
is source-destination pair of addresses and sockets or ports,
|
|
as defined by the network layer protocol. Messages are removed
|
|
from queues in a sequence that gives each conversation a
|
|
proportion of the available bandwidth."
|
|
::= { cQIfEntry 1 }
|
|
|
|
cQIfTxLimit OBJECT-TYPE
|
|
SYNTAX Integer32
|
|
MAX-ACCESS read-only
|
|
STATUS current
|
|
DESCRIPTION
|
|
"The maximum number of messages placed into the hardware
|
|
transmission queue. This is a first come first serve queue, fed
|
|
by the hold queue. If the hold queue contains information,
|
|
this queue is presumably full."
|
|
::= { cQIfEntry 2 }
|
|
|
|
cQIfSubqueues OBJECT-TYPE
|
|
SYNTAX Integer32
|
|
MAX-ACCESS read-only
|
|
STATUS current
|
|
DESCRIPTION
|
|
"The number of sub-queues of which the hold queue is built.
|
|
This is a constant for each value of cQIfQType."
|
|
::= { cQIfEntry 3 }
|
|
|
|
-- Sub-Queue Statistics Table
|
|
--
|
|
-- This table describes Cisco specific queuing extensions
|
|
|
|
cQStatsTable OBJECT-TYPE
|
|
SYNTAX SEQUENCE OF CQStatsEntry
|
|
MAX-ACCESS not-accessible
|
|
STATUS current
|
|
DESCRIPTION
|
|
"This table contains statistical objects that for the
|
|
sub-queues of a Cisco Interface."
|
|
::= { ciscoQueueObjects 2 }
|
|
|
|
cQStatsEntry OBJECT-TYPE
|
|
SYNTAX CQStatsEntry
|
|
MAX-ACCESS not-accessible
|
|
STATUS current
|
|
DESCRIPTION
|
|
"A list of sub-queue attributes for an interface."
|
|
INDEX { ifIndex, cQStatsQNumber }
|
|
::= { cQStatsTable 1 }
|
|
|
|
CQStatsEntry ::= SEQUENCE {
|
|
cQStatsQNumber Integer32 (0..2147483647),
|
|
cQStatsDepth Gauge32,
|
|
cQStatsMaxDepth Integer32,
|
|
cQStatsDiscards Counter32
|
|
}
|
|
|
|
cQStatsQNumber OBJECT-TYPE
|
|
SYNTAX Integer32 (0..2147483647)
|
|
MAX-ACCESS not-accessible
|
|
STATUS current
|
|
DESCRIPTION
|
|
"The number of the queue within the queue set.
|
|
|
|
In FIFO queuing, this value is always 2.
|
|
|
|
In Priority Queuing, it corresponds to the various priorities:
|
|
|
|
high = 0
|
|
medium = 1
|
|
normal = 2
|
|
low = 3
|
|
|
|
In Custom Queuing, it is the queue number referenced in the
|
|
access list.
|
|
|
|
In Weighted Fair Queuing, it is the queue number associated
|
|
with the traffic stream (conversation) identified."
|
|
::= { cQStatsEntry 1 }
|
|
|
|
cQStatsDepth OBJECT-TYPE
|
|
SYNTAX Gauge32
|
|
MAX-ACCESS read-only
|
|
STATUS current
|
|
DESCRIPTION
|
|
"The number of messages in the sub-queue."
|
|
::= { cQStatsEntry 2 }
|
|
|
|
cQStatsMaxDepth OBJECT-TYPE
|
|
SYNTAX Integer32
|
|
MAX-ACCESS read-only
|
|
STATUS current
|
|
DESCRIPTION
|
|
"The maximum number of messages permitted in the sub-queue."
|
|
::= { cQStatsEntry 3 }
|
|
|
|
cQStatsDiscards OBJECT-TYPE
|
|
SYNTAX Counter32
|
|
MAX-ACCESS read-only
|
|
STATUS current
|
|
DESCRIPTION
|
|
"The number of messages discarded from this queue since restart
|
|
by reason of enqueue at a time that cQStatsDepth >= cQStatsMaxDepth."
|
|
::= { cQStatsEntry 4 }
|
|
|
|
-- Custom Queue Rotation Table
|
|
--
|
|
-- This table describes Cisco specific queuing extensions
|
|
|
|
cQRotationTable OBJECT-TYPE
|
|
SYNTAX SEQUENCE OF CQRotationEntry
|
|
MAX-ACCESS not-accessible
|
|
STATUS current
|
|
DESCRIPTION
|
|
"This table describes the rotation of Custom Queuing on an
|
|
Interface."
|
|
::= { ciscoQueueObjects 3 }
|
|
|
|
cQRotationEntry OBJECT-TYPE
|
|
SYNTAX CQRotationEntry
|
|
MAX-ACCESS not-accessible
|
|
STATUS current
|
|
DESCRIPTION
|
|
"Custom Queuing sub-queue attributes for an interface."
|
|
INDEX { ifIndex, cQStatsQNumber }
|
|
::= { cQRotationTable 1 }
|
|
|
|
CQRotationEntry ::= SEQUENCE {
|
|
cQRotationOctets Integer32
|
|
}
|
|
|
|
cQRotationOctets OBJECT-TYPE
|
|
SYNTAX Integer32
|
|
MAX-ACCESS read-only
|
|
STATUS current
|
|
DESCRIPTION
|
|
"The number of octets which may be transmitted from a custom
|
|
queuing sub-queue before it must yield to another queue."
|
|
::= { cQRotationEntry 1 }
|
|
|
|
--
|
|
-- Conformance Information
|
|
--
|
|
|
|
cQCompliances OBJECT IDENTIFIER ::= { ciscoQueueConformance 1 }
|
|
cQGroups OBJECT IDENTIFIER ::= { ciscoQueueConformance 2 }
|
|
|
|
--
|
|
-- Compliance Statements
|
|
--
|
|
|
|
cQCompliance MODULE-COMPLIANCE
|
|
STATUS current
|
|
DESCRIPTION
|
|
"The core compliance statement for all queued interfaces."
|
|
MODULE
|
|
MANDATORY-GROUPS { cQIfGroup, cQStatsGroup, cQRotationGroup }
|
|
::= { cQCompliances 1 }
|
|
|
|
--
|
|
-- Core Conformance Groups for All Link Stations
|
|
--
|
|
|
|
cQIfGroup OBJECT-GROUP
|
|
OBJECTS { cQIfQType, cQIfTxLimit, cQIfSubqueues }
|
|
STATUS current
|
|
DESCRIPTION
|
|
"The configuration of queuing on the interface. Interface
|
|
Queuing statistics (ifOutQDepth and ifOutDiscards) are kept in
|
|
the interface table."
|
|
::= { cQGroups 1 }
|
|
|
|
cQStatsGroup OBJECT-GROUP
|
|
OBJECTS { cQStatsDepth, cQStatsMaxDepth, cQStatsDiscards }
|
|
STATUS current
|
|
DESCRIPTION
|
|
"The statistics for individual queues in the interface queuing
|
|
system."
|
|
::= { cQGroups 2 }
|
|
|
|
cQRotationGroup OBJECT-GROUP
|
|
OBJECTS { cQRotationOctets }
|
|
STATUS current
|
|
DESCRIPTION
|
|
"The Custom Queuing queue rotation weights."
|
|
::= { cQGroups 3 }
|
|
END
|