angoikon angoikon
Bookmark

Optimize FTP downloads from your seedbox with multi-part (multi-segmented) downloading

Introduction

When you download a single yet large file via FTP, that file is being downloaded as a "whole" (one-part file). However, sometimes you might be getting low downloading speeds due to a not-so-great peering between your ISP and your seedbox, or due to high latency because of the distance between yourself and the location of your seedbox.

There is a way to maximize that speed, by "breaking" that file into several smaller pieces, thus creating a new FTP connection for each smaller piece. This process is called multi-part or segmented downloading.
However, there is a caveat; a great number of FTP clients (like the popular Filezilla) don't support that process.
So if you find yourself the need to download at your maximum ISP line capacity, you should use one of the following FTP clients, depending on your operating system.

Note: Multi-part downloading is not to be confused with multi-threaded downloading where you can download simultaneously many different files (something that e.g. Filezilla and many FTP clients support). This guide is about downloading a single file via FTP, as fast as you can.

Installation

Just a reminder regardless of Operating System, you can find your login credentials at the Login information as well as your connection info at FTP Access, at your seedbox control panel here and by clicking your corresponding seedbox name

file

1) Windows

You can find several FTP clients that support multi-part downloading such as CuteFTP, iGetter, smartFTP etc. In this guide, we will be using CuteFTP or iGetter.

- CuteFTP

After installing the client, navigate to File -> New -> FTPS TLS/SSL (AUTH TLS - Explicit) in order to create the secure FTP connection

file

At the General tab, choose whatever name you want for the Label and fill out the rest fields according to your connection info

file

After that, navigate to Type tab, and write the correct port (9979) for the FTP connection

file

You can leave all other fields / tabs with the default settings. Press Connect to create and accept the certificate

file

Your connection to your seedbox is now ready. The right panel is used to navigate through your seedbox folders in order to choose the file you want to download locally, and the left panel is used for your PC to navigate through your local folders in order to choose the destination folder.
After navigating at both panels, right click the file and choose Download Advanced -> Multi-part Download -> MAX (4 parts)

file

CuteFTP will -temporary and- automatically create the rest 3 parts so there are 4 parts downloading simultaneously in total. When all downloads finish, it will automatically unite all parts into a single file

file

- iGetter

After installing the client, go to Site Explorer at the left panel, right click it and choose to Enter Site URL

file

Enter the URL, your username and password and click Go
An example of the URL is:

ftps://seedboxuser.cloud.seedboxes.cc:9979/

Replace the word in bold with your username

file

Click the FTP Site under the Site Explorer , navigate to file path you wish to download, right click the file and select Add to queue

file

Go to the "Downloads" section at the top left corner of the left panel and you will now see the file to be ready for downloading. Select it, right click and choose Item Settings...

file

Choose number of segments you want the file to break to, and also make sure that the at the FTP connection just below, you have selected *FTP over SSL (explicit) *

file

Select the file once more, right click it and choose Start

file

Note: You could also use lftp command line utility instead of FTP clients that have a GUI, should the need for terminal use arise. Just head to Linux section for more information

2) Mac OSX

There are very few FTP clients for OSX that support multi-part downloading, like Cyberduck or iGetter. In this guide, we will be using Cyberduck.

- Cyberduck

After installing the client, click Open Connection at the top left corner and from the drop-down menu, choose FTP-SSL (Explicit AUTH TLS) .
Fill out the rest fields according to your connection info

file

After you get connected, navigate to your remote folder and find the file you want to download. Right click and choose Download - it will start downloading the file at your local Downloads folder

file

A new window will appear with your transfers. Click at the Connections at the top right corner

file

At the drop-down menu, choose the number of connections (parts) you wish the file to be divided to

file

After finishing downloading, Cyberduck will automatically join all parts to the single file

- iGetter

You can find the guide for the iGetter FTP client at the Windows section

Note: You could also use lftp command line utility instead of FTP clients that have a GUI, should the need for terminal use arise. Just head to Linux section for more information

3) Linux

Unfortunately, for linux there is no available client with a GUI (Graphical User Interface) that supports multi-part downloading. Your only option is through command-line, by using either aria2 or lftp

- aria2

After you install the utility, open up a terminal, navigate to the local folder you wish to download the file to, and issue the following command;

aria2c --ftp-user=user --ftp-passwd=password -s8 -x8 ftp://user.cloud.seedboxes.cc:9979/files/Photo\ Collection.zip

Replace user and password accordingly, update the FTP url too as well as the path of the file and choose how many parts you want the file to be splitted too (-s8 means split file to 8 connections and -x8 means 8 maximum connections per server)

- lftp

Contrary to aria2, with lftp you can have a shell once you connect to your FTP, which means that you don't have to remember or know the file's source path. Just open up a terminal, navigate to the local folder you wish to download the file, and issue the command lftp
Once you are the lftp's shell, connect to your seedbox by issuing the following;

open -u user,password -p 9979 user.cloud.seedboxes.cc

Replace the words in bold accordingly to your information. Once you connect, write;

pget -n 10 path/to/file

This will split the file to 10 concurrent segments.

Of course, if you know beforehand the remote path of the file, like in the aria2 example, you can directly download it from your linux terminal by issuing;

lftp -u user,password -p 9979 user.cloud.seedboxes.cc -e 'pget -n 10 path/to/remote/file -o local/path/to/download/the/remote/file/to/'

For example:

lftp -u seedboxuser,seedboxpassword -p 9979 seedboxuser.cloud.seedboxes.cc -e 'pget -n 10 /files/Photo\ Collection.zip -o /home/user/Photos/'

Note: The single quotes after the -e argument and at the very end of the command are both needed!

You can omit the last argument (-o) if you have already navigated to the local folder you wish the files to be downloaded to. Again, replace the words in bold accordingly to your information

No Comments yet