¿Qué es RoCE?

RoCE se conoce como RDMA sobre Ethernet convergente. Por eso es importante reconocer RDMA como tecnología antes de comprender RoCE.

¿Qué es RDMA?

RDMA, acceso directo a memoria remota, puede transmitir datos de un servidor a otro, o desde el almacenamiento al servidor, con una ocupación de CPU mínima. Para enviar datos, las aplicaciones tradicionales tienen que pasar por el sistema operativo para empaquetar TCP/IP, y luego pasar por el caché principal, el caché de NIC, y finalmente enviarse. Esto lleva a dos limitaciones.

Limitación 1: el procesamiento de la pila TCP/IP introduce una latencia de varias decenas de microsegundos. Cuando la pila del protocolo TCP recibe y envía mensajes, el kernel necesita realizar múltiples cambios de contexto, cada uno de los cuales consume entre 5 y 10 microsegundos. Además, al menos tres copias de datos y el trabajo del protocolo dependen de la CPU. Esto significa que el simple procesamiento del protocolo generará un retraso fijo de varias decenas de microsegundos. El retraso de la pila de protocolos se convierte en el cuello de botella más obvio.

Limitación 2: el procesamiento con la pila del protocolo TCP genera una carga elevada en la CPU del servidor. Además del problema de un retraso fijo más largo, la red TCP/IP requiere que la CPU del host participe en la copia de memoria del protocolo varias veces. Cuanto mayor sea el tamaño de la red y mayor el ancho de banda de la red, mayor será la carga de programación en la CPU al enviar y recibir datos, lo que lleva a una carga de CPU continuamente alta.

En los centros de datos, si se utiliza TCP/IP tradicional para la interconexión de red entre recursos de almacenamiento informático distribuido a escala ultragrande, consumirá una gran cantidad de recursos informáticos del sistema, lo que provocará cuellos de botella de IO y no cumplirá con las demandas de red de mayor nivel. rendimiento y menor latencia.

modo tradicional al modo rdma

RDMA es una tecnología de interconexión de redes que offOfrece un gran ancho de banda, baja latencia y bajo consumo de CPU. Esta tecnología supera muchos de los obstáculos comúnmente asociados con las redes TCP/IP tradicionales.

Remote: Se refiere a la transferencia de datos entre dos nodos en una red.

Directo: No se requiere participación del kernel. Todo el procesamiento de transmisión es offcargado en el hardware NIC (tarjeta de interfaz de red).

Salud Cerebral: Los datos se transfieren directamente entre la memoria virtual de las aplicaciones en ambos nodos, sin necesidad de realizar copias ni almacenamiento en caché adicionales.

Access: Las operaciones de acceso incluyen enviar/recibir, leer/escribir, etc.

En comparación con TCP/IP, RDMA reduce el uso de recursos informáticos y aumenta la velocidad de transmisión de datos.

El mecanismo de derivación del kernel de RDMA permite la lectura/escritura directa de datos entre la aplicación y la NIC, lo que reduce la latencia de transferencia de datos dentro del servidor a casi 1 microsegundo. Además, el mecanismo de copia cero de RDMA permite que el extremo receptor lea directamente datos de la memoria del remitente, lo que reduce significativamente la carga de la CPU y mejora la utilización de la CPU.

Los beneficios de utilizar RDMA incluyen:

  • Copia cero: las aplicaciones RDMA pueden omitir la pila de red del kernel y transferir datos directamente, eliminando la necesidad de copiar datos desde la memoria del espacio de usuario de la aplicación al espacio de memoria de la pila de red del kernel.
  • Omisión del kernel: las aplicaciones RDMA pueden iniciar la transmisión de datos directamente desde el modo de usuario, evitando la necesidad de cambiar de contexto entre el modo kernel y el modo de usuario.
  • CPU offcargar: RDMA puede acceder directamente a la memoria de un host remoto sin consumir ningún recurso de CPU en el host remoto. La CPU del host remoto puede entonces centrarse en sus prerrogativas, evitar perturbaciones en la caché y evitar un desbordamiento de datos de acceso a la memoria a gran escala.

¿Qué es RoCE?

A partir de 2010, RDMA atrajo cada vez más atención cuando la IBTA publicó la primera especificación para ejecutar RDMA sobre Ethernet convergente (RoCE). Sin embargo, la especificación inicial limitó la implementación de RoCE a un único dominio de Capa 2 porque las tramas encapsuladas de RoCE carecían de capacidades de enrutamiento. En 2014, IBTA lanzó RoCEv2, que actualizó la especificación RoCE inicial para admitir el enrutamiento a través de redes de Capa 3, haciéndolo más adecuado para redes de centros de datos a gran escala y centros de datos empresariales.

ROCE

Los protocolos RDMA incluyen Infiniband (IB), Protocolo RDMA de área amplia de Internet (iWARP) y RDMA sobre Ethernet convergente (RoCE):

  • InfiniBand: Diseñado con RDMA en mente, rediseñó la capa de enlace físico, la capa de red y la capa de transporte para garantizar una transmisión confiable a nivel de hardware y proporcionar un mayor ancho de banda y una menor latencia. Pero es caro y requiere conmutadores y tarjetas de red IB.
  • iWARP: Red RDMA basada en TCP, que utiliza TCP para lograr una transmisión confiable. En comparación con RoCE, en el caso de redes a gran escala, la gran cantidad de conexiones TCP de iWARP consumirá muchos recursos de memoria y requerirá especificaciones de sistema más altas. Puede utilizar conmutadores Ethernet normales, pero requiere tarjetas de red que admitan iWARP.
  • ROCE: RDMA se basa en Ethernet, la versión RoCEv1 se basa en la capa de enlace de red, no puede cruzar segmentos de red y básicamente no tiene aplicación. RoCEv2 se basa en UDP, puede cruzar segmentos de red, tiene buena escalabilidad y puede lograr un buen rendimiento y latencia, por lo que es la solución adoptada a gran escala. RoCE consume menos recursos que iWARP y admite más funciones que iWARP. Puede utilizar conmutadores Ethernet normales, pero requiere tarjetas de red compatibles con RoCE.
aplicación rdma

¿Por qué RoCE es el protocolo RDMA principal?

Primero, hablemos de iWARP. La pila de protocolos iWARP es más compleja que las otras dos y, debido a las limitaciones de TCP, solo puede admitir una transmisión confiable. Por lo tanto, el desarrollo de iWARP no es tan bueno como el de RoCE e Infiniband.

El propio protocolo Infiniband define un nuevo conjunto de arquitectura jerárquica, desde la capa de enlace hasta la capa de transporte, que es incompatible con los dispositivos Ethernet existentes. Por ejemplo, si un centro de datos quiere cambiar de Ethernet a Infinibanda tecnología debido a cuellos de botella en el rendimiento, debe comprar un conjunto completo de dispositivos Infiniband, incluidas tarjetas de red, cables, conmutadores, enrutadores, etc., lo cual es demasiado costoso.

La ventaja del protocolo RoCE es muy obvia aquí. Los usuarios solo necesitan comprar tarjetas de red que admitan RoCE para cambiar de Ethernet a RoCE, y otros dispositivos de red son compatibles. Por tanto, la principal ventaja de RoCE sobre Infiniband es su menor coste.

La ventaja del protocolo RoCE

RoCEv1

En abril de 2010, IBTA lanzó RoCE, que se publicó como un apéndice a la Especificación de Arquitectura Infiniband, por lo que también se llama IBoE (InfiniBand over Ethernet). En ese momento, el estándar RoCE usaba la capa de red IB en lugar de la capa de red TCP/IP encima de la capa de enlace Ethernet, por lo que no admitía la función de enrutamiento IP. El protocolo RoCE V1 tiene un ID de tipo 0x8915 en la capa Ethernet.

En RoCE, se elimina el encabezado del protocolo de capa de enlace Infiniband y el GUID utilizado para indicar la dirección se convierte a Ethernet MAC. Infiniband se basa en la transmisión física sin pérdidas y RoCE también se basa en la transmisión Ethernet sin pérdidas, lo que genera costos y gastos generales de administración para la implementación de Ethernet.

La transmisión sin pérdidas de Ethernet debe depender del soporte QoS L2, como PFC (Control de flujo prioritario). Cuando el grupo de búfer excede el umbral, el receptor envía una trama de pausa al remitente. Después de recibir la trama de pausa, la capa MAC del remitente reduce automáticamente la velocidad de transmisión. Este requisito significa que todos los nodos en todo el enlace de transmisión, incluidos el extremo, el conmutador y el enrutador, deben admitir QoS L2; de lo contrario, el PFC en el enlace no puede desempeñar un papel efectivo en ambos extremos.

RoCEv2

Dado que la trama de datos de RoCEv1 no tiene un encabezado IP, solo puede comunicarse dentro de la subred L2. Para resolver este problema, IBTA propuso RoCE V2 en 2014, que extendió RoCEv1, reemplazando el GRH (Global Routing Header) con un encabezado UDP + encabezado IP. La estructura del marco extendido se muestra en la siguiente figura. Para RoCE v1 y RoCE v2, vale la pena señalar los dos puntos siguientes:

  • RoCE v1 (Capa 2) opera en la capa de enlace Ehternet (Capa 2), por lo que Ethertype es 0x8915, por lo que el tamaño de trama normal es de 1500 bytes y la trama gigante es de 9000 bytes.
  • RoCE v2 (Capa 3) opera en UDP/IPv4 o UDP/IPv6 (Capa 3) y utiliza el puerto UDP 4791 para la transmisión. Debido a que el paquete RoCE v2 se puede enrutar en la Capa 3, a veces se le llama RoCE enrutable o simplemente RRoCE.
RoCE v1 (Capa 2) opera en la capa de enlace Ehternet (Capa 2)

Dado que RDMA requiere una red sin pérdida de paquetes para evitar una degradación drástica del rendimiento, la tecnología RoCE necesita transformar la red Ethernet tradicional en una red Ethernet sin pérdidas utilizando tecnologías PFC, ECN y DCQCN, para garantizar cero pérdida de paquetes.

la red sin pérdidas para roce

PFC: Control de flujo basado en prioridades. PFC proporciona control de flujo basado en prioridad por salto para varios tipos de tráfico.

Al reenviar paquetes, el dispositivo asigna paquetes a colas para programarlos y reenviarlos buscando la prioridad de los paquetes en la tabla de asignación de prioridades. Cuando la tasa de envío de paquetes de prioridad 802.1p excede la tasa de recepción y el espacio del búfer de datos en el receptor es insuficiente, el receptor envía una trama de pausa PFC al remitente. Cuando el remitente recibe la trama de pausa PFC, deja de enviar paquetes con la prioridad 802.1p especificada hasta que recibe una trama PFC XON o se agota el tiempo de espera del temporizador. Al configurar PFC, la congestión de un tipo específico de paquete no afecta el reenvío normal de otros tipos de paquetes.

ECN: Notificación explícita de congestión. ECN define un mecanismo de control de tráfico y notificación de congestión de extremo a extremo basado en la capa IP y la capa de transporte. Cuando el dispositivo está congestionado, ECN marca el campo ECN en el encabezado IP del paquete. El receptor envía un paquete de notificación de congestión (CNP) para notificar al remitente que reduzca la velocidad de envío. ECN implementa una gestión de la congestión de extremo a extremo, reduciendo la propagación y el agravamiento de la congestión.

PFC ECN

DCQCN (Notificación de congestión cuantificada del centro de datos): actualmente el algoritmo de control de congestión más utilizado en redes RoCEv2. Combina los algoritmos QCN y DCTCP y requiere que los conmutadores del centro de datos admitan WRED y ECN. DCQCN puede proporcionar una mayor equidad, lograr una alta tasa de utilización del ancho de banda, garantizar una baja tasa de ocupación del búfer de cola y menos fluctuación del búfer de cola.

En la actualidad, muchos fabricantes tienen sus propias soluciones de red sin pérdidas.

Huawei

La solución de algoritmo inteligente sin pérdidas iLossless de Huawei es un algoritmo de inteligencia artificial que utiliza inteligencia artificial para lograr la programación de la congestión de la red y la autooptimización de la red. Se centra en ECN automático e introduce el aprendizaje por refuerzo profundo (DRL) en conmutadores de centros de datos de velocidad ultrarrápida. Basado en el algoritmo inteligente sin pérdidas iLossless, Huawei lanzó la solución de red de centro de datos superconvergente CloudFabric 3.0, liderando la era inteligente sin pérdidas hacia 1.0.

En 2022, la red de centros de datos hiperconvergente de Huawei propuso una tecnología de integración de cálculo web inteligente sin pérdidas y una innovadora arquitectura de topología de conexión directa, que puede realizar una red central computacional a gran escala de 270k. El retraso se puede reducir aún más en un 25 % según la versión inteligente sin pérdidas 1.0.

Huawei Intelligent Lossless 2.0 se basa en computación en red y computación con reconocimiento de topología para lograr sinergia de red y computación. La red participa en la recopilación y sincronización de información informática, reduciendo la cantidad de veces que se sincroniza la información informática. Al mismo tiempo, garantiza la finalización de las tareas informáticas cerca de los nodos informáticos mediante la programación, la reducción de los saltos en la comunicación y la reducción adicional de la latencia de las aplicaciones.

H3C

El algoritmo inteligente sin pérdidas AI ECN de H3C, que se basa en el modelo de tráfico de red (valores Incast, profundidad máxima de cola, proporción de flujos grandes y pequeños, entre otras características de tráfico en el modelo N-to-1), utiliza algoritmos de aprendizaje por refuerzo para entrenar el IA con el modelo de tráfico. La IA puede detectar y predecir las tendencias del tráfico de la red en tiempo real y ajustar automáticamente el umbral ECN más óptimo para una programación de colas precisa. Al hacerlo, equilibra la transmisión de flujos pequeños sensibles a la latencia y flujos más grandes sensibles al rendimiento para garantizar un rendimiento óptimo de la red, evitando al mismo tiempo la activación del control de congestión PFC de la red.

La solución de red sin pérdidas AD-DC SeerFabric de H3C se basa en una arquitectura colaborativa de IA en la nube. Al innovar y optimizar el algoritmo de ajuste AI ECN de la industria y combinar la capacidad local AI Inside del conmutador del centro de datos de H3C, esta solución aumenta el rendimiento y disminuye la latencia al tiempo que garantiza cero pérdida de paquetes. Garantiza una calidad y reenvío precisos del servicio de red. Además, a través de operaciones y mantenimiento inteligentes detallados, visualiza la experiencia de servicio de las redes RoCE.

Inspur

En abril de 2022, Inspur Networks lanzó su típica solución Ethernet sin pérdidas, centrada en conmutadores Ethernet de centros de datos que admiten la tecnología RoCE. La solución offofrece las siguientes ventajas:

1. Integración perfecta de informática, almacenamiento, redes y AIStation. Admite tecnologías de gestión de congestión como PFC y ECN, lo que permite el establecimiento de redes RDMA de baja latencia, sin pérdidas y de extremo a extremo. La excelente ventaja del buffer del switch puede absorber el tráfico en ráfagas sin problemas, lidiando efectivamente con TCP en escenarios de transmisión.

2. Descubrimiento proactivo de fallas y conmutación por error automática. Las redes RoCE-SAN pueden colaborar con las operaciones de almacenamiento para una rápida detección de fallas. El conmutador puede detectar rápidamente estados de falla y notificar a los servidores que se suscriben a mensajes de notificación dentro del dominio comercial relevante, lo que permite un cambio rápido a rutas redundantes y reduce los impactos comerciales. Para entornos Ethernet sin pérdidas a gran escala que experimentan problemas de interbloqueo de PFC, la solución proporciona un mecanismo de prevención de interbloqueo de PFC a nivel de chip para la detección y recuperación automática de interbloqueo.

3. Almacenamiento plug-and-play. Las redes RoCE-SAN pueden detectar automáticamente la incorporación de servidores de dispositivos y dispositivos de almacenamiento, notificando a los servidores que establezcan conexiones automáticamente con los dispositivos de almacenamiento.

Deja un comentario

Ir al Inicio