I’ve been playing around with TCP_KEEPALIVE.
I set up a very small server test program on one machine.
A client is started on a seperate machine which connect
to the server. After the connection is establish the server
waits for incomming data via select(). The server sets
the keep alive timeout to 3 seconds (for test purposes)
If I unplug the network cable on the client machine, the
server sits there for as long as I was willing to wait.
When I plug the cable back, the select() exited
with an error within 3-10 seconds.
Is this the expected behavior?