rfc-4133

Entity MIB (Version 3)

A. Bierman, K. McCloghrie
date2005-08 streamIETF areaops wgentmib statusPROPOSED STANDARD pages62 canonicalhttps://www.rfc-editor.org/rfc/rfc4133 doi10.17487/RFC4133 errataview
This memo defines a portion of the Management Information Base (MIB) for use with network management protocols in the Internet community. In particular, it describes managed objects used for managing multiple logical and physical entities managed by a single SNMP agent. This document specifies version 3 of the Entity MIB, which obsoletes version 2 (RFC 2737). [STANDARDS-TRACK]

obsoleted by

obsoletes

Extracted elements (26)

design-rationale §2.10

The entityLogical group and entLPMappingTable/entAliasMappingTable are optional for agents that represent all MIB objects within a single naming scope. This conscious scoping decision limits the MIB's complexity; most objects have read-only MAX-ACCESS to keep the scope narrow.

snmp

design-rationale §3

The entLPMappingTable is designed to include only meaningful, non-redundant mappings. Agents should identify only the most appropriate physical component closest to the root of a containment tree, avoiding redundant child-level mappings that are already derivable from the entPhysicalContainedIn hierarchy.

snmp

design-rationale §2.12.1

The entPhysicalUris object was added in version 3 to support Common Language Equipment Identifier (CLEI) URNs and other persistent resource identifiers. URNs (RFC 3406) are preferred because they provide location-independent, long-lived identification; the URI format must conform to RFC 3986 section 2.

snmp

interoperability-note §2.9

Multiple instances of the Entity MIB from different agents in the same managed system are not required to be equivalent or consistent. Index values and vendor-specific identifiers are likely to differ between agents, and each agent may manage different subsets of the chassis.

snmp

interoperability-note §3

The entLogicalCommunity object is deprecated in version 2 and beyond. SNMPv3 agents may return a zero-length string or may continue to return a community string for tri-lingual agent support. Agents SHOULD use entLogicalContextEngineID and entLogicalContextName for SNMPv3 contexts.

snmp

interoperability-note §2.11

The syntax of entPhysicalDescr, entPhysicalName, and entLogicalDescr was changed from DisplayString to SnmpAdminString in version 2. The working group chose to update the existing objects rather than deprecate and replace them, despite this not being strictly supported by SMIv2, to minimize adverse impact on backward compatibility.

snmp

normative-requirement §3 MUST NOT

An agent MUST NOT return a community string in entLogicalCommunity that allows more privileges than the community string used to access the object. Agents implementing SNMPv3 access SHOULD use entLogicalContextEngineID and entLogicalContextName instead; entLogicalCommunity is deprecated.

snmp, security

normative-requirement §3 SHOULD NOT

An agent SHOULD NOT generate more than one entConfigChange notification-event in a given five-second throttling interval. If additional changes occur within the throttling period, those notification-events should be suppressed until the period expires, after which one event is sent if any changes occurred.

snmp

normative-requirement §3 MUST

If write access is implemented for entPhysicalSerialNum or entPhysicalAlias, the agent MUST retain the supplied value for as long as that physical entity remains instantiated, including across all re-initializations and reboots, even if the entity's entPhysicalIndex value changes.

snmp

normative-requirement §3 MUST

Only entPhysicalIndex values that represent physical ports (entPhysicalClass = 'port(10)') are permitted to exist in the entAliasMappingTable.

snmp

normative-requirement §2.12.1 MUST

The entPhysicalTable must always contain at least one row for an 'overall' physical entity. For an agent representing a fully-modular device, the top-level entry should have entPhysicalClass 'chassis(3)'; for a module-only agent, it should be 'module(9)'.

snmp

protocol-element §3

entPhysicalMfgDate (DateAndTime syntax, read-only) records the manufacturing date of a physical entity. If unknown or unsupported, the object is not instantiated or the special value '0000000000000000'H is returned. Added in version 3.

snmp

protocol-element §3

entPhysicalUris (OCTET STRING, read-write) carries one or more URIs conforming to RFC 3986 section 2, separated by whitespace, providing additional identification information such as CLEI URNs. If not supported or unknown, the object is not instantiated or a zero-length string is returned. Added in version 3.

snmp

protocol-element §3

The entAliasMappingTable maps (entPhysicalIndex, entAliasLogicalIndexOrZero) pairs to external MIB identifiers (RowPointer). Only physical port entries (entPhysicalClass = 'port(10)') are permitted. A zero value for entAliasLogicalIndexOrZero acts as a wildcard for all unspecified logical entities; non-zero entries take precedence.

snmp

protocol-element §3

The entConfigChange notification is generated when entLastChangeTime changes, allowing an NMS to trigger table maintenance polls. The agent SHOULD NOT generate more than one notification-event per five-second throttling period; changes within the throttling period are suppressed until the period expires.

snmp

protocol-element §3

The entLastChangeTime scalar holds the sysUpTime value at the last time any conceptual row was created, modified, or deleted in entPhysicalTable, entLogicalTable, entLPMappingTable, entAliasMappingTable, or entPhysicalContainsTable.

snmp

protocol-element §2.12.2

The entLogicalTable contains one row per logical entity. It must be implemented when the agent represents multiple logical entities; agents with a single naming scope may omit it. Each row includes entLogicalContextEngineID and entLogicalContextName for SNMPv3 context identification.

snmp

protocol-element §3

The entPhysicalContainedIn object holds the entPhysicalIndex of the containing physical entity, or zero if not contained. The containment relationships define a strict hierarchy with no recursion allowed; for double-wide modules, the containing entity with the lowest entPhysicalIndex value is used.

snmp

protocol-element §3

The entPhysicalContainsTable exposes container/containee relationships directly by indexing on (entPhysicalIndex, entPhysicalChildIndex), allowing an NMS to quickly discover all children of a given physical entity. It also captures additional containment mappings (e.g., double-wide modules) that cannot be represented in the virtual containment tree.

snmp

protocol-element §2.12.1

The entPhysicalTable contains one row per physical entity and must always contain at least one row for an 'overall' physical entity with entPhysicalClass value of 'stack(11)', 'chassis(3)', or 'module(9)'. Each row is indexed by an arbitrary small integer (PhysicalIndex, range 1..2147483647).

snmp, registry

protocol-element §3

The PhysicalClass textual convention enumerates 12 hardware types: other(1), unknown(2), chassis(3), backplane(4), container(5), powerSupply(6), fan(7), sensor(8), module(9), port(10), stack(11), and cpu(12). The cpu(12) enumeration was added in version 3.

snmp, registry

protocol-element §3

The PhysicalIndexOrZero textual convention extends PhysicalIndex (Integer32 1..2147483647) to allow the value zero, whose semantics are object-specific. It was introduced in version 3 and is also used by entPhysicalContainedIn to indicate no containment.

snmp

protocol-element §3

The SnmpEngineIdOrNone textual convention is an OCTET STRING (SIZE 0..32): a non-zero-length value encodes an SnmpEngineID per RFC 3411, while a zero-length string indicates that SNMPv3 is not supported for the logical entity.

snmp

registry §6

This document updates the IANA-managed MIB-2 subtree by assigning entityMIB to { mib-2 47 }. The Entity MIB module OID is registered under the IETF-managed mib-2 branch as defined by IANA.

snmp, registry

security-consideration §5

Several objects have read-write MAX-ACCESS (entPhysicalSerialNum, entPhysicalAlias, entPhysicalAssetID, entPhysicalUris). Unauthorized write access could disrupt network management by corrupting physical entity identification. Implementations should use SNMPv3 with appropriate access controls (USM/VACM) to restrict write access.

snmp, security

security-consideration §5

The entLogicalCommunity object exposes community strings, which are effectively cleartext passwords. An agent must not return a community string with greater privileges than those of the requesting community. SNMPv3 implementations should use entLogicalContextEngineID/entLogicalContextName and may return a zero-length string for entLogicalCommunity.

snmp, security