File transfer system
First Claim
Patent Images
1. A client system, comprising:
- a file partitioner that divides a file into a plurality of blocks; and
a client control application operative to initiate a plurality of Transmission Control Protocol (TCP) connections and to assign each of the plurality of blocks to one of the TCP connection of the plurality of TCP connections, such that each block is transmitted via its assigned connection.
1 Assignment
0 Petitions
Accused Products
Abstract
Systems and methods are provided for efficiently transferring a file between two entities. A client system includes a file partitioner that divides a file into a plurality of blocks. A client control application initiates a plurality of Transmission Control Protocol (TCP) connections. Each of the blocks is assigned to a TCP connection. Each block is transmitted via its assigned connection. A server system includes a server control application operative to monitor a plurality of TCP connections. The server receives a plurality of blocks via the TCP connections and writes the block to a file at the server system.
-
Citations
27 Claims
-
1. A client system, comprising:
-
a file partitioner that divides a file into a plurality of blocks; and
a client control application operative to initiate a plurality of Transmission Control Protocol (TCP) connections and to assign each of the plurality of blocks to one of the TCP connection of the plurality of TCP connections, such that each block is transmitted via its assigned connection. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13)
-
-
14. A server system, comprising:
-
a server control application operative to monitor a plurality of Transmission Control Protocol (TCP) connections and to receive a plurality of blocks via the plurality of TCP connections, each block having an associated ordinal identifier;
a buffer that stores the received blocks; and
a concatenation control that writes received blocks to a destination file once all blocks having an ordinal identifier, prior to the received block, have been written to the file. - View Dependent Claims (15, 16, 17, 18, 19, 20, 21)
-
-
22. A method of transferring a file over a network comprising:
-
dividing a source file into a plurality of blocks at a first entity;
establishing a plurality of data connections between the first entity and a second entity;
assigning a block from the plurality of blocks to a respective data connection of the plurality of data connections; and
transmitting the plurality of blocks from the first entity to the second entity, each block being transmitted over its assigned data connection. - View Dependent Claims (23, 24)
-
-
25. A method of transferring a file from a first entity to a second entity over a network, said method comprising:
-
transmitting a plurality of blocks from the first entity to the second entity via a plurality of data connections;
concatenating a sequence of blocks, including a first block, into a file during the transmission of at least one other block within the sequence;
concatenating a block received at the second entity when all blocks having an ordinal identifier prior to the received block have been concatenated into the file; and
buffering a block received at the second entity when at least one block having an ordinal identifier prior to the received block has not been concatenated into the file. - View Dependent Claims (26, 27)
-
Specification