Enabling application level persistence between a server and another resource over a network
First Claim
1. A system for processing remote client requests on a computer network, comprising:
- an intermediate network device that communicates with a remote client and forwards remote client requests;
a plurality of servers, including a first server comprising a memory for storing logical instructions and a processor for executing the logical instructions, the execution of the logical instructions causing functions to be performed including;
receiving, from the remote client, a first application level request for a first resource;
generating a response, the response providing access to the first resource;
inserting, in the response, an application level protocol command to store persistence information for providing a mechanism allowing the remote client to send a second application level request to the server; and
sending the response to the remote client through the intermediate network device; and
wherein the intermediate network device comprises a memory for storing logical instructions and a processor for executing the logical instructions, the execution of the logical instructions causing functions to be performed including;
receiving, from the remote client, a second application level request for a second resource, the second application level request comprising the persistence information;
identifying the first server as a target server, based on the persistence information; and
forwarding the second application level request to the first server.
1 Assignment
0 Petitions
Accused Products
Abstract
A method and system for inserting and examining Cookies in the data streams of HTTP connections for the purpose of persistently directing HTTP connections to the same destination. The invention enables a network device to direct subsequent HTTP connections from the same client to the same server (destination) for accessing the requested resources. There are four modes for employing the Cookie to persistently direct HTTP connections. The associative mode inserts a Cookie that uniquely identifies the client into an HTTP response. The passive mode inserts Cookie information that uniquely identifies a previously selected destination into an HTTP response. In the rewrite mode, a network device manages the destination information that is rewritten over blank Cookie information generated by the destination producing the HTTP response. The insert mode inserts and removes Cookie information in the data packets for HTTP requests and responses prior to processing by the destination.
120 Citations
18 Claims
-
1. A system for processing remote client requests on a computer network, comprising:
-
an intermediate network device that communicates with a remote client and forwards remote client requests; a plurality of servers, including a first server comprising a memory for storing logical instructions and a processor for executing the logical instructions, the execution of the logical instructions causing functions to be performed including; receiving, from the remote client, a first application level request for a first resource; generating a response, the response providing access to the first resource; inserting, in the response, an application level protocol command to store persistence information for providing a mechanism allowing the remote client to send a second application level request to the server; and sending the response to the remote client through the intermediate network device; and wherein the intermediate network device comprises a memory for storing logical instructions and a processor for executing the logical instructions, the execution of the logical instructions causing functions to be performed including; receiving, from the remote client, a second application level request for a second resource, the second application level request comprising the persistence information; identifying the first server as a target server, based on the persistence information; and forwarding the second application level request to the first server. - View Dependent Claims (2)
-
-
3. A system for processing remote client requests on a computer network, comprising:
-
an intermediate network device that communicates with a remote client and forwards remote client requests; a plurality of servers, including a first server comprising a server memory for storing server logical instructions and a server processor for executing the server logical instructions, the execution of the server logical instructions causing functions to be performed including; receiving, from the remote client, a first application level request for a first resource; generating a response, the response providing access to the first resource; inserting, in the response, a space sized to allow the insertion of persistence information for providing a mechanism allowing the remote client to send a second application level request to the server; and sending the response to the remote client through the intermediate network device; and wherein the intermediate network device (IND) comprises an IND memory for storing IND logical instructions and an IND processor for executing the IND logical instructions, the execution of the IND logical instructions causing functions to be performed including; receiving, from the first server, the response to the remote client request; writing, into said space, the persistence information; receiving, from the remote client, a second application level request for a second resource, the second application level request comprising the persistence information; identifying the first server as a target server, based on the persistence information; and forwarding the second application level request to the first server. - View Dependent Claims (4)
-
-
5. A device for enabling communication between at least one of a plurality of servers and at least one client in a network, comprising:
-
a network interface for communicating application level messages between at least one client and at least one server, and a processor for enabling actions, including; enabling a server to provide an application level response in which the server inserts a cookie, in response to an application level request from a client; employing the device to store an identity of the server and a mapping between the server and the client; employing the device to send to the client the application level response along with the cookie that includes the identity of the server that responded to the application level request from the client; and if the cookie that includes the identity of the server is included with another application level request from the client, employing the device to direct the other request to the server indicated by the stored mapping of the server to the client. - View Dependent Claims (6, 7, 8, 9, 10, 11, 12)
-
-
13. A device for enabling communication between at least one of a plurality of servers and at least one client in a network, comprising:
-
a network interface for communicating application level messages between at least one client and at least one server, and a processor for enabling actions, including; enabling a server to provide an application level response in which the server inserts a cookie, in response to an application level request from a client; employing the device to store information that corresponds to other information that is included in the cookie and provide the application level response that includes the cookie to the client, wherein the other information included in the cookie indicates the server that provided the application level response to the client; and based on a correspondence between the stored information and the other information included in the cookie that is subsequently included in another application level request from the client, employing the device to direct the other application level request to the server. - View Dependent Claims (14, 15, 16, 17, 18)
-
Specification