What is NVMe over Fabrics?

NVMe® over Fabrics (NVMe-oF™) was created to enable non-volatile memory express (NVMe) commands that transfer data between a host and SSD or storage subsystem, to be completed over a networked fabric1. It accomplishes this by defining extensions to the NVMe interface that enable operation over a fabric other than PCI Express (PCIe) including:

It was originally published in 2016 as a standalone specification that described generic fabric operation of NVMe along with the NVMe RDMA transport specifics and the NVMe TCP transport specifics.

Today, NVMe-oF generic operation is a fully integrated part of the NVMe Base Specification and independent specifications describe the NVMe-RDMA transport, NVMe-TCP transport, and the NVMe-FC transport.

Using NVMe-oF allows Hosts to access storage resources that are centrally located and managed. This enables storage resources to be efficiently shared amongst groups of hosts and prevents waste by helping to eliminate stranded storage capacity.  

Each NVMe transport may expose a memory model, a message model, or a combination of the two2.

Each transport has unique performance, availability, and scalability attributes, making each suitable for use in a unique set of use cases, environments, and topologies.

More resources on NVMe-oF:


1 From https://nvmexpress.org/developers/nvme-of-specification/
2 NVMe-over-Fabrics-1.1-Ratified