Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Ответы 11-20.docx
Скачиваний:
15
Добавлен:
25.09.2019
Размер:
276.12 Кб
Скачать

12). Протокол ftp - история разработки, основные возможности, формат сообщений, программная реализация на стороне клиента и сервера, области применения.

FTP (File Transfer Protocol) - протокол передачи файлов. Это один из протоколов передачи информации по сети Интернет. Фактически это общепринятая спецификация команд, которые используют программы для своей работы. Протоколы создаются для того, чтобы разные программы на разных типах компьютеров могли общаться друг с другом. Это что-то типа универсального языка.

FTP имеет долгую историю создания. Первое раз механизм передачи файлов был разработан в 1971 году и реализован для хоста на M.I.T. (см. RFC114 с коментариями в RFC141).

В RFC172 был описан ориентированный на пользователя протокол передачи файлов между хостами (велючая терминал IMPs). В RFC265 и RFC281 были пересмотрены некоторые аспекты. Использование "Set Data Type" было предложено в RFC294 в январе 1972 года.

RFC354 заменил RFC264 и RFC265. File Transfer Protocol был теперь определен как протокол для передачи между HOST-ами для сети ARPANET. Основной функцией протокола была названа передача файлов эффективно и точно между хостами. Эта функция должна была помочь в использовании удаленных серверов файлов. Позднее появилось довольно большое количество документов RFC, посвященных этому вопросу. Приведу лишь некоторые из них: RFC385, RFC414, RFC430. Первая "официальная" версия протокола была опубликована в RFC454.

В июле 1983 года были исправлены некоторые неточности спецификации, но структура осталась прежней. Все эти изменения были отражены в RFC542 - новой "официальной" версии протокола.

В 1974 году были продолжены дискусси на тему FTP. В результате появились следующие документы: RFC607, RFC614, RFC624, в 1975 - RFC686, RFC691.

В связи с переводом протокола нижнего уровня с NCP в TCP, появился новый документ, описывающий стандарт: RFC765.

Последняя (какую смог найти автор этого документа) версия протокола появилась в октябре 1985 года под номером RFC959. В ней были исправлены некоторые неточности из RFC765 и введены некоторые необязательные для реализации команды.

Протокол FTP вообще очень неудобен в реализации, так как не создавался для реализации в какой-либо клиентской программе. Например, FTP не определяет формат, в котором должен выдаваться список файлов. Протокол FTP создавался как расширение обычного протокола telnet, то есть все команды пользователь должен был отдавать FTP из командной строки и подразумевалось наличие у пользователя shell-доступа на FTP-сервер. FTP-клиенты, которые предоставляли бы пользователю удобный интерфейс, появились значительно позже.

Протокол FTP поддерживает два режима: пассивный и активный. Используется для передачи файлов (получения или хранения), а также получения оглавлений каталогов. В обоих режимах FTP использует контрольное соединение, которое устанавливается клиентом на 21-й (по умолчанию) порт FTP-сервера. По контрольному соединению никакие данные, ни файлы, ни оглавления каталогов не передаются. Для передачи любого файла или оглавления устанавливается отдельное соединение.

В активном режиме клиент открывает со своей стороны порт, сообщает IP-адрес и номер порта серверу в команде PORT, сервер устанавливает соединение на порт, выбранный клиентом (в качестве порта источника обычно используется 20).

В пассивном режиме клиент дает команду PASV, на что сервер открывает TCP-порт, сообщает ее клиенту, после чего клиент устанавливает соединение на него. После установки второго соединения (DATA connection) клиент может дать команду на получение или отправку данных, которые и будут переданы без какой-либо модификации через это дополнительное соединение, после чего оно немедленно будет разорвано.

Изначально эти два режима предназначались для того, чтобы клиент мог переписать файл с одного сервера на другой, не закачивая файл к себе. Для этого клиент мог установить контрольное соединение на сервер A, дать ему команду PASV, установить соединение на сервер B и дать ему команду PORT с данными, переданными сервером A в ответ на команду PASV. Таким образом, DATA connection устанавливалось между серверами A и B, после чего клиент может дать команду на хранение файла одному серверу и передачу файла второму серверу.

  • Возможность передавать файлы через Интернет

  • Возможность удалённо управлять файлами компьютера

  • Удобство в работе с файлами

При помощи данного протокола Вы можете скачивать на свой компьютер любые файлы: MP3, ZIP архивы, текстовые и программы. Для работы с FTP Вам необходимы специальные программы, которые и обеспечивают данный протокол. Есть несколько типов FTP программ, но наиболее популярны и полезны из них:

  • FTP клиенты

  • FTP серверы

Команды FTP протокола посылаются от клиента серверу по контрольному соединению в ASCII формате.

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

FTP клиент - это специальная программа, которая работает с FTP серверами. Она предназначена для подачи запросов серверам и приёму информации. Фактически она устроена также как и сервер, только управляется она с локальной машины либо автоматически, либо человеком. Управлять клиентом через сеть нельзя, для этого есть сервера. FTP клиенты могут предоставлять пользователям удобный интерфейс, который очень похож на обычный интерфейс менеджеров файлов. Среди хороших FTP клиентов могу отметить Windows Commander. Эта программа позволяет работать с локальными файлами, с удалёнными файлами через FTP, полностью заменяет обычный проводник и умеет делать много полезных и приятных вещей. Раньше такие файловые менеджеры были намного проще (Norton Commander, DOS Navigator, FAR Manager). Windows Commander будет очень полезен для создателей собственных сайтов, так как позволяет максимально удобно закачивать файлы сайта на сервер-хост. У него есть специальная функция синхронизации файлов, которая сравнивает директории и указывает несовпадающие файлы. При синхронизации этот менеджер даже указывает каким образом совпадают файлы - бинарным или текстовым. Можно закачивать файлы бинарным методом и текстовым. Различаются эти методы только различным учётом символов перевода каретки. Например при загрузке CGI скриптов и текстовых файлов (в том числе и HTML) необходимо использовать текстовый метод , а при загрузке приложений, MP3 и прочий двоичных файлов нужно использовать бинарный метод.

Другой тип клиентов FTP - это программы типа Go!Zilla, ReGet и прочие. Называются они менеджерами загрузки. Они позволяют пользователям удобно осуществлять загрузку файлов с WEB-серверов. Особенность этих программ заключается в том, что они умеют интегрироваться с браузером и автоматически перехватывать у него файлы, которые Вы скачиваете со страниц. FTP загрузчики позволяют ВАм осуществлять докачку в случае обрыва связи, они обычно имеют красивый интерфейс и удобное управление.

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]