What it is
DPDK is a set of libraries and drivers for fast packet processing. It was designed to run on any processors. The first supported CPU was Intel x86 and it is now extended to IBM POWER and ARM. It runs mostly in Linux userland. A FreeBSD port is available for a subset of DPDK features.
DPDK is an Open Source BSD licensed project. The most recent patches and enhancements, provided by the community, are available in master branch.
Main libraries
- multicore framework
- huge page memory
- ring buffers
- poll-mode drivers
Usage
These libraries can be used to:
- receive and send packets within the minimum number of CPU cycles (usually less than 80 cycles)
- develop fast packet capture algorithms (tcpdump-like)
- run third-party fast path stacks
Some packet processing functions have been benchmarked up to hundreds million frames per second, using 64-byte packets with a PCIe NIC.
What it is not
DPDK is not a networking stack and does not provide functions such as Layer-3 forwarding, IPsec, firewalling, etc. Within the tree, however, various application examples are included to help developing such features.
Some support and services are provided by several companies.

DPDK是一套用于快速包处理的开源库和驱动程序集合,可在多种处理器上运行,包括Intel x86、IBM POWER及ARM等。它主要在Linux用户空间运行,并支持一些特定功能在FreeBSD上的移植。DPDK提供了多核框架、巨页内存管理、环形缓冲区以及轮询模式驱动等功能,能够实现低至80个周期内的包收发操作。
4755

被折叠的 条评论
为什么被折叠?



