Дисциплина
"Программное обеспечение систем передачи данных"

Содержание

5.4. Электронная почта в сети Интернет. Структура, организация и методы доступа в сети. Протоколы электронной почты

      Служба электронной почты (e-mail) предназначена для обеспечения возможности обмена персональными сообщениями. Данная служба состоит из объектов клиентов службы (клиентских программ доступа) и серверов электронной почты. Каждый пользователь сети закреплен за своим сервером и имеет в нем электронный "почтовый ящик" под определенным именем. Для отправки сообщения достаточно передать его в определенном формате на свой почтовой сервер с указанием адреса получателя. Почтовый сервер, проанализировав адрес получателя, отправит сообщение через сеть почтовых серверов серверу, содержащему почтовый ящик получателя, куда это сообщение и будет положено. Для получения своих сообщений пользователь должен обратиться к своему почтовому серверу и считать их из почтового ящика.

      Существует несколько типов служб электронной почты, базирующихся на различных протоколах обмена: Х.400, UUCP, SMTP, POP3 и др.

      В сети Internet наибольшее распространение получила служба электронной почты, базирующаяся на протоколах SMTP и POP3.

Реализация электронной почты на базе протоколов SMTP и POP3

      В сети Internet электронная почта передается по TCP-соединениям посредством агентов передачи сообщений Message Transfer Agent (MTA) -рис.1. Наиболее распространенный MTA для Unix систем - это Sendmail. Среднее почтовое сообщение содержит примерно 1500 байт данных, однако некоторые сообщения могут содержать мегабайты данных, если электронная почта используется для посылки файлов.

      Передача почтовых сообщений осуществляется с использованием простого протокола передачи почты Simple Mail Transfer Protocol (SMTP).

      Пользователь получает почту посредством протокола почтового отделения Post Office Protocol (POP3 - POP версии 3).

      Для обмена почтовыми сообщениями пользователи общаются с пользовательскими агентами (user agent, UA), которые реализуют команды протоколов SMTP и POP3. Команды передаются в форме ключевых слов и указывают на необходимость совершить ту или иную операцию. В настоящее время существует очень много реализаций почтовых агентов пользователя, например, MS Outlook, Netscape Messenger, The Bat! и др.

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

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

      Для доставки почты из своего почтового ящика пользователь обращается к почтовому агенту, который, выполняя команды протокола POP3, переносит или копирует почтовые сообщения в почтовый ящик пользовательского агента.

      Для взаимодействия по протоколу SMTP агент пользователя использует порт 25 на агенте передачи сообщений, а по протоколу POP - порт 110.

      Протоколы SMTP и POP3 описаны в документах под названием Request for Comment (RFC).

      RFC821 описывает протокол SMTP, а именно как UA общается с МТА и как общаются друг с другом агенты передачи почты по TCP соединению.

      RFC 1939 описывает протокол POP3, то есть процесс доставки и команды взаимодействия с сервером POP.

Формат сообщения и адресация в системе электронной почты

      Основной стандарт на формат сообщений электронной почты описан в документе RFC822. Согласно рекомендации RFC822, сообщение состоит из двух главных составляющих: конверта и содержания.

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

      Содержание сообщения состоит из заголовка и тела. Заголовок содержит информацию, созданную автоматически пользовательским агентом отправителя и агентами передачи сообщений, которые участвовали при пересылке электронного письма. В заголовке есть уникальный идентификатор сообщения, даты и время обработки сообщения каждым МТА. Пользовательский агент получателя может сжать, переформатировать или вообще скрыть заголовок сообщения.

      Тело содержит текст, созданный отправителем. Тело сообщения отделяется от заголовка пустой строкой.

      Первоначально для представления содержания письма было определено использование только символов ASCII-кода. Специально разработанный стандарт MIME (Multipurpose Internet Mail Extensions - многоцелевые расширения для Internet-почты) описывает как пересылать по электронной почте исполняемые, графические, мультимедийные, смешанные данные. Почтовый стандарт MIME приведен в документе RFC 1521.

      Основные ключевые слова и их назначение:

To:
Основной получатель. Указывается адрес электронной почты. Можно указать адреса нескольких получателей через запятую. From: Автор сообщения. Указывается адрес электронной почты.
Cc:
Carbon Copy. Дополнительные получатели, синтаксис такой же, как для поля "To".
Bcc:
Blind Carbon Copy. Дополнительные получатели, адреса которых не должны быть видны другим получателям. Синтаксис аналогичен полям "То" и "Cc".
Subject:
Тема письма.
Date:
Дата и время написания письма.
Return-Path:
Служит для указания адреса возврата письма.
Reply-To:
Адрес для ответа на прочитанное письмо.
Message-ID:
Уникальный идентификатор сообщения, присваиваемый электронному письму почтовой системой отправителя. Как правило, идентификатор составляется из текущей даты, времени, адреса компьютера и некоторой случайной величины.
In-Reply-To:
Ссылка на письмо, ответом на которое является настоящее письмо.
Received:
Содержит путь прохождения письма по почтовым серверам. Полей обычно несколько, и каждое такое поле обозначает один сервер в маршруте. Серверы указываются в обратном хронологическом порядке, то есть каждый новый сервер вставляет свою запись сверху.
MIME-Version:
Наличие этого ключевого слова говорит о том, что текст письма форматирован в соответствии со стандартом MIME. Значение слова указывает используемую версию стандарта.
X-Mailer:
Информация о почтовой программе, использованной для написания письма.
Priority:
Приоритет письма. Может быть "Normal" (обычным), "Urgent" (срочным), "Non-urgent" (не срочным). Может оказывать влияние на скорость обработки и передачи письма различными промежуточными почтовыми системами.
Importance:
Пометка от отправителя получателю о важности сообщения - "High", "Normal" или "Low". He влияет на скорость пересылки.
Content-Tape:
Формат содержимого письма. Определяет тип информации в письме и способ ее представления. В частности, задается кодировка письма, если используется какой-либо национальный набор символов.
Content-Transfer Encoding:
Метод кодировки, используемый в письме, согласно стандарту MIME.

      Адреса пользователей электронной почты в сети Internet имеют следующий формат:

<имя_полъзователя>@<почтовый_домен>

      Знак "@" входит в состав символов кода ASCII (код 01000000) и называется - коммерческим "эт". Используется в качестве специального сокращения со значением предлога "на".

      Слева от знака "@" записывается уникальный идентификатор конкретного пользователя. Он не должен совпадать для нескольких пользователей на одном почтовом сервере. Правила составления имени определяются почтовой системой. Например, на общедоступном почтовом сервере mail имя может состоять из латинских букв, цифр, символов "_" и "-", и не может быть длиннее 16 символов.

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

      Например, в адресе ivanov@pds.sut.ru "ivanov" имя пользователя, а "pds.sut.ru" доменное имя почтового сервера, который находится на кафедре ОПДС (поддомен "pds") кафедра является структурным подразделением Государственного университета телекоммуникаций (поддомен "sut"), университет является уникальным учебным заведением в России (поддомен "ru").

      Для пересылки электронного сообщения по сети Internet доменному адресу (текстовому логическому имени почтового сервера) ставится в соответствие электронный адрес (IP-адрес). Перевод доменных имен в их точные IP-адреса осуществляет программа на сервере доменных имен, который входит в состав системы доменных имен - Domain Name System (DNS).

Рис. 5.4.1. Пример реализации электронной почты в сети Internet.

Рис. 5.4.1. Пример реализации электронной почты в сети Internet

<<< ^^^ >>>
Created by Aleksey Vishnyakov © 2002