Ceph开发每周谈Vol 91 | NVME Over Fibre Channel(SNIA SDC 2017)

2017年09月 · 麦子迈

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

一句话消息

FC-NVME进展

闪存优化是前两年的技术热点,从今年起,在块存储上基本都是 NVME Over Fabric 的话题。NVME Over Fabric 从去年开始在 Linux 内核上进了第一个版本后,一直都是 RDMA 的方案,不管是 RoCE 还是 Infiniband 后端。今年 NVME Over FC 也已经进入内核,大量存储厂商其实更青睐于 FC 方式。

众所周知,FC 作为一个无损网络方案一直应用于 SAN 领域,良好的客户端、服务器端设计以及扩展性和高可用考虑作为存储网路具有极大优势。

在 FC 的整个协议栈中,从底下的物理链路都最上层逻辑协议(通常称为FCP),构成了整个网络模型,类似于 OSI 模型。通常 FCP 指的都是 SCSI,但是现在 NVME 也可以称为 FCP 之一。

在 NVME Over Fabrics 逻辑里,既可以是 PCIE,RDMA 也可以是上述的 Fibre Channel。那么 FC 在 NVME Fabrics 方案中优势在哪呢?

首先,RDMA 通常列出 ZERO COPY 的作为重要优势,但是在具体到 NVMEF 这个情况上,都是内核态情况下,两者都是零拷贝,所有数据都是 DMA 传递。主要的区别在于 API,他可以灵活定义和使用 Zero Copy。其次,NVME Over FC 可以集成所有 FC 的固有管理比如 Zoning,Name Server,Management Services。然后使用 FC 可以同时来支持 SCSI 和NVME,当然使用 RDMA 也可以用 iSER,但是完全不可以匹敌。最后,自然是 FC 久经考验的生态,专注的存储网络、安全设计、整合的质量管理支持。以上优势相信都是未来 NVME Over FC 的重要支撑。

用户在使用 NVME Over FC 上反过来其实可以极大推动 NVME 的普及,现实是 NVME 和 RDMA 在传统存储都是新东西,很难普及,而如果使用 FC 可以极大降低用户的使用门槛。

新技术最大的担心就是使用门槛,RDMA 碰到最大的阻力就是这个。之前的 NVME Over Fabric 主推 RDMA,其实笔者就非常怀疑这个方案的进展,对于用户的存储环境简直是完全刷新了。FC 可以很好帮用户落地 NVME,真正能够淬炼 NVME,比如在测试开发环境用 NVME,生产仍然是 SCSI,慢慢迁移。