What is NVM Express?
A Collection of Open Standards
NVM Express is an open collection of standards and information to fully expose the benefits of non-volatile memory in all types of computing environments from mobile to data center. NVMe is designed from the ground up to deliver high bandwidth and low latency storage access for current and future NVM technologies. The NVM Express standards include:
- NVM Express – The register interface and command set for PCI Express attached storage with industry standard software available for numerous operating systems. NVMe is widely considered the defacto industry standard for PCIe SSDs.
- NVMe Management Interface – The command set and architecture for out of band management of NVM Express storage (e.g., discovering, monitoring, and updating NVMe devices using a BMC).
- NVMe over Fabrics – The extension to NVM Express that enables tunneling the NVM Express command set over additional transports beyond PCIe. NVMe over Fabrics extends the benefits of efficient storage architecture at scale in the world’s largest data centers by allowing the same protocol to extend over various networked interfaces.
NVM Express History
The original NVM Express Work Group was incorporated as NVM Express, Inc. in 2014 and is the consortium responsible for the development of the NVM Express specification. The organization currently has over 100 member companies. Those interested in joining should visit www.nvmexpress.org/join-nvme.
Version 1.0 of the NVM Express specification, developed cooperatively by the member companies from across the industry, was released on March 1, 2011. Version 1.1 of the specification was released on October 11, 2012, and version 1.2 was released on November 3, 2014.
In November 2015, the NVM Express Management Interface specification (NVMe-MI) was released, providing out-of-band management for NVMe components and systems. NVMe-MI provides a common baseline management feature set across all NVMe devices and systems, and a consistent method for implementing optional features. Commands include inquiring and setting the configuration, getting the health of the subsystem, firmware management, namespace management, security management, etc.
The NVMe revision 1.3 specification was completed in the first half of 2017. Revision 1.3 addresses the needs of mobile devices, with their need for low power consumption and other technical features. With the completion of version 1.3, NVMe is the only storage interface available for all platforms from mobile devices through data center storage systems.
Seeing the need to share storage devices, scale to large numbers of devices and extend over longer distances, work on the NVM Express over Fabrics specification was begun in 2014. Completed in 2016, the NVMe over Fabrics specification extends NVMe onto fabrics such as Ethernet, Fibre Channel and InfiniBand®, providing not only access to individual NVMe devices but also to NVMe storage systems.