La especificación NVM Express es la que se encarga de asegurar la interoperabilidad de las unidades de estado sólido (SSD) de alto rendimiento que hay ahora mismo en el mercado y que usan una conexión PCIe. Los modelos que están llegando al mercado usan mayoritariamente las versiones 1.4 o 1.5 de la especificación, pero ahora se ha presentado una versión mayor, la 2.0, que cambia bastante la forma de encajar todas las piezas del puzle de una SSD.
Esta especificación NVMe 2.0 se compone de un documento base, que no puede hacer nada por sí mismo, y de tres conjuntos más de especificaciones entre las que habrá que elegir para hacer funcionar este almacenamiento. Los dos grupos principales entre los que elegir son las especificaciones de los conjuntos de comandos a usar y las del protocolo de transporte. Hay un conjunto adicional de interfaz de gestión que es para facilitar su descubrimiento, instalación, monitorización y gestión remotamente.
Esta división en multitud de documentos viene a hacerlo más versátil desde el primer momento. Por ejemplo, el conjunto de comandos permite elegir entre almacenamiento por bloques, espacios de nombre zonales (ZNS) y clave-valor. El más importante es ZNS, que rompe con los tradicionales bloques de información, una herencia procedente de los discos duros, y que son el pasado. El sistema ZNS permite crear zonas diferenciadas en las que se guarda información y que se escribe en ellas de manera secuencial, evitando la amplificación de escritura. También elimina el sobreaprovisionamiento de las SSD actuales y mejora el rendimiento al poder decidir en qué zonas se guarda qué información.
Sobre los protocolos de transporte, son la forma en organizar los bits para su envío a través del enlace físico, que puede ser a través del habitual formato de PCIe, pero que también se puede usar NVMe sobre conexiones de red para usar TCP o RDMA, que es para aceptar accesos remotos sin que tenga que intervenir el equipo anfitrión. Por ejemplo, esto permite en un bastidor de un centro de datos que todos los servidores puedan acceder a todas las unidades de todos los servidores como si fueran unidades propias, reduciendo la latencia en la comunicación al eliminar el procesamiento adicional y comprobaciones que se tendrían que hacer con el modelo normal de almacenamiento.
Hay muchos más cambios en NVMe 2.0, aunque sean cambios menores a documentos actuales de NVMe 1.4 o sus extensiones, algunas de las cuales se han expandido para dejar menos cosas al criterio del fabricante de la SSD, simplificando su tarea. Se han añadido mejoras en la seguridad, como la posibilidad de poner espacios de nombre específico en un modo de protección de escritura, mejora del CRC, y otros pequeños detalles que avalan que esta especificación se llamen NVMe 2.0 y no NVMe 1.5. Estará disponible en próximos meses en las primeras unidades, aunque todos estos cambios están más orientados al mundo empresarial que al de consumo.
Vía: AnandTech, TechPowerUp.