Access requests with cache intentions
First Claim
1. A computer-readable storage medium comprising instructions for controlling a computer system to cache information at a client related to remote files stored at a server, wherein the instructions, when executed at a client, cause at least one processor to perform actions comprising:
- receiving access information from a software application indicating a 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 cache coherency information associated with the remote file;
if no lease exists, sending a lease request to open the file and request a lease that identifies one or more cache intentions of the client based on the access information received from the application; and
receiving a lease response indicating whether the requested lease was granted.
1 Assignment
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.
36 Citations
20 Claims
-
1. A computer-readable storage medium comprising instructions for controlling a computer system to cache information at a client related to remote files stored at a server, wherein the instructions, when executed at a client, cause at least one processor to perform actions comprising:
-
receiving access information from a software application indicating a 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 cache coherency information associated with the remote file; if no lease exists, sending a lease request to open the file and request a lease that identifies one or more cache intentions of the client based on the access information received from the application; and receiving a lease response indicating whether the requested lease was granted. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8)
-
-
9. A system comprising:
-
a processor and memory configured to execute software instructions; an application interface configured to provide an interface through which one or more applications submit one or more requests to open remote files on the remote server and receive file data; a lease request component, responsive to the application interface, that is configured to send lease requests to the remote server and handle received lease responses, wherein the lease requests sent to the remote server include cache coherency information associated with the remote files and are based on information submitted by the one or more applications; a communication component configured to transmit the lease requests and receive lease responses and the file data over a network that connects one or more clients and the remove server; a cache component configured to cache the file data at the client based on information received from the remote server; and a break handling component configured to respond to break notifications received from the remote server, wherein a break notification indicates that access that the remote server previously granted to the client is no longer compatible with access requests of the other clients accessing at least one of the one or more remote files. - View Dependent Claims (10, 11, 12, 13, 14, 15, 16, 17, 18)
-
-
19. A method for controlling a computer system to cache information at a client related to remote files stored at a server, the method comprising:
-
receiving access information from a software application indicating a 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 cache coherency information associated with the remote file; if no lease exists, sending a lease request to open the file and request a lease that identifies one or more cache intentions of the client based on the access information received from the application; and receiving a lease response indicating whether the requested lease was granted. - View Dependent Claims (20)
-
Specification