En informática , el acceso remoto directo a memoria ( RDMA ) es el acceso directo a la memoria de un ordenador a la de otro sin la intervención del sistema operativo de ninguno de los dos . Esto permite un acceso a la memoria de alto rendimiento y baja latencia a través de una red, lo cual resulta especialmente útil en clústeres de ordenadores masivamente paralelos .
Descripción general
RDMA admite la transferencia de datos sin copia, permitiendo que el adaptador de red transfiera datos directamente desde la red a la memoria de la aplicación o viceversa, eliminando la necesidad de copiar datos entre la memoria de la aplicación y los búferes de datos del sistema operativo. Estas transferencias no requieren ninguna intervención de la CPU , las cachés ni los conmutadores de contexto , y se ejecutan en paralelo con otras operaciones del sistema. Esto reduce la latencia en la transferencia de mensajes.
Sin embargo, esta estrategia presenta varios problemas relacionados con el hecho de que el nodo de destino no recibe notificación de la finalización de la solicitud (comunicaciones unilaterales).
Aceptación
A partir de 2018, RDMA había logrado una mayor aceptación como resultado de mejoras en la implementación que permiten un buen rendimiento sobre la infraestructura de red ordinaria. [ 1 ] Por ejemplo , RDMA sobre Ethernet convergente (RoCE) ahora puede ejecutarse sobre infraestructura con o sin pérdidas. Además, iWARP permite una implementación de Ethernet RDMA en la capa física utilizando TCP / IP como transporte, combinando las ventajas de rendimiento y latencia de RDMA con una solución de bajo costo y basada en estándares. [ 2 ] El Consorcio RDMA y la Colaboración DAT [ 3 ] han desempeñado roles clave en el desarrollo de protocolos y API de RDMA para su consideración por grupos de estándares como el Grupo de Trabajo de Ingeniería de Internet y el Consorcio de Software de Interconexión. [ 4 ]
Los proveedores de hardware han comenzado a trabajar en adaptadores de red basados en RDMA de mayor capacidad, con velocidades reportadas de 100 Gbit/s. [ 5 ] [ 6 ] Los proveedores de software, como IBM , [ 7 ] Red Hat y Oracle Corporation , admiten estas API en sus productos más recientes, [ 8 ] y desde 2013, los ingenieros han estado desarrollando adaptadores de red que implementan RDMA sobre Ethernet. [ 9 ] Tanto Red Hat Enterprise Linux como Red Hat Enterprise MRG [ 10 ] tienen soporte para RDMA. Microsoft admite RDMA en Windows Server 2012 a través de SMB Direct . VMware ESXi también admite RDMA desde 2015.
Las implementaciones comunes de RDMA incluyen la arquitectura de interfaz virtual , RDMA sobre Ethernet convergente (RoCE), InfiniBand , Omni-Path , iWARP y Ultra Ethernet.
Utilizando RDMA
Las aplicaciones acceden a estructuras de control mediante API bien definidas, diseñadas originalmente para el protocolo InfiniBand (aunque las API pueden utilizarse para cualquiera de las implementaciones RDMA subyacentes). Mediante colas de envío y finalización, las aplicaciones realizan operaciones RDMA enviando entradas de la cola de trabajo (WQE) a la cola de envío (SQ) y recibiendo notificaciones de las respuestas de la cola de finalización (CQ). [ 11 ]
Tipos de transporte
RDMA puede transportar datos de forma fiable o no fiable a través de los protocolos de transporte Reliably Connected (RC) y Unreliable Datagram (UD), respectivamente. El primero tiene la ventaja de preservar las solicitudes (no se pierde ninguna), mientras que el segundo requiere menos pares de colas al gestionar múltiples conexiones. Esto se debe a que UD no requiere conexión, lo que permite que un único host se comunique con cualquier otro mediante una sola cola. [ 12 ]
Referencias
- ↑ RoCE supera a las redes con pérdidas: https://dl.acm.org/citation.cfm?id=3098588&dl=ACM&coll=DL
- ↑ "Comprendiendo iWARP" (PDF) . Intel Corporation . Consultado el 16 de mayo de 2018 .
- ↑ "Sitio web de DAT Collaborative" . Archivado del original el 17 de enero de 2015. Consultado el 14 de octubre de 2014 .
- ↑ Sitio web del Interconnect Software Consortium. Archivado el 30 de agosto de 2005 en Wayback Machine.
- ↑ "Soluciones basadas en Microsoft - Mellanox Technologies" . Consultado el 14 de octubre de 2014 .
- ↑ "40Gbe SMB Direct RDMA Over Ethernet para Windows Server 2012 - Chelsio Communications" . 2 de abril de 2013. Consultado el 14 de octubre de 2014 .
- ↑ "SOFA-STORAGE: CREACIÓN DE UN MARCO INDEPENDIENTE DEL PROVEEDOR PARA PERMITIR LA DESCARGA DE ALMACENAMIENTO SIN INTERRUPCIONES MEDIANTE SMARTNICS" (PDF) .
- ↑ "¿Qué hardware RDMA es compatible con Red Hat Enterprise Linux?" 2 de junio de 2016.
- ↑ "40Gbe SMB Direct RDMA sobre Ethernet para Windows Server 2012 - Chelsio Communications" . Chelsio Communications. 2 de abril de 2013. Consultado el 15 de julio de 2016. La
demostración mostrará el funcionamiento de SMB Direct de Microsoft Windows Server 2012 a una velocidad de línea de 40 Gb mediante RDMA sobre Ethernet (iWARP).
- ↑ "Red Hat Enterprise MRG 2.0 ya está disponible" . Archivado del original el 25 de agosto de 2016. Consultado el 23 de junio de 2011 .
- ↑ Storm: un plano de datos transaccional rápido para estructuras de datos remotas: https://dl.acm.org/doi/abs/10.1145/3319647.3325827
- ↑ Storm: un plano de datos transaccional rápido para estructuras de datos remotas: https://dl.acm.org/doi/pdf/10.1145/3319647.3325827
Enlaces externos
- Consorcio RDMA
- RFC 5040 : Especificación de un protocolo de acceso directo a memoria remota
- Tutorial del modelo RDMA
- "¿Por qué hacer concesiones?" // HPCwire, Gilad Shainer (Mellanox Technologies), 2006
- Una crítica de RDMA para la computación de alto rendimiento
- Lecturas RDMA: ¿Usarlas o no usarlas?
- Memoria de computadora
- Tecnología de sistemas operativos
- redes de área local