Polycube

ยท 148 words ยท 1 minute read

๐Ÿ”ท Polycube: Open-Source Network Framework ๐Ÿ”—

Polycube is an open-source software framework that provides fast and lightweight network functions such as:

  • Bridges
  • Routers
  • Firewalls
  • Other network services

Polycube services, called cubes, can be composed to build arbitrary service chains, enabling custom network connectivity for:

  • Namespaces
  • Containers
  • Virtual machines (VMs)
  • Physical hosts

๐Ÿ›  My Work in Brief ๐Ÿ”—

๐Ÿ“Š Introducing Custom Metrics ๐Ÿ”—

I focused on implementing custom metrics, defined in the YANG model of each service. These metrics are collected and exposed via the /metrics endpoint, which is later read by Prometheus.

Example metric:

  • How many IP addresses are set in the routing table of a given router (e.g., R1).

๐Ÿš€ Technologies & Skills Gained ๐Ÿ”—

During this work, I gained expertise in:

  • Observability: Prometheus, Grafana
  • Networking & Frameworks: Polycube, YANG, eBPF
  • Programming: Improved C++ skills, using:
    • prometheus-cpp (for Prometheus integration)
    • jsoncons (for JSON handling)
  • Containerization & Scripting: Docker, Bash, REST APIs