← Back to Patent Explorer
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
📄 Original PDF 🌐 Google Patents 🔄 Sync Now

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

Assigned Categories & Tags

No categories assigned to this patent yet.

Assign Category Tag