Redes

Cómo el kit de desarrollo de plano de datos de código abierto de Intel permite redes Linux de alto rendimiento

Como sistema operativo de propósito general, Linux tiene un rendimiento de red efectivo limitado, pero el último proyecto de código abierto de Intel puede ayudar a lograr un rendimiento de red impresionante.

datacenter

Linux es un sistema operativo de propósito general. Este comentario suena como una declaración obvia, pero a veces es fácil de olvidar. Debido a que es un sistema operativo de propósito general, se utiliza para varios casos de uso.

El sistema operativo se utiliza en dispositivos de Internet de las cosas (IoT), teléfonos inteligentes, tabletas, servidores y equipos de centros de datos. Sin embargo, a veces es un recordatorio de que usar Linux para un caso de uso específico, como redes o incluso dispositivos con capacidad de red, requiere cierta personalización del kernel o la aceptación del hecho de que el rendimiento puede ser desigual o limitado.Código abierto patrocinado por Intel Kit de desarrollo del plano de datos El proyecto (DPDK) espera ampliar la utilidad de Linux para incluir dispositivos de red de alto rendimiento.

Redes de alto rendimiento de Linux

La implementación de redes de alto rendimiento en el kernel de Linux es un desafío. Una simplificación peligrosa es decir que las redes de Linux están optimizadas para la informática de propósito general.de acuerdo a Esta inmersión profunda Viniendo de CloudFlare, un concepto común es que Linux procesa hasta 50K paquetes por segundo (pps). Los cálculos de pps son ligeramente diferentes de los bits por segundo (bps). Si bien una interfaz en un servidor puede tener una velocidad de 10 Gbps, no necesariamente se correlaciona con la cantidad de datos procesados.

LEER  Cómo los ataques de ransomware se dirigen a industrias específicas

Mirar: Intel presenta la fotónica de silicio (ZDNet)

En el artículo de CloudFlare, los experimentos utilizan un tamaño mínimo de trama de Ethernet de 72 bytes o 576 bits. Los autores pudieron lograr un rendimiento máximo de 1,4 Mpps, o alrededor de 8 Gbps en un enlace de 10 Gbps. El desafío es principalmente la eficiencia del procesador. Esta prueba se esfuerza por conectar subprocesos a núcleos de procesadores específicos para eliminar los ciclos desperdiciados. Según el artículo, un objetivo realista con el proceso descrito es lograr un rendimiento sostenido de 1 Mpps. 1 Mpps no está cerca de consumir un enlace de 10 Gbps. Entonces, ¿por qué vemos múltiples enlaces de 10 Gbps, o incluso enlaces de 40 Gbps, en servidores x86?

omitir el núcleo

Para utilizar los procesadores de manera más eficiente en Linux, los desarrolladores pasan por alto el kernel de Linux y dedican núcleos de CPU al procesamiento de la red. El ejemplo de CloudFlare utiliza herramientas del kernel de Linux para anclar procesos a un conjunto de kernel y colas de memoria administradas activamente. El envío de paquetes sin procesar entre dos sistemas requiere cierta disciplina de programación. Agregue cualquier procesamiento de paquetes, como IPS, y el rendimiento debería disminuir significativamente.

DPDK omite el kernel de Linux y administra directamente la asignación de NIC y CPU. En un solo procesador Intel, se puede lograr un rendimiento de hasta 80 Mpps o alrededor de 46 Gbps usando los marcos de Ethernet más pequeños. Quiero asegurarme de advertir el comentario anterior y señalar que es un procesador Intel. DPDK es un proyecto de código abierto que actualmente tiene dos distribuciones para Intel y ARM.

Caso de uso empresarial

DPDK es un kit de desarrollo. Los espectadores son creadores de software y dispositivos web. Sin embargo, estos dispositivos llegaron a la empresa. Un caso de uso interesante es el hipervisor y la virtualización de funciones de red (NFV). Es fácil imaginar un firewall basado en NFV o IPS que aproveche DPDK para lograr hasta 10 Mpps de procesamiento de instancia única sin usar hardware dedicado.

DPDK es otro impulsor del reemplazo de hardware especializado basado en software en el centro de datos. Los servidores X86 y ARM continúan reemplazando el hardware especializado para los casos de uso de redes y almacenamiento tradicionales.Para una comprensión más profunda de DPDK, recomiendo esta presentación Del evento Tech Field Day.

LEER  Cómo configurar un servidor SMTP en una instancia autohospedada de Passbolt

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *

Botón volver arriba