Application Connections Test

The Application Connections test tracks the TCP connections for specified ports on a target host. This test is particularly useful while monitoring multi-tier infrastructures, where the challenge is to zero-in on the bottleneck tier in the event of an infrastructure-wide slowdown. By monitoring the connections established to each tier it is possible to determine which tier is causing a slow-down. For example, consider a multi-tier infrastructure with a web server, application server, and a database server. If the number of established connections suddenly increases on all the tiers at about the same time, this indicates a bottleneck at the database (since a database slowdown impacts the application server and web server tiers). On the other hand, if the web and application server tiers alone show a connection increase, it indicates a bottleneck at the application server and not the database. This test is disabled by default.

This test is disabled by default. To enable the test, go to the enable / disable tests page using the menu sequence : Agents -> Tests -> Enable/Disable, pick the desired Component type, set Performance as the Test type, choose the test from the DISABLED TESTS list, and click on the << button to move the test to the ENABLED TESTS list. Finally, click the Update button.

Target of the test : Any host

Agent deploying the test : An internal/remote agent

Outputs of the test : One set of results for every port configured

Configurable parameters for the test
Parameter Description

Test Period

How often should the test be executed.

Host

The host for which the test is to be configured.

port

The port number at which the specified HOST listens.

Server IP

The SERVERIP text box displays '*' by default, indicating that, by default, connections on all the IP addresses on the target system will be monitored by the test. You can override this default setting by providing a single SERVERIP, so that connections running on a particular IP on the specified HOST are alone tracked.

Portnos

The PORTNOS parameter will display the target system's port number by default. In this case, the test will report metrics pertaining to the default port only. You can override this default setting by providing a single or a comma-separated list of port numbers to be monitored. The test will then report the status of the TCP connections to each of the port numbers so configured.

Measurements made by the test
Measurement Description Measurement Unit Interpretation

Syn_sent connections

Indicates the number of connections that are in the process of being established by the host to other server(s).

Number

 

Syn_received connections

Indicates the number of connections that are in the process of being established by remote hosts to this host.

Number

 

Established connections

Indicates the total number of TCP connections on this host for the port number(s) specified in the test arguments.

Number

The number of TCP connections established is a key indicator of the server workload. A significant increase in this metric may indicate a slow down in request handling by the application.

 

Close_wait connections

Indicates the current number of TCP connections to a port that are in the TCP CLOSE_WAIT state. Connections remain in the close wait state when they are waiting for a process to close the TCP socket.

Number

 

Fin_wait_1 connections

Indicates the number of TCP connections to a TCP port that are in the FIN_WAIT_1 state. A TCP connection moves to the FIN_WAIT_1 state when a local program closes a socket but the remote server does not respond.

Number

A large number of FIN_WAIT_1 connections can occur if clients are not properly closing down TCP connections. A connection may linger in this state for tens of minutes.

 

Fin_wait_2 connections

Indicates the number of TCP connections to a TCP port that are in the FIN_WAIT_2 state. A connection moves to the FIN_WAIT_2 state when a remote server shuts down its side of a TCP connection and the local server does not respond to it.

Number

 

Time_wait connections

Indicates the number of connections in the TCP TIME_WAIT state. The TIME_WAIT state is a safety mechanism, to catch stray packets for that connection after the connection is "officially" closed. Since the maximum time that such stray packets can exist is 2 times the maximum round-trip time, the TIME_WAIT state lasts twice the round-trip period. Roughly, the duration is 30-120 seconds.

Number

 

TCP Send queue

Send-Q is used to show the socket buffer status. This indicates the number of bytes that have been sent to the destination, and are awaiting acknowledgement.

(Available only for Solaris, Linux, HP-UX and AIX)

Number

A high value of this measure indicates a poor network response.

TCP Receive queue

Receive-Q is used to show the socket buffer status. The number indicates the number of bytes received from the source and copied.

(Available only for Solaris, Linux, HP-UX and AIX)

Number

A high value of this measure indicates a poor network response.