Опубликован: 11.08.2008 | Уровень: специалист | Доступ: свободно
Лекция 14:

Протоколы электронной почты: SMTP, POP, IMAP

Доставка почты

Доставка почты от отправителя к получателю проходит через три стадии ( рис. 14.12.).

Использование POP3 и IMAP

Рис. 14.12. Использование POP3 и IMAP

Первая стадия

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

Вторая стадия

На втором шаге электронная почта идет с помощью локального сервера, который теперь действует как клиент SMTP. Электронная почта доставляется удаленному серверу, но не к удаленному агенту пользователя. Если бы SMTP был принятым сервером, всегда можно было бы обработать прибывшую почту в любой момент времени. Однако люди часто выключают свой компьютер до конца дня, а мини-компьютер или переносные компьютеры зачастую нормально не работают. Обычно организации предназначают свой компьютер для принятия электронной почты и постоянной работы в качестве программного сервера. Электронная почта получается с помощью такого сервера и накапливается в почтовом ящике для дальнейшего использования.

Третья стадия

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

Протоколы почтового доступа

Первая и вторая стадия доставки почты используют SMTP. Однако SMTP не включен в третью стадию, потому что STMP "проталкивает" сообщение от отправителя к получателю, даже если получатель этого не желает. Работу SMTP начинает отправитель, а не получатель. С другой стороны, третья стадия нуждается в протоколе, который "притягивает" сообщение, и эта операция должна начинаться у получателя. Третья ступень использует протокол почтового доступа.

В настоящее время применяются два протокола: Post Office Protocol, Version 3 — POP3 и Internet Mail Access Protocol, Version 4 — IMAP4.

POP3

Post Office Protocol, Version 3 (POP3) — протокол простой, но ограниченный функционально. Программное обеспечение клиента POP3 устанавливается в компьютере получателя; программное обеспечение POP3-сервера устанавливается в почтовом сервере.

Почтовый доступ стартует от клиента, когда пользователю надо загрузить его электронную почту из почтового ящика в почтовый сервер. Клиент (агент пользователя) устанавливает с сервером порт 110 и далее посылает ему имя и пароль для доступа к почтовому ящику. Пользователь может затем перечислить и отыскать почтовые сообщения одно за другим. Рисунок 14.13. показывает пример загрузки, использующей POP3.

POP3

Рис. 14.13. POP3

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

IMAP4

Другой протокол почтового доступа к сообщениям Интернета — Internet Mail Access Protocol, Version 4 (IMAP4). IMAP4 похож на POP3, но имеет некоторые особенности: IMAP4 более мощный и более сложный.

POP3 является несовершенным по нескольким причинам. Он не позволяет пользователю организовать почту на сервере; пользователь не может иметь различные "папки". (Конечно, пользователь может организовать папки на собственном компьютере.) В дополнение к этому, POP3 не позволяет пользователю частично проверить содержание почты перед загрузкой.

IMAP4 обеспечивает следующие дополнительные функции:

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

Почта на основе WEB

Услуги электронной почты сегодня могут быть обеспечены для пользователей WEB-сайтов (Yahoo,Yandex и.т. д).

Идея такой связи проста: передача письма проходит с помощью протокола HTTP (см. следующие лекции). Передача сообщения от передающего сервера к входящему почтовому серверу проходит с помощью протокола SMTP. В конечном итоге, сообщение от входящего сервера (он же WEB-сервер) достигает сервера пользователя Б, используя протокол HTTP. Если пользователь Б хочет получить это сообщение, он посылает запрос на свой WEB-сайт (например, YANDEX). WEB-сайт высылает форму, которая содержит запрос логина (зарегистрированного имени пользователя) и пароля, затем передает сообщение на компьютер пользователя Б в формате HTML.

Краткие итоги

  • Протокол, который поддерживает в сети TCP/IP электронную почту, называется Simple Mail Transfer Protocol (SMTP) — простой протокол почтовой передачи.
  • Клиент и сервер SMTP требуют установки специального программного обеспечения – агента пользователя (USER Agent — UA) и агента передачи почты (Mail Transfer Agent – MTA).
  • UA подготавливает сообщение, создает конверт и вкладывает сообщение в конверт.
  • Почтовый адрес содержит две части: локальный адрес (пользовательский почтовый ящик) и доменное имя. Форма localname@domainename.
  • Почтовый шлюз преобразует почтовый формат.
  • SMTP-сообщение может быть задержано на стороне отправителя и на стороне получателя или на промежуточных серверах.
  • Псевдоним позволяет одному пользователю иметь много электронных адресов или многим адресам пользователя иметь групповой доступ к одному и тому же адресу.
  • MTA преобразует почту при прохождении через Интернет.
  • Почта отправителя в общем случае использует UNIX для построения MTA.
  • SMTP использует команды и отклики, чтобы передавать сообщения между MTA клиента и MTA сервера.
  • Шаги для передачи почтовых сообщений:
    а) установление соединения;
    б) передача почтового сообщения;
    в) завершение соединения.
  • Многоцелевое расширение почты через Интернет (Multipurpose Internet Mail Extension – MIME) – это расширение SMTP, которое позволяет передачи мультимедийных сообщений (текст, аудио, неподвижное изображение, видео и т. д.).
  • Почтовый протокол (Post Office Protocol, version 3 — POP3) и протокол доступа к почте в Интернете, версия 4 (Internet Mail Access Protocol — IMAP4) используют с помощью почты сервера для соединения от SMTP к приемнику и удержания почты в хосте.

Задачи и упражнения

  1. Приведите пример ситуации, в которой расширитель от "одного ко многим" мог бы быть полезен. Повторите то же самое для расширителя от "многих к одному".
  2. Нужны ли сразу две команды HELLO и FROM TO? Обоснуйте ответ "да" или "нет".
  3. Почему нужно установить соединение для передачи письма, если TCP уже установил соединение?
  4. Покажите установление соединения от aaa@bbb.xxx.com к bbb@yyy.com.
  5. Покажите фазу передачи сообщения от aaa@bbb.xxx.com к bbb@yyy.com. Сообщение — "Будьте здоровы".
  6. Покажите фазу завершения соединения от aaa@bbb.xxx.com к bbb@yyy.com.
  7. Пользователь aaa@xxx.com посылает сообщение к пользователю к bbb@yyy.com, который пересылает его к ccc@zzz.com. Покажите SMTP-команды и отклики.
  8. Пользователь aaa@xxx.com посылает сообщение к пользователю к bbb@yyy.com, который отвечает ему. Покажите SMTP-команды и отклики.
  9. Если с помощью SMTP посылается сообщение из одной строки, сколько строк займут команды и отклики?
  10. Передатчик посылает неформатированный текст. Покажите заголовок MIME.
  11. Передатчик посылает JPEG-сообщение. Покажите заголовок MIME.
  12. Сообщение имеет 1000 байт в коде (не-ASCII), закодировано с помощью Base 64. Сколько байт в кодированном сообщении? Сколько избыточных байт? Каково отношение избыточных байт к общему числу байт сообщения?
  13. Сообщение 1000 байт закодировано приспособленным к печати кодом. Сообщение содержит 90 процентов ASCII и 10 процентов не-ASCII-символов. Сколько байт в кодированном сообщении? Сколько избыточных байт? Каково отношение избыточных байт к общему числу байт сообщения?
  14. Сравните результаты упражнений12 и 13. Как увеличится эффективность, если сообщение содержит ASCII и не-ASCII-символы?
  15. Закодируйте следующее сообщение в Base 64:
    0101 0111 0000 1111 1111 0000 1010 1111 01111 0001 0101 0100.

Дополнительный материал для прохождения тестирования к лекции, Вы можете скачать здесь.

Евгений Виноградов
Евгений Виноградов
Экстернат
Илья Сидоркин
Илья Сидоркин
Как получить диплом?
Владислав Журавель
Владислав Журавель
Россия, Ковдор