Константин А. Трушкин О ПЕРЕВОДЕ КИИ НА ДОВЕРЕННЫЕ ПАК НА ОСНОВАНИИ ОПЫТА ПОСТРОЕНИЯ АППАРАТНО-ПРОГРАММНОЙ ПЛАТФОРМЫ ЭЛЬБРУС (Продолжение)

Какие свойства или технологии АПП Эльбрус наиболее полезны для оснащения КИИ

Ключевая технология для обеспечения нового качества систем, построенных на платформе Эльбрус – это ТБВ (https://www.mcst.ru/secure_computing), средство межмодульной изоляции, поиска ошибок в прикладном ПО и защиты от кибератак, в том числе «0-го дня». За счёт ТБВ скорость отладки приложений может повышаться более чем в 10 раз. ТБВ гарантированно обнаруживает кибератаки, нарушающие структуру памяти (stack smashing, buffer overflow и т.п.) Отметим, что за рубежом очень серьёзно, даже фундаментально подходят к оценкам рисков киберугроз и уже сегодня предлагают меры, основанные на похожих подходах. В Британии разрабатывается при поддержке ARM технология CHERI – это ближайший аналог ТБВ, и её уже рекомендуют Агентство кибербезопасности и безопасности инфраструктуры США (https://www.cisa.gov/news-events/alerts/2023/04/13/shifting-balance-cybersecurity-risk-security-design-and-default-principles) и Белый Дом (https://www.whitehouse.gov/wp-content/uploads/2024/02/Final-ONCD-Technical-Report.pdf).

Важность подобных  технологий очевидна ещё и потому, что среднее число ошибок – 1 в 1000 строк кода – в среднем стабильно (https://security.googleblog.com/2021/08/linux-kernel-security-done-right.html), а кодовая база современных Open-source проектов продолжает набирать объём: в одном только ядре Linux в настоящее время содержится порядка 30 млн строк кода. Поэтому все современные информационные системы содержат ошибки, они же становятся уязвимостями в ходе атак. ТБВ позволяет принципиально снизить риск проведения успешных атак.

Вторая по значимости технология – двоичная трансляция ПО в кодах х86, доведённая на платформе Эльбрус до промышленного качества и производительности. При создании новых ПАК для КИИ или систем из этих ПАК будет сложно обеспечить быстрый перенос всего объёма ПО, требующегося для работоспособности информационной инфраструктуры заказчика. Будет множество программных компонентов, которые имеются только в виде двоичных кодов, разработчики которых недоступны или, например, не готовы переносить ПО с Windows на Linux. Нужен способ исполнения этого унаследованного ПО с приемлемой (достаточной для выполнения функциональных задач КИИ) производительностью. Такое средство есть на платформе Эльбрус.

Третья технология, или свойство – это само наличие на территории России полного жизненного цикла разработки вычислительной платформы, например, в лице АО МЦСТ и команды разработчиков процессоров Эльбрус. Накопленный багаж интеллектуальной собственности, инструментов разработки, практики развития платформы позволяет оперативно (по сравнению с другими сценариями) дополнять или изменять саму платформу по мере появления новых требований. Например, если в ближайшем будущем государству в лице регуляторов потребуются новые способы повышения надёжности/защищённости информационных систем, то именно на платформе Эльбрус их можно будет внедрить быстрее всего и с наиболее высоким качеством. Другой аспект – это неопределённость с площадкой производства, которая требует оперативной правки проектов микропроцессоров под разные фабрики, с разными окружениями в виде IP-блоков и т.п. Здесь опыт команды АО «МЦСТ» также уникален и ценен. Отдельного рассмотрения заслуживает сценарий производства на российских фабриках со «зрелыми» технологическими нормами уровня 65 нм. Для процессоров с такими нормами производства самым ценным становится производительность отдельного ядра, т.к. в неё часто «упирается» производительность и всей информационной системы (в соответствии с законом Амдала – иметь много медленных ядер менее ценно, чем иметь мало ядер, но быстрых). Процессоры Эльбрус изначально строились для достижения максимальной однопоточной производительности с единицы площади кремния (на заданном технологическом процессе). Кроме того, за счёт ТБВ возможны новые способы организации вычислений, с меньшими накладными расходами – и это ценно при построении систем для КИИ с производством кристаллов по «зрелым» нормам.

Практические шаги по построению ПАК для КИИ в текущих условиях

Итак, если признать АПП Эльбрус достойным выбором для построения доверенных ПАК для КИИ, встаёт вопрос – как практически перейти к решению задачи Указа №166 в текущих условиях? Сравнительно небольшие объёмы процессоров Эльбрус на складах, сложности с организацией новых производств этих процессоров, казалось бы, должны привести к выводу: «Надо подождать, пока не будет восстановлено производство процессоров в объёмах, сопоставимых с объёмами годовой потребности рынка России в процессорах». Но такой вывод недооценивал бы инерционность процессов по переводу ПО на новую платформу и по внедрению новых систем в инфраструктуру заказчиков – они могут длиться годами, и при этом не требуют больших количеств процессоров. Особенно это верно для КИИ: до завершения опытной эксплуатации решения в системе КИИ массовая поставка невозможна по внутренним регламентам заказчика. Поэтому, если ставить целью незамедлительное исполнение Указа №166, необходимо рачительно отнестись к трём главным ресурсам: времени, запасах процессоров Эльбрус на складах и тем компетентным разработчикам, которые успели накопить опыт работы с платформой Эльбрус. Хорошим откликом отрасли на постановку задачи в Указе №166 может стать оптимальный план действий, который в текущих условиях обеспечит наилучшее достижение результата наименьшими ресурсами и в короткое время. Для этого предлагается сформировать план, фокусирующий усилия именно на этих направлениях работ, не требующих значительных запасов процессоров. План состоит из 4-х направлений, частично перекрывающихся по времени.

1. Организация портирования и получения для платформы Эльбрус полных стеков системного и прикладного ПО под наиболее востребованные сценарии в КИИ.


По этому направлению уже многое сделано: созданы средства кроссовой разработки, документация по процессорам Эльбрус и способам оптимального программирования, имеются эмуляторы процессоров Эльбрус (для запуска на процессорах х86); на платформу Эльбрус уже перенесено немалое количество прикладного ПО и операционных систем. Но для достижения целей Указа №166 в масштабах КИИ, потребуются дополнительно: особая инфраструктура для организации информирования о платформе Эльбрус, удалённого доступа к вычислительным комплексам, собранным из существующего запаса процессоров Эльбрус, интегрированная инфраструктура кроссовой разработки ПО и его регулярных сборок (на серверах с процессорами х86), пул вычислительных комплексов «Эльбрус» для автоматизированного тестирования ПО. В качестве временной меры можно рассматривать запуск существующего ПО в кодах х86 на платформе Эльбрус через двоичные трансляторы, при условии получения приемлемой производительности.

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

2. Организовать пилотные внедрения с ограниченным количеством компьютеров на базе процессоров Эльбрус.

Цель данной активности – обеспечить практические результаты на как можно более ранних сроках, проверить работоспособность стеков ПО из п. 1 на функциональность и полноту, измерить производительности решений на реальных нагрузках, провести при необходимости оптимизацию ПО – тем самым, получить данные для дальнейшего внедрения платформы Эльбрус вместо х86, необходимые для быстрого развёртывания внедрений с момента появления на российском рынке процессоров Эльбрус в крупных количествах. Одним из практических вариантов пилотирования может стать создание резервных систем для КИИ целиком на процессорах Эльбрус. При получении данных с «боевой» нагрузки можно будет проводить оптимизацию ПО (с анализом производительности, усовершенствованием компиляторов и среды запуска под платформу Эльбрус) для более эффективного использования имеющегося ресурса процессоров.

3. Архитектурная переработка или создание «с нуля» ПАК в виде гетерогенных вычислительных комплексов, использующих разные архитектуры процессоров для решения общей задачи. Потребуется сформировать методологию создания отказоустойчивых масштабируемых гетерогенных ПАК, но данная работа в любом случае полезна для КИИ, т.к. вероятность успешной компьютерной атаки на компьютеры с разными архитектурами значительно ниже, чем для моноархитектурных комплексов. Примерная схема гетерогенного ПАК показана на рисунке.

В дальнейшем, при наличии гетерогенного ПАК, можно будет постепенно оснащать его компьютерами с процессорами Эльбрус, без его остановки или существенной переделки. Такая схема также предполагает возможность горизонтального масштабирования ПАК при увеличении нагрузки, что удобно в условиях расширения КИИ и повышения интенсивности её работы. Отдельным важным моментом в создании таких ПАК должен быть продуманный подход к организации сетевых соединений между отдельными ВК в составе ПАК. Следует сразу ориентироваться на возможности российских дизайн-центров (НИЦЭВТ, ВНИИЭФ, Цифровые Решения) по разработке сетевых контроллеров и коммутаторов. В частности, надо стремиться использовать протоколы с низкими задержками и накладными расходами, с прямой межмашинной коммуникацией (RDMA) через интерконнекты, работать с NVMe накопителями через протокол NVMEoF и т.п.

4. Повышение устойчивости к кибератакам и надёжности ПАК за счёт применения технологии безопасных вычислений (ТБВ). Для этого нужно проводить независимый трек работы по портированию ПО в режим ТБВ платформы Эльбрус, за счёт тестирования и «боевого» использования ПО в этом режиме находить ошибки в ПО, исправлять их и тем самым повышать общую надёжность/киберстойкость систем в КИИ (на всех платформах, за счёт устранения ошибок в ПО). Дальнейшая работа может строиться в направлении создания облегчённых стеков ПО на основе ТБВ, где ТБВ используется уже как средство изоляции программных модулей (наподобие разделения адресных пространств в массовых архитектурах процессоров). Эти стеки будут иметь ценность на всех платформах, но гарантировать защиту можно будет только на платформе Эльбрус, за счёт постоянного аппаратного контроля ТБВ. Такие облегчённые стеки будут вкладом России в открытое ПО, причём в них лидерство будет за российскими контрибьюторами. В результате такого подхода будет планомерно достигнута цель: создание надёжных, отказоустойчивых, стойких к кибератакам ПАК на основе суверенных технологий.

 

Константин А. Трушкин,

заместитель генерального директора по маркетингу, АО «МЦСТ»

ул. Профсоюзная, д. 108, 117437, Москва, Россия

e-mail: trushkin_k@mcst.ru, https://orcid.org/0009-0001-0053-3355