TCP Transport Specification

Transport

The individual transport specifications allow NVM Express to isolate and independently evolve transports for evolving memory and fabric transports. The NVM Express® (NVMe®) 2.0 specifications define the theory of operations for transports in the NVMe Base specification and the mapping of specific transports to individual specifications.

What is the TCP Transport specification?

NVMe/TCP defines the mapping of NVMe queues, NVMe-oF capsules and data delivery over the IETF Transport Control Protocol (TCP). The NVMe/TCP transport offers optional enhancements such as inline data integrity (DIGEST) and online Transport Layer Security (TLS).

NVMe/TCP enables efficient end-to-end NVMe operations between NVMe-oF host(s) and NVMe-oF controller devices interconnected by any standard IP network with excellent performance and latency characteristics. This allows large-scale data centers to utilize their existing ubiquitous Ethernet infrastructure with multi-layered switch topologies and traditional Ethernet network adapters. NVMe/TCP is designed to layer over existing software-based TCP transport implementations and future hardware accelerated implementations.

As of August 2024, NVMe is a set of the following eleven specifications:

  • NVM Express® Base Specification, Revision 2.1
  • Command Set Specifications:
    • NVM Express® NVM Command Set Specification, Revision 1.1
    • NVM Express® NVMe Zoned Namespaces Command Set Specification, Revision 1.2
    • NVM Express® Key Value Command Set Specification, Revision 1.1
    • NVM Express® Subsystem Local Memory Command Set Specification, Revision 1.0
    • NVM Express® Computational Programs Command Set Specification, Revision 1.0
  • Transport Specifications:
    • NVM Express® NVMe over PCIe Transport Specification, Revision 1.1
    • NVM Express® RDMA Transport Specification, Revision 1.1
    • NVM Express® TCP Transport Specification, Revision 1.1
  • NVM Express® NVM Express Management Interface Specification, Revision 2.0
  • NVM Express® NVMe Boot Specification, Revision 1.1

The NVM Express® Base Specification, Revision 2.1 reorganizes sections to distinguish requirements on functionality common to PCIe® and Fabrics implementations, specific to PCIe implementations, and specific to Fabrics implementations.