我正在玩经典的BPF
来过滤netlink
套接字上的内容,发现没有简单的统计信息可用来验证数据包是否已被丢弃或允许。
所以我查看了https://elixir.bootlin.com/linux/latest/source/net/core/filter.c#L90,是的,它执行了过滤器bpf程序,但是没有更新任何会在用户空间(例如,通过/ proc FS)告诉我的信息,即过滤器是否丢弃了数据包或不。这样可以简化cBPF过滤器的调试。
是预期的,还是我缺少了什么?
答案 0 :(得分:1)
据我所知,您是对的,没有附加到套接字上的BPF程序相关的统计信息。如果您想要这样的统计信息,您将不得不使用eBPF程序和地图自己计算它们。
据我所知,XDP挂钩是统计数据附带的唯一挂钩(通过ethtool)。