Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

[Forcer à fermer une socket à l'etat ESTABLISHED sous Linux si le client est down]

3 réponses
Avatar
s45_nospam
Bonjour,

Je suis sous RedHat. J'ai une application client-serveur entre 2
serveurs linux qui ouvre plusieurs sockets.
Le client tombe (suite =E0 arret de la carte reseau).
Les sockets ouvertes entre mes 2 serveurs restent pour autant =E0 l'etat
ESTABLISHED.
J'ai essaye de jouer en modifiant les valeurs dans /etc/sysctl.conf:

sysctl -a|grep keep
net.ipv4.tcp_keepalive_intvl =3D 1
net.ipv4.tcp_keepalive_probes =3D 5
net.ipv4.tcp_keepalive_time =3D 60

Je pensais qu'=E0 60+5 soit 65 secondes, mes sockets ouvertes seraient
tuees. Ce n'est pas le cas.
Y a -t-il une valeur minimal en dessous de laquelle la valeur n'est pas
prise en compte?
J'ai trouve les valeurs par defaut:
net.ipv4.tcp_keepalive_intvl =3D 75
net.ipv4.tcp_keepalive_probes =3D 9
net.ipv4.tcp_keepalive_time =3D 7200

Sylvain

3 réponses

Avatar
Nicolas George
"" wrote in message
:
Je suis sous RedHat. J'ai une application client-serveur entre 2
serveurs linux qui ouvre plusieurs sockets.
Le client tombe (suite à arret de la carte reseau).
Les sockets ouvertes entre mes 2 serveurs restent pour autant à l'etat
ESTABLISHED.
J'ai essaye de jouer en modifiant les valeurs dans /etc/sysctl.conf:


Ne change surtout pas les paramètres de timing réseau si tu ne maîtrises pas
parfaitement ce qu'ils font, tu risques de te causer beaucoup plus d'ennuis
que de solutions.

TCP est conçu pour résister à un certain niveau de dysfonctionnement
réseau ; selon les applications, ce niveau peut être trop élevé, mais il
n'est en général pas souhaitable de le réduire au niveau du protocole de
transport, il vaut mieux implémenter ça au niveau applicatif.

Avatar
Panthere
essaye aux nivaux par feux avec iptables, :)
Avatar
Vincent Bernat
OoO Lors de la soirée naissante du vendredi 23 juin 2006, vers 17:05,
"" disait:

Le client tombe (suite à arret de la carte reseau).
Les sockets ouvertes entre mes 2 serveurs restent pour autant à l'etat
ESTABLISHED.


Utilise tcpkill qui enverra un reset.
--
Terminate input by end-of-file or marker, not by count.
- The Elements of Programming Style (Kernighan & Plauger)