El Uso de Aceleración Criptográfica Mejoró el Desempeño de las Instancias Optimizadas para Computación y para Memoria
Cifrar conexiones de red mediante SSL/TLS ayuda a mantener los datos de los consumidores seguros a medida que envían datos personales a través de internet. Las organizaciones usan NGINX, una aplicación de servidor web de código abierto, como proxy inverso, balanceador de carga o proxy de correo. Sea que su organización ejecute NGINX en instancias AWS optimizadas para computación o para memoria, la elección de procesadores escalables Intel® Xeon® de 3ᵃ Generación con aceleración criptográfica puede mejorar el desempeño.
Los procesadores escalables Intel® Xeon® de 3ᵃ Generación ofrecen Intel® QuickAssist Technology (Intel® QAT) con aceleración criptográfica. Intel® QAT y el motor Intel® QAT (motor OpenSSL) aceleran el hardware y software, según instrucciones vectorizadas, para acelerar las operaciones criptográficas y permitir que más usuarios se conecten a la vez. Probamos el desempeño de NGINX con y sin aceleración criptográfica en dos tipos de instancias: optimizadas para computación (C6i) y optimizadas para memoria (R6i). Descubrimos que para ambos tipos de instancias la adición de aceleración criptográfica con Intel® QAT resultó en más conexiones por segundo para cargas de trabajo de NGINX.
Mejora del Desempeño de NGINX en Instancias Optimizadas para Computación
En instancias C6i optimizadas para computación, el uso de aceleración criptográfica Intel® QAT junto con procesadores escalables Intel® Xeon® de 3ᵃ Generación aumentó en gran manera el desempeño de NGINX con respecto a instancias sin aceleración criptográfica (ver Figura 1). Habilitar la aceleración criptográfica en 64 vCPUs aumentó las conexiones por segundo en hasta 3,05 veces frente a la misma instancia sin aceleración criptográfica.
Mejora del Desempeño de NGINX en Instancias Optimizadas para Memoria
Los resultados fueron similares para instancias R6i optimizadas para memoria. Como se muestra en la Figura 2, el uso de aceleración criptográfica en instancias R6i con procesadores escalables Intel® Xeon® de 3ᵃ Generación mejoró las conexiones NGINX por segundo en hasta 2,93 veces.
Conclusión
En las instancias AWS optimizadas para computación y para memoria que probamos, el uso de aceleración criptográfica Intel® QAT mejoró el desempeño de NGINX, lo que incrementó el número de conexiones por segundo que el servidor web pudo manejar en hasta 3,05 veces en comparación con las mismas instancias sin aceleración criptográfica. Las organizaciones que buscan aumentar las tasas de conexión NGINX pueden hacerlo mediante la selección de instancias con procesadores escalables Intel® Xeon® de 3ᵃ Generación con aceleración criptográfica.
Más Información
Para comenzar a ejecutar sus cargas de trabajo de NGINX en instancias AWS C6i optimizadas para computación, con procesadores escalables Intel® Xeon® de 3ᵃ Generación, visite https://aws.amazon.com/ec2/instance-types/c6i/. Para seleccionar las instancias AWS R6i optimizadas para memoria, con procesadores escalables Intel® Xeon® de 3ᵃ Generación, visite https://aws.amazon.com/ec2/instance-types/r6i/.
Todas las pruebas de Intel en AWS/us-west-2b realizadas de 03/2022 a 04/2022. Todas las pruebas: Ubuntu 20.04.4 LTS 5.13.0-1019-aws, v1.24.2.intel-13-g5ae1948f, gcc (Ubuntu 9.4.0-1ubuntu1~20.04.1) 9.4.0, ldd (Ubuntu GLIBC 2.31-0ubuntu9.7) 2.31, Servidor cliente: c6i.32xlarge, Número de clientes:2, Iteraciones ejecutadas:3, Cifrado: AES128-GCM-SHA256. Todas las configuraciones de QAT: modo Nginx asíncrono con QATEngine. Detalles instancia MV: c6i.xlarge: CPUs ICX x86_64, 4 vCPUs, 8 GB RAM, 4 procesos de trabajo; r6i.xlarge: CPUs ICX x86_64, 4 vCPUs, 32 GB RAM, 4 procesos de trabajo; c6i.2xlarge: CPUs ICX x86_64, 8 vCPUs, 16 GB RAM, 8 procesos de trabajo; r6i.2xlarge: CPUs ICX x86_64, 8 vCPUs, 64 GB RAM, 8 procesos de trabajo; c6i.4xlarge: CPUs ICX x86_64, 16 vCPUs, 32 GB RAM, 16 procesos de trabajo; r6i.4xlarge: CPUs ICX x86_64, 16 vCPUs, 128 GB RAM, 16 procesos de trabajo; c6i.8xlarge: CPUs ICX x86_64, 32 vCPUs, 64 GB RAM, 32 procesos de trabajo; r6i.8xlarge: CPUs ICX x86_64, 32 vCPUs, 256 GB RAM, 32 procesos de trabajo; c6i.16xlarge: CPUs ICX x86_64, 64 vCPUs, 128 GB RAM, 64 procesos de trabajo; r6i.16xlarge: CPUs ICX x86_64, 64 vCPUs, 512 GB RAM, 64 procesos de trabajo.