On Mon, 2004-09-13 at 15:58, Christian Kaenzig wrote:
> On Monday 13 September 2004 12:22, FÃlix Hauri wrote:
> > On Mon, Sep 13, 2004 at 11:44:43AM +0200, Magnus wrote:
> > > je ne pense pas que ce soit lià à leur implÃmentation de
> > > TCP/IP. En fait, lors de la dÃconnexion, M$ "tue"
> > > l'interface. Linux ne le fait pas nativemement; si tu
> > > installes un prog du type de ifplugd avec un timeout de 2
> > > sec, tu verras le mÃme comportement que M$.
> > > M$ effectue l'Ãquivalent de # ifconfig <interface> down.
> >
> > timeout !?
> > Ce n'est pas trÃs ``TCP''!?
> 
> TCP a un timeout de rÃception d'un ACK pour un paquet. AprÃs Ãa, il considÃre 
> que le paquet est perdu et le rÃÃmet. Sauf erreur il a aussi un nombre 
> d'essais avant de signaler une erreur à l'application.
> 
> Je ne suis pas du tout expert, mais je pense que ce timeout et nombre d'essais 
> max peut changer en fonction de l'implÃmentation (ou du paramÃtrage ?) de 
> TCP.
> 
> Il serait alors normal que si aucune donnÃe n'est transmise, la coupure ne 
> soit pas dÃtectÃe (pas d'erreur de transmission). Et peut-Ãtre que Linux n'a 
> ici pas de nombre d'essais maximum (donc jamais d'erreur signalÃe)...

Il y a un paramÃtre de timeout qui peut Ãtre spÃcifià pour le TCP (au
niveau du systÃme) et qui permet de donner le signalement de perte de
connexion. Normalement il est dÃfini autour de 2h.
Je ne me rappelle plus ou j'avais lu Ãa, en 2000 j'avais du travailler
sur des sockets et j'avais dÃcouvert ce paramÃtre. Et je me rappelle
aussi qu'il Ãtait dit que c'Ãtait un paramÃtre global au systÃme et que
le changer affectait toutes les applications.
Ceci dit, il s'agissait de Solaris 2.6, mais je pense que sous Linux Ãa
doit Ãtre la mÃme chose.

Et l'expÃrience est trÃs simple à faire. Il suffit d'ouvrir un telnet et
d'enlevÃr le cÃble. Si on ne touche à rien, aprÃs 2h (à peu prÃs) la
connexion tombe toute seule. Si on essaye d'utiliser la connexion, elle
tombe plus vite car le timeout du ACK TCP intÃrvient bien avant.

ciao, Leo

> > > Lors de la reconnexion, il recrÃe l'interface complÃtement
> > > (si DHCP, il refait la requÃte, il me semble.)
> >
> > Dans tous les cas, je ne pense pas que cela aille si loin,
> > car si je tire le cÃble dix secondes mais que je ne tape
> > rien pendant ces dix secondes, puis que je rebranche le
> > cÃble AVANT de taper qqch, alors tout va bien.
> >
> > Il me semble que si l'interface IP Ãtait killÃ, alors telnet
> > le serait immÃdiatement aussi...
> 
> Ca dÃpend de la gestion. Si les couches rÃseau sont bien sÃparÃes, un arrÃt 
> momentanà du rÃseau ne devrait pas dÃranger tcp/ip. Une fois reconnectÃ, avec 
> la mÃme IP, les paquets avec le mÃme tuple (ip et port des deux bouts plus le 
> protocole) seront transmits au mÃme socket (s'il existe toujours) et TCP n'y 
> aura vu que du feu.
> 
> Christian
> _______________________________________________
> gull mailing list
> [EMAIL PROTECTED]
> http://lists.alphanet.ch/mailman/listinfo/gull
> 
> 

_______________________________________________
gull mailing list
[EMAIL PROTECTED]
http://lists.alphanet.ch/mailman/listinfo/gull

Répondre à