From owner-disman@dorothy.peer.com  Thu Jun  1 10:40:51 2000
Received: from starling.bmc.com (fw-us-hou-2.bmc.com [198.207.223.251])
	by ietf.org (8.9.1a/8.9.1a) with ESMTP id KAA24535
	for <disman-archive@odin.ietf.org>; Thu, 1 Jun 2000 10:40:40 -0400 (EDT)
Received: from Dorothy.Bmc.Com (localhost [127.0.0.1])
	by starling.bmc.com (8.10.1/8.8.6) with ESMTP id e51EZxb25011;
	Thu, 1 Jun 2000 09:35:59 -0500 (CDT)
Received: (from root@localhost)
	by Dorothy.Bmc.Com (8.8.6 (PHNE_12836)/8.8.6) id HAA05648
	for disman-list; Thu, 1 Jun 2000 07:30:28 -0700 (PDT)
Received: from tangelo.bmc.com (root@tangelo.bmc.com [172.17.7.166])
	by Dorothy.Bmc.Com (8.8.6 (PHNE_12836)/8.8.6) with ESMTP id HAA05643
	for <disman@dorothy.peer.com>; Thu, 1 Jun 2000 07:30:24 -0700 (PDT)
Received: from fw-us-hou1.bmc.com (fw-us-hou1.bmc.com [172.17.0.250])
	by tangelo.bmc.com (8.8.6 (PHNE_17135)/8.8.6) with SMTP id JAA02761
	for <disman@dorothy.bmc.com>; Thu, 1 Jun 2000 09:31:05 -0500 (CDT)
Received: from mo3980r1.ems.att.com ([135.38.12.14])
	by kcmso1.proxy.att.com (AT&T IPNS/MSO-2.2) with ESMTP id KAA13984;
	Thu, 1 Jun 2000 10:30:32 -0400 (EDT)
Received: from njb140bh1.ems.att.com by mo3980r1.ems.att.com (8.8.8+Sun/ATTEMS-1.4.1 sol2)
	id KAA04793; Thu, 1 Jun 2000 10:24:33 -0400 (EDT)
Received: by njb140bh1.ems.att.com with Internet Mail Service (5.5.2650.21)
	id <LYFTBQP4>; Thu, 1 Jun 2000 10:30:31 -0400
Message-ID: <A32A6A6D3178D3119C300090279CB296021D7F5E@njb140po02.ems.att.com>
From: "Cole, Robert G (Bob), ALSVC" <rgcole@att.com>
To: disman-wg-ietf <disman@dorothy.peer.com>,
        rmonmib-wg-ietf
	 <rmonmib@ietf.org>
Subject: FW: I-D ACTION:draft-cole-sspm-00.txt
Date: Thu, 1 Jun 2000 10:30:28 -0400 
MIME-Version: 1.0
X-Mailer: Internet Mail Service (5.5.2650.21)
Content-Type: multipart/mixed;
	boundary="----_=_NextPart_000_01BFCBD5.EE968E20"
Sender: owner-disman@dorothy.peer.com
Precedence: bulk
List-Id: IETF disman Working Group mailing list <disman@dorothy.bmc.com>


This message is in MIME format. Since your mail reader does not understand
this format, some or all of this message may not be legible.

------_=_NextPart_000_01BFCBD5.EE968E20
Content-Type: text/plain

To all:

Just wanted to make sure the folks on the rmonmib and disman
mailing list saw this.  Also wanted to remind eveyone, that Randy had
agreed to allow us to use the disman mailing list for comments and
discussions
following the rperfman BOF in Adelaide.

Thanks,
Bob

> -----Original Message-----
> From:	Internet-Drafts@ietf.org [SMTP:Internet-Drafts@ietf.org]
> Sent:	Thursday, June 01, 2000 6:32 AM
> To:	IETF-Announce; @loki.ietf.org@attrh2.attrh.att.com
> Subject:	I-D ACTION:draft-cole-sspm-00.txt
> 
> A New Internet-Draft is available from the on-line Internet-Drafts
> directories.
> 
> 
> 	Title		: A Framework for Synthetic Sources for Performance 
>                           Monitoring
> 	Author(s)	: R. Cole, R. Dietz,  C. Kalbfleisch
>                           D. Romascanu	
>         Filename	: draft-cole-sspm-00.txt
> 	Pages		: 26
> 	Date		: 31-May-00
> 	
> This memo discusses the use of synthetic sources (or 'active' probes)
> within the context of remote performance monitoring.  It discusses
> the importance of developing an 'active' probe monitoring capability
> within the Internet.  It develops a framework for synthetic sources
> in performance monitoring against the backdrop of previous, related
> work within the IETF.  It further reports on the broad agreements
> reached in the rperfman BOF held in Adelaide in March 2000 on
> furthering work in this area within the IETF.
> 
> A URL for this Internet-Draft is:
> http://www.ietf.org/internet-drafts/draft-cole-sspm-00.txt
> 
> Internet-Drafts are also available by anonymous FTP. Login with the
> username
> "anonymous" and a password of your e-mail address. After logging in,
> type "cd internet-drafts" and then
> 	"get draft-cole-sspm-00.txt".
> 
> A list of Internet-Drafts directories can be found in
> http://www.ietf.org/shadow.html 
> or ftp://ftp.ietf.org/ietf/1shadow-sites.txt
> 
> 
> Internet-Drafts can also be obtained by e-mail.
> 
> Send a message to:
> 	mailserv@ietf.org.
> In the body type:
> 	"FILE /internet-drafts/draft-cole-sspm-00.txt".
> 	
> NOTE:	The mail server at ietf.org can return the document in
> 	MIME-encoded form by using the "mpack" utility.  To use this
> 	feature, insert the command "ENCODING mime" before the "FILE"
> 	command.  To decode the response(s), you will need "munpack" or
> 	a MIME-compliant mail reader.  Different MIME-compliant mail readers
> 	exhibit different behavior, especially when dealing with
> 	"multipart" MIME messages (i.e. documents which have been split
> 	up into multiple messages), so check your local documentation on
> 	how to manipulate these messages.
> 		
> 		
> Below is the data which will enable a MIME compliant mail reader
> implementation to automatically retrieve the ASCII version of the
> Internet-Draft. <<Untitled Attachment>> 

------_=_NextPart_000_01BFCBD5.EE968E20
Content-Type: message/rfc822
Content-Description: Untitled Attachment

To: 
Subject: 
Date: Thu, 1 Jun 2000 10:09:41 -0400 
MIME-Version: 1.0
X-Mailer: Internet Mail Service (5.5.2650.21)
Content-Type: multipart/mixed;
	boundary="----_=_NextPart_002_01BFCBD5.EE968E20"


------_=_NextPart_002_01BFCBD5.EE968E20
Content-Type: text/plain



------_=_NextPart_002_01BFCBD5.EE968E20
Content-Type: application/octet-stream;
	name="ATT11349"
Content-Disposition: attachment;
	filename="ATT11349"

Content-type: message/external-body;
	access-type="mail-server";
	server="mailserv@ietf.org"

Content-Type: text/plain
Content-ID:	<20000531121324.I-D@ietf.org>

ENCODING mime
FILE /internet-drafts/draft-cole-sspm-00.txt

------_=_NextPart_002_01BFCBD5.EE968E20
Content-Type: message/external-body;
	site="internet-drafts";
	dir="draft-cole-sspm-00.txt";
	mode="ftp.ietf.org";
	access-type="anon-ftp"


------_=_NextPart_002_01BFCBD5.EE968E20--

------_=_NextPart_000_01BFCBD5.EE968E20--


From owner-disman@dorothy.peer.com  Mon Jun  5 02:43:06 2000
Received: from starling.bmc.com (fw-us-hou-2.bmc.com [198.207.223.251])
	by ietf.org (8.9.1a/8.9.1a) with ESMTP id CAA26609
	for <disman-archive@odin.ietf.org>; Mon, 5 Jun 2000 02:43:02 -0400 (EDT)
Received: from Dorothy.Bmc.Com (localhost [127.0.0.1])
	by starling.bmc.com (8.10.1/8.8.6) with ESMTP id e556cRP25060;
	Mon, 5 Jun 2000 01:38:27 -0500 (CDT)
Received: (from root@localhost)
	by Dorothy.Bmc.Com (8.8.6 (PHNE_12836)/8.8.6) id XAA21178
	for disman-list; Sun, 4 Jun 2000 23:32:59 -0700 (PDT)
Received: from tangelo.bmc.com (root@tangelo.bmc.com [172.17.7.166])
	by Dorothy.Bmc.Com (8.8.6 (PHNE_12836)/8.8.6) with ESMTP id XAA21172;
	Sun, 4 Jun 2000 23:32:55 -0700 (PDT)
Received: from fw-us-hou1.bmc.com (fw-us-hou1.bmc.com [172.17.0.250])
	by tangelo.bmc.com (8.8.6 (PHNE_17135)/8.8.6) with SMTP id BAA26329;
	Mon, 5 Jun 2000 01:33:36 -0500 (CDT)
Received: from ramk-95.cisco.com (ramk-dsl4.cisco.com [10.19.11.157])
	by sigma.cisco.com (8.8.8-Cisco List Logging/8.8.8) with SMTP id XAA01648;
	Sun, 4 Jun 2000 23:33:27 -0700 (PDT)
Message-Id: <4.1.20000604232417.00a22590@sigma.cisco.com>
X-Sender: ramk@sigma.cisco.com
X-Mailer: QUALCOMM Windows Eudora Pro Version 4.1 
Date: Sun, 04 Jun 2000 23:35:45 -0700
To: Randy Presuhn <rpresuhn@dorothy.peer.com>, bwijnen@lucent.com
From: "Ramanathan R. Kavasseri" <ramk@cisco.com>
Subject: Re: request consideration of disman mibs for "proposed
  standard"
Cc: disman@dorothy.peer.com
In-Reply-To: <200005261808.LAA14783@Dorothy.Bmc.Com>
Mime-Version: 1.0
Content-Type: text/plain; charset="iso-8859-1"
Content-Transfer-Encoding: 8bit
X-MIME-Autoconverted: from quoted-printable to 8bit by Dorothy.Bmc.Com id XAA21173
Sender: owner-disman@dorothy.peer.com
Precedence: bulk
List-Id: IETF disman Working Group mailing list <disman@dorothy.bmc.com>
Content-Transfer-Encoding: 8bit


At 11:08 AM 5/26/00 -0700, Randy Presuhn wrote:
>
>Hi Bert -
>
>> From bwijnen@lucent.com Tue May 23 15:24:14 PDT 2000
>> Message-ID: 
><2413FED0DFE6D111B3F90008C7FA61FB075E7486@nl0006exch002u.nl.lucent.com>
>> From: "Wijnen, Bert (Bert)" <bwijnen@lucent.com>
>> To: Randy Presuhn <rpresuhn@dorothy.peer.com>
>> Subject: RE: Reminder on <draft-ietf-disman-remops-mib-08.txt>
>> Date: Wed, 24 May 2000 00:24:45 +0200
>> 
>> Can you also repeat the status of the other DISMAN MIBs.
>> I believe I still have the 3 old Bob Stewart MIBs ready to go, right?
>> I think my reviewers agreed, and I think you checked that changes
>> are OK with WG chair and WG.
>...
>
>The following drafts have completed WG last call and review:
>    draft-ietf-disman-notif-log-mib-16.txt
>    draft-ietf-disman-express-mib-11.txt
>    draft-ietf-disman-event-mib-09.txt
>
>I believe the working group has reached rough concensus on
>these drafts and that the reviewers' comments have been
>accomodated or answered.
>
>As disman working group chair, I request that you take
>them to the IESG for consideration as proposed standards.
>
>There has been some implementation work on earlier versions
>of these MIBs; I am not aware of any implementations of them
>in their current form at this time.  Several participants in

Some implementation feedback:
Cisco implemented a very early draft of the expression MIB. This has
been shipping to customers for about a year and a half.
No immediate plans to move up to the latest draft spec.

Also, Cisco's implemented a recent draft of the Event-MIB (not the latest,
but I believe draft-ietf-disman-event-mib-07.txt). Aseem Sethi provided useful
input to the disman wg based on that implementation effort, and it resulted
in some draft improvements.

Ram

>the working group have expressed their intent to implement
>these specifications.
>
> -------------------------------------------------------
> Randy Presuhn           randy_presuhn@bmc.com
> Voice: +1 408 546-1006  BMC Software, Inc.  1-3141
> Fax:   +1 408 965-0359  2141 North First Street
> http://www.bmc.com/     San José, California 95131  USA
> -------------------------------------------------------
> My opinions and BMC's are independent variables.
> -------------------------------------------------------
>



From owner-disman@dorothy.peer.com  Tue Jun  6 16:27:46 2000
Received: from starling.bmc.com (fw-us-hou-1.bmc.com [198.207.223.250])
	by ietf.org (8.9.1a/8.9.1a) with ESMTP id QAA18705
	for <disman-archive@odin.ietf.org>; Tue, 6 Jun 2000 16:27:46 -0400 (EDT)
Received: from Dorothy.Bmc.Com (localhost [127.0.0.1])
	by starling.bmc.com (8.10.1/8.8.6) with ESMTP id e56KMlf08647;
	Tue, 6 Jun 2000 15:22:47 -0500 (CDT)
Received: (from root@localhost)
	by Dorothy.Bmc.Com (8.8.6 (PHNE_12836)/8.8.6) id NAA05263
	for disman-list; Tue, 6 Jun 2000 13:19:39 -0700 (PDT)
Received: (from rpresuhn@localhost)
	by Dorothy.Bmc.Com (8.8.6 (PHNE_12836)/8.8.6) id NAA05257;
	Tue, 6 Jun 2000 13:19:36 -0700 (PDT)
Date: Tue, 6 Jun 2000 13:19:36 -0700 (PDT)
From: Randy Presuhn <rpresuhn@dorothy.peer.com>
Message-Id: <200006062019.NAA05257@Dorothy.Bmc.Com>
To: bwijnen@lucent.com
Subject: reminder: disman docs for "proposed"
Cc: disman@dorothy.peer.com, randy@psg.com
Mime-Version: 1.0
Content-Type: text/plain; charset=us-ascii
Content-Transfer-Encoding: 7bit
Sender: owner-disman@dorothy.peer.com
Precedence: bulk
List-Id: IETF disman Working Group mailing list <disman@dorothy.bmc.com>
Content-Transfer-Encoding: 7bit


Hi -

I just checked http://www.ops.ietf.org/draft-status.html
The status for these documents should be updated:

    draft-ietf-disman-notif-log-mib-16.txt
    draft-ietf-disman-express-mib-11.txt
    draft-ietf-disman-event-mib-09.txt
    draft-ietf-disman-remops-mib-08.txt

All of these have completed WG last call.
All have been approved by their respective reviewers.
I have subsequently requested that these be taken to
the IESG for consideration as proposed standards.

Is there any additional action needed from me or the WG?

 -------------------------------------------------------
 Randy Presuhn           randy_presuhn@bmc.com
 Voice: +1 408 546-1006  BMC Software, Inc.  1-3141
 Fax:   +1 408 965-0359  2141 North First Street
 http://www.bmc.com/     San José, California 95131  USA
 -------------------------------------------------------
 My opinions and BMC's are independent variables.
 -------------------------------------------------------


From owner-disman@dorothy.peer.com  Tue Jun  6 17:07:12 2000
Received: from starling.bmc.com (fw-us-hou-1.bmc.com [198.207.223.250])
	by ietf.org (8.9.1a/8.9.1a) with ESMTP id RAA19179
	for <disman-archive@odin.ietf.org>; Tue, 6 Jun 2000 17:07:12 -0400 (EDT)
Received: from Dorothy.Bmc.Com (localhost [127.0.0.1])
	by starling.bmc.com (8.10.1/8.8.6) with ESMTP id e56L61P22408;
	Tue, 6 Jun 2000 16:06:01 -0500 (CDT)
Received: (from root@localhost)
	by Dorothy.Bmc.Com (8.8.6 (PHNE_12836)/8.8.6) id OAA06852
	for disman-list; Tue, 6 Jun 2000 14:04:55 -0700 (PDT)
Received: from tangelo.bmc.com (root@tangelo.bmc.com [172.17.7.166])
	by Dorothy.Bmc.Com (8.8.6 (PHNE_12836)/8.8.6) with ESMTP id OAA06846;
	Tue, 6 Jun 2000 14:04:50 -0700 (PDT)
Received: from fw-us-hou1.bmc.com (fw-us-hou1.bmc.com [172.17.0.250])
	by tangelo.bmc.com (8.8.6 (PHNE_17135)/8.8.6) with SMTP id QAA22294;
	Tue, 6 Jun 2000 16:05:31 -0500 (CDT)
Received: from ihemail2.firewall.lucent.com (localhost [127.0.0.1])
	by ihemail2.firewall.lucent.com (Pro-8.9.3/8.9.3) with ESMTP id RAA14014;
	Tue, 6 Jun 2000 17:05:30 -0400 (EDT)
Received: from nl0006exch001h.wins.lucent.com (h135-85-76-62.lucent.com [135.85.76.62])
	by ihemail2.firewall.lucent.com (Pro-8.9.3/8.9.3) with ESMTP id RAA14006;
	Tue, 6 Jun 2000 17:05:29 -0400 (EDT)
Received: by nl0006exch001h.nl.lucent.com with Internet Mail Service (5.5.2650.21)
	id <MM51NNY4>; Tue, 6 Jun 2000 23:05:28 +0200
Message-ID: <2413FED0DFE6D111B3F90008C7FA61FB07924FDB@nl0006exch002u.nl.lucent.com>
From: "Wijnen, Bert (Bert)" <bwijnen@lucent.com>
To: Randy Presuhn <rpresuhn@dorothy.peer.com>
Cc: Disman@dorothy.peer.com, Randy Bush <randy@psg.com>
Subject: RE: reminder: disman docs for "proposed"
Date: Tue, 6 Jun 2000 23:05:24 +0200 
MIME-Version: 1.0
X-Mailer: Internet Mail Service (5.5.2650.21)
Content-Type: text/plain;
	charset="iso-8859-1"
Content-Transfer-Encoding: 8bit
X-MIME-Autoconverted: from quoted-printable to 8bit by Dorothy.Bmc.Com id OAA06847
Sender: owner-disman@dorothy.peer.com
Precedence: bulk
List-Id: IETF disman Working Group mailing list <disman@dorothy.bmc.com>
Content-Transfer-Encoding: 8bit


Thanks for the reminder.

remops doc is in IETF Last Call

other docs are in my hands.

Bert

> ----------
> From: 	Randy Presuhn[SMTP:rpresuhn@dorothy.peer.com]
> Sent: 	Tuesday, June 06, 2000 10:19 PM
> To: 	Wijnen, Bert (Bert)
> Cc: 	disman@dorothy.peer.com; randy@psg.com
> Subject: 	reminder: disman docs for "proposed"
> 
> 
> Hi -
> 
> I just checked http://www.ops.ietf.org/draft-status.html
> The status for these documents should be updated:
> 
>     draft-ietf-disman-notif-log-mib-16.txt
>     draft-ietf-disman-express-mib-11.txt
>     draft-ietf-disman-event-mib-09.txt
>     draft-ietf-disman-remops-mib-08.txt
> 
> All of these have completed WG last call.
> All have been approved by their respective reviewers.
> I have subsequently requested that these be taken to
> the IESG for consideration as proposed standards.
> 
> Is there any additional action needed from me or the WG?
> 
>  -------------------------------------------------------
>  Randy Presuhn           randy_presuhn@bmc.com
>  Voice: +1 408 546-1006  BMC Software, Inc.  1-3141
>  Fax:   +1 408 965-0359  2141 North First Street
>  http://www.bmc.com/     San José, California 95131  USA
>  -------------------------------------------------------
>  My opinions and BMC's are independent variables.
>  -------------------------------------------------------
> 


From owner-disman@dorothy.peer.com  Wed Jun  7 08:45:45 2000
Received: from starling.bmc.com ([198.207.223.251])
	by ietf.org (8.9.1a/8.9.1a) with ESMTP id IAA09804
	for <disman-archive@odin.ietf.org>; Wed, 7 Jun 2000 08:45:40 -0400 (EDT)
Received: from Dorothy.Bmc.Com (localhost [127.0.0.1])
	by starling.bmc.com (8.10.1/8.8.6) with ESMTP id e57ChGP03546;
	Wed, 7 Jun 2000 07:43:17 -0500 (CDT)
Received: (from root@localhost)
	by Dorothy.Bmc.Com (8.8.6 (PHNE_12836)/8.8.6) id FAA21872
	for disman-list; Wed, 7 Jun 2000 05:38:42 -0700 (PDT)
Received: from starling.bmc.com (starling.bmc.com [172.17.0.113])
	by Dorothy.Bmc.Com (8.8.6 (PHNE_12836)/8.8.6) with ESMTP id FAA21866;
	Wed, 7 Jun 2000 05:38:36 -0700 (PDT)
Received: from fw-us-hou1.bmc.com (localhost [127.0.0.1])
	by starling.bmc.com (8.10.1/8.8.6) with SMTP id e57CdF502713;
	Wed, 7 Jun 2000 07:39:15 -0500 (CDT)
Received: from hansa.ibr.cs.tu-bs.de (IDENT:root@hansa [134.169.34.137])
	by mumm.ibr.cs.tu-bs.de (8.9.3/8.9.3) with ESMTP id OAA21111;
	Wed, 7 Jun 2000 14:39:10 +0200 (MET DST)
Received: (from strauss@localhost)
	by hansa.ibr.cs.tu-bs.de (8.9.3/8.9.3) id OAA12342;
	Wed, 7 Jun 2000 14:38:55 +0200
X-Authentication-Warning: hansa.ibr.cs.tu-bs.de: strauss set sender to strauss@ibr.cs.tu-bs.de using -f
From: Frank Strauss <strauss@ibr.cs.tu-bs.de>
To: rpresuhn@dorothy.peer.com (Randy Presuhn), ramk@cisco.com
Cc: Juergen Schoenwaelder <schoenw@ibr.cs.tu-bs.de>, disman@dorothy.peer.com,
        bwijnen@lucent.com, randy@psg.com
Subject: Re: reminder: disman docs for "proposed"
References: <200006062019.NAA05257.disman@Dorothy.Bmc.Com>
Date: 07 Jun 2000 14:38:55 +0200
In-Reply-To: rpresuhn@dorothy.peer.com's message of "6 Jun 2000 22:30:14 +0200"
Message-ID: <ypw66rld5sw.fsf@hansa.ibr.cs.tu-bs.de>
Lines: 119
User-Agent: Gnus/5.0803 (Gnus v5.8.3) Emacs/20.6
MIME-Version: 1.0
Content-Type: text/plain; charset=us-ascii
Sender: owner-disman@dorothy.peer.com
Precedence: bulk
List-Id: IETF disman Working Group mailing list <disman@dorothy.bmc.com>


Randy> I just checked http://www.ops.ietf.org/draft-status.html
Randy> The status for these documents should be updated:

Randy>     draft-ietf-disman-notif-log-mib-16.txt
Randy>     draft-ietf-disman-express-mib-11.txt
Randy>     draft-ietf-disman-event-mib-09.txt
Randy>     draft-ietf-disman-remops-mib-08.txt

Randy> All of these have completed WG last call.
Randy> All have been approved by their respective reviewers.
Randy> I have subsequently requested that these be taken to
Randy> the IESG for consideration as proposed standards.

I've checked the SMI modules of these documents with libsmi's smilint
and took a very rough look. I suggest the following changes to the
event and expression MIBs.


--- orig/DISMAN-EVENT-MIB       Wed Jun  7 14:07:48 2000
+++ fixed/DISMAN-EVENT-MIB      Wed Jun  7 14:23:01 2000
@@ -14,7 +14,7 @@
     SnmpAdminString           FROM SNMP-FRAMEWORK-MIB;
 
 dismanEventMIB MODULE-IDENTITY
-    LAST-UPDATED "200001060000Z"            -- 6 January 2000
+    LAST-UPDATED "200006070000Z" -- 7 June 2000
     ORGANIZATION "IETF Distributed Management Working Group"
     CONTACT-INFO "Ramanathan Kavasseri
                   Cisco Systems, Inc.
@@ -27,10 +27,10 @@
      for network management purposes."
 -- Revision History
 
-       REVISION     "200001060000Z"            -- 6 January 2000
+       REVISION     "200006070000Z"            -- 7 June 2000
        DESCRIPTION  "This is the initial version of this MIB.
-               Published as RFC xxxxx"
-    ::= { mib-2 xx } - final assignment by IANA at publication time
+               Published as RFC xxxx"
+    ::= { mib-2 xx } -- final assignment by IANA at publication time
 
 dismanEventMIBObjects OBJECT IDENTIFIER ::= { dismanEventMIB 1 }
 
@@ -331,7 +331,7 @@
 
         Note that combining 'boolean' and 'threshold' tests on the
         same object may be somewhat redundant."
-    DEFVAL { boolean }
+    DEFVAL { { boolean } }
     ::= { mteTriggerEntry 4 }
 
 mteTriggerSampleType OBJECT-TYPE
@@ -973,7 +973,7 @@
     mteTriggerThresholdRisingEventOwner         SnmpAdminString,
     mteTriggerThresholdRisingEvent              SnmpAdminString,
     mteTriggerThresholdFallingEventOwner        SnmpAdminString,
-    mteTriggerThresholdFallingEvent             SnmpAdminString
+    mteTriggerThresholdFallingEvent             SnmpAdminString,
     mteTriggerThresholdDeltaRisingEventOwner    SnmpAdminString,
     mteTriggerThresholdDeltaRisingEvent         SnmpAdminString,
     mteTriggerThresholdDeltaFallingEventOwner   SnmpAdminString,
@@ -1448,7 +1448,7 @@
 
         For 'set', an SNMP Set operation is performed according to
         control values in this entry."
-    DEFVAL { '0'H }  -- No bits set.
+    DEFVAL { {} }  -- No bits set.
     ::= { mteEventEntry 3 }
 
 mteEventEnabled OBJECT-TYPE
@@ -2014,7 +2014,7 @@
                 mteTriggerThresholdRisingEventOwner,
                 mteTriggerThresholdRisingEvent,
                 mteTriggerThresholdFallingEventOwner,
-                mteTriggerThresholdFallingEvent
+                mteTriggerThresholdFallingEvent,
                 mteTriggerThresholdDeltaRisingEventOwner,
                 mteTriggerThresholdDeltaRisingEvent,
                 mteTriggerThresholdDeltaFallingEventOwner,
--- orig/DISMAN-EXPRESSION-MIB  Wed Jun  7 14:09:56 2000
+++ fixed/DISMAN-EXPRESSION-MIB Wed Jun  7 14:23:06 2000
@@ -4,14 +4,14 @@
     MODULE-IDENTITY, OBJECT-TYPE,
     Integer32, Gauge32, Unsigned32,
     Counter32, Counter64, IpAddress,
-    TimeTicks, mib-2               FROM SNMPv2-SMI
+    TimeTicks, mib-2, zeroDotZero       FROM SNMPv2-SMI
     RowStatus, TruthValue, TimeStamp    FROM SNMPv2-TC
     sysUpTime                 FROM SNMPv2-MIB
     SnmpAdminString           FROM SNMP-FRAMEWORK-MIB
     MODULE-COMPLIANCE, OBJECT-GROUP     FROM SNMPv2-CONF;
 
 dismanExpressionMIB MODULE-IDENTITY
-    LAST-UPDATED "9910220000Z"
+    LAST-UPDATED "200006070000Z" -- 7 June 2000
     ORGANIZATION "IETF Distributed Management Working Group"
     CONTACT-INFO "Ramanathan Kavasseri
                   Cisco Systems, Inc.
@@ -24,9 +24,9 @@
      management purposes."
 -- Revision History
 
-       REVISION     "9910220000Z"            -- 22 October 1999
+       REVISION     "200006070000Z"            -- 7 June 2000
        DESCRIPTION  "This is the initial version of this MIB.
-               Published as RFC xxxxx"
+               Published as RFC xxxx"
     ::= { mib-2 xx } -- final assignment by IANA at publication time
 
 
@@ -952,8 +952,6 @@
      'deltaValue' or 'changedValue'."
     DEFVAL      { timeTicks }
      ::= { expObjectEntry 7 }
-
-zeroDotZero OBJECT IDENTIFIER ::= { 0 0 }
 
 expObjectConditional OBJECT-TYPE
     SYNTAX      OBJECT IDENTIFIER


From owner-disman@dorothy.peer.com  Wed Jun  7 20:51:31 2000
Received: from starling.bmc.com (fw-us-hou-2.bmc.com [198.207.223.251])
	by ietf.org (8.9.1a/8.9.1a) with ESMTP id UAA23347
	for <disman-archive@odin.ietf.org>; Wed, 7 Jun 2000 20:51:30 -0400 (EDT)
Received: from Dorothy.Bmc.Com (localhost [127.0.0.1])
	by starling.bmc.com (8.10.1/8.8.6) with ESMTP id e580nff09836;
	Wed, 7 Jun 2000 19:49:41 -0500 (CDT)
Received: (from root@localhost)
	by Dorothy.Bmc.Com (8.8.6 (PHNE_12836)/8.8.6) id RAA16871
	for disman-list; Wed, 7 Jun 2000 17:42:23 -0700 (PDT)
Received: (from rpresuhn@localhost)
	by Dorothy.Bmc.Com (8.8.6 (PHNE_12836)/8.8.6) id RAA16865;
	Wed, 7 Jun 2000 17:42:19 -0700 (PDT)
Date: Wed, 7 Jun 2000 17:42:19 -0700 (PDT)
From: Randy Presuhn <rpresuhn@dorothy.peer.com>
Message-Id: <200006080042.RAA16865@Dorothy.Bmc.Com>
To: ramk@cisco.com, strauss@ibr.cs.tu-bs.de
Subject: Re: reminder: disman docs for "proposed"
Cc: disman@dorothy.peer.com
Mime-Version: 1.0
Content-Type: text/plain; charset=us-ascii
Content-Transfer-Encoding: 7bit
Sender: owner-disman@dorothy.peer.com
Precedence: bulk
List-Id: IETF disman Working Group mailing list <disman@dorothy.bmc.com>
Content-Transfer-Encoding: 7bit


Hi -

Whoa.

We concluded WG last call on these long ago.

I have no problem with fixing typos as part of the IETF last
call, when it is issued, or even during the RFC-editing cycle,
since the missing commas and curleys are simple typos, and
these are routinely handled in that phase.

Changing the "xxxxx" for the RFC number, the revision and
last-updated clauses seems pointless, since all those are
modified during the publication process anyway.

The local definition of zeroDotZero, and using a hex value
for a BITS are at best stylystic quibbles, rather than
clear-cut errors.  I don't object to the change, but also
see no reason to change them, unless a convincing argument
for such changes is raised in IETF last call or by the IESG.

I do NOT want to see another draft cycle while the documents
are in the hands of the IESG unless the IESG or our AD
requests it.  With three related documents in a batch, things
are confusing enough as it is.

Ram, you should be tracking any potential deltas due to the
discovery of typos very carefully at this point, since there
may be other deltas introduced by the RFC editor.

 -------------------------------------------------------
 Randy Presuhn           randy_presuhn@bmc.com
 Voice: +1 408 546-1006  BMC Software, Inc.  1-3141
 Fax:   +1 408 965-0359  2141 North First Street
 http://www.bmc.com/     San José, California 95131  USA
 -------------------------------------------------------
 My opinions and BMC's are independent variables.
 -------------------------------------------------------

> Message-Id: <4.1.20000607141832.00a5b1e0@sigma.cisco.com>
> Date: Wed, 07 Jun 2000 14:21:31 -0700
> To: Frank Strauss <strauss@ibr.cs.tu-bs.de>
> From: Ramanathan Kavasseri <ramk@cisco.com>
> Subject: Re: reminder: disman docs for "proposed"
> Cc: rpresuhn@dorothy.peer.com
> In-Reply-To: <ypw66rld5sw.fsf@hansa.ibr.cs.tu-bs.de>
> References: <rpresuhn@dorothy.peer.com's message of "6 Jun 2000 22:30:14 +0200">
>  <200006062019.NAA05257.disman@Dorothy.Bmc.Com>
> 
> Frank,
> 
> I've made the changes you requested for the event and expression mibs -
> would you like me to send them to you first for verification, or rightaway
> submit them as
> draft-ietf-disman-event-mib-10.txt and draft-ietd-disman-express-mib-12.txt?
> 
> Thanks for pointing the errors to me.
> 
> Ram
> 
> At 02:38 PM 6/7/00 +0200, you wrote:
> >
> >Randy> I just checked http://www.ops.ietf.org/draft-status.html
> >Randy> The status for these documents should be updated:
> >
> >Randy>     draft-ietf-disman-notif-log-mib-16.txt
> >Randy>     draft-ietf-disman-express-mib-11.txt
> >Randy>     draft-ietf-disman-event-mib-09.txt
> >Randy>     draft-ietf-disman-remops-mib-08.txt
> >
> >Randy> All of these have completed WG last call.
> >Randy> All have been approved by their respective reviewers.
> >Randy> I have subsequently requested that these be taken to
> >Randy> the IESG for consideration as proposed standards.
> >
> >I've checked the SMI modules of these documents with libsmi's smilint
> >and took a very rough look. I suggest the following changes to the
> >event and expression MIBs.
> >
> >
> >--- orig/DISMAN-EVENT-MIB       Wed Jun  7 14:07:48 2000
> >+++ fixed/DISMAN-EVENT-MIB      Wed Jun  7 14:23:01 2000
> >@@ -14,7 +14,7 @@
> >     SnmpAdminString           FROM SNMP-FRAMEWORK-MIB;
> > 
> > dismanEventMIB MODULE-IDENTITY
> >-    LAST-UPDATED "200001060000Z"            -- 6 January 2000
> >+    LAST-UPDATED "200006070000Z" -- 7 June 2000
> >     ORGANIZATION "IETF Distributed Management Working Group"
> >     CONTACT-INFO "Ramanathan Kavasseri
> >                   Cisco Systems, Inc.
> >@@ -27,10 +27,10 @@
> >      for network management purposes."
> > -- Revision History
> > 
> >-       REVISION     "200001060000Z"            -- 6 January 2000
> >+       REVISION     "200006070000Z"            -- 7 June 2000
> >        DESCRIPTION  "This is the initial version of this MIB.
> >-               Published as RFC xxxxx"
> >-    ::= { mib-2 xx } - final assignment by IANA at publication time
> >+               Published as RFC xxxx"
> >+    ::= { mib-2 xx } -- final assignment by IANA at publication time
> > 
> > dismanEventMIBObjects OBJECT IDENTIFIER ::= { dismanEventMIB 1 }
> > 
> >@@ -331,7 +331,7 @@
> > 
> >         Note that combining 'boolean' and 'threshold' tests on the
> >         same object may be somewhat redundant."
> >-    DEFVAL { boolean }
> >+    DEFVAL { { boolean } }
> >     ::= { mteTriggerEntry 4 }
> > 
> > mteTriggerSampleType OBJECT-TYPE
> >@@ -973,7 +973,7 @@
> >     mteTriggerThresholdRisingEventOwner         SnmpAdminString,
> >     mteTriggerThresholdRisingEvent              SnmpAdminString,
> >     mteTriggerThresholdFallingEventOwner        SnmpAdminString,
> >-    mteTriggerThresholdFallingEvent             SnmpAdminString
> >+    mteTriggerThresholdFallingEvent             SnmpAdminString,
> >     mteTriggerThresholdDeltaRisingEventOwner    SnmpAdminString,
> >     mteTriggerThresholdDeltaRisingEvent         SnmpAdminString,
> >     mteTriggerThresholdDeltaFallingEventOwner   SnmpAdminString,
> >@@ -1448,7 +1448,7 @@
> > 
> >         For 'set', an SNMP Set operation is performed according to
> >         control values in this entry."
> >-    DEFVAL { '0'H }  -- No bits set.
> >+    DEFVAL { {} }  -- No bits set.
> >     ::= { mteEventEntry 3 }
> > 
> > mteEventEnabled OBJECT-TYPE
> >@@ -2014,7 +2014,7 @@
> >                 mteTriggerThresholdRisingEventOwner,
> >                 mteTriggerThresholdRisingEvent,
> >                 mteTriggerThresholdFallingEventOwner,
> >-                mteTriggerThresholdFallingEvent
> >+                mteTriggerThresholdFallingEvent,
> >                 mteTriggerThresholdDeltaRisingEventOwner,
> >                 mteTriggerThresholdDeltaRisingEvent,
> >                 mteTriggerThresholdDeltaFallingEventOwner,
> >--- orig/DISMAN-EXPRESSION-MIB  Wed Jun  7 14:09:56 2000
> >+++ fixed/DISMAN-EXPRESSION-MIB Wed Jun  7 14:23:06 2000
> >@@ -4,14 +4,14 @@
> >     MODULE-IDENTITY, OBJECT-TYPE,
> >     Integer32, Gauge32, Unsigned32,
> >     Counter32, Counter64, IpAddress,
> >-    TimeTicks, mib-2               FROM SNMPv2-SMI
> >+    TimeTicks, mib-2, zeroDotZero       FROM SNMPv2-SMI
> >     RowStatus, TruthValue, TimeStamp    FROM SNMPv2-TC
> >     sysUpTime                 FROM SNMPv2-MIB
> >     SnmpAdminString           FROM SNMP-FRAMEWORK-MIB
> >     MODULE-COMPLIANCE, OBJECT-GROUP     FROM SNMPv2-CONF;
> > 
> > dismanExpressionMIB MODULE-IDENTITY
> >-    LAST-UPDATED "9910220000Z"
> >+    LAST-UPDATED "200006070000Z" -- 7 June 2000
> >     ORGANIZATION "IETF Distributed Management Working Group"
> >     CONTACT-INFO "Ramanathan Kavasseri
> >                   Cisco Systems, Inc.
> >@@ -24,9 +24,9 @@
> >      management purposes."
> > -- Revision History
> > 
> >-       REVISION     "9910220000Z"            -- 22 October 1999
> >+       REVISION     "200006070000Z"            -- 7 June 2000
> >        DESCRIPTION  "This is the initial version of this MIB.
> >-               Published as RFC xxxxx"
> >+               Published as RFC xxxx"
> >     ::= { mib-2 xx } -- final assignment by IANA at publication time
> > 
> > 
> >@@ -952,8 +952,6 @@
> >      'deltaValue' or 'changedValue'."
> >     DEFVAL      { timeTicks }
> >      ::= { expObjectEntry 7 }
> >-
> >-zeroDotZero OBJECT IDENTIFIER ::= { 0 0 }
> > 
> > expObjectConditional OBJECT-TYPE
> >     SYNTAX      OBJECT IDENTIFIER
> >
> 
> 


From owner-disman@dorothy.peer.com  Thu Jun  8 03:29:21 2000
Received: from starling.bmc.com (fw-us-hou-1.bmc.com [198.207.223.250])
	by ietf.org (8.9.1a/8.9.1a) with ESMTP id DAA09731
	for <disman-archive@odin.ietf.org>; Thu, 8 Jun 2000 03:29:20 -0400 (EDT)
Received: from Dorothy.Bmc.Com (localhost [127.0.0.1])
	by starling.bmc.com (8.10.1/8.8.6) with ESMTP id e587PUP07825;
	Thu, 8 Jun 2000 02:25:31 -0500 (CDT)
Received: (from root@localhost)
	by Dorothy.Bmc.Com (8.8.6 (PHNE_12836)/8.8.6) id AAA17536
	for disman-list; Thu, 8 Jun 2000 00:21:44 -0700 (PDT)
Received: from starling.bmc.com (starling.bmc.com [172.17.0.113])
	by Dorothy.Bmc.Com (8.8.6 (PHNE_12836)/8.8.6) with ESMTP id AAA17530;
	Thu, 8 Jun 2000 00:21:41 -0700 (PDT)
Received: from fw-us-hou1.bmc.com (localhost [127.0.0.1])
	by starling.bmc.com (8.10.1/8.8.6) with SMTP id e587MMn07449;
	Thu, 8 Jun 2000 02:22:22 -0500 (CDT)
Received: from henkell.ibr.cs.tu-bs.de (schoenw@henkell [134.169.34.191])
	by mumm.ibr.cs.tu-bs.de (8.9.3/8.9.3) with ESMTP id JAA11643;
	Thu, 8 Jun 2000 09:22:29 +0200 (MET DST)
Received: from schoenw@localhost by henkell.ibr.cs.tu-bs.de (8.7.6/tubsibr) id JAA01008; Thu, 8 Jun 2000 09:22:13 +0200
Date: Thu, 8 Jun 2000 09:22:13 +0200
Message-Id: <200006080722.JAA01008@henkell.ibr.cs.tu-bs.de>
From: Juergen Schoenwaelder <schoenw@ibr.cs.tu-bs.de>
To: rpresuhn@dorothy.peer.com
CC: ramk@cisco.com, strauss@ibr.cs.tu-bs.de, disman@dorothy.peer.com
In-reply-to: <200006080042.RAA16865@Dorothy.Bmc.Com> (message from Randy
	Presuhn on Wed, 7 Jun 2000 17:42:19 -0700 (PDT))
Subject: Re: reminder: disman docs for "proposed"
References:  <200006080042.RAA16865@Dorothy.Bmc.Com>
Sender: owner-disman@dorothy.peer.com
Precedence: bulk
List-Id: IETF disman Working Group mailing list <disman@dorothy.bmc.com>



>>>>> Randy Presuhn writes:

Randy> I have no problem with fixing typos as part of the IETF last
Randy> call, when it is issued, or even during the RFC-editing cycle,
Randy> since the missing commas and curleys are simple typos, and
Randy> these are routinely handled in that phase.

Some of the problems discovered by Frank are clear SMIv2 violations
and thus I would indeed call them errors. (For example, the DEFVALs
for BITS are just illegal - this is not a "stylystic quibble".) 

Sure, these SMIv2 problems should be catched during the MIB quality
review anyway. Just consider Frank's message as input for this
review...

/js

-- 
Juergen Schoenwaelder      Technical University Braunschweig
<schoenw@ibr.cs.tu-bs.de>  Dept. Operating Systems & Computer Networks
Phone: +49 531 391 3289    Bueltenweg 74/75, 38106 Braunschweig, Germany
Fax:   +49 531 391 5936    <URL:http://www.ibr.cs.tu-bs.de/~schoenw/>




From owner-disman@dorothy.peer.com  Thu Jun  8 07:53:02 2000
Received: from starling.bmc.com (fw-us-hou-2.bmc.com [198.207.223.251])
	by ietf.org (8.9.1a/8.9.1a) with ESMTP id HAA11779
	for <disman-archive@odin.ietf.org>; Thu, 8 Jun 2000 07:53:01 -0400 (EDT)
Received: from Dorothy.Bmc.Com (localhost [127.0.0.1])
	by starling.bmc.com (8.10.1/8.8.6) with ESMTP id e58BoA925836;
	Thu, 8 Jun 2000 06:50:10 -0500 (CDT)
Received: (from root@localhost)
	by Dorothy.Bmc.Com (8.8.6 (PHNE_12836)/8.8.6) id EAA17914
	for disman-list; Thu, 8 Jun 2000 04:45:37 -0700 (PDT)
Received: from starling.bmc.com (starling.bmc.com [172.17.0.113])
	by Dorothy.Bmc.Com (8.8.6 (PHNE_12836)/8.8.6) with ESMTP id EAA17908;
	Thu, 8 Jun 2000 04:45:32 -0700 (PDT)
Received: from fw-us-hou1.bmc.com (localhost [127.0.0.1])
	by starling.bmc.com (8.10.1/8.8.6) with SMTP id e58BkDP25221;
	Thu, 8 Jun 2000 06:46:13 -0500 (CDT)
Received: from auemlsrv.firewall.lucent.com (localhost [127.0.0.1])
	by auemlsrv.firewall.lucent.com (Pro-8.9.3/8.9.3) with ESMTP id HAA14558;
	Thu, 8 Jun 2000 07:46:15 -0400 (EDT)
Received: from nl0006exch001h.wins.lucent.com (h135-85-76-62.lucent.com [135.85.76.62])
	by auemlsrv.firewall.lucent.com (Pro-8.9.3/8.9.3) with ESMTP id HAA14537;
	Thu, 8 Jun 2000 07:46:13 -0400 (EDT)
Received: by nl0006exch001h.nl.lucent.com with Internet Mail Service (5.5.2650.21)
	id <MM51PC3T>; Thu, 8 Jun 2000 13:46:12 +0200
Message-ID: <2413FED0DFE6D111B3F90008C7FA61FB07992DF8@nl0006exch002u.nl.lucent.com>
From: "Wijnen, Bert (Bert)" <bwijnen@lucent.com>
To: ramk@cisco.com, Randy Presuhn <rpresuhn@dorothy.peer.com>
Cc: Disman@dorothy.peer.com
Subject: RE: reminder: disman docs for "proposed"
Date: Thu, 8 Jun 2000 13:46:07 +0200 
MIME-Version: 1.0
X-Mailer: Internet Mail Service (5.5.2650.21)
Content-Type: text/plain;
	charset="iso-8859-1"
Sender: owner-disman@dorothy.peer.com
Precedence: bulk
List-Id: IETF disman Working Group mailing list <disman@dorothy.bmc.com>


OK... finally got to it.

Yep, WG Last Call completed, and IESG review basically also 
completed. The reviewers have given me their OK.
TTThe last check I do before IETF Last Call is a proper
compile (I use SMICng). If other compilers find real 
SMIv2 problems, then anybody can report those too.

Before I do the IETF Last Call, I would indeed want to see
the SMIv2 errors fixed. Other typo fixes can go along with
them, but they can also be done at a later time.
I would also prefer to fix SMI compile warnings if possible.

In general, pls also add the Disman WG chair contact info and
add info about the disman mailing list (where it is, how to
subscribe and where the archives are). This should be added to
the Description clause of each MODULE-IDENTITY.
W.r.t. contact info. I think it would be wise to list
Ramanathan as "editor", now it gives the impression that
he is the author. This would be good on title page and in
MODULE-IDENTITY description clause.

In the Event MIB, I wonder why we do not move section 7 to the 
Security Considerations section. Seems a bit strange to just
have two "Security" sections where the 2nd just points to the
first.

Same Security question for notificationLogMIb section 3.1.2.

I am adding the SMICng errors/warnings and I also have inline
comments on Randy's posting.

Bert
------------------ SMICng for eventmib -------
In file event.mi2
    32:                Published as RFC xxxxx"
    33:     ::= { mib-2 567 } - final assignment by IANA at publication time
E: Syntax error (ASN.1 comment line must start with two --

   887:     mteTriggerThresholdFallingEvent             SnmpAdminString
   888:     mteTriggerThresholdDeltaRisingEventOwner    SnmpAdminString,
E: Missing comma between sequence items

  1316:         control values in this entry."
  1317:     DEFVAL { '0'H }  -- No bits set.
E: hex string must be a multiple of 2 in length

   306:         same object may be somewhat redundant."
   307:     DEFVAL { boolean }
E: Default value for "mteTriggerTest" must be named bits in "{ }"

  1316:         control values in this entry."
  1317:     DEFVAL { '0'H }  -- No bits set.
E: Default value for "mteEventActions" must be named bits in "{ }"


------------- in expression MIB -----------

no errors

But I agree with Frank/Juergen that we better import zeroDotZero
from SNMPv2-SMI.

----------- in notificationLogMib -------

no errors


> ----------
> From: 	Randy Presuhn[SMTP:rpresuhn@dorothy.peer.com]
> Sent: 	Thursday, June 08, 2000 2:42 AM
> To: 	ramk@cisco.com; strauss@ibr.cs.tu-bs.de
> Cc: 	disman@dorothy.peer.com
> Subject: 	Re: reminder: disman docs for "proposed"
> 
> 
> Hi -
> 
> Whoa.
> 
> We concluded WG last call on these long ago.
right

> I have no problem with fixing typos as part of the IETF last
> call, when it is issued, or even during the RFC-editing cycle,
> since the missing commas and curleys are simple typos, and
> these are routinely handled in that phase.
agree

> Changing the "xxxxx" for the RFC number, the revision and
> last-updated clauses seems pointless, since all those are
> modified during the publication process anyway.
agree

> The local definition of zeroDotZero, and using a hex value
> for a BITS are at best stylystic quibbles, rather than
> clear-cut errors.  I don't object to the change, but also
> see no reason to change them, unless a convincing argument
> for such changes is raised in IETF last call or by the IESG.
> 
I prefer to import zeroDotZero.
The hex value as currently defined in this MIB seems to be
complained about by at least 2 compilers, so I'd rather see
it fixed.

> I do NOT want to see another draft cycle while the documents
> are in the hands of the IESG unless the IESG or our AD
> requests it.  With three related documents in a batch, things
> are confusing enough as it is.
> 
Consider this email as a request for one more cycle before I
issue IETF Last Call

> Ram, you should be tracking any potential deltas due to the
> discovery of typos very carefully at this point, since there
> may be other deltas introduced by the RFC editor.
> 
Ram, now is the time for you to do some more work, pls
Thanks, Bert



From owner-disman@dorothy.peer.com  Thu Jun  8 10:09:12 2000
Received: from starling.bmc.com (fw-us-hou-1.bmc.com [198.207.223.250])
	by ietf.org (8.9.1a/8.9.1a) with ESMTP id KAA08071
	for <disman-archive@odin.ietf.org>; Thu, 8 Jun 2000 10:09:11 -0400 (EDT)
Received: from Dorothy.Bmc.Com (localhost [127.0.0.1])
	by starling.bmc.com (8.10.1/8.8.6) with ESMTP id e58E66900969;
	Thu, 8 Jun 2000 09:06:06 -0500 (CDT)
Received: (from root@localhost)
	by Dorothy.Bmc.Com (8.8.6 (PHNE_12836)/8.8.6) id HAA18202
	for disman-list; Thu, 8 Jun 2000 07:01:49 -0700 (PDT)
Received: from starling.bmc.com (starling.bmc.com [172.17.0.113])
	by Dorothy.Bmc.Com (8.8.6 (PHNE_12836)/8.8.6) with ESMTP id HAA18197
	for <disman@dorothy.peer.com>; Thu, 8 Jun 2000 07:01:45 -0700 (PDT)
Received: from fw-us-hou1.bmc.com (localhost [127.0.0.1])
	by starling.bmc.com (8.10.1/8.8.6) with SMTP id e58E2QX29794
	for <disman@dorothy.peer.com>; Thu, 8 Jun 2000 09:02:26 -0500 (CDT)
Received: (qmail 10536 invoked from network); 8 Jun 2000 14:01:40 -0000
Received: from titan.estig.ipb.pt (HELO ipb.pt) (193.136.195.250)
  by elara.ipb.pt with SMTP; 8 Jun 2000 14:01:40 -0000
Message-ID: <393FA802.E972795A@ipb.pt>
Date: Thu, 08 Jun 2000 15:04:50 +0100
From: rp <rlopes@ipb.pt>
X-Mailer: Mozilla 4.71 [en] (WinNT; I)
X-Accept-Language: en
MIME-Version: 1.0
To: disman@dorothy.peer.com
Subject: Re: reminder: disman docs for "proposed"
References: <200006062019.NAA05257@Dorothy.Bmc.Com>
Content-Type: text/plain; charset=us-ascii
Content-Transfer-Encoding: 7bit
Sender: owner-disman@dorothy.peer.com
Precedence: bulk
List-Id: IETF disman Working Group mailing list <disman@dorothy.bmc.com>
Content-Transfer-Encoding: 7bit


Randy Presuhn wrote:

> I just checked http://www.ops.ietf.org/draft-status.html
> The status for these documents should be updated:
>
>     draft-ietf-disman-notif-log-mib-16.txt
>     draft-ietf-disman-express-mib-11.txt
>     draft-ietf-disman-event-mib-09.txt
>     draft-ietf-disman-remops-mib-08.txt

I do not know if the remarcs I am going to do are outdated or even if
they should be done. I think I have found some minor "bugs" in the
draft-ietf-disman-expression-mib-11.txt file:

- on the expObjectIDWildcard description it is mentioned that
"expExpressionPrefix will reflect a scalar object (ie will be 0.0)". On
the other hand, on expExpressionPrefix description it says "If the
expValueInstance portion of the value OID may be treated as a scalar
(that is, normally, 0) the value of expExpressionPrefix is zero length,
that is, no OID at all. Note that zero length implies a null OID, not
the OID 0.0.". I think there is some incoherence here...

- on the expObjectID description it is mentioned expObjectWildcard. I
think it should be expObjectIDWildcard...

- on the expObjectIDWildcard description it is mentioned
expObjectWildcard. I think it should be expObjectIDWildcard...

- I presume that the expExpressionPrefix object value is implementation
dependent, but I think it should be mentioned in the document if it can
be equal to any of the wildcarded expObjectID of the expression and, if
so, which one of them (any/first/last/shorter...).

Well, I am sorry if this remarcs are some how irrelevant, but I believe
they can help to improve the document.

Best regards,

Rui Pedro Lopes



From owner-disman@dorothy.peer.com  Thu Jun  8 13:54:44 2000
Received: from starling.bmc.com ([198.207.223.251])
	by ietf.org (8.9.1a/8.9.1a) with ESMTP id NAA13026
	for <disman-archive@odin.ietf.org>; Thu, 8 Jun 2000 13:54:38 -0400 (EDT)
Received: from Dorothy.Bmc.Com (localhost [127.0.0.1])
	by starling.bmc.com (8.10.1/8.8.6) with ESMTP id e58Hq2T19326;
	Thu, 8 Jun 2000 12:52:03 -0500 (CDT)
Received: (from root@localhost)
	by Dorothy.Bmc.Com (8.8.6 (PHNE_12836)/8.8.6) id KAA18768
	for disman-list; Thu, 8 Jun 2000 10:46:12 -0700 (PDT)
Received: (from rpresuhn@localhost)
	by Dorothy.Bmc.Com (8.8.6 (PHNE_12836)/8.8.6) id KAA18762
	for disman@dorothy.bmc.com; Thu, 8 Jun 2000 10:46:08 -0700 (PDT)
Date: Thu, 8 Jun 2000 10:46:08 -0700 (PDT)
From: Randy Presuhn <rpresuhn@dorothy.peer.com>
Message-Id: <200006081746.KAA18762@Dorothy.Bmc.Com>
To: disman@dorothy.peer.com
Subject: Re: reminder: disman docs for "proposed"
Mime-Version: 1.0
Content-Type: text/plain; charset=us-ascii
Content-Transfer-Encoding: 7bit
Sender: owner-disman@dorothy.peer.com
Precedence: bulk
List-Id: IETF disman Working Group mailing list <disman@dorothy.bmc.com>
Content-Transfer-Encoding: 7bit


Hi -

> Date: Thu, 8 Jun 2000 09:22:13 +0200
> Message-Id: <200006080722.JAA01008@henkell.ibr.cs.tu-bs.de>
> From: Juergen Schoenwaelder <schoenw@ibr.cs.tu-bs.de>
> To: rpresuhn@dorothy.peer.com
> CC: ramk@cisco.com, strauss@ibr.cs.tu-bs.de, disman@dorothy.peer.com
> In-reply-to: <200006080042.RAA16865@Dorothy.Bmc.Com> (message from Randy
> 	Presuhn on Wed, 7 Jun 2000 17:42:19 -0700 (PDT))
> Subject: Re: reminder: disman docs for "proposed"
> References:  <200006080042.RAA16865@Dorothy.Bmc.Com>
> List-Id: IETF disman Working Group mailing list <disman@dorothy.bmc.com>
...
> Some of the problems discovered by Frank are clear SMIv2 violations
> and thus I would indeed call them errors. (For example, the DEFVALs
> for BITS are just illegal - this is not a "stylystic quibble".) 
...

The missing "{}" in one defval is obviously a typo that should
be corrected during the publication process.  

I can't find anything to support the argument that the {
'0'H } is actually illegal (though the number of digits is
required to be even, so { '00'H } may be what was intended).
I don't like it, and would personally prefer the '{{}}'. 
However, I do not believe it is helpful to keep changing 
these drafts while they are in the hands of the IESG.

> Sure, these SMIv2 problems should be catched during the MIB quality
> review anyway. Just consider Frank's message as input for this
> review...
...

That fine with me.  My point is that this document is now
out of the WG's hands, and we should not be spinning another
draft unless requested by the IESG or AD.  Trivial corrections
like these are routinely handled during the publication process.
This stuff is even later than our other work items, and I will
not look favorably on further delay.

 -------------------------------------------------------
 Randy Presuhn           randy_presuhn@bmc.com
 Voice: +1 408 546-1006  BMC Software, Inc.  1-3141
 Fax:   +1 408 965-0359  2141 North First Street
 http://www.bmc.com/     San José, California 95131  USA
 -------------------------------------------------------
 My opinions and BMC's are independent variables.
 -------------------------------------------------------


From owner-disman@dorothy.peer.com  Thu Jun  8 15:18:38 2000
Received: from starling.bmc.com ([198.207.223.251])
	by ietf.org (8.9.1a/8.9.1a) with ESMTP id PAA14717
	for <disman-archive@odin.ietf.org>; Thu, 8 Jun 2000 15:18:38 -0400 (EDT)
Received: from Dorothy.Bmc.Com (localhost [127.0.0.1])
	by starling.bmc.com (8.10.1/8.8.6) with ESMTP id e58JC8j13904;
	Thu, 8 Jun 2000 14:12:08 -0500 (CDT)
Received: (from root@localhost)
	by Dorothy.Bmc.Com (8.8.6 (PHNE_12836)/8.8.6) id MAA19068
	for disman-list; Thu, 8 Jun 2000 12:09:11 -0700 (PDT)
Received: (from rpresuhn@localhost)
	by Dorothy.Bmc.Com (8.8.6 (PHNE_12836)/8.8.6) id MAA19062;
	Thu, 8 Jun 2000 12:09:07 -0700 (PDT)
Date: Thu, 8 Jun 2000 12:09:07 -0700 (PDT)
From: Randy Presuhn <rpresuhn@dorothy.peer.com>
Message-Id: <200006081909.MAA19062@Dorothy.Bmc.Com>
To: bwijnen@lucent.com, ramk@cisco.com, rpresuhn@dorothy.peer.com
Subject: RE: reminder: disman docs for "proposed"
Cc: Disman@dorothy.peer.com
Mime-Version: 1.0
Content-Type: text/plain; charset=us-ascii
Content-Transfer-Encoding: 7bit
Sender: owner-disman@dorothy.peer.com
Precedence: bulk
List-Id: IETF disman Working Group mailing list <disman@dorothy.bmc.com>
Content-Transfer-Encoding: 7bit


Hi -

> Message-ID: <2413FED0DFE6D111B3F90008C7FA61FB07992DF8@nl0006exch002u.nl.lucent.com>
> From: "Wijnen, Bert (Bert)" <bwijnen@lucent.com>
> To: ramk@cisco.com, Randy Presuhn <rpresuhn@dorothy.peer.com>
> Cc: Disman@dorothy.peer.com
> Subject: RE: reminder: disman docs for "proposed"
> Date: Thu, 8 Jun 2000 13:46:07 +0200 
> List-Id: IETF disman Working Group mailing list <disman@dorothy.bmc.com>
...
> Before I do the IETF Last Call, I would indeed want to see
> the SMIv2 errors fixed. Other typo fixes can go along with
> them, but they can also be done at a later time.
> I would also prefer to fix SMI compile warnings if possible.
...

This is fine with me.  In addition to the fixes Frank has
identified (which are fine with me), here are the other typos
and potential IETF last-call issues that I've become aware of:

typo:
1) <draft-ietf-disman-event-mib-09.txt> Pages 6-7: it would
   be nice if the layout of the diagram
   were modified so that it would fit on a single page:

+--------------------------------+      subclassed by:
| mteTriggerEntry                |---+
|     { mteOwner,                |   +-- mteTriggerDeltaEntry
|       IMPLIED mteTriggerName } |   +-- mteTriggerExistenceEntry
|                                |   +-- mteTriggerBooleanEntry
|                                |   +-- mteTriggerThresholdEntry
|                                |
|             mteTrigger*Event ----------------------------->+
|             mteTriggerObjects --------------->+            |
|                                |              |            |
+--------------------------------+              |            |
                                                V            |
  +<--------------------------------------------+            |
  |                                                          |
  V                                                          |
+--------------------------------+                           |
| mteObjectsEntry                |                           |
|     { mteOwner,                |                           |
|       mteObjectsName,          |                           |
|       mteObjectsIndex }        |                           |
+--------------------------------+                           |
                                                             V
  +<---------------------------------------------------------+
  |
  V
+---------------------------------+
| mteEventEntry                   |
|     { mteOwner,                 |
|       IMPLIED mteEventName }    |
|                                 |
|               mteEventAction - - - - - - > +
|                                 |          |
+---------------------------------+          |
                                             | (condition)
   + - - - - - - - - - - - - - - - - - - - - + - - - - - - - -+
   |                                                          |
   |                                                          |
   V                                                          V
+------------------------------+   +------------------------------+
| mteEventSetEntry             |   | mteEventNotificationEntry    |
|     { mteOwner,              |   |     { mteOwner,              |
|       IMPLIED mteEventName } |   |       IMPLIED mteEventName } |
+------------------------------+   +------------------------------+

editorial:
2) <draft-ietf-disman-event-mib-09.txt> Page 9, last paragraph
   of "Security" should use subjunctive, since it is really a
   hypothetical example of just one possible policy. Minimal
   fix:  Change the following to the beginning of the paragraph
   from "All" to "If a security administrator were to employ
   such an approach, all".

editorial:
3) <draft-ietf-disman-event-mib-09.txt> Page 17, description of
   mteTriggerSampleType: the MUST is inappropriate.  This is
   advice, and is incorrect for things like the much-maligned
   zero-based counters.  Suggest "MUST -> "should".

typo:
4) <draft-ietf-disman-event-mib-09.txt> Page 33+. The description
   text for several definitions goes past column 72.  Add line
   breaks / reformat text as needed.

editorial:
5) <draft-ietf-disman-event-mib-09.txt> Page 35, definition of
   mteObjectsIndex, the word "small" is meaningless here,
   suggest deleting it.

editorial:
6) <draft-ietf-disman-event-mib-09.txt> Page 43, description of
   mteEventSetTargetTag: suggest replacing "MAY not accept"
   with "MAY reject" to avoid confusion.

typo:
7) <draft-ietf-disman-event-mib-09.txt> Page 58, copyright date.

typo:
8) <draft-ietf-disman-express-mib-11.txt> page 1, copyright date.

typo:
9) <draft-ietf-disman-express-mib-11.txt> page 4, "an managed" ->
   "a managed"

editorial:
10) <draft-ietf-disman-express-mib-11.txt> clause 3.5.2:
    Replace "The expression table, indexed by expression name,
    contains those" with "The expression table, indexed by
    expression owner and expression name, contains those".

    Replace "The object table, indexed by expression name and
    object index within" with "The object table, indexed by
    expression owner, expression name and object index within".

editorial:
11) <draft-ietf-disman-express-mib-11.txt> page 10: I can't find
    "weirdity" in my dictionaries.

editorial:
12) <draft-ietf-disman-express-mib-11.txt> page 11&12: "the user must"
    -> "the user would", since this is merely an example.

possible technical, I don't want to push it...
13) <draft-ietf-disman-express-mib-11.txt> page 19: the description
    of expExpression references DisplayString.  Why isn't this just
    UTF-8?

technical problem, solution agreed by WG at meeting long ago but not
reflected in I-D for all objects where this would be a problem:
14)  <draft-ietf-disman-express-mib-11.txt> page 25,
     expExpressionPrefix: The third paragraph calls for illegal
     BER (zero-length object identifiers are not permitted).
     I believe we already discussed this issue at one of the
     WG meetings, and the instruction to the editor at the
     time was to just use { 0 0 } for this case.  Note that
     the rest of the algorithm still works.  This also applies
     to expErrorInstance on page 28.

typo:
15)  <draft-ietf-disman-express-mib-11.txt> page 25: delete the
      superfluous comma in "Note that an object in the
      expression not being accessible,".

typo:
16)  <draft-ietf-disman-notif-log-mib-16.txt> page 1: copyright date

editorial:
17)  <draft-ietf-disman-notif-log-mib-16.txt> clause 3.1.1:
     change "MUST be modeled" to "is modeled here as".

technical issue, discussed at WG meetings but not reflected
in document:
18) draft-ietf-disman-notif-log-mib-16.txt> pages 4/5
    Heirarchically structured log names have been repeatedly
    shown to have subtle pitfalls.  The approach the draft
    recommends can produce surprises when the first subid of
    the second index looks like punctuation, etc.  For example,
    with { nlmLogName, nlmLogIndex, nlmLogVariableIndex
    }, nlmLogIndex could have the same value as "-", and
    nlmLogVariableIndex could match a particular subgroup
    name, thus (inappropriately) granting access

editorial:
19) draft-ietf-disman-notif-log-mib-16.txt> page 8: the
    various I-D revisions should all be collapsed into the
    "initial publication as RFC nnnn".

technical issue, discussed but not reflected in draft:
20)  draft-ietf-disman-notif-log-mib-16.txt> page 17: I
     thought we agreed that nlmLogEngineID's value would be
     a zero-length string, rather than not being instantiated.

editorial omission:
21)  draft-ietf-disman-notif-log-mib-16.txt> page 24: what
     is the condition for notificationLogDateGroup?

typo:
22)  draft-ietf-disman-notif-log-mib-16.txt> page 29: fix
     copyright date.

 -------------------------------------------------------
 Randy Presuhn           randy_presuhn@bmc.com
 Voice: +1 408 546-1006  BMC Software, Inc.  1-3141
 Fax:   +1 408 965-0359  2141 North First Street
 http://www.bmc.com/     San José, California 95131  USA
 -------------------------------------------------------
 My opinions and BMC's are independent variables.
 -------------------------------------------------------


From owner-disman@dorothy.peer.com  Thu Jun  8 15:26:00 2000
Received: from starling.bmc.com (fw-us-hou-1.bmc.com [198.207.223.250])
	by ietf.org (8.9.1a/8.9.1a) with ESMTP id PAA14905
	for <disman-archive@odin.ietf.org>; Thu, 8 Jun 2000 15:25:59 -0400 (EDT)
Received: from Dorothy.Bmc.Com (localhost [127.0.0.1])
	by starling.bmc.com (8.10.1/8.8.6) with ESMTP id e58JMvb16962;
	Thu, 8 Jun 2000 14:22:57 -0500 (CDT)
Received: (from root@localhost)
	by Dorothy.Bmc.Com (8.8.6 (PHNE_12836)/8.8.6) id MAA19104
	for disman-list; Thu, 8 Jun 2000 12:19:58 -0700 (PDT)
Received: (from rpresuhn@localhost)
	by Dorothy.Bmc.Com (8.8.6 (PHNE_12836)/8.8.6) id MAA19098
	for disman@dorothy.bmc.com; Thu, 8 Jun 2000 12:19:55 -0700 (PDT)
Date: Thu, 8 Jun 2000 12:19:55 -0700 (PDT)
From: Randy Presuhn <rpresuhn@dorothy.peer.com>
Message-Id: <200006081919.MAA19098@Dorothy.Bmc.Com>
To: disman@dorothy.peer.com
Subject: Re: reminder: disman docs for "proposed"
Mime-Version: 1.0
Content-Type: text/plain; charset=us-ascii
Content-Transfer-Encoding: 7bit
Sender: owner-disman@dorothy.peer.com
Precedence: bulk
List-Id: IETF disman Working Group mailing list <disman@dorothy.bmc.com>
Content-Transfer-Encoding: 7bit


Hi -

> Message-ID: <393FA802.E972795A@ipb.pt>
> Date: Thu, 08 Jun 2000 15:04:50 +0100
> From: rp <rlopes@ipb.pt>
> To: disman@dorothy.peer.com
> Subject: Re: reminder: disman docs for "proposed"
> References: <200006062019.NAA05257@Dorothy.Bmc.Com>
...
> draft-ietf-disman-expression-mib-11.txt file:
> 
> - on the expObjectIDWildcard description it is mentioned that
> "expExpressionPrefix will reflect a scalar object (ie will be 0.0)". On
> the other hand, on expExpressionPrefix description it says "If the
> expValueInstance portion of the value OID may be treated as a scalar
> (that is, normally, 0) the value of expExpressionPrefix is zero length,
> that is, no OID at all. Note that zero length implies a null OID, not
> the OID 0.0.". I think there is some incoherence here...

A zero-length OID isn't permitted by BER, so this text is broken
anyway.  This was discussed at one of the WG meetings, and not
reflected in the draft.  It needs to be fixed.

> - on the expObjectID description it is mentioned expObjectWildcard. I
> think it should be expObjectIDWildcard...
>
> - on the expObjectIDWildcard description it is mentioned
> expObjectWildcard. I think it should be expObjectIDWildcard...

You're right on both counts.  Ram: there are SEVERAL occurances
of expObjectWildcard throughout the document.  All should be
expObjectIDWildcard.

> - I presume that the expExpressionPrefix object value is implementation
> dependent, but I think it should be mentioned in the document if it can
> be equal to any of the wildcarded expObjectID of the expression and, if
> so, which one of them (any/first/last/shorter...).

I think that's what the last paragraph of the object's description is
trying to say: it will indeed be the expObjectID value of one of the
wildcarded objects.  Just which one is entirely up to the implementation.

> Well, I am sorry if this remarcs are some how irrelevant, but I believe
> they can help to improve the document.
...

Thanks for the comments.  It would have been nice if they had
arrived during WG last call or earlier.

 -------------------------------------------------------
 Randy Presuhn           randy_presuhn@bmc.com
 Voice: +1 408 546-1006  BMC Software, Inc.  1-3141
 Fax:   +1 408 965-0359  2141 North First Street
 http://www.bmc.com/     San José, California 95131  USA
 -------------------------------------------------------
 My opinions and BMC's are independent variables.
 -------------------------------------------------------


From owner-disman@dorothy.peer.com  Fri Jun  9 12:34:16 2000
Received: from starling.bmc.com (fw-us-hou-2.bmc.com [198.207.223.251])
	by ietf.org (8.9.1a/8.9.1a) with ESMTP id MAA14654
	for <disman-archive@odin.ietf.org>; Fri, 9 Jun 2000 12:34:11 -0400 (EDT)
Received: from Dorothy.Bmc.Com (localhost [127.0.0.1])
	by starling.bmc.com (8.10.1/8.8.6) with ESMTP id e59GTWn09174;
	Fri, 9 Jun 2000 11:29:33 -0500 (CDT)
Received: (from root@localhost)
	by Dorothy.Bmc.Com (8.8.6 (PHNE_12836)/8.8.6) id JAA22461
	for disman-list; Fri, 9 Jun 2000 09:14:29 -0700 (PDT)
Received: from starling.bmc.com (starling.bmc.com [172.17.0.113])
	by Dorothy.Bmc.Com (8.8.6 (PHNE_12836)/8.8.6) with ESMTP id JAA22456
	for <disman@dorothy.peer.com>; Fri, 9 Jun 2000 09:14:25 -0700 (PDT)
Received: from fw-us-hou1.bmc.com (localhost [127.0.0.1])
	by starling.bmc.com (8.10.1/8.8.6) with SMTP id e59GF5L04560
	for <disman@dorothy.peer.com>; Fri, 9 Jun 2000 11:15:05 -0500 (CDT)
Received: from henkell.ibr.cs.tu-bs.de (schoenw@henkell [134.169.34.191])
	by mumm.ibr.cs.tu-bs.de (8.9.3/8.9.3) with ESMTP id SAA29942;
	Fri, 9 Jun 2000 18:15:05 +0200 (MET DST)
Received: from schoenw@localhost by henkell.ibr.cs.tu-bs.de (8.7.6/tubsibr) id SAA18558; Fri, 9 Jun 2000 18:15:05 +0200
Date: Fri, 9 Jun 2000 18:15:05 +0200
Message-Id: <200006091615.SAA18558@henkell.ibr.cs.tu-bs.de>
From: Juergen Schoenwaelder <schoenw@ibr.cs.tu-bs.de>
To: DISMAN Mailing List <disman@dorothy.peer.com>
Subject: script mib autostart feature
Sender: owner-disman@dorothy.peer.com
Precedence: bulk
List-Id: IETF disman Working Group mailing list <disman@dorothy.bmc.com>



One of the open issues in the RFC 2592 (DISMAN-SCRIPT-MIB) revision is
the autostart feature. The latest proposal was to add a new column
smLaunchFlags to the smLaunchTable. A special bit in the smLaunchFlags
would indicate that a launch button is implicitly pressed when the script MIB
(sub-) agent reinitializes itself.

Today, Frank and I looked at our implementation and we did came up
with some observations and finally with an alternate proposal to
achieve a similar thing. First our observations:

Automatically launching a script requires that the launch entry has
the smLaunchOperStatus enabled. In our implementation, every launch
entry starts with the smLaunchOperStatus set to disabled since the
implementation first has to bring the corresponding smScriptOperStatus
into the enabled state. Note that this can take quite some time since
this may include fetching a script from a remote site. Once the
smScriptOperStatus transitions into the enabled state, we loop through
all launch table entries for the script table entry in order to set
the smLaunchOperStatus to enabled if the smLaunchAdminStatus is
enabled.

This basically means that the transition of smLaunchOperStatus from
disabled to enabled is the point in time where we can automatically
launch a script. So the idea came up to bind the auto start feature to
the disabled -> enabled state transition of smLaunchOperStatus, which
happens automatically during initialization (as explained above), but
which may also happen at other points in time. This has in fact some
nice side effects. For example, it is possible to install entries in
the smScriptTable and the smLaunchTable in a single SNMP set operation
in such a way that the implementation launches scripts automatically
once the source has been loaded and all entries change into the
enabled operational state.

Going a bit further, Frank came up with the idea to drop the new
smLaunchFlags object altogether and instead introduce a new
smLaunchAdminStatus status 'auto'. The 'auto' status will work similar
to the 'enabled' status. The only difference is that the 'auto'
administrative status launches a script during the disabled -> enabled
operational state transition while the 'enabled' administrative status
does not.

Now to the proposal:

- Add a new 'auto' enumeration to the smLaunchAdminStatus which brings
  the smLaunchOperStatus into the enabled state and launches the script
  during the script's disabled -> enabled transition.

- Add clarifying text about the interactions between
  smScriptOperStatus and smLaunchOperStatus state transitions. Some of
  the state transitions we have implemented are not clearly defined in
  RFC 2592. You sometimes have to infer the behavior from the more
  declarative description of the various states.

In fact, Frank and I started to draw state transition diagrams and it
might be helpful to put them into the RFC 2592 revision.

Comments?

Frank and Juergen

-- 
Juergen Schoenwaelder      Technical University Braunschweig
<schoenw@ibr.cs.tu-bs.de>  Dept. Operating Systems & Computer Networks
Phone: +49 531 391 3289    Bueltenweg 74/75, 38106 Braunschweig, Germany
Fax:   +49 531 391 5936    <URL:http://www.ibr.cs.tu-bs.de/~schoenw/>




From owner-disman@dorothy.peer.com  Wed Jun 14 08:36:00 2000
Received: from starling.bmc.com (fw-us-hou-2.bmc.com [198.207.223.251])
	by ietf.org (8.9.1a/8.9.1a) with ESMTP id IAA18047
	for <disman-archive@odin.ietf.org>; Wed, 14 Jun 2000 08:35:58 -0400 (EDT)
Received: from Dorothy.Bmc.Com (localhost [127.0.0.1])
	by starling.bmc.com (8.10.1/8.8.6) with ESMTP id e5ECWcX17663;
	Wed, 14 Jun 2000 07:32:39 -0500 (CDT)
Received: (from root@localhost)
	by Dorothy.Bmc.Com (8.8.6 (PHNE_12836)/8.8.6) id FAA11767
	for disman-list; Wed, 14 Jun 2000 05:26:29 -0700 (PDT)
Received: from starling.bmc.com (starling.bmc.com [172.17.0.113])
	by Dorothy.Bmc.Com (8.8.6 (PHNE_12836)/8.8.6) with ESMTP id FAA11762
	for <disman@dorothy.peer.com>; Wed, 14 Jun 2000 05:26:25 -0700 (PDT)
Received: from fw-us-hou1.bmc.com (localhost [127.0.0.1])
	by starling.bmc.com (8.10.1/8.8.6) with SMTP id e5ECR2T16402
	for <disman@dorothy.peer.com>; Wed, 14 Jun 2000 07:27:02 -0500 (CDT)
Received: from sunfra.France.Sun.COM ([129.157.188.1])
	by mercury.Sun.COM (8.9.3+Sun/8.9.3) with ESMTP id FAA13824;
	Wed, 14 Jun 2000 05:27:01 -0700 (PDT)
Received: from sutur.France.Sun.COM (sutur [129.157.203.2])
	by sunfra.France.Sun.COM (8.8.8+Sun/8.8.8/ENSMAIL,v1.7) with ESMTP id OAA29111;
	Wed, 14 Jun 2000 14:26:58 +0200 (MET DST)
Received: from oneman.France.Sun.COM by sutur.France.Sun.COM (8.9.3+Sun/SMI-SVR4)
	id OAA18576; Wed, 14 Jun 2000 14:26:56 +0200 (MET DST)
Received: from france.sun.com (localhost [127.0.0.1])
	by oneman.France.Sun.COM (8.9.3+Sun/8.9.3) with ESMTP id OAA16953;
	Wed, 14 Jun 2000 14:26:58 +0200 (MEST)
Message-ID: <39477A12.2B78354D@france.sun.com>
Date: Wed, 14 Jun 2000 14:26:58 +0200
From: Eamonn McManus <eamonn.mcmanus@france.sun.com>
Organization: Sun Microsystems, France
X-Mailer: Mozilla 4.7 [en] (X11; I; SunOS 5.8 sun4u)
MIME-Version: 1.0
To: Juergen Schoenwaelder <schoenw@ibr.cs.tu-bs.de>
CC: DISMAN Mailing List <disman@dorothy.peer.com>
Subject: Re: script mib autostart feature
References: <200006091615.SAA18558@henkell.ibr.cs.tu-bs.de>
Content-Type: text/plain; charset=iso-8859-1
Content-Transfer-Encoding: 8bit
X-MIME-Autoconverted: from quoted-printable to 8bit by Dorothy.Bmc.Com id FAA11763
Sender: owner-disman@dorothy.peer.com
Precedence: bulk
List-Id: IETF disman Working Group mailing list <disman@dorothy.bmc.com>
Content-Transfer-Encoding: 8bit


Juergen Schoenwaelder wrote:
> Automatically launching a script requires that the launch entry has
> the smLaunchOperStatus enabled. In our implementation, every launch
> entry starts with the smLaunchOperStatus set to disabled since the
> implementation first has to bring the corresponding smScriptOperStatus
> into the enabled state. Note that this can take quite some time since
> this may include fetching a script from a remote site. Once the
> smScriptOperStatus transitions into the enabled state, we loop through
> all launch table entries for the script table entry in order to set
> the smLaunchOperStatus to enabled if the smLaunchAdminStatus is
> enabled.

Interesting.  My implementation doesn't do this, since it was not clear from my
reading of the document that smLaunchOperStatus was tied to the state of the
underlying script.  The relevant text, I think, is in the description of that
variable, where it says:
  An `enabled' launch table entry can be used to start scripts
  while a `disabled' launch table entry will refuse any attempts
  to start scripts.
Your interpretation is reasonable but I think it needs to be spelled out more
clearly, since it is not obvious.

> For example, it is possible to install entries in
> the smScriptTable and the smLaunchTable in a single SNMP set operation
> in such a way that the implementation launches scripts automatically
> once the source has been loaded and all entries change into the
> enabled operational state.

In the absence of your proposed addition of "auto", I'm not sure how this can
work.  Ordinarily, scripts are launched when the smLaunchStart variable is
written.  That variable can't be written if smLaunchOperStatus is not enabled,
which is the case you're talking about.  If you don't write it at the same time
as you write smLaunchAdminStatus, how can you distinguish between the case where
you want a script launched when the button becomes enabled and the case where
you don't?

The proposed addition of "auto" solves this problem, so maybe I'm just
nitpicking.

> Going a bit further, Frank came up with the idea to drop the new
> smLaunchFlags object altogether and instead introduce a new
> smLaunchAdminStatus status 'auto'. The 'auto' status will work similar
> to the 'enabled' status. The only difference is that the 'auto'
> administrative status launches a script during the disabled -> enabled
> operational state transition while the 'enabled' administrative status
> does not.

Sounds workable to me, and as you mention it allows for a single
download-script-and-launch-it-when-done operation in an SNMP "set".

> Now to the proposal:
> 
> - Add a new 'auto' enumeration to the smLaunchAdminStatus which brings
>   the smLaunchOperStatus into the enabled state and launches the script
>   during the script's disabled -> enabled transition.

Writing "auto" shouldn't set smLaunchOperStatus to "enabled" immediately, should
it?  That would imply that you could launch scripts with the button, which is
not yet true in the case of interest.  I think writing "auto" is exactly the
same as writing "enabled", except that if it causes a transition of the launch
button from disabled to enabled, at that moment or later, it also pushes the
button as if a 0 had been written to smLaunchStart.

> - Add clarifying text about the interactions between
>   smScriptOperStatus and smLaunchOperStatus state transitions. Some of
>   the state transitions we have implemented are not clearly defined in
>   RFC 2592. You sometimes have to infer the behavior from the more
>   declarative description of the various states.

As I mentioned, this does seem to be necessary.

I see no problems with this proposal and it is cleaner, simpler, and more
general than the two other proposals for auto-launch, so it looks like the way
to go.

Éamonn


From owner-disman@dorothy.peer.com  Wed Jun 14 09:11:23 2000
Received: from starling.bmc.com (fw-us-hou-2.bmc.com [198.207.223.251])
	by ietf.org (8.9.1a/8.9.1a) with ESMTP id JAA19183
	for <disman-archive@odin.ietf.org>; Wed, 14 Jun 2000 09:11:23 -0400 (EDT)
Received: from Dorothy.Bmc.Com (localhost [127.0.0.1])
	by starling.bmc.com (8.10.1/8.8.6) with ESMTP id e5ED8LH26730;
	Wed, 14 Jun 2000 08:08:21 -0500 (CDT)
Received: (from root@localhost)
	by Dorothy.Bmc.Com (8.8.6 (PHNE_12836)/8.8.6) id GAA11860
	for disman-list; Wed, 14 Jun 2000 06:07:27 -0700 (PDT)
Received: from starling.bmc.com (starling.bmc.com [172.17.0.113])
	by Dorothy.Bmc.Com (8.8.6 (PHNE_12836)/8.8.6) with ESMTP id GAA11855
	for <disman@dorothy.peer.com>; Wed, 14 Jun 2000 06:07:23 -0700 (PDT)
Received: from fw-us-hou1.bmc.com (localhost [127.0.0.1])
	by starling.bmc.com (8.10.1/8.8.6) with SMTP id e5ED80b26672
	for <disman@dorothy.peer.com>; Wed, 14 Jun 2000 08:08:00 -0500 (CDT)
Received: from henkell.ibr.cs.tu-bs.de (schoenw@henkell [134.169.34.191])
	by mumm.ibr.cs.tu-bs.de (8.9.3/8.9.3) with ESMTP id PAA04532;
	Wed, 14 Jun 2000 15:07:59 +0200 (MET DST)
Received: from schoenw@localhost by henkell.ibr.cs.tu-bs.de (8.7.6/tubsibr) id PAA05660; Wed, 14 Jun 2000 15:07:58 +0200
Date: Wed, 14 Jun 2000 15:07:58 +0200
Message-Id: <200006141307.PAA05660@henkell.ibr.cs.tu-bs.de>
From: Juergen Schoenwaelder <schoenw@ibr.cs.tu-bs.de>
To: eamonn.mcmanus@france.sun.com
CC: disman@dorothy.peer.com
In-reply-to: <39477A12.2B78354D@france.sun.com> (message from Eamonn McManus
	on Wed, 14 Jun 2000 14:26:58 +0200)
Subject: Re: script mib autostart feature
References: <200006091615.SAA18558@henkell.ibr.cs.tu-bs.de> <39477A12.2B78354D@france.sun.com>
Sender: owner-disman@dorothy.peer.com
Precedence: bulk
List-Id: IETF disman Working Group mailing list <disman@dorothy.bmc.com>



>>>>> Eamonn McManus writes:

Eamonn> My implementation doesn't do this, since it was
Eamonn> not clear from my reading of the document that
Eamonn> smLaunchOperStatus was tied to the state of the underlying
Eamonn> script.  The relevant text, I think, is in the description of
Eamonn> that variable, where it says: An `enabled' launch table entry
Eamonn> can be used to start scripts while a `disabled' launch table
Eamonn> entry will refuse any attempts to start scripts.  Your
Eamonn> interpretation is reasonable but I think it needs to be
Eamonn> spelled out more clearly, since it is not obvious.

Yes. Not all these state transitions and the dependencies between them
are clearly described in the current version of the document. This
needs to be fixed so that we get better interoperability here. We
probably have to work through a state transistion diagram to make sure
we catch them all.

>> For example, it is possible to install entries in the smScriptTable
>> and the smLaunchTable in a single SNMP set operation in such a way
>> that the implementation launches scripts automatically once the
>> source has been loaded and all entries change into the enabled
>> operational state.

Eamonn> In the absence of your proposed addition of "auto", I'm not
Eamonn> sure how this can work.  Ordinarily, scripts are launched when
Eamonn> the smLaunchStart variable is written.  That variable can't be
Eamonn> written if smLaunchOperStatus is not enabled, which is the
Eamonn> case you're talking about.  If you don't write it at the same
Eamonn> time as you write smLaunchAdminStatus, how can you distinguish
Eamonn> between the case where you want a script launched when the
Eamonn> button becomes enabled and the case where you don't?

Eamonn> The proposed addition of "auto" solves this problem, so maybe
Eamonn> I'm just nitpicking.

Yes. My statement above assumed that the "auto" state is available.
So being able to install and lauch a script in a single set operation
is a feature we get from the "auto" addition to smLaunchAdminStatus.

>> Now to the proposal:
>> 
>> - Add a new 'auto' enumeration to the smLaunchAdminStatus which
>> brings the smLaunchOperStatus into the enabled state and launches
>> the script during the script's disabled -> enabled transition.

Eamonn> Writing "auto" shouldn't set smLaunchOperStatus to "enabled"
Eamonn> immediately, should it?  That would imply that you could
Eamonn> launch scripts with the button, which is not yet true in the
Eamonn> case of interest.  I think writing "auto" is exactly the same
Eamonn> as writing "enabled", except that if it causes a transition of
Eamonn> the launch button from disabled to enabled, at that moment or
Eamonn> later, it also pushes the button as if a 0 had been written to
Eamonn> smLaunchStart.

Correct. "auto" delays the start of the script until the disabled ->
enabled state transition of smLaunchOperStatus happens. The only
difference to "enabled" is during this state transition.

Eamonn> I see no problems with this proposal and it is cleaner,
Eamonn> simpler, and more general than the two other proposals for
Eamonn> auto-launch, so it looks like the way to go.

Great that you like the proposal. Lets see if we get more positive
feedback from other WG members and implementors.

/js

-- 
Juergen Schoenwaelder      Technical University Braunschweig
<schoenw@ibr.cs.tu-bs.de>  Dept. Operating Systems & Computer Networks
Phone: +49 531 391 3289    Bueltenweg 74/75, 38106 Braunschweig, Germany
Fax:   +49 531 391 5936    <URL:http://www.ibr.cs.tu-bs.de/~schoenw/>




From owner-disman@dorothy.peer.com  Wed Jun 14 14:58:53 2000
Received: from starling.bmc.com (fw-us-hou-1.bmc.com [198.207.223.250])
	by ietf.org (8.9.1a/8.9.1a) with ESMTP id OAA02097
	for <disman-archive@odin.ietf.org>; Wed, 14 Jun 2000 14:58:53 -0400 (EDT)
Received: from Dorothy.Bmc.Com (localhost [127.0.0.1])
	by starling.bmc.com (8.10.1/8.8.6) with ESMTP id e5EItrb23176;
	Wed, 14 Jun 2000 13:55:53 -0500 (CDT)
Received: (from root@localhost)
	by Dorothy.Bmc.Com (8.8.6 (PHNE_12836)/8.8.6) id LAA20512
	for disman-list; Wed, 14 Jun 2000 11:54:22 -0700 (PDT)
Received: (from rpresuhn@localhost)
	by Dorothy.Bmc.Com (8.8.6 (PHNE_12836)/8.8.6) id LAA20506
	for disman@dorothy.bmc.com; Wed, 14 Jun 2000 11:54:18 -0700 (PDT)
Date: Wed, 14 Jun 2000 11:54:18 -0700 (PDT)
From: Randy Presuhn <rpresuhn@dorothy.peer.com>
Message-Id: <200006141854.LAA20506@Dorothy.Bmc.Com>
To: disman@dorothy.peer.com
Subject: fwd: I-D cutoff date
Mime-Version: 1.0
Content-Type: text/plain; charset=us-ascii
Content-Transfer-Encoding: 7bit
Sender: owner-disman@dorothy.peer.com
Precedence: bulk
List-Id: IETF disman Working Group mailing list <disman@dorothy.bmc.com>
Content-Transfer-Encoding: 7bit


Hi -

A reminder from the disman WG chair...

 -------------------------------------------------------
 Randy Presuhn           randy_presuhn@bmc.com
 Voice: +1 408 546-1006  BMC Software, Inc.  1-3141
 Fax:   +1 408 965-0359  2141 North First Street
 http://www.bmc.com/     San José, California 95131  USA
 -------------------------------------------------------
 My opinions and BMC's are independent variables.
 -------------------------------------------------------

> From ietf-123-owner@loki.ietf.org Wed Jun 14 08:03:34 PDT 2000
> Message-Id: <200006141203.IAA16857@ietf.org>
> From: Internet-Draft Administrator <internet-drafts@ietf.org>
> To: IETF-Announce: ;
> Subject: Internet-Draft Cut-off for Pittsburgh IETF
> Date: Wed, 14 Jun 2000 08:03:05 -0400
> 
> --------
> 
> The cut-off for Interntet-Draft submissions prior to the
> Pittsburgh, PA, USA IETF meeting is Friday, July 14, 2000
> at 5 pm US-ET. Internet-Drafts received after this time will NOT
> be announced nor made available in the Internet-Drafts
> Directories.
> 
> We will begin accepting Internet-Draft submissions the week
> of the meeting, though announcements will NOT be sent untill
> the IETF meeting is over.
> 
> Thank you for your understanding and cooperation. Please do
> not hesitate to contact us if you have any questions or
> concerns.
> 
> 
> NOTE: All initial submissions (-00.txt) with a filename
>       beginning with a draft-ietf MUST be approved by the
>       appropriate WG Chair prior to processing and announcing.
>       WG Chair approval must be received prior to the I-D cut-off
>       date.
> 
>       As such, -00 submissions received the day of the cut-off
>       will NOT be processed as WG documents. Do NOT wait untill
>       the last minute.
> 
> 
> FYI:  These and other significant date can be found at 
>       http://www.ietf.org/meetings/cutoff_dates_48.html
> 
> 


From owner-disman@dorothy.peer.com  Thu Jun 15 11:30:50 2000
Received: from starling.bmc.com (fw-us-hou-2.bmc.com [198.207.223.251])
	by ietf.org (8.9.1a/8.9.1a) with ESMTP id LAA05026
	for <disman-archive@odin.ietf.org>; Thu, 15 Jun 2000 11:30:35 -0400 (EDT)
Received: from Dorothy.Bmc.Com (localhost [127.0.0.1])
	by starling.bmc.com (8.10.1/8.8.6) with ESMTP id e5FFSHD19227;
	Thu, 15 Jun 2000 10:28:17 -0500 (CDT)
Received: (from root@localhost)
	by Dorothy.Bmc.Com (8.8.6 (PHNE_12836)/8.8.6) id IAA24239
	for disman-list; Thu, 15 Jun 2000 08:24:57 -0700 (PDT)
Received: from starling.bmc.com (starling.bmc.com [172.17.0.113])
	by Dorothy.Bmc.Com (8.8.6 (PHNE_12836)/8.8.6) with ESMTP id IAA24234
	for <disman@dorothy.peer.com>; Thu, 15 Jun 2000 08:24:53 -0700 (PDT)
Received: from fw-us-hou1.bmc.com (localhost [127.0.0.1])
	by starling.bmc.com (8.10.1/8.8.6) with SMTP id e5FFPa117855
	for <disman@dorothy.bmc.com>; Thu, 15 Jun 2000 10:25:37 -0500 (CDT)
Received: from ramk-pc.cisco.com (dhcp-171-69-66-157.cisco.com [171.69.66.157])
	by sigma.cisco.com (8.8.8-Cisco List Logging/8.8.8) with SMTP id IAA11167;
	Thu, 15 Jun 2000 08:25:12 -0700 (PDT)
Message-Id: <4.1.20000615082218.00a66ca0@sigma.cisco.com>
X-Sender: ramk@sigma.cisco.com
X-Mailer: QUALCOMM Windows Eudora Pro Version 4.1 
Date: Thu, 15 Jun 2000 08:25:08 -0700
To: jaya@cisco.com
From: Ramanathan Kavasseri <ramk@cisco.com>
Subject: Re:Discrepancy in the Event MIB draft 
  (draft-ietf-disman-event-mib-09.txt)
Cc: disman@dorothy.peer.com, net-man@cisco.com, asethi@cisco.com
In-Reply-To: <3948C2D4.F62F69B4@cisco.com>
Mime-Version: 1.0
Content-Type: multipart/alternative;
	boundary="=====================_507605848==_.ALT"
Sender: owner-disman@dorothy.peer.com
Precedence: bulk
List-Id: IETF disman Working Group mailing list <disman@dorothy.bmc.com>


--=====================_507605848==_.ALT
Content-Type: text/plain; charset="us-ascii"

At 05:19 PM 6/15/00 +0530, Jayashree wrote: 
>
> Hi Ram 
>    Well there was a misalignment in the previous mail regarding the change .
> Please note that the change is now been indicated by a bold Font. 



Jaya,

it certainly is a discrepancy. Since it is a typo, and the intended meaning is
fairly obvious,
I'd like to include this change when releasing the updated event mib draft
(draft-ietf-disman-event-mib-10.txt)
later today, along with other typo-fixes that Randy had brought to my
attention.

Randy, Bert, any objection to fixing this at this stage?

Thanks,

Ram


>
> According to the Disman Event MIB draft (draft-ietf-disman-event-mib-09.txt)
> -: 
>
> <Snip> 
>
> mteTriggerThresholdStartup OBJECT-TYPE 
>
> Description -: 
> "The event that may be triggered when this entry is first set to 'active' and
> a new instance of the object at mteTriggerValueID is found. 
>
> If the first sample after this instance becomes active is greater than or
> equal to mteTriggerThresholdRising and 
> mteTriggerThresholdStartup is equal to 'rising' or 'risingOrFalling', then
> one mteTriggerThresholdRisingEvent is triggered for that 
> instance. 
>
> If the first sample after this entry becomes active is less than or equal to
> mteTriggerThresholdFalling and mteTriggerThresholdStartup 
> is equal to 'falling' or 'risingOrFalling', then one
> mteTriggerThresholdRisingEvent is triggered for that instance." 
>
> <Snip> 
>
> In my opinion this should be changed to the description given below 
>
> Description -: 
> "The event that may be triggered when this entry is first set to 'active' and
> a new instance of the object at mteTriggerValueID is found. 
>
> If the first sample after this  instance becomes active is greater than or
> equal to 
> mteTriggerThresholdRising and mteTriggerThresholdStartup is equal to 'rising'
> or 'risingOrFalling', then one 
> mteTriggerThresholdRisingEvent is triggered for that instance. 
>
> If the first sample after this entry becomes active is less than or equal to
> mteTriggerThresholdFalling and  mteTriggerThresholdStartup 
> is equal to 'Falling' or 'risingOrFalling', then one
> mteTriggerThresholdFallingEvent is triggered for that instance." 
>   
> Thanx 
> Jaya 
>  



--=====================_507605848==_.ALT
Content-Type: text/html; charset="us-ascii"

<html>
At 05:19 PM 6/15/00 +0530, Jayashree wrote: <br>
<blockquote type=cite cite>Hi Ram <br>
&nbsp;&nbsp; Well there was a misalignment in the previous mail regarding
the change . Please note that the change is now been indicated by a
<b>bold Font.</b> </blockquote><br>
<br>
Jaya,<br>
<br>
it certainly is a discrepancy. Since it is a typo, and the intended
meaning is fairly obvious,<br>
I'd like to include this change when releasing the updated event mib
draft (draft-ietf-disman-event-mib-10.txt)<br>
later today, along with other typo-fixes that Randy had brought to my
attention.<br>
<br>
Randy, Bert, any objection to fixing this at this stage?<br>
<br>
Thanks,<br>
<br>
Ram<br>
<br>
<br>
<blockquote type=cite cite>According to the Disman Event MIB draft
(draft-ietf-disman-event-mib-09.txt) -: <br>
<br>
&lt;Snip&gt; <br>
<br>
mteTriggerThresholdStartup OBJECT-TYPE <br>
<br>
Description -: <br>
&quot;The event that may be triggered when this entry is first set to
'active' and a new instance of the object at mteTriggerValueID is found.
<br>
<br>
If the first sample after this instance becomes active is greater than or
equal to mteTriggerThresholdRising and <br>
mteTriggerThresholdStartup is equal to 'rising' or 'risingOrFalling',
then one mteTriggerThresholdRisingEvent is triggered for that <br>
instance. <br>
<br>
If the first sample after this entry becomes active is less than or equal
to mteTriggerThresholdFalling and mteTriggerThresholdStartup <br>
is equal to 'falling' or 'risingOrFalling', then one
mteTriggerThresholdRisingEvent is triggered for that instance.&quot;
<br>
<br>
&lt;Snip&gt; <br>
<br>
In my opinion this should be changed to the description given below 
<br>
<br>
Description -: <br>
&quot;The event that may be triggered when this entry is first set to
'active' and a new instance of the object at mteTriggerValueID is found.
<br>
<br>
If the first sample after this&nbsp; instance becomes active is greater
than or equal to <br>
mteTriggerThresholdRising and mteTriggerThresholdStartup is equal to
'rising' or 'risingOrFalling', then one <br>
mteTriggerThresholdRisingEvent is triggered for that instance. <br>
<br>
If the first sample after this entry becomes active is less than or equal
to mteTriggerThresholdFalling and&nbsp; mteTriggerThresholdStartup <br>
is equal to 'Falling' or 'risingOrFalling', then one
<b>mteTriggerThresholdFallingEvent</b> is triggered for that
instance.&quot; <br>
&nbsp; <br>
Thanx <br>
Jaya <br>
&nbsp;</blockquote><br>
</html>

--=====================_507605848==_.ALT--



From owner-disman@dorothy.peer.com  Thu Jun 15 12:15:03 2000
Received: from starling.bmc.com (fw-us-hou-2.bmc.com [198.207.223.251])
	by ietf.org (8.9.1a/8.9.1a) with ESMTP id MAA06447
	for <disman-archive@odin.ietf.org>; Thu, 15 Jun 2000 12:15:03 -0400 (EDT)
Received: from Dorothy.Bmc.Com (localhost [127.0.0.1])
	by starling.bmc.com (8.10.1/8.8.6) with ESMTP id e5FGD0107578;
	Thu, 15 Jun 2000 11:13:00 -0500 (CDT)
Received: (from root@localhost)
	by Dorothy.Bmc.Com (8.8.6 (PHNE_12836)/8.8.6) id JAA24632
	for disman-list; Thu, 15 Jun 2000 09:11:51 -0700 (PDT)
Received: (from rpresuhn@localhost)
	by Dorothy.Bmc.Com (8.8.6 (PHNE_12836)/8.8.6) id JAA24626
	for disman@dorothy.bmc.com; Thu, 15 Jun 2000 09:11:47 -0700 (PDT)
Date: Thu, 15 Jun 2000 09:11:47 -0700 (PDT)
From: Randy Presuhn <rpresuhn@dorothy.peer.com>
Message-Id: <200006151611.JAA24626@Dorothy.Bmc.Com>
To: disman@dorothy.peer.com
Subject: Fwd: Discrepancy in the Event MIB draft (draft-ietf-disman-event-mib-09.txt)
Mime-Version: 1.0
Content-Type: text/plain; charset=us-ascii
Content-Transfer-Encoding: 7bit
Sender: owner-disman@dorothy.peer.com
Precedence: bulk
List-Id: IETF disman Working Group mailing list <disman@dorothy.bmc.com>
Content-Transfer-Encoding: 7bit


Hi -

I'm forwarding a non-subscribe post to the disman working group
mailing list.  Don't blame me for the HTML and layout.  :-)

 -------------------------------------------------------
 Randy Presuhn           randy_presuhn@bmc.com
 Voice: +1 408 546-1006  BMC Software, Inc.  1-3141
 Fax:   +1 408 965-0359  2141 North First Street
 http://www.bmc.com/     San José, California 95131  USA
 -------------------------------------------------------
 My opinions and BMC's are independent variables.
 -------------------------------------------------------

> Received: from starling.bmc.com (starling.bmc.com [172.17.0.113])
> 	by Dorothy.Bmc.Com (8.8.6 (PHNE_12836)/8.8.6) with ESMTP id EAA23708
> 	for <disman@dorothy.peer.com>; Thu, 15 Jun 2000 04:29:00 -0700 (PDT)
> Received: from fw-us-hou1.bmc.com (localhost [127.0.0.1])
> 	by starling.bmc.com (8.10.1/8.8.6) with SMTP id e5FBTiT13544
> 	for <disman@dorothy.bmc.com>; Thu, 15 Jun 2000 06:29:44 -0500 (CDT)
> Received: from cisco.com ([192.135.247.233])
> 	by cbin2-mail.cisco.com (8.8.8-Cisco List Logging/8.8.8) with ESMTP id QAA08278;
> 	Thu, 15 Jun 2000 16:58:40 +0530 (IST)
> Message-ID: <3948BE00.7E19D755@cisco.com>
> Date: Thu, 15 Jun 2000 16:59:04 +0530
> From: Jayashree <jaya@cisco.com>
> Reply-To: jaya@cisco.com
> Organization: Cisco Systems
> X-Mailer: Mozilla 4.61 [en] (WinNT; I)
> X-Accept-Language: en
> MIME-Version: 1.0
> To: ramk@cisco.com
> CC: disman@dorothy.peer.com, net-man@cisco.com
> Subject: Discrepancy in the Event MIB draft (draft-ietf-disman-event-mib-09.txt)
> Content-Type: multipart/alternative;
>  boundary="------------ED52D6E0C55F0A9D71FB6AA6"
>
>
> --------------ED52D6E0C55F0A9D71FB6AA6
> Content-Type: text/plain; charset=us-ascii
> Content-Transfer-Encoding: 7bit
>
> Hi Ram,
> According to the Disman Event MIB draft
> (draft-ietf-disman-event-mib-09.txt) -:
>
> <Snip>
>
> mteTriggerThresholdStartup OBJECT-TYPE
>
> Description -:
> "The event that may be triggered when this entry is first set to
> 'active' and a new instance of the object at mteTriggerValueID is found.
>
> If the first sample after this instance becomes active is greater than
> or equal to mteTriggerThresholdRising and mteTriggerThresholdStartup is
> equal to 'rising' or 'risingOrFalling', then one
> mteTriggerThresholdRisingEvent is triggered for that
> instance.
>
> If the first sample after this entry becomes active is less than or
> equal to mteTriggerThresholdFalling and mteTriggerThresholdStartup is
> equal to 'falling' or 'risingOrFalling', then one
> mteTriggerThresholdRisingEvent is triggered for that instance."
>
> <Snip>
>
> In my opinion this should be changed to the description given below
> (The change is indicated by  "^^^^^^^^^")
>
> Description -:
> "The event that may be triggered when this entry is first set to
> 'active' and a new instance of the object at mteTriggerValueID is found.
>
> If the first sample after this  instance becomes active is greater than
> or equal to
> mteTriggerThresholdRising and mteTriggerThresholdStartup is equal to
> 'rising' or 'risingOrFalling', then one mteTriggerThresholdRisingEvent
> is triggered for that instance.
>
> If the first sample after this entry becomes active is less than or
> equal to mteTriggerThresholdFalling and  mteTriggerThresholdStartup is
> equal to 'Falling' or 'risingOrFalling', then one
> mteTriggerThresholdFallingEvent is triggered for that
> instance."                                ^^^^^^^^^^^^^^^^^^^^^
>
> Thanx
> Jaya
>
>
> --------------ED52D6E0C55F0A9D71FB6AA6
> Content-Type: text/html; charset=us-ascii
> Content-Transfer-Encoding: 7bit
>
> <!doctype html public "-//w3c//dtd html 4.0 transitional//en">
> <html>
> Hi Ram,
> <br>According to the Disman Event MIB draft (draft-ietf-disman-event-mib-09.txt)
> -:
> <p>&lt;Snip>
> <p>mteTriggerThresholdStartup OBJECT-TYPE
> <p><b>Description</b> -:
> <br>"The event that may be triggered when this entry is first set to 'active'
> and a new instance of the object at mteTriggerValueID is found.
> <p>If the first sample after this instance becomes active is greater than
> or equal to mteTriggerThresholdRising and mteTriggerThresholdStartup is
> equal to 'rising' or 'risingOrFalling', then one mteTriggerThresholdRisingEvent
> is triggered for that
> <br>instance.
> <p>If the first sample after this entry becomes active is less than or
> equal to mteTriggerThresholdFalling and mteTriggerThresholdStartup is equal
> to 'falling' or 'risingOrFalling', then one mteTriggerThresholdRisingEvent
> is triggered for that instance."
> <p>&lt;Snip>
> <p>In my opinion this should be changed to the description given below
> <br>(The change is indicated by&nbsp; "^^^^^^^^^")
> <p><b>Description</b> -:
> <br>"The event that may be triggered when this entry is first set to 'active'
> and a new instance of the object at mteTriggerValueID is found.
> <p>If the first sample after this&nbsp; instance becomes active is greater
> than or equal to
> <br>mteTriggerThresholdRising and mteTriggerThresholdStartup is equal to
> 'rising' or 'risingOrFalling', then one mteTriggerThresholdRisingEvent
> is triggered for that instance.
> <p>If the first sample after this entry becomes active is less than or
> equal to mteTriggerThresholdFalling and&nbsp; mteTriggerThresholdStartup
> is equal to 'Falling' or 'risingOrFalling', then one mteTriggerThresholdFallingEvent
> is triggered for that instance."&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
> ^^^^^^^^^^^^^^^^^^^^^
> <br>&nbsp;
> <br>Thanx
> <br>Jaya
> <br>&nbsp;</html>
>
> --------------ED52D6E0C55F0A9D71FB6AA6--
>
>


From owner-disman@dorothy.peer.com  Thu Jun 15 12:16:11 2000
Received: from starling.bmc.com (fw-us-hou-2.bmc.com [198.207.223.251])
	by ietf.org (8.9.1a/8.9.1a) with ESMTP id MAA06510
	for <disman-archive@odin.ietf.org>; Thu, 15 Jun 2000 12:16:10 -0400 (EDT)
Received: from Dorothy.Bmc.Com (localhost [127.0.0.1])
	by starling.bmc.com (8.10.1/8.8.6) with ESMTP id e5FGEvb08269;
	Thu, 15 Jun 2000 11:14:57 -0500 (CDT)
Received: (from root@localhost)
	by Dorothy.Bmc.Com (8.8.6 (PHNE_12836)/8.8.6) id JAA24709
	for disman-list; Thu, 15 Jun 2000 09:14:01 -0700 (PDT)
Received: (from rpresuhn@localhost)
	by Dorothy.Bmc.Com (8.8.6 (PHNE_12836)/8.8.6) id JAA24703
	for disman@dorothy.bmc.com; Thu, 15 Jun 2000 09:13:57 -0700 (PDT)
Date: Thu, 15 Jun 2000 09:13:57 -0700 (PDT)
From: Randy Presuhn <rpresuhn@dorothy.peer.com>
Message-Id: <200006151613.JAA24703@Dorothy.Bmc.Com>
To: disman@dorothy.peer.com
Subject: Fwd: Re:Discrepancy in the Event MIB draft
Mime-Version: 1.0
Content-Type: text/plain; charset=us-ascii
Content-Transfer-Encoding: 7bit
Sender: owner-disman@dorothy.peer.com
Precedence: bulk
List-Id: IETF disman Working Group mailing list <disman@dorothy.bmc.com>
Content-Transfer-Encoding: 7bit


Hi -

Yet another non-subscriber post to the disman WG mailing list.
It looks like those Cisco folks really like to send out
that HTML.  ;-)

 -------------------------------------------------------
 Randy Presuhn           randy_presuhn@bmc.com
 Voice: +1 408 546-1006  BMC Software, Inc.  1-3141
 Fax:   +1 408 965-0359  2141 North First Street
 http://www.bmc.com/     San José, California 95131  USA
 -------------------------------------------------------
 My opinions and BMC's are independent variables.
 -------------------------------------------------------

> Received: from starling.bmc.com (starling.bmc.com [172.17.0.113])
> 	by Dorothy.Bmc.Com (8.8.6 (PHNE_12836)/8.8.6) with ESMTP id EAA23773
> 	for <disman@dorothy.peer.com>; Thu, 15 Jun 2000 04:49:44 -0700 (PDT)
> Received: from fw-us-hou1.bmc.com (localhost [127.0.0.1])
> 	by starling.bmc.com (8.10.1/8.8.6) with SMTP id e5FBoRD17158
> 	for <disman@dorothy.bmc.com>; Thu, 15 Jun 2000 06:50:28 -0500 (CDT)
> Received: from cisco.com ([192.135.247.233])
> 	by cbin2-mail.cisco.com (8.8.8-Cisco List Logging/8.8.8) with ESMTP id RAA09561;
> 	Thu, 15 Jun 2000 17:19:17 +0530 (IST)
> Message-ID: <3948C2D4.F62F69B4@cisco.com>
> Date: Thu, 15 Jun 2000 17:19:40 +0530
> From: Jayashree <jaya@cisco.com>
> Reply-To: jaya@cisco.com
> Organization: Cisco Systems
> X-Mailer: Mozilla 4.61 [en] (WinNT; I)
> X-Accept-Language: en
> MIME-Version: 1.0
> To: ramk@cisco.com
> CC: disman@dorothy.peer.com, net-man@cisco.com, asethi@cisco.com
> Subject: Re:Discrepancy in the Event MIB draft
>  (draft-ietf-disman-event-mib-09.txt)
> Content-Type: multipart/alternative;
>  boundary="------------E1EABB51353747A86945A47B"
>
>
> --------------E1EABB51353747A86945A47B
> Content-Type: text/plain; charset=us-ascii
> Content-Transfer-Encoding: 7bit
>
> Hi Ram
>    Well there was a misalignment in the previous mail regarding the
> change . Please note that the change is now been indicated by a bold
> Font.
>
> According to the Disman Event MIB draft
> (draft-ietf-disman-event-mib-09.txt) -:
>
> <Snip>
>
> mteTriggerThresholdStartup OBJECT-TYPE
>
> Description -:
> "The event that may be triggered when this entry is first set to
> 'active' and a new instance of the object at mteTriggerValueID is found.
>
> If the first sample after this instance becomes active is greater than
> or equal to mteTriggerThresholdRising and
> mteTriggerThresholdStartup is equal to 'rising' or 'risingOrFalling',
> then one mteTriggerThresholdRisingEvent is triggered for that
> instance.
>
> If the first sample after this entry becomes active is less than or
> equal to mteTriggerThresholdFalling and mteTriggerThresholdStartup
> is equal to 'falling' or 'risingOrFalling', then one
> mteTriggerThresholdRisingEvent is triggered for that instance."
>
> <Snip>
>
> In my opinion this should be changed to the description given below
>
> Description -:
> "The event that may be triggered when this entry is first set to
> 'active' and a new instance of the object at mteTriggerValueID is found.
>
> If the first sample after this  instance becomes active is greater than
> or equal to
> mteTriggerThresholdRising and mteTriggerThresholdStartup is equal to
> 'rising' or 'risingOrFalling', then one
> mteTriggerThresholdRisingEvent is triggered for that instance.
>
> If the first sample after this entry becomes active is less than or
> equal to mteTriggerThresholdFalling and  mteTriggerThresholdStartup
> is equal to 'Falling' or 'risingOrFalling', then one
> mteTriggerThresholdFallingEvent is triggered for that instance."
>
> Thanx
> Jaya
>
>
> --------------E1EABB51353747A86945A47B
> Content-Type: text/html; charset=us-ascii
> Content-Transfer-Encoding: 7bit
>
> <!doctype html public "-//w3c//dtd html 4.0 transitional//en">
> <html>
> Hi Ram
> <br>&nbsp;&nbsp; Well there was a misalignment in the previous mail regarding
> the change . Please note that the change is now been indicated by a <b>bold
> Font.</b>
> <p>According to the Disman Event MIB draft (draft-ietf-disman-event-mib-09.txt)
> -:
> <p>&lt;Snip>
> <p>mteTriggerThresholdStartup OBJECT-TYPE
> <p>Description -:
> <br>"The event that may be triggered when this entry is first set to 'active'
> and a new instance of the object at mteTriggerValueID is found.
> <p>If the first sample after this instance becomes active is greater than
> or equal to mteTriggerThresholdRising and
> <br>mteTriggerThresholdStartup is equal to 'rising' or 'risingOrFalling',
> then one mteTriggerThresholdRisingEvent is triggered for that
> <br>instance.
> <p>If the first sample after this entry becomes active is less than or
> equal to mteTriggerThresholdFalling and mteTriggerThresholdStartup
> <br>is equal to 'falling' or 'risingOrFalling', then one mteTriggerThresholdRisingEvent
> is triggered for that instance."
> <p>&lt;Snip>
> <p>In my opinion this should be changed to the description given below
> <p>Description -:
> <br>"The event that may be triggered when this entry is first set to 'active'
> and a new instance of the object at mteTriggerValueID is found.
> <p>If the first sample after this&nbsp; instance becomes active is greater
> than or equal to
> <br>mteTriggerThresholdRising and mteTriggerThresholdStartup is equal to
> 'rising' or 'risingOrFalling', then one
> <br>mteTriggerThresholdRisingEvent is triggered for that instance.
> <p>If the first sample after this entry becomes active is less than or
> equal to mteTriggerThresholdFalling and&nbsp; mteTriggerThresholdStartup
> <br>is equal to 'Falling' or 'risingOrFalling', then one <b>mteTriggerThresholdFallingEvent</b>
> is triggered for that instance."
> <br>&nbsp;
> <br>Thanx
> <br>Jaya
> <br>&nbsp;</html>
>
> --------------E1EABB51353747A86945A47B--
>
>


From owner-disman@dorothy.peer.com  Mon Jun 19 11:48:09 2000
Received: from starling.bmc.com (fw-us-hou-1.bmc.com [198.207.223.250])
	by ietf.org (8.9.1a/8.9.1a) with ESMTP id LAA11663
	for <disman-archive@odin.ietf.org>; Mon, 19 Jun 2000 11:48:08 -0400 (EDT)
Received: from Dorothy.Bmc.Com (localhost [127.0.0.1])
	by starling.bmc.com (8.10.1/8.8.6) with ESMTP id e5JFbGD22124;
	Mon, 19 Jun 2000 10:37:16 -0500 (CDT)
Received: (from root@localhost)
	by Dorothy.Bmc.Com (8.8.6 (PHNE_12836)/8.8.6) id IAA27645
	for disman-list; Mon, 19 Jun 2000 08:27:54 -0700 (PDT)
Received: from starling.bmc.com (starling.bmc.com [172.17.0.113])
	by Dorothy.Bmc.Com (8.8.6 (PHNE_12836)/8.8.6) with ESMTP id IAA27640
	for <disman@dorothy.peer.com>; Mon, 19 Jun 2000 08:27:50 -0700 (PDT)
Received: from fw-us-hou1.bmc.com (localhost [127.0.0.1])
	by starling.bmc.com (8.10.1/8.8.6) with SMTP id e5JFSXv19621
	for <disman@dorothy.peer.com>; Mon, 19 Jun 2000 10:28:34 -0500 (CDT)
Received: (qmail 1896 invoked from network); 19 Jun 2000 17:20:02 +0200
Received: from belem.inf.fu-berlin.de (HELO ccrle.nec.de) (160.45.110.49)
  by leibniz.math.fu-berlin.de with SMTP; 19 Jun 2000 17:20:02 +0200
Message-ID: <394E39DF.1401F255@ccrle.nec.de>
Date: Mon, 19 Jun 2000 17:18:55 +0200
From: Juergen Quittek <quittek@ccrle.nec.de>
X-Mailer: Mozilla 4.7 [en] (Win98; I)
X-Accept-Language: en
MIME-Version: 1.0
To: DISMAN Mailing List <disman@dorothy.peer.com>
Subject: ambiguous script name length spec
Content-Type: text/plain; charset=us-ascii
Content-Transfer-Encoding: 7bit
Sender: owner-disman@dorothy.peer.com
Precedence: bulk
List-Id: IETF disman Working Group mailing list <disman@dorothy.bmc.com>
Content-Transfer-Encoding: 7bit


While testing a Script MIB Java Mangement API, Cornelia Kappler and
myself ran into the following inconsistency of the Script MIB:

In the smScriptTable the syntax of the smScriptName is defined as
an SnmpAdminString without further restrictions of its length.
However, in the smLaunchTable the smLaunchScriptName, which
should be identical with one of the smScriptNames, the length
is restricted to SnmpAdminString (SIZE (0..32)).

Consequently, I can create a smScriptTableEntry with a name longer
than 32 and for this entry I cannot create a referring smLaunchTableEntry.

Furthermore, the unrestricted smScriptName which is an index to the
smScriptTable might lead to very long (or too long) OIDs.


Like the smScriptTable also the smLaunchTable is indexed by an owner
and a name. But there we find the smLaunchOwner being restricted to
SnmpAdminString (SIZE (0..32)) and the smLaunchName being
restricted to SnmpAdminString (SIZE (1..32)). Both are restricted
to a maximal length of 32 octets and names must have a minimal length
of 1 octet.

I think this is a reasonable choice which should be applied also to
names of entries in the smScriptTable. Anyway, it is simpler and therefore
preferable with both tables having the same restrictions for their indices.

Therefore I suggest to apply define the Syntax of smScriptName to be
SnmpAdminString (SIZE (1..32)) and to make the definition of
smLaunchScriptName consistent to this restriction.

    Juergen
-- 
Juergen Quittek     quittek@ccrle.nec.de     Tel: +49 30 254230-19
NEC Europe Ltd., C&C Research Laboratories   Fax: +49 30 254230-99
Hardenbergplatz 2, 10623 Berlin, Germany   http://www.ccrle.nec.de


From owner-disman@dorothy.peer.com  Tue Jun 20 01:37:54 2000
Received: from starling.bmc.com (fw-us-hou-2.bmc.com [198.207.223.251])
	by ietf.org (8.9.1a/8.9.1a) with ESMTP id BAA06702
	for <disman-archive@odin.ietf.org>; Tue, 20 Jun 2000 01:37:52 -0400 (EDT)
Received: from Dorothy.Bmc.Com (localhost [127.0.0.1])
	by starling.bmc.com (8.10.1/8.8.6) with ESMTP id e5K5ZW116574;
	Tue, 20 Jun 2000 00:35:32 -0500 (CDT)
Received: (from root@localhost)
	by Dorothy.Bmc.Com (8.8.6 (PHNE_12836)/8.8.6) id WAA06288
	for disman-list; Mon, 19 Jun 2000 22:33:22 -0700 (PDT)
Received: from starling.bmc.com (starling.bmc.com [172.17.0.113])
	by Dorothy.Bmc.Com (8.8.6 (PHNE_12836)/8.8.6) with ESMTP id WAA06281
	for <disman@dorothy.peer.com>; Mon, 19 Jun 2000 22:32:55 -0700 (PDT)
Received: from fw-us-hou1.bmc.com (localhost [127.0.0.1])
	by starling.bmc.com (8.10.1/8.8.6) with SMTP id e5K5XdH16240
	for <disman@dorothy.bmc.com>; Tue, 20 Jun 2000 00:33:39 -0500 (CDT)
Received: (ramk@localhost) by itech-view2.cisco.com (8.8.5-Cisco.2-SunOS.5.5.1.sun4/8.6.5) id WAA22184; Mon, 19 Jun 2000 22:33:36 -0700 (PDT)
From: Ram Kavasseri <ramk@cisco.com>
Message-Id: <200006200533.WAA22184@itech-view2.cisco.com>
Subject: Latest Event MIB draft - draft-ietf-disman-event-mib-10.txt
To: disman@dorothy.peer.com
Date: Mon, 19 Jun 2000 22:33:36 -0700 (PDT)
Cc: ramk@cisco.com (Ram Kavasseri)
X-Mailer: ELM [version 2.5 PL1]
MIME-Version: 1.0
Content-Type: text/plain; charset=us-ascii
Content-Transfer-Encoding: 7bit
Sender: owner-disman@dorothy.peer.com
Precedence: bulk
List-Id: IETF disman Working Group mailing list <disman@dorothy.bmc.com>
Content-Transfer-Encoding: 7bit


The following typos/formatting changes were made to
draft-ietf-disman-event-mib-09.txt. The new revision
is called draft-ietf-disman-event-mib-10.txt. Before posting
this to internet-drafts@ietf.org, I'm posting this to the disman
mailing list so folks can make sure all the requested changes were made:

1. Page 1 Reformatted the header for the draft to make it conform to
the format used by other drafts.

2. Page 1 - Updated the expiry date for the draft.

3. Page 1 Added reference to Internet-Draft Shadow Directories URL.

4. Page 1 Fixed Copyright notice.

5. Page 6,7 Made the diagram fit into one page. 

6. Page 8 [Page 9 in draft-ietf-disman-event-mib-09.txt]
 - last paragraph of "Security" should use subjunctive, since it
is really a hypothetical example of just one possible policy. Minimal
fix:  Change the following to the beginning of the paragraph
from "All" to "If a security administrator were to employ
such an approach, all".

7. Page 9 [Page 10 in draft-ietf-disman-event-mib-09.txt]
 - Updated the LAST-UPDATED field with new revision date.

8. Page 9 [Page 10 in draft-ietf-disman-event-mib-09.txt]
 - Fixed tabbing, and made the following change:
 old: "::= { mib-2 xx } - final assignment by IANA at publication time"
 new: "::= { mib-2 xx } -- final assignment by IANA at publication time"

9. Page 15 [Page 16 in draft-ietf-disman-event-mib-09.txt]
 - Changed DEFVAL syntax for mteTriggerTest from
    DEFVAL { boolean }
to
    DEFVAL { { boolean } }

10. Page 28 [Page 29 in draft-ietf-disman-event-mib-09.txt]
- Added missing comma in MteTriggerThresholdEntry SEQUENCE

11. Page 38
- Fixed DEFVAL syntax for mteEventActions from
    DEFVAL { '0'H }  -- No bits set.
to
    DEFVAL { {} }  -- No bits set.

12. Page 49 [Page 50 in draft-ietf-disman-event-mib-09.txt]
- Added a missing comma after mteTriggerThresholdFallingEvent.

13. Page 16 [Page 17 in draft-ietf-disman-event-mib-09.txt]
-  description of mteTriggerSampleType: the MUST is
inappropriate.  This is advice, and is incorrect for things like the
much-maligned zero-based counters.  Suggest "MUST -> "should".

14. Page 32+ Several "DESCRIPTIONS" have lines greater than 72 chars.

15. Page 34 [Page 35 in draft-ietf-disman-event-mib-09.txt]
- In the DESCRIPTION of mteObjectsIndex, "small" adds no meaning
to the DESCRIPTION. It has been deleted.

16. Page 42 [Page 43 in draft-ietf-disman-event-mib-09.txt]
- In the DESCRIPTION of mteEventSetTargetTag, replaced
"MAY not accept" with "MAY reject" to avoid confusion.

17. Page 57 [Page 58 in draft-ietf-disman-event-mib-09.txt]
Page 58 Copyright date fixed.


The new draft follows.

Ram Kavasseri

===================New draft follows============================

Network Working Group                           Editor of this version:
Internet-Draft                                  Ramanathan R. Kavasseri
Expires December 2000                               Cisco Systems, Inc.
                                            Author of previous version:
                                                            Bob Stewart
                                                            7 June 2000



                               Event MIB

                   draft-ietf-disman-event-mib-10.txt


                          Status of this Memo

This document is an Internet-Draft and is in full conformance with all
provisions of Section 10 of RFC2026.

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.''

     The list of current Internet-Drafts can be accessed at
     http://www.ietf.org/ietf/1id-abstracts.txt

     The list of Internet-Draft Shadow Directories can be accessed at
     http://www.ietf.org/shadow.html.

Distribution of this document is unlimited. Please send comments to the
Distributed Management Working Group, <disman@dorothy.BMC.com>.


Copyright Notice

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















Internet Draft      Distributed Management Event MIB         7 June 2000


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 that can be used
to manage and monitor MIB objects and take action through events.

The Event MIB provides the ability to monitor MIB objects on the local
system or on a remote system and take simple action when a trigger
condition is met.


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.


2.  The SNMP Management Framework

   The SNMP Management Framework presently consists of five major
   components:

    o   An overall architecture, described in RFC 2571 [RFC2571].

    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
        STD 16, RFC 1155 [RFC1155], STD 16, RFC 1212 [RFC1212] and RFC
        1215 [RFC1215]. The second version, called SMIv2, is described
        in STD 58, RFC 2578 [RFC2578], RFC 2579 [RFC2579] and RFC 2580
        [RFC2580].

    o   Message protocols for transferring management information. The
        first version of the SNMP message protocol is called SNMPv1 and
        described in STD 15, RFC 1157 [RFC1157]. A second version of the
        SNMP message protocol, which is not an Internet standards track
        protocol, is called SNMPv2c and described in RFC 1901 [RFC1901]
        and RFC 1906 [RFC1906]. The third version of the message
        protocol is called SNMPv3 and described in RFC 1906 [RFC1906],
        RFC 2572 [RFC2572] and RFC 2574 [RFC2574].

    o   Protocol operations for accessing management information. The
        first set of protocol operations and associated PDU formats is
        described in STD 15, RFC 1157 [RFC1157]. A second set of
        protocol operations and associated PDU formats is described in





Expires 7 December 2000                                         [Page 2]





Internet Draft      Distributed Management Event MIB         7 June 2000


        RFC 1905 [RFC1905].

    o   A set of fundamental applications described in RFC 2573
        [RFC2573] and the view-based access control mechanism described
        in RFC 2575 [RFC2575].

   A more detailed introduction to the current SNMP Management Framework
   can be found in RFC 2570 [RFC2570].

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

   This memo specifies a MIB module that is compliant to the SMIv2. A
   MIB conforming to the SMIv1 can be produced through the appropriate
   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. It may not be possible to meaningfully monitor Counter64 objects
   using an SMIv1 version of the MIB.



























Expires 7 December 2000                                         [Page 3]





Internet Draft      Distributed Management Event MIB         7 June 2000


3.  Overview

With network sizes well beyond the ability of people to manage them
directly, automated, distributed management is vital.  An important
aspect of such management is the ability of a system to monitor itself
or for some other system to monitor it.

The Event MIB provides the ability to monitor MIB objects on the local
system or on a remote system and take simple action when a trigger
condition is met.

The MIB is intended to suit either a relatively powerful manager or mid-
level manager, as well as a somewhat more limited self-managing system.


4.  Relationship to Other MIBs

The Event MIB is based on extensive experience with the RMON MIB
[RFC1757] and provides a superset of the capabilities of the RMON alarm
and event groups.  Conceptually, the key extension is the ability to
allow alarms to be generated for MIB objects that are on another network
element. The Event MIB calls "triggers" what the RMON MIB called
"alarms," but the concepts are the same.  Event MIB triggers maintain
the RMON handling of thresholds and add the concept of booleans.  Event
MIB events maintain the RMON concept of sending an SNMP notification in
response to a trigger and add the concept of setting a MIB object.

The Event MIB is the successor and update to SNMPv2's Manager-to-Manager
MIB [RFC1451] which was declared Historic pending this work.

The Event MIB depends on the services of the SNMPv3 Management Target
and Notification MIBs [RFC2573].

The Event MIB is nicely complemented by the Distributed Management
Expression MIB [RFCExpressionMIB], which is the expected source of
boolean objects to monitor.  Note that there is considerable overlap
between the wildcard and delta sample capabilities of the Event and
Expression MIBs.  A carefully-planned implementation might well use
common code to provide the overlapping functions.


5.  MIB Sections

The MIB has four sections: triggers, objects, events, and notifications.
Triggers define the conditions that lead to events.  Events may cause





Expires 7 December 2000                                         [Page 4]





Internet Draft      Distributed Management Event MIB         7 June 2000


notifications.

The trigger table lists what objects are to be monitored and how and
relates each trigger to an event.  It has supplementary, companion
tables for additional objects that depend on the type of test done for
the trigger.

The objects table lists objects that can be added to notifications based
on the trigger, the trigger test type, or the event that resulted in the
notification.

The event table defines what happens when an event is triggered: sending
a notification, setting a MIB object or both.  It has supplementary,
companion tables for additional objects that depend on the action taken.

The notification section defines a set of generic notifications to go
with the events and for Event MIB error handling, and it defines a set
of objects to put in those notifications.
































Expires 7 December 2000                                         [Page 5]





Internet Draft      Distributed Management Event MIB         7 June 2000


The following diagram describes the relationships between the tables
in the Event MIB.


+-----------------------------+
| mteTriggerEntry             |      subclassed by:
|  { mteOwner,                |---+
|    IMPLIED mteTriggerName } |   +-- mteTriggerDeltaEntry
|                             |   |
|                             |   +-- mteTriggerExistenceEntry
|                             |   |
|                             |   +-- mteTriggerBooleanEntry
|                             |   |
|                             |   +-- mteTriggerThresholdEntry
|                             |
|       mteTrigger*Event -------------------------------->+
|                             |                           |
|       mteTriggerObjects ------------------>+            |
+-----------------------------+              |            |
                                             |            |
+-----------------------------+              V            |
| mteObjectsEntry             |              |            |
|  { mteOwner,                |<-------------+            |
|    mteObjectsName,          |                           |
|    mteObjectsIndex }        |                           |
+-----------------------------+                           |
                                                          V
+---------------------------+                             |
| mteEventEntry             |<----------------------------+
|  { mteOwner,              |
|    IMPLIED mteEventName } |
|                           |
|            mteEventAction---> + (condition)
+---------------------------+   |
                                V
+---------------------------+   |   +---------------------------+
| mteEventNotificationEntry |   |   | mteEventSetEntry          |
|  { mteOwner,              |<--+-->|  { mteOwner,              |
|    IMPLIED mteEventName } |       |    IMPLIED mteEventName } |
+---------------------------+       +---------------------------+










Expires 7 December 2000                                         [Page 6]





Internet Draft      Distributed Management Event MIB         7 June 2000


6.  Operation

The Event MIB is instrumentation for a distributed management
application that monitors MIB objects.  In its simplest form this
application monitors individual, local MIB objects, just as an RMON
probe fulfills the functions implied by RMON's alarm and event
operation.  Additionally the application can monitor remote objects and
wildcarded groups of objects.

Remote monitoring uses the tag service of the Management Target MIB
[RFC2573] to select and access remote systems as an ordinary SNMP-based
management application.  Local monitoring may be via a more intimate,
local interface which may, for example, bypass SNMP encoding but
otherwise is functionally identical to remote SNMP operation, including
the application of access control.  A self-management only system MAY
not implement remote monitoring.

Wildcards indicate that the application SHOULD use a GetNext-type
operation to find the zero or more instances implied by a truncated
object identifier, just like an ordinary SNMP-based management
application.  Each instance of a wildcard is treated as if it were a
separate entry, that is the instances of a wildcarded object are
independent of one another.  For example, a wild-carded object may
trigger an event, and result in the setting of another wildcarded
object.  The instance that satisfied the trigger function is used to
perform the set function.  All of this takes place independently of any
additional instances that may fill the wildcard.

Error handling is by notification.  These error notifications SHOULD be
enabled only for the diagnosis of problems indicated by error counters.
If minimizing the probability of notification loss is a concern they
SHOULD be transmitted as Inform PDUs as described in the [SNMP-TARGET-
MIB] or directed to a log as described in the Notification Log MIB
[rfcNotificationLogMIB]. Note that this does not mean the Notification
Log MIB is REQUIRED, since in fact notifications usually are not lost,
but that the Notification Log MIB can be helpful with this as well as
other MIBs that include notifications.

Although like most MIBs this one has no explicit controls for the
persistence of the values set in configuring events, a robust, polite
implementation would certainly not force its managing applications to
reconfigure it whenever it resets.

Again, as with most MIBs, it is implementation-specific how a system
provides and manages such persistence.  To speculate, one could imagine,





Expires 7 December 2000                                         [Page 7]





Internet Draft      Distributed Management Event MIB         7 June 2000


for example, that persistence depended on the context in which the
expression was configured, or perhaps system-specific characteristics of
the expression's owner.  Or perhaps everything in a MIB such as this
one, which is clearly aimed at persistent configuration, is
automatically part of a system's other persistent configuration.


7.  Security

Security of Event MIB entries depends on SNMPv3 access control for the
entire MIB or for subsets based on entry owner names.

Security of monitored objects for remote access depends on the
Management Target MIB [RFC2573].  Security for local access can depend
on the Management Target MIB or on recording appropriate security
credentials of the creator of an entry and using those to access the
local objects.  These security credentials are the parameters necessary
as inputs to isAccessAllowed from the Architecture for Describing SNMP
Management Frameworks.  When accessing local objects without using a
local target tag, the system MUST (conceptually) use isAccessAllowed to
ensure that it does not violate security.

To facilitate the provisioning of access control by a security
administrator for this MIB itself using the View-Based Access Control
Model (VACM) defined in RFC 2275 [RFC2575] 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.

If a security administrator were to employ such an approach, all entries
in related tables 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 sub-identifiers (except for the "column" sub-
identifier) 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 "wildcarding" the column sub-identifier.  More
elaborate configurations are possible.









Expires 7 December 2000                                         [Page 8]





Internet Draft      Distributed Management Event MIB         7 June 2000


8.  Definitions

DISMAN-EVENT-MIB DEFINITIONS ::= BEGIN

IMPORTS
    MODULE-IDENTITY, OBJECT-TYPE,
    Integer32, Unsigned32,
    NOTIFICATION-TYPE, Counter32,
    Gauge32, mib-2, zeroDotZero         FROM SNMPv2-SMI
    TEXTUAL-CONVENTION, RowStatus,
    TruthValue                FROM SNMPv2-TC
    MODULE-COMPLIANCE, OBJECT-GROUP,
    NOTIFICATION-GROUP             FROM SNMPv2-CONF
    sysUpTime                 FROM SNMPv2-MIB
    SnmpTagValue              FROM SNMP-TARGET-MIB
    SnmpAdminString           FROM SNMP-FRAMEWORK-MIB;

dismanEventMIB MODULE-IDENTITY
    LAST-UPDATED "200006070000Z"            -- 7 June 2000
    ORGANIZATION "IETF Distributed Management Working Group"
    CONTACT-INFO "Ramanathan Kavasseri
                  Cisco Systems, Inc.
                  170 West Tasman Drive,
                  San Jose CA 95134-1706.
                  Phone: +1 408 526 4527
                  Email: ramk@cisco.com"
    DESCRIPTION
     "The MIB module for defining event triggers and actions
     for network management purposes."
-- Revision History

       REVISION     "200006070000Z"            -- 7 June 2000
       DESCRIPTION  "This is the initial version of this MIB.
                    Published as RFC xxxx"
    ::= { mib-2 xx } -- final assignment by IANA at publication time

dismanEventMIBObjects OBJECT IDENTIFIER ::= { dismanEventMIB 1 }

-- Management Triggered Event (MTE) objects

mteResource           OBJECT IDENTIFIER ::= { dismanEventMIBObjects 1 }
mteTrigger            OBJECT IDENTIFIER ::= { dismanEventMIBObjects 2 }
mteObjects            OBJECT IDENTIFIER ::= { dismanEventMIBObjects 3 }
mteEvent              OBJECT IDENTIFIER ::= { dismanEventMIBObjects 4 }






Expires 7 December 2000                                         [Page 9]





Internet Draft      Distributed Management Event MIB         7 June 2000


--
-- Textual Conventions
--

FailureReason ::= TEXTUAL-CONVENTION
    STATUS      current
    DESCRIPTION
        "Reasons for failures in an attempt to perform a management
        request.

        The first group of errors, numbered less than 0, are related
        to problems in sending the request.  The existence of a
        particular error code here does not imply that all
        implementations are capable of sensing that error and
        returning that code.

        The second group, numbered greater than 0, are copied
        directly from SNMP protocol operations and are intended to
        carry exactly the meanings defined for the protocol as returned
        in an SNMP response.

        localResourceLack       some local resource such as memory lacking
                                or mteResourceSampleInstanceMaximum
                                exceeded
        badDestination          unrecognized domain name or otherwise
                                invalid destination address
        destinationUnreachable  can't get to destination address
        noResponse              no response to SNMP request
        badType                 the data syntax of a retrieved object
                                as not as expected
        sampleOverrun           another sample attempt occurred before
                                the previous one completed"

    SYNTAX      INTEGER { localResourceLack(-1),
                          badDestination(-2),
                          destinationUnreachable(-3),
                          noResponse(-4),
                          badType(-5),
                          sampleOverrun(-6),

                          noError(0),

                          tooBig(1),
                          noSuchName(2),
                          badValue(3),





Expires 7 December 2000                                        [Page 10]





Internet Draft      Distributed Management Event MIB         7 June 2000


                          readOnly(4),
                          genErr(5),
                          noAccess(6),
                          wrongType(7),
                          wrongLength(8),
                          wrongEncoding(9),
                          wrongValue(10),
                          noCreation(11),
                          inconsistentValue(12),
                          resourceUnavailable(13),
                          commitFailed(14),
                          undoFailed(15),
                          authorizationError(16),
                          notWritable(17),
                          inconsistentName(18) }
--
-- Resource Control Section
--

mteResourceSampleMinimum OBJECT-TYPE
    SYNTAX      Integer32 (1..2147483647)
    UNITS       "seconds"
    MAX-ACCESS  read-write
    STATUS      current
    DESCRIPTION
        "The minimum mteTriggerFrequency this system will
        accept.  A system may use the larger values of this minimum to
        lessen the impact of constant sampling.  For larger
        sampling intervals the system samples less often and
        suffers less overhead.  This object provides a way to enforce
        such lower overhead for all triggers created after it is
        set.

        Unless explicitly resource limited, a system's value for
        this object SHOULD be 1, allowing as small as a 1 second
        interval for ongoing trigger sampling.

        Changing this value will not invalidate an existing setting
        of mteTriggerFrequency."
    ::= { mteResource 1 }

mteResourceSampleInstanceMaximum OBJECT-TYPE
    SYNTAX      Unsigned32
    UNITS       "instances"
    MAX-ACCESS  read-write





Expires 7 December 2000                                        [Page 11]





Internet Draft      Distributed Management Event MIB         7 June 2000


    STATUS      current
    DESCRIPTION
        "The maximum number of instance entries this system will
        support for sampling.

        These are the entries that maintain state, one for each
        instance of each sampled object as selected by
        mteTriggerValueID.  Note that wildcarded objects result
        in multiple instances of this state.

        A value of 0 indicates no preset limit, that is, the limit
        is dynamic based on system operation and resources.

        Unless explicitly resource limited, a system's value for
        this object SHOULD be 0.

        Changing this value will not eliminate or inhibit existing
        sample state but could prevent allocation of additional state
        information."
    ::= { mteResource 2 }

mteResourceSampleInstances OBJECT-TYPE
    SYNTAX      Gauge32
    UNITS       "instances"
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "The number of currently active instance entries as
        defined for mteResourceSampleInstanceMaximum."
    ::= { mteResource 3 }

mteResourceSampleInstancesHigh OBJECT-TYPE
    SYNTAX      Gauge32
    UNITS       "instances"
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "The highest value of mteResourceSampleInstances that has
        occurred since initialization of the management system."
    ::= { mteResource 4 }

mteResourceSampleInstanceLacks OBJECT-TYPE
    SYNTAX      Counter32
    UNITS       "instances"
    MAX-ACCESS  read-only





Expires 7 December 2000                                        [Page 12]





Internet Draft      Distributed Management Event MIB         7 June 2000


    STATUS      current
    DESCRIPTION
        "The number of times this system could not take a new sample
        because that allocation would have exceeded the limit set by
        mteResourceSampleInstanceMaximum."
    ::= { mteResource 5 }


--
-- Trigger Section
--

-- Counters

mteTriggerFailures OBJECT-TYPE
    SYNTAX      Counter32
    UNITS       "failures"
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "The number of times an attempt to check for a trigger
        condition has failed.  This counts individually for each
        attempt in a group of targets or each attempt for a
        wildcarded object."
    ::= { mteTrigger 1 }


--
-- Trigger Table
--

mteTriggerTable OBJECT-TYPE
    SYNTAX      SEQUENCE OF MteTriggerEntry
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
        "A table of management event trigger information."
    ::= { mteTrigger 2 }

mteTriggerEntry OBJECT-TYPE
    SYNTAX      MteTriggerEntry
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
        "Information about a single trigger.  Applications create and





Expires 7 December 2000                                        [Page 13]





Internet Draft      Distributed Management Event MIB         7 June 2000


        delete entries using mteTriggerEntryStatus."
    INDEX       { mteOwner, IMPLIED mteTriggerName }
    ::= { mteTriggerTable 1 }

MteTriggerEntry ::= SEQUENCE {
    mteOwner                            SnmpAdminString,
    mteTriggerName                      SnmpAdminString,
    mteTriggerComment                   SnmpAdminString,
    mteTriggerTest                      BITS,
    mteTriggerSampleType                INTEGER,
    mteTriggerValueID                   OBJECT IDENTIFIER,
    mteTriggerValueIDWildcard           TruthValue,
    mteTriggerTargetTag                 SnmpTagValue,
    mteTriggerContextName               SnmpAdminString,
    mteTriggerContextNameWildcard       TruthValue,
    mteTriggerFrequency                 Unsigned32,
    mteTriggerObjectsOwner              SnmpAdminString,
    mteTriggerObjects                   SnmpAdminString,
    mteTriggerEnabled                   TruthValue,
    mteTriggerEntryStatus               RowStatus
}

mteOwner OBJECT-TYPE
   SYNTAX      SnmpAdminString (SIZE(0..32))
   MAX-ACCESS  not-accessible
   STATUS      current
   DESCRIPTION
        "The owner of this entry. The exact semantics of this
        string are subject to the security policy defined by the
        security administrator."
    ::= { mteTriggerEntry 1 }

mteTriggerName OBJECT-TYPE
    SYNTAX      SnmpAdminString (SIZE (1..32))
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
        "A locally-unique, administratively assigned name for the
        trigger within the scope of mteOwner."
    ::= { mteTriggerEntry 2 }

mteTriggerComment OBJECT-TYPE
    SYNTAX      SnmpAdminString
    MAX-ACCESS  read-create
    STATUS      current





Expires 7 December 2000                                        [Page 14]





Internet Draft      Distributed Management Event MIB         7 June 2000


    DESCRIPTION
        "A description of the trigger's function and use."
    DEFVAL { ''H }
    ::= { mteTriggerEntry 3 }

mteTriggerTest OBJECT-TYPE
    SYNTAX      BITS { existence(0), boolean(1), threshold(2) }
    MAX-ACCESS  read-create
    STATUS      current
    DESCRIPTION
        "The type of trigger test to perform.  For 'boolean' and
        'threshold'  tests, the object at mteTriggerValueID MUST
        evaluate to an integer, that is, anything that ends up encoded
        for transmission (that is, in BER, not ASN.1) as an integer.

        For 'existence', the specific test is as selected by
        mteTriggerExistenceTest.  When an object appears, vanishes
        or changes value, the trigger fires. If the object's
        appearance caused the trigger firing, the object MUST
        vanish before the trigger can be fired again for it, and
        vice versa. If the trigger fired due to a change in the
        object's value, it will be fired again on every successive
        value change for that object.

        For 'boolean', the specific test is as selected by
        mteTriggerBooleanTest.  If the test result is true the trigger
        fires.  The trigger will not fire again until the value has
        become false and come back to true.

        For 'threshold' the test works as described below for
        mteTriggerThresholdStartup, mteTriggerThresholdRising, and
        mteTriggerThresholdFalling.

        Note that combining 'boolean' and 'threshold' tests on the
        same object may be somewhat redundant."
    DEFVAL { { boolean } }
    ::= { mteTriggerEntry 4 }

mteTriggerSampleType OBJECT-TYPE
    SYNTAX      INTEGER { absoluteValue(1), deltaValue(2) }
    MAX-ACCESS  read-create
    STATUS      current
    DESCRIPTION
        "The type of sampling to perform.






Expires 7 December 2000                                        [Page 15]





Internet Draft      Distributed Management Event MIB         7 June 2000


        An 'absoluteValue' sample requires only a single sample to be
        meaningful, and is exactly the value of the object at
        mteTriggerValueID at the sample time.

        A 'deltaValue' requires two samples to be meaningful and is
        thus not available for testing until the second and subsequent
        samples after the object at mteTriggerValueID is first found
        to exist.  It is the difference between the two samples.  For
        unsigned values it is always positive, based on unsigned
        arithmetic.  For signed values it can be positive or negative.

        For SNMP counters to be meaningful they should be sampled as a
        'deltaValue'.

        For 'deltaValue' mteTriggerDeltaTable contains further
        parameters.

        If only 'existence' is set in mteTriggerTest this object has
        no meaning."
    DEFVAL { absoluteValue }
    ::= { mteTriggerEntry 5 }

mteTriggerValueID OBJECT-TYPE
    SYNTAX      OBJECT IDENTIFIER
    MAX-ACCESS  read-create
    STATUS      current
    DESCRIPTION
        "The object identifier of the MIB object to sample to see
        if the trigger should fire.

        This may be wildcarded by truncating all or part of the
        instance portion, in which case the value is obtained
        as if with a GetNext function, checking multiple values
        if they exist.  If such wildcarding is applied,
        mteTriggerValueIDWildcard must be 'true' and if not it must
        be 'false'.

        Bad object identifiers or a mismatch between truncating the
        identifier and the value of mteTriggerValueIDWildcard result
        in operation as one would expect when providing the wrong
        identifier to a Get or GetNext operation.  The Get will fail
        or get the wrong object.  The GetNext will indeed get whatever
        is next, proceeding until it runs past the initial part of the
        identifier and perhaps many unintended objects for confusing
        results.  If the value syntax of those objects is not usable,





Expires 7 December 2000                                        [Page 16]





Internet Draft      Distributed Management Event MIB         7 June 2000


        that results in a 'badType' error that terminates the scan.

        Each instance that fills the wildcard is independent of any
        additional instances, that is, wildcarded objects operate
        as if there were a separate table entry for each instance
        that fills the wildcard without having to actually predict
        all possible instances ahead of time."
    DEFVAL { zeroDotZero }
    ::= { mteTriggerEntry 6 }

mteTriggerValueIDWildcard OBJECT-TYPE
    SYNTAX      TruthValue
    MAX-ACCESS  read-create
    STATUS      current
    DESCRIPTION
        "Control for whether mteTriggerValueID is to be treated as
        fully-specified or wildcarded, with 'true' indicating wildcard."
    DEFVAL { false }
    ::= { mteTriggerEntry 7 }

mteTriggerTargetTag OBJECT-TYPE
    SYNTAX      SnmpTagValue
    MAX-ACCESS  read-create
    STATUS      current
    DESCRIPTION
        "The tag for the target(s) from which to obtain the condition
        for a trigger check.

        A length of 0 indicates the local system.  In this case,
        access to the objects indicated by mteTriggerValueID is under
        the security credentials of the requester that set
        mteTriggerEntryStatus to 'active'.  Those credentials are the
        input parameters for isAccessAllowed from the Architecture for
        Describing SNMP Management Frameworks.

        Otherwise access rights are checked according to the security
        parameters resulting from the tag."
    DEFVAL { ''H }
    ::= { mteTriggerEntry 8 }

mteTriggerContextName OBJECT-TYPE
    SYNTAX      SnmpAdminString
    MAX-ACCESS  read-create
    STATUS      current
    DESCRIPTION





Expires 7 December 2000                                        [Page 17]





Internet Draft      Distributed Management Event MIB         7 June 2000


        "The management context from which to obtain mteTriggerValueID.

        This may be wildcarded by leaving characters off the end.  For
        example use 'Repeater' to wildcard to 'Repeater1',
        'Repeater2', 'Repeater-999.87b', and so on.  To indicate such
        wildcarding is intended, mteTriggerContextNameWildcard must
        be 'true'.

        Each instance that fills the wildcard is independent of any
        additional instances, that is, wildcarded objects operate
        as if there were a separate table entry for each instance
        that fills the wildcard without having to actually predict
        all possible instances ahead of time.

        Operation of this feature assumes that the local system has a
        list of available contexts against which to apply the
        wildcard.  If the objects are being read from the local
        system, this is clearly the system's own list of contexts.
        For a remote system a local version of such a list is not
        defined by any current standard and may not be available, so
        this function MAY not be supported."
    DEFVAL { ''H }
    ::= { mteTriggerEntry 9 }

mteTriggerContextNameWildcard OBJECT-TYPE
    SYNTAX      TruthValue
    MAX-ACCESS  read-create
    STATUS      current
    DESCRIPTION
        "Control for whether mteTriggerContextName is to be treated as
        fully-specified or wildcarded, with 'true' indicating wildcard."
    DEFVAL { false }
    ::= { mteTriggerEntry 10 }

mteTriggerFrequency OBJECT-TYPE
    SYNTAX      Unsigned32
    UNITS       "seconds"
    MAX-ACCESS  read-create
    STATUS      current
    DESCRIPTION
        "The number of seconds to wait between trigger samples.  To
        encourage consistency in sampling, the interval is measured
        from the beginning of one check to the beginning of the next
        and the timer is restarted immediately when it expires, not
        when the check completes.





Expires 7 December 2000                                        [Page 18]





Internet Draft      Distributed Management Event MIB         7 June 2000


        If the next sample begins before the previous one completed the
        system may either attempt to make the check or treat this as an
        error condition with the error 'sampleOverrun'.

        A frequency of 0 indicates instantaneous recognition of the
        condition.  This is not possible in many cases, but may
        be supported in cases where it makes sense and the system is
        able to do so.  This feature allows the MIB to be used in
        implementations where such interrupt-driven behavior is
        possible and is not likely to be supported for all MIB objects
        even then since such sampling generally has to be tightly
        integrated into low-level code.

        Systems that can support this SHOULD document those cases
        where it can be used.  In cases where it can not, setting this
        object to 0 should be disallowed."
    DEFVAL { 600 }
    ::= { mteTriggerEntry 11 }

mteTriggerObjectsOwner OBJECT-TYPE
    SYNTAX      SnmpAdminString (SIZE (0..32))
    MAX-ACCESS  read-create
    STATUS      current
    DESCRIPTION
        "To go with mteTriggerObjects, the mteOwner of a group of
        objects from mteObjectsTable."
    DEFVAL { ''H }
    ::= { mteTriggerEntry 12 }

mteTriggerObjects OBJECT-TYPE
    SYNTAX      SnmpAdminString (SIZE (0..32))
    MAX-ACCESS  read-create
    STATUS      current
    DESCRIPTION
        "The mteObjectsName of a group of objects from
        mteObjectsTable.  These objects are to be added to any
        Notification resulting from the firing of this trigger.

        A list of objects may also be added based on the event or on
        the value of mteTriggerTest.

        A length of 0 indicates no additional objects."
    DEFVAL { ''H }
    ::= { mteTriggerEntry 13 }






Expires 7 December 2000                                        [Page 19]





Internet Draft      Distributed Management Event MIB         7 June 2000


mteTriggerEnabled OBJECT-TYPE
    SYNTAX      TruthValue
    MAX-ACCESS  read-create
    STATUS      current
    DESCRIPTION
        "A control to allow a trigger to be configured but not used.
        When the value is 'false' the trigger is not sampled."
    DEFVAL { false }
    ::= { mteTriggerEntry 14 }

mteTriggerEntryStatus OBJECT-TYPE
    SYNTAX      RowStatus
    MAX-ACCESS  read-create
    STATUS      current
    DESCRIPTION
        "The control that allows creation and deletion of entries.
        Once made active an entry may not be modified except to
        delete it."
    ::= { mteTriggerEntry 15 }


--
-- Trigger Delta Table
--

mteTriggerDeltaTable OBJECT-TYPE
    SYNTAX      SEQUENCE OF MteTriggerDeltaEntry
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
        "A table of management event trigger information for delta
        sampling."
    ::= { mteTrigger 3 }

mteTriggerDeltaEntry OBJECT-TYPE
    SYNTAX      MteTriggerDeltaEntry
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
        "Information about a single trigger's delta sampling.  Entries
        automatically exist in this this table for each mteTriggerEntry
        that has mteTriggerSampleType set to 'deltaValue'."
    INDEX       { mteOwner, IMPLIED mteTriggerName }
    ::= { mteTriggerDeltaTable 1 }






Expires 7 December 2000                                        [Page 20]





Internet Draft      Distributed Management Event MIB         7 June 2000


MteTriggerDeltaEntry ::= SEQUENCE {
    mteTriggerDeltaDiscontinuityID                OBJECT IDENTIFIER,
    mteTriggerDeltaDiscontinuityIDWildcard        TruthValue,
    mteTriggerDeltaDiscontinuityIDType            INTEGER
}


sysUpTimeInstance OBJECT IDENTIFIER ::= { sysUpTime 0 }

mteTriggerDeltaDiscontinuityID OBJECT-TYPE
    SYNTAX      OBJECT IDENTIFIER
    MAX-ACCESS  read-write
    STATUS      current
    DESCRIPTION
        "The OBJECT IDENTIFIER (OID) of a TimeTicks, TimeStamp, or
        DateAndTime object that indicates a discontinuity in the value
        at mteTriggerValueID.

        The OID may be for a leaf object (e.g. sysUpTime.0) or may
        be wildcarded to match mteTriggerValueID.

        This object supports normal checking for a discontinuity in a
        counter.  Note that if this object does not point to sysUpTime
        discontinuity checking MUST still check sysUpTime for an overall
        discontinuity.

        If the object identified is not accessible the sample attempt
        is in error, with the error code as from an SNMP request.

        Bad object identifiers or a mismatch between truncating the
        identifier and the value of mteDeltaDiscontinuityIDWildcard
        result in operation as one would expect when providing the
        wrong identifier to a Get operation.  The Get will fail or get
        the wrong object.  If the value syntax of those objects is not
        usable, that results in an error that terminates the sample
        with a 'badType' error code."
    DEFVAL { sysUpTimeInstance }
    ::= { mteTriggerDeltaEntry 1 }

mteTriggerDeltaDiscontinuityIDWildcard OBJECT-TYPE
     SYNTAX      TruthValue
     MAX-ACCESS  read-write
     STATUS      current
     DESCRIPTION
        "Control for whether mteTriggerDeltaDiscontinuityID is to be





Expires 7 December 2000                                        [Page 21]





Internet Draft      Distributed Management Event MIB         7 June 2000


        treated as fully-specified or wildcarded, with 'true'
        indicating wildcard. Note that the value of this object will
        be the same as that of the corresponding instance of
        mteTriggerValueIDWildcard when the corresponding
        mteTriggerSampleType is 'deltaValue'."
    DEFVAL { false }
    ::= { mteTriggerDeltaEntry 2 }

mteTriggerDeltaDiscontinuityIDType OBJECT-TYPE
    SYNTAX      INTEGER { timeTicks(1), timeStamp(2), dateAndTime(3) }
    MAX-ACCESS  read-write
    STATUS      current
    DESCRIPTION
        "The value 'timeTicks' indicates the
        mteTriggerDeltaDiscontinuityID of this row is of syntax
        TimeTicks.  The value 'timeStamp' indicates syntax TimeStamp.
        The value 'dateAndTime' indicates syntax DateAndTime."
    DEFVAL { timeTicks }
    ::= { mteTriggerDeltaEntry 3 }


--
-- Trigger Existence Table
--

mteTriggerExistenceTable OBJECT-TYPE
    SYNTAX      SEQUENCE OF MteTriggerExistenceEntry
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
        "A table of management event trigger information for existence
        triggers."
    ::= { mteTrigger 4 }

mteTriggerExistenceEntry OBJECT-TYPE
    SYNTAX      MteTriggerExistenceEntry
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
        "Information about a single existence trigger.  Entries
        automatically exist in this this table for each mteTriggerEntry
        that has 'existence' set in mteTriggerTest."
    INDEX       { mteOwner, IMPLIED mteTriggerName }
    ::= { mteTriggerExistenceTable 1 }






Expires 7 December 2000                                        [Page 22]





Internet Draft      Distributed Management Event MIB         7 June 2000


MteTriggerExistenceEntry ::= SEQUENCE {
    mteTriggerExistenceTest              BITS,
    mteTriggerExistenceStartup           BITS,
    mteTriggerExistenceObjectsOwner      SnmpAdminString,
    mteTriggerExistenceObjects           SnmpAdminString,
    mteTriggerExistenceEventOwner        SnmpAdminString,
    mteTriggerExistenceEvent             SnmpAdminString
}

mteTriggerExistenceTest OBJECT-TYPE
    SYNTAX      BITS { present(0), absent(1), changed(2) }
    MAX-ACCESS  read-write
    STATUS      current
    DESCRIPTION
        "The type of existence test to perform.  The trigger fires
        when the object at mteTriggerValueID is seen to go from
        present to absent, from absent to present, or to have it's
        value changed, depending on which tests are selected:

        present(0) - when this test is selected, the trigger fires
        when the mteTriggerValueID object goes from absent to present.

        absent(1)  - when this test is selected, the trigger fires
        when the mteTriggerValueID object goes from present to absent.
        changed(2) - when this test is selected, the trigger fires
        the mteTriggerValueID object value changes.

        Once the trigger has fired for either presence or absence it
        will not fire again for that state until the object has been
        to the other state. "
    DEFVAL { { present, absent } }
    ::= { mteTriggerExistenceEntry 1 }

mteTriggerExistenceStartup OBJECT-TYPE
    SYNTAX      BITS { present(0), absent(1) }
    MAX-ACCESS  read-write
    STATUS      current
    DESCRIPTION
        "Control for whether an event may be triggered when this entry
        is first set to 'active' and the test specified by
        mteTriggerExistenceTest is true.  Setting an option causes
        that trigger to fire when its test is true."
    DEFVAL { { present, absent } }
    ::= { mteTriggerExistenceEntry 2 }






Expires 7 December 2000                                        [Page 23]





Internet Draft      Distributed Management Event MIB         7 June 2000


mteTriggerExistenceObjectsOwner OBJECT-TYPE
    SYNTAX      SnmpAdminString (SIZE (0..32))
    MAX-ACCESS  read-write
    STATUS      current
    DESCRIPTION
        "To go with mteTriggerExistenceObjects, the mteOwner of a
        group of objects from mteObjectsTable."
    DEFVAL { ''H }
    ::= { mteTriggerExistenceEntry 3 }

mteTriggerExistenceObjects OBJECT-TYPE
    SYNTAX      SnmpAdminString (SIZE (0..32))
    MAX-ACCESS  read-write
    STATUS      current
    DESCRIPTION
        "The mteObjectsName of a group of objects from
        mteObjectsTable.  These objects are to be added to any
        Notification resulting from the firing of this trigger for
        this test.

        A list of objects may also be added based on the overall
        trigger, the event or other settings in mteTriggerTest.

        A length of 0 indicates no additional objects."
    DEFVAL { ''H }
    ::= { mteTriggerExistenceEntry 4 }

mteTriggerExistenceEventOwner OBJECT-TYPE
    SYNTAX      SnmpAdminString (SIZE (0..32))
    MAX-ACCESS  read-write
    STATUS      current
    DESCRIPTION
        "To go with mteTriggerExistenceEvent, the mteOwner of an event
        entry from the mteEventTable."
    DEFVAL { ''H }
    ::= { mteTriggerExistenceEntry 5 }

mteTriggerExistenceEvent OBJECT-TYPE
    SYNTAX      SnmpAdminString (SIZE (0..32))
    MAX-ACCESS  read-write
    STATUS      current
    DESCRIPTION
        "The mteEventName of the event to invoke when mteTriggerType is
        'existence' and this trigger fires.  A length of 0 indicates no
        event."





Expires 7 December 2000                                        [Page 24]





Internet Draft      Distributed Management Event MIB         7 June 2000


    DEFVAL { ''H }
    ::= { mteTriggerExistenceEntry 6 }


--
-- Trigger Boolean Table
--

mteTriggerBooleanTable OBJECT-TYPE
    SYNTAX      SEQUENCE OF MteTriggerBooleanEntry
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
        "A table of management event trigger information for boolean
        triggers."
    ::= { mteTrigger 5 }

mteTriggerBooleanEntry OBJECT-TYPE
    SYNTAX      MteTriggerBooleanEntry
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
        "Information about a single boolean trigger.  Entries
        automatically exist in this this table for each mteTriggerEntry
        that has 'boolean' set in mteTriggerTest."
    INDEX       { mteOwner, IMPLIED mteTriggerName }
    ::= { mteTriggerBooleanTable 1 }

MteTriggerBooleanEntry ::= SEQUENCE {
    mteTriggerBooleanComparison          INTEGER,
    mteTriggerBooleanValue               Integer32,
    mteTriggerBooleanStartup             TruthValue,
    mteTriggerBooleanObjectsOwner        SnmpAdminString,
    mteTriggerBooleanObjects             SnmpAdminString,
    mteTriggerBooleanEventOwner          SnmpAdminString,
    mteTriggerBooleanEvent               SnmpAdminString
}

mteTriggerBooleanComparison OBJECT-TYPE
    SYNTAX      INTEGER { unequal(1), equal(2),
                 less(3), lessOrEqual(4),
                 greater(5), greaterOrEqual(6) }
    MAX-ACCESS  read-write
    STATUS      current
    DESCRIPTION





Expires 7 December 2000                                        [Page 25]





Internet Draft      Distributed Management Event MIB         7 June 2000


        "The type of boolean comparison to perform.

        The value at mteTriggerValueID is compared to
        mteTriggerBooleanValue, so for example if
        mteTriggerBooleanComparison is 'less' the result would be true
        if the value at mteTriggerValueID is less than the value of
        mteTriggerBooleanValue."
    DEFVAL { unequal }
    ::= { mteTriggerBooleanEntry 1 }

mteTriggerBooleanValue OBJECT-TYPE
    SYNTAX      Integer32
    MAX-ACCESS  read-write
    STATUS      current
    DESCRIPTION
        "The value to use for the test specified by
        mteTriggerBooleanTest."
    DEFVAL { 0 }
    ::= { mteTriggerBooleanEntry 2 }

mteTriggerBooleanStartup OBJECT-TYPE
    SYNTAX      TruthValue
    MAX-ACCESS  read-write
    STATUS      current
    DESCRIPTION
        "Control for whether an event may be triggered when this entry
        is first set to 'active' or a new instance of the object at
        mteTriggerValueID is found and the test specified by
        mteTriggerBooleanComparison is true.  In that case an event is
        triggered if mteTriggerBooleanStartup is 'true'."
    DEFVAL { true }
    ::= { mteTriggerBooleanEntry 3 }

mteTriggerBooleanObjectsOwner OBJECT-TYPE
    SYNTAX      SnmpAdminString (SIZE (0..32))
    MAX-ACCESS  read-write
    STATUS      current
    DESCRIPTION
        "To go with mteTriggerBooleanObjects, the mteOwner of a group
        of objects from mteObjectsTable."
    DEFVAL { ''H }
    ::= { mteTriggerBooleanEntry 4 }

mteTriggerBooleanObjects OBJECT-TYPE
    SYNTAX      SnmpAdminString (SIZE (0..32))





Expires 7 December 2000                                        [Page 26]





Internet Draft      Distributed Management Event MIB         7 June 2000


    MAX-ACCESS  read-write
    STATUS      current
    DESCRIPTION
        "The mteObjectsName of a group of objects from
        mteObjectsTable.  These objects are to be added to any
        Notification resulting from the firing of this trigger for
        this test.

        A list of objects may also be added based on the overall
        trigger, the event or other settings in mteTriggerTest.

        A length of 0 indicates no additional objects."
    DEFVAL { ''H }
    ::= { mteTriggerBooleanEntry 5 }

mteTriggerBooleanEventOwner OBJECT-TYPE
    SYNTAX      SnmpAdminString (SIZE (0..32))
    MAX-ACCESS  read-write
    STATUS      current
    DESCRIPTION
        "To go with mteTriggerBooleanEvent, the mteOwner of an event
        entry from mteEventTable."
    DEFVAL { ''H }
    ::= { mteTriggerBooleanEntry 6 }

mteTriggerBooleanEvent OBJECT-TYPE
    SYNTAX      SnmpAdminString (SIZE (0..32))
    MAX-ACCESS  read-write
    STATUS      current
    DESCRIPTION
        "The mteEventName of the event to invoke when mteTriggerType is
        'boolean' and this trigger fires.  A length of 0 indicates no
        event."
    DEFVAL { ''H }
    ::= { mteTriggerBooleanEntry 7 }


--
-- Trigger Threshold Table
--

mteTriggerThresholdTable OBJECT-TYPE
    SYNTAX      SEQUENCE OF MteTriggerThresholdEntry
    MAX-ACCESS  not-accessible
    STATUS      current





Expires 7 December 2000                                        [Page 27]





Internet Draft      Distributed Management Event MIB         7 June 2000


    DESCRIPTION
        "A table of management event trigger information for threshold
        triggers."
    ::= { mteTrigger 6 }

mteTriggerThresholdEntry OBJECT-TYPE
    SYNTAX      MteTriggerThresholdEntry
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
        "Information about a single threshold trigger.  Entries
        automatically exist in this table for each mteTriggerEntry
        that has 'threshold' set in mteTriggerTest."
    INDEX       { mteOwner, IMPLIED mteTriggerName }
    ::= { mteTriggerThresholdTable 1 }

MteTriggerThresholdEntry ::= SEQUENCE {
    mteTriggerThresholdStartup                  INTEGER,
    mteTriggerThresholdRising                   Integer32,
    mteTriggerThresholdFalling                  Integer32,
    mteTriggerThresholdDeltaRising              Integer32,
    mteTriggerThresholdDeltaFalling             Integer32,
    mteTriggerThresholdObjectsOwner             SnmpAdminString,
    mteTriggerThresholdObjects                  SnmpAdminString,
    mteTriggerThresholdRisingEventOwner         SnmpAdminString,
    mteTriggerThresholdRisingEvent              SnmpAdminString,
    mteTriggerThresholdFallingEventOwner        SnmpAdminString,
    mteTriggerThresholdFallingEvent             SnmpAdminString,
    mteTriggerThresholdDeltaRisingEventOwner    SnmpAdminString,
    mteTriggerThresholdDeltaRisingEvent         SnmpAdminString,
    mteTriggerThresholdDeltaFallingEventOwner   SnmpAdminString,
    mteTriggerThresholdDeltaFallingEvent        SnmpAdminString
}

mteTriggerThresholdStartup OBJECT-TYPE
    SYNTAX      INTEGER { rising(1), falling(2), risingOrFalling(3) }
    MAX-ACCESS  read-write
    STATUS      current
    DESCRIPTION
        "The event that may be triggered when this entry is first
        set to 'active' and a new instance of the object at
        mteTriggerValueID is found.  If the first sample after this
        instance becomes active is greater than or equal to
        mteTriggerThresholdRising and mteTriggerThresholdStartup is
        equal to 'rising' or 'risingOrFalling', then one





Expires 7 December 2000                                        [Page 28]





Internet Draft      Distributed Management Event MIB         7 June 2000


        mteTriggerThresholdRisingEvent is triggered for that instance.
        If the first sample after this entry becomes active is less
        than or equal to mteTriggerThresholdFalling and
        mteTriggerThresholdStartup is equal to 'falling' or
        'risingOrFalling', then one mteTriggerThresholdRisingEvent is
        triggered for that instance."
    DEFVAL { risingOrFalling }
    ::= { mteTriggerThresholdEntry 1 }

mteTriggerThresholdRising OBJECT-TYPE
    SYNTAX      Integer32
    MAX-ACCESS  read-write
    STATUS      current
    DESCRIPTION
        "A threshold value to check against if mteTriggerType is
        'threshold'.

        When the current sampled value is greater than or equal to
        this threshold, and the value at the last sampling interval
        was less than this threshold, one
        mteTriggerThresholdRisingEvent is triggered.  That event is
        also triggered if the first sample after this entry becomes
        active is greater than or equal to this threshold and
        mteTriggerThresholdStartup is equal to 'rising' or
        'risingOrFalling'.

        After a rising event is generated, another such event is not
        triggered until the sampled value falls below this threshold
        and reaches mteTriggerThresholdFalling."
    DEFVAL { 0 }
    ::= { mteTriggerThresholdEntry 2 }

mteTriggerThresholdFalling OBJECT-TYPE
    SYNTAX      Integer32
    MAX-ACCESS  read-write
    STATUS      current
    DESCRIPTION
        "A threshold value to check against if mteTriggerType is
        'threshold'.

        When the current sampled value is less than or equal to this
        threshold, and the value at the last sampling interval was
        greater than this threshold, one
        mteTriggerThresholdFallingEvent is triggered.  That event is
        also triggered if the first sample afer this entry becomes





Expires 7 December 2000                                        [Page 29]





Internet Draft      Distributed Management Event MIB         7 June 2000


        active is less than or equal to this threshold and
        mteTriggerThresholdStartup is equal to 'falling' or
        'risingOrFalling'.

        After a falling event is generated, another such event is not
        triggered until the sampled value rises above this threshold
        and reaches mteTriggerThresholdRising."
    DEFVAL { 0 }
    ::= { mteTriggerThresholdEntry 3 }

mteTriggerThresholdDeltaRising OBJECT-TYPE
    SYNTAX      Integer32
    MAX-ACCESS  read-write
    STATUS      current
    DESCRIPTION
        "A threshold value to check against if mteTriggerType is
        'threshold'.

        When the delta value (difference) between the current sampled
        value (value(n)) and the previous sampled value (value(n-1))
        is greater than or equal to this threshold,
        and the delta value calculated at the last sampling interval
        (i.e. value(n-1) - value(n-2)) was less than this threshold,
        one mteTriggerThresholdDeltaRisingEvent is triggered. That event is
        also triggered if the first delta value calculated after this
        entry becomes active, i.e. value(2) - value(1), where value(1)
        is the first sample taken of that instance, is greater than or
        equal to this threshold.

        After a rising event is generated, another such event is not
        triggered until the delta value falls below this threshold and
        reaches mteTriggerThresholdDeltaFalling."
    DEFVAL { 0 }
    ::= { mteTriggerThresholdEntry 4 }

mteTriggerThresholdDeltaFalling OBJECT-TYPE
    SYNTAX      Integer32
    MAX-ACCESS  read-write
    STATUS      current
    DESCRIPTION
        "A threshold value to check against if mteTriggerType is
        'threshold'.

        When the delta value (difference) between the current sampled
        value (value(n)) and the previous sampled value (value(n-1))





Expires 7 December 2000                                        [Page 30]





Internet Draft      Distributed Management Event MIB         7 June 2000


        is less than or equal to this threshold,
        and the delta value calculated at the last sampling interval
        (i.e. value(n-1) - value(n-2)) was greater than this threshold,
        one mteTriggerThresholdDeltaFallingEvent is triggered. That event is
        also triggered if the first delta value calculated after this
        entry becomes active, i.e. value(2) - value(1), where value(1)
        is the first sample taken of that instance, is less than or
        equal to this threshold.

        After a falling event is generated, another such event is not
        triggered until the delta value falls below this threshold and
        reaches mteTriggerThresholdDeltaRising."
    DEFVAL { 0 }
    ::= { mteTriggerThresholdEntry 5 }

mteTriggerThresholdObjectsOwner OBJECT-TYPE
    SYNTAX      SnmpAdminString (SIZE (0..32))
    MAX-ACCESS  read-write
    STATUS      current
    DESCRIPTION
        "To go with mteTriggerThresholdObjects, the mteOwner of a group
        of objects from mteObjectsTable."
    DEFVAL { ''H }
    ::= { mteTriggerThresholdEntry 6 }

mteTriggerThresholdObjects OBJECT-TYPE
    SYNTAX      SnmpAdminString (SIZE (0..32))
    MAX-ACCESS  read-write
    STATUS      current
    DESCRIPTION
        "The mteObjectsName of a group of objects from
        mteObjectsTable.  These objects are to be added to any
        Notification resulting from the firing of this trigger for
        this test.

        A list of objects may also be added based on the overall
        trigger, the event or other settings in mteTriggerTest.

        A length of 0 indicates no additional objects."
    DEFVAL { ''H }
    ::= { mteTriggerThresholdEntry 7 }

mteTriggerThresholdRisingEventOwner OBJECT-TYPE
    SYNTAX      SnmpAdminString (SIZE (0..32))
    MAX-ACCESS  read-write





Expires 7 December 2000                                        [Page 31]





Internet Draft      Distributed Management Event MIB         7 June 2000


    STATUS      current
    DESCRIPTION
        "To go with mteTriggerThresholdRisingEvent, the mteOwner of an
        event entry from mteEventTable."
    DEFVAL { ''H }
    ::= { mteTriggerThresholdEntry 8 }

mteTriggerThresholdRisingEvent OBJECT-TYPE
    SYNTAX      SnmpAdminString (SIZE (0..32))
    MAX-ACCESS  read-write
    STATUS      current
    DESCRIPTION
        "The mteEventName of the event to invoke when mteTriggerType is
        'threshold' and this trigger fires based on
        mteTriggerThresholdRising.  A length of 0 indicates no event."
    DEFVAL { ''H }
    ::= { mteTriggerThresholdEntry 9 }

mteTriggerThresholdFallingEventOwner OBJECT-TYPE
    SYNTAX      SnmpAdminString (SIZE (0..32))
    MAX-ACCESS  read-write
    STATUS      current
    DESCRIPTION
        "To go with mteTriggerThresholdFallingEvent, the mteOwner of an
        event entry from mteEventTable."
    DEFVAL { ''H }
    ::= { mteTriggerThresholdEntry 10 }

mteTriggerThresholdFallingEvent OBJECT-TYPE
    SYNTAX      SnmpAdminString (SIZE (0..32))
    MAX-ACCESS  read-write
    STATUS      current
    DESCRIPTION
        "The mteEventName of the event to invoke when mteTriggerType is
        'threshold' and this trigger fires based on
        mteTriggerThresholdFalling.  A length of 0 indicates no event."
    DEFVAL { ''H }
    ::= { mteTriggerThresholdEntry 11 }

mteTriggerThresholdDeltaRisingEventOwner OBJECT-TYPE
    SYNTAX      SnmpAdminString (SIZE (0..32))
    MAX-ACCESS  read-write
    STATUS      current
    DESCRIPTION
        "To go with mteTriggerThresholdDeltaRisingEvent, the mteOwner





Expires 7 December 2000                                        [Page 32]





Internet Draft      Distributed Management Event MIB         7 June 2000


        of an event entry from mteEventTable."
    DEFVAL { ''H }
    ::= { mteTriggerThresholdEntry 12 }

mteTriggerThresholdDeltaRisingEvent OBJECT-TYPE
    SYNTAX      SnmpAdminString (SIZE (0..32))
    MAX-ACCESS  read-write
    STATUS      current
    DESCRIPTION
        "The mteEventName of the event to invoke when mteTriggerType is
        'threshold' and this trigger fires based on
        mteTriggerThresholdDeltaRising. A length of 0 indicates
        no event."
    DEFVAL { ''H }
    ::= { mteTriggerThresholdEntry 13 }

mteTriggerThresholdDeltaFallingEventOwner OBJECT-TYPE
    SYNTAX      SnmpAdminString (SIZE (0..32))
    MAX-ACCESS  read-write
    STATUS      current
    DESCRIPTION
        "To go with mteTriggerThresholdDeltaFallingEvent, the mteOwner
        of an event entry from mteEventTable."
    DEFVAL { ''H }
    ::= { mteTriggerThresholdEntry 14 }

mteTriggerThresholdDeltaFallingEvent OBJECT-TYPE
    SYNTAX      SnmpAdminString (SIZE (0..32))
    MAX-ACCESS  read-write
    STATUS      current
    DESCRIPTION
        "The mteEventName of the event to invoke when mteTriggerType is
        'threshold' and this trigger fires based on
        mteTriggerThresholdDeltaFalling.  A length of 0 indicates
        no event."
    DEFVAL { ''H }
    ::= { mteTriggerThresholdEntry 15 }


--
-- Objects Table
--

mteObjectsTable OBJECT-TYPE
    SYNTAX      SEQUENCE OF MteObjectsEntry





Expires 7 December 2000                                        [Page 33]





Internet Draft      Distributed Management Event MIB         7 June 2000


    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
        "A table of objects that can be added to notifications based
        on the trigger, trigger test, or event, as pointed to by
        entries in those tables."
    ::= { mteObjects 1 }

mteObjectsEntry OBJECT-TYPE
    SYNTAX      MteObjectsEntry
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
        "A group of objects.  Applications create and delete entries
        using mteObjectsEntryStatus.

        When adding objects to a notification they are added in the
        lexical order of their index in this table.  Those associated
        with a trigger come first, then trigger test, then event."
    INDEX       { mteOwner, mteObjectsName, mteObjectsIndex }
    ::= { mteObjectsTable 1 }

MteObjectsEntry ::= SEQUENCE {
    mteObjectsName                      SnmpAdminString,
    mteObjectsIndex                     Unsigned32,
    mteObjectsID                        OBJECT IDENTIFIER,
    mteObjectsIDWildcard                TruthValue,
    mteObjectsEntryStatus               RowStatus
    }

mteObjectsName OBJECT-TYPE
    SYNTAX      SnmpAdminString (SIZE (1..32))
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
        "A locally-unique, administratively assigned name for a group
        of objects."
    ::= { mteObjectsEntry 1 }

mteObjectsIndex OBJECT-TYPE
    SYNTAX      Unsigned32 (1..4294967295)
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
        "An arbitrary integer for the purpose of identifying





Expires 7 December 2000                                        [Page 34]





Internet Draft      Distributed Management Event MIB         7 June 2000


        individual objects within a mteObjectsName group.

        Objects within a group are placed in the notification in the
        numerical order of this index.

        Groups are placed in the notification in the order of the
        selections for overall trigger, trigger test, and event.
        Within trigger test they are in the same order as the
        numerical values of the bits defined for mteTriggerTest.

        Bad object identifiers or a mismatch between truncating the
        identifier and the value of mteDeltaDiscontinuityIDWildcard
        result in operation as one would expect when providing the
        wrong identifier to a Get operation.  The Get will fail or get
        the wrong object.  If the object is not available it is omitted
        from the notification."
    ::= { mteObjectsEntry 2 }

mteObjectsID OBJECT-TYPE
    SYNTAX      OBJECT IDENTIFIER
    MAX-ACCESS  read-create
    STATUS      current
    DESCRIPTION
        "The object identifier of a MIB object to add to a
        Notification that results from the firing of a trigger.

        This may be wildcarded by truncating all or part of the
        instance portion, in which case the instance portion of the
        OID for obtaining this object will be the same as that used
        in obtaining the mteTriggerValueID that fired.  If such
        wildcarding is applied, mteObjectsIDWildcard must be
        'true' and if not it must be 'false'.

        Each instance that fills the wildcard is independent of any
        additional instances, that is, wildcarded objects operate
        as if there were a separate table entry for each instance
        that fills the wildcard without having to actually predict
        all possible instances ahead of time."
    DEFVAL { zeroDotZero }
    ::= { mteObjectsEntry 3 }

mteObjectsIDWildcard OBJECT-TYPE
    SYNTAX      TruthValue
    MAX-ACCESS  read-create
    STATUS      current





Expires 7 December 2000                                        [Page 35]





Internet Draft      Distributed Management Event MIB         7 June 2000


    DESCRIPTION
        "Control for whether mteObjectsID is to be treated as
        fully-specified or wildcarded, with 'true' indicating wildcard."
    DEFVAL { false }
    ::= { mteObjectsEntry 4 }

mteObjectsEntryStatus OBJECT-TYPE
    SYNTAX      RowStatus
    MAX-ACCESS  read-create
    STATUS      current
    DESCRIPTION
        "The control that allows creation and deletion of entries.
        Once made active an entry MAY not be modified except to
        delete it."
    ::= { mteObjectsEntry 5 }


--
-- Event Section
--

-- Counters

mteEventFailures OBJECT-TYPE
    SYNTAX      Counter32
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "The number of times an attempt to invoke an event
        has failed.  This counts individually for each
        attempt in a group of targets or each attempt for a
        wildcarded trigger object."
    ::= { mteEvent 1 }


--
-- Event Table
--

mteEventTable OBJECT-TYPE
    SYNTAX      SEQUENCE OF MteEventEntry
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
        "A table of management event action information."





Expires 7 December 2000                                        [Page 36]





Internet Draft      Distributed Management Event MIB         7 June 2000


    ::= { mteEvent 2 }

mteEventEntry OBJECT-TYPE
    SYNTAX      MteEventEntry
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
        "Information about a single event.  Applications create and
        delete entries using mteEventEntryStatus."
    INDEX       { mteOwner, IMPLIED mteEventName }
    ::= { mteEventTable 1 }

MteEventEntry ::= SEQUENCE {
    mteEventName                        SnmpAdminString,
    mteEventComment                     SnmpAdminString,
    mteEventActions                     BITS,
    mteEventEnabled                     TruthValue,
    mteEventEntryStatus                 RowStatus
    }

mteEventName OBJECT-TYPE
    SYNTAX      SnmpAdminString (SIZE (1..32))
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
        "A locally-unique, administratively assigned name for the
        event."
    ::= { mteEventEntry 1 }

mteEventComment OBJECT-TYPE
    SYNTAX      SnmpAdminString
    MAX-ACCESS  read-create
    STATUS      current
    DESCRIPTION
        "A description of the event's function and use."
    DEFVAL { ''H }
    ::= { mteEventEntry 2 }

mteEventActions OBJECT-TYPE
    SYNTAX      BITS { notification(0), set(1) }
    MAX-ACCESS  read-create
    STATUS      current
    DESCRIPTION
        "The actions to perform when this event occurs.






Expires 7 December 2000                                        [Page 37]





Internet Draft      Distributed Management Event MIB         7 June 2000


        For 'notification', Traps and/or Informs are sent according
        to the configuration in the SNMP Notification MIB.

        For 'set', an SNMP Set operation is performed according to
        control values in this entry."
    DEFVAL { {} }  -- No bits set.
    ::= { mteEventEntry 3 }

mteEventEnabled OBJECT-TYPE
    SYNTAX      TruthValue
    MAX-ACCESS  read-create
    STATUS      current
    DESCRIPTION
        "A control to allow an event to be configured but not used.
        When the value is 'false' the event does not execute even if
        triggered."
    DEFVAL { false }
    ::= { mteEventEntry 4 }

mteEventEntryStatus OBJECT-TYPE
    SYNTAX      RowStatus
    MAX-ACCESS  read-create
    STATUS      current
    DESCRIPTION
        "The control that allows creation and deletion of entries.
        Once made active an entry MAY not be modified except to
        delete it."
    ::= { mteEventEntry 5 }


--
-- Event Notification Table
--

mteEventNotificationTable OBJECT-TYPE
    SYNTAX      SEQUENCE OF MteEventNotificationEntry
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
        "A table of information about notifications to be sent as a
        consequence of management events."
    ::= { mteEvent 3 }

mteEventNotificationEntry OBJECT-TYPE
    SYNTAX      MteEventNotificationEntry





Expires 7 December 2000                                        [Page 38]





Internet Draft      Distributed Management Event MIB         7 June 2000


    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
        "Information about a single event's notification.  Entries
        automatically exist in this this table for each mteEventEntry
        that has 'notification' set in mteEventActions."
    INDEX       { mteOwner, IMPLIED mteEventName }
    ::= { mteEventNotificationTable 1 }

MteEventNotificationEntry ::= SEQUENCE {
    mteEventNotification                OBJECT IDENTIFIER,
    mteEventNotificationObjectsOwner    SnmpAdminString,
    mteEventNotificationObjects         SnmpAdminString
    }

mteEventNotification OBJECT-TYPE
    SYNTAX      OBJECT IDENTIFIER
    MAX-ACCESS  read-write
    STATUS      current
    DESCRIPTION
        "The object identifier from the NOTIFICATION-TYPE for the
        notification to use if metEventActions has 'notification' set."
    DEFVAL { zeroDotZero }
    ::= { mteEventNotificationEntry 1 }

mteEventNotificationObjectsOwner OBJECT-TYPE
    SYNTAX      SnmpAdminString (SIZE (0..32))
    MAX-ACCESS  read-write
    STATUS      current
    DESCRIPTION
        "To go with mteEventNotificationObjects, the mteOwner of a
        group of objects from mteObjectsTable."
    DEFVAL { ''H }
    ::= { mteEventNotificationEntry 2 }

mteEventNotificationObjects OBJECT-TYPE
    SYNTAX      SnmpAdminString (SIZE (0..32))
    MAX-ACCESS  read-write
    STATUS      current
    DESCRIPTION
        "The mteObjectsName of a group of objects from
        mteObjectsTable if mteEventActions has 'notification' set.
        These objects are to be added to any Notification generated by
        this event.






Expires 7 December 2000                                        [Page 39]





Internet Draft      Distributed Management Event MIB         7 June 2000


        Objects may also be added based on the trigger that stimulated
        the event.

        A length of 0 indicates no additional objects."
    DEFVAL { ''H }
    ::= { mteEventNotificationEntry 3 }


--
-- Event Set Table
--

mteEventSetTable OBJECT-TYPE
    SYNTAX      SEQUENCE OF MteEventSetEntry
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
        "A table of management event action information."
    ::= { mteEvent 4 }

mteEventSetEntry OBJECT-TYPE
    SYNTAX      MteEventSetEntry
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
        "Information about a single event's set option.  Entries
        automatically exist in this this table for each mteEventEntry
        that has 'set' set in mteEventActions."
    INDEX       { mteOwner, IMPLIED mteEventName }
    ::= { mteEventSetTable 1 }

MteEventSetEntry ::= SEQUENCE {
    mteEventSetObject                   OBJECT IDENTIFIER,
    mteEventSetObjectWildcard           TruthValue,
    mteEventSetValue                    Integer32,
    mteEventSetTargetTag                SnmpTagValue,
    mteEventSetContextName              SnmpAdminString,
    mteEventSetContextNameWildcard      TruthValue
    }

mteEventSetObject OBJECT-TYPE
    SYNTAX      OBJECT IDENTIFIER
    MAX-ACCESS  read-write
    STATUS      current
    DESCRIPTION





Expires 7 December 2000                                        [Page 40]





Internet Draft      Distributed Management Event MIB         7 June 2000


        "The object identifier from the MIB object to set if
        mteEventActions has 'set' set.

        This object identifier may be wildcarded by leaving
        sub-identifiers off the end, in which case
        nteEventSetObjectWildCard must be 'true'.

        If mteEventSetObject is wildcarded the instance used to set the
        object to which it points is the same as the instance from the
        value of mteTriggerValueID that triggered the event.

        Each instance that fills the wildcard is independent of any
        additional instances, that is, wildcarded objects operate
        as if there were a separate table entry for each instance
        that fills the wildcard without having to actually predict
        all possible instances ahead of time.

        Bad object identifiers or a mismatch between truncating the
        identifier and the value of mteSetObjectWildcard
        result in operation as one would expect when providing the
        wrong identifier to a Set operation.  The Set will fail or set
        the wrong object.  If the value syntax of the destination
        object is not correct, the Set fails with the normal SNMP
        error code."
    DEFVAL { zeroDotZero }
    ::= { mteEventSetEntry 1 }

mteEventSetObjectWildcard OBJECT-TYPE
    SYNTAX      TruthValue
    MAX-ACCESS  read-write
    STATUS      current
    DESCRIPTION
        "Control over whether mteEventSetObject is to be treated as
        fully-specified or wildcarded, with 'true' indicating wildcard
        if mteEventActions has 'set' set."
    DEFVAL { false }
    ::= { mteEventSetEntry 2 }

mteEventSetValue OBJECT-TYPE
    SYNTAX      Integer32
    MAX-ACCESS  read-write
    STATUS      current
    DESCRIPTION
        "The value to which to set the object at mteEventSetObject
        if mteEventActions has 'set' set."





Expires 7 December 2000                                        [Page 41]





Internet Draft      Distributed Management Event MIB         7 June 2000


    DEFVAL { 0 }
    ::= { mteEventSetEntry 3 }

mteEventSetTargetTag OBJECT-TYPE
    SYNTAX      SnmpTagValue
    MAX-ACCESS  read-write
    STATUS      current
    DESCRIPTION
        "The tag for the target(s) at which to set the object at
        mteEventSetObject to mteEventSetValue if mteEventActions
        has 'set' set.

        Systems limited to self management MAY reject a non-zero
        length for the value of this object.

        A length of 0 indicates the local system.  In this case,
        access to the objects indicated by mteEventSetObject is under
        the security credentials of the requester that set
        mteTriggerEntryStatus to 'active'.  Those credentials are the
        input parameters for isAccessAllowed from the Architecture for
        Describing SNMP Management Frameworks.

        Otherwise access rights are checked according to the security
        parameters resulting from the tag."
    DEFVAL { ''H }
    ::= { mteEventSetEntry 4 }

mteEventSetContextName OBJECT-TYPE
    SYNTAX      SnmpAdminString
    MAX-ACCESS  read-write
    STATUS      current
    DESCRIPTION
        "The management context in which to set mteEventObjectID.
        if mteEventActions has 'set' set.

        This may be wildcarded by leaving characters off the end.  To
        indicate such wildcarding mteEventSetContextNameWildcard must
        be 'true'.

        If this context name is wildcarded the value used to complete
        the wildcarding of mteTriggerContextName will be appended."
    DEFVAL { ''H }
    ::= { mteEventSetEntry 5 }

mteEventSetContextNameWildcard OBJECT-TYPE





Expires 7 December 2000                                        [Page 42]





Internet Draft      Distributed Management Event MIB         7 June 2000


    SYNTAX      TruthValue
    MAX-ACCESS  read-write
    STATUS      current
    DESCRIPTION
        "Control for whether mteEventSetContextName is to be treated as
        fully-specified or wildcarded, with 'true' indicating wildcard
        if mteEventActions has 'set' set."
    DEFVAL { false }
    ::= { mteEventSetEntry 6 }


--
-- Notifications
--

dismanEventMIBNotificationPrefix OBJECT IDENTIFIER ::=
    { dismanEventMIB 2 }
dismanEventMIBNotifications OBJECT IDENTIFIER ::=
    { dismanEventMIBNotificationPrefix 0 }
dismanEventMIBNotificationObjects OBJECT IDENTIFIER
   ::= { dismanEventMIBNotificationPrefix 1 }

--
-- Notification Objects
--

mteHotTrigger OBJECT-TYPE
    SYNTAX      SnmpAdminString
    MAX-ACCESS  accessible-for-notify
    STATUS      current
    DESCRIPTION
        "The name of the trigger causing the notification."
    ::= { dismanEventMIBNotificationObjects 1 }

mteHotTargetName OBJECT-TYPE
    SYNTAX      SnmpAdminString
    MAX-ACCESS  accessible-for-notify
    STATUS      current
    DESCRIPTION
        "The SNMP Target MIB's snmpTargetAddrName related to the
        notification."
    ::= { dismanEventMIBNotificationObjects 2 }

mteHotContextName OBJECT-TYPE
    SYNTAX      SnmpAdminString





Expires 7 December 2000                                        [Page 43]





Internet Draft      Distributed Management Event MIB         7 June 2000


    MAX-ACCESS  accessible-for-notify
    STATUS      current
    DESCRIPTION
        "The context name related to the notification.  This MUST be as
        fully-qualified as possible, including filling in wildcard
        information determined in processing."
    ::= { dismanEventMIBNotificationObjects 3 }

mteHotOID OBJECT-TYPE
    SYNTAX      OBJECT IDENTIFIER
    MAX-ACCESS  accessible-for-notify
    STATUS      current
    DESCRIPTION
        "The object identifier of the destination object related to the
        notification.  This MUST be as fully-qualified as possible,
        inluding filling in wildcard information determined in
        processing.

        For a trigger-related notification this is from
        mteTriggerValueID.

        For a set failure this is from mteEventSetObject."
    ::= { dismanEventMIBNotificationObjects 4 }

mteHotValue OBJECT-TYPE
    SYNTAX      Integer32
    MAX-ACCESS  accessible-for-notify
    STATUS      current
    DESCRIPTION
        "The value of the object at mteTriggerValueID when a
        trigger fired."
    ::= { dismanEventMIBNotificationObjects 5 }

mteFailedReason OBJECT-TYPE
    SYNTAX      FailureReason
    MAX-ACCESS  accessible-for-notify
    STATUS      current
    DESCRIPTION
        "The reason for the failure of an attempt to check for a
        trigger condition or set an object in response to an event."
    ::= { dismanEventMIBNotificationObjects 6 }

--
-- Notifications
--





Expires 7 December 2000                                        [Page 44]





Internet Draft      Distributed Management Event MIB         7 June 2000


mteTriggerFired NOTIFICATION-TYPE
    OBJECTS { mteHotTrigger,
              mteHotTargetName,
              mteHotContextName,
              mteHotOID,
              mteHotValue }
    STATUS  current
    DESCRIPTION
        "Notification that the trigger indicated by the object
        instances has fired, for triggers with mteTriggerType
        'boolean' or 'existence'."
    ::= { dismanEventMIBNotifications 1 }

mteTriggerRising NOTIFICATION-TYPE
    OBJECTS { mteHotTrigger,
              mteHotTargetName,
              mteHotContextName,
              mteHotOID,
              mteHotValue }
    STATUS  current
    DESCRIPTION
        "Notification that the rising threshold was met for triggers
        with mteTriggerType 'threshold'."
    ::= { dismanEventMIBNotifications 2 }

mteTriggerFalling NOTIFICATION-TYPE
    OBJECTS { mteHotTrigger,
              mteHotTargetName,
              mteHotContextName,
              mteHotOID,
              mteHotValue }
    STATUS  current
    DESCRIPTION
        "Notification that the falling threshold was met for triggers
        with mteTriggerType 'threshold'."
    ::= { dismanEventMIBNotifications 3 }

mteTriggerFailure NOTIFICATION-TYPE
    OBJECTS { mteHotTrigger,
              mteHotTargetName,
              mteHotContextName,
              mteHotOID,
              mteFailedReason }
    STATUS  current
    DESCRIPTION





Expires 7 December 2000                                        [Page 45]





Internet Draft      Distributed Management Event MIB         7 June 2000


        "Notification that an attempt to check a trigger has failed.

        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."
    ::= { dismanEventMIBNotifications 4 }

mteEventSetFailure NOTIFICATION-TYPE
    OBJECTS { mteHotTrigger,
              mteHotTargetName,
              mteHotContextName,
              mteHotOID,
              mteFailedReason }
    STATUS  current
    DESCRIPTION
        "Notification that an attempt to do a set in response to an
        event has failed.

        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."
    ::= { dismanEventMIBNotifications 5 }


--
-- Conformance
--

dismanEventMIBConformance OBJECT IDENTIFIER ::= { dismanEventMIB 3 }
dismanEventMIBCompliances OBJECT IDENTIFIER ::=
    { dismanEventMIBConformance 1 }
dismanEventMIBGroups      OBJECT IDENTIFIER ::=
    { dismanEventMIBConformance 2 }

-- Compliance

dismanEventMIBCompliance MODULE-COMPLIANCE
        STATUS current
        DESCRIPTION
                "The compliance statement for entities which implement
                the Event MIB."





Expires 7 December 2000                                        [Page 46]





Internet Draft      Distributed Management Event MIB         7 June 2000


        MODULE  -- this module
                MANDATORY-GROUPS {
                        dismanEventResourceGroup,
                        dismanEventTriggerGroup,
                        dismanEventObjectsGroup,
                        dismanEventEventGroup,
                        dismanEventNotificationObjectGroup,
                        dismanEventNotificationGroup
                }

                OBJECT mteTriggerTargetTag
                MIN-ACCESS  read-only
                DESCRIPTION
                        "Write access is not required, thus limiting
                        monitoring to the local system or pre-configured
                        remote systems."

                OBJECT mteEventSetTargetTag
                MIN-ACCESS  read-only
                DESCRIPTION
                        "Write access is not required, thus limiting
                        setting to the local system or pre-configured
                        remote systems."

                OBJECT mteTriggerValueIDWildcard
                MIN-ACCESS  read-only
                DESCRIPTION
                        "Write access is not required, thus allowing
                        the system not to implement wildcarding."

                OBJECT mteTriggerContextNameWildcard
                MIN-ACCESS  read-only
                DESCRIPTION
                        "Write access is not required, thus allowing
                        the system not to implement wildcarding."


                OBJECT mteObjectsIDWildcard
                MIN-ACCESS  read-only
                DESCRIPTION
                        "Write access is not required, thus allowing
                        the system not to implement wildcarding."

                OBJECT mteEventSetContextNameWildcard
                MIN-ACCESS  read-only





Expires 7 December 2000                                        [Page 47]





Internet Draft      Distributed Management Event MIB         7 June 2000


                DESCRIPTION
                        "Write access is not required, thus allowing
                        the system not to implement wildcarding."

        ::= { dismanEventMIBCompliances 1 }

-- Units of Conformance



dismanEventResourceGroup OBJECT-GROUP
        OBJECTS {
                mteResourceSampleMinimum,
                mteResourceSampleInstanceMaximum,
                mteResourceSampleInstances,
                mteResourceSampleInstancesHigh,
                mteResourceSampleInstanceLacks
        }
        STATUS current
        DESCRIPTION
                "Event resource status and control objects."
        ::= { dismanEventMIBGroups 1 }

dismanEventTriggerGroup OBJECT-GROUP
        OBJECTS {
                mteTriggerFailures,

                mteTriggerComment,
                mteTriggerTest,
                mteTriggerSampleType,
                mteTriggerValueID,
                mteTriggerValueIDWildcard,
                mteTriggerTargetTag,
                mteTriggerContextName,
                mteTriggerContextNameWildcard,
                mteTriggerFrequency,
                mteTriggerObjectsOwner,
                mteTriggerObjects,
                mteTriggerEnabled,
                mteTriggerEntryStatus,

                mteTriggerDeltaDiscontinuityID,
                mteTriggerDeltaDiscontinuityIDWildcard,
                mteTriggerDeltaDiscontinuityIDType,






Expires 7 December 2000                                        [Page 48]





Internet Draft      Distributed Management Event MIB         7 June 2000


                mteTriggerExistenceTest,
                mteTriggerExistenceStartup,
                mteTriggerExistenceObjectsOwner,
                mteTriggerExistenceObjects,
                mteTriggerExistenceEventOwner,
                mteTriggerExistenceEvent,

                mteTriggerBooleanComparison,
                mteTriggerBooleanValue,
                mteTriggerBooleanStartup,
                mteTriggerBooleanObjectsOwner,
                mteTriggerBooleanObjects,
                mteTriggerBooleanEventOwner,
                mteTriggerBooleanEvent,

                mteTriggerThresholdStartup,
                mteTriggerThresholdObjectsOwner,
                mteTriggerThresholdObjects,
                mteTriggerThresholdRising,
                mteTriggerThresholdFalling,
                mteTriggerThresholdDeltaRising,
                mteTriggerThresholdDeltaFalling,
                mteTriggerThresholdRisingEventOwner,
                mteTriggerThresholdRisingEvent,
                mteTriggerThresholdFallingEventOwner,
                mteTriggerThresholdFallingEvent,
                mteTriggerThresholdDeltaRisingEventOwner,
                mteTriggerThresholdDeltaRisingEvent,
                mteTriggerThresholdDeltaFallingEventOwner,
                mteTriggerThresholdDeltaFallingEvent
        }
        STATUS current
        DESCRIPTION
                "Event triggers."
        ::= { dismanEventMIBGroups 2 }

dismanEventObjectsGroup OBJECT-GROUP
        OBJECTS {
                mteObjectsID,
                mteObjectsIDWildcard,
                mteObjectsEntryStatus
        }
        STATUS current
        DESCRIPTION
                "Supplemental objects."





Expires 7 December 2000                                        [Page 49]





Internet Draft      Distributed Management Event MIB         7 June 2000


        ::= { dismanEventMIBGroups 3 }

dismanEventEventGroup OBJECT-GROUP
        OBJECTS {
                mteEventFailures,

                mteEventComment,
                mteEventActions,
                mteEventEnabled,
                mteEventEntryStatus,

                mteEventNotification,
                mteEventNotificationObjectsOwner,
                mteEventNotificationObjects,

                mteEventSetObject,
                mteEventSetObjectWildcard,
                mteEventSetValue,
                mteEventSetTargetTag,
                mteEventSetContextName,
                mteEventSetContextNameWildcard
        }
        STATUS current
        DESCRIPTION
                "Events."
        ::= { dismanEventMIBGroups 4 }

dismanEventNotificationObjectGroup OBJECT-GROUP
        OBJECTS {
                mteHotTrigger,
                mteHotTargetName,
                mteHotContextName,
                mteHotOID,
                mteHotValue,
                mteFailedReason
        }
        STATUS current
        DESCRIPTION
                "Notification objects."
        ::= { dismanEventMIBGroups 5 }

dismanEventNotificationGroup NOTIFICATION-GROUP
        NOTIFICATIONS {
                mteTriggerFired,
                mteTriggerRising,





Expires 7 December 2000                                        [Page 50]





Internet Draft      Distributed Management Event MIB         7 June 2000


                mteTriggerFalling,
                mteTriggerFailure,
                mteEventSetFailure
        }
        STATUS current
        DESCRIPTION
                "Notifications."
        ::= { dismanEventMIBGroups 6 }

END








































Expires 7 December 2000                                        [Page 51]





Internet Draft      Distributed Management Event MIB         7 June 2000


9.  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
implementors 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.





























Expires 7 December 2000                                        [Page 52]





Internet Draft      Distributed Management Event MIB         7 June 2000


10.  Acknowledgements

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












































Expires 7 December 2000                                        [Page 53]





Internet Draft      Distributed Management Event MIB         7 June 2000


11.  References

[RFC2571]   Harrington, D., Presuhn, R., and B. Wijnen, "An Architecture
            for Describing SNMP Management Frameworks", RFC 2571, April
            1999

[RFC1155]   Rose, M., and K. McCloghrie, "Structure and Identification
            of Management Information for TCP/IP-based Internets", STD
            16, RFC 1155, May 1990

[RFC1212]   Rose, M., and K. McCloghrie, "Concise MIB Definitions", STD
            16, RFC 1212, March 1991

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

[RFC2578]   McCloghrie, K., Perkins, D., Schoenwaelder, J., Case, J.,
            Rose, M., and S. Waldbusser, "Structure of Management
            Information Version 2 (SMIv2)", STD 58, RFC 2578, April 1999

[RFC2579]   McCloghrie, K., Perkins, D., Schoenwaelder, J., Case, J.,
            Rose, M., and S. Waldbusser, "Textual Conventions for
            SMIv2", STD 58, RFC 2579, April 1999

[RFC2580]   McCloghrie, K., Perkins, D., Schoenwaelder, J., Case, J.,
            Rose, M., and S. Waldbusser, "Conformance Statements for
            SMIv2", STD 58, RFC 2580, April 1999

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

[RFC1901]   Case, J., McCloghrie, K., Rose, M., and S. Waldbusser,
            "Introduction to Community-based SNMPv2", RFC 1901, January
            1996.

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

[RFC2572]   Case, J., Harrington D., Presuhn R., and B. Wijnen, "Message
            Processing and Dispatching for the Simple Network Management
            Protocol (SNMP)", RFC 2572, April 1999

[RFC2574]   Blumenthal, U., and B. Wijnen, "User-based Security Model
            (USM) for version 3 of the Simple Network Management





Expires 7 December 2000                                        [Page 54]





Internet Draft      Distributed Management Event MIB         7 June 2000


            Protocol (SNMPv3)", RFC 2574, April 1999

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

[RFC2573]   Levi, D., Meyer, P., and B. Stewart, "SNMPv3 Applications",
            RFC 2573, April 1999

[RFC2575]   Wijnen, B., Presuhn, R., and K. McCloghrie, "View-based
            Access Control Model (VACM) for the Simple Network
            Management Protocol (SNMP)", RFC 2575, April 1999

[RFC2570]   Case, J., Mundy, R., Partain, D., and B. Stewart,
            "Introduction to Version 3 of the Internet-standard Network
            Management Framework", RFC 2570, April 1999

[RFC1903]   Case, J., McCloghrie, K., Rose, M. and S. Waldbusser,
            "Coexistence between Version 1 and version 2 of the
            Internet-standard Network Management Framework", RFC 1903,
            January 1996.

[RFCEventMIB]
     Stewart, B., "Event MIB", RFC ????, ?Month? 1999.

[RFC1757]
     Waldbusser, S., "Remote Network Monitoring Management Information
     Base", RFC 1757, February 1995.

[RFC1451]
     Case, J., McCloghrie, K., Rose, M., Waldbusser, S., "Manager-to-
     Manager Management Information Base", RFC 1451, April 1993.

[RFCExpressionMIB]
     Stewart, B., "Expression MIB", RFC ????, ?Month? 1999.

[RFCNotificationLogMIB]
     Stewart, B., "Notification Log MIB", RFC ????, ?Month? 1999.












Expires 7 December 2000                                        [Page 55]





Internet Draft      Distributed Management Event MIB         7 June 2000


12.  Security Considerations

Security issues are discussed in the Security section and in the
DESCRIPTION clauses of relevant objects.


13.  Author's Address

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


14.  Editor's Address

     Ramanathan Kavasseri
     Cisco Systems, Inc.
     170 West Tasman Drive
     San Jose, CA 95134-1706
     U.S.A.

     Phone: +1 408 527 2446
     Email: ramk@cisco.com

























Expires 7 December 2000                                        [Page 56]





Internet Draft      Distributed Management Event MIB         7 June 2000


15.  Full Copyright Statement

Copyright (C) The Internet Society (2000). 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
Standards process must be followed, or as required to translate it into
languages other than English.

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

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
























Expires 7 December 2000                                        [Page 57]





Internet Draft      Distributed Management Event MIB         7 June 2000


Table of Contents


1 Abstract ........................................................    2
2 The SNMP Management Framework ...................................    2
3 Overview ........................................................    4
4 Relationship to Other MIBs ......................................    4
5 MIB Sections ....................................................    4
6 Operation .......................................................    7
7 Security ........................................................    8
8 Definitions .....................................................    9
9 Intellectual Property ...........................................   52
10 Acknowledgements ...............................................   53
11 References .....................................................   54
12 Security Considerations ........................................   56
13 Author's Address ...............................................   56
14 Editor's Address ...............................................   56
15 Full Copyright Statement .......................................   57
































Expires 7 December 2000                                        [Page 58]



From owner-disman@dorothy.peer.com  Tue Jun 20 01:48:36 2000
Received: from starling.bmc.com (fw-us-hou-2.bmc.com [198.207.223.251])
	by ietf.org (8.9.1a/8.9.1a) with ESMTP id BAA07293
	for <disman-archive@odin.ietf.org>; Tue, 20 Jun 2000 01:48:33 -0400 (EDT)
Received: from Dorothy.Bmc.Com (localhost [127.0.0.1])
	by starling.bmc.com (8.10.1/8.8.6) with ESMTP id e5K5kaf18234;
	Tue, 20 Jun 2000 00:46:37 -0500 (CDT)
Received: (from root@localhost)
	by Dorothy.Bmc.Com (8.8.6 (PHNE_12836)/8.8.6) id WAA06397
	for disman-list; Mon, 19 Jun 2000 22:45:35 -0700 (PDT)
Received: from starling.bmc.com (starling.bmc.com [172.17.0.113])
	by Dorothy.Bmc.Com (8.8.6 (PHNE_12836)/8.8.6) with ESMTP id WAA06389
	for <disman@dorothy.peer.com>; Mon, 19 Jun 2000 22:45:13 -0700 (PDT)
Received: from fw-us-hou1.bmc.com (localhost [127.0.0.1])
	by starling.bmc.com (8.10.1/8.8.6) with SMTP id e5K5jvf18164
	for <disman@dorothy.bmc.com>; Tue, 20 Jun 2000 00:45:57 -0500 (CDT)
Received: (ramk@localhost) by itech-view2.cisco.com (8.8.5-Cisco.2-SunOS.5.5.1.sun4/8.6.5) id WAA26831; Mon, 19 Jun 2000 22:43:29 -0700 (PDT)
From: Ram Kavasseri <ramk@cisco.com>
Message-Id: <200006200543.WAA26831@itech-view2.cisco.com>
Subject: Latest Expression MIB draft - draft-ietf-disman-expr-mib-12.txt
To: disman@dorothy.peer.com
Date: Mon, 19 Jun 2000 22:43:29 -0700 (PDT)
Cc: ramk@cisco.com (Ram Kavasseri)
X-Mailer: ELM [version 2.5 PL1]
MIME-Version: 1.0
Content-Type: text/plain; charset=us-ascii
Content-Transfer-Encoding: 7bit
Sender: owner-disman@dorothy.peer.com
Precedence: bulk
List-Id: IETF disman Working Group mailing list <disman@dorothy.bmc.com>
Content-Transfer-Encoding: 7bit


The following are the list of typos/format changes made to
draft-ietf-disman-expr-mib-11.txt. The new draft is 
draft-ietf-disman-expr-mib-12.txt. I'm posting this draft on
the disma mailing list first, before sending it too internet-drafts@ietf.org.
If I've missed a change, please let me know.

Thanks,

Ram Kavasseri


List of changes follows:

1. Changed the heading format for the draft, to make it conform to
other internet-drafts' formats.

2. Changed the revision and expiry dates to 12 June 2000 and
12 December 2000 respectively.

3. Page 1 - Changed the Copyright Date from 1999 to 2000.

4. Page 14 - Changed the LAST-UPDATED and REVISION clauses to reflect the new
modification date - 12 June 2000

5. Page 14 - Changed "RFC xxxxx" to "RFC xxxx" in the Revision History
"DESCRIPTION" clause.

6. Page 16 - Removed the zeroDotZero OID definition from the MIB, and
instead imported it from SNMPv2-SMI

7. Page 4 - "Section 3. Overview" - changed "an managed" to "a managed"

8. Page 8 - clause 3.5.2:
Replace "The expression table, indexed by expression name,
contains those" with "The expression table, indexed by
expression owner and expression name, contains those".

9. Page 8 - Replace "The object table, indexed by expression name and
object index within" with "The object table, indexed by
expression owner, expression name and object index within".

10. Page 10 - Removed ", but the weirdity won't matter" from the following
sentence: "For example purposes we'll use some slightly far-fetched OIDs, but
the weirdity won't matter."


=========================New draft follows==========================

Network Working Group                           Editor of this version:
Internet-Draft                                  Ramanathan R. Kavasseri
Expires December 2000                               Cisco Systems, Inc.
                                            Author of previous version:
                                                            Bob Stewart
                                                           12 June 2000



                 Distributed Management Expression MIB

                  draft-ietf-disman-express-mib-12.txt


                          Status of this Memo

This document is an Internet-Draft and is in full conformance with all
provisions of Section 10 of RFC2026.

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.''

The list of current Internet-Drafts can be accessed at
http://www.ietf.org/ietf/1id-abstracts.txt

The list of Internet-Draft Shadow Directories can be accessed at
http://www.ietf.org/shadow.html.

Distribution of this document is unlimited. Please send comments to the
Distributed Management Working Group, <disman@dorothy.BMC.com>.


Copyright Notice

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















Internet Draft    Distributed Management Expression MIB     12 June 2000


1.  Abstract

This memo defines a portion of the Management Information Base (MIB) for
use with network management protocols in the Internet community.  In
particular, it describes managed objects used for managing expressions
of MIB objects.  The results of these expressions become MIB objects
usable like any other MIB object, such as for the test condition for
declaring an event.

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.


2.  The SNMP Management Framework

   The SNMP Management Framework presently consists of five major
   components:

    o   An overall architecture, described in RFC 2571 [RFC2571].

    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
        STD 16, RFC 1155 [RFC1155], STD 16, RFC 1212 [RFC1212] and RFC
        1215 [RFC1215]. The second version, called SMIv2, is described
        in STD 58, RFC 2578 [RFC2578], RFC 2579 [RFC2579] and RFC 2580
        [RFC2580].

    o   Message protocols for transferring management information. The
        first version of the SNMP message protocol is called SNMPv1 and
        described in STD 15, RFC 1157 [RFC1157]. A second version of the
        SNMP message protocol, which is not an Internet standards track
        protocol, is called SNMPv2c and described in RFC 1901 [RFC1901]
        and RFC 1906 [RFC1906]. The third version of the message
        protocol is called SNMPv3 and described in RFC 1906 [RFC1906],
        RFC 2572 [RFC2572] and RFC 2574 [RFC2574].

    o   Protocol operations for accessing management information. The
        first set of protocol operations and associated PDU formats is
        described in STD 15, RFC 1157 [RFC1157]. A second set of
        protocol operations and associated PDU formats is described in
        RFC 1905 [RFC1905].







Expires 12 December 2000                                        [Page 2]





Internet Draft    Distributed Management Expression MIB     12 June 2000


    o   A set of fundamental applications described in RFC 2573
        [RFC2573] and the view-based access control mechanism described
        in RFC 2575 [RFC2575].

   A more detailed introduction to the current SNMP Management Framework
   can be found in RFC 2570 [RFC2570].

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

   This memo specifies a MIB module that is compliant to the SMIv2. A
   MIB conforming to the SMIv1 can be produced through the appropriate
   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.






























Expires 12 December 2000                                        [Page 3]





Internet Draft    Distributed Management Expression MIB     12 June 2000


3.  Overview

Users of MIBs often desire MIB objects that MIB designers have not
provided.  Furthermore, such needs vary from one management philosphy to
another.  Rather than fill more and more MIBs with standardized objects,
the Expression MIB supports externally defined expressions of existing
MIB objects.

In the Expression MIB the results of an evaluated expression are MIB
objects that may be used like any other MIB objects.  These custom-
defined objects are thus usable anywhere any other MIB object can be
used.  For example, they can be used by a management application
directly or referenced from another MIB, such as the Event MIB
[MIBEventMIB].  They can even be used by the Expression MIB itself,
forming expressions of expressions.

The Expression MIB is instrumentation for a relatively powerful,
complex, high-level application, considerably different from simple
instrumentation for a communication driver or a protocol.  The MIB is
appropriate in a relatively powerful, resource-rich managed system and
not necessarily in a severely limited environment.

Nevertheless, due to dependencies from the Event MIB [RFCEventMIB] and
the need to support as low-end a system as possible, the Expression MIB
can be somewhat stripped down for lower-power, lower-resource
implementations, as described in the Subsets section, below.

Implementation of the Expression MIB in a managed system led to the
addition of objects that may not have been necessary in an application
environment with complete knowledge of compiled MIB definitions.  This
is appropriate since implementation must be possible within typical
managed systems with some constraints on system resources.


3.1.  Usage

On managed systems that can afford the overhead, the Expression MIB is a
way to create new, customized MIB objects for monitoring.  Although
these can save some network traffic and overhead on management systems,
that is often not a good tradeoff for objects that are simply to be
recorded or displayed.

An example of a use of the Expression MIB would be to provide custom
objects for the Event MIB [RFCEventMIB].  A complex expression can
evaluate to a rate of flow or a boolean and thus be subject to testing





Expires 12 December 2000                                        [Page 4]





Internet Draft    Distributed Management Expression MIB     12 June 2000


as an event trigger, resulting in an SNMP notification.  Without these
capabilities such monitoring would be limited to the objects in
predefined MIBs.  The Expression MIB thus supports powerful tools for
the network manager faced with the monitoring of large, complex systems
that can support a significant level of self management.


3.2.  Persistance

Although like most MIBs this one has no explicit controls for the
persistance of the values set in configuring an expression, a robust,
polite implementation would certainly not force its managing
applications to reconfigure it whenever it resets.

Again, as with most MIBs, it is implementation specific how a system
provides and manages such persistance.  To speculate, one could imagine,
for example, that persistance depended on the context in which the
expression was configured, or perhaps system-specific characteristics of
the expression's owner.  Or perhaps everything in a MIB such as this
one, which is clearly aimed at persistant configuration, is
automatically part of a system's other persistant configuration.


3.3.  Operation

Most of the operation of the MIB is described or implied in the object
definitions but a few highlights bear mentioning here.


3.3.1.  Sampling

The MIB supports three types of object sampling for the MIB objects that
make up the expression:  absolute, delta, and changed.

Absolute samples are simply the value of the MIB object at the time it
is sampled.

Absolute samples are not sufficient for expressions of counters, as
counters have meaning only as a delta (difference) from one sample to
the next.  Thus objects may be sampled as deltas.  Delta sampling
requires the application to maintain state for the value at the last
sample, and to do continuous sampling whether or not anyone is looking
at the results.  It thus creates constant overhead.

Changed sampling is a simple fallout of delta sampling where rather than





Expires 12 December 2000                                        [Page 5]





Internet Draft    Distributed Management Expression MIB     12 June 2000


a difference the result is a boolean indicating whether or not the
object changed value since the last sample.


3.3.2.  Wildcards

Wildcards allow the application of a single expression to multiple
instances of the same MIB object.  The definer of the expression
indicates this choice and provides a partial object identifier, with
some or all of the instance portion left off.  The application then does
the equivalent of GetNext to obtain the object values, thus discovering
the instances.

All wildcarded objects in an expression must have the same semantics for
the missing portion of their object identifiers. Otherwise, any
successful evaluation of the wildcarded expression would be the result
of the accidental matching of the wildcarded portion of the object
identifiers in the expression.  Such an evaluation will likely produce
results which are not meaningful.

The expression can be evaluated only for those instances where all the
objects in the expression are available with the same value for the
wildcarded portion of the instance.


3.3.3.  Evaluation

There are two important aspects of evaluation that may not be obvious:
what objects and when.

What objects get used in the evaluation depends on the type of request
and whether or not the expression contains wildcarded objects.  If the
request was a Get, that locks down the instances to be used.  If the
request was a GetNext or GetBulk, the application must work its way up
to the next full set of objects for the expression.

Evaluation of expressions happens at two possible times, depending on
the sampling method (delta or absolute) used to evaluate the expression.

If there are no delta or change values in an expression, the evaluation
occurs on demand, i.e. when a requester attempts to read the value of
the expression.  In this case all requesters get a freshly calculated
value.

For expressions with delta or change values, evaluation goes on





Expires 12 December 2000                                        [Page 6]





Internet Draft    Distributed Management Expression MIB     12 June 2000


continuously, every sample period.  In this case requesters get the
value as of the last sample period.  For any given sample period of a
given expression, only those instances exist that provided a full set of
object values.  It may be possible that a delta expression which was
evaluated successfully for one sample period may not be successfully
evaluated in the next sample period. This may, for example, be due to
missing instances for some or all of the objects in the expression. In
such cases, the value from the previous sample period (with the
successful evaluation) must not be carried forward to the next sample
period (with the failed evaluation).


3.3.4.  Value Identification

Values resulting from expression evaluation are identified with a
combination of the object identifier (OID) for the data type from
expValueTable (such as expValueCounter32Val), the expression name, and
an OID fragment.

The OID fragment is not an entire OID beginning with iso.dod.org
(1.3.6).  Rather it begins with 0.0.  The remainder is either another 0
when there is no wildcarding or the instance that satisfied the wildcard
if there is wildcarding.


3.4.  Subsets

To pare down the Expression MIBs complexity and use of resources an
implementor can leave out various parts.


3.4.1.  No Wildcards

Leaving out wildcarding significantly reduces the complexity of
retrieving values to evaluate expressions and the processing required to
do so.  Such an implementation would allow expressions made up of
individual MIB objects but would not be suitable for expressions applied
across large tables as each instance in the table would require a
separate expression definition.

Furthermore it would not be suitable for tables with arbitrary, dynamic
instances, as expressions definitions could not predict what instance
values to use.

An implementation without wildcards might be useful for a self-managing





Expires 12 December 2000                                        [Page 7]





Internet Draft    Distributed Management Expression MIB     12 June 2000


system with small tables or few dynamic instances, or one that can do
calculations only for a few key objects.


3.4.2.  No Deltas

Leaving out delta processing significantly reduces state that must be
kept and the burden of ongoing processing even when no one is looking at
the results.  Unfortunately it also makes expressions on counters
unusable, as counters have meaning only as deltas.

An implementation without deltas might be useful for a severly limited,
self-managing system that has no need for expressions or events on
counters.  Although conceivable, such systems would be rare.


3.5.  Structure

The MIB has the following sections:

    o   Resource -- management of the MIB's use of system resources.

    o   Definition -- definition of expressions.

    o   Value -- values of evaluated expressions.


3.5.1.  Resource

The resource section has objects to manage resource usage by wildcarded
delta expressions, a potential major consumer of CPU and memory.


3.5.2.  Definition

The definition section contains the tables that define expressions.

The expression table, indexed by expression owner and expression name,
contains those parameters that apply to the entire expression, such as
the expression itself, the data type of the result, and the sampling
interval if it contains delta or change values.

The object table, indexed by expression owner, expression name and
object index within each expression, contains the parameters that apply
to the individual objects that go into the expression, including the





Expires 12 December 2000                                        [Page 8]





Internet Draft    Distributed Management Expression MIB     12 June 2000


object identifier, sample type, discontinuity indicator, and such.


3.5.3.  Value

The value section contains the values of evaluated expressions.

The value table, indexed by expression name and instance fragment
contains a "discriminated union" of evaluated expression results.  For a
given expression only one of the columns is instantiated, depending on
the result data type for the expression.  The instance fragment is a
constant or the final section of the object identifier that filled in a
wildcard.


3.6.  Examples

The examples refer to tables and objects defined below in the MIB
itself.  They may well make more sense after reading those definitions.


3.6.1.  Wildcarding

An expression may use wildcarded MIB objects that result in multiple
values for the expression.  To specify a wildcarded MIB object a
management application leaves off part or all of the instance portion of
the object identifier, and sets expObjectWildcard to true(1) for that
object.  For our example we'll use a counter of total blessings from a
table of people.  Another table, indexed by town and person has
blessings just from that town.

So the index clauses are:

    personEntry OBJECT-TYPE
    ...
    INDEX { personIndex }

And:

    townPersonEntry OBJECT-TYPE
    ...
    INDEX { townIndex, personIndex }

In our friendly application we may have entered our expression as:






Expires 12 December 2000                                        [Page 9]





Internet Draft    Distributed Management Expression MIB     12 June 2000


    100 * townPersonBlessings.976.* / personBlessings.*

What goes in expExpression is:

    100*$1/$2

For example purposes we'll use some slightly far-fetched OIDs.  The
People MIB is 1.3.6.1.99.7 and the Town MIB is 1.3.6.1.99.11, so for our
two counters the OIDs are:

    personBlessings      1.3.6.1.99.7.1.3.1.4
    townPersonBlessings       1.3.6.1.99.11.1.2.1.9

The rule for wildcards is that all the wildcarded parts have to match
exactly.  In this case that means we have to hardwire the town and only
the personIndex can be wildcarded.  So our values for expObjectID are:

    1.3.6.1.99.7.1.3.1.4
    1.3.6.1.99.11.1.2.1.9.976

We're hardwired to townIndex 976 and personIndex is allowed to vary.

The value of expExpressionPrefix can be either of those two counter OIDs
(including the instance fragment in the second case), since either of
them takes you to a MIB definition where you can look at the INDEX
clause and figure out what's been left off.  What's been left off
doesn't have to work out to be the same object, but it does have to work
out to be the same values (semantics) for the result to make sense.
Note that the managed system can not typically check such semantics and
if given nonsense will return nonsense.

If we have people numbered 6, 19, and 42 in town number 976, the
successive values of expValueInstance will be:

    0.0.6
    0.0.19
    0.0.42

So there will be three values in expValueTable, with those OIDs as the
expValueInstance part of their indexing.










Expires 12 December 2000                                       [Page 10]





Internet Draft    Distributed Management Expression MIB     12 June 2000


3.6.2.  Calculation and Conditional

The following formula for line utilization of a half-duplex link is
adapted from [PracPersp].

    utilization = (ifInOctets + ifOutOctets) * 800 / seconds / ifSpeed

The expression results in the percentage line utilization per second.
The total octets are multipled by 8 to get bits and 100 to scale up the
percentage as an integer.

The following Expression MIB object values implement this as an
expression for all ifIndexes that directly represent actual hardware.
Since the octet counters are Counter32 values, they must be delta
sampled to be meaningful.  The sample period is 6 seconds but for
accuracy and independence is calculated as a delta of sysUpTime.

The expObjectTable entry for ifInOctets has an expObjectConditional that
checks for being a hardware interface.  Only one object in the
expression needs that check associated, since it applies to the whole
expression.  Since ifConnectorPresent is a TruthValue with values of 1
or 2 rather than 0 and non-zero, it must also be in an expression rather
than used directly for the conditional.

The interface-specific discontinuity indicator is supplied only for
ifInOctets since invalidating that sample will invalidate an attempt at
evaluation, effectively invalidating ifOutOctets as well (correctly,
because it has the same indicator).

For notational clarity, in the rest of this document, a string in quotes
as part of the object instance indicates the value that would actually
be one subidentifier per byte.  The objects all belong to owner "me".

Also for clarity OIDs are expressed as the object descriptor and
instance.  In fact they must be supplied numerically, with all
subidentifiers in place before the part for the particular object and
instance.

What the user would set in expExpressionTable:

expExpression.2."me".4."hard"      = "$1==1"
expExpressionValueType.2."me".4."hard"  = unsigned32
expExpressionRowStatus.2."me"4."hard"   = 'active'

expExpression.2."me".4."util"      = "($1+$2)*800/$4/$3"





Expires 12 December 2000                                       [Page 11]





Internet Draft    Distributed Management Expression MIB     12 June 2000


expExpressionValueType.2."me".4."util"  = integer32
expExpressionDeltaInterval.2."me".4."util"   = 6
expExpressionRowStatus.2."me"4."util"   = 'active'

What the user would set in expObjectTable:

expObjectID.2."me".4."hard".1      = ifConnectorPresent
expObjectWildcard.2."me".4."hard".1     = 'true'
expObjectSampleType.2."me".4."hard".1   = 'absoluteValue'
expObjectRowStatus.2."me".4."hard".1    = 'active'

expObjectID.2."me".4."util".1      = ifInOctets
expObjectWildcard.2."me".4."util".1     = 'true'
expObjectSampleType.2."me".4."util".1   = 'deltaValue'
expObjectConditional.2."me".4."util".1  =
expValueUnsigned32Val.4."hard".0.0
expObjectConditionalWildcard.2."me".4."util".1    = 'true'
expObjectDiscontinuityID.2."me".4."util".1   =
ifCounterDiscontinuityTime
expObjectDiscontinuityIDWildcard.2."me".4."util".1     = 'true'
expObjectRowStatus.2."me".4."util".1    = 'active'

expObjectID.2."me".4."util".2      = ifOutOctets
expObjectWildcard.2."me".4."util".2     = 'true'
expObjectSampleType.2."me".4."util".2   = 'deltaValue'
expObjectRowStatus.2."me".4."util".2    = 'active'

expObjectID.2."me".4."util".3      = ifSpeed
expObjectWildcard.2."me".4."util".3     = 'true'
expObjectSampleType.2."me".4."util".3   = 'absoluteValue'
expObjectRowStatus.2."me".4."util".3    = 'active'

expObjectID.2."me".4."util".4      = sysUpTime.0
expObjectWildcard.2."me".4."util".4     = 'false'
expObjectSampleType.2."me".4."util".4   = 'deltaValue'
expObjectRowStatus.2."me".4."util".4    = 'active'

These settings will result in populating one column of expValueTable:

expValueInteger32Val.2."me".4."util".0.0.?

The subidentifier represented by "?" above represents one subidentifier
that takes on a value of ifIndex and identifies a row for each ifIndex
value where ifConnectorPresent is 'true' and the interface was present
for two samples to provide a delta.





Expires 12 December 2000                                       [Page 12]





Internet Draft    Distributed Management Expression MIB     12 June 2000


This value could in turn be used as an event threshold [RFCEventMIB] to
watch for overutilization of all hardware network connections.
















































Expires 12 December 2000                                       [Page 13]





Internet Draft    Distributed Management Expression MIB     12 June 2000


4.  Definitions

DISMAN-EXPRESSION-MIB DEFINITIONS ::= BEGIN

IMPORTS
    MODULE-IDENTITY, OBJECT-TYPE,
    Integer32, Gauge32, Unsigned32,
    Counter32, Counter64, IpAddress,
    TimeTicks, mib-2, zeroDotZero  FROM SNMPv2-SMI
    RowStatus, TruthValue, TimeStamp    FROM SNMPv2-TC
    sysUpTime                 FROM SNMPv2-MIB
    SnmpAdminString           FROM SNMP-FRAMEWORK-MIB
    MODULE-COMPLIANCE, OBJECT-GROUP     FROM SNMPv2-CONF;

dismanExpressionMIB MODULE-IDENTITY
    LAST-UPDATED "200006120000Z" -- 12 June 2000
    ORGANIZATION "IETF Distributed Management Working Group"
    CONTACT-INFO "Ramanathan Kavasseri
                  Cisco Systems, Inc.
                  170 West Tasman Drive,
                  San Jose CA 95134-1706.
                  Phone: +1 408 527 2446
                  Email: ramk@cisco.com"
    DESCRIPTION
     "The MIB module for defining expressions of MIB objects for
     management purposes."
-- Revision History

       REVISION     "200006120000Z" -- 12 June 2000
       DESCRIPTION  "This is the initial version of this MIB.
                    Published as RFC xxxx"
    ::= { mib-2 xx } -- final assignment by IANA at publication time


dismanExpressionMIBObjects OBJECT IDENTIFIER ::= { dismanExpressionMIB 1 }

expResource    OBJECT IDENTIFIER ::= { dismanExpressionMIBObjects 1 }
expDefine OBJECT IDENTIFIER ::= { dismanExpressionMIBObjects 2 }
expValue  OBJECT IDENTIFIER ::= { dismanExpressionMIBObjects 3 }


--
-- Resource Control
--






Expires 12 December 2000                                       [Page 14]





Internet Draft    Distributed Management Expression MIB     12 June 2000


expResourceDeltaMinimum OBJECT-TYPE
    SYNTAX      Integer32 (-1 | 1..600)
    UNITS       "seconds"
    MAX-ACCESS  read-write
    STATUS      current
    DESCRIPTION
     "The minimum expExpressionDeltaInterval this system will
     accept.  A system may use the larger values of this minimum to
     lessen the impact of constantly computing deltas.  For larger
     delta sampling intervals the system samples less often and
     suffers less overhead.  This object provides a way to enforce
     such lower overhead for all expressions created after it is
     set.

     The value -1 indicates that expResourceDeltaMinimum is
     irrelevant as the system will not accept 'deltaValue' as a
     value for expObjectSampleType.

     Unless explicitly resource limited, a system's value for
     this object should be 1, allowing as small as a 1 second
     interval for ongoing delta sampling.

     Changing this value will not invalidate an existing setting
     of expObjectSampleType."
    ::= { expResource 1 }

expResourceDeltaWildcardInstanceMaximum OBJECT-TYPE
    SYNTAX      Unsigned32
    UNITS       "instances"
    MAX-ACCESS  read-write
    STATUS      current
    DESCRIPTION
     "For every instance of a deltaValue object, one dynamic instance
     entry is needed for holding the instance value from the previous
     sample, i.e. to maintain state.

     This object limits maximum number of dynamic instance entries
     this system will support for wildcarded delta objects in
     expressions. For a given delta expression, the number of
     dynamic instances is the number of values that meet all criteria
     to exist times the number of delta values in the expression.

     A value of 0 indicates no preset limit, that is, the limit
     is dynamic based on system operation and resources.






Expires 12 December 2000                                       [Page 15]





Internet Draft    Distributed Management Expression MIB     12 June 2000


     Unless explicitly resource limited, a system's value for
     this object should be 0.

     Changing this value will not eliminate or inhibit existing delta
     wildcard instance objects but will prevent the creation of more
     such objects.

     An attempt to allocate beyond the limit results in expErrorCode
     being tooManyWildcardValues for that evaluation attempt."
    ::= { expResource 2 }

expResourceDeltaWildcardInstances OBJECT-TYPE
    SYNTAX      Gauge32
    UNITS       "instances"
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
     "The number of currently active instance entries as
     defined for expResourceDeltaWildcardInstanceMaximum."
    ::= { expResource 3 }

expResourceDeltaWildcardInstancesHigh OBJECT-TYPE
    SYNTAX      Gauge32
    UNITS       "instances"
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
     "The highest value of expResourceDeltaWildcardInstances
     that has occurred since initialization of the managed
     system."
    ::= { expResource 4 }

expResourceDeltaWildcardInstanceResourceLacks OBJECT-TYPE
    SYNTAX      Counter32
    UNITS       "instances"
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
     "The number of times this system could not evaluate an
     expression because that would have created a value instance in
     excess of expResourceDeltaWildcardInstanceMaximum."
    ::= { expResource 5 }


--





Expires 12 December 2000                                       [Page 16]





Internet Draft    Distributed Management Expression MIB     12 June 2000


-- Definition
--
-- Expression Definition Table
--

expExpressionTable OBJECT-TYPE
    SYNTAX      SEQUENCE OF ExpExpressionEntry
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
     "A table of expression definitions."
    ::= { expDefine 1 }

expExpressionEntry OBJECT-TYPE
    SYNTAX      ExpExpressionEntry
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
     "Information about a single expression.  New expressions
     can be created using expExpressionRowStatus.

     To create an expression first create the named entry in this
     table.  Then use expExpressionName to populate expObjectTable.
     For expression evaluation to succeed all related entries in
     expExpressionTable and expObjectTable must be 'active'.  If
     these conditions are not met the corresponding values in
     expValue simply are not instantiated.

     Deleting an entry deletes all related entries in expObjectTable
     and expErrorTable.

     Because of the relationships among the multiple tables for an
     expression (expExpressionTable, expObjectTable, and
     expValueTable) and the SNMP rules for independence in setting
     object values, it is necessary to do final error checking when
     an expression is evaluated, that is, when one of its instances
     in expValueTable is read or a delta interval expires.  Earlier
     checking need not be done and an implementation may not impose
     any ordering on the creation of objects related to an
     expression.

     To maintain security of MIB information, when creating a new row in
     this table, the managed system must record the security credentials
     of the requester.  These security credentials are the parameters
     necessary as inputs to isAccessAllowed from the Architecture for





Expires 12 December 2000                                       [Page 17]





Internet Draft    Distributed Management Expression MIB     12 June 2000


     Describing SNMP Management Frameworks.  When obtaining the objects
     that make up the expression, the system must (conceptually) use
     isAccessAllowed to ensure that it does not violate security.

     The evaluation of the expression takes place under the
     security credentials of the creator of its expExpressionEntry.

     Values of read-write objects in this table may be changed
     at any time."
    INDEX       { expExpressionOwner, expExpressionName }
    ::= { expExpressionTable 1 }

ExpExpressionEntry ::= SEQUENCE {
    expExpressionOwner           SnmpAdminString,
    expExpressionName             SnmpAdminString,
    expExpression                OCTET STRING,
    expExpressionValueType       INTEGER,
    expExpressionComment         SnmpAdminString,
    expExpressionDeltaInterval   Integer32,
    expExpressionPrefix           OBJECT IDENTIFIER,
    expExpressionErrors          Counter32,
    expExpressionEntryStatus     RowStatus
}

expExpressionOwner OBJECT-TYPE
   SYNTAX      SnmpAdminString (SIZE(0..32))
   MAX-ACCESS  not-accessible
   STATUS      current
   DESCRIPTION
     "The owner of this entry. The exact semantics of this
     string are subject to the security policy defined by the
     security administrator."
    ::= { expExpressionEntry 1 }

expExpressionName OBJECT-TYPE
    SYNTAX      SnmpAdminString (SIZE (1..32))
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
     "The name of the expression.  This is locally unique, within
     the scope of an expExpressionOwner."
    ::= { expExpressionEntry 2 }

expExpression OBJECT-TYPE
    SYNTAX      OCTET STRING (SIZE (1..1024))





Expires 12 December 2000                                       [Page 18]





Internet Draft    Distributed Management Expression MIB     12 June 2000


    MAX-ACCESS  read-create
    STATUS      current
    DESCRIPTION
     "The expression to be evaluated.  This object is the same
     as a DisplayString (RFC 1903) except for its maximum length.

     Except for the variable names the expression is in ANSI C
     syntax.  Only the subset of ANSI C operators and functions
     listed here is allowed.

     Variables are expressed as a dollar sign ('$') and an
     integer that corresponds to an expObjectIndex.  An
     example of a valid expression is:

          ($1-$5)*100

     Expressions must not be recursive, that is although an expression
     may use the results of another expression, it must not contain
     any variable that is directly or indirectly a result of its own
     evaluation. The managed system must check for recursive
     expressions.

     The only allowed operators are:

          ( )
          - (unary)
          + - * / %
          & | ^ << >> ~
          ! && || == != > >= < <=

     Note the parentheses are included for parenthesizing the
     expression, not for casting data types.

     The only constant types defined are:

          int (32-bit signed)
          long (64-bit signed)
          unsigned int
          unsigned long
          hexadecimal
          character
          string
          oid

     The default type for a positive integer is int unless it is too





Expires 12 December 2000                                       [Page 19]





Internet Draft    Distributed Management Expression MIB     12 June 2000


     large in which case it is long.

     All but oid are as defined for ANSI C.  Note that a
     hexadecimal constant may end up as a scalar or an array of
     8-bit integers.  A string constant is enclosed in double
     quotes and may contain back-slashed individual characters
     as in ANSI C.

     An oid constant comprises 32-bit, unsigned integers and at
     least one period, for example:

          0.
          .0
          1.3.6.1

     No additional leading or trailing subidentifiers are automatically
     added to an OID constant.  The constant is taken as expressed.

     Integer-typed objects are treated as 32- or 64-bit, signed
     or unsigned integers, as appropriate.  The results of
     mixing them are as for ANSI C, including the type of the
     result.  Note that a 32-bit value is thus promoted to 64 bits
     only in an operation with a 64-bit value.  There is no
     provision for larger values to handle overflow.

     Relative to SNMP data types, a resulting value becomes
     unsigned when calculating it uses any unsigned value,
     including a counter.  To force the final value to be of
     data type counter the expression must explicitly use the
     counter32() or counter64() function (defined below).

     OCTET STRINGS and OBJECT IDENTIFIERs are treated as
     one-dimensioned     arrays of unsigned 8-bit integers and
     unsigned 32-bit integers, respectively.

     IpAddresses are treated as 32-bit, unsigned integers in
     network byte order, that is, the hex version of 255.0.0.0 is
     0xff000000.

     Conditional expressions result in a 32-bit, unsigned integer
     of value 0 for false or 1 for true. When an arbitrary value
     is used as a boolean 0 is false and non-zero is true.

     Rules for the resulting data type from an operation, based on
     the operator:





Expires 12 December 2000                                       [Page 20]





Internet Draft    Distributed Management Expression MIB     12 June 2000


     For << and >> the result is the same as the left hand operand.

     For &&, ||, ==, !=, <, <=, >, and >= the result is always
     Unsigned32.

     For unary - the result is always Integer32.

     For +, -, *, /, %, &, |, and ^ the result is promoted according
     to the following rules, in order from most to least preferred:

          If left hand and right hand operands are the same type,
          use that.

          If either side is Counter64, use that.

          If either side is IpAddress, use that.

          If either side is TimeTicks, use that.

          If either side is Counter32, use that.

          Otherwise use Unsigned32.

     The following rules say what operators apply with what data
     types.  Any combination not explicitly defined does not work.

     For all operators any of the following can be the left hand or
     right hand operand: Integer32, Counter32, Unsigned32, Counter64.

     The operators +, -, *, /, %, <, <=, >, and >= work with
     TimeTicks.

     The operators &, |, and ^ work with IpAddress.

     The operators << and >> work with IpAddress but only as the
     left hand operand.

     The + operator performs a concatenation of two OCTET STRINGs or
     two OBJECT IDENTIFIERs.

     The operators &, | perform bitwise operations on OCTET STRINGs.
     If the OCTET STRING happens to be a DisplayString the results
     may be meaningless, but the agent system does not check this as
     some such systems do not have this information.






Expires 12 December 2000                                       [Page 21]





Internet Draft    Distributed Management Expression MIB     12 June 2000


     The operators << and >> perform bitwise operations on OCTET
     STRINGs appearing as the left hand operand.

     The only functions defined are:

          counter32
          counter64
          arraySection
          stringBegins
          stringEnds
          stringContains
          oidBegins
          oidEnds
          oidContains
          average
          maximum
          minimum
          sum
          exists

     The following function definitions indicate their parameters by
     naming the data type of the parameter in the parameter's position
     in the parameter list.  The parameter must be of the type indicated
     and generally may be a constant, a MIB object, a function, or an
     expression.

     counter32(integer) - wrapped around an integer value counter32
     forces Counter32 as a data type.

     counter64(integer) - similar to counter32 except that the
     resulting data type is 'counter64'.

     arraySection(array, integer, integer) - selects a piece of an
     array (i.e. part of an OCTET STRING or OBJECT IDENTIFIER).  The
     integer arguments are in the range 0 to 4,294,967,295.  The
     first is an initial array index (one-dimensioned) and the second
     is an ending array index.  A value of 0 indicates first or last
     element, respectively.  If the first element is larger than the
     array length the result is 0 length.  If the second integer is
     less than or equal to the first, the result is 0 length.  If the
     second is larger than the array length it indicates last
     element.

     stringBegins/Ends/Contains(octetString, octetString) - looks for
     the second string (which can be a string constant) in the first





Expires 12 December 2000                                       [Page 22]





Internet Draft    Distributed Management Expression MIB     12 June 2000


     and returns the one-dimensioned arrayindex where the match began.
     A return value of 0 indicates no match (i.e. boolean false).

     oidBegins/Ends/Contains(oid, oid) - looks for the second OID
     (which can be an OID constant) in the first and returns the
     the one-dimensioned index where the match began. A return value
     of 0 indicates no match (i.e. boolean false).

     average/maximum/minimum(integer) - calculates the average,
     minimum, or maximum value of the integer valued object over
     multiple sample times.  If the object disappears for any
     sample period, the accumlation and the resulting value object
     cease to exist until the object reappears at which point the
     calculation starts over.

     sum(integerObject*) - sums all available values of the
     wildcarded integer object, resulting in an integer scalar.  Must
     be used with caution as it wraps on overflow with no
     notification.

     exists(anyTypeObject) - verifies the object instance exists. A
     return value of 0 indicates NoSuchInstance (i.e. boolean
     false)."
    ::= { expExpressionEntry 3 }

expExpressionValueType OBJECT-TYPE
    SYNTAX      INTEGER { counter32(1), unsigned32(2), timeTicks(3),
                 integer32(4), ipAddress(5), octetString(6),
                 objectId(7), counter64(8) }
    MAX-ACCESS  read-create
    STATUS      current
    DESCRIPTION
     "The type of the expression value.  One and only one of the
     value objects in expValueTable will be instantiated to match
     this type.

     If the result of the expression can not be made into this type,
     an invalidOperandType error will occur."
    DEFVAL      { counter32 }
    ::= { expExpressionEntry 4 }

expExpressionComment OBJECT-TYPE
    SYNTAX      SnmpAdminString
    MAX-ACCESS  read-create
    STATUS      current





Expires 12 December 2000                                       [Page 23]





Internet Draft    Distributed Management Expression MIB     12 June 2000


    DESCRIPTION
     "A comment to explain the use or meaning of the expression."
    DEFVAL      { ''H }
    ::= { expExpressionEntry 5 }

expExpressionDeltaInterval OBJECT-TYPE
    SYNTAX      Integer32 (0..86400)
    UNITS       "seconds"
    MAX-ACCESS  read-create
    STATUS      current
    DESCRIPTION
     "Sampling interval for objects in this expression with
     expObjectSampleType 'deltaValue'.

     This object has no effect if the the expression has no
     deltaValue objects.

     A value of 0 indicates no automated sampling.  In this case
     the delta is the difference from the last time the expression
     was evaluated.  Note that this is subject to unpredictable
     delta times in the face of retries or multiple managers.

     A value greater than zero is the number of seconds between
     automated samples.

     Until the delta interval has expired once the delta for the
     object is effectively not instantiated and evaluating
     the expression has results as if the object itself were not
     instantiated.

     Note that delta values potentially consume large amounts of
     system CPU and memory.  Delta state and processing must
     continue constantly even if the expression is not being used.
     That is, the expression is being evaluated every delta interval,
     even if no application is reading those values.  For wildcarded
     objects this can be substantial overhead.

     Note that delta intervals, external expression value sampling
     intervals and delta intervals for expressions within other
     expressions can have unusual interactions as they are impossible
     to synchronize accurately.  In general one interval embedded
     below another must be enough shorter that the higher sample
     sees relatively smooth, predictable behavior.  So, for example,
     to avoid the higher level getting the same sample twice, the
     lower level should sample at least twice as fast as the higher





Expires 12 December 2000                                       [Page 24]





Internet Draft    Distributed Management Expression MIB     12 June 2000


     level does."
    DEFVAL      { 0 }
    ::= { expExpressionEntry 6 }

expExpressionPrefix OBJECT-TYPE
    SYNTAX      OBJECT IDENTIFIER
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
     "An object prefix to assist an application in determining
     the instance indexing to use in expValueTable, relieving the
     application of the need to scan the expObjectTable to
     determine such a prefix.

     See expObjectTable for information on wildcarded objects.

     If the expValueInstance portion of the value OID may
     be treated as a scalar (that is, normally, 0) the value of
     expExpressionPrefix is zero length, that is, no OID at all.
     Note that zero length implies a null OID, not the OID 0.0.

     Otherwise, the value of expExpressionPrefix is the expObjectID
     value of any one of the wildcarded objects for the expression.
     This is sufficient, as the remainder, that is, the instance
     fragment relevant to instancing the values, must be the same for
     all wildcarded objects in the expression."
    ::= { expExpressionEntry 7 }

expExpressionErrors OBJECT-TYPE
    SYNTAX      Counter32
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
     "The number of errors encountered while evaluating this
     expression.

     Note that an object in the expression not being accessible,
     is not considered an error. An example of an inaccessible
     object is when the object is excluded from the view of the
     user whose security credentials are used in the expression
     evaluation. In such cases, it is a legitimate condition
     that causes the corresponding expression value not to be
     instantiated."
    ::= { expExpressionEntry 8 }






Expires 12 December 2000                                       [Page 25]





Internet Draft    Distributed Management Expression MIB     12 June 2000


expExpressionEntryStatus OBJECT-TYPE
    SYNTAX      RowStatus
    MAX-ACCESS  read-create
    STATUS      current
    DESCRIPTION
     "The control that allows creation and deletion of entries."
    ::= { expExpressionEntry 9 }


--
-- Expression Error Table
--

expErrorTable OBJECT-TYPE
    SYNTAX      SEQUENCE OF ExpErrorEntry
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
     "A table of expression errors."
    ::= { expDefine 2 }

expErrorEntry OBJECT-TYPE
    SYNTAX      ExpErrorEntry
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
     "Information about errors in processing an expression.

     Entries appear in this table only when there is a matching
     expExpressionEntry and then only when there has been an
     error for that expression as reflected by the error codes
     defined for expErrorCode."
    INDEX       { expExpressionOwner, expExpressionName }
    ::= { expErrorTable 1 }

ExpErrorEntry ::= SEQUENCE {
    expErrorTime       TimeStamp,
    expErrorIndex      Integer32,
    expErrorCode       INTEGER,
    expErrorInstance   OBJECT IDENTIFIER
}

expErrorTime OBJECT-TYPE
    SYNTAX      TimeStamp
    MAX-ACCESS  read-only





Expires 12 December 2000                                       [Page 26]





Internet Draft    Distributed Management Expression MIB     12 June 2000


    STATUS      current
    DESCRIPTION
     "The value of sysUpTime the last time an error caused a
     failure to evaluate this expression."
    ::= { expErrorEntry 1 }

expErrorIndex OBJECT-TYPE
    SYNTAX      Integer32
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
     "The one-dimensioned character array index into
     expExpression for where the error occurred.  The value
     zero indicates irrelevance."
    ::= { expErrorEntry 2 }

expErrorCode OBJECT-TYPE
    SYNTAX      INTEGER {
          invalidSyntax(1),
          undefinedObjectIndex(2),
          unrecognizedOperator(3),
          unrecognizedFunction(4),
          invalidOperandType(5),
          unmatchedParenthesis(6),
          tooManyWildcardValues(7),
          recursion(8),
          deltaTooShort(9),
          resourceUnavailable(10),
          divideByZero(11)
          }
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
     "The error that occurred.  In the following explanations the
     expected timing of the error is in parentheses.  'S' means
     the error occurs on a Set request.  'E' means the error
     occurs on the attempt to evaluate the expression either due to
     Get from expValueTable or in ongoing delta processing.

     invalidSyntax       the value sent for expExpression is not
                    valid Expression MIB expression syntax
                    (S)
     undefinedObjectIndex     an object reference ($n) in
                    expExpression does not have a matching
                    instance in expObjectTable (E)





Expires 12 December 2000                                       [Page 27]





Internet Draft    Distributed Management Expression MIB     12 June 2000


     unrecognizedOperator     the value sent for expExpression held an
                    unrecognized operator (S)
     unrecognizedFunction     the value sent for expExpression held an
                    unrecognized function name (S)
     invalidOperandType  an operand in expExpression is not the
                    right type for the associated operator
                    or result (SE)
     unmatchedParenthesis     the value sent for expExpression is not
                    correctly parenthesized (S)
     tooManyWildcardValues    evaluating the expression exceeded the
                    limit set by
                    expResourceDeltaWildcardInstanceMaximum
                    (E)
     recursion      through some chain of embedded
                    expressions the expression invokes itself
                    (E)
     deltaTooShort       the delta for the next evaluation passed
                    before the system could evaluate the
                    present sample (E)
     resourceUnavailable some resource, typically dynamic memory,
                    was unavailable (SE)
     divideByZero        an attempt to divide by zero occurred
                    (E)

     For the errors that occur when the attempt is made to set
     expExpression Set request fails with the SNMP error code
     'wrongValue'.  Such failures refer to the most recent failure to
     Set expExpression, not to the present value of expExpression
     which must be either unset or syntactically correct.

     Errors that occur during evaluation for a Get* operation return
     the SNMP error code 'genErr' except for 'tooManyWildcardValues'
     and 'resourceUnavailable' which return the SNMP error code
     'resourceUnavailable'."
    ::= { expErrorEntry 3 }

expErrorInstance OBJECT-TYPE
    SYNTAX      OBJECT IDENTIFIER
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
     "The expValueInstance being evaluated when the error
     occurred.  A zero-length indicates irrelevance."
    ::= { expErrorEntry 4 }






Expires 12 December 2000                                       [Page 28]





Internet Draft    Distributed Management Expression MIB     12 June 2000


--
-- Object Table
--

expObjectTable OBJECT-TYPE
    SYNTAX      SEQUENCE OF ExpObjectEntry
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
     "A table of object definitions for each expExpression.

     Wildcarding instance IDs:

     It is legal to omit all or part of the instance portion for
     some or all of the objects in an expression. (See the
     DESCRIPTION of expObjectID for details.  However, note that
     if more than one object in the same expression is wildcarded
     in this way, they all must be objects where that portion of
     the instance is the same.  In other words, all objects may be
     in the same SEQUENCE or in different SEQUENCEs but with the
     same semantic index value (e.g., a value of ifIndex)
     for the wildcarded portion."
    ::= { expDefine 3 }

expObjectEntry OBJECT-TYPE
    SYNTAX      ExpObjectEntry
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
     "Information about an object.  An application uses
     expObjectEntryStatus to create entries in this table while
     in the process of defining an expression.

     Values of read-create objects in this table may be
     changed at any time."
    INDEX       { expExpressionOwner, expExpressionName, expObjectIndex }
    ::= { expObjectTable 1 }

ExpObjectEntry ::= SEQUENCE {
    expObjectIndex                     Unsigned32,
    expObjectID                        OBJECT IDENTIFIER,
    expObjectIDWildcard                TruthValue,
    expObjectSampleType                INTEGER,
    expObjectDeltaDiscontinuityID      OBJECT IDENTIFIER,
    expObjectDiscontinuityIDWildcard   TruthValue,





Expires 12 December 2000                                       [Page 29]





Internet Draft    Distributed Management Expression MIB     12 June 2000


    expObjectDiscontinuityIDType       INTEGER,
    expObjectConditional               OBJECT IDENTIFIER,
    expObjectConditionalWildcard       TruthValue,
    expObjectEntryStatus               RowStatus
}

expObjectIndex OBJECT-TYPE
    SYNTAX      Unsigned32 (1..4294967295)
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
     "Within an expression, a unique, numeric identification for an
     object.  Prefixed with a dollar sign ('$') this is used to
     reference the object in the corresponding expExpression."
    ::= { expObjectEntry 1 }

expObjectID OBJECT-TYPE
    SYNTAX      OBJECT IDENTIFIER
    MAX-ACCESS  read-create
    STATUS      current
    DESCRIPTION
     "The OBJECT IDENTIFIER (OID) of this object.  The OID may be
     fully qualified, meaning it includes a complete instance
     identifier part (e.g., ifInOctets.1 or sysUpTime.0), or it
     may not be fully qualified, meaning it may lack all or part
     of the instance identifier.  If the expObjectID is not fully
     qualified, then expObjectWildcard must be set to true(1).
     The value of the expression will be multiple
     values, as if done for a GetNext sweep of the object.

     An object here may itself be the result of an expression but
     recursion is not allowed.

     NOTE:  The simplest implementations of this MIB may not allow
     wildcards."
    ::= { expObjectEntry 2 }

expObjectIDWildcard  OBJECT-TYPE
    SYNTAX      TruthValue
    MAX-ACCESS  read-create
    STATUS      current
    DESCRIPTION
        "A true value indicates the expObjecID of this row is a wildcard
        object. False indicates that expObjectID is fully instanced.
        If all expObjectWildcard values for a given expression are FALSE,





Expires 12 December 2000                                       [Page 30]





Internet Draft    Distributed Management Expression MIB     12 June 2000


        expExpressionPrefix will reflect a scalar object (ie will
        be 0.0).

        NOTE:  The simplest implementations of this MIB may not allow
        wildcards."
    DEFVAL      { false }
    ::= { expObjectEntry 3 }


expObjectSampleType OBJECT-TYPE
    SYNTAX      INTEGER { absoluteValue(1), deltaValue(2),
                          changedValue(3) }
    MAX-ACCESS  read-create
    STATUS      current
    DESCRIPTION
     "The method of sampling the selected variable.

     An 'absoluteValue' is simply the present value of the object.

     A 'deltaValue' is the present value minus the previous value,
     which was sampled expExpressionDeltaInterval seconds ago.
     This is intended primarily for use with SNMP counters, which are
     meaningless as an 'absoluteValue', but may be used with any
     integer-based value.

     A 'changedValue' is a boolean for whether the present value is
     different from the previous value.  It is applicable to any data
     type and results in an Unsigned32 with value 1 if the object's
     value is changed and 0 if not.  In all other respects it is as a
     'deltaValue' and all statements and operation regarding delta
     values apply to changed values.

     When an expression contains both delta and absolute values
     the absolute values are obtained at the end of the delta
     period."
    DEFVAL      { absoluteValue }
    ::= { expObjectEntry 4 }

sysUpTimeInstance OBJECT IDENTIFIER ::= { sysUpTime 0 }

expObjectDeltaDiscontinuityID OBJECT-TYPE
    SYNTAX      OBJECT IDENTIFIER
    MAX-ACCESS  read-create
    STATUS      current
    DESCRIPTION





Expires 12 December 2000                                       [Page 31]





Internet Draft    Distributed Management Expression MIB     12 June 2000


     "The OBJECT IDENTIFIER (OID) of a TimeTicks, TimeStamp, or
     DateAndTime object that indicates a discontinuity in the value
     at expObjectID.

     This object is instantiated only if expObjectSampleType is
     'deltaValue' or 'changedValue'.

     The OID may be for a leaf object (e.g. sysUpTime.0) or may
     be wildcarded to match expObjectID.

     This object supports normal checking for a discontinuity in a
     counter.  Note that if this object does not point to sysUpTime
     discontinuity checking must still check sysUpTime for an overall
     discontinuity.

     If the object identified is not accessible no discontinuity
     check will be made."
    DEFVAL      { sysUpTimeInstance }
    ::= { expObjectEntry 5 }

expObjectDiscontinuityIDWildcard OBJECT-TYPE
     SYNTAX      TruthValue
     MAX-ACCESS  read-create
     STATUS      current
     DESCRIPTION
     "A true value indicates the expObjectDeltaDiscontinuityID of
     this row is a wildcard object.  False indicates that
     expObjectDeltaDiscontinuityID is fully instanced.

     This object is instantiated only if expObjectSampleType is
     'deltaValue' or 'changedValue'.

     NOTE:  The simplest implementations of this MIB may not allow
     wildcards."
    DEFVAL      { false }
     ::= { expObjectEntry 6 }

expObjectDiscontinuityIDType OBJECT-TYPE
     SYNTAX      INTEGER { timeTicks(1), timeStamp(2), dateAndTime(3) }
     MAX-ACCESS  read-create
     STATUS      current
     DESCRIPTION
     "The value 'timeTicks' indicates the expObjectDeltaDiscontinuityID
     of this row is of syntax TimeTicks.  The value 'timeStamp' indicates
     syntax TimeStamp.  The value 'dateAndTime indicates syntax





Expires 12 December 2000                                       [Page 32]





Internet Draft    Distributed Management Expression MIB     12 June 2000


     DateAndTime.

     This object is instantiated only if expObjectSampleType is
     'deltaValue' or 'changedValue'."
    DEFVAL      { timeTicks }
     ::= { expObjectEntry 7 }


expObjectConditional OBJECT-TYPE
    SYNTAX      OBJECT IDENTIFIER
    MAX-ACCESS  read-create
    STATUS      current
    DESCRIPTION
     "The OBJECT IDENTIFIER (OID) of an object that overrides
     whether the instance of expObjectID is to be considered
     usable.  If the value of the object at expObjectConditional
     is 0 or not instantiated, the object at expObjectID is
     treated as if it is not instantiated.  In other words,
     expObjectConditional is a filter that controls whether or
     not to use the value at expObjectID.

     The OID may be for a leaf object (e.g. sysObjectID.0) or may be
     wildcarded to match expObjectID.  If expObject is wildcarded and
     expObjectID in the same row is not, the wild portion of
     expObjectConditional must match the wildcarding of the rest of
     the expression.  If no object in the expression is wildcarded
     but expObjectConditional is, use the lexically first instance
     (if any) of expObjectConditional.

     If the value of expObjectConditional is 0.0 operation is
     as if the value pointed to by expObjectConditional is a
     non-zero (true) value.

     Note that expObjectConditional can not trivially use an object
     of syntax TruthValue, since the underlying value is not 0 or 1."
    DEFVAL      { zeroDotZero }
    ::= { expObjectEntry 8 }

 expObjectConditionalWildcard  OBJECT-TYPE
     SYNTAX      TruthValue
     MAX-ACCESS  read-create
     STATUS      current
     DESCRIPTION

     "A true value indicates the expObjectConditional of this row is





Expires 12 December 2000                                       [Page 33]





Internet Draft    Distributed Management Expression MIB     12 June 2000


     a wildcard object. False indicates that expObjectConditional is
     fully instanced.

     NOTE: The simplest implementations of this MIB may not allow
     wildcards."
    DEFVAL      { false }
     ::= { expObjectEntry 9 }

expObjectEntryStatus OBJECT-TYPE
    SYNTAX      RowStatus
    MAX-ACCESS  read-create
    STATUS      current
    DESCRIPTION
     "The control that allows creation/deletion of entries.

     Objects in this table may be changed while
     expObjectEntryStatus is in any state."
    ::= { expObjectEntry 10 }

--
-- Expression Value Table
--

expValueTable OBJECT-TYPE
    SYNTAX      SEQUENCE OF ExpValueEntry
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
     "A table of values from evaluated expressions."
    ::= { expValue 1 }

expValueEntry OBJECT-TYPE
    SYNTAX      ExpValueEntry
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
     "A single value from an evaluated expression.  For a given
     instance, only one 'Val' object in the conceptual row will be
     instantiated, that is, the one with the appropriate type for
     the value.  For values that contain no objects of
     expObjectSampleType 'deltaValue' or 'changedValue', reading a
     value from the table causes the evaluation of the expression
     for that value.  For those that contain a 'deltaValue' or
     'changedValue' the value read is as of the last sampling
     interval.





Expires 12 December 2000                                       [Page 34]





Internet Draft    Distributed Management Expression MIB     12 June 2000


     If in the attempt to evaluate the expression one or more
     of the necessary objects is not available, the corresponding
     entry in this table is effectively not instantiated.

     To maintain security of MIB information, when creating a new
     row in this table, the managed system must record the security
     credentials of the requester.  These security credentials are
     the parameters necessary as inputs to isAccessAllowed from [RFC2571].
     When obtaining the objects that make up the expression, the
     system must (conceptually) use isAccessAllowed to ensure that
     it does not violate security.

     The evaluation of that expression takes place under the
     security credentials of the creator of its expExpressionEntry.

     To maintain security of MIB information, expression evaluation must
     take place using security credentials for the implied Gets of the
     objects in the expression as inputs (conceptually) to
     isAccessAllowed from the Architecture for Describing SNMP Management
     Frameworks.  These are the security credentials of the creator
     of the corresponding expExpressionEntry."
    INDEX       { expExpressionOwner, expExpressionName,
                  IMPLIED expValueInstance }
    ::= { expValueTable 1 }

ExpValueEntry ::= SEQUENCE {
    expValueInstance          OBJECT IDENTIFIER,
    expValueCounter32Val      Counter32,
    expValueUnsigned32Val     Unsigned32,
    expValueTimeTicksVal      TimeTicks,
    expValueInteger32Val      Integer32,
    expValueIpAddressVal      IpAddress,
    expValueOctetStringVal    OCTET STRING,
    expValueOidVal            OBJECT IDENTIFIER,
    expValueCounter64Val      Counter64
}

expValueInstance OBJECT-TYPE
    SYNTAX      OBJECT IDENTIFIER
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
     "The final instance portion of a value's OID according to
     the wildcarding in instances of expObjectID for the
     expression.  The prefix of this OID fragment is 0.0,





Expires 12 December 2000                                       [Page 35]





Internet Draft    Distributed Management Expression MIB     12 June 2000


     leading to the following behavior.

     If there is no wildcarding, the value is 0.0.0.  In other
     words, there is one value which standing alone would have
     been a scalar with a 0 at the end of its OID.

     If there is wildcarding, the value is 0.0 followed by
     a value that the wildcard can take, thus defining one value
     instance for each real, possible value of the wildcard.
     So, for example, if the wildcard worked out to be an ifIndex,
     there is an expValueInstance for each applicable ifIndex."
    ::= { expValueEntry 1 }

expValueCounter32Val OBJECT-TYPE
    SYNTAX      Counter32
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
     "The value when expExpressionValueType is 'counter32'."
    ::= { expValueEntry 2 }

expValueUnsigned32Val OBJECT-TYPE
    SYNTAX      Unsigned32
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
     "The value when expExpressionValueType is 'unsigned32'."
    ::= { expValueEntry 3 }

expValueTimeTicksVal OBJECT-TYPE
    SYNTAX      TimeTicks
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
     "The value when expExpressionValueType is 'timeTicks'."
    ::= { expValueEntry 4 }

expValueInteger32Val OBJECT-TYPE
    SYNTAX      Integer32
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
     "The value when expExpressionValueType is 'integer32'."
    ::= { expValueEntry 5 }






Expires 12 December 2000                                       [Page 36]





Internet Draft    Distributed Management Expression MIB     12 June 2000


expValueIpAddressVal OBJECT-TYPE
    SYNTAX      IpAddress
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
     "The value when expExpressionValueType is 'ipAddress'."
    ::= { expValueEntry 6 }

expValueOctetStringVal OBJECT-TYPE
    SYNTAX      OCTET STRING (SIZE (0..65536))
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
     "The value when expExpressionValueType is 'octetString'."
    ::= { expValueEntry 7 }

expValueOidVal OBJECT-TYPE
    SYNTAX      OBJECT IDENTIFIER
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
     "The value when expExpressionValueType is 'objectId'."
    ::= { expValueEntry 8 }

expValueCounter64Val OBJECT-TYPE
    SYNTAX      Counter64
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
     "The value when expExpressionValueType is 'counter64'."
    ::= { expValueEntry 9 }

--
-- Conformance
--

dismanExpressionMIBConformance OBJECT IDENTIFIER ::= { dismanExpressionMIB 3 }
dismanExpressionMIBCompliances OBJECT IDENTIFIER ::=
    { dismanExpressionMIBConformance 1 }
dismanExpressionMIBGroups      OBJECT IDENTIFIER ::=
    { dismanExpressionMIBConformance 2 }

-- Compliance

dismanExpressionMIBCompliance MODULE-COMPLIANCE





Expires 12 December 2000                                       [Page 37]





Internet Draft    Distributed Management Expression MIB     12 June 2000


     STATUS current
     DESCRIPTION
          "The compliance statement for entities which implement
          the Expression MIB."
     MODULE    -- this module
          MANDATORY-GROUPS {
               dismanExpressionResourceGroup,
               dismanExpressionDefinitionGroup,
               dismanExpressionValueGroup
          }

     OBJECT         expResourceDeltaMinimum
     SYNTAX         Integer32 (-1 | 60..600)
     DESCRIPTION
          "Implementation need not allow deltas or it may
          implement them and restrict them to higher values."

     OBJECT         expObjectSampleType
     WRITE-SYNTAX   INTEGER { absoluteValue(1) }
     DESCRIPTION
          "Implementation may disallow deltas calculation or
          change detection."

     OBJECT         expObjectIDWildcard
     WRITE-SYNTAX   INTEGER { false(2) }
     DESCRIPTION
          "Implementation may allow wildcards."

     OBJECT         expObjectDiscontinuityIDWildcard
     WRITE-SYNTAX   INTEGER { false(2) }
     DESCRIPTION
          "Implementation need not allow wildcards."

     OBJECT          expObjectConditionalWildcard
     WRITE-SYNTAX   INTEGER { false(2) }
     DESCRIPTION
          "Implementation need not allow deltas wildcards."

     ::= { dismanExpressionMIBCompliances 1 }

-- Units of Conformance

dismanExpressionResourceGroup OBJECT-GROUP
     OBJECTS {
          expResourceDeltaMinimum,





Expires 12 December 2000                                       [Page 38]





Internet Draft    Distributed Management Expression MIB     12 June 2000


          expResourceDeltaWildcardInstanceMaximum,
          expResourceDeltaWildcardInstances,
          expResourceDeltaWildcardInstancesHigh,
          expResourceDeltaWildcardInstanceResourceLacks
     }
     STATUS current
     DESCRIPTION
          "Expression definition resource management."
     ::= { dismanExpressionMIBGroups 1 }

dismanExpressionDefinitionGroup OBJECT-GROUP
     OBJECTS {
          expExpression,
          expExpressionValueType,
          expExpressionComment,
          expExpressionDeltaInterval,
          expExpressionPrefix,
          expExpressionErrors,
          expExpressionEntryStatus,

          expErrorTime,
          expErrorIndex,
          expErrorCode,
          expErrorInstance,

          expObjectID,
          expObjectIDWildcard,
          expObjectSampleType,
          expObjectDeltaDiscontinuityID,
          expObjectDiscontinuityIDWildcard,
          expObjectDiscontinuityIDType,
          expObjectConditional,
          expObjectConditionalWildcard,
          expObjectEntryStatus
     }
     STATUS current
     DESCRIPTION
          "Expression definition."
     ::= { dismanExpressionMIBGroups 2 }

dismanExpressionValueGroup OBJECT-GROUP
     OBJECTS {
          expValueCounter32Val,
          expValueUnsigned32Val,
          expValueTimeTicksVal,





Expires 12 December 2000                                       [Page 39]





Internet Draft    Distributed Management Expression MIB     12 June 2000


          expValueInteger32Val,
          expValueIpAddressVal,
          expValueOctetStringVal,
          expValueOidVal,
          expValueCounter64Val
     }
     STATUS current
     DESCRIPTION
          "Expression value."
     ::= { dismanExpressionMIBGroups 3 }

END






































Expires 12 December 2000                                       [Page 40]





Internet Draft    Distributed Management Expression MIB     12 June 2000


5.  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
implementors 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.




























Expires 12 December 2000                                       [Page 41]





Internet Draft    Distributed Management Expression MIB     12 June 2000


6.  Acknowledgements

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












































Expires 12 December 2000                                       [Page 42]





Internet Draft    Distributed Management Expression MIB     12 June 2000


7.  References

[RFC2571]   Harrington, D., Presuhn, R., and B. Wijnen, "An Architecture
            for Describing SNMP Management Frameworks", RFC 2571, April
            1999

[RFC1155]   Rose, M., and K. McCloghrie, "Structure and Identification
            of Management Information for TCP/IP-based Internets", STD
            16, RFC 1155, May 1990

[RFC1212]   Rose, M., and K. McCloghrie, "Concise MIB Definitions", STD
            16, RFC 1212, March 1991

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

[RFC2578]   McCloghrie, K., Perkins, D., Schoenwaelder, J., Case, J.,
            Rose, M., and S. Waldbusser, "Structure of Management
            Information Version 2 (SMIv2)", STD 58, RFC 2578, April 1999

[RFC2579]   McCloghrie, K., Perkins, D., Schoenwaelder, J., Case, J.,
            Rose, M., and S. Waldbusser, "Textual Conventions for
            SMIv2", STD 58, RFC 2579, April 1999

[RFC2580]   McCloghrie, K., Perkins, D., Schoenwaelder, J., Case, J.,
            Rose, M., and S. Waldbusser, "Conformance Statements for
            SMIv2", STD 58, RFC 2580, April 1999

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

[RFC1901]   Case, J., McCloghrie, K., Rose, M., and S. Waldbusser,
            "Introduction to Community-based SNMPv2", RFC 1901, January
            1996.

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

[RFC2572]   Case, J., Harrington D., Presuhn R., and B. Wijnen, "Message
            Processing and Dispatching for the Simple Network Management
            Protocol (SNMP)", RFC 2572, April 1999

[RFC2574]   Blumenthal, U., and B. Wijnen, "User-based Security Model
            (USM) for version 3 of the Simple Network Management





Expires 12 December 2000                                       [Page 43]





Internet Draft    Distributed Management Expression MIB     12 June 2000


            Protocol (SNMPv3)", RFC 2574, April 1999

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

[RFC2573]   Levi, D., Meyer, P., and B. Stewart, "SNMPv3 Applications",
            RFC 2573, April 1999

[RFC2575]   Wijnen, B., Presuhn, R., and K. McCloghrie, "View-based
            Access Control Model (VACM) for the Simple Network
            Management Protocol (SNMP)", RFC 2575, April 1999

[RFC2570]   Case, J., Mundy, R., Partain, D., and B. Stewart,
            "Introduction to Version 3 of the Internet-standard Network
            Management Framework", RFC 2570, April 1999

[RFC1903]   Case, J., McCloghrie, K., Rose, M. and S. Waldbusser,
            "Coexistence between Version 1 and version 2 of the
            Internet-standard Network Management Framework", RFC 1903,
            January 1996.

[RFCEventMIB]
     Stewart, B., "Event MIB", RFC ????, ?Month? 1999.

[PracPersp]
     Leinwand, A. and K. Fang, "Network Management: A Practical
     Perspective", Addison-Wesley Publishing Company, Inc., 1993.






















Expires 12 December 2000                                       [Page 44]





Internet Draft    Distributed Management Expression MIB     12 June 2000


8.  Security Considerations

Expression MIB security involves two perspectives:  protection of
expressions from tampering or unauthorized use of resources, and
protection of the objects used to calculate the expressions.

Security of expression definitions and results depends on the expression
owner (expExpressionOwner).  With view-based access control [RFC2575] a
network manager can control who has what level of access to what
expressions.

Access control for the objects within the expression depends on the
security credentials of the expression creator.  These are the security
credentials used to get the objects necessary to evaluate the
expression.  They are the security credentials that were used to set the
expExpressionRowStatus object for that expression to 'active', as
recorded by the managed system.

This means that the results of an expression could potentially be made
available to someone who does not have access to the raw data that went
into them.  This could be either legitimate or a security violation,
depending on the specific situation and security policy.

To facilitate the provisioning of access control by a security
administrator for this MIB itself using the View-Based Access Control
Model (VACM) defined in RFC 2575 [RFC2575] 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 related tables 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 "wildcarding" the column subidentifier.  More
elaborate configurations are possible.









Expires 12 December 2000                                       [Page 45]





Internet Draft    Distributed Management Expression MIB     12 June 2000


9.  Author's Address

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


10.  Editor's Address

     Ramanathan Kavasseri
     Cisco Systems, Inc.
     170 West Tasman Drive
     San Jose, CA 95134-1706
     U.S.A.

     Phone: +1 408 527 2446
     Email: ramk@cisco.com































Expires 12 December 2000                                       [Page 46]





Internet Draft    Distributed Management Expression MIB     12 June 2000


11.  Full Copyright Statement

Copyright (C) The Internet Society (1999). 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
Standards process must be followed, or as required to translate it into
languages other than English.

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

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
























Expires 12 December 2000                                       [Page 47]





Internet Draft    Distributed Management Expression MIB     12 June 2000


Table of Contents


1 Abstract ........................................................    2
2 The SNMP Management Framework ...................................    2
3 Overview ........................................................    4
3.1 Usage .........................................................    4
3.2 Persistance ...................................................    5
3.3 Operation .....................................................    5
3.3.1 Sampling ....................................................    5
3.3.2 Wildcards ...................................................    6
3.3.3 Evaluation ..................................................    6
3.3.4 Value Identification ........................................    7
3.4 Subsets .......................................................    7
3.4.1 No Wildcards ................................................    7
3.4.2 No Deltas ...................................................    8
3.5 Structure .....................................................    8
3.5.1 Resource ....................................................    8
3.5.2 Definition ..................................................    8
3.5.3 Value .......................................................    9
3.6 Examples ......................................................    9
3.6.1 Wildcarding .................................................    9
3.6.2 Calculation and Conditional .................................   11
4 Definitions .....................................................   14
5 Intellectual Property ...........................................   41
6 Acknowledgements ................................................   42
7 References ......................................................   43
8 Security Considerations .........................................   45
9 Author's Address ................................................   46
10 Editor's Address ...............................................   46
11 Full Copyright Statement .......................................   47



















Expires 12 December 2000                                       [Page 48]



From owner-disman@dorothy.peer.com  Tue Jun 20 05:00:28 2000
Received: from starling.bmc.com (fw-us-hou-2.bmc.com [198.207.223.251])
	by ietf.org (8.9.1a/8.9.1a) with ESMTP id FAA15412
	for <disman-archive@odin.ietf.org>; Tue, 20 Jun 2000 05:00:27 -0400 (EDT)
Received: from Dorothy.Bmc.Com (localhost [127.0.0.1])
	by starling.bmc.com (8.10.1/8.8.6) with ESMTP id e5K8ve121601;
	Tue, 20 Jun 2000 03:57:40 -0500 (CDT)
Received: (from root@localhost)
	by Dorothy.Bmc.Com (8.8.6 (PHNE_12836)/8.8.6) id BAA06987
	for disman-list; Tue, 20 Jun 2000 01:56:24 -0700 (PDT)
Received: from starling.bmc.com (starling.bmc.com [172.17.0.113])
	by Dorothy.Bmc.Com (8.8.6 (PHNE_12836)/8.8.6) with ESMTP id BAA06982
	for <disman@dorothy.peer.com>; Tue, 20 Jun 2000 01:56:20 -0700 (PDT)
Received: from fw-us-hou1.bmc.com (localhost [127.0.0.1])
	by starling.bmc.com (8.10.1/8.8.6) with SMTP id e5K8v4T21497
	for <disman@dorothy.peer.com>; Tue, 20 Jun 2000 03:57:04 -0500 (CDT)
Received: from henkell.ibr.cs.tu-bs.de (schoenw@henkell [134.169.34.191])
	by mumm.ibr.cs.tu-bs.de (8.9.3/8.9.3) with ESMTP id KAA15133;
	Tue, 20 Jun 2000 10:56:58 +0200 (MET DST)
Received: from schoenw@localhost by henkell.ibr.cs.tu-bs.de (8.7.6/tubsibr) id KAA23500; Tue, 20 Jun 2000 10:56:57 +0200
Date: Tue, 20 Jun 2000 10:56:57 +0200
Message-Id: <200006200856.KAA23500@henkell.ibr.cs.tu-bs.de>
From: Juergen Schoenwaelder <schoenw@ibr.cs.tu-bs.de>
To: quittek@ccrle.nec.de
CC: disman@dorothy.peer.com
In-reply-to: <394E39DF.1401F255@ccrle.nec.de> (message from Juergen Quittek on
	Mon, 19 Jun 2000 17:18:55 +0200)
Subject: Re: ambiguous script name length spec
References:  <394E39DF.1401F255@ccrle.nec.de>
Sender: owner-disman@dorothy.peer.com
Precedence: bulk
List-Id: IETF disman Working Group mailing list <disman@dorothy.bmc.com>



>>>>> Juergen Quittek writes:

Juergen> Like the smScriptTable also the smLaunchTable is indexed by
Juergen> an owner and a name. But there we find the smLaunchOwner
Juergen> being restricted to SnmpAdminString (SIZE (0..32)) and the
Juergen> smLaunchName being restricted to SnmpAdminString (SIZE
Juergen> (1..32)). Both are restricted to a maximal length of 32
Juergen> octets and names must have a minimal length of 1 octet.

Juergen> I think this is a reasonable choice which should be applied
Juergen> also to names of entries in the smScriptTable. Anyway, it is
Juergen> simpler and therefore preferable with both tables having the
Juergen> same restrictions for their indices.

Juergen> Therefore I suggest to apply define the Syntax of
Juergen> smScriptName to be SnmpAdminString (SIZE (1..32)) and to make
Juergen> the definition of smLaunchScriptName consistent to this
Juergen> restriction.

I agree. The size restriction (SIZE (1..32)) should have been used at
the smLaunchName definition since names longer than 32 octets are
pretty useless. However, note that there is a valid reason why
smLaunchScriptName has a size restriction of (SIZE (0..32)). If you
create a launch table entry without specifying the script, then you
want to use a zero-length value of smLaunchScriptName to identify a
non-existing script.

Strawman proposal: We clarify that smScriptName has a (SIZE (1..32))
and we leave the definition of smLaunchScriptName as it is (except
adding wordings that a zero-length is useful to point to a script
which is guaranteed to not exist).

/js

-- 
Juergen Schoenwaelder      Technical University Braunschweig
<schoenw@ibr.cs.tu-bs.de>  Dept. Operating Systems & Computer Networks
Phone: +49 531 391 3289    Bueltenweg 74/75, 38106 Braunschweig, Germany
Fax:   +49 531 391 5936    <URL:http://www.ibr.cs.tu-bs.de/~schoenw/>




From owner-disman@dorothy.peer.com  Tue Jun 20 05:36:07 2000
Received: from starling.bmc.com (fw-us-hou-2.bmc.com [198.207.223.251])
	by ietf.org (8.9.1a/8.9.1a) with ESMTP id FAA15754
	for <disman-archive@odin.ietf.org>; Tue, 20 Jun 2000 05:36:06 -0400 (EDT)
Received: from Dorothy.Bmc.Com (localhost [127.0.0.1])
	by starling.bmc.com (8.10.1/8.8.6) with ESMTP id e5K9YnL27612;
	Tue, 20 Jun 2000 04:34:50 -0500 (CDT)
Received: (from root@localhost)
	by Dorothy.Bmc.Com (8.8.6 (PHNE_12836)/8.8.6) id CAA07141
	for disman-list; Tue, 20 Jun 2000 02:33:49 -0700 (PDT)
Received: from starling.bmc.com (starling.bmc.com [172.17.0.113])
	by Dorothy.Bmc.Com (8.8.6 (PHNE_12836)/8.8.6) with ESMTP id CAA07136
	for <disman@dorothy.peer.com>; Tue, 20 Jun 2000 02:33:46 -0700 (PDT)
Received: from fw-us-hou1.bmc.com (localhost [127.0.0.1])
	by starling.bmc.com (8.10.1/8.8.6) with SMTP id e5K9YUT27572
	for <disman@dorothy.peer.com>; Tue, 20 Jun 2000 04:34:30 -0500 (CDT)
Received: from henkell.ibr.cs.tu-bs.de (schoenw@henkell [134.169.34.191])
	by mumm.ibr.cs.tu-bs.de (8.9.3/8.9.3) with ESMTP id LAA17976;
	Tue, 20 Jun 2000 11:34:27 +0200 (MET DST)
Received: from schoenw@localhost by henkell.ibr.cs.tu-bs.de (8.7.6/tubsibr) id LAA24952; Tue, 20 Jun 2000 11:34:26 +0200
Date: Tue, 20 Jun 2000 11:34:26 +0200
Message-Id: <200006200934.LAA24952@henkell.ibr.cs.tu-bs.de>
From: Juergen Schoenwaelder <schoenw@ibr.cs.tu-bs.de>
To: ramk@cisco.com
CC: disman@dorothy.peer.com
In-reply-to: <200006200533.WAA22184@itech-view2.cisco.com> (message from Ram
	Kavasseri on Mon, 19 Jun 2000 22:33:36 -0700 (PDT))
Subject: Re: Latest Event MIB draft - draft-ietf-disman-event-mib-10.txt
References:  <200006200533.WAA22184@itech-view2.cisco.com>
Sender: owner-disman@dorothy.peer.com
Precedence: bulk
List-Id: IETF disman Working Group mailing list <disman@dorothy.bmc.com>



>>>>> Ram Kavasseri writes:

Ram> The following typos/formatting changes were made to
Ram> draft-ietf-disman-event-mib-09.txt. The new revision is called
Ram> draft-ietf-disman-event-mib-10.txt. Before posting this to
Ram> internet-drafts@ietf.org, I'm posting this to the disman mailing
Ram> list so folks can make sure all the requested changes were made:

Compiles fine now with smilint. No name clashes with other IETF
definitions detected. ;-)

/js

-- 
Juergen Schoenwaelder      Technical University Braunschweig
<schoenw@ibr.cs.tu-bs.de>  Dept. Operating Systems & Computer Networks
Phone: +49 531 391 3289    Bueltenweg 74/75, 38106 Braunschweig, Germany
Fax:   +49 531 391 5936    <URL:http://www.ibr.cs.tu-bs.de/~schoenw/>




From owner-disman@dorothy.peer.com  Tue Jun 20 05:36:21 2000
Received: from starling.bmc.com (fw-us-hou-2.bmc.com [198.207.223.251])
	by ietf.org (8.9.1a/8.9.1a) with ESMTP id FAA15765
	for <disman-archive@odin.ietf.org>; Tue, 20 Jun 2000 05:36:20 -0400 (EDT)
Received: from Dorothy.Bmc.Com (localhost [127.0.0.1])
	by starling.bmc.com (8.10.1/8.8.6) with ESMTP id e5K9ZTX27855;
	Tue, 20 Jun 2000 04:35:29 -0500 (CDT)
Received: (from root@localhost)
	by Dorothy.Bmc.Com (8.8.6 (PHNE_12836)/8.8.6) id CAA07150
	for disman-list; Tue, 20 Jun 2000 02:34:33 -0700 (PDT)
Received: from starling.bmc.com (starling.bmc.com [172.17.0.113])
	by Dorothy.Bmc.Com (8.8.6 (PHNE_12836)/8.8.6) with ESMTP id CAA07145
	for <disman@dorothy.peer.com>; Tue, 20 Jun 2000 02:34:29 -0700 (PDT)
Received: from fw-us-hou1.bmc.com (localhost [127.0.0.1])
	by starling.bmc.com (8.10.1/8.8.6) with SMTP id e5K9ZDv27773
	for <disman@dorothy.peer.com>; Tue, 20 Jun 2000 04:35:13 -0500 (CDT)
Received: from henkell.ibr.cs.tu-bs.de (schoenw@henkell [134.169.34.191])
	by mumm.ibr.cs.tu-bs.de (8.9.3/8.9.3) with ESMTP id LAA18046;
	Tue, 20 Jun 2000 11:35:08 +0200 (MET DST)
Received: from schoenw@localhost by henkell.ibr.cs.tu-bs.de (8.7.6/tubsibr) id LAA25035; Tue, 20 Jun 2000 11:35:07 +0200
Date: Tue, 20 Jun 2000 11:35:07 +0200
Message-Id: <200006200935.LAA25035@henkell.ibr.cs.tu-bs.de>
From: Juergen Schoenwaelder <schoenw@ibr.cs.tu-bs.de>
To: ramk@cisco.com
CC: disman@dorothy.peer.com
In-reply-to: <200006200543.WAA26831@itech-view2.cisco.com> (message from Ram
	Kavasseri on Mon, 19 Jun 2000 22:43:29 -0700 (PDT))
Subject: Re: Latest Expression MIB draft - draft-ietf-disman-expr-mib-12.txt
References:  <200006200543.WAA26831@itech-view2.cisco.com>
Sender: owner-disman@dorothy.peer.com
Precedence: bulk
List-Id: IETF disman Working Group mailing list <disman@dorothy.bmc.com>



>>>>> Ram Kavasseri writes:

Ram> The following are the list of typos/format changes made to
Ram> draft-ietf-disman-expr-mib-11.txt. The new draft is
Ram> draft-ietf-disman-expr-mib-12.txt. I'm posting this draft on the
Ram> disma mailing list first, before sending it too
Ram> internet-drafts@ietf.org.  If I've missed a change, please let me
Ram> know.

Compiles fine now with smilint. No name clashes with other IETF
definitions detected. ;-)

/js

-- 
Juergen Schoenwaelder      Technical University Braunschweig
<schoenw@ibr.cs.tu-bs.de>  Dept. Operating Systems & Computer Networks
Phone: +49 531 391 3289    Bueltenweg 74/75, 38106 Braunschweig, Germany
Fax:   +49 531 391 5936    <URL:http://www.ibr.cs.tu-bs.de/~schoenw/>




From owner-disman@dorothy.peer.com  Tue Jun 20 10:52:55 2000
Received: from starling.bmc.com (fw-us-hou-2.bmc.com [198.207.223.251])
	by ietf.org (8.9.1a/8.9.1a) with ESMTP id KAA24795
	for <disman-archive@odin.ietf.org>; Tue, 20 Jun 2000 10:52:54 -0400 (EDT)
Received: from Dorothy.Bmc.Com (localhost [127.0.0.1])
	by starling.bmc.com (8.10.1/8.8.6) with ESMTP id e5KEnsv06923;
	Tue, 20 Jun 2000 09:49:54 -0500 (CDT)
Received: (from root@localhost)
	by Dorothy.Bmc.Com (8.8.6 (PHNE_12836)/8.8.6) id HAA08076
	for disman-list; Tue, 20 Jun 2000 07:48:21 -0700 (PDT)
Received: from starling.bmc.com (starling.bmc.com [172.17.0.113])
	by Dorothy.Bmc.Com (8.8.6 (PHNE_12836)/8.8.6) with ESMTP id HAA08071
	for <disman@dorothy.peer.com>; Tue, 20 Jun 2000 07:48:18 -0700 (PDT)
Received: from fw-us-hou1.bmc.com (localhost [127.0.0.1])
	by starling.bmc.com (8.10.1/8.8.6) with SMTP id e5KEmuv06644
	for <disman@dorothy.peer.com>; Tue, 20 Jun 2000 09:48:56 -0500 (CDT)
Received: from ramk-95.cisco.com (ramk-dsl4.cisco.com [10.19.11.157])
	by sigma.cisco.com (8.8.8-Cisco List Logging/8.8.8) with SMTP id HAA14302;
	Tue, 20 Jun 2000 07:46:42 -0700 (PDT)
Message-Id: <4.1.20000620074804.00a31aa0@sigma.cisco.com>
X-Sender: ramk@sigma.cisco.com
X-Mailer: QUALCOMM Windows Eudora Pro Version 4.1 
Date: Tue, 20 Jun 2000 07:48:55 -0700
To: Juergen Schoenwaelder <schoenw@ibr.cs.tu-bs.de>
From: "Ramanathan R. Kavasseri" <ramk@cisco.com>
Subject: Re: Latest Event MIB draft - draft-ietf-disman-event-mib-10.txt
Cc: disman@dorothy.peer.com
In-Reply-To: <200006200934.LAA24952@henkell.ibr.cs.tu-bs.de>
References: <200006200533.WAA22184@itech-view2.cisco.com>
 <200006200533.WAA22184@itech-view2.cisco.com>
Mime-Version: 1.0
Content-Type: text/plain; charset="us-ascii"
Sender: owner-disman@dorothy.peer.com
Precedence: bulk
List-Id: IETF disman Working Group mailing list <disman@dorothy.bmc.com>


At 11:34 AM 6/20/00 +0200, Juergen Schoenwaelder wrote:
>
>
>>>>>> Ram Kavasseri writes:
>
>Ram> The following typos/formatting changes were made to
>Ram> draft-ietf-disman-event-mib-09.txt. The new revision is called
>Ram> draft-ietf-disman-event-mib-10.txt. Before posting this to
>Ram> internet-drafts@ietf.org, I'm posting this to the disman mailing
>Ram> list so folks can make sure all the requested changes were made:
>
>Compiles fine now with smilint. No name clashes with other IETF
>definitions detected. ;-)

Thanks for the quick response. :-)
I'm especially glad there aren't name clashes ;-)

Ram

>/js
>
>-- 
>Juergen Schoenwaelder      Technical University Braunschweig
><schoenw@ibr.cs.tu-bs.de>  Dept. Operating Systems & Computer Networks
>Phone: +49 531 391 3289    Bueltenweg 74/75, 38106 Braunschweig, Germany
>Fax:   +49 531 391 5936    <URL:http://www.ibr.cs.tu-bs.de/~schoenw/>
>
>
>



From owner-disman@dorothy.peer.com  Tue Jun 20 10:53:48 2000
Received: from starling.bmc.com (fw-us-hou-2.bmc.com [198.207.223.251])
	by ietf.org (8.9.1a/8.9.1a) with ESMTP id KAA24817
	for <disman-archive@odin.ietf.org>; Tue, 20 Jun 2000 10:53:47 -0400 (EDT)
Received: from Dorothy.Bmc.Com (localhost [127.0.0.1])
	by starling.bmc.com (8.10.1/8.8.6) with ESMTP id e5KEpNj07432;
	Tue, 20 Jun 2000 09:51:23 -0500 (CDT)
Received: (from root@localhost)
	by Dorothy.Bmc.Com (8.8.6 (PHNE_12836)/8.8.6) id HAA08085
	for disman-list; Tue, 20 Jun 2000 07:50:27 -0700 (PDT)
Received: from starling.bmc.com (starling.bmc.com [172.17.0.113])
	by Dorothy.Bmc.Com (8.8.6 (PHNE_12836)/8.8.6) with ESMTP id HAA08080
	for <disman@dorothy.peer.com>; Tue, 20 Jun 2000 07:50:24 -0700 (PDT)
Received: from fw-us-hou1.bmc.com (localhost [127.0.0.1])
	by starling.bmc.com (8.10.1/8.8.6) with SMTP id e5KEp8n07341
	for <disman@dorothy.peer.com>; Tue, 20 Jun 2000 09:51:08 -0500 (CDT)
Received: from seymour47.SNMP.COM (seymour47.snmp.com [192.147.142.47])
	by seymour39.SNMP.COM (8.9.3/m.000221) with ESMTP id KAA20773;
	Tue, 20 Jun 2000 10:50:34 -0400 (EDT)
From: Alan Luchuk <luchuk@snmp.com>
Received: (from luchuk@localhost)
	by seymour47.SNMP.COM (8.9.3/snmpclient.mc-990423) id KAA05409;
	Tue, 20 Jun 2000 10:50:33 -0400 (EDT)
Date: Tue, 20 Jun 2000 10:50:33 -0400 (EDT)
Message-Id: <200006201450.KAA05409@seymour47.SNMP.COM>
To: schoenw@ibr.cs.tu-bs.de
Subject: Re:  script mib autostart feature
Cc: disman@dorothy.peer.com, luchuk@snmp.com
Sender: owner-disman@dorothy.peer.com
Precedence: bulk
List-Id: IETF disman Working Group mailing list <disman@dorothy.bmc.com>


>Now to the proposal:
>
>- Add a new 'auto' enumeration to the smLaunchAdminStatus which brings
>  the smLaunchOperStatus into the enabled state and launches the script
>  during the script's disabled -> enabled transition.
>
>- Add clarifying text about the interactions between
>  smScriptOperStatus and smLaunchOperStatus state transitions. Some of
>  the state transitions we have implemented are not clearly defined in
>  RFC 2592. You sometimes have to infer the behavior from the more
>  declarative description of the various states.
>
>In fact, Frank and I started to draw state transition diagrams and it
>might be helpful to put them into the RFC 2592 revision.

I agree with this proposal.

Regards,
--Alan

 -----------------------------------------------------------------------------
 Alan Luchuk       SNMP Research, Inc.                 Voice:  +1 865 573 1434
 Software Engineer 3001 Kimberlin Heights Road         FAX:    +1 865 573 9197
 luchuk@snmp.com   Knoxville, TN  37920-9716  U.S.A.   http://www.snmp.com/
 -----------------------------------------------------------------------------



From owner-disman@dorothy.peer.com  Tue Jun 20 11:03:49 2000
Received: from starling.bmc.com (fw-us-hou-2.bmc.com [198.207.223.251])
	by ietf.org (8.9.1a/8.9.1a) with ESMTP id LAA25322
	for <disman-archive@odin.ietf.org>; Tue, 20 Jun 2000 11:03:47 -0400 (EDT)
Received: from Dorothy.Bmc.Com (localhost [127.0.0.1])
	by starling.bmc.com (8.10.1/8.8.6) with ESMTP id e5KF1iD11083;
	Tue, 20 Jun 2000 10:01:44 -0500 (CDT)
Received: (from root@localhost)
	by Dorothy.Bmc.Com (8.8.6 (PHNE_12836)/8.8.6) id IAA08109
	for disman-list; Tue, 20 Jun 2000 08:00:44 -0700 (PDT)
Received: from starling.bmc.com (starling.bmc.com [172.17.0.113])
	by Dorothy.Bmc.Com (8.8.6 (PHNE_12836)/8.8.6) with ESMTP id IAA08104
	for <disman@dorothy.peer.com>; Tue, 20 Jun 2000 08:00:40 -0700 (PDT)
Received: from fw-us-hou1.bmc.com (localhost [127.0.0.1])
	by starling.bmc.com (8.10.1/8.8.6) with SMTP id e5KF1O910936
	for <disman@dorothy.peer.com>; Tue, 20 Jun 2000 10:01:24 -0500 (CDT)
Received: (qmail 26740 invoked from network); 20 Jun 2000 16:54:35 +0200
Received: from belem.inf.fu-berlin.de (HELO ccrle.nec.de) (160.45.110.49)
  by leibniz.math.fu-berlin.de with SMTP; 20 Jun 2000 16:54:35 +0200
Message-ID: <394F8565.B007CEFD@ccrle.nec.de>
Date: Tue, 20 Jun 2000 16:53:25 +0200
From: Juergen Quittek <quittek@ccrle.nec.de>
X-Mailer: Mozilla 4.7 [en] (Win98; I)
X-Accept-Language: en
MIME-Version: 1.0
To: DISMAN Mailing List <disman@dorothy.peer.com>
Subject: Script MIB: description of smScriptLanguage
Content-Type: text/plain; charset=us-ascii
Content-Transfer-Encoding: 7bit
Sender: owner-disman@dorothy.peer.com
Precedence: bulk
List-Id: IETF disman Working Group mailing list <disman@dorothy.bmc.com>
Content-Transfer-Encoding: 7bit


The last paragraph of the description of smScriptSource in RFC 2592 is

            Set requests to change this object are invalid if the
            value of smScriptOperStatus is `enabled', `editing',
            `retrieving' or `compiling' and will result in an
            inconsistentValue error."

I think a similar restriction should apply to smScriptLanguage
(and our Jasmin implementation does so). It would be problematic
to change the language while the script is compiling or being
executed.

However, in the description of smScriptLanguage there isn't any 
statement about the conditions under which this object may be written.

I propose to the following paragraph to the description of
smScriptLanguage:

            Set requests to change this object are invalid if the
            value of smScriptOperStatus is `enabled' or `compiling'
            and will result in an inconsistentValue error."

    Juergen Q.
-- 
Juergen Quittek     quittek@ccrle.nec.de     Tel: +49 30 254230-19
NEC Europe Ltd., C&C Research Laboratories   Fax: +49 30 254230-99
Hardenbergplatz 2, 10623 Berlin, Germany   http://www.ccrle.nec.de


From owner-disman@dorothy.peer.com  Tue Jun 20 11:16:23 2000
Received: from starling.bmc.com (fw-us-hou-2.bmc.com [198.207.223.251])
	by ietf.org (8.9.1a/8.9.1a) with ESMTP id LAA25648
	for <disman-archive@odin.ietf.org>; Tue, 20 Jun 2000 11:16:21 -0400 (EDT)
Received: from Dorothy.Bmc.Com (localhost [127.0.0.1])
	by starling.bmc.com (8.10.1/8.8.6) with ESMTP id e5KFAuL13756;
	Tue, 20 Jun 2000 10:10:56 -0500 (CDT)
Received: (from root@localhost)
	by Dorothy.Bmc.Com (8.8.6 (PHNE_12836)/8.8.6) id IAA08137
	for disman-list; Tue, 20 Jun 2000 08:09:54 -0700 (PDT)
Received: from starling.bmc.com (starling.bmc.com [172.17.0.113])
	by Dorothy.Bmc.Com (8.8.6 (PHNE_12836)/8.8.6) with ESMTP id IAA08132
	for <disman@dorothy.peer.com>; Tue, 20 Jun 2000 08:09:50 -0700 (PDT)
Received: from fw-us-hou1.bmc.com (localhost [127.0.0.1])
	by starling.bmc.com (8.10.1/8.8.6) with SMTP id e5KFAYT13689
	for <disman@dorothy.peer.com>; Tue, 20 Jun 2000 10:10:34 -0500 (CDT)
Received: from seymour47.SNMP.COM (seymour47.snmp.com [192.147.142.47])
	by seymour39.SNMP.COM (8.9.3/m.000221) with ESMTP id KAA21047;
	Tue, 20 Jun 2000 10:52:30 -0400 (EDT)
From: Alan Luchuk <luchuk@snmp.com>
Received: (from luchuk@localhost)
	by seymour47.SNMP.COM (8.9.3/snmpclient.mc-990423) id KAA05469;
	Tue, 20 Jun 2000 10:52:28 -0400 (EDT)
Date: Tue, 20 Jun 2000 10:52:28 -0400 (EDT)
Message-Id: <200006201452.KAA05469@seymour47.SNMP.COM>
To: quittek@ccrle.nec.de
Subject: Re:  ambiguous script name length spec
Cc: disman@dorothy.peer.com, luchuk@snmp.com
Sender: owner-disman@dorothy.peer.com
Precedence: bulk
List-Id: IETF disman Working Group mailing list <disman@dorothy.bmc.com>


>Therefore I suggest to apply define the Syntax of smScriptName to be
>SnmpAdminString (SIZE (1..32)) and to make the definition of
>smLaunchScriptName consistent to this restriction.

Seems reasonable to me.

Regards,
--Alan
 
 -----------------------------------------------------------------------------
 Alan Luchuk       SNMP Research, Inc.                 Voice:  +1 865 573 1434
 Software Engineer 3001 Kimberlin Heights Road         FAX:    +1 865 573 9197
 luchuk@snmp.com   Knoxville, TN  37920-9716  U.S.A.   http://www.snmp.com/
 -----------------------------------------------------------------------------



From owner-disman@dorothy.peer.com  Tue Jun 20 11:47:38 2000
Received: from starling.bmc.com (fw-us-hou-2.bmc.com [198.207.223.251])
	by ietf.org (8.9.1a/8.9.1a) with ESMTP id LAA26832
	for <disman-archive@odin.ietf.org>; Tue, 20 Jun 2000 11:47:38 -0400 (EDT)
Received: from Dorothy.Bmc.Com (localhost [127.0.0.1])
	by starling.bmc.com (8.10.1/8.8.6) with ESMTP id e5KFimD24343;
	Tue, 20 Jun 2000 10:44:48 -0500 (CDT)
Received: (from root@localhost)
	by Dorothy.Bmc.Com (8.8.6 (PHNE_12836)/8.8.6) id IAA08338
	for disman-list; Tue, 20 Jun 2000 08:42:58 -0700 (PDT)
Received: from starling.bmc.com (starling.bmc.com [172.17.0.113])
	by Dorothy.Bmc.Com (8.8.6 (PHNE_12836)/8.8.6) with ESMTP id IAA08333
	for <disman@dorothy.peer.com>; Tue, 20 Jun 2000 08:42:55 -0700 (PDT)
Received: from fw-us-hou1.bmc.com (localhost [127.0.0.1])
	by starling.bmc.com (8.10.1/8.8.6) with SMTP id e5KFhdP24060
	for <disman@dorothy.peer.com>; Tue, 20 Jun 2000 10:43:39 -0500 (CDT)
Received: from henkell.ibr.cs.tu-bs.de (schoenw@henkell [134.169.34.191])
	by mumm.ibr.cs.tu-bs.de (8.9.3/8.9.3) with ESMTP id RAA17227;
	Tue, 20 Jun 2000 17:43:35 +0200 (MET DST)
Received: from schoenw@localhost by henkell.ibr.cs.tu-bs.de (8.7.6/tubsibr) id RAA10079; Tue, 20 Jun 2000 17:43:35 +0200
Date: Tue, 20 Jun 2000 17:43:35 +0200
Message-Id: <200006201543.RAA10079@henkell.ibr.cs.tu-bs.de>
From: Juergen Schoenwaelder <schoenw@ibr.cs.tu-bs.de>
To: quittek@ccrle.nec.de
CC: disman@dorothy.peer.com
In-reply-to: <394F8565.B007CEFD@ccrle.nec.de> (message from Juergen Quittek on
	Tue, 20 Jun 2000 16:53:25 +0200)
Subject: Re: Script MIB: description of smScriptLanguage
References:  <394F8565.B007CEFD@ccrle.nec.de>
Sender: owner-disman@dorothy.peer.com
Precedence: bulk
List-Id: IETF disman Working Group mailing list <disman@dorothy.bmc.com>



>>>>> Juergen Quittek writes:

[...]

Juergen> However, in the description of smScriptLanguage there isn't
Juergen> any statement about the conditions under which this object
Juergen> may be written.

Juergen> I propose to the following paragraph to the description of
Juergen> smScriptLanguage:

Juergen>             Set requests to change this object are invalid if
Juergen> the value of smScriptOperStatus is `enabled' or `compiling'
Juergen> and will result in an inconsistentValue error."

Makes sense to me.

/js

-- 
Juergen Schoenwaelder      Technical University Braunschweig
<schoenw@ibr.cs.tu-bs.de>  Dept. Operating Systems & Computer Networks
Phone: +49 531 391 3289    Bueltenweg 74/75, 38106 Braunschweig, Germany
Fax:   +49 531 391 5936    <URL:http://www.ibr.cs.tu-bs.de/~schoenw/>




From owner-disman@dorothy.peer.com  Tue Jun 20 12:26:04 2000
Received: from starling.bmc.com (fw-us-hou-2.bmc.com [198.207.223.251])
	by ietf.org (8.9.1a/8.9.1a) with ESMTP id MAA27926
	for <disman-archive@odin.ietf.org>; Tue, 20 Jun 2000 12:25:56 -0400 (EDT)
Received: from Dorothy.Bmc.Com (localhost [127.0.0.1])
	by starling.bmc.com (8.10.1/8.8.6) with ESMTP id e5KGOaP07469;
	Tue, 20 Jun 2000 11:24:36 -0500 (CDT)
Received: (from root@localhost)
	by Dorothy.Bmc.Com (8.8.6 (PHNE_12836)/8.8.6) id JAA08678
	for disman-list; Tue, 20 Jun 2000 09:23:15 -0700 (PDT)
Received: from starling.bmc.com (starling.bmc.com [172.17.0.113])
	by Dorothy.Bmc.Com (8.8.6 (PHNE_12836)/8.8.6) with ESMTP id JAA08670
	for <disman@dorothy.peer.com>; Tue, 20 Jun 2000 09:23:10 -0700 (PDT)
Received: from fw-us-hou1.bmc.com (localhost [127.0.0.1])
	by starling.bmc.com (8.10.1/8.8.6) with SMTP id e5KGNsv07301
	for <disman@dorothy.peer.com>; Tue, 20 Jun 2000 11:23:54 -0500 (CDT)
Received: from hansa.ibr.cs.tu-bs.de (IDENT:root@hansa [134.169.34.137])
	by mumm.ibr.cs.tu-bs.de (8.9.3/8.9.3) with ESMTP id SAA20951;
	Tue, 20 Jun 2000 18:23:44 +0200 (MET DST)
Received: (from strauss@localhost)
	by hansa.ibr.cs.tu-bs.de (8.9.3/8.9.3) id SAA15439;
	Tue, 20 Jun 2000 18:23:44 +0200
X-Authentication-Warning: hansa.ibr.cs.tu-bs.de: strauss set sender to strauss@ibr.cs.tu-bs.de using -f
From: Frank Strauss <strauss@ibr.cs.tu-bs.de>
To: schoenw@ibr.cs.tu-bs.de (Juergen Schoenwaelder), quittek@ccrle.nec.de,
        disman@dorothy.peer.com
Subject: Re: ambiguous script name length spec
Date: 20 Jun 2000 18:23:44 +0200
In-Reply-To: schoenw@ibr.cs.tu-bs.de's message of "20 Jun 2000 11:06:01 +0200"
Message-ID: <ypw7lbkb9tb.fsf@hansa.ibr.cs.tu-bs.de>
Lines: 10
User-Agent: Gnus/5.0803 (Gnus v5.8.3) Emacs/20.7
MIME-Version: 1.0
Content-Type: text/plain; charset=us-ascii
Sender: owner-disman@dorothy.peer.com
Precedence: bulk
List-Id: IETF disman Working Group mailing list <disman@dorothy.bmc.com>


Hi!

Juergen> Strawman proposal: We [...] leave the definition of
Juergen> smLaunchScriptName as it is (except adding wordings that a
Juergen> zero-length is useful to point to a script which is
Juergen> guaranteed to not exist).

...and adding DEFVAL { "" } !?

 Frank


From owner-disman@dorothy.peer.com  Wed Jun 21 04:00:31 2000
Received: from starling.bmc.com (fw-us-hou-2.bmc.com [198.207.223.251])
	by ietf.org (8.9.1a/8.9.1a) with ESMTP id EAA24415
	for <disman-archive@odin.ietf.org>; Wed, 21 Jun 2000 04:00:30 -0400 (EDT)
Received: from Dorothy.Bmc.Com (localhost [127.0.0.1])
	by starling.bmc.com (8.10.1/8.8.6) with ESMTP id e5L7sT500471;
	Wed, 21 Jun 2000 02:54:29 -0500 (CDT)
Received: (from root@localhost)
	by Dorothy.Bmc.Com (8.8.6 (PHNE_12836)/8.8.6) id AAA05756
	for disman-list; Wed, 21 Jun 2000 00:52:28 -0700 (PDT)
Received: from starling.bmc.com (starling.bmc.com [172.17.0.113])
	by Dorothy.Bmc.Com (8.8.6 (PHNE_12836)/8.8.6) with ESMTP id AAA05751
	for <disman@dorothy.peer.com>; Wed, 21 Jun 2000 00:52:24 -0700 (PDT)
Received: from fw-us-hou1.bmc.com (localhost [127.0.0.1])
	by starling.bmc.com (8.10.1/8.8.6) with SMTP id e5L7qQb00029
	for <disman@dorothy.peer.com>; Wed, 21 Jun 2000 02:52:26 -0500 (CDT)
Received: from henkell.ibr.cs.tu-bs.de (schoenw@henkell [134.169.34.191])
	by mumm.ibr.cs.tu-bs.de (8.9.3/8.9.3) with ESMTP id JAA23284;
	Wed, 21 Jun 2000 09:52:17 +0200 (MET DST)
Received: from schoenw@localhost by henkell.ibr.cs.tu-bs.de (8.7.6/tubsibr) id JAA14839; Wed, 21 Jun 2000 09:52:17 +0200
Date: Wed, 21 Jun 2000 09:52:17 +0200
Message-Id: <200006210752.JAA14839@henkell.ibr.cs.tu-bs.de>
From: Juergen Schoenwaelder <schoenw@ibr.cs.tu-bs.de>
To: strauss@ibr.cs.tu-bs.de
CC: quittek@ccrle.nec.de, disman@dorothy.peer.com
In-reply-to: <ypw7lbkb9tb.fsf@hansa.ibr.cs.tu-bs.de> (message from Frank
	Strauss on 20 Jun 2000 18:23:44 +0200)
Subject: Re: ambiguous script name length spec
References:  <ypw7lbkb9tb.fsf@hansa.ibr.cs.tu-bs.de>
Sender: owner-disman@dorothy.peer.com
Precedence: bulk
List-Id: IETF disman Working Group mailing list <disman@dorothy.bmc.com>



>>>>> Frank Strauss writes:

Juergen> Strawman proposal: We [...] leave the definition of
Juergen> smLaunchScriptName as it is (except adding wordings that a
Juergen> zero-length is useful to point to a script which is
Juergen> guaranteed to not exist).

Frank> ...and adding DEFVAL { "" } !?

Yes. Makes a lot of sense to me.

/js

-- 
Juergen Schoenwaelder      Technical University Braunschweig
<schoenw@ibr.cs.tu-bs.de>  Dept. Operating Systems & Computer Networks
Phone: +49 531 391 3289    Bueltenweg 74/75, 38106 Braunschweig, Germany
Fax:   +49 531 391 5936    <URL:http://www.ibr.cs.tu-bs.de/~schoenw/>




From owner-disman@dorothy.peer.com  Wed Jun 21 11:02:36 2000
Received: from starling.bmc.com (fw-us-hou-2.bmc.com [198.207.223.251])
	by ietf.org (8.9.1a/8.9.1a) with ESMTP id LAA03565
	for <disman-archive@odin.ietf.org>; Wed, 21 Jun 2000 11:02:35 -0400 (EDT)
Received: from Dorothy.Bmc.Com (localhost [127.0.0.1])
	by starling.bmc.com (8.10.1/8.8.6) with ESMTP id e5LEwUP05027;
	Wed, 21 Jun 2000 09:58:30 -0500 (CDT)
Received: (from root@localhost)
	by Dorothy.Bmc.Com (8.8.6 (PHNE_12836)/8.8.6) id HAA06490
	for disman-list; Wed, 21 Jun 2000 07:56:32 -0700 (PDT)
Received: from starling.bmc.com (starling.bmc.com [172.17.0.113])
	by Dorothy.Bmc.Com (8.8.6 (PHNE_12836)/8.8.6) with ESMTP id HAA06485
	for <disman@dorothy.peer.com>; Wed, 21 Jun 2000 07:56:28 -0700 (PDT)
Received: from fw-us-hou2.bmc.com (localhost [127.0.0.1])
	by starling.bmc.com (8.10.1/8.8.6) with SMTP id e5LEu1P03930
	for <disman@dorothy.bmc.com>; Wed, 21 Jun 2000 09:56:03 -0500 (CDT)
Received: from oleane  (dyn-1-1-223.Vin.dialup.oleane.fr [195.25.4.223])  by smtp2.cluster.oleane.net  with SMTP id QAA03230 for <disman@dorothy.bmc.com>; Wed, 21 Jun 2000 16:54:48 +0200 (CEST)
Message-ID: <006e01bfdb90$57e0ff40$7501a8c0@oleane.oleane.com>
From: "Peter Lewis" <peter.lewis@upperside.fr>
To: <disman@dorothy.peer.com>
Subject: IP Policing Conference
Date: Wed, 21 Jun 2000 16:52:37 +0200
MIME-Version: 1.0
Content-Type: multipart/alternative;
	boundary="----=_NextPart_000_006B_01BFDBA1.1AD2BF60"
X-Priority: 3
X-MSMail-Priority: Normal
X-Mailer: Microsoft Outlook Express 4.72.3110.5
X-MimeOLE: Produced By Microsoft MimeOLE V4.72.3110.3
Sender: owner-disman@dorothy.peer.com
Precedence: bulk
List-Id: IETF disman Working Group mailing list <disman@dorothy.bmc.com>


This is a multi-part message in MIME format.

------=_NextPart_000_006B_01BFDBA1.1AD2BF60
Content-Type: text/plain;
	charset="iso-8859-1"
Content-Transfer-Encoding: quoted-printable

SNMP/Configuration or COPS/DEN?
The " IP Policing Conference" will stand in Paris next 12-15 September:

http://www.upperside.fr/baippol.htm

------=_NextPart_000_006B_01BFDBA1.1AD2BF60
Content-Type: text/html;
	charset="iso-8859-1"
Content-Transfer-Encoding: quoted-printable

<!DOCTYPE HTML PUBLIC "-//W3C//DTD W3 HTML//EN">
<HTML>
<HEAD>

<META content=3Dtext/html;charset=3Diso-8859-1 =
http-equiv=3DContent-Type>
<META content=3D'"MSHTML 4.72.3110.7"' name=3DGENERATOR>
</HEAD>
<BODY bgColor=3D#ffffff>
<DIV>
<DIV><FONT color=3D#000000 size=3D2>
<DIV>SNMP/Configuration or COPS/DEN?</DIV>
<DIV>The &quot; IP Policing Conference&quot; will stand in Paris next =
12-15=20
September:</DIV>
<DIV>&nbsp;</DIV>
<DIV><A=20
href=3D"http://www.upperside.fr/baippol.htm">http://www.upperside.fr/baip=
pol.htm</A></DIV></FONT></DIV></DIV></BODY></HTML>

------=_NextPart_000_006B_01BFDBA1.1AD2BF60--



From owner-disman@dorothy.peer.com  Thu Jun 22 00:39:29 2000
Received: from starling.bmc.com ([198.207.223.251])
	by ietf.org (8.9.1a/8.9.1a) with ESMTP id AAA20199
	for <disman-archive@odin.ietf.org>; Thu, 22 Jun 2000 00:39:19 -0400 (EDT)
Received: from Dorothy.Bmc.Com (localhost [127.0.0.1])
	by starling.bmc.com (8.10.1/8.8.6) with ESMTP id e5M4YMH15492;
	Wed, 21 Jun 2000 23:34:22 -0500 (CDT)
Received: (from root@localhost)
	by Dorothy.Bmc.Com (8.8.6 (PHNE_12836)/8.8.6) id VAA15747
	for disman-list; Wed, 21 Jun 2000 21:28:19 -0700 (PDT)
Received: from starling.bmc.com (starling.bmc.com [172.17.0.113])
	by Dorothy.Bmc.Com (8.8.6 (PHNE_12836)/8.8.6) with ESMTP id VAA15735
	for <Disman@dorothy.peer.com>; Wed, 21 Jun 2000 21:28:12 -0700 (PDT)
Received: from fw-us-hou1.bmc.com (localhost [127.0.0.1])
	by starling.bmc.com (8.10.1/8.8.6) with SMTP id e5M4Suj14824
	for <Disman@dorothy.peer.com>; Wed, 21 Jun 2000 23:28:56 -0500 (CDT)
Received: from hoemlsrv.firewall.lucent.com (localhost [127.0.0.1])
	by hoemlsrv.firewall.lucent.com (Pro-8.9.3/8.9.3) with ESMTP id AAA10582
	for <Disman@dorothy.peer.com>; Thu, 22 Jun 2000 00:15:09 -0400 (EDT)
Received: from nl0006exch001h.wins.lucent.com (h135-85-76-62.lucent.com [135.85.76.62])
	by hoemlsrv.firewall.lucent.com (Pro-8.9.3/8.9.3) with ESMTP id AAA10532
	for <Disman@dorothy.peer.com>; Thu, 22 Jun 2000 00:15:04 -0400 (EDT)
Received: by nl0006exch001h.nl.lucent.com with Internet Mail Service (5.5.2650.21)
	id <NM1S68QY>; Thu, 22 Jun 2000 06:15:02 +0200
Message-ID: <2413FED0DFE6D111B3F90008C7FA61FB07CC86D4@nl0006exch002u.nl.lucent.com>
From: "Wijnen, Bert (Bert)" <bwijnen@lucent.com>
To: ramk@cisco.com, Juergen Schoenwaelder <schoenw@ibr.cs.tu-bs.de>
Cc: Disman@dorothy.peer.com
Subject: RE: Latest Event MIB draft - draft-ietf-disman-event-mib-10.txt
Date: Wed, 21 Jun 2000 14:04:20 +0200
MIME-Version: 1.0
X-Mailer: Internet Mail Service (5.5.2650.21)
Content-Type: text/plain
Sender: owner-disman@dorothy.peer.com
Precedence: bulk
List-Id: IETF disman Working Group mailing list <disman@dorothy.bmc.com>


Thanks, looks good to me.
I trust Juergen did the proper check for duplicates :-)

Bert

> ----------
> From: 	Juergen Schoenwaelder[SMTP:schoenw@ibr.cs.tu-bs.de]
> Sent: 	Tuesday, June 20, 2000 11:34 AM
> To: 	ramk@cisco.com
> Cc: 	disman@dorothy.peer.com
> Subject: 	Re: Latest Event MIB draft -
> draft-ietf-disman-event-mib-10.txt
> 
> 
> 
> >>>>> Ram Kavasseri writes:
> 
> Ram> The following typos/formatting changes were made to
> Ram> draft-ietf-disman-event-mib-09.txt. The new revision is called
> Ram> draft-ietf-disman-event-mib-10.txt. Before posting this to
> Ram> internet-drafts@ietf.org, I'm posting this to the disman mailing
> Ram> list so folks can make sure all the requested changes were made:
> 
> Compiles fine now with smilint. No name clashes with other IETF
> definitions detected. ;-)
> 
> /js
> 
> -- 
> Juergen Schoenwaelder      Technical University Braunschweig
> <schoenw@ibr.cs.tu-bs.de>  Dept. Operating Systems & Computer Networks
> Phone: +49 531 391 3289    Bueltenweg 74/75, 38106 Braunschweig, Germany
> Fax:   +49 531 391 5936    <URL:http://www.ibr.cs.tu-bs.de/~schoenw/>
> 
> 


From owner-disman@dorothy.peer.com  Thu Jun 22 00:48:03 2000
Received: from starling.bmc.com (fw-us-hou-2.bmc.com [198.207.223.251])
	by ietf.org (8.9.1a/8.9.1a) with ESMTP id AAA20200
	for <disman-archive@odin.ietf.org>; Thu, 22 Jun 2000 00:39:21 -0400 (EDT)
Received: from Dorothy.Bmc.Com (localhost [127.0.0.1])
	by starling.bmc.com (8.10.1/8.8.6) with ESMTP id e5M4YMn15491;
	Wed, 21 Jun 2000 23:34:22 -0500 (CDT)
Received: (from root@localhost)
	by Dorothy.Bmc.Com (8.8.6 (PHNE_12836)/8.8.6) id VAA15746
	for disman-list; Wed, 21 Jun 2000 21:28:19 -0700 (PDT)
Received: from starling.bmc.com (starling.bmc.com [172.17.0.113])
	by Dorothy.Bmc.Com (8.8.6 (PHNE_12836)/8.8.6) with ESMTP id VAA15738
	for <Disman@dorothy.peer.com>; Wed, 21 Jun 2000 21:28:13 -0700 (PDT)
Received: from fw-us-hou1.bmc.com (localhost [127.0.0.1])
	by starling.bmc.com (8.10.1/8.8.6) with SMTP id e5M4SvT14832
	for <Disman@dorothy.peer.com>; Wed, 21 Jun 2000 23:28:57 -0500 (CDT)
Received: from hoemlsrv.firewall.lucent.com (localhost [127.0.0.1])
	by hoemlsrv.firewall.lucent.com (Pro-8.9.3/8.9.3) with ESMTP id AAA10572
	for <Disman@dorothy.peer.com>; Thu, 22 Jun 2000 00:15:08 -0400 (EDT)
Received: from nl0006exch001h.wins.lucent.com (h135-85-76-62.lucent.com [135.85.76.62])
	by hoemlsrv.firewall.lucent.com (Pro-8.9.3/8.9.3) with ESMTP id AAA10533
	for <Disman@dorothy.peer.com>; Thu, 22 Jun 2000 00:15:04 -0400 (EDT)
Received: by nl0006exch001h.nl.lucent.com with Internet Mail Service (5.5.2650.21)
	id <NM1S68QZ>; Thu, 22 Jun 2000 06:15:02 +0200
Message-ID: <2413FED0DFE6D111B3F90008C7FA61FB07CC86D3@nl0006exch002u.nl.lucent.com>
From: "Wijnen, Bert (Bert)" <bwijnen@lucent.com>
To: Juergen Schoenwaelder <schoenw@ibr.cs.tu-bs.de>,
        "Ramanathan R. Kavasseri" <ramk@cisco.com>
Cc: Disman@dorothy.peer.com
Subject: RE: Latest Event MIB draft - draft-ietf-disman-event-mib-10.txt
Date: Wed, 21 Jun 2000 14:04:19 +0200
MIME-Version: 1.0
X-Mailer: Internet Mail Service (5.5.2650.21)
Content-Type: text/plain
Sender: owner-disman@dorothy.peer.com
Precedence: bulk
List-Id: IETF disman Working Group mailing list <disman@dorothy.bmc.com>


Thanks, looks good to me.
I trust Juergen did proper test for duplicates :-)

Bert

> ----------
> From: 	Ramanathan R. Kavasseri[SMTP:ramk@cisco.com]
> Sent: 	Tuesday, June 20, 2000 4:48 PM
> To: 	Juergen Schoenwaelder
> Cc: 	disman@dorothy.peer.com
> Subject: 	Re: Latest Event MIB draft -
> draft-ietf-disman-event-mib-10.txt
> 
> 
> At 11:34 AM 6/20/00 +0200, Juergen Schoenwaelder wrote:
> >
> >
> >>>>>> Ram Kavasseri writes:
> >
> >Ram> The following typos/formatting changes were made to
> >Ram> draft-ietf-disman-event-mib-09.txt. The new revision is called
> >Ram> draft-ietf-disman-event-mib-10.txt. Before posting this to
> >Ram> internet-drafts@ietf.org, I'm posting this to the disman mailing
> >Ram> list so folks can make sure all the requested changes were made:
> >
> >Compiles fine now with smilint. No name clashes with other IETF
> >definitions detected. ;-)
> 
> Thanks for the quick response. :-)
> I'm especially glad there aren't name clashes ;-)
> 
> Ram
> 
> >/js
> >
> >-- 
> >Juergen Schoenwaelder      Technical University Braunschweig
> ><schoenw@ibr.cs.tu-bs.de>  Dept. Operating Systems & Computer Networks
> >Phone: +49 531 391 3289    Bueltenweg 74/75, 38106 Braunschweig, Germany
> >Fax:   +49 531 391 5936    <URL:http://www.ibr.cs.tu-bs.de/~schoenw/>
> >
> >
> >
> 


From owner-disman@dorothy.peer.com  Thu Jun 22 08:58:42 2000
Received: from starling.bmc.com (fw-us-hou-2.bmc.com [198.207.223.251])
	by ietf.org (8.9.1a/8.9.1a) with ESMTP id IAA04097
	for <disman-archive@odin.ietf.org>; Thu, 22 Jun 2000 08:58:41 -0400 (EDT)
Received: from Dorothy.Bmc.Com (localhost [127.0.0.1])
	by starling.bmc.com (8.10.1/8.8.6) with ESMTP id e5MCooP04476;
	Thu, 22 Jun 2000 07:50:50 -0500 (CDT)
Received: (from root@localhost)
	by Dorothy.Bmc.Com (8.8.6 (PHNE_12836)/8.8.6) id FAA16587
	for disman-list; Thu, 22 Jun 2000 05:49:14 -0700 (PDT)
Received: from starling.bmc.com (starling.bmc.com [172.17.0.113])
	by Dorothy.Bmc.Com (8.8.6 (PHNE_12836)/8.8.6) with ESMTP id FAA16582
	for <disman@dorothy.peer.com>; Thu, 22 Jun 2000 05:49:11 -0700 (PDT)
Received: from fw-us-hou1.bmc.com (localhost [127.0.0.1])
	by starling.bmc.com (8.10.1/8.8.6) with SMTP id e5MCntP04194
	for <disman@dorothy.bmc.com>; Thu, 22 Jun 2000 07:49:55 -0500 (CDT)
Received: from oleane  (dyn-1-1-153.Vin.dialup.oleane.fr [195.25.4.153])  by smtp1.cluster.oleane.net  with SMTP id OAA98211 for <disman@dorothy.bmc.com>; Thu, 22 Jun 2000 14:49:40 +0200 (CEST)
Message-ID: <08a901bfdc48$899bac20$0401a8c0@oleane.com>
From: "Peter Lewis" <peter.lewis@upperside.fr>
To: <disman@dorothy.peer.com>
Date: Thu, 22 Jun 2000 14:51:03 +0200
MIME-Version: 1.0
Content-Type: multipart/alternative;
	boundary="----=_NextPart_000_08A6_01BFDC59.49D725E0"
X-Priority: 3
X-MSMail-Priority: Normal
X-Mailer: Microsoft Outlook Express 5.00.2314.1300
X-MimeOLE: Produced By Microsoft MimeOLE V5.00.2314.1300
Sender: owner-disman@dorothy.peer.com
Precedence: bulk
List-Id: IETF disman Working Group mailing list <disman@dorothy.bmc.com>


This is a multi-part message in MIME format.

------=_NextPart_000_08A6_01BFDC59.49D725E0
Content-Type: text/plain;
	charset="iso-8859-1"
Content-Transfer-Encoding: quoted-printable

test

------=_NextPart_000_08A6_01BFDC59.49D725E0
Content-Type: text/html;
	charset="iso-8859-1"
Content-Transfer-Encoding: quoted-printable

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<HTML><HEAD>
<META content=3D"text/html; charset=3Diso-8859-1" =
http-equiv=3DContent-Type>
<META content=3D"MSHTML 5.00.2314.1000" name=3DGENERATOR>
<STYLE></STYLE>
</HEAD>
<BODY bgColor=3D#ffffff>
<DIV><FONT face=3DArial size=3D2>test</FONT></DIV></BODY></HTML>

------=_NextPart_000_08A6_01BFDC59.49D725E0--



From owner-disman@dorothy.peer.com  Fri Jun 23 01:07:32 2000
Received: from starling.bmc.com (fw-us-hou-2.bmc.com [198.207.223.251])
	by ietf.org (8.9.1a/8.9.1a) with ESMTP id BAA22518
	for <disman-archive@odin.ietf.org>; Fri, 23 Jun 2000 01:07:31 -0400 (EDT)
Received: from Dorothy.Bmc.Com (localhost [127.0.0.1])
	by starling.bmc.com (8.10.1/8.8.6) with ESMTP id e5N56Rn05103;
	Fri, 23 Jun 2000 00:06:27 -0500 (CDT)
Received: (from root@localhost)
	by Dorothy.Bmc.Com (8.8.6 (PHNE_12836)/8.8.6) id WAA17954
	for disman-list; Thu, 22 Jun 2000 22:04:02 -0700 (PDT)
Received: (from rpresuhn@localhost)
	by Dorothy.Bmc.Com (8.8.6 (PHNE_12836)/8.8.6) id WAA17948;
	Thu, 22 Jun 2000 22:03:58 -0700 (PDT)
Date: Thu, 22 Jun 2000 22:03:58 -0700 (PDT)
From: Randy Presuhn <rpresuhn@dorothy.peer.com>
Message-Id: <200006230503.WAA17948@Dorothy.Bmc.Com>
To: agenda@ietf.org, bwijnen@lucent.com
Subject: Pittsburgh meeting slot request: disman
Cc: disman@dorothy.peer.com
Mime-Version: 1.0
Content-Type: text/plain; charset=us-ascii
Content-Transfer-Encoding: 7bit
Sender: owner-disman@dorothy.peer.com
Precedence: bulk
List-Id: IETF disman Working Group mailing list <disman@dorothy.bmc.com>
Content-Transfer-Encoding: 7bit


Hi -

Working group name: disman

Area: Operations and Management

Conflicts to avoid:
    ADSL MIB (adslmib) 
    AToM MIB (atommib) 
    Authentication, Authorization and Accounting (aaa) 
    Benchmarking Methodology (bmwg) 
    Bridge MIB (bridge) 
    Configuration Management with SNMP (snmpconf) 
    Data Link Switching MIB (dlswmib) 
    Entity MIB (entmib) 
    Ethernet Interfaces and Hub MIB (hubmib) 
    Frame Relay Service MIB (frnetmib) 
    General Switch Management Protocol (gsmp) 
    Interfaces MIB (ifmib) 
    Internationalized Domain Name (idn) 
    Intrusion Detection Exchange Format (idwg) 
    Physical Topology MIB (ptopomib) 
    Policy Framework (policy) 
    Remote Network Monitoring (rmonmib) 
    SNA DLC Services MIB (snadlc) 
    SNMP Agent Extensibility (agentx) 
    SNMP Version 3 (snmpv3)
    Security Issues in Network Event Logging (syslog) 
    Service Location Protocol (svrloc) 
    Zero Configuration Networking (zeroconf) 
    diffserv
    ippm
    policy
    ptopomib
    weird

Expected attendance: 60

No special requests.

No one-hour sessions.

One normal length session.

A proposed agenda will soon follow.

 -------------------------------------------------------
 Randy Presuhn           randy_presuhn@bmc.com
 Voice: +1 408 546-1006  BMC Software, Inc.  1-3141
 Fax:   +1 408 965-0359  2141 North First Street
 http://www.bmc.com/     San José, California 95131  USA
 -------------------------------------------------------
 My opinions and BMC's are independent variables.
 -------------------------------------------------------


From owner-disman@dorothy.peer.com  Fri Jun 23 02:50:55 2000
Received: from starling.bmc.com (fw-us-hou-2.bmc.com [198.207.223.251])
	by ietf.org (8.9.1a/8.9.1a) with ESMTP id CAA04750
	for <disman-archive@odin.ietf.org>; Fri, 23 Jun 2000 02:50:55 -0400 (EDT)
Received: from Dorothy.Bmc.Com (localhost [127.0.0.1])
	by starling.bmc.com (8.10.1/8.8.6) with ESMTP id e5N6nSr19167;
	Fri, 23 Jun 2000 01:49:29 -0500 (CDT)
Received: (from root@localhost)
	by Dorothy.Bmc.Com (8.8.6 (PHNE_12836)/8.8.6) id XAA18115
	for disman-list; Thu, 22 Jun 2000 23:48:20 -0700 (PDT)
Received: from starling.bmc.com (starling.bmc.com [172.17.0.113])
	by Dorothy.Bmc.Com (8.8.6 (PHNE_12836)/8.8.6) with ESMTP id XAA18110
	for <disman@dorothy.peer.com>; Thu, 22 Jun 2000 23:48:16 -0700 (PDT)
Received: from fw-us-hou1.bmc.com (localhost [127.0.0.1])
	by starling.bmc.com (8.10.1/8.8.6) with SMTP id e5N6n1119132
	for <disman@dorothy.peer.com>; Fri, 23 Jun 2000 01:49:01 -0500 (CDT)
Received: from henkell.ibr.cs.tu-bs.de (schoenw@henkell [134.169.34.191])
	by mumm.ibr.cs.tu-bs.de (8.9.3/8.9.3) with ESMTP id IAA06676;
	Fri, 23 Jun 2000 08:48:54 +0200 (MET DST)
Received: from schoenw@localhost by henkell.ibr.cs.tu-bs.de (8.7.6/tubsibr) id IAA16291; Fri, 23 Jun 2000 08:48:53 +0200
Date: Fri, 23 Jun 2000 08:48:53 +0200
Message-Id: <200006230648.IAA16291@henkell.ibr.cs.tu-bs.de>
From: Juergen Schoenwaelder <schoenw@ibr.cs.tu-bs.de>
To: DISMAN Mailing List <disman@dorothy.peer.com>
Subject: smScriptError
Sender: owner-disman@dorothy.peer.com
Precedence: bulk
List-Id: IETF disman Working Group mailing list <disman@dorothy.bmc.com>



We already had agreement to add an smScriptError object so that we can
export human readable error messages in case the process to load
scripts fails. While making the edits, I was wondering why we now have
smScriptError and smRunError but no smLaunchError. In fact, there are
several reasons why launching a script may fail and there is currently
no mechanism to report why a launch failed.

Strawman: Add smLaunchError in addition to smScriptError so that there
is a mechanism to report failures to launch a script.

Comment?

/js

-- 
Juergen Schoenwaelder      Technical University Braunschweig
<schoenw@ibr.cs.tu-bs.de>  Dept. Operating Systems & Computer Networks
Phone: +49 531 391 3289    Bueltenweg 74/75, 38106 Braunschweig, Germany
Fax:   +49 531 391 5936    <URL:http://www.ibr.cs.tu-bs.de/~schoenw/>




From owner-disman@dorothy.peer.com  Thu Jun 29 12:14:46 2000
Received: from tattler.bmc.com (fw-us-hou-2.bmc.com [198.207.223.251])
	by ietf.org (8.9.1a/8.9.1a) with ESMTP id MAA13333
	for <disman-archive@odin.ietf.org>; Thu, 29 Jun 2000 12:14:41 -0400 (EDT)
Received: from Dorothy.Bmc.Com (localhost [127.0.0.1])
	by tattler.bmc.com (8.10.2/8.8.6) with ESMTP id e5TGBRo07185;
	Thu, 29 Jun 2000 11:11:27 -0500 (CDT)
Received: (from root@localhost)
	by Dorothy.Bmc.Com (8.8.6 (PHNE_12836)/8.8.6) id JAA17622
	for disman-list; Thu, 29 Jun 2000 09:08:09 -0700 (PDT)
Received: from tattler.bmc.com (tattler.bmc.com [172.17.0.117])
	by Dorothy.Bmc.Com (8.8.6 (PHNE_12836)/8.8.6) with ESMTP id JAA17617
	for <Disman@dorothy.peer.com>; Thu, 29 Jun 2000 09:08:04 -0700 (PDT)
Received: from fw-us-hou1.bmc.com (localhost [127.0.0.1])
	by tattler.bmc.com (8.10.2/8.8.6) with SMTP id e5TG7ld05550
	for <Disman@dorothy.peer.com>; Thu, 29 Jun 2000 11:07:48 -0500 (CDT)
Received: from alemail1.firewall.lucent.com (localhost [127.0.0.1])
	by alemail1.firewall.lucent.com (Pro-8.9.3/8.9.3) with ESMTP id MAA16274
	for <Disman@dorothy.peer.com>; Thu, 29 Jun 2000 12:07:26 -0400 (EDT)
Received: from nl0006exch001h.wins.lucent.com (h135-85-76-62.lucent.com [135.85.76.62])
	by alemail1.firewall.lucent.com (Pro-8.9.3/8.9.3) with ESMTP id MAA16156
	for <Disman@dorothy.peer.com>; Thu, 29 Jun 2000 12:07:21 -0400 (EDT)
Received: by nl0006exch001h.nl.lucent.com with Internet Mail Service (5.5.2650.21)
	id <NX85XSL3>; Thu, 29 Jun 2000 18:07:19 +0200
Message-ID: <2413FED0DFE6D111B3F90008C7FA61FB07F5D2BB@nl0006exch002u.nl.lucent.com>
From: "Wijnen, Bert (Bert)" <bwijnen@lucent.com>
To: Disman@dorothy.peer.com, Ken White <wkenneth@us.ibm.com>
Subject: RE: <draft-ietf-disman-remops-mib-08.txt>
Date: Thu, 29 Jun 2000 18:07:15 +0200
MIME-Version: 1.0
X-Mailer: Internet Mail Service (5.5.2650.21)
Content-Type: text/plain
Sender: owner-disman@dorothy.peer.com
Precedence: bulk
List-Id: IETF disman Working Group mailing list <disman@dorothy.bmc.com>


This document was just approved as PS by the IESG.

Formal announcement will come from IESG secretary.
And... it will take some time before RFC is published (RFC-Editor
has a preety long queue).

Thanks to the WG, and special thanks to Ken White and David Partain

Bert
> ----------
> From: 	wkenneth@us.ibm.com[SMTP:wkenneth@us.ibm.com]
> Sent: 	Friday, March 10, 2000 4:35 PM
> To: 	Disman@dorothy.peer.com
> Subject: 	<draft-ietf-disman-remops-mib-08.txt>
> 
> 
> 
> 
> Attached is a new draft of the REMOPS MIBs that I have just submitted.
> This revision includes all of the changes brought up by David Partain's
> comments. The biggest changes resulted from using the InetAddressType
> and InetAddress TCs from the INET-ADDRESS-MIB (Endpoint
> MIB).
> 
> Regards, Ken
> 
> (See attached file: Remops.txt)
> 


From owner-disman@dorothy.peer.com  Thu Jun 29 12:33:41 2000
Received: from tattler.bmc.com (fw-us-hou-2.bmc.com [198.207.223.251])
	by ietf.org (8.9.1a/8.9.1a) with ESMTP id MAA13964
	for <disman-archive@odin.ietf.org>; Thu, 29 Jun 2000 12:33:40 -0400 (EDT)
Received: from Dorothy.Bmc.Com (localhost [127.0.0.1])
	by tattler.bmc.com (8.10.2/8.8.6) with ESMTP id e5TGVfN15895;
	Thu, 29 Jun 2000 11:31:42 -0500 (CDT)
Received: (from root@localhost)
	by Dorothy.Bmc.Com (8.8.6 (PHNE_12836)/8.8.6) id JAA23259
	for disman-list; Thu, 29 Jun 2000 09:28:27 -0700 (PDT)
Received: from tattler.bmc.com (tattler.bmc.com [172.17.0.117])
	by Dorothy.Bmc.Com (8.8.6 (PHNE_12836)/8.8.6) with ESMTP id JAA23254
	for <Disman@dorothy.peer.com>; Thu, 29 Jun 2000 09:28:23 -0700 (PDT)
Received: from fw-us-hou1.bmc.com (localhost [127.0.0.1])
	by tattler.bmc.com (8.10.2/8.8.6) with SMTP id e5TGS0M14470
	for <Disman@dorothy.peer.com>; Thu, 29 Jun 2000 11:28:02 -0500 (CDT)
Received: from ramk-95.cisco.com (ramk-dsl4.cisco.com [10.19.11.157])
	by sigma.cisco.com (8.8.8-Cisco List Logging/8.8.8) with SMTP id JAA24994;
	Thu, 29 Jun 2000 09:28:12 -0700 (PDT)
Message-Id: <4.1.20000629091701.00a72d00@sigma.cisco.com>
X-Sender: ramk@sigma.cisco.com
X-Mailer: QUALCOMM Windows Eudora Pro Version 4.1 
Date: Thu, 29 Jun 2000 09:30:17 -0700
To: "Wijnen, Bert (Bert)" <bwijnen@lucent.com>
From: "Ramanathan R. Kavasseri" <ramk@cisco.com>
Subject: RE: Latest Event MIB draft - draft-ietf-disman-event-mib-10.txt
Cc: Disman@dorothy.peer.com
In-Reply-To: <2413FED0DFE6D111B3F90008C7FA61FB07F5D039@nl0006exch002u.nl
 .lucent.com>
Mime-Version: 1.0
Content-Type: text/plain; charset="us-ascii"
Sender: owner-disman@dorothy.peer.com
Precedence: bulk
List-Id: IETF disman Working Group mailing list <disman@dorothy.bmc.com>


At 03:33 PM 6/29/00 +0200, Wijnen, Bert (Bert) wrote:
>
>Guys, this all looks fine, but I do not see the rev 10 in the
>I-D repository yet. I cannot issue an IETF Last Call unless it does
>who up there!!! Since there were no more comments, I think
>Ram should go ahead and post it.
>
>Same with expression mib rev 12
>
>Bert

Done. Apologies for the delay.

Ram

>> ----------
>> From: 	Wijnen, Bert (Bert)
>> Sent: 	Wednesday, June 21, 2000 2:04 PM
>> To: 	ramk@cisco.com; Juergen Schoenwaelder
>> Cc: 	Disman@dorothy.peer.com
>> Subject: 	RE: Latest Event MIB draft -
>> draft-ietf-disman-event-mib-10.txt
>> 
>> 
>> Thanks, looks good to me.
>> I trust Juergen did the proper check for duplicates :-)
>> 
>> Bert
>> 
>> > ----------
>> > From: 	Juergen Schoenwaelder[SMTP:schoenw@ibr.cs.tu-bs.de]
>> > Sent: 	Tuesday, June 20, 2000 11:34 AM
>> > To: 	ramk@cisco.com
>> > Cc: 	disman@dorothy.peer.com
>> > Subject: 	Re: Latest Event MIB draft -
>> > draft-ietf-disman-event-mib-10.txt
>> > 
>> > 
>> > 
>> > >>>>> Ram Kavasseri writes:
>> > 
>> > Ram> The following typos/formatting changes were made to
>> > Ram> draft-ietf-disman-event-mib-09.txt. The new revision is called
>> > Ram> draft-ietf-disman-event-mib-10.txt. Before posting this to
>> > Ram> internet-drafts@ietf.org, I'm posting this to the disman mailing
>> > Ram> list so folks can make sure all the requested changes were made:
>> > 
>> > Compiles fine now with smilint. No name clashes with other IETF
>> > definitions detected. ;-)
>> > 
>> > /js
>> > 
>> > -- 
>> > Juergen Schoenwaelder      Technical University Braunschweig
>> > <schoenw@ibr.cs.tu-bs.de>  Dept. Operating Systems & Computer Networks
>> > Phone: +49 531 391 3289    Bueltenweg 74/75, 38106 Braunschweig, Germany
>> > Fax:   +49 531 391 5936    <URL:http://www.ibr.cs.tu-bs.de/~schoenw/>
>> > 
>> > 
>> 
>



From owner-disman@dorothy.peer.com  Thu Jun 29 12:34:53 2000
Received: from tattler.bmc.com (fw-us-hou-2.bmc.com [198.207.223.251])
	by ietf.org (8.9.1a/8.9.1a) with ESMTP id MAA14023
	for <disman-archive@odin.ietf.org>; Thu, 29 Jun 2000 12:34:46 -0400 (EDT)
Received: from Dorothy.Bmc.Com (localhost [127.0.0.1])
	by tattler.bmc.com (8.10.2/8.8.6) with ESMTP id e5TGW5816075;
	Thu, 29 Jun 2000 11:32:06 -0500 (CDT)
Received: (from root@localhost)
	by Dorothy.Bmc.Com (8.8.6 (PHNE_12836)/8.8.6) id JAA23329
	for disman-list; Thu, 29 Jun 2000 09:29:45 -0700 (PDT)
Received: from tattler.bmc.com (tattler.bmc.com [172.17.0.117])
	by Dorothy.Bmc.Com (8.8.6 (PHNE_12836)/8.8.6) with ESMTP id JAA23274
	for <disman@dorothy.peer.com>; Thu, 29 Jun 2000 09:28:47 -0700 (PDT)
Received: from fw-us-hou1.bmc.com (localhost [127.0.0.1])
	by tattler.bmc.com (8.10.2/8.8.6) with SMTP id e5TGS0E14438
	for <disman@dorothy.bmc.com>; Thu, 29 Jun 2000 11:28:03 -0500 (CDT)
Received: (ramk@localhost) by itech-view2.cisco.com (8.8.5-Cisco.2-SunOS.5.5.1.sun4/8.6.5) id JAA12617; Thu, 29 Jun 2000 09:24:53 -0700 (PDT)
From: Ram Kavasseri <ramk@cisco.com>
Message-Id: <200006291624.JAA12617@itech-view2.cisco.com>
Subject: draft-ietf-disman-event-mib-10.txt
To: internet-drafts@ietf.org
Date: Thu, 29 Jun 2000 09:24:53 -0700 (PDT)
Cc: disman@dorothy.peer.com
X-Mailer: ELM [version 2.5 PL1]
MIME-Version: 1.0
Content-Type: text/plain; charset=us-ascii
Content-Transfer-Encoding: 7bit
Sender: owner-disman@dorothy.peer.com
Precedence: bulk
List-Id: IETF disman Working Group mailing list <disman@dorothy.bmc.com>
Content-Transfer-Encoding: 7bit


Please accept drafte-ietf-disman-event-mib-10.txt for posting
sa an interent draft. This draft contains changes to fix typos,
formatting issues etc. 

Thank you,

Ram Kavasseri








Network Working Group                           Editor of this version:
Internet-Draft                                  Ramanathan R. Kavasseri
Expires December 2000                               Cisco Systems, Inc.
                                            Author of previous version:
                                                            Bob Stewart
                                                            7 June 2000



                               Event MIB

                   draft-ietf-disman-event-mib-10.txt


                          Status of this Memo

This document is an Internet-Draft and is in full conformance with all
provisions of Section 10 of RFC2026.

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.''

     The list of current Internet-Drafts can be accessed at
     http://www.ietf.org/ietf/1id-abstracts.txt

     The list of Internet-Draft Shadow Directories can be accessed at
     http://www.ietf.org/shadow.html.

Distribution of this document is unlimited. Please send comments to the
Distributed Management Working Group, <disman@dorothy.BMC.com>.


Copyright Notice

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















Internet Draft      Distributed Management Event MIB         7 June 2000


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 that can be used
to manage and monitor MIB objects and take action through events.

The Event MIB provides the ability to monitor MIB objects on the local
system or on a remote system and take simple action when a trigger
condition is met.


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.


2.  The SNMP Management Framework

   The SNMP Management Framework presently consists of five major
   components:

    o   An overall architecture, described in RFC 2571 [RFC2571].

    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
        STD 16, RFC 1155 [RFC1155], STD 16, RFC 1212 [RFC1212] and RFC
        1215 [RFC1215]. The second version, called SMIv2, is described
        in STD 58, RFC 2578 [RFC2578], RFC 2579 [RFC2579] and RFC 2580
        [RFC2580].

    o   Message protocols for transferring management information. The
        first version of the SNMP message protocol is called SNMPv1 and
        described in STD 15, RFC 1157 [RFC1157]. A second version of the
        SNMP message protocol, which is not an Internet standards track
        protocol, is called SNMPv2c and described in RFC 1901 [RFC1901]
        and RFC 1906 [RFC1906]. The third version of the message
        protocol is called SNMPv3 and described in RFC 1906 [RFC1906],
        RFC 2572 [RFC2572] and RFC 2574 [RFC2574].

    o   Protocol operations for accessing management information. The
        first set of protocol operations and associated PDU formats is
        described in STD 15, RFC 1157 [RFC1157]. A second set of
        protocol operations and associated PDU formats is described in





Expires 7 December 2000                                         [Page 2]





Internet Draft      Distributed Management Event MIB         7 June 2000


        RFC 1905 [RFC1905].

    o   A set of fundamental applications described in RFC 2573
        [RFC2573] and the view-based access control mechanism described
        in RFC 2575 [RFC2575].

   A more detailed introduction to the current SNMP Management Framework
   can be found in RFC 2570 [RFC2570].

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

   This memo specifies a MIB module that is compliant to the SMIv2. A
   MIB conforming to the SMIv1 can be produced through the appropriate
   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. It may not be possible to meaningfully monitor Counter64 objects
   using an SMIv1 version of the MIB.



























Expires 7 December 2000                                         [Page 3]





Internet Draft      Distributed Management Event MIB         7 June 2000


3.  Overview

With network sizes well beyond the ability of people to manage them
directly, automated, distributed management is vital.  An important
aspect of such management is the ability of a system to monitor itself
or for some other system to monitor it.

The Event MIB provides the ability to monitor MIB objects on the local
system or on a remote system and take simple action when a trigger
condition is met.

The MIB is intended to suit either a relatively powerful manager or mid-
level manager, as well as a somewhat more limited self-managing system.


4.  Relationship to Other MIBs

The Event MIB is based on extensive experience with the RMON MIB
[RFC1757] and provides a superset of the capabilities of the RMON alarm
and event groups.  Conceptually, the key extension is the ability to
allow alarms to be generated for MIB objects that are on another network
element. The Event MIB calls "triggers" what the RMON MIB called
"alarms," but the concepts are the same.  Event MIB triggers maintain
the RMON handling of thresholds and add the concept of booleans.  Event
MIB events maintain the RMON concept of sending an SNMP notification in
response to a trigger and add the concept of setting a MIB object.

The Event MIB is the successor and update to SNMPv2's Manager-to-Manager
MIB [RFC1451] which was declared Historic pending this work.

The Event MIB depends on the services of the SNMPv3 Management Target
and Notification MIBs [RFC2573].

The Event MIB is nicely complemented by the Distributed Management
Expression MIB [RFCExpressionMIB], which is the expected source of
boolean objects to monitor.  Note that there is considerable overlap
between the wildcard and delta sample capabilities of the Event and
Expression MIBs.  A carefully-planned implementation might well use
common code to provide the overlapping functions.


5.  MIB Sections

The MIB has four sections: triggers, objects, events, and notifications.
Triggers define the conditions that lead to events.  Events may cause





Expires 7 December 2000                                         [Page 4]





Internet Draft      Distributed Management Event MIB         7 June 2000


notifications.

The trigger table lists what objects are to be monitored and how and
relates each trigger to an event.  It has supplementary, companion
tables for additional objects that depend on the type of test done for
the trigger.

The objects table lists objects that can be added to notifications based
on the trigger, the trigger test type, or the event that resulted in the
notification.

The event table defines what happens when an event is triggered: sending
a notification, setting a MIB object or both.  It has supplementary,
companion tables for additional objects that depend on the action taken.

The notification section defines a set of generic notifications to go
with the events and for Event MIB error handling, and it defines a set
of objects to put in those notifications.
































Expires 7 December 2000                                         [Page 5]





Internet Draft      Distributed Management Event MIB         7 June 2000


The following diagram describes the relationships between the tables
in the Event MIB.


+-----------------------------+
| mteTriggerEntry             |      subclassed by:
|  { mteOwner,                |---+
|    IMPLIED mteTriggerName } |   +-- mteTriggerDeltaEntry
|                             |   |
|                             |   +-- mteTriggerExistenceEntry
|                             |   |
|                             |   +-- mteTriggerBooleanEntry
|                             |   |
|                             |   +-- mteTriggerThresholdEntry
|                             |
|       mteTrigger*Event -------------------------------->+
|                             |                           |
|       mteTriggerObjects ------------------>+            |
+-----------------------------+              |            |
                                             |            |
+-----------------------------+              V            |
| mteObjectsEntry             |              |            |
|  { mteOwner,                |<-------------+            |
|    mteObjectsName,          |                           |
|    mteObjectsIndex }        |                           |
+-----------------------------+                           |
                                                          V
+---------------------------+                             |
| mteEventEntry             |<----------------------------+
|  { mteOwner,              |
|    IMPLIED mteEventName } |
|                           |
|            mteEventAction---> + (condition)
+---------------------------+   |
                                V
+---------------------------+   |   +---------------------------+
| mteEventNotificationEntry |   |   | mteEventSetEntry          |
|  { mteOwner,              |<--+-->|  { mteOwner,              |
|    IMPLIED mteEventName } |       |    IMPLIED mteEventName } |
+---------------------------+       +---------------------------+










Expires 7 December 2000                                         [Page 6]





Internet Draft      Distributed Management Event MIB         7 June 2000


6.  Operation

The Event MIB is instrumentation for a distributed management
application that monitors MIB objects.  In its simplest form this
application monitors individual, local MIB objects, just as an RMON
probe fulfills the functions implied by RMON's alarm and event
operation.  Additionally the application can monitor remote objects and
wildcarded groups of objects.

Remote monitoring uses the tag service of the Management Target MIB
[RFC2573] to select and access remote systems as an ordinary SNMP-based
management application.  Local monitoring may be via a more intimate,
local interface which may, for example, bypass SNMP encoding but
otherwise is functionally identical to remote SNMP operation, including
the application of access control.  A self-management only system MAY
not implement remote monitoring.

Wildcards indicate that the application SHOULD use a GetNext-type
operation to find the zero or more instances implied by a truncated
object identifier, just like an ordinary SNMP-based management
application.  Each instance of a wildcard is treated as if it were a
separate entry, that is the instances of a wildcarded object are
independent of one another.  For example, a wild-carded object may
trigger an event, and result in the setting of another wildcarded
object.  The instance that satisfied the trigger function is used to
perform the set function.  All of this takes place independently of any
additional instances that may fill the wildcard.

Error handling is by notification.  These error notifications SHOULD be
enabled only for the diagnosis of problems indicated by error counters.
If minimizing the probability of notification loss is a concern they
SHOULD be transmitted as Inform PDUs as described in the [SNMP-TARGET-
MIB] or directed to a log as described in the Notification Log MIB
[rfcNotificationLogMIB]. Note that this does not mean the Notification
Log MIB is REQUIRED, since in fact notifications usually are not lost,
but that the Notification Log MIB can be helpful with this as well as
other MIBs that include notifications.

Although like most MIBs this one has no explicit controls for the
persistence of the values set in configuring events, a robust, polite
implementation would certainly not force its managing applications to
reconfigure it whenever it resets.

Again, as with most MIBs, it is implementation-specific how a system
provides and manages such persistence.  To speculate, one could imagine,





Expires 7 December 2000                                         [Page 7]





Internet Draft      Distributed Management Event MIB         7 June 2000


for example, that persistence depended on the context in which the
expression was configured, or perhaps system-specific characteristics of
the expression's owner.  Or perhaps everything in a MIB such as this
one, which is clearly aimed at persistent configuration, is
automatically part of a system's other persistent configuration.


7.  Security

Security of Event MIB entries depends on SNMPv3 access control for the
entire MIB or for subsets based on entry owner names.

Security of monitored objects for remote access depends on the
Management Target MIB [RFC2573].  Security for local access can depend
on the Management Target MIB or on recording appropriate security
credentials of the creator of an entry and using those to access the
local objects.  These security credentials are the parameters necessary
as inputs to isAccessAllowed from the Architecture for Describing SNMP
Management Frameworks.  When accessing local objects without using a
local target tag, the system MUST (conceptually) use isAccessAllowed to
ensure that it does not violate security.

To facilitate the provisioning of access control by a security
administrator for this MIB itself using the View-Based Access Control
Model (VACM) defined in RFC 2275 [RFC2575] 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.

If a security administrator were to employ such an approach, all entries
in related tables 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 sub-identifiers (except for the "column" sub-
identifier) 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 "wildcarding" the column sub-identifier.  More
elaborate configurations are possible.









Expires 7 December 2000                                         [Page 8]





Internet Draft      Distributed Management Event MIB         7 June 2000


8.  Definitions

DISMAN-EVENT-MIB DEFINITIONS ::= BEGIN

IMPORTS
    MODULE-IDENTITY, OBJECT-TYPE,
    Integer32, Unsigned32,
    NOTIFICATION-TYPE, Counter32,
    Gauge32, mib-2, zeroDotZero         FROM SNMPv2-SMI
    TEXTUAL-CONVENTION, RowStatus,
    TruthValue                FROM SNMPv2-TC
    MODULE-COMPLIANCE, OBJECT-GROUP,
    NOTIFICATION-GROUP             FROM SNMPv2-CONF
    sysUpTime                 FROM SNMPv2-MIB
    SnmpTagValue              FROM SNMP-TARGET-MIB
    SnmpAdminString           FROM SNMP-FRAMEWORK-MIB;

dismanEventMIB MODULE-IDENTITY
    LAST-UPDATED "200006070000Z"            -- 7 June 2000
    ORGANIZATION "IETF Distributed Management Working Group"
    CONTACT-INFO "Ramanathan Kavasseri
                  Cisco Systems, Inc.
                  170 West Tasman Drive,
                  San Jose CA 95134-1706.
                  Phone: +1 408 526 4527
                  Email: ramk@cisco.com"
    DESCRIPTION
     "The MIB module for defining event triggers and actions
     for network management purposes."
-- Revision History

       REVISION     "200006070000Z"            -- 7 June 2000
       DESCRIPTION  "This is the initial version of this MIB.
                    Published as RFC xxxx"
    ::= { mib-2 xx } -- final assignment by IANA at publication time

dismanEventMIBObjects OBJECT IDENTIFIER ::= { dismanEventMIB 1 }

-- Management Triggered Event (MTE) objects

mteResource           OBJECT IDENTIFIER ::= { dismanEventMIBObjects 1 }
mteTrigger            OBJECT IDENTIFIER ::= { dismanEventMIBObjects 2 }
mteObjects            OBJECT IDENTIFIER ::= { dismanEventMIBObjects 3 }
mteEvent              OBJECT IDENTIFIER ::= { dismanEventMIBObjects 4 }






Expires 7 December 2000                                         [Page 9]





Internet Draft      Distributed Management Event MIB         7 June 2000


--
-- Textual Conventions
--

FailureReason ::= TEXTUAL-CONVENTION
    STATUS      current
    DESCRIPTION
        "Reasons for failures in an attempt to perform a management
        request.

        The first group of errors, numbered less than 0, are related
        to problems in sending the request.  The existence of a
        particular error code here does not imply that all
        implementations are capable of sensing that error and
        returning that code.

        The second group, numbered greater than 0, are copied
        directly from SNMP protocol operations and are intended to
        carry exactly the meanings defined for the protocol as returned
        in an SNMP response.

        localResourceLack       some local resource such as memory lacking
                                or mteResourceSampleInstanceMaximum
                                exceeded
        badDestination          unrecognized domain name or otherwise
                                invalid destination address
        destinationUnreachable  can't get to destination address
        noResponse              no response to SNMP request
        badType                 the data syntax of a retrieved object
                                as not as expected
        sampleOverrun           another sample attempt occurred before
                                the previous one completed"

    SYNTAX      INTEGER { localResourceLack(-1),
                          badDestination(-2),
                          destinationUnreachable(-3),
                          noResponse(-4),
                          badType(-5),
                          sampleOverrun(-6),

                          noError(0),

                          tooBig(1),
                          noSuchName(2),
                          badValue(3),





Expires 7 December 2000                                        [Page 10]





Internet Draft      Distributed Management Event MIB         7 June 2000


                          readOnly(4),
                          genErr(5),
                          noAccess(6),
                          wrongType(7),
                          wrongLength(8),
                          wrongEncoding(9),
                          wrongValue(10),
                          noCreation(11),
                          inconsistentValue(12),
                          resourceUnavailable(13),
                          commitFailed(14),
                          undoFailed(15),
                          authorizationError(16),
                          notWritable(17),
                          inconsistentName(18) }
--
-- Resource Control Section
--

mteResourceSampleMinimum OBJECT-TYPE
    SYNTAX      Integer32 (1..2147483647)
    UNITS       "seconds"
    MAX-ACCESS  read-write
    STATUS      current
    DESCRIPTION
        "The minimum mteTriggerFrequency this system will
        accept.  A system may use the larger values of this minimum to
        lessen the impact of constant sampling.  For larger
        sampling intervals the system samples less often and
        suffers less overhead.  This object provides a way to enforce
        such lower overhead for all triggers created after it is
        set.

        Unless explicitly resource limited, a system's value for
        this object SHOULD be 1, allowing as small as a 1 second
        interval for ongoing trigger sampling.

        Changing this value will not invalidate an existing setting
        of mteTriggerFrequency."
    ::= { mteResource 1 }

mteResourceSampleInstanceMaximum OBJECT-TYPE
    SYNTAX      Unsigned32
    UNITS       "instances"
    MAX-ACCESS  read-write





Expires 7 December 2000                                        [Page 11]





Internet Draft      Distributed Management Event MIB         7 June 2000


    STATUS      current
    DESCRIPTION
        "The maximum number of instance entries this system will
        support for sampling.

        These are the entries that maintain state, one for each
        instance of each sampled object as selected by
        mteTriggerValueID.  Note that wildcarded objects result
        in multiple instances of this state.

        A value of 0 indicates no preset limit, that is, the limit
        is dynamic based on system operation and resources.

        Unless explicitly resource limited, a system's value for
        this object SHOULD be 0.

        Changing this value will not eliminate or inhibit existing
        sample state but could prevent allocation of additional state
        information."
    ::= { mteResource 2 }

mteResourceSampleInstances OBJECT-TYPE
    SYNTAX      Gauge32
    UNITS       "instances"
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "The number of currently active instance entries as
        defined for mteResourceSampleInstanceMaximum."
    ::= { mteResource 3 }

mteResourceSampleInstancesHigh OBJECT-TYPE
    SYNTAX      Gauge32
    UNITS       "instances"
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "The highest value of mteResourceSampleInstances that has
        occurred since initialization of the management system."
    ::= { mteResource 4 }

mteResourceSampleInstanceLacks OBJECT-TYPE
    SYNTAX      Counter32
    UNITS       "instances"
    MAX-ACCESS  read-only





Expires 7 December 2000                                        [Page 12]





Internet Draft      Distributed Management Event MIB         7 June 2000


    STATUS      current
    DESCRIPTION
        "The number of times this system could not take a new sample
        because that allocation would have exceeded the limit set by
        mteResourceSampleInstanceMaximum."
    ::= { mteResource 5 }


--
-- Trigger Section
--

-- Counters

mteTriggerFailures OBJECT-TYPE
    SYNTAX      Counter32
    UNITS       "failures"
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "The number of times an attempt to check for a trigger
        condition has failed.  This counts individually for each
        attempt in a group of targets or each attempt for a
        wildcarded object."
    ::= { mteTrigger 1 }


--
-- Trigger Table
--

mteTriggerTable OBJECT-TYPE
    SYNTAX      SEQUENCE OF MteTriggerEntry
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
        "A table of management event trigger information."
    ::= { mteTrigger 2 }

mteTriggerEntry OBJECT-TYPE
    SYNTAX      MteTriggerEntry
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
        "Information about a single trigger.  Applications create and





Expires 7 December 2000                                        [Page 13]





Internet Draft      Distributed Management Event MIB         7 June 2000


        delete entries using mteTriggerEntryStatus."
    INDEX       { mteOwner, IMPLIED mteTriggerName }
    ::= { mteTriggerTable 1 }

MteTriggerEntry ::= SEQUENCE {
    mteOwner                            SnmpAdminString,
    mteTriggerName                      SnmpAdminString,
    mteTriggerComment                   SnmpAdminString,
    mteTriggerTest                      BITS,
    mteTriggerSampleType                INTEGER,
    mteTriggerValueID                   OBJECT IDENTIFIER,
    mteTriggerValueIDWildcard           TruthValue,
    mteTriggerTargetTag                 SnmpTagValue,
    mteTriggerContextName               SnmpAdminString,
    mteTriggerContextNameWildcard       TruthValue,
    mteTriggerFrequency                 Unsigned32,
    mteTriggerObjectsOwner              SnmpAdminString,
    mteTriggerObjects                   SnmpAdminString,
    mteTriggerEnabled                   TruthValue,
    mteTriggerEntryStatus               RowStatus
}

mteOwner OBJECT-TYPE
   SYNTAX      SnmpAdminString (SIZE(0..32))
   MAX-ACCESS  not-accessible
   STATUS      current
   DESCRIPTION
        "The owner of this entry. The exact semantics of this
        string are subject to the security policy defined by the
        security administrator."
    ::= { mteTriggerEntry 1 }

mteTriggerName OBJECT-TYPE
    SYNTAX      SnmpAdminString (SIZE (1..32))
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
        "A locally-unique, administratively assigned name for the
        trigger within the scope of mteOwner."
    ::= { mteTriggerEntry 2 }

mteTriggerComment OBJECT-TYPE
    SYNTAX      SnmpAdminString
    MAX-ACCESS  read-create
    STATUS      current





Expires 7 December 2000                                        [Page 14]





Internet Draft      Distributed Management Event MIB         7 June 2000


    DESCRIPTION
        "A description of the trigger's function and use."
    DEFVAL { ''H }
    ::= { mteTriggerEntry 3 }

mteTriggerTest OBJECT-TYPE
    SYNTAX      BITS { existence(0), boolean(1), threshold(2) }
    MAX-ACCESS  read-create
    STATUS      current
    DESCRIPTION
        "The type of trigger test to perform.  For 'boolean' and
        'threshold'  tests, the object at mteTriggerValueID MUST
        evaluate to an integer, that is, anything that ends up encoded
        for transmission (that is, in BER, not ASN.1) as an integer.

        For 'existence', the specific test is as selected by
        mteTriggerExistenceTest.  When an object appears, vanishes
        or changes value, the trigger fires. If the object's
        appearance caused the trigger firing, the object MUST
        vanish before the trigger can be fired again for it, and
        vice versa. If the trigger fired due to a change in the
        object's value, it will be fired again on every successive
        value change for that object.

        For 'boolean', the specific test is as selected by
        mteTriggerBooleanTest.  If the test result is true the trigger
        fires.  The trigger will not fire again until the value has
        become false and come back to true.

        For 'threshold' the test works as described below for
        mteTriggerThresholdStartup, mteTriggerThresholdRising, and
        mteTriggerThresholdFalling.

        Note that combining 'boolean' and 'threshold' tests on the
        same object may be somewhat redundant."
    DEFVAL { { boolean } }
    ::= { mteTriggerEntry 4 }

mteTriggerSampleType OBJECT-TYPE
    SYNTAX      INTEGER { absoluteValue(1), deltaValue(2) }
    MAX-ACCESS  read-create
    STATUS      current
    DESCRIPTION
        "The type of sampling to perform.






Expires 7 December 2000                                        [Page 15]





Internet Draft      Distributed Management Event MIB         7 June 2000


        An 'absoluteValue' sample requires only a single sample to be
        meaningful, and is exactly the value of the object at
        mteTriggerValueID at the sample time.

        A 'deltaValue' requires two samples to be meaningful and is
        thus not available for testing until the second and subsequent
        samples after the object at mteTriggerValueID is first found
        to exist.  It is the difference between the two samples.  For
        unsigned values it is always positive, based on unsigned
        arithmetic.  For signed values it can be positive or negative.

        For SNMP counters to be meaningful they should be sampled as a
        'deltaValue'.

        For 'deltaValue' mteTriggerDeltaTable contains further
        parameters.

        If only 'existence' is set in mteTriggerTest this object has
        no meaning."
    DEFVAL { absoluteValue }
    ::= { mteTriggerEntry 5 }

mteTriggerValueID OBJECT-TYPE
    SYNTAX      OBJECT IDENTIFIER
    MAX-ACCESS  read-create
    STATUS      current
    DESCRIPTION
        "The object identifier of the MIB object to sample to see
        if the trigger should fire.

        This may be wildcarded by truncating all or part of the
        instance portion, in which case the value is obtained
        as if with a GetNext function, checking multiple values
        if they exist.  If such wildcarding is applied,
        mteTriggerValueIDWildcard must be 'true' and if not it must
        be 'false'.

        Bad object identifiers or a mismatch between truncating the
        identifier and the value of mteTriggerValueIDWildcard result
        in operation as one would expect when providing the wrong
        identifier to a Get or GetNext operation.  The Get will fail
        or get the wrong object.  The GetNext will indeed get whatever
        is next, proceeding until it runs past the initial part of the
        identifier and perhaps many unintended objects for confusing
        results.  If the value syntax of those objects is not usable,





Expires 7 December 2000                                        [Page 16]





Internet Draft      Distributed Management Event MIB         7 June 2000


        that results in a 'badType' error that terminates the scan.

        Each instance that fills the wildcard is independent of any
        additional instances, that is, wildcarded objects operate
        as if there were a separate table entry for each instance
        that fills the wildcard without having to actually predict
        all possible instances ahead of time."
    DEFVAL { zeroDotZero }
    ::= { mteTriggerEntry 6 }

mteTriggerValueIDWildcard OBJECT-TYPE
    SYNTAX      TruthValue
    MAX-ACCESS  read-create
    STATUS      current
    DESCRIPTION
        "Control for whether mteTriggerValueID is to be treated as
        fully-specified or wildcarded, with 'true' indicating wildcard."
    DEFVAL { false }
    ::= { mteTriggerEntry 7 }

mteTriggerTargetTag OBJECT-TYPE
    SYNTAX      SnmpTagValue
    MAX-ACCESS  read-create
    STATUS      current
    DESCRIPTION
        "The tag for the target(s) from which to obtain the condition
        for a trigger check.

        A length of 0 indicates the local system.  In this case,
        access to the objects indicated by mteTriggerValueID is under
        the security credentials of the requester that set
        mteTriggerEntryStatus to 'active'.  Those credentials are the
        input parameters for isAccessAllowed from the Architecture for
        Describing SNMP Management Frameworks.

        Otherwise access rights are checked according to the security
        parameters resulting from the tag."
    DEFVAL { ''H }
    ::= { mteTriggerEntry 8 }

mteTriggerContextName OBJECT-TYPE
    SYNTAX      SnmpAdminString
    MAX-ACCESS  read-create
    STATUS      current
    DESCRIPTION





Expires 7 December 2000                                        [Page 17]





Internet Draft      Distributed Management Event MIB         7 June 2000


        "The management context from which to obtain mteTriggerValueID.

        This may be wildcarded by leaving characters off the end.  For
        example use 'Repeater' to wildcard to 'Repeater1',
        'Repeater2', 'Repeater-999.87b', and so on.  To indicate such
        wildcarding is intended, mteTriggerContextNameWildcard must
        be 'true'.

        Each instance that fills the wildcard is independent of any
        additional instances, that is, wildcarded objects operate
        as if there were a separate table entry for each instance
        that fills the wildcard without having to actually predict
        all possible instances ahead of time.

        Operation of this feature assumes that the local system has a
        list of available contexts against which to apply the
        wildcard.  If the objects are being read from the local
        system, this is clearly the system's own list of contexts.
        For a remote system a local version of such a list is not
        defined by any current standard and may not be available, so
        this function MAY not be supported."
    DEFVAL { ''H }
    ::= { mteTriggerEntry 9 }

mteTriggerContextNameWildcard OBJECT-TYPE
    SYNTAX      TruthValue
    MAX-ACCESS  read-create
    STATUS      current
    DESCRIPTION
        "Control for whether mteTriggerContextName is to be treated as
        fully-specified or wildcarded, with 'true' indicating wildcard."
    DEFVAL { false }
    ::= { mteTriggerEntry 10 }

mteTriggerFrequency OBJECT-TYPE
    SYNTAX      Unsigned32
    UNITS       "seconds"
    MAX-ACCESS  read-create
    STATUS      current
    DESCRIPTION
        "The number of seconds to wait between trigger samples.  To
        encourage consistency in sampling, the interval is measured
        from the beginning of one check to the beginning of the next
        and the timer is restarted immediately when it expires, not
        when the check completes.





Expires 7 December 2000                                        [Page 18]





Internet Draft      Distributed Management Event MIB         7 June 2000


        If the next sample begins before the previous one completed the
        system may either attempt to make the check or treat this as an
        error condition with the error 'sampleOverrun'.

        A frequency of 0 indicates instantaneous recognition of the
        condition.  This is not possible in many cases, but may
        be supported in cases where it makes sense and the system is
        able to do so.  This feature allows the MIB to be used in
        implementations where such interrupt-driven behavior is
        possible and is not likely to be supported for all MIB objects
        even then since such sampling generally has to be tightly
        integrated into low-level code.

        Systems that can support this SHOULD document those cases
        where it can be used.  In cases where it can not, setting this
        object to 0 should be disallowed."
    DEFVAL { 600 }
    ::= { mteTriggerEntry 11 }

mteTriggerObjectsOwner OBJECT-TYPE
    SYNTAX      SnmpAdminString (SIZE (0..32))
    MAX-ACCESS  read-create
    STATUS      current
    DESCRIPTION
        "To go with mteTriggerObjects, the mteOwner of a group of
        objects from mteObjectsTable."
    DEFVAL { ''H }
    ::= { mteTriggerEntry 12 }

mteTriggerObjects OBJECT-TYPE
    SYNTAX      SnmpAdminString (SIZE (0..32))
    MAX-ACCESS  read-create
    STATUS      current
    DESCRIPTION
        "The mteObjectsName of a group of objects from
        mteObjectsTable.  These objects are to be added to any
        Notification resulting from the firing of this trigger.

        A list of objects may also be added based on the event or on
        the value of mteTriggerTest.

        A length of 0 indicates no additional objects."
    DEFVAL { ''H }
    ::= { mteTriggerEntry 13 }






Expires 7 December 2000                                        [Page 19]





Internet Draft      Distributed Management Event MIB         7 June 2000


mteTriggerEnabled OBJECT-TYPE
    SYNTAX      TruthValue
    MAX-ACCESS  read-create
    STATUS      current
    DESCRIPTION
        "A control to allow a trigger to be configured but not used.
        When the value is 'false' the trigger is not sampled."
    DEFVAL { false }
    ::= { mteTriggerEntry 14 }

mteTriggerEntryStatus OBJECT-TYPE
    SYNTAX      RowStatus
    MAX-ACCESS  read-create
    STATUS      current
    DESCRIPTION
        "The control that allows creation and deletion of entries.
        Once made active an entry may not be modified except to
        delete it."
    ::= { mteTriggerEntry 15 }


--
-- Trigger Delta Table
--

mteTriggerDeltaTable OBJECT-TYPE
    SYNTAX      SEQUENCE OF MteTriggerDeltaEntry
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
        "A table of management event trigger information for delta
        sampling."
    ::= { mteTrigger 3 }

mteTriggerDeltaEntry OBJECT-TYPE
    SYNTAX      MteTriggerDeltaEntry
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
        "Information about a single trigger's delta sampling.  Entries
        automatically exist in this this table for each mteTriggerEntry
        that has mteTriggerSampleType set to 'deltaValue'."
    INDEX       { mteOwner, IMPLIED mteTriggerName }
    ::= { mteTriggerDeltaTable 1 }






Expires 7 December 2000                                        [Page 20]





Internet Draft      Distributed Management Event MIB         7 June 2000


MteTriggerDeltaEntry ::= SEQUENCE {
    mteTriggerDeltaDiscontinuityID                OBJECT IDENTIFIER,
    mteTriggerDeltaDiscontinuityIDWildcard        TruthValue,
    mteTriggerDeltaDiscontinuityIDType            INTEGER
}


sysUpTimeInstance OBJECT IDENTIFIER ::= { sysUpTime 0 }

mteTriggerDeltaDiscontinuityID OBJECT-TYPE
    SYNTAX      OBJECT IDENTIFIER
    MAX-ACCESS  read-write
    STATUS      current
    DESCRIPTION
        "The OBJECT IDENTIFIER (OID) of a TimeTicks, TimeStamp, or
        DateAndTime object that indicates a discontinuity in the value
        at mteTriggerValueID.

        The OID may be for a leaf object (e.g. sysUpTime.0) or may
        be wildcarded to match mteTriggerValueID.

        This object supports normal checking for a discontinuity in a
        counter.  Note that if this object does not point to sysUpTime
        discontinuity checking MUST still check sysUpTime for an overall
        discontinuity.

        If the object identified is not accessible the sample attempt
        is in error, with the error code as from an SNMP request.

        Bad object identifiers or a mismatch between truncating the
        identifier and the value of mteDeltaDiscontinuityIDWildcard
        result in operation as one would expect when providing the
        wrong identifier to a Get operation.  The Get will fail or get
        the wrong object.  If the value syntax of those objects is not
        usable, that results in an error that terminates the sample
        with a 'badType' error code."
    DEFVAL { sysUpTimeInstance }
    ::= { mteTriggerDeltaEntry 1 }

mteTriggerDeltaDiscontinuityIDWildcard OBJECT-TYPE
     SYNTAX      TruthValue
     MAX-ACCESS  read-write
     STATUS      current
     DESCRIPTION
        "Control for whether mteTriggerDeltaDiscontinuityID is to be





Expires 7 December 2000                                        [Page 21]





Internet Draft      Distributed Management Event MIB         7 June 2000


        treated as fully-specified or wildcarded, with 'true'
        indicating wildcard. Note that the value of this object will
        be the same as that of the corresponding instance of
        mteTriggerValueIDWildcard when the corresponding
        mteTriggerSampleType is 'deltaValue'."
    DEFVAL { false }
    ::= { mteTriggerDeltaEntry 2 }

mteTriggerDeltaDiscontinuityIDType OBJECT-TYPE
    SYNTAX      INTEGER { timeTicks(1), timeStamp(2), dateAndTime(3) }
    MAX-ACCESS  read-write
    STATUS      current
    DESCRIPTION
        "The value 'timeTicks' indicates the
        mteTriggerDeltaDiscontinuityID of this row is of syntax
        TimeTicks.  The value 'timeStamp' indicates syntax TimeStamp.
        The value 'dateAndTime' indicates syntax DateAndTime."
    DEFVAL { timeTicks }
    ::= { mteTriggerDeltaEntry 3 }


--
-- Trigger Existence Table
--

mteTriggerExistenceTable OBJECT-TYPE
    SYNTAX      SEQUENCE OF MteTriggerExistenceEntry
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
        "A table of management event trigger information for existence
        triggers."
    ::= { mteTrigger 4 }

mteTriggerExistenceEntry OBJECT-TYPE
    SYNTAX      MteTriggerExistenceEntry
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
        "Information about a single existence trigger.  Entries
        automatically exist in this this table for each mteTriggerEntry
        that has 'existence' set in mteTriggerTest."
    INDEX       { mteOwner, IMPLIED mteTriggerName }
    ::= { mteTriggerExistenceTable 1 }






Expires 7 December 2000                                        [Page 22]





Internet Draft      Distributed Management Event MIB         7 June 2000


MteTriggerExistenceEntry ::= SEQUENCE {
    mteTriggerExistenceTest              BITS,
    mteTriggerExistenceStartup           BITS,
    mteTriggerExistenceObjectsOwner      SnmpAdminString,
    mteTriggerExistenceObjects           SnmpAdminString,
    mteTriggerExistenceEventOwner        SnmpAdminString,
    mteTriggerExistenceEvent             SnmpAdminString
}

mteTriggerExistenceTest OBJECT-TYPE
    SYNTAX      BITS { present(0), absent(1), changed(2) }
    MAX-ACCESS  read-write
    STATUS      current
    DESCRIPTION
        "The type of existence test to perform.  The trigger fires
        when the object at mteTriggerValueID is seen to go from
        present to absent, from absent to present, or to have it's
        value changed, depending on which tests are selected:

        present(0) - when this test is selected, the trigger fires
        when the mteTriggerValueID object goes from absent to present.

        absent(1)  - when this test is selected, the trigger fires
        when the mteTriggerValueID object goes from present to absent.
        changed(2) - when this test is selected, the trigger fires
        the mteTriggerValueID object value changes.

        Once the trigger has fired for either presence or absence it
        will not fire again for that state until the object has been
        to the other state. "
    DEFVAL { { present, absent } }
    ::= { mteTriggerExistenceEntry 1 }

mteTriggerExistenceStartup OBJECT-TYPE
    SYNTAX      BITS { present(0), absent(1) }
    MAX-ACCESS  read-write
    STATUS      current
    DESCRIPTION
        "Control for whether an event may be triggered when this entry
        is first set to 'active' and the test specified by
        mteTriggerExistenceTest is true.  Setting an option causes
        that trigger to fire when its test is true."
    DEFVAL { { present, absent } }
    ::= { mteTriggerExistenceEntry 2 }






Expires 7 December 2000                                        [Page 23]





Internet Draft      Distributed Management Event MIB         7 June 2000


mteTriggerExistenceObjectsOwner OBJECT-TYPE
    SYNTAX      SnmpAdminString (SIZE (0..32))
    MAX-ACCESS  read-write
    STATUS      current
    DESCRIPTION
        "To go with mteTriggerExistenceObjects, the mteOwner of a
        group of objects from mteObjectsTable."
    DEFVAL { ''H }
    ::= { mteTriggerExistenceEntry 3 }

mteTriggerExistenceObjects OBJECT-TYPE
    SYNTAX      SnmpAdminString (SIZE (0..32))
    MAX-ACCESS  read-write
    STATUS      current
    DESCRIPTION
        "The mteObjectsName of a group of objects from
        mteObjectsTable.  These objects are to be added to any
        Notification resulting from the firing of this trigger for
        this test.

        A list of objects may also be added based on the overall
        trigger, the event or other settings in mteTriggerTest.

        A length of 0 indicates no additional objects."
    DEFVAL { ''H }
    ::= { mteTriggerExistenceEntry 4 }

mteTriggerExistenceEventOwner OBJECT-TYPE
    SYNTAX      SnmpAdminString (SIZE (0..32))
    MAX-ACCESS  read-write
    STATUS      current
    DESCRIPTION
        "To go with mteTriggerExistenceEvent, the mteOwner of an event
        entry from the mteEventTable."
    DEFVAL { ''H }
    ::= { mteTriggerExistenceEntry 5 }

mteTriggerExistenceEvent OBJECT-TYPE
    SYNTAX      SnmpAdminString (SIZE (0..32))
    MAX-ACCESS  read-write
    STATUS      current
    DESCRIPTION
        "The mteEventName of the event to invoke when mteTriggerType is
        'existence' and this trigger fires.  A length of 0 indicates no
        event."





Expires 7 December 2000                                        [Page 24]





Internet Draft      Distributed Management Event MIB         7 June 2000


    DEFVAL { ''H }
    ::= { mteTriggerExistenceEntry 6 }


--
-- Trigger Boolean Table
--

mteTriggerBooleanTable OBJECT-TYPE
    SYNTAX      SEQUENCE OF MteTriggerBooleanEntry
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
        "A table of management event trigger information for boolean
        triggers."
    ::= { mteTrigger 5 }

mteTriggerBooleanEntry OBJECT-TYPE
    SYNTAX      MteTriggerBooleanEntry
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
        "Information about a single boolean trigger.  Entries
        automatically exist in this this table for each mteTriggerEntry
        that has 'boolean' set in mteTriggerTest."
    INDEX       { mteOwner, IMPLIED mteTriggerName }
    ::= { mteTriggerBooleanTable 1 }

MteTriggerBooleanEntry ::= SEQUENCE {
    mteTriggerBooleanComparison          INTEGER,
    mteTriggerBooleanValue               Integer32,
    mteTriggerBooleanStartup             TruthValue,
    mteTriggerBooleanObjectsOwner        SnmpAdminString,
    mteTriggerBooleanObjects             SnmpAdminString,
    mteTriggerBooleanEventOwner          SnmpAdminString,
    mteTriggerBooleanEvent               SnmpAdminString
}

mteTriggerBooleanComparison OBJECT-TYPE
    SYNTAX      INTEGER { unequal(1), equal(2),
                 less(3), lessOrEqual(4),
                 greater(5), greaterOrEqual(6) }
    MAX-ACCESS  read-write
    STATUS      current
    DESCRIPTION





Expires 7 December 2000                                        [Page 25]





Internet Draft      Distributed Management Event MIB         7 June 2000


        "The type of boolean comparison to perform.

        The value at mteTriggerValueID is compared to
        mteTriggerBooleanValue, so for example if
        mteTriggerBooleanComparison is 'less' the result would be true
        if the value at mteTriggerValueID is less than the value of
        mteTriggerBooleanValue."
    DEFVAL { unequal }
    ::= { mteTriggerBooleanEntry 1 }

mteTriggerBooleanValue OBJECT-TYPE
    SYNTAX      Integer32
    MAX-ACCESS  read-write
    STATUS      current
    DESCRIPTION
        "The value to use for the test specified by
        mteTriggerBooleanTest."
    DEFVAL { 0 }
    ::= { mteTriggerBooleanEntry 2 }

mteTriggerBooleanStartup OBJECT-TYPE
    SYNTAX      TruthValue
    MAX-ACCESS  read-write
    STATUS      current
    DESCRIPTION
        "Control for whether an event may be triggered when this entry
        is first set to 'active' or a new instance of the object at
        mteTriggerValueID is found and the test specified by
        mteTriggerBooleanComparison is true.  In that case an event is
        triggered if mteTriggerBooleanStartup is 'true'."
    DEFVAL { true }
    ::= { mteTriggerBooleanEntry 3 }

mteTriggerBooleanObjectsOwner OBJECT-TYPE
    SYNTAX      SnmpAdminString (SIZE (0..32))
    MAX-ACCESS  read-write
    STATUS      current
    DESCRIPTION
        "To go with mteTriggerBooleanObjects, the mteOwner of a group
        of objects from mteObjectsTable."
    DEFVAL { ''H }
    ::= { mteTriggerBooleanEntry 4 }

mteTriggerBooleanObjects OBJECT-TYPE
    SYNTAX      SnmpAdminString (SIZE (0..32))





Expires 7 December 2000                                        [Page 26]





Internet Draft      Distributed Management Event MIB         7 June 2000


    MAX-ACCESS  read-write
    STATUS      current
    DESCRIPTION
        "The mteObjectsName of a group of objects from
        mteObjectsTable.  These objects are to be added to any
        Notification resulting from the firing of this trigger for
        this test.

        A list of objects may also be added based on the overall
        trigger, the event or other settings in mteTriggerTest.

        A length of 0 indicates no additional objects."
    DEFVAL { ''H }
    ::= { mteTriggerBooleanEntry 5 }

mteTriggerBooleanEventOwner OBJECT-TYPE
    SYNTAX      SnmpAdminString (SIZE (0..32))
    MAX-ACCESS  read-write
    STATUS      current
    DESCRIPTION
        "To go with mteTriggerBooleanEvent, the mteOwner of an event
        entry from mteEventTable."
    DEFVAL { ''H }
    ::= { mteTriggerBooleanEntry 6 }

mteTriggerBooleanEvent OBJECT-TYPE
    SYNTAX      SnmpAdminString (SIZE (0..32))
    MAX-ACCESS  read-write
    STATUS      current
    DESCRIPTION
        "The mteEventName of the event to invoke when mteTriggerType is
        'boolean' and this trigger fires.  A length of 0 indicates no
        event."
    DEFVAL { ''H }
    ::= { mteTriggerBooleanEntry 7 }


--
-- Trigger Threshold Table
--

mteTriggerThresholdTable OBJECT-TYPE
    SYNTAX      SEQUENCE OF MteTriggerThresholdEntry
    MAX-ACCESS  not-accessible
    STATUS      current





Expires 7 December 2000                                        [Page 27]





Internet Draft      Distributed Management Event MIB         7 June 2000


    DESCRIPTION
        "A table of management event trigger information for threshold
        triggers."
    ::= { mteTrigger 6 }

mteTriggerThresholdEntry OBJECT-TYPE
    SYNTAX      MteTriggerThresholdEntry
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
        "Information about a single threshold trigger.  Entries
        automatically exist in this table for each mteTriggerEntry
        that has 'threshold' set in mteTriggerTest."
    INDEX       { mteOwner, IMPLIED mteTriggerName }
    ::= { mteTriggerThresholdTable 1 }

MteTriggerThresholdEntry ::= SEQUENCE {
    mteTriggerThresholdStartup                  INTEGER,
    mteTriggerThresholdRising                   Integer32,
    mteTriggerThresholdFalling                  Integer32,
    mteTriggerThresholdDeltaRising              Integer32,
    mteTriggerThresholdDeltaFalling             Integer32,
    mteTriggerThresholdObjectsOwner             SnmpAdminString,
    mteTriggerThresholdObjects                  SnmpAdminString,
    mteTriggerThresholdRisingEventOwner         SnmpAdminString,
    mteTriggerThresholdRisingEvent              SnmpAdminString,
    mteTriggerThresholdFallingEventOwner        SnmpAdminString,
    mteTriggerThresholdFallingEvent             SnmpAdminString,
    mteTriggerThresholdDeltaRisingEventOwner    SnmpAdminString,
    mteTriggerThresholdDeltaRisingEvent         SnmpAdminString,
    mteTriggerThresholdDeltaFallingEventOwner   SnmpAdminString,
    mteTriggerThresholdDeltaFallingEvent        SnmpAdminString
}

mteTriggerThresholdStartup OBJECT-TYPE
    SYNTAX      INTEGER { rising(1), falling(2), risingOrFalling(3) }
    MAX-ACCESS  read-write
    STATUS      current
    DESCRIPTION
        "The event that may be triggered when this entry is first
        set to 'active' and a new instance of the object at
        mteTriggerValueID is found.  If the first sample after this
        instance becomes active is greater than or equal to
        mteTriggerThresholdRising and mteTriggerThresholdStartup is
        equal to 'rising' or 'risingOrFalling', then one





Expires 7 December 2000                                        [Page 28]





Internet Draft      Distributed Management Event MIB         7 June 2000


        mteTriggerThresholdRisingEvent is triggered for that instance.
        If the first sample after this entry becomes active is less
        than or equal to mteTriggerThresholdFalling and
        mteTriggerThresholdStartup is equal to 'falling' or
        'risingOrFalling', then one mteTriggerThresholdRisingEvent is
        triggered for that instance."
    DEFVAL { risingOrFalling }
    ::= { mteTriggerThresholdEntry 1 }

mteTriggerThresholdRising OBJECT-TYPE
    SYNTAX      Integer32
    MAX-ACCESS  read-write
    STATUS      current
    DESCRIPTION
        "A threshold value to check against if mteTriggerType is
        'threshold'.

        When the current sampled value is greater than or equal to
        this threshold, and the value at the last sampling interval
        was less than this threshold, one
        mteTriggerThresholdRisingEvent is triggered.  That event is
        also triggered if the first sample after this entry becomes
        active is greater than or equal to this threshold and
        mteTriggerThresholdStartup is equal to 'rising' or
        'risingOrFalling'.

        After a rising event is generated, another such event is not
        triggered until the sampled value falls below this threshold
        and reaches mteTriggerThresholdFalling."
    DEFVAL { 0 }
    ::= { mteTriggerThresholdEntry 2 }

mteTriggerThresholdFalling OBJECT-TYPE
    SYNTAX      Integer32
    MAX-ACCESS  read-write
    STATUS      current
    DESCRIPTION
        "A threshold value to check against if mteTriggerType is
        'threshold'.

        When the current sampled value is less than or equal to this
        threshold, and the value at the last sampling interval was
        greater than this threshold, one
        mteTriggerThresholdFallingEvent is triggered.  That event is
        also triggered if the first sample afer this entry becomes





Expires 7 December 2000                                        [Page 29]





Internet Draft      Distributed Management Event MIB         7 June 2000


        active is less than or equal to this threshold and
        mteTriggerThresholdStartup is equal to 'falling' or
        'risingOrFalling'.

        After a falling event is generated, another such event is not
        triggered until the sampled value rises above this threshold
        and reaches mteTriggerThresholdRising."
    DEFVAL { 0 }
    ::= { mteTriggerThresholdEntry 3 }

mteTriggerThresholdDeltaRising OBJECT-TYPE
    SYNTAX      Integer32
    MAX-ACCESS  read-write
    STATUS      current
    DESCRIPTION
        "A threshold value to check against if mteTriggerType is
        'threshold'.

        When the delta value (difference) between the current sampled
        value (value(n)) and the previous sampled value (value(n-1))
        is greater than or equal to this threshold,
        and the delta value calculated at the last sampling interval
        (i.e. value(n-1) - value(n-2)) was less than this threshold,
        one mteTriggerThresholdDeltaRisingEvent is triggered. That event is
        also triggered if the first delta value calculated after this
        entry becomes active, i.e. value(2) - value(1), where value(1)
        is the first sample taken of that instance, is greater than or
        equal to this threshold.

        After a rising event is generated, another such event is not
        triggered until the delta value falls below this threshold and
        reaches mteTriggerThresholdDeltaFalling."
    DEFVAL { 0 }
    ::= { mteTriggerThresholdEntry 4 }

mteTriggerThresholdDeltaFalling OBJECT-TYPE
    SYNTAX      Integer32
    MAX-ACCESS  read-write
    STATUS      current
    DESCRIPTION
        "A threshold value to check against if mteTriggerType is
        'threshold'.

        When the delta value (difference) between the current sampled
        value (value(n)) and the previous sampled value (value(n-1))





Expires 7 December 2000                                        [Page 30]





Internet Draft      Distributed Management Event MIB         7 June 2000


        is less than or equal to this threshold,
        and the delta value calculated at the last sampling interval
        (i.e. value(n-1) - value(n-2)) was greater than this threshold,
        one mteTriggerThresholdDeltaFallingEvent is triggered. That event is
        also triggered if the first delta value calculated after this
        entry becomes active, i.e. value(2) - value(1), where value(1)
        is the first sample taken of that instance, is less than or
        equal to this threshold.

        After a falling event is generated, another such event is not
        triggered until the delta value falls below this threshold and
        reaches mteTriggerThresholdDeltaRising."
    DEFVAL { 0 }
    ::= { mteTriggerThresholdEntry 5 }

mteTriggerThresholdObjectsOwner OBJECT-TYPE
    SYNTAX      SnmpAdminString (SIZE (0..32))
    MAX-ACCESS  read-write
    STATUS      current
    DESCRIPTION
        "To go with mteTriggerThresholdObjects, the mteOwner of a group
        of objects from mteObjectsTable."
    DEFVAL { ''H }
    ::= { mteTriggerThresholdEntry 6 }

mteTriggerThresholdObjects OBJECT-TYPE
    SYNTAX      SnmpAdminString (SIZE (0..32))
    MAX-ACCESS  read-write
    STATUS      current
    DESCRIPTION
        "The mteObjectsName of a group of objects from
        mteObjectsTable.  These objects are to be added to any
        Notification resulting from the firing of this trigger for
        this test.

        A list of objects may also be added based on the overall
        trigger, the event or other settings in mteTriggerTest.

        A length of 0 indicates no additional objects."
    DEFVAL { ''H }
    ::= { mteTriggerThresholdEntry 7 }

mteTriggerThresholdRisingEventOwner OBJECT-TYPE
    SYNTAX      SnmpAdminString (SIZE (0..32))
    MAX-ACCESS  read-write





Expires 7 December 2000                                        [Page 31]





Internet Draft      Distributed Management Event MIB         7 June 2000


    STATUS      current
    DESCRIPTION
        "To go with mteTriggerThresholdRisingEvent, the mteOwner of an
        event entry from mteEventTable."
    DEFVAL { ''H }
    ::= { mteTriggerThresholdEntry 8 }

mteTriggerThresholdRisingEvent OBJECT-TYPE
    SYNTAX      SnmpAdminString (SIZE (0..32))
    MAX-ACCESS  read-write
    STATUS      current
    DESCRIPTION
        "The mteEventName of the event to invoke when mteTriggerType is
        'threshold' and this trigger fires based on
        mteTriggerThresholdRising.  A length of 0 indicates no event."
    DEFVAL { ''H }
    ::= { mteTriggerThresholdEntry 9 }

mteTriggerThresholdFallingEventOwner OBJECT-TYPE
    SYNTAX      SnmpAdminString (SIZE (0..32))
    MAX-ACCESS  read-write
    STATUS      current
    DESCRIPTION
        "To go with mteTriggerThresholdFallingEvent, the mteOwner of an
        event entry from mteEventTable."
    DEFVAL { ''H }
    ::= { mteTriggerThresholdEntry 10 }

mteTriggerThresholdFallingEvent OBJECT-TYPE
    SYNTAX      SnmpAdminString (SIZE (0..32))
    MAX-ACCESS  read-write
    STATUS      current
    DESCRIPTION
        "The mteEventName of the event to invoke when mteTriggerType is
        'threshold' and this trigger fires based on
        mteTriggerThresholdFalling.  A length of 0 indicates no event."
    DEFVAL { ''H }
    ::= { mteTriggerThresholdEntry 11 }

mteTriggerThresholdDeltaRisingEventOwner OBJECT-TYPE
    SYNTAX      SnmpAdminString (SIZE (0..32))
    MAX-ACCESS  read-write
    STATUS      current
    DESCRIPTION
        "To go with mteTriggerThresholdDeltaRisingEvent, the mteOwner





Expires 7 December 2000                                        [Page 32]





Internet Draft      Distributed Management Event MIB         7 June 2000


        of an event entry from mteEventTable."
    DEFVAL { ''H }
    ::= { mteTriggerThresholdEntry 12 }

mteTriggerThresholdDeltaRisingEvent OBJECT-TYPE
    SYNTAX      SnmpAdminString (SIZE (0..32))
    MAX-ACCESS  read-write
    STATUS      current
    DESCRIPTION
        "The mteEventName of the event to invoke when mteTriggerType is
        'threshold' and this trigger fires based on
        mteTriggerThresholdDeltaRising. A length of 0 indicates
        no event."
    DEFVAL { ''H }
    ::= { mteTriggerThresholdEntry 13 }

mteTriggerThresholdDeltaFallingEventOwner OBJECT-TYPE
    SYNTAX      SnmpAdminString (SIZE (0..32))
    MAX-ACCESS  read-write
    STATUS      current
    DESCRIPTION
        "To go with mteTriggerThresholdDeltaFallingEvent, the mteOwner
        of an event entry from mteEventTable."
    DEFVAL { ''H }
    ::= { mteTriggerThresholdEntry 14 }

mteTriggerThresholdDeltaFallingEvent OBJECT-TYPE
    SYNTAX      SnmpAdminString (SIZE (0..32))
    MAX-ACCESS  read-write
    STATUS      current
    DESCRIPTION
        "The mteEventName of the event to invoke when mteTriggerType is
        'threshold' and this trigger fires based on
        mteTriggerThresholdDeltaFalling.  A length of 0 indicates
        no event."
    DEFVAL { ''H }
    ::= { mteTriggerThresholdEntry 15 }


--
-- Objects Table
--

mteObjectsTable OBJECT-TYPE
    SYNTAX      SEQUENCE OF MteObjectsEntry





Expires 7 December 2000                                        [Page 33]





Internet Draft      Distributed Management Event MIB         7 June 2000


    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
        "A table of objects that can be added to notifications based
        on the trigger, trigger test, or event, as pointed to by
        entries in those tables."
    ::= { mteObjects 1 }

mteObjectsEntry OBJECT-TYPE
    SYNTAX      MteObjectsEntry
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
        "A group of objects.  Applications create and delete entries
        using mteObjectsEntryStatus.

        When adding objects to a notification they are added in the
        lexical order of their index in this table.  Those associated
        with a trigger come first, then trigger test, then event."
    INDEX       { mteOwner, mteObjectsName, mteObjectsIndex }
    ::= { mteObjectsTable 1 }

MteObjectsEntry ::= SEQUENCE {
    mteObjectsName                      SnmpAdminString,
    mteObjectsIndex                     Unsigned32,
    mteObjectsID                        OBJECT IDENTIFIER,
    mteObjectsIDWildcard                TruthValue,
    mteObjectsEntryStatus               RowStatus
    }

mteObjectsName OBJECT-TYPE
    SYNTAX      SnmpAdminString (SIZE (1..32))
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
        "A locally-unique, administratively assigned name for a group
        of objects."
    ::= { mteObjectsEntry 1 }

mteObjectsIndex OBJECT-TYPE
    SYNTAX      Unsigned32 (1..4294967295)
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
        "An arbitrary integer for the purpose of identifying





Expires 7 December 2000                                        [Page 34]





Internet Draft      Distributed Management Event MIB         7 June 2000


        individual objects within a mteObjectsName group.

        Objects within a group are placed in the notification in the
        numerical order of this index.

        Groups are placed in the notification in the order of the
        selections for overall trigger, trigger test, and event.
        Within trigger test they are in the same order as the
        numerical values of the bits defined for mteTriggerTest.

        Bad object identifiers or a mismatch between truncating the
        identifier and the value of mteDeltaDiscontinuityIDWildcard
        result in operation as one would expect when providing the
        wrong identifier to a Get operation.  The Get will fail or get
        the wrong object.  If the object is not available it is omitted
        from the notification."
    ::= { mteObjectsEntry 2 }

mteObjectsID OBJECT-TYPE
    SYNTAX      OBJECT IDENTIFIER
    MAX-ACCESS  read-create
    STATUS      current
    DESCRIPTION
        "The object identifier of a MIB object to add to a
        Notification that results from the firing of a trigger.

        This may be wildcarded by truncating all or part of the
        instance portion, in which case the instance portion of the
        OID for obtaining this object will be the same as that used
        in obtaining the mteTriggerValueID that fired.  If such
        wildcarding is applied, mteObjectsIDWildcard must be
        'true' and if not it must be 'false'.

        Each instance that fills the wildcard is independent of any
        additional instances, that is, wildcarded objects operate
        as if there were a separate table entry for each instance
        that fills the wildcard without having to actually predict
        all possible instances ahead of time."
    DEFVAL { zeroDotZero }
    ::= { mteObjectsEntry 3 }

mteObjectsIDWildcard OBJECT-TYPE
    SYNTAX      TruthValue
    MAX-ACCESS  read-create
    STATUS      current





Expires 7 December 2000                                        [Page 35]





Internet Draft      Distributed Management Event MIB         7 June 2000


    DESCRIPTION
        "Control for whether mteObjectsID is to be treated as
        fully-specified or wildcarded, with 'true' indicating wildcard."
    DEFVAL { false }
    ::= { mteObjectsEntry 4 }

mteObjectsEntryStatus OBJECT-TYPE
    SYNTAX      RowStatus
    MAX-ACCESS  read-create
    STATUS      current
    DESCRIPTION
        "The control that allows creation and deletion of entries.
        Once made active an entry MAY not be modified except to
        delete it."
    ::= { mteObjectsEntry 5 }


--
-- Event Section
--

-- Counters

mteEventFailures OBJECT-TYPE
    SYNTAX      Counter32
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "The number of times an attempt to invoke an event
        has failed.  This counts individually for each
        attempt in a group of targets or each attempt for a
        wildcarded trigger object."
    ::= { mteEvent 1 }


--
-- Event Table
--

mteEventTable OBJECT-TYPE
    SYNTAX      SEQUENCE OF MteEventEntry
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
        "A table of management event action information."





Expires 7 December 2000                                        [Page 36]





Internet Draft      Distributed Management Event MIB         7 June 2000


    ::= { mteEvent 2 }

mteEventEntry OBJECT-TYPE
    SYNTAX      MteEventEntry
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
        "Information about a single event.  Applications create and
        delete entries using mteEventEntryStatus."
    INDEX       { mteOwner, IMPLIED mteEventName }
    ::= { mteEventTable 1 }

MteEventEntry ::= SEQUENCE {
    mteEventName                        SnmpAdminString,
    mteEventComment                     SnmpAdminString,
    mteEventActions                     BITS,
    mteEventEnabled                     TruthValue,
    mteEventEntryStatus                 RowStatus
    }

mteEventName OBJECT-TYPE
    SYNTAX      SnmpAdminString (SIZE (1..32))
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
        "A locally-unique, administratively assigned name for the
        event."
    ::= { mteEventEntry 1 }

mteEventComment OBJECT-TYPE
    SYNTAX      SnmpAdminString
    MAX-ACCESS  read-create
    STATUS      current
    DESCRIPTION
        "A description of the event's function and use."
    DEFVAL { ''H }
    ::= { mteEventEntry 2 }

mteEventActions OBJECT-TYPE
    SYNTAX      BITS { notification(0), set(1) }
    MAX-ACCESS  read-create
    STATUS      current
    DESCRIPTION
        "The actions to perform when this event occurs.






Expires 7 December 2000                                        [Page 37]





Internet Draft      Distributed Management Event MIB         7 June 2000


        For 'notification', Traps and/or Informs are sent according
        to the configuration in the SNMP Notification MIB.

        For 'set', an SNMP Set operation is performed according to
        control values in this entry."
    DEFVAL { {} }  -- No bits set.
    ::= { mteEventEntry 3 }

mteEventEnabled OBJECT-TYPE
    SYNTAX      TruthValue
    MAX-ACCESS  read-create
    STATUS      current
    DESCRIPTION
        "A control to allow an event to be configured but not used.
        When the value is 'false' the event does not execute even if
        triggered."
    DEFVAL { false }
    ::= { mteEventEntry 4 }

mteEventEntryStatus OBJECT-TYPE
    SYNTAX      RowStatus
    MAX-ACCESS  read-create
    STATUS      current
    DESCRIPTION
        "The control that allows creation and deletion of entries.
        Once made active an entry MAY not be modified except to
        delete it."
    ::= { mteEventEntry 5 }


--
-- Event Notification Table
--

mteEventNotificationTable OBJECT-TYPE
    SYNTAX      SEQUENCE OF MteEventNotificationEntry
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
        "A table of information about notifications to be sent as a
        consequence of management events."
    ::= { mteEvent 3 }

mteEventNotificationEntry OBJECT-TYPE
    SYNTAX      MteEventNotificationEntry





Expires 7 December 2000                                        [Page 38]





Internet Draft      Distributed Management Event MIB         7 June 2000


    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
        "Information about a single event's notification.  Entries
        automatically exist in this this table for each mteEventEntry
        that has 'notification' set in mteEventActions."
    INDEX       { mteOwner, IMPLIED mteEventName }
    ::= { mteEventNotificationTable 1 }

MteEventNotificationEntry ::= SEQUENCE {
    mteEventNotification                OBJECT IDENTIFIER,
    mteEventNotificationObjectsOwner    SnmpAdminString,
    mteEventNotificationObjects         SnmpAdminString
    }

mteEventNotification OBJECT-TYPE
    SYNTAX      OBJECT IDENTIFIER
    MAX-ACCESS  read-write
    STATUS      current
    DESCRIPTION
        "The object identifier from the NOTIFICATION-TYPE for the
        notification to use if metEventActions has 'notification' set."
    DEFVAL { zeroDotZero }
    ::= { mteEventNotificationEntry 1 }

mteEventNotificationObjectsOwner OBJECT-TYPE
    SYNTAX      SnmpAdminString (SIZE (0..32))
    MAX-ACCESS  read-write
    STATUS      current
    DESCRIPTION
        "To go with mteEventNotificationObjects, the mteOwner of a
        group of objects from mteObjectsTable."
    DEFVAL { ''H }
    ::= { mteEventNotificationEntry 2 }

mteEventNotificationObjects OBJECT-TYPE
    SYNTAX      SnmpAdminString (SIZE (0..32))
    MAX-ACCESS  read-write
    STATUS      current
    DESCRIPTION
        "The mteObjectsName of a group of objects from
        mteObjectsTable if mteEventActions has 'notification' set.
        These objects are to be added to any Notification generated by
        this event.






Expires 7 December 2000                                        [Page 39]





Internet Draft      Distributed Management Event MIB         7 June 2000


        Objects may also be added based on the trigger that stimulated
        the event.

        A length of 0 indicates no additional objects."
    DEFVAL { ''H }
    ::= { mteEventNotificationEntry 3 }


--
-- Event Set Table
--

mteEventSetTable OBJECT-TYPE
    SYNTAX      SEQUENCE OF MteEventSetEntry
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
        "A table of management event action information."
    ::= { mteEvent 4 }

mteEventSetEntry OBJECT-TYPE
    SYNTAX      MteEventSetEntry
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
        "Information about a single event's set option.  Entries
        automatically exist in this this table for each mteEventEntry
        that has 'set' set in mteEventActions."
    INDEX       { mteOwner, IMPLIED mteEventName }
    ::= { mteEventSetTable 1 }

MteEventSetEntry ::= SEQUENCE {
    mteEventSetObject                   OBJECT IDENTIFIER,
    mteEventSetObjectWildcard           TruthValue,
    mteEventSetValue                    Integer32,
    mteEventSetTargetTag                SnmpTagValue,
    mteEventSetContextName              SnmpAdminString,
    mteEventSetContextNameWildcard      TruthValue
    }

mteEventSetObject OBJECT-TYPE
    SYNTAX      OBJECT IDENTIFIER
    MAX-ACCESS  read-write
    STATUS      current
    DESCRIPTION





Expires 7 December 2000                                        [Page 40]





Internet Draft      Distributed Management Event MIB         7 June 2000


        "The object identifier from the MIB object to set if
        mteEventActions has 'set' set.

        This object identifier may be wildcarded by leaving
        sub-identifiers off the end, in which case
        nteEventSetObjectWildCard must be 'true'.

        If mteEventSetObject is wildcarded the instance used to set the
        object to which it points is the same as the instance from the
        value of mteTriggerValueID that triggered the event.

        Each instance that fills the wildcard is independent of any
        additional instances, that is, wildcarded objects operate
        as if there were a separate table entry for each instance
        that fills the wildcard without having to actually predict
        all possible instances ahead of time.

        Bad object identifiers or a mismatch between truncating the
        identifier and the value of mteSetObjectWildcard
        result in operation as one would expect when providing the
        wrong identifier to a Set operation.  The Set will fail or set
        the wrong object.  If the value syntax of the destination
        object is not correct, the Set fails with the normal SNMP
        error code."
    DEFVAL { zeroDotZero }
    ::= { mteEventSetEntry 1 }

mteEventSetObjectWildcard OBJECT-TYPE
    SYNTAX      TruthValue
    MAX-ACCESS  read-write
    STATUS      current
    DESCRIPTION
        "Control over whether mteEventSetObject is to be treated as
        fully-specified or wildcarded, with 'true' indicating wildcard
        if mteEventActions has 'set' set."
    DEFVAL { false }
    ::= { mteEventSetEntry 2 }

mteEventSetValue OBJECT-TYPE
    SYNTAX      Integer32
    MAX-ACCESS  read-write
    STATUS      current
    DESCRIPTION
        "The value to which to set the object at mteEventSetObject
        if mteEventActions has 'set' set."





Expires 7 December 2000                                        [Page 41]





Internet Draft      Distributed Management Event MIB         7 June 2000


    DEFVAL { 0 }
    ::= { mteEventSetEntry 3 }

mteEventSetTargetTag OBJECT-TYPE
    SYNTAX      SnmpTagValue
    MAX-ACCESS  read-write
    STATUS      current
    DESCRIPTION
        "The tag for the target(s) at which to set the object at
        mteEventSetObject to mteEventSetValue if mteEventActions
        has 'set' set.

        Systems limited to self management MAY reject a non-zero
        length for the value of this object.

        A length of 0 indicates the local system.  In this case,
        access to the objects indicated by mteEventSetObject is under
        the security credentials of the requester that set
        mteTriggerEntryStatus to 'active'.  Those credentials are the
        input parameters for isAccessAllowed from the Architecture for
        Describing SNMP Management Frameworks.

        Otherwise access rights are checked according to the security
        parameters resulting from the tag."
    DEFVAL { ''H }
    ::= { mteEventSetEntry 4 }

mteEventSetContextName OBJECT-TYPE
    SYNTAX      SnmpAdminString
    MAX-ACCESS  read-write
    STATUS      current
    DESCRIPTION
        "The management context in which to set mteEventObjectID.
        if mteEventActions has 'set' set.

        This may be wildcarded by leaving characters off the end.  To
        indicate such wildcarding mteEventSetContextNameWildcard must
        be 'true'.

        If this context name is wildcarded the value used to complete
        the wildcarding of mteTriggerContextName will be appended."
    DEFVAL { ''H }
    ::= { mteEventSetEntry 5 }

mteEventSetContextNameWildcard OBJECT-TYPE





Expires 7 December 2000                                        [Page 42]





Internet Draft      Distributed Management Event MIB         7 June 2000


    SYNTAX      TruthValue
    MAX-ACCESS  read-write
    STATUS      current
    DESCRIPTION
        "Control for whether mteEventSetContextName is to be treated as
        fully-specified or wildcarded, with 'true' indicating wildcard
        if mteEventActions has 'set' set."
    DEFVAL { false }
    ::= { mteEventSetEntry 6 }


--
-- Notifications
--

dismanEventMIBNotificationPrefix OBJECT IDENTIFIER ::=
    { dismanEventMIB 2 }
dismanEventMIBNotifications OBJECT IDENTIFIER ::=
    { dismanEventMIBNotificationPrefix 0 }
dismanEventMIBNotificationObjects OBJECT IDENTIFIER
   ::= { dismanEventMIBNotificationPrefix 1 }

--
-- Notification Objects
--

mteHotTrigger OBJECT-TYPE
    SYNTAX      SnmpAdminString
    MAX-ACCESS  accessible-for-notify
    STATUS      current
    DESCRIPTION
        "The name of the trigger causing the notification."
    ::= { dismanEventMIBNotificationObjects 1 }

mteHotTargetName OBJECT-TYPE
    SYNTAX      SnmpAdminString
    MAX-ACCESS  accessible-for-notify
    STATUS      current
    DESCRIPTION
        "The SNMP Target MIB's snmpTargetAddrName related to the
        notification."
    ::= { dismanEventMIBNotificationObjects 2 }

mteHotContextName OBJECT-TYPE
    SYNTAX      SnmpAdminString





Expires 7 December 2000                                        [Page 43]





Internet Draft      Distributed Management Event MIB         7 June 2000


    MAX-ACCESS  accessible-for-notify
    STATUS      current
    DESCRIPTION
        "The context name related to the notification.  This MUST be as
        fully-qualified as possible, including filling in wildcard
        information determined in processing."
    ::= { dismanEventMIBNotificationObjects 3 }

mteHotOID OBJECT-TYPE
    SYNTAX      OBJECT IDENTIFIER
    MAX-ACCESS  accessible-for-notify
    STATUS      current
    DESCRIPTION
        "The object identifier of the destination object related to the
        notification.  This MUST be as fully-qualified as possible,
        inluding filling in wildcard information determined in
        processing.

        For a trigger-related notification this is from
        mteTriggerValueID.

        For a set failure this is from mteEventSetObject."
    ::= { dismanEventMIBNotificationObjects 4 }

mteHotValue OBJECT-TYPE
    SYNTAX      Integer32
    MAX-ACCESS  accessible-for-notify
    STATUS      current
    DESCRIPTION
        "The value of the object at mteTriggerValueID when a
        trigger fired."
    ::= { dismanEventMIBNotificationObjects 5 }

mteFailedReason OBJECT-TYPE
    SYNTAX      FailureReason
    MAX-ACCESS  accessible-for-notify
    STATUS      current
    DESCRIPTION
        "The reason for the failure of an attempt to check for a
        trigger condition or set an object in response to an event."
    ::= { dismanEventMIBNotificationObjects 6 }

--
-- Notifications
--





Expires 7 December 2000                                        [Page 44]





Internet Draft      Distributed Management Event MIB         7 June 2000


mteTriggerFired NOTIFICATION-TYPE
    OBJECTS { mteHotTrigger,
              mteHotTargetName,
              mteHotContextName,
              mteHotOID,
              mteHotValue }
    STATUS  current
    DESCRIPTION
        "Notification that the trigger indicated by the object
        instances has fired, for triggers with mteTriggerType
        'boolean' or 'existence'."
    ::= { dismanEventMIBNotifications 1 }

mteTriggerRising NOTIFICATION-TYPE
    OBJECTS { mteHotTrigger,
              mteHotTargetName,
              mteHotContextName,
              mteHotOID,
              mteHotValue }
    STATUS  current
    DESCRIPTION
        "Notification that the rising threshold was met for triggers
        with mteTriggerType 'threshold'."
    ::= { dismanEventMIBNotifications 2 }

mteTriggerFalling NOTIFICATION-TYPE
    OBJECTS { mteHotTrigger,
              mteHotTargetName,
              mteHotContextName,
              mteHotOID,
              mteHotValue }
    STATUS  current
    DESCRIPTION
        "Notification that the falling threshold was met for triggers
        with mteTriggerType 'threshold'."
    ::= { dismanEventMIBNotifications 3 }

mteTriggerFailure NOTIFICATION-TYPE
    OBJECTS { mteHotTrigger,
              mteHotTargetName,
              mteHotContextName,
              mteHotOID,
              mteFailedReason }
    STATUS  current
    DESCRIPTION





Expires 7 December 2000                                        [Page 45]





Internet Draft      Distributed Management Event MIB         7 June 2000


        "Notification that an attempt to check a trigger has failed.

        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."
    ::= { dismanEventMIBNotifications 4 }

mteEventSetFailure NOTIFICATION-TYPE
    OBJECTS { mteHotTrigger,
              mteHotTargetName,
              mteHotContextName,
              mteHotOID,
              mteFailedReason }
    STATUS  current
    DESCRIPTION
        "Notification that an attempt to do a set in response to an
        event has failed.

        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."
    ::= { dismanEventMIBNotifications 5 }


--
-- Conformance
--

dismanEventMIBConformance OBJECT IDENTIFIER ::= { dismanEventMIB 3 }
dismanEventMIBCompliances OBJECT IDENTIFIER ::=
    { dismanEventMIBConformance 1 }
dismanEventMIBGroups      OBJECT IDENTIFIER ::=
    { dismanEventMIBConformance 2 }

-- Compliance

dismanEventMIBCompliance MODULE-COMPLIANCE
        STATUS current
        DESCRIPTION
                "The compliance statement for entities which implement
                the Event MIB."





Expires 7 December 2000                                        [Page 46]





Internet Draft      Distributed Management Event MIB         7 June 2000


        MODULE  -- this module
                MANDATORY-GROUPS {
                        dismanEventResourceGroup,
                        dismanEventTriggerGroup,
                        dismanEventObjectsGroup,
                        dismanEventEventGroup,
                        dismanEventNotificationObjectGroup,
                        dismanEventNotificationGroup
                }

                OBJECT mteTriggerTargetTag
                MIN-ACCESS  read-only
                DESCRIPTION
                        "Write access is not required, thus limiting
                        monitoring to the local system or pre-configured
                        remote systems."

                OBJECT mteEventSetTargetTag
                MIN-ACCESS  read-only
                DESCRIPTION
                        "Write access is not required, thus limiting
                        setting to the local system or pre-configured
                        remote systems."

                OBJECT mteTriggerValueIDWildcard
                MIN-ACCESS  read-only
                DESCRIPTION
                        "Write access is not required, thus allowing
                        the system not to implement wildcarding."

                OBJECT mteTriggerContextNameWildcard
                MIN-ACCESS  read-only
                DESCRIPTION
                        "Write access is not required, thus allowing
                        the system not to implement wildcarding."


                OBJECT mteObjectsIDWildcard
                MIN-ACCESS  read-only
                DESCRIPTION
                        "Write access is not required, thus allowing
                        the system not to implement wildcarding."

                OBJECT mteEventSetContextNameWildcard
                MIN-ACCESS  read-only





Expires 7 December 2000                                        [Page 47]





Internet Draft      Distributed Management Event MIB         7 June 2000


                DESCRIPTION
                        "Write access is not required, thus allowing
                        the system not to implement wildcarding."

        ::= { dismanEventMIBCompliances 1 }

-- Units of Conformance



dismanEventResourceGroup OBJECT-GROUP
        OBJECTS {
                mteResourceSampleMinimum,
                mteResourceSampleInstanceMaximum,
                mteResourceSampleInstances,
                mteResourceSampleInstancesHigh,
                mteResourceSampleInstanceLacks
        }
        STATUS current
        DESCRIPTION
                "Event resource status and control objects."
        ::= { dismanEventMIBGroups 1 }

dismanEventTriggerGroup OBJECT-GROUP
        OBJECTS {
                mteTriggerFailures,

                mteTriggerComment,
                mteTriggerTest,
                mteTriggerSampleType,
                mteTriggerValueID,
                mteTriggerValueIDWildcard,
                mteTriggerTargetTag,
                mteTriggerContextName,
                mteTriggerContextNameWildcard,
                mteTriggerFrequency,
                mteTriggerObjectsOwner,
                mteTriggerObjects,
                mteTriggerEnabled,
                mteTriggerEntryStatus,

                mteTriggerDeltaDiscontinuityID,
                mteTriggerDeltaDiscontinuityIDWildcard,
                mteTriggerDeltaDiscontinuityIDType,






Expires 7 December 2000                                        [Page 48]





Internet Draft      Distributed Management Event MIB         7 June 2000


                mteTriggerExistenceTest,
                mteTriggerExistenceStartup,
                mteTriggerExistenceObjectsOwner,
                mteTriggerExistenceObjects,
                mteTriggerExistenceEventOwner,
                mteTriggerExistenceEvent,

                mteTriggerBooleanComparison,
                mteTriggerBooleanValue,
                mteTriggerBooleanStartup,
                mteTriggerBooleanObjectsOwner,
                mteTriggerBooleanObjects,
                mteTriggerBooleanEventOwner,
                mteTriggerBooleanEvent,

                mteTriggerThresholdStartup,
                mteTriggerThresholdObjectsOwner,
                mteTriggerThresholdObjects,
                mteTriggerThresholdRising,
                mteTriggerThresholdFalling,
                mteTriggerThresholdDeltaRising,
                mteTriggerThresholdDeltaFalling,
                mteTriggerThresholdRisingEventOwner,
                mteTriggerThresholdRisingEvent,
                mteTriggerThresholdFallingEventOwner,
                mteTriggerThresholdFallingEvent,
                mteTriggerThresholdDeltaRisingEventOwner,
                mteTriggerThresholdDeltaRisingEvent,
                mteTriggerThresholdDeltaFallingEventOwner,
                mteTriggerThresholdDeltaFallingEvent
        }
        STATUS current
        DESCRIPTION
                "Event triggers."
        ::= { dismanEventMIBGroups 2 }

dismanEventObjectsGroup OBJECT-GROUP
        OBJECTS {
                mteObjectsID,
                mteObjectsIDWildcard,
                mteObjectsEntryStatus
        }
        STATUS current
        DESCRIPTION
                "Supplemental objects."





Expires 7 December 2000                                        [Page 49]





Internet Draft      Distributed Management Event MIB         7 June 2000


        ::= { dismanEventMIBGroups 3 }

dismanEventEventGroup OBJECT-GROUP
        OBJECTS {
                mteEventFailures,

                mteEventComment,
                mteEventActions,
                mteEventEnabled,
                mteEventEntryStatus,

                mteEventNotification,
                mteEventNotificationObjectsOwner,
                mteEventNotificationObjects,

                mteEventSetObject,
                mteEventSetObjectWildcard,
                mteEventSetValue,
                mteEventSetTargetTag,
                mteEventSetContextName,
                mteEventSetContextNameWildcard
        }
        STATUS current
        DESCRIPTION
                "Events."
        ::= { dismanEventMIBGroups 4 }

dismanEventNotificationObjectGroup OBJECT-GROUP
        OBJECTS {
                mteHotTrigger,
                mteHotTargetName,
                mteHotContextName,
                mteHotOID,
                mteHotValue,
                mteFailedReason
        }
        STATUS current
        DESCRIPTION
                "Notification objects."
        ::= { dismanEventMIBGroups 5 }

dismanEventNotificationGroup NOTIFICATION-GROUP
        NOTIFICATIONS {
                mteTriggerFired,
                mteTriggerRising,





Expires 7 December 2000                                        [Page 50]





Internet Draft      Distributed Management Event MIB         7 June 2000


                mteTriggerFalling,
                mteTriggerFailure,
                mteEventSetFailure
        }
        STATUS current
        DESCRIPTION
                "Notifications."
        ::= { dismanEventMIBGroups 6 }

END








































Expires 7 December 2000                                        [Page 51]





Internet Draft      Distributed Management Event MIB         7 June 2000


9.  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
implementors 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.





























Expires 7 December 2000                                        [Page 52]





Internet Draft      Distributed Management Event MIB         7 June 2000


10.  Acknowledgements

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












































Expires 7 December 2000                                        [Page 53]





Internet Draft      Distributed Management Event MIB         7 June 2000


11.  References

[RFC2571]   Harrington, D., Presuhn, R., and B. Wijnen, "An Architecture
            for Describing SNMP Management Frameworks", RFC 2571, April
            1999

[RFC1155]   Rose, M., and K. McCloghrie, "Structure and Identification
            of Management Information for TCP/IP-based Internets", STD
            16, RFC 1155, May 1990

[RFC1212]   Rose, M., and K. McCloghrie, "Concise MIB Definitions", STD
            16, RFC 1212, March 1991

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

[RFC2578]   McCloghrie, K., Perkins, D., Schoenwaelder, J., Case, J.,
            Rose, M., and S. Waldbusser, "Structure of Management
            Information Version 2 (SMIv2)", STD 58, RFC 2578, April 1999

[RFC2579]   McCloghrie, K., Perkins, D., Schoenwaelder, J., Case, J.,
            Rose, M., and S. Waldbusser, "Textual Conventions for
            SMIv2", STD 58, RFC 2579, April 1999

[RFC2580]   McCloghrie, K., Perkins, D., Schoenwaelder, J., Case, J.,
            Rose, M., and S. Waldbusser, "Conformance Statements for
            SMIv2", STD 58, RFC 2580, April 1999

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

[RFC1901]   Case, J., McCloghrie, K., Rose, M., and S. Waldbusser,
            "Introduction to Community-based SNMPv2", RFC 1901, January
            1996.

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

[RFC2572]   Case, J., Harrington D., Presuhn R., and B. Wijnen, "Message
            Processing and Dispatching for the Simple Network Management
            Protocol (SNMP)", RFC 2572, April 1999

[RFC2574]   Blumenthal, U., and B. Wijnen, "User-based Security Model
            (USM) for version 3 of the Simple Network Management





Expires 7 December 2000                                        [Page 54]





Internet Draft      Distributed Management Event MIB         7 June 2000


            Protocol (SNMPv3)", RFC 2574, April 1999

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

[RFC2573]   Levi, D., Meyer, P., and B. Stewart, "SNMPv3 Applications",
            RFC 2573, April 1999

[RFC2575]   Wijnen, B., Presuhn, R., and K. McCloghrie, "View-based
            Access Control Model (VACM) for the Simple Network
            Management Protocol (SNMP)", RFC 2575, April 1999

[RFC2570]   Case, J., Mundy, R., Partain, D., and B. Stewart,
            "Introduction to Version 3 of the Internet-standard Network
            Management Framework", RFC 2570, April 1999

[RFC1903]   Case, J., McCloghrie, K., Rose, M. and S. Waldbusser,
            "Coexistence between Version 1 and version 2 of the
            Internet-standard Network Management Framework", RFC 1903,
            January 1996.

[RFCEventMIB]
     Stewart, B., "Event MIB", RFC ????, ?Month? 1999.

[RFC1757]
     Waldbusser, S., "Remote Network Monitoring Management Information
     Base", RFC 1757, February 1995.

[RFC1451]
     Case, J., McCloghrie, K., Rose, M., Waldbusser, S., "Manager-to-
     Manager Management Information Base", RFC 1451, April 1993.

[RFCExpressionMIB]
     Stewart, B., "Expression MIB", RFC ????, ?Month? 1999.

[RFCNotificationLogMIB]
     Stewart, B., "Notification Log MIB", RFC ????, ?Month? 1999.












Expires 7 December 2000                                        [Page 55]





Internet Draft      Distributed Management Event MIB         7 June 2000


12.  Security Considerations

Security issues are discussed in the Security section and in the
DESCRIPTION clauses of relevant objects.


13.  Author's Address

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


14.  Editor's Address

     Ramanathan Kavasseri
     Cisco Systems, Inc.
     170 West Tasman Drive
     San Jose, CA 95134-1706
     U.S.A.

     Phone: +1 408 527 2446
     Email: ramk@cisco.com

























Expires 7 December 2000                                        [Page 56]





Internet Draft      Distributed Management Event MIB         7 June 2000


15.  Full Copyright Statement

Copyright (C) The Internet Society (2000). 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
Standards process must be followed, or as required to translate it into
languages other than English.

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

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
























Expires 7 December 2000                                        [Page 57]





Internet Draft      Distributed Management Event MIB         7 June 2000


Table of Contents


1 Abstract ........................................................    2
2 The SNMP Management Framework ...................................    2
3 Overview ........................................................    4
4 Relationship to Other MIBs ......................................    4
5 MIB Sections ....................................................    4
6 Operation .......................................................    7
7 Security ........................................................    8
8 Definitions .....................................................    9
9 Intellectual Property ...........................................   52
10 Acknowledgements ...............................................   53
11 References .....................................................   54
12 Security Considerations ........................................   56
13 Author's Address ...............................................   56
14 Editor's Address ...............................................   56
15 Full Copyright Statement .......................................   57
































Expires 7 December 2000                                        [Page 58]



From owner-disman@dorothy.peer.com  Thu Jun 29 12:36:48 2000
Received: from tattler.bmc.com (fw-us-hou-2.bmc.com [198.207.223.251])
	by ietf.org (8.9.1a/8.9.1a) with ESMTP id MAA14101
	for <disman-archive@odin.ietf.org>; Thu, 29 Jun 2000 12:36:41 -0400 (EDT)
Received: from Dorothy.Bmc.Com (localhost [127.0.0.1])
	by tattler.bmc.com (8.10.2/8.8.6) with ESMTP id e5TGWJj16184;
	Thu, 29 Jun 2000 11:32:20 -0500 (CDT)
Received: (from root@localhost)
	by Dorothy.Bmc.Com (8.8.6 (PHNE_12836)/8.8.6) id JAA23328
	for disman-list; Thu, 29 Jun 2000 09:29:42 -0700 (PDT)
Received: from tattler.bmc.com (tattler.bmc.com [172.17.0.117])
	by Dorothy.Bmc.Com (8.8.6 (PHNE_12836)/8.8.6) with ESMTP id JAA23280
	for <disman@dorothy.peer.com>; Thu, 29 Jun 2000 09:28:51 -0700 (PDT)
Received: from fw-us-hou1.bmc.com (localhost [127.0.0.1])
	by tattler.bmc.com (8.10.2/8.8.6) with SMTP id e5TGSUi14615
	for <disman@dorothy.bmc.com>; Thu, 29 Jun 2000 11:28:32 -0500 (CDT)
Received: (ramk@localhost) by itech-view2.cisco.com (8.8.5-Cisco.2-SunOS.5.5.1.sun4/8.6.5) id JAA19363; Thu, 29 Jun 2000 09:27:51 -0700 (PDT)
From: Ram Kavasseri <ramk@cisco.com>
Message-Id: <200006291627.JAA19363@itech-view2.cisco.com>
Subject: Please accept draft-ietf-disman-express-mib-12.txt
To: internet-drafts@ietf.org
Date: Thu, 29 Jun 2000 09:27:51 -0700 (PDT)
Cc: disman@dorothy.peer.com
X-Mailer: ELM [version 2.5 PL1]
MIME-Version: 1.0
Content-Type: text/plain; charset=us-ascii
Content-Transfer-Encoding: 7bit
Sender: owner-disman@dorothy.peer.com
Precedence: bulk
List-Id: IETF disman Working Group mailing list <disman@dorothy.bmc.com>
Content-Transfer-Encoding: 7bit


Please accept draft-ietf-disman-express-mib-12.txt for posting
as an internet draft. This version contains format changes,
typo fixes and similar minor edits.

Thank you,

Ram Kavasseri








Network Working Group                           Editor of this version:
Internet-Draft                                  Ramanathan R. Kavasseri
Expires December 2000                               Cisco Systems, Inc.
                                            Author of previous version:
                                                            Bob Stewart
                                                           12 June 2000



                 Distributed Management Expression MIB

                  draft-ietf-disman-express-mib-12.txt


                          Status of this Memo

This document is an Internet-Draft and is in full conformance with all
provisions of Section 10 of RFC2026.

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.''

The list of current Internet-Drafts can be accessed at
http://www.ietf.org/ietf/1id-abstracts.txt

The list of Internet-Draft Shadow Directories can be accessed at
http://www.ietf.org/shadow.html.

Distribution of this document is unlimited. Please send comments to the
Distributed Management Working Group, <disman@dorothy.BMC.com>.


Copyright Notice

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















Internet Draft    Distributed Management Expression MIB     12 June 2000


1.  Abstract

This memo defines a portion of the Management Information Base (MIB) for
use with network management protocols in the Internet community.  In
particular, it describes managed objects used for managing expressions
of MIB objects.  The results of these expressions become MIB objects
usable like any other MIB object, such as for the test condition for
declaring an event.

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.


2.  The SNMP Management Framework

   The SNMP Management Framework presently consists of five major
   components:

    o   An overall architecture, described in RFC 2571 [RFC2571].

    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
        STD 16, RFC 1155 [RFC1155], STD 16, RFC 1212 [RFC1212] and RFC
        1215 [RFC1215]. The second version, called SMIv2, is described
        in STD 58, RFC 2578 [RFC2578], RFC 2579 [RFC2579] and RFC 2580
        [RFC2580].

    o   Message protocols for transferring management information. The
        first version of the SNMP message protocol is called SNMPv1 and
        described in STD 15, RFC 1157 [RFC1157]. A second version of the
        SNMP message protocol, which is not an Internet standards track
        protocol, is called SNMPv2c and described in RFC 1901 [RFC1901]
        and RFC 1906 [RFC1906]. The third version of the message
        protocol is called SNMPv3 and described in RFC 1906 [RFC1906],
        RFC 2572 [RFC2572] and RFC 2574 [RFC2574].

    o   Protocol operations for accessing management information. The
        first set of protocol operations and associated PDU formats is
        described in STD 15, RFC 1157 [RFC1157]. A second set of
        protocol operations and associated PDU formats is described in
        RFC 1905 [RFC1905].







Expires 12 December 2000                                        [Page 2]





Internet Draft    Distributed Management Expression MIB     12 June 2000


    o   A set of fundamental applications described in RFC 2573
        [RFC2573] and the view-based access control mechanism described
        in RFC 2575 [RFC2575].

   A more detailed introduction to the current SNMP Management Framework
   can be found in RFC 2570 [RFC2570].

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

   This memo specifies a MIB module that is compliant to the SMIv2. A
   MIB conforming to the SMIv1 can be produced through the appropriate
   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.






























Expires 12 December 2000                                        [Page 3]





Internet Draft    Distributed Management Expression MIB     12 June 2000


3.  Overview

Users of MIBs often desire MIB objects that MIB designers have not
provided.  Furthermore, such needs vary from one management philosphy to
another.  Rather than fill more and more MIBs with standardized objects,
the Expression MIB supports externally defined expressions of existing
MIB objects.

In the Expression MIB the results of an evaluated expression are MIB
objects that may be used like any other MIB objects.  These custom-
defined objects are thus usable anywhere any other MIB object can be
used.  For example, they can be used by a management application
directly or referenced from another MIB, such as the Event MIB
[MIBEventMIB].  They can even be used by the Expression MIB itself,
forming expressions of expressions.

The Expression MIB is instrumentation for a relatively powerful,
complex, high-level application, considerably different from simple
instrumentation for a communication driver or a protocol.  The MIB is
appropriate in a relatively powerful, resource-rich managed system and
not necessarily in a severely limited environment.

Nevertheless, due to dependencies from the Event MIB [RFCEventMIB] and
the need to support as low-end a system as possible, the Expression MIB
can be somewhat stripped down for lower-power, lower-resource
implementations, as described in the Subsets section, below.

Implementation of the Expression MIB in a managed system led to the
addition of objects that may not have been necessary in an application
environment with complete knowledge of compiled MIB definitions.  This
is appropriate since implementation must be possible within typical
managed systems with some constraints on system resources.


3.1.  Usage

On managed systems that can afford the overhead, the Expression MIB is a
way to create new, customized MIB objects for monitoring.  Although
these can save some network traffic and overhead on management systems,
that is often not a good tradeoff for objects that are simply to be
recorded or displayed.

An example of a use of the Expression MIB would be to provide custom
objects for the Event MIB [RFCEventMIB].  A complex expression can
evaluate to a rate of flow or a boolean and thus be subject to testing





Expires 12 December 2000                                        [Page 4]





Internet Draft    Distributed Management Expression MIB     12 June 2000


as an event trigger, resulting in an SNMP notification.  Without these
capabilities such monitoring would be limited to the objects in
predefined MIBs.  The Expression MIB thus supports powerful tools for
the network manager faced with the monitoring of large, complex systems
that can support a significant level of self management.


3.2.  Persistance

Although like most MIBs this one has no explicit controls for the
persistance of the values set in configuring an expression, a robust,
polite implementation would certainly not force its managing
applications to reconfigure it whenever it resets.

Again, as with most MIBs, it is implementation specific how a system
provides and manages such persistance.  To speculate, one could imagine,
for example, that persistance depended on the context in which the
expression was configured, or perhaps system-specific characteristics of
the expression's owner.  Or perhaps everything in a MIB such as this
one, which is clearly aimed at persistant configuration, is
automatically part of a system's other persistant configuration.


3.3.  Operation

Most of the operation of the MIB is described or implied in the object
definitions but a few highlights bear mentioning here.


3.3.1.  Sampling

The MIB supports three types of object sampling for the MIB objects that
make up the expression:  absolute, delta, and changed.

Absolute samples are simply the value of the MIB object at the time it
is sampled.

Absolute samples are not sufficient for expressions of counters, as
counters have meaning only as a delta (difference) from one sample to
the next.  Thus objects may be sampled as deltas.  Delta sampling
requires the application to maintain state for the value at the last
sample, and to do continuous sampling whether or not anyone is looking
at the results.  It thus creates constant overhead.

Changed sampling is a simple fallout of delta sampling where rather than





Expires 12 December 2000                                        [Page 5]





Internet Draft    Distributed Management Expression MIB     12 June 2000


a difference the result is a boolean indicating whether or not the
object changed value since the last sample.


3.3.2.  Wildcards

Wildcards allow the application of a single expression to multiple
instances of the same MIB object.  The definer of the expression
indicates this choice and provides a partial object identifier, with
some or all of the instance portion left off.  The application then does
the equivalent of GetNext to obtain the object values, thus discovering
the instances.

All wildcarded objects in an expression must have the same semantics for
the missing portion of their object identifiers. Otherwise, any
successful evaluation of the wildcarded expression would be the result
of the accidental matching of the wildcarded portion of the object
identifiers in the expression.  Such an evaluation will likely produce
results which are not meaningful.

The expression can be evaluated only for those instances where all the
objects in the expression are available with the same value for the
wildcarded portion of the instance.


3.3.3.  Evaluation

There are two important aspects of evaluation that may not be obvious:
what objects and when.

What objects get used in the evaluation depends on the type of request
and whether or not the expression contains wildcarded objects.  If the
request was a Get, that locks down the instances to be used.  If the
request was a GetNext or GetBulk, the application must work its way up
to the next full set of objects for the expression.

Evaluation of expressions happens at two possible times, depending on
the sampling method (delta or absolute) used to evaluate the expression.

If there are no delta or change values in an expression, the evaluation
occurs on demand, i.e. when a requester attempts to read the value of
the expression.  In this case all requesters get a freshly calculated
value.

For expressions with delta or change values, evaluation goes on





Expires 12 December 2000                                        [Page 6]





Internet Draft    Distributed Management Expression MIB     12 June 2000


continuously, every sample period.  In this case requesters get the
value as of the last sample period.  For any given sample period of a
given expression, only those instances exist that provided a full set of
object values.  It may be possible that a delta expression which was
evaluated successfully for one sample period may not be successfully
evaluated in the next sample period. This may, for example, be due to
missing instances for some or all of the objects in the expression. In
such cases, the value from the previous sample period (with the
successful evaluation) must not be carried forward to the next sample
period (with the failed evaluation).


3.3.4.  Value Identification

Values resulting from expression evaluation are identified with a
combination of the object identifier (OID) for the data type from
expValueTable (such as expValueCounter32Val), the expression name, and
an OID fragment.

The OID fragment is not an entire OID beginning with iso.dod.org
(1.3.6).  Rather it begins with 0.0.  The remainder is either another 0
when there is no wildcarding or the instance that satisfied the wildcard
if there is wildcarding.


3.4.  Subsets

To pare down the Expression MIBs complexity and use of resources an
implementor can leave out various parts.


3.4.1.  No Wildcards

Leaving out wildcarding significantly reduces the complexity of
retrieving values to evaluate expressions and the processing required to
do so.  Such an implementation would allow expressions made up of
individual MIB objects but would not be suitable for expressions applied
across large tables as each instance in the table would require a
separate expression definition.

Furthermore it would not be suitable for tables with arbitrary, dynamic
instances, as expressions definitions could not predict what instance
values to use.

An implementation without wildcards might be useful for a self-managing





Expires 12 December 2000                                        [Page 7]





Internet Draft    Distributed Management Expression MIB     12 June 2000


system with small tables or few dynamic instances, or one that can do
calculations only for a few key objects.


3.4.2.  No Deltas

Leaving out delta processing significantly reduces state that must be
kept and the burden of ongoing processing even when no one is looking at
the results.  Unfortunately it also makes expressions on counters
unusable, as counters have meaning only as deltas.

An implementation without deltas might be useful for a severly limited,
self-managing system that has no need for expressions or events on
counters.  Although conceivable, such systems would be rare.


3.5.  Structure

The MIB has the following sections:

    o   Resource -- management of the MIB's use of system resources.

    o   Definition -- definition of expressions.

    o   Value -- values of evaluated expressions.


3.5.1.  Resource

The resource section has objects to manage resource usage by wildcarded
delta expressions, a potential major consumer of CPU and memory.


3.5.2.  Definition

The definition section contains the tables that define expressions.

The expression table, indexed by expression owner and expression name,
contains those parameters that apply to the entire expression, such as
the expression itself, the data type of the result, and the sampling
interval if it contains delta or change values.

The object table, indexed by expression owner, expression name and
object index within each expression, contains the parameters that apply
to the individual objects that go into the expression, including the





Expires 12 December 2000                                        [Page 8]





Internet Draft    Distributed Management Expression MIB     12 June 2000


object identifier, sample type, discontinuity indicator, and such.


3.5.3.  Value

The value section contains the values of evaluated expressions.

The value table, indexed by expression name and instance fragment
contains a "discriminated union" of evaluated expression results.  For a
given expression only one of the columns is instantiated, depending on
the result data type for the expression.  The instance fragment is a
constant or the final section of the object identifier that filled in a
wildcard.


3.6.  Examples

The examples refer to tables and objects defined below in the MIB
itself.  They may well make more sense after reading those definitions.


3.6.1.  Wildcarding

An expression may use wildcarded MIB objects that result in multiple
values for the expression.  To specify a wildcarded MIB object a
management application leaves off part or all of the instance portion of
the object identifier, and sets expObjectWildcard to true(1) for that
object.  For our example we'll use a counter of total blessings from a
table of people.  Another table, indexed by town and person has
blessings just from that town.

So the index clauses are:

    personEntry OBJECT-TYPE
    ...
    INDEX { personIndex }

And:

    townPersonEntry OBJECT-TYPE
    ...
    INDEX { townIndex, personIndex }

In our friendly application we may have entered our expression as:






Expires 12 December 2000                                        [Page 9]





Internet Draft    Distributed Management Expression MIB     12 June 2000


    100 * townPersonBlessings.976.* / personBlessings.*

What goes in expExpression is:

    100*$1/$2

For example purposes we'll use some slightly far-fetched OIDs.  The
People MIB is 1.3.6.1.99.7 and the Town MIB is 1.3.6.1.99.11, so for our
two counters the OIDs are:

    personBlessings      1.3.6.1.99.7.1.3.1.4
    townPersonBlessings       1.3.6.1.99.11.1.2.1.9

The rule for wildcards is that all the wildcarded parts have to match
exactly.  In this case that means we have to hardwire the town and only
the personIndex can be wildcarded.  So our values for expObjectID are:

    1.3.6.1.99.7.1.3.1.4
    1.3.6.1.99.11.1.2.1.9.976

We're hardwired to townIndex 976 and personIndex is allowed to vary.

The value of expExpressionPrefix can be either of those two counter OIDs
(including the instance fragment in the second case), since either of
them takes you to a MIB definition where you can look at the INDEX
clause and figure out what's been left off.  What's been left off
doesn't have to work out to be the same object, but it does have to work
out to be the same values (semantics) for the result to make sense.
Note that the managed system can not typically check such semantics and
if given nonsense will return nonsense.

If we have people numbered 6, 19, and 42 in town number 976, the
successive values of expValueInstance will be:

    0.0.6
    0.0.19
    0.0.42

So there will be three values in expValueTable, with those OIDs as the
expValueInstance part of their indexing.










Expires 12 December 2000                                       [Page 10]





Internet Draft    Distributed Management Expression MIB     12 June 2000


3.6.2.  Calculation and Conditional

The following formula for line utilization of a half-duplex link is
adapted from [PracPersp].

    utilization = (ifInOctets + ifOutOctets) * 800 / seconds / ifSpeed

The expression results in the percentage line utilization per second.
The total octets are multipled by 8 to get bits and 100 to scale up the
percentage as an integer.

The following Expression MIB object values implement this as an
expression for all ifIndexes that directly represent actual hardware.
Since the octet counters are Counter32 values, they must be delta
sampled to be meaningful.  The sample period is 6 seconds but for
accuracy and independence is calculated as a delta of sysUpTime.

The expObjectTable entry for ifInOctets has an expObjectConditional that
checks for being a hardware interface.  Only one object in the
expression needs that check associated, since it applies to the whole
expression.  Since ifConnectorPresent is a TruthValue with values of 1
or 2 rather than 0 and non-zero, it must also be in an expression rather
than used directly for the conditional.

The interface-specific discontinuity indicator is supplied only for
ifInOctets since invalidating that sample will invalidate an attempt at
evaluation, effectively invalidating ifOutOctets as well (correctly,
because it has the same indicator).

For notational clarity, in the rest of this document, a string in quotes
as part of the object instance indicates the value that would actually
be one subidentifier per byte.  The objects all belong to owner "me".

Also for clarity OIDs are expressed as the object descriptor and
instance.  In fact they must be supplied numerically, with all
subidentifiers in place before the part for the particular object and
instance.

What the user would set in expExpressionTable:

expExpression.2."me".4."hard"      = "$1==1"
expExpressionValueType.2."me".4."hard"  = unsigned32
expExpressionRowStatus.2."me"4."hard"   = 'active'

expExpression.2."me".4."util"      = "($1+$2)*800/$4/$3"





Expires 12 December 2000                                       [Page 11]





Internet Draft    Distributed Management Expression MIB     12 June 2000


expExpressionValueType.2."me".4."util"  = integer32
expExpressionDeltaInterval.2."me".4."util"   = 6
expExpressionRowStatus.2."me"4."util"   = 'active'

What the user would set in expObjectTable:

expObjectID.2."me".4."hard".1      = ifConnectorPresent
expObjectWildcard.2."me".4."hard".1     = 'true'
expObjectSampleType.2."me".4."hard".1   = 'absoluteValue'
expObjectRowStatus.2."me".4."hard".1    = 'active'

expObjectID.2."me".4."util".1      = ifInOctets
expObjectWildcard.2."me".4."util".1     = 'true'
expObjectSampleType.2."me".4."util".1   = 'deltaValue'
expObjectConditional.2."me".4."util".1  =
expValueUnsigned32Val.4."hard".0.0
expObjectConditionalWildcard.2."me".4."util".1    = 'true'
expObjectDiscontinuityID.2."me".4."util".1   =
ifCounterDiscontinuityTime
expObjectDiscontinuityIDWildcard.2."me".4."util".1     = 'true'
expObjectRowStatus.2."me".4."util".1    = 'active'

expObjectID.2."me".4."util".2      = ifOutOctets
expObjectWildcard.2."me".4."util".2     = 'true'
expObjectSampleType.2."me".4."util".2   = 'deltaValue'
expObjectRowStatus.2."me".4."util".2    = 'active'

expObjectID.2."me".4."util".3      = ifSpeed
expObjectWildcard.2."me".4."util".3     = 'true'
expObjectSampleType.2."me".4."util".3   = 'absoluteValue'
expObjectRowStatus.2."me".4."util".3    = 'active'

expObjectID.2."me".4."util".4      = sysUpTime.0
expObjectWildcard.2."me".4."util".4     = 'false'
expObjectSampleType.2."me".4."util".4   = 'deltaValue'
expObjectRowStatus.2."me".4."util".4    = 'active'

These settings will result in populating one column of expValueTable:

expValueInteger32Val.2."me".4."util".0.0.?

The subidentifier represented by "?" above represents one subidentifier
that takes on a value of ifIndex and identifies a row for each ifIndex
value where ifConnectorPresent is 'true' and the interface was present
for two samples to provide a delta.





Expires 12 December 2000                                       [Page 12]





Internet Draft    Distributed Management Expression MIB     12 June 2000


This value could in turn be used as an event threshold [RFCEventMIB] to
watch for overutilization of all hardware network connections.
















































Expires 12 December 2000                                       [Page 13]





Internet Draft    Distributed Management Expression MIB     12 June 2000


4.  Definitions

DISMAN-EXPRESSION-MIB DEFINITIONS ::= BEGIN

IMPORTS
    MODULE-IDENTITY, OBJECT-TYPE,
    Integer32, Gauge32, Unsigned32,
    Counter32, Counter64, IpAddress,
    TimeTicks, mib-2, zeroDotZero  FROM SNMPv2-SMI
    RowStatus, TruthValue, TimeStamp    FROM SNMPv2-TC
    sysUpTime                 FROM SNMPv2-MIB
    SnmpAdminString           FROM SNMP-FRAMEWORK-MIB
    MODULE-COMPLIANCE, OBJECT-GROUP     FROM SNMPv2-CONF;

dismanExpressionMIB MODULE-IDENTITY
    LAST-UPDATED "200006120000Z" -- 12 June 2000
    ORGANIZATION "IETF Distributed Management Working Group"
    CONTACT-INFO "Ramanathan Kavasseri
                  Cisco Systems, Inc.
                  170 West Tasman Drive,
                  San Jose CA 95134-1706.
                  Phone: +1 408 527 2446
                  Email: ramk@cisco.com"
    DESCRIPTION
     "The MIB module for defining expressions of MIB objects for
     management purposes."
-- Revision History

       REVISION     "200006120000Z" -- 12 June 2000
       DESCRIPTION  "This is the initial version of this MIB.
                    Published as RFC xxxx"
    ::= { mib-2 xx } -- final assignment by IANA at publication time


dismanExpressionMIBObjects OBJECT IDENTIFIER ::= { dismanExpressionMIB 1 }

expResource    OBJECT IDENTIFIER ::= { dismanExpressionMIBObjects 1 }
expDefine OBJECT IDENTIFIER ::= { dismanExpressionMIBObjects 2 }
expValue  OBJECT IDENTIFIER ::= { dismanExpressionMIBObjects 3 }


--
-- Resource Control
--






Expires 12 December 2000                                       [Page 14]





Internet Draft    Distributed Management Expression MIB     12 June 2000


expResourceDeltaMinimum OBJECT-TYPE
    SYNTAX      Integer32 (-1 | 1..600)
    UNITS       "seconds"
    MAX-ACCESS  read-write
    STATUS      current
    DESCRIPTION
     "The minimum expExpressionDeltaInterval this system will
     accept.  A system may use the larger values of this minimum to
     lessen the impact of constantly computing deltas.  For larger
     delta sampling intervals the system samples less often and
     suffers less overhead.  This object provides a way to enforce
     such lower overhead for all expressions created after it is
     set.

     The value -1 indicates that expResourceDeltaMinimum is
     irrelevant as the system will not accept 'deltaValue' as a
     value for expObjectSampleType.

     Unless explicitly resource limited, a system's value for
     this object should be 1, allowing as small as a 1 second
     interval for ongoing delta sampling.

     Changing this value will not invalidate an existing setting
     of expObjectSampleType."
    ::= { expResource 1 }

expResourceDeltaWildcardInstanceMaximum OBJECT-TYPE
    SYNTAX      Unsigned32
    UNITS       "instances"
    MAX-ACCESS  read-write
    STATUS      current
    DESCRIPTION
     "For every instance of a deltaValue object, one dynamic instance
     entry is needed for holding the instance value from the previous
     sample, i.e. to maintain state.

     This object limits maximum number of dynamic instance entries
     this system will support for wildcarded delta objects in
     expressions. For a given delta expression, the number of
     dynamic instances is the number of values that meet all criteria
     to exist times the number of delta values in the expression.

     A value of 0 indicates no preset limit, that is, the limit
     is dynamic based on system operation and resources.






Expires 12 December 2000                                       [Page 15]





Internet Draft    Distributed Management Expression MIB     12 June 2000


     Unless explicitly resource limited, a system's value for
     this object should be 0.

     Changing this value will not eliminate or inhibit existing delta
     wildcard instance objects but will prevent the creation of more
     such objects.

     An attempt to allocate beyond the limit results in expErrorCode
     being tooManyWildcardValues for that evaluation attempt."
    ::= { expResource 2 }

expResourceDeltaWildcardInstances OBJECT-TYPE
    SYNTAX      Gauge32
    UNITS       "instances"
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
     "The number of currently active instance entries as
     defined for expResourceDeltaWildcardInstanceMaximum."
    ::= { expResource 3 }

expResourceDeltaWildcardInstancesHigh OBJECT-TYPE
    SYNTAX      Gauge32
    UNITS       "instances"
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
     "The highest value of expResourceDeltaWildcardInstances
     that has occurred since initialization of the managed
     system."
    ::= { expResource 4 }

expResourceDeltaWildcardInstanceResourceLacks OBJECT-TYPE
    SYNTAX      Counter32
    UNITS       "instances"
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
     "The number of times this system could not evaluate an
     expression because that would have created a value instance in
     excess of expResourceDeltaWildcardInstanceMaximum."
    ::= { expResource 5 }


--





Expires 12 December 2000                                       [Page 16]





Internet Draft    Distributed Management Expression MIB     12 June 2000


-- Definition
--
-- Expression Definition Table
--

expExpressionTable OBJECT-TYPE
    SYNTAX      SEQUENCE OF ExpExpressionEntry
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
     "A table of expression definitions."
    ::= { expDefine 1 }

expExpressionEntry OBJECT-TYPE
    SYNTAX      ExpExpressionEntry
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
     "Information about a single expression.  New expressions
     can be created using expExpressionRowStatus.

     To create an expression first create the named entry in this
     table.  Then use expExpressionName to populate expObjectTable.
     For expression evaluation to succeed all related entries in
     expExpressionTable and expObjectTable must be 'active'.  If
     these conditions are not met the corresponding values in
     expValue simply are not instantiated.

     Deleting an entry deletes all related entries in expObjectTable
     and expErrorTable.

     Because of the relationships among the multiple tables for an
     expression (expExpressionTable, expObjectTable, and
     expValueTable) and the SNMP rules for independence in setting
     object values, it is necessary to do final error checking when
     an expression is evaluated, that is, when one of its instances
     in expValueTable is read or a delta interval expires.  Earlier
     checking need not be done and an implementation may not impose
     any ordering on the creation of objects related to an
     expression.

     To maintain security of MIB information, when creating a new row in
     this table, the managed system must record the security credentials
     of the requester.  These security credentials are the parameters
     necessary as inputs to isAccessAllowed from the Architecture for





Expires 12 December 2000                                       [Page 17]





Internet Draft    Distributed Management Expression MIB     12 June 2000


     Describing SNMP Management Frameworks.  When obtaining the objects
     that make up the expression, the system must (conceptually) use
     isAccessAllowed to ensure that it does not violate security.

     The evaluation of the expression takes place under the
     security credentials of the creator of its expExpressionEntry.

     Values of read-write objects in this table may be changed
     at any time."
    INDEX       { expExpressionOwner, expExpressionName }
    ::= { expExpressionTable 1 }

ExpExpressionEntry ::= SEQUENCE {
    expExpressionOwner           SnmpAdminString,
    expExpressionName             SnmpAdminString,
    expExpression                OCTET STRING,
    expExpressionValueType       INTEGER,
    expExpressionComment         SnmpAdminString,
    expExpressionDeltaInterval   Integer32,
    expExpressionPrefix           OBJECT IDENTIFIER,
    expExpressionErrors          Counter32,
    expExpressionEntryStatus     RowStatus
}

expExpressionOwner OBJECT-TYPE
   SYNTAX      SnmpAdminString (SIZE(0..32))
   MAX-ACCESS  not-accessible
   STATUS      current
   DESCRIPTION
     "The owner of this entry. The exact semantics of this
     string are subject to the security policy defined by the
     security administrator."
    ::= { expExpressionEntry 1 }

expExpressionName OBJECT-TYPE
    SYNTAX      SnmpAdminString (SIZE (1..32))
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
     "The name of the expression.  This is locally unique, within
     the scope of an expExpressionOwner."
    ::= { expExpressionEntry 2 }

expExpression OBJECT-TYPE
    SYNTAX      OCTET STRING (SIZE (1..1024))





Expires 12 December 2000                                       [Page 18]





Internet Draft    Distributed Management Expression MIB     12 June 2000


    MAX-ACCESS  read-create
    STATUS      current
    DESCRIPTION
     "The expression to be evaluated.  This object is the same
     as a DisplayString (RFC 1903) except for its maximum length.

     Except for the variable names the expression is in ANSI C
     syntax.  Only the subset of ANSI C operators and functions
     listed here is allowed.

     Variables are expressed as a dollar sign ('$') and an
     integer that corresponds to an expObjectIndex.  An
     example of a valid expression is:

          ($1-$5)*100

     Expressions must not be recursive, that is although an expression
     may use the results of another expression, it must not contain
     any variable that is directly or indirectly a result of its own
     evaluation. The managed system must check for recursive
     expressions.

     The only allowed operators are:

          ( )
          - (unary)
          + - * / %
          & | ^ << >> ~
          ! && || == != > >= < <=

     Note the parentheses are included for parenthesizing the
     expression, not for casting data types.

     The only constant types defined are:

          int (32-bit signed)
          long (64-bit signed)
          unsigned int
          unsigned long
          hexadecimal
          character
          string
          oid

     The default type for a positive integer is int unless it is too





Expires 12 December 2000                                       [Page 19]





Internet Draft    Distributed Management Expression MIB     12 June 2000


     large in which case it is long.

     All but oid are as defined for ANSI C.  Note that a
     hexadecimal constant may end up as a scalar or an array of
     8-bit integers.  A string constant is enclosed in double
     quotes and may contain back-slashed individual characters
     as in ANSI C.

     An oid constant comprises 32-bit, unsigned integers and at
     least one period, for example:

          0.
          .0
          1.3.6.1

     No additional leading or trailing subidentifiers are automatically
     added to an OID constant.  The constant is taken as expressed.

     Integer-typed objects are treated as 32- or 64-bit, signed
     or unsigned integers, as appropriate.  The results of
     mixing them are as for ANSI C, including the type of the
     result.  Note that a 32-bit value is thus promoted to 64 bits
     only in an operation with a 64-bit value.  There is no
     provision for larger values to handle overflow.

     Relative to SNMP data types, a resulting value becomes
     unsigned when calculating it uses any unsigned value,
     including a counter.  To force the final value to be of
     data type counter the expression must explicitly use the
     counter32() or counter64() function (defined below).

     OCTET STRINGS and OBJECT IDENTIFIERs are treated as
     one-dimensioned     arrays of unsigned 8-bit integers and
     unsigned 32-bit integers, respectively.

     IpAddresses are treated as 32-bit, unsigned integers in
     network byte order, that is, the hex version of 255.0.0.0 is
     0xff000000.

     Conditional expressions result in a 32-bit, unsigned integer
     of value 0 for false or 1 for true. When an arbitrary value
     is used as a boolean 0 is false and non-zero is true.

     Rules for the resulting data type from an operation, based on
     the operator:





Expires 12 December 2000                                       [Page 20]





Internet Draft    Distributed Management Expression MIB     12 June 2000


     For << and >> the result is the same as the left hand operand.

     For &&, ||, ==, !=, <, <=, >, and >= the result is always
     Unsigned32.

     For unary - the result is always Integer32.

     For +, -, *, /, %, &, |, and ^ the result is promoted according
     to the following rules, in order from most to least preferred:

          If left hand and right hand operands are the same type,
          use that.

          If either side is Counter64, use that.

          If either side is IpAddress, use that.

          If either side is TimeTicks, use that.

          If either side is Counter32, use that.

          Otherwise use Unsigned32.

     The following rules say what operators apply with what data
     types.  Any combination not explicitly defined does not work.

     For all operators any of the following can be the left hand or
     right hand operand: Integer32, Counter32, Unsigned32, Counter64.

     The operators +, -, *, /, %, <, <=, >, and >= work with
     TimeTicks.

     The operators &, |, and ^ work with IpAddress.

     The operators << and >> work with IpAddress but only as the
     left hand operand.

     The + operator performs a concatenation of two OCTET STRINGs or
     two OBJECT IDENTIFIERs.

     The operators &, | perform bitwise operations on OCTET STRINGs.
     If the OCTET STRING happens to be a DisplayString the results
     may be meaningless, but the agent system does not check this as
     some such systems do not have this information.






Expires 12 December 2000                                       [Page 21]





Internet Draft    Distributed Management Expression MIB     12 June 2000


     The operators << and >> perform bitwise operations on OCTET
     STRINGs appearing as the left hand operand.

     The only functions defined are:

          counter32
          counter64
          arraySection
          stringBegins
          stringEnds
          stringContains
          oidBegins
          oidEnds
          oidContains
          average
          maximum
          minimum
          sum
          exists

     The following function definitions indicate their parameters by
     naming the data type of the parameter in the parameter's position
     in the parameter list.  The parameter must be of the type indicated
     and generally may be a constant, a MIB object, a function, or an
     expression.

     counter32(integer) - wrapped around an integer value counter32
     forces Counter32 as a data type.

     counter64(integer) - similar to counter32 except that the
     resulting data type is 'counter64'.

     arraySection(array, integer, integer) - selects a piece of an
     array (i.e. part of an OCTET STRING or OBJECT IDENTIFIER).  The
     integer arguments are in the range 0 to 4,294,967,295.  The
     first is an initial array index (one-dimensioned) and the second
     is an ending array index.  A value of 0 indicates first or last
     element, respectively.  If the first element is larger than the
     array length the result is 0 length.  If the second integer is
     less than or equal to the first, the result is 0 length.  If the
     second is larger than the array length it indicates last
     element.

     stringBegins/Ends/Contains(octetString, octetString) - looks for
     the second string (which can be a string constant) in the first





Expires 12 December 2000                                       [Page 22]





Internet Draft    Distributed Management Expression MIB     12 June 2000


     and returns the one-dimensioned arrayindex where the match began.
     A return value of 0 indicates no match (i.e. boolean false).

     oidBegins/Ends/Contains(oid, oid) - looks for the second OID
     (which can be an OID constant) in the first and returns the
     the one-dimensioned index where the match began. A return value
     of 0 indicates no match (i.e. boolean false).

     average/maximum/minimum(integer) - calculates the average,
     minimum, or maximum value of the integer valued object over
     multiple sample times.  If the object disappears for any
     sample period, the accumlation and the resulting value object
     cease to exist until the object reappears at which point the
     calculation starts over.

     sum(integerObject*) - sums all available values of the
     wildcarded integer object, resulting in an integer scalar.  Must
     be used with caution as it wraps on overflow with no
     notification.

     exists(anyTypeObject) - verifies the object instance exists. A
     return value of 0 indicates NoSuchInstance (i.e. boolean
     false)."
    ::= { expExpressionEntry 3 }

expExpressionValueType OBJECT-TYPE
    SYNTAX      INTEGER { counter32(1), unsigned32(2), timeTicks(3),
                 integer32(4), ipAddress(5), octetString(6),
                 objectId(7), counter64(8) }
    MAX-ACCESS  read-create
    STATUS      current
    DESCRIPTION
     "The type of the expression value.  One and only one of the
     value objects in expValueTable will be instantiated to match
     this type.

     If the result of the expression can not be made into this type,
     an invalidOperandType error will occur."
    DEFVAL      { counter32 }
    ::= { expExpressionEntry 4 }

expExpressionComment OBJECT-TYPE
    SYNTAX      SnmpAdminString
    MAX-ACCESS  read-create
    STATUS      current





Expires 12 December 2000                                       [Page 23]





Internet Draft    Distributed Management Expression MIB     12 June 2000


    DESCRIPTION
     "A comment to explain the use or meaning of the expression."
    DEFVAL      { ''H }
    ::= { expExpressionEntry 5 }

expExpressionDeltaInterval OBJECT-TYPE
    SYNTAX      Integer32 (0..86400)
    UNITS       "seconds"
    MAX-ACCESS  read-create
    STATUS      current
    DESCRIPTION
     "Sampling interval for objects in this expression with
     expObjectSampleType 'deltaValue'.

     This object has no effect if the the expression has no
     deltaValue objects.

     A value of 0 indicates no automated sampling.  In this case
     the delta is the difference from the last time the expression
     was evaluated.  Note that this is subject to unpredictable
     delta times in the face of retries or multiple managers.

     A value greater than zero is the number of seconds between
     automated samples.

     Until the delta interval has expired once the delta for the
     object is effectively not instantiated and evaluating
     the expression has results as if the object itself were not
     instantiated.

     Note that delta values potentially consume large amounts of
     system CPU and memory.  Delta state and processing must
     continue constantly even if the expression is not being used.
     That is, the expression is being evaluated every delta interval,
     even if no application is reading those values.  For wildcarded
     objects this can be substantial overhead.

     Note that delta intervals, external expression value sampling
     intervals and delta intervals for expressions within other
     expressions can have unusual interactions as they are impossible
     to synchronize accurately.  In general one interval embedded
     below another must be enough shorter that the higher sample
     sees relatively smooth, predictable behavior.  So, for example,
     to avoid the higher level getting the same sample twice, the
     lower level should sample at least twice as fast as the higher





Expires 12 December 2000                                       [Page 24]





Internet Draft    Distributed Management Expression MIB     12 June 2000


     level does."
    DEFVAL      { 0 }
    ::= { expExpressionEntry 6 }

expExpressionPrefix OBJECT-TYPE
    SYNTAX      OBJECT IDENTIFIER
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
     "An object prefix to assist an application in determining
     the instance indexing to use in expValueTable, relieving the
     application of the need to scan the expObjectTable to
     determine such a prefix.

     See expObjectTable for information on wildcarded objects.

     If the expValueInstance portion of the value OID may
     be treated as a scalar (that is, normally, 0) the value of
     expExpressionPrefix is zero length, that is, no OID at all.
     Note that zero length implies a null OID, not the OID 0.0.

     Otherwise, the value of expExpressionPrefix is the expObjectID
     value of any one of the wildcarded objects for the expression.
     This is sufficient, as the remainder, that is, the instance
     fragment relevant to instancing the values, must be the same for
     all wildcarded objects in the expression."
    ::= { expExpressionEntry 7 }

expExpressionErrors OBJECT-TYPE
    SYNTAX      Counter32
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
     "The number of errors encountered while evaluating this
     expression.

     Note that an object in the expression not being accessible,
     is not considered an error. An example of an inaccessible
     object is when the object is excluded from the view of the
     user whose security credentials are used in the expression
     evaluation. In such cases, it is a legitimate condition
     that causes the corresponding expression value not to be
     instantiated."
    ::= { expExpressionEntry 8 }






Expires 12 December 2000                                       [Page 25]





Internet Draft    Distributed Management Expression MIB     12 June 2000


expExpressionEntryStatus OBJECT-TYPE
    SYNTAX      RowStatus
    MAX-ACCESS  read-create
    STATUS      current
    DESCRIPTION
     "The control that allows creation and deletion of entries."
    ::= { expExpressionEntry 9 }


--
-- Expression Error Table
--

expErrorTable OBJECT-TYPE
    SYNTAX      SEQUENCE OF ExpErrorEntry
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
     "A table of expression errors."
    ::= { expDefine 2 }

expErrorEntry OBJECT-TYPE
    SYNTAX      ExpErrorEntry
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
     "Information about errors in processing an expression.

     Entries appear in this table only when there is a matching
     expExpressionEntry and then only when there has been an
     error for that expression as reflected by the error codes
     defined for expErrorCode."
    INDEX       { expExpressionOwner, expExpressionName }
    ::= { expErrorTable 1 }

ExpErrorEntry ::= SEQUENCE {
    expErrorTime       TimeStamp,
    expErrorIndex      Integer32,
    expErrorCode       INTEGER,
    expErrorInstance   OBJECT IDENTIFIER
}

expErrorTime OBJECT-TYPE
    SYNTAX      TimeStamp
    MAX-ACCESS  read-only





Expires 12 December 2000                                       [Page 26]





Internet Draft    Distributed Management Expression MIB     12 June 2000


    STATUS      current
    DESCRIPTION
     "The value of sysUpTime the last time an error caused a
     failure to evaluate this expression."
    ::= { expErrorEntry 1 }

expErrorIndex OBJECT-TYPE
    SYNTAX      Integer32
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
     "The one-dimensioned character array index into
     expExpression for where the error occurred.  The value
     zero indicates irrelevance."
    ::= { expErrorEntry 2 }

expErrorCode OBJECT-TYPE
    SYNTAX      INTEGER {
          invalidSyntax(1),
          undefinedObjectIndex(2),
          unrecognizedOperator(3),
          unrecognizedFunction(4),
          invalidOperandType(5),
          unmatchedParenthesis(6),
          tooManyWildcardValues(7),
          recursion(8),
          deltaTooShort(9),
          resourceUnavailable(10),
          divideByZero(11)
          }
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
     "The error that occurred.  In the following explanations the
     expected timing of the error is in parentheses.  'S' means
     the error occurs on a Set request.  'E' means the error
     occurs on the attempt to evaluate the expression either due to
     Get from expValueTable or in ongoing delta processing.

     invalidSyntax       the value sent for expExpression is not
                    valid Expression MIB expression syntax
                    (S)
     undefinedObjectIndex     an object reference ($n) in
                    expExpression does not have a matching
                    instance in expObjectTable (E)





Expires 12 December 2000                                       [Page 27]





Internet Draft    Distributed Management Expression MIB     12 June 2000


     unrecognizedOperator     the value sent for expExpression held an
                    unrecognized operator (S)
     unrecognizedFunction     the value sent for expExpression held an
                    unrecognized function name (S)
     invalidOperandType  an operand in expExpression is not the
                    right type for the associated operator
                    or result (SE)
     unmatchedParenthesis     the value sent for expExpression is not
                    correctly parenthesized (S)
     tooManyWildcardValues    evaluating the expression exceeded the
                    limit set by
                    expResourceDeltaWildcardInstanceMaximum
                    (E)
     recursion      through some chain of embedded
                    expressions the expression invokes itself
                    (E)
     deltaTooShort       the delta for the next evaluation passed
                    before the system could evaluate the
                    present sample (E)
     resourceUnavailable some resource, typically dynamic memory,
                    was unavailable (SE)
     divideByZero        an attempt to divide by zero occurred
                    (E)

     For the errors that occur when the attempt is made to set
     expExpression Set request fails with the SNMP error code
     'wrongValue'.  Such failures refer to the most recent failure to
     Set expExpression, not to the present value of expExpression
     which must be either unset or syntactically correct.

     Errors that occur during evaluation for a Get* operation return
     the SNMP error code 'genErr' except for 'tooManyWildcardValues'
     and 'resourceUnavailable' which return the SNMP error code
     'resourceUnavailable'."
    ::= { expErrorEntry 3 }

expErrorInstance OBJECT-TYPE
    SYNTAX      OBJECT IDENTIFIER
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
     "The expValueInstance being evaluated when the error
     occurred.  A zero-length indicates irrelevance."
    ::= { expErrorEntry 4 }






Expires 12 December 2000                                       [Page 28]





Internet Draft    Distributed Management Expression MIB     12 June 2000


--
-- Object Table
--

expObjectTable OBJECT-TYPE
    SYNTAX      SEQUENCE OF ExpObjectEntry
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
     "A table of object definitions for each expExpression.

     Wildcarding instance IDs:

     It is legal to omit all or part of the instance portion for
     some or all of the objects in an expression. (See the
     DESCRIPTION of expObjectID for details.  However, note that
     if more than one object in the same expression is wildcarded
     in this way, they all must be objects where that portion of
     the instance is the same.  In other words, all objects may be
     in the same SEQUENCE or in different SEQUENCEs but with the
     same semantic index value (e.g., a value of ifIndex)
     for the wildcarded portion."
    ::= { expDefine 3 }

expObjectEntry OBJECT-TYPE
    SYNTAX      ExpObjectEntry
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
     "Information about an object.  An application uses
     expObjectEntryStatus to create entries in this table while
     in the process of defining an expression.

     Values of read-create objects in this table may be
     changed at any time."
    INDEX       { expExpressionOwner, expExpressionName, expObjectIndex }
    ::= { expObjectTable 1 }

ExpObjectEntry ::= SEQUENCE {
    expObjectIndex                     Unsigned32,
    expObjectID                        OBJECT IDENTIFIER,
    expObjectIDWildcard                TruthValue,
    expObjectSampleType                INTEGER,
    expObjectDeltaDiscontinuityID      OBJECT IDENTIFIER,
    expObjectDiscontinuityIDWildcard   TruthValue,





Expires 12 December 2000                                       [Page 29]





Internet Draft    Distributed Management Expression MIB     12 June 2000


    expObjectDiscontinuityIDType       INTEGER,
    expObjectConditional               OBJECT IDENTIFIER,
    expObjectConditionalWildcard       TruthValue,
    expObjectEntryStatus               RowStatus
}

expObjectIndex OBJECT-TYPE
    SYNTAX      Unsigned32 (1..4294967295)
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
     "Within an expression, a unique, numeric identification for an
     object.  Prefixed with a dollar sign ('$') this is used to
     reference the object in the corresponding expExpression."
    ::= { expObjectEntry 1 }

expObjectID OBJECT-TYPE
    SYNTAX      OBJECT IDENTIFIER
    MAX-ACCESS  read-create
    STATUS      current
    DESCRIPTION
     "The OBJECT IDENTIFIER (OID) of this object.  The OID may be
     fully qualified, meaning it includes a complete instance
     identifier part (e.g., ifInOctets.1 or sysUpTime.0), or it
     may not be fully qualified, meaning it may lack all or part
     of the instance identifier.  If the expObjectID is not fully
     qualified, then expObjectWildcard must be set to true(1).
     The value of the expression will be multiple
     values, as if done for a GetNext sweep of the object.

     An object here may itself be the result of an expression but
     recursion is not allowed.

     NOTE:  The simplest implementations of this MIB may not allow
     wildcards."
    ::= { expObjectEntry 2 }

expObjectIDWildcard  OBJECT-TYPE
    SYNTAX      TruthValue
    MAX-ACCESS  read-create
    STATUS      current
    DESCRIPTION
        "A true value indicates the expObjecID of this row is a wildcard
        object. False indicates that expObjectID is fully instanced.
        If all expObjectWildcard values for a given expression are FALSE,





Expires 12 December 2000                                       [Page 30]





Internet Draft    Distributed Management Expression MIB     12 June 2000


        expExpressionPrefix will reflect a scalar object (ie will
        be 0.0).

        NOTE:  The simplest implementations of this MIB may not allow
        wildcards."
    DEFVAL      { false }
    ::= { expObjectEntry 3 }


expObjectSampleType OBJECT-TYPE
    SYNTAX      INTEGER { absoluteValue(1), deltaValue(2),
                          changedValue(3) }
    MAX-ACCESS  read-create
    STATUS      current
    DESCRIPTION
     "The method of sampling the selected variable.

     An 'absoluteValue' is simply the present value of the object.

     A 'deltaValue' is the present value minus the previous value,
     which was sampled expExpressionDeltaInterval seconds ago.
     This is intended primarily for use with SNMP counters, which are
     meaningless as an 'absoluteValue', but may be used with any
     integer-based value.

     A 'changedValue' is a boolean for whether the present value is
     different from the previous value.  It is applicable to any data
     type and results in an Unsigned32 with value 1 if the object's
     value is changed and 0 if not.  In all other respects it is as a
     'deltaValue' and all statements and operation regarding delta
     values apply to changed values.

     When an expression contains both delta and absolute values
     the absolute values are obtained at the end of the delta
     period."
    DEFVAL      { absoluteValue }
    ::= { expObjectEntry 4 }

sysUpTimeInstance OBJECT IDENTIFIER ::= { sysUpTime 0 }

expObjectDeltaDiscontinuityID OBJECT-TYPE
    SYNTAX      OBJECT IDENTIFIER
    MAX-ACCESS  read-create
    STATUS      current
    DESCRIPTION





Expires 12 December 2000                                       [Page 31]





Internet Draft    Distributed Management Expression MIB     12 June 2000


     "The OBJECT IDENTIFIER (OID) of a TimeTicks, TimeStamp, or
     DateAndTime object that indicates a discontinuity in the value
     at expObjectID.

     This object is instantiated only if expObjectSampleType is
     'deltaValue' or 'changedValue'.

     The OID may be for a leaf object (e.g. sysUpTime.0) or may
     be wildcarded to match expObjectID.

     This object supports normal checking for a discontinuity in a
     counter.  Note that if this object does not point to sysUpTime
     discontinuity checking must still check sysUpTime for an overall
     discontinuity.

     If the object identified is not accessible no discontinuity
     check will be made."
    DEFVAL      { sysUpTimeInstance }
    ::= { expObjectEntry 5 }

expObjectDiscontinuityIDWildcard OBJECT-TYPE
     SYNTAX      TruthValue
     MAX-ACCESS  read-create
     STATUS      current
     DESCRIPTION
     "A true value indicates the expObjectDeltaDiscontinuityID of
     this row is a wildcard object.  False indicates that
     expObjectDeltaDiscontinuityID is fully instanced.

     This object is instantiated only if expObjectSampleType is
     'deltaValue' or 'changedValue'.

     NOTE:  The simplest implementations of this MIB may not allow
     wildcards."
    DEFVAL      { false }
     ::= { expObjectEntry 6 }

expObjectDiscontinuityIDType OBJECT-TYPE
     SYNTAX      INTEGER { timeTicks(1), timeStamp(2), dateAndTime(3) }
     MAX-ACCESS  read-create
     STATUS      current
     DESCRIPTION
     "The value 'timeTicks' indicates the expObjectDeltaDiscontinuityID
     of this row is of syntax TimeTicks.  The value 'timeStamp' indicates
     syntax TimeStamp.  The value 'dateAndTime indicates syntax





Expires 12 December 2000                                       [Page 32]





Internet Draft    Distributed Management Expression MIB     12 June 2000


     DateAndTime.

     This object is instantiated only if expObjectSampleType is
     'deltaValue' or 'changedValue'."
    DEFVAL      { timeTicks }
     ::= { expObjectEntry 7 }


expObjectConditional OBJECT-TYPE
    SYNTAX      OBJECT IDENTIFIER
    MAX-ACCESS  read-create
    STATUS      current
    DESCRIPTION
     "The OBJECT IDENTIFIER (OID) of an object that overrides
     whether the instance of expObjectID is to be considered
     usable.  If the value of the object at expObjectConditional
     is 0 or not instantiated, the object at expObjectID is
     treated as if it is not instantiated.  In other words,
     expObjectConditional is a filter that controls whether or
     not to use the value at expObjectID.

     The OID may be for a leaf object (e.g. sysObjectID.0) or may be
     wildcarded to match expObjectID.  If expObject is wildcarded and
     expObjectID in the same row is not, the wild portion of
     expObjectConditional must match the wildcarding of the rest of
     the expression.  If no object in the expression is wildcarded
     but expObjectConditional is, use the lexically first instance
     (if any) of expObjectConditional.

     If the value of expObjectConditional is 0.0 operation is
     as if the value pointed to by expObjectConditional is a
     non-zero (true) value.

     Note that expObjectConditional can not trivially use an object
     of syntax TruthValue, since the underlying value is not 0 or 1."
    DEFVAL      { zeroDotZero }
    ::= { expObjectEntry 8 }

 expObjectConditionalWildcard  OBJECT-TYPE
     SYNTAX      TruthValue
     MAX-ACCESS  read-create
     STATUS      current
     DESCRIPTION

     "A true value indicates the expObjectConditional of this row is





Expires 12 December 2000                                       [Page 33]





Internet Draft    Distributed Management Expression MIB     12 June 2000


     a wildcard object. False indicates that expObjectConditional is
     fully instanced.

     NOTE: The simplest implementations of this MIB may not allow
     wildcards."
    DEFVAL      { false }
     ::= { expObjectEntry 9 }

expObjectEntryStatus OBJECT-TYPE
    SYNTAX      RowStatus
    MAX-ACCESS  read-create
    STATUS      current
    DESCRIPTION
     "The control that allows creation/deletion of entries.

     Objects in this table may be changed while
     expObjectEntryStatus is in any state."
    ::= { expObjectEntry 10 }

--
-- Expression Value Table
--

expValueTable OBJECT-TYPE
    SYNTAX      SEQUENCE OF ExpValueEntry
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
     "A table of values from evaluated expressions."
    ::= { expValue 1 }

expValueEntry OBJECT-TYPE
    SYNTAX      ExpValueEntry
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
     "A single value from an evaluated expression.  For a given
     instance, only one 'Val' object in the conceptual row will be
     instantiated, that is, the one with the appropriate type for
     the value.  For values that contain no objects of
     expObjectSampleType 'deltaValue' or 'changedValue', reading a
     value from the table causes the evaluation of the expression
     for that value.  For those that contain a 'deltaValue' or
     'changedValue' the value read is as of the last sampling
     interval.





Expires 12 December 2000                                       [Page 34]





Internet Draft    Distributed Management Expression MIB     12 June 2000


     If in the attempt to evaluate the expression one or more
     of the necessary objects is not available, the corresponding
     entry in this table is effectively not instantiated.

     To maintain security of MIB information, when creating a new
     row in this table, the managed system must record the security
     credentials of the requester.  These security credentials are
     the parameters necessary as inputs to isAccessAllowed from [RFC2571].
     When obtaining the objects that make up the expression, the
     system must (conceptually) use isAccessAllowed to ensure that
     it does not violate security.

     The evaluation of that expression takes place under the
     security credentials of the creator of its expExpressionEntry.

     To maintain security of MIB information, expression evaluation must
     take place using security credentials for the implied Gets of the
     objects in the expression as inputs (conceptually) to
     isAccessAllowed from the Architecture for Describing SNMP Management
     Frameworks.  These are the security credentials of the creator
     of the corresponding expExpressionEntry."
    INDEX       { expExpressionOwner, expExpressionName,
                  IMPLIED expValueInstance }
    ::= { expValueTable 1 }

ExpValueEntry ::= SEQUENCE {
    expValueInstance          OBJECT IDENTIFIER,
    expValueCounter32Val      Counter32,
    expValueUnsigned32Val     Unsigned32,
    expValueTimeTicksVal      TimeTicks,
    expValueInteger32Val      Integer32,
    expValueIpAddressVal      IpAddress,
    expValueOctetStringVal    OCTET STRING,
    expValueOidVal            OBJECT IDENTIFIER,
    expValueCounter64Val      Counter64
}

expValueInstance OBJECT-TYPE
    SYNTAX      OBJECT IDENTIFIER
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
     "The final instance portion of a value's OID according to
     the wildcarding in instances of expObjectID for the
     expression.  The prefix of this OID fragment is 0.0,





Expires 12 December 2000                                       [Page 35]





Internet Draft    Distributed Management Expression MIB     12 June 2000


     leading to the following behavior.

     If there is no wildcarding, the value is 0.0.0.  In other
     words, there is one value which standing alone would have
     been a scalar with a 0 at the end of its OID.

     If there is wildcarding, the value is 0.0 followed by
     a value that the wildcard can take, thus defining one value
     instance for each real, possible value of the wildcard.
     So, for example, if the wildcard worked out to be an ifIndex,
     there is an expValueInstance for each applicable ifIndex."
    ::= { expValueEntry 1 }

expValueCounter32Val OBJECT-TYPE
    SYNTAX      Counter32
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
     "The value when expExpressionValueType is 'counter32'."
    ::= { expValueEntry 2 }

expValueUnsigned32Val OBJECT-TYPE
    SYNTAX      Unsigned32
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
     "The value when expExpressionValueType is 'unsigned32'."
    ::= { expValueEntry 3 }

expValueTimeTicksVal OBJECT-TYPE
    SYNTAX      TimeTicks
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
     "The value when expExpressionValueType is 'timeTicks'."
    ::= { expValueEntry 4 }

expValueInteger32Val OBJECT-TYPE
    SYNTAX      Integer32
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
     "The value when expExpressionValueType is 'integer32'."
    ::= { expValueEntry 5 }






Expires 12 December 2000                                       [Page 36]





Internet Draft    Distributed Management Expression MIB     12 June 2000


expValueIpAddressVal OBJECT-TYPE
    SYNTAX      IpAddress
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
     "The value when expExpressionValueType is 'ipAddress'."
    ::= { expValueEntry 6 }

expValueOctetStringVal OBJECT-TYPE
    SYNTAX      OCTET STRING (SIZE (0..65536))
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
     "The value when expExpressionValueType is 'octetString'."
    ::= { expValueEntry 7 }

expValueOidVal OBJECT-TYPE
    SYNTAX      OBJECT IDENTIFIER
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
     "The value when expExpressionValueType is 'objectId'."
    ::= { expValueEntry 8 }

expValueCounter64Val OBJECT-TYPE
    SYNTAX      Counter64
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
     "The value when expExpressionValueType is 'counter64'."
    ::= { expValueEntry 9 }

--
-- Conformance
--

dismanExpressionMIBConformance OBJECT IDENTIFIER ::= { dismanExpressionMIB 3 }
dismanExpressionMIBCompliances OBJECT IDENTIFIER ::=
    { dismanExpressionMIBConformance 1 }
dismanExpressionMIBGroups      OBJECT IDENTIFIER ::=
    { dismanExpressionMIBConformance 2 }

-- Compliance

dismanExpressionMIBCompliance MODULE-COMPLIANCE





Expires 12 December 2000                                       [Page 37]





Internet Draft    Distributed Management Expression MIB     12 June 2000


     STATUS current
     DESCRIPTION
          "The compliance statement for entities which implement
          the Expression MIB."
     MODULE    -- this module
          MANDATORY-GROUPS {
               dismanExpressionResourceGroup,
               dismanExpressionDefinitionGroup,
               dismanExpressionValueGroup
          }

     OBJECT         expResourceDeltaMinimum
     SYNTAX         Integer32 (-1 | 60..600)
     DESCRIPTION
          "Implementation need not allow deltas or it may
          implement them and restrict them to higher values."

     OBJECT         expObjectSampleType
     WRITE-SYNTAX   INTEGER { absoluteValue(1) }
     DESCRIPTION
          "Implementation may disallow deltas calculation or
          change detection."

     OBJECT         expObjectIDWildcard
     WRITE-SYNTAX   INTEGER { false(2) }
     DESCRIPTION
          "Implementation may allow wildcards."

     OBJECT         expObjectDiscontinuityIDWildcard
     WRITE-SYNTAX   INTEGER { false(2) }
     DESCRIPTION
          "Implementation need not allow wildcards."

     OBJECT          expObjectConditionalWildcard
     WRITE-SYNTAX   INTEGER { false(2) }
     DESCRIPTION
          "Implementation need not allow deltas wildcards."

     ::= { dismanExpressionMIBCompliances 1 }

-- Units of Conformance

dismanExpressionResourceGroup OBJECT-GROUP
     OBJECTS {
          expResourceDeltaMinimum,





Expires 12 December 2000                                       [Page 38]





Internet Draft    Distributed Management Expression MIB     12 June 2000


          expResourceDeltaWildcardInstanceMaximum,
          expResourceDeltaWildcardInstances,
          expResourceDeltaWildcardInstancesHigh,
          expResourceDeltaWildcardInstanceResourceLacks
     }
     STATUS current
     DESCRIPTION
          "Expression definition resource management."
     ::= { dismanExpressionMIBGroups 1 }

dismanExpressionDefinitionGroup OBJECT-GROUP
     OBJECTS {
          expExpression,
          expExpressionValueType,
          expExpressionComment,
          expExpressionDeltaInterval,
          expExpressionPrefix,
          expExpressionErrors,
          expExpressionEntryStatus,

          expErrorTime,
          expErrorIndex,
          expErrorCode,
          expErrorInstance,

          expObjectID,
          expObjectIDWildcard,
          expObjectSampleType,
          expObjectDeltaDiscontinuityID,
          expObjectDiscontinuityIDWildcard,
          expObjectDiscontinuityIDType,
          expObjectConditional,
          expObjectConditionalWildcard,
          expObjectEntryStatus
     }
     STATUS current
     DESCRIPTION
          "Expression definition."
     ::= { dismanExpressionMIBGroups 2 }

dismanExpressionValueGroup OBJECT-GROUP
     OBJECTS {
          expValueCounter32Val,
          expValueUnsigned32Val,
          expValueTimeTicksVal,





Expires 12 December 2000                                       [Page 39]





Internet Draft    Distributed Management Expression MIB     12 June 2000


          expValueInteger32Val,
          expValueIpAddressVal,
          expValueOctetStringVal,
          expValueOidVal,
          expValueCounter64Val
     }
     STATUS current
     DESCRIPTION
          "Expression value."
     ::= { dismanExpressionMIBGroups 3 }

END






































Expires 12 December 2000                                       [Page 40]





Internet Draft    Distributed Management Expression MIB     12 June 2000


5.  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
implementors 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.




























Expires 12 December 2000                                       [Page 41]





Internet Draft    Distributed Management Expression MIB     12 June 2000


6.  Acknowledgements

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












































Expires 12 December 2000                                       [Page 42]





Internet Draft    Distributed Management Expression MIB     12 June 2000


7.  References

[RFC2571]   Harrington, D., Presuhn, R., and B. Wijnen, "An Architecture
            for Describing SNMP Management Frameworks", RFC 2571, April
            1999

[RFC1155]   Rose, M., and K. McCloghrie, "Structure and Identification
            of Management Information for TCP/IP-based Internets", STD
            16, RFC 1155, May 1990

[RFC1212]   Rose, M., and K. McCloghrie, "Concise MIB Definitions", STD
            16, RFC 1212, March 1991

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

[RFC2578]   McCloghrie, K., Perkins, D., Schoenwaelder, J., Case, J.,
            Rose, M., and S. Waldbusser, "Structure of Management
            Information Version 2 (SMIv2)", STD 58, RFC 2578, April 1999

[RFC2579]   McCloghrie, K., Perkins, D., Schoenwaelder, J., Case, J.,
            Rose, M., and S. Waldbusser, "Textual Conventions for
            SMIv2", STD 58, RFC 2579, April 1999

[RFC2580]   McCloghrie, K., Perkins, D., Schoenwaelder, J., Case, J.,
            Rose, M., and S. Waldbusser, "Conformance Statements for
            SMIv2", STD 58, RFC 2580, April 1999

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

[RFC1901]   Case, J., McCloghrie, K., Rose, M., and S. Waldbusser,
            "Introduction to Community-based SNMPv2", RFC 1901, January
            1996.

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

[RFC2572]   Case, J., Harrington D., Presuhn R., and B. Wijnen, "Message
            Processing and Dispatching for the Simple Network Management
            Protocol (SNMP)", RFC 2572, April 1999

[RFC2574]   Blumenthal, U., and B. Wijnen, "User-based Security Model
            (USM) for version 3 of the Simple Network Management





Expires 12 December 2000                                       [Page 43]





Internet Draft    Distributed Management Expression MIB     12 June 2000


            Protocol (SNMPv3)", RFC 2574, April 1999

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

[RFC2573]   Levi, D., Meyer, P., and B. Stewart, "SNMPv3 Applications",
            RFC 2573, April 1999

[RFC2575]   Wijnen, B., Presuhn, R., and K. McCloghrie, "View-based
            Access Control Model (VACM) for the Simple Network
            Management Protocol (SNMP)", RFC 2575, April 1999

[RFC2570]   Case, J., Mundy, R., Partain, D., and B. Stewart,
            "Introduction to Version 3 of the Internet-standard Network
            Management Framework", RFC 2570, April 1999

[RFC1903]   Case, J., McCloghrie, K., Rose, M. and S. Waldbusser,
            "Coexistence between Version 1 and version 2 of the
            Internet-standard Network Management Framework", RFC 1903,
            January 1996.

[RFCEventMIB]
     Stewart, B., "Event MIB", RFC ????, ?Month? 1999.

[PracPersp]
     Leinwand, A. and K. Fang, "Network Management: A Practical
     Perspective", Addison-Wesley Publishing Company, Inc., 1993.






















Expires 12 December 2000                                       [Page 44]





Internet Draft    Distributed Management Expression MIB     12 June 2000


8.  Security Considerations

Expression MIB security involves two perspectives:  protection of
expressions from tampering or unauthorized use of resources, and
protection of the objects used to calculate the expressions.

Security of expression definitions and results depends on the expression
owner (expExpressionOwner).  With view-based access control [RFC2575] a
network manager can control who has what level of access to what
expressions.

Access control for the objects within the expression depends on the
security credentials of the expression creator.  These are the security
credentials used to get the objects necessary to evaluate the
expression.  They are the security credentials that were used to set the
expExpressionRowStatus object for that expression to 'active', as
recorded by the managed system.

This means that the results of an expression could potentially be made
available to someone who does not have access to the raw data that went
into them.  This could be either legitimate or a security violation,
depending on the specific situation and security policy.

To facilitate the provisioning of access control by a security
administrator for this MIB itself using the View-Based Access Control
Model (VACM) defined in RFC 2575 [RFC2575] 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 related tables 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 "wildcarding" the column subidentifier.  More
elaborate configurations are possible.









Expires 12 December 2000                                       [Page 45]





Internet Draft    Distributed Management Expression MIB     12 June 2000


9.  Author's Address

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


10.  Editor's Address

     Ramanathan Kavasseri
     Cisco Systems, Inc.
     170 West Tasman Drive
     San Jose, CA 95134-1706
     U.S.A.

     Phone: +1 408 527 2446
     Email: ramk@cisco.com































Expires 12 December 2000                                       [Page 46]





Internet Draft    Distributed Management Expression MIB     12 June 2000


11.  Full Copyright Statement

Copyright (C) The Internet Society (1999). 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
Standards process must be followed, or as required to translate it into
languages other than English.

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

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
























Expires 12 December 2000                                       [Page 47]





Internet Draft    Distributed Management Expression MIB     12 June 2000


Table of Contents


1 Abstract ........................................................    2
2 The SNMP Management Framework ...................................    2
3 Overview ........................................................    4
3.1 Usage .........................................................    4
3.2 Persistance ...................................................    5
3.3 Operation .....................................................    5
3.3.1 Sampling ....................................................    5
3.3.2 Wildcards ...................................................    6
3.3.3 Evaluation ..................................................    6
3.3.4 Value Identification ........................................    7
3.4 Subsets .......................................................    7
3.4.1 No Wildcards ................................................    7
3.4.2 No Deltas ...................................................    8
3.5 Structure .....................................................    8
3.5.1 Resource ....................................................    8
3.5.2 Definition ..................................................    8
3.5.3 Value .......................................................    9
3.6 Examples ......................................................    9
3.6.1 Wildcarding .................................................    9
3.6.2 Calculation and Conditional .................................   11
4 Definitions .....................................................   14
5 Intellectual Property ...........................................   41
6 Acknowledgements ................................................   42
7 References ......................................................   43
8 Security Considerations .........................................   45
9 Author's Address ................................................   46
10 Editor's Address ...............................................   46
11 Full Copyright Statement .......................................   47



















Expires 12 December 2000                                       [Page 48]



From owner-disman@dorothy.peer.com  Thu Jun 29 14:24:34 2000
Received: from tattler.bmc.com (fw-us-hou-2.bmc.com [198.207.223.251])
	by ietf.org (8.9.1a/8.9.1a) with ESMTP id OAA16884
	for <disman-archive@odin.ietf.org>; Thu, 29 Jun 2000 14:24:34 -0400 (EDT)
Received: from Dorothy.Bmc.Com (localhost [127.0.0.1])
	by tattler.bmc.com (8.10.2/8.8.6) with ESMTP id e5TDaOk02784;
	Thu, 29 Jun 2000 08:36:25 -0500 (CDT)
Received: (from root@localhost)
	by Dorothy.Bmc.Com (8.8.6 (PHNE_12836)/8.8.6) id GAA14876
	for disman-list; Thu, 29 Jun 2000 06:32:36 -0700 (PDT)
Received: from tattler.bmc.com (tattler.bmc.com [172.17.0.117])
	by Dorothy.Bmc.Com (8.8.6 (PHNE_12836)/8.8.6) with ESMTP id GAA14871
	for <Disman@dorothy.peer.com>; Thu, 29 Jun 2000 06:32:32 -0700 (PDT)
Received: from fw-us-hou1.bmc.com (localhost [127.0.0.1])
	by tattler.bmc.com (8.10.2/8.8.6) with SMTP id e5TDWoL01524
	for <Disman@dorothy.peer.com>; Thu, 29 Jun 2000 08:32:51 -0500 (CDT)
Received: from ihemlsrv.firewall.lucent.com (localhost [127.0.0.1])
	by ihemlsrv.firewall.lucent.com (Pro-8.9.3/8.9.3) with ESMTP id JAA07883
	for <Disman@dorothy.peer.com>; Thu, 29 Jun 2000 09:33:10 -0400 (EDT)
Received: from nl0006exch001h.wins.lucent.com (h135-85-76-62.lucent.com [135.85.76.62])
	by ihemlsrv.firewall.lucent.com (Pro-8.9.3/8.9.3) with ESMTP id JAA07774
	for <Disman@dorothy.peer.com>; Thu, 29 Jun 2000 09:33:05 -0400 (EDT)
Received: by nl0006exch001h.nl.lucent.com with Internet Mail Service (5.5.2650.21)
	id <NX85XMMP>; Thu, 29 Jun 2000 15:33:04 +0200
Message-ID: <2413FED0DFE6D111B3F90008C7FA61FB07F5D039@nl0006exch002u.nl.lucent.com>
From: "Wijnen, Bert (Bert)" <bwijnen@lucent.com>
To: ramk@cisco.com
Cc: Disman@dorothy.peer.com
Subject: RE: Latest Event MIB draft - draft-ietf-disman-event-mib-10.txt
Date: Thu, 29 Jun 2000 15:33:01 +0200
MIME-Version: 1.0
X-Mailer: Internet Mail Service (5.5.2650.21)
Content-Type: text/plain
Sender: owner-disman@dorothy.peer.com
Precedence: bulk
List-Id: IETF disman Working Group mailing list <disman@dorothy.bmc.com>


Guys, this all looks fine, but I do not see the rev 10 in the
I-D repository yet. I cannot issue an IETF Last Call unless it does
who up there!!! Since there were no more comments, I think
Ram should go ahead and post it.

Same with expression mib rev 12

Bert

> ----------
> From: 	Wijnen, Bert (Bert)
> Sent: 	Wednesday, June 21, 2000 2:04 PM
> To: 	ramk@cisco.com; Juergen Schoenwaelder
> Cc: 	Disman@dorothy.peer.com
> Subject: 	RE: Latest Event MIB draft -
> draft-ietf-disman-event-mib-10.txt
> 
> 
> Thanks, looks good to me.
> I trust Juergen did the proper check for duplicates :-)
> 
> Bert
> 
> > ----------
> > From: 	Juergen Schoenwaelder[SMTP:schoenw@ibr.cs.tu-bs.de]
> > Sent: 	Tuesday, June 20, 2000 11:34 AM
> > To: 	ramk@cisco.com
> > Cc: 	disman@dorothy.peer.com
> > Subject: 	Re: Latest Event MIB draft -
> > draft-ietf-disman-event-mib-10.txt
> > 
> > 
> > 
> > >>>>> Ram Kavasseri writes:
> > 
> > Ram> The following typos/formatting changes were made to
> > Ram> draft-ietf-disman-event-mib-09.txt. The new revision is called
> > Ram> draft-ietf-disman-event-mib-10.txt. Before posting this to
> > Ram> internet-drafts@ietf.org, I'm posting this to the disman mailing
> > Ram> list so folks can make sure all the requested changes were made:
> > 
> > Compiles fine now with smilint. No name clashes with other IETF
> > definitions detected. ;-)
> > 
> > /js
> > 
> > -- 
> > Juergen Schoenwaelder      Technical University Braunschweig
> > <schoenw@ibr.cs.tu-bs.de>  Dept. Operating Systems & Computer Networks
> > Phone: +49 531 391 3289    Bueltenweg 74/75, 38106 Braunschweig, Germany
> > Fax:   +49 531 391 5936    <URL:http://www.ibr.cs.tu-bs.de/~schoenw/>
> > 
> > 
> 


From owner-disman@dorothy.bmc.com  Fri Jun 30 14:33:47 2000
Received: from babbler.bmc.com (fw-us-hou-1.bmc.com [198.207.223.250])
	by ietf.org (8.9.1a/8.9.1a) with ESMTP id OAA23752
	for <disman-archive@odin.ietf.org>; Fri, 30 Jun 2000 14:33:46 -0400 (EDT)
Received: from dorothy.bmc.com (dorothy.bmc.com [192.146.153.65])
	by babbler.bmc.com (8.10.2/8.8.6) with ESMTP id e5UIPSo08473;
	Fri, 30 Jun 2000 13:25:28 -0500 (CDT)
Received: (from root@localhost)
	by dorothy.bmc.com (8.8.6 (PHNE_12836)/8.8.6) id LAA13313
	for disman-list; Fri, 30 Jun 2000 11:22:26 -0700 (PDT)
Received: (from rpresuhn@localhost)
	by dorothy.bmc.com (8.8.6 (PHNE_12836)/8.8.6) id LAA13302;
	Fri, 30 Jun 2000 11:21:54 -0700 (PDT)
Date: Fri, 30 Jun 2000 11:21:54 -0700 (PDT)
From: Randy Presuhn <rpresuhn@dorothy.bmc.com>
Message-Id: <200006301821.LAA13302@dorothy.bmc.com>
To: agentx@dorothy.bmc.com, disman@dorothy.bmc.com
Subject: disman and agentx lists back on-line
Mime-Version: 1.0
Content-Type: text/plain; charset=us-ascii
Content-Transfer-Encoding: 7bit
Sender: owner-disman@dorothy.bmc.com
Precedence: bulk
List-Id: IETF disman Working Group mailing list <disman@dorothy.bmc.com>
Content-Transfer-Encoding: 7bit


Hi -

We had an email problem starting late yestrday afternoon
that caused messages to the agentx and disman lists
to bounce.  It has been fixed.  If you posted anything to
either of these lists and have not seen the distributed copy
yet, please re-post.  I apologize for the inconvenience.

 -------------------------------------------------------
 Randy Presuhn           randy_presuhn@bmc.com
 Voice: +1 408 546-1006  BMC Software, Inc.  1-3141
 Fax:   +1 408 965-0359  2141 North First Street
 http://www.bmc.com/     San José, California 95131  USA
 -------------------------------------------------------
 My opinions and BMC's are independent variables.
 -------------------------------------------------------


From Randy_Presuhn@bmc.com  Fri Jun 30 17:14:51 2000
Received: from creeper.bmc.com (fw-us-hou-1.bmc.com [198.207.223.250])
	by ietf.org (8.9.1a/8.9.1a) with ESMTP id RAA26674;
	Fri, 30 Jun 2000 17:14:46 -0400 (EDT)
Received: from ec03-hou.bmc.com (ec03-hou.bmc.com [172.25.1.88])
	by creeper.bmc.com (8.10.2/8.8.6) with ESMTP id e5UKxXP12775;
	Fri, 30 Jun 2000 15:59:33 -0500 (CDT)
Received: by ec03-hou.bmc.com with Internet Mail Service (5.5.2650.21)
	id <N92PWRQW>; Fri, 30 Jun 2000 16:02:30 -0500
Message-ID: <F7E4D46ABD8FD211928E00A0C9EBD1D6020447B9@ES01-SJC.bmc.com>
From: "Presuhn, Randy" <Randy_Presuhn@bmc.com>
To: "Presuhn, Randy" <Randy_Presuhn@ec01-hou.bmc.com>
Subject: Agentx and disman lists are down
Date: Fri, 30 Jun 2000 16:00:03 -0500
MIME-Version: 1.0
X-Mailer: Internet Mail Service (5.5.2650.21)
Content-Type: text/plain;
	charset="iso-8859-1"

Hi -

Both the agentx and disman working group mailing lists
are not working correctly at this time due to email
forwarding problems in our network.  I do not know
when the problem will be fixed.  I apologize for
any inconvenience this may cause.

Randy


