contivpp.io

Contiv-VPP is a Kubernetes CNI plugin that employs a programmable CNF vSwitch based on FD.io/VPP offering feature-rich, high-performance cloud native networking and services.

Challenges

Kubernetes defines the Container Network Interface (CNI) – an API for network plugins providing connectivity between PODs. That’s worked well so far, but as cloud native deployments grow and more services are added, new solutions are needed. First, there is currently no API to map Kubernetes services and policies to network configurations so it’s up to network plugin implementers to figure that out. A standard suite of APIs based on open source code would solve that problem. Second, the current use of kube-proxy (with iptables) limits network performance, scale and feature updates required to meet new service and policy demands. Moving all network functions (including data plane and control plane) to user space increases performance, scale, reliability and innovation velocity.

Img

Contiv-VPP Highlights

  • Kubernetes services and policies traffic mapped to the FD.io/VPP data plane
  • Automatically reprograms FD.io/VPP data plane upon service and policy updates received over Kubernetes APIs
  • Accomodates high performance memif interfaces for inter-VPP communications along with existing veth/tap interfaces
  • Observability using Prometheus and VPP trace functions
  • Core component is the programmable CNF vSwitch built from open source FD.io/VPP and Ligato VPP Agent/APIs
  • Full Kubernetes CNI support
  • IPv6/SRv6 support
  • Service Function Chaining
  • Runs in user space
  • 100% open source


Check it out!