NVMe sobre TCP vs iSCSI: Evolución del almacenamiento en red
Mar 05th, 2025 | 18 min read

Table Of Contents
- iSCSI: Lección rápida de historia
- ¿Qué es NVMe?
- La diferencia fundamental entre discos giratorios y NVMe
- NVMe over Fabrics: Almacenamiento Flash en la Red
- NVMe over TCP vs iSCSI: La Comparativa
- El Caso Convincente para NVMe over TCP
- Elegir entre NVMe over TCP e iSCSI
- Simplyblock: Adoptando la Versatilidad
- El Futuro de NVMe over TCP
- Preguntas y Respuestas
TLDR: En una comparación directa de NVMe sobre TCP vs iSCSI, vemos que NVMe sobre TCP supera a iSCSI en todas las categorías con mejoras de IOPS de hasta un 50% (y más) y mejoras de latencia de hasta un 34%.
Cuando los datos crecen, el almacenamiento también necesita crecer. Es entonces cuando entran en juego los sistemas SAN (Storage Area Network) conectados remotamente. Hasta ahora, estos se conectaban comúnmente a través de uno de tres protocolos: Fibre Channel, Infiniband o iSCSI. Sin embargo, este último se encuentra en el lado «bajo» de las opciones, sin la necesidad de hardware especial para operar. NVMe sobre redes (NVMe-oF), y específicamente NVMe sobre TCP (NVMe/TCP) como sucesor de iSCSI, está en ascenso para reemplazar estos protocolos heredados y traer mejoras inmediatas en latencia, rendimiento y IOPS.

iSCSI: Lección rápida de historia

iSCSI es un protocolo que conecta soluciones de almacenamiento remoto (comúnmente dispositivos de almacenamiento hardware) con clientes de almacenamiento. Estos últimos son típicamente servidores sin (o con almacenamiento local mínimo), así como máquinas virtuales. En los últimos años, también hemos visto el uso de iSCSI como backend para almacenamiento de contenedores.
iSCSI significa Internet Small Computer Storage Interface y encapsula los comandos estándar de SCSI dentro de paquetes TCP/IP. Eso significa que iSCSI funciona sobre redes Ethernet comunes, eliminando la necesidad de hardware especializado como tarjetas de red (NICs) y conmutadores.
El estándar iSCSI se lanzó por primera vez a principios de 2000. Un mundo muy diferente al de hoy. ¿Recuerdas cómo era un teléfono en el año 2000?
Dicho esto, aunque ya existían los primeros sistemas basados en flash, los precios seguían siendo exorbitantes, y los sistemas de almacenamiento estaban diseñados pensando en discos giratorios. Recuerda eso. Volveremos a ello más tarde.
¿Qué es SCSI?
SCSI, o, como adivinaste, Small Computer Storage Interface, es un conjunto de estándares para conectar y transferir datos entre computadoras y dispositivos periféricos. Desarrollado originalmente en la década de 1980, SCSI ha sido una tecnología fundamental para interfaces de almacenamiento de datos, admitiendo varios tipos de dispositivos, principalmente discos duros, unidades ópticas y escáneres.
Mientras que SCSI seguía mejorando y añadiendo nuevos comandos para tecnologías como NVMe, la base sigue estando en los primeros años de la década de 1980. Sin embargo, muchos estándares todavía usan el conjunto de comandos SCSI, como SATA (para computadoras de hogar), SAS (servidores) e iSCSI.
¿Qué es NVMe?
Non-Volatile Memory Express (NVMe) es una interfaz de almacenamiento moderna basada en PCI Express (PCI-e). Con la especificación original datada en 2011, NVMe está diseñado específicamente para unidades de estado sólido (SSDs) conectadas a través del bus PCIe. Por lo tanto, los dispositivos NVMe están conectados directamente a la CPU y otros dispositivos en el bus para aumentar el rendimiento y reducir la latencia. NVMe reduce drásticamente la latencia y aumenta las operaciones de entrada/salida por segundo (IOPS) en comparación con las interfaces de almacenamiento tradicionales.
Como parte del estándar NVMe, se desarrollan especificaciones adicionales, como la especificación de transporte que define cómo se transportan los comandos NVMe (por ejemplo, a través del bus PCI Express, pero también protocolos de red como TCP/IP).
La diferencia fundamental entre discos giratorios y NVMe
Los discos duros tradicionales (HDD) giratorios dependen de platos giratorios físicos y cabezales de lectura/escritura móviles para escribir o acceder a los datos. Cuando se solicita datos, el componente mecánico debe colocarse físicamente en la ubicación correcta de la pila de platos, lo que resulta en latencias de acceso significativas que van de 10 a 14 milisegundos.
El almacenamiento flash, incluidos los dispositivos NVMe, elimina las partes mecánicas, utilizando en su lugar chips NAND flash. NAND almacena datos de forma puramente electrónica y alcanza latencias de acceso tan bajas como 20 microsegundos (e incluso más bajas en equipos de gama ultra alta). Eso los hace 100 veces más rápidos que sus contrapartes HDD.
Durante mucho tiempo, el almacenamiento flash tenía la gran desventaja de tener una capacidad de almacenamiento limitada. Sin embargo, esta desventaja ha ido desapareciendo lentamente con las empresas que introducen dispositivos de mayor capacidad. Por ejemplo, Toshiba acaba de anunciar un dispositivo de almacenamiento flash de 180 TB.
El costo, la segunda gran desventaja, también sigue cayendo con las mejoras en el desarrollo y la producción. Tecnologías como QLC NAND ofrecen una densidad de almacenamiento increíble por un precio asequible.
De todos modos, ¿por qué menciono el principio de almacenamiento mecánico vs. eléctrico? La razón es simple: la latencia de acceso. SCSI e iSCSI nunca fueron diseñados para dispositivos con latencia de acceso extremadamente baja porque realmente no existían en el momento de su desarrollo. Y, aunque se hicieron algunos ajustes en el protocolo a lo largo de los años, su diseño fundamental está desactualizado y no se puede cambiar por razones de compatibilidad hacia atrás.
NVMe over Fabrics: Almacenamiento Flash en la Red
NVMe over Fabrics (también conocido como NVMe-oF) es una extensión de la especificación base de NVMe. Permite que el almacenamiento NVMe sea accesible a través de una red, manteniendo las características de baja latencia y alto rendimiento de los dispositivos NVMe locales.
NVMe over Fabrics en sí es una colección de múltiples subespecificaciones, que definen múltiples protocolos de capa de transporte.
- NVMe over TCP: NVMe/TCP utiliza el protocolo estándar común de internet TCP/IP. Se implementa en redes Ethernet comunes y puede funcionar paralelamente con el tráfico de red existente. Esto hace que NVMe over TCP sea el sucesor moderno de iSCSI, tomando el relevo donde iSCSI lo dejó. Por lo tanto, NVMe over TCP es la solución perfecta para soluciones de almacenamiento basadas en la nube pública que típicamente solo proporcionan redes TCP/IP.
- NVMe over Fibre Channel: NVMe/FC se basa en la infraestructura de red existente de Fibre Channel. Túnela los comandos NVMe a través de paquetes de Fibre Channel y permite reutilizar el hardware disponible de Fibre Channel. No lo recomendaría para nuevas implementaciones debido al alto costo de entrada de los equipos de Fibre Channel.
- NVMe over Infiniband: Al igual que NVMe over Fibre Channel, NVMe/IB utiliza redes Infiniband existentes para túnelizar el protocolo NVMe. Si ya tienes equipo Infiniband existente, NVMe over Infiniband podría ser tu opción. Para nuevas implementaciones, el costo inicial de entrada es demasiado alto.
- NVMe over RoCE: NVMe over Converged Ethernet es una capa de transporte que utiliza una red Ethernet para el acceso remoto a memoria directa (RDMA). Para usar NVMe over RoCE, necesitas NICs compatibles con RDMA. RoCE tiene dos versiones: RoCEv1, que es un protocolo de capa 2 y no se puede enrutar, y RoCEv2, que utiliza UDP/IP y puede ser enrutable a través de redes complejas. NVMe over RoCE no se escala tan fácilmente como NVMe over TCP, pero proporciona latencias aún más bajas.
NVMe over TCP vs iSCSI: La Comparativa
Al comparar NVMe over TCP con iSCSI, vemos mejoras considerables en las tres métricas principales: latencia, rendimiento y IOPS.

Los chicos de Blockbridge realizaron una comparación exhaustiva de las dos tecnologías, que muestra que NVMe over TCP superó a iSCSI, independientemente del benchmark.
Aquí proporcionaré los benchmarks más críticos, pero te recomiendo leer el artículo completo de benchmarks justo después de terminar aquí.
De todos modos, vamos a profundizar un poco más en los hechos reales sobre el benchmark de NVMe over TCP vs iSCSI.
Nota del editor: Nuestro defensor de desarrolladores, Chris Engelbert, dio una charla recientemente en SREcon en Dublín, hablando sobre el rendimiento entre NVMe over TCP e iSCSI, lo que llevó a este artículo de blog. Encuentra la presentación NVMe/TCP hace que iSCSI parezca Fortran completa.
Benchmarking de Almacenamiento en Red
Evaluar el rendimiento del almacenamiento implica comparar cuatro indicadores clave de rendimiento.
- IOPS: Número de operaciones de entrada/salida procesadas por segundo
- Latencia: Tiempo requerido para completar una sola operación de entrada/salida
- Rendimiento: Total de datos transferidos por unidad de tiempo
- Sobre-carga del protocolo: Procesamiento adicional requerido por el protocolo de comunicación
Nota del editor: Para latencia, rendimiento y IOPS, tenemos un artículo de blog exhaustivo que habla más a fondo sobre las necesidades, sus relaciones y cómo calcularlos.
Una prueba de rendimiento completa involucra cargas de trabajo simuladas que imitan escenarios del mundo real. Para simplificar este proceso, los benchmarks utilizan herramientas como FIO (Flexible I/O Tester) para generar datos y resultados de prueba consistentes y reproducibles a través de diferentes configuraciones y sistemas de almacenamiento.
Mejoras de IOPS de NVMe over TCP vs iSCSI
Al ejecutar aplicaciones intensivas en IOPS, el número de IOPS disponibles en un sistema de almacenamiento es crítico. Las aplicaciones intensivas en IOPS incluyen sistemas como bases de datos, plataformas de análisis, servidores de activos y soluciones similares.
Mejorar los IOPS intercambiando el protocolo de red de almacenamiento es una ganancia inmediata para la base de datos y para nosotros.
Usar NVMe over TCP en lugar de iSCSI muestra un aumento dramático en IOPS, especialmente para tamaños de bloque más pequeños. Con un tamaño de bloque de 512 bytes, Blockbridge encontró un aumento promedio de 35.4% en IOPS. Con un tamaño de bloque más común de 4KiB, el aumento promedio fue de 34.8%.
Eso significa que el mismo hardware puede proporcionar más de un tercio más de IOPS usando NVMe over TCP frente a iSCSI sin costo adicional.

Mejoras de Latencia de NVMe over TCP vs iSCSI
Mientras que los casos de uso que requieren altos IOPS, como los eventos de compactación en bases de datos (Cassandra), se benefician del inmenso aumento de IOPS, las aplicaciones sensibles a la latencia prefieren las bajas latencias de acceso. La latencia es el factor principal que hace que las personas elijan almacenamiento local NVMe sobre almacenamiento remoto, a pesar de los inconvenientes que ello pueda conllevar.
Las aplicaciones sensibles a la latencia van desde sistemas de comercio de alta frecuencia, donde los milisegundos se miden en dinero real, hasta sistemas de telecomunicaciones, donde la latencia puede introducir problemas con la sincronización de los sistemas, pasando por soluciones de ciberseguridad y detección de amenazas que necesitan reaccionar lo más rápido posible.
Por lo tanto, disminuir la latencia es un beneficio significativo para muchas industrias y soluciones. Además, una latencia de acceso más baja siempre acelera el acceso a los datos, incluso si tu sistema no es necesariamente sensible a la latencia. Se notará la diferencia.
Blockbridge encontró el beneficio más significativo en la reducción de la latencia de acceso con un tamaño de bloque de 16KiB y una profundidad de cola de 128 (lo que se puede alcanzar fácilmente con soluciones exigentes en I/O). La latencia promedio para iSCSI fue de 5,871μs en comparación con NVMe over TCP con 5,089μs. Una disminución de 782μs (~25%) en la latencia de acceso, solo por cambiar el protocolo de almacenamiento.

Mejoras de Throughput de NVMe over TCP vs iSCSI
Como la tercera métrica principal del rendimiento del almacenamiento, el throughput describe la cantidad de datos que realmente se transfieren desde el disco hacia tu carga de trabajo.
El throughput es el factor principal para aplicaciones como la codificación de video o plataformas de streaming, grandes sistemas analíticos y servidores de juegos que transmiten mundos masivos a la memoria. Además, también existen sistemas de almacenamiento de series temporales, lagos de datos y bases de datos históricas.
Los sistemas con alto throughput se benefician de un mayor throughput para realizar el «trabajo más rápido». Muchas veces, aumentar el throughput no es fácil. Estás limitado por el throughput proporcionado por el disco o, en el caso de un sistema conectado a red, por el ancho de banda de la red. Para lograr un alto throughput y capacidad, el almacenamiento en red remoto utiliza redes de alto ancho de banda o sistemas de redes especializados como Fibre Channel o Infiniband.
Blockbridge realizó sus pruebas con una tarjeta de red dual de 100Gbit/s, limitada por el bus PCI Express x16 Gen3 a un throughput máximo de alrededor de 126Gbit/s. Los estándares PCIe más nuevos logran un throughput mucho más alto. Por lo tanto, los dispositivos NVMe y NICs ya no están limitados por el factor «limitante» del bus PCIe.
Con un tamaño de bloque de 16KiB y una profundidad de cola de 32, su benchmark mostró un aumento impresionante de 2.3GB/s en el rendimiento de NVMe over TCP frente a iSCSI. El throughput aumentó de 10.387GBit/s en iSCSI a 12.665GBit/s, un aumento fácil del 20%—de nuevo, usando el mismo hardware. Así es como ahorras dinero.

El Caso Convincente para NVMe over TCP
Hemos visto que NVMe over TCP tiene ventajas de rendimiento significativas sobre iSCSI en las tres métricas principales de rendimiento de almacenamiento. No obstante, existen más ventajas de NVMe over TCP frente a iSCSI.
- Ethernet estándar: La ventaja más significativa de NVMe over TCP es su capacidad de operar sobre redes Ethernet estándar. A diferencia de las tecnologías de red especializadas (Infiniband, Fibre Channel), NVMe/TCP no requiere inversiones adicionales en hardware ni configuraciones complejas, lo que lo hace notablemente accesible para organizaciones de todos los tamaños.
- Características de rendimiento: NVMe over TCP ofrece un rendimiento excepcional al minimizar la sobrecarga del protocolo y aprovechar la eficiencia del diseño de NVMe. Puede lograr latencias comparables al almacenamiento local mientras ofrece la flexibilidad de recursos conectados en red. Las implementaciones modernas pueden mantener tasas de throughput que superan ampliamente los protocolos de almacenamiento tradicionales.
- Facilidad de implementación: NVMe over TCP se integra perfectamente con Linux y Windows (Servidor 2025 y versiones posteriores), ya que los controladores necesarios ya forman parte del núcleo. Esto hace que NVMe/TCP sea fácil de implementar y gestionar. La compatibilidad sin problemas reduce la curva de aprendizaje y los desafíos de integración que normalmente se asocian con nuevas tecnologías de almacenamiento.
Elegir entre NVMe over TCP e iSCSI
Decidir entre dos tecnologías no siempre es fácil. Sin embargo, no es tan difícil en el caso de NVMe over TCP frente a iSCSI. Los casos de uso para la implementación de iSCSI son muy limitados. Desde mi perspectiva, el único caso de uso válido es la integración de sistemas heredados preexistentes que aún no son compatibles con NVMe over TCP.
Es por eso que Simplyblock, como solución NVMe over TCP primero, sigue ofreciendo iSCSI si realmente lo necesitas. Lo ofrecemos precisamente por la razón de que las migraciones no ocurren de un día para otro. Aun así, quieres aprovechar los beneficios de las tecnologías más recientes, como NVMe over TCP, siempre que sea posible. Con Simplyblock, los volúmenes lógicos se pueden aprovisionar fácilmente como dispositivos NVMe over TCP o iSCSI. Incluso puedes cambiar de iSCSI a NVMe over TCP más adelante.
En cualquier caso, deberías optar por NVMe over TCP cuando:
- Operes entornos de computación de alto rendimiento
- Tienes centros de datos modernos con un ancho de banda significativo
- Desplegas cargas de trabajo que requieren acceso de almacenamiento con baja latencia, alto IOPS o throughput
- Te encuentras en escenarios que demandan soluciones de almacenamiento escalables y flexibles
- Estás en cualquier otra situación donde necesitas almacenamiento conectado remotamente
Debes quedarte con iSCSI (o migrar lentamente) cuando:
- Tienes infraestructura heredada con caminos de actualización limitados
Como puedes ver, no hay muchas razones. Dado esto, solo es cuestión de seleccionar tu nueva solución de almacenamiento. Personalmente, hoy en día, siempre recomendaría soluciones de almacenamiento definidas por software como Simplyblock, pero soy parcial. De todos modos, un SDS proporciona lo mejor de ambos mundos: hardware de almacenamiento estándar (con la opción de ir a por todas con tu servidor de almacenamiento de 96 bahías) y rendimiento.
Simplyblock: Adoptando la Versatilidad
Simplyblock demuestra un diseño de almacenamiento visionario al admitir tanto NVMe over TCP como iSCSI, proporcionando a los clientes el mejor rendimiento cuando está disponible y la oportunidad de migrar lentamente en el caso de clientes heredados existentes.
Además, Simplyblock ofrece características conocidas de los sistemas de almacenamiento SAN tradicionales o “sistemas de archivos” como ZFS. Esto incluye un backend completo de copia en escritura con instantáneas y clones al instante. Incluye replicación síncrona y asíncrona entre clústeres de almacenamiento. Finalmente, Simplyblock es tu solución de almacenamiento moderna, proporcionando almacenamiento a hosts dedicados, máquinas virtuales y contenedores. Independientemente del cliente, Simplyblock ofrece la integración más fluida con tus entornos existentes y futuros.
El Futuro de NVMe over TCP
A medida que la computación empresarial y en la nube sigue evolucionando, NVMe over TCP se presenta como la tecnología elegida para almacenamiento conectado remotamente. En primer lugar, combina simplicidad, rendimiento y amplia compatibilidad. En segundo lugar, proporciona una solución rentable y escalable utilizando equipo de red estándar.
El desarrollo continuo del protocolo (última actualización de especificación en mayo de 2024) y la adopción creciente muestran mejoras continuas en eficiencia, reducción de latencia y mayor escalabilidad.
NVMe over TCP representa un paso significativo hacia adelante en la tecnología de redes de almacenamiento. Además, combinar el rendimiento bruto de NVMe con la ubicuidad de las redes Ethernet ofrece una solución convincente para los entornos de computación modernos. Aunque iSCSI sigue siendo relevante para casos de uso específicos y durante las fases de migración, NVMe over TCP representa el futuro y debe adoptarse tan pronto como sea posible.
Nosotros, en Simplyblock, estamos felices de ser parte de este importante paso en la historia del almacenamiento.
Preguntas y Respuestas
Sí, NVMe sobre TCP es superior a iSCSI en casi todos los aspectos. NVMe sobre TCP proporciona menor sobrecarga de protocolo, mejor rendimiento, menor latencia y mayor IOPS en comparación con iSCSI. Se recomienda no usar iSCSI para infraestructuras diseñadas recientemente y migrar las infraestructuras antiguas siempre que sea posible.
NVMe sobre TCP es superior en todas las métricas primarias de almacenamiento, es decir, IOPS, latencia y rendimiento. NVMe sobre TCP muestra hasta un 35% más de IOPS, un 25% menos de latencia y un 20% más de rendimiento en comparación con iSCSI utilizando la misma infraestructura de red y almacenamiento.
NVMe/TCP es un protocolo de red de almacenamiento que utiliza el protocolo estándar de internet TCP/IP como su capa de transporte. Se implementa a través de infraestructuras Ethernet estándar y puede funcionar en paralelo con el tráfico de red existente, aunque se recomienda la separación a través de VLANs o redes físicamente separadas. NVMe sobre TCP se considera el sucesor del protocolo iSCSI.
iSCSI es un protocolo de red de almacenamiento que utiliza el protocolo estándar de internet TCP/IP como su capa de transporte. Conecta soluciones de almacenamiento remoto (comúnmente dispositivos de almacenamiento hardware) con los clientes de almacenamiento a través de una infraestructura Ethernet estándar. iSCSI se estandarizó inicialmente en 2000. Muchas empresas reemplazan iSCSI con el superior protocolo NVMe sobre TCP.
SCSI (Small Computer Storage Interface) es un conjunto de comandos que conecta computadoras y dispositivos periféricos y transfiere datos entre ellos. Desarrollado inicialmente en la década de 1980, SCSI ha sido una tecnología fundamental para las interfaces de almacenamiento de datos, compatible con varios tipos de dispositivos como discos duros, unidades ópticas y escáneres.
NVMe (Non-Volatile Memory Express) es una especificación que define la conexión y transmisión de datos entre dispositivos de almacenamiento y computadoras. La especificación inicial fue lanzada en 2011. NVMe está diseñado específicamente para unidades de estado sólido (SSD) conectadas a través del bus PCIe. Los dispositivos NVMe tienen una latencia y rendimiento mejorados en comparación con los estándares más antiguos como SCSI, SATA y SAS.