Analyzing Connection Data

By monitoring numbers of connections you can identify patterns of client demand for your server. Classify the data in your Performance Monitor logs into intervals by the numbers of connections served during the interval. Observe the length of the processor queue and the processor use on each processor during periods of small, moderate, and large numbers of connections. This data shows how your configuration responds to each load level.

You can identify a processor bottleneck at each interval by:

A long, sustained processor queue (more than two threads).

High use rates on one or more processors.

A curve in the graph of the Current Connections counter on any IIS service performance object that reaches a high value and then forms a plateau. This pattern often indicates that additional connections are being blocked or rejected.

To prevent processor bottlenecks, make certain that a lengthy processor queue isn't forming when you serve large numbers of connections. Typically, you can avoid a bottleneck during peak time by setting the connection limit to twice the average value of Current Connections. If the processor regularly becomes a bottleneck when servicing large numbers of connections, you might consider upgrading or adding processors, or limiting the maximum number of connections on the server. Limiting connections might cause the server to block or reject connections, but it helps to ensure that accepted connections are processed promptly.

The maximum number of connections is set separately for each service. Adminstrators can use the Internet Service Manager to limit the number of connections. On the property page for each service, click the Service tab, then change the value in the Maximum Connections field. The following table shows the default values for maximum connections by service.

Table 6.3 Default Values for Maximum Connections

Service

Default Maximum Connections

FTP

1,000

Gopher

1,000

WWW (HTTP)

100,000