23.5 Connexion TCP non terminée après une déconnexion anormale

Il arrive parfois que le serveur OES Linux ne parvienne pas à détecter un hôte client qui s'est terminé brusquement en raison d'une défaillance du poste de travail ou d'une panne de courant. Toutefois, la connexion reste active pendant le timeout par défaut (environ 12 à 15 minutes) avant la désactivation de la connexion. Si vous avez défini les connexions simultanées sur 1, il est recommandé de mettre fin à la connexion manuellement ou de patienter pendant toute la durée du timeout avant d'établir une nouvelle connexion. Cette situation se produit lorsque le processus Watchdog ne parvient pas à terminer la connexion correctement. Par conséquent, si les connexions simultanées sont définies sur 1 et que la connexion n'est pas arrêtée par le processus Watchdog, les utilisateurs ne peuvent pas se connecter. Le noyau Linux fournit trois paramètres qui permettent de modifier le mode de fonctionnement des sondes keepalive du côté serveur. Utilisez ces paramètres pour mettre en œuvre une solution de contournement au niveau TCP.

Ces paramètres sont disponibles dans le répertoire /proc/sys/net/ipv4/.

Modifiez ces trois paramètres de manière à ce qu'ils résolvent le problème sans pour autant générer de grandes quantités de trafic supplémentaire. Par exemple, vous pouvez effectuer la modification suivante (avec une durée de détection de 3 minutes) :

REMARQUE :Soyez prudent lorsque vous modifiez les valeurs de ces paramètres et évitez de choisir des connexions déjà valides.

Les paramètres prennent effet dès que les fichiers sont modifiés. Vous devez redémarrer tous les services. Toutefois, les paramètres ne sont valides que pour la session en cours. Une fois que le serveur est redémarré, les paramètres reprennent leur valeur par défaut.

Pour que le paramétrage soit permanent (même après un redémarrage), effectuez les opérations suivantes :

Ajoutez les entrées suivantes dans /etc/sysctl.conf.

Nous vous recommandons d'utiliser ces paramètres que si tous les clients et serveurs sont connectés par l'intermédiaire d'un réseau local.