Calico Networking with eBPF
summary
Calico adds an eBPF dataplane that compiles C to BPF via clang and uses TC BPF hook plus socket enhancements, with Felix generating per-host bytecode; it replaces kube‑proxy with native service handling and encapsulates cross‑node traffic to preserve source IP and enable direct return. Benchmarks on a 40 Gbps testbed show higher throughput and lower CPU per packet, and service latency stays flat up to 10,000 services. Requires very new kernels, is tech preview (fixed MTU, no IPv6 yet).
AI-written summary · about
chapters (12)
- 0:00Intro
- 0:15Calico Networking with eBPF
- 0:39Calico's Pluggable Dataplane
- 3:33(extended) Berkeley Packet Filter
- 7:02eBPF Features and Uses
- 9:37Investigate and prototype
- 14:04Aside: fun with XDP
- 16:43Comparison
- 20:50Pod-to-pod throughput and CPU
- 22:02Native handling of Services: First packet latency
- 23:34Native handling of Services: More efficient updates
- 25:04Native handling of Services: Direct Server Return
related talks
44mUnderstanding Calico's eBPF data-plane
29mOpening the Black Box: Understanding and Troubleshooting Calico’s eBPF Data Plane
30mAll You Can Eat Networking. Kubernetes Goodness for the Hungriest Workloads
29mCalico/VPP: Using Calico’s Pluggable Dataplanes for Fun and Fast Networking
23mContainer and Kubernetes security policy design: 10 critical best practices
29mBuzzing Across the Cloud Native Landscape with eBPF
23mAn Intro to eBPF with Go : The Foundation of Modern Kubernetes Networking
46mThe eBPF Revolution: A Dynamic Linux Kernel
