ADTRAN-DYNAMIC-COUNTERS-MIB DEFINITIONS ::= BEGIN -- TITLE: The ADTRAN CN DYNAMIC COUNTERS MIB -- PRODUCT: Modules that support dynamic counters (SM, GE, GPON, AE, ...) -- VERSION: 1.0 -- DATE: Feb 11, 2013 -- -- This MIB Contains tables for dynamic counter creation and reporting on CN products. -- -- HISTORY: * PLEASE DO NOT ADD ANY REVISION HISTORY HERE! USE REVISION/DESCRIPTION! -- IMPORTS MODULE-IDENTITY, OBJECT-TYPE, NOTIFICATION-TYPE, Integer32, IpAddress, Gauge32, Counter64 FROM SNMPv2-SMI RowStatus, PhysAddress, DisplayString FROM SNMPv2-TC InterfaceIndexOrZero FROM IF-MIB adIdentity FROM ADTRAN-MIB adGenSlotInfoIndex FROM ADTRAN-GENSLOT-MIB adGenDynamicCounter, adGenDynamicCounterID FROM ADTRAN-SHARED-CND-SYSTEM-MIB; adGenDynamicCounterMIB MODULE-IDENTITY LAST-UPDATED "201407310000Z" ORGANIZATION "ADTRAN, Inc." CONTACT-INFO "CND Tech Support Postal: ADTRAN, Inc. 901 Explorer Blvd. Huntsville, AL 35806 Tel: +1 800 726-8663 Fax: +1 256 963 6217 E-mail: support@adtran.com" DESCRIPTION "Adtran Dynamic Counter MIB" REVISION "201407310000Z" DESCRIPTION "updated adGenDCProfileDiscardReason with none(11)" REVISION "201406050000Z" DESCRIPTION "Added adGenDCProfileEgressQueueType,adGenDCProfileEgressQueue, adGenDCProfileCtagVlanType, adGenDCProfileCtagVlan, adGenDCProfileCtagPriType, adGenDCProfileCtagPri, adGenDCProfileEvcMap, adGenDCProfileDiscardReason" REVISION "201302110000Z" DESCRIPTION "Creation" ::= { adGenDynamicCounterID 1 } -- -- Object Hierarchy -- adGenDynamicCounterTables OBJECT IDENTIFIER ::= { adGenDynamicCounter 1 } -- -- Textual Conventions -- -- -- Dynamic Counter Slot Table -- adGenDCSlotTable OBJECT-TYPE SYNTAX SEQUENCE OF AdGenDCSlotEntry MAX-ACCESS not-accessible STATUS current DESCRIPTION "Provides information about dynamic counter slot support." ::= { adGenDynamicCounterTables 1 } adGenDCSlotEntry OBJECT-TYPE SYNTAX AdGenDCSlotEntry MAX-ACCESS not-accessible STATUS current DESCRIPTION "Provides information about dynamic counter slot support." INDEX { adGenSlotInfoIndex } ::= { adGenDCSlotTable 1 } AdGenDCSlotEntry ::= SEQUENCE { adGenDCSlotSupport BITS, adGenDCSlotMaxDCProfileIndex Integer32, adGenDCSlotNextDCProfileIndex Integer32, adGenDCSlotMaxDCIndex Integer32, adGenDCSlotNextDCIndex Integer32, adGenDCSlotClearAllDC INTEGER, adGenDCSlotLastError DisplayString } adGenDCSlotSupport OBJECT-TYPE SYNTAX BITS { color (0), pBit (1), sTag (2), destMacByType (3), destMac (4), destIpByType (5), destIp (6), srcMacByType (7), srcMac (8), srcIpByType (9), srcIp (10), ipAndMac (11), destAndSrc (12), tx (13), rx (14), queue (15), include (16), exclude (17) } MAX-ACCESS read-only STATUS current DESCRIPTION "Identifies the dynamic counter matching types supported by the slot. Each bit will be set if the matching type can be used in adGenDCProfileTable. The values are: color - can use adGenDCProfileColorType pBit - can use adGenDCProfilePBitType and adGenDCProfilePBit sTag - can use adGenDCProfileSTagType and adGenDCProfileSTag destMacByType - can use adGenDCProfileDestMacType destMac - can use adGenDCProfileDestMacAddress destIpByType - can use adGenDCProfileDestIpType destIp - can use adGenDCProfileDestIpAddress srcMacByType - can use adGenDCProfileSrcMacType srcMac - can use adGenDCProfileSrcMacAddress srcIpByType - can use adGenDCProfileSrcIpType srcIp - can use adGenDCProfileSrcIpAddress ipAndMac - can match IP and MAC in the same profile destAndSrc - can match destination and source in the same profile tx - can count transmit statistics rx - can count receive statistics queue - can count queue statistics include - supports including the match in the counts exclude - supports excluding the match in the counts " ::= { adGenDCSlotEntry 1 } adGenDCSlotMaxDCProfileIndex OBJECT-TYPE SYNTAX Integer32 MAX-ACCESS read-only STATUS current DESCRIPTION "The maximum index value that can be used for the dynamic counter profile index on this slot." ::= { adGenDCSlotEntry 2 } adGenDCSlotNextDCProfileIndex OBJECT-TYPE SYNTAX Integer32 MAX-ACCESS read-only STATUS current DESCRIPTION "Identifies the next free index for a dynamic counter profile. Reports 0 if there is no available entry." ::= { adGenDCSlotEntry 3 } adGenDCSlotMaxDCIndex OBJECT-TYPE SYNTAX Integer32 MAX-ACCESS read-only STATUS current DESCRIPTION "The maximum index value that can be used for the dynamic counter index on this slot." ::= { adGenDCSlotEntry 4 } adGenDCSlotNextDCIndex OBJECT-TYPE SYNTAX Integer32 MAX-ACCESS read-only STATUS current DESCRIPTION "Identifies the next free index for a dynamic counter. Reports 0 if there is no available entry." ::= { adGenDCSlotEntry 5 } adGenDCSlotClearAllDC OBJECT-TYPE SYNTAX INTEGER { clearAll (1), idle (2) } MAX-ACCESS read-write STATUS current DESCRIPTION "This will always report idle. To clear all dynamic counter counts on the slot, write clearAll to this element." ::= { adGenDCSlotEntry 6 } adGenDCSlotLastError OBJECT-TYPE SYNTAX DisplayString MAX-ACCESS read-only STATUS current DESCRIPTION "The details of the last error seen at the slot level, based on queries to this entry. The main use may be to report the error when there are no more entries available." ::= { adGenDCSlotEntry 7 } -- -- Dynamic Counter Profile Configuration Table -- adGenDCProfileTable OBJECT-TYPE SYNTAX SEQUENCE OF AdGenDCProfileEntry MAX-ACCESS not-accessible STATUS current DESCRIPTION "Provides information about dynamic counter matching criteria." ::= { adGenDynamicCounterTables 2 } adGenDCProfileEntry OBJECT-TYPE SYNTAX AdGenDCProfileEntry MAX-ACCESS not-accessible STATUS current DESCRIPTION "Provides information about dynamic counter matching criteria." INDEX { adGenSlotInfoIndex, adGenDCProfileIndex } ::= { adGenDCProfileTable 1 } AdGenDCProfileEntry ::= SEQUENCE { adGenDCProfileIndex Integer32, adGenDCProfileRowStatus RowStatus, adGenDCProfileColorType INTEGER, adGenDCProfilePBitType INTEGER, adGenDCProfilePBit INTEGER, adGenDCProfileSTagType INTEGER, adGenDCProfileSTag INTEGER, adGenDCProfileDestMacType INTEGER, adGenDCProfileDestMacAddress PhysAddress, adGenDCProfileDestIpType INTEGER, adGenDCProfileDestIpAddress IpAddress, adGenDCProfileSrcMacType INTEGER, adGenDCProfileSrcMacAddress PhysAddress, adGenDCProfileSrcIpType INTEGER, adGenDCProfileSrcIpAddress IpAddress, adGenDCProfileLastError DisplayString, adGenDCProfileEgressQueueType INTEGER, adGenDCProfileEgressQueue INTEGER, adGenDCProfileCtagVlanType INTEGER, adGenDCProfileCtagVlan INTEGER, adGenDCProfileCtagPriType INTEGER, adGenDCProfileCtagPri INTEGER, adGenDCProfileEvcMap DisplayString, adGenDCProfileDiscardReason INTEGER } adGenDCProfileIndex OBJECT-TYPE SYNTAX Integer32 MAX-ACCESS not-accessible STATUS current DESCRIPTION "Identifies the index of the dynamic counter profile. The index will be from 1 to N, where N is the maximum number of dynamic counters supported by the module." ::= { adGenDCProfileEntry 1 } adGenDCProfileRowStatus OBJECT-TYPE SYNTAX RowStatus MAX-ACCESS read-create STATUS current DESCRIPTION "This object is used to create a new counter profile and delete an existing counter profile. To create, write createAndWait(5) or createAndGo(4) to this element. To delete, write destroy(6) to this element. The values for notInService(2) and notReady(3) are not used. The element will always report active(1), once created." ::= { adGenDCProfileEntry 2 } adGenDCProfileColorType OBJECT-TYPE SYNTAX INTEGER { noMatching (1), green (2), yellow (3), red (4) } MAX-ACCESS read-create STATUS current DESCRIPTION "Specify the color of the traffic to be matched in this profile. The default is noMatching, which means the color will not be used in this profile." ::= { adGenDCProfileEntry 3 } adGenDCProfilePBitType OBJECT-TYPE SYNTAX INTEGER { noMatching (1), pBit (2) } MAX-ACCESS read-create STATUS current DESCRIPTION "Specify whether the P-Bit is being matched in this profile. The default is noMatching, which means the P-Bit will not be used in this profile. If pBit is set, then the matched P-Bit value is specified in adGenDCProfilePBit." ::= { adGenDCProfileEntry 4 } adGenDCProfilePBit OBJECT-TYPE SYNTAX INTEGER (0..7) MAX-ACCESS read-create STATUS current DESCRIPTION "Specify a P-Bit value being matched in this profile when adGenDCProfilePBitType is set to pBit. This is unused if adGenDCProfilePBitType is set to anything else. This value defaults to 0." ::= { adGenDCProfileEntry 5 } adGenDCProfileSTagType OBJECT-TYPE SYNTAX INTEGER { noMatching (1), sTag (2), allSTags (3), noSTag (4) } MAX-ACCESS read-create STATUS current DESCRIPTION "Specify whether the S-Tag is being matched in this profile. The default is noMatching, which means the S-Tag will not be used in this profile. If sTag is set, then the matching S-Tag value is specified in adGenDCProfileSTag. If allSTags is set, then this will match all packets that have an S-Tag, regardless of value. If noSTag is set, then this will match all packets that do not have an S-Tag." ::= { adGenDCProfileEntry 6 } adGenDCProfileSTag OBJECT-TYPE SYNTAX INTEGER (0..4094) MAX-ACCESS read-create STATUS current DESCRIPTION "Specify an S-Tag value being matched in this profile when adGenDCProfileSTagType is set to sTag. This is unused if adGenDCProfileSTagType is set to anything else. This value defaults to 0." ::= { adGenDCProfileEntry 7 } adGenDCProfileDestMacType OBJECT-TYPE SYNTAX INTEGER { noMatching (1), mac (2), unicast (3), multicast (4), broadcast (5) } MAX-ACCESS read-create STATUS current DESCRIPTION "Specify whether the destination MAC is being matched in this profile. The default is noMatching, which means the MAC will not be used in this profile. If mac is set, then the matched destination MAC value is specified in adGenDCProfileDestMacAddress. If unicast is set, then this will match all packets that have a unicast destination MAC address. If multicast is set, then this will match all packets that have a multicast destination MAC address. If broadcast is set, then this will match all packets that have a broadcast destination MAC address." ::= { adGenDCProfileEntry 8 } adGenDCProfileDestMacAddress OBJECT-TYPE SYNTAX PhysAddress MAX-ACCESS read-create STATUS current DESCRIPTION "Specify a destination MAC address being matched in this profile when adGenDCProfileDestMacType is set to mac. This is unused if adGenDCProfileDestMacType is set to anything else. This defaults to all-0's." ::= { adGenDCProfileEntry 9 } adGenDCProfileDestIpType OBJECT-TYPE SYNTAX INTEGER { noMatching (1), ip (2), unicast (3), multicast (4), any (5), none (6) } MAX-ACCESS read-create STATUS current DESCRIPTION "Specify whether the destination IP is being matched in this profile. The default is noMatching, which means the IP will not be used in this profile. If ip is set, then the matched destination IP value is specified in adGenDCProfileDestIpAddress. If unicast is set, then this will match all packets that have a unicast destination IP address. If multicast is set, then this will match all packets that have a multicast destination IP address. If any is set, then this will match all packets that have an IP address (i.e. all L3 packets). If none is set, then this will match all packets that do not have an IP address (i.e. L2 packets only)." ::= { adGenDCProfileEntry 10 } adGenDCProfileDestIpAddress OBJECT-TYPE SYNTAX IpAddress MAX-ACCESS read-create STATUS current DESCRIPTION "Specify a destination IP address being matched in this profile when adGenDCProfileDestIpType is set to ip. This is unused if adGenDCProfileDestIpType is set to anything else. This defaults to all-0's." ::= { adGenDCProfileEntry 11 } adGenDCProfileSrcMacType OBJECT-TYPE SYNTAX INTEGER { noMatching (1), mac (2) } MAX-ACCESS read-create STATUS current DESCRIPTION "Specify whether the source MAC is being matched in this profile. The default is noMatching, which means the MAC will not be used in this profile. If mac is set, then the matched source MAC value is specified in adGenDCProfileSrcMacAddress." ::= { adGenDCProfileEntry 12 } adGenDCProfileSrcMacAddress OBJECT-TYPE SYNTAX PhysAddress MAX-ACCESS read-create STATUS current DESCRIPTION "Specify a source MAC address being matched in this profile when adGenDCProfileSrcMacType is set to mac. This is unused if adGenDCProfileSrcMacType is set to anything else. This defaults to all-0's." ::= { adGenDCProfileEntry 13 } adGenDCProfileSrcIpType OBJECT-TYPE SYNTAX INTEGER { noMatching (1), ip (2), any (3), none (4) } MAX-ACCESS read-create STATUS current DESCRIPTION "Specify whether the source IP is being matched in this profile. The default is noMatching, which means the IP will not be used in this profile. If ip is set, then the matched source IP value is specified in adGenDCProfileSrcIpAddress. If any is set, then this will match all packets that have a source IP address (i.e. all L3 packets). If none is set, then this will match all packets that do not have a source IP address (i.e. L2 packets only)." ::= { adGenDCProfileEntry 14 } adGenDCProfileSrcIpAddress OBJECT-TYPE SYNTAX IpAddress MAX-ACCESS read-create STATUS current DESCRIPTION "Specify a source IP address being matched in this profile when adGenDCProfileSrcIpType is set to ip. This is unused if adGenDCProfileSrcIpType is set to anything else. This defaults to all-0's." ::= { adGenDCProfileEntry 15 } adGenDCProfileLastError OBJECT-TYPE SYNTAX DisplayString MAX-ACCESS read-only STATUS current DESCRIPTION "The details of the last error seen for a profile, based on queries to this entry." ::= { adGenDCProfileEntry 16 } adGenDCProfileEgressQueueType OBJECT-TYPE SYNTAX INTEGER { noMatching (1), egressQueue (2) } MAX-ACCESS read-create STATUS current DESCRIPTION "Specify whether the Egress queue is being matched in this profile. If egressQueue is set, then the matching egress Queue value is specified in adGenDCProfileEgressQueue." DEFVAL { noMatching } ::= { adGenDCProfileEntry 17 } adGenDCProfileEgressQueue OBJECT-TYPE SYNTAX INTEGER (0..7) MAX-ACCESS read-create STATUS current DESCRIPTION "Egress queue number." DEFVAL { 0 } ::= { adGenDCProfileEntry 18 } adGenDCProfileCtagVlanType OBJECT-TYPE SYNTAX INTEGER { noMatching (1), cTag (2), allCTags (3), noCTag (4) } MAX-ACCESS read-create STATUS current DESCRIPTION "Specify whether the C-Tag is being matched in this profile. If cTag is set, then the matching C-Tag value is specified in adGenDCProfileCtagVlan. If allCTags is set, then this will match all packets that have an C-Tag, regardless of value. If noCTag is set, then this will match all packets that do not have an C-Tag." DEFVAL { noMatching } ::= { adGenDCProfileEntry 19 } adGenDCProfileCtagVlan OBJECT-TYPE SYNTAX INTEGER (0..4094) MAX-ACCESS read-create STATUS current DESCRIPTION "Customer VLAN ID used to identify traffic" DEFVAL { 0 } ::= { adGenDCProfileEntry 20 } adGenDCProfileCtagPriType OBJECT-TYPE SYNTAX INTEGER { noMatching (1), cTagPri (2) } MAX-ACCESS read-create STATUS current DESCRIPTION "Specify whether the CTag is being matched in this profile. If cTagPri is set, then the matched CTag value is specified in adGenDCProfileCtagPri." DEFVAL { noMatching } ::= { adGenDCProfileEntry 21 } adGenDCProfileCtagPri OBJECT-TYPE SYNTAX INTEGER (0..7) MAX-ACCESS read-create STATUS current DESCRIPTION "Priority used by the C-Tag on traffic meeting the match criteria." DEFVAL { 0 } ::= { adGenDCProfileEntry 22 } adGenDCProfileEvcMap OBJECT-TYPE SYNTAX DisplayString MAX-ACCESS read-create STATUS current DESCRIPTION "Name of the EVC map. If null string is set, matching is disabled. Null string will be the default." ::= { adGenDCProfileEntry 23 } adGenDCProfileDiscardReason OBJECT-TYPE SYNTAX INTEGER { noMatching(1), any(2), stagMatchFailed(3), egressRecDrop(4), forwardingFailed(5), fullQueue(6), invalidQueueDrop(7), lagNotValid(8), multicastBufferFull(9), macsaMatchFailed(10), none(11) } MAX-ACCESS read-create STATUS current DESCRIPTION "Configures the dynamic counter to count packets that have been dropped due to one of the enumerated drop criteria. Discard reason 'none(11)' means that all packets that are NOT dropped are counted." DEFVAL { noMatching } ::= { adGenDCProfileEntry 24 } -- -- Dynamic Counter Configuration Table -- adGenDCConfigTable OBJECT-TYPE SYNTAX SEQUENCE OF AdGenDCConfigEntry MAX-ACCESS not-accessible STATUS current DESCRIPTION "Provides information about dynamic counter configuration. This tables connects a profile and an interface into a dynamic counter entry." ::= { adGenDynamicCounterTables 3 } adGenDCConfigEntry OBJECT-TYPE SYNTAX AdGenDCConfigEntry MAX-ACCESS not-accessible STATUS current DESCRIPTION "Provides information about dynamic counter configuration." INDEX { adGenSlotInfoIndex, adGenDCConfigIndex } ::= { adGenDCConfigTable 1 } AdGenDCConfigEntry ::= SEQUENCE { adGenDCConfigIndex Integer32, adGenDCConfigRowStatus RowStatus, adGenDCConfigProfile Integer32, adGenDCConfigInterface InterfaceIndexOrZero, adGenDCConfigType INTEGER, adGenDCConfigInterfaceQueue Integer32, adGenDCConfigInclude INTEGER, adGenDCConfigLastError DisplayString } adGenDCConfigIndex OBJECT-TYPE SYNTAX Integer32 MAX-ACCESS not-accessible STATUS current DESCRIPTION "The index of the dynamic counter." ::= { adGenDCConfigEntry 1 } adGenDCConfigRowStatus OBJECT-TYPE SYNTAX RowStatus MAX-ACCESS read-create STATUS current DESCRIPTION "This element provides the administrative state. This object is used to create a new dynamic counter, delete an existing dynamic counter, and to enable/disable the dynamic counter. To create or delete, write createAndWait(5) or destroy(6) to this element. To enable/disable the dynamic counter, write active(1) or notInService(2) to this element. The value for createAndGo(4) will not be used. If the dynamic counter is requested to go inService when it does not have sufficient information, the request will fail and the error will be listed in adGenDCConfigLastError." ::= { adGenDCConfigEntry 2 } adGenDCConfigProfile OBJECT-TYPE SYNTAX Integer32 MAX-ACCESS read-create STATUS current DESCRIPTION "The index of the adGenDCProfile that will be used." ::= { adGenDCConfigEntry 3 } adGenDCConfigInterface OBJECT-TYPE SYNTAX InterfaceIndexOrZero MAX-ACCESS read-create STATUS current DESCRIPTION "The IfIndex of the interface that will be used." ::= { adGenDCConfigEntry 4 } adGenDCConfigType OBJECT-TYPE SYNTAX INTEGER { tx (1), rx (2), queue (3) } MAX-ACCESS read-create STATUS current DESCRIPTION "The type of the statistics to be gathered, either tx, rx, or queue statistics. The statistics types are only supported if indicated in adGenDCSlotSupport. If queue is specified, the queue number is indicated in adGenDCConfigInterfaceQueue." ::= { adGenDCConfigEntry 5 } adGenDCConfigInterfaceQueue OBJECT-TYPE SYNTAX Integer32 MAX-ACCESS read-create STATUS current DESCRIPTION "Indicates the queue number, if adGenDCConfigType is set to queue." ::= { adGenDCConfigEntry 6 } adGenDCConfigInclude OBJECT-TYPE SYNTAX INTEGER { include (1), exclude (2) } MAX-ACCESS read-create STATUS current DESCRIPTION "Indicates whether the match to the counter profile should be included in the counts or excluded from the counts. The default value is to include them in the counts. This setting is subject to the settings in adGenDCSlotSupport." ::= { adGenDCConfigEntry 7 } adGenDCConfigLastError OBJECT-TYPE SYNTAX DisplayString MAX-ACCESS read-only STATUS current DESCRIPTION "The details of the last error seen for a dynamic counter, based on queries to this entry. This may include invalid values, reasons for rejecting configuration items, or reasons the counter cannot go running." ::= { adGenDCConfigEntry 8 } -- -- Dynamic Counter Status Table -- adGenDCStatusTable OBJECT-TYPE SYNTAX SEQUENCE OF AdGenDCStatusEntry MAX-ACCESS not-accessible STATUS current DESCRIPTION "Provides status about the dynamic counter table, including counts that have been collected." ::= { adGenDynamicCounterTables 4 } adGenDCStatusEntry OBJECT-TYPE SYNTAX AdGenDCStatusEntry MAX-ACCESS not-accessible STATUS current DESCRIPTION "Provides status about the dynamic counter table, including counts that have been collected." INDEX { adGenSlotInfoIndex, adGenDCConfigIndex } ::= { adGenDCStatusTable 1 } AdGenDCStatusEntry ::= SEQUENCE { adGenDCStatusRowStatus RowStatus, adGenDCStatusOctets Counter64, adGenDCStatusPkts Counter64, adGenDCStatusAvgBitsPerSec Gauge32, adGenDCStatusClear INTEGER } adGenDCStatusRowStatus OBJECT-TYPE SYNTAX RowStatus MAX-ACCESS read-only STATUS current DESCRIPTION "This object is used to report the operational status of the dynamic counters, either inService or notReady." ::= { adGenDCStatusEntry 1 } adGenDCStatusOctets OBJECT-TYPE SYNTAX Counter64 MAX-ACCESS read-only STATUS current DESCRIPTION "The total number of octets / bytes counted by this dynamic counter." ::= { adGenDCStatusEntry 2 } adGenDCStatusPkts OBJECT-TYPE SYNTAX Counter64 MAX-ACCESS read-only STATUS current DESCRIPTION "The total number of packets counted by this dynamic counter." ::= { adGenDCStatusEntry 3 } adGenDCStatusAvgBitsPerSec OBJECT-TYPE SYNTAX Gauge32 MAX-ACCESS read-only STATUS current DESCRIPTION "The average number of bits per second counted on the dynamic counter during the last 5 minutes." ::= { adGenDCStatusEntry 4 } adGenDCStatusClear OBJECT-TYPE SYNTAX INTEGER { clear (1), idle (2) } MAX-ACCESS read-write STATUS current DESCRIPTION "This will always report idle. To clear the dynamic counter counts, write clear(1) to this element." ::= { adGenDCStatusEntry 5 } END