Контакты
Подписка 2024

Ideco NGFW VPP: новый высокопроизводительный подход к обработке трафика

Дмитрий Хомутов, 12/01/24

Компания Ideco помогает защититься от современных угроз безопасности с помощью своего продукта, межсетевого экрана Ideco NGFW. К обычной версии в 2023 г. добавилась высокоскоростная версия Ideco NGFW VPP. Рассмотрим, за счет чего удалось резко повысить производительность решения.

ris2-Jan-12-2024-08-10-18-2222-AM

Автор: Дмитрий Хомутов, директор компании Ideco

Требования к NGFW в больших сетях и датацентрах часто сводятся к трем главным параметрам: производительности, производительности и производительности. Особенно это проявляется при выборе российского решения класса NGFW.

По ряду причин технологического характера российские NGFW зачастую сильно отстают от западных систем, и повышение производительности в обработке сетевого трафика является главным вызовом для отечественных разработчиков. В ответ на этот вызов разработчики Ideco предложили высокопроизводительную версию Ideco NGFW VPP, реализующую новый подход к обработке трафика.

Ядро и пространство пользователя

Основной продукт Ideco NGFW, как многие российские решения, разработан на базе ядерного стека Linux, где архитектура разделена на два основных пространства: ядро (kernel space) и пользовательское пространство (user space).

Ядро Linux работает в привилегированном режиме и имеет прямой доступ к аппаратному обеспечению компьютера. Ядро обеспечивает основные функции операционной системы: управление памятью, планирование задач, обработку системных вызовов и взаимодействие с аппаратным обеспечением.

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

Некоторые модули Ideco NGFW, например межсетевой экран, работают на уровне ядра, а другие, такие как IPS и контроль приложений, работают в пользовательском пространстве, и в ядре их реализовать достаточно сложно. Таким образом, получается, что одна часть обработки трафика происходит на уровне ядра, а другая – в пользовательском пространстве. Переключение между этими контекстами непременно ведет к снижению производительности.

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

Впрочем, существует технология kernel-bypass, которая позволяет приложению из пользовательского пространства напрямую общаться с аппаратным обеспечением, минуя слой ядра операционной системы. Разработаны фреймворки, которые реализуют такой подход, – DPDK и VPP.

DPDK и VPP

DPDK (Data Plane Development Kit) и VPP (Vector Packet Processing) являются проектами с открытым исходным кодом, в их разработке и поддержке участвует множество компаний. Однако можно выделить двух ключевых участников.

  • Компания Intel играет важную роль в разработке и поддержке как DPDK, так и VPP. Проект DPDK был инициирован компанией Intel с целью предоставления высокопроизводительных библиотек и драйверов для обработки сетевых пакетов на аппаратном уровне. Этот проект стал ключевым компонентом для оптимизации сетевых приложений на процессорах Intel.
  • Проект VPP был запущен компанией Cisco и позднее передан в сообщество с открытым исходным кодом. Проект активно используется в сетевых решениях Cisco, и компания продолжает поддерживать и развивать VPP в рамках сообщества. Компания Intel также вносит свой вклад в разработку VPP: архитектурные и технические решения от Intel, разработанные для DPDK, часто используются и в VPP.

Важно отметить, что обе технологии, DPDK и VPP, сегодня развиваются как проекты с открытым исходным кодом с широким участием сообщества разработчиков, и многие другие организации внесли свой вклад в их развитие.

При планировании производительной архитектуры Ideco NGFW выбор был сделан в пользу применения VPP, и это дало старт развитию Ideco NGFW VPP, который разрабатывается в духе современных мировых трендов средств обработки трафика.

Архитектура Ideco NGFW VPP

Vector Packet Processing (VPP) – это высокопроизводительная сетевая платформа для работы с трафиком за счет использования векторного подхода.

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

Благодаря возможности обработки векторами производительность обработки трафика значительно увеличивается по сравнению с традиционными подходами.

Стоит отметить, что компания Intel в своих процессорах нового поколения поддерживает аппаратное ускорение VPP-инструкций, чтобы обработка трафика на базе фреймворка VPP работала максимально быстро без дополнительных аппаратных ускорителей.

Профили: революция в построении политик

Важное принципиальное новшество Ideco NGFW VPP – это использование концепции профилей при построении политик обработки сетевого трафика.

В базовом Ideco NGFW в правилах есть множество фильтрующих модулей: L4-файрвол, L7-файрвол, контент-фильтр, система предотвращения вторжений, антивирус и др.

В Ideco NGFW VPP есть лишь один файрвол, но реализующий на базе профилей все многообразие сценариев обработки. Профилями могут быть IPS, обработка приложений, контент-фильтр, SSL-инспекция и т.п.

Рассмотрим эту концепцию подробнее.

Всем известна сетевая модель OSI с уровнями от L1 до L7. Классический модуль межсетевого экранирования в NGFW отвечает за фильтрацию до транспортного уровня L4, а если нужна инспекция на более высоком уровне, например для прикладного протокола, то используется контент-фильтр или модуль контроля приложений.

Написания правил для NGFW на основе профилей выглядит так: после обработки пакета на L4 можно указать селектор, чтобы выбрать определенную часть трафика, и назначить профиль, который будет подключаться к обработке сессий, подпадающих под указанный селектор.

Например, если в дата-центре трафик идет через шлюз, но при этом значительную его часть составляют видеоданные, то в правилах Ideco NGFW VPP можно отключить профиль IPS для селектора, указывающего на пакеты этого типа. Таким образом можно существенно разгрузить шлюз и увеличить его производительность без ущерба для безопасности.

Другой пример: в сети установлен файловый сервер, работающий по протоколу Samba. Для того чтобы защитить его, нужно установить политику для его IP-адреса и добавить к ней профиль обработки IPS.

Еще один пример: комбинация профилей для зашифрованного HTTPS-трафика. После обработки в межсетевом экране L4 селектор выбирает зашифрованные TLS-сессии, к ним применяется TLS-профиль для расшифровки, а затем по селектору HTTP-сессий – профили URL-фильтрации и контент-фильтра. Если же после расшифровки TLS обнаружился обычный TCP-трафик, для которого в политике селектор не указан, то обработка завершается.

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

Заключение

У большинства российских NGFW-решений, построенных на базе Linux, обработка трафика происходит на уровне ядра. В Ideco NGFW VPP вся обработка вынесена в пространство пользователя, где намного проще разрабатывать и отлаживать код, а значит, можно быстрее развивать продукт. Это также позволяет сделать NGFW более надежным, поскольку любая ошибка на уровне ядра с большой вероятностью приведет к краху системы.

Разработчики Ideco NGFW VPP ставят перед собой амбициозную задачу: обогнать по скорости все отечественные NGFW-решения, при этом быстро нарастив функциональность.

В рамках уже действующей лицензии заказчики могут перейти с обычной версии Ideco NGFW на Ideco NGFW VPP. Увы, из-за принципиально разного подхода к формированию политик обработки невозможно сделать корректный автоматический перенос всей базы правил с обычной версии на VPP, так что все настройки придется создавать с начала.

В дальнейшем продукты Ideco NGFW и Ideco NGFW VPP будут развиваться параллельно, ведь часть модулей и данных используется в обоих продуктах. Например, в правилах IPS есть много сигнатур, в том числе расширенная база правил от "Лаборатории Касперского" и из других источников, включая ФинЦЕРТ и НКЦКИ. Они могут с успехом применяться в обеих версиях Ideco NGFW.

Однако поскольку решение Ideco NGFW VPP архитектурно сильно отличается от Ideco NGFW, то требуется его отдельная сертификация со стороны ФСТЭК России. Этот процесс готовится к старту, причем уже с учетом новых требований – как многофункциональный межсетевой экран, по новой терминологии ФСТЭК России.

Темы:Linux"Айдеко"NGFWЖурнал "Информационная безопасность" №6, 2023Ideco NGFWDPDKVPP

Отечественные ИT-платформы
и ПО для объектов КИИ:
готовность к 1 января 2025
Конференция | 24 июля 2024

Жми для участия
Обзоры. Спец.проекты. Исследования
Участвуйте в обзорах / исследованиях проекта "Информационная безопасность"!
Станьте автором журнала!
Статьи по той же темеСтатьи по той же теме

Хотите участвовать?

Выберите вариант!

КАЛЕНДАРЬ МЕРОПРИЯТИЙ 2024
ПОСЕТИТЬ МЕРОПРИЯТИЯ
ВЫСТУПИТЬ НА КОНФЕРЕНЦИЯХ
СТАТЬ АВТОРОМ
Кибербезопасность
30 июля. Кибербезопасность предприятия: защита от современных угроз
Участвуйте!

More...
Обзоры. Исследования. Спец.проекты
Обзоры и исследования проекта "Информационная безопасность"
Жми, чтобы участвовать

More...