Se ha hablado mucho en la industria en los últimos años sobre los SMART-NICs. En este blog, compartimos nuestra perspectiva sobre esta nueva clase de aceleradores de red y el papel que desempeñan en el futuro de las plataformas informáticas. Se espera que los SMART-NICs jueguen un papel clave en las plataformas de computación para grandes centros de datos, entornos Edge y Telco 5G.
Hay una tendencia general en la industria en torno a la construcción de plataformas informáticas que consisten en CPUs de propósito general junto con aceleradores dedicados (SOCs y ASICs). La industria también se refiere a estas arquitecturas como arquitecturas específicas de dominio, donde se utiliza un procesador host para configurar las cosas y los aceleradores realizan el procesamiento informático para el dominio del problema específico. Varios factores están impulsando la adopción de esta arquitectura de computación híbrida:
- El creciente número de núcleos en las CPUs ha mejorado el rendimiento de la CPU, pero las mejoras en la memoria y en el ancho de banda de E/S no se han mantenido a la par. La combinación de CPUs con aceleradores mueve parte del procesamiento a tarjetas de acelerador sin transferir los datos de un lado a otro entre memoria, IO y CPU.
- A medida que aumentan la velocidad de la red y el rendimiento del disco, algunos de los procesos asociados (servicios de red y procesamiento y análisis de datos) se están acercando a la red en forma de FPGAs para evitar el envío de datos innecesarios a la memoria del host.
- Las empresas de telecomunicaciones están avanzando hacia la virtualización del borde de la red con la evolución a 5G. La aceleración de hardware jugará un papel clave en la arquitectura 5G para la descarga de servicios de red, el corte de red 5G y el procesamiento de datos en tiempo real.
Los SMART-NICs son una clase de aceleradores que consisten en un NIC (Network Interface Controller) estándar combinado con núcleos FPGA y CPU (ARM o x86), como se muestra en la Fig. 1. Se espera que desempeñen un papel clave en la futura arquitectura del sistema, ya que la mayoría de los servicios y aplicaciones de infraestructura están o estarán conectados a la red. Algunos ejemplos de servicios de infraestructura son los servicios de red (conmutadores virtuales, cortafuegos, balanceadores de carga, funciones de red virtual de Telco, SD-WAN), servicios de almacenamiento (software SDS para almacenamiento de bloques, archivos y objetos), análisis y aprendizaje de máquinas. Estos servicios de infraestructura se trasladaron a arquitecturas definidas por software con SDN (Software Defined Networking), SDS (Software Defined Storage) y análisis de datos distribuidos (Hadoop, Spark).
A medida que aumentan las velocidades de la red, es necesario trasladar el procesamiento de red asociado de la CPU host a los adaptadores de red para mantenerse al día con las velocidades de datos y reducir la cantidad de datos enviados al bus IO y a la memoria host para su procesamiento. Los conmutadores virtuales residentes en el hipervisor proporcionan una serie de funciones que incluyen movimiento de datos, superposición de conmutación virtual, cifrado, inspección profunda de paquetes, equilibrio de carga y cortafuegos. Es difícil escalar estas características a futuras velocidades de red de 50/100/200G. FPGA y NIC en el SMART-NIC (Fig. 1) permiten la descarga de este plano de datos para escalar a un mayor rendimiento, menor latencia y mayor rendimiento de paquetes por segundo (pps). Otros servicios de red de nivel superior y funciones de red virtual de telecomunicaciones (VNF) también están empezando a aprovechar la FPGA y NIC ASIC para descargar el procesamiento de planos de datos y nuevas funciones como el corte de red para 5G.
Algunas de las funciones del plano de datos también se benefician al acercar el plano de control asociado al plano de datos, lo que conduce a núcleos de CPU embebidos en los SMART-NICs. ¿Cuáles son los beneficios de hacer esto?
- Soporte de cualquier sistema operativo que se ejecute en la CPU del host y habilitación de contenedores bare-metal.
- Mayor seguridad: se pueden entregar imágenes firmadas incrustadas para el software en SMART-NIC y es independiente de cualquier ataque de seguridad en el sistema operativo o en las aplicaciones que se ejecutan en la CPU del host.
- El software que se ejecuta en el SMART-NIC puede aislar un servidor del resto de la red si se detecta una amenaza de seguridad.
La descarga de funciones de red a través de SMART-NIC permite optimizar aún más los flujos de datos en todo el sistema informático, como se muestra en la Fig. 2. El software que se ejecuta en SMART-NIC puede permitir la transferencia directa de datos al almacenamiento del servidor y a las GPU sin necesidad de utilizar la memoria del host como área de preparación para la transferencia de datos, lo que mejora el rendimiento, reduce la latencia y libera los ciclos de la CPU del host.
se necesitan esfuerzos de estandarización a nivel de la industria para desarrollar APIs abiertas de modo que un SMART-NIC de cualquier proveedor pueda ser utilizado para acelerar cualquier carga de trabajo, como por ejemplo:
- Estandarización de la interfaz del plano de datos para que las aplicaciones descarguen el procesamiento del plano de datos.
- Estandarización de interfaces para la gestión del ciclo de vida del software de los SMART-NICs.
- Estandarización de la gestión de hardware y monitorización de SMART-NICs a través de interfaces DMTF Redfish.
Estos SMART-NICs jugarán un papel clave en las plataformas de cálculo tanto para Data Center como para Edge. En los centros de datos, los SMART-NIC permiten que las cargas de trabajo se escalen a velocidades de red más altas. También liberan los núcleos de la CPU del host y reducen el consumo de memoria y la utilización del bus IO al trasladar la CPU y la computación intensiva de datos al hardware. En las implementaciones de Edge, los SMART-NICs permiten el movimiento hacia servidores de un solo zócalo en lugar de las actuales plataformas de zócalo dual, y nuevas características como el corte de red para 5G, la aceleración de Telco VNF, la distribución de contenidos, el procesamiento de imágenes y el aprendizaje automático de inferencing.
Debido a la importancia de esta arquitectura híbrida para las cargas de trabajo de la próxima generación, los proveedores de CPU, es decir, Intel, también han evolucionado desde el punto de vista del procesador hasta el punto de vista del sistema con inversiones en FPGAs, SMART-NICs, GPUs y coprocesadores. Este cambio permitirá que la próxima generación de implementaciones Edge y 5G altamente optimizadas se base en plataformas de cálculo x86 y SMART-NICs junto con memoria y almacenamiento persistente de alta velocidad.
Dell Technologies lidera la innovación en futuras arquitecturas de sistemas híbridos con FPGAs, SMART-NICs, GPUs y otros aceleradores multi-core basados en SoC mientras trabaja en la estandarización de APIs y frameworks. Dell Technologies se ha asociado con proveedores de servicios de telecomunicaciones para llevar la tecnología líder en nuestro viaje a 5G.