This repository was archived by the owner on Feb 24, 2026. It is now read-only.
IPDK v23.07 Release
Kubernetes Networking Infrastructure Offload
- Support for Kubernetes Container Network Interface (CNI) to enable pods to
send/receive traffic. - Intra Node L3 Forwarding to enable pod to pod communication, on the same node,
via CNI interfaces. - Service Load Balancing within the node to allow multiple pods on same node to
act as end points providing any application service. - Bi-directional Auto Learning and Flow Pinning (a.k.a Connection Tracking),
used with load balancing, to allow consistent end point pod selection, once it
has been selected for the first packet. - DNS service provided by Core DNS pods to other pods.
- Support for TLS traffic between DNS server pods and Kube API.
K8s Infra Components
The following are the main components of K8s Infra Offload software.
K8s Infra Manager
- The Infra Manager is deployed as a core kube-system pod along with other
kube-system pods. - This components acts as a gRPC server for K8s Infra Agent and receives K8s
configurations from the Infra Agent over the gRPC channel. - It acts as a client for the P4 Runtime Server (infrap4d) and updates the
K8s Pipeline tables (Data Plane), over another gRPC channel, to apply K8s
configurations.
K8s Infra Agent
- The Infra Agent is also deployed as a core kube-system pod along with other
kube-system pods. - It receives all CNI requests from the Calico plug-in, configures pod system
files and adds interaces to be pods. And finally, it relays these
configurations to the Infra Manager. - It also acts as a K8s client for K8s API server and receives all configuration
changes and passes them on to the Infra Manager component. - It interacts with Infra Manager over gRPC channel to pass all the
configurations.
K8s P4 Pipeline
- The K8s P4 pipeline is a pre-built component that can be loaded on the P4-DPDK
dataplane. - It comes along with the source P4 code for user to understand the packet
processing pipeline. - Offloading kube-proxy functionality, providing pod to pod L3 connectivity,
local node gateway routing, load balancing & connection tracking, is all
implemented within this pipeline. - It exposes p4 tables that can be modified at runtime with packet processing
rules. These rules are for managing pkt forwarding, service groups, service
end points, etc.