Chassis MIB comments
David Perkins <dperkins@synoptics.com> Thu, 15 October 1992 22:06 UTC
Return-Path: <owner-chassismib>
Received: by CS.UTK.EDU (5.61++/2.8s-UTK) id AA25224; Thu, 15 Oct 92 18:06:38 -0400
Received: from mvis1.synoptics.com by CS.UTK.EDU with SMTP (5.61++/2.8s-UTK) id AA25220; Thu, 15 Oct 92 18:06:33 -0400
Received: from immer.synoptics.com by synoptics.com (4.1/SMI-4.1) id AA04142; Thu, 15 Oct 92 15:05:35 PDT
Received: by immer.synoptics.com (4.1/2.0N) id AA02036; Thu, 15 Oct 92 15:05:37 PDT
Message-Id: <9210152205.AA02036@immer.synoptics.com>
Date: Thu, 15 Oct 1992 15:05:37 -0700
From: David Perkins <dperkins@synoptics.com>
To: chassismib@cs.utk.edu
Subject: Chassis MIB comments
Following is a long list of comments on the chassis MIB. /dave perkins, synoptics, 408-764-1516 ------------------------------------------------------- Notes on Chassis MIB, October 13 version. dtp - 10/13/92, 10/15/92 1) DisplayString and Counter must be Imported in the MIB. 2) Last of section 2, comments should be sent to the WG (chassismib@cs.utk.edu) and not just a subset of the authors! 3) Quite a bit of section 5 needs to be rewritten! 4) Here is a suggested rewrite for section 5 (5.0) This memo defines objects for the management of a chassis containing multiple slots. Each slot may contain a physical module. Each physical module may contain a part of a device, a complete device, or multiple devices. A device may be a network device such as a router, bridge, terminal server, repeater, or management card or a chassis support device such as a power supply or fan. This memo uses the term 'entity' to refer to a device. This type of chassis often contains one or more internal segments through which the entities 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. The segments may be completely proprietary and may also correspond to non-network connections such as power or cooling. This MIB contains four tables: the Slot Table, the Entity Table, the Segment Table, and the Chassis Configuration Table. The remainder of this section will discuss the contents of these tables. In an effort to clarify the contents of the 4 tables the following example is presented. The discussion of each table will refer to this example: 5) The example needs to be labled as section 5.1 and the existing sections need to be renumbered. 6) The example needs to be made more comprehensive. Consider the follow revision: 5.1. Example Chassis Consider a simple 8 slot chassis that contains a bridge, 2 repeaters, a terminal server, router, and a power supply. The chassis is organized as follows: Slot Entity Segment Device 1 2 1 Bridge - one slot, two connections 1 2 2 3 1 1 Repeater - two slots, two connections 4 1 1 5 3 2 Repeater - one half a slot, one connection 5 4 1 Terminal server - one half a slot, one conn 6 5 1 Router - two slots, two connections on first 6 5 2 slot and none on second slot 7 5 0 8 6 0 Power supply - one slot, no connections 7) Section 5.1 needs to be renumberd and cleaned up something like the following: 5.2. The Slot Table The slot table that contains information about the physical modules in the chassis. The conceptual rows in this table correspond to slots in the chassis. For those slots that do not contain a physical module, the table may be implemented to contain a conceptual row with the identity of the physical module set to "empty" or may be implemented to have no conceptual row instance. The example above shows an 8 slot chassis. Notice that slot 2 is empty and all the other slots contain a physical module. The slot table may be implemented to have 8 conceptual rows (complete) or 7 rows (sparse). Implementation of the slot table is mandatory. 8) Section 5.2 needs to be renumbered and cleaned up something like the following: 5.3. The Entity Table The entity table contains information about the entities in a chassis. In addition it defines the means to access a MIB view for each such entity, if access is possible. These may be addressed either by the combination of chasEntityCommunity and chasEntityIPAddress or by chasEntityParty. Using the above example the entity table will have 6 conceptual rows, one for each entity. In the example the entities are 2 repeaters, a bridge, a terminal server, a router, and a power supply. Implementation of the entity table is optional. 9) Section 5.3 needs to be renumbered and cleaned up something like the following: 5.4. The Segment Table The segment table contains information about the segments, contained within the chassis, and used to interconnect the chassis's entities. Using the above example this table would contain 2 conceptual rows, one for each segment. Implementation of this table is mandatory. 10) Section 5.4 needs to be renumbered and cleaned up something like the following: 5.5. The Chassis Configuration Table The chassis configuration table contains the mapping of entities to segments. The objects, chasConfigIndexType and chasConfigIndexValue provide linkage from an entity's segment connection in this MIB to the management information contained in the entity's own MIB. In particular, these objects indicate that the particular segment connection of the entity in the slot represented by this conceptual row is identified within the entity's MIB by the object type named by chasConfigIndexType having the value given by chasConfigIndexValue. It is an implementation specific matter whether the chasConfigTable is implemented to allow creation and/or deletion of conceptual rows. Using the above example the configuration table would contain 10 conceptual rows. One for each slot, entity, segment combination defined in the example above. The first conceptual row would define the bridge entity in slot 1 with chasConfigIndexType of bridge port and chasConfigIndex value of 1. The other conceptual rows would be similar defining the bridge port and repeater ports. Implemenation of this group is optional. 11) A new section needs to be added to describe the chassis description objects. An example would be the following: 5.6. Chassis Description The chassis description group contains information about the physical chassis. Implementation of this group is mandatory. 11) Section 5.5 needs much work to be complete. The approach about virtualizing a physical chassis into a logical chassis seems interesting. However, the model and values for the MIB objects do not seem to support it. Several concrete examples need to be given. One needs to show a hierachical organization of several layers and the values of the objects at each layer. What do segments map into with a virtual chassis? What are the values for the following objects when a multi-level virtual chassis is used: chasSlotModuleType, chasSlotLastChange, chasSlotModuleVersion, chasSlotModuleSerialNumber, chasEntityFunction, chasEntityFunction, chasEntityObjectId, chasEntityVersion, chasEntityAdminStatus, and chasEntityOperStatus? 12) Section 5.6 about multiple instances of agents that support the chassis MIB in one chassis doesn't seem like it nails down anything! It needs to be cleaned up. Also, does it still apply in a virtual chassis environment? 13) As written, the MIB doesn't identify groups and specifiy which are mandatory or optional. In the rewritten descriptions above, I suggest one such labling. 14a) Is chasNumSlots the highest value for chasSlotIndex? 14b) May the value of chasNumSlots freely change, or must a change cause the chassis agent to warm (or cold) start? 15) The ASN.1 comments about the chassis slot table should be moved to the description for the table and modified something like the following: chasSlotTable OBJECT-TYPE SYNTAX SEQUENCE OF ChasSlotEntry ACCESS not-accessible STATUS mandatory DESCRIPTION "A table that contains information about the slots in this chassis. For those slots that do not contain a physical module, the table may be implemented to contain a conceptual row with the type of the physical module set to 'empty' or may be implemented to have no conceptual row instance." ::= { chasSlot 2 } 16) All tables need to indicate in the description for the row whether instances of rows in the table made be created or delete, and if so, how this is done. For example, the description for row for the chassis slot table should be changed to something like the following: chasSlotEntry OBJECT-TYPE SYNTAX ChasSlotEntry ACCESS not-accessible STATUS mandatory DESCRIPTION "A row in the chassis slot table. New instances may not be created nor deleted with SNMP operations." INDEX { chasSlotIndex } ::= { chasSlotTable 1 } 17) The description for chasSlotModuleType should be updated. The following is a suggestion: chasSlotModuleType OBJECT-TYPE SYNTAX OBJECT IDENTIFIER ACCESS read-only STATUS mandatory DESCRIPTION "The type of physical module contained into this slot of the chassis. If the table is implemented as 'complete', a value of chasSlotEmpty is used to indicate an empty slot. A value of chasSlotUnknown indicates that the type of module is unknown. Other values may be assigned by vendors." ::= { chasSlotEntry 2 } 18) The descriptions for all OID values should be given. For example, the following is a suggested value to add for chasSlotEmpty: -- Indicates that a slot is empty. chasSlotEmpty OBJECT IDENTIFIER ::= { chasSlot 3 } 19) The description for chasSlotModuleSerialNumber should have the sentence "If the slot table is implemented as dense and the slot is empty this value will be the zero length string." removed. 20) I suggest that the slot table always be implemented as "complete". Another column should be added which would have the status of the physical module in the slot. It is added so that the values of a physical module that was removed are still available. The status column could have the following values: unknown(1) - information about the slot is unknown; inserted(2) - a physical module is in the slot and values are available; notOperational(3) - a physical module is in the slot and values may be available; removed(4) - a physical module was previously in the slot, but it is now empty. 21) The Party, Community, and IpAddress should be split from the Entity table into a parallel table. This information may not be available even if the other columns in the table are. There are several chassis implementations where 22) The phrase "logical networking device" needs to be replaced by "entity" throughout the document. 23) For the object chasEntityFunction, what is the meaning of the value "services"? 24) The object chasEntityFunction should have a value which means "host". 25) The list of functions for chasEntityFunction seems too short. What other functions exist in current chassis? 26) The column chasEntityObjectId seems useless. It identifies an agent, not an entity, and for those entities like power supplies, there may be no agent that has information about them. 27) The description for chasEntityAdminStatus does not include a description of reset(4). 28) A coorespondense is not shown how to get to each value of chasEntityOperStatus from setting chasEntityAdminStatus. For example, how does an entity get into the testin(3) status? 29) The description for chasEntityOperStatus does not include a description of invalid(2). 30) The object chasEntityArgument seems very implementation specific. It should be tossed. 31) The description of chasEntityTimeStamp should be modified to something like the following: chasEntityTimeStamp 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 this entity was last (re-)initialized. If this entity has not been (re-)initialized since this agent was last (re-)initialized, then this object has a zero value." ::= { chasEntityEntry 9 } 32) The description of object chasSegmentType needs more elaberation to describe the standard well known segments. 33) A well known value for "unknown" for chasSegmentType needs to be defined. 34) The start for counter chasPhysicalChanges needs to be defined. (should probably be since the agent warm/cold started.) 35) Why is the range for chasConfigEntity started at zero and not one? 36) There needs to be more explaination given about creation and deletion of instances in the chassis configuration table. 37) The object chasConfigIndexType (and chasConfigIndexValue) have ambiguous values. (For example, consider a brouter (router/bridge). A connection could be a bridge port and an interface. Which should be used?) As such, they should be removed since they are misleading (or rules must be defined to help in choosing the value). Also, the SYNTAX type for chasConfigIndexType should be OBJECT IDENTIFIER and it should point to an instance, and not an object type. The object chasConfigIndexValue is not needed at all. 39) It seems like there should be traps for insertion and removable of physical modules from slots. -- that's all
- Chassis MIB comments Niels Ole Brunsgaard
- Re: Chassis MIB comments arneson
- Re: Chassis MIB comments Kiho Yum
- Chassis MIB comments Keith McCloghrie
- Re: Chassis MIB comments David L. Arneson (arneson@ctron.com)
- Chassis MIB comments Dan Romascanu
- Re: Chassis MIB comments Keith McCloghrie
- Re: Chassis MIB comments Keith McCloghrie
- Re: Chassis MIB comments Dan Romascanu
- Chassis MIB comments David Perkins
- Re: Chassis MIB comments David L. Arneson (arneson@ctron.com)
- Re: Chassis MIB comments Bob Stewart
- Re: Chassis MIB comments Kiho Yum
- Chassis MIB comments Chris Chiotasso
- Re: Chassis MIB comments Manu Kaycee
- Re: Chassis MIB comments Chris Chiotasso
- RE: Chassis MIB comments {3COM/PDD/PeteW}
- Chassis MIB comments Chris Chiotasso
- RE: Chassis MIB comments Manu Kaycee
- Re: Chassis MIB comments David L. Arneson
- Re: Chassis MIB comments David L. Arneson
- Re: Chassis MIB comments Manu Kaycee
- Re: Chassis MIB comments Bob Stewart
- Re: Chassis MIB comments Mahendra J. Kaycee
- Re: Chassis MIB comments Mike MacFaden
- Chassis MIB comments Dan Romascanu
- Re: Chassis MIB comments Joseph Zur