[e2e] tcp connection timeout

David Borman david.borman at windriver.com
Mon Mar 6 14:44:20 PST 2006


On Mar 6, 2006, at 11:08 AM, Ted Faber wrote:

> It's rarely valuable to know that the transport connection is up.   
> What
> you want to know is if the other end of the application (web server,
> TCP-NFS server, realplayer streamer) is still talking to you.  A
> deadlocked web server still ACKs TCP segments.  A working
> TCP connection is necessary but not sufficient, so you need an
> application keepalive.  End-to-end 101.
...
> Knowing the phone's connected while the person you're talking to is  
> out
> cold doesn't help enough.

But it is valuable to know that the transport connection is down, and  
when the keepalive triggers a TCP RST, then it is providing a useful  
service.  No sense in hanging onto the phone if the other side has  
hung up.

Keepalives should be viewed as a way to determine if a connection is  
dead, not if it is alive.  It's a subtle but important difference,  
and the main issue is when you get no response, does that indicate  
that the connection is dead?  It seems to me that that is where most  
of the objections to keepalives come, where lack of response due to  
an outage kills a perfectly good idle connection.

			-David Borman


More information about the end2end-interest mailing list