FTP (RFC-959) обеспечивает файловый обмен между удаленными пользователями.
Работа FTP на пользовательском уровне содержит несколько этапов:
1. Идентификация (ввод имени-идентификатора и пароля).
2. Выбор каталога.
3. Определение режима обмена (поблочный, поточный, ascii или двоичный).
4. Выполнение команд обмена (get, mget, dir, mdel, mput или put).
Завершение процедуры (quit или close).
Команда | Описание |
ABOR | прервать предыдущую команду FTP и любую передачу данных |
LIST список файлов | список файлов или директорий |
PASS пароль | пароль на сервере |
PORT п1,п2,п35п4,п5,п6 | IP адрес клиента (nl.n2.n3.n4) и порт (n5 x 256 + пб) |
QUIT | закрыть бюджет на сервере |
RETR имя файла | получить (get) файл |
STOR имя файла | положить (put) файл |
SYST | сервер возвращает тип системы |
TYPE тип | указать тип файла: А для ASCII, I для двоичного |
USER имя пользователя | имя пользователя на сервере |
Команды и отклики передаются по управляющему соединению между клиентом и сервером в формате NVT ASCII. Клиент может отправить серверу более чем 30 различных FTP команд.
|
|
Отклики состоят из 3-циферных значений в формате ASCII, и необязательных сообщений, которые следуют за числами.
Отклик | Описание |
lyz | Положительный предварительный отклик. Действие началось, однако необходимо дождаться еще одного отклика перед отправкой следующей команды. |
2yz | Положительный отклик о завершении. Может быть отправлена новая команда. |
3yz | Положительный промежуточный отклик. Команда принята, однако необходимо отправить еще одну команду. |
4yz | Временный отрицательный отклик о завершении. Требуемое действие не произошло, однако ошибка временная, поэтому команду необходимо повторить позже. |
5yz | Постоянный отрицательный отклик о завершении. Команда не была воспринята и повторять ее не стоит. |
xOz | Синтаксическая ошибка. |
xlz | Информация. |
x2z | Соединения. Отклики имеют отношение либо к управляющему, либо к соединению данных. |
x3z | Аутентификация и бюджет. Отклик имеет отношение к логирова-нию или командам, связанным с бюджетом. |
x4z | Не определено. |
x5z | Состояние файловой системы. |
• 125 Соединение данных уже открыто; начало передачи.
• 200 Команда исполнена.
• 214 Сообщение о помощи (для пользователя).
• 331 Имя пользователя принято, требуется пароль.
• 425 Невозможно открыть соединение данных.
• 452 Ошибка записи файла.
• 500 Синтаксическая ошибка (неизвестная команда).
• 501 Синтаксическая ошибка (неверные аргументы).
• 502 Нереализованный тип MODE.
Управление соединением
Использовать соединение данных можно тремя способами.
1. Отправка файлов от клиента к серверу.
2. Отправка файлов от сервера к клиенту.
3.Отправка списка файлов или директорий от сервера к клиенту