Internet Draft        System Application MIB         April 30,1996


         Definitions of Managed Objects for Applications

                          April 30, 1996


              <draft-ietf-applmib-sysapplmib-02.txt>


                         Jonathan Saperia
                         BGS Systems Inc.
                         saperia@bgs.com

                         Cheryl Krupczak
                    Empire Technologies, Inc.
                      cheryl@empiretech.com

                            Rick Sturm
        Enterprise Management Professional Services, Inc.
                       sturm@emi-summit.com

                        Jonathan Weinstock
                             Bellcore
                jonathan.weinstock@cc.bellcore.com






                       Status of this Memo

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

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

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








Expires November 30, 1996                                 [Page 1]


Internet Draft        System Application MIB         April 30,1996


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 a basic set
of managed objects for fault, configuration and performance
management of applications.

This memo does not specify a standard for the Internet community.














































Expires November 30, 1996                                 [Page 2]


Internet Draft        System Application MIB         April 30,1996


2.  The SNMPv2 Network Management Framework

The SNMPv2 Network Management Framework consists of four major
components.  They are:

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

o    RFC 1902 Structure of Management Information for Version 2 of
     the Simple Network Management Protocol (SNMPv2)

o    RFC 1903 Textual Conventions for Version 2 of the Simple
     Network Management Protocol (SNMPv2)

o    RFC 1904 Conformance Statements for Version 2 of the Simple
     Network Management Protocol (SNMPv2)

o    RFC 1905 Protocol Operations for Version 2 of the Simple
     Network Management Protocol (SNMPv2)

o    RFC 1906 Transport Mappings for Version 2 of the Simple
     Network Management Protocol (SNMPv2)

o    RFC 1907 Management Information Base for Version 2 of the
     Simple Network Management Protocol (SNMPv2)

o    RFC 1908 Coexistence between Version 1 and Version 2 of the
     Internet-standard Network Management Framework


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


2.1.  Object Definitions

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










Expires November 30, 1996                                 [Page 3]


Internet Draft        System Application MIB         April 30,1996


3.  Overview

The primary purpose of computing technologies is the execution of
application software. These applications, typically specialized
collections of executables, files and interprocess communications
exist to solve business, scientific or other "problems". The
fault, performance monitoring and control of application software
across it's life on a host computer is of great economic
importance. For the purposes of our work, we define applications
as one or more units of executable code and other resources,
installed on a single host system that a manager may think of as a
single object for management purposes.


The information described by the objects in the System Application
MIB support configuration, fault and performance management of
some of the basic attributes of application software.  The
information allows for the description of applications as a
collection of executables, and files installed and executing on a
host computer.

This draft is concerned primarily with and models application
information resident on a host computer which is discoverable in a
rudimentary fashion by todays agent and operating systems
technologies. This approach was taken to insure ease and speed of
implementation, while allowing room for future growth.

We believe that this work will be followed by the subsequent
modeling and specification of management information accessible
via application instrumentation. These new "appl MIB" objects will
participate as multiple Generic Application MIB instances within
each host platform.























Expires November 30, 1996                                 [Page 4]


Internet Draft        System Application MIB         April 30,1996


4.  The Structure of the MIB

The System Application MIB structure reflects the notion of
applications which have been installed on a system and which may
contain many components some of which are executables, others are
not.

The objects are arranged into the following groups:

    -  System Application Installed Group

    -  System Application Run Group

The System Application Installed group consists of two tables. The
first, the sysApplInstalledTable exists to capture what
applications are installed on a particular host. The second, the
sysApplCfgElmTable, provides information regarding the executables
and non executable files which collectively compose the
application. This information is discoverable provided that
certain conventions are followed by administrators during the
installation of host application software.  Through these two
tables administrators will be able to determine which applications
have been installed on a system and what their constituent
components are.

The System Application Run Group: This group consists of two pairs
of tables (four tales) and seven scalars.

The first set of tables contains the sysApplRunTable and the
SysApplPastRun Table.  The sysApplRunTable contains the
application instances which are currently running on the host. An
entry is created in this table for each instance on an application
when is it started.  The sysApplPastRunTable contains table rows
corresponding to instances of applications which have previously
executed on the host. Entries to this table are made when an
application has terminated. Coincident with this, the table entry
which represents the application is removed from the
SysApplRunTable. Table rows are removed from the
SysApplPastRunTable according to values set in two scalars,
sysApplPastRunTableSizeLimit and sysApplPastRunTableTimeLimit.
These objects specify the maximum table size of the
sysApplPastRunTable as well as the maximum age of its table
entries.

A parallel structure exists for the running processes associated
with an application.

The sysApplElmtRunTable contains the process instances which are
currently running on the host.  An entry is created in this table
for each instance on a process at the time it is started.  The
sysApplElmtPastRunTable contains table rows corresponding to
instances of processes which have previously executed on the host.
Entries to this table are made when the process has terminated.


Expires November 30, 1996                                 [Page 5]


Internet Draft        System Application MIB         April 30,1996


Coincident with this, the table entry which represents the process
is removed from the SysApplElmtRunTable. Table rows are removed
from the SysApplElmtPastRunTable according to values set in two
scalars, sysApplElmtPastRunTableSizeLimit and
sysApplElmtPastRunTableTimeLimit.  These objects specify the
maximum table size of the sysApplElmtPastRunTable as well as the
maximum age of its table entries.
















































Expires November 30, 1996                                 [Page 6]


Internet Draft        System Application MIB         April 30,1996


5.  Definitions

SYSAPPL-MIB DEFINITIONS ::= BEGIN

IMPORTS
    MODULE-IDENTITY, OBJECT-TYPE,
    Integer32, TimeTicks, Counter32
        FROM SNMPv2-SMI
    DisplayString, DateAndTime
        FROM SNMPv2-TC
    MODULE-COMPLIANCE, OBJECT-GROUP
        FROM SNMPv2-CONF
    mib-2 FROM RFC1213-MIB;



-- System Application MIB

sysApplMIB MODULE-IDENTITY
    LAST-UPDATED "9604300000Z"
    ORGANIZATION "IETF Applications MIB Working Group"
    CONTACT-INFO
          "Cheryl Krupczak (WG Advisor)
           Postal: Empire Technologies, Inc.
           541 Tenth Street NW
           Suite 169
           Atlanta, GA 30318
           USA
           Phone: (770) 384-0184
           Email: cheryl@empiretech.com

           Jon Saperia (WG Co-Chair)
           Postal:  BGS Systems, Inc.
           128 Technology Center
           Waltham, MA 02254-9111
           USA
           Phone: (617) 891-0000 ext 340
           Email: saperia@bgs.com

           Rick Sturm (WG Co-Chair)
           Postal: Enterprise Management Profession Services, Inc.
           345 Norton Street
           Boulder, CO 80303
           USA
           Phone:(303)543-7304
           Email: sturm.emi-summit.com

           Jonathan A. Weinstock (WG Editor)
           Postal:  Bellcore
           444 Hoes Lane
           Piscataway, NJ 08855
           USA
           Phone: (908) 699-5862


Expires November 30, 1996                                 [Page 7]


Internet Draft        System Application MIB         April 30,1996


           Email: jonathan.weinstock@cc.bellcore.com"
    DESCRIPTION
        "The MIB module defines an application on a system platform"
    ::= { mib-2 9999  }

sysApplOBJ               OBJECT IDENTIFIER ::= { sysApplMIB 1 }
sysApplInstalled         OBJECT IDENTIFIER ::= { sysApplOBJ 1 }
sysApplRun               OBJECT IDENTIFIER ::= { sysApplOBJ 2 }
sysApplNotifications     OBJECT IDENTIFIER ::= { sysApplMIB 2 }
sysApplConformance       OBJECT IDENTIFIER ::= { sysApplMIB 3 }




-- textual conventions

    Kbytes ::= Integer32
--
-- This data type is intended as a shorthand for the representation
-- of kilobytes


-- The system installed applications group provides information
-- about packages and all of their constituent elements such as
-- executable and configuration files found on a system.

-- The system installed applications table provides information
-- software packages loaded on a system.  These packages can be
-- a combination of many different files.  Agents should provide
-- index to entry consistency across agent reboots.

sysApplInstalledTable OBJECT-TYPE
    SYNTAX      SEQUENCE OF SysApplInstalledEntry
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
        "The table describing the software installed on a
        platform."
    ::= { sysApplInstalled 1 }

sysApplInstalledEntry OBJECT-TYPE
    SYNTAX      SysApplInstalledEntry
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
        "The logical row describing installed software
        components."
    INDEX    { sysApplInstalledIndex }
    ::= { sysApplInstalledTable 1 }

SysApplInstalledEntry ::= SEQUENCE {
    sysApplInstalledIndex               Integer32,
    sysApplInstalledManufacturer        DisplayString,


Expires November 30, 1996                                 [Page 8]


Internet Draft        System Application MIB         April 30,1996


    sysApplInstalledProductName         DisplayString,
    sysApplInstalledVersion             DisplayString,
    sysApplInstalledSerialNumber        DisplayString,
    sysApplInstalledDate                DateAndTime,
    sysApplInstalledLocation            DisplayString
}

sysApplInstalledIndex OBJECT-TYPE
    SYNTAX      Integer32 (1..'7fffffff'h)
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
        "An arbitrary, small integer used only for
        indexing purposes. Generally monotonically
        increasing from 1 as new applications are installed."
    ::= { sysApplInstalledEntry 1 }

sysApplInstalledManufacturer OBJECT-TYPE
    SYNTAX      DisplayString
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "The Manufacturer of the software application."
    ::= { sysApplInstalledEntry 2 }

sysApplInstalledProductName OBJECT-TYPE
    SYNTAX      DisplayString
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "The name provided to the software application by the
        Manufacturer."
    ::= { sysApplInstalledEntry 3 }

sysApplInstalledVersion OBJECT-TYPE
    SYNTAX      DisplayString
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "The version of the product assigned by the
        manufacturer of the software."
    ::= { sysApplInstalledEntry 4 }

sysApplInstalledSerialNumber OBJECT-TYPE
    SYNTAX      DisplayString
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "The serial number of the software assigned by the
        manufacturer."
    ::= { sysApplInstalledEntry 5 }

sysApplInstalledDate OBJECT-TYPE


Expires November 30, 1996                                 [Page 9]


Internet Draft        System Application MIB         April 30,1996


    SYNTAX      DateAndTime
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "The date and time this software application was installed on
        the host."
    ::= { sysApplInstalledEntry 6 }

sysApplInstalledLocation OBJECT-TYPE
    SYNTAX      DisplayString
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
      "The path name where the executables are stored for the
      application."
    ::= { sysApplInstalledEntry 7 }


-- The sysApplCfgElem Table details the elements which comprise the
-- application defined in the sysApplInstalled Table.  Each entry in
-- this table has an index to the sysApplInstalled table. As a result
-- there may be many entries in this table for each instance in the
-- sysApplInstalled Table.

sysApplCfgElmtTable OBJECT-TYPE
    SYNTAX      SEQUENCE OF SysApplCfgElmtEntry
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
        "The table describing the application executables and non
        executables installed on a platform."
    ::= { sysApplInstalled 2 }

sysApplCfgElmtEntry OBJECT-TYPE
    SYNTAX      SysApplCfgElmtEntry
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
        "The logical row describing installed software executables and
        non executable components of an application."
    INDEX    {sysApplInstalledIndex,
                sysApplCfgElmtIndex}
    ::= { sysApplCfgElmtTable 1 }

SysApplCfgElmtEntry ::= SEQUENCE {
    sysApplCfgElmtIndex                 Integer32,
    sysApplCfgElmtName                  DisplayString,
    sysApplCfgElmtType                  INTEGER,
    sysApplCfgElmtDate                  DateAndTime,
    sysApplCfgElmtPath                  DisplayString,
    sysApplCfgElmtSize                  Kbytes,
    sysApplCfgElmtRole                  BIT STRING
}


Expires November 30, 1996                                [Page 10]


Internet Draft        System Application MIB         April 30,1996


sysApplCfgElmtIndex OBJECT-TYPE
    SYNTAX      Integer32 (1..'7fffffff'h)
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
        "An arbitrary, small integer used for indexing purposes.
         Generally monotonically increasing from 1 as new elements
         are installed in the system."
    ::= { sysApplCfgElmtEntry 1 }


sysApplCfgElmtName OBJECT-TYPE
    SYNTAX      DisplayString
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "The name of this element which is contained in the
        application."
    ::= { sysApplCfgElmtEntry 2 }

sysApplCfgElmtType OBJECT-TYPE
    SYNTAX      INTEGER {
                executable(1),
                nonexecutable(2)
                }
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "The type of element that is part of the installed
        application."
    ::= { sysApplCfgElmtEntry 3 }

sysApplCfgElmtDate OBJECT-TYPE
    SYNTAX      DateAndTime
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "The date and time that this component was installed on the
        system."
    ::= { sysApplCfgElmtEntry 4 }

sysApplCfgElmtPath OBJECT-TYPE
    SYNTAX      DisplayString
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "The full path name of this file."
    ::= { sysApplCfgElmtEntry 5}

sysApplCfgElmtSize OBJECT-TYPE
    SYNTAX      Kbytes
    MAX-ACCESS  read-only
    STATUS      current


Expires November 30, 1996                                [Page 11]


Internet Draft        System Application MIB         April 30,1996


    DESCRIPTION
      "The size of the file in Kbytes."
    ::= { sysApplCfgElmtEntry 6 }


sysApplCfgElmtRole  OBJECT-TYPE
     SYNTAX       BIT STRING   {
                    executable(0), -- An application may have one or
                            -- more executable elements.  The rest of the bits
                            -- have no meaning if the element is not executable.
                    exclusive(1), -- Only one copy of an exclusive element
                            -- may be running.
                    interesting(2), -- An application may have zero or more
                            -- interesting elements. Only tables, but all
                            -- executable show in the running tables.
                    required(3), -- An application may have zero or more
                            -- required elements. At least one must  be running
                            -- to indicate that the application is running
                            -- and healthy.
                    dependent(4) } -- An application may have zero or more
                            -- dependent elements. Dependent elements may
                            -- not be running unless required elements
                            -- are.
    MAX-ACCESS  read-write
    STATUS      current
    DESCRIPTION
        "An operator assigned value used in the determination of
        application status. This value is used by the agent to determine
        both the mapping of started processes to the initiation
        of an application, as well as to allow for a determination of
        application health."
    ::= { sysApplCfgElmtEntry 7 }

-- The sysApplRun Group contains information about applications
-- are currently running or have run on the host.
-- The sysApplRunTable contains entries for applications currently
-- executing on the platform.

sysApplRunTable OBJECT-TYPE
    SYNTAX      SEQUENCE OF SysApplRunEntry
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
        "The table describes the applications which are executing
        on the host.  Each time an application is run
        an entry is created in this table. When an application ends,
        the entry is removed from this table and placed in the
        SysApplPastRunTable."
    ::= { sysApplRun 1 }

sysApplRunEntry OBJECT-TYPE
    SYNTAX      SysApplRunEntry
    MAX-ACCESS  not-accessible


Expires November 30, 1996                                [Page 12]


Internet Draft        System Application MIB         April 30,1996


    STATUS      current
    DESCRIPTION
        "The logical row describing the applications which are
        currently running on this host.  Entries
        remain in this table until the applications end and
        are then added to the sysApplPastRunTable."
    INDEX    { sysApplRunIndex }
    ::= { sysApplRunTable   1 }

SysApplRunEntry ::= SEQUENCE {
    sysApplRunIndex                         Integer32,
    sysApplRunInstalledIndex                Integer32,
    sysApplRunLastStarted                   DateAndTime,
    sysApplRunCurrentState                  INTEGER,
    sysApplRunEnded                         DateAndTime
}

sysApplRunIndex OBJECT-TYPE
    SYNTAX      Integer32 (1..'7fffffff'h)
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
        "The index for this table. An arbitrary small integer used only
        for indexing purposes. Generally monotonically increasing
        from 1 as new applications are started on the host."
    ::= { sysApplRunEntry 1 }

sysApplRunInstalledIndex OBJECT-TYPE
    SYNTAX      Integer32
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
      "The pointer to the installed application table. An arbitrary
      small integer used only for indexing purposes."
    ::= { sysApplRunEntry 2 }


sysApplRunLastStarted OBJECT-TYPE
    SYNTAX      DateAndTime
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "The date and time that the application was last started."
    ::= { sysApplRunEntry 3 }

sysApplRunCurrentState OBJECT-TYPE
    SYNTAX      INTEGER {
                running (1),
                runnable (2), -- waiting for resource (CPU, etc.)
                waiting (3),  -- waiting for event
                exiting (4),  -- other invalid state
                other (5)
                }


Expires November 30, 1996                                [Page 13]


Internet Draft        System Application MIB         April 30,1996


    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "The current state of the running application."
    ::= { sysApplRunEntry 4 }

sysApplRunEnded OBJECT-TYPE
    SYNTAX      DateAndTime
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "The DateAndTime the application exited."
    ::= { sysApplRunEntry 5 }


-- The sysApplPastRunTable contains entries for applications
-- previously run on the platform. Entries are added to this table
-- when an application becomes inactive. Entries are remove for this
-- table when either the table size reaches a maximum as determined by
-- the sysApplRunTableSizeLimit or when an entry has aged to exceed a
-- time limit as set be sysApplPastRunTimeLimit. When table size is exceeded
-- the oldest entry as determined by the smallest sysApplPastRunIndex,
-- will be removed.

sysApplPastRunTable OBJECT-TYPE
    SYNTAX      SEQUENCE OF SysApplPastRunEntry
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
        "The table describes the applications
        have executed on the host.  Each time an application is terminated
        an entry is created in this table.  Table size is controlled
        by the sysApplPastRunTableSizeLimit object and the
        sysApplPastRunTimeLimit."
    ::= { sysApplRun 2 }

sysApplPastRunEntry OBJECT-TYPE
    SYNTAX      SysApplPastRunEntry
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
        "The logical row describing the applications which are
        have run on this host.  Entries
        remain in this table until they are rolled out according
        to the sysApplPastRunTableSizeLimit object or the
        sysApplPastRunTimeLimit object."
    INDEX    { sysApplPastRunIndex }
    ::= { sysApplPastRunTable   1 }

SysApplPastRunEntry ::= SEQUENCE {
    sysApplPastRunIndex                     Integer32,
    sysApplPastRunInstalledIndex            Integer32,
    sysApplPastRunLastStarted               DateAndTime,


Expires November 30, 1996                                [Page 14]


Internet Draft        System Application MIB         April 30,1996


    sysApplPastRunCurrentState              INTEGER,
    sysApplPastRunEnded                     DateAndTime
}

sysApplPastRunIndex OBJECT-TYPE
    SYNTAX      Integer32 (1..'7fffffff'h)
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
        "The index for this table. An arbitrary small integer
        matching the value of the removed sysApplRunIndex
        corresponding to this row."
    ::= { sysApplPastRunEntry 1 }

sysApplPastRunInstalledIndex OBJECT-TYPE
    SYNTAX      Integer32
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
      "The pointer to the installed application table. An arbitrary
      small integer used only for indexing purposes."
    ::= { sysApplPastRunEntry 2 }


sysApplPastRunLastStarted OBJECT-TYPE
    SYNTAX      DateAndTime
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "The date and time that the application was  started."
    ::= { sysApplPastRunEntry 3 }

sysApplPastRunCurrentState OBJECT-TYPE
    SYNTAX      INTEGER {
                complete (1), -- normal exit at sysApplRunEnded
                failed (2),   -- abnormal exit
                other (3)
                }
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
      "The
      exit state."
    ::= { sysApplPastRunEntry 4 }

sysApplPastRunEnded OBJECT-TYPE
    SYNTAX      DateAndTime
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "The DateAndTime the application exited."
    ::= { sysApplPastRunEntry 5 }



Expires November 30, 1996                                [Page 15]


Internet Draft        System Application MIB         April 30,1996


-- The sysApplElmtRun Table consists of entries for elements of
-- application which are running on the host
-- system.

sysApplElmtRunTable OBJECT-TYPE
    SYNTAX      SEQUENCE OF SysApplElmtRunEntry
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
        "The table describes the processes which are executing
         on the host as part of an application. It is
        possible to have multiple entries in this table for each
        application. Entries are removed from this table when the
        process terminates."
    ::= { sysApplRun 3 }

sysApplElmtRunEntry OBJECT-TYPE
    SYNTAX      SysApplElmtRunEntry
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
        "The logical row describing the processes which are
        currently running on this host as part of an
        application.  Entries remain in this table until they
        are rolled out  and moved to the sysAppElmtPastRunTable
        when the terminate."
    INDEX    { sysApplRunIndex,sysApplElmtRunIndex }
    ::= { sysApplElmtRunTable   1 }

SysApplElmtRunEntry ::= SEQUENCE {
    sysApplElmtRunIndex             Integer32,
    sysApplElmtRunElemID            Integer32,
    sysApplElmtRunHRID              Integer32,
    sysApplElmtRunTimeStarted       DateAndTime,
    sysApplElmtRunTimeEnded         DateAndTime,
    sysApplElmtRunState             INTEGER,
    sysApplElmtRunName              DisplayString,
    sysApplElmtRunParameters        DisplayString,
    sysApplElmtRunType              INTEGER,
    sysApplElmtRunCPU               TimeTicks,
    sysApplElmtRunMemory            Integer32,
    sysApplElmtRunNumTCon           Integer32,
    sysApplElmtRunNumFiles          Integer32
}

sysApplElmtRunIndex OBJECT-TYPE
    SYNTAX      Integer32
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
        "The index for this table. An arbitrary, small integer used only
        for indexing purposes. Generally monotonically increasing from
        1 as new processes start as part of an application."


Expires November 30, 1996                                [Page 16]


Internet Draft        System Application MIB         April 30,1996


    ::= { sysApplElmtRunEntry 1 }


sysApplElmtRunElemID OBJECT-TYPE
    SYNTAX      Integer32
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "The index into the installed element table. An arbitrary, small
        integer used only for indexing purposes."
    ::= { sysApplElmtRunEntry 2 }

sysApplElmtRunHRID OBJECT-TYPE
    SYNTAX      Integer32
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "The index into the Host Resources running software table."
    ::= { sysApplElmtRunEntry 3 }
sysApplElmtRunTimeStarted OBJECT-TYPE
    SYNTAX      DateAndTime
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "The time the process was started."
    ::= { sysApplElmtRunEntry 4 }

sysApplElmtRunTimeEnded OBJECT-TYPE
    SYNTAX      DateAndTime
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "The time the process ended."
    ::= { sysApplElmtRunEntry 5 }

sysApplElmtRunState OBJECT-TYPE
    SYNTAX      INTEGER {
                running (1),
                runnable (2), -- waiting for resource (CPU, etc.)
                waiting (3),  -- waiting for event
                exiting (4),  -- other invalid state
                other (5)
                }
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "The state of the running process."
    ::= { sysApplElmtRunEntry 6 }

sysApplElmtRunName OBJECT-TYPE
    SYNTAX      DisplayString
    MAX-ACCESS  read-only
    STATUS      current


Expires November 30, 1996                                [Page 17]


Internet Draft        System Application MIB         April 30,1996


    DESCRIPTION
        "The full path name of the process."
    ::= { sysApplElmtRunEntry 7 }

sysApplElmtRunParameters OBJECT-TYPE
    SYNTAX      DisplayString
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "The starting parameters for the process."
::= { sysApplElmtRunEntry 8 }

sysApplElmtRunType OBJECT-TYPE
    SYNTAX      INTEGER {
                unknown (1),
                operatingSystem (2),
                deviceDriver (3),
                application (4)
                }
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "The type of the executable."
::= { sysApplElmtRunEntry 9 }

sysApplElmtRunCPU OBJECT-TYPE
    SYNTAX      TimeTicks
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "The total CPU time of the running process."
    ::= { sysApplElmtRunEntry 10 }

sysApplElmtRunMemory OBJECT-TYPE
    SYNTAX      Integer32
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "The average memory measured in Kbytes used by this
        element."
    ::= { sysApplElmtRunEntry 11 }

sysApplElmtRunNumTCon OBJECT-TYPE
    SYNTAX      Integer32
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "The number of transport connections used by the process."
    ::= { sysApplElmtRunEntry 12 }

sysApplElmtRunNumFiles OBJECT-TYPE
    SYNTAX      Integer32
    MAX-ACCESS  read-only


Expires November 30, 1996                                [Page 18]


Internet Draft        System Application MIB         April 30,1996


    STATUS      current
    DESCRIPTION
        "The number of files open by the element."
    ::= { sysApplElmtRunEntry 13 }



-- The sysApplElmtPastRunTable consists of entries for elements of
-- application have previously executed on the host
-- system.

sysApplElmtPastRunTable OBJECT-TYPE
    SYNTAX      SEQUENCE OF SysApplElmtPastRunEntry
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
        "The table describes the processes which have previously executed
         on the host as part of an application. It is
        possible to have multiple entries in this table for each
        application. Entries are added to this table when the corresponding
        process terminates."
    ::= { sysApplRun 4 }

sysApplElmtPastRunEntry OBJECT-TYPE
    SYNTAX      SysApplElmtPastRunEntry
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
        "The logical row describing the processes which
        have run on this host as part of an
        application.  Entries are added in this table  when
        an application process terminates. They are rolled
        out either when a table limit size is reached, as
        set in sysApplElmtPastRunSizeLimit or until they
        age past a time limit as set by sysApplElmtPastRunTimeLimit."
    INDEX    { sysApplPastRunIndex,sysApplElmtPastRunIndex }
    ::= { sysApplElmtPastRunTable   1 }

SysApplElmtPastRunEntry ::= SEQUENCE {
    sysApplElmtPastRunIndex                 Integer32,
    sysApplElmtPastRunElemID                Integer32,
    sysApplElmtPastRunHRID                  Integer32,
    sysApplElmtPastRunTimeStarted           DateAndTime,
    sysApplElmtPastRunTimeEnded             DateAndTime,
    sysApplElmtPastRunState                 INTEGER,
    sysApplElmtPastRunName                  DisplayString,
    sysApplElmtPastRunParameters            DisplayString,
    sysApplElmtPastRunType                  INTEGER,
    sysApplElmtPastRunCPU                   TimeTicks,
    sysApplElmtPastRunMemory                Integer32,
    sysApplElmtPastRunNumTCon               Integer32,
    sysApplElmtPastRunNumFiles              Integer32
}


Expires November 30, 1996                                [Page 19]


Internet Draft        System Application MIB         April 30,1996


sysApplElmtPastRunIndex OBJECT-TYPE
    SYNTAX      Integer32
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
        "The index for this table. An arbitrary, small integer
        assigned by the agent equal to the corresponding sysApplElmtRunIndex
        which was removed from the sysApplElmtRunTable."
    ::= { sysApplElmtPastRunEntry 1 }


sysApplElmtPastRunElemID OBJECT-TYPE
    SYNTAX      Integer32
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "The index into the installed element table. An arbitrary, small
        integer used only for indexing purposes."
    ::= { sysApplElmtPastRunEntry 2 }

sysApplElmtPastRunHRID OBJECT-TYPE
    SYNTAX      Integer32
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "The index into the Host Resources running software table."
    ::= { sysApplElmtPastRunEntry 3 }
sysApplElmtPastRunTimeStarted OBJECT-TYPE
    SYNTAX      DateAndTime
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "The time the process was started."
    ::= { sysApplElmtPastRunEntry 4 }

sysApplElmtPastRunTimeEnded OBJECT-TYPE
    SYNTAX      DateAndTime
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "The time the process ended."
    ::= { sysApplElmtPastRunEntry 5 }

sysApplElmtPastRunState OBJECT-TYPE
    SYNTAX      INTEGER {
                completed (1),
                failed (2), --
                other (3)
                }
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "The state of ending."


Expires November 30, 1996                                [Page 20]


Internet Draft        System Application MIB         April 30,1996


    ::= { sysApplElmtPastRunEntry 6 }

sysApplElmtPastRunName OBJECT-TYPE
    SYNTAX      DisplayString
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "The full path name of the process."
    ::= { sysApplElmtPastRunEntry 7 }

sysApplElmtPastRunParameters OBJECT-TYPE
    SYNTAX      DisplayString
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "The starting parameters for the process."
::= { sysApplElmtPastRunEntry 8 }

sysApplElmtPastRunType OBJECT-TYPE
    SYNTAX      INTEGER {
                unknown (1),
                operatingSystem (2),
                deviceDriver (3),
                application (4)
                }
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "The type of the executable."
::= { sysApplElmtPastRunEntry 9 }

sysApplElmtPastRunCPU OBJECT-TYPE
    SYNTAX      TimeTicks
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "The total CPU time of the running process."
    ::= { sysApplElmtPastRunEntry 10 }

sysApplElmtPastRunMemory OBJECT-TYPE
    SYNTAX      Integer32
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "The average memory measured in Kbytes used by this
        element."
    ::= { sysApplElmtPastRunEntry 11 }

sysApplElmtPastRunNumTCon OBJECT-TYPE
    SYNTAX      Integer32
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION


Expires November 30, 1996                                [Page 21]


Internet Draft        System Application MIB         April 30,1996


        "The number of transport connections used by the process."
    ::= { sysApplElmtPastRunEntry 12 }

sysApplElmtPastRunNumFiles OBJECT-TYPE
    SYNTAX      Integer32
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "The number of files open by the element."
    ::= { sysApplElmtPastRunEntry 13 }



-- Additional Scalar objects to control table sizes

sysApplPastRunTableSizeLimit OBJECT-TYPE
    SYNTAX      Integer32
    MAX-ACCESS  read-write
    STATUS      current
    DESCRIPTION
        "The maximum size to allow the sysApplPastRunTable to
        grow before entries are removed, as viewed
        by the agent.  Entries will be
        removed on the basis of oldest  sysApplPastRunEnded
        value first."
    DEFVAL      { 500 }
    ::= { sysApplRun 5 }

sysApplPastRunTableItemsRem OBJECT-TYPE
    SYNTAX      Counter32
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        " A counter of entries removed by the agent during its lifetime
        from the sysApplPastRunTable because of table size
        limitations as set in sysApplPastRunTableSizeLimit."
    ::= { sysApplRun 6 }

sysApplPastRunTableTimeLimit OBJECT-TYPE
    SYNTAX      Integer32
    UNITS       "seconds"
    MAX-ACCESS  read-write
    STATUS      current
    DESCRIPTION
        "The minimum time in seconds which an entry
        in the sysApplPastRunTable may exist
        before it is removed."
    DEFVAL      { 3600 }
    ::= { sysApplRun 7 }

sysApplElemPastRunSizeLimit OBJECT-TYPE
    SYNTAX      Integer32
    MAX-ACCESS  read-write


Expires November 30, 1996                                [Page 22]


Internet Draft        System Application MIB         April 30,1996


    STATUS      current
    DESCRIPTION
        "The maximum size to allow the sysApplElmtPastRun table to
        grow before entries are removed as viewed
        by the agent.  Entries will be
        removed on the basis of oldest sysApplElmtPastRunTimeEnded
        value first."
    DEFVAL      { 500 }
    ::= { sysApplRun 8 }


sysApplElemPastRunTableItemsRem OBJECT-TYPE
    SYNTAX      Counter32
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "A counter of entries removed by the agent during its lifetime
        from the sysApplElemPastRunTable because of table size
        limitations as set in sysApplElemPastRunTableSizeLimit."
    ::= { sysApplRun 9 }



sysApplElemPastRunTimeLimit OBJECT-TYPE
    SYNTAX      Integer32
    UNITS       "seconds"
    MAX-ACCESS  read-write
    STATUS      current
    DESCRIPTION
        "The minimum time in seconds which an entry
        in the sysApplElemPastRunTable may exist
        before it is removed."
    DEFVAL      { 500 }
    ::= { sysApplRun 10 }



sysApplAgentPollInterval  OBJECT-TYPE
    SYNTAX      Integer32
    UNITS       "seconds"
    MAX-ACCESS  read-write
    STATUS      current
    DESCRIPTION
        "The minimum time in seconds that an agent
        will poll the status of the managed resources.
        A value of 0 indicates that their is no delay
        in the passing of information from the managed
        resources to the agent."
    DEFVAL      { 60 }
    ::= { sysApplRun 11 }





Expires November 30, 1996                                [Page 23]


Internet Draft        System Application MIB         April 30,1996


-- Conformance Macros

sysApplMIBCompliances  OBJECT IDENTIFIER ::= { sysApplConformance 1 }
sysApplMIBGroups       OBJECT IDENTIFIER ::= { sysApplConformance 2 }

sysApplMIBCompliance MODULE-COMPLIANCE
    STATUS  current
    DESCRIPTION
        "Describes the requirements for conformance to
        the System Application MIB"
    MODULE  -- this module
        MANDATORY-GROUPS { sysApplInstalledGroup,
                           sysApplRunGroup }
    ::= { sysApplMIBCompliances 1 }

sysApplInstalledGroup OBJECT-GROUP
    OBJECTS { sysApplInstalledManufacturer,
              sysApplInstalledProductName,
              sysApplInstalledVersion,
              sysApplInstalledSerialNumber,
              sysApplInstalledDate,
              sysApplInstalledLocation,
              sysApplCfgElmtName,
              sysApplCfgElmtType,
              sysApplCfgElmtDate,
              sysApplCfgElmtPath,
              sysApplCfgElmtSize,
              sysApplCfgElmtRole }
    STATUS  current
    DESCRIPTION
        "The system application installed group contains
        information about applications which have been
        installed on the host system."
    ::= { sysApplMIBGroups 1 }

sysApplRunGroup OBJECT-GROUP
    OBJECTS { sysApplRunInstalledIndex,
              sysApplRunLastStarted,
              sysApplRunCurrentState,
              sysApplRunEnded,
              sysApplPastRunInstalledIndex,
              sysApplPastRunLastStarted,
              sysApplPastRunCurrentState,
              sysApplPastRunEnded,
              sysApplElmtRunElemID,
              sysApplElmtRunHRID,
              sysApplElmtRunTimeStarted,
              sysApplElmtRunTimeEnded,
              sysApplElmtRunState,
              sysApplElmtRunName,
              sysApplElmtRunParameters,
              sysApplElmtRunType,
              sysApplElmtRunCPU,


Expires November 30, 1996                                [Page 24]


Internet Draft        System Application MIB         April 30,1996


              sysApplElmtRunMemory,
              sysApplElmtRunNumTCon,
              sysApplElmtRunNumFiles,
              sysApplElmtPastRunElemID,
              sysApplElmtPastRunHRID,
              sysApplElmtPastRunTimeStarted,
              sysApplElmtPastRunTimeEnded,
              sysApplElmtPastRunState,
              sysApplElmtPastRunName,
              sysApplElmtPastRunParameters,
              sysApplElmtPastRunType,
              sysApplElmtPastRunCPU,
              sysApplElmtPastRunMemory,
              sysApplElmtPastRunNumTCon,
              sysApplElmtPastRunNumFiles,
              sysApplPastRunTableSizeLimit,
              sysApplPastRunTableTimeLimit,
              sysApplElemPastRunSizeLimit ,
              sysApplElemPastRunTimeLimit ,
              sysApplAgentPollInterval,
              sysApplPastRunTableItemsRem,
              sysApplElemPastRunTableItemsRem  }
    STATUS  current
    DESCRIPTION
        "The system application run group contains information
        about applications and associated elements which have
        run or are currently running on the host system."
    ::= { sysApplMIBGroups 2 }

END

6.  Acknowledgements

This document was produced by the Application MIB working group.





















Expires November 30, 1996                                [Page 25]


Internet Draft        System Application MIB         April 30,1996


7.  References

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

















































Expires November 30, 1996                                [Page 26]


Internet Draft        System Application MIB         April 30,1996


8.  Security Considerations

Security issues are not discussed in this memo.




















































Expires November 30, 1996                                [Page 27]


Internet Draft        System Application MIB         April 30,1996


Table of Contents


1 Abstract ..................................................    2
2 The SNMPv2 Network Management Framework ...................    3
2.1 Object Definitions ......................................    3
3 Overview ..................................................    4
4 The Structure of the MIB ..................................    5
5 Definitions ...............................................    7
6 Acknowledgements ..........................................   25
7 References ................................................   26
8 Security Considerations ...................................   27











































Expires November 30, 1996                                [Page 28]