Skip to main navigation Skip to search Skip to main content

High-Speed Software Data Plane via Vectorized Packet Processing

  • Cisco Systems
  • Telecom Paris
  • CNIT

Research output: Contribution to journal › Article › peer-review

84 Citations (Scopus)

Abstract

In the last decade, a number of frameworks started to appear that implement, directly in userspace with kernel-bypass mode, high-speed software data plane functionalities on commodity hardware. Vector Packet Processor (VPP) is one of such frameworks, representing an interesting point in the design space in that it offers, in userspace networking, the flexibility of a modular router (Click and variants), with the benefits provided by techniques such as batch processing that have become commonplace in high-speed networking stacks (such as netmap or DPDK). Similarly to Click, VPP lets users arrange functions as a processing graph, providing a full-blown stack of network functions. However, unlike Click, where the whole tree is traversed for each packet, in VPP each traversed node processes all packets in the batch (called vector) before moving to the next node. This design choice enables several code optimizations that greatly improve the achievable processing throughput. This article introduces the main VPP concepts and architecture, and experimentally evaluates the impact of design choices (such as batch packet processing) on performance.

Original languageEnglish
Article number8535089
Pages (from-to)97-103
Number of pages7
JournalIEEE Communications Magazine
Volume56
Issue number12
DOIs
Publication statusPublished - 1 Dec 2018

Fingerprint

Dive into the research topics of 'High-Speed Software Data Plane via Vectorized Packet Processing'. Together they form a unique fingerprint.

Cite this