part of the Entity MIB configuration last changed.
2.12.5. entityNotifications Group
This group contains notification definitions relating to the overall
status of the Entity MIB instantiation.
2.13. Multiple Agents
Even though a primary motivation for this MIB is to represent the
multiple logical entities supported by a single agent, another
motivation is to represent multiple logical entities supported by
multiple agents (in the same "overall" physical entity). Indeed, it
is implicit in the SNMP architecture that the number of agents is
transparent to a network management station.
However, there is no agreement at this time as to the degree of
cooperation that should be expected for agent implementations.
Therefore, multiple agents within the same managed system are free to
implement the Entity MIB independently. (For more information, refer
to Section 2.9, "Multiple Instances of the Entity MIB".)
2.14. Changes Since RFC 2037
2.14.1. Textual Conventions
The PhysicalClass TC text has been clarified, and a new enumeration
to support ’stackable’ components has been added. The
SnmpEngineIdOrNone TC has been added to support SNMPv3.
2.14.2. New entPhysicalTable Objects
The entPhysicalHardwareRev, entPhysicalFirmwareRev, and
entPhysicalSoftwareRev objects have been added for revision
identification.
The entPhysicalSerialNum, entPhysicalMfgName, entPhysicalModelName,
and entPhysicalIsFru objects have been added for better vendor
identification for physical components. In the event the agent
cannot identify this information, the entPhysicalSerialNum object can
be set by a management station.
The entPhysicalAlias and entPhysicalAssetID objects have been added
for better user component identification. These objects are intended
to be set by a management station and preserved by the agent across
restarts.
2.14.3. New entLogicalTable Objects
The entLogicalContextEngineID and entLogicalContextName objects have
been added to provide an SNMP context for SNMPv3 access on behalf of
a logical entity.
2.14.4. Bug Fixes
A bug was fixed in the entLogicalCommunity object. The subrange was
incorrect (1..255) and is now (0..255). The description clause has
also been clarified. This object is now deprecated.
The entLastChangeTime object description has been changed to
generalize the events that cause an update to the last change
timestamp.
The syntax was changed from DisplayString to SnmpAdminString for the
entPhysicalDescr, entPhysicalName, and entLogicalDescr objects.
2.15. Changes Since RFC 2737
2.15.1. Textual Conventions
The PhysicalIndexOrZero TC has been added to allow objects to
reference an entPhysicalIndex value or zero. The PhysicalClass TC
has been extended to support a new enumeration for central processing
units.
2.15.2. New Objects
The entPhysicalMfgDate object has been added to the entPhysicalTable
to provide the date of manufacturing of the managed entity.
The entPhysicalUris object has been added to the entPhysicalTable to
provide additional identification information about the physical
entity, such as a Common Language Equipment Identifier (CLEI) URN.
2.15.3. Bug Fixes
The syntax was changed from INTEGER to Integer32 for the
entPhysicalParentRelPos, entLogicalIndex, and
entAliasLogicalIndexOrZero objects, and from INTEGER to
PhysicalIndexOrZero for the entPhysicalContainedIn object.
3. Definitions
ENTITY-MIB DEFINITIONS ::= BEGIN
IMPORTS
MODULE-IDENTITY, OBJECT-TYPE, mib-2, NOTIFICATION-TYPE,
Integer32
FROM SNMPv2-SMI
TDomain, TAddress, TEXTUAL-CONVENTION,
AutonomousType, RowPointer, TimeStamp, TruthValue,
DateAndTime
FROM SNMPv2-TC
MODULE-COMPLIANCE, OBJECT-GROUP, NOTIFICATION-GROUP
FROM SNMPv2-CONF
SnmpAdminString
FROM SNMP-FRAMEWORK-MIB;
entityMIB MODULE-IDENTITY
LAST-UPDATED "200508100000Z"
ORGANIZATION "IETF ENTMIB Working Group"
CONTACT-INFO
" WG E-mail: entmib@ietf.org
Mailing list subscription info:
http://www.ietf.org/mailman/listinfo/entmib
Andy Bierman
ietf@andybierman.com
Keith McCloghrie
Cisco Systems Inc.
170 West Tasman Drive
San Jose, CA 95134
+1 408-526-5260
kzm@cisco.com"
DESCRIPTION
"The MIB module for representing multiple logical
entities supported by a single SNMP agent.
Copyright (C) The Internet Society (2005). This
version of this MIB module is part of RFC 4133; see
the RFC itself for full legal notices."
REVISION "200508100000Z"
DESCRIPTION
"Initial Version of Entity MIB (Version 3).
This revision obsoletes RFC 2737.
Additions:
- cpu(12) enumeration added to PhysicalClass TC
- DISPLAY-HINT clause to PhysicalIndex TC
- PhysicalIndexOrZero TC
- entPhysicalMfgDate object
- entPhysicalUris object
Changes:
- entPhysicalContainedIn SYNTAX changed from
INTEGER to PhysicalIndexOrZero
This version published as RFC 4133."
REVISION "199912070000Z"
DESCRIPTION
"Initial Version of Entity MIB (Version 2).
This revision obsoletes RFC 2037.
This version published as RFC 2737."
REVISION "199610310000Z"
DESCRIPTION
"Initial version (version 1), published as
RFC 2037."
::= { mib-2 47 }
entityMIBObjects OBJECT IDENTIFIER ::= { entityMIB 1 }
-- MIB contains four groups
entityPhysical OBJECT IDENTIFIER ::= { entityMIBObjects 1 }
entityLogical OBJECT IDENTIFIER ::= { entityMIBObjects 2 }
entityMapping OBJECT IDENTIFIER ::= { entityMIBObjects 3 }
entityGeneral OBJECT IDENTIFIER ::= { entityMIBObjects 4 }
-- Textual Conventions
PhysicalIndex ::= TEXTUAL-CONVENTION
DISPLAY-HINT "d"
STATUS current
DESCRIPTION
"An arbitrary value that uniquely identifies the physical
entity. The value should be a small, positive integer.
Index values for different physical entities are not
necessarily contiguous."
SYNTAX Integer32 (1..2147483647)
PhysicalIndexOrZero ::= TEXTUAL-CONVENTION
DISPLAY-HINT "d"
STATUS current
DESCRIPTION
"This textual convention is an extension of the
PhysicalIndex convention, which defines a greater than zero
value used to identify a physical entity. This extension
permits the additional value of zero. The semantics of the
value zero are object-specific and must, therefore, be
defined as part of the description of any object that uses
this syntax. Examples of the usage of this extension are
situations where none or all physical entities need to be
referenced."
SYNTAX Integer32 (0..2147483647)
PhysicalClass ::= TEXTUAL-CONVENTION
STATUS current
DESCRIPTION
"An enumerated value which provides an indication of the
general hardware type of a particular physical entity.
There are no restrictions as to the number of
entPhysicalEntries of each entPhysicalClass, which must be
instantiated by an agent.
The enumeration ’other’ is applicable if the physical entity
class is known, but does not match any of the supported
values.
The enumeration ’unknown’ is applicable if the physical
entity class is unknown to the agent.
The enumeration ’chassis’ is applicable if the physical
entity class is an overall container for networking
equipment. Any class of physical entity, except a stack,
may be contained within a chassis; and a chassis may only
be contained within a stack.
The enumeration ’backplane’ is applicable if the physical
entity class is some sort of device for aggregating and
forwarding networking traffic, such as a shared backplane in
a modular ethernet switch. Note that an agent may model a
backplane as a single physical entity, which is actually
implemented as multiple discrete physical components (within
a chassis or stack).
The enumeration ’container’ is applicable if the physical
entity class is capable of containing one or more removable
physical entities, possibly of different types. For
example, each (empty or full) slot in a chassis will be
modeled as a container. Note that all removable physical
entities should be modeled within a container entity, such
as field-replaceable modules, fans, or power supplies. Note
that all known containers should be modeled by the agent,
including empty containers.
The enumeration ’powerSupply’ is applicable if the physical
entity class is a power-supplying component.
The enumeration ’fan’ is applicable if the physical entity
class is a fan or other heat-reduction component.
The enumeration ’sensor’ is applicable if the physical
entity class is some sort of sensor, such as a temperature
sensor within a router chassis.
The enumeration ’module’ is applicable if the physical
entity class is some sort of self-contained sub-system. If
the enumeration ’module’ is removable, then it should be
modeled within a container entity, otherwise it should be
modeled directly within another physical entity (e.g., a
chassis or another module).
The enumeration ’port’ is applicable if the physical entity
class is some sort of networking port, capable of receiving
and/or transmitting networking traffic.
The enumeration ’stack’ is applicable if the physical entity
class is some sort of super-container (possibly virtual),
intended to group together multiple chassis entities. A
stack may be realized by a ’virtual’ cable, a real
interconnect cable, attached to multiple chassis, or may in
fact be comprised of multiple interconnect cables. A stack
should not be modeled within any other physical entities,
but a stack may be contained within another stack. Only
chassis entities should be contained within a stack.
The enumeration ’cpu’ is applicable if the physical entity
class is some sort of central processing unit."
SYNTAX INTEGER {
other(1),
unknown(2),
chassis(3),
backplane(4),
container(5), -- e.g., chassis slot or daughter-card holder
powerSupply(6),
fan(7),
sensor(8),
module(9), -- e.g., plug-in card or daughter-card
port(10),
stack(11), -- e.g., stack of multiple chassis entities
cpu(12)
}
SnmpEngineIdOrNone ::= TEXTUAL-CONVENTION
STATUS current
DESCRIPTION
"A specially formatted SnmpEngineID string for use with the
Entity MIB.
If an instance of an object of SYNTAX SnmpEngineIdOrNone has
a non-zero length, then the object encoding and semantics
are defined by the SnmpEngineID textual convention (see STD
62, RFC 3411 [RFC3411]).
If an instance of an object of SYNTAX SnmpEngineIdOrNone
contains a zero-length string, then no appropriate
SnmpEngineID is associated with the logical entity (i.e.,
SNMPv3 is not supported)."
SYNTAX OCTET STRING (SIZE(0..32)) -- empty string or SnmpEngineID
-- The Physical Entity Table
entPhysicalTable OBJECT-TYPE
SYNTAX SEQUENCE OF EntPhysicalEntry
MAX-ACCESS not-accessible
STATUS current
DESCRIPTION
"This table contains one row per physical entity. There is
always at least one row for an ’overall’ physical entity."
::= { entityPhysical 1 }
entPhysicalEntry OBJECT-TYPE
SYNTAX EntPhysicalEntry
MAX-ACCESS not-accessible
STATUS current
DESCRIPTION
"Information about a particular physical entity.
Each entry provides objects (entPhysicalDescr,
entPhysicalVendorType, and entPhysicalClass) to help an NMS
identify and characterize the entry, and objects
(entPhysicalContainedIn and entPhysicalParentRelPos) to help
an NMS relate the particular entry to other entries in this
table."
INDEX { entPhysicalIndex }
::= { entPhysicalTable 1 }
EntPhysicalEntry ::= SEQUENCE {
entPhysicalIndex PhysicalIndex,
entPhysicalDescr SnmpAdminString,
entPhysicalVendorType AutonomousType,
entPhysicalContainedIn PhysicalIndexOrZero,
entPhysicalClass PhysicalClass,
entPhysicalParentRelPos Integer32,
entPhysicalName SnmpAdminString,
entPhysicalHardwareRev SnmpAdminString,
entPhysicalFirmwareRev SnmpAdminString,
entPhysicalSoftwareRev SnmpAdminString,
entPhysicalSerialNum SnmpAdminString,
entPhysicalMfgName SnmpAdminString,
entPhysicalModelName SnmpAdminString,
entPhysicalAlias SnmpAdminString,
entPhysicalAssetID SnmpAdminString,
entPhysicalIsFRU TruthValue,
entPhysicalMfgDate DateAndTime,
entPhysicalUris OCTET STRING
}
entPhysicalIndex OBJECT-TYPE
SYNTAX PhysicalIndex
MAX-ACCESS not-accessible
STATUS current
DESCRIPTION
"The index for this entry."
::= { entPhysicalEntry 1 }
entPhysicalDescr OBJECT-TYPE
SYNTAX SnmpAdminString
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"A textual description of physical entity. This object
should contain a string that identifies the manufacturer’s
name for the physical entity, and should be set to a
distinct value for each version or model of the physical
entity."
::= { entPhysicalEntry 2 }
entPhysicalVendorType OBJECT-TYPE
SYNTAX AutonomousType
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"An indication of the vendor-specific hardware type of the
physical entity. Note that this is different from the
definition of MIB-II’s sysObjectID.
An agent should set this object to an enterprise-specific
registration identifier value indicating the specific
equipment type in detail. The associated instance of
entPhysicalClass is used to indicate the general type of
hardware device.
If no vendor-specific registration identifier exists for
this physical entity, or the value is unknown by this agent,
then the value { 0 0 } is returned."
::= { entPhysicalEntry 3 }
entPhysicalContainedIn OBJECT-TYPE
SYNTAX PhysicalIndexOrZero
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"The value of entPhysicalIndex for the physical entity which
’contains’ this physical entity. A value of zero indicates
this physical entity is not contained in any other physical
entity. Note that the set of ’containment’ relationships
define a strict hierarchy; that is, recursion is not
allowed.
In the event that a physical entity is contained by more
than one physical entity (e.g., double-wide modules), this
object should identify the containing entity with the lowest
value of entPhysicalIndex."
::= { entPhysicalEntry 4 }
entPhysicalClass OBJECT-TYPE
SYNTAX PhysicalClass
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"An indication of the general hardware type of the physical
entity.
An agent should set this object to the standard enumeration
value that most accurately indicates the general class of
the physical entity, or the primary class if there is more
than one entity.
If no appropriate standard registration identifier exists
for this physical entity, then the value ’other(1)’ is
returned. If the value is unknown by this agent, then the
value ’unknown(2)’ is returned."
::= { entPhysicalEntry 5 }
entPhysicalParentRelPos OBJECT-TYPE
SYNTAX Integer32 (-1..2147483647)
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"An indication of the relative position of this ’child’
component among all its ’sibling’ components. Sibling
components are defined as entPhysicalEntries that share the
same instance values of each of the entPhysicalContainedIn
and entPhysicalClass objects.
An NMS can use this object to identify the relative ordering
for all sibling components of a particular parent
(identified by the entPhysicalContainedIn instance in each
sibling entry).
If possible, this value should match any external labeling
of the physical component. For example, for a container
(e.g., card slot) labeled as ’slot #3’,
entPhysicalParentRelPos should have the value ’3’. Note
that the entPhysicalEntry for the module plugged in slot 3
should have an entPhysicalParentRelPos value of ’1’.
If the physical position of this component does not match
any external numbering or clearly visible ordering, then
user documentation or other external reference material
should be used to determine the parent-relative position.
If this is not possible, then the agent should assign a
consistent (but possibly arbitrary) ordering to a given set
of ’sibling’ components, perhaps based on internal
representation of the components.
If the agent cannot determine the parent-relative position
for some reason, or if the associated value of
entPhysicalContainedIn is ’0’, then the value ’-1’ is
returned. Otherwise, a non-negative integer is returned,
indicating the parent-relative position of this physical
entity.
Parent-relative ordering normally starts from ’1’ and
continues to ’N’, where ’N’ represents the highest
positioned child entity. However, if the physical entities
(e.g., slots) are labeled from a starting position of zero,
then the first sibling should be associated with an
entPhysicalParentRelPos value of ’0’. Note that this
ordering may be sparse or dense, depending on agent
implementation.
The actual values returned are not globally meaningful, as
each ’parent’ component may use different numbering
algorithms. The ordering is only meaningful among siblings
of the same parent component.
The agent should retain parent-relative position values
across reboots, either through algorithmic assignment or use
of non-volatile storage."
::= { entPhysicalEntry 6 }
entPhysicalName OBJECT-TYPE
SYNTAX SnmpAdminString
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"The textual name of the physical entity. The value of this
object should be the name of the component as assigned by
the local device and should be suitable for use in commands
entered at the device’s `console’. This might be a text
name (e.g., `console’) or a simple component number (e.g.,
port or module number, such as `1’), depending on the
physical component naming syntax of the device.
If there is no local name, or if this object is otherwise