Subject: PMP> [Fwd: Notification MIB]

From: Randy Turner <[email-masked]>
Date: Fri, 04 Apr 1997 14:30:47 -0800

-- 
Randy Turner
Network Architect
Sharp Laboratories of America
[email-masked]

Subject: Notification MIB
From: Bob Stewart <[email-masked]>
To: Distributed Management WG <[email-masked]>
Date: Wed, 2 Apr 1997 08:14:56 -0500

Internet Draft              Notification MIB               26 March 1997

                            Notification MIB

                             26 March 1997

                  draft-ietf-disman-notify-mib-00.txt

                              Bob Stewart
                          Cisco Systems, Inc.
                           [email-masked]

                          Status of this Memo

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

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

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

Expires 26 March 1997+6 months                                  [Page 1]


Internet Draft              Notification MIB               26 March 1997

1.  Abstract

This memo defines an experimental portion of the Management Information
Base (MIB) for use with network management protocols in the Internet
community.  In particular, it describes managed objects used for
managing SNMP notifications.

Expires 26 March 1997+6 months                                  [Page 2]


Internet Draft              Notification MIB               26 March 1997

2.  The SNMP Network Management Framework

They are: The SNMP Network Management Framework presently consists of
three major components.  They are:

  the SMI, described in RFC 1902 [1] - the mechanisms used for
  describing and naming objects for the purpose of management.

  the MIB-II, STD 17, RFC 1213 [2] - the core set of managed objects for
  the Internet suite of protocols.

  the protocol, RFC 1157 [3] and/or RFC 1905 [4], - the protocol for
  accessing managed objects.

The Framework permits new objects to be defined for the purpose of
experimentation and evaluation.

2.1.  Object Definitions

Managed objects are accessed via a virtual information store, termed the
Management Information Base or MIB.  Objects in the MIB are defined
using the subset of Abstract Syntax Notation One (ASN.1) defined in the
SMI.  In particular, each object type is named by an OBJECT IDENTIFIER,
an administratively assigned name.  The object type together with an
object instance serves to uniquely identify a specific instantiation of
the object.  For human convenience, we often use a textual string,
termed the descriptor, to refer to the object type.

Expires 26 March 1997+6 months                                  [Page 3]


Internet Draft              Notification MIB               26 March 1997

3.  Overview

Systems that support SNMP need a means of controlling and directing
notifications, that is, Traps and Informs.  Furthermore it would be
useful to have a common mechanism for recording notification information
as a hedge against lost Traps.

This MIB provides infrastructure for other MIBs in the form of control
over the generation of notifications and specification of where to send
them, as well as counters and a local logging function.  It is intended
strictly for senders of notifications.

Expires 26 March 1997+6 months                                  [Page 4]


Internet Draft              Notification MIB               26 March 1997

4.  Definitions

NOTIFICATION-MIB DEFINITIONS ::= BEGIN

IMPORTS
    MODULE-IDENTITY, OBJECT-TYPE,
    NOTIFICATION-TYPE,
    experimental, Integer32, Unsigned32 FROM SNMPv2-SMI
    TEXTUAL-CONVENTION, RowStatus,
    TimeStamp, DisplayString,
    AutonomousType, DateAndTime FROM SNMPv2-TC
    MODULE-COMPLIANCE, OBJECT-GROUP     FROM SNMPv2-CONF
    EntryType, targetIndex              FROM MANAGEMENT-TARGET-MIB

notificationMIB MODULE-IDENTITY
    LAST-UPDATED "9703231700Z"
    ORGANIZATION "IETF Distributed Management Working Group"
    CONTACT-INFO "Bob Stewart
                  Cisco Systems, Inc.
                  170 West Tasman Drive,
                  San Jose CA 95134-1706.
                  Phone: +1 408 526 4527
                  Email: [email-masked]"
    DESCRIPTION
        "The MIB module for controlling, directing, and logging
        SNMP notifications, that is, Traps and Informs."
    ::= { experimental xx }

--
-- Textual Conventions
--

SendControl ::= TEXTUAL-CONVENTION
    STATUS      current
    DESCRIPTION
        "The choice of control values for whether a notification
        is sent, representing a range of insistence within an
        overall hierarchy.

        When choices are in conflict, target-level controls
        take precedence over notification-level controls, which
        take precedence over system-level control.

        hardEnable    enable except for a level override
        softEnable    enable unless a hardDisable overrides

Expires 26 March 1997+6 months                                  [Page 5]


Internet Draft              Notification MIB               26 March 1997

        defer         defer to next level
        softDisable   disable unless a hardEnable overrides
        hardDisable   disable except for a level override

        If all levels defer, the notification is disabled.
        "
    SYNTAX      INTEGER { hardEnable(1), softEnable(2), defer(3),
                          softDisable(4), hardDisable(5) }

BlockTime ::= TEXTUAL-CONVENTION
    STATUS      current
    DESCRIPTION
        "The minimum number of seconds that must expire between
        occurances of the same type. A value of 0 indicates no limit.
        A value of -1 indicates the global default limit."
    SYNTAX      Integer32 (-1..65535)

FailureReason ::= TEXTUAL-CONVENTION
    STATUS      current
    DESCRIPTION
        "Reasons for failures in an attempt to send a
        notification."
    SYNTAX      INTEGER { localResourceLack(1), badDestination(2),
                          tooBig(3), badAccessControl(4),
                          noAck(5) }

notificationMIBObjects OBJECT IDENTIFIER ::= { notificationMIB 1 }

ntiSystemConfig OBJECT IDENTIFIER ::= { notificationMIBObjects 1 }
ntiSystemStats  OBJECT IDENTIFIER ::= { notificationMIBObjects 2 }
ntiNotifConfig  OBJECT IDENTIFIER ::= { notificationMIBObjects 3 }
ntiNotifStats   OBJECT IDENTIFIER ::= { notificationMIBObjects 4 }
ntiTargetConfig OBJECT IDENTIFIER ::= { notificationMIBObjects 5 }
ntiTargetStats  OBJECT IDENTIFIER ::= { notificationMIBObjects 6 }
ntiLog          OBJECT IDENTIFIER ::= { notificationMIBObjects 7 }

--
-- System-level Configuration Section
--

--
-- System Configuration Table
--

Expires 26 March 1997+6 months                                  [Page 6]


Internet Draft              Notification MIB               26 March 1997

ntiSysConTable OBJECT-TYPE
    SYNTAX      SEQUENCE OF NtiSysConEntry
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
        "A table of notification configuration for the overall
        managed system."
    ::= { ntiSystemConfig 1 }

ntiSysConEntry OBJECT-TYPE
    SYNTAX      NtiSysConEntry
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
        "Configuration for one notification form.

        Entries in this table may not be created or deleted.
        Their existence depends on what the system supports."
    INDEX       { ntiNotificationForm }
    ::= { ntiSysConTable 1 }

NtiSysConEntry ::= SEQUENCE {
    ntiNotificationForm INTEGER,
    ntiSysConControl            SendControl,
    ntiSysConRateBlock  BlockTime
}

ntiNotificationForm OBJECT-TYPE
    SYNTAX      INTEGER { log(1), trap(2), inform(3) }
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
        "The form of notification this entry configures."
    ::= { ntiSysConEntry 1 }

ntiSysConControl OBJECT-TYPE
    SYNTAX      SendControl
    MAX-ACCESS  read-write
    STATUS      current
    DESCRIPTION
        "The system-level control option for this form of
        notification.

        For equal controls, system level defers to both
        notification level and target level."

Expires 26 March 1997+6 months                                  [Page 7]


Internet Draft              Notification MIB               26 March 1997

    DEFVAL { softDisabled }
    ::= { ntiSysConEntry 2 }

ntiSysConTrapRateBlock OBJECT-TYPE
    SYNTAX      BlockTime
    UNITS       "seconds"
    MAX-ACCESS  read-create
    STATUS      current
    DESCRIPTION
        "The system-level value for limiting the transmission rate
        of this form of notifications from this managed system. A
        notification of this form may not be sent more often
        than this number of seconds apart unless overridden by a
        notification- or target-level rate block."
    DEFVAL { 60 }
    ::= { ntiSysConEntry 3 }

--
-- System-level Statistics Section
--

--
-- System-level Statistics Table
--

ntiSysStatTable OBJECT-TYPE
    SYNTAX      SEQUENCE OF NtiSysStatEntry
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
        "A table of notification statistics for the overall
        managed system."
    ::= { ntiSystemStats 1 }

ntiSysStatEntry OBJECT-TYPE
    SYNTAX      NtiSysStatEntry
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
        "Statistics for one notification form.

        Entries in this table may not be created or deleted.
        Their existence depends on what the system supports."
    AUGMENTS    { ntiSysConTable }
    ::= { ntiSysStatTable 1 }

Expires 26 March 1997+6 months                                  [Page 8]


Internet Draft              Notification MIB               26 March 1997

NtiSysStatEntry ::= SEQUENCE {
    ntiSysStatNotificationsSent Counter32,
    ntiSysStatLastSentTime              TimeStamp,
    ntiSysStatLastSentOID               OCTET STRING,
    ntiSysStatsFailed           Counter32,
    ntiSysStatLastFailedTime            TimeStamp,
    ntiSysStatLastFailedOID             OCTET STRING
}

ntiSysStatNotificationsSent OBJECT-TYPE
    SYNTAX      Counter32
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "The number of notifications of this form sent successfully
        from this managed system."
    ::= { ntiSysStatEntry 1 }

ntiSysStatLastSentTime OBJECT-TYPE
    SYNTAX      TimeStamp
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "The value of sysUpTime the last time a notification of this
        form was successfully sent."
    ::= { ntiSysStatEntry 2 }

ntiSysStatLastSentOID OBJECT-TYPE
    SYNTAX      OCTET STRING
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "The NOTIFICATION-TYPE object identifier of the last
        notification of this form successfully sent from this
        managed system."
    ::= { ntiSysStatEntry 3 }

ntiSysStatNotificationsFailed OBJECT-TYPE
    SYNTAX      Counter32
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "The number of notifications of this form that completely
        failed an attempt to send.  This means, for example, that
        allowed retries were exhausted."

Expires 26 March 1997+6 months                                  [Page 9]


Internet Draft              Notification MIB               26 March 1997

    ::= { ntiSysStatEntry 4 }

ntiSysStatLastFailedTime OBJECT-TYPE
    SYNTAX      TimeStamp
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "The value os sysUpTime the last time an attempt to send
        failed for a notification of this form."
    ::= { ntiSysStatEntry 5 }

ntiSysStatLastFailedOID OBJECT-TYPE
    SYNTAX      OCTET STRING
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "The NOTIFICATION-TYPE object identifier of the last
        notification of this form for which an attempt to send
        failed."
    ::= { ntiSysStatEntry 6 }

--
-- Notification-level Configuration Section
--

--
-- Notification Configuration Table
--

ntiNotConTable OBJECT-TYPE
    SYNTAX      SEQUENCE OF NtiNotConEntry
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
        "A table of configuration for individual notifications
        from this managed system."
    ::= { ntiNotificationConfig 1 }

ntiNotConEntry OBJECT-TYPE
    SYNTAX      NtiNotConEntry
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
        "Configuration for one notification form..

Expires 26 March 1997+6 months                                 [Page 10]


Internet Draft              Notification MIB               26 March 1997

        A system may choose to populate this table for all
        notifications that it supports or may support addition
        and deletion of individual entries using ntiNotConStatus."
    INDEX       { ntiNotificationForm, IMPLIED ntiNotificationID }
    ::= { ntiNotConTable 1 }

NtiNotConEntry ::= SEQUENCE {
    ntiNotificationID   OCTET STRING,
    ntiNotificationIndex        Unsigned32,
    ntiNotConControl            SendControl,
    ntiNotConRateBlock  BlockTime,
    ntiNotConStatus             RowStatus
}

ntiNotificationID OBJECT-TYPE
    SYNTAX      OCTET STRING
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
        "The NOTIFICATION-TYPE object identifer of a notification
        supported by this managed system."
    ::= { ntiNotConEntry 1 }

ntiNotificationIndex OBJECT-TYPE
    SYNTAX      Unsigned32 (1..4294967295)
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "An arbitrary integer identification for the notification,
        in one-to-one correspondence with ntiNotificationID.

        The purpose of this object is to provide a short, convenient
        identification for use by computers and as a value for other
        MIB objects.   The agent may change this value when it is
        reinitialized but must correct all places where the value
        is used."
    ::= { ntiNotConEntry 2 }

ntiNotConControl OBJECT-TYPE
    SYNTAX      SendControl
    MAX-ACCESS  read-write
    STATUS      current
    DESCRIPTION
        "The notification-level control option for this form of
        notification.

Expires 26 March 1997+6 months                                 [Page 11]


Internet Draft              Notification MIB               26 March 1997

        For equal controls, notification level defers to target
        level."
    DEFVAL { softDisabled }
    ::= { ntiNotConEntry 3 }

ntiNotConTrapRateBlock OBJECT-TYPE
    SYNTAX      BlockTime
    UNITS       "seconds"
    MAX-ACCESS  read-create
    STATUS      current
    DESCRIPTION
        "The notification-level value for limiting the transmission
        rate of this form of notifications from this managed system.
        A notification of this form may not be sent more often
        than this number of seconds apart unless overridden by a
        target-level rate block."
    DEFVAL { 60 }
    ::= { ntiNotConEntry 4 }

ntiNotConStatus OBJECT-TYPE
    SYNTAX      RowStatus
    MAX-ACCESS  read-create
    STATUS      current
    DESCRIPTION
        "The control that allows creation/deletion of entries."
    ::= { ntiNotConEntry 5 }

--
-- Notification-level Statistics Section
--

--
-- Notification-level Statistics Table
--

ntiNotStatTable OBJECT-TYPE
    SYNTAX      SEQUENCE OF NtiNotStatEntry
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
        "A table of notification statistics for the
        managed system."
    ::= { ntiNotificationStats 1 }

ntiNotStatEntry OBJECT-TYPE

Expires 26 March 1997+6 months                                 [Page 12]


Internet Draft              Notification MIB               26 March 1997

    SYNTAX      NtiNotStatEntry
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
        "Statistics for one notification form.

        Entries in this table may not be created or deleted.
        Their existence depends on what the system supports."
    AUGMENTS    { ntiNotConTable }
    ::= { ntiNotStatTable 1 }

NtiNotStatEntry ::= SEQUENCE {
    ntiNotStatNotificationsSent Counter32,
    ntiNotStatLastSentTime              TimeStamp,
    ntiNotStatsFailed           Counter32,
    ntiNotStatLastFailedTime            TimeStamp,
    ntiNotStatLastFailedTargetGroup     EntryIndexOrZero,
    ntiNotStatLastFailedTargetScope     EntryIndexOrZero,
    ntiNotStatLastFailedReason          FailureReason
}

ntiNotStatNotificationsSent OBJECT-TYPE
    SYNTAX      Counter32
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "The number of notifications of this form and ID sent
        successfully from this managed system."
    ::= { ntiNotStatEntry 1 }

ntiNotStatLastSentTime OBJECT-TYPE
    SYNTAX      TimeStamp
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "The value of sysUpTime the last time a notification of
        this form and ID was successfully sent."
    ::= { ntiNotStatEntry 2 }

ntiNotStatNotificationsFailed OBJECT-TYPE
    SYNTAX      Counter32
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "The number of notifications of this form and ID that

Expires 26 March 1997+6 months                                 [Page 13]


Internet Draft              Notification MIB               26 March 1997

        completely failed an attempt to send.  This means, for
        example, that allowed retries were exhausted."
    ::= { ntiNotStatEntry 3 }

ntiNotStatLastFailedTime OBJECT-TYPE
    SYNTAX      TimeStamp
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "The value of sysUpTime the last time an attempt to send
        failed for a notification of this form and ID."
    ::= { ntiNotStatEntry 4 }

ntiNotStatLastFailedTargetGroup OBJECT-TYPE
    SYNTAX      EntryIndexOrZero
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "The targetIndex of the group target for which the last
        attempt to send a notification of this form and ID failed.
        A value of 0 indicates this object does not apply."
    ::= { ntiNotStatEntry 5 }

ntiNotStatLastFailedTargetScope OBJECT-TYPE
    SYNTAX      EntryIndexOrZero
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "The targetIndex of the target scope for which the last
        attempt to send a notification of this form and ID failed.
        A value of 0 indicates that this object does not apply."
    ::= { ntiNotStatEntry 6 }

ntiNotStatLastFailedReason OBJECT-TYPE
    SYNTAX      FailureReason
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "The reason the last attempt to send a notification of
        this form and ID failed."
    ::= { ntiNotStatEntry 7 }

--
-- Target-level Configuration Section
--

Expires 26 March 1997+6 months                                 [Page 14]


Internet Draft              Notification MIB               26 March 1997

--
-- Target Configuration Table
--

ntiTarConTable OBJECT-TYPE
    SYNTAX      SEQUENCE OF NtiTarConEntry
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
        "A table of configuration for notification targets
        from this managed system."
    ::= { ntiTargetConfig 1 }

ntiTarConEntry OBJECT-TYPE
    SYNTAX      NtiTarConEntry
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
        "Configuration for one notification form for a particular
        notification and target.

        Create and delete entries using ntiTarConStatus.

        The ntiNotificationForm value 'log' is not valid for this
        table."
    INDEX       { targetIndex,
                  ntiNotificationForm,
                  ntiNotificationIndex }
    ::= { ntiTarConTable 1 }

NtiTarConEntry ::= SEQUENCE {
    ntiTarConControl            SendControl,
    ntiTarConRateBlock  BlockTime,
    ntiTarConStatus             RowStatus
}

ntiTarConControl OBJECT-TYPE
    SYNTAX      SendControl
    MAX-ACCESS  read-write
    STATUS      current
    DESCRIPTION
        "The target-level control option for this form of
        notification."
    DEFVAL { softDisabled }
    ::= { ntiTarConEntry 1 }

Expires 26 March 1997+6 months                                 [Page 15]


Internet Draft              Notification MIB               26 March 1997

ntiTarConTrapRateBlock OBJECT-TYPE
    SYNTAX      BlockTime
    UNITS       "seconds"
    MAX-ACCESS  read-create
    STATUS      current
    DESCRIPTION
        "The target-level value for limiting the transmission
        rate of this form of notifications from this managed system.
        A notification of this form may not be sent more often
        than this number of seconds apart."
    DEFVAL { 60 }
    ::= { ntiTarConEntry 2 }

ntiTarConStatus OBJECT-TYPE
    SYNTAX      RowStatus
    MAX-ACCESS  read-create
    STATUS      current
    DESCRIPTION
        "The control that allows creation/deletion of entries."
    ::= { ntiTarConEntry 3 }

--
-- Target-level Statistics Section
--

--
-- Target-level Statistics Table
--

ntiTarStatTable OBJECT-TYPE
    SYNTAX      SEQUENCE OF NtiTarStatEntry
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
        "A table of target statistics for the managed system."
    ::= { ntiTargetStats 1 }

ntiTarStatEntry OBJECT-TYPE
    SYNTAX      NtiTarStatEntry
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
        "Statistics for one notification form and ID for one
        target."
    AUGMENTS    { ntiTarConTable }

Expires 26 March 1997+6 months                                 [Page 16]


Internet Draft              Notification MIB               26 March 1997

    ::= { ntiTarStatTable 1 }

NtiTarStatEntry ::= SEQUENCE {
    ntiTarStatNotificationsSent Counter32,
    ntiTarStatLastSentTime              TimeStamp,
    ntiTarStatsFailed           Counter32,
    ntiTarStatLastFailedTime            TimeStamp,
    ntiTarStatLastFailedTargetGroup     EntryIndexOrZero,
    ntiTarStatLastFailedTargetScope     EntryIndexOrZero,
    ntiTarStatLastFailedReason          FailureReason
}

ntiTarStatNotificationsSent OBJECT-TYPE
    SYNTAX      Counter32
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "The number of notifications of this form and ID sent
        successfully to this target.  If the target is a group,
        this counts one for each scope in that group."
    ::= { ntiTarStatEntry 1 }

ntiTarStatLastSentTime OBJECT-TYPE
    SYNTAX      TimeStamp
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "The value of sysUpTime the last time a notification of
        this form and ID was successfully sent to this target."
    ::= { ntiTarStatEntry 2 }

ntiTarStatNotificationsFailed OBJECT-TYPE
    SYNTAX      Counter32
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "The number of notifications of this form and ID that
        completely failed an attempt to send.  This means, for
        example, that allowed retries were exhausted.  If this
        target is a group, this counts one for each scope in
        that group."
    ::= { ntiTarStatEntry 3 }

ntiTarStatLastFailedTime OBJECT-TYPE
    SYNTAX      TimeStamp

Expires 26 March 1997+6 months                                 [Page 17]


Internet Draft              Notification MIB               26 March 1997

    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "The value of sysUpTime the last time an attempt to send
        failed for a notification of this form and ID to this
        target."
    ::= { ntiTarStatEntry 4 }

ntiTarStatLastFailedTargetScope OBJECT-TYPE
    SYNTAX      EntryIndexOrZero
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "The targetIndex of the target scope for which the last
        attempt to send a notification of this form and ID failed.
        A value of 0 indicates that this object does not apply."
    ::= { ntiTarStatEntry 5 }

ntiTarStatLastFailedReason OBJECT-TYPE
    SYNTAX      FailureReason
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "The reason the last attempt to send a notification of
        this form and ID failed to this group."
    ::= { ntiTarStatEntry 6 }

--
-- Log Section
--

ntiLogEntryLimit OBJECT-TYPE
    SYNTAX      Integer32 {-1..2147483647)
    MAX-ACCESS  read-write
    STATUS      current
    DESCRIPTION
        "The maximum number of entries that can be held in ntiLogTable.
        A value of -1 indicates no limit."
    ::= { ntiLog 1 }

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

Expires 26 March 1997+6 months                                 [Page 18]


Internet Draft              Notification MIB               26 March 1997

        "The number of times the oldest log entry was discarded to
        make room for a new entry."
    ::= { ntiLog 2 }

--
-- Log Table
--

ntiLogTable OBJECT-TYPE
    SYNTAX      SEQUENCE OF NtiLogEntry
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
        "A table of notification log entries."
    ::= { ntiTargetConfig 1 }

ntiLogEntry OBJECT-TYPE
    SYNTAX      NtiLogEntry
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
        "A notification log entry.

        Entries appear in this table when notifications occur,
        according to the notification controls."
    INDEX       { ntiLogIndex }
    ::= { ntiLogTable 1 }

NtiLogEntry ::= SEQUENCE {
    ntiLogIndex         Integer32,
    ntiLogTime          TimeStamp,
    ntiLogNotificationIndex     Unsigned32
}

ntiLogIndex OBJECT-TYPE
    SYNTAX     Integer32 (1..2147483647)
    MAX-ACCESS not-accessible
    STATUS     current
    DESCRIPTION
        "A monotonically increasing integer for the sole purpose of
        indexing entries.  When it reaches the maximum value, an
        extremely unlikely event, the agent wraps the value back
        to 1 and may flush existing entries."
    ::= { ntiLogEntry 1 }

Expires 26 March 1997+6 months                                 [Page 19]


Internet Draft              Notification MIB               26 March 1997

ntiLogTime OBJECT-TYPE
    SYNTAX      TimeTicks
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "The value of sysUpTime when the entry occurred."
    ::= { ntiLogEntry 2 }

ntiLogNotificationIndex OBJECT-TYPE
    SYNTAX      Unsigned32 (1..4294967295)
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
        "The notification that occurred."
    ::= { ntiLogEntry 3 }

--
-- Log Table
--

ntiLogVariableTable OBJECT-TYPE
    SYNTAX      SEQUENCE OF NtiLogVariableEntry
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
        "A table of variables to go with notification log entries."
    ::= { ntiTargetConfig 1 }

ntiLogVariableEntry OBJECT-TYPE
    SYNTAX      NtiLogVariableEntry
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
        "A notification log entry variable.

        Entries appear in this table when there are variables in
        the varbind list of a notification in ntiLogTable."
    INDEX       { ntiLogIndex, ntiLogVariableIndex }
    ::= { ntiLogVariableTable 1 }

NtiLogVariableEntry ::= SEQUENCE {
    ntiLogVariableIndex         Integer32,
    ntiLogVariableID                    OBJECT IDENTIFIER,
    ntiLogVariableType          INTEGER,
    ntiLogVariableUnsigned32Val Unsigned32,

Expires 26 March 1997+6 months                                 [Page 20]


Internet Draft              Notification MIB               26 March 1997

    ntiLogVariableInteger32Val          Integer32,
    ntiLogVariableOctetStringVal        OCTET STRING,
    ntiLogVariableOidVal                OBJECT IDENTIFIER,
    ntiLogVariableCounter64Val          Counter64
}

ntiLogVariableIndex OBJECT-TYPE
    SYNTAX     Integer32 (1..2147483647)
    MAX-ACCESS not-accessible
    STATUS     current
    DESCRIPTION
        "A monotonically increasing integer for the sole purpose of
        indexing entries."
    ::= { ntiLogVariableEntry 1 }

ntiLogVariableID OBJECT-TYPE
        SYNTAX     OBJECT IDENTIFIER
        MAX-ACCESS read-only
        STATUS     current
        DESCRIPTION
                "The variable's object identifier."
        ::= { ntiLogVariableEntry 2 }

ntiLogVariableValueType OBJECT-TYPE
    SYNTAX      INTEGER { counter32(1), unsignedOrGauge32(2),
                          timeTicks(3), integer32(4), ipAddress(5),
                          octetString(6), objectId(7), counter64(8) }
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "The type of the value. One and only one of the value
        objects that follow will be valid based on this type."
    ::= { ntiLogVariableEntry 3 }

ntiLogVariableUnsigned32Val OBJECT-TYPE
    SYNTAX      Unsigned32 -- (0..4294967295)
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "The value when ntiLogVariableType is one of 'counter32',
        'unsignedOrGauge32', or 'timeTicks'."
    ::= { ntiLogVariableEntry 4 }

ntiLogVariableInteger32Val OBJECT-TYPE
    SYNTAX      Integer32 -- (-2147483648..2147483647)

Expires 26 March 1997+6 months                                 [Page 21]


Internet Draft              Notification MIB               26 March 1997

    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "The value when ntiLogVariableType is 'integer32'."
    ::= { ntiLogVariableEntry 5 }

ntiLogVariableOctetStringVal OBJECT-TYPE
    SYNTAX      OCTET STRING (SIZE (0..65536))
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "The value when ntiLogVariableType is 'ipAddress' or
        'octetString'."
    ::= { ntiLogVariableEntry 6 }

ntiLogVariableOidVal OBJECT-TYPE
    SYNTAX      OBJECT IDENTIFIER
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "The value when ntiLogVariableType is 'objectId'."
    ::= { ntiLogVariableEntry 7 }

ntiLogVariableCounter64Val OBJECT-TYPE
    SYNTAX      Counter64 -- (0..18446744073709551615)
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "The value when ntiLogVariableType is 'counter64'."
    ::= { ntiLogVariableEntry 8 }

--
-- Notifications
--

notificationMIBNotificationPrefix OBJECT IDENTIFIER ::= { notificationMIB 2 }
notificationMIBNotifications OBJECT IDENTIFIER ::= {
notificationMIBNotificationPrefix 0 }

notificationFailure NOTIFICATION-TYPE
    OBJECTS { ntiNotStatLastFailedTargetGroup,
              ntiNotStatLastFailedTargetScope,
              ntiNotStatLastFailedReason }
    STATUS  current
    DESCRIPTION

Expires 26 March 1997+6 months                                 [Page 22]


Internet Draft              Notification MIB               26 March 1997

        "Notification of a failure to send an event.  The form and
        ID of the notification are imbedded in the OIDs for the
        included objects.

        The managed system must not attempt to send this notification
        for a failure to send this notification.

        The network manager must enable this notification only with
        a certain fear and trembling, as it can easily crowd out more
        important information.  It should be used only to help diagnose
        a problem that has appeared in the error counters and can not
        be found otherwise."
    ::= { notificationMIBNotifications 1 }

-- The compliance statements have yet to be written.  The intent is
-- that all objects are required except where otherwise mentioned above
-- and that a system that does not support management applications need
-- not support entries of the notifification form 'inform'.

END

Expires 26 March 1997+6 months                                 [Page 23]


Internet Draft              Notification MIB               26 March 1997

5.  Acknowledgements

This MIB contains considerable contributions from the RMON MIB, the
Distributed Management Design Team (Andy Bierman, Maria Greene, Bob
Stewart, and Steve Waldbusser), and colleagues at Cisco.

Expires 26 March 1997+6 months                                 [Page 24]


Internet Draft              Notification MIB               26 March 1997

6.  References

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

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

[3]  Case, J., Fedor, M., Schoffstall, M., and J. Davin, "Simple Network
     Management Protocol", RFC 1157, May 1990.

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

Expires 26 March 1997+6 months                                 [Page 25]


Internet Draft              Notification MIB               26 March 1997

7.  Security Considerations

Security issues are not discussed in this memo.

8.  Author's Address

     Bob Stewart
     Cisco Systems, Inc.
     170 West Tasman Drive
     San Jose, CA 95134-1706

     Phone: 408-526-4527
     Email: [email-masked]

Expires 26 March 1997+6 months                                 [Page 26]


Internet Draft              Notification MIB               26 March 1997

Table of Contents

1 Abstract ........................................................    2
2 The SNMP Network Management Framework ...........................    3
2.1 Object Definitions ............................................    3
3 Overview ........................................................    4
4 Definitions .....................................................    5
5 Acknowledgements ................................................   24
6 References ......................................................   25
7 Security Considerations .........................................   26
8 Author's Address ................................................   26

Expires 26 March 1997+6 months                                 [Page 27]