缺点是由于是仿真执行,需要分配额外的套接字缓冲区(SKB),导致处理性能下降,跟 native 模式在10倍左右的差距。对于在生产环境使用 XDP,推荐要么选择 native 要么选择 offloaded 模式。这两种模式需要网卡驱动的支... 图中有个 check_taps 框,但其实并没有这个方法:receive_skb() 会轮询所有的 socket tap,将包放到正确的 tap 设备的缓冲区。tap 设备监听的是二层协议(L2 protocols)。如果 tap 设备存在,它就可以操作这个 skb 了...