【快速入门必读贴】 百页 PPT BPF 技术全览 - 深入浅出 BPF 技术
本文从什么是 eBPF,eBPF 的应用场景和工作原理入手,然后介绍了使用 Python/C/Go 开发 eBPF 程序的生态环境和使用样例,最后介绍了 eBPF 未来的发展趋势
eBPF 指令集、Verifier、Map、BTF、CO-RE、JIT 与程序模型
XDP、TC、netkit、veth、Cilium、AF_XDP 与内核网络栈
kprobe、tracepoint、uprobe、bpftrace、Ftrace 与性能分析
libbpf、Aya/Rust、Go、编译器与工具链、开发环境
Linux 内核机制、新版本特性、LPC/LSFMM 进展与系统排障
LSM BPF、运行时安全、签名、攻防,以及 sched_ext 调度器
本文从什么是 eBPF,eBPF 的应用场景和工作原理入手,然后介绍了使用 Python/C/Go 开发 eBPF 程序的生态环境和使用样例,最后介绍了 eBPF 未来的发展趋势
容器通信时,包跨网络命名空间要多排一次队。Isovalent 的 Borkmann 与 Chaignon 在 eBPF'26 论文中介绍 netkit:用 BPF 把包直接送过命名空间边界,让容器通信追平进程间通信。
在第 3 部分中,我们介绍了构建 Cloudflare 基于 eBPF 的网络数据路径所需的架构转变与上游合入工作。这些代码一旦合入,把数据路径移入内核就改变了运维边界。当每秒数百万个报文在驱动中经由 XDP 被直接丢弃、 …
想给每一个系统调用都挂上延时统计时,过去常见两条路:要么写几百份几乎一样的 BPF 程序,要么退回 kprobe 多重挂接——安装灵活,但热路径往往更贵。Jiri Olsa 推动的 tracing_multi 改变了这件事:一条程序、 …
在第 1 部分中,我们说明了 Cloudflare 为何把 eBPF 当作一个平台来押注,而不是一堆单点方案。在第 2 部分中,我们考察了标准 Linux 网络 API 无法支撑 Cloudflare 需求的那些地方,以及团队为填补这些缺口 …
每年秋天,内核社区最核心的开发者都会聚到一起,把接下来一两年要落地的东西摊开来吵一遍。今年的 Linux Plumbers Conference 定在 10 月 5 日到 7 日,捷克布拉格。
在第 1 部分中,我们说明了 Cloudflare 为何把 eBPF 当作一个平台来押注,而不是一堆单点方案。本文将深入具体细节:标准 Linux 网络 API 无法支撑 Cloudflare 需求的那些地方,以及团队为填补这些缺口所构建的 …
Cloudflare 于 2016 年末开始探索 eBPF/XDP,2017 年中启动负载均衡原型。首次生产部署是在 2018 年 11 月:我们上线了基于 XDP 的包过滤(l4drop),用于 L3/L4 DDoS 缓解。它取代了此前绑 …