Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
seti_otvety_full.docx
Скачиваний:
0
Добавлен:
01.04.2025
Размер:
1.42 Mб
Скачать

26. Прикладной уровень. Электронная почта. Доставка сообщений

Электронная почта доставляется, когда отправитель устанавливает TCP-соединение с получателем и посылает по нему сообщения. Такая модель прекрасно работала тогда, когда все хосты сети ARPANET (а позднее — Интернет) были, по сути, постоянно на линии и могли принимать ТСР-соединения.

Однако с появлением пользователей, связывающихся с провайдерами с помощью модема, такой подход перестал оправдывать себя. Проблема вот в чем: что будет, если Элинор захочет отправить письмо Кэролайн, а та в данный момент не работает в Интернете? Получается, что Элинор не сможет установить ТСР-соединение с Кэролайн, следовательно, невозможно будет запустить протокол SMTP, и Кэролайн так и не получит поздравление с днем рождения.

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

К сожалению, такое решение создает новую проблему: как пользователю забрать свою почту у агента передачи сообщений провайдера? Ответ таков: следует создать специальный протокол, который позволил бы пользовательскому агенту (на машине клиента) соединиться с агентом передачи сообщений провайдера (на машине провайдера) и скопировать хранящуюся для него почту. Одним из таких протоколов является РОРЗ (Post Office Protocol v. 3 — почтовый протокол, 3-я версия), определенный в документе RFC 1939.

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

1. Авторизация.

2. Транзакции.

3. Обновление.

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

Получение трех сообщений по протоколу РОРЗ

S: +0K РОРЗ-сервер готов

С: USER carolyn

S: +0K

С: PASS vegetables

S: OK вход в систему произведен

С: LIST

S: 1 2505

S: 2 14302

S: 3 8122

S: .

C: RETR 1

S: (отправляет сообщение 1)

С: DELE 1

С: RETR 2

S: (отправляет сообщение 2)

С: DELE 2

С: RETR 3

S: (отправляет сообщение 3)

С: DELE 3

С: QUIT

S: +0K Конец соединения с РОРЗ-сервером

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

Теперь подведем небольшие итоги того, как происходит работа с электронной

почтой клиентов провайдера. Элинор создает сообщение для Кэролайн с помощью редактора электронной почты (то есть пользовательского агента) и щелкает на значке, чтобы отослать его. Программа передает письмо агенту передачи сообщений на хосте Элинор. Агент передачи сообщений видит, что письмо адресовано carolyn@xyz.com, и использует DNS для поиска записи MX для xyz.com (где xyz.com — провайдер Кэролайн). В ответ на запрос возвращается DNS-имя почтового сервера xyz.com. Агент передачи сообщений после этого снова обращается к DNS (например, используя gethostbyname): на этот раз ему нужно найти IP-адрес этой машины. Затем с помощью порта 25 найденной машины устанавливается ТСР-соединение с SMTP-сервером. Передавая команды SMTP агент пересылает сообщение в почтовый ящик для Кэролайн и разрывает ТСР-соединение.

Через некоторое время Кэролайн загружает свой компьютер, соединяется с провайдером и запускает программу электронной почты. Та устанавливает ТСР-соединение через порт 110 РОРЗ-сервера, работающего на машине провайдера. Имя DNS или IP-адрес этой машины обычно указывается при установке программы электронной почты либо его получают у провайдера. После установки TCP-соединения почтовая программа Кэролайн запускает протокол РОРЗ для копирования содержимого почтового ящика на локальный жесткий диск. При этом происходит обмен командами. По окончании передачи электронной почты ТСР-соединение разрывается. На самом деле в тот же момент можно разорвать и соединение с провайдером, поскольку вся почта уже находится на жестком диске у Кэролайн. Конечно, чтобы отправить ответ на письма, Кэролайн придется снова соединяться с провайдером, поэтому не всегда пользователи разрывают соединение сразу после загрузки почты.

IMAP (Interactive Mail Access Protocol — протокол интерактивного доступа к электронной почте), определенного в RFC 2060. В отличие от протокола РОРЗ, который подразумевает, что пользователь будет очищать почтовый ящик после каждого контакта с провайдером и будет работать с почтой в отключенном режиме, протокол IMAP предполагает, что вся почта будет оставаться в почтовых ящиках на сервере неограниченно долго. IMAP обладает широким набором механизмов для чтения сообщений или даже частей сообщений. Такое свойство полезно при использовании медленных модемов, поскольку можно прочесть только текстовую часть письма, к которому приложены большие видео- и аудиофрагменты. Поскольку основное предположение состоит в том, что пользователь не будет копировать на свой компьютер письма, в IMAP входят также инструменты для создания, удаления и других видов управления почтовыми ящиками, размещающимися на сервере. В отличие от РОРЗ, IMAP может заниматься как доставкой исходящей почты от пользователя в направлении места назначения, так и доставлять входящую почту пользователя.

В целом стиль протокола IMAP подобен РОРЗ. Различаются они количеством команд — в IMAP их десятки. Сервер IMAP прослушивает порт 143. Следует заметить, что не все провайдеры и не все программы работы с электронной почтой поддерживают оба протокола. Поэтому, выбирая программу и провайдера, следует выяснить, могут ли они работать хоть с одним из этих протоколов, и если да, то с какими именно протоколами.

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