Вход/Регистрация
Искусство программирования для Unix
вернуться

Реймонд Эрик Стивен

Шрифт:

5.3.1. Учебный пример: SMTP, простой протокол передачи почты

В примере 5.7. иллюстрируется транзакция SMTP (Simple Mail Transfer Protocol — простой протокол передачи почты), который описан в спецификации RFC 2821. В данном примере строки, начинающиеся с С:, отправляются почтовым транспортным агентом (Mail Transport Agent — МТА), который отправляет почту, а строки, начинающиеся с 5:, возвращаются агентом (МТА), принимающим ее. Текст, выделенный курсивом, представляет собой комментарии и не является частью реальной транзакции.

Так почта передается между Internet-машинами. Следует отметить ряд особенностей: формат команд и аргументов запросов, ответы, содержащие код состояния, за которым следует информационное сообщение, и то, что полезная нагрузка команды DATA ограничивается строкой, содержащей одну точку.

Пример 5.7. SMTP-сеанс

С: <клиент подключается к служебному порту 25>

С: HELO snark.thyrsus.com отправляющий узел

идентифицирует себя S: 250 OK Hello snark, glad to meet youподтверждение получателя С: MAIL FROM: <esr®thyrsus.com> идентификация отправляющего

пользователя

S: 250 <esr®thyrsus.com>... Sender okподтверждение получателя С: RCPT TO: cor@cpmy.com идентификация целевого

пользователя

S:250 root... Recipient ok подтверждение получателя

С: DATA

S: 354 Enter mail, end with "." on a line by itself С: Звонил Scratch. Он хочет снять с нами С: комнату в Balticon.

С: . отправляется окончание

многострочной записи S: 250 WAA01865 Message accepted for delivery

С: QUIT отправитель отключается

S: 221 cpmy.com closing connection получатель отключается

С: <клиент разрывает соединение>

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

5.3.2. Учебный пример: РОРЗ, почтовый протокол 3-й версии

Другим классическим Internet-протоколом является РОРЗ (Post Office Protocol — почтовый протокол 3-й версии). Он также используется для транспортировки почты, но если SMTP является "толкающим" протоколом с транзакциями, инициированными отправителем почты, то РОРЗ является протоколом "тянущим", а его транзакции инициируются получателем почты. Internet-пользователи с непостоянным доступом (например, по коммутируемым соединениям) могут накапливать свою почту на почтовом сервере, а затем, подключившись к РОРЗ-серверу, получать почту на персональные машины.

В примере 5.8. показан РОРЗ-сеанс. В данном примере строки, начинающиеся с С:, отправляются клиентом, а строки, начинающиеся с S:, почтовым сервером. Необходимо отметить множество моментов, сходных с SMTP. Протокол РОРЗ также является текстовым и строчно-ориентированным. В данном случае, так же как в случае SMTP, отправляются блоки полезной нагрузки сообщений, ограниченные строкой, содержащей одну точку, за которой следует ограничитель строки, и даже используется такая же команда выхода — QUIT. Подобно SMTP, в протоколе РОРЗ каждая клиентская операция подтверждается ответной строкой, которая начинается с кода состояния и включает в себя информационное сообщение, понятное человеку.

Пример 5.8. РОРЗ-сеанс

С: <клиент подключается к служебному порту 110>

S: +ОК РОРЗ server ready <1896.697l®mailgate.dobbs.org>

С: USER bob

S: +0K bob

C: PASS redqueen

S: +0K bob's maildrop has 2 messages (320 octets)

C: STAT

S: +OK 2 320

  • Читать дальше
  • 1
  • ...
  • 63
  • 64
  • 65
  • 66
  • 67
  • 68
  • 69
  • 70
  • 71
  • 72
  • 73
  • ...

Ебукер (ebooker) – онлайн-библиотека на русском языке. Книги доступны онлайн, без утомительной регистрации. Огромный выбор и удобный дизайн, позволяющий читать без проблем. Добавляйте сайт в закладки! Все произведения загружаются пользователями: если считаете, что ваши авторские права нарушены – используйте форму обратной связи.

Полезные ссылки

  • Моя полка

Контакты

  • chitat.ebooker@gmail.com

Подпишитесь на рассылку: