Fast IPv6-only Networking for Containers Based on BPF and XDP - Thomas Graf, Cisco

No ratings

Presented at LinuxCon 2016 by

We present a new open source project which provides IPv6 networking for Linux Containers by generating programs for each individual container on the fly and then runs them as JITed BPF code in the kernel. By generating and compiling the code, the program is reduced to the minimally required feature set and then heavily optimised by the compiler as parameters become plain variables. The upcoming addition of the Express Data Plane (XDP) to the kernel will make this approach even more efficient as the programs will get invoked directly from the network driver. Using BPF, we have implemented a full IPv6 routing Data plane with identifier/locator addressing logic, a connection tracker tailored to Containers which is significantly faster than existing solutions and NAT46 translation logic to provide connectivity to legacy IPv4 endpoints.