Born as research project years ago, Polycube is an open source software framework that provides fast and lightweight network functions such as bridges, routers, firewalls, and others.
It exploits both eBPF and Linux Kernel to perform Virtual Network Functions extremely fast and optimized. It is written in C++.
My contribution consists in:
- lighten the Docker image built (from 2.7 GB to 260 MB)
- extending Dynamic Monitor (Dynmon), a service to dynamically inject user eBPF code, monitor the attached network interface and export metrics
- addressing packet timestamp problem
- introducing newest kernel structures support
- optimize and extend the Firewall service for batch operations
- writing a flexible Profiler framework
- completing documentation and tests
For more information, please visit the project website (Code tag above 🔝)