May 26, 2018
DPDK: Software libraries for packet processing
The Data Plane Development Kit DPDK
The DPDK is a set of software libraries to enable packet processing. It consists of a set of polling mode drivers PMD which can be used to pull network packets directly from a Network Interface Card NIC, as well as other libraries to assist in the processing of those packets. The additional libraries include ones for
- memory and buffer management
- packet classification
- software rings or FIFOs to allow packet transfer between cores amongst others.
Applications written using the DPDK run in userspace. The devices used by a DPDK application are removed from kernel control and are instead managed directly by that application.