Résumé
- NVM Express, Inc. est une alliance industrielle à but non lucratif qui gère la famille de spécifications NVMe; elle ne fabrique ni SSD, ni contrôleurs, ni commutateurs, ni baies de stockage.
- NVMe remplace le modèle de files d'attente plus étroit et plus sérial de l'ère des disques durs par plusieurs paires de files de soumission et de files de complétion en mémoire, mieux adaptées à la mémoire flash parallèle et aux processeurs multi-cœurs.
- Les mêmes sémantiques de contrôleur, de sous-système et d'espace de noms peuvent fonctionner à l'intérieur du serveur via PCIe, ou être proposées sur des réseaux TCP ou RDMA grâce à NVMe over Fabrics.
- NVMe 2.x adopte une architecture modulaire. L'ensemble de spécifications 2.4 rendu public le 4 août 2026 comprend Base, les transports PCIe/RDMA/TCP, NVMe-MI, Boot et plusieurs ensembles de commandes dédiés.
- Le protocole améliore la composabilité de la capacité, mais ne définit ni système de fichiers, ni persistance, ni RAID, ni codage à effacement, ni conception réseau, ni sécurité opérationnelle, ni cohérence applicative.
Les commandes de stockage peuvent quitter le serveur sans changer le langage de base
Une requête de lecture peut être envoyée à un espace de noms sur un SSD PCIe local, ou via une fabrique à un sous-système distant. Le support, le contrôleur et le chemin changent, mais le modèle de commandes, de files d'attente et d'espaces de noms reste globalement le même.
C'est le fondement du découplage du stockage. La capacité peut être centralisée dans des pools partagés puis allouée à la demande aux hôtes, sans avoir à installer chaque disque dans le châssis qui l'utilise.
Mais quitter le serveur ajoute la découverte, le réseau, le multichemin, l'authentification, la reconnexion et un nouveau domaine de défaillance. NVMe fait du stockage un service programmable, sans faire disparaître la topologie.
La mémoire flash nécessite un protocole conçu pour le parallélisme
Les interfaces de stockage traditionnelles étaient limitées par la recherche mécanique et un nombre réduit d'opérations concurrentes. La mémoire flash peut traiter un grand nombre de requêtes simultanément, et les serveurs modernes possèdent de nombreux cœurs de processeur.
NVMe utilise des files de soumission et de complétion situées en mémoire. L'hôte écrit une commande, notifie le contrôleur via une cloche (doorbell), puis lit la complétion par interruption ou par scrutation. Plusieurs paires de files peuvent être attribuées à différents cœurs ou processus, réduisant ainsi les verrous partagés et la contention.
Le résultat réel dépend toujours du firmware du contrôleur, de la topologie PCIe, du NUMA, de la profondeur des files, de la stratégie d'interruption et de la charge de travail. Adopter NVMe ne garantit pas automatiquement un niveau de performance fixe.
L'alliance sépare la gouvernance du protocole de la concurrence entre produits
Le travail sur NVMe a commencé à la fin des années 2000, la spécification 1.0 a été publiée en 2011, et NVM Express, Inc. a été créée en 2014. Les membres de l'alliance viennent des secteurs des processeurs, de la mémoire flash, des contrôleurs, des réseaux, des systèmes et du cloud.
À la date de clôture de la recherche, Amber Huffman de Google était présidente, Curtis Ballard d'AMD trésorier, et David Allen de Microchip secrétaire; le conseil d'administration public listait treize représentants promoteurs.
L'alliance gère les contrats, les modifications et le cadre de conformité; les membres continuent de rivaliser sur les puces, le firmware, la conception des systèmes, le support et les performances. Participer aux travaux de normalisation ne signifie pas qu'un produit implémente toutes les fonctionnalités.
NVMe 2.0 a décomposé le document unique en une famille modulaire
Avec l'apparition de transports autres que PCIe et de nouveaux modèles de données, il devenait de plus en plus difficile de tout conserver dans un seul document. La refonte NVMe 2.0 de 2021 a séparé Base, les ensembles de commandes et les transports.
Ainsi, le transport TCP peut évoluer indépendamment, et les espaces de noms zonés peuvent être étendus sans modifier tous les contrôleurs traditionnels. Le coût est que les acheteurs doivent gérer des combinaisons de versions plus complexes.
L'ensemble NVMe 2.4 publié le 4 août 2026 comprend Base 2.4, PCIe Transport 1.4, RDMA Transport 1.3, TCP Transport 1.3, NVMe-MI 2.2, Boot 1.4, ainsi que les ensembles de commandes NVM, Key Value, Zoned Namespace, Computational Programs et Simple Log Memory. « NVMe 2.4 » n'est pas un fichier unique.
Les files de soumission et de complétion rapprochent le travail de stockage des cœurs de processeur
L'hôte écrit une commande dans la file de soumission, le contrôleur écrit le résultat dans la file de complétion. Différents cœurs ou applications peuvent utiliser des paires de files indépendantes, réduisant ainsi les verrous globaux et les changements de contexte.
La cloche (doorbell) sert à notifier le nouveau travail. Le scrutation peut réduire certaines latences mais consomme en permanence du CPU; l'agrégation d'interruptions économise le CPU mais peut augmenter l'attente. La profondeur des files affecte l'utilisation et la latence de queue.
Une file plus profonde n'est pas toujours préférable. Elle peut masquer la saturation et allonger les temps d'attente. Une configuration correcte doit partir de la charge de travail et des accords de niveau de service.
Contrôleur, sous-système et espace de noms séparent les points de terminaison logiques du support physique
Le contrôleur expose les files et les commandes. Un sous-système peut contenir plusieurs contrôleurs. L'espace de noms représente une capacité logique, pouvant être présentée à l'hôte via différents contrôleurs et chemins.
L'identité visible par l'hôte ne correspond donc pas nécessairement à un SSD physique. Une baie peut composer différents supports et fournir un espace de noms stable.
NVMe ne décide pas comment les données sont placées, répliquées ou protégées. Le RAID, le codage à effacement, le provisionnement fin, les instantanés et la cohérence applicative restent de la responsabilité des couches supérieures.
Les commandes Admin sont aussi critiques que les E/S ordinaires
La file Admin sert à identifier le dispositif, créer des files d'E/S, définir des fonctions, lire des journaux, gérer le firmware, les espaces de noms et la sécurité. Elle contrôle l'environnement dans lequel les lectures et écritures ordinaires se produisent.
Une commande Admin erronée peut supprimer un espace de noms, activer un mauvais firmware ou modifier l'état d'alimentation. Les permissions, l'audit et le contrôle des modifications doivent couvrir cette couche.
La séparation entre Admin et E/S est positive pour l'architecture, mais ne signifie pas que le plan de contrôle est secondaire. Dans une fabrique, les deux dépendent parfois du même réseau et du même système d'identité.
Le PCIe rapproche le chemin local de la mémoire et du matériel
NVMe over PCIe communique via des structures mémoire partagées sur le bus local et les registres du contrôleur; c'est le chemin direct pour les SSD et cartes dans le serveur.
La proximité physique ne signifie pas une topologie simple. Le dispositif peut se trouver derrière un commutateur PCIe, être connecté à un autre socket NUMA ou partager des voies. L'emplacement du CPU, de la mémoire et du dispositif affecte les performances.
On ne peut donc pas se contenter de compter les disques. Une latence anormale peut provenir du chemin PCIe à l'intérieur de l'hôte avant même d'atteindre le support.
NVMe over Fabrics transforme la relation locale au contrôleur en service réseau
NVMe-oF 1.0 et NVMe-MI 1.0 ont été publiés le 9 juin 2016. NVMe-oF transmet les capsules de commandes et les données à un sous-système distant; l'hôte établit des files via la fabrique et accède aux espaces de noms.
Cela permet la mise en pool de la capacité et la séparation calcul/stockage. L'hôte peut être remplacé tandis que les données restent dans le système partagé.
En même temps, les cartes réseau, les commutateurs, les routes, la découverte, les contrôleurs, l'authentification et le multichemin entrent dans le chemin de données. Le réseau n'est plus une simple « connexion », il fait partie intégrante de l'intégrité du stockage.
Le contrôleur de découverte simplifie l'accès dynamique mais crée une dépendance critique
L'hôte peut interroger le contrôleur de découverte pour obtenir les sous-systèmes, adresses et services disponibles. Cela évite de configurer manuellement chaque chemin vers chaque cible et facilite l'ajout ou le retrait dynamique de ressources.
Une information erronée ou une interruption du service de découverte peut bloquer de nouvelles connexions ou diriger l'hôte vers une mauvaise cible. Redondance, cache, protection de l'identité et validation du contenu sont nécessaires.
La disponibilité de la découverte diffère de celle du chemin de données. Des sessions existantes peuvent continuer à fonctionner tandis que de nouveaux hôtes ne peuvent pas découvrir le service.
NVMe/TCP amène le stockage en fabrique sur les réseaux IP ordinaires
Normalisé en 2019, NVMe/TCP mappe les commandes et les données sur des connexions TCP. Les opérateurs peuvent utiliser l'Ethernet routable, les outils IP, les pare-feu et les pratiques réseau habituelles, sans construire de fabrique RDMA.
Cette commodité a un coût. La pile TCP, les copies, les interruptions et le CPU peuvent affecter la latence de queue. L'implémentation du noyau, le déchargement, la taille des transferts et le réglage sont importants.
Le transport définit également un cadrage et des digests spécifiques au stockage, et peut utiliser TLS. Le support de TLS ne signifie pas qu'il est activé ou exploité en toute sécurité.
NVMe/RDMA vise la faible latence mais exige une ingénierie de fabrique plus stricte
RDMA réduit l'intervention du CPU grâce aux paires de files, à la mémoire enregistrée et au déchargement des cartes réseau, adapté aux scénarios HPC et IA où les microsecondes et les cycles CPU comptent.
RDMA n'est pas un réseau unique. Les liaisons RoCE, iWARP, etc., exigent des approches différentes en matière de congestion, de perte de paquets, de PFC, d'ECN et de gestion de la mémoire.
Un benchmark de faible latence ne signifie pas une exploitation simple. Une panne réseau peut se manifester comme un délai d'attente de stockage, nécessitant un diagnostic conjoint des équipes réseau et système.
Le multichemin transforme la redondance en choix stratégique de l'hôte
Un espace de noms peut être accessible via plusieurs contrôleurs et chemins. L'hôte décide de l'équilibrage de charge et du basculement. L'accès asynchrone aux espaces de noms (ANA) indique les chemins optimisés, non optimisés ou indisponibles.
Deux liaisons peuvent toujours partager un commutateur, un contrôleur, une alimentation ou une route. La véritable indépendance doit être vérifiée par des tests de panne.
Une politique erronée peut conserver un mauvais chemin pendant longtemps, ou envoyer les E/S vers un chemin plus lent. La redondance doit être mesurée par le comportement réel, pas par le nombre de ports.
Les réservations coordonnent l'accès partagé mais ne remplacent pas le consensus de cluster
La réservation NVMe permet à un hôte de s'enregistrer et de réserver un espace de noms, empêchant les écritures non autorisées, couramment utilisée dans les clusters et le basculement.
Elle ne remplace pas un protocole de consensus ni la cohérence applicative. Un hôte en panne peut laisser un état de réservation; le processus de récupération doit exclure les anciens nœuds pour éviter qu'ils n'écrivent à nouveau.
Une mauvaise récupération peut transformer le mécanisme de protection en source d'indisponibilité ou de corruption de données.
Lorsque le stockage quitte le PCIe, l'authentification et le TLS deviennent indispensables
Les dispositifs locaux héritent souvent de la frontière physique. Une fois connecté via le réseau, l'initiateur et la cible doivent prouver leur identité et protéger les canaux de contrôle et de données appropriés.
NVMe définit des mécanismes d'authentification, et NVMe/TCP peut utiliser TLS. La sécurité réelle dépend des clés, des certificats, de la rotation, des algorithmes, des politiques d'accès et de la qualité de l'implémentation. L'existence d'une fonctionnalité ne signifie pas qu'elle est configurée de manière sécurisée.
La découverte, le plan admin et le plan de données doivent être évalués ensemble. Une identité authentique peut aussi avoir des permissions trop larges.
NVMe-MI fournit un chemin de gestion indépendant des E/S applicatives
L'interface de gestion NVMe permet aux outils de découvrir un sous-système, lire l'état de santé, inventorier les dispositifs et exécuter certaines actions de gestion, même si le chemin d'E/S principal n'est pas utilisé par l'application.
Cela facilite la maintenance et la récupération, mais ajoute une autre interface à privilèges élevés. Les plateformes de gestion centralisées peuvent lire des informations sensibles ou modifier les dispositifs en masse.
NVMe-MI peut s'intégrer à des systèmes de gestion comme Redfish. L'intégration ne signifie pas que les responsabilités des différentes organisations de normalisation et des fournisseurs sont fusionnées.
Zoned Namespace expose les contraintes du support au logiciel hôte
ZNS divise la capacité en zones à écriture séquentielle. En connaissant la disposition du support, le logiciel peut réduire le garbage collection interne du contrôleur, améliorant l'endurance ou la prévisibilité.
Les bénéfices exigent que le système de fichiers, la base de données ou la couche de stockage comprenne les zones. Les applications conçues pour les dispositifs à blocs traditionnels n'en tirent pas automatiquement avantage.
ZNS illustre le compromis de NVMe: exposer davantage le comportement du support peut améliorer l'efficacité, mais augmente le coût de portabilité du logiciel.
Key Value, Simple Log Memory et Computational Programs étendent la signification de l'espace de noms
Les ensembles de commandes dédiés prennent en charge l'accès clé-valeur, la mémoire journal simple ou l'exécution de programmes à proximité du stockage, visant à réduire les conversions et les déplacements de données.
L'adoption dépend du contrôleur, des pilotes, des bibliothèques et des applications. Écrire une spécification ne signifie pas que tous les SSD et baies l'implémentent.
Plus il y a de fonctionnalités, plus la découverte des capacités et le repli sont importants. La modularité apporte de la flexibilité mais aussi une nouvelle matrice de compatibilité commerciale.
La conformité fournit des preuves utiles mais ne certifie pas les performances de bout en bout
Le programme de conformité et les ateliers d'interopérabilité testent des comportements spécifiques hôte-contrôleur et peuvent révéler des divergences invisibles à la simple lecture des spécifications.
Figurer sur une liste ne signifie pas posséder un niveau de latence, d'endurance, de récupération ou de sécurité dans chaque topologie. Les fonctionnalités optionnelles et la matrice pilotes-firmware évoluent constamment.
Les acheteurs devraient considérer la conformité comme un plancher et tester leurs propres charges de travail, pannes et procédures de mise à niveau.
Le découplage du stockage sépare la capacité des serveurs et redistribue les responsabilités
Le stockage local lie souvent les dispositifs, les hôtes et les équipes système. Un pool distant peut servir plusieurs consommateurs et ajuster l'allocation via le logiciel.
Les équipes réseau, stockage, plateforme, sécurité et application partagent donc le même incident. Une dégradation de la fabrique peut ressembler à un problème de base de données, et un problème de firmware de contrôleur peut ressembler à une perte réseau.
Les bénéfices économiques dépendent du taux d'utilisation de la capacité et des capacités opérationnelles, pas seulement du prix par téraoctet.
L'IA transforme la latence de stockage en coût de calcul direct
Les tâches d'entraînement chargent des ensembles de données, écrivent des points de contrôle et échangent des états à grande échelle. Lorsque des milliers d'accélérateurs attendent, la latence de queue du stockage gaspille des ressources de calcul coûteuses.
TCP, RDMA, le multichemin et les espaces de noms partagés offrent différentes architectures. Le choix doit considérer la congestion, les métadonnées, le comportement des files, les pannes et la récupération.
L'objectif ne devrait pas être seulement le débit maximal, mais le maintien de temps de file d'attente et de récupération prévisibles sous charge synchrone.
NVMe 2.4 illustre l'étendue du protocole et accentue la pression des versions
L'ensemble 2.4 coordonne Base, les transports, Boot, l'interface de gestion et les ensembles de commandes dédiés. NVMe est devenu une pile complète, pas seulement une interface de SSD.
Un hôte peut prendre en charge Base 2.4 sans tous les ensembles de commandes; un contrôleur TCP peut aussi avoir des fonctionnalités différentes d'un produit RDMA. Les déclarations de support doivent être précises.
La matrice formée par les pilotes, les systèmes d'exploitation, les firmwares, les transports et les outils de gestion fait en pratique partie du protocole.
NVMe rend le stockage composable mais ne simplifie pas le service
Un protocole commun réduit un coût de changement: les commandes et les espaces de noms peuvent passer du PCIe à une fabrique, ou d'un fournisseur à un autre. Les coûts de migration des données, d'identité, de sécurité, de réseau, d'observabilité et de support restent.
L'avantage est une séparation plus claire entre protocole et produits. Le risque est que le nom « NVMe » masque des architectures très différentes.
Le stockage est ainsi plus programmable et plus distribuable, mais reste un système d'intégrité des données qui doit être explicable en cas de panne.
Briefing des membres
Contexte approfondi du profil
Connectez-vous avec le bon niveau d'adhésion pour débloquer le briefing complet et les notes de source.
Réservé à Strategic Circle
Strategic Circle
Ouvert à tous les lecteurs. Débloquez les briefings de profil après adhésion et connexion.
Rejoindre Strategic CircleRéservé aux membres de Leadership Alliance
Leadership Alliance
Réservé aux propriétaires et dirigeants qualifiés d'actifs IP ; connectez-vous pour débloquer les briefings Alliance.
Rejoindre Leadership Alliance
