La sortie des spécifications NVMe 2.0 a été publiée hier. D'un modeste protocole pour les périphériques de stockage par blocs utilisant PCI Express, NVMe évolue vers l'un des protocoles de stockage les plus importants et les plus polyvalents pour pratiquement tous les types de stockage. Les nouvelles spécifications piloteront l'écosystème des périphériques NVMe : SSD, cartes mémoire, accélérateurs et même disques durs.
Au lieu d'une spécification de base pour les SSD PCIe typiques et d'une spécification NVMe-over-Fabrics (NVMe-oF) distincte, la version 2.0 a été conçue à l'origine comme modulaire et comprend un certain nombre de normes distinctes : un ensemble de base (NVMe Base), des ensembles d'instructions distincts (NVM, ZNS, KV), les spécifications de la couche de transport (PCIe, Fibre Channel, RDMA, TCP) et les spécifications de l'interface de gestion (NVMe Management Interface). Ensemble, ils définissent la manière dont le logiciel hôte interagit avec les disques et les pools de stockage via PCI Express, RDMA, etc.
La spécification de base couvre désormais à la fois les périphériques locaux et NVMe-oF, mais est beaucoup plus abstraite et n'est pas liée au monde réel - tant de choses ont été supprimées qu'il ne suffit plus de définir toutes les fonctionnalités nécessaires pour implémenter même un simple SSD. Les appareils réels doivent référencer au moins une autre spécification de couche de transport et une spécification de jeu d'instructions. En particulier, pour les SSD typiques auxquels tout le monde est habitué, cela signifie utiliser la spécification de transport PCIe et le jeu d'instructions de stockage par blocs.
Trois jeux d'instructions standardisés (Block Access, ZNS et Key-Value) vont de simples disques SSD avec de fines abstractions sur la mémoire flash sous-jacente à des disques intelligents relativement complexes qui prennent en charge certaines des tâches de gestion du stockage traditionnellement effectuées. système. Cependant, différents espaces de noms derrière le même contrôleur sont autorisés à prendre en charge différents ensembles de commandes.
NVMe 2.0 ajoute également un mécanisme de gestion de pool de stockage standard qui permet une gestion plus granulaire de la charge de travail en fonction des performances, de la capacité et de l'endurance de périphériques spécifiques. La hiérarchie du pool a également été étendue avec un autre niveau de domaines, au sein duquel des groupes existent désormais, où, à leur tour, des ensembles séparés de périphériques NVM sont situés.
Les futurs jeux d'instructions, tels que ceux pour le stockage informatique, sont toujours en cours de développement et ne sont pas encore prêts pour la normalisation, mais la nouvelle approche NVMe 2.0 facilitera leur ajout au besoin. En principe, la norme Open Channel pourrait également faire partie de NVMe, mais l'industrie pense que le paradigme de stockage zoné offre un équilibre plus raisonnable, et l'intérêt pour les SSD Open Channel diminue en faveur des solutions ZNS.
D'autres changements dans NVMe 2.0 incluent la prise en charge du CRC 32 bits et 64 bits, de nouvelles règles pour déconnecter en toute sécurité les périphériques dans le stockage partagé (lors de l'accès via plusieurs contrôleurs), un contrôle plus fin des droits d'accès - vous pouvez autoriser la lecture et l'écriture, mais interdire les commandes qui modifient les paramètres ou l'état du variateur - et des protocoles supplémentaires liés aux mises à jour du firmware.
Également dans NVMe 2.0, il existe une prise en charge explicite des disques durs. Bien qu'il soit peu probable que les disques durs passent bientôt à PCIe au lieu de SAS ou SATA, la prise en charge de tels supports signifie qu'à l'avenir, les entreprises pourront unifier leurs SAN avec NVMe-oF et abandonner les protocoles plus anciens comme iSCSI.
Dans l'ensemble, NVMe 2.0 n'apporte pas autant de nouvelles fonctionnalités qu'avec les versions précédentes. Cependant, la réorganisation de la spécification elle-même encourage une approche itérative et l'expérimentation de nouvelles fonctionnalités. Ainsi, au cours des prochaines années, les mises à jour seront probablement plus petites et plus fréquentes.
2021-06-04 03:46:37
Auteur: Vitalii Babkin