Relation between HTTP Keep Alive duration and TCP timeout duration

Posted by Suresh Kumar on Stack Overflow See other posts from Stack Overflow or by Suresh Kumar
Published on 2010-04-29T08:44:33Z Indexed on 2010/04/30 8:47 UTC
Read the original article Hit count: 496

Filed under:
|
|
|
|

I am trying to understand the relation between TCP/IP and HTTP timeout values. Are these two timeout values different or same? Most Web servers allow users to set the HTTP Keep Alive timeout value through some configuration. How is this value used by the Web servers? is this value just set on the underlying TCP/IP socket i.e is the HTTP Keep Alive timeout and TCP/IP Keep Alive Timeout same? or are they treated differently?

My understanding is (maybe incorrect): The Web server uses the default timeout on the underlying TCP socket (i.e. indefinite) regardless of the configured HTTP Keep Alive timeout and creates a Worker thread that counts down the specified HTTP timeout interval. When the Worker thread hits zero, it closes the connection.

EDIT: My question is about the relation or difference between the two timeout durations i.e. what will happen when HTTP keep-alive timeout duration and the timeout on the Socket (SO_TIMEOUT) which the Web server uses is different? should I even worry about these two being same or not?

© Stack Overflow or respective owner

Related posts about http

Related posts about tcp