Was ist NVMe

Was ist NVMe

NVMe steht für "Non-Volatile Memory express" und ist eine Host-Controller-Schnittstelle und ein Speicherprotokoll, das entwickelt wurde, um die Übertragungsgeschwindigkeit von Daten zwischen Unternehmens- und Client-Systemen und Solid-State-Laufwerken (SSDs) über den PCIe-Bus eines Computers zu beschleunigen.

Inhaltsverzeichnis

Als die Solid-State-Technologie zum bevorzugten Medium auf dem Speichermarkt wurde, wurde schnell klar, dass die vorhandenen Schnittstellen und Protokolle - insbesondere SATA (Serial Advanced Technology Attachment) und SAS (Serial-Attached SCSI) - vor allem in Rechenzentrumsumgebungen nicht geeignet waren. Die Arbeit an einem neuen Protokoll, das speziell für NAND-Flash entwickelt wurde, begann bereits 2007, wobei Intel die Führung übernahm. Anfang 2011 wurde die erste NVMe-Spezifikation veröffentlicht - fast 100 Technologieunternehmen waren an der Entwicklung beteiligt.

Die NVMe-Spezifikation definiert eine Register-Schnittstelle, einen Befehlssatz und eine Sammlung von Funktionen für PCIe-basierte SSDs mit dem Ziel einer hohen Leistung und Interoperabilität über eine breite Palette von NVM-Subsystemen hinweg. Die NVMe-Spezifikation schreibt nicht das ultimative Nutzungsmodell vor, wie z.B. Festkörperspeicher, Hauptspeicher, Cache-Speicher oder Backup-Speicher.

Die Hauptvorteile von NVMe-basierten PCIe-SSDs gegenüber SAS- und SATA-basierten SSDs sind eine geringere Latenzzeit im Host-Software-Stack, höhere Input/Output-Operationen pro Sekunde (IOPS) und ein potenziell geringerer Stromverbrauch, abhängig vom Formfaktor und der Anzahl der verwendeten PCIe-Lanes.

Das NVMe-Protokoll kann SSDs unterstützen, die verschiedene Arten von nichtflüchtigem Speicher verwenden, darunter NAND-Flash und die von Intel und Micron Technology entwickelte 3D XPoint-Technologie. NVMe-Referenztreiber sind für eine Vielzahl von Betriebssystemen (OS), einschließlich Windows und Linux, erhältlich.

Wie NVMe funktioniert

NVMe bildet Input/Output (I/O)-Befehle und Antworten auf den gemeinsamen Speicher in einem Host-Computer über die PCIe-Schnittstelle ab. Die NVMe-Schnittstelle unterstützt parallele E/A mit Mehrkernprozessoren, um einen hohen Durchsatz zu ermöglichen und Engpässe in der CPU zu mildern.

NVMe bietet einen rationalisierteren Befehlssatz zur Verarbeitung einer E/A-Anforderung als die SCSI- und ATA-Befehlssätze. NVMe benötigt weniger als die Hälfte der Anzahl von CPU-Befehlen als der SCSI-Befehlssatz bei SAS-Geräten und der ATA-Befehlssatz bei SATA-Laufwerken.

Geschichte und Entwicklung von NVM Express

Die Arbeitsgruppe Non-Volatile Memory Host Controller Interface (NVMHCI) begann 2009 mit der Entwicklung der NVMe-Spezifikation und veröffentlichte die Version 1.0 am 1. März 2011.

NVMe Formfaktoren und Standards

Der Bedarf an einer Speicherschnittstelle und einem Protokoll zur besseren Nutzung des Leistungspotenzials von NAND-Flash in Unternehmensumgebungen war der Hauptimpuls für die Entwicklung der NVMe-Spezifikation. Aber die Neudefinition des Verbindungsstandards öffnete die Türen zu verschiedenen Arten von Schnittstellenimplementierungen, die innerhalb der Grenzen der neuen Spezifikation bleiben konnten und gleichzeitig eine Vielzahl von Implementierungsoptionen boten.

In kurzer Zeit tauchten eine Reihe von Flash-Formfaktoren auf, die den NVMe-Spezifikationen entsprachen, darunter Add-in-Karten (AIC) vom herkömmlichen Typ für den PCIe-Bus und neue Formfaktoren für SSDs mit den Bezeichnungen M.2 und U.2.

AIC. Mit dem AIC-Formfaktor können Hersteller ihre eigenen Karten erstellen, die sich in den PCIe-Bus einschieben lassen, ohne sich Gedanken über Speicherschachtdesigns oder ähnliche Einschränkungen machen zu müssen. Die Karten sind oft für spezielle Anwendungsfälle konzipiert und können zusätzliche Prozessoren und andere Chips enthalten, um die Leistung des Festkörperspeichers zu verbessern.

M.2. Der M.2-Formfaktor wurde entwickelt, um die Vorteile der kompakten Größe und der geringen Wärmeabgabe von NAND-Flash zu nutzen. Daher sind M.2-Bausteine nicht dafür vorgesehen, in herkömmliche Laufwerksschächte zu passen, sondern eher für den Einsatz in viel kleineren Räumen vorgesehen. M.2-SSDs, die oft als etwa so groß wie ein Kaugummi beschrieben werden, sind 22 mm breit und im Allgemeinen 80 mm lang, obwohl einige Produkte länger oder kürzer sein können.

U.2. Im Gegensatz zum M.2-Formfaktor wurden die U.2-SSDs so konzipiert, dass sie in vorhandene Speicherschächte passen, die ursprünglich für Standard-SATA- oder SAS-Geräte vorgesehen waren. U.2-SSDs sehen diesen älteren Medien sehr ähnlich, da sie in der Regel die 2,5- oder 3,5-Zoll-Gehäuse verwenden, die für HDDs bekannt sind. Die Idee war natürlich, die Implementierung der NVMe-Technologie so einfach wie möglich zu machen, und zwar mit so wenig Reengineering wie möglich.

Ein weiterer, weniger weit verbreiteter NVMe-Formfaktor ist der SSD-Formfaktor (EDSFF) für Unternehmen und Rechenzentren. Er wird von wichtigen Akteuren der Speicherbranche unterstützt, wie Intel, Dell EMC, Hewlett Packard Enterprise (HPE), Lenovo, Samsung und anderen. Das Ziel von EDSFF ist es, die Leistung und Kapazität von Speichersystemen der Unternehmensklasse zu erhöhen. Das vielleicht bekannteste Beispiel für EDSFF-Flash sind die E1.L- (lang) und E1.S- (kurz) Flash-Geräte von Intel, die in dem ursprünglich als "Lineal"-Formfaktor bezeichneten Format angeboten werden.

Diese Artikel könnte Sie ebenfalls interessieren: