Chassis MIB Proposal

{3COM/PDD/PeteW}@pdd.3mail.3com.com Tue, 04 January 1994 10:09 UTC

Received: from ietf.nri.reston.va.us by IETF.CNRI.Reston.VA.US id aa01734; 4 Jan 94 5:09 EST
Received: from CS.UTK.EDU by IETF.CNRI.Reston.VA.US id aa01730; 4 Jan 94 5:09 EST
Received: from localhost by CS.UTK.EDU with SMTP (8.6.4/2.8s-UTK) id EAA12140; Tue, 4 Jan 1994 04:49:41 -0500
X-Resent-To: chassismib@CS.UTK.EDU ; Tue, 4 Jan 1994 04:49:40 EST
Errors-to: owner-chassismib@CS.UTK.EDU
Received: from relay2.UU.NET by CS.UTK.EDU with SMTP (8.6.4/2.8s-UTK) id EAA12133; Tue, 4 Jan 1994 04:49:39 -0500
Sender: ietf-archive-request@IETF.CNRI.Reston.VA.US
From: {3COM/PDD/PeteW}@pdd.3mail.3com.com
MMDF-Warning: Parse error in original version of preceding line at IETF.CNRI.Reston.VA.US
Received: from cixgate.3com.com (via [192.156.136.10]) by relay2.UU.NET with SMTP (5.61/UUNET-internet-primary) id AA07813; Tue, 4 Jan 94 04:49:37 -0500
Received: from gw.3Com.COM by cixgate.3com.com (4.1/SMI-4.1/3com-cixgate-GCA-931027-01) id AA14337; Tue, 4 Jan 94 01:49:19 PST
Received: by gw.3Com.COM id AA18561 (5.65c/IDA-1.4.4 for chassismib@cs.utk.edu); Tue, 4 Jan 1994 01:49:34 -0800
Date: Tue, 04 Jan 1994 09:44:00 -0800
Subject: Chassis MIB Proposal
To: chassismib@cs.utk.edu
Message-Id: <940104.015048@3Mail.3Com.COM>
Msg-Date: 1994-01-04
Msg-Time: 09:41

FROM: Wilson, Peter

TO:  {chassismib@cs.utk.edu}:ugate:3com                       DATE:  01-04-94
                                                              TIME:  09:39
CC:
SUBJECT:  Chassis MIB Proposal
PRIORITY:
ATTACHMENTS:

------------------------------------------------------------------------------
chasPhyLocationTable OBJECT-TYPE
    SYNTAX SEQUENCE OF ChasPhyLocationEntry
    ACCESS not-accessible
    STATUS mandatory
    DESCRIPTION
        "This table summarises the different classes of
         and types of modular physical locations in the
         chassis.  This includes but is not limited to slots
         within a chassis, power supply bays and fan tray slots.

         Note that entries in this table cannot be created or
         deleted through external management."
    ::= { chasPhysical 1 }

chasPhyLocationEntry OBJECT-TYPE
    SYNTAX ChasPhyLocationEntry
    ACCESS not-accessible
    STATUS mandatory
    DESCRIPTION
            "An entry in the phyLocationTable"
    INDEX { chasPhyLocationTypeIndex }
    ::= { chasPhyLocationTable 1 }

ChasPhyLocationEntry ::= SEQUENCE {
    chasPhyLocationTypeIndex        INTEGER,
    chasPhyLocationCount            INTEGER,
    chasPhyLocationType             OBJECT IDENTIFIER,
    chasPhyLocationName             DisplayString
}

chasPhyLocationTypeIndex OBJECT-TYPE
    SYNTAX INTEGER (1..65535)
    ACCESS read-only
    STATUS mandatory
    DESCRIPTION
       "This uniquely identifies the physical location
        type within the chassis."
    ::= { chasPhyLocationEntry 1 }

chasPhyLocationCount  OBJECT-TYPE
    SYNTAX INTEGER (1..65535)
    ACCESS read-only
    STATUS mandatory
    DESCRIPTION
        "Each physical location exists one or more times.
         This object defines the number of instances that
         exist for the specified location type."
    ::= { chasPhyLocationEntry 2 }

chasPhyLocationType OBJECT-TYPE
    SYNTAX OBJECT IDENTIFIER
    ACCESS read-only
    STATUS mandatory
    DESCRIPTION
        "Uniquely identifies the 'type' of the physical
         location within the chassis."
    ::= { chasPhyLocationEntry 3 }

chasPhyLocationDescr OBJECT-TYPE
    SYNTAX DisplayString
    ACCESS read-only
    STATUS mandatory
    DESCRIPTION
        "Each type of physical location within the chassis
         is given a textual name."
    ::= { phyLocationEntry 4 }


chasModuleTable OBJECT-TYPE
    SYNTAX SEQUENCE OF ChasModuleEntry
    ACCESS not-accessible
    STATUS mandatory
    DESCRIPTION
        "This table identifies the physical modules within the
         chassis. Each module is identified by means of its
         location within the chassis, as specified by reference
         to chasPhyLocationTable.

         If a location is empty then a particular implementation of
         this MIB may choose to include or exclude a row representing
         that location. If an implementation chooses to include a row
         for every location, then those rows representing empty slots
         will be identified by a value for chasModuleType of
         chasLocationEmpty."
    :: { chasPhysical 2 }

chasModuleEntry OBJECT-TYPE
    SYNTAX ChasPhyModuleEntry
    ACCESS not-accessible
    STATUS mandatory
    DESCRIPTION
        "An entry in this table that describes a physical
         module that is currently present at a given physcial
         location within the chassis."
    INDEX { chasModuleLocationType, chasModuleLocation }
    ::= { chasModuleTable 1 }

ChasPhyModuleEntry ::= SEQUENCE
    chasModuleLocationType        INTEGER,
    chasModuleLocation            INTEGER,
    chasModuleType                OBJECT IDENTIFIER,
    chasModuleSwVersion           DisplayString,
    chasModuleHwVersion           DisplayString,
    chasModuleSerialNumber        DisplayString,
    chasModuleDescription         DisplayString,
    chasModuleLastChange          TimeTicks,
    chasModuleState               INTEGER
}

chasModuleLocationType  OBJECT-TYPE
    SYNTAX INTEGER
    ACCESS read-only
    STATUS mandatory
    DESCRIPTION
        "An instance of a module is identified by the
         physical location in which it resides.  The physical
         location is identified by location type and
         location index (instance of that location type).
         This value of this object identifies a row in the
         the chasPhyLocationTable, ie a value of
         chasPhyLocationTypeIndex."
    ::= { chasModuleEntry 1 }

chasModuleLocation  OBJECT-TYPE
    SYNTAX INTEGER
    ACCESS read-only
    STATUS mandatory
    DESCRIPTION
        "An instance of a module is identified by the
         physical location in which it resides.  The physical
         location is identified by location type and
         location index (instance of that location type).
         This object defines the instance of a particular
         location type.  It must be within the bounds
         defined by chasPhyLocationCount for the conceptual
         row in the chasPhyLocationTable identified by
         chasModuleLocationType."
    ::= { chasModuleEntry 2 }

chasModuleType OBJECT-TYPE
    SYNTAX OBJECT IDENTIFIER
    ACCESS read-only
    STATUS mandatory
    DESCRIPTION
        "An authoritative identification of the type of
         physcial module in this physical location.  A
         value of chasModuleUnknown indicates that the type
         of physical module is unknown.

         A particular implementation of this MIB may be such that it
         contains an entry for every location in the chassis, including
         those that are empty. In such cases the value of this object
         for locations that are empty should be chasLocationEmpty."
    :== { chasModuleEntry 3 }

chasModuleSwVersion OBJECT-TYPE
    SYNTAX DisplayString (SIZE (0..32))
    ACCESS read-only
    STATUS mandatory
    DESCRIPTION
        "A textual description of the version/revision
         level for this module's software.  If not applicable
         or the location represented by this row is empty then
         the value of this object should be a zero-length
         string."
    :== { chasModuleEntry 4 }

chasModuleHwVersion OBJECT-TYPE
    SYNTAX DisplayString (SIZE (0..32))
    ACCESS read-only
    STATUS mandatory
    DESCRIPTION
        "A textual description of the version/revision
         level for this module's firmware.  If not available
         or the location represented by this row is empty then
         the value of this object should be a zero-length string."
    ::= { chasModuleEntry 5 }

chasModuleSerialNumber OBJECT-TYPE
    SYNTAX DisplayString (SIZE (0..32))
    ACCESS read-only
    STATUS mandatory
    DESCRIPTION
        "The serial number of the physical module present
         in this physical location. If no serial number is
         available for a particular row, or that row represents
         an empty location then the value of this object should be
         a zero length string."
    ::= { chasModuleEntry 6 }

chasModuleDescription OBJECT-TYPE
    SYNTAX DisplayString (SIZE (0..32))
    ACCESS read-only
    STATUS mandatory
    DESCRIPTION
            "A textual description of the physical module
            plugged that resides in this physical location.

            If not available for a particular row, or that row
            represents an empty location then the value of this
            object should be a zero length string."
    ::= { chasModuleEntry 7 }

chasModuleLastChange OBJECT-TYPE
    Syntax TimeTicks
    ACCESS read-only
    STATUS mandatory
    DESCRIPTION
            "The value of MIB-II's sysUpTime (in the agent
             supporting this chassis MIB) at which a module was
             last inserted or initialized.  If the module has
             not changed since the last network managment
             system reinitialized, or a particular row represents
             an empty slot then the value of this object will be
             zero."
    ::= { chasModuleEntry 8 }

-- && Replaced chasModuleAdminStatus and chasModuleOperStatus with
-- && chasModuleState. It was unclear what value should be returned when
-- && reading the value of the Admin state and write-only parameters are
-- && no longer in vogue.
-- &&
-- && A state table for this object will be included in the text to this MIB

chasModuleState OBJECT-TYPE
    Syntax INTEGER {
        other               (1),

        enable              (2),
        disable             (3),
        reset               (4),
        test                (5),

        testInProgress      (6),
        resetInProgress     (7),
        operational         (8),
        diabled             (9),
        warning            (10),
        nonFatalError      (11),
        fatalError         (12)
    }
    ACCESS read-write
    STATUS mandatory
    DESCRIPTION
       "This object may be read or written. Reading the value of this
        object returns the current state of the module, writing to this object
        requests a change in state of this module. The values enable(2),
        disable (3), reset (4) and test (5) are writable values. All other
        values are readable states. An SNMP error will occur on an attempt
        to write a any value other than one of the four above.

        It is not a requirement that all chassis support all read or write
        values, or that a single chassis support the same set of writable
        values for all modules. It may be inappropriate to support 'reset'