← Back to Patent Explorer
US6449641B1 Expired / Lapsed US ⏱️ 0.0 years remaining

Determining cluster membership in a distributed computer system

Assignee: Sun Microsystems Inc
•
Filing: 1999-03-16
•
Granted: 2002-09-10
•
Expires: 2019-03-16
📄 Original PDF 🌐 Google Patents 🔄 Sync Now

Abstract

Abstract Cluster membership in a distributed computer system is determined by determining with which other nodes each node is in communication and distributing that connectivity information through the nodes of the system. Accordingly, each node can determine an optimized new cluster based upon the connectivity information. Specifically, each node has information regarding with which nodes the node is in communication and similar information for each other node of the system. Therefore, each node has complete information regarding interconnectivity of all nodes which are directly or indirectly connected. Each node applies optimization criteria to such connectivity information to determine an optimal new cluster. Data represent the optimal new cluster is broadcast by each node. In addition, the optimal new cluster determined by the various nodes are collected by each node. Thus, each node has data representing the proposed new cluster which is perceived by each respective node to be optimal. Each node uses such data to elect a new cluster from the various proposed new clusters. For example, the new cluster represented by more proposed new clusters than any other is elected as the new cluster. Since each node receives the same proposed new clusters from the potential member nodes of the new cluster, the new cluster membership is reached unanimously. In addition, since each node has more complete information regarding the potential member nodes of the new cluster, the resulting new cluster consistently has a relatively optimal configuration.

Inventors

  • 👤 Hossein Moiin
  • 👤 Ronald Widyono
  • 👤 Ramin Modiri

Bibliographic Details

Application Number —
Jurisdiction US
Data Source google_patents
Last Synchronized 2026-10-27 22:54
CPC Classifications
G; G06; G06F; G06F9/00; G06F9/06; G06F9/46; G06F9/50; G06F9/5061; G06F11/00; G06F11/07; G06F11/14; G06F11/1402; G06F11/1415; G06F11/142; G06F11/1425; H; H04; H04L; H04L41/00; H04L41/08; H04L41/0803; H04L41/0823; H04L41/0866; H04L41/0873; H04L41/0893; H04L43/00; H04L43/08; H04L43/0805; H04L43/0811; G06F11/16; G06F11/20; G06F11/202; G06F11/2023; G06F11/2033; G06F11/2038; G06F11/2046; G06F2209/00; G06F2209/50; G06F2209/505; H04L41/06

Claims Analysis

Total Claims: 24
Claim 1
Independent Claim 88 words
A method for determining membership of nodes in a distributed computer system, the method comprising: (a) determining connection data representative of interconnectivity of the nodes of the distributed computer system; (b) applying optimization criteria to the connection data to form a proposed membership list of a proposed new cluster; (c) broadcasting the proposed membership list to nodes determined to be connected; (d) receiving other proposed membership lists from the nodes determined to be connected; and (e) selecting an elected proposed membership list from the other proposed membership lists.
Claim 2
Independent Claim 88 words
A method for determining membership of nodes in a distributed computer system, the method comprising: (a) determining connection data representative of interconnectivity of the nodes of the distributed computer system; (b) applying optimization criteria to the connection data to form a proposed membership list of a proposed new cluster; (c) broadcasting the proposed membership list to nodes determined to be connected; (d) receiving other proposed membership lists from the nodes determined to be connected; and (e) selecting an elected proposed membership list from the other proposed membership lists.
Claim 3
Dependent Claim 70 words
The method of claim 1 wherein (a) determining connection data comprises: determining with which connected ones of other nodes of the distributed computer system a selected node is in communication; broadcasting to the other nodes data specifying the connected nodes; receiving node connection data from the connected nodes; and combining the node connection data from the connected nodes and the data specifying the connected nodes to form the connection data.
Claim 4
Dependent Claim 27 words
The method of claim 1 wherein (e) selecting an elected proposed membership list comprises: ensuring that the proposed membership list and all other proposed membership lists agree.
Claim 5
Dependent Claim 38 words
The method of claim 3 wherein (e) selecting an elected proposed membership list further comprises: detecting disagreement between the proposed membership list and all other proposed membership lists; and in response to such disagreement, repeating (a) through (d).
Claim 6
Dependent Claim 28 words
The method of claim 1 wherein (e) selecting an elected proposed membership list comprises: determining that the elected proposed membership list represents nodes which collectively form a quorum.
Claim 7
Dependent Claim 34 words
The method of claim 5 wherein determining that the elected proposed membership list represents nodes which collectively form a quorum comprises: estimating a number of nodes of the distributed computer system that are operational.
Claim 8
Dependent Claim 46 words
The method of claim 6 wherein estimating a number of nodes of the distributed computer system that are operational comprises: determining a number of nodes represented in the first-mentioned proposed membership list; adding a number of joining nodes; and subtracting a number of voluntarily leaving nodes.
Claim 9
Dependent Claim 103 words
A computer readable medium useful in association with a computer which includes a processor and a memory, the computer readable medium includes computer instructions which when executed perform the method: (a) determining connection data representative of interconnectivity of the nodes of the distributed computer system; (b) applying optimization criteria to the connection data to form a proposed membership list of a proposed new cluster; (c) broadcasting the proposed membership list to nodes determined to be connected; (d) receiving other proposed membership lists from the nodes determined to be connected; and (e) selecting an elected proposed membership list from the other proposed membership lists.
Claim 10
Dependent Claim 103 words
A computer readable medium useful in association with a computer which includes a processor and a memory, the computer readable medium includes computer instructions which when executed perform the method: (a) determining connection data representative of interconnectivity of the nodes of the distributed computer system; (b) applying optimization criteria to the connection data to form a proposed membership list of a proposed new cluster; (c) broadcasting the proposed membership list to nodes determined to be connected; (d) receiving other proposed membership lists from the nodes determined to be connected; and (e) selecting an elected proposed membership list from the other proposed membership lists.
Claim 11
Dependent Claim 72 words
The computer readable medium of claim 8 wherein (a) determining connection data comprises: determining with which connected ones of other nodes of the distributed computer system a selected node is in communication; broadcasting to the other nodes data specifying the connected nodes; receiving node connection data from the connected nodes; and combining the node connection data from the connected nodes and the data specifying the connected nodes to form the connection data.
Claim 12
Dependent Claim 29 words
The computer readable medium of claim 8 wherein (e) selecting an elected proposed membership list comprises: ensuring that the proposed membership list and all other proposed membership lists agree.
Claim 13
Dependent Claim 40 words
The computer readable medium of claim 10 wherein (e) selecting an elected proposed membership list further comprises: detecting disagreement between the proposed membership list and all other proposed membership lists; and in response to such disagreement, repeating (a) through (d).
Claim 14
Dependent Claim 30 words
The computer readable medium of claim 8 wherein (e) selecting an elected proposed membership list comprises: determining that the elected proposed membership list represents nodes which collectively form a quorum.
Claim 15
Dependent Claim 36 words
The computer readable medium of claim 12 wherein determining that the elected proposed membership list represents nodes which collectively form a quorum comprises: estimating a number of nodes of the distributed computer system that are operational.
Claim 16
Dependent Claim 48 words
The computer readable medium of claim 13 wherein estimating a number of nodes of the distributed computer system that are operational comprises: determining a number of nodes represented in the first-mentioned proposed membership list; adding a number of joining nodes; and subtracting a number of voluntarily leaving nodes.
Claim 17
Dependent Claim 100 words
A computer system comprising: a processor; a memory operatively coupled to the processor; and a failure detection module executing in the processor from the memory is configured to: (a) determine connection data representing interconnectivity of the nodes of the distributed computer system; (b) apply optimization criteria to the connection data to form a proposed membership list of a proposed new cluster; (c) broadcast the proposed membership list to nodes determined to be connected; (d) receive other proposed membership lists from the nodes determined to be connected; and (e) select an elected proposed membership list from the other proposed membership lists.
Claim 18
Dependent Claim 100 words
A computer system comprising: a processor; a memory operatively coupled to the processor; and a failure detection module executing in the processor from the memory is configured to: (a) determine connection data representing interconnectivity of the nodes of the distributed computer system; (b) apply optimization criteria to the connection data to form a proposed membership list of a proposed new cluster; (c) broadcast the proposed membership list to nodes determined to be connected; (d) receive other proposed membership lists from the nodes determined to be connected; and (e) select an elected proposed membership list from the other proposed membership lists.
Claim 19
Dependent Claim 75 words
The computer system of claim 15 , wherein said failure detection module is further configured to: determine with which connected ones of other nodes of the distributed computer system a selected node is in communication; broadcast to the other nodes data specifying the connected nodes; receive node connection data from the connected nodes; and combine the node connection data from the connected nodes and the data specifying the connected nodes to form the connection data.
Claim 20
Dependent Claim 29 words
The computer system of claim 15 , wherein said failure detection module is further configured to ensure that the proposed membership list and all other proposed membership lists agree.
Claim 21
Dependent Claim 39 words
The computer system of claim 17 , wherein said failure detection module is further configured to: detect disagreement between the proposed membership list and all other proposed membership lists; and in response to such disagreement, repeat (a) through (d).
Claim 22
Dependent Claim 30 words
The computer system of claim 15 , wherein said failure detection module is further configured to determine that the elected proposed membership list represents nodes which collectively form a quorum.
Claim 23
Dependent Claim 29 words
The computer system of claim 19 , wherein said failure detection module is further configured to estimate a number of nodes of the distributed computer system that are operational.
Claim 24
Dependent Claim 42 words
The computer system of claim 20 , wherein said failure detection module is further configured to: determine a number of nodes represented in the first-mentioned proposed membership list; add a number of joining nodes; and subtract a number of voluntarily leaving nodes.

References Cited (Backward Citations)

US5666486A Cited
US6353898B1 Cited
US6108699A Cited
US5999712A Cited

USPTO Annuity & Maintenance Windows

Annuity Stage Window Opens Payment Deadline Surcharge Period Until Estimated Fee Status
3.5 Years (Year 4) 2005-09-09 2006-03-11 2006-09-10 $2000.00 Window Closed / Lapsed
7.5 Years (Year 8) 2009-09-09 2010-03-11 2010-09-10 $3760.00 Window Closed / Lapsed
11.5 Years (Year 12) 2013-09-09 2014-03-11 2014-09-10 $7700.00 Window Closed / Lapsed

Assigned Categories & Tags

No categories assigned to this patent yet.

Assign Category Tag