1、内核态解析:
1.1、bpf内核框架
2、用户态(前端)解析:
2.1、bcc
3、参考资料:
3.1、Berkeley Packet Filter (BPF) (Kernel Document)
3.2、BPF and XDP Reference Guide
3.4、bcc/BPF Tool End-User Tutorial
3.5、bcc Python Developer’s Tutorial
3.9、Linux 中的 DTrace :BPF 进入 4.9 内核
3.10、Linux内核工程导论——网络:Filter(LSF、BPF、eBPF)
3.12、底层虚拟机(LLVM)中间语言(IR)基本语法简介
因为bpf功能在4.9以后的kernel才完善,本文采用kernel 4.9的代码进行解析。