FTP - передача файлов

Еще один широко распространенный сервис Интернет - ftp. Русского перевода этого слова, вообще говоря, нет, и его так и называют в разговоре - эфтэпэ. Расшифровывается эта аббревиатура как протокол передачи файлов, но при рассмотрении ftp как сервиса Интернет имеется в виду не просто протокол, но именно сервис - доступ к файлам в файловых архивах. Вообще говоря, ftp - стандартная программа, работающая по протоколу tcp, всегда поставляющаяся с операционной системой. Ее исходное предназначение - передача файлов между разными компьютерами, работающими в сетях tcp/ip: на одном из компьютеров работает программа-сервер, на втором пользователь запускает программу-клиента, которая соединяется с сервером и передает или получает по протоколу ftp файлы. Тут предполагается, что пользователь зарегистрирован на обоих компьютерах и соединяется с сервером под своим именем и со своим паролем на этом компьютере. Протокол ftp, разумеется, оптимизирован для передачи файлов.

Данная черта и послужила причиной того, что программы ftp стали частью отдельного сервиса Интернет. Дело в том, что сервер ftp можно настраивается таким образом, что соединиться с ним можно не только под своим именем, но и под условным именем anonymous - аноним. Тогда Вам становятся доступна не вся файловая система компьютера, но некоторый набор файлов на сервере, которые составляют содержимое сервера anonymous ftp - публичного файлового архива. Итак, если кто-то хочет предоставить в публичное пользование файлы с информацией, программами и прочим, то ему достаточно организовать на своем компьютере, включенном в Интернет, сервер anonymous ftp. Сделать это достаточно просто, программы-клиенты ftp есть практически на любом компьютере - поэтому сегодня публичные файловые архивы организованы в основном как серверы anonymous ftp. На таких серверах сегодня доступно огромное количество информации и программного обеспечения. Практически все, что может быть предоставлено публике в виде файлов, доступно с серверов anonymous ftp. Это и программы свободно распространяемые и демонстрационные версии, это и мультимедиа, это, наконец просто тексты - законы, книги, статьи, отчеты.

Таким образом, если Вы, например, хотите представить миру демо-версию Вашего программного продукта - anonymous ftp является удачным решением такой задачи. Если, с другой стороны, Вы хотите найти, скажем, последнюю версию Вашей любимой свободно распространяющейся программы, то искать ее нужно именно на серверах ftp.

Несмотря на распространенность, у ftp есть и множество недостатков. Программы-клиенты ftp могут быть не всегда удобны и просты в использовании. Не всегда можно понять, а что это за файл перед Вами - то ли это тот файл, что Вы ищете, то ли нет. Нет простого и универсального средства поиска на серверах anonymous ftp - хотя для этого и существует специальный сервис archie, но это независимая программа, неуниверсальная и не всегда применимая. Программы ftp довольно стары и некоторые их особенности, бывшие полезными при рождении, не очень понятны и нужны сегодня - так, например, для передачи файлов есть два режима - бинарный и текстовый, и если Вы вдруг неправильно выбрали режим, то передаваемый файл может быть поврежден. Описания файлов на сервере выдаются в формате операционной системы сервера, а список файлов операционной системы UNIX может привести в недоумение пользователя DOS. Проблема тут в том, что со списком файлов выдается лишняя информация, а слишком много знать всегда вредно. Серверы ftp нецентрализованы, и это несет свои проблемы.

Несмотря на все это, серверы anonymous ftp сегодня - стандартный путь организации публичных файловых архивов в Интернет. Вы можете также организовывать доступ к файлам под паролем - например, своим клиентам.

ftp - сервис прямого доступа, требующий полноценного подключения к Интернет, но возможен и доступ через электронную почту - существуют серверы, которые могут прислать Вам по электронной почте файлы с любых серверов anonymous ftp. Однако это может быть весьма неудобно, ибо такие серверы сильно загружены, и Ваш запрос может долго ждать своей очереди. Кроме того, большие файлы при отсылке делятся сервером на части ограниченного размера, посылаемые отдельными письмами - и если одна часть из сотни потеряется или повредится при передаче, то остальные 99 тоже окажутся ненужными.

Инфрасервисом является finger. Это программа, предназначенная для получения информации о пользователях локального и удаленных компьютеров: полного имени и телефонов, времени последнего входа в систему, текущей активности и т.п. Finger становится сервисом Интернет, когда на сервере заводится псевдопользователь, и, при обращении за информацией о нем, Вы получите не вышеописанную техническую информацию, но что-то другое. Так, например, через finger можно получить из первых рук информацию о статусе последних версий игры Doom и других игр фирмы ID Software.

Инфрасервисом является и telnet - программа, обеспечивающая терминальный доступ к удаленным компьютерам. Она также используется как средство доступа к удаленным информационным сервисам, работа с которыми происходит в режиме текстового терминала - это, например, описанные в этой статье MUD и MOO. Telnet используется как часть информационного сервиса Интернет, когда при соединении пользователь попадает не в командный интерпретатор, но сразу в специализированную программу, обеспечивающую доступ к информационным ресурсам.

Так можно работать с каталогами некоторых библиотек, с сервером, обслуживающим игроков в шахматы и го, можно получить доступ к терминальному навигатору WWW, если у Вас нет локального. Серверов таких достаточно много, и они обслуживают самые разнообразные информационные сервисы.

Многие инфраструктурные сервисы tcp/ip могут использоваться для передачи информации в Интернет, и нет смысла пытаться описать здесь все. Но вот, например, как можно использовать информацию из базы данных имен компьютеров Интернет DNS. Для прямого обращения к этой базе данных используется утилита nslookup, которая предназначена для отладки и проверки информации в DNS сетевыми администраторами tcp/ip сетей. Однако, пользуясь ей, можно получить информацию о том, какого типа компьютер используется как удаленный информационный сервер, какое реальное имя имеет компьютер, известный Вам под логическим псевдонимом, и т.д.

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