Get up to speed with this demo from Cisco’s Jérôme Tollet at FOSDEM.


Vector packet processing (VPP) is a fast network data plane, part of the Linux Foundation project. It’s designed on top of the data plane development kit (DPDK) to run network workloads at breakneck speeds using vector packet processing technology, or what Cisco’s Jérôme Tollet calls its “secret sauce.”

Tollet offered an introduction — and took the risk of setting up a live container demo — at his recent talk at the Free and Open Source Software Developers’ European Meeting, aka FOSDEM.

Networking-VPP is a VPP network driver for Neutron designed to take advantage of VPP’s performance. VPP brings the performance; Networking-VPP brings the resiliency, simplicity, security and scalability required to make it useful in OpenStack environments.

Tollet talks about what VPP is and why it’s a good choice for network workloads, particularly demanding ones such as network functions virtualization (NFV) applications; how the ML2 driver is put together and why you can trust it to hold up in cloud environments (and even debug it); and the performance results when the two are put together in a real-world OpenStack deployment.

Exactly how fast are we talking? Thanks to the “cache effect” of VPP, Tollet showed a graph with speeds with IpV4 and IPV6 routing showing huge linear upticks — on the order of 12 million packets per second on two IPV6 cores. “That is pretty cool,” he pronounced, heading into the demo, which you can catch at 13:20 mark of the video.

The demo shows two “regular Linux” containers in a VM, each with an IPV4 address, then he connects them with an VPP address and then runs an IPF client and an IPF server between them. They reach a speed of 36-37 gigabits per second, which is “pretty cool, but what’s actually important is the vector size,” he adds. The vector size reached in the demo? 6.90 for the tab zero output and the TX as well.

All of that is useless, he says, if it’s not integrated somewhere — which is where OpenStack comes in as an ML2 driver.  Designed to support NFV in the beginning,  it now supports virtual LAN, virtual extensible LAN, “many security features” (including regular OpenStack security groups plus features like JSON web-token certificates), as well as layer 2 and layer 3.

Catch his entire 26-minute presentation on YouTube or below.

Cover Photo // CC BY NC