DPDK est un framework de traitement de paquets et une bibliothèque réseau de contournement du noyau conçue pour accélérer les performances du plan de données réseau. Il fournit une pile réseau en espace utilisateur qui déplace les données réseau directement de la carte d'interface réseau vers l'espace utilisateur, éliminant la surcharge du noyau du système d'exploitation pour atteindre un débit élevé et une faible latence.
Les fonctionnalités principales de dpdk/dpdk sont : Packet Processing Frameworks, Poll-Mode Drivers, Network Stack Bypasses, User-Space Network Interface Access, High-Performance Packet Processing, User-Space Packet Processing, Direct I/O Access, User-Space Implementations.
Les alternatives open-source à dpdk/dpdk incluent : f-stack/f-stack — f-stack is a kernel-bypass framework and user-space TCP/IP stack designed to increase packet processing speeds and… openvswitch/ovs — Open vSwitch is a software-defined network switch and high-performance data plane engine. It functions as a virtual… cloudius-systems/osv — OSV is a unikernel operating system and cloud-native execution environment designed to run as a secure microVM on… fortra/impacket — Impacket is a collection of Python classes designed for the construction, manipulation, and analysis of low-level… game1024/openspeedy — OpenSpeedy is a network acceleration utility designed to optimize data transmission between applications and remote… cilium/cilium — Cilium is a networking, security, and observability platform for containerized environments that leverages…
f-stack is a kernel-bypass framework and user-space TCP/IP stack designed to increase packet processing speeds and overall throughput. It utilizes DPDK to route network traffic directly to user space and integrates a transplanted FreeBSD network stack to handle transport and network layer protocols outside of the host operating system. The project provides a socket API compatibility layer that allows standard network applications to run on a high-performance backend without requiring code changes. It also features a coroutine-based network API and micro-threading interface to manage asynchron
Open vSwitch is a software-defined network switch and high-performance data plane engine. It functions as a virtual layer 2 switch and network orchestrator, implementing the OpenFlow protocol to decouple the control plane from the data plane for programmable network forwarding. The project distinguishes itself through a userspace-kernel datapath split and the use of poll-mode drivers for kernel-bypass acceleration. It provides a network tunneling gateway to extend virtual networks across physical hosts and utilizes a transactional, schema-based configuration database with state replication fo
OSV is a unikernel operating system and cloud-native execution environment designed to run as a secure microVM on hypervisors such as KVM, Firecracker, Xen, and VMware. It functions as a Linux binary compatible runtime, allowing unmodified Linux binaries to be executed as secure microVMs without requiring recompilation. The project distinguishes itself through its ability to package applications into minimal bootable images and its provide of a virtual machine management API. This REST interface enables remote monitoring of system health, management of execution traces, and control over guest
Impacket is a collection of Python classes designed for the construction, manipulation, and analysis of low-level network packets and services. It functions as a framework for building custom network tools, providing a programmatic interface to interact with communication protocols and service architectures. The library provides primitives for managing authentication, session state, and remote procedure calls within network environments. By offering a modular class hierarchy, it allows for the assembly of network packets and the implementation of specialized communication stacks. The project