You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

AF_XDP的NLM_F_DUMP是否支持过滤?求技术确认

AF_XDP套接字(XSK)的SOCK_DIAG_BY_FAMILY过滤支持确认
  • 我通过NETLINK_INET_DIAG类型的netlink套接字,针对AF_XDP协议族发送带DLM_F_DUMP的SOCK_DIAG_BY_FAMILY请求,已能正常获取所有已打开XSK的完整Dump,基础功能无异常。
  • 目前需要在特定场景下查询单个XSK:类似TCP套接字可通过填充请求报文中的非零字段开启过滤,但我尝试用inode号和/或套接字cookie对XSK进行过滤时,请求被忽略,仍返回完整的Dump结果。
  • 查看Linux内核v6.2版本xsk_diag.c文件中的xsk_diag_dump函数实现后,我认为当前内核并未实现XSK Dump的过滤逻辑。

序列化XSK Dump请求的代码

type xdpSocketRequest struct {
    Family   uint8
    Protocol uint8
    pad      uint16
    Ino      uint32
    Show     uint32
    Cookie   [2]uint32
}

func (r *xdpSocketRequest) Serialize() []byte {
    b := writeBuffer{Bytes: make([]byte, sizeofSocketRequest)}
    b.Write(r.Family)
    b.Write(r.Protocol)
    native.PutUint16(b.Next(2), r.pad)
    native.PutUint32(b.Next(4), r.Ino)
    native.PutUint32(b.Next(4), r.Show)
    native.PutUint32(b.Next(4), r.Cookie[0])
    native.PutUint32(b.Next(4), r.Cookie[1])
    return b.Bytes
}

想请技术同行确认或纠正我的理解:当前Linux内核是否完全不支持XSK Dump的过滤功能?


内容的提问来源于stack exchange,提问作者TheDiveO

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.31 01:39:40