Claims Analysis
Total Claims: 22
Claim 1
Independent Claim
182 words
In a distributed computing environment, a method of managing concurrent updates by a group of server machines coupled together by a network, each server machine having a respective first and second counter, the method comprising the steps of: in response to a client request from a client machine also coupled to the network, sending a unique sequence number identifying the client request derived from the first counter in a first server machine to the group of server machines and the client machine; incrementing the first counter in the group of server machines; in response to a client update request from the client machine including the unique sequence number, checking by each server machine in the group of server machines against its second counter that all other update requests with lower sequence numbers have been received; in response to missing sequence numbers, requesting from other servers in the group of servers for update requests corresponding to the missing sequence numbers; and performing the update request if all update requests up to the unique sequence number have been received by the respective server machine.
Claim 2
Dependent Claim
182 words
In a distributed computing environment, a method of managing concurrent updates by a group of server machines coupled together by a network, each server machine having a respective first and second counter, the method comprising the steps of: in response to a client request from a client machine also coupled to the network, sending a unique sequence number identifying the client request derived from the first counter in a first server machine to the group of server machines and the client machine; incrementing the first counter in the group of server machines; in response to a client update request from the client machine including the unique sequence number, checking by each server machine in the group of server machines against its second counter that all other update requests with lower sequence numbers have been received; in response to missing sequence numbers, requesting from other servers in the group of servers for update requests corresponding to the missing sequence numbers; and performing the update request if all update requests up to the unique sequence number have been received by the respective server machine.
Claim 3
Independent Claim
119 words
A method for managing a replicated file server including a plurality of servers coupled by a network, comprising the steps of: sending a sequence number from a counter in a first server to a client requesting a right to perform an update request, the sequence number identifying a particular update request; sending the sequence number and the update request to the plurality of servers by the requesting client; checking by a second server in the plurality of servers the sequence number against a counter in the second server that all updates with lower sequence numbers have been received; and performing the update request if all update requests up to the sequence number have been received by the second server.
Claim 4
Independent Claim
119 words
A method for managing a replicated file server including a plurality of servers coupled by a network, comprising the steps of: sending a sequence number from a counter in a first server to a client requesting a right to perform an update request, the sequence number identifying a particular update request; sending the sequence number and the update request to the plurality of servers by the requesting client; checking by a second server in the plurality of servers the sequence number against a counter in the second server that all updates with lower sequence numbers have been received; and performing the update request if all update requests up to the sequence number have been received by the second server.
Claim 5
Dependent Claim
83 words
The method as recited in claim 2 further comprising the steps of: checking by a third server in the plurality of servers the sequence number against a counter in the third server that all updates with lower sequence numbers have been received; in response to missing sequence numbers, requesting from the second server for update requests corresponding to the missing sequence numbers: and performing the update request once all update requests up to the sequence number have been received by the third server.
Claim 6
Dependent Claim
51 words
The method as recited in claim 3 wherein each of the servers in the plurality of servers has a respective first and second counter, the first counter of a type used to derive sequence numbers, the second counter of a type used to check a sequence number accompanying an update request.
Claim 7
Dependent Claim
97 words
The method as recited in claim 4 wherein a request for a sequence number is sent to the plurality of servers by the requesting client and the method further comprising the steps of: in response to the reception of the request for a sequence number by a second server, determining whether a sequence number has been sent by the first server; in response to an apparent failure of the first server, determining whether the first server has failed; and in response to the failure of the first server, assuming creation of sequence numbers by the second server.
Claim 8
Dependent Claim
20 words
The method as recited in claim 2 wherein the update request is multicast to each of the plurality of servers.
Claim 9
Dependent Claim
51 words
The method as recited in claim 2 wherein a plurality of clients request a right to perform update requests, a sequence number is sent to each client by the first server and each of the plurality of servers perform update requests in an order in which the sequence numbers were sent.
Claim 10
Dependent Claim
92 words
The method as recited in claim 6 further comprising the steps of: setting a timer in response to receiving the request for the right to perform an update request; in response to an apparent failure of the requesting client to send the sequence number and the update request to the plurality of servers within a period of time, checking whether any of the plurality of servers received the sequence number and update request; and in response to nonreception by the plurality of servers, cancelling the sequence number in the plurality of servers.
Claim 11
Dependent Claim
132 words
A computer memory for storing a set of computer readable instructions for managing a replicated file server including a plurality of servers coupled by a network, comprising: means for requesting a sequence number from a counter in a first server by a client, the sequence number for identifying an update request to be made by the client; means for sending the sequence number and the update request to the plurality of servers by the requesting client; means for checking by a second server in the plurality of servers the sequence number against a counter in the second server that all update requests with lower sequence numbers have been received; and means for performing the update request if all update requests up to the sequence number have been received by the second server.
Claim 12
Dependent Claim
132 words
A computer memory for storing a set of computer readable instructions for managing a replicated file server including a plurality of servers coupled by a network, comprising: means for requesting a sequence number from a counter in a first server by a client, the sequence number for identifying an update request to be made by the client; means for sending the sequence number and the update request to the plurality of servers by the requesting client; means for checking by a second server in the plurality of servers the sequence number against a counter in the second server that all update requests with lower sequence numbers have been received; and means for performing the update request if all update requests up to the sequence number have been received by the second server.
Claim 13
Dependent Claim
85 words
The memory as recited in claim 9 further comprising: means for checking by a third server in the plurality of servers the sequence number against a counter in the third server that all updates with lower sequence numbers have been received; means responsive to missing sequence numbers for requesting from the second server for update requests corresponding to the missing sequence numbers: and means for performing the update request once all update requests up to the sequence number have been received by the third server.
Claim 14
Dependent Claim
75 words
The memory as recited in claim 10 further comprising: means responsive to reception of a request for a sequence number for a second server for determining whether a sequence number has been sent by the first server; means responsive to an apparent failure of the first server for determining whether the first server has failed; and means responsive to the failure of the first server for assuming creation of sequence numbers by the second server.
Claim 15
Dependent Claim
88 words
The memory as recited in claim 11 further comprising: means for setting a timer in response to receiving the request for a sequence number; means responsive to an apparent failure of the requesting client to send the sequence number and the update request to the plurality of servers within a period of time, checking whether any of the plurality of servers received the sequence number and update request; and means responsive to nonreception by the plurality of servers for cancelling the sequence number in the plurality of servers.
Claim 16
Dependent Claim
79 words
A replicated file server comprising: a network; a plurality of file servers coupled to the network, each file server having a respective first and second counter, the first counter in a first server for generating sequence numbers which entitle requesting clients to perform update requests, the second counter in the plurality of servers for sequencing update requests from the requesting clients; and a plurality of clients coupled to the network for making update requests to the plurality of servers.
Claim 17
Dependent Claim
79 words
A replicated file server comprising: a network; a plurality of file servers coupled to the network, each file server having a respective first and second counter, the first counter in a first server for generating sequence numbers which entitle requesting clients to perform update requests, the second counter in the plurality of servers for sequencing update requests from the requesting clients; and a plurality of clients coupled to the network for making update requests to the plurality of servers.
Claim 18
Dependent Claim
20 words
The replicated file server recited in claim 13 further comprising means for multicasting update requests to the plurality of servers.
Claim 19
Dependent Claim
109 words
The replicated file server recited in claim 14 further comprising: means for multicasting requests for sequence numbers to the plurality of servers by the requesting clients; means for multicasting a particular sequence number and a corresponding update request to the plurality of servers by the requesting client; means for checking by each server in the plurality of servers the particular sequence number against a respective second counter that all update requests corresponding to lower sequence numbers have been received; and means for performing the update request corresponding to the particular sequence number if all update requests up to the particular sequence number have been received by the respective server.
Claim 20
Dependent Claim
41 words
The replicated file server as recited in claim 15 further comprising: means responsive to missing sequence numbers for requesting for update requests corresponding to the missing sequence numbers: and means for performing all update requests corresponding to the missing sequence numbers.
Claim 21
Dependent Claim
77 words
The replicated file server as recited in claim 13 further comprising: means responsive to reception of a request for a sequence number for a second server for determining whether a sequence number has been sent by the first server; means responsive to an apparent failure of the first server for determining whether the first server has failed; and means responsive to the failure of the first server for assuming creation of sequence numbers by the second server.
Claim 22
Dependent Claim
90 words
The replicated file server as recited in claim 13 further comprising: means for setting a timer in response to receiving the request for a sequence number; means responsive to an apparent failure of a requesting client to send the sequence number and the update request to the plurality of servers within a period of time, checking whether any of the plurality of servers received the sequence number and update request; and means responsive to nonreception by the plurality of servers for cancelling the sequence number in the plurality of servers.