michelangelus - Fotolia
The NVMe protocol has had a significant effect on data center storage technology in the past few years, and that doesn't appear to be changing any time soon. As developments in the technology are made, the list of related technologies and terms continues to grow.
The protocol enables lower latency, a reduction in power usage and higher IOPS, keeping pace with data center storage as performance gets faster and overall patience for latency wears thin. As the need to expand storage connections across networks became a hurdle, NVMe-oF extended NVMe's reach.
We've compiled some terms related to the NVMe protocol to keep you current on the topic, from its own developments to the technologies it is competing with.
Non-volatile memory (NVM) is a semiconductor technology most commonly seen in NAND flash storage. NVM does not require a continuous power supply and can be used for a variety of purposes such as storing controller code for hard disk and tape drives, as well as storage in SSDs.
On its face, NVM may sound similar to NVMe, but the two are not synonymous. NVM technology has been in use since the 1940s while the NVMe protocol was just being developed in 2009.
NVMe is a host controller interface that speeds up the transfer of data between host systems and SSDs over a PCIe bus. NVMe supports NAND flash memory, 3D XPoint and form factors, including add-in PCIe cards, M.2 and U.2 SSDs. Reference drivers for NVMe are available for a variety of OSes, including Windows and Linux.
Benefits of NVMe over alternatives such as SAS and SATA SSDs include lower latency, better performance and less power use. NVMe facilitates high throughput and mitigates bottlenecks, making it a great partner for speedy flash storage technology.
Version 1.0 of the NVMe protocol was released on March 1, 2011, and the most recent release, NVMe 1.4, became available in June 2019. The protocol has evolved to meet the changing needs of data storage, including support for better power management, data protection and virtualization enhancements.
The NVMe-oF specification marks a significant development in the NVMe protocol. While NVMe transfers data locally, NVMe-oF operates over Fibre Channel (FC), Ethernet and InfiniBand, as well as other network fabrics. This ability to transfer data over a network takes full advantage of the capabilities of modern SSDs and bridges the gap between DAS and SAN.
The high speed of NVMe-oF makes it a good match for real-time analytics, as well as AI and machine learning use cases. The specification is also highly scalable, provides low latency, and can send and receive commands from multiple sources simultaneously.
NVMe-oF 1.0 was released on June 5, 2016.
NVMe over Fibre Channel
NVMe over Fibre Channel (NVMe over FC) is a specification designed to enable NVMe commands to transfer information to hosts and storage systems over an FC network. The specification is implemented through the FC-NVMe standard and was first submitted for publication in August 2017. While NVMe-oF was developed by NVM Express Inc., NVMe over FC was defined by the T11 committee of the International Committee for Information Technology Standards (INCITS).
NVMe over FC is not the only transport protocol available for FC, which also works with NVMe and SCSI protocols. As with NVMe in general, NVMe over FC has higher performance and lower latency than alternatives, but it also comes with a high price tag.
The pros and cons of NVMe over FC specifically correspond with those of Fibre Channel. Advantages of FC include consistent, reliable performance and lossless data transmission, but disadvantages include the requirement for special equipment and the expertise to correctly operate it. Ethernet-based alternatives are typically more common than NVMe over FC options, and InfiniBand-based NVMe is often better suited to workloads requiring high bandwidth and low latency.
SAS and SATA alternatives
The most common alternatives to the NVMe protocol are SAS and SATA.
Based on serial signaling technology, SAS and SATA each use thin cables to transmit data and offer benefits not found in older alternatives. Despite these benefits, they are being pushed out in many organizations in favor of NVMe. SAS and SATA SSDs require more instructions to process I/O requests and support significantly fewer commands than NVMe SSDs. While NVMe can support 64,000 commands in one message queue, a SAS device can only typically support up to 256 commands, while a SATA device supports up to 32.
If an existing storage array is NVMe compatible or built with NVMe SSDs in mind, it is possible to add NVMe SSDs to replace SAS- and SATA-attached SSDs over time. However, not all systems are suited to this change, so an upgrade to a system built for NVMe SSDs may be necessary.
That's not to say that SAS and SATA SSDs don't have their advantages. NVMe SSDs are more expensive than their older counterparts and provide a level of performance that may not be necessary for many applications. SAS and SATA are time-tested and reliable, and offer scalability. Depending on the needs of the organization, a switch to a streamlined NVMe-based storage system may not be worth the investment.