Re: TCP Keepalives Problem on Linux



olssons@xxxxxxxxx wrote:
What I have found is this:

If during the period when 2 connection hosts are physically
disconnected (ie cable pull), the client (Host-A) attempts to send
*any* data on the connection (even 1 byte), TCP keepalives stop
functioning and will never cause the connection to drop... even if
no more data is ever sent or received on the connection.

By definition, from the perspective of HostA when that single byte is
sent and remains unACKed, the connection remains "active" rather than
idle so the keepalives should not start. The connection will be
timed-out based on the "normal" retransmission mechanisms.

Only when/if there is no outstanding data on a connection should a
keepalive timer fire.

rick jones
--
The glass is neither half-empty nor half-full. The glass has a leak.
The real question is "Can it be patched?"
these opinions are mine, all mine; HP might not want them anyway... :)
feel free to post, OR email to rick.jones2 in hp.com but NOT BOTH...
.



Relevant Pages

  • Re: Redhat Enterprise 4 and 15 second delays with NFS via TCP
    ... If the client is leaking connections, ... server will wait longer than the client before closing the connection ... This close the connection after not seeing ... > You can read my negative experiences with keepalives in that thread, ...
    (comp.protocols.nfs)
  • Re: Redhat Enterprise 4 and 15 second delays with NFS via TCP
    ... > server will wait longer than the client before closing the connection ... This close the connection after not seeing ... >> You can read my negative experiences with keepalives in that thread, ...
    (comp.protocols.nfs)
  • Re: TCP Keepalives Problem on Linux
    ... the connection remains "active" rather than ... idle so the keepalives should not start. ... It is useful for understanding what Linux ...
    (comp.os.linux.networking)
  • Re: Long keepidle time
    ... Most applications that open a large number of connections are smart enough to notice that the other end of the connection has gone silent and automatically terminate the connection. ... In the case of telnet / ssh sessions, you don't want keepalive being too active. ... So, in summary, there are many opinions about keepalives. ...
    (freebsd-net)
  • Re: sshd or ssh client times out after 2 hours
    ... > probe will detect the failure and close the connection. ... > router outage is short, then the keepalive will probably not happen ... > keepalives, the connection could survive a lengthy router outage. ... So the keepalive feature is meant primarily for the client? ...
    (comp.security.ssh)