Hallo,
ich habe einen Server geschrieben, der einige Socket-Verbindungen aufmacht. Danach sende ich meine Daten über diesen Socket und schließe den Strom und den Socket wieder.
Das funktioniert soweit ganz gut.
Nur wenn ich mir die TCP-Verbindungen (mit TCPView) ansehe, sind diese Verbindungen vom Status TIME_WAIT und werden erst nach einer gewissen Zeit wirklich beendet.
Das fürt zu meinem Problem.
Da ich innerhalb kurzer Zeit sehr viele Anfragen an den Server bekomme, werden auch innerhalb kurzer Zeit sehr viele TCP-Verbindungen geöffnet (und auch wieder geschlossen). Nun werden diese Verbindungen auf TIME_WAIT gesetzt und nach einer gewissen Zeit beendet. Allerdings werden während dieser Zeit weitere Verbindungen geöffnet.
So das sich nach einiger Zeit so viele Verbindungen auf TIME_WAIT befinden, das der Server die Arbeit einstellt.
Kann man diese Verbindungen sofort beenden (ich meine jetzt nicht mit close() ), so dass diese nicht erst einen Timeout abwarten?
Danke
Gruß Robin
ich habe einen Server geschrieben, der einige Socket-Verbindungen aufmacht. Danach sende ich meine Daten über diesen Socket und schließe den Strom und den Socket wieder.
Das funktioniert soweit ganz gut.
Nur wenn ich mir die TCP-Verbindungen (mit TCPView) ansehe, sind diese Verbindungen vom Status TIME_WAIT und werden erst nach einer gewissen Zeit wirklich beendet.
Das fürt zu meinem Problem.
Da ich innerhalb kurzer Zeit sehr viele Anfragen an den Server bekomme, werden auch innerhalb kurzer Zeit sehr viele TCP-Verbindungen geöffnet (und auch wieder geschlossen). Nun werden diese Verbindungen auf TIME_WAIT gesetzt und nach einer gewissen Zeit beendet. Allerdings werden während dieser Zeit weitere Verbindungen geöffnet.
So das sich nach einiger Zeit so viele Verbindungen auf TIME_WAIT befinden, das der Server die Arbeit einstellt.
Kann man diese Verbindungen sofort beenden (ich meine jetzt nicht mit close() ), so dass diese nicht erst einen Timeout abwarten?
Danke
Gruß Robin