Non-Volatile Memory Express over Transmission Control Protocol Was ist NVMe over TCP?

Autor / Redakteur: Dipl.-Ing. (FH) Stefan Luber / Dr. Jürgen Ehneß

NVMe over TCP ist eine Variante von NVMe over Fabrics. Die Technologie ermöglicht es, nichtflüchtigen Speicher wie Flash-basierten Storage über eine TCP-Transportverbindung und das NVMe-Protokoll mit einem Host zu verbinden. Es können beliebige Netzwerke mit TCP/IP-Unterstützung zum Einsatz kommen. NVMe über TCP bietet eine hohe Performance, überbrückt auch große Entfernungen und benötigt keine Investitionen in neue Netzwerktechnik.

Die wichtigsten IT-Fachbegriffe verständlich erklärt.
Die wichtigsten IT-Fachbegriffe verständlich erklärt.
(Bild: © aga7ta - Fotolia)

NVMe over TCP ist in der Spezifikation NVMe over Fabrics (NVMe oF 1.1) aus dem Jahr 2019 definiert. Die Technik ermöglicht es, nichtflüchtigen Speicher (Non-Volatile Memory – NVM) wie Flash-basierten Storage über eine TCP-Transportverbindung (Transmission Control Protocol) und das NVMe-Protokoll mit einem Host zu verbinden.

NVMe über TCP arbeitet mit beliebigen TCP/IP-basierten (Transmission Control Protocol/Internet Protocol) Netzwerken. Es lassen sich Standardnetzwerkanschlüsse und Standardnetzwerkequipment für die Storage-Verbindungen nutzen. Während die NVMe-Spezifikation den direkten Anschluss eines Non-Volatile-Massenspeichers über eine PCIe-Schnittstelle beschreibt, erweitert NVM over TCP die Anschlussmöglichkeiten auf TCP/IP-Netzwerke. Im Gegensatz zu iSCSI (Internet Small Computer System Interface) lassen sich mit NVMe über TCP die Vorteile schneller Flash-basierter Speichergeräte wie SSDs besser nutzen. Die Technik bietet hohen Durchsatz bei niedriger Latenz und erfordert keine Investitionen in besondere Netzwerktechnik. Linux unterstützt NVMe über TCP seit dem Linux Kernel 5.0 nativ.

Was ist NVMe?

NVMe steht für „Non-Volatile Memory Express“ und bildet die Grundlage für NVMe over TCP. Es handelt sich um eine erstmals im Jahr 2011 veröffentlichte Spezifikation für eine Software-Schnittstelle zur Anbindung von nicht-flüchtigen, Flash-basierten Massenspeichern über die PCIe-Schnittstelle. NVMe steht in Konkurrenz mit anderen Massenspeicherschnittstellen wie SCSI oder AHCI, ist aber speziell für die Anbindung von Flash-basierten Speichergeräten wie SSDs optimiert. Es sind unterschiedliche Bauformen von NVMe-Geräten verfügbar, die im Server- und Workstation-Bereich eingesetzt werden.

NVMe over TCP als eine Variante von NVMe over Fabrics

NVMe over Fabrics (NVMe oF) ist eine Weiterentwicklung von NVMe. Anstatt einen Massenspeicher direkt über PCI Express mit dem Host zu verbinden, definiert NVMe oF die Zwischenebene eines Netzwerkverteilers und ermöglicht die Anbindung über eine Netzwerkverbindung. Ganzen Verbünde aus Storage-Geräten lassen sich so realisieren. Der Netzwerkverteiler kann mit unterschiedlichen Protokollen arbeiten.

Unter anderem sind im NVMe-oF-Standard folgende Varianten vorgesehen:

  • NVMe over RDMA (mit den Untervarianten NVMe over RoCE, iWARP und InfiniBand),
  • NVMe over TCP.

Technische Details zu NVMe over TCP

NVMe over TCP nutzt ein IP-Netzwerk und das Transportprotokoll TCP für die Verbindung zwischen dem NVMe-oF-Host und dem Storage-Gerät. Im üblichen TCP-Handshake-Verfahren wird eine gesicherte Transportverbindung aufgebaut. Über diese Transportverbindung findet der Austausch der Informationen gemäß der NVMe-Schnittstelle statt. Es kommen die Standardmechanismen von TCP zur Flusskontrolle, Sicherung und Steuerung des Datenverkehrs zum Einsatz.

Die Vorteile von NVMe über TCP

Vorteile der Technologie sind:

  • Anbindung von Flash-basierten Storage-Geräten über Standard-TCP/IP-Netze,
  • keine besondere Investition in neue Netzwerktechnik notwendig,
  • hoher Durchsatz, geringe Latenz,
  • Nutzung des Internets zur Anbindung des Speichers möglich,
  • Nutzung von Standard-Ethernet-Netzwerken möglich,
  • Sicherung der Verbindung mit Hilfe der Standardmechanismen des TCP-Transportprotokolls,
  • einfach und günstig zu installieren, zu betreiben und zu skalieren,
  • ideal für die bestehende Netzinfrastruktur eines Rechenzentrums geeignet.

(ID:47037623)

Über den Autor