Koennte das so ein FIN_WAIT-Problem sein. M.W. ist beim Beenden einer TCP-Verbindung ein 3-Weg-Handshake notwendig, und das kann sehr lange dauern, wenn einer der Partner vorher abhandengekommen ist.
Wahrscheinlich wirst Du entdecken, dass da der Port noch offen ist, im Zustand FIN_WAIT haengt (mit netstat ansehen) und kein Prozess mehr dazu gehoert.
Ich habe mir das ganze noch mal mit aller Ruhe beschaut. Solange so ein FIN_WAIT -zustand noch lebt, wird versucht, sich in kurzen Intervallen rauszuwählen. Irgendwann ist dieses FIN_WAIT dann plötzlich verschwunden und es ist Ruhe im Karton. Nun ist die Frage: wie verhindere ich, das dieser FIN_WAIT hängen bleibt???
mfg Jens
On Sun, Nov 21, 1999 at 06:25:42PM -0000, Jens Puruckherr wrote: : : Ich habe mir das ganze noch mal mit aller Ruhe beschaut. Solange so ein : FIN_WAIT -zustand noch lebt, wird versucht, sich in kurzen Intervallen : rauszuwählen. Irgendwann ist dieses FIN_WAIT dann plötzlich verschwunden und : es ist Ruhe im Karton. Nun ist die Frage: wie verhindere ich, das dieser : FIN_WAIT hängen bleibt??? :
Fast befuerchte ich, dass es da kaum eine Chance gibt, ausser im Kernel selbst irgendwelche Timeouts zu aendern. Vorher wuerde ich aber mal den Stevens oder was anderes konsultieren, ob das schadlos ist.
Irgendwo in /usr/src/linux/net/ipv4/tcp.c oder so aenlich wuerde ich Schluesselstelle vermuten.
Heiko
lug-dd@mailman.schlittermann.de