Re: DECnet MIB question (3) -- adjacency index

saperia@tcpjon.ogo.dec.com Fri, 21 August 1992 19:06 UTC

Received: from ietf.nri.reston.va.us by IETF.NRI.Reston.VA.US id aa05051; 21 Aug 92 15:06 EDT
Received: from NRI.NRI.Reston.Va.US by IETF.NRI.Reston.VA.US id ab05045; 21 Aug 92 15:06 EDT
Received: from inet-gw-2.pa.dec.com by NRI.Reston.VA.US id aa14343; 21 Aug 92 15:07 EDT
Received: by inet-gw-2.pa.dec.com; id AA27192; Fri, 21 Aug 92 12:04:59 -0700
Received: by nsl.pa.dec.com; id AA21700; Fri, 21 Aug 92 11:45:02 -0700
Received: by nsl.pa.dec.com; id AA21696; Fri, 21 Aug 92 11:45:01 -0700
Received: by inet-gw-2.pa.dec.com; id AA26064; Fri, 21 Aug 92 11:45:00 -0700
Received: by tcpjon.ogo.dec.com (5.57/ULTRIX-fma-071891); id AA01145; Fri, 21 Aug 92 14:47:40 -0400
Message-Id: <9208211847.AA01145@tcpjon.ogo.dec.com>
To: Art Berggreen <art@opal.acc.com>
Cc: saperia@tcpjon.ogo.dec.com, phiv-mib@pa.dec.com
Subject: Re: DECnet MIB question (3) -- adjacency index
In-Reply-To: Your message of "Fri, 21 Aug 92 11:23:02 PDT." <9208211823.AA17476@opal.acc.com>
Date: Fri, 21 Aug 1992 14:47:39 -0400
From: saperia@tcpjon.ogo.dec.com
X-Mts: smtp

I believe the following will make everyone happy:


       phivAdjTable OBJECT-TYPE
           SYNTAX SEQUENCE OF PhivAdjEntry
           ACCESS not-accessible
           STATUS mandatory
           DESCRIPTION
               "The Adjacency Table."
           ::= { adjacency 1 }

       phivAdjEntry OBJECT-TYPE
           SYNTAX PhivAdjEntry
           ACCESS not-accessible
           STATUS mandatory
           DESCRIPTION
               "There is one entry in the table for each adjacency."
          INDEX  { phivAdjIndex  }
          ::= { phivAdjTable 1 }

       PhivAdjEntry ::=
           SEQUENCE {
               phivAdjIndex
                   INTEGER,
               phivAdjCircuitIndex
                   INTEGER,
               phivAdjNodeAddr
                   PhivAddr,
:
:stuff deleted
:
      phivAdjIndex OBJECT-TYPE
           SYNTAX INTEGER
           ACCESS read-only
           STATUS mandatory
           DESCRIPTION
               "A unique index value for each known adjacency."
           ::= { phivAdjEntry 1 }

      phivAdjCircuitIndex OBJECT-TYPE
           SYNTAX INTEGER
           ACCESS read-only
           STATUS mandatory
           DESCRIPTION
               "A unique index value for each known circuit.  This
               value is the same as phivCircuitIndex."
           ::= { phivAdjEntry 2 }

       phivAdjNodeAddr OBJECT-TYPE
           SYNTAX PhivAddr -- OCTET STRING (SIZE (2))
           ACCESS read-only
           STATUS mandatory
           DESCRIPTION
               "The address of the adjacent node."
           ::= { phivAdjEntry 3 }



:
:more stuff leff out
:


Return-Path: art@opal.acc.com
Received: by tcpjon.ogo.dec.com (5.57/ULTRIX-fma-071891);
	id AA01095; Fri, 21 Aug 92 14:25:39 -0400
Received: by inet-gw-2.pa.dec.com; id AA24814; Fri, 21 Aug 92 11:22:51 -0700
Received: by opal.acc.com (4.1/SMI-4.0)id AA17476; Fri, 21 Aug 92 11:23:02 PDT
Date: Fri, 21 Aug 92 11:23:02 PDT
From: art@opal.acc.com (Art Berggreen)
Message-Id: <9208211823.AA17476@opal.acc.com>
To: saperia
Subject: Re: DECnet MIB question (3)  -- adjacency index
Cc: deb@tci.bell-atl.com, phiv-mib@Pa.dec.com

>
>Hi,  This has gotten a bit confusing for me, so I have extracted form the mib,
>entered changes - Please comment on this directly. 
>
>Is this what John/Art are suggesting:
>
>
>       phivAdjTable OBJECT-TYPE
>           SYNTAX SEQUENCE OF PhivAdjEntry
>           ACCESS not-accessible
>           STATUS mandatory
>           DESCRIPTION
>               "The Adjacency Table."
>           ::= { adjacency 1 }
>
>       phivAdjEntry OBJECT-TYPE
>           SYNTAX PhivAdjEntry
>           ACCESS not-accessible
>           STATUS mandatory
>           DESCRIPTION
>               "There is one entry in the table for each adjacency."
>----->     INDEX  { phivAdjCircuitIndex, phivAdjNodeAddr }
	             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
I'd go for this, but others seem to prefer something like:
	    INDEX  { phivAdjIndex  }

>           ::= { phivAdjTable 1 }
>
>       PhivAdjEntry ::=
>           SEQUENCE {
>               phivAdjCircuitIndex
>                   INTEGER,
>               phivAdjNodeAddr
>                   PhivAddr
>:
>:lines deleted
>:
>      phivAdjCircuitIndex OBJECT-TYPE
>           SYNTAX INTEGER
>           ACCESS read-only
>           STATUS mandatory
>           DESCRIPTION
>------>        "A unique index value for each known adjacency."

No, from its name, I think this object should be the Circuit Table Index.
If we use a single part, local instance, we need a new object (maybe called
phivAdjIndex) which is unique across all adjacencies.  If so, I'd like to
be able to give it locally meaningful structure, but externally it's just
a unique INTEGER.

>           ::= { phivAdjEntry 1 }
>
>       phivAdjNodeAddr OBJECT-TYPE
>           SYNTAX PhivAddr -- OCTET STRING (SIZE (2))
>           ACCESS read-only
>           STATUS mandatory
>           DESCRIPTION
>               "The address of the adjacent node."
>           ::= { phivAdjEntry 2 }
>
>This still leaves us with no connection to the circuit over which the
>adjacency occurs.  We can either add circuit (as I noted yesturday)  or we can
>redefine phivAdjCircuitIndex to be something else (e.g., the Circuit Table
>index).  If we do the latter are we certain that we have under all
>circumstances created unique indicies to the table?

By definition, Adjacencies are formed with other nodes (defined by node ID)
across a circuit (defined by circuit index).  If the instance reflects that,
it must be unique.  On the other hand, we can use a simple index which is
locally defined and guaranteed unique.

>/jon

Art