Desarrollo de tecnología DPU

Con el desarrollo de las tecnologías de virtualización y computación en la nube, las tarjetas de red también han evolucionado y se pueden dividir en cuatro etapas en términos de funcionalidad y estructura de hardware.

Tarjeta de red básica tradicional (NIC)

Responsable de la transmisión y recepción de paquetes de datos, con menos hardware. offcapacidades de carga. El hardware implementa la capa de enlace físico de la red y el procesamiento de paquetes de la capa MAC con lógica de hardware ASIC, y las tarjetas estándar NIC posteriores también admitieron funciones como la verificación CRC. No tiene capacidades de programación.

Tarjeta de red inteligente (SmartNIC)

Tiene un cierto hardware de plano de datos. offcapacidad de carga, como hardware OVS/vRouter offcargando. La estructura de hardware utiliza FPGA o procesador integrado con FPGA y núcleo de procesador (aquí la función del procesador es débil) para lograr hardware en el plano de datos. offcargando.

DPU basada en FPGA

Esta es una tarjeta de red inteligente que admite tanto el plano de datos como el plano de control. offcarga, así como un cierto grado de programabilidad para los planos de control y datos. En cuanto al desarrollo de la estructura de hardware, agrega un procesador de CPU de uso general basado en FPGA, como la CPU Intel.

DPU de un solo chip

Este es un chip DPU programable de uso general de un solo chip, que tiene hardware rico offcapacidades de programación y aceleración de carga, y admite diferentes escenarios de computación en la nube y funciones de administración de recursos unificadas. En cuanto al hardware, adopta una forma de SoC de un solo chip, equilibrando el rendimiento y el consumo de energía. Los principales desafíos de la DPU basada en FPGA en el diseño de hardware provienen del área del chip y el consumo de energía. En términos de área, el tamaño de la estructura de la interfaz PCIe limita el área del chip en la placa; En términos de consumo de energía, el diseño de disipación de calor de la placa está estrechamente relacionado con el consumo de energía del chip y de toda la placa. Estos dos factores restringen el desarrollo continuo de soluciones FPGA. La solución DPU SoC se basa en la experiencia y los logros de software y hardware desde NIC hasta DPU basada en FPGA, y es un camino de evolución importante para la arquitectura del centro de datos centrada en DPU.

La DPU, como representante típico de los chips definidos por software, se basa en el concepto de "definido por software y acelerado por hardware" y es un procesador de uso general que integra el procesamiento de datos como función principal del chip. La unidad de procesamiento de propósito general DPU se utiliza para manejar los negocios del plano de control, y la unidad de procesamiento dedicada garantiza el rendimiento del procesamiento del plano de datos, logrando así un equilibrio entre rendimiento y generalidad. La unidad de procesamiento dedicada de DPU se utiliza para resolver el cuello de botella de rendimiento de la virtualización de la infraestructura general, y la unidad de procesamiento de propósito general garantiza la generalidad de la DPU, lo que hace que la DPU sea ampliamente aplicable a diversos escenarios de infraestructura de nube y logra la migración fluida del marco de software de virtualización. a la DPU.

El desarrollo y la aplicación de NIC

La tarjeta de red básica tradicional NIC, también conocida como adaptador de red, es el dispositivo de conexión más básico e importante en el sistema de red informática. Su función principal es convertir los datos que deben transmitirse a un formato que el dispositivo de red pueda reconocer. Impulsada por el desarrollo de la tecnología de red, la tarjeta de red básica tradicional también tiene más funciones e inicialmente poseía un hardware simple. offcapacidades de carga (como verificación CRC, TSO/UF0, LSO/LR0, VLAN, etc.), compatible con SR-IOV y gestión de tráfico QoS. El ancho de banda de la interfaz de red de la tarjeta de red básica tradicional también se ha desarrollado desde los 100M, 1000M originales hasta 10G, 25G e incluso 100G.

El desarrollo y la aplicación de NIC

En la red de virtualización de computación en la nube, la tarjeta de red básica tradicional proporciona acceso de red a la máquina virtual de tres formas principales.

(1) La tarjeta de red recibe el tráfico y lo reenvía a la máquina virtual a través de la pila de protocolos del kernel del sistema operativo.

(2) El controlador en modo de usuario DPDK se hace cargo de la tarjeta de red, lo que permite que los paquetes de datos omitan la pila de protocolos del kernel del sistema operativo y se copie directamente a la memoria de la máquina virtual.

(3) Utilizando la tecnología SR-IOV, la tarjeta de red física PF se virtualiza en múltiples VF virtuales con funciones de tarjeta de red, y luego el VF se pasa directamente a la máquina virtual.

Con protocolos de túnel como VxLAN y tecnologías de conmutación virtual como OpenFlow, 0VS, etc., la complejidad del procesamiento de la red aumenta gradualmente y se necesitan más recursos de CPU. Por eso nació SmartNIC.

El desarrollo y aplicación de SmartNIC

SmartNIC, además de tener la función de transmisión de red de la tarjeta de red básica tradicional, también proporciona hardware rico offcapacidades de aceleración de carga, que pueden mejorar la tasa de reenvío de la red de computación en la nube y liberar los recursos informáticos de la CPU del host.

El desarrollo y aplicación de SmartNIC

SmartNIC no tiene una CPU de procesador de uso general y necesita la CPU del host para administrar el plano de control. El principal offEl objeto de aceleración de carga de SmartNIC es el plano de datos, como el plano de datos Fastpath. offcarga de conmutadores virtuales 0VS/vRouter, red RDMA offcargando, almacenamiento NVMe-oF offcarga y seguridad del plano de datos IPsec/TLS offcarga, etc

Sin embargo, a medida que la velocidad de la red en las aplicaciones de computación en la nube continúa aumentando, el host aún consume muchos recursos valiosos de la CPU para clasificar, rastrear y controlar el tráfico. Cómo lograr un “consumo cero” de la CPU del host se ha convertido en la siguiente dirección de investigación para los proveedores de nube.

El desarrollo y la aplicación de DPU basada en FPGA

En comparación con SmartNIC, la DPU basada en FPGA agrega una unidad de procesamiento de CPU de uso general a la arquitectura de hardware, formando una arquitectura FPGA+CPU, que facilita la aceleración y offcarga de infraestructura general como red, almacenamiento, seguridad y gestión. En esta etapa, la forma de producto de DPU es principalmente FPGA+CPU. La DPU basada en la arquitectura de hardware FPGA+CPU tiene buena programabilidad de software y hardware.

El desarrollo y aplicación de DPU basada en FPGA.

En la etapa inicial del desarrollo de DPU, la mayoría de los fabricantes de DPU eligieron este esquema. Este esquema tiene un tiempo de desarrollo relativamente corto y una iteración rápida, y puede completar rápidamente el desarrollo de funciones personalizadas, lo que es conveniente para que los fabricantes de DPU lancen productos rápidamente y aprovechen el mercado. Sin embargo, con la migración del ancho de banda de la red de 25G a 100G, la DPU basada en la arquitectura de hardware FPGA+CPU está limitada por el proceso del chip y la estructura FPGA, lo que dificulta lograr un buen control del área del chip y el consumo de energía cuando se busca un mayor rendimiento. , restringiendo así el desarrollo continuo de esta arquitectura DPU.

El desarrollo y la aplicación de la NIC DPU SoC

DPU SoC es una arquitectura de hardware basada en ASIC, que combina las ventajas de ASIC y CPU y equilibra el excelente rendimiento de los aceleradores dedicados y la flexibilidad programable de los procesadores de uso general. Es una solución de tecnología DPU de un solo chip que impulsa el desarrollo de la tecnología de computación en la nube.

Como se mencionó en el párrafo anterior, aunque las DPU desempeñan un papel importante en la computación en la nube, las soluciones tradicionales de DPU se presentan principalmente en esquemas basados ​​en FPGA. Con la migración del servidor de 25G al servidor de 100G de próxima generación, su costo, consumo de energía, funcionalidad y otros aspectos enfrentan serios desafíos. El SoC DPU de un solo chip no solo tiene enormes ventajas en costo y consumo de energía, sino que también tiene un alto rendimiento y capacidades de programación flexibles. Admite no solo la gestión de aplicaciones y la implementación de máquinas virtuales y contenedores, sino también aplicaciones básicas.

El desarrollo y la aplicación de la NIC DPU SoC

Con el desarrollo continuo de la tecnología DPU, el SoC DPU programable de uso general se está convirtiendo en un componente clave en la construcción de centros de datos de los proveedores de nube. DPU SoC puede lograr una gestión económica y eficiente de los recursos informáticos y de la red en el centro de datos. El DPU SoC con funciones ricas y capacidades programables puede admitir diferentes escenarios de computación en la nube y administración unificada de recursos, y optimizar la utilización de los recursos informáticos del centro de datos.

En el diseño, desarrollo y uso de DPU, los gigantes de chips y los principales proveedores de servicios en la nube nacionales y extranjeros han invertido muchos recursos de I + D y han logrado una buena rentabilidad a través de la exploración y la práctica continuas.

DPU en AWS (Nube de Amazon)

AWS es el proveedor de soluciones y servicios de computación en la nube líder en el mundo. El sistema AWS Nitro DPU se ha convertido en la piedra angular técnica del servicio en la nube de AWS. AWS utiliza el sistema Nitro DPU para descomponer y transferir funciones de red, almacenamiento, seguridad y monitoreo a hardware y software dedicados, y proporciona casi todos los recursos del servidor para instancias de servicio, lo que reduce en gran medida los costos. La aplicación de Nitro DPU en Amazon Cloud puede hacer que un servidor gane miles de dólares más al año. El sistema Nitro DPU consta principalmente de las siguientes partes.

La aplicación de DPU en AWS (Amazon Cloud)

(1) Tarjeta nitro. Una serie de hardware dedicado para red, almacenamiento y control, para mejorar el rendimiento general del sistema.

(2) Chip de seguridad Nitro. Transfiera funciones de virtualización y seguridad a hardware y software dedicados, reduzca la superficie de ataque y consiga una plataforma en la nube segura.

(3) Hipervisor Nitro. Un programa de administración de hipervisor liviano que puede administrar la asignación de memoria y CPU y proporcionar un rendimiento que no se puede distinguir del básico.

El sistema Nitro DPU proporciona funciones de clave, red, seguridad, servidor y monitoreo, libera los recursos de servicio subyacentes para las máquinas virtuales de los clientes y permite a AWS proporcionar más tipos de instancias básicas e incluso aumentar el rendimiento de la red de instancias específicas para 100Gbps.

DPU de NVIDIA

NVIDIA es una empresa de semiconductores que diseña y vende principalmente unidades de procesamiento de gráficos (GPU), ampliamente utilizadas en los campos de la inteligencia artificial y la computación de alto rendimiento (HPC). En abril de 2020, NVIDIA adquirió Mellanox, una empresa de dispositivos y chips de red, por 6.9 millones de dólares y luego lanzó la serie de DPU BlueField.

La DPU NVIDIA BlueField-3 (como se muestra en la Figura 7) hereda las funciones avanzadas de la DPU BlueField-2 y es la primera DPU diseñada para IA y computación acelerada. La DPU BlueField-3 proporciona hasta Red de 400 Gbps conexión y puede offcargar, acelerar y aislar, admitiendo funciones de gestión, seguridad, almacenamiento y red definidas por software.

UIP Intel

Intel IPU es un dispositivo de red avanzado con aceleradores reforzados y conexiones Ethernet, que puede utilizar núcleos programables dedicados estrechamente acoplados para acelerar y administrar funciones de infraestructura. La UIP proporciona una infraestructura completa offcarga y actúa como un punto de control del host para ejecutar aplicaciones de infraestructura, proporcionando una capa adicional de seguridad. Usando Intel IPU, todos los servicios de infraestructura pueden ser offcargado desde el servidor a la IPU, liberando recursos de CPU del servidor y también brindando a los proveedores de servicios en la nube un punto de control independiente y seguro.

Hoja de ruta de Intel

En 2021, Intel anunció los productos IPU Oak Springs Canyon y Mount Evans en el Día de la Arquitectura Intel. Entre ellos, Oak Springs Canyon es un producto IPU basado en FPGA y Mount Evans IPU es un producto IPU basado en ASIC.

La IPU Intel Oak Springs Canyon está equipada con Intel Agilex FPGA y CPU Xeon-D. Intel Mount Evans IPU es un SoC (System-on-a-Chip) diseñado conjuntamente por Intel y Google. Mount Evans se divide principalmente en dos partes: el subsistema I0 y el subsistema informático. La parte de la red utiliza ASIC para el procesamiento de paquetes, que tiene un rendimiento mucho mayor y un menor consumo de energía que FPGA. El subsistema informático utiliza 16 núcleos ARM Neoverse N1, que tienen capacidades informáticas extremadamente sólidas.

DPU en la nube de Alibaba

Alibaba Cloud también explora constantemente la tecnología DPU. En la Cumbre de Alibaba Cloud en 2022, Alibaba Cloud offLanzó oficialmente el procesador de infraestructura en la nube CIPU, que se basa en la arquitectura Shenlong. La predecesora de CIPU es la tarjeta MoC (Micro Server on a Card), que cumple con la definición de DPU en términos de función y posicionamiento. La tarjeta MoC tiene unidades de procesamiento, almacenamiento y I0 independientes, y realiza trabajos de virtualización de red, almacenamiento y dispositivos. Las tarjetas MoC de primera y segunda generación resolvieron el sentido estricto de la virtualización informática sin problemas generales, y el software aún implementa la parte de red y almacenamiento de la virtualización. La tarjeta MoC de tercera generación refuerza algunas funciones de reenvío de red y mejora considerablemente el rendimiento de la red. La tarjeta MoC de cuarta generación implementa todo el hardware offcarga de red y almacenamiento y también admite capacidad RDMA.

Como sistema de procesador de centro de datos diseñado para el sistema Feitian, Alibaba Cloud CIPU tiene un significado importante para Alibaba Cloud para construir una nueva generación de sistemas completos de arquitectura de computación en la nube de software y hardware.

DPU en motor volcán

Volcano Engine también explora constantemente el camino de la DPU de desarrollo propio. Su DPU de desarrollo propio adopta una tecnología de virtualización integrada blanda y dura, con el objetivo de proporcionar a los usuarios servicios informáticos de alto rendimiento elásticos y escalables. En los productos de computación elástica de Volcano Engine, el servidor bare metal elástico de segunda generación y el servidor en la nube de tercera generación están equipados con DPU de desarrollo propio, que se han verificado ampliamente en las capacidades del producto y escenarios de aplicación. La instancia EBM de segunda generación de Volcano Engine, que fue offComercializado oficialmente en 2022, fue el primero en llevar la DPU de desarrollo propio de Volcano Engine. No solo conserva las ventajas de estabilidad y seguridad de las máquinas físicas tradicionales y puede lograr un aislamiento físico seguro, sino que también tiene las ventajas de elasticidad y flexibilidad de las máquinas virtuales. Se trata de una nueva generación de servidores en la nube de alto rendimiento con múltiples ventajas. La instancia ECS de tercera generación de Volcano Engine, que se lanzó en la primera mitad de 2023, también combina la arquitectura de la última DPU de desarrollo propio de Volcano Engine y la tecnología de virtualización y conmutador virtual de desarrollo propio, y el rendimiento de E/S de red y almacenamiento. ha mejorado mucho.

Deja un comentario

Ir al Inicio