Internet Engineering Task Force (IETF)                    Kenneth White
INTERNET DRAFT: <draft-white-slapm-mib-02.txt>                IBM Corp.
Expiration Date: March 1999

September 1998



                    Definitions of Managed Objects for
                        Service Level Agreements
                          Performance Monitoring
                      <draft-white-slapm-mib-02.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.
Internet Drafts may be updated, replaced, or obsoleted by other
documents at any time.  It is not appropriate to use Internet Drafts as
reference material or to cite them other than as a "working draft" or
"work in progress."

Please check the I-D abstract listing contained in each Internet Draft
directory to learn the current status of this or any Internet Draft.
Distribution of this document is unlimited.


Copyright Notice

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


Abstract

This memo defines a Management Information Base (MIB) for performing
performance monitoring of Service Level Agreements (SLAs) defined via
policy definitions.  The MIB defined herein focuses on defining a set of
objects for monitoring SLAs and not on replication of the content of the
policy definitions being monitored.

The MIB defined by this document is based upon the content of "Schema
for Service Level Administration of Differential Services and Integrated
Services in Networks", refer to [19].


Table of Contents

1.0  Introduction  . . . . . . . . . . . . . . . . . . . . . . . . .   2


White, Kenneth             Expires March 1999                   [Page 1]


Internet Draft                 SLAPM-MIB              September 30, 1998

2.0  The SNMP Network Management Framework   . . . . . . . . . . . .   2

3.0  Structure of the MIB  . . . . . . . . . . . . . . . . . . . . .   3
3.1  Global simple objects   . . . . . . . . . . . . . . . . . . . .   4
3.2  slapmPolicyStatsTable   . . . . . . . . . . . . . . . . . . . .   4
3.3  slapmPolicyMonitorTable   . . . . . . . . . . . . . . . . . . .   5
3.4  slapmSubcomponentTable  . . . . . . . . . . . . . . . . . . . .   6

4.0  Definitions   . . . . . . . . . . . . . . . . . . . . . . . . .   6

5.0  Security Considerations   . . . . . . . . . . . . . . . . . . .  36

6.0  Intellectual Property   . . . . . . . . . . . . . . . . . . . .  36

7.0  Acknowledgments   . . . . . . . . . . . . . . . . . . . . . . .  36

8.0  References  . . . . . . . . . . . . . . . . . . . . . . . . . .  36

9.0  Author's Address  . . . . . . . . . . . . . . . . . . . . . . .  38

10.0  Full Copyright Statement   . . . . . . . . . . . . . . . . . .  38



1.0  Introduction

The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT",
"SHOULD", "SHOULD NOT", "RECOMMENDED",  "MAY", and "OPTIONAL" in this
document are to be interpreted as described in RFC 2119, reference [13].

This document is a product of the Internet Engineering Task Force
(IETF).  Its purpose is to define a MIB module for performance
management of Service Level Agreements (SLAs).  An SLA is defined via
policy.  There are a number of methods that exist for how policy is
defined and administered.  Definition of these methods is considered out
side of the scope of this document.  For modeling the contents of this
MIB a policy definition is considered to consist of a set of traffic
profiles that select the conditions for when a policy action should be
applied.  Refer to "Schema for Service Level Administration of
Differential Services and Integrated Services in Networks" [19] for a
definition of policy, traffic profile and action.

The SLAPM-MIB is structured primarily to enable monitoring policy
traffic profiles at a system.  A system can be either an edge device
(end-system) or an interior device or node (e.g. router).


2.0  The SNMP Network Management Framework

The SNMP Management Framework presently consists of five major
components:

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



White, Kenneth             Expires March 1999                   [Page 2]


Internet Draft                 SLAPM-MIB              September 30, 1998

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 [14], RFC 1212 [15] and RFC 1215 [16].  The second version,
    called SMIv2, is described in RFC 1902 [3], RFC 1903 [4] and RFC
    1904 [5].

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

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

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

Managed objects are accessed via a virtual information store, termed the
Management Information Base or MIB.  Objects in the MIB are defined
ore, 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
translations.  The resulting translated MIB must be semantically
equivalent, except where objects or events are omitted because no
translation is possible (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.0  Structure of the MIB

The SLAPM-MIB consists of the following components:

o   Global simple objects

o   slapmPolicyStatsTable

o   slapmPolicyMonitorTable

o   slapmSubcomponentTable

Refer to the compliance statement defined within SLAPM-MIB for a
definition of what objects and notifications MUST be implemented by all
systems as opposed to those that MUST be implemented by end systems
only.


White, Kenneth             Expires March 1999                   [Page 3]


Internet Draft                 SLAPM-MIB              September 30, 1998

3.1  Global simple objects

Global objects defined within SLAPM-MIB:

o   slapmSpinLock

    Enables multiple management application access to SLAPM-MIB.  An
    agent MUST implement the slapmSpinLock object to enable management
    applications to coordinate their use of the SLAPM-MIB.  Management
    application use of slapmSpinLock is OPTIONAL.

o   slapmPolicyCountQueries, slapmPolicyCountAccesses,
    slapmPolicyCountSuccessAccesses, and slapmPolicyCountNotFounds

    Basic statistics on the amount of policy directory access that has
    occured at a system.

o   slapmPolicyPurgeTime

    Used to prevent the entries in various SLAPM-MIB tables that relate
    to a policy definition from immediately being deleted when the
    corresponding policy definition no longer exists.  This gives
    management applications time to discover this condition and close
    out any polled based interval data that may be being collected.  All
    dependent slapmPolicyMonitorTable entries are also deleted when its
    parent slapmPolicyStatsEntry is removed.  Refer to the OBJECT
    description for slapmPolicyPurgeTime for a more precise description
    of this function.

o   slapmPolicyTrapEnable

    This object enables or suppresses generation of
    slapmPolicyMonitorDeleted or slapmPolicyProfileDeleted
    notifications.

3.2  slapmPolicyStatsTable

The slapmPolicyStatsTable is the main table defined by SLAPM-MIB.  The
primary index for this table is slapmPolicyStatsSystemAddress that
enables support of multiple systems from a single policy agent.  The
index element, slapmPolicyStatsSystemAddress, value must be either the
zero-length octet string when at a policy agent only a single system is
being support, 4 octets for a ipv4 address, or 16 octets for a ipv6
address.

It is possible that on a single system multiple policy agent instances
exists.  The Entity MIB, refer to [20], should be used to handle the
resulting MIBs.

 With respect to slapmPolicyStatsSystemAddress one slapmPolicyStatsEntry
exists for each SLA traffic profile per policy definition.  The
structure of indexing for slapmPolicyStatsTable assumes that it is
permissible for a policy to consist of a set of traffic profiles.
Systems that allow only a single traffic profile to be specified per
policy definition MUST still use the name of the traffic profile as the

White, Kenneth             Expires March 1999                   [Page 4]


Internet Draft                 SLAPM-MIB              September 30, 1998

second index into slapmPolicyStatsTable in order to conform to
SLAPM-MIB.  Use of a zero-length octet string to indicate this condition
is NOT allowed.

SLAPM-MIB also assumes that only a single action can be defined for any
single policy definition and hence an action's name doesn't need to be
reflected in table indexing.

This table provides basic statistics on the set of policy traffic
profiles known at a system.  Entries in this table are not administered
via SNMP.  An agent implementation for this table MUST reflect its
current set of policy definitions via table entries.  The mechanisms for
policy administration are outside of the scope of this memo.


3.3  slapmPolicyMonitorTable

The slapmPolicyMonitorTable provides a method of monitoring the effect
of SLA policy being used at a system.  A management application creates
an slapmPolicyMonitorEntry for each collection that it requires.  The
value of the BITS slapmPolicyMonitorControl object determines what type
of monitoring occurs, at what level to monitor and whether trap support
is enabled:

o   monitorMinRate(0)

    Use the value of slapmPolicyMonitorInterval as the interval to
    determine current traffic in and out rates, using
    slapmPolicyMonitorCurrentInRate and
    slapmPolicyMonitorCurrentOutRate, that can be compared to
    slapmPolicyMonitorMinRateLow for determining when to generate a
    slapmMonitoredEventNotAchieved notification.  The notification
    slapmMonitoredEventOkay is generated when the problem is resolved.
    This can be determined by comparing the current rates to
    slapmPolicyMonitorMinRateHigh.

o   monitorMaxRate(1)

    Use the value of slapmPolicyMonitorInterval as the interval to
    determine current traffic in and out rate, using
    slapmPolicyMonitorCurrentInRate and
    slapmPolicyMonitorCurrentOutRate, that can be compared to
    slapmPolicyMonitorMaxRateHigh for determining when to generate a
    slapmMonitoredEventNotAchieved notification. The notification
    slapmMonitoredEventOkay is generated when the problem is resolved.
    This can be determined by comparing the current rates to
    slapmPolicyMonitorMaxRateLow.

o   monitorMaxDelay(2)

    Use the value of slapmPolicyMonitorInterval as the interval to
    determine the current delay.  This can be calculated by averaging
    the round trip times for all TCP connections associated with the
    policy definition.  Compare this value to
    slapmPolicyMonitorMaxDelayHigh for determining when to generate a

White, Kenneth             Expires March 1999                   [Page 5]


Internet Draft                 SLAPM-MIB              September 30, 1998

    slapmMonitoredEventNotAchieved notification.  The notification
    slapmMonitoredEventOkay is generated when the problem is resolved.
    This can be determined by comparing the current rates to
    slapmPolicyMonitorMaxDelayLow.

    UDP subcomponents don't support max delay monitoring.

o   enableAggregateTraps(3)

    The slapmPolicyMonitorControl BITS setting, enableAggregateTraps(3),
    MUST be set in order for any notifications relating to
    slapmPolicyStatsTable monitoring to be generated.

o   enableSubcomponentTraps(4)

    This slapmPolicyMonitorControl BITS setting MUST be set in order for
    any notifications relating to slapmSubcomponetTable monitoring to be
    generated.  The slapmPolicyMonitorControl BITS setting
    monitorSubcomponents(5) MUST be selected in order for this setting
    to be allowed.

o   monitorSubcomponents(5)

    If selected monitor slapmSubcomponentTable entries individually.
    Note: aggregate policy traffic profile monitoring is always enabled.

The index element slapmPolicyMonitorOwnerIndex is used as the first
index in slapmPolicyMonitorTable in order to enable SNMPv3 VACM security
control.  The slapmPolicyMonitorTable is the only table that supports
SNMP RowStatus operations.

3.4  slapmSubcomponentTable

Entries are made into this table for the protocol entities (policy
traffic profile subcomponents) to indicate actual policy traffic profile
usage, provide general statistics at either a TCP connection or UDP
listener level, and enable subcomponent monitoring.


4.0  Definitions

  SLAPM-MIB DEFINITIONS ::= BEGIN

     IMPORTS
        MODULE-IDENTITY, OBJECT-TYPE,
        experimental, Integer32, NOTIFICATION-TYPE,
        Gauge32, Counter32
            FROM SNMPv2-SMI                  -- RFC1902
        TEXTUAL-CONVENTION, RowStatus,
        TestAndIncr, DateAndTime
            FROM SNMPv2-TC                   -- RFC1903
        MODULE-COMPLIANCE, OBJECT-GROUP,
        NOTIFICATION-GROUP
            FROM SNMPv2-CONF                 -- RFC1904
        SnmpAdminString

White, Kenneth             Expires March 1999                   [Page 6]


Internet Draft                 SLAPM-MIB              September 30, 1998

            FROM SNMP-FRAMEWORK-MIB;         -- RFC2271

     slapmMIB MODULE-IDENTITY
        LAST-UPDATED "9809300000Z"
        ORGANIZATION "Internet Engineering Task Force (IETF)"
        CONTACT-INFO
            "Kenneth White

            International Business Machines Corporation
            Network Computing Software Division
            Research Triangle Park, NC, USA

            E-mail: kennethw@vnet.ibm.com"
        DESCRIPTION
            "The Service Level Agreement Performance Monitoring MIB
            (SLAPM-MIB) provides data collection and monitoring
            capabilities for the Service Level Agreements (SLAs)
            policy definitions."
        ::= { experimental 88 }

     -- Textual Conventions

     SlapmNameType ::= TEXTUAL-CONVENTION
        STATUS  current
        DESCRIPTION
            "The textual convention for naming entities
            within this MIB.  The actual contents of an object
            defined using this textual convention should consist
            of the distinguished name portion of an name.
            This is usually the right-most
            portion of the name.  This convention is necessary,
            since names within this MIB can be used as index
            items and an instance identifier is limited to 128
            subidentifiers."
        SYNTAX  SnmpAdminString (SIZE(0..32))

     SlapmStatus ::= TEXTUAL-CONVENTION
        STATUS  current
        DESCRIPTION
            "The textual convention for defining the various
            slapmPolicyMonitorTable and the
            slapmSubcomponentTable states for actual policy
            traffic profile monitoring."
        SYNTAX  BITS {
                       slaMinInRateNotAchieved(0),
                       slaMaxInRateExceeded(1),
                       slaMaxInDelayExceeded(2),
                       slaMinOutRateNotAchieved(3),
                       slaMaxOutRateExceeded(4),
                       slaMaxOutDelayExceeded(5),
                       monitorMinInRateNotAchieved(6),
                       monitorMaxInRateExceeded(7),
                       monitorMaxInDelayExceeded(8),
                       monitorMinOutRateNotAchieved(9),
                       monitorMaxOutRateExceeded(10),

White, Kenneth             Expires March 1999                   [Page 7]


Internet Draft                 SLAPM-MIB              September 30, 1998

                       monitorMaxOutDelayExceeded(11)
                     }
     -- Top-level structure of the MIB

     slapmNotifications  OBJECT IDENTIFIER ::= { slapmMIB 0 }
     slapmObjects        OBJECT IDENTIFIER ::= { slapmMIB 1 }
     slapmConformance    OBJECT IDENTIFIER ::= { slapmMIB 2 }

     -- All simple objects

     slapmBaseObjects    OBJECT IDENTIFIER ::= { slapmObjects 1 }

     -- Simple Object Definitions

     slapmSpinLock OBJECT-TYPE
        SYNTAX      TestAndIncr
        MAX-ACCESS  read-write
        STATUS      current
        DESCRIPTION
           "An advisory lock used to allow cooperating applications
           to coordinate their use of the contents of this MIB.  This
           typically occurs when an application seeks to create an
           new entry or alter an existing entry in
           slapmPolicyMonitorTable.  A management implementation
           MAY utilize the slapmSpinLock to serialize its changes
           or additions.  This usage is not required.
           However, slapmSpinLock MUST be supported by agent
           implementations."
        ::= { slapmBaseObjects 1 }

     slapmPolicyCountQueries OBJECT-TYPE
        SYNTAX      Counter32
        MAX-ACCESS  read-only
        STATUS      current
        DESCRIPTION
           "The total number of times that a policy lookup occurred
           with respect to a policy agent.
           This is the number of times that a reference was made to
           a policy definition at a system and includes the number
           of times that a policy repository was accessed,
           slapmPolicyCountAccesses.  The object
           slapmPolicyCountAccesses should be less than
           slapmPolicyCountQueries when policy definitions are
           cached at a system."
        ::= { slapmBaseObjects 2 }

     slapmPolicyCountAccesses OBJECT-TYPE
        SYNTAX      Counter32
        MAX-ACCESS  read-only
        STATUS      current
        DESCRIPTION
           "Total number of times that a policy repository was
            accessed with respect to a policy agent.
            The value of this object should be less than
            slapmPolicyCountQueries, since typically policy entries

White, Kenneth             Expires March 1999                   [Page 8]


Internet Draft                 SLAPM-MIB              September 30, 1998

            are cached to minimize repository accesses."
        ::= { slapmBaseObjects 3 }

     slapmPolicyCountSuccessAccesses OBJECT-TYPE
        SYNTAX      Counter32
        MAX-ACCESS  read-only
        STATUS      current
        DESCRIPTION
           "Total number of successful policy repository accesses
           with respect to a policy agent."
        ::= { slapmBaseObjects 4 }

     slapmPolicyCountNotFounds OBJECT-TYPE
        SYNTAX      Counter32
        MAX-ACCESS  read-only
        STATUS      current
        DESCRIPTION
           "Total number of policy repository accesses,
           with respect to a policy agent, that
           resulted in an entry not being located."
        ::= { slapmBaseObjects 5 }

     slapmPolicyPurgeTime OBJECT-TYPE
        SYNTAX      Integer32 (0..3600)  -- maximum of 1 hour
        UNITS       "seconds"
        MAX-ACCESS  read-write
        STATUS      current
        DESCRIPTION
           "The purpose of this object is to define the amount
           of time (in seconds) to wait before removing an
           slapmPolicyStatsEntry when a system detects that the
           associated policy definition has been deleted.
           This gives any polling management applications
           time to complete their last poll before an entry is
           removed.  An slapmPolicyStatsEntry enters the
           deleteNeeded(3) state via slapmPolicyStatsOperStatus
           when a system first detects that the entry needs
           to be removed.

           Once slapmPolicyPurgeTime has expired for an entry in
           deleteNeeded(3) state it is removed a long with any
           dependent slapmPolicyMonitorTable entries.

           A value of 0 for this option disables this function and
           results in the automatic purging of slapmPolicyTable
           entries upon transition into deleteNeeded(3) state.

           A slapmPolicyProfileDeleted notification is sent when a
           slapmPolicyStatsEntry.  Dependent slapmPolicyMonitorEntry
           deletion results in a slapmPolicyMonitorDeleted
           notification being sent.  Both notifications are suppressed
           if the value of slapmPolicyTrapEnable is disabled(2)."
        DEFVAL { 900 }  -- 15 minute default purge time
        ::= { slapmBaseObjects 6 }


White, Kenneth             Expires March 1999                   [Page 9]


Internet Draft                 SLAPM-MIB              September 30, 1998

     slapmPolicyTrapEnable OBJECT-TYPE
        SYNTAX      INTEGER { enabled(1), disabled(2) }
        MAX-ACCESS  read-write
        STATUS      current
        DESCRIPTION
           "Indicates whether slapmPolicyProfileDeleted and
           slapmPolicyMonitorDeleted notifications should be
           generated by this system."
        DEFVAL { disabled }
        ::= { slapmBaseObjects 7 }

     slapmTableObjects    OBJECT IDENTIFIER ::= { slapmObjects 2 }

     -- Sla Performance Monitoring Policy Statistics Table

     slapmPolicyStatsTable OBJECT-TYPE
        SYNTAX SEQUENCE OF SlapmPolicyStatsEntry
        MAX-ACCESS not-accessible
        STATUS current
        DESCRIPTION
            "Provides statistics on all policies known at a
            system."
       ::= { slapmTableObjects 1 }

     slapmPolicyStatsEntry OBJECT-TYPE
        SYNTAX SlapmPolicyStatsEntry
        MAX-ACCESS not-accessible
        STATUS current
        DESCRIPTION
            "Defines an entry in the slapmPolicyStatsTable.  This table
            defines a set of statistics that is kept on a per system,
            policy and traffic profile basis.  A policy can be
            defined to contain multiple traffic profiles that map to
            a single action.

            Entries in this table are not created or deleted via SNMP
            but reflect the set of policy definitions known at a system."
        INDEX {
               slapmPolicyStatsSystemAddress,
               slapmPolicyStatsPolicyName,
               slapmPolicyStatsTrafficProfileName
              }
        ::= { slapmPolicyStatsTable 1 }

     SlapmPolicyStatsEntry ::=
        SEQUENCE {
            slapmPolicyStatsSystemAddress      OCTET STRING,
            slapmPolicyStatsPolicyName         SlapmNameType,
            slapmPolicyStatsTrafficProfileName SlapmNameType,
            slapmPolicyStatsOperStatus         INTEGER,
            slapmPolicyStatsActiveConns        Gauge32,
            slapmPolicyStatsTotalConns         Counter32,
            slapmPolicyStatsFirstActivated     DateAndTime,
            slapmPolicyStatsLastMapping        DateAndTime,
            slapmPolicyStatsInOctets           Counter32,

White, Kenneth             Expires March 1999                  [Page 10]


Internet Draft                 SLAPM-MIB              September 30, 1998

            slapmPolicyStatsOutOctets          Counter32,
            slapmPolicyStatsConnectionLimit    Integer32,
            slapmPolicyStatsCountAccepts       Counter32,
            slapmPolicyStatsCountDenies        Counter32,
            slapmPolicyStatsInDiscards         Counter32,
            slapmPolicyStatsOutDiscards        Counter32,
            slapmPolicyStatsInPackets          Counter32,
            slapmPolicyStatsOutPackets         Counter32,
            slapmPolicyStatsInProfileOctets    Counter32,
            slapmPolicyStatsOutProfileOctets   Counter32,
            slapmPolicyStatsMinRate            Integer32,
            slapmPolicyStatsMaxRate            Integer32,
            slapmPolicyStatsMaxDelay           Integer32
        }

     slapmPolicyStatsSystemAddress OBJECT-TYPE
        SYNTAX      OCTET STRING (SIZE(0..16))
        MAX-ACCESS  not-accessible
        STATUS      current
        DESCRIPTION
           "Address of a system that an Policy definition relates to.
           A zero length octet string must be used to indicate that
           only a single system is being represented.
           Otherwise, the length of the octet string must be
           4 for an ipv4 address or 16 for an ipv6 address."
        ::= { slapmPolicyStatsEntry 1 }

     slapmPolicyStatsPolicyName OBJECT-TYPE
        SYNTAX      SlapmNameType
        MAX-ACCESS  not-accessible
        STATUS      current
        DESCRIPTION
           "Policy name that this entry relates to."
        ::= { slapmPolicyStatsEntry 2 }

     slapmPolicyStatsTrafficProfileName OBJECT-TYPE
        SYNTAX      SlapmNameType
        MAX-ACCESS  not-accessible
        STATUS      current
        DESCRIPTION
           "The name of a traffic profile that is associated with
           a policy."
        ::= { slapmPolicyStatsEntry 3 }

     slapmPolicyStatsOperStatus OBJECT-TYPE
        SYNTAX      INTEGER {
                               inactive(1),
                               active(2),
                               deleteNeeded(3)
                            }
        MAX-ACCESS  read-only
        STATUS      current
        DESCRIPTION
           "The state of a policy entry:


White, Kenneth             Expires March 1999                  [Page 11]


Internet Draft                 SLAPM-MIB              September 30, 1998

             inactive(1)      - An policy entry was either defined
                                by local SYSDEF or discovered via
                                a directory search but has not been
                                activated (not currently being used).
             active(2)        - Policy entry is being used to affect
                                traffic flows.
             deleteNeeded(3)  - Either though local implementation
                                dependent methods or by discovering
                                that the directory entry corresponding
                                to this table entry no longer
                                exists and slapmPolicyPurgeTime needs
                                to expire before attempting to remove
                                the corresponding slapmPolicyStatsEntry
                                and any dependent slapmPolicyMonitor
                                table entries.
           Note: a policy traffic profile in a state other than
           active(1) is not beening used to affect traffic flows."
        ::= { slapmPolicyStatsEntry 4 }

     slapmPolicyStatsActiveConns OBJECT-TYPE
        SYNTAX      Gauge32
        MAX-ACCESS  read-only
        STATUS      current
        DESCRIPTION
           "The number of active TCP connections that are
           affected by the corresponding policy entry."
        ::= { slapmPolicyStatsEntry 5 }

     slapmPolicyStatsTotalConns OBJECT-TYPE
        SYNTAX      Counter32
        MAX-ACCESS  read-only
        STATUS      current
        DESCRIPTION
           "The number of total TCP connections that are
           affected by the corresponding policy entry."
        ::= { slapmPolicyStatsEntry 6 }

     slapmPolicyStatsFirstActivated OBJECT-TYPE
        SYNTAX      DateAndTime
        MAX-ACCESS  read-only
        STATUS      current
        DESCRIPTION
           "The timestamp for when the corresponding policy entry
           is activated.  The value of this object serves as
           the discontinuity event indicator when polling entries
           in this table.  The value of this object is updated on
           transition of slapmPolicyStatsOperStatus into the active(2)
           state."
        DEFVAL { '0000000000000000'H }
        ::= { slapmPolicyStatsEntry 7 }

     slapmPolicyStatsLastMapping OBJECT-TYPE
        SYNTAX      DateAndTime
        MAX-ACCESS  read-only
        STATUS      current

White, Kenneth             Expires March 1999                  [Page 12]


Internet Draft                 SLAPM-MIB              September 30, 1998

        DESCRIPTION
           "The timestamp for when the last time
           that the associated policy entry was used."
        DEFVAL { '0000000000000000'H }
        ::= { slapmPolicyStatsEntry 8 }

     slapmPolicyStatsInOctets OBJECT-TYPE
        SYNTAX      Counter32
        MAX-ACCESS  read-only
        STATUS      current
        DESCRIPTION
           "The number of octets that was received by IP for an
           entity that map to this entry."
        ::= { slapmPolicyStatsEntry 9 }

     slapmPolicyStatsOutOctets OBJECT-TYPE
        SYNTAX      Counter32
        MAX-ACCESS  read-only
        STATUS      current
        DESCRIPTION
           "The number of octets that was transmitted by IP for an
           entity that map to this entry."
        ::= { slapmPolicyStatsEntry 10 }

     slapmPolicyStatsConnectionLimit OBJECT-TYPE
        SYNTAX      Integer32
        MAX-ACCESS  read-only
        STATUS      current
        DESCRIPTION
           "The limit for the number of active TCP connections that
           are allowed for this policy definition.  A value of zero
           for this object implies that a connection limit has not
           been specified."
        ::= { slapmPolicyStatsEntry 11 }

     slapmPolicyStatsCountAccepts OBJECT-TYPE
        SYNTAX      Counter32
        MAX-ACCESS  read-only
        STATUS      current
        DESCRIPTION
            "This counter is incremented when a policy action's
            Permission value is set to Accept and a session
            (TCP connection) is accepted."
        ::= { slapmPolicyStatsEntry 12 }

     slapmPolicyStatsCountDenies OBJECT-TYPE
        SYNTAX      Counter32
        MAX-ACCESS  read-only
        STATUS      current
        DESCRIPTION
            "This counter is incremented when a policy action's
            Permission value is set to Deny and a session is denied,
            or when a session (TCP connection) is rejected due to a
            policy's connection limit (slapmPolicyStatsConnectLimit)
            being reached."

White, Kenneth             Expires March 1999                  [Page 13]


Internet Draft                 SLAPM-MIB              September 30, 1998

        ::= { slapmPolicyStatsEntry 13 }

     slapmPolicyStatsInDiscards OBJECT-TYPE
        SYNTAX      Counter32
        MAX-ACCESS  read-only
        STATUS      current
        DESCRIPTION
            "This counter counts the number of in octets discarded.
            This occurs when an error is detected.  Examples of this
            are buffer overflow, checksum error, or bad packet
            format."
        ::= { slapmPolicyStatsEntry 14 }

     slapmPolicyStatsOutDiscards OBJECT-TYPE
        SYNTAX      Counter32
        MAX-ACCESS  read-only
        STATUS      current
        DESCRIPTION
            "This counter counts the number of out octets discarded.
            Examples of this are buffer overflow, checksum error, or
            bad packet format."
        ::= { slapmPolicyStatsEntry 15 }

     slapmPolicyStatsInPackets OBJECT-TYPE
        SYNTAX      Counter32
        MAX-ACCESS  read-only
        STATUS      current
        DESCRIPTION
            "This counter counts the number of in packets received
            that relate to this policy entry from IP."
        ::= { slapmPolicyStatsEntry 16 }

     slapmPolicyStatsOutPackets OBJECT-TYPE
        SYNTAX      Counter32
        MAX-ACCESS  read-only
        STATUS      current
        DESCRIPTION
            "This counter counts the number of out packets sent
            by IP that relate to this policy entry."
        ::= { slapmPolicyStatsEntry 17 }

     slapmPolicyStatsInProfileOctets OBJECT-TYPE
        SYNTAX      Counter32
        MAX-ACCESS  read-only
        STATUS      current
        DESCRIPTION
            "This counter counts the number of in octets that are
            determined to be within profile."
        ::= { slapmPolicyStatsEntry 18 }

     slapmPolicyStatsOutProfileOctets OBJECT-TYPE
        SYNTAX      Counter32
        MAX-ACCESS  read-only
        STATUS      current
        DESCRIPTION

White, Kenneth             Expires March 1999                  [Page 14]


Internet Draft                 SLAPM-MIB              September 30, 1998

            "This counter counts the number of out octets that are
            determined to be within profile."
        ::= { slapmPolicyStatsEntry 19 }

     slapmPolicyStatsMinRate OBJECT-TYPE
        SYNTAX      Integer32
        UNITS       "Kilobits per second"
        MAX-ACCESS  read-only
        STATUS      current
        DESCRIPTION
            "The minimum transfer rate defined for this entry."
        ::= { slapmPolicyStatsEntry 20 }

     slapmPolicyStatsMaxRate OBJECT-TYPE
        SYNTAX      Integer32
        UNITS       "Kilobits per second"
        MAX-ACCESS  read-only
        STATUS      current
        DESCRIPTION
            "The maximum transfer rate defined for this entry."
        ::= { slapmPolicyStatsEntry 21 }

     slapmPolicyStatsMaxDelay OBJECT-TYPE
        SYNTAX      Integer32
        UNITS       "milliseconds"
        MAX-ACCESS  read-only
        STATUS      current
        DESCRIPTION
            "The maximum delay defined for this entry."
        ::= { slapmPolicyStatsEntry 22 }

     -- SLA Performance Monitoring Policy Monitor Table

     slapmPolicyMonitorTable OBJECT-TYPE
        SYNTAX SEQUENCE OF SlapmPolicyMonitorEntry
        MAX-ACCESS not-accessible
        STATUS current
        DESCRIPTION
            "Provides a method of monitoring policies and their
            effect at a system."
       ::= { slapmTableObjects 2 }

     slapmPolicyMonitorEntry OBJECT-TYPE
        SYNTAX SlapmPolicyMonitorEntry
        MAX-ACCESS not-accessible
        STATUS current
        DESCRIPTION
            "Defines an entry in the slapmPolicyMonitorTable. This
            table defines which policies should be monitored on a
            per policy traffic profile basis."
        INDEX {
               slapmPolicyMonitorOwnerIndex,
               slapmPolicyMonitorSystemAddress,
               slapmPolicyMonitorPolicyName,
               slapmPolicyMonitorTrafficProfileName

White, Kenneth             Expires March 1999                  [Page 15]


Internet Draft                 SLAPM-MIB              September 30, 1998

              }
        ::= { slapmPolicyMonitorTable 1 }

     SlapmPolicyMonitorEntry ::=
        SEQUENCE {
            slapmPolicyMonitorOwnerIndex              SnmpAdminString,
            slapmPolicyMonitorSystemAddress           OCTET STRING,
            slapmPolicyMonitorPolicyName              SlapmNameType,
            slapmPolicyMonitorTrafficProfileName      SlapmNameType,
            slapmPolicyMonitorControl                 BITS,
            slapmPolicyMonitorStatus                  SlapmStatus,
            slapmPolicyMonitorInterval                Integer32,
            slapmPolicyMonitorIntTime                 DateAndTime,
            slapmPolicyMonitorCurrentInRate           Gauge32,
            slapmPolicyMonitorCurrentOutRate          Gauge32,
            slapmPolicyMonitorMinRateLow              Integer32,
            slapmPolicyMonitorMinRateHigh             Integer32,
            slapmPolicyMonitorMaxRateHigh             Integer32,
            slapmPolicyMonitorMaxRateLow              Integer32,
            slapmPolicyMonitorMaxDelayHigh            Integer32,
            slapmPolicyMonitorMaxDelayLow             Integer32,
            slapmPolicyMonitorMinInRateNotAchievies   Counter32,
            slapmPolicyMonitorMaxInRateExceeds        Counter32,
            slapmPolicyMonitorMaxInDelayExceeds       Counter32,
            slapmPolicyMonitorMinOutRateNotAchievies  Counter32,
            slapmPolicyMonitorMaxOutRateExceeds       Counter32,
            slapmPolicyMonitorMaxOutDelayExceeds      Counter32,
            slapmPolicyMonitorRowStatus               RowStatus
        }

     slapmPolicyMonitorOwnerIndex OBJECT-TYPE
        SYNTAX      SnmpAdminString (SIZE(0..16))
        MAX-ACCESS  not-accessible
        STATUS      current
        DESCRIPTION
           "To facilitate the provisioning of access control by a
           security administrator using the View-Based Access
           Control Model (RFC 2275, VACM) for tables in which
           multiple users may need to independently create or modify
           entries, the initial index is used as an 'owner index'.
           Such an initial index has a syntax of SnmpAdminString,
           and can thus be trivially mapped to a securityName or
           groupName as defined in VACM, in accordance with a
           security policy.

           All entries in that table belonging to a particular user
           will have the same value for this initial index.  For a
           given user's entries in a particular table, the object
           identifiers for the information in these entries will
           have the same subidentifiers (except for the 'column'
           subidentifier) up to the end of the encoded owner index.
           To configure VACM to permit access to this portion of the
           table, one would create vacmViewTreeFamilyTable entries
           with the value of vacmViewTreeFamilySubtree including the
           owner index portion, and vacmViewTreeFamilyMask

White, Kenneth             Expires March 1999                  [Page 16]


Internet Draft                 SLAPM-MIB              September 30, 1998

           'wildcarding' the column subidentifier.  More elaborate
           configurations are possible."
        ::= { slapmPolicyMonitorEntry 1 }

     slapmPolicyMonitorSystemAddress OBJECT-TYPE
        SYNTAX      OCTET STRING (SIZE(0..16))
        MAX-ACCESS  not-accessible
        STATUS      current
        DESCRIPTION
           "Address of a system that an Policy definition relates to.
           A zero length octet string can be used to indicate that
           only a single system is being represented.
           Otherwise, the length of the octet string should be
           4 for an ipv4 address and 16 for an ipv6 address."
        ::= { slapmPolicyMonitorEntry 2 }

     slapmPolicyMonitorPolicyName OBJECT-TYPE
        SYNTAX      SlapmNameType
        MAX-ACCESS  not-accessible
        STATUS      current
        DESCRIPTION
           "Policy name that this entry relates to."
        ::= { slapmPolicyMonitorEntry 3 }

     slapmPolicyMonitorTrafficProfileName OBJECT-TYPE
        SYNTAX      SlapmNameType
        MAX-ACCESS  not-accessible
        STATUS      current
        DESCRIPTION
           "The corresponding Traffic Profile name."
        ::= { slapmPolicyMonitorEntry 4 }

     slapmPolicyMonitorControl OBJECT-TYPE
        SYNTAX      BITS {
                          monitorMinRate(0),
                          monitorMaxRate(1),
                          monitorMaxDelay(2),
                          enableAggregateTraps(3),
                          enableSubcomponentTraps(4),
                          monitorSubcomponents(5)
                         }
        MAX-ACCESS  read-create
        STATUS       current
        DESCRIPTION
           "The value of this object determines the type and level
           of monitoring that is applied to a policy/profile.  The
           value of this object can't be changed once the table
           entry that it is a part of is activated via a
           slapmPolicyMonitorRowStatus transition to active state.

               monitorMinRate(0) - Monitor minimum transfer rate.
               monitorMaxRate(1) - Monitor maximum transfer rate.
               monitorMaxDelay(2) - Monitor maximum delay.
               enableAggregateTraps(3) - The enableAggregateTraps(3)
                     BITS setting enables notification generation

White, Kenneth             Expires March 1999                  [Page 17]


Internet Draft                 SLAPM-MIB              September 30, 1998

                     when monitoring a policy traffic profile as an
                     aggregate using the values in the corresponding
                     slapmPolicyStatsEntry.  By default this function
                     is not enabled.
               enableSubcomponentTraps(4) - This BITS setting enables
                     notification generation when monitoring all
                     subcomponents that are mapped to an corresponding
                     slapmPolicyStatsEntry.  By default this
                     function is not enabled.
               monitorSubcomponents(5) - This BITS setting enables
                     monitoring of each subcomponent (typically a
                     TCP connection or UDP listener) individually."
        DEFVAL   { { monitorMinRate, monitorMaxRate,
                     monitorMaxDelay } }
        ::= { slapmPolicyMonitorEntry 5 }

     slapmPolicyMonitorStatus OBJECT-TYPE
        SYNTAX      SlapmStatus
        MAX-ACCESS  read-only
        STATUS      current
        DESCRIPTION
           "The value of this object indicates when a monitored
           value has not meet a threshold or isn't meeting the
           defined service level.  The SalpmStatus TEXTUAL-CONVENTION
           defines two levels of not meeting a threshold.  The first
           set:
                       slaMinInRateNotAchieved(0),
                       slaMaxInRateExceeded(1),
                       slaMaxInDelayExceeded(2),
                       slaMinOutRateNotAchieved(3),
                       slaMaxOutRateExceeded(4),
                       slaMaxOutDelayExceeded(5)

           are used to indicate when the SLA as an aggregate is
           not meeting a threshold while the second set:

                       monitorMinInRateNotAchieved(6),
                       monitorMaxInRateExceeded(7),
                       monitorMaxInDelayExceeded(8),
                       monitorMinOutRateNotAchieved(9),
                       monitorMaxOutRateExceeded(10),
                       monitorMaxOutDelayExceeded(11)

           indicate that at least one subcomponent is not meeting
           a threshold."
        ::= { slapmPolicyMonitorEntry 6 }

     slapmPolicyMonitorInterval OBJECT-TYPE
        SYNTAX      Integer32 (15..86400) -- 15 second min, 24 hour max
        UNITS       "seconds"
        MAX-ACCESS  read-create
        STATUS      current
        DESCRIPTION
           "The number of seconds that defines the sample period."
        DEFVAL   {20}    -- 20 seconds

White, Kenneth             Expires March 1999                  [Page 18]


Internet Draft                 SLAPM-MIB              September 30, 1998

        ::= { slapmPolicyMonitorEntry 7 }

     slapmPolicyMonitorIntTime OBJECT-TYPE
        SYNTAX      DateAndTime
        MAX-ACCESS  read-only
        STATUS      current
        DESCRIPTION
           "The timestamp for when the last interval ended."
        DEFVAL { '0000000000000000'H }
        ::= { slapmPolicyMonitorEntry 8 }

     slapmPolicyMonitorCurrentInRate OBJECT-TYPE
        SYNTAX      Gauge32
        UNITS       "kilobits per second"
        MAX-ACCESS  read-only
        STATUS      current
        DESCRIPTION
           "Using the value of the corresponding
           slapmPolicyMonitorInterval, slapmPolicyStatsInOctets
           is sampled and then divided by slapmPolicyMonitorInterval
           to determine the current in transfer rate."
        ::= { slapmPolicyMonitorEntry 9 }

     slapmPolicyMonitorCurrentOutRate OBJECT-TYPE
        SYNTAX      Gauge32
        UNITS       "kilobits per second"
        MAX-ACCESS  read-only
        STATUS      current
        DESCRIPTION
           "Using the value of the corresponding
           slapmPolicyMonitorInterval, slapmPolicyStatsOutOctets
           is sampled and then divided by slapmPolicyMonitorInterval
           to determine the current out transfer rate."
        ::= { slapmPolicyMonitorEntry 10 }

     slapmPolicyMonitorMinRateLow OBJECT-TYPE
        SYNTAX      Integer32
        UNITS       "kilobits per second"
        MAX-ACCESS  read-create
        STATUS      current
        DESCRIPTION
           "The threshold for generating a
           slapmMonitoredEventNotAchieved notification, signalling
           that a monitored minimum transfer rate has not been meet.

           A slapmMonitoredEventNotAchieved notification is not
           generated again for an slapmPolicyMonitorEntry until
           the minimum transfer rate
           exceeds slapmPolicyMonitorMinRateHigh (a
           slapmMonitoredEventOkay notification is then transmitted)
           and then fails below slapmPolicyMonitorMinRateLow.  This
           behavior reduces the slapmMonitoredEventNotAchieved
           notifications that are transmitted.

           A value of zero for this object is returned when the

White, Kenneth             Expires March 1999                  [Page 19]


Internet Draft                 SLAPM-MIB              September 30, 1998

           slapmPolicyMonitorControl monitorMinRate(0) is not
           enabled.  When enabled the default value for this object
           is the min rate value specified in the associated
           action definition minus 10%.  If the action definition
           doesn't have a min rate defined then there is no
           default for this object and a value MUST be specified
           prior to activating this entry when monitorMinRate(0)
           is selected.

           Note: The corresponding slapmPolicyMonitorControl
           BITS setting, enableAggregateTraps(3), MUST be selected in
           order for any notification relating to this entry to
           potentially be generated."
        ::= { slapmPolicyMonitorEntry 11 }

     slapmPolicyMonitorMinRateHigh OBJECT-TYPE
        SYNTAX      Integer32
        UNITS       "kilobits per second"
        MAX-ACCESS  read-create
        STATUS      current
        DESCRIPTION
           "The threshold for generating a slapmMonitoredEventOkay
           notification, signalling that a monitored minimum
           transfer rate has increased to an acceptable level.

           A value of zero for this object is returned when the
           slapmPolicyMonitorControl monitorMinRate(0) is not
           enabled.  When enabled the default value for this object
           is the min rate value specified in the associated
           action definition plus 10%.  If the action definition
           doesn't have a min rate defined then there is no
           default for this object and a value MUST be specified
           prior to activating this entry when monitorMinRate(0)
           is selected.

           Note: The corresponding slapmPolicyMonitorControl
           BITS setting, enableAggregateTraps(3), MUST be selected
           in order for any notification relating to this entry to
           potentially be generated."
        ::= { slapmPolicyMonitorEntry 12 }

     slapmPolicyMonitorMaxRateHigh OBJECT-TYPE
        SYNTAX      Integer32
        UNITS       "kilobits per second"
        MAX-ACCESS  read-create
        STATUS      current
        DESCRIPTION
           "The threshold for generating a
           slapmMonitoredEventNotAchieved notification, signalling
           that a monitored maximum transfer rate has been exceeded.

           A slapmMonitoredEventNotAchieved notification is not
           generated again for an slapmPolicyMonitorEntry until the
           maximum transfer rate fails below
           slapmPolicyMonitorMaxRateLow (a slapmMonitoredEventOkay

White, Kenneth             Expires March 1999                  [Page 20]


Internet Draft                 SLAPM-MIB              September 30, 1998

           notification is then transmitted) and then raises above
           slapmPolicyMonitorMaxRateHigh.  This behavior reduces the
           slapmMonitoredEventNotAchieved notifications that are
           transmitted.

           A value of zero for this object is returned when the
           slapmPolicyMonitorControl monitorMaxRate(1) is not
           enabled.  When enabled the default value for this object
           is the max rate value specified in the associated
           action definition plus 10%.  If the action definition
           doesn't have a max rate defined then there is no
           default for this object and a value MUST be specified
           prior to activating this entry when monitorMaxRate(1)
           is selected.

           Note: The corresponding slapmPolicyMonitorControl
           BITS setting, enableAggregateTraps(3), MUST be selected in
           order for any notification relating to this entry to
           potentially be generated."
        ::= { slapmPolicyMonitorEntry 13 }

     slapmPolicyMonitorMaxRateLow OBJECT-TYPE
        SYNTAX      Integer32
        UNITS       "kilobits per second"
        MAX-ACCESS  read-create
        STATUS      current
        DESCRIPTION
           "The threshold for generating a slapmMonitoredEventOkay
           notification, signalling that a monitored maximum
           transfer rate has fallen to an acceptable level.

           A value of zero for this object is returned when the
           slapmPolicyMonitorControl monitorMaxRate(1) is not
           enabled.  When enabled the default value for this object
           is the max rate value specified in the associated
           action definition minus 10%.  If the action definition
           doesn't have a max rate defined then there is no
           default for this object and a value MUST be specified
           prior to activating this entry when monitorMaxRate(1)
           is selected.

           Note: The corresponding slapmPolicyMonitorControl
           BITS setting, enableAggregateTraps(3), MUST be selected in
           order for any notification relating to this entry to
           potentially be generated."
        ::= { slapmPolicyMonitorEntry 14 }

     slapmPolicyMonitorMaxDelayHigh OBJECT-TYPE
        SYNTAX      Integer32
        UNITS       "milliseconds"
        MAX-ACCESS  read-create
        STATUS      current
        DESCRIPTION
           "The threshold for generating a
           slapmMonitoredEventNotAchieved notification, signalling

White, Kenneth             Expires March 1999                  [Page 21]


Internet Draft                 SLAPM-MIB              September 30, 1998

           that a monitored maximum delay rate has been exceeded.

           A slapmMonitoredEventNotAchieved notification is not
           generated again for an slapmPolicyMonitorEntry until
           the maximum delay rate falls below
           slapmPolicyMonitorMaxDelayLow (a slapmMonitoredEventOkay
           notification is then transmitted) and raises above
           slapmPolicyMonitorMaxDelayHigh.  This behavior reduces
           the slapmMonitoredEventNotAchieved notifications that are
           transmitted.

           A value of zero for this object is returned when the
           slapmPolicyMonitorControl monitorMaxDelay(4) is not
           enabled.  When enabled the default value for this object
           is the max delay value specified in the associated
           action definition plus 10%.  If the action definition
           doesn't have a max delay defined then there is no
           default for this object and a value MUST be specified
           prior to activating this entry when monitorMaxDelay(4)
           is selected.

           Note: The corresponding slapmPolicyMonitorControl
           BITS setting, enableAggregateTraps(3), MUST be selected
           in order for any notification relating to this entry to
           potentially be generated."
        ::= { slapmPolicyMonitorEntry 15 }

     slapmPolicyMonitorMaxDelayLow OBJECT-TYPE
        SYNTAX      Integer32
        UNITS       "milliseconds"
        MAX-ACCESS  read-create
        STATUS      current
        DESCRIPTION
           "The threshold for generating a slapmMonitoredEventOkay
           notification, signalling that a monitored maximum delay
           rate has fallen to an acceptable level.

           A value of zero for this object is returned when the
           slapmPolicyMonitorControl monitorMaxDelay(4) is not
           enabled.  When enabled the default value for this object
           is the max delay value specified in the associated
           action definition minus 10%.  If the action definition
           doesn't have a max delay defined then there is no
           default for this object and a value MUST be specified
           prior to activating this entry when monitorMaxDelay(4)
           is selected.

           Note: The corresponding slapmPolicyMonitorControl
           BITS setting, enableAggregateTraps(3), MUST be selected
           in order for any notification relating to this entry to
           potentially be generated."
        ::= { slapmPolicyMonitorEntry 16 }

     slapmPolicyMonitorMinInRateNotAchievies OBJECT-TYPE
        SYNTAX      Counter32

White, Kenneth             Expires March 1999                  [Page 22]


Internet Draft                 SLAPM-MIB              September 30, 1998

        MAX-ACCESS  read-only
        STATUS      current
        DESCRIPTION
            "The number of times that a minimum transfer in rate
            was not achieved."
        ::= { slapmPolicyMonitorEntry 17 }

     slapmPolicyMonitorMaxInRateExceeds OBJECT-TYPE
        SYNTAX      Counter32
        MAX-ACCESS  read-only
        STATUS      current
        DESCRIPTION
            "The number of times that a maximum transfer in rate
            was exceeded."
        ::= { slapmPolicyMonitorEntry 18 }

     slapmPolicyMonitorMaxInDelayExceeds OBJECT-TYPE
        SYNTAX      Counter32
        MAX-ACCESS  read-only
        STATUS      current
        DESCRIPTION
            "The number of times that a maximum delay in rate
            was exceeded."
        ::= { slapmPolicyMonitorEntry 19 }

     slapmPolicyMonitorMinOutRateNotAchievies OBJECT-TYPE
        SYNTAX      Counter32
        MAX-ACCESS  read-only
        STATUS      current
        DESCRIPTION
            "The number of times that a minimum transfer out rate
            was not achieved."
        ::= { slapmPolicyMonitorEntry 20 }

     slapmPolicyMonitorMaxOutRateExceeds OBJECT-TYPE
        SYNTAX      Counter32
        MAX-ACCESS  read-only
        STATUS      current
        DESCRIPTION
            "The number of times that a maximum transfer out rate
            was exceeded."
        ::= { slapmPolicyMonitorEntry 21 }

     slapmPolicyMonitorMaxOutDelayExceeds OBJECT-TYPE
        SYNTAX      Counter32
        MAX-ACCESS  read-only
        STATUS      current
        DESCRIPTION
            "The number of times that a maximum delay out rate
            was exceeded."
        ::= { slapmPolicyMonitorEntry 22 }

     slapmPolicyMonitorRowStatus  OBJECT-TYPE
        SYNTAX       RowStatus
        MAX-ACCESS   read-create

White, Kenneth             Expires March 1999                  [Page 23]


Internet Draft                 SLAPM-MIB              September 30, 1998

        STATUS       current
        DESCRIPTION
          "This object allows entries to be created and deleted
           in the slapmPolicyMonitorTable.  An entry in this table
           is deleted by setting this object to destroy(6).

           Removal of a corresponding (same policy and traffic profile
           names) slapmPolicyStatsEntry has the side effect of the
           automatic deletion an entry in this table."
        ::= { slapmPolicyMonitorEntry 23 }

     -- Subcomponent Table

     slapmSubcomponentTable OBJECT-TYPE
         SYNTAX      SEQUENCE OF SlapmSubcomponentEntry
         MAX-ACCESS  not-accessible
         STATUS      current
         DESCRIPTION
              "Defines a table to provide information on the
              individually components that are mapped to
              a policy traffic profile.

              The indexing for this table is designed to support
              the use of an SNMP GET-NEXT operation using only
              the remote address and remote port as a way for
              a management station to retrieve the table entries
              relating to a particular client."
         ::= { slapmTableObjects 3 }

     slapmSubcomponentEntry OBJECT-TYPE
         SYNTAX      SlapmSubcomponentEntry
         MAX-ACCESS  not-accessible
         STATUS      current
         DESCRIPTION
              "Describes a particular subcomponent entry.  This
              table does not have slapmPolicyStatsOwnerIndex as
              part of its indexing since this table's contents
              is intended to span multiple users."
         INDEX {
                 slapmSubcomponentRemAddress,
                 slapmSubcomponentRemPort,
                 slapmSubcomponentLocalAddress,
                 slapmSubcomponentLocalPort
               }
         ::= { slapmSubcomponentTable 1 }

     SlapmSubcomponentEntry ::=
         SEQUENCE {
              slapmSubcomponentRemAddress            OCTET STRING,
              slapmSubcomponentRemPort               Integer32,
              slapmSubcomponentLocalAddress          OCTET STRING,
              slapmSubcomponentLocalPort             Integer32,
              slapmSubcomponentProtocol              INTEGER,
              slapmSubcomponentSystemAddress         OCTET STRING,
              slapmSubcomponentPolicyName            SlapmNameType,

White, Kenneth             Expires March 1999                  [Page 24]


Internet Draft                 SLAPM-MIB              September 30, 1998

              slapmSubcomponentTrafficProfileName    SlapmNameType,
              slapmSubcomponentLastActivity          DateAndTime,
              slapmSubcomponentInOctets              Counter32,
              slapmSubcomponentOutOctets             Counter32,
              slapmSubcomponentTcpOutBufferedOctets  Counter32,
              slapmSubcomponentTcpInBufferedOctets   Counter32,
              slapmSubcomponentTcpReXmts             Counter32,
              slapmSubcomponentTcpRoundTripTime      Integer32,
              slapmSubcomponentTcpRoundTripVariance  Integer32,
              slapmSubcomponentInPdus                Counter32,
              slapmSubcomponentOutPdus               Counter32,
              slapmSubcomponentApplName              SlapmNameType,
              slapmSubcomponentMonitorStatus         SlapmStatus,
              slapmSubcomponentMonitorIntTime        DateAndTime,
              slapmSubcomponentMonitorCurrentOutRate Gauge32,
              slapmSubcomponentMonitorCurrentInRate  Gauge32
           }

     slapmSubcomponentRemAddress OBJECT-TYPE
        SYNTAX      OCTET STRING (SIZE(0..16))
        MAX-ACCESS  not-accessible
        STATUS      current
        DESCRIPTION
           "Indicate the remote address of a subcomponent.
           A remote address can be either an ipv4 address in which
           case 4 octets are required or as an ipv6 address that
           requires 16 octets.  The value of this subidentifier
           is a zero length octet string when this entry relates
           to a UDP listener."
        ::= { slapmSubcomponentEntry 1 }

     slapmSubcomponentRemPort OBJECT-TYPE
        SYNTAX      Integer32(0..65535)
        MAX-ACCESS  not-accessible
        STATUS      current
        DESCRIPTION
           "Indicate the remote port of a subcomponent.
           The value of this subidentifier
           is 0 when this entry relates to a UDP listener."
        ::= { slapmSubcomponentEntry 2 }

     slapmSubcomponentLocalAddress OBJECT-TYPE
        SYNTAX      OCTET STRING (SIZE(4 | 16))
        MAX-ACCESS  not-accessible
        STATUS      current
        DESCRIPTION
           "Indicate the local address of a subcomponent.
           A local address can be either an ipv4 address in which
           case 4 octets are required or as an ipv6 address that
           requires 16 octets."
        ::= { slapmSubcomponentEntry 3 }

     slapmSubcomponentLocalPort OBJECT-TYPE
        SYNTAX      Integer32(0..65535)
        MAX-ACCESS  not-accessible

White, Kenneth             Expires March 1999                  [Page 25]


Internet Draft                 SLAPM-MIB              September 30, 1998


        STATUS      current
        DESCRIPTION
           "Indicate the local port of a subcomponent."
        ::= { slapmSubcomponentEntry 4 }

     slapmSubcomponentProtocol OBJECT-TYPE
        SYNTAX      INTEGER {
                               udpListener(1),
                               tcpConnection(2)
                            }
        MAX-ACCESS  read-only
        STATUS      current
        DESCRIPTION
           "Indicate the protocol in use that identifies the
           type of subcomponent."
        ::= { slapmSubcomponentEntry 5 }

     slapmSubcomponentSystemAddress OBJECT-TYPE
        SYNTAX      OCTET STRING (SIZE(0..16))
        MAX-ACCESS  read-only
        STATUS      current
        DESCRIPTION
           "Address of a system that an Policy definition relates to.
           A zero length octet string can be used to indicate that
           only a single system is being represented.
           Otherwise, the length of the octet string should be
           4 for an ipv4 address and 16 for an ipv6 address."
        ::= { slapmSubcomponentEntry 6 }

     slapmSubcomponentPolicyName OBJECT-TYPE
        SYNTAX      SlapmNameType
        MAX-ACCESS  read-only
        STATUS      current
        DESCRIPTION
           "Policy name that this entry relates to."
        ::= { slapmSubcomponentEntry 7 }

     slapmSubcomponentTrafficProfileName OBJECT-TYPE
        SYNTAX      SlapmNameType
        MAX-ACCESS  read-only
        STATUS      current
        DESCRIPTION
           "The corresponding traffic profile name."
        ::= { slapmSubcomponentEntry 8 }

     slapmSubcomponentLastActivity OBJECT-TYPE
         SYNTAX      DateAndTime
         MAX-ACCESS  read-only
         STATUS      current
         DESCRIPTION
             "The number of 100ths of seconds  since  this  entry
             was last used."
         DEFVAL { '0000000000000000'H }
         ::= { slapmSubcomponentEntry 9 }

White, Kenneth             Expires March 1999                  [Page 26]


Internet Draft                 SLAPM-MIB              September 30, 1998


     slapmSubcomponentInOctets OBJECT-TYPE
         SYNTAX      Counter32
         MAX-ACCESS  read-only
         STATUS      current
         DESCRIPTION
             "The number of octets received from IP for this
             connection."
         ::= { slapmSubcomponentEntry 10 }

     slapmSubcomponentOutOctets OBJECT-TYPE
         SYNTAX      Counter32
         MAX-ACCESS  read-only
         STATUS      current
         DESCRIPTION
             "The number of octets sent to IP for this connection."
         ::= { slapmSubcomponentEntry 11 }

     slapmSubcomponentTcpOutBufferedOctets OBJECT-TYPE
         SYNTAX      Counter32
         MAX-ACCESS  read-only
         STATUS      current
         DESCRIPTION
             "Number of outgoing octets buffered.  The value
             of this object is zero when the entry is not
             for a TCP connection."
         ::= { slapmSubcomponentEntry 12 }

     slapmSubcomponentTcpInBufferedOctets OBJECT-TYPE
         SYNTAX      Counter32
         MAX-ACCESS  read-only
         STATUS      current
         DESCRIPTION
             "Number of incoming octets buffered.  The value
             of this object is zero when the entry is not
             for a TCP connection."
         ::= { slapmSubcomponentEntry 13 }

     slapmSubcomponentTcpReXmts OBJECT-TYPE
         SYNTAX      Counter32
         MAX-ACCESS  read-only
         STATUS      current
         DESCRIPTION
             "Number of retransmissions.  The value
             of this object is zero when the entry is not
             for a TCP connection."
         ::= { slapmSubcomponentEntry 14 }

     slapmSubcomponentTcpRoundTripTime OBJECT-TYPE
         SYNTAX       Integer32
         UNITS        "milliseconds"
         MAX-ACCESS   read-only
         STATUS       current
         DESCRIPTION
             "The amount of time that has elapsed, measured in

White, Kenneth             Expires March 1999                  [Page 27]


Internet Draft                 SLAPM-MIB              September 30, 1998

             milliseconds, from when the last TCP segment was
             transmitted by the TCP Stack until the ACK was
             received.

             The value of this object is zero when the entry is not
             for a TCP connection."
         ::= { slapmSubcomponentEntry 15 }

     slapmSubcomponentTcpRoundTripVariance OBJECT-TYPE
         SYNTAX       Integer32
         MAX-ACCESS   read-only
         STATUS       current
         DESCRIPTION
             "Round trip time variance.

             The value of this object is zero when the entry is not
             for a TCP connection."
         ::= { slapmSubcomponentEntry 16 }

     slapmSubcomponentInPdus OBJECT-TYPE
         SYNTAX       Counter32
         MAX-ACCESS   read-only
         STATUS       current
         DESCRIPTION
             "The number of protocol related data units transferred
             inbound:

               slapmSubcomponentProtocol    PDU Type

                    udpListener(1)          UDP datagrams
                    tcpConnection(2)        TCP segments"
         ::= { slapmSubcomponentEntry 17 }

     slapmSubcomponentOutPdus OBJECT-TYPE
         SYNTAX       Counter32
         MAX-ACCESS   read-only
         STATUS       current
         DESCRIPTION
             "The number of protocol related data units transferred
             outbound:

               slapmSubcomponentProtocol    PDU Type

                    udpListener(1)          UDP datagrams
                    tcpConnection(2)        TCP segments"
         ::= { slapmSubcomponentEntry 18 }

     slapmSubcomponentApplName OBJECT-TYPE
         SYNTAX       SlapmNameType
         MAX-ACCESS   read-only
         STATUS       current
         DESCRIPTION
             "The application name associated with this entry if known,
             otherwise a zero-length octet string is returned as the value
             of this object."

White, Kenneth             Expires March 1999                  [Page 28]


Internet Draft                 SLAPM-MIB              September 30, 1998

         ::= { slapmSubcomponentEntry 19 }

     slapmSubcomponentMonitorStatus OBJECT-TYPE
        SYNTAX      SlapmStatus
        MAX-ACCESS  read-only
        STATUS       current
        DESCRIPTION
           "The value of this object indicates when a monitored
           value has exceeded a threshold or isn't meeting the
           defined service level.  Only the following SlapmStatus
           BITS setting can be reported here:

                       monitorMinInRateNotAchieved(6),
                       monitorMaxInRateExceeded(7),
                       monitorMaxInDelayExceeded(8),
                       monitorMinOutRateNotAchieved(9),
                       monitorMaxOutRateExceeded(10),
                       monitorMaxOutDelayExceeded(11)

           This object only has meaning when an corresponding
           slapmPolicyMonitorEntry exists with the
           slapmPolicyMonitorControl BITS setting
           monitorSubcomponents(5) enabled."
        ::= { slapmSubcomponentEntry 20 }

     slapmSubcomponentMonitorIntTime OBJECT-TYPE
        SYNTAX      DateAndTime
        MAX-ACCESS  read-only
        STATUS      current
        DESCRIPTION
           "The timestamp for when the last interval ended.

           This object only has meaning when an corresponding
           slapmPolicyMonitorEntry exists with the
           slapmPolicyMonitorControl BITS setting
           monitorSubcomponents(5) enabled.  All of the
           octets returned when monitoring is not in effect
           must be zero."
        DEFVAL { '0000000000000000'H }
        ::= { slapmSubcomponentEntry 21 }

     slapmSubcomponentMonitorCurrentInRate OBJECT-TYPE
        SYNTAX      Gauge32
        UNITS       "kilobits per second"
        MAX-ACCESS  read-only
        STATUS      current
        DESCRIPTION
           "Using the value of the corresponding
           slapmPolicyMonitorInterval, slapmSubcomponentStatsInOctets
           is divided by slapmSubcomponentMonitorInterval to determine
           the current in transfer rate.

           This object only has meaning when an corresponding
           slapmPolicyMonitorEntry exists with the
           slapmPolicyMonitorControl BITS setting

White, Kenneth             Expires March 1999                  [Page 29]


Internet Draft                 SLAPM-MIB              September 30, 1998

           monitorSubcomponents(5) enabled.  The value of this
           object is zero when monitoring is not in effect."
        ::= { slapmSubcomponentEntry 22 }

     slapmSubcomponentMonitorCurrentOutRate OBJECT-TYPE
        SYNTAX      Gauge32
        UNITS       "kilobits per second"
        MAX-ACCESS  read-only
        STATUS      current
        DESCRIPTION
           "Using the value of the corresponding
           slapmPolicyMonitorInterval, slapmSubcomponentStatsOutOctets
           is divided by slapmPolicyMonitorInterval to determine the
           current out transfer rate.

           This object only has meaning when an corresponding
           slapmPolicyMonitorEntry exists with the
           slapmPolicyMonitorControl BITS setting
           monitorSubcomponents(5) enabled.  The value of this
           object is zero when monitoring is not in effect."
        ::= { slapmSubcomponentEntry 23 }

     -- Notifications

     slapmMonitoredEventNotAchieved NOTIFICATION-TYPE
        OBJECTS {
            slapmPolicyMonitorIntTime,
            slapmPolicyMonitorControl,
            slapmPolicyMonitorStatus,
            slapmPolicyMonitorStatus,
            slapmPolicyMonitorCurrentInRate,
            slapmPolicyMonitorCurrentOutRate
        }
        STATUS  current
        DESCRIPTION
           "This notification is generated when an monitored event
           is not achieved with respect to threshold.  This
           applies only towards monitoring a policy traffic
           profile as an aggregate via an associating
           slapmPolicyStatsEntry.  The value
           of slapmPolicyMonitorControl can be examined to
           determine what is being monitored.  The first
           slapmPolicyMonitorStatus value supplies the current
           monitor status while the 2nd value supplies the
           previous status.

           Note: The corresponding slapmPolicyMonitorControl
           BITS setting, enableAggregateTraps(3), MUST be
           selected in order for this notification to
           potentially be generated."
        ::= { slapmNotifications 1 }

     slapmMonitoredEventOkay NOTIFICATION-TYPE
        OBJECTS {
            slapmPolicyMonitorIntTime,

White, Kenneth             Expires March 1999                  [Page 30]


Internet Draft                 SLAPM-MIB              September 30, 1998

            slapmPolicyMonitorControl,
            slapmPolicyMonitorStatus,
            slapmPolicyMonitorStatus,
            slapmPolicyMonitorCurrentInRate,
            slapmPolicyMonitorCurrentOutRate
        }
        STATUS  current
        DESCRIPTION
           "This notification is generated when a monitored
           event has improved to an acceptable level.  This
           applies only towards monitoring a policy traffic
           profile as an aggregate via an associating
           slapmPolicyStatsEntry.  The value
           of slapmPolicyMonitorControl can be examined to
           determine what is being monitored.  The first
           slapmPolicyMonitorStatus value supplies the current
           monitor status while the 2nd value supplies the
           previous status.

           Note: The corresponding slapmPolicyMonitorControl
           BITS setting, enableAggregateTraps(3), MUST be
           selected in order for this notification to
           potentially be generated."
        ::= { slapmNotifications 2 }

     slapmPolicyProfileDeleted NOTIFICATION-TYPE
        OBJECTS {
            slapmPolicyStatsActiveConns,
            slapmPolicyStatsTotalConns,
            slapmPolicyStatsFirstActivated,
            slapmPolicyStatsLastMapping,
            slapmPolicyStatsInOctets,
            slapmPolicyStatsOutOctets,
            slapmPolicyStatsConnectionLimit,
            slapmPolicyStatsCountAccepts,
            slapmPolicyStatsCountDenies,
            slapmPolicyStatsInDiscards,
            slapmPolicyStatsOutDiscards,
            slapmPolicyStatsInPackets,
            slapmPolicyStatsOutPackets,
            slapmPolicyStatsInProfileOctets,
            slapmPolicyStatsOutProfileOctets,
            slapmPolicyStatsMinRate,
            slapmPolicyStatsMaxRate,
            slapmPolicyStatsMaxDelay
        }
        STATUS  current
        DESCRIPTION
           "A slapmPolicyDeleted notification is sent when a
           slapmPolicyStatsEntry is deleted if the value of
           slapmPolicyTrapEnable is enabled(1)."
        ::= { slapmNotifications 3 }

     slapmPolicyMonitorDeleted NOTIFICATION-TYPE
        OBJECTS {

White, Kenneth             Expires March 1999                  [Page 31]


Internet Draft                 SLAPM-MIB              September 30, 1998

            slapmPolicyMonitorStatus,
            slapmPolicyMonitorInterval,
            slapmPolicyMonitorIntTime,
            slapmPolicyMonitorCurrentInRate,
            slapmPolicyMonitorCurrentOutRate,
            slapmPolicyMonitorMinRateLow,
            slapmPolicyMonitorMinRateHigh,
            slapmPolicyMonitorMaxRateHigh,
            slapmPolicyMonitorMaxRateLow,
            slapmPolicyMonitorMaxDelayHigh,
            slapmPolicyMonitorMaxDelayLow,
            slapmPolicyMonitorMinInRateNotAchievies,
            slapmPolicyMonitorMaxInRateExceeds,
            slapmPolicyMonitorMaxInDelayExceeds,
            slapmPolicyMonitorMinOutRateNotAchievies,
            slapmPolicyMonitorMaxOutRateExceeds,
            slapmPolicyMonitorMaxOutDelayExceeds
        }
        STATUS  current
        DESCRIPTION
           "A slapmPolicyMonitorDeleted notification is sent when a
           slapmPolicyMonitor is deleted if the value of
           slapmPolicyTrapEnable is enabled(1)."
        ::= { slapmNotifications 4 }

     slapmSubcomponentMonitoredEventNotAchieved NOTIFICATION-TYPE
        OBJECTS {
            slapmSubcomponentSystemAddress,
            slapmSubcomponentPolicyName,
            slapmSubcomponentTrafficProfileName,
            slapmSubcomponentMonitorStatus,
            slapmSubcomponentMonitorStatus,
            slapmSubcomponentMonitorIntTime,
            slapmSubcomponentMonitorCurrentInRate,
            slapmSubcomponentMonitorCurrentOutRate
        }
        STATUS  current
        DESCRIPTION
           "This notification is generated when a monitored value
           does not achieved a threshold specification.  This
           applies only towards monitoring the individual components
           of a policy traffic profile.  The value of the
           corresponding slapmPolicyMonitorControl can be examined
           to determine what is being monitored.  The first
           slapmSubcomponentMonitorStatus value supplies the current
           monitor status while the 2nd value supplies the
           previous status.

           Note: The corresponding slapmPolicyMonitorControl
           BITS setting, enableSubcomponentTraps(4), MUST be selected
           in order for this notification to potentially be generated."
        ::= { slapmNotifications 5 }

     slapmSubcomponentMonitoredEventOkay NOTIFICATION-TYPE
        OBJECTS {

White, Kenneth             Expires March 1999                  [Page 32]


Internet Draft                 SLAPM-MIB              September 30, 1998

            slapmSubcomponentSystemAddress,
            slapmSubcomponentPolicyName,
            slapmSubcomponentTrafficProfileName,
            slapmSubcomponentMonitorStatus,
            slapmSubcomponentMonitorStatus,
            slapmSubcomponentMonitorIntTime,
            slapmSubcomponentMonitorCurrentInRate,
            slapmSubcomponentMonitorCurrentOutRate
        }
        STATUS  current
        DESCRIPTION
           "This notification is generated when a monitored value
           has reached an acceptable level.

           Note: The corresponding slapmPolicyMonitorControl
           BITS setting, enableSubcomponentTraps(3), MUST be
           selected in order for this notification to potentially
           be generated."
        ::= { slapmNotifications 6 }

     ---------------------------------------------------------------------
     -- Conformance information
     -- Compliance statements
     ---------------------------------------------------------------------

     slapmCompliances OBJECT IDENTIFIER ::= { slapmConformance 1 }
     slapmGroups      OBJECT IDENTIFIER ::= { slapmConformance 2 }

     ---------------------------------------------------------------------
     -- Compliance statements
     ---------------------------------------------------------------------

     slapmCompliance MODULE-COMPLIANCE
        STATUS  current
        DESCRIPTION
                "The compliance statement for the SLAPM-MIB."
        MODULE  -- this module
            MANDATORY-GROUPS {
                                slapmBaseGroup,
                                slapmNotGroup
                             }
            GROUP slapmEndSystemGroup
            DESCRIPTION
                "The contents of this group is required by end-system
                implementations."
            GROUP slapmOptionalGroup
            DESCRIPTION
                "The contents of this group is optional, since not all
                systems are capable of generating the values associated
                with these objects."
            GROUP slapmEndSystemNotGroup
            DESCRIPTION
                "The contents of this group is required by end-system
                implementations."
        ::= { slapmCompliances 1 }

White, Kenneth             Expires March 1999                  [Page 33]


Internet Draft                 SLAPM-MIB              September 30, 1998


     ---------------------------------------------------------------------
     -- MIB groupings
     ---------------------------------------------------------------------

     slapmBaseGroup OBJECT-GROUP
       OBJECTS {
                 slapmSpinLock,
                 slapmPolicyCountQueries,
                 slapmPolicyCountAccesses,
                 slapmPolicyCountSuccessAccesses,
                 slapmPolicyCountNotFounds,
                 slapmPolicyPurgeTime,
                 slapmPolicyTrapEnable,
                 slapmPolicyStatsOperStatus,
                 slapmPolicyStatsActiveConns,
                 slapmPolicyStatsFirstActivated,
                 slapmPolicyStatsLastMapping,
                 slapmPolicyStatsInOctets,
                 slapmPolicyStatsOutOctets,
                 slapmPolicyStatsConnectionLimit,
                 slapmPolicyStatsTotalConns,
                 slapmPolicyStatsCountAccepts,
                 slapmPolicyStatsCountDenies,
                 slapmPolicyStatsInDiscards,
                 slapmPolicyStatsOutDiscards,
                 slapmPolicyStatsInPackets,
                 slapmPolicyStatsOutPackets,
                 slapmPolicyStatsMinRate,
                 slapmPolicyStatsMaxRate,
                 slapmPolicyStatsMaxDelay,
                 slapmPolicyMonitorControl,
                 slapmPolicyMonitorStatus,
                 slapmPolicyMonitorInterval,
                 slapmPolicyMonitorIntTime,
                 slapmPolicyMonitorCurrentInRate,
                 slapmPolicyMonitorCurrentOutRate,
                 slapmPolicyMonitorMinRateLow,
                 slapmPolicyMonitorMinRateHigh,
                 slapmPolicyMonitorMaxRateHigh,
                 slapmPolicyMonitorMaxRateLow,
                 slapmPolicyMonitorMaxDelayHigh,
                 slapmPolicyMonitorMaxDelayLow,
                 slapmPolicyMonitorMinInRateNotAchievies,
                 slapmPolicyMonitorMaxInRateExceeds,
                 slapmPolicyMonitorMaxInDelayExceeds,
                 slapmPolicyMonitorMinOutRateNotAchievies,
                 slapmPolicyMonitorMaxOutRateExceeds,
                 slapmPolicyMonitorMaxOutDelayExceeds,
                 slapmPolicyMonitorRowStatus
                }
      STATUS current
      DESCRIPTION
          "The group of objects defined by this MIB that are
          required for all implementations to be compliant."

White, Kenneth             Expires March 1999                  [Page 34]


Internet Draft                 SLAPM-MIB              September 30, 1998

      ::= { slapmGroups 1 }

     slapmOptionalGroup OBJECT-GROUP
       OBJECTS {
                 slapmPolicyStatsInProfileOctets,
                 slapmPolicyStatsOutProfileOctets
               }
      STATUS current
      DESCRIPTION
          "The group of objects defined by this MIB that are
          optional."
      ::= { slapmGroups 2 }

     slapmEndSystemGroup OBJECT-GROUP
       OBJECTS {
                 slapmSubcomponentProtocol,
                 slapmSubcomponentSystemAddress,
                 slapmSubcomponentPolicyName,
                 slapmSubcomponentTrafficProfileName,
                 slapmSubcomponentLastActivity,
                 slapmSubcomponentInOctets,
                 slapmSubcomponentOutOctets,
                 slapmSubcomponentTcpOutBufferedOctets,
                 slapmSubcomponentTcpInBufferedOctets,
                 slapmSubcomponentTcpReXmts,
                 slapmSubcomponentTcpRoundTripTime,
                 slapmSubcomponentTcpRoundTripVariance,
                 slapmSubcomponentInPdus,
                 slapmSubcomponentOutPdus,
                 slapmSubcomponentApplName,
                 slapmSubcomponentMonitorStatus,
                 slapmSubcomponentMonitorIntTime,
                 slapmSubcomponentMonitorCurrentOutRate,
                 slapmSubcomponentMonitorCurrentInRate
               }
       STATUS  current
       DESCRIPTION
           "The group of objects defined by this MIB that are
           required for end system implementations."
       ::= { slapmGroups 3 }

     slapmNotGroup NOTIFICATION-GROUP
       NOTIFICATIONS {
                 slapmMonitoredEventNotAchieved,
                 slapmMonitoredEventOkay,
                 slapmPolicyProfileDeleted,
                 slapmPolicyMonitorDeleted
               }
       STATUS  current
       DESCRIPTION
           "The group of notifications defined by this MIB that MUST
           be implemented."
       ::= { slapmGroups 4 }

     slapmEndSystemNotGroup NOTIFICATION-GROUP

White, Kenneth             Expires March 1999                  [Page 35]


Internet Draft                 SLAPM-MIB              September 30, 1998

       NOTIFICATIONS {
                 slapmSubcomponentMonitoredEventNotAchieved,
                 slapmSubcomponentMonitoredEventOkay
               }
       STATUS  current
       DESCRIPTION
           "The group of objects defined by this MIB that are
           required for end system implementations."
       ::= { slapmGroups 5 }
  END


5.0  Security Considerations

Certain management information defined in this MIB may be considered
sensitive in some network environments.  Therefore, authentication of
received SNMP requests and controlled access to management information
SHOULD be employed in such environments.  The method for this
authentication is a function of the SNMP Administrative Framework, and
has not been expanded by this MIB.

It is RECOMMENDED that the slapmPolicyMonitorTable and
slapmSubcomponentTable not be supported in insecure environments.


6.0  Intellectual Property

The IETF takes no position regarding the validity or scope of any
intellectual property or other rights that might be claimed to pertain
to the implementation or use of the technology described in this
document or the extent to which any license under such rights might or
might not be available; neither does it represent that it has made any
effort to identify any such rights.  Information on the IETF's
procedures with respect to rights in standards-track and
standards-related documentation can be found in BCP-11.  Copies of
claims of rights made available for publication and any assurances of
licenses to be made available, or the result of an attempt made to
obtain a general license or permission for the use of such proprietary
rights by implementers or users of this specification can be obtained
from the IETF Secretariat.

The IETF invites any interested party to bring to its attention any
copyrights, patents or patent applications, or other proprietary rights
which may cover technology that may be required to practice this
standard.  Please address the information to the IETF Executive
Director.


7.0  Acknowledgments

This document is a product of the IETF.


8.0  References


White, Kenneth             Expires March 1999                  [Page 36]


Internet Draft                 SLAPM-MIB              September 30, 1998

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

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

[3]  Case, J., McCloghrie, K., Rose, M., and Waldbusser S., "Structure
     of Management Information for Version 2 of the Simple Network
     Management Protocol (SNMPv2)", RFC 1902, January 1996.

[4]  Case, J., McCloghrie, K., Rose, M., and Waldbusser, S., "Textual
     Conventions for Version 2 of the Simple Network Management Protocol
     (SNMPv2)", RFC 1903, January 1996.

[5]  Case, J., McCloghrie, K., Rose, M., and Waldbusser, S.,
     "Conformance Statements for Version 2 of the Simple Network
     Management Protocol (SNMPv2)", RFC 1904, January 1996.

[6]  Case, J., McCloghrie, K., Rose, M., and Waldbusser, S., "Protocol
     Operations for Version 2 of the Simple Network Management Protocol
     (SNMPv2)", RFC 1905, January 1996.

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

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

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

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

[11] Wijnen, B., Presuhn, R., McCloghrie, K., "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.

[12] Hovey, R., and S. Bradner, "The Organizations Involved in the IETF
     Standards Process", BCP 11, RFC 2028, October 1996.

[13] Bradner, S., "Key words for use in RFCs to Indicate Requirement
     Levels", BCP 14, RFC 2119, March 1997.



White, Kenneth             Expires March 1999                  [Page 37]


Internet Draft                 SLAPM-MIB              September 30, 1998

[14] 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.

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

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

[17] 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.

[18] 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.

[19] "Schema for Service Level Administration of Differentiated Services
     and Integrated Services in Networks",
     <draft-ellesson-sla-schema-02.txt>, June 1, 1998.

[20] McCloghrie, K. and Bierman, A., "Entity MIB using SMIv2", RFC 2037,
     October 1996.


9.0  Author's Address

  Kenneth D. White
  Dept. BRQA/Bldg. 501/G114
  IBM Corporation
  P.O.Box 12195
  3039 Cornwallis
  Research Triangle Park, NC 27709, USA
  E-mail: kennethw@vnet.ibm.com


10.0  Full Copyright Statement

Copyright (C) The Internet Society (1997).  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 implementation 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


White, Kenneth             Expires March 1999                  [Page 38]


Internet Draft                 SLAPM-MIB              September 30, 1998

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.












































White, Kenneth             Expires March 1999                  [Page 39]