SYSTEM AND METHOD FOR CACHING NETWORK FILE SYSTEMS
First Claim
1. A caching system, comprising:
- a plurality of network interfaces configured to communicate data over a computer network, wherein at first network interface is connected to a client and a second network interface is connected to an origin computer;
a processor coupled to the network interfaces and configured to execute one or more processes; and
a memory configured to store a process executable by the processor, the process when executed operable to;
receive a data access request from the client for the data;
send a request to the origin computer for attributes associated with the data;
service the data access request at the caching system in response to determining that the requested attributes from the origin computer do not differ from local attributes associated with the data stored at the caching system; and
retrieve the data and the requested attributes from the origin computer and verify that the requested attributes have not changed since the data was retrieved from the origin computer, in response to determining that the requested attributes differ from the local attributes.
0 Assignments
0 Petitions
Accused Products
Abstract
A network caching system has a multi-protocol caching filer coupled to an origin server to provide storage virtualization of data served by the filer in response to data access requests issued by multi-protocol clients over a computer network. The multi-protocol caching filer includes a file system configured to manage a sparse volume that “virtualizes” a storage space of the data to thereby provide a cache function that enables access to data by the multi-protocol clients. To that end, the caching filer further includes a multi-protocol engine configured to translate the multi-protocol client data access requests into generic file system primitive operations executable by both the caching filer and the origin server.
33 Citations
19 Claims
-
1. A caching system, comprising:
-
a plurality of network interfaces configured to communicate data over a computer network, wherein at first network interface is connected to a client and a second network interface is connected to an origin computer; a processor coupled to the network interfaces and configured to execute one or more processes; and a memory configured to store a process executable by the processor, the process when executed operable to; receive a data access request from the client for the data; send a request to the origin computer for attributes associated with the data; service the data access request at the caching system in response to determining that the requested attributes from the origin computer do not differ from local attributes associated with the data stored at the caching system; and retrieve the data and the requested attributes from the origin computer and verify that the requested attributes have not changed since the data was retrieved from the origin computer, in response to determining that the requested attributes differ from the local attributes. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9)
-
-
10. A method comprising;
-
receiving, at a caching computer, a data access request from a client for data, wherein the caching computer is coupled to the client and an origin computer over a computer network; sending a request for attributes associated with the data from the caching computer to the origin computer; in response to determining, by a processor of the caching computer, that the requested attributes from the origin computer do not differ from local attributes associated with the data stored at the caching computer, servicing the data access request at the caching computer; and in response to determining, by the processor of the caching computer, that the requested attributes from the origin computer differ from the local attributes; retrieving the data and the requested attributes from the origin computer, and verifying that the requested attributes have not changed since the data was retrieved from the origin computer. - View Dependent Claims (11, 12, 13, 14, 15, 16, 17, 18)
-
-
19. A non-transitory computer-readable storage medium containing executable program instructions executed by a processor, comprising:
-
program instructions that receive a data access request from a client for data, wherein the request is received at a caching computer that is coupled to the client and an origin computer over a computer network; program instructions that send a request for attributes associated with the data from the caching computer to the origin computer; program instructions that service the data access request at the caching computer in response to determining that the requested attributes from the origin computer do not differ from local attributes associated with the data stored at the caching computer; and program instructions that retrieve the data and the requested attributes from the origin computer and verify that the requested attributes have not changed since the data was retrieved from the origin computer, in response to determining that the requested attributes differ from the local attributes.
-
Specification