En una implementación típica de servidor de red C, el tamaño de la cola pendiente de aceptación se puede configurar con listen. Cuando una nueva conexión obtiene ingresos y no hay más espacio en la cola, ECONNREFUSED se envía al cliente o la solicitud se ignora.Conozca el tamaño de aceptar la cola de conexiones pendientes en GNU/Linux
¿Hay alguna forma de conocer el estado de esta cola? Es importante porque en un daemon basado en eventos de alta carga, estamos detectando algunos intentos del cliente, y sospechamos que esta cola se llena y los intentos de conexión se ignoran.
Gracias de antemano.
¿El cliente recibe un error ECONNREFUSED? Si es así, tienes tu respuesta. AFAIK no hay manera de saber el tamaño de la cola pendiente. – Simone
No exactamente. El saludo de manos no está terminado correctamente y el servidor entra en reintentos enviando el SYNACK como si se hubiera perdido el último ACK del handshake. Hemos reproducido este comportamiento cuando la cola de aceptar pendiente sale del límite establecido con listen, por lo que esta cola es nuestro sospechoso. –
¿Estás seguro de que aceptas todas las conexiones entrantes? – Simone