LIMSpec Wiki
X.400 — протокол, представляющий собой набор рекомендаций по построению системы передачи электронных сообщений, не зависящей от используемых на сервере и клиенте операционных систем и аппаратных средств. Разработан Международным консультативным комитетом по телеграфии и телефонии (CCITT) (с 1993 года — Сектор стандартизации электросвязи Международного союза электросвязи (ITU-T)).
Рекомендации X.400 охватывают все аспекты построения среды управления сообщениями: терминологию, компоненты и схемы их взаимодействия, протоколы управления и передачи, форматы сообщений и правила их преобразования. В рекомендациях X.400 наиболее полно отражается накопленный в индустрии компьютеров и телекоммуникаций опыт создания и применения информационных систем. Рекомендации X.400 обновляются по мере добавления новых протоколов и форматов передачи данных, а также для корректировки неточностей и изменения некоторых трактовок. По состоянию на 2024 год действующей является редакция от июня 1999 года. Тем не менее, существующие системы обычно используют редакции 1984 и 1988 годов.
Рекомендации X.400 опираются на семиуровневую модель и семейство протоколов OSI Международной организации по стандартизации (ISO). Согласно этой модели, каждый из уровней использует сервисы только уровня, находящегося непосредственно под ним, и предоставляет сервисы только уровню, находящемуся непосредственно над ним. Это обеспечивает системам, построенным на основе такой модели, высокую степень независимости от среды передачи данных. Поскольку рекомендации X.400 определяют набор спецификаций для самого верхнего уровня — прикладного (application), отвечающие этим рекомендациям приложения должны свободно взаимодействовать друг с другом вне зависимости от применяемых операционных систем, аппаратуры и сетевых протоколов.
Для разделения входящего потока данных между приложениями на каждом из уровней — транспортном (transport), сеансовом (session) и представления (presentation) — используется механизм так называемых точек доступа (access point). Каждая точка доступа имеет уникальный идентификатор, или селектор (selector), который может быть либо символьной строкой, либо последовательностью шестнадцатеричных цифр. Длина селектора транспортного уровня — 32 символа (64 цифры), сеансового уровня — 16 символов (32 цифры), уровня представления — 8 символов (16 цифр). Чтобы два приложения в сети могли взаимодействовать, каждое из них должно знать набор селекторов другого.
Протокол X.400 используется в тех случаях, когда требуется высокая надёжность, например, в банковских информационных системах. Из-за высокой сложности стандартов практические реализации X.400 весьма дорогостоящи и не получили большого распространения.
Microsoft Exchange Server поддерживал X.400 и использовал его в качестве своего проприетарного внутреннего формата вплоть до версии 8.0 (Microsoft Exchange Server 2007).