arXiv · 2505.05996
P4Kube: In-Network Load Balancer for Kubernetes
Abstract
Kubernetes Services such as LoadBalancer and NodePort expose applications running on pods within a Kubernetes cluster to external users. While the LoadBalancer Service requires an external load-balancing middleware, its alternative, NodePort Service, adds additional hops on the path between clients and the worker nodes. In this paper, we propose P4Kube, a framework consisting of a P4 data plane program and a Kubernetes plugin. Our solution effectively performs load balancing of requests to the worker nodes of a cluster based on the number of running replicas. In P4Kube, the data packets completely bypass the system's control plane. Unlike the previous work, to update its state, the P4Kube data plane works directly with the Kubernetes control plane without any involvement of the network control plane. Our experiments show up to 50% improvement in the average request time to the cluster compared to conventional approaches.
Explore related subjects
Keep this discovery
Explore connections, maps & timelines
Garegin Grigoryan, Kevin Penkowski, Minseok Kwon. 2025-05-09. P4Kube: In-Network Load Balancer for Kubernetes. https://doi.org/10.1109/ccnc54725.2025.10976037
Cite the original work for its findings. Save a collection to share your selection of sources.