Установление соединения данных
Управляющее соединение
Программы-клиенты FTP используют управляющее соединение, чтобы посылать команды и получать ответы от сервера. Обычно команды передаются через управляющее соединение, запрашивая сервер исполнить некоторые связанные с файлами действия на сервере или передать информацию через соединение данных. Клиент соединяется с официальным портом сервера. Клиент посылает команды серверу через управляющее соединение.
Основанные на протоколе FTP программы используют соединение данных для трех основных целей:
• Чтобы послать список файлов или каталогов от сервера клиенту.
• Чтобы послать файл от клиента серверу.
• Чтобы послать файл от сервера клиенту.
Когда клиент или сервер использует соединение данных для передачи файлов (или другой информации, типа списка файлов), они обычно выполняют следующий алгоритм: FTP-клиент должен выполнить пассивное открытие соединения данных и затем сообщить серверу, какой порт на компьютере клиента он должен использовать, чтобы установить соединение. После того как клиент сообщает FTP-серверу, какой порт протокола использовать, сервер исполняет активное открытие и использует IP-адрес и порт протокола FTP-клиента, указанный компьютером клиента. И в случае посылки, и в случае получения файлов FTP-клиент исполняет пассивное открытие соединения данных, а FTP-сервер исполняет активное открытие соединения.
|
|
В протоколе передачи файлов определено более тридцати команд, которые программа-клиент может использовать для управления сервером. FTP-команды делятся на три категории: команды контроля доступа, команды передачи параметров и команды обслуживания. Команды контроля доступа передают информацию, идентифицирующую пользователя серверу или сообщает серверу, к каким каталогам программа-клиент желает получить доступ. Команды, передающие параметры, позволяют клиенту определять опции FTP, уже рассмотренные нами: регистрируют тип, формат файла, структуру файла и режим передачи. Команды обслуживания FTP задают выполнение операций по передаче файлов. Описание каждой команды сопровождается возможными кодами ответа на нее.
Таблица 4.2.
Команды протокола FTP
№ | Команда | Описание |
Команды контроля доступа | ||
USER | Передача на сервер идентификатора пользователя | |
PASS | Передача пароля пользователя | |
АССТ | Ввод учетной информации (бюджета пользователя) | |
CWD | Изменение рабочего каталога | |
CDUP | Переход в родительский каталог | |
REIN | Повторная инициализация | |
QUIT | Выход | |
Команды установки параметров передачи | ||
PORT | Порт данных | |
PASV | Пассивный способ соединения | |
TYPE | Тип файла | |
STRU | Структура файла | |
MODE | Режим передачи | |
Команды сервиса FTP | ||
RETR | Получить файл от сервера | |
STOR | Сохранить файл на сервере | |
STOU | Сохранить файл на сервере с уникальным имененм | |
АРРЕ | Добавить в конец файла | |
ALLO | Зарезервировать место | |
REST | Повторная передача файла с контрольной точки | |
RNFR | Переименовать из | |
RNTO | Переименовать в | |
ABOR | Аварийное прекращение работы | |
DELE | Удалить файл | |
RMD | Удалить каталог | |
MKD | Создать каталог | |
PWD | Печать рабочего каталога | |
LIST | Показать содержимое каталога | |
NLST | Показать содержимое каталога (указываются только имена файлов) | |
SYST | Определение типа операционной системы | |
STAT | Проверка состояния FTP-сервера | |
HELP | Получение справочной информации от сервера | |
NOOP | Проверка связи с сервером |
Протокол FTP использует схему кодов ответа, которая фактически идентична системе кодов ответов HTTP.
|
|