Learning eBPF
作者: Liz Rice
语言: 英文
出版年份: 2023
下载链接:
书籍均收集自互联网,仅供学习和研究使用,请莫用于商业用途。谢谢合作。

书籍摘要

作者与出版信息

《Learning eBPF》由 Liz Rice 撰写,于 2023 年由 Vertical Shift Ltd. 出版,O’Reilly Media, Inc. 发行。这本书是针对 eBPF(extended Berkeley Packet Filter)技术的权威指南,旨在帮助读者深入了解 eBPF 的工作原理,并提供编写 eBPF 程序的入门知识。

内容概述

eBPF 是一种强大的内核技术,允许开发者编写可在内核中动态加载和运行的自定义代码,广泛应用于网络、安全、可观测性等领域。本书从 eBPF 的基本概念出发,逐步深入到高级特性,涵盖了 eBPF 的历史、架构、编程模型以及与云原生环境的结合。

第一部分:eBPF 基础

  • 第 1 章:介绍 eBPF 的重要性及其在云原生领域的应用。解释了 eBPF 的起源、从 BPF 到 eBPF 的演变,以及 eBPF 如何通过动态加载程序改变内核行为。
  • 第 2 章:通过 “Hello World” 示例,展示 eBPF 程序和用户空间代码的基本结构。介绍了 eBPF 程序的编写、加载和运行过程。
  • 第 3 章:深入探讨 eBPF 程序的内部结构,包括 eBPF 虚拟机、指令集、寄存器模型以及如何通过 JIT 编译提高性能。

第二部分:eBPF 编程实践

  • 第 4 章:讲解如何通过 bpf() 系统调用与内核交互,包括加载程序、创建和访问 eBPF 映射(maps)。
  • 第 5 章:介绍 CO-RE(Compile Once, Run Everywhere)技术,以及如何通过 BTF(BPF Type Format)实现 eBPF 程序的跨内核版本兼容性。
  • 第 6 章:详细阐述 eBPF 验证器的工作原理,包括如何检查程序的安全性和正确性,以及如何通过验证器日志调试 eBPF 程序。

第三部分:eBPF 应用领域

  • 第 7 章:介绍 eBPF 程序的多种类型及其在内核中的挂载点,包括 kprobes、tracepoints、XDP 等。
  • 第 8 章:聚焦于 eBPF 在网络领域的应用,如负载均衡、防火墙、DDoS 保护以及透明加密等。
  • 第 9 章:探讨 eBPF 在安全领域的应用,包括系统调用限制、内核事件监控以及基于 LSM(Linux Security Module)的安全策略实施。

第四部分:高级主题与未来展望

  • 第 10 章:提供多种编程语言(如 Python、C、Go、Rust)的 eBPF 编程库和框架,帮助读者选择适合自己的开发工具。
  • 第 11 章:展望 eBPF 的未来发展方向,包括在 Windows 系统中的应用、软件供应链安全、硬件设备支持等。

适用读者

本书适合开发者、系统管理员、运维人员以及对 eBPF 技术感兴趣的学者。无论是希望深入了解 eBPF 内部机制的高级用户,还是刚刚接触 eBPF 的初学者,都能从本书中获得有价值的见解。

特色与价值

《Learning eBPF》不仅提供了丰富的代码示例和实践指导,还涵盖了 eBPF 的最新发展动态。通过阅读本书,读者将能够掌握 eBPF 的核心概念,并将其应用于实际的项目开发中,提升系统的性能和安全性。

期待您的支持
捐助本站