今年是NVMe的重要一年,随着PCIe接口的普及,2019年将有越来越多的客户端和企业应用利用NVMe来充分发挥闪存、以及其他内存级存储(例如3D Xpoint和其他新兴技术)的性能,同时NVMe-oF将支持老旧的存储技术继续使用。
NVMe(NVM Express)接口正在成为带内(in-band)主软件(host software)与PCIe SSD间通讯的产业标准,新增NVMe管理接口(NVMe-MI),定义管理NVMe存储的架构与指令集,支持以带外(out-of-band)方式,运用远程管理应用程序来监测、更新NVMe设备。
据SearchStorage报导,通过PCIe序列扩充汇流排(serial expansion bus)连接每个外围设备各有其点对点(point-to-point)联机,无需共享带宽,因此能降低延迟与提高资料传输速率。NVMe接口与指令集提供计算机与PCIe存储设备之间的通讯机制,改善带宽、IOPS、延迟等性能,发挥PCIe存储设备优势。
NVMe-MI提供管理NVMe设备的基础架构与指令集,如管理控制器的NVMe Admin指令、NVMe-MI专属指令、PCIe配置存取指令等,支持侦测NVMe设备及其功能、监测NVMe设备运行状态与温度、确保静态资料(at-rest data)的安全性等关键性能,实现从带外直接管理NVM次系统。
NVMe-MI提供多指令时段(slot)以避免延迟时间长的指令阻碍监测性能,并支持读取与写入标准重要产品资料(Vital Product Data;VPD)格式内容。通过系统中立(system-agnostic)来抽象化建置细节,不受限于特定的操作系统、处理器、应用模式等任何存储类型。
NVM次系统基本上包括PCIe存储模块、1至多组NVMe控制器、0至多个PCIe接口等元件。NVMe接口标准仍处于初期发展阶段,但对于为NVMe设备提供更有效管理极具潜力,随着NVMe接口日渐普及,NVMe-MI也终将成为IT基础架构不可或缺的一环。
1.1版最新NVMe-MI规格可由NVMe Admin传送NVMe指令。NVMe-oF(NVMe over Fabrics)联机支持NVMe Admin,所以也能传送NVMe-MI指令。此外1.1版还新增支持带内管理,以及风扇、温度传感器等机箱元件的管理功能。
NVMe-MI基础架构包括应用层(application layer)、协定(protocol)层、信息传输(message transport)层、实体(physical)层。应用层包括NVM次系统管理程序,以及代表管理程序跟次系统沟通的管理控制器。协定层包括对应每个管理控制器的NVMe-MI接口,NVMe-MI接口会跟NVM次系统的管理端点协调,以执行NVM次系统管理作业。
信息传输层包括管理元件传输协定(MCTP),以及作为与实体层之间接口的MCTP绑定(binding),并支持PCIe与SMBus/I2C绑定。MCTP支持智能硬件设备(intelligent hardware device)之间与管理相关的通讯,NVMe-MI运用MCTP来简化管理控制器与管理端点间的通讯。
实体层包括从信息传输层接收资料所需的输出入口,每1个接口对应1个管理端点,SMBus/I2C接口与PCIe接口的数量分别可配置0或多个。跟PCIe与SMBus/I2C接口对应的管理端点都支持相同的NVMe-MI指令且提供相同的功能,不过PCIe接口支持的资料传输速度远高于SMBus/I2C接口。
NVMe标准能够通过使用NVM Express Management Interface (NVMe-MI)将管理从SSD转移到主机上。而这一点是伴随着计算存储概念正在逐步发展出现的,也就是处理能力被置于存储设备本身上的时候。
NVM Express组织总裁Amber Huffman表示,第一个NVMe规范是在2011年公布的,后来加入了NVMe-MI用于统一管理设备,以及NVMe-oF,在可预见的未来这家NVM Express组织将大力推动NVMe-oF。NVMe规范支持所选框架,无论是以太网还是Omnipass等,都可以利用隧道协议端到端地利用NVMe。Huffman表示,与PCIe不同,PCIe在连接数十台设备的时候表现不佳,而NVMe-oF可以连接数据中心的数千台设备。
NVMe-oF 1.1版将于明年初推出,除了RDMA和光纤通道外,还将包括一个TCP层,允许使用InfiniBand、以太网或Omnipass。通过引入TCP,很多那些现有投资于没有RDMA功能的网络接口卡的厂商们都可以利用NVMe-oF。
第一个NVMe规范逐渐增加了更新的功能——1.2版本中的实时固件更新和1.3版本中的清理功能已经在SCSI和SATA中很常见了。明年年中推出NVMe 1.4版本将增加IO Determinism功能,以确保跨网络和存储的紧密且一致的延迟。同时,新增的管理规范也提供了管理设备机箱的能力。
NVMe的目标始终是保持精益和均衡,开放以适应新技术,如新兴的存储级内存(如3D Xpoint和Optane)。随着SD 7.0的推进,SD Card Association协会将采用NVMe来扩展性能。确保NVMe是一个可以针对未来存储级内存进行优化的接口。
尽管NVMe协议设计之初考虑到了闪存,但它与控制器背后的内存类型是无关的。这意味着从NVMe一致性的角度来看,相同的协议测试也是适用的,尽管产品的性能和延迟可能各不相同。尽管测试结果可能相同,但随着NVMe规范变得越来越复杂,并且添加了越来越多的功能,测试也会变得越来越复杂。例如,添加更多测试来适应NVMe 1.3中的变更。
随着NVM Express更多专注于NVMe-oF,测试工作也随之而来,因此确保它可以在现实场景中进行有效的部署。
计划于明年发布的NVMe 1.4将支持IO Dterminism,让主机能够将SSD视为许多小型子SSD,并在每个小型子SSD中并行处理IO。
我的评论
最新评论