Glossary

VPP

Vector Packet Processing (VPP) is an open-source framework that implements high-performance, hardware-accelerated packet processing in software. It uses vectorized methods to process batches of packets to optimize throughput and minimize latency, suitable for demanding network functions. Hedgehog utilizes the open-source VPP data plane, allowing for transparent and standard technology usage.

Vector Packet Processing, or VPP, is a crucial component of modern networking, offering an efficient way to handle high volumes of data packets. Developed within the FD.io project, VPP is distinguished by its vectorized processing technique. This approach processes groups of packets as a batch, contrasting with traditional per-packet processing, which can be less efficient on modern hardware.

VPP's modular design allows users to create and integrate various network functions such as routing, switching, and load balancing. Its architecture is tailored to exploit the capabilities of contemporary CPUs, utilizing Single Instruction, Multiple Data (SIMD) instructions to enhance performance. This makes VPP particularly suitable for data centers, cloud networking, and environments with AI workloads that demand rapid packet processing.

Another key aspect of VPP is its support for virtualization and containerization. It's engineered to function seamlessly within virtual machines and containers, enabling it to provide high-speed packet processing in virtualized infrastructures. As network demands evolve with the growth of cloud computing and AI, VPP's ability to be programmatically controlled through APIs is invaluable for developing adaptable network services.

Despite its technical sophistication, VPP is designed with usability in mind, offering a flexible platform for network engineers and developers to customize and extend its capabilities to meet the diverse requirements of modern networking environments.