La montée en puissance des supports de stockage de masse est rapide. Elle s’accompagne d’un nouveau protocole NVMe destiné à remplacer ceux ayant été créés pour les disques magnétiques.

Alors que NVMe en est train de remplacer les protocoles SAS et SATA, NVMEoF devrait constituer une évolution logique pour les protocoles Fiber Channel et iSCSI. NVMEoF supporte les protocoles Ethernet (il prend alors l’appellation RoCE) et Infiniband. L’arrivée de ce standard permet de résoudre l’écart de performance qui s’est agrandit entre les performances des processeurs et du stockage.

Auparavant, il y avait l’IDE (Integrated Drive Electronics) pour les PC grand public et le SCSI pour les applications professionnelles. Ces deux interfaces parallèles étaient assez différentes : si la première permettait de connecter deux disques (durs ou optiques) par port, la seconde faisait appel à un protocole plus complexe et permettait de connecter non seulement les disques durs professionnels, mais aussi d’autres périphériques comme des scanners par exemple. L’IDE a depuis été remplacé par le SATA (Serial ATA), une interface série autorisant la connexion d’autant de lecteurs qu’il y a de ports.

Aujourd’hui, Le SCSI a été remplacé par le SAS (Serial Attached SCSI), qui fonctionne en mode série comme le SATA, mais offre, tant sur le plan de l’infrastructure que des lecteurs proprement dits, un certain nombre de fonctions pour les environnements professionnels, à commencer par la prise en charge des disques SATA sur les contrôleurs SAS.

Depuis leur lancement, les disques SSD utilisaient des interfaces SATA, SAS ou Fibre Channel pour se connecter avec les ordinateurs. Avec le développement des SSD, SATA s’est imposée au niveau des PC alors même qu’elle avait été conçue pour les disques magnétiques. Avec le temps et les améliorations apportées sur les SSD, le SATA est devenu de plus en plus inadapté constituant une sorte de goulet d’étranglement. Cette situation s’est prolongé jusqu’en 2014.

9 NVMe 3

Rappelons que les disques durs sont constitués de multiples plateaux qui tournent et sur lesquels des têtes peuvent réaliser les opérations de lecture/écriture. Mais cette tête ne peut lire qu’un secteur à la fois. Les protocoles ont donc été conçus en tenant compte de cette contrainte. De leur côté, les disques SSD regroupent des modules des mémoires flash de telle sorte que qu’il est possible d’accéder à de multiples blocs simultanément. D’où l’idée simple de concevoir un protocole qui tire parti de ce parallélisme.

L’arrivée du NVMe (Non-Volatile Memory Host Controller Interface Specifications ou NVMHCI) permet donc de remédier à ces limitations. C’est un protocole qui s’appuie sur ces cartes PCI Express (PCIe). Les premiers éléments de ce nouveau protocole ont été détaillés à l’occasion de l’Intel Developer Forum 2007 avec la publication sur le site web d’Intel des premières spécifications NVMHCI 1.0 finalisées en avril 2008.

Un groupe de travail sur NVMe a été formé dans la deuxième moitié de 2009. Des spécifications plus abouties ont été développées par le NVM Express Workgroup qui regroupait 90 entreprises. Et la version 1.0 de NMVe a été officialisée en mars 2011 et 1.1 en octobre de la même année. Parmi les principales fonctionnalités apportées dans cette v1.1 on peut citer le parallélisme (multi-path I/O avec partage de namespace) et arbitrary-length scatter-gather I/O. Fondé sur ces nouvelles spécifications, cette version a été baptisée « Enterprise NVMHCI ». En juin 2011, un groupe de promotion mené par 7 entreprises a été formé.

9 NVMe 1

9 NVMe 2

Les premiers chipsets commercialement disponibles ont été introduits par Integrated Device Technology en août 2012. Et les premiers drives NVMe ont été proposés sous l’appellation XS1715 par Samsung en juillet 2013. Selon Samsung, ce drive offrait un débit en lecture de 3 Gbits/s, six fois plus rapide que ce qui existait précédemment. Le SandForce SF3700 annoncé en novembre 2013 supportait également le NVMe. D’autres modèles ont suivi et les drives NVMe sont devenus commercialement disponibles.

En mars 2014, le groupe de travail a changé de statut juridique et d’appellation NVM Express Inc regroupant alors 65 entreprises. Il développe les spécifications et en a la propriété. En septembre 2014, un nouveau standard utilisant NVMe sur un bus Fibre Channel (NVMEoF) est également en développement. Ce standard s’appuie deux protocoles : Ethernet et Infiniband.

Parmi les fournisseurs de systèmes de stockage pour entreprises, plusieurs s’appuie sur ce nouveau standard NVMe. Parmi celles-ci déjà mentionnés dans nos colonnes, on peut citer Mangstor (Mangstor propose des SAN ultra-rapides) qui propose des systèmes pour les supercalculateurs, Tegile (Tegile ou la hiérarchisation des mémoires) qui développe un système évolutif entre hybride et tout SSD pour trouver le meilleur compromis entre capacité de stockage et performance et Flashgrid spécialisée dans les systèmes hyperconvergés.

Parmi les principaux bénéfices du NVMe, on peut citer une réduction du temps de latence, une augmentation du nombre d’IOPS (en particulier grâce au parallélisme) et une réduction de la consommation électrique.