0
BPF has some wow-presentations, showing how it enables new performance
measuring and tracing. Brendan Gregg has a whole bunch, for
example. But I don’t think’s it’s very well explained just why BPF is
such a big deal.
Most of the demos are essentially cool and useful looking tools, with
an “oh by the way BPF made this happen”. Similar to how it’s common to
see announcements about some software, where the very title of the
announcement ends with “written in Go”. It gives a vibe of “so what?”.
If you’re interested in system tooling and configuration, and aren’t
already aware of BPF, then this is for you.
I’m not an expert on BPF, but this will hopefully help someone else
bootstrap faster.
bpftrace
bpftrace is really cool. Clearly it’s inspired by
dtrace. But one should not mistake bpftrace for
BPF. bpftrace is only yet another tool that uses BPF, albeit one that
allows you to create trace points in a domain specific
language.
This is not the full power of BPF. It’s not at all the big picture.
BPF and configs
Let’s take packet filtering as an example. Once upon a time in Linux
there was ipfwadm
. I Continue reading