Основой сервиса FTP является протокол FTP (File Transfer Protocol), который предназначен для передачи файлов между двумя узлами сети. Он предоставляет широкий набор команд для копирования файлов, а также для управления файлами и каталогами на удаленном компьютере: удаление файлов и каталогов, создание каталогов, переименование файлов, получение списка файлов с удаленного компьютера. В случае, если передача файла была прервана по каким-либо причинам, протокол предусматривает средства для докачки файла, что бывает очень удобно при передаче больших файлов.
В предоставлении сервиса FTP принимают участие две программные компоненты:
• FTP-сервер. Это программа, которая выполняется на компьютере, предоставляющим сервис FTP. Она принимает команды по протоколу FTP и выполняет их.
• FTP-клиент. Это программа, которая выполняется на компьютере пользователя. С ее помощью пользователь устанавливает соединение с FTP-сервероми передает ему различные команды: запрашивает файлы для скачивания, удаляет файлы, переименовывает их и т.д.
Общая схема работы сервиса FTP приведена на рис. 4. FTP-сервер ожидает соединения от клиента на определенном порту (обычно используется порт 21, хотя это не обязательно). Когда соединение установлено, клиент использует его для передачи команд серверу, а сервер для передачи ответов клиенту.
Это так называемое "управляющее" TCP соединение. В отличие от других протоколов, таких как SMTP или HTTP, для передачи данных используется отдельное, второе TCP соединение. Данные по управляющему соединению передаются в соответствии с протоколом Telnet.

Рис. 4. Схема работы сервиса FTP
Установив управляющее соединение с сервером, клиент должен провести процедуру авторизации: сообщить имя своей учетной записи и пароль.