Patent ID: 8700727

Claim:
A system comprising: a server system running a process that exports a network file system, wherein the process manages the network file system; and a device that is communicatively coupled with the server system via a network, the device comprising: (i) a non-volatile memory structure to cache data associated with the network file system, and (ii) processor electronics configured to associate with the network file system, associate with one or more peers that are configured to cache data associated with the network file system, the one or more peers having respective one or more connections with the network file system, receive a file system request to read or write at least a portion of a file that is associated with the network file system, selectively communicate with the one or more peers to retrieve cached data associated with the file when the file system request indicates a read, and perform a write file operation when the file system request indicates a write, the write file operation to receive file data from an application for writing to the file, selectively communicate with the one or more peers to inform the one or more peers of a write to the file, selectively perform data de-duplication to invalidate any remotely cached versions of the file that are cached by the one or more peers, and cache the file data in the non-volatile memory structure, wherein the processor electronics are configured to commit the file data to the network file system.