NVMe1.4的:IO Determinism及多路径(Multipathing)访问共享命名空间

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/Memblaze_2011/article/details/82181900

FMS2018已经过去了,但是闪存的热度并没有消退。NVMe组织在FMS2018上通过8个演讲对NVMe、NVMe-oF、NVMe-MI、JBOF以及NVMe基准测试等话题进行了介绍。在其官网上有这次演讲的PPT(据说视频也会更新上来)。接下来通过NVMe 组织在FMS2018上的主旨演讲看下未来一年NVMe的演进重点。

NVMe协议族的路线图

从上图可以看到当前NVMe一些主要的特性和下一步将要做的重点。

这篇文章就说NVMe 1.4的两大更新。

命名空间(namespace)是NVMe协议中一个基本的逻辑空间的概念,简单地说命名空间将NVMe SSD的用户空间进行逻辑划分,每个命名空间拥有自身的NAND,可以独立的进行格式化和加密等操作。关于命名空间的讨论可以查看文末的参考文章或者公众号回复namespace。

NVMe官网最新的一版NVMe标准是1.3c,发布于2018年5月24日。而今年第四季度以及2019年,NVMe1.4版本将是NVMe标准化组织工作重点,此次更新的重点包括IO Determinism、PMR以及多路径访问共享命名空间。

IO Determinism:NVMe提高QoS的利器

NVMe协议将在1.4版中通过定义IO Determinism,实现对SSD的物理介质资源精细化管理和控制。在没有IO Determinism时,多个APP由1个SSD承载,一定程度上QoS也比较难保障。多个APP访问不同的namespace,但是不同namespace是共享底层channel和Die的。

IO Determinism应用前后负载访问盘的变化

有了IO Determinism之后,NVMe协议提供将整块SSD的物理空间划分为多个NVM Set,每个NVM Set可以包含1到多个Channel和Die,不同的NVM Set的擦除、读写都是相互独立的。不同的Set供不同的App使用(如上图中右侧)。如此一来,应用之间不会互相干扰,性能和延迟也可以得到更好的保障。Facebook在FMS2018上发布了关于NVMe SSD实现 IO Determinism详细的测试结果,如下图:

Facebook对IO Determinism应用后的测试结果

从上图Facebook对IO Determinism的测试结果可以看出,读延迟QoS在IO Determinism应用后有了8倍的提升。此外,如今NVMe SSD单盘容量不断提升(Memblaze的PBlaze5 910/916可以做到15.36TB),IO Determinism将一块大盘分为多个“小盘”,供上层多个应用使用,提高了资源的利用率。

NVMe多路径(Multipathing)访问共享命名空间(Namespace Sharing

NVMe多路径访问共享命名空间的意思是单个或多个主机可以通过不同的NVMe Controler访问同一个Namespace。下图是一个基本的原理。

当前高可用的NVMe存储系统多使用双端口NVMe SSD,并采用如下方案实现:

NVMe1.4以后有了多路经访问特性,高可用的存储系统就可以结合NVMe SSD的双端口实现下图这样的高可用方案。每一个Contorller都可以看到NVMe SSD一个Port的两条路径,这需要NVMe SSD支持多路经功能。

这与SAS时代实现高可用系统的理念类似,只是从Switch到盘的性能都有了质的提升。JBOD也升级到了JBOF/FBOF。业务连续和数据的完整性是企业客户对存储系统的重要诉求,要打造高可用方案,Memblaze在双端口的研发上已经有诸多积累,相关的讨论和技术解读可以看文末关于双端口的文章。

NVMe协议还有NVMe-MI和NVMe-oF两个重要的分支,分别定义了NVMe SSD管理命令和网络层面的规范。未来这两个分支也会有所演进,NVMe-MI将允许应用通过In-Band方式向NVMe 子系统(一般为NVMe SSD或者多块NVMe SSD组成的组)发送NVMe-MI Send和NVMe-MI Receive两个新的命令,获取子系统的基本信息。这些信息之前多由BMC系统获取。这一新的特性提高了应用获取底层SSD状态信息的能力,可以更高效的感知NVMe 子系统的健康状态。

NVMe-oF也会开始支持NVMe Over TCP,这部分内容将在后续的文章中进行详细的阐述。

 

相关阅读:

NVMe官网的FMS2018专题页面

https://nvmexpress.org/about/flash-memory-summit-2018/

实锤,PBlaze5实力演绎multiple namespaces 功能(上)

https://mp.weixin.qq.com/s/KV4QOGzNVn-J7wWzX39TnA

实锤,PBlaze5实力演绎multiple namespaces 功能(下)

https://mp.weixin.qq.com/s/Xi2zo5JQeVOHh03RiTHSYw

浅析U.2接口NVMe SSD双端口模式(上)——应用模式与设计实现

https://mp.weixin.qq.com/s/jc0ySv70Fgqx5lXb04gTxw

浅析U.2接口NVMe SSD双端口模式(下)——可靠性及性能测试

https://mp.weixin.qq.com/s/AZ4buSBxdpXSip6o_PxGOg

企业级全闪是SAS的,也是NVMe的,最终都是NVMe的

https://mp.weixin.qq.com/s?__biz=MzA3NjE0MTUwNA==&mid=2722162778&idx=1&sn=93f2c813bdbec37c8da72453de9b5d1f&chksm=b8d18ef58fa607e35dd1a1ad5e6e247e43fff7f1521e4f933387691b090f96ac28430f67592f&token=1893621030&lang=zh_CN#rd

Memblaze公众号请关注

 

猜你喜欢

转载自blog.csdn.net/Memblaze_2011/article/details/82181900