Forum Discussion

Keith_Richards_'s avatar
Keith_Richards_
Icon for Nimbostratus rankNimbostratus
Apr 07, 2008

Client Connects performance graph

Please can anyone explain the difference between a Client Connect, Client Accept and Server Connect? There are three different SNMP OIDs for new connections (sysStatClientTotConns, sysTcpStatAccepts and sysTcpStatConnects respectively) and when running a load test I saw there was the highest number of Client Connects, then a lower level of Client Accept and then the lowest level was Server Connect. I think the difference between Client and Server can be explained by oneconnect, but I'm not sure what the two different Client OIDs are for.

 

 

Can anyone else shed any light?

4 Replies

  • I was talking over this with Keith and we found some relevant details in SOL7946 (Click here):

     

     

     

    * Client Connects

     

     

    The Client Connects section represents the total number of new connection flows created by TMM. This includes all connections – it is not limited to any specific type or protocol.

     

     

    * Client Accepts

     

     

    The Client Accepts section represents the total number of acknowledgments for TCP (SYN+ACK) segments received from clients for a standard virtual server using a TCP profile. The Client Accepts section differs from the Clients Connects section because the Client Accepts section only reports the number of TCP segments that were accepted by the client.

     

     

    * Server Connects

     

     

    The Server Connects section represents the total number of TCP acknowledgment segments (SYN+ACK) received from the server for a standard virtual server using a TCP profile.

     

     

     

     

    This part isn't quite clear to me:

     

     

    "The Client Accepts section differs from the Clients Connects section because the Client Accepts section only reports the number of TCP segments that were accepted by the client."

     

     

    Does this mean that the Client Connects statistic measures the number of SYN ACKs sent to the client and Client Accepts measures the number of three way handshakes completed (times that the client ACK'd the SYN ACK)?

     

     

    Thanks,

     

    Aaron
  • Deb_Allen_18's avatar
    Deb_Allen_18
    Historic F5 Account
    Not sure what they were trying to say there, but it contradicts itself - is it what we rec'd from the client, or what the client accepted? since we can only really measure the first, it's more likely to be correct.

     

     

    Just guessing here, but given our lexicon, I'm fairly certain that for TCP connections the Client Connects counter would increment when connections reach SYN-RCVD state (immediately after a SYN is received from any client), and the Client Accepts counter would increment only after a connection reached the ESTABLISHED state (handshake completed) -- the difference being the number of nascent connections that died having never completed the handshake.

     

     

    Connects would also include UDP, but then again both counters may increment in tandem for UDP since there is no handshake. Some skewing might also be expected if Loose Init were enabled. (The last is the most tenuous guess of all, just thinking all the data may not be in the conn table to count accurately at any given point.)

     

     

    I think I'll see if the solution can be clarified. Thanks for bringing this to light, guys.

     

     

    /d

     

  • Deb_Allen_18's avatar
    Deb_Allen_18
    Historic F5 Account
    I opened a case with Support asking for validation/clarification, will post back when I know more.

     

     

    /d
  • Has this ever been clarified? because I have the same question. I really would need some details, because I am trying to track down some issues maybe related to this.

     

    Thanks, Wolfgang