This tool reads a configuration file, checks it for syntax and semantic correctness, and then reconciles a running VPP daemon with its configuration. It is meant to be re-entrant and stateless. The tool connects to the VPP API and creates/removes all of the configuration in a minimally intrusive way.
NOTE This code is under development, and probably won't work well until this note is removed. If you're interested in helping, reach out to <pim at ipng dot ch> to discuss options.
FD.io's Vector Packet Processor (VPP) is a fast, scalable layer 2-4 multi-platform network stack. It runs in Linux Userspace on multiple architectures including x86, ARM, and Power architectures.
VPP's high performance network stack is quickly becoming the network stack of choice for applications around the world.
VPP is continually being enhanced through the extensive use of plugins. The Data Plane Development Kit (DPDK) is a great example of this. It provides some important features and drivers for VPP.
VPP supports integration with OpenStack and Kubernetes. Network management features include configuration, counters, sampling and more. For developers, VPP includes high-performance event-logging, and multiple kinds of packet tracing. Development debug images include complete symbol tables, and extensive consistency checking.
Some VPP Use-cases include vSwitches, vRouters, Gateways, Firewalls and Load-Balancers, to name a few.
In this talk, Pim will demonstrate high performance routing using open-source VPP and its underlying Data Plane Development Kit. This talk highlights the authors work on integrating the Linux Control Plane which makes BGP, OSPF, etc available with VPP. We’ll then turn to a popular DPDK based network load testing tool TRex, and discuss performance benchmarking results from the field using the author’s AS8298 as a practical example.
About the speakers
Pim van Pelt is known for SixXS, a global IPv6 tunnelbroker which ran from 2001-2017. In this journey, he found that IPv4/IPv6 routing at scale (many interfaces, many prefixes or many packets/sec) was better handled in user space rather than the kernel (both for FreeBSD and Linux). Today, Pim operates IPng Networks, a small ISP in Switzerland, using AMD64 based routers running VPP, which will give silicon-based routers a run for their money.
vNOG blog: https://virtualnog.net/posts/2022-06-24-vpp/
In this talk, Pim will demonstrate high performance routing using open-source VPP and its underlying Data Plane Development Kit. This talk highlights the authors work on integrating the Linux Control Plane which makes BGP, OSPF, etc available with VPP, including smart ways to automate configuration of the router's data- and controlplane layers.
We’ll then turn to a popular DPDK based network load testing tool TRex, and discuss performance benchmarking results from the field using the author’s AS8298 as a practical example. This will demonstrate that a fully open source router can seriously compete with silicon based router vendors.