1 Reply Latest reply: May 10, 2012 3:09 PM by Steve H -Oracle RSS

    tcpListenDrop increaes. find port / process

    895623
      Hi,

      I've got a machine running Oracle Solaris 10 9/10 s10s_u9wos_14a SPARC, Generic_147440-09 .
      The tcpListenDrop is increasing over the time. I'd like to know, which port / process hits the backlog q limit.

      tcp_listen_hash shows me the max value of every port. But 'q0' and 'q' are everytime 0, when calling 'ndd /dev/tcp tcp_listen_hash' .
      Ok, maybe I never hit the point in time, when there is at least 1 in the 'q', but I' ve tried several times.
      Could someone explain me backlog (q0/q/max) of tcp_listen_hash again?

      TCP zone IP addr port seqnum backlog (q0/q/max)
      000 600898e6cc0 2 ::ffff:0.0.0.0 00514 00000000 0/0/16
      003 300220862c0 2 :: 00513 00000000 0/0/16
      022 300218a9040 2 :: 00022 00217648 0/0/8
      029 6008ac5e580 2 ::ffff:0.0.0.0 32925 00000000 0/0/32
      030 300218a9740 2 ::ffff:0.0.0.0 32926 00000000 0/0/64
      032 30021e9d380 2 ::ffff:127.0.0.1 32928 00000002 0/0/8
      033 6008a482600 2 ::ffff:0.0.0.0 32929 00000000 0/0/64
      039 300220870c0 2 ::ffff:0.0.0.0 32935 00000000 0/0/10
      040 300220869c0 2 ::ffff:0.0.0.0 32936 00000000 0/0/10
      050 300226d6c00 2 ::ffff:0.0.0.0 32946 00000000 0/0/8
      058 6008ac5f380 2 ::ffff:127.0.0.1 32954 00000000 0/0/2
      079 300220877c0 2 :: 00079 00000000 0/0/16
      146 60086d1e300 2 ::ffff:127.0.0.1 33296 00000009 0/0/49
      158 6008ac5de80 2 ::ffff:127.0.0.1 06788 00000000 0/0/16
      159 30022c48540 2 ::ffff:127.0.0.1 06789 00000001 0/0/16
      455 600a1b15700 2 ::ffff:127.0.0.1 46450 00000001 0/0/49
      500 30023c57a00 2 ::ffff:172.16.10.3 01521 00079651 0/0/49
      502 6008a7a4900 2 ::ffff:172.16.10.3 01523 00173919 0/0/49
      503 6008ac32540 2 ::ffff:172.16.10.3 01522 00030277 0/0/49



      Thank you,

      kind regards, chris

      Edited by: 892620 on Mar 15, 2012 4:55 AM
        • 1. Re: tcpListenDrop increaes. find port / process
          Steve H -Oracle
          q = number of pending TCP connections for a TCP listener waiting to be accepted by accept - 3 way handshake complete
          q0 = number of connnection request in SYN_RCVD that are halfway through the TCP three-way handshake.
          max = backlog queue size. Represents a limit on the number of incoming client requests that can be queued at the listening endpoint [ int listen(int s, int backlog); ]

          here is a link to dtrace that may help:

          http://gdesaboyina.wordpress.com/2010/01/08/tcplistendrop-and-dtrace-to-get-pid/