1. Базовые понятия из области систем электронной почты
1.1. Обзор существующих систем электронной почты
1.1.1. Системы на базе X.400
1.1.2. Системы на базе SMTP
1.1.3. Системы на основе частных стандартов (MS Mail, cc:Mail)
1.1.4. Гибридные системы (MS Exchange Server)
Ни для кого не секрет, что использование электронной почты для обмена информацией между людьми как внутри отдельно взятой организации, так и за ее пределами способно коренным образом изменить как технологии и методы ведения дел, так и сам способ мышления сотрудников. Возможности по повышению эффективности труда и экономии средств и времени, открывающиеся в результате перехода к обмену электронными документами и сообщениями трудно переоценить. По оценкам ведущих аналитиков мировой компьютерной индустрии именно повсеместное внедрение электронной почты должно сыграть роль отправного пункта на следующем этапе компьютерной революции. Поэтому построение системы электронной почты в современной организации должно быть следующим шагом после объединения компьютеров в сети.
Выбор системы электронной почты, необходимой и достаточной, является не простым делом. Обилие на рынке значительного числа разнородных систем обусловлено во многом историческими факторами развития компьютерной индустрии в целом. Однако все существующие системы электронной почты можно условно разделить на несколько классов, в зависимости от стандартов, на которых они базируются. Рассмотрим подробнее основные из них.
1.1.1. Системы на базе X.400
X.400 представляет собой набор рекомендаций по построению системы передачи электронных сообщений, не зависящей от используемых на сервере и клиенте операционных систем и аппаратных средств. Рекомендации X.400 являются результатом деятельности международного комитета по средствам телекоммуникаций (CITT во французской транскрипции или ITU в английской), созданного при Организации Объединенных Наций. Рекомендации X.400 охватывают все аспекты построения среды управления сообщениями: терминологию, компоненты и схемы их взаимодействия, протоколы управления и передачи, форматы сообщений и правила их преобразования. В рекомендациях X.400 наиболее полно отражается накопленный в индустрии компьютеров и телекоммуникаций опыт создания и применения информационных систем. В настоящее время существуют три редакции рекомендаций:
- рекомендации 1984 года, известные также как "Красная книга" (Red Book);
- рекомендации 1988 года, известные также как "Голубая книга" (Blue Book);
- рекомендации 1992 года, известные также как "Белая книга" (White Book).
Более поздние рекомендации описывают дополнительные протоколы и форматы передачи данных, корректируют неточности и/или изменяют трактовку более ранних. Исправления и дополнения к указанным спецификациям выпускаются ежегодно, однако существующие системы в подавляющем большинстве поддерживают рекомендации 1984 и/или 1988 годов. К сожалению, эти спецификации не являются свободно доступными и распространяются за довольно высокую плату.
Рекомендации X.400 опираются на семиуровневую модель и семейство протоколов OSI (Open System Interconnect) международной организации по стандартам (ISO) (см. пример на рисунке 1.1). Согласно этой модели, каждый из уровней использует сервисы только находящегося непосредственно под ним и предоставляет сервисы только находящемуся непосредственно над ним уровню. Это обеспечивает системам, построенным на основе такой модели, высокую степень независимости от среды передачи данных. Поскольку рекомендации X.400 определяют набор спецификаций для самого верхнего уровня (Application), отвечающие этим рекомендациям приложения должны свободно взаимодействовать друг с другом, вне зависимости от применяемых операционных систем, аппаратуры и сетевых протоколов.
Первые четыре уровня, от физического до транспортного, отвечают за организацию среды передачи данных. Реализуются частично на аппаратном уровне, частично, как сервисы ядра операционной системы. Верхние три уровня предназначены для использования операционной системой и исполняющимися поверх нее прикладными программами.
Рис. 1.1. Семиуровневая модель OSI и пример протоколов, соответствующих каждому уровню
Для разделения входящего потока данных между приложениями на каждом из уровней, транспортом (Transport), сеанса (Session) и представлений (Presentation), используется механизм так называемых точек доступа (access point). Каждая точка доступа имеет уникальный идентификатор, или селектор (selector), который может быть либо символьной строкой, либо последовательностью шестнадцатеричных цифр. Длина селектора транспортного уровня - 32 символа (64 цифры), уровня сеансов - 16 символов (32 цифры) и уровня представлений - 8 символов (16 цифр). Чтобы два приложения в сети могли взаимодействовать, каждое из них должно знать набор селекторов другого.
Рассмотрим подробнее, как в терминах X.400 определяются компоненты системы передачи электронных сообщений.
На рисунке 1.2 приведена схема построения среды управления сообщениями (Messaging Handling Environment или MHE). Эта схема является классической, и в терминах этой схемы может быть описана структура и принципы функционирования любой существующей почтовой системы на любой платформе.
Как видно из рисунка, среда управления сообщениями представляет собой объединение систем управления сообщениями (Messaging Handling Systems или MHS), которые могут быть произвольным образом связаны между собой посредством шлюзов и/или публичных информационных сетей. Каждая из систем управления сообщениями в свою очередь состоит из следующих компонентов:
- пользовательский агент
(User Agent или UA), подсистема, выступающая в роли клиента в процессе обмена почтовыми сообщениями, клиент же в свою очередь может быть как реальным пользователем, так и процессом, использующим сервисы электронной почты;
- агент передачи сообщений
(Message Transfer Agent или MTA), подсистема, в обязанности которой входит обмен сообщениями с пользовательскими агентами и/или внешними и локальными агентами передачи сообщений. Следует заметить, что каждый агент передачи сообщений может иметь имя и пароль доступа;
- система передачи сообщений
(Message Transfer System или MTS), которая состоит из одного или нескольких MTA и выполняет функции приема, доставки и промежуточного хранения сообщений;
- хранилище сообщений
(Message Store или MS), подсистема, в функции которой входит посылка, прием и хранение сообщений от пользовательских агентов и агентов передачи сообщений, в составе MHS может иметь более одного хранилища.
Рис. 1.2. Схема построения среды управления сообщениями
Из всего многообразия описанных в рекомендациях X.400 способов взаимодействия между UA, MTA и MS рассмотрим следующие:
- отправка сообщения пользовательским агентом через хранилище, в этом случае пользователь, используя свой агент (UA) помещает сообщение, предназначенное для доставки другому пользователю, непосредственно в хранилище сообщений. Оттуда оно выбирается локальным или удаленным MTA и передается дальше;
- отправка сообщения пользовательским агентом через MTA, в этом случае сообщение передается напрямую от UA к MTA и далее доставляется его средствами;
- получение сообщения агентом пользователя из хранилища, в этом случае MTA осуществляет доставку сообщения в хранилище (почтовый ящик пользователя), для дальнейшей обработки UA;
- получение сообщения агентом пользователя от MTA, в этом случае пользовательский агент не имеет непосредственного доступа к хранилищу, а для получения сообщений обращается к агенту передачи.
Как будет показано далее, любая из ныне известных почтовых систем использует один из перечисленных способов отправки и приема сообщений.
Дополнительно в состав MHS могут входить следующие компоненты, которые не являются специфическими для X.400 и определены в отдельной спецификации - X.500:
- пользовательский агент доступа к каталогу
(Directory User Agent или DUA), подсистема, выступающая в роли клиента при доступе к каталогу;
- системный агент доступа к каталогу
(Directory System Agent или DSA), подсистема, являющаяся частью каталога и предоставляющая доступ к хранящейся в нем информации локальным и внешним DUA и DSA.
Не менее важными компонентами спецификации X.400 являются следующие компоненты (рисунок 1.3):
- списки рассылки
(Distribution Lists или DL), содержащие ноль или более членов, каждый из которых может быть либо пользователем системы управления сообщениями, либо другим списком рассылки. Будучи отправлено на адрес списка рассылки, сообщение будет доставлено всем его членам, включая вложенные списки пользователей;
- устройство доступа
(Access Unit или AU), больше известное как шлюз (Gateway), устройство, обеспечивающее сопряжение с внешней средой передачи данных, например с телекс- или телетайп-сетями;
- каталог
(Directory), назначением которого является хранение информации об объектах, входящих в состав системы управления сообщениями. Понятие каталога было введено впервые в 1988 году, и реализация этой части в системе X.400 является не обязательной.
Рис. 1.3. Дополнительные компоненты системы управления сообщениями
Рассмотрим еще одно базовое понятие - собственно почтовое сообщение и его составляющие. Для описания формата сообщения в рекомендациях X.400 была принята привычная парадигма конверта (envelope) и содержимого (content) традиционных почтовых систем. Как и положено, конверт содержит исчерпывающую информацию о том, куда и кому должно быть доставлено письмо, обратный адрес отправителя и пометку о срочности доставки. При этом системе нет необходимости знать, что бы то ни было о содержимом письма. На основе информации, указанной на конверте, среда доставки выполняет необходимую маршрутизацию и передачу с возможным промежуточным хранением (store and forward). Роль перевалочных пунктов и средств транспортировки выполняют MTA. Конверт может иметь специальную пометку о необходимости установки на нем электронного "штампа" (trace information) каждым MTA, через который проходит сообщение на пути к адресату. Это, в частности, позволяет системе автоматически отслеживать возникновение почтовых петель. Формат конверта X.400 определяет спецификация P1, которая является общей для рекомендаций 1984 и 1988 годов. Формат содержимого определяется его функциональной нагрузкой. Поскольку основной функцией MTS является передача сообщений между людьми (персонами), для этого существует специальный тип содержимого, называемый интерперсональным сообщением (Inter Personal Message или IPM). Интерперсональное сообщение является составным объектом. На рисунке 1.4 приведена схема, поясняющая структуру электронного письма и IPM.
IPM состоит из заголовка (header) и тела (body). Заголовок обычно включает в себя копию информации, указанной на конверте, и дополнительных полей, определяющих расширенные свойства сообщения. Тело в свою очередь может быть составным и включать различные типы информации, такие как плоский текст, графика, документы различных форматов, вложенные сообщения и т.д. Отдельные части сообщения именуются body parts. В настоящее время используются два формата IPM, различающиеся набором поддерживаемых типов данных и правил кодирования текста, содержащего символы национальных алфавитов: P2, используемый в системах X.400 1984 года, и P22, используемый в системах X.400 1988 года. Эти форматы совместимы снизу вверх, т.е. системы 1988 года могут работать как с содержимым в формате P2 так и P22.
Рис. 1.4. Структура сообщения X.400
Еще один тип содержимого сообщений X.400 - интерперсональная нотификация (Inter Personal Notification). Нотификация используется для автоматического уведомления отправителя о факте доставки и/или прочтения, посланного им сообщения. IPN представляет собой плоский текст произвольного содержания в формате US-ASCII. Прочие типы содержимого несут служебную нагрузку и используются исключительно для взаимодействия систем между собой.
Несмотря на мощную теоретическую базу и практически безупречный архитектурный дизайн, семейство протоколов X.400 не получило широкого распространения за пределами государственных и банковских учреждений. Ахиллесовой пятой этого стандарта явились чрезмерная сложность реализации и значительная стоимость внедрения и эксплуатации систем на его основе. Отсутствие свободного доступа к стандартам и проблемы несовместимости MTA версий 1984 и 1988 годов также отрицательно сказались на темпах внедрения X.400 в качестве глобальной среды передачи данных.
Содержание | Вперед