Remote file updates through remote protocol
First Claim
1. A method of updating a file, comprising:
- opening a source file on a remote server;
opening a destination file on the remote server;
sending a gather-copy file system control (fsctl) command instructing the remote server to copy source data from the source file into the destination file.
2 Assignments
0 Petitions
Accused Products
Abstract
An improved remote protocol enables efficient and reliable updating of files on a remote server. A gather-copy extension to a remote protocol enables a client to instruct a server to gather portions of data from an existing source file on the server and to copy those portions of data to appropriate offsets within a new destination file on the server. The gather-copy extension thus enables the client to leave blank locations in the destination file into which the client can write new data during a file update. The gather-copy extension also enables the client to effectively delete portions of the source file by not copying them from the source file to the destination file. File updates can therefore be made without having to transfer the entire file from the client to the server.
109 Citations
35 Claims
-
1. A method of updating a file, comprising:
-
opening a source file on a remote server;
opening a destination file on the remote server;
sending a gather-copy file system control (fsctl) command instructing the remote server to copy source data from the source file into the destination file. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14)
-
-
15. A method comprising:
-
opening a source file in response to a first open request from a client;
opening a destination file in response to a second open request from the client;
copying source data from the source file into the destination file in response to receiving a gather-copy fsctl command from the client, the gather-copy fsctl command specifying chunks of data from the source file to be copied into the destination file. - View Dependent Claims (16, 17, 18, 19, 20, 21, 22, 23, 24)
-
-
25. A processor-readable medium comprising processor-executable instructions configured for:
-
instructing a remote server to open a source file and provide at least read data access to the source file;
requesting an identifier of the source file from the remote server;
instructing the remote server to open a destination file and provide at least write access to the destination file;
building an array of file regions that identify data blocks to be copied from the source file to the destination file; and
instructing the remote server to copy the identified data blocks from the source file into the destination file at particular offsets in the destination file. - View Dependent Claims (26, 27, 28, 29)
-
-
30. A client computer comprising:
-
an application program;
a protocol that enables the application program to access and manipulate data files on a remote server; and
a gather-copy extension to the protocol that enables the application program to update data files on the remote server through a gather-copy file system control (fsctl) command, the gather-copy fsctl command instructing the remote server to copy chunks of source data from a source file on the server into specified locations within a destination file on the server. - View Dependent Claims (31, 32)
-
-
33. A server computer comprising:
-
a file storage;
a protocol configured to access a source file from the file storage and to open a destination file in response to commands from a client application; and
a protocol extension configured to copy source data from the source file into specified locations in the destination file in response to a gather-copy file system control (fsctl) command from the client application. - View Dependent Claims (34, 35)
-
Specification