307 lines
13 KiB
Plaintext
307 lines
13 KiB
Plaintext
ARISTA-HARDWARE-UTILIZATION-MIB DEFINITIONS ::= BEGIN
|
|
|
|
IMPORTS
|
|
MODULE-IDENTITY, OBJECT-TYPE,
|
|
Counter32, NOTIFICATION-TYPE FROM SNMPv2-SMI
|
|
MODULE-COMPLIANCE, OBJECT-GROUP,
|
|
NOTIFICATION-GROUP FROM SNMPv2-CONF
|
|
TimeStamp, DisplayString FROM SNMPv2-TC
|
|
aristaMibs FROM ARISTA-SMI-MIB;
|
|
|
|
aristaHardwareUtilizationMIB MODULE-IDENTITY
|
|
LAST-UPDATED "201605240000Z"
|
|
ORGANIZATION "Arista Networks, Inc."
|
|
CONTACT-INFO
|
|
"Arista Networks, Inc.
|
|
|
|
Postal: 5453 Great America Parkway
|
|
Santa Clara, CA 95054
|
|
|
|
Tel: +1 408 547-5500
|
|
|
|
E-mail: snmp@arista.com"
|
|
DESCRIPTION
|
|
"This MIB contains information about the capacity and
|
|
utilization of hardware resources on Arista devices.
|
|
|
|
Arista ships and supports devices which perform packet
|
|
forwarding decisions in hardware. To make these forwarding
|
|
decisions (L2 bridging, input and output access list, L3
|
|
forwarding based on IP destination etc.), the devices use
|
|
information programmed in various hardware
|
|
resources. Examples of such hardware resources are the
|
|
hash table used for MAC address lookup, TCAM for
|
|
destination IP lookup etc.
|
|
|
|
Each of Arista's devices have different hardware resource
|
|
capacity or size limits. It is extremely useful for a
|
|
Network Management system to be able to query and monitor
|
|
the utilization of these hardware resources. Due to
|
|
unxpected network event or configuration change, it is
|
|
possible that a specific hardware resource is over
|
|
utilized and there is no room to program additional
|
|
entries. For example, a routing mis-configuration can
|
|
result in overflowing the L3 forwarding TCAM. This may
|
|
be detrimental to the network operation. So it's extremely
|
|
useful to monitor the utilization of the various hardware
|
|
resources of a specific device.
|
|
|
|
On some devices, due to hardware design considerations,
|
|
several features may have to share a single hardware
|
|
resource. If one feature ends up using more of the same
|
|
resource, it can affect the functionality of another
|
|
feature. This is another reason to have visibility into
|
|
the hardware resource usage.
|
|
|
|
The hardware element that makes the forwarding decision is
|
|
frequently referred to as the 'Forwarding ASIC' or
|
|
'Forwarding Chip'. In this MIB document we refer to this
|
|
hardware element as 'Forwarding Element'. Even though a
|
|
device can have multiple forwarding elements, the information
|
|
programmed in each of the forwarding element is typically
|
|
the same. But there are some cases, where this is not the
|
|
case. In such instances, the utilization of relevant
|
|
hardware resource(s) may not be the same across all the
|
|
forwarding elements.
|
|
|
|
This MIB module provides the hardware capacity and
|
|
utilization information for various resources in a generic
|
|
manner, that's applicable to all Arista devices."
|
|
REVISION "201605240000Z"
|
|
DESCRIPTION
|
|
"Initial revision of the MIB module."
|
|
::= { aristaMibs 22 }
|
|
|
|
aristaHardwareUtilizationMibNotifications OBJECT IDENTIFIER
|
|
::= { aristaHardwareUtilizationMIB 0 }
|
|
|
|
aristaHardwareUtilizationMibObjects OBJECT IDENTIFIER
|
|
::= { aristaHardwareUtilizationMIB 1 }
|
|
|
|
aristaHardwareUtilizationMibConformance OBJECT IDENTIFIER
|
|
::= { aristaHardwareUtilizationMIB 2 }
|
|
|
|
aristaHardwareUtilizationTable OBJECT-TYPE
|
|
SYNTAX SEQUENCE OF AristaHardwareUtilizationEntry
|
|
MAX-ACCESS not-accessible
|
|
STATUS current
|
|
DESCRIPTION
|
|
"This table contains information about various hardware
|
|
resources and their utilization."
|
|
::= { aristaHardwareUtilizationMibObjects 1 }
|
|
|
|
aristaHardwareUtilizationEntry OBJECT-TYPE
|
|
SYNTAX AristaHardwareUtilizationEntry
|
|
MAX-ACCESS not-accessible
|
|
STATUS current
|
|
DESCRIPTION
|
|
"A single conceptual row containing utilization information
|
|
for a specific hardware resource.
|
|
|
|
There are many hardware resources on Arista devices. Each
|
|
resource is identified by a name. Several 'features' can be
|
|
using the same hardware resource. Every feature is identified
|
|
by a name. On several platforms, we have more than one
|
|
forwarding elements which is identified by a name.
|
|
|
|
A single conceptual row in the hardware utilization table
|
|
represents utilization of a specific hardware resource by a
|
|
specific feature on the specified forwarding element.
|
|
|
|
Note that it is possible to have an entry where feature and
|
|
forwarding element are both empty strings. In these cases, the
|
|
conceptual row describes the overall utilization for the
|
|
particular hardware resource."
|
|
|
|
INDEX { aristaHardwareUtilizationResource,
|
|
aristaHardwareUtilizationFeature,
|
|
aristaHardwareUtilizationForwardingElement
|
|
}
|
|
::= { aristaHardwareUtilizationTable 1 }
|
|
|
|
AristaHardwareUtilizationEntry ::= SEQUENCE {
|
|
aristaHardwareUtilizationResource DisplayString,
|
|
aristaHardwareUtilizationFeature DisplayString,
|
|
aristaHardwareUtilizationForwardingElement DisplayString,
|
|
aristaHardwareUtilizationInUseEntries Counter32,
|
|
aristaHardwareUtilizationFreeEntries Counter32,
|
|
aristaHardwareUtilizationCommittedEntries Counter32,
|
|
aristaHardwareUtilizationMaxEntries Counter32,
|
|
aristaHardwareUtilizationHighWatermark Counter32,
|
|
aristaHardwareUtilizationHighWatermarkTime TimeStamp
|
|
}
|
|
|
|
aristaHardwareUtilizationResource OBJECT-TYPE
|
|
SYNTAX DisplayString (SIZE(0..35))
|
|
MAX-ACCESS not-accessible
|
|
STATUS current
|
|
DESCRIPTION
|
|
"The name that identifies the specific hardware resource."
|
|
::= { aristaHardwareUtilizationEntry 1 }
|
|
|
|
aristaHardwareUtilizationFeature OBJECT-TYPE
|
|
SYNTAX DisplayString (SIZE(0..35))
|
|
MAX-ACCESS not-accessible
|
|
STATUS current
|
|
DESCRIPTION
|
|
"The name that identifies the specific feature which is using
|
|
the hardware resource in question. As noted in the description
|
|
of this MIB module, multiple features can share a specific
|
|
hardware resource."
|
|
::= { aristaHardwareUtilizationEntry 2 }
|
|
|
|
aristaHardwareUtilizationForwardingElement OBJECT-TYPE
|
|
SYNTAX DisplayString (SIZE(0..35))
|
|
MAX-ACCESS not-accessible
|
|
STATUS current
|
|
DESCRIPTION
|
|
"The name that identifies the specific forwarding element on
|
|
the device that this hardware resource belongs to. As noted in
|
|
the description of this MIB module, for some features
|
|
information is programmed differently across various
|
|
forwarding elements. In such cases, this MIB object represents
|
|
the forwarding element that corresponds to this entry's
|
|
hardware resource utilization. Otherwise this MIB object will
|
|
just be an empty string."
|
|
::= { aristaHardwareUtilizationEntry 3 }
|
|
|
|
aristaHardwareUtilizationInUseEntries OBJECT-TYPE
|
|
SYNTAX Counter32
|
|
MAX-ACCESS read-only
|
|
STATUS current
|
|
DESCRIPTION
|
|
"This MIB object represents the number of entries in the
|
|
specific hardware resource that is currently consumed by
|
|
a feature."
|
|
::= { aristaHardwareUtilizationEntry 4 }
|
|
|
|
aristaHardwareUtilizationFreeEntries OBJECT-TYPE
|
|
SYNTAX Counter32
|
|
MAX-ACCESS read-only
|
|
STATUS current
|
|
DESCRIPTION
|
|
"This MIB object represents the number of free entries in the
|
|
specific hardware resource."
|
|
::= { aristaHardwareUtilizationEntry 5 }
|
|
|
|
aristaHardwareUtilizationCommittedEntries OBJECT-TYPE
|
|
SYNTAX Counter32
|
|
MAX-ACCESS read-only
|
|
STATUS current
|
|
DESCRIPTION
|
|
"This MIB object represents the number of entries of a
|
|
hardware resource that have been dedicated ('reserved') for a
|
|
particular feature. When features 'request' for a specific
|
|
hardware resource, entries are 'reserved' for the feature. It
|
|
is possible that the actual number of entries used is less
|
|
than what has been reserved for the feature."
|
|
::= { aristaHardwareUtilizationEntry 6 }
|
|
|
|
aristaHardwareUtilizationMaxEntries OBJECT-TYPE
|
|
SYNTAX Counter32
|
|
MAX-ACCESS read-only
|
|
STATUS current
|
|
DESCRIPTION
|
|
"This MIB object represents the maximum number of 'logical'
|
|
entries that can be allocated for the given hardware resource
|
|
by the specific feature (assuming it is not being shared with
|
|
any other feature).
|
|
|
|
Even though the raw number of maximum entries is fixed for a
|
|
given hardware resource, the logical entries available to a
|
|
specific feature may vary.
|
|
|
|
An example: Consider a device where the width ('number of
|
|
bits') of a single TCAM entry is 128. It is possible to store an
|
|
IPv4 access control list (matching both source and destination
|
|
addresses) using a single entry of this TCAM. But given that
|
|
IPv6 addresses are 128 bits long, 2 TCAM entries will be
|
|
required to store an equivalent IPv6 access control list.
|
|
|
|
In this example above, the 'maximum number of entries'
|
|
available for the IPv4 feature is twice the number for
|
|
the IPv6 feature."
|
|
::= { aristaHardwareUtilizationEntry 7 }
|
|
|
|
aristaHardwareUtilizationHighWatermark OBJECT-TYPE
|
|
SYNTAX Counter32
|
|
MAX-ACCESS read-only
|
|
STATUS current
|
|
DESCRIPTION
|
|
"This MIB object represents the maximum number of entries that
|
|
the specific feature has used up at any point in time. This
|
|
allows the Network Management system to monitor the hardware
|
|
resource utilization pattern for a given feature allowing the
|
|
operator to potentially take some action."
|
|
::= { aristaHardwareUtilizationEntry 8 }
|
|
|
|
aristaHardwareUtilizationHighWatermarkTime OBJECT-TYPE
|
|
SYNTAX TimeStamp
|
|
MAX-ACCESS read-only
|
|
STATUS current
|
|
DESCRIPTION
|
|
"This MIB object represents the last time when a specific
|
|
feature hit the high watermark (number of entries of the given
|
|
hardware resource)."
|
|
::= { aristaHardwareUtilizationEntry 9 }
|
|
|
|
-- Notifications
|
|
|
|
aristaHardwareUtilizationAlert NOTIFICATION-TYPE
|
|
OBJECTS { aristaHardwareUtilizationInUseEntries,
|
|
aristaHardwareUtilizationHighWatermark,
|
|
aristaHardwareUtilizationHighWatermarkTime
|
|
}
|
|
STATUS current
|
|
DESCRIPTION
|
|
"This notification is generated when the hardware utilization
|
|
crosses the specified threshold."
|
|
::= { aristaHardwareUtilizationMibNotifications 1 }
|
|
|
|
-- Conformance and Compliance
|
|
|
|
aristaHardwareUtilizationMibCompliances OBJECT IDENTIFIER
|
|
::= { aristaHardwareUtilizationMibConformance 1 }
|
|
|
|
aristaHardwareUtilizationMibGroups OBJECT IDENTIFIER
|
|
::= { aristaHardwareUtilizationMibConformance 2 }
|
|
|
|
aristaHardwareUtilizationMibCompliance MODULE-COMPLIANCE
|
|
STATUS current
|
|
DESCRIPTION
|
|
"The compliance statement for Arista switches that implement
|
|
the ARISTA-HARDWARE-CAPACITY-MIB."
|
|
MODULE -- this module
|
|
MANDATORY-GROUPS {
|
|
aristaHardwareUtilizationTableGroup,
|
|
aristaHardwareUtilizationNotificationsGroup
|
|
}
|
|
::= { aristaHardwareUtilizationMibCompliances 1 }
|
|
|
|
aristaHardwareUtilizationTableGroup OBJECT-GROUP
|
|
OBJECTS {
|
|
aristaHardwareUtilizationInUseEntries,
|
|
aristaHardwareUtilizationFreeEntries,
|
|
aristaHardwareUtilizationCommittedEntries,
|
|
aristaHardwareUtilizationMaxEntries,
|
|
aristaHardwareUtilizationHighWatermark,
|
|
aristaHardwareUtilizationHighWatermarkTime
|
|
}
|
|
STATUS current
|
|
DESCRIPTION
|
|
"The collection of objects that provide counter information
|
|
for hardware resource utilization."
|
|
::= { aristaHardwareUtilizationMibGroups 1 }
|
|
|
|
aristaHardwareUtilizationNotificationsGroup NOTIFICATION-GROUP
|
|
NOTIFICATIONS {
|
|
aristaHardwareUtilizationAlert
|
|
}
|
|
STATUS current
|
|
DESCRIPTION
|
|
"The notification(s) generated by the system if the hardware
|
|
utilization of a specific resource exceeds configured
|
|
threshold."
|
|
::= { aristaHardwareUtilizationMibGroups 2 }
|
|
END
|