Transparent TCP Connection Failover 2003 IEEE Dependable Systems
Transparent TCP Connection Failover 2003 IEEE Dependable Systems and Networks UC Department of Electrical and Computer Engineering R. R. Koch, S. Hortikar, L. E. Moser, P. M. Melliar-Smith
Outline l l l l Introduction Structure Loss of messages Failure of servers Connections Measurements Conclusion
Introduction l l The failover is achieved by only modifying the server’s TCP/IP stack. One new sublayer “Bridge” is inserted between TCP layer and IP layer. Client router Primary Secondary TCP Bridge IP IP
Structure l Requirements of connection failover : l Secondary server must have a copy of all TCP segments that : l l l Client Primary, acknowledged Primary Client, not acknowledged Sequence numbers must be synchronized. l Get offset of sequence numbers setting by Primary and Secondary servers. § Offset = Pseq – Sseq
P’s bridge sends out data only when it receives those matching data from S. S P Application TCP P output queue S output queue C Dest. P->S IP IP Client Dest. C->P router Promiscuous mode
Loss of messages l “C (P, S)” or “P C” , segment m with Ack (k) loss : l l Sends segment k immediately. S P, segment m loss l Retransmission of S is received by P’s bridge first. l l Send it immediately. (P send m twice) Retransmission of P is received by P’s bridge first. l Discard the copy of P’s retransmission, waiting until receiving S’s retransmission.
Failure of servers l Primary server failed: l l Tell the secondary server bridge to stop sending TCP segments. Secondary server : l l l Disable Promiscuous receive mode. Disable Address translation. Take over the IP address of Primary server.
l Secondary server failed : l Primary server do: l l l Remove all data from the primary server’s queue, place them into new segment to be sent. Primary’s Bridge routes all incoming TCP segment directly to TCP layer. Continue to synchronize segment numbers.
Connections l Start connections l l Three-way handshake Connection termination l l Four-way handshake The primary’s bridge remains active as long as the connection is not fully closed.
Measurements l Server : l l l Free. BSD 4. 4 lite kernel 566 MHz PIII Celeron PC Client l l Mandrake 7. 2 Linux 1 GHz PIII PC
- Slides: 12