System and method for transparent takeover of TCP connections between servers
First Claim
1. A method for takeover of a Transport Control Protocol (TCP) connection by a second server from a first server comprising:
- generating shared state information with respect to the connection for access by the first server and the second server, wherein the shared state information includes an identification of an application layer protocol being used for communication of an application;
comparing a received data byte sequence number from an acknowledgement byte received by the second server with a sequence number related to the shared state information;
recreating the connection within the second server based upon the compared sequence numbers;
performing a connection checkpoint with an application program interface (API) so as to communicate with each of a plurality of protocols in the first server and so as to cause each of the plurality of protocols to append relevant state information to a data block passed to each of the plurality of protocols with respect to the connection, and to thereby provide the relevant state information to the shared state information; and
relating, by the API, the compared sequence numbers in conjunction with the ready signal to a byte sequence number in an object referenced in the shared state information.
17 Assignments
0 Petitions
Accused Products
Abstract
A system and a method for transparent takeover (or failover) of a remote client TCP connection from a first server in a cluster of interconnected servers to a second server provides the storing of shared state information relative to the connection on each involved server and using of the shared state information to reestablish the connection on the second server. A message using a sequence number to refer to a previously transmitted data element (such as a byte) is sent by the second server and a received client acknowledgement (ACK) of that sequence number, or a higher one, is used to synchronize the server'"'"'s data packet transmission sequence number with the ACK-transmitted sequence number. If synchronization is successful, then the connection is restarted on the second server from the point of termination/failure on the first server.
288 Citations
2 Claims
-
1. A method for takeover of a Transport Control Protocol (TCP) connection by a second server from a first server comprising:
-
generating shared state information with respect to the connection for access by the first server and the second server, wherein the shared state information includes an identification of an application layer protocol being used for communication of an application; comparing a received data byte sequence number from an acknowledgement byte received by the second server with a sequence number related to the shared state information; recreating the connection within the second server based upon the compared sequence numbers; performing a connection checkpoint with an application program interface (API) so as to communicate with each of a plurality of protocols in the first server and so as to cause each of the plurality of protocols to append relevant state information to a data block passed to each of the plurality of protocols with respect to the connection, and to thereby provide the relevant state information to the shared state information; and relating, by the API, the compared sequence numbers in conjunction with the ready signal to a byte sequence number in an object referenced in the shared state information. - View Dependent Claims (2)
-
Specification