Skip to main content

Entity MIB using SMIv2
draft-ietf-entmib-entmib-06

The information below is for an old version of the document that is already published as an RFC.
Document Type
This is an older version of an Internet-Draft that was ultimately published as RFC 2037.
Authors Andy Bierman , Keith McCloghrie
Last updated 2013-03-02 (Latest revision 1996-07-02)
RFC stream Internet Engineering Task Force (IETF)
Intended RFC status (None)
Formats
Additional resources Mailing list discussion
Stream WG state (None)
Document shepherd (None)
IESG IESG state Became RFC 2037 (Proposed Standard)
Consensus boilerplate Unknown
Telechat date (None)
Responsible AD (None)
Send notices to (None)
draft-ietf-entmib-entmib-06
<draft-ietf-entmib-entmib-06.txt>
                               Entity MIB

                              18 June 1996

                            Keith McCloghrie
                           Cisco Systems Inc.
                             kzm@cisco.com

                              Andy Bierman
                           Cisco Systems Inc.
                           abierman@cisco.com

                          Status of this Memo

This document is an Internet-Draft.  Internet-Drafts are working
documents of the Internet Engineering Task Force (IETF), its areas, and
its working groups.  Note that other groups may also distribute working
documents as Internet-Drafts.

Internet-Drafts are draft documents valid for a maximum of six months
and may be updated, replaced, or obsoleted by other documents at any
time.  It is inappropriate to use Internet- Drafts as reference material
or to cite them other than as ``work in progress.''

To learn the current status of any Internet-Draft, please check the
``1id-abstracts.txt'' listing contained in the Internet- Drafts Shadow
Directories on ds.internic.net (US East Coast), nic.nordu.net (Europe),
ftp.isi.edu (US West Coast), or munnari.oz.au (Pacific Rim).




Draft                          Entity MIB                      June 1996

1.  Introduction

This memo defines an experimental 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.

McCloghrie/Bierman     Expires December 18, 1996                [Page 2]



Draft                          Entity MIB                      June 1996

2.  The SNMP Network Management Framework

The SNMP Network Management Framework presently consists of three major
components.  They are:

o    the SMI, described in RFC 1902 [1], - the mechanisms used for
     describing and naming objects for the purpose of management.

o    the MIB-II, STD 17, RFC 1213 [2], - the core set of managed objects
     for the Internet suite of protocols.

o    the protocol, RFC 1157 [6] and/or RFC 1905 [4], - the protocol for
     accessing managed information.

Textual conventions are defined in RFC 1903 [3], and conformance
statements are defined in RFC 1904 [5].

The Framework permits new objects to be defined for the purpose of
experimentation and evaluation.

This memo specifies a MIB module that is compliant to the SNMPv2 SMI.  A
semantically identical MIB conforming to the SNMPv1 SMI can be produced
through the appropriate translation.

2.1.  Object Definitions

Managed objects are accessed via a virtual information store, termed the
Management Information Base or MIB.  Objects in the MIB are defined
using the subset of Abstract Syntax Notation One (ASN.1) defined in the
SMI.  In particular, each object type is named by an OBJECT IDENTIFIER,
an administratively assigned name.  The object type together with an
object instance serves to uniquely identify a specific instantiation of
the object.  For human convenience, we often use a textual string,
termed the descriptor, to refer to the object type.

McCloghrie/Bierman     Expires December 18, 1996                [Page 3]



Draft                          Entity MIB                      June 1996

3.  Overview

There is a need for a standardized way of representing a single agent
which supports multiple instances of one MIB.  This is presently true
for at least 3 standard MIBs, and is likely to become true for more and
more MIBs as time passes.  For example:

   - multiple instances of a bridge supported within a single device
     having a single agent;

   - multiple repeaters supported by a single agent;

   - multiple OSPF backbone areas, each one operating as part of its own
     Autonomous System, and each identified by the same area-id (e.g.,
     0.0.0.0), supported inside a single router with one agent.

The fact that it is a single agent in each of these cases implies there
is some relationship which binds all of these entities together.
Effectively, there is some "overall" physical entity which houses the
sum of the things managed by that one agent, i.e., there are multiple
"logical" entities within a single physical entity.  Sometimes, the
overall physical entity contains multiple (smaller) physical entities
and each logical entity is associated with a particular physical entity.
Sometimes, the overall physical entity is a "compound" of multiple
physical entities (e.g., a stack of stackable hubs).

What is needed is a way to determine exactly what logical entities are
managed by the agent (either by SNMPv1 or SNMPv2), and thereby to be
able to communicate with the agent about a particular logical entity.
When different logical entities are associated with different physical
entities within the overall physical entity, it is also useful to be
able to use this information to distinguish between logical entities.

In these situations, there is no need for varbinds for multiple logical
entities to be referenced in the same SNMP message (although that might
be useful in the future).  Rather, it is sufficient, and in some
situations preferable, to have the context/community in the message
identify the logical entity to which the varbinds apply.

3.1.  Terms

Some new terms are used throughout this document:

McCloghrie/Bierman     Expires December 18, 1996                [Page 4]



Draft                          Entity MIB                      June 1996

   - Naming Scope
     A "naming scope" represents the set of information that may be
     potentially accessed through a single SNMP operation. All instances
     within the naming scope share the same unique identifier space. For
     SNMPv1, a naming scope is identified by the value of the associated
     'entLogicalCommunity' instance.

   - Multi-Scoped Object
     A MIB object, for which identical instance values identify
     different managed information in different naming scopes, is called
     a "multi-scoped" MIB object.

   - Single-Scoped Object
     A MIB object, for which identical instance values identify the same
     managed information in different naming scopes, is called a
     "single-scoped" MIB object.

   - Logical Entity
     A managed system contains one or more logical entities, each
     represented by at most one instantiation of each of a particular
     set of MIB objects. A set of management functions is associated
     with each logical entity. Examples of logical entities include
     routers, bridges, print-servers, etc.

   - Physical Entity
     A "physical entity" or "physical component" represents an
     identifiable physical resource within a managed system. Zero or
     more logical entities may utilize a physical resource at any given
     time. It is an implementation-specific manner as to which physical
     components are represented by an agent in the EntPhysicalTable.
     Typically, physical resources (e.g. communications ports,
     backplanes, sensors, daughter-cards, power supplies, the overall
     chassis) which can be managed via functions associated with one or
     more logical entities are included in the MIB.

   - Containment Tree
     Each physical component may optionally be modeled as 'contained'
     within another physical component. A "containment-tree" is the
     conceptual sequence of entPhysicalIndex values which uniquely
     specifies the exact physical location of a physical component
     within the managed system. It is generated by 'following and
     recording' each 'entPhysicalContainedIn' instance 'up the tree
     towards the root', until a value of zero indicating no further
     containment is found.

McCloghrie/Bierman     Expires December 18, 1996                [Page 5]



Draft                          Entity MIB                      June 1996

     Note that chassis slots, which are capable of accepting one or more
     module types from one or more vendors, are modeled as containers in
     this MIB. The value of entPhysicalContainedIn for a particular
     'module' entity (entPhysicalClass value of 'module(9)') must be
     equal to an entPhysicalIndex that represents the parent 'container'
     entity (associated entPhysicalClass value of ('container(5)'). An
     agent must represent both empty and full containers in the
     entPhysicalTable.

3.2.  Relationship to Community Strings

For community-based SNMP, distinguishing between different logical
entities is one (but not the only) purpose of the community string [6].
This is accommodated by representing each community string as a logical
entity.

Note that different logical entities may share the same naming scope
(and therefore the same values of entLogicalCommunity). This is
possible, providing they have no need for the same instance of a MIB
object to represent different managed information.

3.3.  Relationship to Proxy Mechanisms

The Entity MIB is designed to allow functional component discovery.  The
administrative relationships between different logical entities are not
visible in any Entity MIB tables. An NMS cannot determine whether MIB
instances in different naming scopes are realized locally or remotely
(e.g. via some proxy mechanism) by examining any particular Entity MIB
objects.

The management of administrative framework functions is not an explicit
goal of the Entity MIB WG at this time. This new area of functionality
may be revisited after some operational experience with the Entity MIB
is gained.

Note that a network administrator will likely be able to associate
community strings with naming scopes with proprietary mechanisms, as a
matter of configuration. There are no mechanisms for managing naming
scopes defined in this MIB.

McCloghrie/Bierman     Expires December 18, 1996                [Page 6]



Draft                          Entity MIB                      June 1996

3.4.  Relationship to a Chassis MIB

Some readers may recall that a previous IETF working group attempted to
define a Chassis MIB.  No consensus was reached by that working group,
possibly because its scope was too broad.  As such, it is not the
purpose of this MIB to be a "Chassis MIB replacement", nor is it within
the scope of this MIB to contain all the information which might be
necessary to manage a "chassis".  On the other hand, the entities
represented by an implementation of this MIB might well be contained in
a chassis.

3.5.  Relationship to the Interfaces MIB

The Entity MIB contains a mapping table identifying physical components
that have 'external values' (e.g. ifIndex) associated with them within a
given naming scope.  This table can be used to identify the physical
location of each interface in the ifTable [7]. Since ifIndex values in
different contexts are not related to one another, the interface to
physical component associations are relative to the same logical entity
within the agent.

The Entity MIB also contains an 'entPhysicalName' object, which
approximates the semantics of the ifName object from the Interfaces MIB
[7] for all types of physical components.

3.6.  Relationship to the Other MIBs

The Entity MIB contains a mapping table identifying physical components
that have identifiers from other standard MIBs associated with them.
For example, this table can be used along with the physical mapping
table to identify the physical location of each repeater port in the
rptrPortTable, or each interface in the ifTable.

3.7.  Relationship to Naming Scopes

There is some question as to which MIB objects may be returned within a
given naming scope. MIB objects which are not multi-scoped within a
managed system are likely to ignore context information in
implementation. In such a case, it is likely such objects will be
returned in all naming scopes (e.g. not just the 'main' naming scope).

For example, a community string used to access the management

McCloghrie/Bierman     Expires December 18, 1996                [Page 7]



Draft                          Entity MIB                      June 1996

information for logical device 'bridge2' may allow access to all the
non-bridge related objects in the 'main' naming scope, as well as a
second instance of the Bridge MIB.

It is an implementation-specific matter as to the isolation of single-
scoped MIB objects by the agent. An agent may wish to limit the objects
returned in a particular naming scope to just the multi-scoped objects
in that naming scope (e.g. system group and the Bridge MIB).  In this
case, all single-scoped management information would belong to a common
naming scope (e.g. 'main'), which itself may contain some multi-scoped
objects (e.g. system group).

3.8.  Multiple Instances of the Entity MIB

It is possible that more than one agent exists in a managed system, and
in such cases, multiple instances of the Entity MIB (representing the
same managed objects) may be available to an NMS.

In order to reduce complexity for agent implementation, multiple
instances of the Entity MIB are not required to be equivalent or even
consistent. An NMS may be able to 'align' instances returned by
different agents by examining the columns of each table, but vendor-
specific identifiers and (especially) index values are likely to be
different. Each agent may be managing different subsets of the entire
chassis as well.

When all of a physically-modular device is represented by a single
agent, the entry for which entPhysicalContainedIn has the value zero
would likely have 'chassis' as the value of its entPhysicalClass;
alternatively, for an agent on a module where the agent represents only
the physical entities on that module (not those on other modules), the
entry for which entPhysicalContainedIn has the value zero would likely
have 'module' as the value of its entPhysicalClass.

An agent implementation of the entLogicalTable is not required to
contain information about logical entities managed primarily by other
agents. That is, the entLogicalTAddress and entLogicalTDomain objects in
the entLogicalTable are provided to support an historical multiplexing
mechanism, not to identify other SNMP agents.

Note that the Entity MIB is a single-scoped MIB, in the event an agent
represents the MIB in different naming scopes.

McCloghrie/Bierman     Expires December 18, 1996                [Page 8]



Draft                          Entity MIB                      June 1996

3.9.  Re-Configuration of Entities

All the MIB objects defined in this MIB have at most a read-only MAX-
ACCESS clause, i.e., none are write-able.  This is a conscious decision
by the working group to limit this MIB's scope.  It is possible that
this restriction could be lifted after implementation experience, by
means of additional tables (using the AUGMENTS clause) for configuration
and extended entity information.

3.10.  MIB Structure

The Entity MIB contains five conformance groups:

  - entityPhysical group
     Describes the physical entities managed by a single agent.

  - entityLogical group
     Describes the logical entities managed by a single agent.

  - entityMapping group
     Describes the associations between the physical entities, logical
     entities, interfaces, and non-interface ports managed by a single
     agent.

  -entityGeneral group
     Describes general system attributes shared by potentially all types
     of entities managed by a single agent.

  -entityNotifications group
     Contains status indication notifications.

3.10.1.  entityPhysical Group

This group contains a single table to identify physical system
components, called the entPhysicalTable.

The entPhysicalTable contains one row per physical entity, and must
always contains at least one row for an "overall" physical entity.  Each
row is indexed by an arbitrary, small integer, and contains a
description and type of the physical entity.  It also optionally
contains the index number of another entPhysicalEntry indicating a
containment relationship between the two.

McCloghrie/Bierman     Expires December 18, 1996                [Page 9]



Draft                          Entity MIB                      June 1996

3.10.2.  entityLogical Group

This group contains a single table to identify logical entities, called
the entLogicalTable.

The entLogicalTable contains one row per logical entity.  Each row is
indexed by an arbitrary, small integer and contains a name, description,
and type of the logical entity. It also contains information to allow
SNMPv1 or SNMPv2C [9] access to the MIB information for the logical
entity.

3.10.3.  entityMapping Group

This group contains a three tables to identify associations between
different system components.

The entLPMappingTable contains mappings between entLogicalIndex values
(logical entities) and entPhysicalIndex values (the physical components
supporting that entity). A logical entity can map to more than one
physical component, and more than one logical entity can map to (share)
the same physical component.

The entAliasMappingTable contains mappings between entLogicalIndex,
entPhysicalIndex pairs and 'alias' object identifier values.  This
allows resources managed with other MIBs (e.g. repeater ports, bridge
ports, physical and logical interfaces) to be identified in the physical
entity hierarchy. Note that each alias identifier is only relevant in a
particular naming scope.

The entPhysicalContainsTable contains simple mappings between
'entPhysicalContainedIn' values for each container/containee
relationship in the managed system. The indexing of this table allows an
NMS to quickly discover the 'entPhysicalIndex' values for all children
of a given physical entity.

3.10.4.  entityGeneral Group

This group contains general information relating to the other object
groups.

McCloghrie/Bierman     Expires December 18, 1996               [Page 10]



Draft                          Entity MIB                      June 1996

At this time, the entGeneral group contains a single scalar object
(entLastChangeTime), which represents the value of sysUptime when any
part of the system configuration last changed.

3.10.5.  entityNotifications Group

This group contains notification definitions relating to the overall
status of the Entity MIB instantiation.

3.11.  Multiple Agents

Even though a primary motivation for this MIB is to represent the
multiple logical entities supported by a single agent, it is also
possible to use it 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 which should be expected for agent implementations.
Therefore, multiple agents within the same managed system are free to
implement the Entity MIB independently.  (Refer the section on "Multiple
Instances of the Entity MIB" for more details).

McCloghrie/Bierman     Expires December 18, 1996               [Page 11]



Draft                          Entity MIB                      June 1996

4.  Definitions

ENTITY-MIB DEFINITIONS ::= BEGIN

IMPORTS
    MODULE-IDENTITY, OBJECT-TYPE,
    experimental, NOTIFICATION-TYPE
        FROM SNMPv2-SMI
    TDomain, TAddress, DisplayString, TEXTUAL-CONVENTION,
    AutonomousType, RowPointer, TimeStamp
        FROM SNMPv2-TC
    MODULE-COMPLIANCE, OBJECT-GROUP
        FROM SNMPv2-CONF;

entityMIB MODULE-IDENTITY
    LAST-UPDATED "9605160000Z"
    ORGANIZATION "IETF ENTMIB Working Group"
    CONTACT-INFO
            "        WG E-mail: entmib@cisco.com
                     Subscribe: majordomo@cisco.com
                                msg body: subscribe entmib

                     Keith McCloghrie
                     ENTMIB Working Group Chair
                     Cisco Systems Inc.
                     170 West Tasman Drive
                     San Jose, CA 95134
                     408-526-5260
                     kzm@cisco.com

                     Andy Bierman
                     ENTMIB Working Group Editor
                     Cisco Systems Inc.
                     170 West Tasman Drive
                     San Jose, CA 95134
                     408-527-3711
                     abierman@cisco.com"
    DESCRIPTION
            "The MIB module for representing multiple logical
            entities supported by a single SNMP agent."
    ::= { experimental xx }

entityMIBObjects OBJECT IDENTIFIER ::= { entityMIB 1 }

-- MIB contains four groups

McCloghrie/Bierman     Expires December 18, 1996               [Page 12]



Draft                          Entity MIB                      June 1996

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
    STATUS          current
    DESCRIPTION
            "An arbitrary value which uniquely identifies the physical
            entity.  The value is a small positive integer; index values
            for different physical entities are not necessarily
            contiguous."
    SYNTAX          INTEGER (1..2147483647)

PhysicalClass ::= TEXTUAL-CONVENTION
    STATUS          current
    DESCRIPTION
            "An enumerated value which provides an indication of the
            general hardware type of a particular physical entity."
    SYNTAX      INTEGER  {
        other(1),
        unknown(2),
        chassis(3),
        backplane(4),
        container(5),   -- e.g. slot or daughter-card holder
        powerSupply(6),
        fan(7),
        sensor(8),
        module(9),      -- e.g. plug-in card or daughter-card
        port(10)
    }

McCloghrie/Bierman     Expires December 18, 1996               [Page 13]



Draft                          Entity MIB                      June 1996

--           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          DisplayString,
      entPhysicalVendorType     AutonomousType,
      entPhysicalContainedIn    INTEGER,
      entPhysicalClass          PhysicalClass,
      entPhysicalParentRelPos   INTEGER,
      entPhysicalName           DisplayString
}

entPhysicalIndex    OBJECT-TYPE
    SYNTAX      PhysicalIndex
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
            "The index for this entry."
    ::= { entPhysicalEntry 1 }

McCloghrie/Bierman     Expires December 18, 1996               [Page 14]



Draft                          Entity MIB                      June 1996

entPhysicalDescr OBJECT-TYPE
    SYNTAX      DisplayString
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
            "A textual description of physical entity.  This object
            should contain a string which 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 a 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      INTEGER (0..2147483647)
    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."
    ::= { entPhysicalEntry 4 }

McCloghrie/Bierman     Expires December 18, 1996               [Page 15]



Draft                          Entity MIB                      June 1996

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 which most accurately indicates the general class of
            the physical entity, or the primary class if there is more
            than one.

            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      INTEGER (-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 which 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).

            This value should match any external labeling of the
            physical component if possible. For example, for a module
            labeled as 'card #3', entPhysicalParentRelPos should have
            the value '3'.

            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 the agent should assign a

McCloghrie/Bierman     Expires December 18, 1996               [Page 16]



Draft                          Entity MIB                      June 1996

            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 a
            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      DisplayString
    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, such as `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 this object is otherwise not

McCloghrie/Bierman     Expires December 18, 1996               [Page 17]



Draft                          Entity MIB                      June 1996

            applicable, then this object contains a zero-length string.

            Note that the value of entPhysicalName for two physical
            entities will be the same in the event that the console
            interface does not distinguish between them, e.g., slot-1
            and the card in slot-1."
    ::= { entPhysicalEntry 7 }

McCloghrie/Bierman     Expires December 18, 1996               [Page 18]



Draft                          Entity MIB                      June 1996

--           The Logical Entity Table
entLogicalTable OBJECT-TYPE
    SYNTAX      SEQUENCE OF EntLogicalEntry
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
            "This table contains one row per logical entity.  At least
            one entry must exist."
    ::= { entityLogical 1 }

entLogicalEntry       OBJECT-TYPE
    SYNTAX      EntLogicalEntry
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
            "Information about a particular logical entity.  Entities
            may be managed by this agent or other SNMP agents (possibly)
            in the same chassis."
    INDEX       { entLogicalIndex }
    ::= { entLogicalTable 1 }

EntLogicalEntry ::= SEQUENCE {
      entLogicalIndex            INTEGER,
      entLogicalDescr            DisplayString,
      entLogicalType             AutonomousType,
      entLogicalCommunity        OCTET STRING,
      entLogicalTAddress         TAddress,
      entLogicalTDomain          TDomain
}

entLogicalIndex OBJECT-TYPE
    SYNTAX      INTEGER (1..2147483647)
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
            "The value of this object uniquely identifies the logical
            entity. The value is a small positive integer; index values
            for different logical entities are are not necessarily
            contiguous."
    ::= { entLogicalEntry 1 }

entLogicalDescr OBJECT-TYPE
    SYNTAX      DisplayString
    MAX-ACCESS  read-only
    STATUS      current

McCloghrie/Bierman     Expires December 18, 1996               [Page 19]



Draft                          Entity MIB                      June 1996

    DESCRIPTION
            "A textual description of the logical entity.  This object
            should contain a string which identifies the manufacturer's
            name for the logical entity, and should be set to a distinct
            value for each version of the logical entity. "
    ::= { entLogicalEntry 2 }

entLogicalType OBJECT-TYPE
    SYNTAX      AutonomousType
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
            "An indication of the type of logical entity.  This will
            typically be the OBJECT IDENTIFIER name of the node in the
            SMI's naming hierarchy which represents the major MIB
            module, or the majority of the MIB modules, supported by the
            logical entity.  For example:
               a logical entity of a regular host/router -> mib-2
               a logical entity of a 802.1d bridge -> dot1dBridge
               a logical entity of a 802.3 repeater -> snmpDot3RptrMgmt
            If an appropriate node in the SMI's naming hierarchy cannot
            be identified, the value 'mib-2' should be used."
    ::= { entLogicalEntry 3 }

entLogicalCommunity OBJECT-TYPE
    SYNTAX      OCTET STRING (SIZE (1..255))
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
            "An SNMPv1 or SNMPv2C community-string which can be used to
            access detailed management information for this logical
            entity.  The agent should allow read access with this
            community string (to an appropriate subset of all managed
            objects) and may also choose to return a community string
            based on the privileges of the request used to read this
            object.  Note that an agent may choose to return a community
            string with read-only privileges, even if this object is
            accessed with a read-write community string. However, the
            agent must take care not to return a community string which
            allows more privileges than the community string used to
            access this object.

            A compliant SNMP agent may wish to conserve naming scopes by
            representing multiple logical entities in a single 'main'
            naming scope.  This is possible when the logical entities

McCloghrie/Bierman     Expires December 18, 1996               [Page 20]



Draft                          Entity MIB                      June 1996

            represented by the same value of entLogicalCommunity have no
            object instances in common.  For example, 'bridge1' and
            'repeater1' may be part of the main naming scope, but at
            least one additional community string is needed to represent
            'bridge2' and 'repeater2'.

            Logical entities 'bridge1' and 'repeater1' would be
            represented by sysOREntries associated with the 'main'
            naming scope.

            For agents not accessible via SNMPv1 or SNMPv2C, the value
            of this object is the empty-string."
    ::= { entLogicalEntry 4 }

entLogicalTAddress OBJECT-TYPE
    SYNTAX      TAddress
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
            "The transport service address by which the logical entity
            receives network management traffic, formatted according to
            the corresponding value of entLogicalTDomain.

            For snmpUDPDomain, a TAddress is 6 octets long, the initial
            4 octets containing the IP-address in network-byte order and
            the last 2 containing the UDP port in network-byte order.
            Consult 'Transport Mappings for Version 2 of the Simple
            Network Management Protocol' (RFC 1906 [8]) for further
            information on snmpUDPDomain."
    ::= { entLogicalEntry 5 }

entLogicalTDomain OBJECT-TYPE
    SYNTAX      TDomain
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
            "Indicates the kind of transport service by which the
            logical entity receives network management traffic.
            Possible values for this object are presently found in the
            Transport Mappings for SNMPv2 document (RFC 1906 [8])."
    ::= { entLogicalEntry 6 }

McCloghrie/Bierman     Expires December 18, 1996               [Page 21]



Draft                          Entity MIB                      June 1996

entLPMappingTable OBJECT-TYPE
    SYNTAX      SEQUENCE OF EntLPMappingEntry
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
            "This table contains zero or more rows of logical entity to
            physical equipment associations. For each logical entity
            known by this agent, there are zero or more mappings to the
            physical resources which are used to realize that logical
            entity.

            An agent should limit the number and nature of entries in
            this table such that only meaningful and non-redundant
            information is returned. For example, in a system which
            contains a single power supply, mappings between logical
            entities and the power supply are not useful and should not
            be included.

            Also, only the most appropriate physical component which is
            closest to the root of a particular containment tree should
            be identified in an entLPMapping entry.

            For example, suppose a bridge is realized on a particular
            module, and all ports on that module are ports on this
            bridge. A mapping between the bridge and the module would be
            useful, but additional mappings between the bridge and each
            of the ports on that module would be redundant (since the
            entPhysicalContainedIn hierarchy can provide the same
            information). If, on the other hand, more than one bridge
            was utilizing ports on this module, then mappings between
            each bridge and the ports it used would be appropriate.

            Also, in the case of a single backplane repeater, a mapping
            for the backplane to the single repeater entity is not
            necessary."
    ::= { entityMapping 1 }

entLPMappingEntry       OBJECT-TYPE
    SYNTAX      EntLPMappingEntry
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
            "Information about a particular logical entity to physical
            equipment association. Note that the nature of the
            association is not specifically identified in this entry. It

McCloghrie/Bierman     Expires December 18, 1996               [Page 22]



Draft                          Entity MIB                      June 1996

            is expected that sufficient information exists in the MIBs
            used to manage a particular logical entity to infer how
            physical component information is utilized."
    INDEX       { entLogicalIndex, entLPPhysicalIndex }
    ::= { entLPMappingTable 1 }

EntLPMappingEntry ::= SEQUENCE {
      entLPPhysicalIndex         PhysicalIndex
}

entLPPhysicalIndex OBJECT-TYPE
    SYNTAX      PhysicalIndex
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
            "The value of this object identifies the index value of a
            particular entPhysicalEntry associated with the indicated
            entLogicalEntity."
    ::= { entLPMappingEntry 1 }

McCloghrie/Bierman     Expires December 18, 1996               [Page 23]



Draft                          Entity MIB                      June 1996

-- logical entity/component to alias table
entAliasMappingTable OBJECT-TYPE
    SYNTAX      SEQUENCE OF EntAliasMappingEntry
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
            "This table contains zero or more rows, representing
            mappings of logical entity and physical component to
            external MIB identifiers.  Each physical port in the system
            may be associated with a mapping to an external identifier,
            which itself is associated with a particular logical
            entity's naming scope. A 'wildcard' mechanism is provided to
            indicate that an identifier is associated with more than one
            logical entity."
    ::= { entityMapping 2 }

entAliasMappingEntry       OBJECT-TYPE
    SYNTAX      EntAliasMappingEntry
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
            "Information about a particular physical equipment, logical
            entity to external identifier binding. Each logical
            entity/physical component pair may be associated with one
            alias mapping.  The logical entity index may also be used as
            a 'wildcard' (refer to the entAliasLogicalIndexOrZero object
            DESCRIPTION clause for details.)

            Note that only entPhysicalIndex values which represent
            physical ports (i.e. associated entPhysicalClass value is
            'port(10)') are permitted to exist in this table."
    INDEX { entPhysicalIndex, entAliasLogicalIndexOrZero }
    ::= { entAliasMappingTable 1 }

EntAliasMappingEntry ::= SEQUENCE {
      entAliasLogicalIndexOrZero        INTEGER,
      entAliasMappingIdentifier         RowPointer
}

entAliasLogicalIndexOrZero OBJECT-TYPE
    SYNTAX      INTEGER (0..2147483647)
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
            "The value of this object uniquely identifies the logical

McCloghrie/Bierman     Expires December 18, 1996               [Page 24]



Draft                          Entity MIB                      June 1996

            entity which defines the naming scope for the associated
            instance of the 'entAliasMappingIdentifier' object.

            If this object has a non-zero value, then it identifies the
            logical entity named by the same value of entLogicalIndex.

            If this object has a value of zero, then the mapping between
            the physical component and the alias identifier for this
            entAliasMapping entry is associated with all unspecified
            logical entities. That is, a value of zero (the default
            mapping) identifies any logical entity which does not have
            an explicit entry in this table for a particular
            entPhysicalIndex/entAliasMappingIdentifier pair.

            For example, to indicate that a particular interface (e.g.
            physical component 33) is identified by the same value of
            ifIndex for all logical entities, the following instance
            might exist:

                    entAliasMappingIdentifier.33.0 = ifIndex.5

            In the event an entPhysicalEntry is associated differently
            for some logical entities, additional entAliasMapping
            entries may exist, e.g.:

                    entAliasMappingIdentifier.33.0 = ifIndex.6
                    entAliasMappingIdentifier.33.4 =  ifIndex.1
                    entAliasMappingIdentifier.33.5 =  ifIndex.1
                    entAliasMappingIdentifier.33.10 = ifIndex.12

            Note that entries with non-zero entAliasLogicalIndexOrZero
            index values have precedence over any zero-indexed entry. In
            this example, all logical entities except 4, 5, and 10,
            associate physical entity 33 with ifIndex.6."
    ::= { entAliasMappingEntry 1 }

entAliasMappingIdentifier OBJECT-TYPE
    SYNTAX      RowPointer
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
            "The value of this object identifies a particular conceptual
            row associated with the indicated entPhysicalIndex and
            entLogicalIndex pair.

McCloghrie/Bierman     Expires December 18, 1996               [Page 25]



Draft                          Entity MIB                      June 1996

            Since only physical ports are modeled in this table, only
            entries which represent interfaces or ports are allowed.  If
            an ifEntry exists on behalf of a particular physical port,
            then this object should identify the associated 'ifEntry'.
            For repeater ports, the appropriate row in the
            'rptrPortGroupTable' should be identified instead.

            For example, suppose a physical port was represented by
            entPhysicalEntry.3, entLogicalEntry.15 existed for a
            repeater, and entLogicalEntry.22 existed for a bridge.  Then
            there might be two related instances of
            entAliasMappingIdentifier:
               entAliasMappingIdentifier.3.15 == rptrPortGroupIndex.5.2
               entAliasMappingIdentifier.3.22 == ifIndex.17
            It is possible that other mappings (besides interfaces and
            repeater ports) may be defined in the future, as required.

            Bridge ports are identified by examining the Bridge MIB and
            appropriate ifEntries associated with each 'dot1dBasePort',
            and are thus not represented in this table."
    ::= { entAliasMappingEntry 2 }

McCloghrie/Bierman     Expires December 18, 1996               [Page 26]



Draft                          Entity MIB                      June 1996

-- physical mapping table
entPhysicalContainsTable OBJECT-TYPE
    SYNTAX      SEQUENCE OF EntPhysicalContainsEntry
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
            "A table which exposes the container/containee relationships
            between physical entities. This table provides equivalent
            information found by constructing the virtual containment
            tree for a given entPhysicalTable but in a more direct
            format."
    ::= { entityMapping 3 }

entPhysicalContainsEntry OBJECT-TYPE
    SYNTAX      EntPhysicalContainsEntry
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
            "A single container/containee relationship."
    INDEX       { entPhysicalIndex, entPhysicalChildIndex }
    ::= { entPhysicalContainsTable 1 }

EntPhysicalContainsEntry ::= SEQUENCE {
      entPhysicalChildIndex     PhysicalIndex
}

entPhysicalChildIndex OBJECT-TYPE
    SYNTAX      PhysicalIndex
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
            "The value of entPhysicalIndex for the contained physical
            entity."
    ::= { entPhysicalContainsEntry 1 }

McCloghrie/Bierman     Expires December 18, 1996               [Page 27]



Draft                          Entity MIB                      June 1996

-- last change time stamp for the whole MIB
entLastChangeTime OBJECT-TYPE
    SYNTAX      TimeStamp
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
            "The value of sysUpTime at the time any of these events
            occur:
                * a conceptual row is created or deleted in any
                  of these tables:
                    - entPhysicalTable
                    - entLogicalTable
                    - entLPMappingTable
                    - entAliasMappingTable
                    - entPhysicalContainsTable

                * any instance in the following list of objects
                  changes value:
                    - entPhysicalDescr
                    - entPhysicalVendorType
                    - entPhysicalContainedIn
                    - entPhysicalClass
                    - entPhysicalParentRelPos
                    - entPhysicalName
                    - entLogicalDescr
                    - entLogicalType
                    - entLogicalCommunity
                    - entLogicalTAddress
                    - entLogicalTDomain
                    - entAliasMappingIdentifier "
    ::= { entityGeneral 1 }

McCloghrie/Bierman     Expires December 18, 1996               [Page 28]



Draft                          Entity MIB                      June 1996

-- Entity MIB Trap Definitions
entityMIBTraps      OBJECT IDENTIFIER ::= { entityMIB 2 }
entityMIBTrapPrefix OBJECT IDENTIFIER ::= { entityMIBTraps 0 }

entConfigChange NOTIFICATION-TYPE
    STATUS             current
    DESCRIPTION
            "An entConfigChange trap is sent when the value of
            entLastChangeTime changes. It can be utilized by an NMS to
            trigger logical/physical entity table maintenance polls.

            An agent must not generate more than one entConfigChange
            'trap-event' in a five second period, where a 'trap-event'
            is the transmission of a single trap PDU to a list of trap
            destinations.  If additional configuration changes occur
            within the five second 'throttling' period, then these
            trap-events should be suppressed by the agent. An NMS should
            periodically check the value of entLastChangeTime to detect
            any missed entConfigChange trap-events, e.g. due to
            throttling or transmission loss."
   ::= { entityMIBTrapPrefix 1 }

McCloghrie/Bierman     Expires December 18, 1996               [Page 29]



Draft                          Entity MIB                      June 1996

-- conformance information
entityConformance OBJECT IDENTIFIER ::= { entityMIB 3 }

entityCompliances OBJECT IDENTIFIER ::= { entityConformance 1 }
entityGroups      OBJECT IDENTIFIER ::= { entityConformance 2 }

-- compliance statements

entityCompliance MODULE-COMPLIANCE
    STATUS  current
    DESCRIPTION
            "The compliance statement for SNMP entities which implement
            the Entity MIB."
    MODULE  -- this module
        MANDATORY-GROUPS { entityPhysicalGroup,
                           entityLogicalGroup,
                           entityMappingGroup,
                           entityGeneralGroup,
                           entityNotificationsGroup }
    ::= { entityCompliances 1 }

-- MIB groupings

entityPhysicalGroup    OBJECT-GROUP
    OBJECTS {
              entPhysicalDescr,
              entPhysicalVendorType,
              entPhysicalContainedIn,
              entPhysicalClass,
              entPhysicalParentRelPos,
              entPhysicalName
            }
    STATUS  current
    DESCRIPTION
            "The collection of objects which are used to represent
            physical system components, for which a single agent
            provides management information."
    ::= { entityGroups 1 }

entityLogicalGroup    OBJECT-GROUP
    OBJECTS {
              entLogicalDescr,
              entLogicalType,
              entLogicalCommunity,
              entLogicalTAddress,

McCloghrie/Bierman     Expires December 18, 1996               [Page 30]



Draft                          Entity MIB                      June 1996

              entLogicalTDomain
            }
    STATUS  current
    DESCRIPTION
            "The collection of objects which are used to represent the
            list of logical entities for which a single agent provides
            management information."
    ::= { entityGroups 2 }

entityMappingGroup    OBJECT-GROUP
    OBJECTS {
              entLPPhysicalIndex,
              entAliasMappingIdentifier,
              entPhysicalChildIndex
            }
    STATUS  current
    DESCRIPTION
            "The collection of objects which are used to represent the
            associations between multiple logical entities, physical
            components, interfaces, and port identifiers for which a
            single agent provides management information."
    ::= { entityGroups 3 }

entityGeneralGroup    OBJECT-GROUP
    OBJECTS {
              entLastChangeTime
            }
    STATUS  current
    DESCRIPTION
            "The collection of objects which are used to represent
            general entity information for which a single agent provides
            management information."
    ::= { entityGroups 4 }

entityNotificationsGroup NOTIFICATION-GROUP
    NOTIFICATIONS { entConfigChange }
    STATUS        current
    DESCRIPTION
            "The collection of notifications used to indicate Entity MIB
            data consistency and general status information."
    ::= { entityGroups 5 }

END

McCloghrie/Bierman     Expires December 18, 1996               [Page 31]



Draft                          Entity MIB                      June 1996

5.  Usage Examples

The following sections iterate the instance values for two example
networking devices. These examples are kept simple to make them more
understandable. Auxiliary components, such as fans, sensors, empty
slots, and sub-modules are not shown, but might be modeled in real
implementations.

5.1.  Router/Bridge

A router containing two slots.  Each slot contains a 3 port
router/bridge module. Each port is represented in the ifTable.  There
are two logical instances of OSPF running and two logical bridges:

  Physical entities -- entPhysicalTable:
    1 Field-replaceable physical chassis:
      entPhysicalDescr.1 ==             "Acme Chassis Model 100"
      entPhysicalVendorType.1  ==       acmeProducts.chassisTypes.1
      entPhysicalContainedIn.1 ==       0
      entPhysicalClass.1 ==             chassis(3)
      entPhysicalParentRelPos.1 ==      0
      entPhysicalName.1 ==              '100-A'

    2 slots within the chassis:
      entPhysicalDescr.2 ==             "Acme Chassis Slot Type AA"
      entPhysicalVendorType.2  ==       acmeProducts.slotTypes.1
      entPhysicalContainedIn.2 ==       1
      entPhysicalClass.2 ==             container(5)
      entPhysicalParentRelPos.2 ==      1
      entPhysicalName.2 ==              'S1'

      entPhysicalDescr.3 ==             "Acme Chassis Slot Type AA"
      entPhysicalVendorType.3  ==       acmeProducts.slotTypes.1
      entPhysicalContainedIn.3 ==       1
      entPhysicalClass.3 ==             container(5)
      entPhysicalParentRelPos.3 ==      2
      entPhysicalName.3 ==              'S2'

    2 Field-replaceable modules:
    Slot 1 contains a module with 3 ports:
      entPhysicalDescr.4 ==             "Acme Router-100"
      entPhysicalVendorType.4  ==       acmeProducts.moduleTypes.14
      entPhysicalContainedIn.4 ==       2
      entPhysicalClass.4 ==             module(9)

McCloghrie/Bierman     Expires December 18, 1996               [Page 32]



Draft                          Entity MIB                      June 1996

      entPhysicalParentRelPos.4 ==      1
      entPhysicalName.4 ==              'M1'

      entPhysicalDescr.5 ==             "Acme Ethernet-100 Port Rev G"
      entPhysicalVendorType.5  ==       acmeProducts.portTypes.2
      entPhysicalContainedIn.5 ==       4
      entPhysicalClass.5 ==             port(10)
      entPhysicalParentRelPos.5 ==      1
      entPhysicalName.5 ==              'P1'

      entPhysicalDescr.6 ==             "Acme Ethernet-100 Port Rev G"
      entPhysicalVendorType.6  ==       acmeProducts.portTypes.2
      entPhysicalContainedIn.6 ==       4
      entPhysicalClass.6 ==             port(10)
      entPhysicalParentRelPos.6 ==      2
      entPhysicalName.6 ==              'P2'

      entPhysicalDescr.7 ==             "Acme Router-100 F-Port: Rev B"
      entPhysicalVendorType.7  ==       acmeProducts.portTypes.3
      entPhysicalContainedIn.7 ==       4
      entPhysicalClass.7 ==             port(10)
      entPhysicalParentRelPos.7 ==      3
      entPhysicalName.7 ==              'P3'

   Slot 2 contains another 3-port module:
      entPhysicalDescr.8 ==             "Acme Router-100 Comm Module: Rev C"
      entPhysicalVendorType.8  ==       acmeProducts.moduleTypes.15
      entPhysicalContainedIn.8 ==       3
      entPhysicalClass.8 ==             module(9)
      entPhysicalParentRelPos.8 ==      1
      entPhysicalName.8 ==              'M1'

      entPhysicalDescr.9 ==             "Acme Fddi-100 Port Rev CC"
      entPhysicalVendorType.9 ==        acmeProducts.portTypes.5
      entPhysicalContainedIn.9 ==       8
      entPhysicalClass.9 ==             port(10)
      entPhysicalParentRelPos.9 ==      1
      entPhysicalName.9 ==              'FDDI Primary'

      entPhysicalDescr.10 ==            "Acme Ethernet-100 Port Rev G"
      entPhysicalVendorType.10 ==       acmeProducts.portTypes.2
      entPhysicalContainedIn.10 ==      8
      entPhysicalClass.10 ==            port(10)
      entPhysicalParentRelPos.10 ==     2
      entPhysicalName.10 ==             'Ethernet A'

McCloghrie/Bierman     Expires December 18, 1996               [Page 33]



Draft                          Entity MIB                      June 1996

      entPhysicalDescr.11 ==            "Acme Ethernet-100 Port Rev G"
      entPhysicalVendorType.11 ==       acmeProducts.portTypes.2
      entPhysicalContainedIn.11 ==      8
      entPhysicalClass.11 ==            port(10)
      entPhysicalParentRelPos.11 ==     3
      entPhysicalName.11 ==             'Ethernet B'

   Logical entities -- entLogicalTable
    2 OSPF instances:
      entLogicalDescr.1 ==            "Acme OSPF v1.1"
      entLogicalType.1 ==             ospf
      entLogicalCommunity.1 ==        "public-ospf1"
      entLogicalTAddress.1 ==         124.125.126.127:161
      entLogicalTDomain.1 ==          snmpUDPDomain

      entLogicalDescr.2 ==            "Acme OSPF v1.1"
      entLogicalType.2 ==             ospf
      entLogicalCommunity.2 ==        "public-ospf2"
      entLogicalTAddress.2 ==         124.125.126.127:161
      entLogicalTDomain.2 ==          snmpUDPDomain

    2 logical bridges:
      entLogicalDescr.3 ==            "Acme Bridge v2.1.1"
      entLogicalType.3  ==            dod1dBridge
      entLogicalCommunity.3 ==        "public-bridge1"
      entLogicalTAddress.3 ==         124.125.126.127:161
      entLogicalTDomain.3 ==          snmpUDPDomain

      entLogicalDescr.4 ==            "Acme Bridge v2.1.1"
      entLogicalType.4 ==             dod1dBridge
      entLogicalCommunity.4 ==        "public-bridge2"
      entLogicalTAddress.4 ==         124.125.126.127:161
      entLogicalTDomain.4 ==          snmpUDPDomain

Logical to Physical Mappings:
  1st OSPF instance: uses module 1-port 1
      entLPPhysicalIndex.1.5 ==         5

  2nd OSPF instance: uses module 2-port 1
      entLPPhysicalIndex.2.9 ==         9

  1st bridge group: uses module 1, all ports

  [ed. -- Note that these mappings are included in the table since
  another logical entity (1st OSPF) utilizes one of the

McCloghrie/Bierman     Expires December 18, 1996               [Page 34]



Draft                          Entity MIB                      June 1996

  ports. If this were not the case, then a single mapping
  to the module (e.g. entLPPhysicalIndex.3.4) would be
  present instead. ]
      entLPPhysicalIndex.3.5 ==         5
      entLPPhysicalIndex.3.6 ==         6
      entLPPhysicalIndex.3.7 ==         7

  2nd bridge group: uses module 2, all ports
      entLPPhysicalIndex.4.9  ==        9
      entLPPhysicalIndex.4.10 ==        10
      entLPPhysicalIndex.4.11 ==        11

Physical to Logical to MIB Alias Mappings -- entAliasMappingTable:
  Example 1: ifIndex values are global to all logical entities
      entAliasMappingIdentifier.5.0   ==        ifIndex.1
      entAliasMappingIdentifier.6.0   ==        ifIndex.2
      entAliasMappingIdentifier.7.0   ==        ifIndex.3
      entAliasMappingIdentifier.9.0   ==        ifIndex.4
      entAliasMappingIdentifier.10.0  ==        ifIndex.5
      entAliasMappingIdentifier.11.0  ==        ifIndex.6

  Example 2: ifIndex values are not shared by all logical entities
      entAliasMappingIdentifier.5.0   ==        ifIndex.1
      entAliasMappingIdentifier.5.3   ==        ifIndex.101
      entAliasMappingIdentifier.6.0   ==        ifIndex.2
      entAliasMappingIdentifier.6.3   ==        ifIndex.102
      entAliasMappingIdentifier.7.0   ==        ifIndex.3
      entAliasMappingIdentifier.7.3   ==        ifIndex.103
      entAliasMappingIdentifier.9.0   ==        ifIndex.4
      entAliasMappingIdentifier.9.3   ==        ifIndex.204
      entAliasMappingIdentifier.10.0  ==        ifIndex.5
      entAliasMappingIdentifier.10.3  ==        ifIndex.205
      entAliasMappingIdentifier.11.0  ==        ifIndex.6
      entAliasMappingIdentifier.11.3  ==        ifIndex.206

Physical Containment Tree -- entPhysicalContainsTable
  chassis has two containers:
      entPhysicalChildIndex.1.2 = 2
      entPhysicalChildIndex.1.3 = 3

  container 1 has a module:
      entPhysicalChildIndex.2.4 = 4

  container 2 has a module:
      entPhysicalChildIndex.3.8 = 8

McCloghrie/Bierman     Expires December 18, 1996               [Page 35]



Draft                          Entity MIB                      June 1996

  module 1 has 3 ports:
      entPhysicalChildIndex.4.5 = 5
      entPhysicalChildIndex.4.6 = 6
      entPhysicalChildIndex.4.7 = 7

  module 2 has 3 ports:
      entPhysicalChildIndex.8.9 = 9
      entPhysicalChildIndex.8.10 = 10
      entPhysicalChildIndex.1.11 = 11

5.2.  Repeaters

A 3-slot Hub with 2 backplane ethernet segments.  Slot three is empty,
and the remaining slots contain ethernet repeater modules. [ed. -- Note
that a replacement for the current Repeater MIB (RFC 1516) is likely to
emerge soon, and it will no longer be necessary to access repeater MIB
data in different naming scopes.]

Physical entities -- entPhysicalTable:
   1 Field-replaceable physical chassis:
      entPhysicalDescr.1 ==          "Acme Chassis Model 110"
      entPhysicalVendorType.1 ==     acmeProducts.chassisTypes.2
      entPhysicalContainedIn.1 ==    0
      entPhysicalClass.1 ==          chassis(3)
      entPhysicalParentRelPos.1 ==   0
      entPhysicalName.1 ==           '110-B'

   2 Chassis Ethernet Backplanes:
      entPhysicalDescr.2 ==          "Acme Ethernet Backplane Type A"
      entPhysicalVendorType.2 ==     acmeProducts.backplaneTypes.1
      entPhysicalContainedIn.2 ==    1
      entPhysicalClass.2 ==          backplane(4)
      entPhysicalParentRelPos.2 ==   1
      entPhysicalName.2 ==           'B1'

      entPhysicalDescr.3 ==          "Acme Ethernet Backplane Type A"
      entPhysicalVendorType.3  ==    acmeProducts.backplaneTypes.1
      entPhysicalContainedIn.3 ==    1
      entPhysicalClass.3 ==          backplane(4)
      entPhysicalParentRelPos.3 ==   2
      entPhysicalName.3 ==           'B2'

   3 slots within the chassis:
      entPhysicalDescr.4 ==          "Acme Hub Slot Type RB"

McCloghrie/Bierman     Expires December 18, 1996               [Page 36]



Draft                          Entity MIB                      June 1996

      entPhysicalVendorType.4  ==    acmeProducts.slotTypes.5
      entPhysicalContainedIn.4 ==    1
      entPhysicalClass.4 ==          container(5)
      entPhysicalParentRelPos.4 ==   1
      entPhysicalName.4 ==           'Slot 1'

      entPhysicalDescr.5 ==          "Acme Hub Slot Type RB"
      entPhysicalVendorType.5  ==    acmeProducts.slotTypes.5
      entPhysicalContainedIn.5 ==    1
      entPhysicalClass.5 ==          container(5)
      entPhysicalParentRelPos.5 ==   2
      entPhysicalName.5 ==           'Slot 2'

      entPhysicalDescr.6 ==          "Acme Hub Slot Type RB"
      entPhysicalVendorType.6  ==    acmeProducts.slotTypes.5
      entPhysicalContainedIn.6 ==    1
      entPhysicalClass.6 ==          container(5)
      entPhysicalParentRelPos.6 ==   3
      entPhysicalName.6 ==           'Slot 3'

   Slot 1 contains a plug-in module with 4 10-BaseT ports:
      entPhysicalDescr.7  ==         "Acme 10Base-T Module 114 Rev A"
      entPhysicalVendorType.7   ==   acmeProducts.moduleTypes.32
      entPhysicalContainedIn.7  ==   4
      entPhysicalClass.7 ==          module(9)
      entPhysicalParentRelPos.7 ==   1
      entPhysicalName.7 ==           'M1'

      entPhysicalDescr.8  ==         "Acme 10Base-T Port RB Rev A"
      entPhysicalVendorType.8   ==   acmeProducts.portTypes.10
      entPhysicalContainedIn.8  ==   7
      entPhysicalClass.8 ==          port(10)
      entPhysicalParentRelPos.8 ==   1
      entPhysicalName.8 ==           'Ethernet-A'

      entPhysicalDescr.9  ==         "Acme 10Base-T Port RB Rev A"
      entPhysicalVendorType.9   ==   acmeProducts.portTypes.10
      entPhysicalContainedIn.9  ==   7
      entPhysicalClass.9 ==          port(10)
      entPhysicalParentRelPos.9 ==   2
      entPhysicalName.9 ==           'Ethernet-B'

      entPhysicalDescr.10 ==         "Acme 10Base-T Port RB Rev B"
      entPhysicalVendorType.10  ==   acmeProducts.portTypes.10
      entPhysicalContainedIn.10 ==   7

McCloghrie/Bierman     Expires December 18, 1996               [Page 37]



Draft                          Entity MIB                      June 1996

      entPhysicalClass.10 ==         port(10)
      entPhysicalParentRelPos.10 ==  3
      entPhysicalName.10 ==          'Ethernet-C'

      entPhysicalDescr.11 ==         "Acme 10Base-T Port RB Rev B"
      entPhysicalVendorType.11  ==   acmeProducts.portTypes.10
      entPhysicalContainedIn.11 ==   7
      entPhysicalClass.11 ==         port(10)
      entPhysicalParentRelPos.11 ==  4
      entPhysicalName.11 ==          'Ethernet-D'

   Slot 2 contains another ethernet module with 2 ports.
      entPhysicalDescr.12 ==         "Acme 10Base-T Module Model 4 Rev A"
      entPhysicalVendorType.12 ==    acmeProducts.moduleTypes.30
      entPhysicalContainedIn.12 =    5
      entPhysicalClass.12 ==         module(9)
      entPhysicalParentRelPos.12 ==  1
      entPhysicalName.12 ==          'M1'

      entPhysicalDescr.13 ==         "Acme 802.3 AUI Port Rev A"
      entPhysicalVendorType.13  ==   acmeProducts.portTypes.11
      entPhysicalContainedIn.13 ==   12
      entPhysicalClass.13 ==         port(10)
      entPhysicalParentRelPos.13 ==  1
      entPhysicalName.13 ==          'AUI'

      entPhysicalDescr.14 ==         "Acme 10Base-T Port RD Rev B"
      entPhysicalVendorType.14  ==   acmeProducts.portTypes.14
      entPhysicalContainedIn.14 ==   12
      entPhysicalClass.14 ==         port(10)
      entPhysicalParentRelPos.14 ==  2
      entPhysicalName.14 ==          'E2'

Logical entities -- entLogicalTable
   Repeater 1--comprised of any ports attached to backplane 1
      entLogicalDescr.1 ==         "Acme repeater v3.1"
      entLogicalType.1  ==         snmpDot3RptrMgt
      entLogicalCommunity.1        "public-repeater1"
      entLogicalTAddress.1 ==      124.125.126.127:161
      entLogicalTDomain.1 ==       snmpUDPDomain

   Repeater 2--comprised of any ports attached to backplane 2:
      entLogicalDescr.2 ==         "Acme repeater v3.1"
      entLogicalType.2  ==         snmpDot3RptrMgt
      entLogicalCommunity.2 ==     "public-repeater2"

McCloghrie/Bierman     Expires December 18, 1996               [Page 38]



Draft                          Entity MIB                      June 1996

      entLogicalTAddress.2 ==      124.125.126.127:161
      entLogicalTDomain.2 ==       snmpUDPDomain

Logical to Physical Mappings -- entLPMappingTable:

  repeater1 uses backplane 1, slot 1-ports 1 & 2, slot 2-port 1
  [ed. -- Note that a mapping to the module is not included,
   since in this example represents a port-switchable hub.
   Even though all ports on the module could belong to the
   same repeater as a matter of configuration, the LP port
   mappings should not be replaced dynamically with a single
   mapping for the module (e.g. entLPPhysicalIndex.1.7).
   If all ports on the module shared a single backplane connection,
   then a single mapping for the module would be more appropriate. ]

     entLPPhysicalIndex.1.2 ==          2
     entLPPhysicalIndex.1.8 ==          8
     entLPPhysicalIndex.1.9 ==          9
     entLPPhysicalIndex.1.13 ==         13

  repeater2 uses backplane 2, slot 1-ports 3 & 4, slot 2-port 2
      entLPPhysicalIndex.2.3 ==         3
      entLPPhysicalIndex.2.10 ==        10
      entLPPhysicalIndex.2.11 ==        11
      entLPPhysicalIndex.2.14 ==        14

Physical to Logical to MIB Alias Mappings -- entAliasMappingTable:
  Repeater Port Identifier values are shared by both repeaters:
      entAliasMappingIdentifier.8.0 ==  rptrPortGroupIndex.1.1
      entAliasMappingIdentifier.9.0 ==  rptrPortGroupIndex.1.2
      entAliasMappingIdentifier.10.0 == rptrPortGroupIndex.1.3
      entAliasMappingIdentifier.11.0 == rptrPortGroupIndex.1.4
      entAliasMappingIdentifier.13.0 == rptrPortGroupIndex.2.1
      entAliasMappingIdentifier.14.0 == rptrPortGroupIndex.2.2

Physical Containment Tree -- entPhysicalContainsTable
  chassis has two backplanes and three containers:
      entPhysicalChildIndex.1.2 = 2
      entPhysicalChildIndex.1.3 = 3
      entPhysicalChildIndex.1.4 = 4
      entPhysicalChildIndex.1.5 = 5
      entPhysicalChildIndex.1.6 = 6

  container 1 has a module:
      entPhysicalChildIndex.4.7 = 7

McCloghrie/Bierman     Expires December 18, 1996               [Page 39]



Draft                          Entity MIB                      June 1996

  container 2 has a module
      entPhysicalChildIndex.5.12 = 12
  [ed. - in this example, container 3 is empty.]

  module 1 has 4 ports:
      entPhysicalChildIndex.7.8 = 8
      entPhysicalChildIndex.7.9 = 9
      entPhysicalChildIndex.7.10 = 10
      entPhysicalChildIndex.7.11 = 11

  module 2 has 2 ports:
      entPhysicalChildIndex.12.13 = 13
      entPhysicalChildIndex.12.14 = 14

McCloghrie/Bierman     Expires December 18, 1996               [Page 40]



Draft                          Entity MIB                      June 1996

6.  Acknowledgements

This document was produced by the IETF Entity MIB Working Group.

McCloghrie/Bierman     Expires December 18, 1996               [Page 41]



Draft                          Entity MIB                      June 1996

7.  References

[1]  SNMPv2 Working Group, Case, J., McCloghrie, K., Rose, M., and
     S. Waldbusser, "Structure of Management Information for version 2
     of the Simple Network Management Protocol (SNMPv2)", RFC 1902,
     January 1996.

[2]  McCloghrie, K., and M. Rose, Editors, "Management Information Base
     for Network Management of TCP/IP-based internets: MIB-II", STD 17,
     RFC 1213, Hughes LAN Systems, Performance Systems International,
     March 1991.

[3]  SNMPv2 Working Group, Case, J., McCloghrie, K., Rose, M., and
     S. Waldbusser, "Textual Conventions for version 2 of the Simple
     Network Management Protocol (SNMPv2)", RFC 1903, January 1996.

[4]  SNMPv2 Working Group, Case, J., McCloghrie, K., Rose, M., and
     S. Waldbusser, "Protocol Operations for version 2 of the Simple
     Network Management Protocol (SNMPv2)", RFC 1905, January 1996.

[5]  SNMPv2 Working Group, Case, J., McCloghrie, K., Rose, M., and
     S. Waldbusser, "Conformance Statements for version 2 of the Simple
     Network Management Protocol (SNMPv2)", RFC 1904, January 1996.

[6]  Case, J., M. Fedor, M. Schoffstall, J. Davin, "Simple Network
     Management Protocol", RFC 1157, SNMP Research, Performance Systems
     International, MIT Laboratory for Computer Science, May 1990.

[7]  McCloghrie, K., and Kastenholtz, F., "Interfaces Group Evolution",
     RFC 1573, Hughes LAN Systems, FTP Software, January 1994.

[8]  SNMPv2 Working Group, Case, J., McCloghrie, K., Rose, M., and
     S. Waldbusser, "Transport Mappings for version 2 of the Simple
     Network Management Protocol (SNMPv2)", RFC 1906, January 1996.

[9]  SNMPv2 Working Group, Case, J., McCloghrie, K., Rose, M., and
     S. Waldbusser, "Introduction to Community-based SNMPv2", RFC 1901,
     January 1996.

McCloghrie/Bierman     Expires December 18, 1996               [Page 42]



Draft                          Entity MIB                      June 1996

8.  Security Considerations

Security issues are not discussed in this memo.

9.  Authors' Addresses

     Keith McCloghrie
     Cisco Systems, Inc.
     170 West Tasman Drive
     San Jose, CA 95134
     Phone: 408-526-5260
     Email: kzm@cisco.com

     Andy Bierman
     Cisco Systems, Inc.
     170 West Tasman Drive
     San Jose, CA 95134
     Phone: 408-527-3711
     Email: abierman@cisco.com

McCloghrie/Bierman     Expires December 18, 1996               [Page 43]



Draft                          Entity MIB                      June 1996

Table of Contents

1 Introduction ....................................................    2
2 The SNMP Network Management Framework ...........................    3
2.1 Object Definitions ............................................    3
3 Overview ........................................................    4
3.1 Terms .........................................................    4
3.2 Relationship to Community Strings .............................    6
3.3 Relationship to Proxy Mechanisms ..............................    6
3.4 Relationship to a Chassis MIB .................................    7
3.5 Relationship to the Interfaces MIB ............................    7
3.6 Relationship to the Other MIBs ................................    7
3.7 Relationship to Naming Scopes .................................    7
3.8 Multiple Instances of the Entity MIB ..........................    8
3.9 Re-Configuration of Entities ..................................    9
3.10 MIB Structure ................................................    9
3.10.1 entityPhysical Group .......................................    9
3.10.2 entityLogical Group ........................................   10
3.10.3 entityMapping Group ........................................   10
3.10.4 entityGeneral Group ........................................   10
3.10.5 entityNotifications Group ..................................   11
3.11 Multiple Agents ..............................................   11
4 Definitions .....................................................   12
5 Usage Examples ..................................................   32
5.1 Router/Bridge .................................................   32
5.2 Repeaters .....................................................   36
6 Acknowledgements ................................................   41
7 References ......................................................   42
8 Security Considerations .........................................   43
9 Authors' Addresses ..............................................   43

McCloghrie/Bierman     Expires December 18, 1996               [Page 44]