Approach for managing state information by a group of servers that services a group of clients
First Claim
1. A non-transitory machine-readable medium storing one or more sequences of instructions which, when executed by one or more processors, causes the one or more processors to perform:
- electronically causing one server of a first group of data processing servers to be designated as a primary server that generates the state information to be used by both the first group of data processing servers and a second group of clients;
wherein the state information supports communication between clients in the second group of clients according to a network security protocol;
electronically causing the remaining servers of the first group of data processing servers to be designated as secondary servers that receive the state information from the primary server and provide the state information to clients, wherein the secondary servers do not generate the state information; and
in response to detecting that the primary server cannot communicate with at least one secondary server, electronically causing one of the secondary servers to be designated as the primary server that generates additional state information to be used by both the first group of data processing servers and the second group of clients.
0 Assignments
0 Petitions
Accused Products
Abstract
An approach for managing state information by a group of servers that services a group of clients is disclosed. One server is designated as the primary server and is responsible for generating state information to be used by both the servers and the clients. The remaining servers are designated as secondary servers that help to manage the group, but which do not generate the state information. When the primary server fails or is not available due to a network partition event, one of the secondary servers changes role to become the primary server. With a network partition event, each partition can have a primary server, and when the network partition heals, one of the primary servers changes role back to being a secondary server. As a result, the group of servers maintains a consistent set of state information without being vulnerable to the single failure of a server.
-
Citations
12 Claims
-
1. A non-transitory machine-readable medium storing one or more sequences of instructions which, when executed by one or more processors, causes the one or more processors to perform:
-
electronically causing one server of a first group of data processing servers to be designated as a primary server that generates the state information to be used by both the first group of data processing servers and a second group of clients; wherein the state information supports communication between clients in the second group of clients according to a network security protocol; electronically causing the remaining servers of the first group of data processing servers to be designated as secondary servers that receive the state information from the primary server and provide the state information to clients, wherein the secondary servers do not generate the state information; and in response to detecting that the primary server cannot communicate with at least one secondary server, electronically causing one of the secondary servers to be designated as the primary server that generates additional state information to be used by both the first group of data processing servers and the second group of clients. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8)
-
-
9. A non-transitory machine-readable medium storing one or more sequences of instructions which, when executed by one or more processors, cause the one or more processors to manage state information to be used by a first group of data processing servers and a second group of clients by performing:
-
electronically receiving the state information from a first server at a second server, wherein; the first server is included in the first group of data processing servers and is responsible for generating the state information; the second server is included in the first group of data processing servers and is responsible for providing the state information to clients in the second group of clients, but is not responsible for generating the state information; the state information is to be used by both the first group of data processing servers and the second group of clients; wherein the state information supports communication between clients in the second group of clients according to a network security protocol; the second server electronically detecting that the first server is not able to communicate with the second server; in response to said detecting, the second server determining that the second server should be responsible for generating the state information in place of the first server; and the second server generating the state information. - View Dependent Claims (10, 11, 12)
-
Specification