Protokoll und Interface für SSDs Was ist der Non-Volatile Memory Express (NVMe)?

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

Der Non-Volatile Memory Express ist eine Spezifikation für ein Protokoll und logisches Interface, über das sich nichtflüchtige, Flash-basierte Massenspeichergeräte wie SSDs per PCIe mit einem Rechner verbinden lassen. Die Spezifikation ist speziell für die besonderen Eigenschaften flash-basierter Speichergeräte optimiert und bietet eine hohe Performance mit vielen Ein-/Ausgabeoperationen und niedrigen Latenzzeiten.

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

Die Abkürzung NVMe steht für „Non-Volatile Memory Express“. Es handelt sich um eine Spezifikation für ein Protokoll und logisches Interface zum Anschluss nichtflüchtiger, Flash-basierter Massenspeichergeräte wie SSDs (Solid State Drives) über den PCI-Express-Bus (PCIe-Bus) an einen Rechner. Sie wird auch als Non-Volatile Memory Host Controller Interface Specification (NVMHCIS) bezeichnet und macht herstellerspezifische Treiber überflüssig.

Erstmals veröffentlicht wurde die Spezifikation im Jahr 2011. Mittlerweile wurde sie in mehreren Versionen überarbeitet und ergänzt. Die Spezifikation beinhaltet unter anderem Befehlssatz, Warteschlangenfunktionen und Sicherheitsmechanismen.

Non-Volatile Memory Express ist speziell für die besonderen Eigenschaften Flash-basierter Speichergeräte konzipiert und konkurriert mit anderen Massenspeicherschnittstellen wie SCSI, SATA oder AHCI. Flash-basierte Massenspeicher mit Kompatibilität zu Non-Volatile Memory Express sind in verschiedenen Bauformen wie PCI Express, M2, SFF (Small Form Factor) mit U.2-Anschluss oder NGSFF (Next Generation Small Form Factor) verfügbar. Sie kommen sowohl im Workstation- als auch im Serverbereich zum Einsatz. Vorteile von NVMHCIS sind die hohe Geschwindigkeit, viele Ein-/Ausgabeoperationen, niedrige Latenzzeiten und die Möglichkeit des Multithreadings.

Technische Merkmale von Non-Volatile Memory Express

Zentrale Inhalte von NVMHCIS sind die Definitionen für den Protokollbefehlssatz und eine Funktionssammlung zur Nutzung Flash-basierter Massenspeicher über die PCIe-Schnittstelle. Im Vergleich zu Standards wie ATA oder SCSI ist der Befehlssatz sehr schlank und benötigt wenige Prozessoranweisungen. Die Schnittstelle erlaubt parallele Zugriffe auf die Massenspeichergeräte und arbeitet mit sogenannten IO-Channels. Unter anderem unterstützt die Spezifikation Hot Swapping und Multipathing.

Auf Basis des Standards existieren weitere Spezifikationen, die den Anschluss von Massenspeichergeräten über eine zusätzliche Zwischenebene und Netzwerke ermöglichen. Diese Standards werden als „NVMe over Fabrics“ bezeichnet und beinhalten beispielsweise NVMe over RDMA oder NVMe over TCP.

Vorteile von Non-Volatile Memory Express

Typische Vorteile der Non-Volatile Memory Host Controller Interface Specification sind:

  • für Flash-basierte Massenspeicher wie SSDs optimiert,
  • niedrige Latenzzeiten,
  • hohe Zahl an Ein-/Ausgabeoperationen pro Sekunde (IOPS),
  • hohe Datenübertragungsraten,
  • parallele Datenverarbeitung,
  • Unterstützung verschiedener Arten nichtflüchtigen Speichers,
  • für viele Betriebssysteme verfügbar,
  • Nutzung des existierenden PCIe-Standards,
  • schlanker Befehlssatz mit wenig Overhead,
  • keine herstellerspezifischen Treiber notwendig,
  • geeignet für das Workstation-, Hosting- und High-Performance-Umfeld,
  • Unterstützung von Hot Swapping,
  • Anschluss von Massenspeichergeräten per NVMe over Fabrics über eine zusätzliche Netzwerkzwischenebene.

Artikelfiles und Artikellinks

(ID:44203522)

Über den Autor