US20070016663A1

Approach for managing state information by a group of servers that services a group of clients

Claim Score by NHIP

Read claim 9, the broadest

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.

US20070016663A1, drawing sheet 1
Sheet 1 of 15

Term

Projected expiry 12 August 2029.

  1. Priority and filed
  2. Published
  3. Today
  4. Projected expiry

36 claims: 6 independent, 30 dependent

  1. 1
    A method for managing state information by a first group of data processing servers that services a second group of clients, comprising:electronically causing one server of the 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 the second group of clients;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 but that 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.
  2. 9
    Broadest claimClaim Score 58, broad(NHIP)A method for managing state information to be used by a first group of data processing servers and a second group of clients, comprising: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 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;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.
  3. 13
    An apparatus for managing state information by a first group of data processing servers that services a second group of clients, comprising:means for electronically causing one server of the 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 the second group of clients;means for 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 but that do not generate the state information;and means for 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.
  4. 21
    An apparatus for managing state information to be used by a first group of data processing servers and a second group of clients, comprising:means for 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 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;means for the second server electronically detecting that the first server is not able to communicate with the second server;in response to said detecting, means for the second server determining that the second server should be responsible for generating the state information in place of the first server;and means for the second server generating the state information.
  5. 25
    An apparatus for managing state information by a first group of data processing servers that services a second group of clients, comprising:a network interface that is coupled to a data network for receiving one or more packet flows therefrom;a processor;one or more stored sequences of instructions which, when executed by the processor, cause the processor to perform the steps of: electronically causing one server of the 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 the second group of clients;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 but that 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.
  6. 33
    An apparatus for managing state information to be used by a first group of data processing servers and a second group of clients, comprising:a network interface that is coupled to a data network for receiving one or more packet flows therefrom;a processor;one or more stored sequences of instructions which, when executed by the processor, cause the processor to perform the steps of: 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 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;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.