NVMe over TCP vs iSCSI : Évolution du stockage en réseau
Mar 05th, 2025 | 20 min read

Table Of Contents
- iSCSI : La leçon d’histoire rapide
- Qu'est-ce que NVMe ?
- La différence fondamentale entre les disques rotatifs et NVMe
- NVMe over Fabrics : Stockage Flash sur le Réseau
- NVMe over TCP vs iSCSI : La comparaison
- Les arguments convaincants pour NVMe over TCP
- Choisir entre NVMe over TCP et iSCSI
- Simplyblock : Adopter la Polyvalence
- L'Avenir de NVMe over TCP
- Questions et Réponses
TLDR : Dans une comparaison directe de NVMe over TCP vs iSCSI, nous voyons que NVMe over TCP surpasse iSCSI dans toutes les catégories avec des améliorations des IOPS allant jusqu’à 50 % (et plus) et des améliorations de la latence allant jusqu’à 34 %.
Lorsque les données augmentent, le stockage doit aussi augmenter. C’est alors que les systèmes SAN (Storage Area Network) attachés à distance entrent en jeu. Jusqu’à présent, ces systèmes étaient couramment connectés par l’un des trois protocoles suivants : Fibre Channel, Infiniband, ou iSCSI. Cependant, ce dernier étant du côté « bas de gamme », sans nécessiter de matériel spécifique pour fonctionner. NVMe over Fabrics (NVMe-oF), et spécifiquement NVMe over TCP (NVMe/TCP) en tant que successeur d’iSCSI, est en pleine ascension pour remplacer ces protocoles hérités et apporter des améliorations immédiates en termes de latence, de débit et d’IOPS.

iSCSI : La leçon d’histoire rapide

iSCSI est un protocole qui connecte des solutions de stockage à distance (généralement des appareils de stockage matériel) aux clients de stockage. Ces derniers sont typiquement des serveurs sans (ou avec un stockage local minimal), ainsi que des machines virtuelles. Ces dernières années, nous avons également vu l’utilisation d’iSCSI comme backend pour le stockage de conteneurs.
iSCSI signifie Internet Small Computer Storage Interface et encapsule les commandes SCSI standard dans des paquets TCP/IP. Cela signifie qu’iSCSI fonctionne sur des réseaux Ethernet classiques, éliminant ainsi le besoin de matériel spécialisé tel que des cartes réseau (NIC) et des commutateurs.
Le standard iSCSI a été publié pour la première fois au début des années 2000. Un monde très différent d’aujourd’hui. Vous souvenez-vous à quoi ressemblait un téléphone en 2000 ?
Cela dit, bien qu’il y ait eu un accès aux premiers systèmes basés sur la mémoire flash, les prix étaient encore exorbitants, et les systèmes de stockage étaient conçus avec des disques tournants en tête. Souvenez-vous-en. Nous y reviendrons plus tard.
Qu’est-ce que SCSI ?
SCSI, ou, vous l’avez deviné, Small Computer Storage Interface, est un ensemble de normes pour connecter et transférer des données entre des ordinateurs et des périphériques. Développé à l’origine dans les années 1980, SCSI a été une technologie fondamentale pour les interfaces de stockage de données, prenant en charge divers types de périphériques, principalement des disques durs, des lecteurs optiques et des scanners.
Alors que SCSI a continué à s’améliorer et à ajouter de nouvelles commandes pour des technologies comme NVMe, la base reste ancrée dans les années 1980. Cependant, de nombreuses normes utilisent toujours l’ensemble de commandes SCSI, comme SATA (ordinateurs personnels), SAS (serveurs), et iSCSI.
Qu’est-ce que NVMe ?
Non-Volatile Memory Express (NVMe) est une interface de stockage moderne basée sur PCI Express (PCI-e). Avec la spécification d’origine datant de 2011, NVMe est conçu spécifiquement pour les disques SSD (Solid-State Drives) connectés via le bus PCIe. Par conséquent, les périphériques NVMe sont directement connectés au processeur et aux autres périphériques du bus pour augmenter le débit et réduire la latence. NVMe réduit considérablement la latence et augmente le nombre d’opérations d’entrée/sortie par seconde (IOPS) par rapport aux interfaces de stockage traditionnelles.
Dans le cadre de la norme NVMe, des spécifications supplémentaires sont développées, telles que la spécification de transport qui définit comment les commandes NVMe sont transportées (par exemple, via le bus PCI Express, mais aussi des protocoles de mise en réseau comme TCP/IP).
La différence fondamentale entre les disques rotatifs et NVMe
Les disques durs traditionnels à plateaux rotatifs (HDD) reposent sur des plateaux tournants et des têtes de lecture/écriture mobiles pour écrire ou accéder aux données. Lorsque les données sont demandées, le composant mécanique doit être placé physiquement dans l’emplacement correct de la pile de plateaux, ce qui entraîne des latences d’accès importantes allant de 10 à 14 millisecondes.
Le stockage flash, y compris les périphériques NVMe, élimine les pièces mécaniques en utilisant des puces NAND flash à la place. La NAND stocke les données purement de manière électronique et permet des latences d’accès aussi faibles que 20 microsecondes (et même plus faibles sur des équipements ultra-haut de gamme). Cela les rend 100 fois plus rapides que leurs homologues HDD.
Pendant longtemps, le stockage flash avait le gros inconvénient d’une capacité de stockage limitée. Cependant, cet inconvénient s’est progressivement estompé avec l’introduction de périphériques de plus grande capacité. Par exemple, Toshiba vient d’annoncer un dispositif de stockage flash de 180 To.
Le coût, le deuxième inconvénient majeur, continue également de baisser avec les améliorations dans le développement et la production. Des technologies comme la NAND QLC offrent une densité de stockage incroyable à un prix abordable.
Quoi qu’il en soit, pourquoi évoqué-je le principe du stockage mécanique vs électronique ? La raison est simple : la latence d’accès. SCSI et iSCSI n’ont jamais été conçus pour des dispositifs à latence d’accès ultra-faible, car ces derniers n’existaient pas vraiment au moment de leur développement. Et, bien que des ajustements aient été apportés au protocole au fil des ans, leur conception fondamentale est obsolète et ne peut pas être modifiée pour des raisons de compatibilité ascendante.
NVMe over Fabrics : Stockage Flash sur le Réseau
NVMe over Fabrics (également connu sous le nom de NVMe-oF) est une extension de la spécification de base NVMe. Elle permet d’accéder au stockage NVMe via un réseau tout en maintenant les caractéristiques de faible latence et de haute performance des périphériques NVMe locaux.
NVMe over Fabrics lui-même est un ensemble de plusieurs sous-spécifications, définissant plusieurs protocoles de couche de transport.
- NVMe over TCP : NVMe/TCP utilise le protocole standard internet TCP/IP. Il fonctionne sur des réseaux Ethernet courants et peut fonctionner parallèlement au trafic réseau existant. Cela fait de NVMe over TCP le successeur moderne de iSCSI, prenant le relais là où iSCSI s’est arrêté. Par conséquent, NVMe over TCP est la solution idéale pour les solutions de stockage basées sur le cloud public qui ne fournissent généralement que des réseaux TCP/IP.
- NVMe over Fibre Channel : NVMe/FC repose sur le tissu de réseau Fibre Channel existant. Il tunnelise les commandes NVMe à travers les paquets Fibre Channel et permet de réutiliser le matériel Fibre Channel disponible. Je ne le recommanderais pas pour de nouveaux déploiements en raison du coût élevé d’entrée des équipements Fibre Channel.
- NVMe over Infiniband : Comme NVMe over Fibre Channel, NVMe/IB utilise les réseaux Infiniband existants pour tunnéliser le protocole NVMe. Si vous disposez déjà d’équipements Infiniband, NVMe over Infiniband pourrait être une option. Pour de nouveaux déploiements, le coût d’entrée initial est trop élevé.
- NVMe over RoCE : NVMe over Converged Ethernet est une couche de transport qui utilise un tissu Ethernet pour un accès direct à la mémoire à distance (RDMA). Pour utiliser NVMe over RoCE, vous avez besoin de cartes réseau (NIC) compatibles RDMA. RoCE existe en deux versions : RoCEv1, qui est un protocole de couche 2 et non routable, et RoCEv2, qui utilise UDP/IP et peut être routé à travers des réseaux complexes. NVMe over RoCE ne s’adapte pas aussi facilement que NVMe over TCP, mais offre des latences encore plus faibles.
NVMe over TCP vs iSCSI : La comparaison
Lors de la comparaison de NVMe over TCP vs iSCSI, nous observons des améliorations considérables dans les trois principaux critères : latence, débit et IOPS.

Les gens de chez Blockbridge ont réalisé une comparaison approfondie des deux technologies, montrant que NVMe over TCP a surpassé iSCSI, quel que soit le benchmark.
Je vais fournir ici les benchmarks les plus critiques, mais je vous recommande de lire l’article complet sur les benchmarks une fois que vous aurez terminé ici.
Quoi qu’il en soit, plongeons un peu plus profondément dans les faits réels du benchmark NVMe over TCP vs iSCSI.
Note de l’éditeur : Notre avocat du développeur, Chris Engelbert, a récemment donné une conférence à SREcon à Dublin, parlant des performances entre NVMe over TCP et iSCSI, ce qui a conduit à ce billet de blog. Retrouvez la présentation complète NVMe/TCP rend iSCSI aussi obsolète que Fortran.
Benchmarking du stockage en réseau
L’évaluation des performances du stockage implique la comparaison de quatre principaux indicateurs de performance.
- IOPS : Nombre d’opérations d’entrée/sortie traitées par seconde
- Latence : Temps nécessaire pour compléter une seule opération d’entrée/sortie
- Débit : Quantité totale de données transférées par unité de temps
- Overhead du protocole : Traitement supplémentaire requis par le protocole de communication
Note de l’éditeur : Pour la latence, le débit et les IOPS, nous avons un article de blog exhaustif qui explique en détail les besoins, leurs relations et comment les calculer.
Un test de performance complet implique des charges de travail simulées qui reflètent les scénarios réels. Pour simplifier ce processus, les benchmarks utilisent des outils comme FIO (Flexible I/O Tester) pour générer des données et des résultats de test cohérents et reproductibles à travers différentes configurations et systèmes de stockage.
Améliorations des IOPS avec NVMe over TCP vs iSCSI
Lors de l’exécution d’applications nécessitant beaucoup d’IOPS, le nombre d’IOPS disponibles dans un système de stockage est crucial. Une application intensive en IOPS désigne des systèmes tels que des bases de données, des plateformes d’analyse, des serveurs de ressources et des solutions similaires.
Améliorer les IOPS en échangeant le protocole de stockage en réseau est une victoire immédiate pour la base de données et pour nous.
L’utilisation de NVMe over TCP au lieu d’iSCSI montre une augmentation spectaculaire des IOPS, surtout pour les tailles de blocs plus petites. Avec une taille de bloc de 512 octets, Blockbridge a trouvé une augmentation moyenne de 35,4% des IOPS. Avec une taille de bloc plus courante de 4KiB, l’augmentation moyenne était de 34,8%.
Cela signifie que le même matériel peut fournir plus d’un tiers d’IOPS supplémentaires en utilisant NVMe over TCP contre iSCSI, sans coût supplémentaire.

Améliorations de la latence avec NVMe over TCP vs iSCSI
Alors que les cas d’utilisation gourmands en IOPS, tels que les événements de compression dans les bases de données (Cassandra), bénéficient de l’énorme augmentation des IOPS, les applications sensibles à la latence apprécient les faibles latences d’accès. La latence est le principal facteur qui pousse les utilisateurs à choisir le stockage NVMe local par rapport au stockage distant, malgré ses nombreux inconvénients.
Les applications sensibles à la latence vont des systèmes de trading haute fréquence, où chaque milliseconde compte, aux systèmes de télécommunications, où la latence peut introduire des problèmes de synchronisation des systèmes, jusqu’aux solutions de cybersécurité et de détection des menaces qui doivent réagir aussi rapidement que possible.
Par conséquent, la réduction de la latence est un avantage considérable pour de nombreuses industries et solutions. En dehors de cela, une latence d’accès plus faible accélère toujours l’accès aux données, même si votre système n’est pas nécessairement sensible à la latence. Vous sentirez la différence.
Blockbridge a trouvé le plus grand avantage dans la réduction de la latence d’accès avec une taille de bloc de 16KiB et une profondeur de file d’attente de 128 (ce qui peut facilement être atteint avec des solutions nécessitant des E/S). La latence moyenne pour iSCSI était de 5 871μs, contre 5 089μs pour NVMe over TCP. Une diminution de 782μs (~25%) de la latence d’accès, simplement en échangeant le protocole de stockage.

Amélioration du débit de NVMe over TCP vs iSCSI
En tant que troisième critère principal de la performance de stockage, le débit décrit la quantité de données réellement transférées depuis le disque vers votre charge de travail.
Le débit est un facteur majeur pour des applications telles que l’encodage vidéo ou les plateformes de streaming, les systèmes analytiques de grande taille et les serveurs de jeux diffusant d’immenses mondes en mémoire. De plus, il existe également des systèmes de stockage de séries temporelles, des lacs de données et des bases de données historiques.
Les systèmes gourmands en débit bénéficient d’un débit plus élevé pour « accomplir le travail plus rapidement ». Souvent, augmenter le débit n’est pas simple. Vous êtes soit limité par le débit fourni par le disque, soit, dans le cas d’un système attaché au réseau, par la bande passante du réseau. Pour atteindre un haut débit et une grande capacité, le stockage réseau distant utilise des réseaux à haute bande passante ou des systèmes de réseaux spécialisés comme Fibre Channel ou Infiniband.
Blockbridge a effectué ses tests sur une carte réseau à double port de 100Gbit/s, limitée par le bus PCI Express x16 Gen3 à un débit maximal d’environ 126Gbit/s. Les normes PCIe plus récentes permettent d’atteindre un débit bien plus élevé. Ainsi, les appareils NVMe et les cartes réseau ne sont plus limités par le facteur « limitant » du bus PCIe.
Avec une taille de bloc de 16KiB et une profondeur de file d’attente de 32, leur banc d’essai a montré une augmentation impressionnante de 2,3Go/s des performances avec NVMe over TCP par rapport à iSCSI. Le débit est passé de 10,387GBit/s avec iSCSI à 12,665GBit/s, soit une augmentation facile de 20 % – encore une fois, en utilisant le même matériel. C’est ainsi qu’on économise de l’argent.

Les arguments convaincants pour NVMe over TCP
Nous avons vu que NVMe over TCP présente des avantages de performance significatifs par rapport à iSCSI dans les trois principaux critères de performance de stockage. Cependant, il existe encore d’autres avantages à utiliser NVMe over TCP plutôt qu’iSCSI.
- Ethernet standard : Le principal avantage de NVMe over TCP est sa capacité à fonctionner sur des réseaux Ethernet standards. Contrairement aux technologies de réseau spécialisées (Infiniband, Fibre Channel), NVMe/TCP ne nécessite aucun investissement en matériel supplémentaire ni de configuration complexe, ce qui le rend remarquablement accessible pour les organisations de toutes tailles.
- Caractéristiques de performance : NVMe over TCP offre des performances exceptionnelles en minimisant la surcharge du protocole et en tirant parti de l’efficacité de la conception de NVMe. Il peut atteindre des latences comparables à celles du stockage local tout en offrant la flexibilité des ressources attachées au réseau. Les implémentations modernes peuvent soutenir des débits dépassant largement ceux des protocoles de stockage traditionnels.
- Facilité de déploiement : NVMe over TCP s’intègre facilement à Linux et Windows (Serveur 2025 et versions ultérieures), car les pilotes nécessaires font déjà partie du noyau. Cela rend l’implémentation et la gestion de NVMe/TCP particulièrement simples. Une compatibilité fluide réduit la courbe d’apprentissage et les défis d’intégration généralement associés aux nouvelles technologies de stockage.
Choisir entre NVMe over TCP et iSCSI
Choisir entre deux technologies n’est pas toujours facile. Toutefois, dans le cas de NVMe over TCP vs iSCSI, cela n’est pas si compliqué. Les cas d’utilisation pour le déploiement d’iSCSI sont rares. De mon point de vue, le seul cas d’utilisation valable est l’intégration de systèmes hérités existants qui ne prennent pas encore en charge NVMe over TCP.
C’est pourquoi Simplyblock, en tant que solution NVMe over TCP par défaut, propose également iSCSI si vous en avez vraiment besoin. Nous l’offrons exactement pour la raison que les migrations ne se font pas du jour au lendemain. Cependant, vous souhaitez tirer parti des avantages des technologies plus récentes, telles que NVMe over TCP, chaque fois que cela est possible. Avec Simplyblock, les volumes logiques peuvent facilement être provisionnés en tant que périphériques NVMe over TCP ou iSCSI. Vous pouvez même passer de iSCSI à NVMe over TCP plus tard.
Dans tous les cas, vous devriez opter pour NVMe over TCP lorsque :
- Vous exploitez des environnements de calcul haute performance
- Vous disposez de centres de données modernes avec une bande passante importante
- Vous déployez des charges de travail nécessitant un accès au stockage à faible latence, à haut IOPS ou à traversputs élevés
- Vous vous trouvez dans des scénarios nécessitant des solutions de stockage évolutives et flexibles
- Vous êtes dans toute autre situation nécessitant un stockage attaché à distance
Vous devriez rester sur iSCSI (ou migrer lentement) lorsque :
- Vous avez une infrastructure héritée avec des chemins de mise à niveau limités
Vous voyez, il n’y a pas beaucoup de raisons. Étant donné cela, il s’agit simplement de choisir votre nouvelle solution de stockage. Personnellement, ces jours-ci, je recommanderais toujours des solutions de stockage définies par logiciel telles que Simplyblock, mais je suis biaisé. Quoi qu’il en soit, un SDS offre le meilleur des deux mondes : du matériel de stockage standard (avec la possibilité d’opter pour un serveur de stockage 96 baies) et des performances.
Simplyblock : Adopter la Polyvalence
Simplyblock démontre une conception de stockage avant-gardiste en prenant en charge à la fois NVMe over TCP et iSCSI, offrant ainsi aux clients les meilleures performances lorsqu’elles sont disponibles et la possibilité de migrer lentement dans le cas de clients hérités existants.
De plus, Simplyblock offre des fonctionnalités bien connues des systèmes de stockage SAN traditionnels ou des « systèmes de fichiers » tels que ZFS. Cela inclut un backend complet en mode copy-on-write avec des instantanés et des clones instantanés. Il comprend également la réplication synchrone et asynchrone entre les clusters de stockage. Enfin, Simplyblock est votre solution de stockage moderne, fournissant du stockage pour des hôtes dédiés, des machines virtuelles et des conteneurs. Quel que soit le client, Simplyblock offre la meilleure intégration avec vos environnements existants et à venir.
L’Avenir de NVMe over TCP
À mesure que l’informatique d’entreprise et dans le cloud continue d’évoluer, NVMe over TCP se positionne comme la technologie de choix pour le stockage attaché à distance. Premièrement, elle combine simplicité, performance et compatibilité étendue. Deuxièmement, elle offre une solution rentable et évolutive utilisant du matériel réseau standard.
Le développement continu du protocole (dernière mise à jour des spécifications en mai 2024) et son adoption croissante montrent des améliorations continues en termes d’efficacité, de réduction de la latence et d’amélioration de l’évolutivité.
NVMe over TCP représente un pas en avant significatif dans la technologie de mise en réseau de stockage. De plus, en combinant les performances brutes de NVMe avec l’omniprésence du réseau Ethernet, cela offre une solution convaincante pour les environnements informatiques modernes. Bien qu’iSCSI reste pertinent pour des cas d’utilisation spécifiques et pendant les phases de migration, NVMe over TCP représente l’avenir et devrait être adopté dès que possible.
Chez Simplyblock, nous sommes heureux de faire partie de cette étape importante de l’histoire du stockage.
Questions et Réponses
Oui, NVMe sur TCP est supérieur à iSCSI de presque toutes les manières. NVMe sur TCP offre une surcharge de protocole plus faible, un meilleur débit, une latence plus faible et des IOPS plus élevés par rapport à iSCSI. Il est recommandé de ne pas utiliser iSCSI pour les infrastructures nouvellement conçues et de migrer les anciennes infrastructures chaque fois que cela est possible.
NVMe sur TCP est supérieur dans toutes les principales métriques de stockage, à savoir les IOPS, la latence et le débit. NVMe sur TCP offre jusqu’à 35 % de IOPS en plus, 25 % de latence en moins et un débit augmenté de 20 % par rapport à iSCSI en utilisant le même réseau et stockage.
NVMe/TCP est un protocole de réseau de stockage qui utilise le protocole TCP/IP, norme courante d’Internet, comme couche de transport. Il est déployé via des réseaux Ethernet standards et peut être exécuté parallèlement au trafic réseau existant, bien que la séparation via des VLAN ou des réseaux physiquement séparés soit recommandée. NVMe sur TCP est considéré comme le successeur du protocole iSCSI.
iSCSI est un protocole de réseau de stockage qui utilise le protocole TCP/IP, norme courante d’Internet, comme couche de transport. Il connecte des solutions de stockage distantes (généralement des appareils de stockage matériels) à des clients de stockage via un réseau Ethernet standard. iSCSI a été standardisé en 2000. De nombreuses entreprises remplacent iSCSI par le protocole supérieur NVMe sur TCP.
SCSI (Small Computer Storage Interface) est un ensemble de commandes qui connecte les ordinateurs et les périphériques et transfère les données entre eux. Développé initialement dans les années 1980, SCSI a été une technologie fondamentale pour les interfaces de stockage de données, prenant en charge divers types de périphériques tels que les disques durs, les lecteurs optiques et les scanners.
NVMe (Non-Volatile Memory Express) est une spécification qui définit la connexion et la transmission des données entre les périphériques de stockage et les ordinateurs. La spécification initiale a été publiée en 2011. NVMe est conçu spécifiquement pour les disques SSD (Solid State Drives) connectés via le bus PCIe. Les périphériques NVMe ont une latence et des performances améliorées par rapport aux anciennes normes telles que SCSI, SATA et SAS.