TCP/IP Архитектура, протоколы, реализация (включая IP версии 6 и IP Security)
Шрифт:
14.6.1 Команды управления доступом
Команды и параметры, которые определяют доступ пользователя к хранилищу файлов удаленного хоста, определены в таблице 14.1.
Таблица 14.1 Команды авторизации пользователя для доступа к архиву файлов
Команда | Определение | Параметр(ы) |
---|---|---|
USER | Идентифицирует пользователя | Идентификатор пользователя |
PASS | Ввод пароля | Пароль |
ACCT | Указание регистрационной записи пользователя | Идентификатор регистрационной записи |
REIN | Повторная инициализация для указания состояния | Нет |
QUIT | Выход | Нет |
ABOR | Отмена
| Нет |
14.6.2 Команды управления файлами
Команды из таблицы 14.2 дают возможность выполнять типичные операции позиционирования на каталог и управления файлами удаленного хоста. Рабочим каталогом (working directory) называется текущий каталог пользователя.
Таблица 14.2 Команды выбора каталога и управления файлами
Команда | Определение | Параметр(ы) |
---|---|---|
CWD | Перейти в другой каталог сервера | Имя каталога |
CDUP | Перейти в родительский каталог | Нет |
DELE | Удалить файл | Имя файла |
LIST | Вывести информацию о файлах | Имя каталога, список файлов (без параметра — вывод информации о рабочем каталоге) |
MKD | Создать каталог | Имя каталога |
NLST | Вывести список файлов каталога | Имя каталога (для рабочего каталога может отсутствовать) |
PWD | Вывести имя рабочего каталога | Нет |
RMD | Удалить каталог | Имя каталога |
RNFR | Указать файл, который будет переименован | Имя файла |
RNTO | Переименовать файл | Имя файла |
SMNT | Монтировать другую файловую систему | Идентификатор (Identifier) |
14.6.3 Команды установки формата данных
Команды из таблицы 14.3 используются для указания формата данных, структуры файла и режима пересылки, которые будут применяться при копировании файлов.
Таблица 14.3 Команды описания типа, структуры и режима
Команда | Определение | Параметр(ы) |
---|---|---|
TYPE | Указание типа данных и необязательного формата вывода на принтер | A (ASCII), Е (EBCDIC), 1 (двоичный образ), N (не распечатываемые), Т (telnet), С (ASA). |
STRU | Структура файла | F (файл) или R (записи) |
MODE | Формат пересылки | S (поток), В (блок) или С (сжатие) |
14.6.4 Команды пересылки файлов
Команды из таблицы 14.4 применяются с целью установки соединения для данных, копирования файлов и восстановления при перезапуске.
Таблица 14.4 Команды поддержки пересылки файлов
Команда | Определение | Параметр(ы) |
---|---|---|
ALLO | Выделяет (резервирует) достаточное пространство для поступающих данных | Целое число байт |
APPE | Добавляет локальный файл в конец удаленного файла | Имя файла |
PASV | Запрашивает у сервера IP-адрес и порт для инициализируемого клиентом соединения пересылки данных. | Нет. Сервер возвратит IP-адрес и номер порта |
PORT | Идентифицирует сетевой адрес и номер порта для инициируемого сервером соединения | IP-адрес и номер порта |
REST | Устанавливает маркер перезапуска (вводится сразу за перезапускаемой командой пересылки) | Значение маркера |
RETR | Извлечение или получение файла | Имя файла (файлов) |
STOR | Сохранение или помещение файла | Имя файла (файлов) |
STOU | Сохранение файла с уникальным именем | Имя файла |
14.6.5 Дополнительные команды
Последний набор команд (таблица 14.5) выводит конечному пользователю полезную информацию.
Таблица 14.5 Дополнительные информационные команды
Команда | Определение | Параметр(ы) |
---|---|---|
HELP | Вывод сведений о реализованных на сервере возможностях | Нет |
NOOP | Запрос от сервера ответа OK | Нет |
SITE | Используется для специфичных серверных подкоманд, которые не стандартизованы, но могут быть доступны на данном сервере | Нет |
SYST | Запрос к серверу о типе его операционной системы | Нет |
STAT | Запрос информации о параметрах и состоянии соединения | Нет |
14.6.6 Команды сайта
Многие файловые серверы Unix используют программное обеспечение WU-FTP от Вашингтонского университета (Сент-Луис). Эта реализация имеет команду SITE для выполнения на файловом сервере различных специальных программ. Например, пользователь может сначала получить доступ по идентификатору ftp, а затем указать в команде SITE регистрационный идентификатор группы и пароль. В этом случае обеспечивается доступ к большему числу файлов, чем при анонимном доступе.
14.6.7 Восстановления после ошибок и перезапуск
Многим организациям необходимо пересылать очень большие файлы. Предположим, что во время пересылки такого файла произошла ошибка. Возникшие проблемы должна помочь решить служба перезапуска FTP. Она не является обязательной и, к сожалению, на момент написания книги такую службу обеспечивали только немногие продукты TCP/IP. Однако будем оптимистами и рассмотрим возможности службы перезапуска.
В блочном режиме работы FTP и при реализации службы перезапуска пересылающая информацию сторона может передавать блоки, содержащие в нужных местах общего потока данных маркеры перезапуска. Каждый маркер представляет собой распечатываемую строку текста. Например, последовательные маркеры могли бы быть: 1, 2, 3 и т.д. Всякий раз, когда приемник получает маркер, он записывает принятые данные на энергонезависимое устройство хранения и отслеживает положение маркера в общем потоке данных.
Если информацию принимает клиент, о получении каждого маркера будет информироваться конечный пользователь (как только данные были сохранены в локальной системе). Если данные получает удаленный сервер, пользователю по управляющему соединению будет возращено сообщение, указывающее, что данные до маркера были успешно сохранены на сервере.
При отказе системы пользователь может возобновить выполнение команды, указав значение маркера как аргумент команды. Эта операция должна быть инициирована сразу после команды, во время выполнения которой произошел крах системы.
14.6.8 Коды ответов
Каждой команде в диалоге соответствует ответ, состоящий из кода ответа и сообщения. Например:
Коды ответов состоят из трех цифр, каждая из которых имеет определенное назначение:
■ Коды от 200 до 300 указывают на успешное выполнение команды.
■ Коды от 100 до 200 указывают на начало выполнения операции.
■ Коды от 300 до 400 указывают на успешное достижение промежуточной точки.
■ Коды от 400 до 500 сигнализируют о временной ошибке.
■ Коды от 500 свидетельствуют о постоянной ошибке (это плохие новости).
Вторая и третья цифры кодов более точно специфицируют ответ.
14.7 Безопасность