Сети ЭВМ и телекоммуникации

Вид материалаДокументы
Вопрос №11. Протоколы файлового обмена, электронной почты, telnet, http
Протокол файлового обмена FTP.
Управляющий (командный
Пример сессии.
Передача сообщений
Завершение сеанса
Взаимодействие построено из следующих этапов
Взаимодействие клиента и сервера предполагает четыре этапа
Работа с почтовым ящиком
Работа с сообщениями в выбранной папке
Завершение сеанса
Письма хранятся на сервере, а не на клиенте
Поддержка нескольких почтовых ящиков
Предусмотрен механизм расширения возможностей протокола
Принципы построения
Принцип виртуальных терминалов
Принцип настраиваемых параметров
Принцип симметрии терминалов и процессов
Основная задача протокола
Взаимодействие клиента, кэша и исходного сервера
...
Полное содержание
Подобный материал:
1   ...   7   8   9   10   11   12   13   14   15

Вопрос №11. Протоколы файлового обмена, электронной почты, telnet, http


К прикладным протоколам Internet относятся следующие:

FTP - протокол файлового обмена (реализуется режим удаленного узла), клиент может запрашивать и получать файлы с сервера, адрес которого указан в запросе;

SMTP, IMAP, POP3 - протоколы электронной почты.

Telnet - протокол эмуляции терминала, или, другими словами, протокол реализации дистанционного управления используется для подключения клиента к серверу при их размещении на разных компьютерах, пользователь через свой терминал имеет доступ к компьютеру-серверу;

HTTP (Hypertext Transmission Protocol) - протокол для связи WWW-серверов и WWW-клиентов;

Указанные протоколы реализуются с помощью соответствующего программного обеспечения. Для Telnet, FTP, SMTP на серверной стороне выделены фиксированные номера протокольных портов.

Файловый обмен. Файловый обмен - доступ к файлам, распределенным по различным компьютерам. В сети Internet на прикладном уровне используется протокол FTP (File Transport Protocol). По этому протоколу происходит доступ к FTP-серверам (файловый сервер) и последующая загрузка файла с него. Доступ возможен в режимах off-line и on-line. В режиме off-line посылается запрос к FTP-серверу. Сервер формирует и посылает ответ на запрос. В режиме on-line осуществляется интерактивный просмотр каталогов FTP-cервера, выбор и передача нужных файлов. На ЭВМ пользователя нужен FTP-клиент.

Для просмотра и загрузки содержимого FTP-серверов можно использовать веб-браузеры (IE, NN и др.) или специальные ftp-браузеры. Просматривая содержимое FTP-серверов, вы будете переходить из одной папки в другую, то есть так же как и на своём компьютере. Для поиска нужного документа в этом огромном количестве файлов используются специальные средства поиска - Archie и FTP Search. Archie - информационная система для просмотра содержимого FTP-серверов. Вместо утомительной навигации вручную по каталогам система позволяет искать данные по ключевым словам или по образцу. Другая вспомогательная система в Internet - система Whois - справочник по абонентам электронной почты.

Протокол файлового обмена FTP. При запросе файла по протоколу FTP пользователь должен знать, где находится нужный ему файл. Для этого удобно воспользоваться другой информационной системой сети Internet, называемой Archie. Обращаясь к клиенту Archie по команде

archie <имя файла>,

пользователь получает в ответ адрес сервера, имя директории и размер файла. Далее можно обращаться к FTP-клиенту:

ftp[<параметры>][<имя сервера>]. (1)

Квадратные скобки в записи команд означают необязательные части. Параметры используются только при отладке FTP. В качестве имени сервера указывается IP-имя или IP-адрес удаленного компьютера.

После выполнения команды (1) FTP-клиент переходит в командный режим.

Каждый обмен порождает два процесса. Управляющий (командный) процесс инициирован во время всего сеанса связи и осуществляется через протокол Тelnet, а процесс передачи файла - только на время передачи. Номера протокольных портов сервера 20 и 21, у клиента могут быть различные номера портов, в том числе несколько одновременно. Для одновременного обслуживания нескольких клиентов создаются копии программного обеспечения FTP-процессов в сервере и у клиентов.

Электронная почта. E-mail (электронная почта) - сервис передачи электронных сообщений, для использования которого нужна почтовая программа. Письмо может содержать не только текстовую информацию, но и любой присоединённый к нему файл. Электронная почта базируется на асинхронной доставке почтового сообщения (message) с одного почтового сервера на другой с помощью протокола SMTP (Simple Mail Transfer Protocol). Почтовые сообщения каждого пользователя хранятся на сервере в отдельном почтовом ящике (mail-box). Клиентская почтовая программа (Mail User Agent, MUA) забирает почту с сервера с помощью одной из версий протокола POP (Post-Office Protocol) или предоставляет пользователю непосредственный доступ к ящику на почтовом сервере с помощью протокола IMAP (Internet Mail Access Protocol). Можно встретить примеры работы электронной почты по протоколу UUCP (Unix to Unix cp, где ср - команда, используемая в системе UNIX для копирования файлов).

Пример сессии.

SMTP ((Simple Mail Transfer Protocol) — простой протокол передачи почты) — это сетевой протокол, предназначенный для передачи электронной почты в сетях TCP/IP. Используется для отправки почты от пользователей к серверам и между серверами для дальнейшей пересылки к получателю. Работает он в соответствии с архитектурой клиент-сервер. Данные передаются при помощи TCP, при этом обычно используется порт 25 или 587. При передаче сообщений между серверами используется только порт 25.

Процесс взаимодействия клиента и сервера состоит из трех этапов:

1. Установление сеанса. На этапе установления сеанса клиент сообщает серверу о себе, а также осуществляется проверка корректности адреса отправителя.

2. Передача сообщений. Этот этап подразумевает выполнения следующих действий: проверку корректности каждого адреса из списка получателей и собственно передачу сообщений. Протоколом предполагается, что при получении почты SMTP-сервер берет на себя ответственность за дальнейшую доставку почты либо непосредственно в почтовый ящик получателя, либо путем пересылки ее другим SMTP-серверам. В последнем случае этот SMTP-сервер выступает в качестве клиента по отношению к другим серверам.

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

3. Завершение сеанса. После окончания пересылки сообщений клиент передает серверу команду завершения сеанса.

Протокол был разработан для передачи только текста в кодировке ASCII, кроме того, первые спецификации требовали обнуления старшего бита каждого передаваемого байта. Это не даёт возможности отсылать текст на национальных языках (например, кириллице), а также отправлять двоичные файлы (такие как изображения, видеофайлы, программы или архивы). Для снятия этого ограничения был разработан стандарт MIME, который описывает способ преобразования двоичных файлов в текстовые. В настоящее время большинство серверов поддерживают 8BITMIME, позволяющий отправлять двоичные файлы так же просто, как текст.

Безопасность SMTP и спам

Изначально SMTP не поддерживал единой схемы авторизации. В результате этого спам стал практически неразрешимой проблемой, так как было невозможно определить, кто на самом деле является отправителем сообщения — фактически можно отправить письмо от имени любого человека. В настоящее время производятся попытки решить эту проблему при помощи спецификаций SPF, Sender ID, Yahoo Domain Keys. Единой спецификации на настоящий момент не существует.

ESMTP (Extended SMTP) — масштабируемое расширение протокола SMTP. В настоящее время под "протоколом SMTP", как правило, подразумевают SMTP и его расширения.

В отличие от серверов для отправки писем, доступ к серверам для хранения ваших сообщений защищается паролем. Поэтому необходимо использовать сервер или службу, в которой существует ваша учётная запись. Эти серверы работают по протоколам POP и IMAP, которые различаются способом хранения писем.

POP3 (Post Office Protocol Version 3 — протокол почтового отделения, версия 3) — это сетевой протокол, используемый MUA для получения сообщений электронной почты с сервера. Обычно используется в паре с протоколом SMTP.По умолчанию использует TCP-порт 110.

Взаимодействие построено из следующих этапов:

1. Аутентификация и авторизация. На этом этапе осуществляется проверка имени и пароля пользователя почтового ящика. В случае успеха между клиентом и сервером устанавливается сеанс, в рамках которого осуществляется основное взаимодействие.

2. Основная работа. На этом этапе клиент осуществляет работу с содержимым почтового ящика. Возможны следующие операции:
  • запрос статистики, (например, количества сообщений, их общего размера и т.п.); 
  • запрос списка сообщений; 
  • выборка полного текста определенного сообщения или его части, например, заголовка; 
  • пометка сообщений, подлежащих удалению.

3. Обновление и завершение сеанса. На этом этапе клиент направляет серверу команду завершения сеанса. При ее получении сервер удаляет помеченные сообщения и завершает сеанс работы с клиентом.

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

IMAP (Internet Message Access Protocol)— интернет-протокол прикладного уровня для доступа к электронной почте.

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

Взаимодействие клиента и сервера предполагает четыре этапа:

1. Аутентификация и авторизация пользователя и установление сеанса. На данном этапе происходит проверка имени и пароля пользователя и установления сеанса между клиентом и сервером. Протокол IMAP4 позволяет осуществлять аутентификацию несколькими различными способами, отличающимися друг от друга методами шифрования пароля. Поэтому в составе протокола предусмотрен механизм согласования схемы аутентификации.

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

3. Работа с сообщениями в выбранной папке. На этом этапе осуществляется работа с сообщениями, которые находятся в выбранной папке. Возможно выполнение таких операций как: удаление, копирование, поиск сообщений, получение информации о сообщении, содержимого сообщения как целиком, так и частично, сохранение изменений, внесенных в сообщение. Также в составе протокола предусмотрена специальная команда, позволяющая "закрыть" папку и прейти к предыдущему этапу работы.

4. Завершение сеанса. После окончания работы клиент с помощью специальной команды сообщает серверу о необходимости завершить сеанс.

Преимущества по сравнению с POP

IMAP был разработан для замены более простого протокола POP3 и имеет следующие преимущества по сравнению с последним:
  • Письма хранятся на сервере, а не на клиенте. Возможен доступ к одному и тому же почтовому ящику с разных клиентов. Поддерживается также одновременный доступ нескольких клиентов. В протоколе есть механизмы с помощью которых клиент может быть проинформирован об изменениях, сделанных другими клиентами.
  • Поддержка нескольких почтовых ящиков (или папок). Клиент может создавать, удалять и переименовывать почтовые ящики на сервере, а также перемещать письма из одного почтового ящика в другой.
  • Возможно создание общих папок, к которым могут иметь доступ несколько пользователей.
  • Информация о состоянии писем хранится на сервере и доступна всем клиентам. Письма могут быть помечены как прочитанные, важные и т. п.
  • Поддержка поиска на сервере. Нет необходимости скачивать с сервера множество сообщений для того чтобы найти одно нужное.
  • Поддержка онлайн-работы. Клиент может поддерживать с сервером постоянное соединение, при этом сервер в реальном времени информирует клиента об изменениях в почтовых ящиках, в том числе о новых письмах.
  • Предусмотрен механизм расширения возможностей протокола.

Текущая версия протокола имеет обозначение IMAP4rev1 (IMAP, версия 4, ревизия 1). Протокол поддерживает передачу пароля пользователя в зашифрованном виде. IMAP-сервер использует TCP-порт 143 или 993 (IMAP поверх SSL).

IMAP требует более мощных серверов, так как пользователи будут хранить значительные объемы информации и выполнять сложные команды непосредственно на сервере.

Протокол IMAP удобен тем людям, которые пользуются постоянным подключением к сети.

Протокол эмуляции терминала Telnet. С помощью этого протокола пользователь сети Internet может работать на удаленном компьютере. Связь устанавливается при обращении к Telnet-программе командой: telnet: <имя базы данных или системы каталогов> или <имя удаленного компьютера S>

Схема Telnet-процесса

После установления связи все, что пользователь набирает на клавиатуре своего компьютера, передается в S, а содержимое экрана S отображается на экране пользователя. Для возвращения в свой компьютер (т.е. в командный режим клиентской программы Тelnet) нужно нажать соответствующую клавишу (Ctrl-). Примерами команд в клиентской программе могут служить: установление связи (open), возвращение в командный режим (close), завершение работы (quit). Передача сообщений при работе с Telnet осуществляется с помощью средств FTP.

Принципы построения

Строится на базе TCP протокола и работает по дуплексному, многопользовательскому протоколу. Это значит, что один сервер может обслуживать одновременно несколько клиентов. Telnet построен на трех основных принципах:
  1. NVT - Netvork Virtual Terminal - Принцип виртуальных терминалов. После установления соединения предполагается, что каждый участник работает как «Виртуальный сетевой терминал» - мнимое устройство, выполняющее стандартные сетевые промежуточные функции обычного терминала.
  2. Принцип настраиваемых параметров. Если хост предоставляет дополнительный сервис помимо NVT, и клиент в состоянии его использовать, telnet предоставляет возможностьь сделать это.
  3. Принцип симметрии терминалов и процессов. Участники соединения равноправны.

HTTP - Протокол передачи гипертекстов

HyperText Transfer Protocol (HTTP), базирующийся на TCP/IP, протокол передачи гипертекста, обеспечивающий доступ к документам на веб-узлах. Основная задача протокола состоит в установлении связи с веб-сервером и обеспечении доставки HTML-страниц веб-браузеру клиента.

Реальные информационные системы требуют больших возможностей, чем простой поиск и доставка данных. Для описания характера, наименования и места расположения информационных ресурсов введены: универсальный идентификатор ресурса URI (Uniform Resource Identifier), известен как WWW адрес, универсальный указатель ресурса URL и универсальное имя ресурса URN. Формат сообщений сходен с используемыми в электронной почте и описанный в стандарте MIME (Multipurpose Internet Mail Extensions).

Взаимодействие клиента, кэша и исходного сервера

в протоколе HTTP

Протокол HTTP представляет собой протокол запросов-откликов. Клиент посылает запрос серверу в форме, определяющей метод, URI и версию протокола. В конце запроса следует MIME-подобное сообщение, содержащее модификаторы, информацию о клиенте и, возможно, другие данные. Сервер откликается, посылая статусную строку, которая включает в себя версию протокола, код результата (успех/неудача) и MIME-подобное сообщение, в котором содержатся данные о сервере и метаинформация.

HTTP используется также в качестве базового протокола для коммуникации пользовательских агентов с прокси-серверами (Прокси - промежуточная программа, которая выполняет функции, как сервера, так и клиента. Такая программа предназначена для обслуживания запросов так, как если бы это делал первичный сервер. Запросы обслуживаются внутри или переадресуются другим серверам.) и другими системами Интернет, в том числе и использующие протоколы SMTP, NNTP, FTP, Gopher и Wais.