Interface Table

"David L. Arneson (arneson@ctron.com)" <arneson@yeti.ctron.com> Thu, 03 September 1992 19:23 UTC

Return-Path: <owner-chassismib>
Received: by CS.UTK.EDU (5.61++/2.8s-UTK) id AA05831; Thu, 3 Sep 92 15:23:40 -0400
Received: from nic.near.net by CS.UTK.EDU with SMTP (5.61++/2.8s-UTK) id AA05827; Thu, 3 Sep 92 15:23:37 -0400
Received: from ctron.com by nic.near.net id aa27721; 3 Sep 92 15:23 EDT
Received: from yeti.ctron ([134.141.40.159]) by ctron.com (4.1/SMI-4.1) id AA27097; Thu, 3 Sep 92 15:30:44 EDT
Received: by yeti.ctron (4.1/SMI-4.1) id AA02098; Thu, 3 Sep 92 15:23:08 EDT
Message-Id: <9209031923.AA02098@yeti.ctron>
To: chassismib@cs.utk.edu
Subject: Interface Table
Reply-To: arneson@ctron.com
Date: Thu, 03 Sep 92 15:23:01 -0400
From: "David L. Arneson (arneson@ctron.com)" <arneson@yeti.ctron.com>


I hear all of the concerns about the content of the chassis MIB.  I have
my wants needs and desires.  It appears that others of you have similar
needs.  so what I have done is to put together ASN.1 syntax for the
inteface table.

Now the major questions outstanding.  First I feel it must be part of
the chassis MIB.  If we move it we lose context for slot, entity, and
segment.  Each of these are very important to the definition of this
table.

Second I agree not everybody will be able to implement this table.  So
why not put it in a separate group and make that group optional.

Also notice that I have included Keith's idea of interface type.  The
only change I made was to make it a bit mask.  I feel this is required
since a given interface may both bridge and route at the same time.

So here is what I came up with.  If you like it I will add it to the MIB.

-----------------------------------------------------------------------------

-- Interfaces group

-- The term interface should be read as logical interface.  In fact this
-- may be defined as interface, bridge port, repeater port, etc.

-- Implementation of this group is optional.

chasIfTable	OBJECT-TYPE
	SYNTAX	SEQUENCE OF chasIfEntry
	ACCESS	not-accessible
	STATUS	mandatory
	DESCRIPTION
		"A table the contains information about which
		 interfaces/ports are connected to which segments on
		 which entities."
	::= { chassis 5 }

chasIfEntry	OBJECT-TYPE
	SYNTAX	ChasIfEntry
	ACCESS	not-accessible
	STATUS	mandatory
	DESCRIPTION
		"A configuration relationship between an entity, its
		 interfaces and the segments those interfaces maybe 
		 connected to.  Such a relationship exists if an entity
		 realizes an interface."
	INDEX	{ chasIfEntity,
		  chasIfSegment
		  chasIfIndex }
	::= { chasIfTable 1 }

ChasIfEntry ::= SEQUENCE {
	chasIfEntity
	    INTEGER,
	chasIfSegment
	    INTEGER,
	chasIfIndex
	    INTEGER,
	chasIfSlot
	    INTEGER,
	chasIfIndexType
	    INTEGER
	}

chasIfEntity	OBJECT-TYPE
	SYNTAX	INTEGER (1..65535)
	ACCESS	read-only
	STATUS	mandatory
	DESCRIPTION
		"The entity for this interface relationship.  The entity
		 identified by this object is the same entity identified
		 by chasEntityIndex."
	::= { chasIfEntry 1 }

chasIfSegment	OBJECT-TYPE
	SYNTAX	INTEGER (1..65535)
	ACCESS	read-only
	STATUS	mandatory
	DESCRIPTION
		"The segment of this interface relationshil.  The segment
		 identified by this object is the same entity identified
		 by chasSegmentIndex."
	::= { chasIfEntry 2 }

chasIfIndex	OBJECT-TYPE
	SYNTAX	INTEGER (1..65535)
	ACCESS	read-only
	STATUS	mandatory
	DESCRIPTION
		"An INTEGER which is the particular index value of whatever 
               object type chasIfIndexType points to, such that it 
               identifies a particular interface/port/whatever."
	::= { chasIfEntry 3 }

chasIfSlot	OBJECT-TYPE
	SYNTAX	INTEGER (1..65535)
	ACCESS	read-only
	STATUS	mandatory
	DESCRIPTION
		"The slot that this interface relationship exists on.
		 The slot identified by this object is the same slot
		 identified by chasSlotIndex."
	::= {chasIfEntry 4 }

chasIfIndexType	OBJECT-TYPE
	SYNTAX	INTEGER (0..1023)
	ACCESS	read-only
	STATUS	mandatory
	DESCRIPTION
		"The generic type of the logical interface.  This
		 value may specify bridge, repeater, router, etc or
		 some combination of those values.  This value is defined
		 the same as chasEntityFunction.

                 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,
                                            -- e.g. FDDI concentrator
                                bridge  2
                                router  3
                        terminalServer  4
                                 agent  5   -- entity that defines chassis MIB
                              services  6   -- e.g. MIB Walk tools etc
                                   mau  7
                                 power  8
                                  rmon  9

                 For example, an interface performing both bridging and
                 routing functions would have a value of 12 (2^2 +
                 2^3)."
	::= { chasIfEntry 5 }



/David Arneson [arneson@ctron.com] [ (603)332-9400 ]