You are here

What is NVMe?

NVM Express (NVMe™) is the standard host controller interface for systems using PCI Express (PCIe) based Solid State Drives (SSDs). With the participation of over 120 member companies in NVM Express®. NVMe is architected from the ground up for PCIe SSDs to be efficient, scalable, and manageable, and is also ideal for hyper-converged infrastructure storage.

The first NVMe specification was published in 2011. Since then, there have been three NVMe specifications published with multiple revisions: NVMe, NVMe Management Interface (NVMe-MI™) and NVMe over Fabrics (NVMe-oF™).

The NVM Express base specification defines an interface that provides optimized command submission and completion paths. The interface supports parallel operations with up to 64k I/O Queues and up to 64k outstanding commands per I/O Queue. The interface scales for multi-core CPUs, with few clock cycles needed per I/O operation. The specification also includes end-to-end data protection, enhanced error reporting, and virtualization support.

The NVM Express Management Interface is the command set for in-band and out-of-band management of NVMe storage systems. These management functions include, but are not limited to, discovering, monitoring, and updating firmware on SSDs. NVMe-MI provides an industry-standard way to manage NVMe drives and devices.

The NVMe over Fabrics specification defines a protocol interface and related extensions that enable the NVMe commands to be transmitted over other interconnects, including RDMA, Fibre Channel, and TCP. NVMe-oF extends the NVMe deployment from local host to remote host(s) for a scale-out NVMe storage system.

These specifications are continuously evolving to new revisions to provide more features and functionalities to support increasing demand for NVMe based storage solutions.