什么是 NVMe?17 Mar 2025 | 5 分钟阅读 NVMe 的意思是“非易失性内存 Express”,或“非易失性内存主机控制器接口规范 (NVMHCIS)”,它是一个开放的逻辑设备接口规范,用于访问通过 PCIe 总线连接的非易失性存储介质。它是一种新的存储访问和传输协议,用于访问高速存储介质,并带来许多优势。 NVMe 是为 SSD 设计的。它通过高速 PCIe 插槽在存储接口和系统 CPU 之间进行通信,与存储的物理规格无关。使用 NVMe 驱动程序执行的输入或输出任务比使用旧驱动程序(如 AHCI (Advanced Host Controller Interface),SATA SSD 的一项功能)的旧存储模型启动更快、传输数据更多、完成速度更快。 NVMe 正在成为数据中心服务器和客户端设备(如笔记本电脑、台式电脑甚至下一代游戏机)的新行业标准。 NVMe 协议通过 PCI Express (PCIe) 总线访问闪存,以提供高带宽、低延迟的用户体验,并支持数万个并行命令队列。它比硬盘和传统全闪存架构快得多,后者仅限于单个命令队列。 NVMe 通常是 NAND 闪存,有几种物理规格,包括固态驱动器 (SSD)、PCI Express (PCIe) 扩展卡、M.2 卡、U.2 以及其他形式。 NVMe 允许主机硬件和软件利用现代 SSD 中可能实现的并行性。因此,与以前的逻辑设备接口相比,NVMe 减少了输入或输出开销,并带来了各种性能改进,包括多个长命令队列和降低的延迟。 NVMe 设备主要以标准尺寸的 PCI Express 扩展卡形式提供,以及 2.5 英寸规格的设备,这些设备通过 U.2 连接器(以前称为 SFF-8639)提供四通道 PCI Express 接口。使用 SATA Express 和 M.2 规范的存储设备支持 NVMe 作为逻辑设备接口,已成为服务器、桌面和笔记本电脑固态存储的主导形式。 NVMe 历史
规范 迄今为止发布的 NVMe 规范包括
NVMe 如何工作NVMe 将主机计算机上的输入、输出命令和共享内存响应映射到 PCIe 接口。NVMe 接口支持多核处理器的并行 I/O,以促进高吞吐量并缓解 CPU 瓶颈。 与 SCSI 和 ATA 命令集相比,NVMe 提供了更简化的命令集来处理 I/O 请求。NVMe 处理 I/O 请求所需的 CPU 指令数量少于 SAS 设备使用的 SCSI 命令集,以及 SATA 驱动器使用的 ATA 命令集的一半。 NVMe 在单个消息队列中支持 64,000 个命令,最多支持 65,535 个 I/O 队列。相比之下,SAS 设备通常支持最多 256 个命令,SATA 驱动器在一个队列中支持最多 32 个命令。 然而,基于 NVMe 的 PCIe SSD 目前比同等容量的基于 SAS 和 SATA 的 SSD 更昂贵,而且高端企业级 NVMe SSD 的功耗可能高于 SAS 或 SAS SSD。SCSI 贸易协会声称,更成熟的 SAS SSD 比 NVMe PCIe SSD 具有更多优势,例如更高的可扩展性和经过时间考验的功能。NVMe PCIe SSD 也可能提供许多应用程序不需要的性能水平。 AIC (附加卡)几乎所有早期的 NVMe 固态驱动器都是 HHHL(半高、半长)或 FHHL(全高、半长)AIC,带有 PCIe 2.0 或 3.0 接口。HHHL NVMe 固态驱动器卡易于插入服务器的 PCIe 插槽。 U.2 (SFF-8639)U.2 也称为 SFF-8639。它是一种用于将固态驱动器连接到计算机的计算机接口。它最多使用四个 PCI Express 通道。可用的服务器最多可组合 4 个 U.2 NVMe 固态驱动器。 U.3 (SFF-8639)U.3 基于 U.2 规范构建,并使用相同的 SFF-8639 连接器。它是一种三模标准,将 SAS、SATA 和 NVMe 支持集成到单个控制器中。 如果固件支持可用,U.3 还可以支持不同驱动器之间的热插拔。U.3 驱动器仍然向后兼容 U.2,但 U.2 驱动器与 U.3 主机不兼容。 M.2 (NGFF)M.2 也称为 下一代外形规格 (NGFF),使用 M.2 NVMe 固态驱动器计算机总线。通过 M.2 连接器提供的接口是 PCI express 3.0 或 PCI express 4.0。 NVMe over Fabrics (NVMe-oF)NVMe 不仅仅是更快的闪存。它还是一种端到端标准,可以极大地提高存储系统和服务器之间的数据传输效率。 NVM Express over Fabrics (NVMe-oF) 是通过网络上的传输协议连接远程设备的理念,与 NVMe(设备直接连接到 PCIe 总线)相反。 NVMe-oF 是一种通信协议,允许一台计算机通过远程直接内存访问(通过多种传输协议)访问连接到另一台计算机的块级存储设备。
NVMe over Fibre Channel (NVMe/FC)随着 NetApp 的 AI 数据管理平台的发布,今天已提供 NVMe over Fibre Channel 支持。 2014 年 9 月,提出了一个关于使用 NVMe over Fiber Channel (FC) 的标准,这种组合通常称为 FC-NVMe(或有时称为 NVMe/FC)。 由于其性能和可靠性,以及对基于 fabric 的分区和名称服务的支持,许多企业已经围绕光纤通道构建了整个基础设施。 与 FCP(底层是光纤通道连接的 SCSI 协议)相比,使用 NVMe/FC 协议运行的数据库等应用程序运行速度要快得多。ONTAP NVMe/FC 流量可以与同一光纤通道 fabric 上的 FCP 流量共存,因此很容易开始使用 NVMe/FC。对于许多拥有 ONTAP AFF 系统的客户来说,这仅仅是一次非破坏性的软件升级。 下一个主题什么是 OpenShift |
我们请求您订阅我们的新闻通讯以获取最新更新。