Application layer message-based server failover management by a network element
First Claim
1. A method of managing a server failure, the method comprising the computer-implemented steps of:
- intercepting, at a network element, a first message that indicates both an identified session and session change information to change a session state that is associated with the identified session, wherein the first message was originally sent from a client;
changing and storing the session state at the network element based on the session change information;
generating, at the network element, a second message that is based on the first message and the session state, and that requests data from a first server;
sending the second message to the first server;
detecting, at the network element, an inability of the first server to service a request;
in response to detecting the inability, selecting a second server that is separate from the first server;
sending the second message toward the second server;
receiving, from the second server, a first response that contains the data;
generating, at the network element, a second response that is based on the data and the session state; and
sending the second response to the client as a response to the first message.
1 Assignment
0 Petitions
Accused Products
Abstract
A method is disclosed for application layer message-based network element management of server failures. According to one aspect, a network element such as a router intercepts session state information that is contained in a request from a client and locally stores the session state information. As a result, application servers to which the requests are directed do not need to store the session state information. If an application server fails, then the network element can use the session state information stored at the network element to continue the session with another application server, transparently to the client application that is involved in the session.
-
Citations
13 Claims
-
1. A method of managing a server failure, the method comprising the computer-implemented steps of:
-
intercepting, at a network element, a first message that indicates both an identified session and session change information to change a session state that is associated with the identified session, wherein the first message was originally sent from a client;
changing and storing the session state at the network element based on the session change information;
generating, at the network element, a second message that is based on the first message and the session state, and that requests data from a first server;
sending the second message to the first server;
detecting, at the network element, an inability of the first server to service a request;
in response to detecting the inability, selecting a second server that is separate from the first server;
sending the second message toward the second server;
receiving, from the second server, a first response that contains the data;
generating, at the network element, a second response that is based on the data and the session state; and
sending the second response to the client as a response to the first message. - View Dependent Claims (2, 3, 4, 5, 6)
-
-
7. A method of reconstructing a database connection, the method comprising the computer-implemented steps of:
-
intercepting, at a network element, a first message that indicates database connection state;
storing the database connection session state at the network element;
determining that a first connection that was constructed using the database connection session state has failed; and
constructing a second connection with a database server using the database connection state that is stored at the network element. - View Dependent Claims (8, 9)
-
-
10. A computer-readable medium carrying one or more sequences of instructions for managing a server failure, which instructions, when executed by one or more processors, cause the one or more processors to carry out the steps of:
-
intercepting, at a network element, a first message that indicates both an identified session and session change information to change a session state that is associated with the identified session, wherein the first message was originally sent from a client;
changing and storing the session state at the network element based on the session change information;
generating, at the network element, a second message that is based on the first message and the session state, and that requests data from a first server;
sending the second message to the first server;
detecting, at the network element, an inability of the first server to service a request;
in response to detecting the inability, selecting a second server that is separate from the first server;
sending the second message toward the second server;
receiving, from the second server, a first response that contains the data;
generating, at the network element, a second response that is based on the data and the session state; and
sending the second response to the client as a response to the first message.
-
-
11. A computer-readable medium carrying one or more sequences of instructions for reconstructing a database connection, which instructions, when executed by one or more processors, cause the one or more processors to carry out the steps of:
-
intercepting, at a network element, a first message that indicates database connection state;
storing the database connection session state at the network element;
determining that a first connection that was constructed using the database connection session state has failed; and
constructing a second connection with a database server using the database connection state that is stored at the network element.
-
-
12. An apparatus for reconstructing a database connection, the apparatus comprising:
-
means for intercepting, at a network element, a first message that indicates both an identified session and session change information to change a session state that is associated with the identified session, wherein the first message was originally sent from a client;
means for changing and storing the session state at the network element based on the session change information;
means for generating, at the network element, a second message that is based on the first message and the session state, and that requests data from a first server;
means for sending the second message to the first server;
means for detecting, at the network element, an inability of the first server to service a request;
means for selecting, in response to detecting the inability, a second server that is separate from the first server;
means for sending the second message toward the second server;
means for receiving, from the second server, a first response that contains the data;
means for generating, at the network element, a second response that is based on the data and the session state; and
means for sending the second response to the client as a response to the first message.
-
-
13. An apparatus for managing a server failure, the apparatus comprising:
-
means for intercepting, at a network element, a first message that indicates database connection state;
means for storing the database connection session state at the network element;
means for determining that a first connection that was constructed using the database connection session state has failed; and
means for constructing a second connection with a database server using the database connection state that is stored at the network element.
-
Specification