-- extracted from draft-ietf-diffserv-mib-02.txt -- at Fri Mar 17 12:29:46 2000 DIFF-SERV-MIB DEFINITIONS ::= BEGIN IMPORTS Unsigned32, Counter32, Counter64, OBJECT-TYPE, MODULE-IDENTITY, zeroDotZero, mib-2 FROM SNMPv2-SMI TEXTUAL-CONVENTION, RowStatus, RowPointer, TestAndIncr FROM SNMPv2-TC MODULE-COMPLIANCE, OBJECT-GROUP FROM SNMPv2-CONF ifIndex FROM IF-MIB DisplayString FROM RFC1213-MIB InetAddressType, InetAddress FROM INET-ADDRESS-MIB; diffServMib MODULE-IDENTITY LAST-UPDATED "9907190100Z" -- Mon Jul 19 01:00:00 PDT 1999 ORGANIZATION "Cisco Systems" CONTACT-INFO " Fred Baker Postal: 519 Lado Drive Santa Barbara, California 93111 Tel: +1 (408) 526-4257 FAX: +1 (805) 681-0115 E-mail: fred@cisco.com Kwok Ho Chan Postal: 600 Technology Park Drive Billerica, Massachusetts 01821, USA Tel: +1 (978) 288-8175 FAX: +1 (978) 288-4690 E-mail: khchan@nortelnetworks.com Andrew Smith Postal: 3585 Monroe St. Santa Clara, California 95051 Tel: +1 (408) 579 2821 FAX: +1 (408) 579 3000 E-mail: andrew@extremenetworks.com" DESCRIPTION "This MIB defines the objects necessary to manage a device that uses the Differentiated Services Architecture described in RFC 2475 and the Conceptual Model for DiffServ Routers in draft-ietf-diffserv- model-01.txt." REVISION "9907190100Z" -- Mon Jul 19 01:00:00 PDT 1999 DESCRIPTION "Initial version, published as RFC xxxx." ::= { mib-2 12345 } -- anybody who uses this unassigned -- number deserves the wrath of IANA diffServObjects OBJECT IDENTIFIER ::= { diffServMib 1 } diffServTables OBJECT IDENTIFIER ::= { diffServMib 2 } diffServAugments OBJECT IDENTIFIER ::= { diffServMib 3 } diffServMIBConformance OBJECT IDENTIFIER ::= { diffServMib 4 } -- -- These textual conventions has no effect on either the syntax -- nor the semantics of any managed object. Objects defined -- using this convention are always encoded by means of the -- rules that define their primitive type. -- Dscp ::= TEXTUAL-CONVENTION DISPLAY-HINT "d" STATUS current DESCRIPTION "The code point used for discriminating a traffic stream." SYNTAX INTEGER (-1 | 0..63) SixTupleClfrL4Port ::= TEXTUAL-CONVENTION DISPLAY-HINT "d" STATUS current DESCRIPTION "A value indicating a Layer-4 protocol port number." SYNTAX INTEGER (0..65535) -- -- Classifiers -- -- The tools for IP Six Tuple Classification. -- This object allows a configuring system to obtain a -- unique value for diffServSixTupleClfrId for purposes -- of configuration. diffServSixTupleClfrUnique OBJECT-TYPE SYNTAX TestAndIncr MAX-ACCESS read-write STATUS current DESCRIPTION "The diffServSixTupleClfrUnique object yields a unique new value for diffServSixTupleClfrId when read and subsequently set. This value must be tested for uniqueness." ::= { diffServObjects 1 } diffServSixTupleClfrTable OBJECT-TYPE SYNTAX SEQUENCE OF DiffServSixTupleClfrEntry MAX-ACCESS not-accessible STATUS current DESCRIPTION "A table of IP Six Tuple Classifier entries that a system may use to identify traffic." ::= { diffServTables 1 } diffServSixTupleClfrEntry OBJECT-TYPE SYNTAX DiffServSixTupleClfrEntry MAX-ACCESS not-accessible STATUS current DESCRIPTION "An IP Six Tuple Classifier entry describes a single classifier." INDEX { diffServSixTupleClfrId } ::= { diffServSixTupleClfrTable 1 } DiffServSixTupleClfrEntry ::= SEQUENCE { diffServSixTupleClfrId Unsigned32, diffServSixTupleClfrAddrType InetAddressType, diffServSixTupleClfrDstAddr InetAddress, diffServSixTupleClfrDstAddrMask InetAddress, diffServSixTupleClfrSrcAddr InetAddress, diffServSixTupleClfrSrcAddrMask InetAddress, diffServSixTupleClfrDscp Dscp, diffServSixTupleClfrProtocol INTEGER, diffServSixTupleClfrDstL4PortMin SixTupleClfrL4Port, diffServSixTupleClfrDstL4PortMax SixTupleClfrL4Port, diffServSixTupleClfrSrcL4PortMin SixTupleClfrL4Port, diffServSixTupleClfrSrcL4PortMax SixTupleClfrL4Port, diffServSixTupleClfrStatus RowStatus } diffServSixTupleClfrId OBJECT-TYPE SYNTAX Unsigned32 (1..2147483647) MAX-ACCESS not-accessible STATUS current DESCRIPTION "A unique id for the classifier. This object is meant to be pointed to by a RowPointer from other tables, such as the diffServClassifierPattern." ::= { diffServSixTupleClfrEntry 1 } diffServSixTupleClfrAddrType OBJECT-TYPE SYNTAX InetAddressType MAX-ACCESS read-write STATUS current DESCRIPTION "The type of IP address used by this classifier entry." ::= { diffServSixTupleClfrEntry 2 } diffServSixTupleClfrDstAddr OBJECT-TYPE SYNTAX InetAddress MAX-ACCESS read-write STATUS current DESCRIPTION "The IP address to match against the packet's destination IP address." ::= { diffServSixTupleClfrEntry 3 } diffServSixTupleClfrDstAddrMask OBJECT-TYPE SYNTAX InetAddress MAX-ACCESS read-write STATUS current DESCRIPTION "A mask for the matching of the destination IP address. A zero bit in the mask means that the corresponding bit in the address always matches." DEFVAL {0} ::= { diffServSixTupleClfrEntry 4 } diffServSixTupleClfrSrcAddr OBJECT-TYPE SYNTAX InetAddress MAX-ACCESS read-write STATUS current DESCRIPTION "The IP address to match against the source IP address of each packet." ::= { diffServSixTupleClfrEntry 5 } diffServSixTupleClfrSrcAddrMask OBJECT-TYPE SYNTAX InetAddress MAX-ACCESS read-write STATUS current DESCRIPTION "A mask for the matching of the source IP address. A zero bit in the mask means that the corresponding bit in the address always matches." DEFVAL {0} ::= { diffServSixTupleClfrEntry 6 } diffServSixTupleClfrDscp OBJECT-TYPE SYNTAX Dscp MAX-ACCESS read-write STATUS current DESCRIPTION "The value that the DSCP in the packet must have to match this entry. A value of -1 indicates that a specific DSCP value has not been defined and thus all DSCP values are considered a match." DEFVAL {-1} ::= { diffServSixTupleClfrEntry 7 } diffServSixTupleClfrProtocol OBJECT-TYPE SYNTAX INTEGER (0..255) MAX-ACCESS read-write STATUS current DESCRIPTION "The IP protocol to match against the IPv4 protocol number in the packet. A value of zero means match all." DEFVAL {0} ::= { diffServSixTupleClfrEntry 8 } diffServSixTupleClfrDstL4PortMin OBJECT-TYPE SYNTAX SixTupleClfrL4Port MAX-ACCESS read-create STATUS current DESCRIPTION "The minimum value that the layer-4 destination port number in the packet must have in order to match this classifier entry." DEFVAL {0} ::= { diffServSixTupleClfrEntry 9 } diffServSixTupleClfrDstL4PortMax OBJECT-TYPE SYNTAX SixTupleClfrL4Port MAX-ACCESS read-write STATUS current DESCRIPTION "The maximum value that the layer-4 destination port number in the packet must have in order to match this classifier entry. This value must be equal to or greater that the value specified for this entry in diffServSixTupleClfrDstL4PortMin." DEFVAL {65535} ::= { diffServSixTupleClfrEntry 10 } diffServSixTupleClfrSrcL4PortMin OBJECT-TYPE SYNTAX SixTupleClfrL4Port MAX-ACCESS read-write STATUS current DESCRIPTION "The minimum value that the layer-4 source port number in the packet must have in order to match this classifier entry." DEFVAL {0} ::= { diffServSixTupleClfrEntry 11 } diffServSixTupleClfrSrcL4PortMax OBJECT-TYPE SYNTAX SixTupleClfrL4Port MAX-ACCESS read-write STATUS current DESCRIPTION "The maximum value that the layer-4 source port number in the packet must have in oder to match this classifier entry. This value must be equal to or greater that the value specified for this entry in dsSixTupleIpSrcL4PortMin." DEFVAL {65535} ::= { diffServSixTupleClfrEntry 12 } diffServSixTupleClfrStatus OBJECT-TYPE SYNTAX RowStatus MAX-ACCESS read-create STATUS current DESCRIPTION "The RowStatus variable controls the activation, deactivation, or deletion of a classifier. Any writable variable may be modified whether the row is active or notInService." ::= { diffServSixTupleClfrEntry 13 } -- Classifier Table -- This object allows a configuring system to obtain a -- unique value for diffServClassifierNumber for purposes of -- configuration diffServClassifierUnique OBJECT-TYPE SYNTAX TestAndIncr MAX-ACCESS read-write STATUS current DESCRIPTION "The diffServClassifierUnique object yields a unique new value for diffServClassifierId when read and subsequently set. This value must be tested for uniqueness." ::= { diffServObjects 2 } -- The Classifier Table allows us to enumerate the relationship -- between arbitrary classifiers and the meters which apply -- to classified streams. diffServClassifierTable OBJECT-TYPE SYNTAX SEQUENCE OF DiffServClassifierEntry MAX-ACCESS not-accessible STATUS current DESCRIPTION "The classifier table defines the classifiers that a system applies to incoming traffic. Specific classifiers are defined by RowPointers in this table which identify entries in classifier tables of specific type, e.g. Multi-field classifiers for IP are defined in diffServSixTupleClfrTable. Other classifier types may be defined elsewhere." ::= { diffServTables 2 } diffServClassifierEntry OBJECT-TYPE SYNTAX DiffServClassifierEntry MAX-ACCESS not-accessible STATUS current DESCRIPTION "An entry in the classifier table describes a single classifier." INDEX { ifIndex, diffServInterfaceDirection, diffServClassifierId } ::= { diffServClassifierTable 1 } DiffServClassifierEntry ::= SEQUENCE { diffServInterfaceDirection INTEGER, diffServClassifierId Unsigned32, diffServClassifierPattern RowPointer, diffServClassifierNext RowPointer, diffServClassifierPrecedence Unsigned32, diffServClassifierStatus RowStatus } diffServInterfaceDirection OBJECT-TYPE SYNTAX INTEGER { inbound(1), -- ingress interface outbound(2) -- egress interface } MAX-ACCESS not-accessible STATUS current DESCRIPTION "Specifies the direction for this entry on the interface. 'inbound' traffic is operated on during receipt, while 'outbound' traffic is operated on prior to transmission." ::= { diffServClassifierEntry 1 } diffServClassifierId OBJECT-TYPE SYNTAX Unsigned32 (1..2147483647) MAX-ACCESS not-accessible STATUS current DESCRIPTION "Classifier Id enumerates the classifier entry." ::= { diffServClassifierEntry 2 } diffServClassifierPattern OBJECT-TYPE SYNTAX RowPointer MAX-ACCESS read-create STATUS current DESCRIPTION "A pointer to a valid entry in another table that describes the applicable classification pattern, e.g. an entry in diffServSixTupleClfrTable. If the row pointed to does not exist, the classifier is ignored. The value zeroDotZero is interpreted to match anything not matched by another classifier - only one such entry may exist in this table." DEFVAL { zeroDotZero } ::= { diffServClassifierEntry 3 } diffServClassifierNext OBJECT-TYPE SYNTAX RowPointer MAX-ACCESS read-create STATUS current DESCRIPTION "The 'next' variable selects the next datapath element to handle the classified flow. For example, this can points to an entry in the meter or action table." ::= { diffServClassifierEntry 4 } diffServClassifierPrecedence OBJECT-TYPE SYNTAX Unsigned32 MAX-ACCESS read-create STATUS current DESCRIPTION "The relative precedence in which classifiers are applied, higer numbers represent classifiers with higher precedence. Classifiers with the same precedence must be unambiguous, i.e. they must define non-overlapping patterns. Classifiers with different precedence may overlap in their patterns: the classifier with the highest precedence that matches is taken." DEFVAL { 0 } ::= { diffServClassifierEntry 5 } diffServClassifierStatus OBJECT-TYPE SYNTAX RowStatus MAX-ACCESS read-create STATUS current DESCRIPTION "The RowStatus variable controls the activation, deactivation, or deletion of a classifier. Any writable variable may be modified whether the row is active or notInService." ::= { diffServClassifierEntry 6 } -- -- Meters -- -- This MIB includes definitions for Token-Bucket -- Meters as one example of possible meters. -- This object allows a configuring system to obtain a -- unique value for diffServTBMeterId for purposes of -- configuration diffServTBMeterUnique OBJECT-TYPE SYNTAX TestAndIncr MAX-ACCESS read-write STATUS current DESCRIPTION "The diffServTBMeterUnique object yields a unique new value for diffServTBMeterId when read and subsequently set. This value must be tested for uniqueness." ::= { diffServObjects 3 } diffServTBMeterTable OBJECT-TYPE SYNTAX SEQUENCE OF DiffServTBMeterEntry MAX-ACCESS not-accessible STATUS current DESCRIPTION "The Meter Table enumerates specific token bucket meters that a system may use to police a stream of classified traffic. The traffic stream is defined by the classifier. It may include all traffic." ::= { diffServTables 3 } diffServTBMeterEntry OBJECT-TYPE SYNTAX DiffServTBMeterEntry MAX-ACCESS not-accessible STATUS current DESCRIPTION "An entry in the meter table describes a single token bucket meter. Note that a meter has exactly one rate, defined as the burst size each time interval. Multiple meters may be cascaded should a multi-rate token bucket be needed in a given Per-Hop Behavior. An example of such a PHB is AF." INDEX { ifIndex, diffServInterfaceDirection, diffServTBMeterId } ::= { diffServTBMeterTable 1 } DiffServTBMeterEntry ::= SEQUENCE { diffServTBMeterId Unsigned32, diffServTBMeterRate Unsigned32, diffServTBMeterBurstSize Unsigned32, diffServTBMeterFailNext RowPointer, diffServTBMeterSucceedNext RowPointer, diffServTBMeterStatus RowStatus } diffServTBMeterId OBJECT-TYPE SYNTAX Unsigned32 (1..2147483647) MAX-ACCESS not-accessible STATUS current DESCRIPTION "MeterId enumerates the meter entry." ::= { diffServTBMeterEntry 1 } diffServTBMeterRate OBJECT-TYPE SYNTAX Unsigned32 UNITS "KBPS" MAX-ACCESS read-create STATUS current DESCRIPTION "The token bucket rate, in kilo-bits per second (KBPS). Note that if multiple meters are cascaded onto one PHB, the peak rate of the data stream is the sum of their rates." ::= { diffServTBMeterEntry 2 } diffServTBMeterBurstSize OBJECT-TYPE SYNTAX Unsigned32 UNITS "bytes" MAX-ACCESS read-create STATUS current DESCRIPTION "The number of bytes in a single transmission burst. The interval can be derived with (BurstSizex8)/Rate." ::= { diffServTBMeterEntry 3 } diffServTBMeterFailNext OBJECT-TYPE SYNTAX RowPointer MAX-ACCESS read-create STATUS current DESCRIPTION "If the traffic does NOT conform to the meter, FailNext indicates the next datapath element to handle the traffic. For example, an Action or Meter datapath element. The value zeroDotZero in this variable indicates no further DiffServ treatment is performed on this flow by the current interface for this interface direction." DEFVAL { zeroDotZero } ::= { diffServTBMeterEntry 4 } diffServTBMeterSucceedNext OBJECT-TYPE SYNTAX RowPointer MAX-ACCESS read-create STATUS current DESCRIPTION "If the traffic does conform to the meter, SucceedNext indicates the next datapath element to handle the traffic. For example, an Action or Meter datapath element. The value zeroDotZero in this variable indicates no further DiffServ treatment is performed on this flow by the current interface for this interface direction." DEFVAL { zeroDotZero } ::= { diffServTBMeterEntry 5 } diffServTBMeterStatus OBJECT-TYPE SYNTAX RowStatus MAX-ACCESS read-create STATUS current DESCRIPTION "The RowStatus variable controls the activation, deactivation, or deletion of a meter. Any writable variable may be modified whether the row is active or notInService." ::= { diffServTBMeterEntry 6 } -- -- Actions -- -- Notice the Drop Action attributes are referenced by the -- action table rather than by the queue table because -- Differentiated Services PHBs, such as the Assured Service, -- permit differently classified traffic to have different -- drop parameters even though they occupy the same queue." -- -- Mark Action Table -- Rows of this table is pointed to by diffServAction to -- provide detail parameters specific to an Action Type. -- This object allows a configuring system to obtain a -- unique value for diffServMarkActId for purposes of -- configuration. diffServMarkActUnique OBJECT-TYPE SYNTAX TestAndIncr MAX-ACCESS read-write STATUS current DESCRIPTION "The diffServMarkActUnique object yields a unique new value for diffServMarkActId when read and subsequently set. This value must be tested for uniqueness." ::= { diffServObjects 4 } diffServMarkActTable OBJECT-TYPE SYNTAX SEQUENCE OF DiffServMarkActEntry MAX-ACCESS not-accessible STATUS current DESCRIPTION "The mark action table enumerates specific DSCPs used for marking or remarking the DSCP field. The entries of this table is meant to be referenced by the diffServAction attribute of entries in diffServActionTable for diffServActionType = mark." ::= { diffServTables 4 } diffServMarkActEntry OBJECT-TYPE SYNTAX DiffServMarkActEntry MAX-ACCESS not-accessible STATUS current DESCRIPTION "An entry in the mark action table describes a single DSCP used for marking." INDEX { diffServMarkActId } ::= { diffServMarkActTable 1 } DiffServMarkActEntry ::= SEQUENCE { diffServMarkActId Unsigned32, diffServMarkActDscp Dscp, diffServMarkActStatus RowStatus } diffServMarkActId OBJECT-TYPE SYNTAX Unsigned32 (1..2147483647) MAX-ACCESS not-accessible STATUS current DESCRIPTION "Mark Action Id enumerates the Mark Action entry." ::= { diffServMarkActEntry 1 } diffServMarkActDSCP OBJECT-TYPE SYNTAX Dscp MAX-ACCESS read-create STATUS current DESCRIPTION "The DSCP this Action TCB uses for marking/remarking traffic with." Note that if the classifier is working from the same DSCP value, no effective change in the DSCP results. Differentiated Services may result in packet remarking both on ingress to a network and on egress, and it is quite possible that ingress and egress would occur in the same router." ::= { diffServMarkActEntry 2 } diffServMarkActStatus OBJECT-TYPE SYNTAX RowStatus MAX-ACCESS read-create STATUS current DESCRIPTION "The RowStatus variable controls the activation, deactivation, or deletion of this entry. Any writable variable may be modified whether the row is active or notInService." ::= { diffServMarkActEntry 3 } -- Count Action Table -- Rows of this table is pointed to by diffServAction to -- provide detail parameters specific to Count Action. -- This object allows a configuring system to obtain a -- unique value for diffServCountActId for purposes of -- configuration. diffServCountActUnique OBJECT-TYPE SYNTAX TestAndIncr MAX-ACCESS read-write STATUS current DESCRIPTION "The diffServCountActUnique object yields a unique new value for diffServCountActId when read and subsequently set. This value must be tested for uniqueness." ::= { diffServObjects 5 } diffServCountActTable OBJECT-TYPE SYNTAX SEQUENCE OF DiffServCountActEntry MAX-ACCESS not-accessible STATUS current DESCRIPTION "The count action table contains flow specific counters. The entries of this table is meant to be referenced by the diffServAction attribute of entries in diffServActionTable for diffServActionType = count." ::= { diffServTables 5 } diffServCountActEntry OBJECT-TYPE SYNTAX DiffServCountActEntry MAX-ACCESS not-accessible STATUS current DESCRIPTION "An entry in the count action table describes a single set of flow specific counters. This counter entry is associated with a traffic flow via the diffServActionEntry pointing to it." INDEX { diffServActionId, diffServCountActId } ::= { diffServCountActTable 1 } DiffServCountActEntry ::= SEQUENCE { diffServCountActId Unsigned32, diffServCountActOctetsCnt Counter32, diffServCountActPktsCnt Counter32, diffServCountActStatus RowStatus } diffServCountActId OBJECT-TYPE SYNTAX Unsigned32 (1..2147483647) MAX-ACCESS not-accessible STATUS current DESCRIPTION "Count Action Id enumerates the Count Action entry." ::= { diffServCountActEntry 1 } diffServCountActOctetsCnt OBJECT-TYPE SYNTAX Counter32 UNITS "octets" MAX-ACCESS read-only STATUS current DESCRIPTION "The number of Octets at the Action datapath element. Meaning the octets has been classified and possibly metered, and prior to any dropping process. This object may be used on low speed interfaces, and represents the least significant 32 bits of diffServCountActOctetsHCnt in the augmented extension. Discontinuities in the value of this counter can occur at re-initialization of the management system, and at other times as indicated by the value of ifCounterDiscontinuityTime." ::= { diffServCountActEntry 2 } diffServCountActPktsCnt OBJECT-TYPE SYNTAX Counter32 UNITS "packets" MAX-ACCESS read-only STATUS current DESCRIPTION "The number of Packets at the Action datapath element. Meaning the packets has been classified and possibly metered, and prior to any dropping process. This object may be used on low speed interfaces, and represents the least significant 32 bits of diffServCountActPktsHCount in the augmented extension. Discontinuities in the value of this counter can occur at re-initialization of the management system, and at other times as indicated by the value of ifCounterDiscontinuityTime." ::= { diffServCountActEntry 3 } diffServCountActStatus OBJECT-TYPE SYNTAX RowStatus MAX-ACCESS read-create STATUS current DESCRIPTION "The RowStatus variable controls the activation, deactivation, or deletion of this entry. Any writable variable may be modified whether the row is active or notInService." ::= { diffServCountActEntry 4 } -- -- High Capacity Counter Extension for Count Action Table -- diffServCountActXTable OBJECT-TYPE SYNTAX SEQUENCE OF DiffServCountActXEntry MAX-ACCESS not-accessible STATUS current DESCRIPTION "This table contains the high capacity counters for the counters in the Count Action Table. These objects are all 64-bit versions of the basic counters, having the same basic semantics as their 32-bit counterparts, with syntax extended to 64 bits." AUGMENTS { diffServCountActEntry } ::= { diffServAugments 1 } diffServCountActXEntry OBJECT-TYPE SYNTAX DiffServCountActXEntry MAX-ACCESS not-accessible STATUS current DESCRIPTION "An entry containing the 64 bit counters applicable to a specific drop action entry." ::= { diffServActionXTable 1 } DiffServCountActXEntry ::= SEQUENCE { diffServCountActOctetsHCnt Counter64, diffServCountActPktsHCnt Counter64 } diffServCountActOctetsHCnt OBJECT-TYPE SYNTAX Counter64 MAX-ACCESS read-only STATUS current DESCRIPTION "The number of Octets at the Action datapath element. Meaning the packets has been classified and possibly metered, and prior to any dropping process. This object should be used on high speed interfaces. Discontinuities in the value of this counter can occur at re-initialization of the management system, and at other times as indicated by the value of ifCounterDiscontinuityTime." ::= { diffServCountActXEntry 1 } diffServCountActPktsHCnt OBJECT-TYPE SYNTAX Counter64 MAX-ACCESS read-only STATUS current DESCRIPTION "The number of Packets at the Action datapath element. Meaning the packets has been classified and possibly metered, and prior to any dropping process. This object should be used on high speed interfaces. Discontinuities in the value of this counter can occur at re-initialization of the management system, and at other times as indicated by the value of ifCounterDiscontinuityTime." ::= { diffServCountActXEntry 2 } -- Drop Action Table -- Rows of this table is pointed to by diffServAction to -- provide detail parameters specific to an Action Type. -- Notice the use of diffServQueueId as part of this -- table's index. Hence each entry is queue specific. -- This object allows a configuring system to obtain a -- unique value for diffServDropActId for purposes of -- configuration. diffServDropActUnique OBJECT-TYPE SYNTAX TestAndIncr MAX-ACCESS read-write STATUS current DESCRIPTION "The diffServDropActUnique object yields a unique new value for diffServDropActId when read and subsequently set. This value must be tested for uniqueness." ::= { diffServObjects 6 } diffServDropActTable OBJECT-TYPE SYNTAX SEQUENCE OF DiffServDropActEntry MAX-ACCESS not-accessible STATUS current DESCRIPTION "The drop action table enumerates sets of attributes used to represent a drop process. Each set is normally associated with a queue. The entries of this table is meant to be referenced by the diffServAction attribute of entries in diffServActionTable. The entries of this table is used for: Tail Drop Action when diffServActionType = tailDrop Random Drop Action when diffServActionType = randomDrop Deterministic Drop Action when diffServActionType = deterDrop" ::= { diffServTables 6 } diffServDropActEntry OBJECT-TYPE SYNTAX DiffServDropActEntry MAX-ACCESS not-accessible STATUS current DESCRIPTION "An entry in the drop action table describes a single drop process's configuration. For Tail Drop Process: For Random Drop Process: (QMin,PMin) and (QMax,PMax) defines the drop probability used for the random drop process. Normally PMin have a value of zero. QClip defines the guaranteed average queue depth, after which the drop probability reaches 100%. For Deterministic Drop Process: QMeasure points to an entry providing Queue Measurement needed for the drop process." INDEX { diffServQueueId, diffServDropActId } ::= { diffServTable 1 } DiffServDropActEntry ::= SEQUENCE { diffServDropActId Unsigned32, diffServDropActQMin Unsigned32, diffServDropActQMax Unsigned32, diffServDropActQClip Unsigned32, diffServDropActPMin Unsigned32, diffServDropActPMax Unsigned32, diffServDropActPCur Unsigned32, diffServDropActQMeasure RowPointer, diffServDropActOctetsCnt Counter32, diffServDropActPktsCnt Counter32, diffServDropActStatus RowStatus } diffServDropActId OBJECT-TYPE SYNTAX Unsigned32 (1..2147483647) MAX-ACCESS not-accessible STATUS current DESCRIPTION "Drop Action Id enumerates the Drop Action entry." ::= { diffServDropActEntry 1 } diffServDropActQMin OBJECT-TYPE SYNTAX Unsigned32 UNITS "Kilo Bits" MAX-ACCESS read-create STATUS current DESCRIPTION "QMin, with PMin, defines the lowerest drop probability point for this random drop process. With PMin=0, the queue may drop if a packet is presented to it and the average queue depth exceeds QMin." ::= { diffServDropActEntry 2 } diffServDropActQMax OBJECT-TYPE SYNTAX Unsigned32 UNITS "Kilo Bits" MAX-ACCESS read-create STATUS current "QMax, with PMax, defines the higher point of drop probability for random drop process. For Tail Drop Process: This represents the measure by which the queue will drop if a packet is presented to it." ::= { diffServDropActEntry 3 } diffServDropActQClip OBJECT-TYPE SYNTAX Unsigned32 UNITS "Kilo Bits" MAX-ACCESS read-create STATUS current "The average queue length at which point the drop probability reaches 100%." ::= { diffServDropActEntry 4 } diffServDropActPMin OBJECT-TYPE SYNTAX Unsigned32 (0..1000000) UNITS "per-micro-age" MAX-ACCESS read-write STATUS current "QMin, with PMin, defines the lowerest drop probability point for this random drop process. With PMin=0, the queue may drop if a packet is presented to it and the average queue depth exceeds QMin. This drop probability is expressed in per-micro-age, the value in this attribute needs to be divided by 1,000,000 to obtain the drop probability between 0 and 1." ::= { diffServDropActEntry 5 } diffServDropActPMax OBJECT-TYPE SYNTAX Unsigned32 (0..1000000) UNITS "per-micro-age" MAX-ACCESS read-write STATUS current "QMax and PMax are part of the drop probability configuration. This drop probability is expressed in per-micro-age, the value in this attribute needs to be divided by 1,000,000 to obtain the drop probability between 0 and 1." ::= { diffServDropActEntry 6 } diffServDropActPCur OBJECT-TYPE SYNTAX Unsigned32 (0..1000000) UNITS "per-micro-age" MAX-ACCESS read-only STATUS current "The current drop probability. This drop probability is expressed in per-micro-age, the value in this attribute needs to be divided by 1,000,000 to obtain the drop probability between 0 and 1." ::= { diffServDropActEntry 7 } diffServDropActQMeasure OBJECT-TYPE SYNTAX RowPointer MAX-ACCESS read-create STATUS current "Points to an entry in the diffServQMeasureTable for queue information required by the drop process." ::= { diffServDropActEntry 8 } diffServDropActOctetsCnt OBJECT-TYPE SYNTAX Counter32 MAX-ACCESS read-only STATUS current DESCRIPTION "The number of octets that have been dropped by a drop process. On high speed devices, this object implements the least significant 32 bits of diffServDropActOctetsHCnt. Discontinuities in the value of this counter can occur at re-initialization of the management system, and at other times as indicated by the value of ifCounterDiscontinuityTime." ::= { diffServDropActEntry 9 } diffServDropActPktsCnt OBJECT-TYPE SYNTAX Counter32 MAX-ACCESS read-only STATUS current DESCRIPTION "The number of packets that have been dropped by a drop process. On high speed devices, this object implements the least significant 32 bits of diffServDropActPktsHCnt. Discontinuities in the value of this counter can occur at re-initialization of the management system, and at other times as indicated by the value of ifCounterDiscontinuityTime." ::= { diffServDropActEntry 10 } diffServDropActStatus OBJECT-TYPE SYNTAX RowStatus MAX-ACCESS read-create STATUS current DESCRIPTION "The RowStatus variable controls the activation, deactivation, or deletion of this entry. Any writable variable may be modified whether the row is active or notInService." ::= { diffServDropActEntry 11 } -- -- High Capacity Counter Extension for Drop Action Table -- diffServDropActXTable OBJECT-TYPE SYNTAX SEQUENCE OF DiffServDropActXEntry MAX-ACCESS not-accessible STATUS current DESCRIPTION "This table contains the high capacity counters for the counters in the Drop Action Table. These objects are all 64 bit versions of the basic counters, having the same basic semantics as their 32-bit counterparts, with syntax extended to 64 bits." AUGMENTS { diffServDropActEntry } ::= { diffServAugments 2 } diffServDropActXEntry OBJECT-TYPE SYNTAX DiffServDropActXEntry MAX-ACCESS not-accessible STATUS current DESCRIPTION "An entry containing the 64 bit counters applicable to a specific drop action entry." ::= { diffServDropActXTable 1 } DiffServDropActXEntry ::= SEQUENCE { diffServDropActOctetsHCnt Counter64, diffServDropActPktsHCnt Counter64 } diffServDropActOctetsHCnt OBJECT-TYPE SYNTAX Counter64 MAX-ACCESS read-only STATUS current DESCRIPTION "The number of octets that have been dropped by a drop process. This object should be used on high speed interfaces. Discontinuities in the value of this counter can occur at re-initialization of the management system, and at other times as indicated by the value of ifCounterDiscontinuityTime." ::= { diffServDropActXEntry 1 } diffServDropActPktsHCnt OBJECT-TYPE SYNTAX Counter64 MAX-ACCESS read-only STATUS current DESCRIPTION "The number of packets that have been dropped by a drop process. This object should be used on high speed interfaces. Discontinuities in the value of this counter can occur at re-initialization of the management system, and at other times as indicated by the value of ifCounterDiscontinuityTime." ::= { diffServDropActXEntry 2 } -- This object allows a configuring system to obtain a -- unique value for diffServActionId for purposes of -- configuration diffServActionUnique OBJECT-TYPE SYNTAX TestAndIncr MAX-ACCESS read-write STATUS current DESCRIPTION "The diffServActionUnique object yields a unique new value for diffServActionId when read and subsequently set. This value must be tested for uniqueness." ::= { diffServObjects 7 } -- The Action Table allows us to enumerate the different -- types of actions to be applied to a flow. diffServActionTable OBJECT-TYPE SYNTAX SEQUENCE OF DiffServActionEntry MAX-ACCESS not-accessible STATUS current DESCRIPTION "The Action Table enumerates actions that can be performed to a stream of traffic. Multiple Actions can be concatenated. For example, marking of a stream of traffic exiting a meter (conforming or non-conforming), then perform a drop process with dropped traffic counts maintained. Notice counting is considered as a type of action. The set of flow specific counters in the Count Action Table maintains statistics for a flow that arrives to this Action datapath element. This count is always taken before any drop processing is performed." ::= { diffServTables 7 } diffServActionEntry OBJECT-TYPE SYNTAX DiffServActionEntry MAX-ACCESS not-accessible STATUS current DESCRIPTION "An entry in the action table describes the actions applied to traffic exiting a given meter." INDEX { ifIndex, diffServInterfaceDirection, diffServActionId } ::= { diffServActionTable 1 } DiffServActionEntry ::= SEQUENCE { diffServActionId Unsigned32, diffServActionNext RowPointer, diffServActionType INTEGER, diffServAction RowPointer, diffServActionStatus RowStatus } diffServActionId OBJECT-TYPE SYNTAX Unsigned32 (1..2147483647) MAX-ACCESS not-accessible STATUS current DESCRIPTION "Action Id enumerates the Action entry." ::= { diffServActionEntry 1 } diffServActionNext OBJECT-TYPE SYNTAX RowPointer MAX-ACCESS read-create STATUS current DESCRIPTION "The Next pointer indicates the next datapath element to handle the traffic. For example, a queue datapath element. The value zeroDotZero in this variable indicates no further DiffServ treatment is performed on this flow by the current interface for this interface direction." DEFVAL { zeroDotZero } ::= { diffServActionEntry 2 } diffServActionType OBJECT-TYPE SYNTAX INTEGER { other(1), -- types not specified here. mark(2), -- mark or remark count(3), -- count alwaysDrop(4), -- disallow traffic tailDrop(5), -- fix queue size Drop randomDrop(6), -- Random Drop deterDrop(7) -- Deterministic Drop } MAX-ACCESS read-write STATUS current DESCRIPTION "Indicates the type of action diffServAction points to." ::= { diffServActionEntry 3 } diffServAction OBJECT-TYPE SYNTAX RowPointer MAX-ACCESS read-create STATUS current DESCRIPTION "Points to a row in a Action Type Table that provides all the parameters for the type of action indicated in diffServActionType. Can also points to a row in some other MIB to provide some proprietary action type." ::= { diffServActionEntry 4 } diffServActionStatus OBJECT-TYPE SYNTAX RowStatus MAX-ACCESS read-create STATUS current DESCRIPTION "The RowStatus variable controls the activation, deactivation, or deletion of a meter. Any writable variable may be modified whether the row is active or notInService." ::= { diffServActionEntry 5 } -- -- Queue Set Table -- The Queue Set Table is used for organizing queues -- defined in the Queue Table into Queue Sets, with -- queue scheduling defined in the queue set entry. -- Queue Set Table provides flexibility in queue -- organization and allows more complex hierarchical -- scheduling algorithms be defined. For example, -- multiple scheduling algorithms, each with multiple -- queues, used on the same logical/physical interface. -- -- This object allows a configuring system to obtain a -- unique value for diffServQSetId for purposes of -- configuration diffServQSetUnique OBJECT-TYPE SYNTAX TestAndIncr MAX-ACCESS read-write STATUS current DESCRIPTION "The diffServQSetUnique object yields a unique new value for diffServQSetId when read and subsequently set. This value must be tested for uniqueness." ::= { diffServObjects 8 } diffServQSetTable OBJECT-TYPE SYNTAX SEQUENCE OF DiffServQSetEntry MAX-ACCESS not-accessible STATUS current DESCRIPTION "The Queue Set Table enumerates the queue sets. Queue Sets are used to organize queues based on their scheduling algorithms. Multiple sheduling algorithms can be used, with each algorithm described by one Queue Set Entry. Multiple instances of a single sheduling algorithm, each with different scheduling parameters can also be expressed, each described by its own Queue Set Entry. Relationships between Queue Sets are used to build scheduling algorithm hierarchies. For example, a weighed fair queueing queue set can be a part of a priority queueing queue set, having the weighed fair queueing queue set be a branch of the priority queueing queue set. More complex hierarchies can also be expressed using this mechanism." ::= { diffServTables 8 } diffServQSetEntry OBJECT-TYPE SYNTAX DiffServQSetEntry MAX-ACCESS not-accessible STATUS current DESCRIPTION "An entry in the Queue Set Table describes a single queue set." INDEX { ifIndex, diffServInterfaceDirection, diffServQSetId } ::= { diffServQSetTable 1 } DiffServQSetEntry ::= SEQUENCE { diffServQSetId Unsigned32, diffServQSetParentId Unsigned32, diffServQSetWeight Unsigned32, diffServQSetMethod INTEGER, diffServQSetRateUnit INTEGER, diffServQSetMinRate Unsigned32, diffServQSetMaxRate Unsigned32, diffServQSetNext RowPointer, diffServQSetStatus RowStatus } diffServQSetId OBJECT-TYPE SYNTAX Unsigned32 (1..2147483647) MAX-ACCESS not-accessible STATUS current DESCRIPTION "The Queue Set Id enumerates the Queue Set entry." ::= { diffServQSetEntry 1 } diffServQSetParentId OBJECT-TYPE SYNTAX Unsigned32 (1..2147483647) MAX-ACCESS not-accessible STATUS current DESCRIPTION "The Queue Set Parent Id allows the formation of hierarchical relationships between scheduling algorithms." ::= { diffServQSetEntry 2 } diffServQSetWeight OBJECT-TYPE SYNTAX Unsigned32 MAX-ACCESS read-create STATUS current DESCRIPTION "Used with QSetParentId in hierarchical scheduling setup. QSetWeight represent the weight of all queues within this queue set, with respect to queues in other queue sets in hierarchical scheduling. For example, this queue set represents the weighed fair queueing scheduling amongst all the queues in this queue set. This set of weighted fair queueing queues as a whole belongs to a priority queueing queue set. QSetWeight determines this queue set's priority/weight in the parent queue set's priority queueing scheduling algorithm. There can be more than one weighed fair queueing queue sets belonging to the same priority queueing parent queue set." ::= { diffServQSetEntry 3 } diffServQSetMethod OBJECT-TYPE SYNTAX INTEGER { other(1), -- not listed here pq(2), -- Priority Queueing wfq(3), -- Weighed Fair Queueing wrr(4) -- Weighed Round Robin } MAX-ACCESS read-create STATUS current DESCRIPTION "The scheduling algorithm used by queues in this queue set." ::= { diffServQSetEntry 4 } diffServQSetRateUnit OBJECT-TYPE SYNTAX INTEGER { kbps(1), -- kilo bits per second packets(2) -- packets per second } MAX-ACCESS read-create STATUS current DESCRIPTION "The unit of measure for the MinRate and MaxRate attributes. The packet unit allows packet fair algorithms in addition to bit fair algorithms." ::= { diffServQSetEntry 5 } diffServQSetMinRate OBJECT-TYPE SYNTAX Unsigned32 UNITS "KBPS" MAX-ACCESS read-create STATUS current DESCRIPTION "The minimum rate for the whole queue set. If the value is zero, then there is effectively no minimum rate. If the value is non-zero, the queue set will seek to assure this class of traffic at least this rate." ::= { diffServQSetEntry 6 } diffServQSetMaxRate OBJECT-TYPE SYNTAX Unsigned32 UNITS "KBPS" MAX-ACCESS read-create STATUS current DESCRIPTION "The maximum rate for the whole queue set. If the value is zero, then there is effectively no maximum rate. If the value is non-zero, the queue set will seek to assure this class of traffic at most this rate." ::= { diffServQSetEntry 7 } diffServQSetNext OBJECT-TYPE SYNTAX RowPointer MAX-ACCESS read-create STATUS current DESCRIPTION "Selects the next data path component, which can be another Queue Set. One usage of multiple serial Queue Sets is for Class Base Queueing (CBQ). The value zeroDotZero in this variable indicates no further DiffServ treatment is performed on this flow by the current interface for this interface direction. For example, for an inbound interface the value zeroDotZero indicates that the packet flow has now completed inbound DiffServ treatment and should be forwarded on to the appropriate outbound interface." DEFVAL { zeroDotZero } ::= { diffServQSetEntry 8 } diffServQSetStatus OBJECT-TYPE SYNTAX RowStatus MAX-ACCESS read-create STATUS current DESCRIPTION "The RowStatus variable controls the activation, deactivation, or deletion of a queue. Any writable variable may be modified whether the row is active or notInService." ::= { diffServQSetEntry 9 } -- -- Queue Table -- -- This object allows a configuring system to obtain a -- unique value for diffServQId for purposes of -- configuration. diffServQUnique OBJECT-TYPE SYNTAX TestAndIncr MAX-ACCESS read-write STATUS current DESCRIPTION "The diffServQUnique object yields a unique new value for diffServQId when read and subsequently set. This value must be tested for uniqueness." ::= { diffServObjects 9 } -- The Queue Table allows us to describe individual queues diffServQTable OBJECT-TYPE SYNTAX SEQUENCE OF DiffServQEntry MAX-ACCESS not-accessible STATUS current DESCRIPTION "The Queue Table enumerates the queues on an interface." ::= { diffServTables 9 } diffServQEntry OBJECT-TYPE SYNTAX DiffServQEntry MAX-ACCESS not-accessible STATUS current DESCRIPTION "An entry in the Queue Table describes a single FIFO queue." INDEX { diffServQQSetId, diffServQId } ::= { diffServQTable 1 } DiffServQEntry ::= SEQUENCE { diffServQId Unsigned32, diffServQQSetId Unsigned32, diffServQSchedulerWeight Unsigned32, diffServQStatus RowStatus } diffServQId OBJECT-TYPE SYNTAX Unsigned32 (1..2147483647) MAX-ACCESS not-accessible STATUS current DESCRIPTION "The Queue Id enumerates the Queue entry." ::= { diffServQEntry 1 } diffServQQSetId OBJECT-TYPE SYNTAX Unsigned32 (1..2147483647) MAX-ACCESS not-accessible STATUS current DESCRIPTION "Indicates the Queue Set this queue is part of." ::= { diffServQEntry 2 } diffServQSchedulerWeight OBJECT-TYPE SYNTAX Unsigned32 MAX-ACCESS read-create STATUS current DESCRIPTION "The weight or priority of the queue, depending on the scheduling method used. Notice only the weight of the queue is used, instead of the rate. The rate can be derived based on the rate of the queue set. This is to facilitate changing link speed and/or changing scheduling method without reconfiguring the queues." ::= { diffServQEntry 3 } diffServQStatus OBJECT-TYPE SYNTAX RowStatus MAX-ACCESS read-create STATUS current DESCRIPTION "The RowStatus variable controls the activation, deactivation, or deletion of a queue. Any writable variable may be modified whether the row is active or notInService." ::= { diffServQEntry 4 } -- Queue Measurement Table -- This object allows a configuring system to obtain a -- unique value for diffServQMeasureId for purposes of -- configuration. diffServQMeasureUnique OBJECT-TYPE SYNTAX TestAndIncr MAX-ACCESS read-write STATUS current DESCRIPTION "The diffServQMeasureUnique object yields a unique new value for diffServQMeasureId when read and subsequently set. This value must be tested for uniqueness." ::= { diffServObjects 10 } diffServQMeasureTable OBJECT-TYPE SYNTAX SEQUENCE OF DiffServQMeasureEntry MAX-ACCESS not-accessible STATUS current DESCRIPTION "The Queue Measurement Table contains entries describing the state of queues, this include states for implementing traffic treatment algorithms. Notice multiple queue measurement entries for the same queue is allowed." ::= { diffServTables 10 } diffServQMeasureEntry OBJECT-TYPE SYNTAX DiffServQMeasureEntry MAX-ACCESS not-accessible STATUS current DESCRIPTION "An entry in the Queue Measure Table describes a single set of measurement for a specific queue." INDEX { diffServQMeasureQId, diffServQMeasureId } ::= { diffServQMeasureTable 1 } DiffServQMeasureEntry ::= SEQUENCE { diffServQMeasureId Unsigned32, diffServQMeasureQId Unsigned32, diffServQMeasureAvgSampleInt Unsigned32, diffServQMeasureAvgWeightExp Unsigned32, diffServQMeasureAvgWeightMan Unsigned32, diffServQMeasureQAverage Unsigned32, diffServQMeasureStatus RowStatus } diffServQMeasureId OBJECT-TYPE SYNTAX Unsigned32 (1..2147483647) MAX-ACCESS not-accessible STATUS current DESCRIPTION "The Queue Measure Id enumerates the Queue Measure entry." ::= { diffServQMeasureEntry 1 } diffServQMeasureQId OBJECT-TYPE SYNTAX Unsigned32 (1..2147483647) MAX-ACCESS not-accessible STATUS current DESCRIPTION "Indicates the queue this measurement is associated with." ::= { diffServQMeasureEntry 2 } diffServQMeasureAvgSampleInt OBJECT-TYPE SYNTAX Unsigned32 UNIT millisecond MAX-ACCESS read-create STATUS current DESCRIPTION "The sampling interval for queue average calculation, in milliseconds. For queue sampling based on packet enqueueing or dequeueing intervals, this attribute should contain the value of zero." ::= { diffServQMeasureEntry 3 } diffServQMeasureAvgWeightExp OBJECT-TYPE SYNTAX Unsigned32 MAX-ACCESS read-create STATUS current "The exponent part of weight (in real number format) for queue average calculation. This is a base 10 exponent, with the attribute representing a negative value. For example, with 8 in this attribute meaning 10 to the power of -8. An 8 bit value here will be sufficient." ::= { diffServQMeasureEntry 4 } diffServQMeasureAvgWeightMan OBJECT-TYPE SYNTAX Unsigned32 MAX-ACCESS read-create STATUS current "The mantissa part of weight (in real number format) for queue average calculation. Always a positive number. Need 16 bits of accuracy." ::= { diffServQMeasureEntry 5 } diffServQMeasureQAverage OBJECT-TYPE SYNTAX Unsigned32 UNITS kilo-bits MAX-ACCESS read-only STATUS current "The current queue average in kilo bits." ::= { diffServQMeasureEntry 6 } diffServQMeasureStatus OBJECT-TYPE SYNTAX RowStatus MAX-ACCESS read-create STATUS current DESCRIPTION "The RowStatus variable controls the activation, deactivation, or deletion of a queue. Any writable variable may be modified whether the row is active or notInService." ::= { diffServQMeasureEntry 7 } -- MIB Compliance statements. Three variations of -- compliance are described, for optical, LAN, and low speed -- interfaces. The difference is the implementation of -- diffServActionOctetsHCnt, diffServActionPktsHCnt -- and diffServCountActOctetsHCnt, diffServCountActPktsHCnt. diffServMIBCompliances OBJECT IDENTIFIER ::= { diffServMIBConformance 1 } diffServMIBGroups OBJECT IDENTIFIER ::= { diffServMIBConformance 2 } diffServMIBCompliance MODULE-COMPLIANCE STATUS current DESCRIPTION "This MIB may be implemented as a read-only or as a read-create MIB. As a result, it may be used for monitoring or for configuration. Standard compliance implies that the implementation complies for interfaces for which an interface's octet counter might wrap at most once an hour, which by the IFMIB's convention applies to interfaces under 20 MBPS. It thus applies to any device which might implement a low speed serial line, Ethernet, Token Ring." MODULE -- This Module MANDATORY-GROUPS { diffServMIBClassifierGroup, diffServMIBMeterGroup, diffServMIBQueueGroup, diffServMIBActionGroup -- note that diffServMIBHCCounterGroup is -- mandatory for medium and high speed interfaces -- note that diffServMIBVHCCounterGroup is -- mandatory for high speed interfaces -- note that the diffServMIBStaticGroup is -- mandatory for implementations that implement a -- read-write or read-create mode. } GROUP diffServMIBHCCounterGroup DESCRIPTION "This group is mandatory for those network interfaces for which the value of the corresponding instance of ifSpeed is greater than 20,000,000 bits/second." GROUP diffServMIBVHCCounterGroup DESCRIPTION "This group is mandatory for those network interfaces for which the value of the corresponding instance of ifSpeed is greater than 650,000,000 bits/second." OBJECT diffServClassifierMatchObject MIN-ACCESS read-only DESCRIPTION "Write access is not required." OBJECT diffServClassifierNext MIN-ACCESS read-only DESCRIPTION "Write access is not required." OBJECT diffServClassifierSequence MIN-ACCESS read-only DESCRIPTION "Write access is not required." OBJECT diffServClassifierStatus MIN-ACCESS read-only DESCRIPTION "Write access is not required." OBJECT diffServTBMeterInterval MIN-ACCESS read-only DESCRIPTION "Write access is not required." OBJECT diffServTBMeterBurstSize MIN-ACCESS read-only DESCRIPTION "Write access is not required." OBJECT diffServTBMeterFailNext MIN-ACCESS read-only DESCRIPTION "Write access is not required." OBJECT diffServTBMeterSucceedNext MIN-ACCESS read-only DESCRIPTION "Write access is not required." OBJECT diffServTBMeterStatus MIN-ACCESS read-only DESCRIPTION "Write access is not required." OBJECT diffServActionNext MIN-ACCESS read-only DESCRIPTION "Write access is not required." OBJECT diffServActionDSCP MIN-ACCESS read-only DESCRIPTION "Write access is not required." OBJECT diffServActionMinThreshold MIN-ACCESS read-only DESCRIPTION "Write access is not required." OBJECT diffServActionMaxThreshold MIN-ACCESS read-only DESCRIPTION "Write access is not required." OBJECT diffServActionDropPolicy MIN-ACCESS read-only DESCRIPTION "Write access is not required." OBJECT diffServActionStatus MIN-ACCESS read-only DESCRIPTION "Write access is not required." OBJECT diffServQueueMinimumRate MIN-ACCESS read-only DESCRIPTION "Write access is not required." OBJECT diffServQueueMaximumRate MIN-ACCESS read-only DESCRIPTION "Write access is not required." OBJECT diffServQueuePriority MIN-ACCESS read-only DESCRIPTION "Write access is not required." OBJECT diffServQueueNextTCB MIN-ACCESS read-only DESCRIPTION "Write access is not required." OBJECT diffServQueueStatus MIN-ACCESS read-only DESCRIPTION "Write access is not required." ::= { diffServMIBCompliances 1 } diffServMIBVHCCompliance MODULE-COMPLIANCE STATUS current DESCRIPTION "This MIB may be implemented as a read-only or as a read-create MIB. As a result, it may be used for monitoring or for configuration. Very High Speed compliance implies that the implementation complies for interfaces for which an interface's packet or octet counters might wrap more than once an hour, which by the IFMIB's convention applies to interfaces over 650 MBPS, or OC-12." MODULE -- This Module MANDATORY-GROUPS { diffServMIBClassifierGroup, diffServMIBMeterGroup, diffServMIBQueueGroup, diffServMIBHCCounterGroup, diffServMIBVHCCounterGroup, diffServMIBActionGroup -- note that the diffServMIBStaticGroup is -- mandatory for implementations that implement a -- read-write or read-create mode. } OBJECT diffServClassifierMatchObject MIN-ACCESS read-only DESCRIPTION "Write access is not required." OBJECT diffServClassifierNext MIN-ACCESS read-only DESCRIPTION "Write access is not required." OBJECT diffServClassifierSequence MIN-ACCESS read-only DESCRIPTION "Write access is not required." OBJECT diffServClassifierStatus MIN-ACCESS read-only DESCRIPTION "Write access is not required." OBJECT diffServTBMeterInterval MIN-ACCESS read-only DESCRIPTION "Write access is not required." OBJECT diffServTBMeterBurstSize MIN-ACCESS read-only DESCRIPTION "Write access is not required." OBJECT diffServTBMeterFailNext MIN-ACCESS read-only DESCRIPTION "Write access is not required." OBJECT diffServTBMeterSucceedNext MIN-ACCESS read-only DESCRIPTION "Write access is not required." OBJECT diffServTBMeterStatus MIN-ACCESS read-only DESCRIPTION "Write access is not required." OBJECT diffServActionNext MIN-ACCESS read-only DESCRIPTION "Write access is not required." OBJECT diffServActionDSCP MIN-ACCESS read-only DESCRIPTION "Write access is not required." OBJECT diffServActionMinThreshold MIN-ACCESS read-only DESCRIPTION "Write access is not required." OBJECT diffServActionMaxThreshold MIN-ACCESS read-only DESCRIPTION "Write access is not required." OBJECT diffServActionDropPolicy MIN-ACCESS read-only DESCRIPTION "Write access is not required." OBJECT diffServActionStatus MIN-ACCESS read-only DESCRIPTION "Write access is not required." OBJECT diffServQueueMinimumRate MIN-ACCESS read-only DESCRIPTION "Write access is not required." OBJECT diffServQueueMaximumRate MIN-ACCESS read-only DESCRIPTION "Write access is not required." OBJECT diffServQueuePriority MIN-ACCESS read-only DESCRIPTION "Write access is not required." OBJECT diffServQueueNextTCB MIN-ACCESS read-only DESCRIPTION "Write access is not required." OBJECT diffServQueueStatus MIN-ACCESS read-only DESCRIPTION "Write access is not required." ::= { diffServMIBCompliances 2 } diffServMIBHCCompliance MODULE-COMPLIANCE STATUS current DESCRIPTION "This MIB may be implemented as a read-only or as a read-create MIB. As a result, it may be used for monitoring or for configuration. High Speed compliance implies that the implementation complies for interfaces for which an interface's octet counters might wrap more than once an hour, which by the IFMIB's convention applies to interfaces over 20 MBPS, but under 650 MBPS. It thus applies to devices which implement a 100 MBPS Ethernet, FDDI, E3, DS3, or SONET/SDH interface up to OC-12." MODULE -- This Module MANDATORY-GROUPS { diffServMIBClassifierGroup, diffServMIBMeterGroup, diffServMIBQueueGroup, diffServMIBHCCounterGroup, diffServMIBActionGroup -- note that diffServMIBVHCCounterGroup is -- mandatory for high speed interfaces -- note that the diffServMIBStaticGroup is -- mandatory for implementations that implement a -- read-write or read-create mode. } GROUP diffServMIBVHCCounterGroup DESCRIPTION "This group is mandatory for those network interfaces for which the value of the corresponding instance of ifSpeed is greater than 650,000,000 bits/second." OBJECT diffServClassifierMatchObject MIN-ACCESS read-only DESCRIPTION "Write access is not required." OBJECT diffServClassifierNext MIN-ACCESS read-only DESCRIPTION "Write access is not required." OBJECT diffServClassifierSequence MIN-ACCESS read-only DESCRIPTION "Write access is not required." OBJECT diffServClassifierStatus MIN-ACCESS read-only DESCRIPTION "Write access is not required." OBJECT diffServTBMeterInterval MIN-ACCESS read-only DESCRIPTION "Write access is not required." OBJECT diffServTBMeterBurstSize MIN-ACCESS read-only DESCRIPTION "Write access is not required." OBJECT diffServTBMeterFailNext MIN-ACCESS read-only DESCRIPTION "Write access is not required." OBJECT diffServTBMeterSucceedNext MIN-ACCESS read-only DESCRIPTION "Write access is not required." OBJECT diffServTBMeterStatus MIN-ACCESS read-only DESCRIPTION "Write access is not required." OBJECT diffServActionNext MIN-ACCESS read-only DESCRIPTION "Write access is not required." OBJECT diffServActionDSCP MIN-ACCESS read-only DESCRIPTION "Write access is not required." OBJECT diffServActionMinThreshold MIN-ACCESS read-only DESCRIPTION "Write access is not required." OBJECT diffServActionMaxThreshold MIN-ACCESS read-only DESCRIPTION "Write access is not required." OBJECT diffServActionDropPolicy MIN-ACCESS read-only DESCRIPTION "Write access is not required." OBJECT diffServActionStatus MIN-ACCESS read-only DESCRIPTION "Write access is not required." OBJECT diffServQueueMinimumRate MIN-ACCESS read-only DESCRIPTION "Write access is not required." OBJECT diffServQueueMaximumRate MIN-ACCESS read-only DESCRIPTION "Write access is not required." OBJECT diffServQueuePriority MIN-ACCESS read-only DESCRIPTION "Write access is not required." OBJECT diffServQueueNextTCB MIN-ACCESS read-only DESCRIPTION "Write access is not required." OBJECT diffServQueueStatus MIN-ACCESS read-only DESCRIPTION "Write access is not required." ::= { diffServMIBCompliances 3 } diffServMIBClassifierGroup OBJECT-GROUP OBJECTS { diffServAggregateDSCP, diffServClassifierMatchObject, diffServClassifierNext, diffServClassifierSequence, diffServClassifierStatus } STATUS current DESCRIPTION "The Classifier Group defines the MIB Objects that describe a classifier." ::= { diffServMIBGroups 1 } diffServMIBMeterGroup OBJECT-GROUP OBJECTS { diffServTBMeterInterval, diffServTBMeterBurstSize, diffServTBMeterSucceedNext, diffServTBMeterFailNext, diffServTBMeterStatus } STATUS current DESCRIPTION "The Meter Group defines the objects used in describing a meter." ::= { diffServMIBGroups 2 } diffServMIBActionGroup OBJECT-GROUP OBJECTS { diffServActionDropPolicy, diffServActionRandomDrops, diffServActionTailDrops, diffServActionMinThreshold, diffServActionMaxThreshold, diffServActionDSCP, diffServActionNext, diffServActionConformingPackets, diffServActionConformingOctets, diffServActionStatus } STATUS current DESCRIPTION "The Action Group defines the objects used in describing an action." ::= { diffServMIBGroups 3 } diffServMIBHCCounterGroup OBJECT-GROUP OBJECTS { diffServActionHCConformingOctets } STATUS current DESCRIPTION "At 20,000,000 bits per second or greater, the number of octets a given class may count can overflow a 32 bit counter in under an hour. Therefore, by convention established in the IFMIB, the 64 bit counter must be implemented as well." ::= { diffServMIBGroups 4 } diffServMIBVHCCounterGroup OBJECT-GROUP OBJECTS { diffServActionHCConformingPackets, diffServActionHCRandomDrops, diffServActionHCTailDrops } STATUS current DESCRIPTION "At 650,000,000 bits per second or greater, the number of packets a given class may count can overflow a 32 bit counter in under an hour. Therefore, by convention established in the IFMIB, the 64 bit counter must be implemented as well." ::= { diffServMIBGroups 5 } diffServMIBQueueGroup OBJECT-GROUP OBJECTS { diffServQueueMinimumRate, diffServQueueMaximumRate, diffServQueuePriority, diffServQueueStatus, diffServQueueNextTCB } STATUS current DESCRIPTION "The Queue Group contains the objects that describe an interface's queues." ::= { diffServMIBGroups 6 } diffServMIBStaticGroup OBJECT-GROUP OBJECTS { diffServClassifierUnique, diffServTBMeterUnique, diffServQueueUnique, diffServActionUnique } STATUS current DESCRIPTION "The Static Group contains scalar objects used in creating unique enumerations for classifiers, meters, and queues." ::= { diffServMIBGroups 7 } END