¿Qué es RDMA?

Como todos sabemos, el crecimiento explosivo de los datos de Internet ha traído grandes desafíos a la capacidad de procesamiento de los centros de datos.

La informática, el almacenamiento y la red son las tres fuerzas impulsoras que impulsan el desarrollo de los centros de datos.

Con el desarrollo de CPU, GPU y FPGA, la potencia informática se ha mejorado considerablemente. Almacenamiento Con la introducción de la unidad de estado sólido (SSD), la latencia de acceso a los datos se ha reducido considerablemente.

Sin embargo, el desarrollo de la red obviamente se está quedando atrás, el retraso de la transmisión es alto y se convierte gradualmente en el cuello de botella del rendimiento del centro de datos.

la potencia informática se ha mejorado considerablemente

En un centro de datos, el 70% del tráfico es tráfico este-oeste (tráfico entre servidores). Este tráfico generalmente procesa el flujo de datos durante la computación paralela distribuida de alto rendimiento en los centros de datos y se transmite a través de redes TCP/IP.

Si la tasa de transmisión TCP/IP entre servidores aumenta, el rendimiento del centro de datos también aumentará.

El 70% del tráfico es tráfico este-oeste

Transferencia TCP/IP entre servidores

El proceso para que el servidor A envíe datos al servidor B en el centro de datos es el siguiente:

Transferencia TCP/IP entre servidores

  1. Los datos de control de la CPU se copian del búfer de la aplicación de A al búfer del sistema operativo.
  2. Datos de control de la CPU Agregue encabezados TCP e IP al búfer del sistema operativo (SO).
  3. Agregue encabezados de paquetes TCP e IP para enviar los datos a la NIC y agregue encabezados de paquetes Ethernet.
  4. El paquete es enviado por el adaptador de red y transmitido al adaptador de red del servidor B a través de la red Ethernet.
  5. El adaptador de red del servidor B descarga el encabezado Ethernet del paquete y lo transfiere al búfer del sistema operativo.
  6. La CPU descarga los encabezados de los paquetes TCP e IP en el búfer del sistema operativo.
  7. La CPU controla la transferencia de datos desinstalados al búfer de la aplicación.

Como puede verse en el proceso de transmisión de datos, los datos se copian varias veces en el búfer del servidor y es necesario agregar o desinstalar encabezados TCP e IP en el sistema operativo. Estas operaciones no solo aumentan el retraso de la transmisión de datos, sino que también consumen una gran cantidad de recursos de la CPU, lo que no puede cumplir con los requisitos de la informática de alto rendimiento.

Entonces, ¿cómo construir una red de centro de datos de alto rendimiento con alto rendimiento, latencia ultrabaja y baja sobrecarga de CPU?

La tecnología RDMA puede hacer eso.

¿Qué es RDMA?

Remote Direct Memory Access (RDMA) es una nueva tecnología de acceso a la memoria que permite a los servidores leer y escribir datos de memoria de otros servidores a alta velocidad sin que el sistema operativo o la CPU consuman mucho tiempo.

RDMA no es una tecnología nueva y se ha utilizado ampliamente en la computación de alto rendimiento (HPC). Con la demanda de desarrollo de alto ancho de banda y bajo retraso en los centros de datos, RDMA se ha aplicado gradualmente en algunos escenarios que requieren que los centros de datos tengan un alto rendimiento.

Por ejemplo, en 2021, el volumen de transacciones del festival de compras de un gran centro comercial en línea alcanzó un nuevo récord de más de 500 10 millones de yuanes, un aumento de casi el 2020 % en comparación con XNUMX. Detrás de un volumen de transacciones tan grande se encuentra un procesamiento masivo de datos. El centro comercial en línea utiliza la tecnología RDMA para respaldar una red de alto rendimiento y garantizar un festival de compras fluido.

Echemos un vistazo a algunos de los trucos de RDMA para una latencia baja.

RDMA transfiere directamente los datos de la aplicación del servidor desde la memoria a la tarjeta de red inteligente (INIC) (protocolo RDMA solidificado), y el hardware INIC completa la encapsulación del paquete de transmisión RDMA, liberando el sistema operativo y la CPU.

el hardware INIC completa la encapsulación del paquete de transmisión RDMA, liberando el sistema operativo y la CPU

Esto le da a RDMA dos ventajas principales:

  • Copia cero: Un proceso que elimina la necesidad de copiar datos al kernel del sistema operativo y procesar los encabezados de los paquetes, lo que resulta en una latencia de transmisión significativamente reducida.
  • Omisión y protocolo del kernel Offcarga: El kernel del sistema operativo no está involucrado y no hay una lógica de encabezado complicada en la ruta de datos. Esto reduce la latencia y ahorra en gran medida los recursos de la CPU.

RDMA tiene dos ventajas principales

Tres redes RDMA principales

En la actualidad, existen tres tipos de redes RDMA, a saber InfiniBand, RoCE (RDMA sobre Ethernet convergente) e iWARP (RDMA sobre TCP).

Originalmente, RDMA era exclusivo de la arquitectura de red Infiniband para garantizar un transporte confiable a nivel de hardware, mientras que RoCE e iWARP son tecnologías RDMA basadas en Ethernet.

InfiniBand

  • InfiniBand es una red diseñada específicamente para RDMA.
  • El modo de reenvío Cut-Through se adopta para reducir el retraso en el reenvío.
  • El mecanismo de control de flujo basado en créditos garantiza que no se pierdan paquetes.
  • Requiere adaptadores de red, conmutadores y enrutadores dedicados de InfiniBand, que tiene el costo de construcción de red más alto.

ROCE

  • La capa de transporte es el protocolo InfiniBand.
  • RoCE viene en dos versiones: RoCEv1 se implementa en la capa de enlace Ethernet y solo se puede transmitir en la capa L2; RoCEv2 aloja RDMA basado en UDP y se puede implementar en redes de capa 3.
  • Soporte para adaptador de red inteligente dedicado RDMA, sin necesidad de conmutador y enrutador dedicado (compatible con tecnología ECN/PFC, reduce la tasa de pérdida de paquetes), el costo de construcción de red más bajo.

iWARP

  • La capa de transporte es el protocolo iWARP.
  • iWARP se implementa en la capa TCP del protocolo Ethernet TCP/IP y admite la transmisión en la capa L2/L3. Las conexiones TCP en redes a gran escala consumen mucha CPU, por lo que rara vez se usan.
  • iWARP solo requiere adaptadores de red para admitir RDMA, sin conmutadores ni enrutadores privados, y costos entre InfiniBand y RoCE.

Con tecnología avanzada pero un precio elevado, Infiniband se limita a la informática de alto rendimiento HPC. Con la aparición de RoCE e iWARPC, los costos de RDMA se reducen y la tecnología RDMA se populariza.

El uso de estos tres tipos de redes RDMA en centros de datos informáticos y de almacenamiento de alto rendimiento puede reducir en gran medida la latencia de la transferencia de datos y proporcionar una mayor disponibilidad de recursos de CPU para las aplicaciones.

La red InfiniBand ofrece un rendimiento extremo a los centros de datos, con una latencia de transmisión tan baja como 100 nanosegundos, un orden de magnitud inferior a la de los dispositivos Ethernet.

Las redes RoCE e iWARP brindan un rendimiento de alto costo a los centros de datos y alojan RDMA a través de Ethernet, aprovechando al máximo el alto rendimiento de RDMA y el bajo uso de CPU, mientras que su construcción no cuesta mucho.

El RoCE basado en UDP funciona mejor que el iWARP basado en TCP y, combinado con la tecnología de control de flujo Ethernet sin pérdidas, resuelve el problema de la sensibilidad a la pérdida de paquetes. La red RoCE ha sido ampliamente utilizada en centros de datos de alto rendimiento en diversas industrias.

Conclusión

Con el desarrollo de 5G, inteligencia artificial, Internet industrial y otros campos nuevos, la aplicación de la tecnología RDMA será cada vez más popular y RDMA hará una gran contribución al rendimiento de los centros de datos.

Deja un comentario

Ir al Inicio