Wide area load balancing of web traffic
First Claim
1. A method of facilitating redirection of traffic between a server and a client to between the client and a nearest replica selected from a plurality of replicas, the method comprising:
- receiving a packet that is traveling between a client and a server or between the client and a replica;
when the received packet is a start packet that is traveling from the client to the server, altering the start packet to indicate that the start packet should be forwarded to any replica that duplicates the data content of the server;
when the received packet is an acknowledgement packet that is received first in response to the forwarded start packet, altering the acknowledgement so that it spoofs the server when the acknowledgement originates from the replica and forwarding the altered acknowledgement to the client; and
when the received packet is an acknowledgement that is not received first in response to the forwarded start packet, inhibiting sending of the acknowledgement to the client.
1 Assignment
0 Petitions
Accused Products
Abstract
In one embodiment, a packet is received from a client, and the packet has a destination identifier associated with a server. When the packet is a start packet, the start packet is altered to indicate that the start packet should be forwarded to any replica that duplicates the data content of the server. The destination identifier of the start packet may be stored for later use. The start packet is then sent to the server. When the start packet indicates that the start packet should be forwarded to any replica that duplicates the data content of the server, the start packet is encapsulated and sent to each replica associated with the server. When a first acknowledgement packet associated with the start packet is received a source identifier of the first acknowledgement packet is stored and associated with the stored destination identifier. The first acknowledgement packet is then sent to the client.
94 Citations
36 Claims
-
1. A method of facilitating redirection of traffic between a server and a client to between the client and a nearest replica selected from a plurality of replicas, the method comprising:
-
receiving a packet that is traveling between a client and a server or between the client and a replica;
when the received packet is a start packet that is traveling from the client to the server, altering the start packet to indicate that the start packet should be forwarded to any replica that duplicates the data content of the server;
when the received packet is an acknowledgement packet that is received first in response to the forwarded start packet, altering the acknowledgement so that it spoofs the server when the acknowledgement originates from the replica and forwarding the altered acknowledgement to the client; and
when the received packet is an acknowledgement that is not received first in response to the forwarded start packet, inhibiting sending of the acknowledgement to the client. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15)
-
-
16. A computer system operable to facilitate redirection of traffic between a server and a client to between the client and a nearest replica selected from a plurality of replicas, the computer system comprising:
-
a memory; and
a processor coupled to the memory, wherein at least one of the memory and the processor are adapted to provide;
receiving a packet that is traveling between a client and a server or between the client and a replica;
when the received packet is a start packet that is traveling from the client to the server, altering the start packet to indicate that the start packet should be forwarded to any replica that duplicates the data content of the server and forwarding the altered acknowledgement to the client; and
when the received packet is an acknowledgement packet that is received first in response to the forwarded start packet, altering the acknowledgement so that it spoofs the server when the acknowledgement originates from the replica;
when the received packet is an acknowledgement that is not received first in response to the forwarded start packet, inhibiting sending of the acknowledgement to the client. - View Dependent Claims (17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30)
-
-
31. A computer program product for facilitating redirection of traffic between a server and a client to between the client and a selected one from a plurality of replicas, the computer program product comprising:
-
at least one computer readable medium;
computer program instructions stored within the at least one computer readable product configured to cause a processing device to;
receive a packet that is traveling between a client and a server or between the client and a replica;
when the received packet is a start packet that is traveling from the client to the server, alter the start packet to indicate that the start packet should be forwarded to any replica that duplicates the data content of the server;
when the received packet is an acknowledgement packet that is received first in response to the forwarded start packet, alter the acknowledgement so that it spoofs the server when the acknowledgement originates from the replica and forward the altered acknowledgement to the client; and
when the received packet is an acknowledgement that is not received first in response to the forwarded start packet, inhibit sending of the acknowledgement client. - View Dependent Claims (32, 33)
-
-
34. An apparatus for facilitating redirection of traffic between a server and a client to between the client and a nearest replica selected from a plurality of replicas, the apparatus comprising:
-
means for receiving a packet that is traveling between a client and a server or between the client and a replica;
means for altering the start packet to indicate that the start packet should be forwarded to any replica that duplicates the data content of the server when the received packet is a start packet that is traveling from the client to the server;
means for altering the acknowledgement so that it spoofs the server when the acknowledgement originates from the replica and forwarding the altered acknowledgement to the client when the received packet is an acknowledgement packet that is received first in response to the forwarded start packet; and
means for inhibiting sending of the acknowledgement to the client when the received packet is an acknowledgement that is not received first in response to the forwarded start packet. - View Dependent Claims (35, 36)
-
Specification