RFC 2039
Applicability of Standards Track MIBs to Management of World Wide Web Servers
1. Abstract β¨
okay so bestie, this doc is an Informational RFC from November 1996 π It's RFC 2039, titled Applicablity of Standards Track MIBs to Management of World Wide Web Servers (yes, "Applicablity" is spelled that way in the actual title π). The author is C. Kalbfleisch from OnRamp Technologies, Inc., and it's filed under the Network Working Group. The header doesn't list anything it obsoletes or updates, so it's standing on its own π¦
This doc was written at the request of the Network Management Area Director, following the HTTP-MIB BOF at the 35th IETF meeting. The goal is to report on whether the existing standards track MIBs can be applied to managing WWW servers π§
Here's the plan: we lay out the requirements for managing a World Wide Web (WWW) server, look at which existing standards track MIBs already fit, and then figure out which extra groups of MIB attributes are needed to hit those requirements πΈ
Status of This Memo π
This memo provides information for the Internet community. It does not specify an Internet standard of any kind. Distribution of this memo is unlimited.
Table of Contents π
1. Abstract.................................................1
2. Overview.................................................2
3. Requirements.............................................3
3.1 Operational Model Requirements...........................3
3.1.1. Host specific and Application Monitoring.................3
3.1.2. Dependencies among applications..........................3
3.1.3. Error generation and reporting...........................3
3.1.4. Capacity planning........................................4
3.1.5. Log Digester.............................................4
3.2. Service Model Requirements...............................4
3.2.1. Retrieval services.......................................4
3.2.2. Document information store -- managing documents.........4
3.2.3. Server configuration.....................................4
3.2.4. Server Control...........................................4
3.2.5. Quality of Service.......................................4
4. Relationship to existing IETF efforts....................5
4.1. MIB-II [2]...............................................5
4.2. Host Resources MIB [3]...................................5
4.3. Network Services Monitoring MIB [4]......................6
4.4. Application MIB [5]......................................7
5. Summary of Existing Standards Track MIBs.................8
6. Definition of additional attributes......................9
7. Usage Scenarios.........................................11
8. Conclusion..............................................11
9. References..............................................13
10. Acknowledgments.........................................13
11. Further Information.....................................14
12. Security Considerations.................................14
13. Authors' Address........................................14
2. Overview π
the WWW is basically a giant network of information you can reach through a simple, easy interface π A lot of that info is HyperText or multimedia, and it's served up by servers all over the world. How well the web works really depends on how well those servers perform. Right now, people mostly keep an eye on WWW servers by reading log files, which gets really hard when one organization is in charge of a bunch of them π
Lots of orgs already use the Internet Standard SNMP to manage their network devices, so it makes sense to treat WWW servers as just more devices in that same setup β¨ That way, one Network Management Station (NMS) can automate managing a bunch of WWW servers along with the rest of the enterprise. A standard for this also means one management app can handle servers from different vendors, which is iconic. Plus, when you formally define what needs managing and how, you tend to get better performance and fault management overall π₯
Content providers care about access stats and the config of their sites. The content provider might be the same org that runs the server, or it might be a totally different one. This could enable what's called "Customer Network Management," which means sharing that info with the content provider. So there's an organization that isn't the network operations center but still wants management info from the device. Customer network management lets each content provider on a server see info about their own documents without seeing everyone else's π«Ά
Other orgs might want SNMP-manageable WWW clients and proxies too. For now, though, the focus is on WWW servers. A natural extension could be a framework covering WWW clients and general information retrieval systems like WWW proxies, NNTP, GOPHER, FTP, and WAIS. This doc stays focused on managing WWW servers π
3. Requirements π
There are a few ways to look at a WWW server when figuring out who manages what. For discussion, we call these perspectives the Operational Model and the Service Model. The Operational Model sees a WWW server as a computer with hardware, disk, an OS, and web server software. It's all about the actual resources that make up the machine, so you can watch resource utilization. The Service Model sees the WWW server as a black box that just handles responses to requests from clients on the web π¦
The two models complement each other and give you different info about the server. People in the org running the WWW server might care about one model, the other, or both. So the management info should be scalable, so either model can be implemented without needing the other one πΈ
With that in mind, the requirements for WWW server management are summarized below, expanding on the ones that came out of the HTTP-MIB BOF.
3.1. Operational Model Requirements π»
3.1.1. Host specific and Application Monitoring
This covers monitoring CPU, disk, and network capacity utilization π
3.1.2. Dependencies among applications.
Some systems pack a bunch of services into one piece of code. Others spread the same set of services across multiple pieces of code. Because of that, dependencies form between processes π§© These dependencies get critical when a process needs to be stopped, restarted, or reconfigured. They need to be defined in the management info so management apps can run the systems correctly.
3.1.3. Error generation and reporting
WWW servers usually report errors through logging facilities, and the log file format isn't well defined π¬ It is required that a standard facility for error reporting be used.
3.1.4. Capacity planning
It is required to get statistics that can be used for capacity planning. That includes planning for more network bandwidth, computing power, disk space, number of concurrent server threads, and so on π
3.1.5. Log Digester
WWW servers usually report status info in Common Log Format [1]. This info needs to be kept as attributes in a MIB, so remote monitoring works with a standard way to represent and retrieve the management info π§
3.2. Service Model Requirements π
3.2.1. Retrieval services
Retrieval services are an abstraction that separates the information space from the underlying transport mechanism. The goal right now is to focus on requirements for managing WWW servers. There may be a lot of overlap with other kinds of servers, like FTP, NNTP, GOPHER, and WAIS. The term "retrieval services" is kept here to hold onto that abstraction. It is required to get statistics about how the retrieval services are used and how they perform β¨
3.2.2. Document information store -- managing documents.
Info from a WWW server can be static (a file) or dynamic (the output of some processing). Managing these two kinds of sources ranges from tracking access stats and access permissions to checking that all the apps producing the dynamic info are operating normally π
3.2.3. Server configuration.
It's desirable to be able to centralize configuration management for the servers within an enterprise π«Ά
3.2.4. Server Control.
WWW servers usually need to be controlled when it comes to starting and stopping them, and rotating log files π
3.2.5. Quality of Service
Provide an indication of the quality of service the WWW server is providing π
4. Relationship to existing IETF efforts π¦
Generally speaking, a WWW server is made up of, or depends on, these components:
- a general purpose workstation running some operating system
- HTTP server software to answer requests from the network
- various support routines, like CGI programs or external applications (like a DBMS) used to access information
- a document store on one or more storage devices
The health and performance of each of these components matters when you're managing a WWW server π
A number of standards track MIB modules are relevant to the items on that list. That includes MIB-II [2], the Host Resources MIB [3], the Network Service Monitoring MIB [4], and the Application MIB [5].
That adds up to an impressive list of attributes to implement π It's desirable to define different levels of WWW server management, so an implementor can scale their implementation in chunks covering different parts of each section. For example, this could allow customer network management without requiring the other groups to be implemented π
4.1. MIB-II [2] π
MIB-II defines the managed objects that should be contained in TCP/IP based devices.
The WWW server should support the applicable portions of MIB-II. As a minimum, this set probably includes these groups: system, interfaces, udp, icmp, tcp, and snmp π
4.2. Host Resources MIB [3] β¨
Okay bestie, the Host Resources MIB is giving "manage the whole host and don't care what OS or app is running" energy π₯οΈπ . It defines a uniform set of objects for managing host computers independently of the operating system, network services, or any software application.
The MIB is structured as six groups, and each one is either "mandatory" or "optional". If ANY "optional" group of the MIB is implemented, then ALL "mandatory" groups of the MIB must also be implemented. ngl, this can cause implementation problems for some developers, since many of these attributes require intimate knowledge of the OS π« .
The groups are:
-System Group Mandatory
-Storage Group Mandatory
-Device Group Mandatory
-device types
-device table
-processor table
-network table
-printer table
-disk storage table
-partition table
-file-system table
-file-system types
-Running Software Group Optional
-Running Software Performance Group Optional
-Installed Software Group Optional
The system group gives general status info about the host πΈ. The storage and device groups define the config and status of the resources that make up the host. They define the resources that make up a generic host system and how those resources relate to each other. A lot of this is super useful for managing a WWW server, like file system and CPU utilization π₯. It helps with the operational requirements. Honestly though, much of it is more detailed than most WWW server managers need for service level requirements.
The remaining groups define the software that is installed and/or running on the host. Performance info extends what's defined for each running process β¨. The mapping between running software and installed software is kinda messy, though. It's related by a foreign key (Product ID) that doesn't appear to be required to exist in either table [6] π. There's also no way to represent a group of processes that together perform some task (IE an application made up of multiple processes). The Applications MIB WG plans to fix these gaps π§.
4.3. Network Services Monitoring MIB [4] π¦
This MIB is one of three documents produced by the MADMAN (Message And Directory MANagement) Working group. It's giving general-purpose attributes that suit a whole range of applications providing network services. The definition looks at the service itself, without considering the implementation in terms of host computers or processes. The attributes provide stats and status on the inbound and outbound associations that are currently active and the ones that have been active π.
This MIB is meant to be the minimum set of attributes common across a number of Network Service Applications. More attributes can be defined as needed to manage specific network service applications. WWW servers clearly fall into the category of network service applications, and all attributes in this MIB are relevant to WWW servers π.
The MIB consists of two tables:
-applTable Mandatory
-assocTable Optional
The applTable describes applications that provide network services. It keeps stats on the current number of active associations and the total number since application initialization. The assocTable has more detailed info about active associations π.
The other two MIBs defined by MADMAN, MTA MIB [7] and DSA MIB [8], aren't relevant to managing WWW services. They do show how to extend the Network Services Monitoring MIB for a specific set of applications π.
4.4. Application MIB [5] π
The Application MIB WG is defining two separate MIBs: the sysApplMib and the applMib. The first defines attributes that can be monitored without instrumenting the applications. The second will define additional attributes that require application instrumentation π«Ά.
The sysApplMIB lets you describe applications as a collection of executables and files installed and executing on a host computer. Its objects support configuration, fault and performance management of some of the basic attributes of application software β.
The groups in the sysApplMIB are:
-System Application Installed Group Mandatory
-sysApplInstalledTable
-sysApplCfgElmtTable
-System Application Run Group Mandatory
-sysApplRunTable
-SysApplPastRunTable
-sysApplElmtRunTable
-sysApplElmtPastRunTable
The sysApplInstalledTable captures which applications are installed on a particular host. The sysApplCfgElmtTable gives info about the executables and non-executable files that together make up the application. The sysApplRunTable has the application instances that are currently running, and the sysApplPastRunTable keeps a history of applications that have previously executed on the host. The sysApplElmtRunTable has the process instances that are currently running, and sysApplElmtPastRunTable keeps a history of processes that have previously executed on the host π.
Here's the tea: two implementations of the same set of network services may each define a different set of processes and files within this MIB. Ultimately, enough management info is needed so these different implementations can at least be managed similarly π.
WWW servers fall into the general category of application software. So the attributes of this MIB apply if process-level detail is requested to meet the Operational Model requirements π .
The Application MIB WG is going to resolve the problems described above with the relationship between the running and installed software of the Host Resources MIB π₯.
5. Summary of Existing Standards Track MIBs π§
Okay, so the existing MIBs are mostly orthogonal, as the diagram below shows π¦. Host Resources relates network info to the interfaces defined in MIB-II. The system application MIB relates its running element table to the equivalent entry in the Host Resources running software table π.
Note that the running software of Host Resources includes ALL software running on the host, while the running element table of the system application MIB only includes "interesting" processes of monitored applications π«Ά.
In the diagram below, "Other Services", "Application Specific MIBs" and "Application MIB" represent work that's still to be done or in progress πΈ.
+---------------+
| Application |
| Specific MIBs |
+---------------+
|
+--------+ +---+ +---+ +---------------+
|Other | |MTA| |DSA| | Application |
|services| |MIB| |MIB| | MIB |
+--------+ +---+ +---+ +---------------+
| | | |
+--------------------+ +---------------+ +--------------+ +------+
| Network Services | | System | |Host Resources| |MIB-II|
| Monitoring MIB | |Application MIB|--| MIB |--| |
+--------------------+ +---------------+ +--------------+ +------+
The stack of MIBs above "Network Services Monitoring MIB" represents monitoring from the Service Model. The other stacks represent monitoring from the Operational Model. Neither stack goes down to the level of specific detail for any application π. The author is of the opinion that HTTP or Web Server specific MIBs would exist at the top of each stack, to represent the service and implementation views of the server respectively. There should be a relationship between these two perspectives so that correlating them is possible. That relationship would be useful for general application and service monitoring, not just for web servers β¨. However, it isn't of specific interest to either the MADMAN WG or the Application MIB WG. So it's suggested that such a relationship be defined in a general case outside of either of those groups, one that would apply to WWW servers as well as to other application-to-service mappings π.
6. Definition of additional attributes π
The existing MIB attributes meet the Operational Model requirement for tracking info specific to a host π₯οΈ. Specifically, MIB-II, Host Resources and the Applications MIB cover these items. The Network Services MIB covers a portion of the Service Model requirement for decoupling the information space from the transport mechanism π¦.
Several sets of additional attributes are needed to meet the remaining requirements. These could be generally applicable to other network information retrieval services (like FTP, NNTP, GOPHER and WAIS) as well as client and proxy management. Management of those services is not in scope for this document π.
These additional attributes can be classified as:
- Definition of relationship between the Network Services Monitoring and Application MIBs. This lets the functional organization of the server be known. It lets a management application understand the effect of restarting specific processes on the services provided. This addresses the Operational Model requirement to model dependencies between applications π.
- Additions to the generic Network Services Monitoring MIB. A draft [9] has already been circulated thanks to the work of a mailing list and a sample implementation. These attributes list a service-level summary of the configuration and health of the server. From this, performance metrics can be observed. In addition, the health of the server in terms of data timeouts is known. These attributes address the requirement for Operational Model tracking of specific activity and the requirement for Service Model retrieval services π«Ά.
- Document storage and access statistics are needed to address Service Model requirements π.
- Additions to the Application MIB are required to address server configuration requirements in the Service Model π₯.
- Error and fault management attributes are required to address requirements for tracking specific activity of the web server π.
- Configuration and Control are items that may be able to be defined in a general way within the Applications MIB. If not, a specific definition would be required here π.
Of the items listed above, (1) is needed on a general basis. To the author, the others appear WWW server specific, unless the scope of the work is opened up to WWW clients and proxies as well as other services (like NNTP, FTP, GOPHER and WAIS) πΈ.
7. Usage Scenarios π¦
okay so let's set the scene bestie π the example is ONE host computer running WWW services using the "virtual domain" concept. β¨ basically one machine is the WWW server for a bunch of addresses. for the example we've got three domains being served from this host, whose WWW servers are:
-www.a.com
-www.b.com
-www.c.com
some implementations run these services as ONE set of processes that handles requests for every address π and others run a SET of processes for each address π«Ά. so the relationship between the Network Services Monitoring MIB and Application MIB components can look different from one implementation to another, even when the configuration is exactly the same π iykyk that's just how it goes.
MIB-II and Host Resources would give you the info about the host itself, including the CPU, disk and network π₯ and the Host Resource running table shows you the processes in the system. main character info π
there would be an entry in the Network Services Monitoring applTable for each virtual domain π. and the assocTable shows which connections are active right now πΈ. an extension to the association table would be helpful to show what's actually being transmitted π§
the sysApplMib would have entries in its installed software tables for the web server software and each "interesting" component π. that includes the server binary, CGI programs, configuration files and possibly the server log files π. depending on how the server is built, the processes for each domain may show up in the same running software table or in different ones π¦
the additional info from the previous section rounds out everything you'd have available for the WWW server πβ¨
8. Conclusion π
okay the big takeaways π«Ά a number of currently defined attributes are useful for managing a WWW server. specifically, MIB-II and Host Resources should be considered for monitoring the health of the machine in terms of host and network configuration and capacity π₯. the Network Services Monitoring MIB and the Application MIBs give you a general framework to represent the components of the WWW server from both a service and implementation perspective π.
the Network Services Monitoring MIB suggests that extensions are necessary to cover specific network application monitoring π. a set of such attributes can be well defined to give status info about the WWW server πΈ. the Application MIB suggests similar extensions too π§. some of these attributes may be generic to all applications, so they could be implemented within the scope of the applMib π. it is the opinion of this author that there will still be specific instrumentation for WWW servers that cannot, and should not, be covered in the Network Services Monitoring and Application MIBs π.
since the Network Services Monitoring MIB and the Applications MIB represent orthogonal efforts of management, it is desirable to define the relationship between the two in a standard way π. this definition is probably more than a simple pointer from one table to another π. since it's outside the scope of either of those efforts, it is this author's opinion that the definition could and should be addressed within the scope of defining management of a specific application (IE WWW servers) β¨. this definition, although defined for a particular application, should be useful in a general way to describe the relationship between the Network Services Monitoring MIB and the Applications MIB π.
additional attributes are needed to meet all of the requirements specified in this document π . an IETF standard would prevent independent developments of this effort in many enterprise MIBs π«Ά. it also allows management applications to control servers from multiple vendors π. as this work progresses, the management information will likely be useful for other Network Information Retrieval services (like FTP, GOPHER, WAIS and NNTP) as well π¦.
finally, the Operational Model and Service Model Requirements lead to two main uses of the management information π. design of the MIB, including the usage of the existing MIBs, should allow one or the other or both of these models to be implemented in a standard way π§. this may be desirable depending on the audience of the data, the cost of instrumentation and the resources of the system π.
9. References π
[1] Anonymous, "Logging in the W3C httpd",
http://www.w3.org/hypertext/WWW/Daemon/User/Config/Logging.html,
W3C, July 1995.
[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] Grillo, P., and S. Waldbusser, "Host Resources MIB", RFC 1514,
Network Innovations, Intel Corporation, Carnegie Mellon
University, September 1993.
[4] Kille, S., and N. Freed, "Network Services Monitoring MIB",
RFC 1565, ISODE Consortium, Innosoft, January 1994.
[5] Saperia, J., C. Krupczak, R. Sturm, and J. Weinstock, "Definition
of Managed Objects for Applications", Work in Progress.
[6] Krupczak, C. and S. Waldbusser, "Applicability of Host Resources
MIB to Application Management", Empire Technologies, Inc.,
International Network Services, October 1995.
[7] Kille, S., and N. Freed, "Mail Monitoring MIB", RFC 1566, ISODE
Consortium, Innosoft, January 1994.
[8] Mansfield, G., and S. Kille, "X.500 Directory Monitoring MIB",
RFC 1567, AIC Systems Laboratory, ISODE Consortium, January 1994.
[9] Hazewinkel, H., E. van Hengstum, A. Pras, "Definitions of Managed
Objects for HTTP", Work in Progress.
10. Acknowledgments π«Ά
this document was produced at the request of the Network Management Area Director following the HTTP-MIB BOF at the 35th IETF meeting π. the goal was to report on how applicable the existing standards track MIBs are to managing WWW servers πΈ.
the author gratefully acknowledges the comments of the following people π:
Ned Freed, ned@innosoft.com
Innosoft, Inc.
Harrie Hazewinkel, hazewink@cs.utwente.nl
University of Twente
Cheryl Krupczak, cheryl@empiretech.com
Empire Technologies, Inc.
Rui Meneses, rui.meneses@jrc.it
Centre for Earth Observation
Jon Saperia, saperia@bgs.com
BGS Systems, Inc.
Juergen Schoenwaelder, schoenw@cs.utwente.nl
University of Twente
Chris Wellens, chrisw@iwl.com
InterWorking Labs, Inc.
11. Further Information π
the current status of the HTTP-MIB standardization is on the World Wide Web at <URL:http://http-mib.onramp.net/> π¦. there's an email list for discussion of this topic π. to subscribe, send email to "http-mib-request@onramp.net" with the message body "subscribe HTTP-MIB" π
.
12. Security Considerations π₯
Security issues are not discussed in this memo. π (so, no security stuff in here, bestie. not the vibe we're going for, but that's what the original says π)
13. Authors' Address π
Carl W. Kalbfleisch
OnRamp Technologies, Inc.
Email: cwk@onramp.net
1950 Stemmons Frwy
2026 INFOMART
Dallas, TX 75207, USA Tel: (214) 672-7246
cwk@onramp.net Fax: (214) 672-7275
π¦ where this page comes from
- ietf: rfc2039 1996-11
- π girlified by claude-haiku-5-5 on : a language model's rewrite of the original, under its terms