что и удаленный файл.

FTP позволяет записывать имена удаленных файлов так же, как это делают пользователи удаленного хоста. Копируя файл на локальный компьютер, можно присвоить ему локальное имя файла. Если имя не присваивается, то при необходимости FTP преобразует имя удаленного файла в формат, допустимый для локального хоста. Иногда это приводит к преобразованию символов из нижнего регистра в верхний и к усечению имен.

Протокол FTP имеет характерный стиль операций. Всякий раз, когда должен быть скопирован файл, для пересылки данных открывается и используется второе соединение. После команды get (получить) в приведенном примере диалога локальный клиент FTP получает второй порт и указывает серверу на открытие соединения с этим портом. Мы не видели команду, инициирующую эту операцию, но видели ответную реакцию:

200 PORT command successful.

150 Opening ASCII mode data connection for rfcl842.txt (24143 bytes).

На рис. 14.1 показан доступ к другому общедоступному архиву, но через приложение для пересылки файлов Chameleon (в среде Windows), имеющее графический пользовательский интерфейс.

Рис. 14.1. Доступ к архиву пересылки файлов из программы Chameleon

Файлы могут копироваться перетаскиванием их значков из одного окна в другое или щелчком мыши на кнопке со стрелкой. Имя локального файла можно ввести в окне слева, расположенном ниже метки Files.

К тому же самому сайту можно обратиться и из клиента пересылки файлов Netscape (см. рис. 14.2). Копирование файла выполняется щелчком мыши на его имени. Текстовые файлы выводятся на экран, и их можно сохранить на локальном компьютере через пункт Save меню File. Если запрашивается локальное сохранение двоичного файла, то выводится раскрывающееся меню с запросом о месте хранения этого файла.

Рис. 14.2. Доступ к архиву пересылки файлов из Netscape

14.3 Модель FTP

Как видно из приведенного выше диалога, пользователь взаимодействует с локальным клиентом FTP (точнее, с соответствующим процессом). Программное обеспечение локального клиента управляет преобразованием данных для удаленного сервера FTP через управляющее соединение. Когда конечный пользователь вводит команду пересылки или работы с файлом, эта команда транслируется в одно из специальных сокращений, используемых для управляющего соединения.

В сущности, управляющее соединение — это обычный сеанс telnet в режиме NVT. Клиент отправляет команду на сервер через управляющее соединение, а сервер возвращает ответ по этому же соединению.

Когда пользователь запрашивает пересылку файла, открывается отдельное соединение для передачи данных, и по нему пересылается файл. Это соединение используется и для пересылки содержимого каталогов. Модель FTP показана на рис. 14.3. Обычно сервер использует порт 20 для соединения пересылки данных.

Рис. 14.3. Управляющее соединение и соединение пересылки данных в FTP

Во время вышерассмотренного диалога конечный пользователь вводил запросы на изменение удаленного каталога и пересылку файла. Эти запросы преобразовывались в формат команд FTP и пересылались по управляющему соединению на удаленный сервер FTP. Пересылка файлов производится по отдельному соединению, задаваемому для обмена данными.

14.4 Команды FTP

Какие команды можно передавать по управляющему соединению? Существуют команды аутентификации, дающие возможность пользователю указать идентификатор, пароль и регистрационную запись для работы с FTP.

Команды пересылки файлов позволяют:

■ Копировать одиночный файл между хостами

■ Копировать несколько файлов между хостами

■ Добавлять содержимое локального файла к удаленному файлу

■ Копировать файл и добавлять к его имени номер для формирования уникального имени (например, файлы ежедневной регистрации получат имена log.1, log.2 и т.д.)

Команды обслуживания файлов разрешают:

■ Просмотреть список файлов каталога

■ Узнать текущий каталог и изменить его на другой

■ Создавать и удалять каталоги

■ Переименовывать или удалять файлы

Управляющие команды служат для:

■ Идентификации пересылки файлов ASCII, EBCDIC или двоичных файлов

■ Проверки структурирования файла (как последовательность байт или как последовательность записей)

■ Указания способа пересылки файла (например, как поток октетов)

Пересылаемые по управляющему соединению команды имеют стандартный формат. Например, команда RETR используется для копирования файла из сервера на сайт клиента.

FTP не накладывает ограничений на пользовательский интерфейс, поэтому разработчики могут создавать (как мы уже видели) хитроумные системы для настольных компьютеров либо простые в применении клиентские программы. Т.е. ввод с клавиатуры get, перетаскивание мышью значка или щелчок на имени файла транслируются в одну и ту же команду RETR.

Пользовательский интерфейс обычно имеет дополнительные команды для настройки локального окружения, например:

■ Запросить FTP о выводе звукового сигнала при завершении пересылки файла

■ Для текстового интерфейса запросить вывод символа диез (#) при пересылке каждого блока данных

■ Установить автоматическое преобразование регистра символов в имени файла или таблицу трансляции символов

Полный набор поддерживаемых конкретным хостом функций можно узнать через справку клиента FTP или в техническом описании программы.

Добавить отзыв
ВСЕ ОТЗЫВЫ О КНИГЕ В ИЗБРАННОЕ

0

Вы можете отметить интересные вам фрагменты текста, которые будут доступны по уникальной ссылке в адресной строке браузера.

Отметить Добавить цитату