"Estamos cerca del comienzo del próximo gran cambio arquitectónico en la infraestructura de TI", dice Paul Turner, vicepresidente de administración de productos de vSphere en VMware en un blog. Habla de nuevos servidores que están construidos con la máxima capacidad de programación en un único y rentable factor de forma.

Y lo que hizo posible esta revolución es algo simple: hacer que las tarjetas de red sean más inteligentes. El proceso comenzó con la tarjeta de interfaz de red inteligente o SmartNIC, y ha llevado a un chip especializado: la DPU o unidad de procesamiento de datos, un dispositivo de nombre ambiguo con una amplia gama de aplicaciones.

“A medida que estas DPU se vuelvan más comunes, podemos esperar que la DPU gestione funciones como el cifrado/descifrado, el cortafuegos, la inspección de paquetes, el enrutamiento, las redes de almacenamiento y más”, predice Turner.

El nacimiento de las SmartNIC

Existen chips especializados porque los procesadores de la familia x86 son excelentes para tareas de propósito general, pero para trabajos específicos, pueden ser mucho más lentos que un sistema especialmente diseñado. Es por eso que los chips de procesadores de gráficos (GPU) han estado de auge, primero en las consolas de juegos y luego en los sistemas de IA.

“La GPU fue realmente diseñada para ser la mejor en hacer las matemáticas para dibujar triángulos”, explica Eric Hayes, CEO de Fungible, uno de los principales exponentes de los nuevos chips de red. “Jensen Huang de Nvidia fue lo suficientemente brillante como para aplicar esa tecnología al aprendizaje automático y darse cuenta de que la arquitectura se adapta muy bien a ese tipo de cargas de trabajo”.

Al igual que las GPU, las SmartNIC comenzaron con un pequeño trabajo: descargar algunas funciones de red de la CPU, para que el tráfico de red pudiera fluir más rápido. Y, al igual que las GPU, eventualmente se encontraron con una amplia variedad de usos.

Pero SmartNIC no es una categoría uniforme única para todos. Comenzaron a aparecer a medida que las redes se volvieron más rápidas y tenían que transportar más tráfico de usuarios, explica Baron Fung, analista de Delloro Group.

"10 Gbps ahora es más una tecnología heredada", explicó Fung, en un seminario web de DCD. "En los últimos años, hemos visto a los proveedores de nube en general cambiar a 25 Gig, muchos de ellos están pasando por la transición a 400 Gig".

Al mismo tiempo, “los proveedores de la nube necesitan consolidar las cargas de trabajo de miles y miles de usuarios finales. SmartNIC se convirtió en una de las soluciones para administrar todo ese tráfico de datos".

Los servidores pueden funcionar con NIC estándar o "fundacionales" de hasta alrededor de 200 Gbps, dice Fung. “Hoy en día, la mayoría de los servidores del mercado tienen NIC estándar”.

Por encima de eso, los proveedores de redes han creado NIC de "rendimiento", utilizando ASIC especializados para descargar funciones de red, pero las SmartNIC son diferentes.

“Las SmartNIC agregan otra capa de rendimiento sobre las NIC de rendimiento”, dice Fung. “Esencialmente, estos dispositivos se reducen a ser dispositivos totalmente programables con su propio procesador, sistema operativo, memoria integrada y estructura de red. Es como un servidor dentro de un servidor, que ofrece una gama diferente de servicios de descarga desde la CPU del host”.

Es un área de crecimiento: "Las SmartNIC son relativamente pequeñas en número ahora, pero en los próximos años, veremos una mayor adopción de estos dispositivos".

SmartNICS está pasando de un mercado especializado a un uso más general: "Hoy en día, la mayoría de los dispositivos inteligentes son exclusivos de los hiperescaladores de la nube como Amazon y Microsoft, que están construyendo sus propias SmartNIC para sus propios centros de datos", dice Fung. “Pero a medida que los proveedores lanzan productos más innovadores y mejores marcos de desarrollo de software para que los usuarios finales optimicen sus dispositivos, también podemos ver una mayor adopción por parte del resto del mercado”.

Las SmartNIC tendrán un crecimiento anual del tres por ciento durante los próximos años, pero seguirán siendo una pequeña parte del mercado general porque son caras: “Hoy en día, tienen una prima de tres a cinco veces superior a una NIC estándar. Y ese alto costo debe justificarse”.

En una aplicación de red general, las SmartNIC pueden justificar su costo haciendo que las redes sean más eficientes. “También prolongan la vida útil de la infraestructura, porque estos dispositivos inteligentes se pueden optimizar a través del software. Es realmente un equilibrio, ya sea que se justifique o no un punto de precio más alto para las SmartNIC”.

Pero existe la posibilidad de confusión, ya que diferentes proveedores los lanzan con diferentes nombres y diferentes funciones. Junto con las SmartNIC y las DPU, Intel ha colaborado con la unidad de procesamiento de infraestructura (IPU) ampliamente similar.

“Hay muchos acrónimos diferentes de diferentes proveedores, y hemos visto a los proveedores tratando de diferenciarse con funciones que son únicas para las aplicaciones de destino a las que se dirigen”, dice Fung.

Introducir Fungible

Uno de esos proveedores es Fungible. La empresa es una creación de Pradeep Sindhu, un formidable reconstructor de redes y ex científico de Xerox PARC, que fundó Juniper Networks en 1996.

Juniper se basó en la idea de usar silicio de propósito especial para enrutadores de red, en lugar de usar software que se ejecuta en conmutadores de red de propósito general. Rápidamente le quitó cuota de mercado a Cisco.

En 2015, Pradeep fundó Fungible, para fabricar dispositivos de propósito especial nuevamente, solo que esta vez fabricando aceleradores de red que denominó "unidades de procesamiento de datos" o DPU. Ahora es CTO, y el rol de CEO ha sido asumido por el ejecutivo Eric Hayes desde hace mucho tiempo.

Hayes dice que la visión de Fungible se basa en la necesidad de mover más datos de un lugar a otro: “Hay datos en todas partes, y todos recopilan y almacenan datos. Y la pregunta realmente se reduce a ¿Cómo procesas todos esos datos?

El arquitecto de Equinix, Kaladhar Voruganti, da un ejemplo concreto: “Un avión genera alrededor de 4,5 terabytes de datos al día. Y si está tratando de crear modelos o gemelos digitales, puede imaginar la cantidad de datos que tiene que mover”, dice Voruganti, quien trabaja en la oficina del CTO en Equinix.

Las CPU y GPU no están diseñadas para ayudar con las tareas de mover y manejar datos, dice Hayes: cuando comienzas a ejecutar ese tipo de cargas de trabajo en CPU o GPU de propósito general, terminas siendo muy ineficiente, obteniendo el equivalente de una instrucción por reloj. Estás quemando muchos núcleos y no estás haciendo mucho trabajo por la cantidad de energía que estás quemando”.

Hayes considera que existe una distinción clara entre las SmartNIC y las DPU que van más allá de las tareas de red rígidas: “Las DPU se diseñaron para el procesamiento de datos. Están diseñados para hacer el procesamiento de datos que x86 y GPU no pueden hacer de manera eficiente”.

Él dice que el beneficio del costo total de propiedad es claro: “Realmente se reduce a cuál es el costo incremental de agregar la GPU para hacer esas cargas de trabajo en comparación con la cantidad de procesamiento de propósito general"

Según Hayes, las primeras generaciones de SmartNIC son “simplemente diferentes combinaciones de CPU Arm o x86, con FPGA y canalizaciones configurables cableadas. Tienen una cantidad limitada de compensación de rendimiento por flexibilidad”.

Por el contrario, la DPU de Fungible tiene “una CPU de diseño personalizado que permite un conjunto de instrucciones personalizado con aceleración de hardware estrechamente acoplada. Por lo tanto, la arquitectura permite flexibilidad y rendimiento al mismo tiempo.“

Close up of hard drives in a SAN server
– Thinkstock / kjekol

El chip Fungible tiene un procesador MIPS RISC de 64 bits con aceleradores de hardware estrechamente acoplados: "Aceleradores de hardware estrechamente acoplados en una CPU de ruta de datos: esta es la definición de una DPU".

La DPU puede contener "una implementación muy, muy eficiente de una pila TCP, con el nivel más alto de instrucciones por reloj disponible, en relación con una CPU de propósito general".

¿Qué hacen las DPU?

Las DPU hacen que el procesamiento en red sea más rápido, pero Fungible está analizando tres aplicaciones específicas que sacuden otras partes de la pila de TI.

El primero es el más obvio: acelerar las redes.

Las redes se implementan cada vez más en software, gracias al movimiento de redes definidas por software (SDN). “Esto se remonta a los días de Nicira [un pionero de SDN comprado por VMware]”, dice Hayes. Las redes SDN hacen que el sistema sea más flexible al manejar sus funciones en el software. Pero cuando ese software se ejecuta en procesadores de propósito general, es, dice Hayes, "extremadamente ineficiente".

Las SmartNIC toman algunas medidas para mejorar la funcionalidad de SDN, dice Hayes, pero "no al nivel de rendimiento de una DPU".

Más allá de la simple SDN, las SmartNIC serán esenciales en ecosistemas de redes más inteligentes, como los sistemas OpenRAN (red abierta de acceso por radio) que emergen para entregar 5G.

Almacenamiento de reescritura

La siguiente aplicación es mucho más ambiciosa. Las DPU pueden potencialmente reconstruir el almacenamiento para la era centrada en los datos, dice Hayes, creando protocolos de acceso a la memoria en ejecución sobre TCP/IP y descargándolos, creando así "almacenamiento computacional en línea".

NVMe, o memoria rápida no volátil, es una interfaz diseñada para acceder a la memoria flash, generalmente conectada por el bus PCI express. Ejecutar NVMe sobre TCP/IP y colocar toda la pila en una DPU descarga todo el trabajo de acceso a la memoria de la CPU y significa que la memoria flash ya no tiene que estar conectada directamente a la CPU.

“El objetivo de hacer NVMe sobre TCP es poder sacar todo el almacenamiento flash de su servidor”, dice Hayes. “Puede definir un servidor muy simple con un x86 de uso general para el procesamiento de uso general y luego agregar una DPU para que haga todo el trabajo de almacenamiento por usted”.

En lo que respecta a la CPU, “la DPU parece un dispositivo de almacenamiento, actúa como un dispositivo de almacenamiento y descarga todos los controladores que normalmente tienen que ejecutarse en el procesador de uso general. Esta es una enorme cantidad de trabajo que tendría que hacer el x86 o Arm, y se descarga en la GPU, liberando todos esos ciclos para cumplir con el propósito de por qué desea el servidor en primer lugar”.

Los dispositivos flash a los que se accede a través de TCP/IP pueden pasar de ser discos locales a convertirse en un dispositivo de almacenamiento compartido centralizado, dice Hayes. “Eso se vuelve muy eficiente. Es almacenamiento computacional en línea, y eso significa que en realidad podemos procesar el almacenamiento entrante o saliente. Además de eso, podemos procesarlo mientras está en reposo. No necesita mover esos datos, puede procesarlos localmente con una GPU”.

GPU aceleradas

En una aplicación final, las DPU se encuentran con el otro gran caballo de batalla de descarga, la GPU, y ayudan a aprovecharlas mejor, porque después de todo, hay mucha comunicación entre las CPU y las GPU.

“Hoy en día, en la mayoría de los casos, tiene un procesador x86 básico que está ahí para cuidar muchas GPU”, dice Hayes. "Se convierte en un cuello de botella, ya que los datos tienen que entrar y salir de las GPU, a través de la interfaz PCI y en la memoria de la CPU de uso general".

Delegar esa tarea de comunicación a una DPU le permite "desagregar esas GPU", dice Hayes, convirtiéndolas en módulos separados que pueden manejarse en condiciones de igualdad. “Puede reducir la dependencia de la interfaz GPU-PCI y le brinda la capacidad de mezclar y combinar la cantidad de GPU que desee, e incluso dividirlas en varias CPU”.

Esto es mucho más eficiente y más asequible en un entorno multiusuario que dedicar conjuntos de GPU a procesadores x86 específicos, afirma.

Un caso de uso final para las DPU es la seguridad. Se les puede dar la capacidad de acelerar el cifrado y el descifrado, dice Hayes, y los proveedores de redes lo agradecen. “Queremos asegurarnos de que la tela que tenemos sea segura”, dice Voruganti.

Bare metal más fácil para proveedores de servicios y empresas

Equinix está interesado en usar las DPU y tiene una aplicación bastante sólida para ellas: Metal, el servicio de computación bajo demanda bare metal que implementó utilizando la tecnología de su reciente adquisición de Packet.

En Metal, Equinix ofrece a sus clientes acceso a hardware físico en sus instalaciones, pero quiere ofrecerles flexibilidad. Con las DPU, podría permitir que el mismo hardware realice tareas radicalmente diferentes, sin necesidad de volver a cablear físicamente.

“Lo que me gusta de la solución de Fungible es la capacidad de usar la DPU en diferentes factores de forma en diferentes soluciones”, dice Voruganti. “Creo que en un modelo componible definido por software, habrá un nuevo software para configurar el hardware, por ejemplo, como servidores de IA, cabezales de controladores de almacenamiento u otros dispositivos.

“En lugar de configurar diferentes servidores con diferentes tarjetas y tener muchos SKU diferentes de servidores, creo que nos facilitará mucho la vida si podemos usar software para componer básicamente los servidores en función de los requisitos del usuario”.

Eso puede sonar como una aplicación bastante especializada, pero hay muchas empresas con una necesidad similar a la de los proveedores de servicios básicos como Equinix.

Hay un gran movimiento en este momento bajo el lema de "repatriación de la nube", donde los primeros clientes de la nube desilusionados han descubierto que tienen poco control de sus costos cuando ponen todo en la nube. espacios.

Pero tienen un problema, dice Hayes. “Se ha alejado de los costos no controlados de la nube integral, pero aún desea que se vea como lo que estaba acostumbrado en la nube”.

Estas nuevas implementaciones empresariales son "híbridas", pero requieren flexibilidad. "Muchas de las que comenzaron en la nube no necesariamente tienen la infraestructura de red y el talento de TI de una empresa que comenzó con una red privada", dice Hayes. Los sistemas basados ​​en DPU, dice, “les facilitan construir, operar e implementar este tipo de redes”.

Estándares necesarios

Pero aún es pronto y a Voruganti le gustaría que los proveedores resolvieran una o dos cosas: "Todavía estamos en las etapas iniciales de esto, por lo que los proveedores de nube pública tienen diferentes tipos de SmartNIC entre comillas", dice.

“Una de las cosas que los operadores encuentran desafiantes es que nos gustaría cierta estandarización de la industria, de modo que el operador tenga cierta capacidad para cambiar entre proveedores por razones de la cadena de suministro y tener una estrategia de múltiples proveedores”.

En este momento, sin embargo, con los proveedores de DPU y SmartNIC que ofrecen diferentes arquitecturas, "es una comparación de manzanas con naranjas entre los proveedores de SmartNIC".

Con algunas definiciones establecidas, la industria podría tener un ecosistema y las DPU podrían incluso convertirse en un elemento más o menos estándar.

¿DPU hambrientas de energía?

Tiene otro problema: “También nos preocupa el consumo de energía. Si bien los proveedores como Fungible trabajan para mantenerse dentro de un límite de energía, creemos que el diseño general del hardware debe integrarse de manera mucho más fluida con el diseño del centro de datos”.

Los racks cargados con SmartNIC están “aumentando el nivel de energía”, dice. “Históricamente podríamos tener 7,5kW por rack, en algunos casos hasta 15 kilovatios. Pero estamos descubriendo que con las nuevas aplicaciones informáticas y de almacenamiento, la demanda de energía ahora oscila entre 30 y 40 kW por rack.

No es bueno simplemente agregar otro tipo de chip que consume mucha energía en un centro de datos diseñado para mantener una generación anterior de hardware: "Creo que las estrategias de enfriamiento que utilizan estos proveedores de hardware deben integrarse de manera más transparente para obtener un mejor enfriamiento".

Equinix tiene como objetivo poner las unidades de procesamiento especiales bajo cierto control: “Estamos analizando los estándares Open19 y estamos comenzando a interactuar con diferentes proveedores y la industria para ver si podemos estandarizar para que sea fácil encontrar soluciones de enfriamiento.”

Hayes toma esos puntos, pero no está tan interesado en comercializar su producto especial y dice que necesitará hardware especializado para evitar ese sobrecalentamiento: “Todo es cuestión de software. En nuestra opinión, a largo plazo, el ganador en este mercado será el que pueda construir todos esos servicios en la infraestructura más eficiente posible. Cuanto más eficiente sea su infraestructura, menor será la potencia, más usuarios podrá obtener por CPU y por bit de memoria flash, por lo que obtendrá más dólares de margen”.

Fung, el analista, puede ver las dificultades de la estandarización: “Sería bueno si pudiera haber soluciones de múltiples proveedores. Pero realmente no veo que eso suceda, ya que cada proveedor tiene su propio tipo de solución que es diferente”.

Pero él cree que tendrá que surgir un ecosistema más estandarizado, si las DPU van a llegar a más clientes: “Pronostico que alrededor de un tercio del mercado de DPU estará en proveedores más pequeños y centros de datos privados. Debe haber kits de desarrollo de software que permitan a estas empresas más pequeñas llevar productos al mercado, porque no cuentan con miles de ingenieros como AWS o Microsoft”.