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