如果我理解得很好,有不同的 ebpf 加载器:
- bpf_load.c 进入内核源代码
- libbpf
- bpftool
- tc
- ... <-- 其他人?
它们之间的主要区别是什么?它们总是可以互换吗?我应该总是更喜欢 libbpf 吗?
如果我理解得很好,有不同的 ebpf 加载器:
它们之间的主要区别是什么?它们总是可以互换吗?我应该总是更喜欢 libbpf 吗?
在他们的最新版本中,bpftool、bcc和bpf_load.c
使用 libbpf。因此tc
,iproute2 使用自己的 BPF 系统调用包装器。
libbpf 和 iproute2 自己的包装器之间的 API 可能存在差异。您应该更喜欢 libbpf,因为它正在成为标准(我认为它也计划在 iproute2 中使用它)。