Como você está usando uma conta root, você pode ver todos os processos de todos os usuários - indica que a conexão é feita pelo kernel.
Para lidar com a conexão, você deve chamar a função listen()
com os parâmetros do descritor de soquete e do backlog. De acordo com man listen
:
The backlog argument defines the maximum length to which the queue of pending connections for sockfd may grow. If a connection request arrives when the queue is full, the client may receive an error with an indication of ECONNREFUSED or, if the underlying protocol supports retransmission, the request may be ignored so that a later reattempt at connection succeeds.
The behavior of the backlog argument on TCP sockets changed with Linux 2.2. Now it specifies the queue length for completely established sockets waiting to be accepted, instead of the number of incomplete connection requests.
EDITAR:
Conexões TCP de entrada são tratadas pelo kernel (handshake TCP), é por isso que você vê conexões como ESTABELECIDO. Quando o kernel estabelece a conexão TCP, a conexão é adicionada à fila quando está aguardando que o programa seja aceito. O Backlog indica o tamanho da fila, não o número máximo de conexões.
Assim, '-' sign in netstat indica que o cliente solicitou a conexão com o seu servidor, o kernel tratou o handshake TCP e adicionou conexão à fila, mas a conexão ainda não foi aceita pelo seu servidor.
EDIT2:
Confira o site . Há um fluxograma legal que descreve todo o processo.