De todas las tecnologías en el centro de datos, ninguna está evolucionando más rápidamente que la conectividad de red. Hace 20 años, las redes de 1 GbE se consideraban exóticas y la infraestructura necesaria para admitirlas (p. ej., NIC, conmutadores y cables) era costosa y escasa. Hace tres años, las redes de 10 GbE eran lo último en tecnología, pero ahora las redes de 20, 40 e incluso 100 GbE se han convertido en el estándar en los centros de datos. La red no solo se ha ampliado, sino que se ha vuelto más sofisticada con la adición de elementos como virtualización, redes definidas por software (SDN), redes superpuestas y otras tecnologías que ni siquiera se habían imaginado hace diez años pero que ahora son comunes y están agotando los recursos en los servidores del centro de datos.
De todas las tecnologías en el centro de datos, ninguna está evolucionando más rápidamente que la conectividad de red. Hace 20 años, las redes de 1 GbE se consideraban exóticas y la infraestructura necesaria para admitirlas (p. ej., NIC, conmutadores y cables) era costosa y escasa. Hace tres años, las redes de 10 GbE eran lo último en tecnología, pero ahora las redes de 20, 40 e incluso 100 GbE se han convertido en el estándar en los centros de datos. La red no solo se ha ampliado, sino que se ha vuelto más sofisticada con la adición de elementos como virtualización, redes definidas por software (SDN), redes superpuestas y otras tecnologías que ni siquiera se habían imaginado hace diez años pero que ahora son comunes y están agotando los recursos en los servidores del centro de datos.
**Obtenga más información sobre SmartNIC y el centro de datos componible en Adaptar Xilinx***
Cuando se trata de redes de más de 10 GbE, comenzamos a ver cuellos de botella en la CPU de los servidores, ya que los paquetes de red pasan a la CPU para su procesamiento. Con redes de 25 GbE, un porcentaje medible del tiempo de la CPU se dedica a procesar paquetes de red. Para solucionar este problema, hemos desarrollado técnicas para enviar algunas funciones de red desde la CPU al controlador de interfaz de red (NIC). Llamamos a los dispositivos que pueden manejar esta descarga SmartNIC.
En este artículo, explicaremos qué es una SmartNIC, el valor que aportan al centro de datos y por qué debería comenzar a investigar e invertir en ellas. Finalmente, veremos una SmartNIC particularmente innovadora, la Xilinx SN1000.
¿Qué es una SmartNIC?
La descarga de las operaciones de red de la CPU a una NIC ha sido el enfoque de los principales proveedores de la nube, ya que siempre buscan la eficiencia en el centro de datos. No existe una regla estricta y rápida sobre lo que se necesita para etiquetar una NIC como Smart; sin embargo, como mínimo, deberían poder manejar algunas de las funciones del plano de control que se encuentran en los conmutadores virtuales y algunas de las capacidades que se encuentran en las funciones de virtualización de funciones de red (NFV), como firewall, detección y prevención de intrusiones, inspección de host y encriptación, así como tareas de plano de datos, como la calidad de servicio (QoS) de la red y el informe y la supervisión del flujo.
¿Qué está impulsando la adopción de SmartNIC?
Las nubes públicas y los hiperescaladores han impulsado la innovación de los centros de datos durante la última década y seguirán haciéndolo en el futuro previsible. La tecnología que utilizan finalmente se traslada a los centros de datos empresariales y lo mismo ocurre con las SmartNIC. En retrospectiva, las SmartNIC simplemente colocan las funciones de red donde deberían haber estado en primer lugar: de nuevo en la NIC en lugar de desperdiciar el ancho de banda de la CPU y la placa base.
Es fácil imaginar cuánto tráfico de red se descarta o se fija en la red sin agregar ningún valor al sistema/CPU que se ven obligados a lidiar con ellos, simplemente porque las NFV y otras funciones se implementan utilizando la CPU de un servidor tradicional en lugar de que a nivel de NIC. Cada ciclo de CPU que se puede descargar de la CPU lo libera y permite que el servidor realice un trabajo productivo.
Para ilustrar cómo una SmartNIC puede ser beneficiosa, podemos tomar algo tan simple como un ataque de denegación de servicio distribuido (DDoS). Si bien un DDoS es raro en un centro de datos moderno, tener una SmartNIC que se ocupe de un DDoS permitiría que la CPU del sistema continuara con un trabajo productivo en lugar de ordenar, clasificar y descartar paquetes. Un ejemplo más moderno sería tener una SmartNIC que se ocupe de la encapsulación de los paquetes de red que utilizan las redes superpuestas en lugar de la CPU del sistema.
Por qué Xilinx es líder en tecnología SmartNIC
Con todas las tecnologías emergentes, hay empresas que se posicionan a la vanguardia de la tecnología. Estas empresas tienden a ser apasionadas y centradas en la tecnología. Dedican sus energías al objetivo de superar la miríada de obstáculos que impedirían que la nueva tecnología ingrese al mercado. Xilinx es una de esas empresas.
Xilinx tiene una larga historia de innovación en tecnologías emergentes. Por ejemplo, inventaron la matriz de puertas programables en campo (FPGA) y se les considera líderes en esta tecnología. Llevar al mercado una nueva tecnología, como SmartNIC, no es una propuesta económica y, con ingresos de más de $3 mil millones en 2020, tienen los recursos financieros para hacerlo. Pero también se requieren conocimientos de ingeniería y administración serios; nuevamente, Xilinx tiene ambos.
En abril de 2019, Xilinx firmó un acuerdo para adquirir Solarflare Communications, un desarrollador anterior de aceleración de aplicaciones y redes de latencia ultrabaja, y líder en tecnología SmartNIC. Más tarde ese año, Xilinx demostró una SmartNIC 100G basada en FPGA de un solo chip basada en las tecnologías Solarflare y Xilinx. Esta SmartNIC combinó Xilinx FPGA, sistema en un chip (SoC) y plataforma de aceleración informática adaptable (ACAP) con la tecnología de Solarflare para crear una nueva solución SmartNIC convergente, que se convirtió en Xilinx SN1000.
El Xilinx ALVEO SN1000
Xilinx SN1000 es una NIC física FHHL PCIe x16 (Gen 4 x8 o Gen 3 x16 eléctrica) con dos puertos ópticos o de cobre de 100 GbE. Tiene un procesador Cortex-A16 de 72 núcleos y un FPGA con más de un millón de tablas de búsqueda (LUT). Una LUT es básicamente cómo FPGA construye su lógica; cuantos más LUT tenga un FPGA, más potente y flexible será. La tarjeta tiene un total de 12 GB de RAM DDR4, con 4 GB dedicados al procesador Arm y 8 GB a la FPGA. Este esquema de hardware se traduce en que el SN1000 puede descargar 4 millones de conexiones con estado y procesar 100 millones de paquetes por segundo (PPS).
Los circuitos integrados específicos de la aplicación (ASIC), los FPGA y los SoC se pueden utilizar para crear SmartNIC. Los ASIC pueden tener un buen rendimiento; sin embargo, tienen una flexibilidad limitada y es difícil agregarles funcionalidades adicionales. Y aunque los SoC son extremadamente flexibles, carecen de la velocidad de los ASIC y los FPGA.
Para proporcionar tanto flexibilidad como rendimiento en su SN1000 SmartNIC, Xilinx utiliza un potente SoC para funciones de plano de control debido a su flexibilidad inherente y lo combina con un FPGA para funciones de plano de datos por motivos de rendimiento. La principal ventaja de usar un FPGA sobre un ASIC es que un FPGA se puede reprogramar cuando se desarrolla o se necesita una nueva funcionalidad, mientras que puede tomar un año o más obtener un nuevo ASIC en el campo.
Desarrollar código para un FPGA no es un asunto trivial y Xilinx tiene algunas herramientas excelentes para ayudar con esta necesidad. Con el conjunto de herramientas de desarrollo y programación de Xilinx, los clientes de Xilinx pueden escribir sus propias aplicaciones FPGA en un lenguaje de programación de alto nivel al que están acostumbrados los desarrolladores de software, en lugar del código de hardware que se ha utilizado tradicionalmente para el desarrollo de aplicaciones FPGA.
Xilinx también ha desarrollado un mercado de aplicaciones donde se pueden obtener soluciones desarrolladas por Xilinx y terceros. Este enfoque permite a los compradores de SN1000 lograr un tiempo de valor (TTV) más rápido al pasar por alto el ciclo de desarrollo. La tienda de aplicaciones tiene soluciones para NFV, seguridad de red, procesamiento de imágenes, aprendizaje automático (ML) y otras funciones que pueden y deben realizarse a nivel de SmartNIC.
Las aplicaciones de Xilinx se empaquetan como contenedores docker. Se pueden evaluar para su uso de forma gratuita y luego comprarlos directamente en la tienda a través de una tarjeta de crédito.
Si bien las SmartNIC de Xilinx son un producto de vanguardia, esto no quiere decir que estén tan por delante de la curva que impidan la adopción y el uso. Por el contrario, las SmartNIC de Xilinx ya se están implementando para abordar casos de uso específicos en nubes públicas, hiperescaladores y centros de datos modernos. Algunos ejemplos de para qué se están utilizando incluyen; Encapsulación de túneles VXLAN y NVGRE, Open Virtual Switch (OVS), Intel DPDK y Virtio-net I/O.
Otro caso de uso interesante para las SmartNIC es que se utilizan para descargar funciones de almacenamiento, como el cliente de almacenamiento de objetos Ceph, y NVMe-oF está ganando popularidad. Además, para el comercio de alta velocidad, Xilinx ha declarado que su SmartNIC puede lograr una latencia de nanosegundos para el comercio algorítmico de "tick to trade".
El análisis de video es otro sector donde brillan las SmartNIC. Debido al volumen de datos involucrados con el video, es impracticable devolverlo a un depósito central. Como solución, las SmartNIC se utilizan en dispositivos perimetrales para manejar funciones de interpretación de video, como detección de máscaras, conteo y seguimiento de personas, así como cercas virtuales, ya que requieren la inferencia de IA que FPGA puede manejar de manera rápida y eficiente.
Por qué necesita SmartNIC
Con el aumento de las redes de gran ancho de banda, pedimos cada vez más a los servidores de nuestros centros de datos. Estamos llegando a un punto en el que, debido a la cantidad de paquetes de red que deben procesarse con más ancho de banda de red, los servidores tienen menos ciclos para realizar un trabajo rentable. Algunos estudios han demostrado que más del 20 % de los ciclos de CPU de un servidor se pueden utilizar para el procesamiento de paquetes en centros de datos tradicionales que tienen redes de gran ancho de banda. Por ejemplo, con una CPU de 3 GHz, un procesador tiene aproximadamente 300 ciclos para procesar un paquete de 1500B para mantener la velocidad de línea.
Para liberar a las CPU para que realicen el trabajo de alto valor para el que fueron diseñadas, necesitamos descargar funciones innecesarias a otros dispositivos, los que están más cerca de su fuente. En este caso, el dispositivo adecuado para hacer frente a las redes es una SmartNIC.
Si bien las SmartNIC no son solo competencia de Xilinx, están posicionadas a la vanguardia de esta tecnología emergente. Mediante el uso de un SoC combinado con FPGA, pueden obtener la facilidad de uso y la flexibilidad de una solución definida por software con el rendimiento de una solución implementada por hardware. Xilinx sabe que se necesitan aplicaciones para explotar las SmartNIC, por lo que ha creado un entorno de programación que permite a los programadores informáticos, en lugar de a los ingenieros de hardware, desarrollar las aplicaciones que se ejecutan en sus SmartNIC. Para aquellos usuarios que buscan una propuesta de TTV más rápida, Xilinx tiene una tienda de aplicaciones para permitir la compra de aplicaciones de terceros.
Para que un centro de datos moderno sea competitivo, debe liberar a sus servidores de tantas tareas innecesarias como sea posible. Estas tareas incluyen firewalls con estado, equilibrio de carga, IPsec, TLS, NVMe-over-TCP, acceso al almacenamiento Virtio.blk, compresión de datos o la gran cantidad de otras funciones que se administran mejor con una SmartNIC.
Obtenga más información en Xilinx Adapt
Adaptar Xilinx es un evento digital del 24 al 25 de marzo de 2021 que cubrirá la relevancia de las SmartNIC en el centro de datos junto con temas importantes como la computación en la nube, el almacenamiento computacional y el centro de datos componible. La entrada es gratuita y las repeticiones estarán disponibles después.
Interactuar con StorageReview
Boletín informativo | Canal de YouTube | Podcast iTunes/Spotify | @Instagram | Twitter | Facebook | RSS Feed