A cluster of computer system nodes connected by a storage area network
include two classes of nodes. The first class of nodes can act as clients
or servers, while the other nodes can only be clients. The client-only
nodes require much less functionality and can be more easily supported by
different operating systems. To minimize the amount of data transmitted
during normal operation, the server responsible for maintaining a cluster
configuration database repeatedly multicasts the IP address, its
incarnation number and the most recent database generation number. Each
node stores this information and when a change is detected, each node can
request an update of the data needed by that node. A client-only node
uses the IP address of the server to connect to the server, to download
the information from the cluster database required by the client-only
node and to upload local disk connectivity information.