When your Kubernetes cluster handles thousands of workloads, every millisecond counts. And that pressure is no longer the exception; it is the norm. According to a recent CNCF survey, 93% of organizations are using, piloting, or evaluating Kubernetes, revealing just how pervasive it has become.
Kubernetes has grown from a promising orchestration tool into the backbone of modern infrastructure. As adoption climbs, so does pressure to keep performance high, networking efficient, and security airtight.
However, widespread adoption brings a difficult reality. As organizations scale thousands of interconnected workloads, traditional networking and security layers begin to strain. Keeping clusters fast, observable, and protected becomes increasingly challenging.
Innovation at the lowest level of the operating system—the kernel—can provide faster networking, deeper system visibility, and stronger security. But developing programs at this level is complex and risky. Teams running large Kubernetes environments need a way to extend the Linux kernel safely and efficiently, without compromising system stability.
Why eBPF Matters for Kubernetes Networking
Enter eBPF (extended Berkeley Packet Filter), a powerful technology that allows small, verified programs to run safely inside the kernel. It gives Kubernetes platforms a way to move critical logic closer to where packets actually flow, providing sharper visibility and earlier control. Instead of relying entirely on user-space components or legacy iptables chains that grow unwieldy at scale, eBPF pushes logic directly into the Linux kernel.
This shift is especially valuable for Kubernetes clusters, where rapid pod churn, heavy service-to-service traffic, and layered security policies constantly push traditional networking to its limits. To understand its impact, let’s start by reviewing what eBPF is and the advantages it brings.
Learn more about how eBPF works in detail on the Tigera eBPF guide.
What is eBPF?
In our recent blog, Zero-Trust with Zero-Friction eBPF in Calico v3.31 we explored how eBPF powers Calico’s modern networking and security innovations. Here, we’re taking a step back to look at where eBPF began and why this technology has become so foundational for today’s Kubernetes platforms.
At its core, eBPF is a technology that makes it possible to develop and run small, specialized programs inside the privileged context of the Linux kernel. Think of the kernel as the central nervous system of the OS, managing all the hardware and software resources. Traditionally, if you wanted to change how the kernel works or access the things it manages, you’d have to modify its source code, recompile it, and reboot—a difficult and risky process that can cause instability.
eBPF flips this model.
An eBPF program extends the functionality of the kernel without having to change the kernel’s source code itself or needing to load kernel modules. Instead, the programs are loaded and run in a sandboxed environment, much like a virtual machine (VM), right inside the kernel. This “sandboxing” ensures that if an eBPF program goes wrong, it won’t crash the entire operating system, thus making it incredibly safe.
Kernel safety first! How eBPF brings secure, sandboxed programmability.
For Kubernetes, this means you can access critical networking and system data safely and efficiently without modifying the Linux kernel itself. eBPF fundamentally changes how network functions are implemented, delivering significant advantages across performance, observability, and security.
Performance Improvements Through eBPF
eBPF enhances Kubernetes networking performance by moving essential packet-handling logic from userspace directly into the kernel. This dramatically reduces latency and eliminates many of the bottlenecks associated with iptables and other legacy networking layers.
Key Performance Advantages
- In-Kernel Routing Bypass: Traditional Kubernetes networking often relies on
iptables(and its modern successor,nftables) to manage traffic and service routing. As the number of services and policies grows, these rulesets become huge, leading to significant performance bottlenecks. eBPF bypasses this complexity by implementing routing and load balancing logic directly in the kernel itself, creating a streamlined path for network packets. - Shorter Data Path: Packet filtering and routing more efficiently right inside the kernel, eBPF shortens the path a packet must travel from its source to its destination, leading to lower latency and faster network performance.
- Reduced NAT Overhead: eBPF facilitates the implementation of advanced load balancing solutions that can avoid Network Address Translation (NAT) overhead, which is often a source of complexity and delay in conventional service meshes.
Observability: Real-Time Insights Without Agents
Unlike traditional observability tools that rely on user-space agents or sidecars, eBPF attaches to kernel events directly. This enables a deep and accurate view of system and network behavior while keeping overhead minimal.
Key Observability Advantages
- Deep, Real-Time Insights: eBPF provides additional, granular metrics and monitoring of network packets, CPU usage, memory, and system calls that are simply not available to traditional userspace tools. This offers real-time insights into a dynamic and ephemeral environment like Kubernetes.
- No Agents or Sidecars: Since eBPF programs run directly in the kernel, they do not need userspace agents and/or sidecars (additional containers) to collect data. This significantly reduces the resource footprint and complexity associated with observability solutions.
Security at the Kernel Layer
By operating inside the kernel, eBPF can enforce security policies at the earliest possible point in the execution path. This allows for more proactive defense than traditional firewalling or runtime monitoring solutions.
Key Security Advantages of eBPF:
- Preemptive Defense: eBPF allows for sophisticated container runtime security enforcement via malware and anomaly detection with probes. It can perform packet inspection and filtering, identifying and stopping malicious packets before they even get too far up the network stack and affect pods or running applications..
- Granular Policy Control: The technology provides the ability to implement more flexible and granular network policies for high-security workloads, controlling traffic flow with unprecedented precision.
eBPF Use Cases
eBPF excels in scenarios that require high efficiency, deep kernel access, and real-time intervention. This makes it an ideal platform for building next-generation infrastructure tools.
| Use Case | Examples | Why eBPF Excels |
|---|---|---|
| High-Performance Networking | Kube-proxy replacement, XDP, L4 routing |
Bypasses slow kernel paths and processes packets near the NIC for lower latency |
| Deep Observability & Tracing | Real-time metrics, Application tracing (L7 visibility without sidecars), System profiling | Collects granular data in-kernel without relying on agents |
| Runtime Security | Intrusion prevention, syscall blocking, container escape detection | Intercepts malicious behavior before it reaches user space |
| Custom Kernel Logic | Packet filters, flow control, telemetry | Allows safe kernel extension without writing custom modules |
When Not to Use eBPF:
eBPF is powerful, but not always the right tool. It has clear limitations that teams should consider.
When eBPF May Not Be Ideal
- Simple Firewall Rules: For basic port or
NATrules,iptablesornftablesmay be simpler and easier to maintain. - Very Complex Logic: eBPF programs have limits on instruction size and stack depth. If the kernel verifier cannot guarantee safety, it will reject the program.
- Non-Linux Systems: eBPF is Linux-specific, so alternative OS-native tools are required for Windows or other environments.
Bottom Line
Use eBPF for speed, scale, and deep, low-overhead visibility or control. For simple needs or non-Linux platforms, traditional tools are often sufficient. If you need speed, scale, and deep, low-overhead visibility or control, eBPF is the definitive choice. If your needs are simple or limited to non-Linux platforms, traditional tools may still be appropriate.
How Calico Uses eBPF
Building on eBPF’s capabilities, Calico leverages the eBPF platform to offer superior Kubernetes networking, network security, and observability without adding extra complexity. In Calico’s eBPF mode, key features translate kernel-level efficiency into tangible benefits for your cluster:
Examples of Calico’s eBPF Capabilities
- eXpress Data Path (XDP):
Processes packets at the earliest point in the network driver, reducing latency and CPU usage. Helps mitigate DDoS attacks by intercepting malicious packets before they move through the stack. - Preserving Source IP & Direct Server Return:
Custom eBPF routing logic maintains the original source IP and enables return traffic to bypass the ingress node, improving accuracy and reducing hops. NetworkPolicyAcceleration:
Policies are compiled into eBPF programs and loaded directly into the kernel, enabling faster enforcement and more granular control.
Learn how to design, deploy, and secure Kubernetes networks with Calico eBPF with our on-demand workshop, Kubernetes and Container Networking with Calico eBPF for Large-Scale Single and Multi-Cluster Environments. Watch now and get hands-on guidance from Calico experts. Access the on-demand workshop here
Modern Kubernetes Needs a Modern Data Plane
As Kubernetes environments grow in scale and complexity, the data plane becomes a defining factor in performance, security, and operational simplicity. eBPF offers a fundamentally better approach by moving critical networking, observability, and security functions into the kernel where they operate with maximum efficiency.
Calico extends these capabilities even further with a production-ready eBPF data plane designed for high-performance Kubernetes clusters. Teams gain lower latency, stronger security boundaries, and deeper visibility—all without adding operational overhead.
Explore eBPF Further with Calico
Ready to take your Kubernetes networking to the next level? Check out these resources to learn more and get hands-on:
- Enable eBPF Mode in Calico: Learn how to enable eBPF mode and start leveraging kernel-level performance and visibility.
- Install eBPF with Calico: Step-by-step installation guide to get eBPF running in your cluster.
- Request a Demo: See Calico in action and discover how eBPF can supercharge your Kubernetes networking, observability, and security.

