je ne comprends pas le comportement d'une configuration d'un serveur TCP
avec le TCP keepalive.
Voici les hypothèses :
* la socket "Socket" est configurée avec :
* SO_KEEPALIVE à 1,
* TCP_KEEPIDLE à 600,
* TCP_KEEPINTVL à 60,
* TCP_KEEPCNT à 5 ;
* serveur multi threads préchargés avec chaque thread qui attend
(accept(Socket)) une connexion sur la socket ;
* si au bout de 30 minutes les threads ne voient pas de données
sur leur connexions ils la ferment...
À partir de là, je comprends que au bout de 10 minutes sans trafic sur
la socket un keepalive est lancé toutes les minutes et qu'au bout de 5
non réponse la socket est déclarée comme perdu ; donc au bout de 15
minute le système doit déclarer la socket fermée.
Le test effectué est le suivant :
1. un client connecté à un switch ouvre une connexion sur mon
serveur
2. la connexion est établie (vu avec netstat)
3. le client est déconnecté du switch
4. la connexion est toujours établie
5. au bout d'une demi heure la connexion est coupée par le thread
sur son time out applicatif...
Donc "ça marche pas" ou :
* j'ai pas compris comment cela devrait marcher ;
* j'ai pas configuré correctement...