Storing lossy hashes of file names and parent handles rather than full names using a compact table for network-attached-storage (NAS)
First Claim
1. An apparatus, comprising:
- a network interface configured to receive a file-access request from a client over a network, wherein the file-access request includes a virtual file handle having a unique identifier;
a translator coupled to the network interface, and configured to receive from the network interface the virtual file handle, extract the unique identifier, and determine a native file handle from an entry in a translation table corresponding to the unique identifier, wherein the entry in the translation table is selected from one of a plurality of entries in the translation table and wherein each of the plurality of entries in the translation table includes a server name of a server that stores a file and information related to at least one of read-write privileges, creation, or modification of the file;
a request forwarder coupled to the translator and the network interface, and configured to generate a translated file-access request that includes the native file handle; and
a storage device configured to store the file of the file-access request and to receive the translated file-access request from the request forwarder.
2 Assignments
0 Petitions
Accused Products
Abstract
Multiple Network Attached Storage (NAS) appliances are pooled together by a virtual NAS translator, forming one common name space visible to clients. Clients send messages to the virtual NAS translator with a file name and a virtual handle of the parent directory that are concatenated to a full file-path name and compressed by a cryptographic hash function to generate a hashed-name key. The hashed-name key is matched to a storage key in a table. The full file-path name is not stored, reducing the table size. A unique entry number is returned to the client as the virtual file handle that is also stored in another table with one or more native file handles, allowing virtual handles to be translated to native handles that the NAS appliance servers use to retrieve files. File movement among NAS servers alters native file handles but not virtual handles, hiding NAS details from clients.
42 Citations
6 Claims
-
1. An apparatus, comprising:
-
a network interface configured to receive a file-access request from a client over a network, wherein the file-access request includes a virtual file handle having a unique identifier; a translator coupled to the network interface, and configured to receive from the network interface the virtual file handle, extract the unique identifier, and determine a native file handle from an entry in a translation table corresponding to the unique identifier, wherein the entry in the translation table is selected from one of a plurality of entries in the translation table and wherein each of the plurality of entries in the translation table includes a server name of a server that stores a file and information related to at least one of read-write privileges, creation, or modification of the file; a request forwarder coupled to the translator and the network interface, and configured to generate a translated file-access request that includes the native file handle; and a storage device configured to store the file of the file-access request and to receive the translated file-access request from the request forwarder. - View Dependent Claims (2, 3, 4, 5, 6)
-
Specification