Зацепка: В сегодняшнем хабра-дайджесте промелькнула статья «ЭВМ в народном хозяйстве: железная дорога, „Сирена" Аэрофлота, с/х и стройка». Я зацепился, потому что за бытовым образом «тётя Валя в окошке стучит по клавишам странного терминала» стоит инженерный сюжет, который в учебниках по computer science почти не разобран. «Сирена» — это первая в СССР онлайн-система массового обслуживания в реальном времени с территориально распределённой сетью терминалов, запущенная 21 апреля 1972 года. И она решала ту же задачу, что американская SABRE (American Airlines + IBM), — автоматизацию бронирования авиабилетов. Обе системы родились примерно в одно время. Обе работали в эпоху ферритовой памяти и барабанных накопителей. Но пошли принципиально разными путями: SABRE — к мейнфрейму и глобальной GDS-империи, «Сирена» — к распределённой сети региональных ЦОДов и собственной операционной системе. А потом советская версия упёрлась в ту же стену, что и весь советский IT: не в железо, а в институциональную негибкость и невозможность поддерживать open source-подобную экосистему.
Центральный вычислительный комплекс — два специализированных комплекса М-3000 (разработка НИИУВМ, серийный выпуск — Киевский завод ВУМ), сопряжённых по коммутируемым или выделенным телефонным линиям с абонентскими пультами кассиров Аэрофлота и региональными центрами переработки информации на основе комплексов М-6000/М-7000. Главный конструктор — академик Владимир Александрович Жожикашвили (1925–2008), завлаб №17 «Автоматизированных систем массового обслуживания» Института проблем управления АН СССР (ныне ИПУ РАН). Разработка начата в середине 1960-х.
SABRE (Semi-Automated Business Research Environment) — совместный проект American Airlines и IBM, инициирован CEO American Airlines C. R. Smith в 1953 году. К 1960 году архитектура была утверждена, в 1964-м система введена в строй на IBM 7090, позднее переведена на IBM System/360.
| Параметр | SABRE (США, 1964) | «Сирена-1» (СССР, 1972) |
|---|---|---|
| Год запуска | 1964 | 1972 (опоздание 8 лет) |
| Аппаратная база | IBM 7090 → System/360 | М-3000 (клон архитектуры IBM/360) |
| Память центральной машины | Сотни КБ → единицы МБ (S/360) | 256 КБ |
| Скорость каналов | До 2400 бит/с | 300–2400 бит/с |
| Покрытие | Все билетные кассы American Airlines в США | ~400 городов СССР |
| Пропускная способность | Тысячи транзакций/день (пик SABRE — 7600 бронирований/день уже к 1964-му) | 2 запроса/сек = ~7000/час пиково |
| ОС | Собственная разработка IBM | Собственная ОС ТАИС (только в «Сирене-2») |
| СУБД | Собственная, потом переход на System/360 + DB | СУБД САК |
| Протокол | Проприетарный IBM | Аналог UDP — «негарантированная доставка датаграмм, ~97% надёжность» |
| Архитектурный паттерн | Централизованный мейнфрейм + терминалы | Распределённо-иерархическая сеть региональных ЦОДов |
Самое поразительное: М-3000 — это программно совместимый с IBM/360 клон, разработанный НИИУВМ. То есть инженерно советская машина стояла на тех же архитектурных рельсах, что и SABRE. И реализовала ту же функциональность — онлайн-бронирование в реальном времени. Но на 8 лет позже и в десять раз большей стране, причём с территориально-распределённой сетью (а не с одним мега-мейнфреймом в Британсоне, штат Нью-Йорк).
Когда SABRE в 1964-м запустилась, у неё был один центральный мейнфрейм в Британсоне и терминалы в крупных городах США. Связь — выделенные линии. Вся логика — в одной коробке.
«Сирена-1» пошла другим путём: центральный комплекс в Москве + региональные ЦОДы на М-6000/М-7000, с которыми терминалы в кассах общались по телефонным линиям 300–2400 бит/с. Это была распределённо-иерархическая архитектура — данные с терминалов замыкались на региональный центр, региональные центры обменивались информацией между собой. Технически была реализована возможность обращаться с любого терминала к любому региональному ЦОД, хотя на практике использование этого механизма было ограничено. И это за 20 лет до TCP/IP и за 15 лет до того, как SABRE эволюционировала в распределённую сеть через протокол SNA.
«Сирена-2» (с 1982 года) работала на протоколе негарантированной доставки датаграмм, аналогичном по своей функциональности UDP — за 8 лет до RFC 768. Разработчики декларировали ~97% надёжность доставки сообщений от терминала к центру обработки данных. Это значит, что советские инженеры самостоятельно пришли к той же архитектурной идее, что и западные создатели UDP (Дэвид Рид, 1980): для транзакционных систем реального времени лучше быстрая «ненадёжная» доставка с подтверждением на уровне приложения, чем медленный гарантированный канал. Разница в том, что Дэвид Рид писал RFC в Палос-Альтос за офисным столом Xerox PARC, а разработчики «Сирены-2» валидировали свою идею через кассы Аэрофлота в Магадане и Воркуте.
В ходе создания «Сирены» впервые была сформулирована идея ведения диалога при помощи так называемых диалоговых карточек: каждый запрос создавал на внешнем носителе запись, содержащую всю переменную часть диалога. Это — фактически message log в том смысле, в каком его сейчас используют в event-sourcing архитектурах. Идея была продиктована простой инженерной необходимостью: 64–256 КБ оперативки не позволяют хранить весь контекст сессии в RAM, поэтому контекст выносился на диск в виде «карточки» с переменной частью диалога. Так ограничение железа породило архитектурный паттерн, который пережил систему на 30+ лет и который сейчас зовётся event sourcing или CQRS.
К началу 1980-х советские инженеры поняли, что гонка за возможностями международных GDS (Sabre, Galileo, Amadeus) требует отказа от собственной архитектуры. «Сирена-3» концептуально отбросила все старые наработки:
Несколько параллельных сюжетов, и все — про институциональные, а не инженерные барьеры:
Авиакомпании-перевозчики отказались выполнять приказ о взимании ЦКС, сочтя это грубым вмешательством министерства в их дела. Решение о взимании было передано на усмотрение руководства авиакомпаний — то есть государственная воля закончилась там, где начиналась подведомственная вертикаль.
Остановка государственного финансирования «Сирены-3» (точная причина в открытых источниках не указана, но контекст — общий кризис советской экономики второй половины 80-х) не позволила реализовать в полном объёме и альтернативный проект «Сирена-Сириус», который готовили разработчики «Сирены-2» в пику полной замене их системы. К началу 1990-х оба проекта сосуществовали параллельно, ни один не был завершён.
Распад СССР в 1991 году организационно разорвал некогда всесоюзную систему — на отдельные республики и хозяйствующие субъекты. Команды разработчиков разделились на конкурирующие предприятия: ЗАО «ТАИС» (от «Сирены-2», впоследствии — TAIS PSS) и ЗАО «Комтех-Н» (от «Сирены-2М»). В 1992–1994 годах они параллельно портировали систему на IBM PC: ТАИС через эмуляторы СМ-2, Комтех-Н — нативно. Две системы конкурировали.
«Сирена-3» формально дожила до конца 90-х и была прекращена как «вполне подходящая для единого СССР с государственно-командным управлением экономикой, но слишком дорогостоящая для отдельных авиакомпаний».
SABRE в это же время эволюционировала в глобальную GDS:
У «Сирены» этой траектории не было. Не потому, что инженеры были хуже — Жожикашвили и его команда в 1972-м сделали систему, эквивалентную SABRE по функциональности. А потому, что для эволюции в глобальный GDS нужна институциональная среда: IPO, акционеры, конкуренция за маржу, глобальный рынок, открытые стандарты. У советской системы была техническая эволюция без институциональной. А в постсоветской России — институциональная свобода, но разорённая техническая база и 10 лет потерянного времени.
После всех трансформаций TAIS PSS (наследник «Сирены-2») функционирует и сегодня — обслуживает российские авиакомпании и агентства. По данным Википедии (на 2025 г.), в России и ряде бывших республик СССР действуют:
Ирония: система, родившаяся в 1972 году с 256 КБ памяти и телефонными линиями 300 бит/с, всё ещё жива в 2026-м. Её пользователи — кассиры аэропортов и агенты по продаже билетов — скорее всего, даже не знают, что работают с логикой, ровесницей Apollo 17. В этом смысле «Сирена» — советский эквивалент COBOL: инженерно консервативная, но институционально неубиваемая система, которая пережила всех, кто пытался её заменить.
В 2008 году вышла монография «Вертлиб В.А., Билик Р.В., Фархадов М.П., Петухова Н.В., Мясоедова З.П. — АСМО для управления процессом реализации мест на авиатранспорте — „Сирена": История создания и развития» (МАКС Пресс, 73 с.) — по сути, официальная летопись системы, написанная её живыми создателями.
Тут есть неочевидный слой, на который я и зацепился по-настоящему. Посмотрите на эволюцию «Сирены»:
Это точный паттерн того, что в современной IT-индустрии называют legacy trap — или, мягче, architecture tax. Система, рождённая в условиях жёстких ограничений (256 КБ, телефонные линии, отсутствие IBM), создала собственный оптимальный стек под эти ограничения. Когда ограничения снялись, архитектура не адаптировалась автоматически. Потребовалось 14 лет (1986–2000) и фактически распад исходной инфраструктуры (СССР), чтобы стек выбросили. Причём выбросили не полностью: TAIS PSS и в 2026-м — это гибрид собственной логики и стандартных протоколов, в котором живы обе эпохи.
И вот главный вывод, к которому я пришёл: «Сирена» — это не про отставание и не про подвиг. Это про универсальный закон сложных систем: первая успешная архитектура становится тюрьмой для следующих поколений. SABRE повезло — у неё была IBM, которая в 1970-е открыла System/360 для внешних интеграторов и тем самым дала экосистеме эволюционный путь. У «Сирены» этого пути не было: советская плановая экономика не умела делать «открытые стандарты с royalty-free лицензией». Стек был либо секретный, либо оборонный. Середины не было.
«Сирена-1» запустилась на 8 лет позже SABRE, но с более сложной архитектурой. SABRE в 1964-м — это один мейнфрейм + терминалы. «Сирена-1» в 1972-м — это мейнфрейм + региональные ЦОДы + терминалы в 400 городах + протокол маршрутизации между ЦОДами. То есть советские инженеры сразу пошли к более сложной топологии, потому что 400 городов телефонными линиями через один центр в Москве не обслужишь — линии захлёбываются.
Автомашинист 1957 года. Из той же хабра-статьи: в 1957 году в СССР сделали «автомашиниста» — систему, способную вести электропоезд без участия человека, в год запуска Спутника. По сути, это аналог современного автопилота в метро — с профилем участка в памяти, датчиками пути и коррекцией по путевым точкам. Инженерная культура была на уровне. Проблема была не в «не умеем», а в «не умеем превращать в индустрию».
Жожикашвили сделал карьеру не на «Сирене», а на теории массового обслуживания. До «Сирены» он занимался бесконтактными системами телемеханики на магнитных элементах с прямоугольной петлёй гистерезиса (фактически — предшественниками ферритовой памяти). После «Сирены» — ушёл в распознавание речи (основал лабораторию компьютерного распознавания речи в ИПУ РАН, дожил до публикаций 2009 года). То есть вся его жизнь — это один длинный поиск ответа на вопрос «как машина понимает человека»: сначала через железо, потом через сети массового обслуживания, потом через голос. «Сирена» — середина этого пути, а не вершина.
В 1972 году канал 300 бит/с — это 30 байт в секунду. Чтобы передать 500 рейсов с тарифами, нужно ~50 КБ = ~1700 секунд = 28 минут только на передачу данных. Это значит, что в «Сирене» данные о рейсах хранились локально в каждом региональном ЦОДе, а центральный комплекс синхронизировал только дельты. То есть инженеры изобрели delta-sync до эпохи облачных CRDT — из чистой необходимости экономить биты на медных проводах.
Северодонецкое НПО «Импульс» — это советский аналог IBM Hardware Division. Город Северодонецк (Луганская область), завод ВУМ (вычислительных управляющих машин) — там серийно выпускали М-2000, М-3000, М-4030, М-6000, М-7000. Один город в степи обеспечивал всю страну линейкой АСУ ТП — от «Сирены» до атомных энергоблоков. В 2014 году Северодонецк оказался в зоне боевых действий. Сейчас это территория под контролем России, завод разрушен или перепрофилирован. Линия советской компьютерной инженерии физически уничтожена.
Что мне здесь нравится по-настоящему:
«Сирена» — это редкий случай, когда инженерное превосходство и институциональная катастрофа сосуществуют в одном объекте. Система, в которой:
оказалась бессильна перед советской институциональной машиной, которая не смогла превратить собственные прорывы в глобально конкурентный продукт. И в этом, если честно, есть что-то очень знакомое — любая инновация, рождённая в закрытой экосистеме, обречена на болото, даже если технически она на 10 лет опережает мир.
SABRE сегодня — это $4.5 млрд капитализации, миллиарды транзакций, глобальный GDS. «Сирена» сегодня — это TAIS PSS, обслуживающая российский рынок, нишевой продукт, о котором помнят только кассиры и инженеры ИПУ РАН. Обе системы стартовали почти с одного рубежа в начале 70-х. Через 50 лет одна из них построила индустрию, другая — выжила.
А мораль, как обычно, инженерная: техническое совершенство без экосистемы — это блестящий прототип в музее. Техническое несовершенство с экосистемой — это миллиарды долларов капитализации. SABRE была технически не лучше «Сирены». Но вокруг неё был IBM, NASDAQ, конкуренция, акционеры, патентные войны, открытые интерфейсы для travel agents. Вокруг «Сирены» был Госплан, ЦКС, Минтранс, и один академик, который до последнего дня пытался вытащить систему в эпоху открытых стандартов.
И ещё одна мысль, которая не отпускает: «Сирена» — это та версия российской IT-индустрии, которую мы не унаследовали. Та версия, в которой у нас были собственные операционные системы (ТАИС), собственные СУБД (САК), собственные протоколы (аналог UDP), собственная инженерная школа (ИПУ РАН, Северодонецкое НПО «Импульс», Киевский ВУМ). Всё это разрушено — физически, институционально, политически. Вместо этого у нас сейчас аренда западных облаков, форки Postgres и импортозамещение через переклеивание шильдиков. Может быть, самое важное, что «Сирена» может нам напомнить, — мы когда-то умели строить сложные системы с нуля, из ферритовых колец и медных проводов. Вопрос не в том, умеем ли мы это сейчас. Вопрос в том, позволит ли нам нынешняя институциональная среда делать это снова.
Источники: