Back to wiki
Bytesized Hosting

Ftpguide

Name: ftpguide

Last reviewed by: Clipper, April 2026


FTP Guide

This FTP Guide will allow you to understand the principles and tools related to remote file transfers.


Table of Contents


What is FTP?

FTP (File Transfer Protocol) is a network protocol used to transfer files between two servers on a TCP-based network. When talking about torrents, FTP is mainly used in combination with seedboxes. You download the files via torrents on the server and connect with an FTP client to bring the files to your own PC.

What is SFTP?

SFTP is a different protocol that works on top of an encrypted SSH connection. Both the commands and data stream are fully encrypted. It's a totally different protocol — only the name is similar to FTP. Since it works on top of TCP though, the rest of this guide still applies to SFTP.

FTP and Speed

Most questions regarding FTP deal with speed issues. To explain why FTP does not always max out your home connection, we need to look at the way TCP works.

Like mentioned above, FTP uses TCP as its transport layer. TCP is a great protocol — it has built-in error detection, it numbers the packets so it can rebuild the file regardless of the order packets arrive, and it has native support for flow control. Flow control decides how fast the server sends data to the client and is the main factor that determines your download speed.

When talking to a server, the client requesting the data specifies a "receive window" — a value that decides how much data it is willing to receive before reporting back to the server that it received all the packets. If it announces it's willing to buffer 256KB of data, the server will send 256KB and then wait for the client to confirm receipt before sending more.

This mechanism is responsible for speed loss. If you are very close to the server (say 12ms latency), it's not much of a problem. The server sends 256KB then pauses for 12ms — barely noticeable. However if you live in the US and are connecting to a server in Germany, this round trip might take 130ms. That means for every 256KB the server sends, it waits 130ms before sending the next chunk — which is why you can max out your connection to one server but only get 150KB/s on another.

Another side effect is that the internet is constantly changing. One day your speed might be fine and the next it might be much slower (or faster). This is because the peering and transit arrangements between providers constantly change, affecting the route to your ISP. Usually this returns to normal, but make sure you are using segments to work around any issues.

TL;DR — The further away you are from the server you are downloading from, the slower your download will be.

Introducing multi-thread and multi-segment

Don't give up just yet! There are techniques that can drastically improve your download speed.

Clients like FileZilla can connect with multiple threads to one server. The TCP limitations described above apply on a per-thread basis. So if you are only getting 150KB/s, you are getting 150KB/s per thread. By increasing the thread count you also multiply your speed. If your line can do 1500KB/s, set up your client to download with 10 threads — each thread limited to 150KB/s but the total coming up to 1500KB/s. This is called multi-threading.

Note that this doesn't scale indefinitely. Most servers only accept a limited number of connections per IP to prevent flooding.

Multi-threading works well when downloading multiple files (e.g. individual song files), since each file gets its own connection. However, when downloading one large file (e.g. a single ISO), a client can only create one thread per file. This is where multi-segmenting comes in. Multi-segmenting clients like Free Download Manager split a single file into several parts and download each part on a separate thread, achieving similar speed gains even for single-file downloads.

TL;DR — Your speed is limited per thread. Increasing your thread count increases your speed. Use a multi-segmenting client to use multiple threads even on single-file downloads.

The clients

Here are a few client suggestions. On Windows, Free Download Manager is a solid choice — it supports multi-segmenting, it's actively maintained, and it's free.

Client Platform Threads Segmenting Notes
FileZilla Windows / macOS / Linux Most popular FTP client, free
Free Download Manager Windows / macOS Free, actively maintained
WinSCP Windows Excellent SFTP/SCP client, free, integrates with Windows Explorer
SmartFTP Windows Paid
CuteFTP Windows Paid
Captain FTP macOS
Cyberduck macOS / Windows Free / donate-ware
Transmit 5 macOS Paid
lftp Linux / macOS Command-line, very powerful
Last Author
Clipper
Versions
48
Last Update
Fri, 10 Apr 2026 20:24:01 +0200