Apparatus and method for efficiently and securely transferring files over a communications network
First Claim
1. A method for efficiently transferring files from a transmitting computer to a receiving computer, comprising the steps of:
- a. identifying an original file for transmission;
b. extracting one or more blocks from said original file until said file has been fully extracted into said one or more blocks, each said block containing an exact copy of a portion of said original file, and wherein each said block has a predetermined size;
c. compressing each said extracted block asynchronously with regard to said extraction step;
d. transmitting each said compressed block and ordering data indicia over a communications network to said receiving computer, said transmitting step occurring asynchronously with regarding to said compression step;
e. decompressing each said transmitted block at said receiving computer; and
, f. reconstructing said original file from said decompressed blocks.
1 Assignment
0 Petitions
Accused Products
Abstract
A system and method to reduce the time to transfer files from one computer to another over a communications network, such as the Internet, by avoiding the synchronous timing limitations of current transfer methods. A file that is intended to be transferred from a transmitting computer to a receiving computer is partitioned into multiple synchronous block portions of the existing file, prior to transfer. Each block subportion of original file is compressed and queued for transmission to a target receiving computer. The compressed blocks are kept in a cue, encrypted, and transmitted asynchronously to a target receiving computer over a selected communications network. Upon receipt at the receiving computer of any of the transmitted blocks, blocks are decrypted, decompressed, and asynchronously reconstructed into the original file. Since the transmission of blocks to the receiving computer occurs asynchronously, as well as the transmission preparation steps, overall transmission times are improved.
-
Citations
43 Claims
-
1. A method for efficiently transferring files from a transmitting computer to a receiving computer, comprising the steps of:
-
a. identifying an original file for transmission;
b. extracting one or more blocks from said original file until said file has been fully extracted into said one or more blocks, each said block containing an exact copy of a portion of said original file, and wherein each said block has a predetermined size;
c. compressing each said extracted block asynchronously with regard to said extraction step;
d. transmitting each said compressed block and ordering data indicia over a communications network to said receiving computer, said transmitting step occurring asynchronously with regarding to said compression step;
e. decompressing each said transmitted block at said receiving computer; and
,f. reconstructing said original file from said decompressed blocks. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16)
-
-
17. A method for efficiently transferring files from a transmitting computer to a receiving computer, comprising the steps of:
-
a. identifying an original file for transmission;
b. extracting a block from said original file to replicate a portion of said original file data;
c. compressing said extracted block;
d. transmitting said compressed block and ordering data indicia to said receiving computer;
e. iteratively and asynchronously repeating steps b-d until all of said original file has been fully extracted into blocks, each block compressed, and each compressed block transmitted to said receiving computer;
f. iteratively decompressing each received compressed block at said receiving computer until all blocks representing said original file have been decompressed; and
,g. reconstructing said original file from said decompressed blocks. - View Dependent Claims (18, 19, 20, 21, 22, 23, 24, 25)
-
-
26. A method for efficiently transferring files from a transmitting computer to a receiving computer, comprising the steps of:
-
a. identifying an original file for transmission;
b. extracting one or more blocks from said original file until said file has been fully extracted into said one or more blocks, each said block containing an exact copy of a portion of said original file, and wherein each said block has a predetermined size;
c. compressing each said extracted block asynchronously with regard to said extraction step; and
,d. transmitting each said compressed block along with ordering data indicia over a communications network to said receiving computer, said transmitting step occurring asynchronously with regarding to said compression step, and wherein each said transmitted block is decompressed and reconstructed to form said original file at said receiving computer.
-
-
27. A method for efficiently transferring a file from a transmitting computer to a receiving computer, comprising the steps of:
-
a. identifying an original file for transmission;
b. extracting a block from said original file to replicate a portion of said original file data;
c. compressing said extracted block;
d. transmitting said compressed block and ordering data indicia to said receiving computer;
e. iteratively and asynchronously repeating steps b-d until all of said original file has been fully extracted into blocks, each block compressed, and each compressed block transmitted to said receiving computer;
f. said transmitting computer causing said receiving computer to iteratively decompress each received compressed block at said receiving computer until all blocks representing said original file have been decompressed; and
,g. said transmitting computer causing on said receiving computer reconstruction of said original file from said decompressed blocks.
-
-
28. A system for efficiently transferring a file from a transmitting computer to a receiving computer, comprising:
-
a. a sender module running on said transmitting computer for controlling and initiating block transmissions to said receiving computer;
b. a compression manager module running on said transmitting computer and said receiving computer for compressing and decompressing blocks transferred from said transmitting computer to said receiving computer;
c. a receiver module running on said receiving computer for receiving transmitted blocks from said transmitting computer and initiating decompression in said compression manager of said received blocks;
d. wherein said compression manager module includes a plurality of sub-functions running on said transmitting computer for extracting and compressing one or more blocks representing said file; and
,e. wherein said compression manager module also includes a plurality of sub-functions running on said receiving computer for decompressing each received block and reconstructing said file from said decompressed blocks. - View Dependent Claims (29, 30, 31, 32, 33, 34)
-
-
35. A system for efficiently transferring a file from a transmitting computer to a receiving computer, comprising:
-
a. means running on said transmitting computer for controlling and sending block transmissions to said receiving computer;
b. means running on said transmitting computer and said receiving computer for compressing and decompressing blocks transferred from said transmitting computer to said receiving computer;
c. means running on said receiving computer for receiving transmitted blocks from said transmitting computer and initiating decompression in said compression-decompression means of said received blocks;
d. wherein said compression-decompression means includes a plurality of means running on said transmitting computer for extracting and compressing one or more blocks representing said file; and
,e. wherein said compression-decompression means also includes a plurality of means running on said receiving computer for decompressing each received block and reconstructing said file from said decompressed blocks. - View Dependent Claims (36, 37, 38, 39, 40)
-
-
41. A system for efficiently transferring a file from a transmitting computer to a receiving computer, comprising:
-
a. a sender module running on said transmitting computer for controlling and initiating block transmissions to said receiving computer;
said sender module including means for communicating ordering data indicia to said receiving computer with each block transmission;
b. a compression manager module having a portion running on said transmitting computer for compressing blocks to be transferred from said transmitting computer to said receiving computer;
c. said sender module including means for causing a receiver module running on said receiving computer for receiving transmitted blocks from said transmitting computer and initiating decompression in said compression manager of said received blocks;
d. wherein said compression manager module includes a plurality of sub-functions running on said transmitting computer for extracting and compressing one or more blocks representing said file; and
,e. wherein said compression manager module also includes means for causing a plurality of sub-functions running on said receiving computer for decompressing each received block and reconstructing said file from said decompressed blocks.
-
-
42. A memory for storing data for access by an application program being executed on a data processing system, comprising:
-
a. means for identifying an original file for transmission;
b. means for extracting a block from said original file to replicate a portion of said original file data;
c. means for compressing said extracted block;
d. means for transmitting said compressed block and ordering data indicia to said receiving computer;
e. means for iteratively and asynchronously applying elements b-d until all of said original file has been fully extracted into blocks, each block compressed, and each compressed block transmitted to said receiving computer;
f. means for said transmitting computer to cause on said receiving computer iteratively decompression of each received compressed block at said receiving computer until all blocks representing said original file have been decompressed; and
,g. means for said transmitting computer to cause on said receiving computer reconstruction of said original file from said decompressed blocks.
-
-
43. A computer data signal embodied in a carrier wave, comprising:
-
a. means for identifying an original file for transmission;
b. means for extracting a block from said original file to replicate a portion of said original file data;
c. means for compressing said extracted block;
d. means for transmitting said compressed block and ordering data indicia to said receiving computer;
e. means for iteratively and asynchronously applying elements b-d until all of said original file has been fully extracted into blocks, each block compressed, and each compressed block transmitted to said receiving computer;
f. means for said transmitting computer to cause on said receiving computer iteratively decompression of each received compressed block at said receiving computer until all blocks representing said original file have been decompressed; and
,g. means for said transmitting computer to cause on said receiving computer reconstruction of said original file from said decompressed blocks.
-
Specification