Internet-Draft                   WWW MIB                      March 1997


             Definitions of Managed Objects for WWW Servers

                             March 26, 1997

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

                          Carl W. Kalbfleisch
                              Verio, Inc.
                             cwk@verio.net

                           Harrie Hazewinkel
                   Joint Research Centre of the E.C.
                        harrie.hazewinkel@jrc.it

                         Juergen Schoenwaelder
                          University of Twente
                         schoenw@cs.utwente.nl





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 ftp.is.co.za (Africa), nic.nordu.net (Europe),
   munnari.oz.au (Pacific Rim), ds.internic.net (US East Coast), or
   ftp.isi.edu (US West Coast).

   Distribution of this document is unlimited. Please send comments to
   the Application MIB Working Group, <applmib@emi-summit.com>.










Expires September 1997                                          [Page 1]


Internet-Draft                   WWW MIB                      March 1997


1.  Abstract

   This memo defines an experimental portion of the Management
   Information Base (MIB) for use with network management protocols in
   the Internet Community. In particular it describes a set of managed
   objects for World Wide Web (WWW) servers. These objects include
   extensions to Network Services Monitoring MIB (NSM-MIB) [17],
   extensions to the System Application MIB (SYSAPPL-MIB) [9], error
   reporting and document storage information. Some portions of this
   information are not yet defined and will be added to this document in
   future revisions. These attributes are applicable to the HTTP
   protocol of the WWW but may also be applicable to other information
   retrieval protocols like FTP or NNTP.


2.  The SNMPv2 Network Management Framework

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

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

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

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

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



2.1.  Object Definitions

   Managed objects are accessed via a virtual information store, termed
   the Management Information Base or MIB. Objects in the MIB are
   defined using the subset of Abstract Syntax Notation One (ASN.1)
   defined in the SMI [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 September 1997                                          [Page 2]


Internet-Draft                   WWW MIB                      March 1997


3.  Notation

   This notation [## .. ##] delineates editorial text. This information
   will either be removed in the final document or replaced with real
   text at those points.


4.  A Note on Terminology

   This section defines the terminology used throughout this draft.

   o    The 'World Wide Web' (WWW) is the name of a world wide
        information system which is based on the concept of documents
        that can be linked together by embedding references to documents
        located at local or remote locations. References to a document
        are made using Uniform Resource Locators (URL) as defined in RFC
        1738 [5].

   o    A 'WWW-site' is defined as a host in the Internet that embodies
        the WWW.

   o    A 'document' is defined like a coherent piece of
        information/data.  No assumptions are made about the content or
        type.

   o    A 'Document Transport Protocol' (DTP) is defined as a generic
        name for all protocols that are allowed to perform operations on
        'documents' stored on WWW-sites.

   o    A 'Uniform Resource Locator' (URL) is defined as a formatted
        string representation for a 'document' available via the
        Internet.  The 'URL' maps onto a certain 'DTP' and 'WWW-site' of
        where and how to retrieve a 'document'.  For the syntax and
        semantics of the string representation is referred to RFC 1630
        [6] and RFC 1738 [5]

   o    A 'request' is defined as a protocol operation which is targeted
        to a 'document' and invokes an action on the target document.
        The 'request type' specifies the action that should be performed
        and a 'request' can have a document associated to it.

   o    A 'response' is defined as a protocol operation which is
        returned as a result of a previous (and associated) request. The
        'response status' indicates if the requested action was
        successful or if errors occurred. A 'response' can have a
        document associated to it.






Expires September 1997                                          [Page 3]


Internet-Draft                   WWW MIB                      March 1997


   o    An 'application' is defined 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.

   o    A 'networked application' is defined as an application type
        which is not necessarily installed an a single host, but makes
        use of an underlying transport protocol in order to behave as a
        single object in the eyes of an operator.

   o    A 'server' is defined as the networked application invoking the
        DTP operations. A 'server' provides access facility to
        'documents' and/or storage facility of 'documents'. The
        'document' resides on locally accessible disks or in
        applications processing the DTP operations.

   o    A 'client' is defined as the networked application invoking the
        DTP operations. A 'client' issues the 'requests' and interprets
        the 'responses'.

   o    A 'proxy' is defined as a networked application acting both as a
        server and a client for the purpose of making request for other
        clients. 'Requests' and 'responses' are passed by the 'proxy'
        with possible mapping between different DTP's. The 'proxy
        doesn't change the 'document' transferred.

   o    A 'caching proxy' is defined as a proxy with the capability of
        locally storing 'responses' to associated 'requests' in order to
        respond with the local stored 'response' to the associated
        'request'.

   o    An 'entity' is defined as a 'server', a 'client', a 'proxy' or a
        'caching proxy' which can be accessed by an unique transport
        address.


5.  Introduction

   The World Wide Web (WWW) is a network of information, accessible via
   a simple easy to use interface. The information is often presented in
   HyperText and/or multi-media. The information is provided by servers
   which are located all around the world and are linked to each other
   via hyperlinks.

   The protocol these servers listen to is the Hypertext Transfer
   Protocol performing the actual transfer of the information.  The
   usability of the web depends largely on the performance of these





Expires September 1997                                          [Page 4]


Internet-Draft                   WWW MIB                      March 1997


   servers. WWW servers are typically monitored through log files. This
   becomes a difficult task when a single organization is responsible
   for a number of servers. Since many organizations currently use the
   Internet Standard SNMP to manage their network devices, it is
   desirable to treat these WWW servers as additional devices within
   this framework. This will allow a single Network Management Station
   (NMS) to automate the management of a number of WWW servers as well
   as the entire enterprise. Defining a standard for this purpose allows
   a single management application to manage a number of servers from a
   variety of vendors.  Additionally, a formal definition of what has to
   be managed and how to manage it tends to lead to integrated and
   improved performance and fault management.


6.  WWW Entities

   The focus of this MIB is the management of WWW entities. These
   entities are servers, clients and proxies which communicate with each
   other using the HyperText transfer Protocol (HTTP). This is a
   stateless protocol based on the Client/ Server paradigm. Therefore,
   this MIB includes WWW Server, client and proxy role of the WWW
   entity. The following section describe what is meant by server,
   client and proxy entities.

   Due to the similarity of HTTP to other information retrieval
   protocols, it is anticipated that this MIB may be directly useful to
   the management of applications processing other types of protocols
   such ftp, nntp, gopher and wais. An appendix is provided to describe
   how such application of this MIB might be made to other protocols.


6.1.  WWW Server

   A WWW server is a proprietor of a general store of information. It
   waits for a client to come with a request for information and then
   returns the requested information to the client.


6.2.  WWW Client

   A WWW client, or also called a browser, is a application which can
   request information from a server and present the returned
   information in the appropriate format. Whenever, the client
   application cannot display the proper format of the retrieved
   information helper applications assist the WWW client with presenting
   the information.






Expires September 1997                                          [Page 5]


Internet-Draft                   WWW MIB                      March 1997


6.3.  WWW Proxy

   Proxies are used to provide transformations of information passed
   between systems/ applications. The proxies are inside the chain of
   the client and the server handling the request for the operator.
   That server is not necessarily a WWW server, but can also be an other
   type of application providing information requested. Such an
   application can be, for instance, a database which can be examined
   with SQL. In this particular case the proxy transfers the HTTP-
   request into SQL request and performs the other way around on the SQL
   respond by transferring it into an HTTP-request. Another way of using
   the proxy is to create some extra fire-wall whereby the proxy takes
   care of security issues. Although, this is not a real proxy.

   To have useful management information about proxies the MIB
   definition contains objects for outgoing and incoming of any
   particular request or response. Derived information from these so
   called low-level values are dependent on the use. For instance, if
   request are transformed into database requests you can have
   information on successful transformations. Whenever the proxy is used
   inside the fire-wall you can see how many attempts of breaking the
   fire-wall were made. This last one can mean there is someone trying
   to break a way into your network.


6.4.  WWW Cached Proxy

   A special kind of proxies are the cached proxies. They are not always
   requesting information from the server lying behind. The cache
   contains already information made by earlier requests. The cached
   proxy uses that information to return the appropriate information
   without asking the real information provider.

   The useful network management information is here to know how many
   requests were already inside the cache of the proxy. This can also be
   explained as the so called 'hits/miss'-ratio. This ratio is not
   contained explicitly by this MIB. Instead, the ratio can be
   calculated by the two objects incoming requests and outgoing requests
   or even by the responses.

   [## perhaps some additional attributes are also necessary to fully
   cover proxy. ##]










Expires September 1997                                          [Page 6]


Internet-Draft                   WWW MIB                      March 1997


7.  Relationship to other Standards Efforts

   WWW servers are seen as a specific type of generic application as
   well as a specific type of networked application. For this reason,
   their management can be viewed either in terms of the operational
   model of the SYSAPPL-MIB [9] or the service model of the NSM-MIB
   [17]. Since organizations have members of their staff interested in
   one and/or both of these models, this MIB is designed to address
   viewing the WWW server from one and/or both models simultaneously.

   These attributes are intended to address the requirements specified
   in the document "Applicability of Standards Track MIBs to Management
   of World Wide Web Servers" [8].


7.1.  Relationship to NSM-MIB

   The Network Services Monitoring MIB [17] is defined as the base set
   of attributes for managing network applications. The MIB relies on a
   distinguished name to define what an instance of the applTable is. In
   addition, it is not possible to learn from an independently developed
   sub-agent which indexes correspond to which wwwEntities.  For these
   reasons, no relationship is defined to NSM-MIB. Instead, this MIB
   defines a base set of attributes for a service view of the WWW Server
   and relates those attributes to the SYSAPPL-MIB framework.


7.2.  Relationship to SYSAPPL-MIB and APPL-MIB

   The SYSAPPL-MIB [9] defines attributes for management of applications
   which can be realized without instrumenting an application. The APPL-
   MIB [10] extends that framework to include additional attributes
   which will require instrumentation. This MIB extends the framework
   again with attributes specific to WWW.


7.3.  Document relation to sysApplInstall

   This MIB treats documents on the WWW server as packages installed on
   the server. Any collection of documents can be defined as a package.
   The wwwDocInstallPkg and wwwDocInstallElmt attributes provide details
   of a document on the server.

   [## it has been noted that relationship to sysApplInstall may be
   difficult, if not impossible, to implement on some platforms because
   it may require root access to access the data repository for the
   operating system. We should investigate the feasibility of





Expires September 1997                                          [Page 7]


Internet-Draft                   WWW MIB                      March 1997


   implementation. ##]


7.4.  Usage example for NSM-MIB to SYSAPPL-MIB relationship

   [## note that the relationship to NSM-MIB has been removed and that
   the wwwEnity table is now indexed by an independent attribute.  This
   relationship described below and defined in the application mib is
   still necessary and useful to relate the service and implementation
   views. We need to adjust the naming to remove NSM-MIB from this
   portion of the text. ##]

   The nsmToSysApplElmtRunTable is defined in the APPL-MIB to relate
   NSM-MIB and SYSAPPL-MIB. The relationship between services defined in
   the NSM-MIB and the applications and elements implementing them in
   the SYSAPPL-MIB/APPL-MIB framework depends on the implementation of
   the software. The manager needs to know about this so that a
   management application can understand the ramification of such things
   that effect instances in the various tables.

   WWW servers supporting "virtual hosts" on a single machine may
   implement the NSM-MIB and SYSAPPL-MIB components quite differently.
   Two such implementations are Apache and Netscape.

   Apache implements a set of processes each capable of servicing
   requests for any of the virtual domains configured for the host.  In
   comparison, the Netscape server implements a set of processes for
   each virtual domain.

   So if a machine were configured as the virtual domain servers for
   www.a.com and www.b.com, then the following entries in NSM-MIB and
   SYSAPPL-MIB would make sense:

   Apache

   applTable
       1) www.a.com
       2) www.b.com

   sysApplRunTable
       1) httpd

   sysApplElmtRunTable
       1.1-1.N (where N is max simultaneous requests)

   Netscape






Expires September 1997                                          [Page 8]


Internet-Draft                   WWW MIB                      March 1997


   applTable
       1) www.a.com
       2) www.b.com

   sysApplRunTable
       1) httpd
       2) httpd

   sysApplElmtRunTable
       1.1 - 1.N ( N is max simultaneous for www.a.com)
       2.1 - 2.M ( M is max simultaneous for www.a.com)

   With the definition of the nsmToSysApplElmtRunTable, the
   relationships between the applTable and sysApplRunElmtTable can be
   defined.  If N and M are both fixed to 2, then the Apache and
   Netscape examples above would have the following entries in the
   nsmToSysApplElmtRunTable:

   NOTE:  Entries in the following tables are of the form:

         index) applIndex <-> sysApplRunIndex.sysAppRunElmtIndex

   Apache
         nsmToSysApplElmtRunTable
                 1) 1 <-> 1.1
                 2) 1 <-> 1.2
                 3) 2 <-> 1.1
                 4) 2 <-> 1.2

   Netscape
                 1) 1 <-> 1.1
                 2) 1 <-> 1.2
                 3) 2 <-> 2.1
                 4) 2 <-> 2.2

   The management application would read this table.  It would determine
   if non-unique sysApplRunIndex.sysAppRunElmtIndex occur for different
   values of applIndex and if so, know that control of those entries
   would also effect the other entries.


8.  Structure of the MIB

   This document defines a MIB for management of WWW servers.  The MIB
   has the following portions:







Expires September 1997                                          [Page 9]


Internet-Draft                   WWW MIB                      March 1997


   o    Extensions to NSM-MIB [17]

   o    Extensions to SYSAPPL-MIB [9] framework

   o    error reporting

   o    document storage and statistics

   o    relationships to other MIBs


8.1.  The systems group

   The System group consists of a table describing all the entities
   operated by this host. The table contains not only basic network
   management information for (potentially) multiple entities running on
   a single host, but also information for all entities within virtual
   domains of the host. The columnar objects in the table can be divided
   into two main groups:

   1.   global administrative information of the entity, such as entity
        contact person, and

   2.   network information, such as the transfer protocol.


8.2.  The Statistics group

   The statistics group provides network management information about
   the traffic received or transmitted by an entity. This group contains
   all network traffic related counters and consists of five tables:

   o    The wwwSummaryTable contains a set of network traffic related
        counters. The table provides a summarization of the network
        traffic which is also found in the request and response tables
        as well as counters of discarded and unknown incoming traffic.
        It is well recognized that certain variables are redundant with
        respect to the request and response tables, but they are added
        to provide an operator a quick network overview and reduce SNMP
        network traffic.

   o    The wwwRequestInTable contains the set of detailed information
        of incoming requests. Here every particular request type is
        counted separately.

   o    The wwwRequestOutTable contains the set of detailed information
        of outgoing requests. Here every particular request type is





Expires September 1997                                         [Page 10]


Internet-Draft                   WWW MIB                      March 1997


        counted separately.

   o    The wwwResponseInTable contains the set of detailed information
        of incoming responses. Here every particular response type is
        counted separately.

   o    The wwwResponseOutTable contains the set of detailed information
        of outgoing responses. Here every particular response type is
        counted separately.


8.3.  The Document group

   The document group contains the management information about the
   accessed documents. The group consists of the following tables:

   o    The wwwDocNameTable provides a means for fast indexing to an
        entry into the document table given the name of the document.

   o    The wwwDocTable defines the attributes maintained about a given
        document. The statistics are defined based on the view of the
        document from the service. The wwwDocInstallPkg and
        wwwDocInstallElmt are provided to map to a file on the servers
        disk and provide information via the SYSAPPL-MIB framework on
        the specifics of the file.

   o    The wwwDocFilterTable is provided so that the manager can
        configure which documents are stored into the other two tables.
        The filtering is based on regular expressions [## need to define
        reference ##]. This allows the manager to customize the
        statistics that are gathered to the most relevant documents that
        he is interested in.


8.4.  The Error group

   [## TBD ##]


8.5.  The Application group

   The application group defines those attributes which extend the
   SYSAPPL-MIB and APPL-MIB framework for the WWW MIB. For each table in
   the SYSAPPL-MIB, a table is defined utilizing the defined indexing
   scheme to extend the table for WWW specific attributes.

   [## additional sections can be added here when we define attributes





Expires September 1997                                         [Page 11]


Internet-Draft                   WWW MIB                      March 1997


   within the skeleton tables ##]


8.6.  The Relation group

   This group of objects defines how this MIB relates to other MIBs.


9.  Definitions

   WWW-MIB DEFINITIONS ::= BEGIN

   IMPORTS
       sysApplInstallPkgIndex,
       sysApplInstallElmtIndex,
       sysApplRunIndex,
       sysApplPastRunIndex,
       sysApplElmtRunIndex,
       sysApplElmtPastRunIndex,
       sysApplElmtRunInvocID,
       sysApplElmtPastRunInvocID
           FROM SYSAPPL-MIB

       ZeroBasedCounter32,
       TimeFilter
           FROM RMON2-MIB

       mib-2,
       MODULE-IDENTITY,
       OBJECT-TYPE,
       Counter32,
       Integer32,
       Unsigned32
           FROM SNMPv2-SMI

       TEXTUAL-CONVENTION,
       DisplayString,
       TimeStamp,
       DateAndTime,
       RowStatus
           FROM SNMPv2-TC

       MODULE-COMPLIANCE,
       OBJECT-GROUP
           FROM SNMPv2-CONF;

   wwwMIB MODULE-IDENTITY





Expires September 1997                                         [Page 12]


Internet-Draft                   WWW MIB                      March 1997


       LAST-UPDATED "9703260000Z"
       ORGANIZATION "Application MIB Working Group"
       CONTACT-INFO
           "        Carl W. Kalbfleisch

            Postal: Verio, Inc.
                    1950 Stemmons Freeway
                    Suite 2026 - INFOMART
                    Dallas, TX 75207
                    US

               Tel: +1 972 238-8303
               Fax: +1 214 672-7275

            E-mail: cwk@verio.net

                    Harrie Hazewinkel

            Postal: MUSIQ/DESIRE/CEO Program
                    Centre for Earth Observation
                    Institute for Space Applications
                    Joint Research Centre of the E.C.
                    TP. 950
                    Ispra 21020 (VA) Italy

               Tel: +39+(0)332+789384
               Fax: +39+(0)332+785500

            E-mail: harrie.hazewinkel@jrc.it

                    Juergen Schoenwaelder

            Postal: Computer Science Department
                    University of Twente
                    P.O. Box 217, NL-7500 AE Enschede
                    The Netherlands.

               Tel: +31-53-489-3678
               Fax: +31-53-489-3247

            E-mail: schoenw@cs.utwente.nl"
       DESCRIPTION
           "The MIB module for WWW entities. The MIB is named WWW MIB
            although it should be applicable to include a wide family
            of 'Networked Information Retrieval' protocols such as http,
            nntp, ftp, gopher and wais."






Expires September 1997                                         [Page 13]


Internet-Draft                   WWW MIB                      March 1997


       REVISION "9703260000Z"
       DESCRIPTION
           "Removed wwwEntityProtocolVersion. Change sytax of
            wwwEntityUpTime. Change index of wwwDocTable. Fix import
            for mib-2. Change description of wwwEntityLastTime. Change
            description for wwwEntityIndex. Change wwwEntityIndex to
            Unsigned32. Change wwwDocInstallPkg and wwwDocInstallElmt
            to Unsigned32 to align with change to SYSAPPL-MIB. Change
            INDEX clause for wwwDocNameEntry to use IMPLIED. Removed
            the SMICng include file. Removed the "Done List" appendix.
            Replaced the protocol mappings section with a shorter
            version. Removed the HTTP specific section from the main
            text."

       REVISION "9701300000Z"
       DESCRIPTION
           "Removed wwwEntityAddress, wwwDocFirstAccessTimeStamp,
            wwwDocInBytes and wwwDocInCount. Rename wwwDocOutBytes to
            wwwDocBytes and wwwDocOutCount to wwwDocCount. Changed
            description of wwwDocStatus. Add separate indexes for request
            and response in and out tables."

       REVISION "9701080000Z"
       DESCRIPTION
           "Remove usage of applIndex. Split request/response tables."

       REVISION "9611190000Z"
       DESCRIPTION
           "Add skeleton tables for extending SYSAPPL-MIB framework
            within the wwwAppl branch."

       REVISION "9609240000Z"
       DESCRIPTION
           "Update a number of descriptions to make MIB less www specific
            and more general. Remove wwwEntityObjectID. Move wwwDocNamePkg
            and wwwDocNameElmt to wwwDocInstallElmt and wwwDocInstallPkg
            in wwwDocTable."

       REVISION "9609230000Z"
       DESCRIPTION
           "Update a number of descriptions to make MIB less www
            specific and more general. Changed names of Header/Data
            byte attributes to Control/Content byte attributes."

       ::= { mib-2 8080 }

   --





Expires September 1997                                         [Page 14]


Internet-Draft                   WWW MIB                      March 1997


   --  Object Identifiers for the www-MIB
   --
   wwwMIBObjects     OBJECT IDENTIFIER ::= { wwwMIB 1 }
   wwwMIBConformance OBJECT IDENTIFIER ::= { wwwMIB 2 }
   wwwMIBCompliances OBJECT IDENTIFIER ::= { wwwMIBConformance 1 }
   wwwMIBGroups      OBJECT IDENTIFIER ::= { wwwMIBConformance 2 }

   --
   -- Textual Conventions
   --
   WwwRequestType ::= TEXTUAL-CONVENTION
       STATUS      current
       DESCRIPTION
           "The WwwRequestType describes the types of requests.
            The value of this type is exactly the same textual
            identification of request types used in the information
            transport protocol.

            For the proper values is referred to the specific
            protocol specification."
       SYNTAX      DisplayString (SIZE (1..40))


   WwwResponseType ::= TEXTUAL-CONVENTION
       STATUS      current
       DESCRIPTION
           "The WwwResponseType defines the different response values
            used by information transport protocols.
            The value of this type are the 3-digit codes used in the
            information transport protocol.

            For the proper values is referred to the specific
            protocol specification."
       SYNTAX      INTEGER (100..999)

   WwwEntityType ::= TEXTUAL-CONVENTION
       STATUS      current
       DESCRIPTION
           "The type of the wwwEntity."
       SYNTAX      INTEGER {
                       wwwEntityTypeServer(1),
                       wwwEntityTypeClient(2),
                       wwwEntityTypeProxy(3),
                       wwwEntityTypeCachingProxy(4),
                       wwwEntityTypeOther(5)
                   }






Expires September 1997                                         [Page 15]


Internet-Draft                   WWW MIB                      March 1997


   WwwEntityOperStatus ::= TEXTUAL-CONVENTION
       STATUS      current
       DESCRIPTION
           "The operational status of the wwwEntity. 'down'
            indicates that the wwwEntity is not available.
            'running' indicates that the wwwEntity is operational
            and available. 'halted' indicates that the wwwEntity
            is operational but not available.  'congested'
            indicates that the wwwEntity is operational but no
            additional inbound associations can be accommodated.
            'restarting' indicates that the wwwEntity is currently
            unavailable but is in the process of restarting and
            will be available soon."
       SYNTAX      INTEGER {
                       down(1),
                       running(2),
                       halted(3),
                       congested(4),
                       restarting(5)
                   }

   --
   -- The following textual conventions are used for document
   -- storage.
   --
   WwwDocType ::= TEXTUAL-CONVENTION
       STATUS      current
       DESCRIPTION
           "This data type is used to describe the document type.
            It differentiates between 'static' and 'dynamic'
            documents. A document is said to be 'static' if subsequent
            accesses of the same document cause the same data to
            be sent to the requester. The document is not changed
            during the processing of the request by the server and
            transport towards the client. A document is said to be
            'dynamic' if subsequent accesses of the file may produce
            various response data depending on various input
            parameters or run-time conditions."
       SYNTAX      INTEGER {
                       wwwDocStatic (1),
                       wwwDocDynamic (2)
                   }

   WwwDocName ::= TEXTUAL-CONVENTION
       STATUS      current
       DESCRIPTION
           "The server relative name of a document. If the URL were





Expires September 1997                                         [Page 16]


Internet-Draft                   WWW MIB                      March 1997


            http://www.x.org/standards/search/search.cgi?string=test
            then the value of this textual convention would resolve
            to '/standards/search/search.cgi'."
       SYNTAX      DisplayString

   WwwDocIndex ::= TEXTUAL-CONVENTION
       STATUS      current
       DESCRIPTION
           "This data type is used to index documents. Index values
            are monotonically increasing from 1. Index values are
            not reused unless the value wraps. This means that if a
            documents entry in the table is deleted, then re-added in
            the document table because it is accessed again, then the
            document will have a new index value."
       SYNTAX      INTEGER (1..2147483647)

   --
   -- The www System Group
   --
   -- The www System group contains information about the www protocol
   -- entities.
   --
   wwwSystem OBJECT IDENTIFIER ::= { wwwMIBObjects 1 }

   wwwEntityTable OBJECT-TYPE
       SYNTAX      SEQUENCE OF WwwEntityEntry
       MAX-ACCESS  not-accessible
       STATUS      current
       DESCRIPTION
           "The table of the entities present on the system."
       ::= { wwwSystem 1 }

   wwwEntityEntry OBJECT-TYPE
       SYNTAX      WwwEntityEntry
       MAX-ACCESS  not-accessible
       STATUS      current
       DESCRIPTION
           "Details of a particular entity which can be a
            Server, a Client, a Proxy or a Caching-Proxy."
       INDEX       { wwwEntityIndex }
       ::= { wwwEntityTable 1 }

   WwwEntityEntry ::= SEQUENCE {
       wwwEntityIndex              Unsigned32,
       wwwEntityDescription        DisplayString,
       wwwEntityContact            DisplayString,
       wwwEntityProtocol           OBJECT IDENTIFIER,





Expires September 1997                                         [Page 17]


Internet-Draft                   WWW MIB                      March 1997


       wwwEntityName               DisplayString,
       wwwEntityType               WwwEntityType,
       wwwEntityUptime             TimeStamp,
       wwwEntityOperStatus         WwwEntityOperStatus,
       wwwEntityLastChange         TimeStamp
   }

   wwwEntityIndex OBJECT-TYPE
       SYNTAX      Unsigned32 (1..'ffffffff'h)
       MAX-ACCESS  not-accessible
       STATUS      current
       DESCRIPTION
           "An integer used for indexing purposes. Generally
            monotonically increasing from 1 as new entities
            are initialized.

            The value for each entity must remain constant
            from one re-initialization of the network management
            agent to the next re-initialization."
       ::= { wwwEntityEntry 1 }

   wwwEntityDescription OBJECT-TYPE
       SYNTAX      DisplayString
       MAX-ACCESS  read-only
       STATUS      current
       DESCRIPTION
           "Textual description of the entity.  This shall include
            at least the vendor and version number of the application.
            In a minimal case, this might be the Product Token (see RFC
            2086) for the application."
       ::= { wwwEntityEntry 2 }

   wwwEntityContact OBJECT-TYPE
       SYNTAX      DisplayString
       MAX-ACCESS  read-only
       STATUS      current
       DESCRIPTION
           "The textual identification of the contact person
            for this entity, together with information on how
            to contact this person.  For instance, this might
            be 'webmaster@domain.name'."
       ::= { wwwEntityEntry 3 }

   wwwEntityProtocol OBJECT-TYPE
       SYNTAX      OBJECT IDENTIFIER
       MAX-ACCESS  read-only
       STATUS      current





Expires September 1997                                         [Page 18]


Internet-Draft                   WWW MIB                      March 1997


       DESCRIPTION
           "An identification of the primary protocol in use by this
            entity. For Internet applications, the IANA maintains
            a registry of the OIDs which correspond to well-known
            applications.  If the application protocol is not listed
            in the registry, an OID value of the form {applTCPProtoID
            port} or {applUDProtoID port} are used for TCP-based and
            UDP-based protocols, respectively. In either case 'port'
            corresponds to the primary port number being used by the
            protocol."
       ::= { wwwEntityEntry 4 }

   wwwEntityName OBJECT-TYPE
       SYNTAX      DisplayString
       MAX-ACCESS  read-only
       STATUS      current
       DESCRIPTION
           "The fully qualified domain name by which this entity is
            known.  This may be different than applName since that
            value is only a textual name for the application."
       ::= { wwwEntityEntry 5 }

   wwwEntityType OBJECT-TYPE
       SYNTAX      WwwEntityType
       MAX-ACCESS  read-only
       STATUS      current
       DESCRIPTION
           "Identification of the role of the entity."
       ::= { wwwEntityEntry 6 }

   wwwEntityUptime OBJECT-TYPE
       SYNTAX      TimeStamp
       MAX-ACCESS  read-only
       STATUS      current
       DESCRIPTION
           "The value of sysUpTime at the time the wwwEntity
            was last initialized.  If the application was
            last initialized prior to the last initialization of the
            network management subsystem, then this object contains
            a zero value."
       ::= { wwwEntityEntry 7 }

   wwwEntityOperStatus OBJECT-TYPE
       SYNTAX      WwwEntityOperStatus
       MAX-ACCESS  read-only
       STATUS      current
       DESCRIPTION





Expires September 1997                                         [Page 19]


Internet-Draft                   WWW MIB                      March 1997


           "Indicates the operational status of the wwwEntity."
       ::= { wwwEntityEntry 8 }

   wwwEntityLastChange OBJECT-TYPE
       SYNTAX      TimeStamp
       MAX-ACCESS  read-only
       STATUS      current
       DESCRIPTION
           "The value of wwwEntityUpTime at the time the wwwEntity
            entered its current operational state.  If
            the current state was entered prior to the last
            initialization of the local network management subsystem,
            then this object contains a zero value."
       ::= { wwwEntityEntry 9 }


   -- The www Statistics Group
   --
   -- The www Statistics group contains information concerning the
   -- utilization of the www protocol entity.

   wwwStatistics OBJECT IDENTIFIER ::= { wwwMIBObjects 2 }

   --
   -- wwwSummaryTable
   --
   --
   wwwSummaryTable OBJECT-TYPE
       SYNTAX      SEQUENCE OF WwwSummaryEntry
       MAX-ACCESS  not-accessible
       STATUS      current
       DESCRIPTION
           "The table providing overview statistics for the
            entities on this system."
       ::= { wwwStatistics 1 }

   wwwSummaryEntry OBJECT-TYPE
       SYNTAX      WwwSummaryEntry
       MAX-ACCESS  not-accessible
       STATUS      current
       DESCRIPTION
           "Overview statistics for an individual entity."
       INDEX       { wwwEntityIndex }
       ::= { wwwSummaryTable 1 }

   WwwSummaryEntry ::= SEQUENCE {
       wwwSummaryInRequests        Counter32,





Expires September 1997                                         [Page 20]


Internet-Draft                   WWW MIB                      March 1997


       wwwSummaryOutRequests       Counter32,
       wwwSummaryRequestErrors     Counter32,
       wwwSummaryRequestDiscards   Counter32,
       wwwSummaryInResponses       Counter32,
       wwwSummaryOutResponses      Counter32,
       wwwSummaryResponseDiscards  Counter32,
       wwwSummaryInUnknowns        Counter32,
       wwwSummaryInControlBytes    Counter32,
       wwwSummaryInContentBytes    Counter32,
       wwwSummaryOutControlBytes   Counter32,
       wwwSummaryOutContentBytes   Counter32
   }

   wwwSummaryInRequests OBJECT-TYPE
       SYNTAX      Counter32
       MAX-ACCESS  read-only
       STATUS      current
       DESCRIPTION
           "The number of requests successfully received by and processed
            by this entity."
       ::= { wwwSummaryEntry 1 }

   wwwSummaryOutRequests OBJECT-TYPE
       SYNTAX      Counter32
       MAX-ACCESS  read-only
       STATUS      current
       DESCRIPTION
           "The number of requests generated by this entity."
       ::= { wwwSummaryEntry 2 }

   wwwSummaryRequestErrors OBJECT-TYPE
       SYNTAX      Counter32
       MAX-ACCESS  read-only
       STATUS      current
       DESCRIPTION
           "The number of requests containing errors and detected
            by this entity."
       ::= { wwwSummaryEntry 3 }

   wwwSummaryRequestDiscards OBJECT-TYPE
       SYNTAX      Counter32
       MAX-ACCESS  read-only
       STATUS      current
       DESCRIPTION
           "The number of requests discarded by this entity."
       ::= { wwwSummaryEntry 4 }






Expires September 1997                                         [Page 21]


Internet-Draft                   WWW MIB                      March 1997


   wwwSummaryInResponses OBJECT-TYPE
       SYNTAX      Counter32
       MAX-ACCESS  read-only
       STATUS      current
       DESCRIPTION
           "The number of responses successfully received and processed
            by this entity."
       ::= { wwwSummaryEntry 5 }

   wwwSummaryOutResponses OBJECT-TYPE
       SYNTAX      Counter32
       MAX-ACCESS  read-only
       STATUS      current
       DESCRIPTION
           "The number of responses generated by this entity."
       ::= { wwwSummaryEntry 6 }

   wwwSummaryResponseDiscards OBJECT-TYPE
       SYNTAX      Counter32
       MAX-ACCESS  read-only
       STATUS      current
       DESCRIPTION
           "The number of responses discarded by this entity."
       ::= { wwwSummaryEntry 7 }

   wwwSummaryInUnknowns OBJECT-TYPE
       SYNTAX      Counter32
       MAX-ACCESS  read-only
       STATUS      current
       DESCRIPTION
           "The number of unknown messages detected by this entity."
       ::= { wwwSummaryEntry 8 }

   wwwSummaryInControlBytes OBJECT-TYPE
       SYNTAX      Counter32
       MAX-ACCESS  read-only
       STATUS      current
       DESCRIPTION
           "The number of protocol control bytes received by this
            entity."
       ::= { wwwSummaryEntry 9 }

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





Expires September 1997                                         [Page 22]


Internet-Draft                   WWW MIB                      March 1997


           "The number of protocol content bytes received by this
            entity."
       ::= { wwwSummaryEntry 10 }

   wwwSummaryOutControlBytes OBJECT-TYPE
       SYNTAX      Counter32
       MAX-ACCESS  read-only
       STATUS      current
       DESCRIPTION
           "The number of protocol control bytes generated by this
            entity."
       ::= { wwwSummaryEntry 11 }

   wwwSummaryOutContentBytes OBJECT-TYPE
       SYNTAX      Counter32
       MAX-ACCESS  read-only
       STATUS      current
       DESCRIPTION
           "The number of protocol content bytes generated by this
            entity."
       ::= { wwwSummaryEntry 12 }

   --
   -- wwwRequestTables
   --
   wwwRequestInTable OBJECT-TYPE
       SYNTAX      SEQUENCE OF WwwRequestInEntry
       MAX-ACCESS  not-accessible
       STATUS      current
       DESCRIPTION
           "The table providing detailed request statistics for the
            entities on this system."
       ::= { wwwStatistics 2 }

   wwwRequestInEntry OBJECT-TYPE
       SYNTAX      WwwRequestInEntry
       MAX-ACCESS  not-accessible
       STATUS      current
       DESCRIPTION
           "Request statistics for an individual entity."
       INDEX       { wwwEntityIndex, wwwRequestInIndex }
       ::= { wwwRequestInTable 1 }

   WwwRequestInEntry ::= SEQUENCE {
       wwwRequestInIndex           WwwRequestType,
       wwwRequestInCount           Counter32,
       wwwRequestInControlBytes    Counter32,





Expires September 1997                                         [Page 23]


Internet-Draft                   WWW MIB                      March 1997


       wwwRequestInContentBytes    Counter32,
       wwwRequestInLastTime        TimeStamp
   }

   wwwRequestInIndex OBJECT-TYPE
       SYNTAX      WwwRequestType
       MAX-ACCESS  not-accessible
       STATUS      current
       DESCRIPTION
           "The particular request type the statistics apply to."
       ::= { wwwRequestInEntry 1 }

   wwwRequestInCount OBJECT-TYPE
       SYNTAX      Counter32
       MAX-ACCESS  read-only
       STATUS      current
       DESCRIPTION
           "The number of requests of this type received by
            this entity."
       ::= { wwwRequestInEntry 2 }

   wwwRequestInControlBytes OBJECT-TYPE
       SYNTAX      Counter32
       MAX-ACCESS  read-only
       STATUS      current
       DESCRIPTION
           "The number of protocol control bytes of this type
            received by this entity."
       ::= { wwwRequestInEntry 3 }

   wwwRequestInContentBytes OBJECT-TYPE
       SYNTAX      Counter32
       MAX-ACCESS  read-only
       STATUS      current
       DESCRIPTION
           "The number of protocol content data bytes received
            with this type by this entity."
       ::= { wwwRequestInEntry 4 }

   wwwRequestInLastTime OBJECT-TYPE
       SYNTAX      TimeStamp
       MAX-ACCESS  read-only
       STATUS      current
       DESCRIPTION
           "The value of sysUpTime when the last byte of the last
            complete request of this type was received by this
            entity."





Expires September 1997                                         [Page 24]


Internet-Draft                   WWW MIB                      March 1997


       ::= { wwwRequestInEntry 5 }

   wwwRequestOutTable OBJECT-TYPE
       SYNTAX      SEQUENCE OF WwwRequestOutEntry
       MAX-ACCESS  not-accessible
       STATUS      current
       DESCRIPTION
           "The table providing detailed request statistics for the
            entities on this system."
       ::= { wwwStatistics 3 }

   wwwRequestOutEntry OBJECT-TYPE
       SYNTAX      WwwRequestOutEntry
       MAX-ACCESS  not-accessible
       STATUS      current
       DESCRIPTION
           "Request statistics for an individual entity."
       INDEX       { wwwEntityIndex, wwwRequestOutIndex }
       ::= { wwwRequestOutTable 1 }

   WwwRequestOutEntry ::= SEQUENCE {
       wwwRequestOutIndex          WwwRequestType,
       wwwRequestOutCount          Counter32,
       wwwRequestOutControlBytes   Counter32,
       wwwRequestOutContentBytes   Counter32,
       wwwRequestOutLastTime       TimeStamp
   }

   wwwRequestOutIndex OBJECT-TYPE
       SYNTAX      WwwRequestType
       MAX-ACCESS  not-accessible
       STATUS      current
       DESCRIPTION
           "The particular request type the statistics apply to."
       ::= { wwwRequestOutEntry 1 }

   wwwRequestOutCount OBJECT-TYPE
       SYNTAX      Counter32
       MAX-ACCESS  read-only
       STATUS      current
       DESCRIPTION
           "The number of requests of this type generated by this
            entity."
       ::= { wwwRequestOutEntry 2 }

   wwwRequestOutControlBytes OBJECT-TYPE
       SYNTAX      Counter32





Expires September 1997                                         [Page 25]


Internet-Draft                   WWW MIB                      March 1997


       MAX-ACCESS  read-only
       STATUS      current
       DESCRIPTION
           "The number of protocol control bytes of this type
            generated by this entity."
       ::= { wwwRequestOutEntry 3 }

   wwwRequestOutContentBytes OBJECT-TYPE
       SYNTAX      Counter32
       MAX-ACCESS  read-only
       STATUS      current
       DESCRIPTION
           "The number of protocol content bytes generated by
            this type of request by this entity."
       ::= { wwwRequestOutEntry 4 }

   wwwRequestOutLastTime OBJECT-TYPE
       SYNTAX      TimeStamp
       MAX-ACCESS  read-only
       STATUS      current
       DESCRIPTION
           "The value of sysUpTime when the first byte of the
            last request of this type was send by this entity."
       ::= { wwwRequestOutEntry 5 }

   --
   -- wwwResponseTables
   --
   wwwResponseInTable OBJECT-TYPE
       SYNTAX      SEQUENCE OF WwwResponseInEntry
       MAX-ACCESS  not-accessible
       STATUS      current
       DESCRIPTION
           "The table providing detailed response statistics for the
            entities on this system."
       ::= { wwwStatistics 4 }

   wwwResponseInEntry OBJECT-TYPE
       SYNTAX      WwwResponseInEntry
       MAX-ACCESS  not-accessible
       STATUS      current
       DESCRIPTION
           "Response statistics for an individual entity."
       INDEX       { wwwEntityIndex, wwwResponseInIndex }
       ::= { wwwResponseInTable 1 }

   WwwResponseInEntry ::= SEQUENCE {





Expires September 1997                                         [Page 26]


Internet-Draft                   WWW MIB                      March 1997


       wwwResponseInIndex          WwwResponseType,
       wwwResponseInCount          Counter32,
       wwwResponseInControlBytes   Counter32,
       wwwResponseInContentBytes   Counter32,
       wwwResponseInLastTime       TimeStamp
   }

   wwwResponseInIndex OBJECT-TYPE
       SYNTAX      WwwResponseType
       MAX-ACCESS  not-accessible
       STATUS      current
       DESCRIPTION
           "The particular response type the statistics apply to."
       ::= { wwwResponseInEntry 1 }

   wwwResponseInCount OBJECT-TYPE
       SYNTAX      Counter32
       MAX-ACCESS  read-only
       STATUS      current
       DESCRIPTION
           "The number of responses of this type received by this
            entity."
       ::= { wwwResponseInEntry 2 }

   wwwResponseInControlBytes OBJECT-TYPE
       SYNTAX      Counter32
       MAX-ACCESS  read-only
       STATUS      current
       DESCRIPTION
           "The number of protocol control bytes of this type
            received by this entity."
       ::= { wwwResponseInEntry 3 }

   wwwResponseInContentBytes OBJECT-TYPE
       SYNTAX      Counter32
       MAX-ACCESS  read-only
       STATUS      current
       DESCRIPTION
           "The number of protocol content bytes received
            by this type of response by this entity."
       ::= { wwwResponseInEntry 4 }

   wwwResponseInLastTime OBJECT-TYPE
       SYNTAX      TimeStamp
       MAX-ACCESS  read-only
       STATUS      current
       DESCRIPTION





Expires September 1997                                         [Page 27]


Internet-Draft                   WWW MIB                      March 1997


           "The value of sysUpTime when the last byte of the last
            complete response of this type was received by this
            entity."
       ::= { wwwResponseInEntry 5 }

   wwwResponseOutTable OBJECT-TYPE
       SYNTAX      SEQUENCE OF WwwResponseOutEntry
       MAX-ACCESS  not-accessible
       STATUS      current
       DESCRIPTION
           "The table providing detailed response statistics for the
            entities on this system."
       ::= { wwwStatistics 5 }

   wwwResponseOutEntry OBJECT-TYPE
       SYNTAX      WwwResponseOutEntry
       MAX-ACCESS  not-accessible
       STATUS      current
       DESCRIPTION
           "Response statistics for an individual entity."
       INDEX       { wwwEntityIndex, wwwResponseOutIndex }
       ::= { wwwResponseOutTable 1 }

   WwwResponseOutEntry ::= SEQUENCE {
       wwwResponseOutIndex         WwwResponseType,
       wwwResponseOutCount         Counter32,
       wwwResponseOutControlBytes  Counter32,
       wwwResponseOutContentBytes  Counter32,
       wwwResponseOutLastTime      TimeStamp
   }

   wwwResponseOutIndex OBJECT-TYPE
       SYNTAX      WwwResponseType
       MAX-ACCESS  not-accessible
       STATUS      current
       DESCRIPTION
           "The particular response type the statistics apply to."
       ::= { wwwResponseOutEntry 1 }

   wwwResponseOutCount OBJECT-TYPE
       SYNTAX      Counter32
       MAX-ACCESS  read-only
       STATUS      current
       DESCRIPTION
           "The number of responses of this type generated by this
            entity."
       ::= { wwwResponseOutEntry 2 }





Expires September 1997                                         [Page 28]


Internet-Draft                   WWW MIB                      March 1997


   wwwResponseOutControlBytes OBJECT-TYPE
       SYNTAX      Counter32
       MAX-ACCESS  read-only
       STATUS      current
       DESCRIPTION
           "The number of protocol control bytes of this type
            generated by this entity."
       ::= { wwwResponseOutEntry 3 }

   wwwResponseOutContentBytes OBJECT-TYPE
       SYNTAX      Counter32
       MAX-ACCESS  read-only
       STATUS      current
       DESCRIPTION
           "The number of protocol content bytes generated by this
            type of response by this entity."
       ::= { wwwResponseOutEntry 4 }

   wwwResponseOutLastTime OBJECT-TYPE
       SYNTAX      TimeStamp
       MAX-ACCESS  read-only
       STATUS      current
       DESCRIPTION
           "The value of sysUpTime when the first byte of the
            last response of this type was sent by this entity."
       ::= { wwwResponseOutEntry 5 }

   --
   --  wwwDocument
   --
   --  This portion of the MIB defines objects for the document store.
   --
   --  The document store is viewed from two perspectives:
   --
   --    -as seen from clients of the entity from a service perspective
   --    -as viewed by the collection of files in the filesystem
   --
   --  The first case is defined as a table of statistics as seen from
   --  the service perspective. This wwwDocTable is indexed by
   --  wwwEntityIndex and a unique value for that entity for each
   --  document. The entries in this table defines statistics and
   --  information from this service perspective.
   --
   --  The second case is defined using the sysApplInstallPkgTable and the
   --  sysApplInstallElmtTable. An entry in the sysApplInstallPkgTable can
   --  be defined for the entire collection of document resources the
   --  service provides, or any subset of those document resources. For





Expires September 1997                                         [Page 29]


Internet-Draft                   WWW MIB                      March 1997


   --  instance, an Internet service provider may configure a separate
   --  entry in the sysApplInstallPkgTable for each customer on a server
   --  supporting multiple virtual servers, for each user name of a
   --  domain, etc.
   --
   --  Entries in the sysApplInstallElmtTable correspond to each file in
   --  the filesystem which are mapped to entries in wwwDocTable. These
   --  entries in sysApplInstallElmtTable may be loaded by the agent when
   --  the file is first accessed, or be pre-loaded even with entries of
   --  files that have never been accessed by the service.
   --
   --  The wwwDocNameTable provides a mapping from the name of the
   --  document resource from the service perspective to the indices
   --  of the wwwDocTable, the sysApplInstallPkgTable and the
   --  sysApplInstallElmtTable.
   --

   wwwDocument OBJECT IDENTIFIER ::= { wwwMIBObjects 3 }

   --
   --  wwwDocNameTable
   --

   -- [## Note that SMI limits the max. number of elements in an
   --     object identifier to 128. This means that a wwwDocNameName is
   --     more or less limited to 100 characters. ##]

   wwwDocNameTable OBJECT-TYPE
       SYNTAX      SEQUENCE OF WwwDocNameEntry
       MAX-ACCESS  not-accessible
       STATUS      current
       DESCRIPTION
           "The table of document name to index mappings. This table is
            provided so that if the document name is known, the index
            into the wwwDocTable can be obtained without having to
            traverse the entire wwwDocTable. Entries are indexed by
            the URL path without any possible arguments.

            If the value of wwwEntityName.1 is www.a.org, then the
            wwwDocTable entry for http://www.a.org/foo/bar.html can be
            obtained by retrieving
     wwwDocNameIndex.1.13.47.102.111.111.47.98.97.114.46.104.116.109.108"
       ::= { wwwDocument 1 }

   wwwDocNameEntry OBJECT-TYPE
       SYNTAX      WwwDocNameEntry
       MAX-ACCESS  not-accessible





Expires September 1997                                         [Page 30]


Internet-Draft                   WWW MIB                      March 1997


       STATUS      current
       DESCRIPTION
           "An entry associated with a particular mapping
            in the wwwDocNameTable."
       INDEX       { wwwEntityIndex, IMPLIED wwwDocNameName }
       ::= { wwwDocNameTable 1 }

   WwwDocNameEntry ::= SEQUENCE {
       wwwDocNameName      WwwDocName,
       wwwDocNameIndex     WwwDocIndex
   }

   wwwDocNameName OBJECT-TYPE
       SYNTAX      WwwDocName
       MAX-ACCESS  not-accessible
       STATUS      current
       DESCRIPTION
           "Auxiliary object used along with wwwEntityIndex to uniquely
            identify a wwwDocNameEntry for a wwwEntityEntry. wwwEntityIndex
            is the table index value from the Network Services Monitoring
            MIB."
       ::= { wwwDocNameEntry 1 }

   wwwDocNameIndex OBJECT-TYPE
       SYNTAX      WwwDocIndex
       MAX-ACCESS  read-only
       STATUS      current
       DESCRIPTION
           "A value that can be used along with wwwEntityIndex to access
            the wwwDocNameName document information in the wwwDocTable."
       ::= { wwwDocNameEntry 2 }

   --
   --  wwwDocFilterTable
   --
   wwwDocFilterTable OBJECT-TYPE
       SYNTAX      SEQUENCE OF WwwDocFilterEntry
       MAX-ACCESS  not-accessible
       STATUS      current
       DESCRIPTION
           "This table is used to filter out entries that should not
            appear in the wwwDocNameTable. A document name is matched
            against the expressions listed in this table. A successful
            match will stop further processing of this entry so that this
            document name will not appear in the wwwDocNameTable."
       ::= { wwwDocument 2 }






Expires September 1997                                         [Page 31]


Internet-Draft                   WWW MIB                      March 1997


   wwwDocFilterEntry OBJECT-TYPE
       SYNTAX      WwwDocFilterEntry
       MAX-ACCESS  not-accessible
       STATUS      current
       DESCRIPTION
           "An entry that filters documents that match a specific regular
            expression."
       INDEX       { wwwEntityIndex, wwwDocFilterIndex }
       ::= { wwwDocFilterTable 1 }

   WwwDocFilterEntry ::= SEQUENCE {
       wwwDocFilterIndex   Integer32,
       wwwDocFilterRegexp  DisplayString,
       wwwDocFilterStatus  RowStatus
   }

   wwwDocFilterIndex OBJECT-TYPE
       SYNTAX      Integer32 (1..10000)
       MAX-ACCESS  not-accessible
       STATUS      current
       DESCRIPTION
           "An arbitrary integer used only for indexing purposes."
       ::= { wwwDocFilterEntry 1 }

   wwwDocFilterRegexp OBJECT-TYPE
       SYNTAX      DisplayString
       MAX-ACCESS  read-create
       STATUS      current
       DESCRIPTION
           "A regular expression that is matched against the document
            name. [## Definition of a regular expression missing. ##]"
       ::= { wwwDocFilterEntry 2 }

   wwwDocFilterStatus OBJECT-TYPE
       SYNTAX      RowStatus
       MAX-ACCESS  read-create
       STATUS      current
       DESCRIPTION
           "An object used to create and remove entries in the
            wwwDocFilterTable."
       ::= { wwwDocFilterEntry 3 }

   --
   --  wwwDocTable
   --
   wwwDocTable OBJECT-TYPE
       SYNTAX      SEQUENCE OF WwwDocEntry





Expires September 1997                                         [Page 32]


Internet-Draft                   WWW MIB                      March 1997


       MAX-ACCESS  not-accessible
       STATUS      current
       DESCRIPTION
           "The table of documents accessible from any entity configured
            in the wwwEntityTable. The agent minimally adds entries to
            this table to correspond with documents that have been
            accessed. It may choose to add entries for documents which
            have not yet been accessed as well."
       ::= { wwwDocument 3 }

   wwwDocEntry OBJECT-TYPE
       SYNTAX      WwwDocEntry
       MAX-ACCESS  not-accessible
       STATUS      current
       DESCRIPTION
           "An entry associated with a particular mapping in the
            wwwDocTable."
       INDEX       { wwwEntityIndex, wwwDocTimeMark, wwwDocNameIndex }
       ::= { wwwDocTable 1 }

   WwwDocEntry ::= SEQUENCE {
       wwwDocTimeMark                  TimeFilter,
       wwwDocInstallPkg                Unsigned32,
       wwwDocInstallElmt               Unsigned32,
       wwwDocName                      WwwDocName,
       wwwDocType                      WwwDocType,
       wwwDocLastAccessTimeStamp       DateAndTime,
       wwwDocLastAccessResponseType    WwwResponseType,
       wwwDocBytes                     ZeroBasedCounter32,
       wwwDocCount                     ZeroBasedCounter32,
       wwwDocSpecific                  OBJECT IDENTIFIER,
       wwwDocStatus                    RowStatus
   }

   wwwDocTimeMark OBJECT-TYPE
       SYNTAX      TimeFilter
       MAX-ACCESS  not-accessible
       STATUS      current
       DESCRIPTION
           "A TimeFilter for this entry by which the real accesses
            are counted between two sequential retrievals of this table.
            The TimeFilter is a textual convention in RMON-2 (RFC 2021).
            For the appropriate behaviour is referred to that MIB.
            The values during startup time are exactly the same
            during the last actions of the HTTP-server before the
            server went down.






Expires September 1997                                         [Page 33]


Internet-Draft                   WWW MIB                      March 1997


            [## we do not actually want to purge
            this table when sysUptime resets.  We need to consider
            whether this is still an acceptable use of TimeFilter.
            The reasoning is that we want these attributes to be
            maintained across restarts of the http software, the
            management software and the host computer.  In other words,
            we want the data in the table to be persistent. At the
            same time, since the table is likely very large, we want
            the ability to read the updates since a given time. I would
            prefer the following.  Rather than purging the table when
            sysUptime is zero (wrap or restart), return all entries in
            the table.  For instance wwwDocName.x.y.0 would return
            all documents for all valid values of x and y. ##]"
       ::= { wwwDocEntry 1 }

   wwwDocInstallPkg OBJECT-TYPE
       SYNTAX      Unsigned32 (0..'ffffffff'h)
       MAX-ACCESS  read-only
       STATUS      current
       DESCRIPTION
           "This value can be used to index into the
            sysApplInstallPkgTable which defines the documents for this
            wwwEntity. Entries in the sysApplInstallPkgTable can be
            allocated so that the documents that the web server provides
            are viewed as an installed package. There might be a single
            package for the entire server, a package for each virtual
            host on the server, or entries for each user. For instance,
            the documents that make up www.a.com could be viewed as a
            package. Additionally, users whose pages show up as
            www.a.com/~user could be separate packages or part of the
            main package. If there is no file on the filesystem which
            corresponds to this URL (for instance it is handled
            internally to the web server) and there is no corresponding
            entry in the sysApplInstallPkgTable, then the value of this
            object is 0."
       ::= { wwwDocEntry 2 }

   wwwDocInstallElmt OBJECT-TYPE
       SYNTAX      Unsigned32 (0..'ffffffff'h)
       MAX-ACCESS  read-only
       STATUS      current
       DESCRIPTION
           "This value can be used along with the corresponding value for
            wwwDocNamePkg to index into the sysApplInstallElmtTable to
            find specific information about the representation of this
            document on the fileservers disk. The sysApplInstallPkgTable
            should contain an entry for every document, file, and script





Expires September 1997                                         [Page 34]


Internet-Draft                   WWW MIB                      March 1997


            utilized by the web server, even if those entries correspond
            to items that have never been accessed. This means that there
            may be items in the sysApplInstallElmt tables that are not
            referenced from this table. If there is no corresponding file
            on the fileserver, then the value of this object is 0. This
            can occur if the URL is handled internally to the web server,
            or if all accesses to the URL indicate a failed requests such
            as document not found."
       ::= { wwwDocEntry 3 }

   wwwDocName OBJECT-TYPE
       SYNTAX      WwwDocName
       MAX-ACCESS  read-only
       STATUS      current
       DESCRIPTION
           "The name of this document relative to the www entity
            name as seen from the web. For instance if the www
            entity name is www.a.com and this file is accessible
            on the web as http://www.a.com/foo.html, then the
            value of this object would be '/foo.html'."
       ::= { wwwDocEntry 4 }

   wwwDocType OBJECT-TYPE
       SYNTAX      WwwDocType
       MAX-ACCESS  read-only
       STATUS      current
       DESCRIPTION
           "Indicates the type of the document. If the document is 'static',
            then the related sysApplInstallElmtSize refers to the size
            that is transmitted when this document is requested. If the
            document is 'dynamic', then the related
            sysApplInstallElmtSize is 0 and the amount of data
            transmitted on access is not known, but understood to be
            variable."
       ::= { wwwDocEntry 5 }

   wwwDocLastAccessTimeStamp OBJECT-TYPE
       SYNTAX      DateAndTime
       MAX-ACCESS  read-only
       STATUS      current
       DESCRIPTION
           "The date and time that this document was last accessed."
       ::= { wwwDocEntry 6 }

   wwwDocLastAccessResponseType OBJECT-TYPE
       SYNTAX      WwwResponseType
       MAX-ACCESS  read-only





Expires September 1997                                         [Page 35]


Internet-Draft                   WWW MIB                      March 1997


       STATUS      current
       DESCRIPTION
           "The protocol response type which was sent to the client
            the last time this document was accessed."
       ::= { wwwDocEntry 7 }

   wwwDocBytes OBJECT-TYPE
       SYNTAX      ZeroBasedCounter32
       MAX-ACCESS  read-only
       STATUS      current
       DESCRIPTION
           "The number of content bytes while transmitting this document."
       ::= { wwwDocEntry 8 }

   wwwDocCount OBJECT-TYPE
       SYNTAX      ZeroBasedCounter32
       MAX-ACCESS  read-only
       STATUS      current
       DESCRIPTION
           "The number of times this document has been transmitted."
       ::= { wwwDocEntry 9 }

   wwwDocSpecific OBJECT-TYPE
       SYNTAX      OBJECT IDENTIFIER
       MAX-ACCESS  read-only
       STATUS      current
       DESCRIPTION
           "A reference to MIB definitions specific to the particular
            document being realized by this entry.  For example, if this
            entry corresponds to a CGI based URL, then this value might
            refer to a table specific to the usage of that URL with
            various parameter combinations. If this information is not
            present, its value should be set to the OBJECT IDENTIFIER
            { 0 0 }, which is a syntactically valid object identifier,
            and any conformant implementation of ASN.1 and BER must be
            able to generate and recognize this value. Agents that do
            not support any extensions return { 0 0 } for all entries
            in this table."
       ::= { wwwDocEntry 10 }

   wwwDocStatus OBJECT-TYPE
       SYNTAX      RowStatus
       MAX-ACCESS  read-write
       STATUS      current
       DESCRIPTION
           "The status of this row.  Rows are added to this table by the
            agent, normally when a resource is first requested. However,





Expires September 1997                                         [Page 36]


Internet-Draft                   WWW MIB                      March 1997


            the agent may choose to populate the table before the
            document is accessed. In this case, the value of this
            attribute will be 'notInService'. Writing 'destroy' to this
            object removes this entry from the wwwDocTable as well as
            removing the associated entry in the wwwDocNameTable. No
            other value is supported."
       ::= { wwwDocEntry 11 }

   --
   --  wwwError
   --
   --  Objects which define error reporting conditions
   --
   wwwError OBJECT IDENTIFIER ::= { wwwMIBObjects 4 }

   --
   --  wwwAppl
   --
   --  Objects which extend SYSAPPL-MIB/APPL-MIB framework
   --
   wwwAppl            OBJECT IDENTIFIER ::= { wwwMIBObjects 5 }
   wwwApplInstalled   OBJECT IDENTIFIER ::= { wwwAppl 1 }
   wwwApplRun         OBJECT IDENTIFIER ::= { wwwAppl 2 }

   --
   --  wwwApplInstallPkgTable
   --
   wwwApplInstallPkgTable OBJECT-TYPE
       SYNTAX      SEQUENCE OF WwwApplInstallPkgEntry
       MAX-ACCESS  not-accessible
       STATUS      current
       DESCRIPTION
           "The table listing the www software application packages
            installed on a host computer. In order to appear in
            this table, it may be necessary for the application
            to be installed using some type of software
            installation mechanism or global registry so that its
            existence can be detected by the agent implementation.

            This table extends the sysApplInstallPkgTable of the
            SYSAPPL-MIB/APPL-MIB framework with attributes specific
            to www applications."
       ::= { wwwApplInstalled 1 }

   wwwApplInstallPkgEntry OBJECT-TYPE
       SYNTAX      WwwApplInstallPkgEntry
       MAX-ACCESS  not-accessible





Expires September 1997                                         [Page 37]


Internet-Draft                   WWW MIB                      March 1997


       STATUS      current
       DESCRIPTION
           "The logical row describing an installed www application
            package."
       INDEX       { sysApplInstallPkgIndex }
       ::= { wwwApplInstallPkgTable 1 }

   WwwApplInstallPkgEntry ::= SEQUENCE {
       wwwApplInstallPkgBogus      Integer32
   }

   wwwApplInstallPkgBogus OBJECT-TYPE
       SYNTAX      Integer32
       MAX-ACCESS  read-only
       STATUS      current
       DESCRIPTION
           "A place holder to satisfy the MIB compiler."
       ::= { wwwApplInstallPkgEntry 1 }

   --
   -- wwwApplInstallElmtTable
   --
   wwwApplInstallElmtTable OBJECT-TYPE
       SYNTAX      SEQUENCE OF WwwApplInstallElmtEntry
       MAX-ACCESS  not-accessible
       STATUS      current
       DESCRIPTION
           "This table details the individual application package
            elements (files and executables) which comprise the
            www applications defined in the wwwApplInstallPkgTable.

            Table entries are indexed by sysApplInstallPkgIndex,
            sysApplInstallElmtIndex to facilitate retrieval of
            all elements associated with a particular installed
            application package.

            This table extends the sysApplInstallElmtTable of the
            SYSAPPL-MIB/APPL-MIB framework with attributes specific
            to www applications."
       ::= { wwwApplInstalled 2 }

   wwwApplInstallElmtEntry OBJECT-TYPE
       SYNTAX      WwwApplInstallElmtEntry
       MAX-ACCESS  not-accessible
       STATUS      current
       DESCRIPTION
           "The logical row describing an element of an installed





Expires September 1997                                         [Page 38]


Internet-Draft                   WWW MIB                      March 1997


            www application. The element may be an executable or
            non-executable file."
       INDEX       { sysApplInstallPkgIndex, sysApplInstallElmtIndex }
       ::= { wwwApplInstallElmtTable 1 }

   WwwApplInstallElmtEntry ::= SEQUENCE {
       wwwApplInstallElmtBogus     Integer32
   }

   wwwApplInstallElmtBogus OBJECT-TYPE
       SYNTAX      Integer32
       MAX-ACCESS  read-only
       STATUS      current
       DESCRIPTION
           "A place holder to satisfy the MIB compiler."
       ::= { wwwApplInstallElmtEntry 1 }

   --
   -- wwwApplRunTable
   --
   wwwApplRunTable OBJECT-TYPE
       SYNTAX      SEQUENCE OF WwwApplRunEntry
       MAX-ACCESS  not-accessible
       STATUS      current
       DESCRIPTION
           "The table describes the www 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 wwwApplPastRunTable. Note that the
            corresponding entry in sysApplRunTable is moved to
            sysApplPastRunTable at the same time.

            The table is indexed by sysApplInstallPkgIndex,
            sysApplRunIndex to enable managers to easily locate all
            invocations of a particular application package.

            This table extends the sysApplRunTable of the
            SYSAPPL-MIB/APPL-MIB framework with attributes specific
            to www applications."
       ::= { wwwApplRun 1 }

   wwwApplRunEntry OBJECT-TYPE
       SYNTAX      WwwApplRunEntry
       MAX-ACCESS  not-accessible
       STATUS      current
       DESCRIPTION





Expires September 1997                                         [Page 39]


Internet-Draft                   WWW MIB                      March 1997


           "The logical row describing a www application which is
            currently running on this host."
       INDEX       { sysApplInstallPkgIndex, sysApplRunIndex }
       ::= { wwwApplRunTable 1 }

   WwwApplRunEntry ::= SEQUENCE {
       wwwApplRunBogus     Integer32
   }

   wwwApplRunBogus OBJECT-TYPE
       SYNTAX      Integer32
       MAX-ACCESS  read-only
       STATUS      current
       DESCRIPTION
           "A place holder to satisfy the MIB compiler."
       ::= { wwwApplRunEntry 1 }

   --
   -- wwwApplPastRunTable
   --
   wwwApplPastRunTable OBJECT-TYPE
       SYNTAX      SEQUENCE OF WwwApplPastRunEntry
       MAX-ACCESS  not-accessible
       STATUS      current
       DESCRIPTION
           "A history of the www applications that have previously run
            on the host computer.  An entry is moved to this table
            from the wwwApplRunTable when the invoked application
            represented by the entry ceases to be running.

            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 by sysApplPastRunTblTimeLimit.

            Entries in this table are indexed by sysApplInstallPkgIndex,
            sysApplPastRunIndex to facilitate retrieval of all past
            run invocations of a particular installed application.

            This table extends the sysApplPastRunTable of the
            SYSAPPL-MIB/APPL-MIB framework with attributes specific
            to www applications."
       ::= { wwwApplRun 2 }

   wwwApplPastRunEntry OBJECT-TYPE
       SYNTAX      WwwApplPastRunEntry
       MAX-ACCESS  not-accessible





Expires September 1997                                         [Page 40]


Internet-Draft                   WWW MIB                      March 1997


       STATUS      current
       DESCRIPTION
           "The logical row describing an invocation of a www
            application which was previously run and has terminated.
            The entry is basically copied from the wwwApplRunTable
            when the application instance terminates.  Hence, the
            entry's value for sysApplPastRunIndex is the same as its
            value was for sysApplRunIndex."
       INDEX       { sysApplInstallPkgIndex, sysApplPastRunIndex }
       ::= { wwwApplPastRunTable 1 }

   WwwApplPastRunEntry ::= SEQUENCE {
       wwwApplPastRunBogus Integer32
   }

   wwwApplPastRunBogus OBJECT-TYPE
       SYNTAX      Integer32
       MAX-ACCESS  read-only
       STATUS      current
       DESCRIPTION
           "A place holder to satisfy the MIB compiler."
       ::= { wwwApplPastRunEntry 1 }

   --
   -- wwwApplElmtRunTable
   --
   wwwApplElmtRunTable OBJECT-TYPE
       SYNTAX      SEQUENCE OF WwwApplElmtRunEntry
       MAX-ACCESS  not-accessible
       STATUS      current
       DESCRIPTION
           "The table describes the processes which are
            currently executing on the host system which are
            associated with an invoked www application.

            The table is indexed by sysApplElmtRunInvocID,
            sysApplElmtRunIndex to make it easy to locate all running
            elements of a particular invoked application.

            This table extends the sysApplElmtRunTable of the
            SYSAPPL-MIB/APPL-MIB framework with attributes specific
            to www applications."
       ::= { wwwApplRun 3 }

   wwwApplElmtRunEntry OBJECT-TYPE
       SYNTAX      WwwApplElmtRunEntry
       MAX-ACCESS  not-accessible





Expires September 1997                                         [Page 41]


Internet-Draft                   WWW MIB                      March 1997


       STATUS      current
       DESCRIPTION
           "The logical row describing a process currently
            running on this host which is associated with an
            invoked www application."
       INDEX       { sysApplElmtRunInvocID, sysApplElmtRunIndex }
       ::= { wwwApplElmtRunTable 1 }

   WwwApplElmtRunEntry ::= SEQUENCE {
       wwwApplElmtRunBogus Integer32
   }

   wwwApplElmtRunBogus OBJECT-TYPE
       SYNTAX      Integer32
       MAX-ACCESS  read-only
       STATUS      current
       DESCRIPTION
           "A place holder to satisfy the MIB compiler."
       ::= { wwwApplElmtRunEntry 1 }

   --
   -- wwwApplElmtPastRunTable
   --
   wwwApplElmtPastRunTable OBJECT-TYPE
       SYNTAX      SEQUENCE OF WwwApplElmtPastRunEntry
       MAX-ACCESS  not-accessible
       STATUS      current
       DESCRIPTION
           "The table describes the processes which have previously
            executed on the host system as part of a www application.

            Entries are added to this table when the corresponding
            process in the wwwApplElmtRun Table terminates. Just as
            the sysApplElmtRun entry is copied to sysApplElmtPastRun,
            the wwwApplElmtRun entry is copied to wwwApplElmntPastRun.

            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,
            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





Expires September 1997                                         [Page 42]


Internet-Draft                   WWW MIB                      March 1997


            application.

            This table extends the sysApplElmtPastRunTable of the
            SYSAPPL-MIB/APPL-MIB framework with attributes specific
            to www applications."
       ::= { wwwApplRun 4 }

   wwwApplElmtPastRunEntry OBJECT-TYPE
       SYNTAX      WwwApplElmtPastRunEntry
       MAX-ACCESS  not-accessible
       STATUS      current
       DESCRIPTION
           "The logical row describing a process which was
            previously executed on this host as part of a
            www application.  The entry is basically copied
            from the wwwApplElmtRunTable 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 }
       ::= { wwwApplElmtPastRunTable 1 }

   WwwApplElmtPastRunEntry ::= SEQUENCE {
       wwwApplElmtPastRunBogus     Integer32
   }

   wwwApplElmtPastRunBogus OBJECT-TYPE
       SYNTAX      Integer32
       MAX-ACCESS  read-only
       STATUS      current
       DESCRIPTION
           "A place holder to satisfy the MIB compiler."
       ::= { wwwApplElmtPastRunEntry 1 }

   --
   --
   --  wwwRelate
   --
   --  [## Placeholder in case relationships are defined later ##]
   --
   --  Objects which define relationships to other MIB modules.
   --
   wwwRelate OBJECT IDENTIFIER ::= { wwwMIBObjects 6 }

   --





Expires September 1997                                         [Page 43]


Internet-Draft                   WWW MIB                      March 1997


   --
   -- Conformance and compliance definitions.
   --
   --
   wwwMIBEntityGroup OBJECT-GROUP
       OBJECTS {
           wwwEntityDescription,
           wwwEntityContact,
           wwwEntityProtocol,
           wwwEntityName,
           wwwEntityType,
           wwwEntityUptime,
           wwwEntityOperStatus,
           wwwEntityLastChange
       }
       STATUS      current
       DESCRIPTION
           ""
       ::= { wwwMIBGroups 1 }

   wwwMIBSummaryGroup OBJECT-GROUP
       OBJECTS {
           wwwSummaryInRequests,
           wwwSummaryOutRequests,
           wwwSummaryRequestErrors,
           wwwSummaryRequestDiscards,
           wwwSummaryInResponses,
           wwwSummaryOutResponses,
           wwwSummaryResponseDiscards,
           wwwSummaryInUnknowns,
           wwwSummaryInControlBytes,
           wwwSummaryInContentBytes,
           wwwSummaryOutControlBytes,
           wwwSummaryOutContentBytes
       }
       STATUS      current
       DESCRIPTION
           ""
       ::= { wwwMIBGroups 2 }

   wwwMIBRequestInGroup OBJECT-GROUP
       OBJECTS {
           wwwRequestInCount,
           wwwRequestInControlBytes,
           wwwRequestInContentBytes,
           wwwRequestInLastTime
       }





Expires September 1997                                         [Page 44]


Internet-Draft                   WWW MIB                      March 1997


       STATUS      current
       DESCRIPTION
           ""
       ::= { wwwMIBGroups 3 }

   wwwMIBRequestOutGroup OBJECT-GROUP
       OBJECTS {
           wwwRequestOutCount,
           wwwRequestOutControlBytes,
           wwwRequestOutContentBytes,
           wwwRequestOutLastTime
       }
       STATUS      current
       DESCRIPTION
           ""
       ::= { wwwMIBGroups 4 }

   wwwMIBResponseInGroup OBJECT-GROUP
       OBJECTS {
           wwwResponseInCount,
           wwwResponseInControlBytes,
           wwwResponseInContentBytes,
           wwwResponseInLastTime
       }
       STATUS      current
       DESCRIPTION
           ""
       ::= { wwwMIBGroups 5 }

   wwwMIBResponseOutGroup OBJECT-GROUP
       OBJECTS {
           wwwResponseOutCount,
           wwwResponseOutControlBytes,
           wwwResponseOutContentBytes,
           wwwResponseOutLastTime
       }
       STATUS      current
       DESCRIPTION
           ""
       ::= { wwwMIBGroups 6 }

   wwwMIBDocumentGroup OBJECT-GROUP
       OBJECTS {
           wwwDocNameIndex,
           wwwDocFilterRegexp,
           wwwDocFilterStatus,
           wwwDocInstallPkg,





Expires September 1997                                         [Page 45]


Internet-Draft                   WWW MIB                      March 1997


           wwwDocInstallElmt,
           wwwDocName,
           wwwDocType,
           wwwDocLastAccessTimeStamp,
           wwwDocLastAccessResponseType,
           wwwDocBytes,
           wwwDocCount,
           wwwDocSpecific,
           wwwDocStatus
       }
       STATUS  current
       DESCRIPTION
           ""
       ::= { wwwMIBGroups 7 }

   --
   --  [## Placeholder in case relationships are defined later ##]
   --
   -- wwwMIBRelateGroup OBJECT-GROUP
   --    OBJECTS
   --        {
   --        }
   --    STATUS  current
   --    DESCRIPTION
   --            ""
   --    ::= { wwwMIBGroups 8 }

   wwwMIBApplGroup OBJECT-GROUP
       OBJECTS {
           wwwApplInstallPkgBogus,
           wwwApplInstallElmtBogus,
           wwwApplRunBogus,
           wwwApplPastRunBogus,
           wwwApplElmtRunBogus,
           wwwApplElmtPastRunBogus
       }
       STATUS      current
       DESCRIPTION
           ""
       ::= { wwwMIBGroups 9 }

   --
   -- [## need to define remaining attributes here. ##]
   --

   wwwCompliance MODULE-COMPLIANCE
       STATUS      current





Expires September 1997                                         [Page 46]


Internet-Draft                   WWW MIB                      March 1997


       DESCRIPTION
           "The compliance statement for SNMP entities
            which implement the WWW-MIB."
       MODULE  -- this module
       MANDATORY-GROUPS {
           wwwMIBEntityGroup,
           wwwMIBSummaryGroup,
           wwwMIBRequestInGroup,
           wwwMIBRequestOutGroup,
           wwwMIBResponseInGroup,
           wwwMIBResponseOutGroup,
           wwwMIBDocumentGroup,
           -- wwwMIBRelateGroup,
           wwwMIBApplGroup
       }
       ::= { wwwMIBCompliances 1 }

   END


10.  References

[1]  SNMPv2 Working Group, Case, J., McCloghrie, K., Rose, M., and S.
     Waldbusser, "Structure of Management Information for Version 2 of
     the Simple Network Management Protocol (SNMPv2)", RFC1902, SNMP
     Research,Inc., Cisco Systems, Inc., Dover Beach Consulting, Inc.,
     International Network Services, January 1996.

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

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

[4]  SNMPv2 Working Group, Case, J., McCloghrie, K., Rose, M., and S.
     Waldbusser, "Protocol Operations for Version 2 of the Simple
     Network Management Protocol (SNMPv2)", RFC1905, SNMP Research,Inc.,
     Cisco Systems, Inc., Dover Beach Consulting, Inc., International
     Network Services, January 1996.

[5]  Berners-Lee, T., Masinter, L., and M. McCahill, "Uniform Resource
     Locators (URL)", RFC 1738, CERN, Xerox Corporation, University of
     Minnesota, December 1994.





Expires September 1997                                         [Page 47]


Internet-Draft                   WWW MIB                      March 1997


[6]  T. Berners-Lee, "Universal Resource Identifiers in WWW", RFC 1630,
     CERN, June 1994.

[7]  D. Crocker, "STANDARD FOR THE FORMAT OF ARPA INTERNET TEXT
     MESSAGES", RFC 822, University of Delaware, August 1982.

[8]  C. Kalbfleisch, "Applicability of Standards Track MIBs to
     Management of World Wide Web Servers", RFC 2039, OnRamp
     Technologies, November 1996.

[9]  Krupczak, C., and J. Saperia, "Definitions of System-Level Managed
     Objects for Applications", draft-ietf-applmib-sysapplmib-07.txt,
     Empire Technologies, BGS Systems, March 1997.

[10] Kalbfleisch, C., Krupczak, C., Preshun, R., and J. Saperia,
     "Application Management MIB", draft-ietf-applmib-mib-02.txt, Verio,
     Empire Technologies, BMC Software, BGS Systems, March 1997.

[11] Berners-Lee, T., Fielding, R., and H. Frystyk, "Hypertext Transfer
     Protocol -- HTTP/1.0", RFC 1945, MIT/LCS, UC Irvine, MIT/LCS, May
     1996.

[12] Fielding, R., Gettys, J., Mogul, J., Frystyk, H., and T. Berners-
     Lee, "Hypertext Transfer Protocol -- HTTP/1.1", RFC 2068, UC
     Irvine, DEC, DEC, MIT/LCS, January 1997.

[13] Postel, J., and J.K. Reynolds, "File Transfer Protocol (FTP)", STD
     9, RFC 959, USC/ISI, October 1985.

[14] Kantor, B., and P. Lapsley, "Network News Transfer Protocol: A
     Proposed Standard for the Stream-Based Transmission of News", RFC
     977, UC San Diego & UC Berkeley, February 1986.

[15] Horton, M., and R. Adams, "Standard for interchange of USENET
     messages", RFC 1036, AT&T Bell Laboratories, Center for Seismic
     Studies, December 1987.

[16] Grillo, P., and S. Waldbusser, "Host Resources MIB", RFC 1514,
     Network Innovations, Intel Corporation, Carnegie Mellon University,
     September 1993.

[17] Kille, S., and N. Freed, "Network Services Monitoring MIB", RFC
     1565, ISODE Consortium, Innosoft, January 1994.

[18] Krupczak, C., and S. Waldbusser, "Applicability of Host Resources
     MIB to Application Management", Empire Technologies, Inc.,
     International Network Services, October 1995.





Expires September 1997                                         [Page 48]


Internet-Draft                   WWW MIB                      March 1997


[19] Kille, S., and N. Freed, "Mail Monitoring MIB", RFC 1566, ISODE
     Consortium, Innosoft, January 1994.

[20] Mansfield, G., and S. Kille, "X.500 Directory Monitoring MIB", RFC
     1567, AIC Systems Laboratory, ISODE Consortium, January 1994

[21] S. Waldbusser, "Remote Network Monitoring Management Information
     Base Version 2 using SMIv2", RFC 2021, INS, January, 1997.


11.  Acknowledgments

   This document was produced by the Application MIB working group and
   the members of the http-mib@onramp.net mailing list.

   The authors gratefully acknowledges the comments of the following
   individuals:

                Randy Preshun
                John Saperia
                Cheryl Krupczak


12.  Security Considerations

   Security issues are not discussed in this memo.


13.  Document Transfer Protocol Mappings

   This appendix describes how existing protocols such as HTTP [13,14]
   and FTP [15] can be mapped on the abstract Document Transfer Protocol
   (DTP) used within the definitions of the WWW MIB. Every mapping must
   define the identifier which is used to uniquely identify the transfer
   protocol. In addition, the mappings must define how requests and
   responses are identified and how the transferred byte stream is split
   into control and content bytes.


13.1.  The HyperText Transfer Protocol

   The HyperText Transfer Protocol (HTTP) [13,14] is an application-
   level protocol used to transfer hypermedia documents in a distributed
   networked environment. HTTP is based on the request/response paradigm
   and can be mapped on the abstract DTP easily.

   The HTTP protocol usually runs over TCP and uses the well-known TCP





Expires September 1997                                         [Page 49]


Internet-Draft                   WWW MIB                      March 1997


   port 80. Therefore, the default value for the wwwEntityProtocol
   object is { applTCPProtoID 80 }.

   HTTP allows for both requests and responses an open-ended set of
   message types. The general messages syntax of HTTP is therefore used
   for the protocol mapping. The BNF specification of the general HTTP
   message syntax as defined in [12] is as follows:

       HTTP-message = start-line
                      *message-header
                      CRLF
                      [ message-body ]

       start-line   = Request-Line | Status-Line

       Request-Line = Method SP Request-URI SP HTTP-Version CRLF

       Status-Line  = HTTP-Version SP Status-Code SP Reason-Phrase CRLF

   Every HTTP-message where the start-line is a Request-Line is
   considered a request in the abstract DTP. Every HTTP-message where
   the start-line is a Status-Line is considered a response in the
   abstract DTP. The rest of the mappings are defined as follows:

   o    The wwwRequestType corresponds to the method token in the
        Request-Line.

   o    The wwwResponseType corresponds to the Status-Code in the
        Status-Line.

   o    The control bytes of an HTTP-message are defined as the number
        of bytes in the start-line and the message headers.

   o    The content bytes of an HTTP-message are the number of bytes in
        the message body.


13.2.  The File Transfer Protocol

   The File Transfer Protocol (FTP) [13] is an application-level
   protocol used to transfer files between hosts connected by the TCP/IP
   suite of protocols. FTP is based on a request/response paradigm and
   can be mapped on the abstract DTP as defined in this section. The FTP
   model as defined in [13] is depicted below.

                                              -------------
                                              |+---------+|





Expires September 1997                                         [Page 50]


Internet-Draft                   WWW MIB                      March 1997


                                              ||   User  ||    --------
                                              ||Interface|<--->| User |
                                              |+----|----+|    --------
                ----------                    |     |     |
                |+------+| control connection |+----|----+|
                ||Server|<------------------->||  Client ||
                ||  PI  ||  Commands/Replies  ||    PI   ||
                |+--|---+|                    |+----|----+|
                |   |    |                    |     |     |
    --------    |+--|---+|        Data        |+----|----+|    --------
    | File |<--->|Server|<------------------->||  Client |<--->| File |
    |System|    || DTP  ||     Connection     ||   DTP   ||    |System|
    --------    |+------+|                    |+---------+|    --------
                ----------                    -------------

   FTP uses two different connection types between a client and a server
   to transfer files. The control connection is persistent during a FTP
   session and used to exchange FTP commands and associated replies. The
   data connection is only available when bulk data has to be
   transferred.

   The FTP protocol usually runs over TCP and uses the well-known TCP
   port 21 to setup the control connection. Therefore, the default value
   for the wwwEntityProtocol object is { applTCPProtoID 21 }.

   Every FTP command is considered a request in the abstract DTP. Every
   FTP reply is considered a response in the abstract DTP. I should be
   noted that a single FTP command can result in multiple FTP replies
   (e.g. preliminary positive replies). The definition above maps
   multiple FTP replies into multiple DTP responses. The rest of the
   mappings are defined as follows:

   o    The wwwRequestType corresponds to the FTP command token.

   o    The wwwResponseType corresponds to the three-digit code which
        starts a reply. Multi-line replies with the same three-digit
        code are counted as a single DTP response.

   o    The control bytes of a FTP transaction are all the bytes
        transferred over the control connection.

   o    The content bytes of a FTP transaction are all the bytes
        transferred over the data connection. Note that content bytes
        can only be associated to FTP commands which cause a data
        transfer. FTP replies do not contain content bytes.







Expires September 1997                                         [Page 51]


Internet-Draft                   WWW MIB                      March 1997


14.  Todo List

   This section will be removed when the document is complete because
   all items that are "to do" will have been done!


14.1.  Resolve wwwDocName usage and TC definition

   The wwwDocNameName value likely needs to be limited to around 100
   bytes in length because it is an index. The wwwDocName could however
   represent a longer number of bytes.  One option is to define it as
   OCTET STRING so it can be as long as necessary, but rfc-1902
   indicates there may be interoperability issues with OCTET STRING
   greater than 255 bytes.


14.2.  Handle illegal index values

   Determine what to do with illegal index values for pointers to other
   tables, specifically for SYSAPPL-MIB.


14.3.  Identify attributes for SYSAPPL-MIB framework

   Currently a skeleton of tables has been defined that extend the
   SYSAPPL-MIB/APPL-MIB framework. The idea is that the SYSAPPL-MIB
   framework will apply to a portion of the MIB. Attributes that are
   desired for www, but not defined in either SYSAPPL-MIB or APPL-MIB
   will be placed within these skeleton tables.


14.4.  Regular Expression

   Pick as standard definition for regular expressions for the
   wwwDocFilter.


14.5.  Proxy Entity

   Determine additional attributes that are needed to handle proxy in
   terms of an entity.


14.6.  Proxy Documents

   Determine whether the representation of the wwwDoc tables is
   sufficient or necessary for proxy.





Expires September 1997                                         [Page 52]


Internet-Draft                   WWW MIB                      March 1997


14.7.  Handle all [##...##]

   Remove and resolve all [##...##] notation.


14.8.  Filter entries

   Determine how to represent filter entries that are applicable to all
   www entities. Should there be a separate table for such entries that
   are global? Should there be a special index? Do we consider this a
   management application problem which populates rows of each table?


14.9.  Treating documents with sysApplInstall

   There is an implementation issue for treating documents as installed
   packages. This is because on some platforms, root access is needed to
   update the software registry. The question is how to work around
   this. Should we change the notion of using sysApplInstall? Should we
   consider some implementation hints?


15.  Authors' Address


     Carl W. Kalbfleisch
     Verio, Inc.
     1950 Stemmons Frwy
     2026 INFOMART
     Dallas, TX 75207
     USA                                 Tel: (972) 238-8303
     cwk@verio.net                       Fax: (214) 672-7275

     Harrie Hazewinkel
     MUSIQ/DESIRE/CEO Program
     Institute for Space Applications
     Joint Research Centre of the E.C.
     TP. 950
     Ispra 21020 (VA) Italy              Tel: +39+(0)332+789384
     harrie.hazewinkel@jrc.it            Fax: +39+(0)332+785500

     Juergen Schoenwaelder
     Computer Science Department
     University of Twente
     P.O. Box 217, NL-7500 AE Enschede
     The Netherlands.                    Tel: +31-53-489-3678
     schoenw@cs.utwente.nl               Fax: +31-53-489-3247





Expires September 1997                                         [Page 53]


Internet-Draft                   WWW MIB                      March 1997


   Table of Contents


   1 Abstract .....................................................    2
   2 The SNMPv2 Network Management Framework ......................    2
   2.1 Object Definitions .........................................    2
   3 Notation .....................................................    3
   4 A Note on Terminology ........................................    3
   5 Introduction .................................................    4
   6 WWW Entities .................................................    5
   6.1 WWW Server .................................................    5
   6.2 WWW Client .................................................    5
   6.3 WWW Proxy ..................................................    6
   6.4 WWW Cached Proxy ...........................................    6
   7 Relationship to other Standards Efforts ......................    7
   7.1 Relationship to NSM-MIB ....................................    7
   7.2 Relationship to SYSAPPL-MIB and APPL-MIB ...................    7
   7.3 Document relation to sysApplInstall ........................    7
   7.4 Usage example for NSM-MIB to SYSAPPL-MIB relationship ......    8
   8 Structure of the MIB .........................................    9
   8.1 The systems group ..........................................   10
   8.2 The Statistics group .......................................   10
   8.3 The Document group .........................................   11
   8.4 The Error group ............................................   11
   8.5 The Application group ......................................   11
   8.6 The Relation group .........................................   12
   9 Definitions ..................................................   12
   10 References ..................................................   47
   11 Acknowledgments .............................................   49
   12 Security Considerations .....................................   49
   13 Document Transfer Protocol Mappings .........................   49
   13.1 The HyperText Transfer Protocol ...........................   49
   13.2 The File Transfer Protocol ................................   50
   14 Todo List ...................................................   52
   14.1 Resolve wwwDocName usage and TC definition ................   52
   14.2 Handle illegal index values ...............................   52
   14.3 Identify attributes for SYSAPPL-MIB framework .............   52
   14.4 Regular Expression ........................................   52
   14.5 Proxy Entity ..............................................   52
   14.6 Proxy Documents ...........................................   52
   14.7 Handle all [##...##] ......................................   53
   14.8 Filter entries ............................................   53
   14.9 Treating documents with sysApplInstall ....................   53
   15 Authors' Address ............................................   53








Expires September 1997                                         [Page 54]