Ceph开发每周谈 Vol 68 | Userspace RDMA built on DPDK

2017年04月 · 麦子迈

这是Ceph开发每周谈的第六十八篇文章,记录从17年3月27号到17年4月2号的社区开发情况。笔者从前年开始做Ceph的技术模块分析到今年中告一段落,想必有挺多人期待下一篇Ceph技术分析。考虑到Ceph的发展已经从前年的一穷二白到现在的如火如荼,但对于社区的方向和实况仍有所脱节,笔者考虑开始Ceph开发每周谈这个系列。每篇文章都会综述上周技术更新,围绕几个热点进行深度解析,如果正好有产业届新闻的话就进行解读,最后有读者反馈问题的话并且值得一聊的话,就附上答疑部分。

  • 一句话消息

OpenFabrics Slides: https://www.openfabrics.org/index.php/abstracts-agenda.html

  • Userspace RDMA built on DPDK

DPDK 可以利用 UIO/VFIO 技术将内核的以太网设备映射到用户态,主要提供了批量包处理,NUMA 和 Hugepage 利用,TCP/IP 卸载到网卡以及 NIC 提供的包过滤能力,但是不具备提供 RDMA 接口和网络/传输协议逻辑。

而 Userspace RDMA 就基于 DPDK 实现了 iWARP DDP 和 RDMA 的逻辑,目前在传输层主要采用 UDP 为了简单方便。在内核上仍然需要 rdma-cm, cq 来提供基本的 RDMA 库方便使用,而包仍然利用 DPDK KNI 从内核过渡到用户态。

vol68-1


urdma 主要与 softiwarp pk,核心是使用 DPDK 来替代内核态实现 iWARP 逻辑,比较遗憾的是仍然使用低效的 DPDK KNI 实现包传递。

vol68-2

可以看到,在延迟上可以比 softiwarp 更低。该研究来自于 IBM Zurich 研究中心,