Linux Foundation объявила о создании проекта Open Programmable Infrastructure (OPI) — открытой экосистемы стандартов для архитектур на базе DPU и IPU. Проект основан Dell Technologies, F5, Intel, Keysight, Marvell, NVIDIA и Red Hat. Цель — упростить API сетевых, дисковых и security-функций, чтобы приложения были переносимы между облаками и дата-центрами.

Разберём, что такое DPU и IPU, зачем нужен общий стандарт и как это касается администраторов Linux.

Что такое DPU

DPU (Data Processing Unit) — программируемый ускоритель, который разгружает процессор от сетевых, дисковых и инфраструктурных задач. Фактически это SmartNIC с собственными ядрами, памятью и возможностью запускать сервисы.

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

# посмотреть сетевые устройства и их драйверы
lspci -nnk | grep -A3 -iE "ethernet|network"
ip -br link
ethtool -i eth0 2>/dev/null | head -20
# проверить offload-возможности
ethtool -k eth0 2>/dev/null | head -30

Чем DPU отличается от обычной NIC

Обычная сетевая карта выполняет фиксированные функции: передаёт пакеты, считает контрольные суммы, иногда разгружает TCP. DPU содержит программируемые блоки и может запускать собственное ПО.

Это значит, что инфраструктурные сервисы можно перенести с основного сервера на карту: файрвол, балансировку, шифрование, сбор метрик. Но такая гибкость требует стандартов, иначе каждый вендор предлагает свой API.

# проверить, какие offload включены
ethtool -k eth0 2>/dev/null | grep -E "on|off" | head -20
# SR-IOV
lspci | grep -i "virtual function"
ls /sys/class/net/ | head

Что такое IPU

IPU (Infrastructure Processing Unit) — родственная концепция, которую продвигает Intel. Термины часто используют взаимозаменяемо, но акценты разные: DPU ближе к сетевым ускорителям, IPU — к инфраструктурному процессору с полноценными ядрами.

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

# посмотреть устройства и версии прошивок
lspci -nn | head -30
sudo fwupdmgr get-devices 2>/dev/null | head -30
dmesg | grep -iE "dpu|ipu|smartnic" | head

Задачи OPI

OPI хочет определить открытые API и модели развёртывания для DPU/IPU. Вместо того чтобы писать отдельную интеграцию под каждого вендора, разработчик получает общий интерфейс для сетевых, storage и security-функций.

Проект опирается на существующие открытые технологии: контейнеры, Kubernetes, DPDK, SPDK, P4 и другие. Идея — не изобретать всё заново, а согласовать слои.

# проверить, что установлено для контейнерной инфраструктуры
docker --version 2>/dev/null
podman --version 2>/dev/null
kubectl version --client 2>/dev/null | head
# DPDK/SPDK
pkg-config --modversion libdpdk 2>/dev/null
spdk --version 2>/dev/null

Почему это важно

Без стандарта рынок DPU фрагментирован: приложения привязаны к конкретному вендору, миграция дорога, а поддержка требует специалистов под каждую платформу. Общий API снижает эти издержки.

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

# пример проверки сетевой топологии в облаке
ip route
ip -br link
# посмотреть, какие функции выполняет гипервизор
systemd-detect-virt

Риски и ограничения

  • Стандарт молодой: спецификации могут меняться.
  • Вендоры заинтересованы в собственных расширениях.
  • DPU дороги и требуют квалификации.
  • Отладка распределённых функций сложнее.
  • Безопасность: DPU имеет доступ к трафику и данным.

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

# перед пилотом зафиксировать базовые метрики
mpstat 1 5
sar -n DEV 1 5
iostat -x 1 5

Что делать администратору сейчас

Следите за спецификациями OPI и поддержкой в дистрибутивах. Если планируете закупку SmartNIC, проверяйте не только характеристики, но и открытость драйверов, документации и инструментов обновления.

Требуйте от вендора поддержки стандартных интерфейсов и возможности запускать ваши контейнеры, а не только проприетарные агенты.

# проверить поддержку обновлений прошивки
fwupdmgr get-devices --verbose 2>/dev/null | head -40
# проверить открытость драйвера
modinfo  2>/dev/null | grep -E "license|description"

Связь с Kubernetes

В контейнерных средах DPU может предоставлять сеть и хранилище для подов, освобождая CPU узлов. Но интеграция требует плагинов CNI/CSI и понимания, где заканчивается ответственность платформы.

# посмотреть CNI-плагины
ls /etc/cni/net.d/ 2>/dev/null
kubectl get nodes -o wide 2>/dev/null
kubectl get pods -A 2>/dev/null | head

Безопасность и доверие

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

# проверить Secure Boot и подписи модулей
mokutil --sb-state 2>/dev/null
dmesg | grep -i "module verification" | head
# проверить версии прошивок
fwupdmgr get-devices --verbose 2>/dev/null | grep -iE "device|version" | head -20

Требуйте от вендоров прозрачности: какие компоненты работают на устройстве, как обновляются, какие данные оно обрабатывает.

Итог

OPI — попытка Linux Foundation объединить рынок DPU/IPU вокруг открытых API. Проект поддерживают крупные вендоры, а цель — переносимость сетевых, дисковых и security-функций. Для администраторов это сигнал: при выборе ускорителей смотрите на открытость драйверов и стандарты, а не только на скорость. Массовое применение пока в дата-центрах, но направление важное.

Насколько публикация полезна?

Нажмите на звезду, чтобы оценить!

Средняя оценка 0 / 5. Количество оценок: 0

Оценок пока нет. Поставьте оценку первым.

Поделиться: Telegram ВКонтакте