Dev C : Pb avec Keepalive sur connexion TCP...

Le
Yann Cohen
Bonjour,

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

Pourtant des TFM j'en ai lus

Si qq'1 voit ma betise, je suis tout oui.

Cordialement.

Yann.
Vidéos High-Tech et Jeu Vidéo
Téléchargements
Vos réponses
Gagnez chaque mois un abonnement Premium avec GNT : Inscrivez-vous !
Trier par : date / pertinence
Yann Cohen
Le #26366493
Le jeudi 10 septembre 2015 à 11:35 +0200, Yann Cohen a écrit :
Bonjour,

je ne comprends pas le comportement d'une configuration d'un serveur TCP
avec le TCP keepalive.



[...]
sur son time out applicatif...

Donc "ça marche pas" ou :
* j'ai pas compris comment cela devrait marcher ;
* j'ai pas configuré correctement...


C'est exactement cela, je n'ai pas configuré correctement => c'est sur
la socket issue de l'accept() qu'il faut les mettre les paramètres !


Pourtant des TFM j'en ai lus...

Si qq'1 voit ma betise, je suis tout oui.

Cordialement.

Yann.


Publicité
Poster une réponse
Anonyme