|Perl Monk, Perl Meditation|
Re^3: How to count the number of pending clients in socket queue?by morgon (Curate)
|on Nov 18, 2013 at 14:00 UTC||Need Help??|
I believe (not 100% sure but seems to work on my Debian with 3.10.3 kernel) that in /proc/net/tcp the sockets in listen-state have a state-code of "0A" and for those the receive-queue entry holds the number of pending (i.e. not yet accepted) connections.
This is how such an entry looks like:
1: 00000000:1A0B 00000000:0000 0A 00000000:00000002 00:00000000 00000000 1000 0 1117932 1 ffff880031e70040 100 0 0 10 0
The fist column is the local address (here a server-socket listening on port 6667) the next the remote address, then the state (here 0A for listening) then the transmit and receive queue-lengths.
Here my server has 2 connections pending.
So using the address your server listens you should be able to extract the information you need from /proc/net/tcp.
Maybe Linux::Proc::Net::TCP can help here, but I have never used it.