Masking Failures of TCP Servers
Without Changing almost Anything

Keith Marzullo
joint work with Dmitrii Zagorodnov, Thomas Bressoud (Lucent Bell Labs)
and Lorenzo Alvisi and Ayman El-Khahsab (UT Austin)


I will describe the design and implementation of a fault-tolerant TCP (FT-TCP) that allows a crashed server to keep its TCP connections while it either recovers or it is failed over to a backup. The failure and recovery of the server process are completely transparent to client processes connected with it via TCP. FT-TCP does not affect the software running on a client, does not require to change the server's TCP implementation, and does not use a proxy. The overhead of using FT-TCP is very low in a reasonable network configuration.