SPDK / 用户态存储栈:从 Reactor 到 NVMe-oF
补齐站内 NVMe 协议与 O_DIRECT/io_uring 组合路径之上的用户态轮询存储层:reactor、绑盘、NVMe 驱动、bdev、NVMe-oF 与 vhost,并以排障与选型收束。
Linux 内核、存储与网络、可观测性、系统架构与大模型基础设施的工程笔记:机制拆解、踩坑复盘与可核对证据,少空谈。
共 7 篇文章 · 返回首页
补齐站内 NVMe 协议与 O_DIRECT/io_uring 组合路径之上的用户态轮询存储层:reactor、绑盘、NVMe 驱动、bdev、NVMe-oF 与 vhost,并以排障与选型收束。
定位 SPDK 相对内核块层、O_DIRECT+io_uring 与 NVMe 协议百科的生态位;钉住 I/O 路径、线程模型、设备独占、块抽象、远端传输五条坐标系,并给出 16 篇阅读路线。
拆解 SPDK NVMe-oF target:lib/nvmf 中 tgt/subsystem/listener/namespace 与 bdev 的映射;说明 poll group 如何驱动 I/O,以及 app/nvmf_tgt 相对库的角色。
对比 SPDK NVMe-oF 的 RDMA 与 TCP 传输约束;说明默认轮询模型,并依据 v26.01 changelog 与官方 Interrupt Mode 文档钉住低负载 RDMA/TCP 中断驱动模式的适用边界。
对照 SPDK NVMe-oF host 路径与 Linux 内核 nvme-rdma/nvme-tcp initiator;厘清互通边界、bdev_nvme 附着方式,并在无伪造数字前提下说明多路径与 ANA 的谨慎用法。
把 SPDK 常见症状映射到绑盘/环境、reactor CPU、bdev 队列、传输超时、多路径五轴;给出可核对清单与观测入口,不虚构延迟数字与 RPC dump。
存储接口(Storage Interface)是连接主机与存储介质的桥梁,其协议设计直接决定了数据访问的延迟、吞吐量和并发能力。从早期的并行接口到现代的非易失性内存快捷通道(Non-Volatile Memory Express,NVMe),存储协议经历了数十年的演进。本文将系统梳理存储接口的发展历程,深入剖析 NVM…