Выпуск DPDK 18.02, фреймворка для создания высокопроизводительных сетевых приложений
Как сообщает opennet.ru Состоялся релиз фреймворка DPDK (Data Plane Development Kit), предоставляющего средства для создания высокопроизводительных сетевых приложений, напрямую работающих с сетевым оборудованием и обрабатывающих пакеты минуя сетевой стек ядра. В качестве первичной платформы заявлен Linux, но имеется ограниченный по своим возможностям вариант для FreeBSD. Исходные тексты библиотек и драйверов поставляются под лицензией BSD, а компоненты для ядра Linux доступны под GPLv2.
Разработчикам предлагается набор библиотек для низкоуровневой работы с сетевыми адаптерами, взаимодействия в многоядерных системах, задействования кольцевых буферов и больших страниц памяти ("huge page"). При помощи данных библиотек можно принимать и отправлять сетевые пакеты с выполнением минимального числа циклов CPU (около 80 циклов на пакет), создавать быстрые системы захвата трафика (аналоги tcpdump) и создавать высокопроизводительные компоненты сетевого стека. При этом DPDK сам по себе не является сетевым стеком, а лишь предоставляет низкоуровневую функциональность на безе которой можно создавать реализации виртуализированных компонентов сетей (NFV, Network Functions Virtualization), например, можно применять для создания виртуальных реализаций пограничных контроллеров сессий (SBC), коммутаторов, балансировщиков нагрузки, межсетевых экранов, систем обнаружения атак и WAN-ускорителей.
В новом выпуске сохранена полная совместимость с версией 17.11 на уровне ABI (можно обновить библиотеки без пересборки приложений). Добавлена поддержка новых классов устройств rawdev и bbdev (Wireless Base Band для ускорения обработки 3gpp Layer 1), представлен ethernet-драйвер AVF (Adaptive Virtual Function) и драйвер для поддержки платформы Hyper-V, расширены возможности драйверов igb, mlx5, mlx4, ixgbe и i40e, добавлены новые eventdev-драйверы DPAA (Data Path Acceleration Architecture) и OPDL (Ordered Packet Distribution Library), а такде поддержка ускорения вычислений IPsec при помощи DPAA. Реализована экспериментальная поддержка системы сборки meson и возможность привязки и проверки тегов.