Usamos InterBase en un servidor Windows 2003 y, en intervalos aleatorios, la conexión del cliente al servidor tarda 180 segundos (tres minutos) más de lo habitual. La aplicación no se "cuelga" con la advertencia normal de Windows en la barra de título y continúa felizmente después del retraso.
Ahora la tasa parece haber aumentado desde que se agregaron algunos servidores Windows 2008 a la red.
Como otras aplicaciones en la red no tienen "bloqueos" similares, sospecho que la máquina (virtual) o el proceso del servidor en sí. Usamos la misma versión de software de cliente y servidor de base de datos InterBase en una red diferente sin problemas, por lo que mi primera área de interés es la red (TCP/IP) de la máquina. Por lo mismo no creo que sea un problema de DNS, ¿o es otro candidato?
¿Existen posibles explicaciones técnicas para tal retraso, por ejemplo, como consecuencia de una cola de búfer de red llena, para tal retraso?
netstat -s muestra intentos de conexión fallidos, no se recibieron datagramas descartados.
IPv4-Statistik
Empfangene Pakete = 1267651308
Empfangene Vorspannfehler = 0
Empfangene Adressfehler = 44827
Weitergeleitete Datagramme = 0
Empfangene unbekannte Protokolle = 0
Empfangene verworfene Pakete = 0
Empfangene übermittelte Pakete = 1267651006
Ausgabeanforderungen = 1097296840
Verworfene Routingpakete = 0
Verworfene Ausgabepakete = 0
Ausgabepakete ohne Routing = 0
Reassemblierung erforderlich = 14
Reassemblierung erfolgreich = 7
Reassemblierung erfolglos = 0
Erfolgreiche Datagrammfragmentierung = 7
Erfolglose Datagrammfragmentierung = 0
Erzeugte Fragmente = 14
ICMPv4-Statistik
Empfangen Gesendet
Meldungen 26579 26678
Fehler 0 0
Ziel nicht erreichbar 0 95
Zeitüberschreitung 0 0
Parameterprobleme 0 0
Quelldrosselung 0 0
Umleitungen 0 0
Echos 60 26523
Echoantworten 26519 60
Zeiteinträge 0 0
Zeiteintragantworten 0 0
Adressmasken 0 0
Adressmaskenantworten 0 0
TCP-Statistik für IPv4
Aktiv geöffnet = 69080
Passiv geöffnet = 16751143
Erfolglose Verbindungsversuche = 363
Zurückgesetzte Verbindungen = 633
Aktuelle Verbindungen = 11
Empfangene Segmente = 1265427823
Gesendete Segmente = 1096717835
Erneut übertragene Segmente = 570293
UDP-Statistik für IPv4
Empfangene Datagramme = 2136945
Keine Anschlüsse = 98648
Empfangsfehler = 2680
Gesendete Datagramme = 50088
Respuesta1
Una de las cosas que siempre busco cuando veo que una conexión se bloquea es un error en la búsqueda de DNS inversa. Muchas aplicaciones intentan resolver el nombre DNS de un cliente que se conecta justo después de que el socket acepte en el lado del servidor. Cuando el DNS no se resuelve correctamente, puedes experimentar un bloqueo después del cual todo parece funcionar normalmente sin problemas. He visto esto con una amplia variedad de servicios de aplicaciones. El retraso de 3 minutos que mencionas parece un poco largo para este escenario. El retraso de conexión típico que veo es de menos de 1 minuto.
Respuesta2
El problema desapareció cuando reinstalamos el servidor de la base de datos.