Страница 1 из 1

сетевой стек в пользовательском пространстве: DPDK

Добавлено: 15 авг 2022, 11:53
Olej
Введение в DPDK: архитектура и принцип работы
18 октября 2016
За последние несколько лет тема производительности сетевого стека Linux обрела особую актуальность. Это вполне понятно: объёмы передаваемых по сети данных и соответствующие нагрузки растут не по дням, а по часам.

И даже широкое распространение сетевых карт 10GE не решает проблемы: в самом ядре Linux имеется множество «узких мест», которые препятствуют быстрой обработке пакетов.

Предпринимаются многочисленные попытки эти «узкие места» обойти. Техники, используемые для обхода, так и называются — kernel bypass (с кратким обзором можно ознакомиться, например, здесь). Они позволяют полностью исключить сетевой стек Linux из процесса обработки пакетов и сделать так, чтобы приложение, работающее в пользовательском пространстве, взаимодействовало с сетевым устройством напрямую. Об одном из таких решений — Intel DPDK (Data Plane Development Kit) — мы и хотели бы поговорить в сегодняшней статье.
Изображение

Re: сетевой стек в пользовательском пространстве: DPDK

Добавлено: 15 авг 2022, 11:58
Olej
Olej писал(а):
15 авг 2022, 11:53
Intel DPDK (Data Plane Development Kit)
Для него даже пишут драйвера на языке Go (GoLang): Writing Network Drivers in Go
TECHNICAL UNIVERSITY OF MUNICH
DEPARTMENT OF INFORMATICS
Sebastian Peter Johann Voit
Это подробный отчёт по университетской работе, на 45 стр.

Re: сетевой стек в пользовательском пространстве: DPDK

Добавлено: 16 авг 2022, 01:30
Olej
По поводу установки и использования DPDK в Linux читаем ... у Microsoft (первое что попалось более-менее внятное) - Настройка DPDK в виртуальной машине Linux:
DPDK может работать на виртуальных машинах Azure, поддерживающих несколько дистрибутивов операционной системы.
...
На виртуальной машине Linux необходимо включить ускоренную работу в сети. Виртуальная машина должна иметь по крайней мере два сетевых интерфейса с одним интерфейсом для управления. Включение ускорения сети в интерфейсе управления не рекомендуется.
Установка DPDK через системный пакет (рекомендуется)
Ubuntu 20.04 и выше

Код: Выделить всё

sudo apt-get install -y dpdk
Всё начинается со стандартного репозитория:

Код: Выделить всё

olej@R420:~/2022/own.BOOKs/BHV.kernel/examples/thread$ aptitude search dpdk
p   dpdk                                                                           - Data Plane Development Kit (runtime)                                                    
p   dpdk-dev                                                                       - Data Plane Development Kit (dev tools)                                                  
p   dpdk-doc                                                                       - Data Plane Development Kit (documentation)                                              
p   dpdk-igb-uio-dkms                                                              - Data Plane Development Kit (igb uio dkms)                                               
p   libdpdk-dev                                                                    - Data Plane Development Kit (basic development files)                                    
p   openvswitch-switch-dpdk                                                        - DPDK enabled Open vSwitch switch implementation                                         

Код: Выделить всё

olej@R420:~/2022/own.BOOKs/BHV.kernel/examples/thread$ aptitude show dpdk
Пакет: dpdk                                      
Версия: 19.11.12-0ubuntu0.20.04.1
Новый: да
Состояние: не установлен
Приоритет: необязательный
Раздел: devel
Сопровождающий: Ubuntu Developers <ubuntu-devel-discuss@lists.ubuntu.com>
Архитектура: amd64
Размер в распакованном виде: 122 k
Зависит: hwdata, lsb-base (>= 3.2-14), pciutils, python3:any
Рекомендует: librte-mempool20.0, librte-mempool-ring20.0, librte-pmd-af-packet20.0, librte-pmd-bond20.0, librte-pmd-e1000-20.0, librte-pmd-fm10k20.0, librte-pmd-i40e20.0,
             librte-pmd-ixgbe20.0, librte-pmd-kni20.0, librte-pmd-mlx4-20.0, librte-pmd-mlx5-20.0, librte-pmd-netvsc20.0, librte-pmd-pcap20.0, librte-pmd-tap20.0,
             librte-pmd-thunderx20.0, librte-pmd-vdev-netvsc20.0, librte-pmd-vhost20.0, librte-pmd-virtio20.0, librte-pmd-vmxnet3-20.0, python3-pyelftools
Предлагает: dpdk-doc, dpdk-igb-uio-dkms (= 19.11.12-0ubuntu0.20.04.1), linux-image-generic, librte-mempool-bucket20.0 (= 19.11.12-0ubuntu0.20.04.1),
            librte-mempool-dpaa2-20.0 (= 19.11.12-0ubuntu0.20.04.1), librte-mempool-dpaa20.0 (= 19.11.12-0ubuntu0.20.04.1), librte-mempool-octeontx2-20.0 (=
            19.11.12-0ubuntu0.20.04.1), librte-mempool-octeontx20.0 (= 19.11.12-0ubuntu0.20.04.1), librte-mempool-ring20.0 (= 19.11.12-0ubuntu0.20.04.1),
            librte-mempool-stack20.0 (= 19.11.12-0ubuntu0.20.04.1), librte-mempool20.0 (= 19.11.12-0ubuntu0.20.04.1), librte-pmd-aesni-gcm20.0 (= 19.11.12-0ubuntu0.20.04.1),
            librte-pmd-aesni-mb20.0 (= 19.11.12-0ubuntu0.20.04.1), librte-pmd-af-packet20.0 (= 19.11.12-0ubuntu0.20.04.1), librte-pmd-ark20.0 (= 19.11.12-0ubuntu0.20.04.1),
            librte-pmd-atlantic20.0 (= 19.11.12-0ubuntu0.20.04.1), librte-pmd-avp20.0 (= 19.11.12-0ubuntu0.20.04.1), librte-pmd-axgbe20.0 (= 19.11.12-0ubuntu0.20.04.1),
            librte-pmd-bbdev-fpga-lte-fec20.0 (= 19.11.12-0ubuntu0.20.04.1), librte-pmd-bbdev-null20.0 (= 19.11.12-0ubuntu0.20.04.1), librte-pmd-bbdev-turbo-sw20.0 (=
            19.11.12-0ubuntu0.20.04.1), librte-pmd-bnx2x20.0 (= 19.11.12-0ubuntu0.20.04.1), librte-pmd-bnxt20.0 (= 19.11.12-0ubuntu0.20.04.1), librte-pmd-bond20.0 (=
            19.11.12-0ubuntu0.20.04.1), librte-pmd-caam-jr20.0 (= 19.11.12-0ubuntu0.20.04.1), librte-pmd-ccp20.0 (= 19.11.12-0ubuntu0.20.04.1),
            librte-pmd-crypto-scheduler20.0 (= 19.11.12-0ubuntu0.20.04.1), librte-pmd-cxgbe20.0 (= 19.11.12-0ubuntu0.20.04.1), librte-pmd-dpaa-event20.0 (=
            19.11.12-0ubuntu0.20.04.1), librte-pmd-dpaa-sec20.0 (= 19.11.12-0ubuntu0.20.04.1), librte-pmd-dpaa2-20.0 (= 19.11.12-0ubuntu0.20.04.1),
            librte-pmd-dpaa2-event20.0 (= 19.11.12-0ubuntu0.20.04.1), librte-pmd-dpaa2-sec20.0 (= 19.11.12-0ubuntu0.20.04.1), librte-pmd-dpaa20.0 (=
            19.11.12-0ubuntu0.20.04.1), librte-pmd-dsw-event20.0 (= 19.11.12-0ubuntu0.20.04.1), librte-pmd-e1000-20.0 (= 19.11.12-0ubuntu0.20.04.1), librte-pmd-ena20.0 (=
            19.11.12-0ubuntu0.20.04.1), librte-pmd-enetc20.0 (= 19.11.12-0ubuntu0.20.04.1), librte-pmd-enic20.0 (= 19.11.12-0ubuntu0.20.04.1), librte-pmd-failsafe20.0 (=
            19.11.12-0ubuntu0.20.04.1), librte-pmd-fm10k20.0 (= 19.11.12-0ubuntu0.20.04.1), librte-pmd-hinic20.0 (= 19.11.12-0ubuntu0.20.04.1), librte-pmd-hns3-20.0 (=
            19.11.12-0ubuntu0.20.04.1), librte-pmd-i40e20.0 (= 19.11.12-0ubuntu0.20.04.1), librte-pmd-iavf20.0 (= 19.11.12-0ubuntu0.20.04.1), librte-pmd-ice20.0 (=
            19.11.12-0ubuntu0.20.04.1), librte-pmd-ifc20.0 (= 19.11.12-0ubuntu0.20.04.1), librte-pmd-isal20.0 (= 19.11.12-0ubuntu0.20.04.1), librte-pmd-ixgbe20.0 (=
            19.11.12-0ubuntu0.20.04.1), librte-pmd-kni20.0 (= 19.11.12-0ubuntu0.20.04.1), librte-pmd-liquidio20.0 (= 19.11.12-0ubuntu0.20.04.1), librte-pmd-memif20.0 (=
            19.11.12-0ubuntu0.20.04.1), librte-pmd-mlx4-20.0 (= 19.11.12-0ubuntu0.20.04.1), librte-pmd-mlx5-20.0 (= 19.11.12-0ubuntu0.20.04.1), librte-pmd-netvsc20.0 (=
            19.11.12-0ubuntu0.20.04.1), librte-pmd-nfp20.0 (= 19.11.12-0ubuntu0.20.04.1), librte-pmd-nitrox20.0 (= 19.11.12-0ubuntu0.20.04.1), librte-pmd-null-crypto20.0 (=
            19.11.12-0ubuntu0.20.04.1), librte-pmd-null20.0 (= 19.11.12-0ubuntu0.20.04.1), librte-pmd-octeontx-compress20.0 (= 19.11.12-0ubuntu0.20.04.1),
            librte-pmd-octeontx-crypto20.0 (= 19.11.12-0ubuntu0.20.04.1), librte-pmd-octeontx-event20.0 (= 19.11.12-0ubuntu0.20.04.1), librte-pmd-octeontx2-20.0 (=
            19.11.12-0ubuntu0.20.04.1), librte-pmd-octeontx2-crypto20.0 (= 19.11.12-0ubuntu0.20.04.1), librte-pmd-octeontx2-event20.0 (= 19.11.12-0ubuntu0.20.04.1),
            librte-pmd-octeontx20.0 (= 19.11.12-0ubuntu0.20.04.1), librte-pmd-opdl-event20.0 (= 19.11.12-0ubuntu0.20.04.1), librte-pmd-openssl20.0 (=
            19.11.12-0ubuntu0.20.04.1), librte-pmd-pcap20.0 (= 19.11.12-0ubuntu0.20.04.1), librte-pmd-pfe20.0 (= 19.11.12-0ubuntu0.20.04.1), librte-pmd-qat20.0 (=
            19.11.12-0ubuntu0.20.04.1), librte-pmd-qede20.0 (= 19.11.12-0ubuntu0.20.04.1), librte-pmd-ring20.0 (= 19.11.12-0ubuntu0.20.04.1), librte-pmd-sfc20.0 (=
            19.11.12-0ubuntu0.20.04.1), librte-pmd-skeleton-event20.0 (= 19.11.12-0ubuntu0.20.04.1), librte-pmd-softnic20.0 (= 19.11.12-0ubuntu0.20.04.1),
            librte-pmd-sw-event20.0 (= 19.11.12-0ubuntu0.20.04.1), librte-pmd-tap20.0 (= 19.11.12-0ubuntu0.20.04.1), librte-pmd-thunderx20.0 (= 19.11.12-0ubuntu0.20.04.1),
            librte-pmd-vdev-netvsc20.0 (= 19.11.12-0ubuntu0.20.04.1), librte-pmd-vhost20.0 (= 19.11.12-0ubuntu0.20.04.1), librte-pmd-virtio-crypto20.0 (=
            19.11.12-0ubuntu0.20.04.1), librte-pmd-virtio20.0 (= 19.11.12-0ubuntu0.20.04.1), librte-pmd-vmxnet3-20.0 (= 19.11.12-0ubuntu0.20.04.1), librte-pmd-zlib20.0 (=
            19.11.12-0ubuntu0.20.04.1)
Ломает: dpdk-dev (< 18.11-4~)
Заменяет: dpdk-dev (< 18.11)
Описание: Data Plane Development Kit (runtime)
 DPDK is a set of libraries for fast packet processing. Applications run in user-space and communicate directly with dedicated network interfaces. 
 
 This package contains the runtime environment to run DPDK applications.
Домашняя страница: https://www.dpdk.org

Код: Выделить всё

olej@R420:~/2022/own.BOOKs/BHV.kernel/examples/thread$ aptitude show libdpdk-dev
Пакет: libdpdk-dev                               
Версия: 19.11.12-0ubuntu0.20.04.1
Новый: да
Состояние: не установлен
Мультиархитектура: такая же
Приоритет: необязательный
Раздел: universe/libdevel
Сопровождающий: Ubuntu Developers <ubuntu-devel-discuss@lists.ubuntu.com>
Архитектура: amd64
Размер в распакованном виде: 26,0 M
Зависит: libbsd-dev, libibverbs-dev, libipsec-mb-dev, libisal-dev, libelf-dev, libfdt-dev, libjansson-dev, libmnl-dev, libnuma-dev, libpcap-dev, libssl-dev, zlib1g-dev,
         librte-acl20.0 (= 19.11.12-0ubuntu0.20.04.1), librte-bbdev0.200 (= 19.11.12-0ubuntu0.20.04.1), librte-bitratestats20.0 (= 19.11.12-0ubuntu0.20.04.1),
         librte-bpf0.200 (= 19.11.12-0ubuntu0.20.04.1), librte-bus-dpaa20.0 (= 19.11.12-0ubuntu0.20.04.1), librte-bus-fslmc20.0 (= 19.11.12-0ubuntu0.20.04.1),
         librte-bus-ifpga20.0 (= 19.11.12-0ubuntu0.20.04.1), librte-bus-pci20.0 (= 19.11.12-0ubuntu0.20.04.1), librte-bus-vdev20.0 (= 19.11.12-0ubuntu0.20.04.1),
         librte-bus-vmbus20.0 (= 19.11.12-0ubuntu0.20.04.1), librte-cfgfile20.0 (= 19.11.12-0ubuntu0.20.04.1), librte-cmdline20.0 (= 19.11.12-0ubuntu0.20.04.1),
         librte-common-cpt20.0 (= 19.11.12-0ubuntu0.20.04.1), librte-common-dpaax20.0 (= 19.11.12-0ubuntu0.20.04.1), librte-common-octeontx2-20.0 (=
         19.11.12-0ubuntu0.20.04.1), librte-common-octeontx20.0 (= 19.11.12-0ubuntu0.20.04.1), librte-compressdev0.200 (= 19.11.12-0ubuntu0.20.04.1), librte-cryptodev20.0 (=
         19.11.12-0ubuntu0.20.04.1), librte-distributor20.0 (= 19.11.12-0ubuntu0.20.04.1), librte-eal20.0 (= 19.11.12-0ubuntu0.20.04.1), librte-efd20.0 (=
         19.11.12-0ubuntu0.20.04.1), librte-ethdev20.0 (= 19.11.12-0ubuntu0.20.04.1), librte-eventdev20.0 (= 19.11.12-0ubuntu0.20.04.1), librte-fib0.200 (=
         19.11.12-0ubuntu0.20.04.1), librte-flow-classify0.200 (= 19.11.12-0ubuntu0.20.04.1), librte-gro20.0 (= 19.11.12-0ubuntu0.20.04.1), librte-gso20.0 (=
         19.11.12-0ubuntu0.20.04.1), librte-hash20.0 (= 19.11.12-0ubuntu0.20.04.1), librte-ip-frag20.0 (= 19.11.12-0ubuntu0.20.04.1), librte-ipsec0.200 (=
         19.11.12-0ubuntu0.20.04.1), librte-jobstats20.0 (= 19.11.12-0ubuntu0.20.04.1), librte-kni20.0 (= 19.11.12-0ubuntu0.20.04.1), librte-kvargs20.0 (=
         19.11.12-0ubuntu0.20.04.1), librte-latencystats20.0 (= 19.11.12-0ubuntu0.20.04.1), librte-lpm20.0 (= 19.11.12-0ubuntu0.20.04.1), librte-mbuf20.0 (=
         19.11.12-0ubuntu0.20.04.1), librte-member20.0 (= 19.11.12-0ubuntu0.20.04.1), librte-mempool-bucket20.0 (= 19.11.12-0ubuntu0.20.04.1), librte-mempool-dpaa2-20.0 (=
         19.11.12-0ubuntu0.20.04.1), librte-mempool-dpaa20.0 (= 19.11.12-0ubuntu0.20.04.1), librte-mempool-octeontx2-20.0 (= 19.11.12-0ubuntu0.20.04.1),
         librte-mempool-octeontx20.0 (= 19.11.12-0ubuntu0.20.04.1), librte-mempool-ring20.0 (= 19.11.12-0ubuntu0.20.04.1), librte-mempool-stack20.0 (=
         19.11.12-0ubuntu0.20.04.1), librte-mempool20.0 (= 19.11.12-0ubuntu0.20.04.1), librte-meter20.0 (= 19.11.12-0ubuntu0.20.04.1), librte-metrics20.0 (=
         19.11.12-0ubuntu0.20.04.1), librte-net20.0 (= 19.11.12-0ubuntu0.20.04.1), librte-pci20.0 (= 19.11.12-0ubuntu0.20.04.1), librte-pdump20.0 (=
         19.11.12-0ubuntu0.20.04.1), librte-pipeline20.0 (= 19.11.12-0ubuntu0.20.04.1), librte-pmd-aesni-gcm20.0 (= 19.11.12-0ubuntu0.20.04.1), librte-pmd-aesni-mb20.0 (=
         19.11.12-0ubuntu0.20.04.1), librte-pmd-af-packet20.0 (= 19.11.12-0ubuntu0.20.04.1), librte-pmd-ark20.0 (= 19.11.12-0ubuntu0.20.04.1), librte-pmd-atlantic20.0 (=
         19.11.12-0ubuntu0.20.04.1), librte-pmd-avp20.0 (= 19.11.12-0ubuntu0.20.04.1), librte-pmd-axgbe20.0 (= 19.11.12-0ubuntu0.20.04.1), librte-pmd-bbdev-fpga-lte-fec20.0
         (= 19.11.12-0ubuntu0.20.04.1), librte-pmd-bbdev-null20.0 (= 19.11.12-0ubuntu0.20.04.1), librte-pmd-bbdev-turbo-sw20.0 (= 19.11.12-0ubuntu0.20.04.1),
         librte-pmd-bnx2x20.0 (= 19.11.12-0ubuntu0.20.04.1), librte-pmd-bnxt20.0 (= 19.11.12-0ubuntu0.20.04.1), librte-pmd-bond20.0 (= 19.11.12-0ubuntu0.20.04.1),
         librte-pmd-caam-jr20.0 (= 19.11.12-0ubuntu0.20.04.1), librte-pmd-ccp20.0 (= 19.11.12-0ubuntu0.20.04.1), librte-pmd-crypto-scheduler20.0 (=
         19.11.12-0ubuntu0.20.04.1), librte-pmd-cxgbe20.0 (= 19.11.12-0ubuntu0.20.04.1), librte-pmd-dpaa-event20.0 (= 19.11.12-0ubuntu0.20.04.1), librte-pmd-dpaa-sec20.0 (=
         19.11.12-0ubuntu0.20.04.1), librte-pmd-dpaa2-20.0 (= 19.11.12-0ubuntu0.20.04.1), librte-pmd-dpaa2-event20.0 (= 19.11.12-0ubuntu0.20.04.1), librte-pmd-dpaa2-sec20.0
         (= 19.11.12-0ubuntu0.20.04.1), librte-pmd-dpaa20.0 (= 19.11.12-0ubuntu0.20.04.1), librte-pmd-dsw-event20.0 (= 19.11.12-0ubuntu0.20.04.1), librte-pmd-e1000-20.0 (=
         19.11.12-0ubuntu0.20.04.1), librte-pmd-ena20.0 (= 19.11.12-0ubuntu0.20.04.1), librte-pmd-enetc20.0 (= 19.11.12-0ubuntu0.20.04.1), librte-pmd-enic20.0 (=
         19.11.12-0ubuntu0.20.04.1), librte-pmd-failsafe20.0 (= 19.11.12-0ubuntu0.20.04.1), librte-pmd-fm10k20.0 (= 19.11.12-0ubuntu0.20.04.1), librte-pmd-hinic20.0 (=
         19.11.12-0ubuntu0.20.04.1), librte-pmd-hns3-20.0 (= 19.11.12-0ubuntu0.20.04.1), librte-pmd-i40e20.0 (= 19.11.12-0ubuntu0.20.04.1), librte-pmd-iavf20.0 (=
         19.11.12-0ubuntu0.20.04.1), librte-pmd-ice20.0 (= 19.11.12-0ubuntu0.20.04.1), librte-pmd-ifc20.0 (= 19.11.12-0ubuntu0.20.04.1), librte-pmd-isal20.0 (=
         19.11.12-0ubuntu0.20.04.1), librte-pmd-ixgbe20.0 (= 19.11.12-0ubuntu0.20.04.1), librte-pmd-kni20.0 (= 19.11.12-0ubuntu0.20.04.1), librte-pmd-liquidio20.0 (=
         19.11.12-0ubuntu0.20.04.1), librte-pmd-memif20.0 (= 19.11.12-0ubuntu0.20.04.1), librte-pmd-mlx4-20.0 (= 19.11.12-0ubuntu0.20.04.1), librte-pmd-mlx5-20.0 (=
         19.11.12-0ubuntu0.20.04.1), librte-pmd-netvsc20.0 (= 19.11.12-0ubuntu0.20.04.1), librte-pmd-nfp20.0 (= 19.11.12-0ubuntu0.20.04.1), librte-pmd-nitrox20.0 (=
         19.11.12-0ubuntu0.20.04.1), librte-pmd-null-crypto20.0 (= 19.11.12-0ubuntu0.20.04.1), librte-pmd-null20.0 (= 19.11.12-0ubuntu0.20.04.1),
         librte-pmd-octeontx-compress20.0 (= 19.11.12-0ubuntu0.20.04.1), librte-pmd-octeontx-crypto20.0 (= 19.11.12-0ubuntu0.20.04.1), librte-pmd-octeontx-event20.0 (=
         19.11.12-0ubuntu0.20.04.1), librte-pmd-octeontx2-20.0 (= 19.11.12-0ubuntu0.20.04.1), librte-pmd-octeontx2-crypto20.0 (= 19.11.12-0ubuntu0.20.04.1),
         librte-pmd-octeontx2-event20.0 (= 19.11.12-0ubuntu0.20.04.1), librte-pmd-octeontx20.0 (= 19.11.12-0ubuntu0.20.04.1), librte-pmd-opdl-event20.0 (=
         19.11.12-0ubuntu0.20.04.1), librte-pmd-openssl20.0 (= 19.11.12-0ubuntu0.20.04.1), librte-pmd-pcap20.0 (= 19.11.12-0ubuntu0.20.04.1), librte-pmd-pfe20.0 (=
         19.11.12-0ubuntu0.20.04.1), librte-pmd-qat20.0 (= 19.11.12-0ubuntu0.20.04.1), librte-pmd-qede20.0 (= 19.11.12-0ubuntu0.20.04.1), librte-pmd-ring20.0 (=
         19.11.12-0ubuntu0.20.04.1), librte-pmd-sfc20.0 (= 19.11.12-0ubuntu0.20.04.1), librte-pmd-skeleton-event20.0 (= 19.11.12-0ubuntu0.20.04.1), librte-pmd-softnic20.0 (=
         19.11.12-0ubuntu0.20.04.1), librte-pmd-sw-event20.0 (= 19.11.12-0ubuntu0.20.04.1), librte-pmd-tap20.0 (= 19.11.12-0ubuntu0.20.04.1), librte-pmd-thunderx20.0 (=
         19.11.12-0ubuntu0.20.04.1), librte-pmd-vdev-netvsc20.0 (= 19.11.12-0ubuntu0.20.04.1), librte-pmd-vhost20.0 (= 19.11.12-0ubuntu0.20.04.1),
         librte-pmd-virtio-crypto20.0 (= 19.11.12-0ubuntu0.20.04.1), librte-pmd-virtio20.0 (= 19.11.12-0ubuntu0.20.04.1), librte-pmd-vmxnet3-20.0 (=
         19.11.12-0ubuntu0.20.04.1), librte-pmd-zlib20.0 (= 19.11.12-0ubuntu0.20.04.1), librte-port20.0 (= 19.11.12-0ubuntu0.20.04.1), librte-power20.0 (=
         19.11.12-0ubuntu0.20.04.1), librte-rawdev-dpaa2-cmdif20.0 (= 19.11.12-0ubuntu0.20.04.1), librte-rawdev-dpaa2-qdma20.0 (= 19.11.12-0ubuntu0.20.04.1),
         librte-rawdev-ioat20.0 (= 19.11.12-0ubuntu0.20.04.1), librte-rawdev-ntb20.0 (= 19.11.12-0ubuntu0.20.04.1), librte-rawdev-octeontx2-dma20.0 (=
         19.11.12-0ubuntu0.20.04.1), librte-rawdev-skeleton20.0 (= 19.11.12-0ubuntu0.20.04.1), librte-rawdev20.0 (= 19.11.12-0ubuntu0.20.04.1), librte-rcu0.200 (=
         19.11.12-0ubuntu0.20.04.1), librte-reorder20.0 (= 19.11.12-0ubuntu0.20.04.1), librte-rib0.200 (= 19.11.12-0ubuntu0.20.04.1), librte-ring20.0 (=
         19.11.12-0ubuntu0.20.04.1), librte-sched20.0 (= 19.11.12-0ubuntu0.20.04.1), librte-security20.0 (= 19.11.12-0ubuntu0.20.04.1), librte-stack0.200 (=
         19.11.12-0ubuntu0.20.04.1), librte-table20.0 (= 19.11.12-0ubuntu0.20.04.1), librte-telemetry0.200 (= 19.11.12-0ubuntu0.20.04.1), librte-timer20.0 (=
         19.11.12-0ubuntu0.20.04.1), librte-vhost20.0 (= 19.11.12-0ubuntu0.20.04.1)
Описание: Data Plane Development Kit (basic development files)
 DPDK is a set of libraries for fast packet processing. Applications run in user-space and communicate directly with dedicated network interfaces. 
 
 This package contains the basic headers and library files required to build external applications which will also require at least SSE3 support when running. 
 
 libdpdk.pc: note that CFLAGS might contain an -march flag higher than typical baseline. This is required for a number of static inline functions in the public headers.
Домашняя страница: https://www.dpdk.org