A Proposal

kzm@hls.com (Keith McCloghrie) Fri, 13 March 1992 02:46 UTC

Return-Path: <owner-chassismib>
Received: by CS.UTK.EDU (5.61++/2.8s-UTK) id AA26030; Thu, 12 Mar 92 21:46:03 -0500
Received: from LANSLIDE.HLS.COM by CS.UTK.EDU with SMTP (5.61++/2.8s-UTK) id AA26026; Thu, 12 Mar 92 21:45:50 -0500
Received: from nms.netman (nms.hls.com) by lanslide.hls.com (4.1/SMI-4.0) id AA05942; Thu, 12 Mar 92 18:46:19 PST
Received: by nms.netman (4.1/SMI-4.1) id AA21379; Thu, 12 Mar 92 18:46:13 PST
From: kzm@hls.com (Keith McCloghrie)
Message-Id: <9203130246.AA21379@nms.netman>
Subject: A Proposal
To: chassismib@cs.utk.edu (chassis)
Date: Thu, 12 Mar 92 18:46:12 PDT
Organization: Hughes LAN Systems
X-Mailer: ELM [version 2.2 PL0]


Here's our proposal for the structure of the Chassis MIB.

Keith.
---------


          Working Draft            Chassis MIB                March 1992





                  Definitions of Managed Objects for a Chassis
                   Containing Multiple Logical Network Devices



                             12 March 18:11 PST 1992


                                 Keith McCloghrie
                             Hughes LAN Systems, Inc.
                                   kzm@hls.com


                                  Donna McMaster
                                  SynOptics Inc
                              mcmaster@synoptics.com



          1.  Abstract

          This memo defines an experimental portion of the Management
          Information Base (MIB) for use with network management
          protocols in TCP/IP based internets.  In particular it defines
          objects for managing a chassis containing multiple (logical)
          networking devices, such as repeaters, bridges, routers,
          terminal servers, etc.

          2.  Status of this Memo

          This draft document is being submitted for consideration by
          the IETF's Chassis MIB working group.  Distribution of this
          memo is unlimited.  Please send comments to the authors.














          McCloghrie/McMaster                                   [Page 1]




          Working Draft            Chassis MIB                March 1992


          3.  Management Framework

          The Internet-standard Network Management Framework consists of
          three components.  They are:

          RFC 1155 which defines the SMI, the mechanisms used for
          describing and naming objects for the purpose of management.
          RFC 1212 defines a more concise description mechanism, which
          is wholly consistent with the SMI.

          RFC 1156 which defines MIB-I, the core set of managed objects
          for the Internet suite of protocols. RFC 1213, defines MIB-II,
          an evolution of MIB-I based on implementation experience and
          new operational requirements.

          RFC 1157 which defines the SNMP, the protocol used for network
          access to managed objects.

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


          4.  Objects

          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) [4] defined in the SMI.  In particular, each
          object has a name, a syntax, and an encoding.  The name is an
          object identifier, an administratively assigned name, which
          specifies an object type.  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 OBJECT DESCRIPTOR, to also
          refer to the object type.

          The syntax of an object type defines the abstract data
          structure corresponding to that object type.  The ASN.1
          language is used for this purpose.  However, the SMI [1]
          purposely restricts the ASN.1 constructs which may be used.
          These restrictions are explicitly made for simplicity.

          The encoding of an object type is simply how that object type
          is represented using the object type's syntax.  Implicitly
          tied to the notion of an object type's syntax and encoding is





          McCloghrie/McMaster                                   [Page 2]




          Working Draft            Chassis MIB                March 1992


          how the object type is represented when being transmitted on
          the network.

          The SMI specifies the use of the basic encoding rules of ASN.1
          [5], subject to the additional requirements imposed by the
          SNMP.


          4.1.  Format of Definitions

          Section 6 contains the specification of all object types
          contained in this MIB module.  The object types are defined
          using the conventions defined in the SMI, as amended by the
          extensions specified in [6,7].




































          McCloghrie/McMaster                                   [Page 3]




          Working Draft            Chassis MIB                March 1992


          5.  Overview

          This memo defines objects for the management of a chassis
          containing multiple slots, each of which can potentially
          contain a board/card performing some networking function(s).
          A board, or combinations of boards, might perform one or more
          of the functions of a networking device such as a router,
          bridge, terminal server, concentrator, management card, etc.
          Indeed, this relationship between board and function can be
          many-to-many.  Thus, this memo uses the term 'entity' to refer
          to a logical networking device which may span parts of one or
          more boards.

          This type of chassis often contains one or more internal
          segments through which the logical devices are inter-connected
          to each other.  These segments often use standard MAC and/or
          link-layer protocols even though their physical layer may be
          different to that normally used with that MAC or link-layer.

          This MIB contains four tables: the Slot Table, the Entity
          Table, the Segment Table, and the Chassis Configuration Table.


          5.1.  The Slot Table

          A table that contains information about the slots in this
          chassis.


          5.2.  The Entity Table

          A table that contains information about the logical networking
          devices in this chassis.


          5.3.  The Segment Table

          A table that contains information about the network segments,
          contained within the chassis, and used to interconnect the
          chassis's logical networking devices.










          McCloghrie/McMaster                                   [Page 4]




          Working Draft            Chassis MIB                March 1992


          5.4.  The Chassis Configuration Table

          A table that contains information about which entities are in
          which slots in the chassis and the segments to which they
          connected.













































          McCloghrie/McMaster                                   [Page 5]




          Working Draft            Chassis MIB                March 1992


          6.  Definitions


          CHASSIS-MIB DEFINITIONS ::= BEGIN

          IMPORTS
                  experimental, TimeTicks, IpAddress
                          FROM RFC1155-SMI
                  Party
                          FROM RFCXxxx  -- SNMP Party MIB
                  OBJECT-TYPE
                          FROM RFC-1212
                  TRAP-TYPE
                          FROM RFC-1215;

          chassis         OBJECT IDENTIFIER ::= { experimental xx }

          chasSlot        OBJECT IDENTIFIER ::= { chassis 1 }
          chasEntity      OBJECT IDENTIFIER ::= { chassis 2 }
          chasSegment     OBJECT IDENTIFIER ::= { chassis 3 }
          chasConfig      OBJECT IDENTIFIER ::= { chassis 4 }


          -- The Slot Table

          chasSlotTable  OBJECT-TYPE
              SYNTAX  SEQUENCE OF ChasSlotEntry
              ACCESS  not-accessible
              STATUS  mandatory
              DESCRIPTION
                      "A table that contains information about the slots
                      in this chassis."
              ::= { chasSlot 1 }

          chasSlotEntry OBJECT-TYPE
              SYNTAX  ChasSlotEntry
              ACCESS  not-accessible
              STATUS  mandatory
              DESCRIPTION
                      "A list of information for each slot in the
                      chassis."
              INDEX  { chasSlotIndex }
              ::= { chasSlotTable 1 }

          ChasSlotEntry ::=





          McCloghrie/McMaster                                   [Page 6]




          Working Draft            Chassis MIB                March 1992


              SEQUENCE {
                  chasSlotIndex
                      INTEGER,
                  chasSlotBoardType
                      OBJECT IDENTIFIER,
                  chasSlotLastChange
                      TimeTicks
              }

          chasSlotIndex OBJECT-TYPE
              SYNTAX  INTEGER (1..2147483647)
              ACCESS  read-only
              STATUS  mandatory
              DESCRIPTION
                      "The slot number of the chassis for which this
                      entry contains management information."
              ::= { chasSlotEntry 1 }

          chasSlotBoardType OBJECT-TYPE
              SYNTAX  OBJECT IDENTIFIER
              ACCESS  read-only
              STATUS  mandatory
              DESCRIPTION
                      "The type of board plugged into this slot of the
                      chassis.  A value of chasSlotEmpty indicates an
                      empty slot.  A value of chasSlotUnknown indicates
                      that the type of board is unknown."
              ::= { chasSlotEntry 2 }

          chasSlotEmpty    OBJECT IDENTIFIER ::= { chasSlot 2 }
          chasSlotUnknown  OBJECT IDENTIFIER ::= { chasSlot 3 }

          chasSlotLastChange OBJECT-TYPE
              SYNTAX  TimeTicks
              ACCESS  read-only
              STATUS  mandatory
              DESCRIPTION
                      "The value of MIB-II's sysUpTime (in the agent
                      supporting this MIB) at which a board in this slot
                      was last inserted or removed from this slot.  If
                      no board has been inserted or removed from this
                      slot since the last time the network management
                      system was last re-initialized, then this object
                      has a zero value."
              ::= { chasSlotEntry 3 }





          McCloghrie/McMaster                                   [Page 7]




          Working Draft            Chassis MIB                March 1992


          -- The Entity Table

          chasEntityTable OBJECT-TYPE
              SYNTAX  SEQUENCE OF ChasEntityEntry
              ACCESS  not-accessible
              STATUS  mandatory
              DESCRIPTION
                      "A table that contains information about the
                      (logical) networking devices in this chassis."
              ::= { chasEntity 1 }

          chasEntityEntry OBJECT-TYPE
              SYNTAX  ChasEntityEntry
              ACCESS  not-accessible
              STATUS  mandatory
              DESCRIPTION
                      "Information concerning a logical networking
                      device in the chassis."
              INDEX  { chasEntityIndex }
              ::= { chasEntityTable 1 }

          ChasEntityEntry ::=
              SEQUENCE {
                  chasEntityIndex
                      INTEGER,
                  chasEntityFunction
                      INTEGER,
                  chasEntityObjectId
                      OBJECT IDENTIFIER,
                  chasEntityParty
                      Party,
                  chasEntityCommunity
                      OCTET STRING,
                  chasEntityIpAddress
                      IpAddress
              }

          chasEntityIndex OBJECT-TYPE
              SYNTAX  INTEGER (1..2147483647)
              ACCESS  read-only
              STATUS  mandatory
              DESCRIPTION
                      "A unique index for the logical networking device
                      for which this entry contains information."
              ::= { chasEntityEntry 1 }





          McCloghrie/McMaster                                   [Page 8]




          Working Draft            Chassis MIB                March 1992


          chasEntityFunction OBJECT-TYPE
              SYNTAX  INTEGER (0..255)
              ACCESS  read-only
              STATUS  mandatory
              DESCRIPTION
                      "The generic function of the logical networking
                      device.

                      The value is a sum.  Starting from zero, for each
                      type of generic function that the entity performs,
                      2 raised to a power is added to the sum.  The
                      powers are according to the following table:

                              Function  Power
                                 other  0
                              repeater  1   -- e.g. Ethernet repeater
                          concentrator  2   -- e.g. FDDI concentrator
                                bridge  3
                                router  4
                        terminalServer  5
                            management  6
                                 power  7

                     For example, an entity performing both bridging and
                     routing functions would have a value of 24 (2^3 +
                     2^4)."
              ::= { chasEntityEntry 2 }

          chasEntityObjectId  OBJECT-TYPE
              SYNTAX  OBJECT IDENTIFIER
              ACCESS  read-only
              STATUS  mandatory
              DESCRIPTION
                      "The specific type of logical networking device.
                      The value of this object is analagous to MIB-II's
                      sysObjectId.  In particular, it has the same value
                      as would be returned if the SNMP Party (identified
                      by chasEntityParty) and/or the community
                      (identified by chasIpAddress and chasCommunity),
                      were queried for sysObjectId."
              ::= { chasEntityEntry 3 }

          chasEntityParty  OBJECT-TYPE
              SYNTAX  Party
              ACCESS  read-only





          McCloghrie/McMaster                                   [Page 9]




          Working Draft            Chassis MIB                March 1992


              STATUS  mandatory
              DESCRIPTION
                      "The SNMP Party which provides access to the
                      detailed management information for this entity.
                      Note that the definition of a SNMP Party includes
                      the location at which it executes, the MIB view to
                      which it provides access, the authentication and
                      privacy algorithms and parameters required to
                      access its MIB view, and whether or not proxy is
                      performed.  In order for a SNMP manager to be able
                      to access the Party, that manager must have prior
                      knowledge of the Party.  In particular, the
                      manager must know the location at which the Party
                      executes.

                      A party is named by an OBJECT IDENTIFIER.  For a
                      entity which is not managed through access to a
                      SNMP Party, the value of this object is
                      chasEntityNoParty."
              ::= { chasEntityEntry 4 }

          chasEntityNoParty OBJECT IDENTIFIER ::= { chasEntity 2 }

          chasEntityCommunity  OBJECT-TYPE
              SYNTAX  OCTET STRING (SIZE (0..256))
              ACCESS  read-only
              STATUS  mandatory
              DESCRIPTION
                      "The SNMP Community which executes at the address
                      chasEntityIpAddress, and provides access to the
                      detailed management information for this entity.

                      For a entity which is not managed through access
                      to a SNMP Community, the value of this object is
                      the zero-length string."
              ::= { chasEntityEntry 5 }

          chasEntityIpAddress  OBJECT-TYPE
              SYNTAX  IpAddress
              ACCESS  read-only
              STATUS  mandatory
              DESCRIPTION
                      "The address of the SNMP agent which responds to
                      messages for the SNMP Community identified by
                      chasEntityCommunity.  When access is via proxy,





          McCloghrie/McMaster                                  [Page 10]




          Working Draft            Chassis MIB                March 1992


                      this variable contains the address of the proxy
                      agent.

                      For a entity which is not managed through access
                      to a SNMP Community, the value of this object is
                      0.0.0.0."
              ::= { chasEntityEntry 6 }











































          McCloghrie/McMaster                                  [Page 11]




          Working Draft            Chassis MIB                March 1992


          -- The Segment Table

          chasSegmentTable  OBJECT-TYPE
              SYNTAX  SEQUENCE OF ChasSegmentEntry
              ACCESS  not-accessible
              STATUS  mandatory
              DESCRIPTION
                      "A table that contains information about the
                      network segments, contained within the chassis,
                      and used to interconnect the chassis's logical
                      networking devices."
              ::= { chasSegment 1 }

          chasSegmentEntry OBJECT-TYPE
              SYNTAX  ChasSegmentEntry
              ACCESS  not-accessible
              STATUS  mandatory
              DESCRIPTION
                      "A list of information for each segment in the
                      chassis."
              INDEX  { chasSegmentIndex }
              ::= { chasSegmentTable 1 }

          ChasSegmentEntry ::=
              SEQUENCE {
                  chasSegmentIndex
                      INTEGER,
                  chasSegmentType
                      OBJECT IDENTIFIER
              }

          chasSegmentIndex OBJECT-TYPE
              SYNTAX  INTEGER (1..2147483647)
              ACCESS  read-only
              STATUS  mandatory
              DESCRIPTION
                      "A unique index for the network segment for which
                      this entry contains information."
              ::= { chasSegmentEntry 1 }

          chasSegmentType OBJECT-TYPE
              SYNTAX  OBJECT IDENTIFIER
              ACCESS  read-only
              STATUS  mandatory
              DESCRIPTION





          McCloghrie/McMaster                                  [Page 12]




          Working Draft            Chassis MIB                March 1992


                      "The type of segment.

                      For example, for am Ethernet segment this object
                      would have the value: dot3 as defined in RFC
                      1284."
              ::= { chasSegmentEntry 2 }












































          McCloghrie/McMaster                                  [Page 13]




          Working Draft            Chassis MIB                March 1992


          -- The Chassis Configuration Table

          chasConfigTable  OBJECT-TYPE
              SYNTAX  SEQUENCE OF ChasConfigEntry
              ACCESS  not-accessible
              STATUS  mandatory
              DESCRIPTION
                      "A table that contains information about which
                      entities are in which slots in the chassis and the
                      segments to which they connected."
              ::= { chasConfig 1 }

          chasConfigEntry OBJECT-TYPE
              SYNTAX  ChasConfigEntry
              ACCESS  not-accessible
              STATUS  mandatory
              DESCRIPTION
                      "A configuration relationship between an entity, a
                      slot and a segment in the chassis.  Such a
                      relationship exists if the particular slot is
                      occupied by the board (or one of the boards)
                      performing (part of) the function of the
                      particular entity, and is connected to a
                      particular segment."
              INDEX  { chasConfigSlot,
                       chasConfigEntity,
                       chasConfigSegment }
              ::= { chasConfigTable 1 }

          ChasConfigEntry ::=
              SEQUENCE {
                  chasConfigSlot
                      INTEGER,
                  chasConfigEntity
                      INTEGER,
                  chasConfigSegment
                      INTEGER,
                  chasConfigStatus
                      INTEGER
              }

          chasConfigSlot OBJECT-TYPE
              SYNTAX  INTEGER (1..2147483647)
              ACCESS  read-write
              STATUS  mandatory





          McCloghrie/McMaster                                  [Page 14]




          Working Draft            Chassis MIB                March 1992


              DESCRIPTION
                      "The slot number of the chassis for this
                      configuration relationship."
              ::= { chasConfigEntry 1 }

          chasConfigEntity OBJECT-TYPE
              SYNTAX  INTEGER (0..255)
              ACCESS  read-write
              STATUS  mandatory
              DESCRIPTION
                      "The entity for this configuration relationship.
                      The entity identified by this object is the same
                      entity as identified by the same value of
                      chasEntityIndex."
              ::= { chasConfigEntry 2 }

          chasConfigSegment OBJECT-TYPE
              SYNTAX  INTEGER (0..2147483647)
              ACCESS  read-write
              STATUS  mandatory
              DESCRIPTION
                      "The segment for this configuration relationship.
                      The segment identified by a non-zero value of this
                      object is the same segment as identified by the
                      same value of chasSegmentIndex.  A value of 0
                      represents the 'null' segment; only entities in
                      slots which are not connected to any segment
                      identified by a value of chasSegmentIndex are
                      connected to the 'null' segment."
              ::= { chasConfigEntry 3 }

          chasConfigStatus OBJECT-TYPE
              SYNTAX  INTEGER { valid(1), invalid(2) }
              ACCESS  read-write
              STATUS  mandatory
              DESCRIPTION
                      "The status of this configuration relationship.
                      Writing a value of invalid(1) to an instance of
                      this object causes the configuration relationship
                      to be invalidated.

                      Support for creating or invalidating instances of
                      this object will normally be subject to the
                      hardware limitations of the board in the
                      referenced slot.  When supported, the creation





          McCloghrie/McMaster                                  [Page 15]




          Working Draft            Chassis MIB                March 1992


                      (invalidation) of instances may have the implicit
                      side-effect of removing (creating) other instances
                      of this object.

                      It is an implementation-specific matter as to
                      whether the agent removes an invalidated entry
                      from the table.  Accordingly, management stations
                      must be prepared to receive tabular information
                      from agents that corresponds to entries not
                      currently in use.  Proper interpretation of such
                      entries requires examination of the relevant
                      chasConfigStatus object."
              ::= { chasConfigEntry 4 }





































          McCloghrie/McMaster                                  [Page 16]




          Working Draft            Chassis MIB                March 1992


          --          Traps

          chasSlotChange TRAP-TYPE
              ENTERPRISE  chassis
              VARIABLES   { chasSlotIndex,
                            chasSlotBoardType,
                            chasEntityObjectId,
                            chasConfigStatus  }
              DESCRIPTION
                      "This trap indicates that a board has been removed
                      or inserted into the chassis."
              ::= 1

          END




































          McCloghrie/McMaster                                  [Page 17]




          Working Draft            Chassis MIB                March 1992


          7.  References

          [1]  M.T. Rose and K. McCloghrie, Structure and Identification
               of Management Information for TCP/IP-based internets,
               Internet Working Group Request for Comments 1155.
               Network Information Center, SRI International, Menlo
               Park, California, (May, 1990).

          [2]  J.D. Case, M.S. Fedor, M.L. Schoffstall, and J.R. Davin,
               Simple Network Management Protocol, Internet Working
               Group Request for Comments 1157.  Network Information
               Center, SRI International, Menlo Park, California, (May,
               1990).

          [3]  K. McCloghrie and M.T. Rose (editors), Management
               Information Base for Network Management of TCP/IP-based
               internets: MIB-II, Internet Working Group Request for
               Comments 1213.  Network Information Center, SRI
               International, Menlo Park, California, (March, 1991).

          [4]  Information processing systems - Open Systems
               Interconnection - Specification of Abstract Syntax
               Notation One (ASN.1), International Organization for
               Standardization.  International Standard 8824, (December,
               1987).

          [5]  Information processing systems - Open Systems
               Interconnection - Specification of Basic Encoding Rules
               for Abstract Notation One (ASN.1), International
               Organization for Standardization.  International Standard
               8825, (December, 1987).

          [6]  M.T. Rose, K. McCloghrie (editors), Concise MIB
               Definitions, Internet Working Group Request for Comments
               1212.  Network Information Center, SRI International,
               Menlo Park, California, (March, 1991).

          [7]  M.T. Rose (editor), A Convention for Defining Traps for
               use with the SNMP, Internet Working Group Request for
               Comments 1215.  Network Information Center, SRI
               International, Menlo Park, California, (March, 1991).









          McCloghrie/McMaster                                  [Page 18]




          Working Draft            Chassis MIB                March 1992


          Table of Contents


          1 Abstract ..............................................    1
          2 Status of this Memo ...................................    1
          3 Management Framework ..................................    2
          4 Objects ...............................................    2
          4.1 Format of Definitions ...............................    3
          5 Overview ..............................................    4
          5.1 The Slot Table ......................................    4
          5.2 The Entity Table ....................................    4
          5.3 The Segment Table ...................................    4
          5.4 The Chassis Configuration Table .....................    5
          6 Definitions ...........................................    6
          7 References ............................................   18



































          McCloghrie/McMaster                                  [Page 19]