知识卡片
DPDK只覆盖网络存储优化的网络半边
内容
DPDK的能力边界严格停在OSI第2层(链路层)和第3层(IP层),没有TCP/UDP这样的第4层协议,更不用说存储设备驱动。把DPDK直接套用到网络存储系统是不完整的——它能加速网卡收发包,但存储系统的写请求路径还要经过TCP/IP协议栈和后端存储驱动两段,若这两段仍留在内核态,用户态和内核态间的数据拷贝依然存在,网络段省下的开销很快在协议栈或存储驱动上补上。因此把DPDK用进存储系统必须额外配上用户态TCP/IP栈和用户态存储驱动,三段缺一不可。
参考来源
《深入浅出DPDK》第15章《基于DPDK的存储软件优化》