X.400 представляет собой набор рекомендаций по построению системы передачи электронных сообщений, не зависящей от используемых на сервере и клиенте операционных систем и аппаратных средств. Рекомендации X.400 являются результатом деятельности международного комитета по средствам телекоммуникаций (CITT во французской транскрипции или ITU в английской), созданного при Организации Объединенных Наций. Рекомендации X.400 охватывают все аспекты построения среды управления сообщениями: терминологию, компоненты и схемы их взаимодействия, протоколы управления и передачи, форматы сообщений и правила их преобразования. В рекомендациях X.400 наиболее полно отражается накопленный в индустрии компьютеров и телекоммуникаций опыт создания и применения информационных систем. В настоящее время существуют три редакции рекомендаций:
Более поздние рекомендации описывают дополнительные протоколы и форматы передачи данных, корректируют неточности и/или изменяют трактовку более ранних. Исправления и дополнения к указанным спецификациям выпускаются ежегодно, однако существующие системы в подавляющем большинстве поддерживают рекомендации 1984 и/или 1988 годов. К сожалению, эти спецификации не являются свободно доступными и распространяются за довольно высокую плату.
Рекомендации X.400 опираются на семиуровневую модель и семейство протоколов OSI международной организации по стандартам (ISO) (см. пример на рисунке 1.1). Согласно этой модели, каждый из уровней использует сервисы только находящегося непосредственно под ним и предоставляет сервисы только находящемуся непосредственно над ним уровню. Это обеспечивает системам, построенным на основе такой модели, высокую степень независимости от среды передачи данных. Поскольку рекомендации X.400 определяют набор спецификаций для самого верхнего уровня (Application), отвечающие этим рекомендациям приложения должны свободно взаимодействовать друг с другом, вне зависимости от применяемых операционных систем, аппаратуры и сетевых протоколов.
Рис. 1. Модель OSI и пример протоколов, соответствующих каждому уровню
Для разделения входящего потока данных между приложениями на каждом из уровней, транспортом (Transport), сеанса (Session) и представлений (Presentation), используется механизм так называемых точек доступа (access point). Каждая точка доступа имеет уникальный идентификатор, или селектор (selector), который может быть либо символьной строкой, либо последовательностью шестнадцатеричных цифр. Длина селектора транспортного уровня - 32 символа (64 цифры), уровня сеансов - 16 символов (32 цифры) и уровня представлений - 8 символов (16 цифр). Чтобы два приложения в сети могли взаимодействовать, каждое из них должно знать набор селекторов другого.
Рассмотрим подробнее, как в терминах X.400 определяются компоненты системы передачи электронных сообщений.
На рисунке 2 приведена схема построения среды управления сообщениями (Messaging Handling Environment или MHE). Эта схема является классической, и в терминах этой схемы может быть описана структура и принципы функционирования любой существующей почтовой системы на любой платформе.
Как видно из рисунка, среда управления сообщениями представляет собой объединение систем управления сообщениями (Messaging Handling Systems или MHS), которые могут быть произвольным образом связаны между собой посредством шлюзов и/или публичных информационных сетей. Каждая из систем управления сообщениями в свою очередь состоит из следующих компонентов:
Рис. 2. Схема построения среды управления сообщениями
Из всего многообразия описанных в рекомендациях X.400 способов взаимодействия между UA, MTA и MS рассмотрим следующие:
Как будет показано далее, любая из ныне известных почтовых систем использует один из перечисленных способов отправки и приема сообщений.
Дополнительно в состав MHS могут входить следующие компоненты, которые не являются специфическими для X.400 и определены в отдельной спецификации - X.500:
Не менее важными компонентами спецификации X.400 являются следующие компоненты (рисунок 3):
Рис. 3. Дополнительные компоненты системы управления сообщениями
Рассмотрим еще одно базовое понятие - собственно почтовое сообщение и его составляющие. Для описания формата сообщения в рекомендациях X.400 была принята привычная парадигма конверта (envelope) и содержимого (content) традиционных почтовых систем. Как и положено, конверт содержит исчерпывающую информацию о том, куда и кому должно быть доставлено письмо, обратный адрес отправителя и пометку о срочности доставки. При этом системе нет необходимости знать, что бы то ни было о содержимом письма. На основе информации, указанной на конверте, среда доставки выполняет необходимую маршрутизацию и передачу с возможным промежуточным хранением (store and forward). Роль перевалочных пунктов и средств транспортировки выполняют MTA. Конверт может иметь специальную пометку о необходимости установки на нем электронного "штампа" (trace information) каждым MTA, через который проходит сообщение на пути к адресату. Это, в частности, позволяет системе автоматически отслеживать возникновение почтовых петель. Формат конверта X.400 определяет спецификация P1, которая является общей для рекомендаций 1984 и 1988 годов. Формат содержимого определяется его функциональной нагрузкой. Поскольку основной функцией MTS является передача сообщений между людьми (персонами), для этого существует специальный тип содержимого, называемый интерперсональным сообщением (Inter Personal Message или IPM). Интерперсональное сообщение является составным объектом. На рисунке 4 приведена схема, поясняющая структуру электронного письма и IPM.
IPM состоит из заголовка (header) и тела (body). Заголовок обычно включает в себя копию информации, указанной на конверте, и дополнительных полей, определяющих расширенные свойства сообщения. Тело в свою очередь может быть составным и включать различные типы информации, такие как плоский текст, графика, документы различных форматов, вложенные сообщения и т.д. Отдельные части сообщения именуются body parts. В настоящее время используются два формата IPM, различающиеся набором поддерживаемых типов данных и правил кодирования текста, содержащего символы национальных алфавитов: P2, используемый в системах X.400 1984 года, и P22, используемый в системах X.400 1988 года. Эти форматы совместимы снизу вверх, т.е. системы 1988 года могут работать как с содержимым в формате P2 так и P22.
Рис. 4. Структура сообщения X.400
Еще один тип содержимого сообщений X.400 - интерперсональная нотификация (Inter Personal Notification). Нотификация используется для автоматического уведомления отправителя о факте доставки и/или прочтения, посланного им сообщения. IPN представляет собой плоский текст произвольного содержания в формате US-ASCII. Прочие типы содержимого несут служебную нагрузку и используются исключительно для взаимодействия систем между собой.
Следует, тем не менее отметить, что несмотря на мощную теоретическую базу и практически
безупречный архитектурный дизайн, семейство протоколов X.400 не получило
широкого распространения за пределами государственных и банковских
учреждений. Ахиллесовой пятой этого стандарта явились чрезмерная сложность
реализации и значительная стоимость внедрения и эксплуатации систем на его
основе. Отсутствие свободного доступа к стандартам и проблемы
несовместимости MTA версий 1984 и 1988 годов также отрицательно сказались
на темпах внедрения X.400 в качестве глобальной среды передачи данных.
Адресация в системах X.400
В системах на базе рекомендаций X.400 используется одна из самых мощных схем адресации, известная как автор/получатель (Originator/Recipient или O/R). Структура адреса и терминология, используемая при определении адресов, опирается на предположение (не лишенное оснований), что глобальная телекоммуникационная сеть управляется и поддерживается официально зарегистрированными в CCITT/ITU коммерческими компаниями, предоставляющими свои услуги прочим организациям. В терминах рекомендаций X.400 телекоммуникационные компании называются администрацией (Administration). Управляющим доменом (Management Domain или MD) называется объединение по крайне мере одного MTA и произвольного (в том числе нулевого) количества пользовательских агентов (UA), информационных хранилищ (MS) и/или шлюзов (AU), принадлежащих и управляемых одной компанией. Управляющий домен, поддерживаемый администрацией, называется административным управляющим доменом (Administration management domain или ADMD).
Остальные домены, обслуживаемые неадминистрациями, называются частными управляющими доменами (Private management domain или PRMD). В обязанности ADMD входит контроль за уникальностью имен PRMD, пользующихся его услугами, обеспечение корректной работы телекоммуникационного оборудования, начисление платы за услуги и взаимные расчеты с другими ADMD. В ведении PRMD находится назначение имен внутри собственного управляющего домена. Согласно рекомендациям CCITT, частные управляющие домены должны направлять весь нелокальный трафик только через свой административный домен, прямая же передача данных между PRMD не приветствуется. На территории каждого государства может существовать несколько ADMD, однако, в целях обеспечения "максимальной" совместимости с национальной политикой сфера деятельности ADMD не распространяется за пределы государственных границ. По этой же причине существование международных PRMD неявно запрещается.
Пользовательский адрес X.400 представляет собой набор атрибутов. Для разделения атрибутов используется либо прямой слеш, либо двоеточие. Каждый атрибут записывается в виде КЛЮЧЕВОЕ_СЛОВО=ЗНАЧЕНИЕ, для ключевых слов могут использоваться аббревиатуры и метки. Часть атрибутов, не оказывающих влияния на уникальность адреса, может быть опущена. Сведения об адресате могут иметь произвольный порядок следования. Существуют четыре типа адресов X.400:
В таблице приводится список атрибутов для мнемонического адреса X.400.
Таблица 1. Атрибуты мнемонического O/R адреса
Тип атрибута | Аббревиатура | Метка | Длина | Примечания |
Given Name | Given Name | G | 16 | Имя |
Initials | Initials | I | 5 | Инициалы |
Surname | Surname | S | 40 | Фамилия |
Generation Qualifier | Generation | Q | 3 | Признак поколения (младший, старший) |
Common Name | Common Name | CN | 32 | Имя в миру |
Organization | Organization | O | 64 | Название организации |
Organizational Unit 1 | Org.Unit.1 | OU1 | 32 | Подразделение 1 уровня |
Organizational Unit 2 | Org.Unit.2 | OU2 | 32 | Подразделение 2 уровня |
Organizational Unit 3 | Org.Unit.3 | OU3 | 32 | Подразделение 3 уровня |
Organizational Unit 4 | Org.Unit.4 | OU4 | 32 | Подразделение 4 уровня |
Private Management Domain | PRMD | P | 16 | Частный управляющий домен |
Administration management domain | ADMD | A | 16 | Административный управляющий домен |
Country | Country | C | 2 | Страна |
Domain Defined Attribute | DDA | DDA | 8128 | Доменный атрибут, такой как адрес MS Mail или SMTP |
Синтаксис доменного атрибута отличается от остальных. В адресе может быть до четырех DDA-записей, имеющих одинаковый формат DDA:ТИП=ЗНАЧЕНИЕ. Как следствие этого, результат разбора адреса зависит от их порядка следования. Кроме того, для этого атрибута имеет значение регистр букв. Данный атрибут был введен для обеспечения лучшего взаимодействия с внешними системами, использующими отличную от X.400 адресацию.