Client-based caching of remote files
First Claim
1. A computer-implemented method for caching information at a client related to a remote file stored at a server, the method comprising:
- receiving information from a software application indicating the remote file to open in an open request;
determining whether a lease exists on the client for the indicated remote file, wherein the lease provides a lease duration and cache coherency information associated with the indicated remote file;
when no lease exists on the client for the indicated remote file;
sending a lease request to open a handle to the indicated remote file and request the lease that identifies one or more cache intentions of the client based on the access information received from the software application; and
receiving a lease response indicating that the requested lease was granted;
upon an expiration of the lease duration corresponding to the lease, delaying the closing of the handle to the indicated remote file; and
wherein the preceding steps are performed by at least one processor.
2 Assignments
0 Petitions
Accused Products
Abstract
A lease system is described herein that allows clients to request a lease to a remote file, wherein the lease permits access to the file across multiple applications using multiple handles without extra round trips to a server. When multiple applications on the same client (or multiple components of the same application) request access to the same file, the client specifies the same lease identifier to the server for each open request or may handle the request from the cache based on the existing lease. Because the server identifies the client'"'"'s cache at the client level rather than the individual file request level, the client receives fewer break notifications and is able to cache remote files in more circumstances. Thus, by providing the ability to cache data in more circumstances common with modern applications, the lease system reduces bandwidth, improves server scalability, and provides faster access to data.
23 Citations
8 Claims
-
1. A computer-implemented method for caching information at a client related to a remote file stored at a server, the method comprising:
-
receiving information from a software application indicating the remote file to open in an open request; determining whether a lease exists on the client for the indicated remote file, wherein the lease provides a lease duration and cache coherency information associated with the indicated remote file; when no lease exists on the client for the indicated remote file; sending a lease request to open a handle to the indicated remote file and request the lease that identifies one or more cache intentions of the client based on the access information received from the software application; and receiving a lease response indicating that the requested lease was granted; upon an expiration of the lease duration corresponding to the lease, delaying the closing of the handle to the indicated remote file; and wherein the preceding steps are performed by at least one processor. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8)
-
Specification