Subject: New Inverted Stack Table MIB

From: Keith McCloghrie <[email-masked]>
Date: Fri, 17 Jul 1998 12:45:44 -0700 (PDT)

Here's the new MIB containing the Inverted Interface Stack Table.
This has also been submitted as an Internet Draft.

Keith.
-------------

Network Working Group                                   Keith McCloghrie
Internet Draft                                             Cisco Systems
                                                             Gary Hanson
                                                             ADC Kentrox
                                                            16 July 1998

                   The Inverted Stack Table Extension
                      to the Interfaces Group MIB

                  draft-ietf-ifmib-invstackmib-00.txt

Status of this Memo

This document is an Internet-Draft.  Internet-Drafts are working
documents of the Internet Engineering Task Force (IETF), its areas, and
its working groups.  Note that other groups may also distribute working
documents as Internet-Drafts.

Internet-Drafts are draft documents valid for a maximum of six months
and may be updated, replaced, or obsoleted by other documents at any
time.  It is inappropriate to use Internet- Drafts as reference material
or to cite them other than as ``work in progress.''

To learn the current status of any Internet-Draft, please check the
``1id-abstracts.txt'' listing contained in the Internet- Drafts Shadow
Directories on ds.internic.net (US East Coast), nic.nordu.net (Europe),
ftp.isi.edu (US West Coast), or munnari.oz.au (Pacific Rim).

Copyright Notice

Copyright (C) The Internet Society (1998).  All Rights Reserved.

Expires January 1999                                            [Page 1]


Internet Draft        Inverted Stack Extension MIB             July 1998

1.  Introduction

This memo defines a portion of the Management Information Base (MIB) for
use with network management protocols in the Internet community.  In
particular, it describes managed objects which provide an inverted
mapping of the interface stack table used for managing network
interfaces.

2.  The SNMP Network Management Framework

The SNMP Management Framework presently consists of five major
components:

o    An overall architecture, described in RFC 2271 [1].

o    Mechanisms for describing and naming objects and events for the
     purpose of management.  The first version of this Structure of
     Management Information (SMI) is called SMIv1 and described in RFC
     1155 [2], RFC 1212 [3] and RFC 1215 [4].  The second version,
     called SMIv2, is described in RFC 1902 [5], RFC 1903 [6] and RFC
     1904 [7].

o    Message protocols for transferring management information.  The
     first version of the SNMP message protocol is called SNMPv1 and
     described in RFC 1157 [8].  A second version of the SNMP message
     protocol, which is not an Internet standards track protocol, is
     called SNMPv2c and described in RFC 1901 [9] and RFC 1906 [10].
     The third version of the message protocol is called SNMPv3 and
     described in RFC 1906 [10], RFC 2272 [11] and RFC 2274 [12].

o    Protocol operations for accessing management information.  The
     first set of protocol operations and associated PDU formats is
     described in RFC 1157 [8].  A second set of protocol operations and
     associated PDU formats is described in RFC 1905 [13].

o    A set of fundamental applications described in RFC 2273 [14] and
     the view-based access control mechanism described in RFC 2275 [15].

Managed objects are accessed via a virtual information store, termed the
Management Information Base or MIB.  Objects in the MIB are defined
using the mechanisms defined in the SMI.

This memo specifies a MIB module that is compliant to the SMIv2.  A MIB
conforming to the SMIv1 can be produced through the appropriate

Expires January 1999                                            [Page 2]


Internet Draft        Inverted Stack Extension MIB             July 1998

translations.  The resulting translated MIB must be semantically
equivalent, except where objects or events are omitted because no
translation is possible (e.g., use of Counter64).  Some machine readable
information in SMIv2 will be converted into textual descriptions in
SMIv1 during the translation process.  However, this loss of machine
readable information is not considered to change the semantics of the
MIB.

3.  Interface Sub-Layers and the ifStackTable

MIB-II [16] defines objects for managing network interfaces by providing
a generic interface definition together with the ability to define
media-specific extensions.  The generic objects are known as the
'interfaces' group.

Experience in defining media-specific extensions showed the need to
distinguish between the multiple sub-layers beneath the internetwork-
layer.  Consider, for example, an interface with PPP running over an
HDLC link which uses a RS232-like connector.  Each of these sub-layers
has its own media-specific MIB module.

RFC xxxx [17], the latest definition of the 'interfaces' group,
satisfies this need by having each sub-layer be represented by its own
conceptual row in the ifTable.  It also defines an additional MIB table,
the ifStackTable, to identify the "superior" and "subordinate" sub-
layers through ifIndex "pointers" to the appropriate conceptual rows in
the ifTable.

Each conceptual row in the ifStackTable represents a relationship
between two interfaces, where this relationship is that the "higher-
layer" interface runs "on top" of the "lower-layer" interface.  For
example, if a PPP module operated directly over a serial interface, the
PPP module would be a "higher layer" to the serial interface, and the
serial interface would be a "lower layer" to the PPP module.  This
concept of "higher-layer" and "lower-layer" is the same as embodied in
the definitions of the ifTable's packet counters.

The ifStackTable is INDEX-ed by the ifIndex values of the two interfaces
involved in the relationship.  By necessity, one of these ifIndex values
must come first, and RFC xxxx chose to have the higher-layer interface
first, and the lower-layer interface second.  Due to this, it is
straight-forward for a Network Management application to read a subset
of the ifStackTable and thereby determine the interfaces which run

Expires January 1999                                            [Page 3]


Internet Draft        Inverted Stack Extension MIB             July 1998

underneath a particular interface.  However, to determine which
interfaces run on top of a particular interface, a Network Management
application has no alternative but to read the whole table.  This is
very inefficient when querying a device which has many interfaces, and
many conceptual rows in its ifStackTable.

This MIB provides an inverted Interfaces Stack Table, the
ifInvStackTable.  While it contains no additional information beyond
that already contained in the ifStackTable, the ifInvStackTable has the
ifIndex values in its INDEX clause in the reverse order, i.e., the
lower-layer interface first, and the higher-layer interface second.  As
a result, the ifInvStackTable is an inverted version of the same
information contained in the ifStackTable.  Thus, the ifInvStackTable
provides an efficient means for a Network Management application to read
a subset of the ifStackTable and thereby determine which interfaces run
on top of a particular interface.

Expires January 1999                                            [Page 4]


Internet Draft        Inverted Stack Extension MIB             July 1998

4.  Definitions

IF-INVERTED-STACK-MIB DEFINITIONS ::= BEGIN

IMPORTS
    MODULE-IDENTITY, OBJECT-TYPE, mib-2      FROM SNMPv2-SMI
    RowStatus                                FROM SNMPv2-TC
    MODULE-COMPLIANCE, OBJECT-GROUP          FROM SNMPv2-CONF
    ifStackHigherLayer, ifStackLowerLayer    FROM IF-MIB;

ifInvertedStackMIB MODULE-IDENTITY
    LAST-UPDATED "9807161200Z"
    ORGANIZATION "IETF Interfaces MIB Working Group"
    CONTACT-INFO
            "   Keith McCloghrie
                Cisco Systems, Inc.
                170 West Tasman Drive
                San Jose, CA  95134-1706
                US

                408-526-5260
                [email-masked]"
    DESCRIPTION
            "The MIB module which provides the Inverted Stack Table for
            interface sub-layers."
    REVISION      "9807161200Z"
    DESCRIPTION
            "Initial revision."
    ::= { mib-2 xx }

ifInvMIBObjects OBJECT IDENTIFIER ::= { ifInvertedStackMIB 1 }

Expires January 1999                                            [Page 5]


Internet Draft        Inverted Stack Extension MIB             July 1998

--
--           The Inverted Interface Stack Group
--

ifInvStackTable  OBJECT-TYPE
     SYNTAX        SEQUENCE OF IfInvStackEntry
     MAX-ACCESS    not-accessible
     STATUS        current
     DESCRIPTION
            "A table containing information on the relationships between
            the multiple sub-layers of network interfaces.  In
            particular, it contains information on which sub-layers run
            'underneath' which other sub-layers, where each sub-layer
            corresponds to a conceptual row in the ifTable.  For
            example, when the sub-layer with ifIndex value x runs
            underneath the sub-layer with ifIndex value y, then this
            table contains:

              ifInvStackStatus.x.y=active

            For each ifIndex value, I, which identifies an active
            interface, there are always at least two instantiated rows
            in this table associated with I.  For one of these rows, I
            is the value of ifStackHigherLayer; for the other, I is the
            value of ifStackLowerLayer.  (If I is not involved in
            multiplexing, then these are the only two rows associated
            with I.)

            For example, two rows exist even for an interface which has
            no others stacked on top or below it:

              ifStackStatus.x.0=active
              ifStackStatus.0.x=active

            This table contains exactly the same number of rows as the
            ifStackTable, but the rows appear in a different order."
     REFERENCE
            "ifStackTable of RFC xxxx"
     ::= { ifInvMIBObjects 1 }

ifInvStackEntry  OBJECT-TYPE
     SYNTAX        IfInvStackEntry
     MAX-ACCESS    not-accessible
     STATUS        current

Expires January 1999                                            [Page 6]


Internet Draft        Inverted Stack Extension MIB             July 1998

     DESCRIPTION
            "Information on a particular relationship between two sub-
            layers, specifying that one sub-layer runs underneath the
            other sub-layer.  Each sub-layer corresponds to a conceptual
            row in the ifTable."
     INDEX { ifStackLowerLayer, ifStackHigherLayer }
     ::= { ifInvStackTable 1 }

IfInvStackEntry ::=
    SEQUENCE {
        ifInvStackStatus       RowStatus
     }

ifInvStackStatus  OBJECT-TYPE
    SYNTAX         RowStatus
    MAX-ACCESS     read-only
    STATUS         current
    DESCRIPTION
            "The status of the relationship between two sub-layers.

            An instance of this object exists for each instance of the
            ifStackStatus object, and vice versa.  For example, if the
            variable ifStackStatus.H.L exists, then the variable
            ifInvStackStatus.L.H must also exist, and vice versa.  In
            addition, the two variables always have the same value.

            However, unlike ifStackStatus, the ifInvStackStatus object
            is NOT write-able.  A network management application wishing
            to change a relationship between sub-layers H and L cannot
            do so by modifying the value of ifInvStackStatus.L.H, but
            must instead modify the value of ifStackStatus.H.L.  After
            the ifStackTable is modified, the change will be reflected
            in this table."
    ::= { ifInvStackEntry 1 }

Expires January 1999                                            [Page 7]


Internet Draft        Inverted Stack Extension MIB             July 1998

-- conformance information

ifInvConformance OBJECT IDENTIFIER ::= { ifInvMIBObjects 2 }

ifInvGroups      OBJECT IDENTIFIER ::= { ifInvConformance 1 }
ifInvCompliances OBJECT IDENTIFIER ::= { ifInvConformance 2 }

-- compliance statements

ifInvCompliance MODULE-COMPLIANCE
    STATUS  current
    DESCRIPTION
            "The compliance statement for SNMPv2 entities which provide
            inverted information on the layering of network interfaces."

    MODULE  -- this module
        MANDATORY-GROUPS { ifInvStackGroup }

    ::= { ifInvCompliances 1 }

-- units of conformance

ifInvStackGroup    OBJECT-GROUP
    OBJECTS { ifInvStackStatus }
    STATUS  current
    DESCRIPTION
            "A collection of objects providing inverted information on
            the layering of MIB-II interfaces."
    ::= { ifInvGroups 1 }

END

Expires January 1999                                            [Page 8]


Internet Draft        Inverted Stack Extension MIB             July 1998

5.  Acknowledgements

This memo has been produced by the IETF's Interfaces MIB working-group.

6.  References

[1]  Harrington, D., Presuhn, R., and B. Wijnen, "An Architecture for
     Describing SNMP Management Frameworks", RFC 2271, Cabletron
     Systems, Inc., BMC Software, Inc., IBM T. J. Watson Research,
     January 1998

[2]  Rose, M., and K. McCloghrie, "Structure and Identification of
     Management Information for TCP/IP-based Internets", RFC 1155,
     Performance Systems International, Hughes LAN Systems, May 1990

[3]  Rose, M., and K. McCloghrie, "Concise MIB Definitions", RFC 1212,
     Performance Systems International, Hughes LAN Systems, March 1991

[4]  M. Rose, "A Convention for Defining Traps for use with the SNMP",
     RFC 1215, Performance Systems International, March 1991

[5]  SNMPv2 Working Group, Case, J., McCloghrie, K., Rose, M., and S.
     Waldbusser, "Structure of Management Information for Version 2 of
     the Simple Network Management Protocol (SNMPv2)", RFC 1902, SNMP
     Research,Inc., Cisco Systems, Inc., Dover Beach Consulting, Inc.,
     International Network Services, January 1996.

[6]  SNMPv2 Working Group, Case, J., McCloghrie, K., Rose, M., and S.
     Waldbusser, "Textual Conventions for Version 2 of the Simple
     Network Management Protocol (SNMPv2)", RFC 1903, SNMP Research,
     Inc., Cisco Systems, Inc., Dover Beach Consulting, Inc.,
     International Network Services, January 1996.

[7]  SNMPv2 Working Group, Case, J., McCloghrie, K., Rose, M., and S.
     Waldbusser, "Conformance Statements for Version 2 of the Simple
     Network Management Protocol (SNMPv2)", RFC 1904, SNMP Research,
     Inc., Cisco Systems, Inc., Dover Beach Consulting, Inc.,
     International Network Services, January 1996.

[8]  Case, J., Fedor, M., Schoffstall, M., and J. Davin, "Simple Network
     Management Protocol", RFC 1157, SNMP Research, Performance Systems
     International, Performance Systems International, MIT Laboratory
     for Computer Science, May 1990.

Expires January 1999                                            [Page 9]


Internet Draft        Inverted Stack Extension MIB             July 1998

[9]  SNMPv2 Working Group, Case, J., McCloghrie, K., Rose, M., and S.
     Waldbusser, "Introduction to Community-based SNMPv2", RFC 1901,
     SNMP Research, Inc., Cisco Systems, Inc., Dover Beach Consulting,
     Inc., International Network Services, January 1996.

[10] SNMPv2 Working Group, Case, J., McCloghrie, K., Rose, M., and S.
     Waldbusser, "Transport Mappings for Version 2 of the Simple Network
     Management Protocol (SNMPv2)", RFC 1906, SNMP Research, Inc., Cisco
     Systems, Inc., Dover Beach Consulting, Inc., International Network
     Services, January 1996.

[11] Case, J., Harrington D., Presuhn R., and B. Wijnen, "Message
     Processing and Dispatching for the Simple Network Management
     Protocol (SNMP)", RFC 2272, SNMP Research, Inc., Cabletron Systems,
     Inc., BMC Software, Inc., IBM T. J. Watson Research, January 1998.

[12] Blumenthal, U., and B. Wijnen, "User-based Security Model (USM) for
     version 3 of the Simple Network Management Protocol (SNMPv3)", RFC
     2274, IBM T. J. Watson Research, January 1998.

[13] SNMPv2 Working Group, Case, J., McCloghrie, K., Rose, M., and S.
     Waldbusser, "Protocol Operations for Version 2 of the Simple
     Network Management Protocol (SNMPv2)", RFC 1905, SNMP Research,
     Inc., Cisco Systems, Inc., Dover Beach Consulting, Inc.,
     International Network Services, January 1996.

[14] Levi, D., Meyer, P., and B. Stewart, MPv3 Applications", RFC 2273,
     SNMP Research, Inc., Secure Computing Corporation, Cisco Systems,
     January 1998.

[15] Wijnen, B., Presuhn, R., and K. McCloghrie, "View-based Access
     Control Model (VACM) for the Simple Network Management Protocol
     (SNMP)", RFC 2275, IBM T. J. Watson Research, BMC Software, Inc.,
     Cisco Systems, Inc., January 1998.

[16] McCloghrie, K., and M. Rose, "Management Information Base for
     Network Management of TCP/IP-based internets - MIB-II", RFC 1213,
     Hughes LAN Systems, Performance Systems International, March 1991.

[17] McCloghrie, K., and F. Kastenholz, "The Interface Group MIB",
     Internet Draft, Cisco Systems, Argon Networks, July 1998.

Expires January 1999                                           [Page 10]


Internet Draft        Inverted Stack Extension MIB             July 1998

7.  Security Considerations

This MIB contains only readable objects whose values provide little
information of value to a would-be attacker.

8.  Authors' Addresses

     Keith McCloghrie
     Cisco Systems, Inc.
     170 West Tasman Drive
     San Jose, CA  95134-1706

     Phone: 408-526-5260
     Email: [email-masked]"

     Gary Hanson
     ADC Kentrox
     14375 NW Science Park Drive
     Portland, Oregon, 97229

     Phone: (800)733-5511 x6333
     Email: [email-masked]

Expires January 1999                                           [Page 11]


Internet Draft        Inverted Stack Extension MIB             July 1998

9.  Full Copyright Statement

Copyright (C) The Internet Society (1998).  All Rights Reserved.

This document and translations of it may be copied and furnished to
others, and derivative works that comment on or otherwise explain it or
assist in its implmentation may be prepared, copied, published and
distributed, in whole or in part, without restriction of any kind,
provided that the above copyright notice and this paragraph are included
on all such copies and derivative works.  However, this document itself
may not be modified in any way, such as by removing the copyright notice
or references to the Internet Society or other Internet organizations,
except as needed for the purpose of developing Internet standards in
which case the procedures for copyrights defined in the Internet
Standards process must be followed, or as required to translate it into
languages other than English.

The limited permissions granted above are perpetual and will not be
revoked by the Internet Society or its successors or assigns.

This document and the information contained herein is provided on an "AS
IS" basis and THE INTERNET SOCIETY AND THE INTERNET ENGINEERING TASK
FORCE DISCLAIMS ALL WARRANTIES, EXPRESS OR IMPLIED, INCLUDING BUT NOT
LIMITED TO ANY WARRANTY THAT THE USE OF THE INFORMATION HEREIN WILL NOT
INFRINGE ANY RIGHTS OR ANY IMPLIED WARRANTIES OF MERCHANTABILITY OR
FITNESS FOR A PARTICULAR PURPOSE."

Expires January 1999                                           [Page 12]


Internet Draft        Inverted Stack Extension MIB             July 1998

Table of Contents

1 Introduction ....................................................    2
2 The SNMP Network Management Framework ...........................    2
3 Interface Sub-Layers and the ifStackTable .......................    3
4 Definitions .....................................................    5
5 Acknowledgements ................................................    9
6 References ......................................................    9
7 Security Considerations .........................................   11
8 Authors' Addresses ..............................................   11
9 Full Copyright Statement ........................................   12

Expires January 1999                                           [Page 13]