Method and system for differential distributed data file storage, management and access
OwnerBenjamin Godlin, Divon Lan +1inventors
InventorsBenjamin Godlin, Divon Lan, Yuval Hager
Life of this patent
Estimating the term…
Abstract
A method and system providing a distributed filesystem and distributed filesystem protocol utilizing a version-controlled filesystem with two-way differential transfer across a network is disclosed. A remote client interacts with a distributed file server across a network. Files having more than one version are maintained as version-controlled files having a literal base and at least one delta section. The client maintains a local cache of files from the distributed server that are utilized. If a later version of a file is transferred across a network, the transfer may include only the required delta sections.
Claims26
A method for providing access to a file across a network using a differential file server comprising:
- receiving a differential file request for a file having a primary copy on a server connected to the differential file server;
- storing, a differential file server local copy of at least one version of the file, wherein at least one version includes a base version associated with a literal base section;
- updating the differential file server local copy using a delta section if required;
- determining if a file transmission is necessary;
- and
- transmitting the required differential portions of the file.
A method for utilizing files across a network using a client comprising:
- receiving a differential file request for a file;
- storing, a client local copy of at least one version of the file, wherein at least one version includes a base version associated with a literal base section;
- determining if a file update is required;
- and
- if required, receiving a file update.
A system for providing access to a file across a network using a differential file server comprising:
- a differential file server having a data processor connected to a differential file client using a network;
- a storage device connected to the data processor;
- the storage device storing a logic program;
- and
- the data processor operative with the logic program to perform:
- receiving a differential file request for a file having a primary copy on a server connected to the differential file server;
- storing, a differential file server local copy of at least one version of the file, wherein at least one version includes a base version associated with a literal base section;
- updating the differential file server local copy using a delta section if required;
- determining if a file transmission is necessary;
- and
- transmitting the required differential portions of the file.
A system for utilizing files across a network using a client comprising:
- a client having a data processor connected to a network;
- a storage device connected to the data processor;
- the storage device storing a logic program;
- and
- the data processor operative with the logic program to perform:
- receiving a differential file request for a file;
- storing, a client local copy of at least one version of the file, wherein at least one version includes a base version associated with a literal base section;
- determining if a file update is required;
- and
- if required, receiving a file update
An article of manufacture comprising:
- a computer readable medium having a computer readable program code embodied therein, the computer readable program code means including:
- means for receiving a differential file request for a file having a primary copy on a server connected to the differential file server;
- means for storing, a differential file server local copy of at least one version of the file, wherein at least one version includes a base version associated with a literal base section;
- means for updating the differential file server local copy using a delta section if required;
- means for determining if a file transmission is necessary;
- and
- means for transmitting the required differential portions of the file.
An article of manufacture comprising:
- a computer readable medium having a computer readable program code embodied therein, the computer readable program code means including:
- means for receiving a differential file request for a file;
- means for storing, a client local copy of at least one version of the file, wherein at least one version includes a base version associated with a literal base section;
- means for determining if a file update is required;
- and
- means for receiving a file update if required.
A system for efficiently servicing a client-originated file system request, the system comprising:
- a client computer operating under an operating system adapted to utilize one or more network file-system clients, the client computer being operably connected to a first local network;
- a server computer operating network file-system server, the server computer being operably connected to a second local network;
- a cache server having a cache and being operably connected to the first local network and a wide area network;
- a gateway server operably connected to the second local network and the wide area network;
- at least one of the one or more network file-system clients being adapted to make a client-originated file system requests;
- the network file-system server being adapted to service file system requests;
- the cache server being adapted to receive the client-originated file system request from the at least one of the one or more network file-system clients, and in response thereto, servicing the request by
- first determining what information, if any, is not current and present in the cache but would be required to service the client-originated file system request,
- then, if any information is determined to be required, update the information by tunneling one or more wide area requests over the wide area network to the gateway server;
- and
- then responding to the client-originated file system request;
- and
- the gateway server being adapted to receive and process the one or more wide area requests tunneled over the wide area network from the cache server, and in response thereto,
- generating one or more gateway-originated file system requests corresponding to the one or more wide area requests on the second local network, thereby updating the information;
- and
- tunneling the updated information to the cache server over the wide area network.
A system for efficiently servicing a file system request, the system comprising:
- a client computer operating under an operating system adapted to utilize one or more network file-system clients, the client computer being operably connected to a wide area network;
- a server computer operating network file-system server, the server computer being operably connected to a local network;
- a gateway server operably connected to the local network and the wide area network;
- the network file-system server being adapted to service gateway-originated file system requests;
- a software cache server operating on the client computer, the software cache server having a cache and being adapted to act as one of the one or more network file-system clients, the software cache server being further adapted to receive a file system request from the operating system, and in response thereto, servicing the file system request by
- first determining what information, if any, is not current and present in the cache but would be required to service the file system request,
- then, if any information is determined to be required, updating the information by tunneling one or more wide area requests over the wide area network to the gateway server;
- and
- then responding to the file system request;
- and
- the gateway server being adapted to receive and process the one or more wide area requests tunneled over the wide area network from the cache server, and in response thereto,
- generating one or more gateway-originated file system requests corresponding to the one or more wide area requests on the second local network, thereby updating the information;
- and
- tunneling the information to the cache server over the wide area network.
Dependencies are inferred from the claim text.