US6760736B2
Expired / Lapsed
US
⏱️ 0.0 years remaining
Methods and systems for distributed failure detection and recovery using leasing techniques
Assignee: Sun Microsystems Inc
•
Filing: 2000-12-20
•
Granted: 2004-07-06
•
Expires: 2020-12-20
Abstract
Abstract A system for using a lease to detect a failure and to perform failure recovery is provided in using this system, a client requests a lease from a server to utilize a resource managed by the server for a period of time. Responsive to the request, the server grants the lease, and the client continually requests renewal of the lease. If the client fails to renew the lease, the server detects that an error has occurred to the client. Similarly, if the server fails to respond to a renew request, the client detects that an error has occurred to the server. As part of the lease establishment, the client and server exchange failure-recovery routines that each invokes if the other experiences a failure.
Inventors
- 👤 James H. Waldo
- 👤 Ann M. Wollrath
- 👤 Robert Scheifler
- 👤 Kenneth C. R. C. Arnold
Bibliographic Details
Application Number
—
Jurisdiction
US
Data Source
google_patents
Last Synchronized
2026-10-24 09:48
CPC Classifications
G; G06; G06F; G06F12/00; G06F12/02; G06F12/0223; G06F12/023; G06F12/0253; G06F12/0261; G06F16/00; G06F16/20; G06F16/28; G06F16/289; G06F9/00; G06F9/06; G06F9/44; G06F9/4401; G06F9/4411; G06F9/46; G06F9/465; G06F9/50; G06F9/5005; G06F9/5011; G06F9/5016; G06F9/5022; G06F9/5027; G06F9/5055; G06F9/5061; G06F9/52; G06F9/54; G06F9/547; H; H04; H04L; H04L12/00; H04L12/28; H04L12/40; H04L12/407; H04L12/417; H04L12/42; H04L12/427; H04L12/433; H04L69/00; H04L69/24
Claims Analysis
Total Claims: 44
Claim 1
Independent Claim
111 words
A method for recovering from failures in a distributed system that includes a client and a server, the method, performed by the server, comprising: receiving a request from the client for a lease that allows the client to access a resource managed by the server for a period of time storing a request object associated with the request in a predetermined memory space; granting the lease by returning to the client a lease object including methods for managing the lease; and invoking a recovery method on the request when it is determined that the lease has expired and the client has not sent a request to renew or terminate the lease.
Claim 2
Independent Claim
111 words
A method for recovering from failures in a distributed system that includes a client and a server, the method, performed by the server, comprising: receiving a request from the client for a lease that allows the client to access a resource managed by the server for a period of time storing a request object associated with the request in a predetermined memory space; granting the lease by returning to the client a lease object including methods for managing the lease; and invoking a recovery method on the request when it is determined that the lease has expired and the client has not sent a request to renew or terminate the lease.
Claim 3
Dependent Claim
24 words
The method of claim 1 , further comprising: deleting the request object from the predetermined memory space after the recovery method has been invoked.
Claim 4
Independent Claim
160 words
A system for recovering from failures, comprising: a server configured for granting leases for using resources managed by the server for a period of time and for sending lease objects to a client when a lease is granted; and a client configured for sending lease requests to the server for using the resources for a period of time, and for receiving the lease objects from the server, wherein the lease objects each include a first recovery method and the lease requests each include a second recovery method, wherein the client is further configured to invoke a the first recovery method when the client determines that a lease renew request sent to the server has not been acknowledged by the server, and the server is further configured to invoke a the second recovery method when the server determines that a lease held by the client has expired and the client has not sent a request to renew or terminate the lease.
Claim 5
Independent Claim
160 words
A system for recovering from failures, comprising: a server configured for granting leases for using resources managed by the server for a period of time and for sending lease objects to a client when a lease is granted; and a client configured for sending lease requests to the server for using the resources for a period of time, and for receiving the lease objects from the server, wherein the lease objects each include a first recovery method and the lease requests each include a second recovery method, wherein the client is further configured to invoke a the first recovery method when the client determines that a lease renew request sent to the server has not been acknowledged by the server, and the server is further configured to invoke a the second recovery method when the server determines that a lease held by the client has expired and the client has not sent a request to renew or terminate the lease.
Claim 6
Independent Claim
98 words
A method for recovering from failures in a distributed system that includes a client and a server, comprising: invoking, by the client, a first recovery method on the server when the client determines the server failed to process a lease management request sent by the client; and invoking, by the server, a second recovery method on the client, when the server determines that the client failed to perform lease management functions before a lease held by the client expired, wherein the lease allows the client to access a resource managed by the server for a period of time.
Claim 7
Independent Claim
98 words
A method for recovering from failures in a distributed system that includes a client and a server, comprising: invoking, by the client, a first recovery method on the server when the client determines the server failed to process a lease management request sent by the client; and invoking, by the server, a second recovery method on the client, when the server determines that the client failed to perform lease management functions before a lease held by the client expired, wherein the lease allows the client to access a resource managed by the server for a period of time.
Claim 8
Independent Claim
28 words
The method of 4 , wherein the lease management functions includes one of sending a request to renew the lease and sending a request to cancel the lease.
Claim 9
Independent Claim
28 words
The method of 4 , wherein the lease management functions includes one of sending a request to renew the lease and sending a request to cancel the lease.
Claim 10
Independent Claim
17 words
The method of 4 , wherein the lease management request includes a request to renew the lease.
Claim 11
Independent Claim
17 words
The method of 4 , wherein the lease management request includes a request to renew the lease.
Claim 12
Dependent Claim
27 words
The method of claim 6 , wherein the request to renew the lease is sent by the client upon determination that the lease is about to expire.
Claim 13
Dependent Claim
26 words
The method of claim 4 , wherein the first recovery method invoked by the client was sent to client by the server with a lease object.
Claim 14
Dependent Claim
29 words
The method of claim 4 , wherein the second recovery method invoked by the server was sent to the server by the client in a request for the lease.
Claim 15
Dependent Claim
43 words
The method of claim 5 , wherein the first recovery method invoked by the client and the lease management functions were sent with a lease object to client by the server, in response to a request for the lease held by the client.
Claim 16
Independent Claim
127 words
A method for recovering from failures in a distributed system that includes a client and a server, the method performed by the client, comprising: sending a request for a lease to the server for using a managed resource for a period of time; receiving a lease object from the server, wherein the lease object includes a plurality of methods for managing the requested lease and a recovery method for performing a recovery process associated with the managed resource; determining that the lease is about to expire; sending a lease renewal request to the server, in response to the determination that the lease is about to expire; determining that the lease renewal request did not complete successfully; and invoking a the recovery method to perform the recovery process.
Claim 17
Independent Claim
127 words
A method for recovering from failures in a distributed system that includes a client and a server, the method performed by the client, comprising: sending a request for a lease to the server for using a managed resource for a period of time; receiving a lease object from the server, wherein the lease object includes a plurality of methods for managing the requested lease and a recovery method for performing a recovery process associated with the managed resource; determining that the lease is about to expire; sending a lease renewal request to the server, in response to the determination that the lease is about to expire; determining that the lease renewal request did not complete successfully; and invoking a the recovery method to perform the recovery process.
Claim 18
Independent Claim
17 words
The method of 11 , wherein the lease object includes the recovery method invoked by the client.
Claim 19
Independent Claim
17 words
The method of 11 , wherein the lease object includes the recovery method invoked by the client.
Claim 20
Dependent Claim
25 words
The method of claim 12 , wherein the lease object includes a lease renewal method that enables the client to invoke the lease renewal request.
Claim 21
Independent Claim
13 words
The method of 11 , wherein the recovery process includes restarting the server.
Claim 22
Independent Claim
13 words
The method of 11 , wherein the recovery process includes restarting the server.
Claim 23
Dependent Claim
26 words
The method of claim 11 , wherein the lease request includes a second recovery method that enables the server to invoke recovery operations on the client.
Claim 24
Dependent Claim
123 words
A computer-readable medium including instructions for performing a method, when executed by a processor, for recovering from failures in a distributed system that includes a client and a server, the method, performed by the server, comprising: receiving a request from the client for a lease that allows the client to access a resource managed by the server for a period of time; storing a request object associated with the request in a predetermined memory space; granting the lease by returning to the client, a lease object including methods for managing the lease; and invoking a recovery method on the request when it is determined that the lease has expired and the client has not sent a request to renew or terminate the lease.
Claim 25
Dependent Claim
123 words
A computer-readable medium including instructions for performing a method, when executed by a processor, for recovering from failures in a distributed system that includes a client and a server, the method, performed by the server, comprising: receiving a request from the client for a lease that allows the client to access a resource managed by the server for a period of time; storing a request object associated with the request in a predetermined memory space; granting the lease by returning to the client, a lease object including methods for managing the lease; and invoking a recovery method on the request when it is determined that the lease has expired and the client has not sent a request to renew or terminate the lease.
Claim 26
Dependent Claim
28 words
The computer-readable medium of claim 16 , wherein the method further comprises: deleting the request object from the predetermined memory space after the recovery method has been invoked.
Claim 27
Dependent Claim
110 words
A computer-readable medium, including instructions, for performing a method, when executed by a processor, for recovering from failures in a distributed system that includes a client and a server, comprising: invoking, by the client, a first recovery method on the server when the client determines the server failed to process a lease management request sent by the client; and invoking, by the server, a second recovery method on the client, when the server determines that the client failed to perform lease management functions before a lease held by the client expired, wherein the lease allows the client to access a resource managed by the server for a period of time.
Claim 28
Dependent Claim
110 words
A computer-readable medium, including instructions, for performing a method, when executed by a processor, for recovering from failures in a distributed system that includes a client and a server, comprising: invoking, by the client, a first recovery method on the server when the client determines the server failed to process a lease management request sent by the client; and invoking, by the server, a second recovery method on the client, when the server determines that the client failed to perform lease management functions before a lease held by the client expired, wherein the lease allows the client to access a resource managed by the server for a period of time.
Claim 29
Dependent Claim
29 words
The computer-readable medium of 18 , wherein the lease management functions includes one of sending a request to renew the lease and sending a request to cancel the lease.
Claim 30
Dependent Claim
29 words
The computer-readable medium of 18 , wherein the lease management functions includes one of sending a request to renew the lease and sending a request to cancel the lease.
Claim 31
Dependent Claim
18 words
The computer-readable medium of 18 , wherein the lease management request includes a request to renew the lease.
Claim 32
Dependent Claim
18 words
The computer-readable medium of 18 , wherein the lease management request includes a request to renew the lease.
Claim 33
Dependent Claim
28 words
The computer-readable medium of claim 20 , wherein the request to renew the lease is sent by the client upon determination that the lease is about to expire.
Claim 34
Dependent Claim
27 words
The computer-readable medium of claim 18 , wherein the first recovery method invoked by the client was sent to client by the server with a lease object.
Claim 35
Dependent Claim
30 words
The computer-readable medium of claim 18 , wherein the second recovery method invoked by the server was sent to the server by the client in a request for the lease.
Claim 36
Dependent Claim
44 words
The computer-readable medium of claim 19 , wherein the first recovery method invoked by the client and the lease management functions were sent with a lease object to client by the server, in response to a request for the lease held by the client.
Claim 37
Dependent Claim
139 words
A computer-readable medium, including instructions, for performing a method, when executed by a processor, for recovering from failures in a distributed system that includes a client and a server, the method performed by the client, comprising: sending a request for a lease to the server for using a managed resource for a period of time; receiving a lease object from the server, wherein the lease object includes a plurality of methods for managing the requested lease and a recovery method for performing a recovery process associated with the managed resource; determining that the lease is about to expire; sending a lease renewal request to the server, in response to the determination that the lease is about to expire; determining that the lease renewal request did not complete successfully; and invoking a the recovery method to perform the recovery process.
Claim 38
Dependent Claim
139 words
A computer-readable medium, including instructions, for performing a method, when executed by a processor, for recovering from failures in a distributed system that includes a client and a server, the method performed by the client, comprising: sending a request for a lease to the server for using a managed resource for a period of time; receiving a lease object from the server, wherein the lease object includes a plurality of methods for managing the requested lease and a recovery method for performing a recovery process associated with the managed resource; determining that the lease is about to expire; sending a lease renewal request to the server, in response to the determination that the lease is about to expire; determining that the lease renewal request did not complete successfully; and invoking a the recovery method to perform the recovery process.
Claim 39
Dependent Claim
18 words
The computer-readable medium of 25 , wherein the lease object includes the recovery method invoked by the client.
Claim 40
Dependent Claim
18 words
The computer-readable medium of 25 , wherein the lease object includes the recovery method invoked by the client.
Claim 41
Dependent Claim
26 words
The computer-readable medium of claim 26 , wherein the lease object includes a lease renewal method that enables the client to invoke the lease renewal request.
Claim 42
Dependent Claim
14 words
The computer-readable medium of 25 , wherein the recovery process includes restarting the server.
Claim 43
Dependent Claim
14 words
The computer-readable medium of 25 , wherein the recovery process includes restarting the server.
Claim 44
Dependent Claim
27 words
The computer-readable medium of claim 26 , wherein the lease request includes a second recovery method that enables the server to invoke recovery operations on the client.
References Cited (Backward Citations)
US4430699A
Cited
US4491946A
Cited
US4558413A
Cited
US4956773A
Cited
US4567359A
Cited
US4823122A
Cited
US4809160A
Cited
US4713806A
Cited
US4939638A
Cited
US5724540A
Cited
US5524244A
Cited
EP0351536A3
Cited
US5101346A
Cited
US5471629A
Cited
US5109486A
Cited
US5088036A
Cited
US4992940A
Cited
US5297283A
Cited
US5187787B1
Cited
US5966531A
Cited
US5557798A
Cited
US5187787A
Cited
US5218699A
Cited
US5253165A
Cited
US5555427A
Cited
US5659751A
Cited
US5440744A
Cited
US5504921A
Cited
US5319542A
Cited
US5257369A
Cited
US5327559A
Cited
US5933497A
Cited
GB2253079A
Cited
US5475817A
Cited
US5339435A
Cited
US5293614A
Cited
US5481721A
Cited
US5544040A
Cited
US5684955A
Cited
US5774729A
Cited
US5778179A
Cited
GB2262825A
Cited
US5303042A
Cited
US5390328A
Cited
EP0569195A2
Cited
US5311591A
Cited
WO1993025962A1
Cited
US6263379B1
Cited
US5842018A
Cited
US5307490A
Cited
US5475792A
Cited
US5423042A
Cited
US5561785A
Cited
US5511197A
Cited
US5724588A
Cited
US5689709A
Cited
US5511196A
Cited
US5386568A
Cited
US5448740A
Cited
US5560003A
Cited
US5452459A
Cited
US5764897A
Cited
US5475840A
Cited
US5832593A
Cited
US5694551A
Cited
US5506984A
Cited
US5603031A
Cited
US5666493A
Cited
US5844553A
Cited
US5617537A
Cited
US5455952A
Cited
US5652888A
Cited
US5706435A
Cited
US6031977A
Cited
US5594921A
Cited
US5548726A
Cited
US5745755A
Cited
US5832219A
Cited
US5845090A
Cited
US5664111A
Cited
US5592375A
Cited
US5392280A
Cited
US5675796A
Cited
US5680617A
Cited
US5675797A
Cited
US5640564A
Cited
US5655148A
Cited
US5680573A
Cited
US5778228A
Cited
US5555367A
Cited
US5715314A
Cited
US5961582A
Cited
US6009413A
Cited
US5815711A
Cited
US5577231A
Cited
US5664110A
Cited
US5553282A
Cited
US5644768A
Cited
US5745678A
Cited
US5758344A
Cited
USPTO Annuity & Maintenance Windows
| Annuity Stage | Window Opens | Payment Deadline | Surcharge Period Until | Estimated Fee | Status |
|---|---|---|---|---|---|
| 3.5 Years (Year 4) | 2007-07-06 | 2008-01-05 | 2008-07-06 | $2000.00 | Window Closed / Lapsed |
| 7.5 Years (Year 8) | 2011-07-06 | 2012-01-05 | 2012-07-06 | $3760.00 | Window Closed / Lapsed |
| 11.5 Years (Year 12) | 2015-07-06 | 2016-01-05 | 2016-07-06 | $7700.00 | Window Closed / Lapsed |