Browse Prior Art Database

Fast Transfer of Large Data Files

IP.com Disclosure Number: IPCOM000186603D
Original Publication Date: 2009-Aug-28
Included in the Prior Art Database: 2009-Aug-28
Document File: 3 page(s) / 76K

Publishing Venue

IBM

Abstract

The disclosure essentially uses multiple control channels (File Transfer Protocol (FTP) sessions) and their associated data channel to transfer separate sections of the same file using a different server restart marker (data checkpoint) on each control channel. Using this we can transfer large files at a fast pace. The data checkpoint on each control channel will be altered and controlled via FTP "REST" command (File Transfer Protocol’s Restore command) which sets the server marker at a predetermined offset on the file to be transferred. With different data checkpoints on all the control channels separate sections of the same file can be transferred over multiple control connections. The original file will then be reassembled from these individual file segments. This method of transferring files is implementable as per RFC959.

This text was extracted from a PDF file.
At least one non-text object (such as an image or picture) has been suppressed.
This is the abbreviated version, containing approximately 54% of the total text.

Page 1 of 3

Fast Transfer of Large Data Files

File Transfer Protocol uses two TCP/IP connections. The first connection is for command/response exchange between the client and server, while the second connection is used to transfer actual data. There is only one control channel alive for the entire FTP session. Each file transfer however uses a separate data channel. For example if we need to transfer 4 files, a total of 5 TCP/IP connections will be used i.e. one control connection and 4 data connections. FTP protocol by definition has no provision of a session with a single control connection having multiple data channels.

Multiple complete file transfers are implemented by several FTP clients by starting multiple FTP sessions using the same user credentials and distribute all the files to be transferred over these multiple connections. Each FTP connection, in this arrangement, still does a sequential transfer of the files that have been allocated to it; however the overall transfer time (for all the files) is reduced...

None of the FTP clients handle large complete file transfers well. Large transfers here would be

transfers which are over 200-300 MB and up to 3-4 GB. E.g. iso files. Many clients do not support transfers around 150 to 200 MB while others are not able to complete the transfer successfully. This is primarily because, as lengthy transfers take time, the control channel keeps idling. In this case depending on client preferences or server's configuration either the client or the server initiates a control channel timeout which breaks the data connection and any associated transfer. Even if there are no timeout specific limitations, receiving the entire large file over a single data channel is not efficient and takes time.

Below we have tried to explain how, using the FTP command "REST", large complete files can be successfully transferred under the constraints mentioned above. The intended use of REST (restart) command is to resume transfers, which either failed OR to resume transfers. As per RFC959, the specification for REST is:

REST

The argument field represents the server marker at which

file transfer is to be restarted. This command does not

cause file transfer but skips over the file to the spec...