Previous Page: Working with the Log Analyzer  Next Page: For Additional Information

Monitoring the Server Using SNMP

You can monitor your server in real time by using the Simple Network Management Protocol (SNMP). SNMP is a protocol used to exchange data about network activity. With SNMP, data travels between a managed device and a network management station (NMS) where users remotely manage the network.

A managed device is anything that runs SNMP (for example, hosts or routers). Your Novell® Enterprise Web Server is a managed device. An NMS is usually a powerful workstation with one or more network management applications installed. A network management application graphically shows information about managed devices (which device is up or down, which and how many error messages were received, etc.).

Every managed device contains an SNMP agent that gathers information regarding the network activity of the device. This agent is known as the subagent. Each Web server has a subagent.

Another SNMP agent exchanges information between the subagent and NMS. This agent is called the master agent. A master agent runs on the same host computer as the subagents to which it talks. You can have multiple subagents installed on a host machine. All of these subagents can communicate with the master agent.

Values for various variables that can be queried are kept on the managed device and reported to the NMS as necessary. Each variable is known as a managed object, which is anything the agent can access and send to the NMS. All managed objects are defined in a management information base (MIB), which is a database with a tree-like hierarchy.


How SNMP Works

SNMP exchanges network information in the form of protocol data units (PDUs). PDUs contain information about various variables stored on the managed device. These variables, also known as managed objects, have values and titles that are reported to the NMS as necessary. Communication between an NMS and managed device can take place in one of two forms: NMS-initiated and managed-device-initiated.


NMS-Initiated Communication

NMS-initiated communication is the most common type of communication between an NMS and a managed device. In this type of communication, the NMS either requests information from the managed device or changes the value of a variable stored on the managed device.

The following steps make up an NMS-initiated SNMP session:

  1. The NMS searches the server's MIB to determine which managed devices and objects need to be monitored.
  2. The NMS sends a PDU to the managed device's subagent through the master agent. This PDU either requests information from the managed device or tells the subagent to change the values for variables stored on the managed device.
  3. The subagent for the managed device receives the PDU from the master agent.
  4. If the PDU from the NMS is a request for information about variables, the subagent gives information to the master agent and the master agent sends it back to the NMS in the form of another PDU. The NMS then displays the information textually or graphically.

    If the PDU from the NMS requests that the subagent set variable values, the subagent sets these values.


Managed-Device-Initiated Communication

This type of communication occurs when the managed device needs to inform the NMS of an event that has occurred. A managed device such as a terminal would initiate communication with an NMS to inform the NMS of a shutdown or startup. Communication initiated by a managed device is also known as a trap.

The following steps make up a managed-device-initiated SNMP session:

  1. An event occurs on the managed device.
  2. The subagent informs the master agent of the event.
  3. The master agent sends a PDU to the NMS to inform the NMS of the event.
  4. The NMS displays the information textually or graphically.

The Enterprise Web Server MIB

Each Enterprise Web Server has its own management information base (MIB). The Enterprise Web Server's MIB is a file called HTTP.MIB, which contains the definitions for various variables pertaining to network management for the Enterprise Web Server. These variables are known as managed objects. Using the Enterprise Web Server MIB and network management software, such as HP* OpenView*, you can monitor your Web server like all other devices on your network.

The Enterprise Web Server MIB has an object identifier of netscape 1 (http OBJECT IDENTIFIER : := { netscape 1 }) and is located in the server_root\PLUGINS\SNMP\MIBFILES\NETWARE directory.

You can view administrative information about your Web server and monitor the server in real time using the Enterprise Web Server MIB. The following table lists and describes the managed objects stored in the HTTP.MIB.


Table 6. HTTP.MIB Managed Objects and Description

Managed Object Description

httpEntityDescr

Description of the server (includes operating system information)

httpEntityId

Enterprise subtree for vendors (for example, the MIB has an object identifier of 1.3.6.1.4.1.1450)

httpEntityProtocol

HTTP version number

httpEntityVersion

Server software version number

httpEntityOrganization

Organization responsible for the server

httpEntityLocation

Full path for the server

httpEntityContact

People responsible for the server and contact information

httpEntityAddress

IP address of the machine the server is running on

httpEntityPort

Port number that the server is listening on

httpEntityName

Server's identifier name (for example, server2.a.com)

httpEntityType

Type of server

httpEntityMethods

Methods supported by the server (for example, GET, POST, PUT)

httpEntityMaxProcess

Maximum number of active processes on the server

httpEntityMinProcess

Minimum number of active processes on the server

httpEntityMaxThread

Maximum number of active threads on the server

httpEntityMinThread

Minimum number of active threads on the server

httpStatisticsPort

Port number that this server is listening on

httpStatisticsAddress

IP address that this server is bound to

httpStatisticsStatus

Server status (up or down)

httpStatisticsNum
ProcessIdle

Number of idle threads

httpStatisticsNum
ProcessProc

Number of threads that are processing requests

httpStatisticsNum
ProcessDns

Number of threads resolving hostnames

httpStatisticsRequests

Number of requests received and generated

httpStatisticsRequest
Error

Number of request errors detected

httpStatisticsIn
Unknowns

Number of unknown messages received/generated

httpStatisticsInBytes

Number of bytes received

httpStatisticsOutBytes

Number of bytes sent by the server

httpStatisticsTimeOut

Number of times the server timed out

httpStatisticsProcess
Num

Number of running processes

httpStatisticsThreadNum

Number of threads running

httpStatisticsNumBytes

Number of bytes sent by the server

httpStatisticsNum2xx

Number of 200-level status requests handled by the server

httpStatisticsNum3xx

Number of 300-level status requests handled by the server

httpStatisticsNum4xx

Number of 400-level status requests handled by the server

httpStatisticsNum5xx

Number of 500-level status requests handled by the server

httpStatisticsNum200

Number of 200 (Transfer OK) requests

httpStatisticsNum302

Number of 302 (Moved Temporarily) requests

httpStatisticsNum304

Number of 304 (Not Modified) requests

httpStatisticsNum401

Number of 401 (Unauthorized) requests

httpStatisticsNum403

Number of 403 (Forbidden) requests



  Previous Page: Working with the Log Analyzer  Next Page: For Additional Information