Generated by GPT-5-mini| eBPF | |
|---|---|
![]() | |
| Name | eBPF |
| Full name | extended Berkeley Packet Filter |
| Initial release | 2014 |
| Developer | Linux kernel community |
| Programming language | C, assembly, Rust |
| License | GNU General Public License |
| Operating system | Linux |
eBPF eBPF is an in-kernel virtual machine and execution environment enabling programmable, sandboxed bytecode to run in the Linux kernel for observability, networking, and security tasks. It integrates with kernel subsystems such as Netfilter, XDP, and cgroups and is supported by a broad ecosystem including projects from Google, Facebook, Netflix, Microsoft, and the Cloud Native Computing Foundation. eBPF programs are commonly compiled from C or Rust into bytecode that the kernel verifies and JIT-compiles for performance.
eBPF provides a safe, efficient mechanism to extend kernel behavior without adding kernel modules, enabling dynamic instrumentation akin to DTrace, SystemTap, and kprobes. It leverages verifier-based safety checks and a typed, map-backed data model compatible with Linux Security Modules and SELinux policies. Widely used in production by organizations such as Amazon, Alibaba Group, Twitter, Uber, and Pinterest, eBPF facilitates programmable packet processing, tracing, and policy enforcement across distributed systems like Kubernetes and OpenStack.
The eBPF architecture centers on the kernel-side virtual machine, a bytecode verifier, and runtime helpers exposed by kernel subsystems like XDP and tc (Linux). Core components include eBPF maps for state sharing, perf events for tracing, and map-in-map support used by platforms like Cilium and Calico. Toolchains interact through ELF loaders and BPF system calls; userspace utilities such as bpftool, bcc (software), and bpftrace bridge compilation, loading, and management. JIT backends target architectures including x86-64, ARM64, s390x, and PowerPC to optimize execution.
eBPF powers a spectrum of applications: high-performance packet filtering via XDP for content-delivery networks like Akamai; observability pipelines used by Datadog, New Relic, Splunk, and Elastic (company); service mesh datapath acceleration in projects like Istio, Linkerd, and Envoy (software) integration; and security enforcement in products by CrowdStrike, Palo Alto Networks, and Tetragon. It enables load balancing and service discovery patterns used by HAProxy and NGINX variants, supports protocol parsing for QUIC and HTTP/3, and assists incident response workflows practiced at GitHub, GitLab, and Shopify.
Development ecosystems include compilers, debuggers, and frameworks such as LLVM, Clang, GCC, Rust Foundation, and language bindings maintained by Google Cloud and Red Hat. Tooling spans bpftool from the Linux kernel community, bcc (software) from iovisor, and observability DSLs like bpftrace influenced by awk and DTrace. CI/CD and testing integrate with Jenkins, GitHub Actions, GitLab CI/CD, and container platforms like Docker and Podman for reproducible builds. Commercial vendors including Red Hat, SUSE, Canonical, and Oracle Corporation ship kernel support and packaged tools.
Security relies on a verifier that enforces memory safety and bounded loops, supplemented by kernel hardening initiatives from Linux kernel community maintainers and contributors such as Linus Torvalds and Greg Kroah-Hartman. eBPF supports sandboxed helpers to access kernel functionality without exposing raw pointers, influencing security products by Fortinet and McAfee. Threat models consider privilege escalation, side-channel attacks, and information leaks addressed via mitigations in Spectre and Meltdown hardening efforts, and collaboration among academics from MIT, Stanford University, Carnegie Mellon University, and ETH Zurich has driven formal analyses.
JIT compilation and map optimizations yield low-latency packet processing comparable to DPDK in many scenarios, and projects like Katran and BPF Compiler Collection demonstrate scalable throughput. Limitations include verifier complexity, limited stack size, and constrained UI for large stateful workloads; these trade-offs are navigated by using user-space offload frameworks like eBPF offload initiatives with vendors such as Intel, NVIDIA, and Mellanox Technologies. Real-world performance studies from Facebook Research, Google Research, and Netflix TechBlog compare eBPF against kernel modules, user-space packet frameworks, and hardware offloads.
Origins trace to the Berkeley Packet Filter used in tcpdump and expanded by research contributions from Iovisor and companies like Facebook, Google, and Netflix in the 2010s. Standardization and ecosystem growth accelerated through collaborations within the Linux Foundation and adoption by cloud providers including Google Cloud Platform, Amazon Web Services, Microsoft Azure, and Alibaba Cloud. Key releases and milestones were driven by kernel maintainers and contributors across organizations such as Red Hat, SUSE, Canonical, and Oracle Corporation, while conferences like KubeCon, Linux Plumbers Conference, USENIX, Netdev, and OSSCon facilitated community exchange.