Protocols Interview Questions and Answers


Explain How can we detect that the other end of a TCP connection has crashed? Can we use "keepalives" for this?

Detecting crashed systems over TCP/IP is difficult. TCP doesn't require any
transmission over a connection if the application isn't sending anything, and
many of the media over which TCP/IP is used (e.g. Ethernet) don't provide a
reliable way to determine whether a particular host is up. If a server doesn't
hear from a client, it could be because it has nothing to say, some network between
the server and client may be down, the server or client's network interface
may be disconnected, or the client may have crashed. Network failures are often
temporary (a thin Ethernet will appear down while someone is adding a link to the
daisy chain, and it often takes a few minutes for new routes to stabilize when a
router goes down) and TCP connections shouldn't be dropped as a result.

Posted by:Richards