Fast Packet Processing
- DPDK – DPDK is a set of libraries and drivers for fast packet processing.
- PFQ – PFQ is a functional networking framework designed for the Linux operating system that allows efficient packets capture/transmission (10G and beyond), in-kernel functional processing and packets steering across sockets/end-points.
- PF_RING – PF_RING is a new type of network socket that dramatically improves the packet capture speed.
- PF_RING ZC (Zero Copy) – PF_RING ZC (Zero Copy) is a flexible packet processing framework that allows you to achieve 1/10 Gbit line rate packet processing (both RX and TX) at any packet size. It implements zero copy operations including patterns for inter-process and inter-VM (KVM) communications.
- PACKET_MMAP/TPACKET/AF_PACKET – It’s fine to use PACKET_MMAP to improve the performance of the capture and transmission process in Linux.
- netmap – netmap is a framework for high speed packet I/O. Together with its companion VALE software switch, it is implemented as a single kernel module and available for FreeBSD, Linux and now also Windows.