Internet Draft      System Application MIB      Sept. 10, 1996
 
 
        Definitions of Managed Objects for Applications
 
                         Sept. 10, 1996
 
 
             <draft-ietf-applmib-sysapplmib-03.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
                 General Instrument Corporation
                     jweinstock@gic.gi.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
 
 
 
 
 
 Expires March 10, 1997                                [Page 1]


 Internet Draft      System Application MIB      Sept. 10, 1996
 
 
 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 March 10, 1997                                [Page 2]


 Internet Draft      System Application MIB      Sept. 10, 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 from
 a systems perspective.  More specifically, the managed objects
 are restricted to information that can be determined from the
 system itself and which does not require special
 instrumentation within the applications to make the
 information available.
 
 This memo does not specify a standard for the Internet
 community.
 
 
 
 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)
 
 
 
 
 
 
 
 Expires March 10, 1997                                [Page 3]


 Internet Draft      System Application MIB      Sept. 10, 1996
 
 
 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 March 10, 1997                                [Page 4]


 Internet Draft      System Application MIB      Sept. 10, 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 configuration, fault
 detection, 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; they represent some of the basic attributes of
 application software from a systems (non-application specific)
 perspective.  The information allows for the description of
 applications as collections of executables and files installed
 and executing on a host computer.
 
 This draft is concerned primarily with, and defines a model
 for, application information resident on a host computer which
 can be determined from the system itself, and not from the
 individual applications.  This system-level view of
 applications is designed to provide information about software
 applications installed and running on the host system without
 requiring modifications and code additions to the applications
 themselves.  This approach was taken to insure ease and speed
 of implementation, while allowing room for future growth.
 
 We believe that this work will be immediately followed by work
 on a separate MIB module that will provide an application-
 level view of a single application.  This new "appl MIB" will
 define a common set of attributes that pertains to a generic
 application, but which requires instrumentation (and therefor
 modification) to the application software itself in order to
 be implemented.
 
 
 
 
 
 
 
 
 
 
 Expires March 10, 1997                                [Page 5]


 Internet Draft      System Application MIB      Sept. 10, 1996
 
 
 4.  Architecture for Application Management
 
 In the area of application management it is fully acknowledged
 and even expected that additional MIB modules will be defined
 over time to provide even greater level of detail regarding
 applications. This MIB module presents the most general case:
 a set of management objects relating to generic applications
 whose object values can be determined from the computer system
 itself and do not require instrumentation within the
 application.
 
 A finer grained level of detail is planned for the future
 "appl MIB" which will be a common set of management objects
 relating to generic applications, but which require some type
 of instrumentation in the application in order to be
 determined.  Since this new MIB module will provide a finer
 level of detail, any connection to the sysAppl MIB should be
 made by having pointers from this more detailed MIB back to
 the more generic sysAppl MIB.  Likewise, as application-
 specific MIB modules such as the HTTP MIB, etc., are developed
 over time, these more specific MIBs should reference back to
 the more generic MIBs.
 
 In all cases of MIB design, it is recommended that when
 chosing the index for a table, the arbitrary small integer
 index should be passed over in favor of a more meaningful,
 derivable value whenever possible.  A derivable value makes it
 easier for a separately implemented MIB module (possibly on a
 different sub-agent) to match the table index for a table in
 another MIB.
 
 While this MIB module does not attempt to provide every
 detailed piece of information for managing applications, it
 does provide a basic systems-level view of the applications
 and their components on a single host system.
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 Expires March 10, 1997                                [Page 6]


 Internet Draft      System Application MIB      Sept. 10, 1996
 
 
 5.  The Structure of the MIB
 
 The System Application MIB structure models application
 packages as a whole, and also models the individual elements
 (files and executables) which collectively form an
 application.  The MIB is structured to model information
 regarding installed application packages and the elements
 which make up each application package. The MIB also models
 activity information on applications (and in turn, their
 components) that are running or have previously run on the
 host system.  In modelling applications and their elements,
 this MIB module provides the necessary link for associating
 executing processes with the applications of which they are a
 part.
 
 The objects are arranged into the following groups:
 
     -  System Application Installed Group
            - sysApplInstallPkgTable
            - sysApplInstallElmtTable
 
     -  System Application Run Group
            - sysApplRunTable
            - sysApplPastRunTable
            - sysApplElmtRunTable
            - sysApplElmtPastRunTable
            - (scalars for restricting table sizes)
 
 
 As can be seen by the arrangement above, for each category,
 the MIB first treats an application package as a whole, and
 then breaks down the package to provide information about each
 of the elements (executable and non-executable files) of the
 package.
 
 
 5.1.  System Application Installed Group
 
 The System Application Installed group consists of two tables.
 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 first table,
 the sysApplInstallPkgTable, lists the application packages
 installed on a particular host. The second, the
 sysApplInstallElmtTable, provides information regarding the
 
 
 
 
 
 Expires March 10, 1997                                [Page 7]


 Internet Draft      System Application MIB      Sept. 10, 1996
 
 
 executables and non executable files, or elements, which
 collectively compose an application. This information is
 discoverable provided that certain conventions are followed by
 administrators during the installation of host application
 software.
 
 NOTE: This MIB is intended to work with applications that have
 been installed on a particular host, where "installed" means
 that the existence of the application and the association
 between an application and its component files can be
 discovered without requiring additional instrumentation of the
 application itself.
 
 
 5.2.  System Application Run Group
 
 This group models activity information for applications that
 have been invoked and are either currently running, or have
 previously run, on the host system.  Likewise, the individual
 elements of an invoked application are also modeled to show
 currently running processes, and processes that have run in
 the past.  This information is modeled using two pairs of
 tables: a pair of tables for the application run and past run,
 and a pair for the elements running and past run.  Seven
 scalars are also defined to control the size of the past run
 tables.
 
 
 
 5.2.1.  sysApplRunTable and sysApplPastRunTable
 
 The sysApplRunTable and the sysApplPastRunTable make up the
 first pair of tables.  The sysApplRunTable contains the
 application instances which are currently running on the host.
 Each time an application is invoked, a new entry is created in
 the sysApplRunTable to provide information about that
 particular invocation of the application.  An entry will
 remain in this table until the application instance
 terminates, at which time the entry will be deleted from the
 sysApplRunTable and placed in the sysApplPastRunTable.
 
 The sysApplPastRunTable maintains a history of instances of
 applications which have previously executed on the host.
 Entries to this table are made when an invoked application
 from the sysApplRunTable has terminated; the table entry which
 
 
 
 
 
 Expires March 10, 1997                                [Page 8]


 Internet Draft      System Application MIB      Sept. 10, 1996
 
 
 represents the application instance is removed from the
 SysApplRunTable and is added to the sysApplPastRunTable.
 
 Because the sysApplPastRunTable will continuously grow as
 applications are executed and terminate, two scalars are
 defined to control the ageing-out of table entries. The value
 of sysApplPastRunMaxRows specifies the maximum number of
 entries the table may contain, whilst the
 sysApplPastRunTblTimeLimit specifies the maximum age of the
 table entries.  Oldest entries are removed first.
 
 It is important to note that the sysApplRunTable and
 sysApplPastRunTable contain entries for each INVOCATION of an
 application. A single application package might be invoked
 multiple times by different users; each invocation is properly
 recorded by a separate entry in the sysApplRunTable.
 
 
 
 5.2.2.  sysApplElmtRunTable and sysApplElmtPastRunTable
 
 While the sysApplRunTable and sysApplPastRunTable focussed on
 applications as a whole, the sysApplElmtRunTable and
 sysApplElmtPastRunTable provide information regarding an
 application's executable elements, (processes), which are
 either currently executing or have executed in the past.
 
 
 The sysApplElmtRunTable contains an entry for every process
 currently running on the host.  An entry is created in this
 table for each instance of a process at the time it is
 started, and will remain in the table until the process
 terminates.  Note that in order to provide complete
 information on load on the system, this table lists EVERY
 running process, not just those processes that are running as
 part of an identified application.  However, when processes
 terminate, only those entries which are part of an identified
 application are moved to the sysApplElmtPastRunTable.
 
 
 The sysApplElmtPastRunTable maintains a history of instances
 of processes which have previously executed on the host as
 part of an application. When a process from the
 sysApplElmtRunTable terminates, the entry is moved to this
 sysApplElmtPastRunTable provided that the process was part of
 
 
 
 
 
 Expires March 10, 1997                                [Page 9]


 Internet Draft      System Application MIB      Sept. 10, 1996
 
 
 an identified application.  If the process cannot be
 associated to any 'parent' application, than it is simply
 removed from the sysApplElmtRunTable.  This allows for
 processes like 'ps' or 'grep' to show up in the Running table,
 (where they are consuming resources and are thus,
 "interesting"), but not in the Past Run table.
 
 Because the sysApplElmtPastRunTable will continuously grow as
 processes are executed and terminate, two scalars are defined
 to control the ageing-out of table entries.  The value of
 sysApplElmtPastRunMaxRows specifies the maximum number of
 entries the table may contain, whilst the
 sysApplElmtPastRunTblTimeLimit specifies the maximum age of
 the table entries.  Oldest entries are removed first.
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 Expires March 10, 1997                               [Page 10]


 Internet Draft      System Application MIB      Sept. 10, 1996
 
 
 6.  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 & current Editor)
            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
 
 
 
 
 
 Expires March 10, 1997                               [Page 11]


 Internet Draft      System Application MIB      Sept. 10, 1996
 
 
            Email: sturm.emi-summit.com
 
            Jonathan A. Weinstock (past WG Editor)
            Postal:  General Instrument Corporation
            2200 Byberry Road
            Hatboro, PA  19040
            USA
            Phone: (215) 860-6115
            Email: jweinstock@gic.gi.com"
     DESCRIPTION
         "The MIB module defines management objects that model
         applications as collections of executables and files
         installed and executing on a host system.  The MIB
         presents a system-level view of applications; i.e.,
         objects in this MIB are restricted to those attributes
         that can be obtained from the system itself without
         adding special instrumentation to the applications."
     ::= { 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
 
 
 -- sysApplInstalled Group
 -- This group provides information about application packages
 -- that have been installed on the host computer.  The group
 -- contains two tables.  The first, the sysApplInstallTable,
 -- describes the application packages, the second, the
 -- sysApplInstallElmtTable, describes the constituent elements
 -- (files and executables) which compose an application package.
 --
 
 
 
 
 
 Expires March 10, 1997                               [Page 12]


 Internet Draft      System Application MIB      Sept. 10, 1996
 
 
 -- In order to appear in this group, an application and its
 -- component files must be discoverable by the system itself,
 -- possibly through some type of software installation mechanism
 -- or registry.
 
 -- sysApplInstallPkgTable
 -- The system installed application packages table provides information
 -- on the software packages loaded on a system.  These packages can be
 -- a combination of many different files including executable and
 -- non-executable files.  Agents should provide index to entry
 -- consistency across agent reboots.
 
 sysApplInstallPkgTable OBJECT-TYPE
     SYNTAX      SEQUENCE OF SysApplInstallPkgEntry
     MAX-ACCESS  not-accessible
     STATUS      current
     DESCRIPTION
         "The table listing the software application packages
         installed on a host computer."
     ::= { sysApplInstalled 1 }
 
 sysApplInstallPkgEntry OBJECT-TYPE
     SYNTAX      SysApplInstallPkgEntry
     MAX-ACCESS  not-accessible
     STATUS      current
     DESCRIPTION
         "The logical row describing an installed application
         package."
     INDEX    { sysApplInstallPkgIndex }
     ::= { sysApplInstallPkgTable 1 }
 
 SysApplInstallPkgEntry ::= SEQUENCE {
     sysApplInstallPkgIndex               Integer32,
     sysApplInstallPkgManufacturer        DisplayString,
     sysApplInstallPkgProductName         DisplayString,
     sysApplInstallPkgVersion             DisplayString,
     sysApplInstallPkgSerialNumber        DisplayString,
     sysApplInstallPkgDate                DateAndTime,
     sysApplInstallPkgLocation           DisplayString
 }
 
 sysApplInstallPkgIndex OBJECT-TYPE
     SYNTAX      Integer32 (1..'7fffffff'h)
     MAX-ACCESS  not-accessible
     STATUS      current
 
 
 
 
 
 Expires March 10, 1997                               [Page 13]


 Internet Draft      System Application MIB      Sept. 10, 1996
 
 
     DESCRIPTION
         "An arbitrary, small integer used only for
         indexing purposes. Generally monotonically
         increasing from 1 as new applications are installed.
     Agent implementations should provide index to
     entry consistency across agent reboots."
     ::= { sysApplInstallPkgEntry 1 }
 
 sysApplInstallPkgManufacturer OBJECT-TYPE
     SYNTAX      DisplayString
     MAX-ACCESS  read-only
     STATUS      current
     DESCRIPTION
         "The Manufacturer of the software application package."
     ::= { sysApplInstallPkgEntry 2 }
 
 sysApplInstallPkgProductName OBJECT-TYPE
     SYNTAX      DisplayString
     MAX-ACCESS  read-only
     STATUS      current
     DESCRIPTION
         "The name provided to the software application package
         by the Manufacturer."
     ::= { sysApplInstallPkgEntry 3 }
 
 sysApplInstallPkgVersion OBJECT-TYPE
     SYNTAX      DisplayString
     MAX-ACCESS  read-only
     STATUS      current
     DESCRIPTION
         "The version number assigned to the application package
         by the manufacturer of the software."
     ::= { sysApplInstallPkgEntry 4 }
 
 sysApplInstallPkgSerialNumber OBJECT-TYPE
     SYNTAX      DisplayString
     MAX-ACCESS  read-only
     STATUS      current
     DESCRIPTION
         "The serial number of the software assigned by the
         manufacturer."
     ::= { sysApplInstallPkgEntry 5 }
 
 sysApplInstallPkgDate OBJECT-TYPE
     SYNTAX      DateAndTime
 
 
 
 
 
 Expires March 10, 1997                               [Page 14]


 Internet Draft      System Application MIB      Sept. 10, 1996
 
 
     MAX-ACCESS  read-only
     STATUS      current
     DESCRIPTION
         "The date and time this software application was installed on
         the host."
     ::= { sysApplInstallPkgEntry 6 }
 
 sysApplInstallPkgLocation OBJECT-TYPE
     SYNTAX      DisplayString
     MAX-ACCESS  read-only
     STATUS      current
     DESCRIPTION
       "The complete path name where the application package
       is installed.  For example, the value would be '/opt/appl1'
       if the application package was installed in the /opt/appl1
       directory."
     ::= { sysApplInstallPkgEntry 7 }
 
 
 -- sysApplInstallElmtTable
 -- The sysAppl Installed Element Table details the elements which
 -- comprise the applications defined in the sysApplInstallPkg Table.
 -- Each entry in this table has an index to the sysApplInstallPkg
 -- table to identify the application package of which it is a part.
 -- As a result, there may be many entries in this table for
 -- each instance in the sysApplInstallPkg Table.
 
 sysApplInstallElmtTable OBJECT-TYPE
     SYNTAX      SEQUENCE OF SysApplInstallElmtEntry
     MAX-ACCESS  not-accessible
     STATUS      current
     DESCRIPTION
         "The table describing the individual application package
         elements (file and executables) installed on the host computer."
     ::= { sysApplInstalled 2 }
 
 sysApplInstallElmtEntry OBJECT-TYPE
     SYNTAX      SysApplInstallElmtEntry
     MAX-ACCESS  not-accessible
     STATUS      current
     DESCRIPTION
         "The logical row describing an element of an installed
         application.  The element may be an executable or
         non-executable file."
     INDEX    {sysApplInstallPkgIndex, sysApplInstallElmtIndex}
 
 
 
 
 
 Expires March 10, 1997                               [Page 15]


 Internet Draft      System Application MIB      Sept. 10, 1996
 
 
     ::= { sysApplInstallElmtTable 1 }
 
 SysApplInstallElmtEntry ::= SEQUENCE {
     sysApplInstallElmtIndex                     Integer32,
     sysApplInstallElmtName                  DisplayString,
     sysApplInstallElmtType                  INTEGER,
     sysApplInstallElmtDate                  DateAndTime,
     sysApplInstallElmtPath                      DisplayString,
     sysApplInstallElmtSize                  Kbytes,
     sysApplInstallElmtRole                  BIT STRING,
     sysApplInstallElmtModifyDate            DateAndTime
 }
 
 sysApplInstallElmtIndex 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 on the system."
     ::= { sysApplInstallElmtEntry 1 }
 
 
 sysApplInstallElmtName OBJECT-TYPE
     SYNTAX      DisplayString
     MAX-ACCESS  read-only
     STATUS      current
     DESCRIPTION
         "The name of this element which is contained in the
         application."
     ::= { sysApplInstallElmtEntry 2 }
 
 sysApplInstallElmtType OBJECT-TYPE
     SYNTAX      INTEGER {
                 unknown(1),
                 nonexecutable(2),
                 operatingSystem(3),  -- executable
                 deviceDriver(4),     -- executable
                 application(5)       -- executable
                 }
     MAX-ACCESS  read-only
     STATUS      current
     DESCRIPTION
         "The type of element that is part of the installed
 
 
 
 
 
 Expires March 10, 1997                               [Page 16]


 Internet Draft      System Application MIB      Sept. 10, 1996
 
 
         application."
     ::= { sysApplInstallElmtEntry 3 }
 
 sysApplInstallElmtDate OBJECT-TYPE
     SYNTAX      DateAndTime
     MAX-ACCESS  read-only
     STATUS      current
     DESCRIPTION
         "The date and time that this component was installed on the
         system."
     ::= { sysApplInstallElmtEntry 4 }
 
 sysApplInstallElmtPath OBJECT-TYPE
     SYNTAX      DisplayString
     MAX-ACCESS  read-only
     STATUS      current
     DESCRIPTION
         "The full path name of this file."
     ::= { sysApplInstallElmtEntry 5}
 
 sysApplInstallElmtSize OBJECT-TYPE
     SYNTAX      Kbytes
     MAX-ACCESS  read-only
     STATUS      current
     DESCRIPTION
       "The size of the file in Kbytes."
     ::= { sysApplInstallElmtEntry 6 }
 
 
 sysApplInstallElmtRole  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
 
 
 
 
 
 Expires March 10, 1997                               [Page 17]


 Internet Draft      System Application MIB      Sept. 10, 1996
 
 
                    -- 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."
     ::= { sysApplInstallElmtEntry 7 }
 
 sysApplInstallElmtModifyDate OBJECT-TYPE
     SYNTAX      DateAndTime
     MAX-ACCESS  read-only
     STATUS      current
     DESCRIPTION
         "The date and time that this element was last modified."
     ::= { sysApplInstallElmtEntry 8 }
 
 
 -- sysApplRun Group
 -- This group models activity information for applications
 -- that have been invoked and are either currently running,
 -- or have previously run on the host system.  Likewise,
 -- the individual elements of an invoked application are
 -- also modeled to show currently running processes, and
 -- processes that have run in the past.
 
 -- sysApplRunTable
 -- The sysApplRunTable contains the application instances
 -- which are currently running on the host.  Since a single
 -- application might be invoked multiple times by different
 -- users, an entry is added to this table for each INVOCATION
 -- of an application.
 -- The table is indexed by sysApplRunInstalledIndex, sysApplRunIndex
 -- to enable managers to easily locate all invocations of
 -- a particular application package.
 
 sysApplRunTable OBJECT-TYPE
 
 
 
 
 
 Expires March 10, 1997                               [Page 18]


 Internet Draft      System Application MIB      Sept. 10, 1996
 
 
     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 invoked,
         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
     STATUS      current
     DESCRIPTION
         "The logical row describing an application which is
         currently running on this host."
     INDEX    { sysApplRunInstalledIndex, sysApplRunIndex }
     ::= { sysApplRunTable   1 }
 
 SysApplRunEntry ::= SEQUENCE {
     sysApplRunIndex                         Integer32,
     sysApplRunInstalledIndex                Integer32,
     sysApplRunStarted               DateAndTime,
     sysApplRunCurrentState                  INTEGER
 }
 
 sysApplRunIndex OBJECT-TYPE
     SYNTAX      Integer32 (1..'7fffffff'h)
     MAX-ACCESS  not-accessible
     STATUS      current
     DESCRIPTION
         "Part of 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 installed application package of which this entry
         represents a running instance.  The application package
 
 
 
 
 
 Expires March 10, 1997                               [Page 19]


 Internet Draft      System Application MIB      Sept. 10, 1996
 
 
         identified by a particular value of this index is the
         same application package as identified by the same value
         of sysApplInstallPkgIndex."
     ::= { sysApplRunEntry 2 }
 
 
 sysApplRunStarted OBJECT-TYPE
     SYNTAX      DateAndTime
     MAX-ACCESS  read-only
     STATUS      current
     DESCRIPTION
         "The date and time that the application was 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)
                 }
     MAX-ACCESS  read-only
     STATUS      current
     DESCRIPTION
         "The current state of the running application."
     ::= { sysApplRunEntry 4 }
 
 
 -- sysApplPastRunTable
 -- The sysApplPastRunTable provides a history of applications
 -- previously run on the host computer. Entries are removed from the
 -- sysApplRunTable and moved to this table when an application
 -- becomes inactive. Entries remain in this table until they
 -- are aged out when either the table size reaches a maximum as
 -- determined by the sysApplPastRunMaxRows, or when an entry
 -- has aged to exceed a time limit as set be sysApplPastRunTblTimeLimit.
 -- When aging out entries, the oldest entry, as determined by the
 -- value of sysApplPastRunTimeEnded, will be removed first.
 
 sysApplPastRunTable OBJECT-TYPE
     SYNTAX      SEQUENCE OF SysApplPastRunEntry
     MAX-ACCESS  not-accessible
     STATUS      current
     DESCRIPTION
 
 
 
 
 
 Expires March 10, 1997                               [Page 20]


 Internet Draft      System Application MIB      Sept. 10, 1996
 
 
         "A history of the applications that have previously run
         on the host computer.  An entry is moved to this table
         from the sysApplRunTable when the invoked application
         represented by the entry ceases to be running.  Entries
         remain in this table until they are aged out according
         to the limits set by sysApplPastRunMaxRows
         and sysApplPastRunTblTimeLimit."
     ::= { sysApplRun 2 }
 
 sysApplPastRunEntry OBJECT-TYPE
     SYNTAX      SysApplPastRunEntry
     MAX-ACCESS  not-accessible
     STATUS      current
     DESCRIPTION
         "The logical row describing an invocation of an application
         which was previously run and has terminated.  The entry
         is basically copied from the sysApplRunTable when the
         application instance terminates.  Hence, the entry's
         value for sysApplPastRunIndex is the same as its value was
         for sysApplRunIndex."
     INDEX    { sysApplPastRunInstalledIndex, sysApplPastRunIndex }
     ::= { sysApplPastRunTable   1 }
 
 SysApplPastRunEntry ::= SEQUENCE {
     sysApplPastRunIndex                     Integer32,
     sysApplPastRunInstalledIndex            Integer32,
     sysApplPastRunStarted                   DateAndTime,
     sysApplPastRunExitState                 INTEGER,
     sysApplPastRunTimeEnded                         DateAndTime
 }
 
 sysApplPastRunIndex OBJECT-TYPE
     SYNTAX      Integer32 (1..'7fffffff'h)
     MAX-ACCESS  not-accessible
     STATUS      current
     DESCRIPTION
         "Part of the index for this table. A 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
 
 
 
 
 
 Expires March 10, 1997                               [Page 21]


 Internet Draft      System Application MIB      Sept. 10, 1996
 
 
     DESCRIPTION
       "The installed application package that was invoked,
       run, and terminated resulting in this entry.
       The application package identified by a particular
       value of this index is the same application package
       as identified by the same value of sysApplInstallPkgIndex."
     ::= { sysApplPastRunEntry 2 }
 
 sysApplPastRunStarted OBJECT-TYPE
     SYNTAX      DateAndTime
     MAX-ACCESS  read-only
     STATUS      current
     DESCRIPTION
         "The date and time that the application was started."
     ::= { sysApplPastRunEntry 3 }
 
 sysApplPastRunExitState OBJECT-TYPE
     SYNTAX      INTEGER {
                 complete (1), -- normal exit at sysApplRunTimeEnded
                 failed (2),   -- abnormal exit
                 other (3)
                 }
     MAX-ACCESS  read-only
     STATUS      current
     DESCRIPTION
       "The state of the application instance when it terminated."
     ::= { sysApplPastRunEntry 4 }
 
 sysApplPastRunTimeEnded OBJECT-TYPE
     SYNTAX      DateAndTime
     MAX-ACCESS  read-only
     STATUS      current
     DESCRIPTION
         "The DateAndTime the application instance was determined
         to be no longer running."
     ::= { sysApplPastRunEntry 5 }
 
 -- sysApplElmtRunTable
 -- The sysApplElmtRunTable contains the process instances which
 -- are currently running on the host.  An entry is created in
 -- this table for each instance of a process at the time it is
 -- started, and will remain in the table until the process
 -- terminates.
 --
 -- The table is indexed by <sysApplElmtRunInvocID,sysApplElmtRunIndex>
 
 
 
 
 
 Expires March 10, 1997                               [Page 22]


 Internet Draft      System Application MIB      Sept. 10, 1996
 
 
 -- to make it easy to locate all running elements of a particular
 -- invoked application.
 
 
 sysApplElmtRunTable OBJECT-TYPE
     SYNTAX      SEQUENCE OF SysApplElmtRunEntry
     MAX-ACCESS  not-accessible
     STATUS      current
     DESCRIPTION
         "The table describes the processes which are
         currently executing on the host system. Each entry
         represents a running process and is associated with
         the invoked application of which it is a part, if
         possible.  Because a running application may involve
         more than one executable, 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 a process currently
         running on this host.  When possible, the entry is
         associated with the invoked application of which it
         is a part."
     INDEX    { sysApplElmtRunInvocID,sysApplElmtRunIndex }
     ::= { sysApplElmtRunTable   1 }
 
 SysApplElmtRunEntry ::= SEQUENCE {
     sysApplElmtRunInvocID           Integer32,
     sysApplElmtRunIndex             Integer32,
     sysApplElmtRunInstallID         Integer32,
     sysApplElmtRunTimeStarted       DateAndTime,
     sysApplElmtRunState             INTEGER,
     sysApplElmtRunName              DisplayString,
     sysApplElmtRunParameters        DisplayString,
     sysApplElmtRunCPU               Integer32,
     sysApplElmtRunMemory            Integer32,
     sysApplElmtRunNumTCon       Integer32,
     sysApplElmtRunNumFiles          Integer32
 }
 
 
 
 
 
 Expires March 10, 1997                               [Page 23]


 Internet Draft      System Application MIB      Sept. 10, 1996
 
 
 sysApplElmtRunInvocID OBJECT-TYPE
     SYNTAX      Integer32 (1..'7fffffff'h)
     MAX-ACCESS  not-accessible
     STATUS      current
     DESCRIPTION
         "Part of the index for this table, this value
         identifies the invocation of an application of which
         this process is a part.  Provided that the 'parent'
         application can be determined, the value of this object
         is the same value as the sysApplRunIndex for the
         corresponding application invocation in the
         sysApplRunTable.
 
         If, however, the 'parent' application cannot be
         determined, the value for this object is then '0'
         signifying that this process cannot be related back
         to an invocation of an application in the
         sysApplRunTable."
     ::= { sysApplElmtRunEntry 1 }
 
 sysApplElmtRunIndex OBJECT-TYPE
     SYNTAX      Integer32
     MAX-ACCESS  not-accessible
     STATUS      current
     DESCRIPTION
         "Part of the index for this table.  A unique value
         for each process running on the host.  Wherever
         possible, this should be the system's native, unique
         identification number."
     ::= { sysApplElmtRunEntry 2 }
 
 
 sysApplElmtRunInstallID OBJECT-TYPE
     SYNTAX      Integer32
     MAX-ACCESS  read-only
     STATUS      current
     DESCRIPTION
         "The index into the sysApplInstallElmtTable. The
         value of this object is the same value as the
         sysApplInstallElmtIndex for the application element
         of which this entry represents a running instance.
         If this process cannot be associated to an installed
         executable, the value should be '0'."
     ::= { sysApplElmtRunEntry 3 }
 
 
 
 
 
 
 Expires March 10, 1997                               [Page 24]


 Internet Draft      System Application MIB      Sept. 10, 1996
 
 
 sysApplElmtRunTimeStarted OBJECT-TYPE
     SYNTAX      DateAndTime
     MAX-ACCESS  read-only
     STATUS      current
     DESCRIPTION
         "The time the process was started."
     ::= { sysApplElmtRunEntry 4 }
 
 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 5 }
 
 sysApplElmtRunName OBJECT-TYPE
     SYNTAX      DisplayString
     MAX-ACCESS  read-only
     STATUS      current
     DESCRIPTION
         "The full path name of the process."
     ::= { sysApplElmtRunEntry 6 }
 
 sysApplElmtRunParameters OBJECT-TYPE
     SYNTAX      DisplayString
     MAX-ACCESS  read-only
     STATUS      current
     DESCRIPTION
         "The starting parameters for the process."
 ::= { sysApplElmtRunEntry 7 }
 
 sysApplElmtRunCPU OBJECT-TYPE
     SYNTAX      Integer32
     MAX-ACCESS  read-only
     STATUS      current
     DESCRIPTION
          "The number of centi-seconds of the total system's
          CPU resources consumed by this process.  Note that
 
 
 
 
 
 Expires March 10, 1997                               [Page 25]


 Internet Draft      System Application MIB      Sept. 10, 1996
 
 
          on a multi-processor system, this value may
          increment by more than one centi-second in one
          centi-second of real (wall clock) time."
     ::= { sysApplElmtRunEntry 8 }
 
 sysApplElmtRunMemory OBJECT-TYPE
     SYNTAX      Integer32
     MAX-ACCESS  read-only
     STATUS      current
     DESCRIPTION
         "The total amount of real system memory measured in
         Kbytes allocated to this process."
     ::= { sysApplElmtRunEntry 9 }
 
 sysApplElmtRunNumTCon OBJECT-TYPE
     SYNTAX      Integer32
     MAX-ACCESS  read-only
     STATUS      current
     DESCRIPTION
         "The number of transport connections currently in
         use by the process."
     ::= { sysApplElmtRunEntry 10 }
 
 sysApplElmtRunNumFiles OBJECT-TYPE
     SYNTAX      Integer32
     MAX-ACCESS  read-only
     STATUS      current
     DESCRIPTION
         "The number of files currently open by the process."
     ::= { sysApplElmtRunEntry 11 }
 
 
 -- sysApplElmtPastRunTable
 -- The sysApplElmtPastRunTable maintains a history of
 -- instances of processes which have previously executed on
 -- the host as part of an application. Upon termination
 -- of a process, an entry from the sysApplElmtRunTable is
 -- moved to this table provided that the process was part of an
 -- identified application.
 --
 -- Entries remain in this table until they are aged out when
 -- either the number of entries in the table reaches a
 -- maximum as determined by sysApplElmtPastRunMaxRows, or
 -- when an entry has aged to exceed a time limit as set by
 -- sysApplElmtPastRunTblTimeLimit.  When aging out entries,
 
 
 
 
 
 Expires March 10, 1997                               [Page 26]


 Internet Draft      System Application MIB      Sept. 10, 1996
 
 
 -- the oldest entry, as determined by the value of
 -- sysApplElmtPastRunTimeEnded, will be removed first.
 --
 -- The table is indexed by <sysApplElmtPastRunInvocID,
 -- sysApplElmtPastRunIndex> to make it easy to locate all
 -- previously executed processes of a particular invoked application.
 
 
 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 system as part of an application.
         Each entry represents a process which has previously
         executed and is associated with the invoked application
         of which it was a part.  Because an invoked application
         may involve more than one executable, it is possible
         to have multiple entries in this table for
         each application invocation. Entries are added
         to this table when the corresponding process in the
         sysApplElmtRun Table terminates."
     ::= { sysApplRun 4 }
 
 sysApplElmtPastRunEntry OBJECT-TYPE
     SYNTAX      SysApplElmtPastRunEntry
     MAX-ACCESS  not-accessible
     STATUS      current
     DESCRIPTION
         "The logical row describing a process which was
         previously executed on this host as part of an
         application.  The entry is basically copied
         from the sysApplElmtRunTable when the process
         terminates.  Hence, the entry's value for
         sysApplElmtPastRunIndex is the same as its value
         was for sysApplElmtRunIndex.  Only those
         processes which could be associated with an
         identified application are included in this table."
     INDEX    { sysApplElmtPastRunInvocID,sysApplElmtPastRunIndex }
     ::= { sysApplElmtPastRunTable   1 }
 
 SysApplElmtPastRunEntry ::= SEQUENCE {
     sysApplElmtPastRunInvocID           Integer32,
     sysApplElmtPastRunIndex                 Integer32,
 
 
 
 
 
 Expires March 10, 1997                               [Page 27]


 Internet Draft      System Application MIB      Sept. 10, 1996
 
 
     sysApplElmtPastRunInstallID             Integer32,
     sysApplElmtPastRunTimeStarted           DateAndTime,
     sysApplElmtPastRunTimeEnded             DateAndTime,
     sysApplElmtPastRunExitState                 INTEGER,
     sysApplElmtPastRunName                  DisplayString,
     sysApplElmtPastRunParameters            DisplayString,
     sysApplElmtPastRunCPU                   Integer32,
     sysApplElmtPastRunMemory                Integer32,
     sysApplElmtPastRunNumTCon               Integer32,
     sysApplElmtPastRunNumFiles              Integer32
 }
 
 sysApplElmtPastRunInvocID OBJECT-TYPE
     SYNTAX      Integer32 (1..'7fffffff'h)
     MAX-ACCESS  not-accessible
     STATUS      current
     DESCRIPTION
         "Part of the index for this table, this value
         identifies the invocation of an application of which
         the process represented by this entry was a part.
         The value of this object is the same value as the
         sysApplRunIndex for the corresponding application
         invocation in the sysApplRunTable.  If the invoked
         application as a whole has terminated, it will be the
         same as the sysApplPastRunIndex."
     ::= { sysApplElmtPastRunEntry 1 }
 
 sysApplElmtPastRunIndex OBJECT-TYPE
     SYNTAX      Integer32
     MAX-ACCESS  not-accessible
     STATUS      current
     DESCRIPTION
         "Part of the index for this table. A small integer
         assigned by the agent equal to the corresponding
         sysApplElmtRunIndex which was removed from the
         sysApplElmtRunTable."
     ::= { sysApplElmtPastRunEntry 2 }
 
 
 sysApplElmtPastRunInstallID OBJECT-TYPE
     SYNTAX      Integer32
     MAX-ACCESS  read-only
     STATUS      current
     DESCRIPTION
         "The index into the installed element table. The
 
 
 
 
 
 Expires March 10, 1997                               [Page 28]


 Internet Draft      System Application MIB      Sept. 10, 1996
 
 
         value of this object is the same value as the
         sysApplInstallElmtIndex for the application element
         of which this entry represents a previously executed
         process."
     ::= { 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 }
 
 sysApplElmtPastRunExitState OBJECT-TYPE
     SYNTAX      INTEGER {
                 completed (1),
                 failed (2), --
                 other (3)
                 }
     MAX-ACCESS  read-only
     STATUS      current
     DESCRIPTION
         "The state of the process when it exited."
     ::= { 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
 
 
 
 
 
 Expires March 10, 1997                               [Page 29]


 Internet Draft      System Application MIB      Sept. 10, 1996
 
 
     STATUS      current
     DESCRIPTION
         "The starting parameters for the process."
     ::= { sysApplElmtPastRunEntry 8 }
 
 sysApplElmtPastRunCPU OBJECT-TYPE
     SYNTAX      Integer32
     MAX-ACCESS  read-only
     STATUS      current
     DESCRIPTION
          "The last known number of centi-seconds of the total
          system's CPU resources consumed by this process.
          Note that on a multi-processor system, this value may
          increment by more than one centi-second in one
          centi-second of real (wall clock) time."
     ::= { sysApplElmtPastRunEntry 9 }
 
 sysApplElmtPastRunMemory OBJECT-TYPE
     SYNTAX      Integer32
     MAX-ACCESS  read-only
     STATUS      current
     DESCRIPTION
         "The last known total amount of real system memory
         measured in Kbytes allocated to this process before it
         terminated."
     ::= { sysApplElmtPastRunEntry 10 }
 
 sysApplElmtPastRunNumTCon OBJECT-TYPE
     SYNTAX      Integer32
     MAX-ACCESS  read-only
     STATUS      current
     DESCRIPTION
         "The last known number of transport connections
         used by the process before it terminated."
     ::= { sysApplElmtPastRunEntry 11 }
 
 sysApplElmtPastRunNumFiles OBJECT-TYPE
     SYNTAX      Integer32
     MAX-ACCESS  read-only
     STATUS      current
     DESCRIPTION
         "The last known number of files open by the
         process before it terminated."
     ::= { sysApplElmtPastRunEntry 12 }
 
 
 
 
 
 
 Expires March 10, 1997                               [Page 30]


 Internet Draft      System Application MIB      Sept. 10, 1996
 
 
 -- Additional Scalar objects to control table sizes
 
 sysApplPastRunMaxRows OBJECT-TYPE
     SYNTAX      Integer32
     MAX-ACCESS  read-write
     STATUS      current
     DESCRIPTION
         "The maximum number of entries allowed in the
         sysApplPastRunTable.  Once the number of rows in
         the sysApplPastRunTable reaches this value, an old
         entry must be aged out to make room for the new entry
         to be added.  Entries will be removed on the basis
         of oldest sysApplPastRunTimeEnded value first."
     DEFVAL      { 500 }
     ::= { sysApplRun 5 }
 
 sysApplPastRunTableRemItems OBJECT-TYPE
     SYNTAX      Counter32
     MAX-ACCESS  read-only
     STATUS      current
     DESCRIPTION
         "A counter of the number of entries removed by
         the agent during its lifetime from the sysApplPastRunTable
         because of table size limitations as set in
         sysApplPastRunMaxRows."
     ::= { sysApplRun 6 }
 
 sysApplPastRunTblTimeLimit 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 }
 
 sysApplElemPastRunMaxRows OBJECT-TYPE
     SYNTAX      Integer32
     MAX-ACCESS  read-write
     STATUS      current
     DESCRIPTION
         "The maximum number of entries allowed in the
         sysApplElmtPastRunTable.  Once the number of rows in
 
 
 
 
 
 Expires March 10, 1997                               [Page 31]


 Internet Draft      System Application MIB      Sept. 10, 1996
 
 
         the sysApplElmtPastRunTable reaches this value,
         an old entry must be aged out to make room for the new
         entry to be added.  Entries will be removed on the basis
         of oldest sysApplElmtPastRunTimeEnded value first."
     DEFVAL      { 500 }
     ::= { sysApplRun 8 }
 
 sysApplElemPastRunTableRemItems 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 sysApplElemPastRunMaxRows."
     ::= { sysApplRun 9 }
 
 sysApplElemPastRunTblTimeLimit 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 there is no delay
             in the passing of information from the managed
             resources to the agent."
     DEFVAL      { 60 }
     ::= { sysApplRun 11 }
 
 
 
 -- Conformance Macros
 
 
 
 
 
 Expires March 10, 1997                               [Page 32]


 Internet Draft      System Application MIB      Sept. 10, 1996
 
 
 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 { sysApplInstallPkgManufacturer,
               sysApplInstallPkgProductName,
               sysApplInstallPkgVersion,
               sysApplInstallPkgSerialNumber,
               sysApplInstallPkgDate,
               sysApplInstallPkgLocation,
               sysApplInstallElmtName,
               sysApplInstallElmtType,
               sysApplInstallElmtDate,
               sysApplInstallElmtPath,
               sysApplInstallElmtSize,
               sysApplInstallElmtRole,
               sysApplInstallElmtModifyDate }
     STATUS  current
     DESCRIPTION
         "The system application installed group contains
         information about applications and their constituent
         components which have been installed on the host system."
     ::= { sysApplMIBGroups 1 }
 
 sysApplRunGroup OBJECT-GROUP
     OBJECTS { sysApplRunInstalledIndex,
               sysApplRunStarted,
               sysApplRunCurrentState,
               sysApplPastRunInstalledIndex,
               sysApplPastRunStarted,
               sysApplPastRunExitState,
               sysApplPastRunTimeEnded,
               sysApplElmtRunInstallID,
               sysApplElmtRunTimeStarted,
               sysApplElmtRunState,
 
 
 
 
 
 Expires March 10, 1997                               [Page 33]


 Internet Draft      System Application MIB      Sept. 10, 1996
 
 
               sysApplElmtRunName,
               sysApplElmtRunParameters,
               sysApplElmtRunCPU,
               sysApplElmtRunMemory,
               sysApplElmtRunNumTCon,
               sysApplElmtRunNumFiles,
               sysApplElmtPastRunInstallID,
               sysApplElmtPastRunTimeStarted,
               sysApplElmtPastRunTimeEnded,
               sysApplElmtPastRunExitState,
               sysApplElmtPastRunName,
               sysApplElmtPastRunParameters,
               sysApplElmtPastRunCPU,
               sysApplElmtPastRunMemory,
               sysApplElmtPastRunNumTCon,
               sysApplElmtPastRunNumFiles,
               sysApplPastRunMaxRows,
               sysApplPastRunTableRemItems,
               sysApplPastRunTblTimeLimit,
               sysApplElemPastRunMaxRows,
               sysApplElemPastRunTableRemItems,
               sysApplElemPastRunTblTimeLimit,
               sysApplAgentPollInterval }
     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
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 Expires March 10, 1997                               [Page 34]


 Internet Draft      System Application MIB      Sept. 10, 1996
 
 
 7.  Security Considerations
 
 In order to implement this MIB, an agent must make certain
 management information available about various logical and
 physical entities within a managed system, which may be
 considered sensitive in some network environments.
 
 Therefore, a network administrator may wish to employ
 instance-level access control, and configure the Entity MIB
 access (i.e., community strings in SNMPv1 and SNMPv2C), such
 that certain instances within this MIB (e.g.,
 entLogicalCommunity, or entire entLogicalEntries,
 entPhysicalEntries, and associated mapping table entries), are
 excluded from particular MIB views.
 
 
 
 8.  Acknowledgements
 
 This document was produced by the Application MIB working
 group.
 
 
 9.  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.
 
 
 
 10.  Editor's Address
 
      Cheryl Krupczak
      Empire Technologies, Inc.
      541 Tenth Street, NW Suite 169
      Atlanta, GA 30318
      Phone: 770.384.0184
      Email: cheryl@empiretech.com
 
 
 
 
 
 
 
 
 
 
 Expires March 10, 1997                               [Page 35]


 Internet Draft      System Application MIB      Sept. 10, 1996
 
 
 Table of Contents
 
 
 1 Abstract ..............................................    3
 2 The SNMPv2 Network Management Framework ...............    3
 2.1 Object Definitions ..................................    4
 3 Overview ..............................................    5
 4 Architecture for Application Management ...............    6
 5 The Structure of the MIB ..............................    7
 5.1 System Application Installed Group ..................    7
 5.2 System Application Run Group ........................    8
 5.2.1 sysApplRunTable and sysApplPastRunTable ...........    8
 5.2.2 sysApplElmtRunTable and  sysApplElmtPastRunTable
      ....................................................    9
 6 Definitions ...........................................   11
 7 Security Considerations ...............................   35
 8 Acknowledgements ......................................   35
 9 References ............................................   35
 10 Editor's Address .....................................   35
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 Expires March 10, 1997                               [Page 36]