JRB——Fotolia
NVMe协议的现在和未来
NVMe和PCIe协议和互连的结合是固态硬盘诞生后不可避免的发展,NVMe向fabric转移也是如此。
非易失性内存快车开始作为少数协议之一,以使一个更快的连接闪存…
继续阅读本文
享受这篇文章以及我们所有的内容,包括电子指南,新闻,提示和更多。
通过PCI Express总线驱动到PC。虽然它正在成为PC世界的事实上的标准,但在企业世界,它的全部内容是将本地连接从PC扩展到网络存储的世界。其目标是使存储网络中的闪存驱动器具有与通过PCIe直接连接到计算机的闪存驱动器相同的I/O速度。我们将看看NVMe是什么,它是如何工作的,以及它的未来。
NVMe协议是闪存驱动器更高性能的逻辑结果。基本上,操作系统中旧的基于scsi的文件堆栈无法跟上非常高级别的I/O操作。有太多的中断,而且堆栈本身每个数据块有成千上万的CPU指令。
企业需要一种能够显著减少中断的产品,从而将相关的开销时间用于CPU中的生产性工作。同样,一种尽可能避免与主机cpu交互的数据传输方法也是有意义的。
都是关于数据传输的
的NVMe协议发展得很快来解决这些问题。通过PCIe总线的直接内存访问解决了交互问题,是一种经过良好测试的移动数据的方法。它将传输机制从需要传输请求和确认的“推”系统改为允许接收节点在准备就绪时“拉”数据的系统。经验表明,这种方法只将CPU开销降低了几个百分点。
中断系统被循环队列方法所取代,其中一组队列用于挂起的传输,另一组队列用于完成状态。这些命令队列使用远程直接内存访问(RDMA)解析,而完成队列是在响应块中处理的,这有效地聚合了中断。
关于SAS/SATA/Fibre Channel文件栈的一个抱怨是缺乏任何优先级或源所有者的意识。NVMe利用64,000个可能的队列巧妙地解决了这个问题,每个队列都标识了发起者和优先级。例如,这允许将数据发送回原始核心或特定应用程序。这个寻址方案变得更加强大,当我们看将NVMe扩展到面料.
NVMe的物理端被解释为包含在M.2连接器中的两个PCIe通道的连接,或者是标准化的SATA Express (SATAe)连接器.两者的定义都是为了允许SATA驱动器作为NVMe/PCIe的替代驱动器正确连接。
M.2技术允许安装非常紧凑的ssd。为了节省空间和成本,这些M.2驱动器省去了机箱和其他驱动部件,因此,1.5英寸和3英寸的封装只有1英寸左右宽,但仍具有相当大的容量。我们预计在2018年这些微小的形态因子可以达到10tb或更多。
然而,规模却出乎意料NVMe的好处.真正的头条新闻可以从9月份的公告中总结出来闪存峰会在美国,有几个驱动器的IOPS达到了100亿IOPS。这与传统硬盘的150 IOPS相比是很好的,也是企业硬盘销量迅速下降的主要原因。
NVMe在这个过程中淘汰了SAS接口。SAS基于SCSI软件堆栈,因此是旧的冗长的文件io系统。即使是小配置的ssd,它也跟不上,而当时每个ssd的IOPS仅为20亿IOPS。将RDMA添加到SAS的尝试已经讨论过,但SATAe显然赢得了这场战斗。
与SAS消失至于SATA本身呢?在实际的PCI或SATA接口中没有成本差异。它们在电方面几乎是相同的,支持自动检测的芯片组和用于连接的通用电子使得任何主机端连接都变得微不足道。
保留SATA的唯一原因是维持一个人为的价格差异NVMe驱动器和SATA驱动器.SSD市场的定价动态要比hdd复杂得多。延迟、IOPS和驱动耐久性以及容量都被考虑在内,而企业驱动与普通驱动的概念已经变得相当模糊,因为大型云提供商使用其他区分因素来确定他们需要什么。
设备级冗余和无需维修的维护方法意味着不起眼的单端口商用驱动器可以进入大容量存储空间,而更高性能和长期耐用的驱动器构成了主要层。这种差异化变化的结果是,没有SATA的长期需求,所以它也将逐渐消失,允许NVMe/PCIe成为本地驱动器接口。
NVMe接下来将与哪些技术展开竞争?
然而,NVMe协议并非一帆风顺。我们有英特尔的Optane技术应对。英特尔计划使用英特尔开发的严格的专有的fabric方案连接Optane ssd。这将基于OmniPath,这将是本地的CPU。英特尔的世界观是,这种结构将连接服务器中的所有关键模块,包括cpu、图形处理单元和现场可编程门阵列,以及内存模块和本地ssd。
英特尔推动着CPU业务的发展,并能让这一做法持续下去。任何替代接口都需要翻译芯片,这就带来了NVMe的下一步发展.将NVMe协议扩展到fabric之上的想法已经酝酿多年,甚至早在第一次NVMe讨论时就已提出。这是该方法的合理延伸,特别是在我们有大量经验的情况下通过以太网和InfiniBand的RDMA.
我们可以期待有点像一场战斗英特尔的OmniPath方法和以太网/RDMA之间。后者拥有巨大的市场经验优势、强大的技术路线图、大量的安装基础和作为集群连接方案的几乎无处不在。随着Mellanox等行业领导者设计从OmniPath到Ethernet的翻译器,我敢打赌,我们将看到集群使用这两者的混合连接,在内部使用OmniPath,在外部使用以太网/RDMA连接服务器。
这是存储系统的未来.其中一种面料方法将被选定,我们将继续前进,迅速接受它。原因是,将集群中的所有主要模块连接到一个可通过fabric网格直接访问的虚拟化资源池将产生一些非常强大和通用的系统。
NVMe获胜无论发生什么。环形缓冲区/RDMA方法工作得非常好,所有这些产品都将使用它来处理操作。可以肯定地说,NVMe协议是计算的未来。