Access requests with cache intentions
First Claim
1. A method for sending a lease break notification by a server, wherein the lease break notification breaks a lease at a lease access level, the method for sending the lease break notification comprising:
- receiving a first request for access to a file from a first client, the first request for access including a first access level and a first lease identifier that identifies the first client;
granting a first lease to the first client at the first access level, wherein granting the first lease includes sending a lease response that includes information to be cached at the client from the remote file managed by the server;
receiving a second request for access to the file from the first client, the second request for access including a second access level and the first lease identifier, wherein the second access level is higher than the first access level;
collapsing the second request into the first lease based on the common first lease identifier in the first request and the second request, wherein the first lease is upgraded to the second access level;
receiving a third request for access to the file from a second client, the third request for access including the first access level and a second lease identifier that identifies the second client;
granting a second lease to the second client at the first access level; and
sending the lease break notification to the first client, wherein the lease break notification breaks the first lease, and wherein the lease break notification includes the first access level for the second lease.
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.
-
Citations
20 Claims
-
1. A method for sending a lease break notification by a server, wherein the lease break notification breaks a lease at a lease access level, the method for sending the lease break notification comprising:
-
receiving a first request for access to a file from a first client, the first request for access including a first access level and a first lease identifier that identifies the first client; granting a first lease to the first client at the first access level, wherein granting the first lease includes sending a lease response that includes information to be cached at the client from the remote file managed by the server; receiving a second request for access to the file from the first client, the second request for access including a second access level and the first lease identifier, wherein the second access level is higher than the first access level; collapsing the second request into the first lease based on the common first lease identifier in the first request and the second request, wherein the first lease is upgraded to the second access level; receiving a third request for access to the file from a second client, the third request for access including the first access level and a second lease identifier that identifies the second client; granting a second lease to the second client at the first access level; and sending the lease break notification to the first client, wherein the lease break notification breaks the first lease, and wherein the lease break notification includes the first access level for the second lease. - View Dependent Claims (2, 3, 4, 5, 6, 7)
-
-
8. A computer system comprising:
-
a processor; and a memory communicatively coupled to the processor, the memory having computer-executable instructions that when executed by the processor, provide a method for sending a lease break notification by a server, wherein the lease break notification breaks a lease at a lease access level, the method for sending the lease break notification comprising; receiving a first request for access to a file from a first client, the first request for access including a first access level and a first lease identifier that identifies the first client; granting a first lease to the first client at the first access level, wherein granting the first lease includes sending a lease response that includes information to be cached at the client from the remote file managed by the server; receiving a second request for access to the file from the first client, the second request for access including a second access level and the first lease identifier, wherein the second access level is higher than the first access level; collapsing the second request into the first lease based on the common first lease identifier in the first request and the second request, wherein the first lease is upgraded to the second access level; receiving a third request for access to the file from a second client, the third request for access including the first access level and a second lease identifier that identifies the second client; granting a second lease to the second client at the first access level; and sending the lease break notification to the first client, wherein the lease break notification breaks the first lease, and wherein the lease break notification includes the first access level for the second lease. - View Dependent Claims (9, 10, 11, 12, 13, 14, 20)
-
-
15. One or more computer storage media having computer-executable components that upon execution perform a method for sending a lease break notification by a server, wherein the lease break notification breaks a lease at a lease access level, the method for sending the lease break notification comprising:
-
receiving a first request for access to a file from a first client, the first request for access including a first access level and a first lease identifier that identifies the first client; granting a first lease to the first client at the first access level, wherein granting the first lease includes sending a lease response that includes information to be cached at the client from the remote file managed by the server; receiving a second request for access to the file from the first client, the second request for access including a second access level and the first lease identifier, wherein the second access level is higher than the first access level; collapsing the second request into the first lease based on the common first lease identifier in the first request and the second request, wherein the first lease is upgraded to the second access level; receiving a third request for access to the file from a second client, the third request for access including the first access level and a second lease identifier that identifies the second client; granting a second lease to the second client at the first access level; and sending the lease break notification to the first client, wherein the lease break notification breaks the first lease, and wherein the lease break notification includes the first access level for the second lease. - View Dependent Claims (16, 17, 18, 19)
-
Specification