Complete a 3 Question Survey and Earn a re:Post Badge
Help improve AWS Support Official channel in re:Post and share your experience - complete a quick three-question survey to earn a re:Post badge!
¿Cómo puedo comparar el rendimiento de la red entre instancias de Linux de Amazon EC2 en la misma VPC?
Quiero medir el ancho de banda de la red entre instancias de Linux de Amazon Elastic Compute Cloud (Amazon EC2) que están en la misma Amazon Virtual Private Cloud (Amazon VPC).
Resolución
Definición del tipo, el tamaño y la configuración de la instancia que se utilizará para probar el rendimiento de la red
Cuando las instancias están en la misma VPC, varios factores pueden provocar diferencias significativas en el rendimiento de la red entre los diferentes entornos de nube. Se recomienda evaluar periódicamente el rendimiento de la red de su entorno y utilizarlo como referencia para mejorar el rendimiento de las aplicaciones. Las pruebas de rendimiento de la red proporcionan información valiosa para determinar los mejores tipos, tamaños y configuraciones de instancias de EC2 para sus necesidades.
Modificación de las instancias para mejorar el rendimiento de la red
Mantener las instancias cerca unas de otras
Asegúrese de que sus instancias estén cerca. Las instancias que están físicamente más cerca proporcionan un mejor rendimiento. Las instancias que están más alejadas unas de otras pueden provocar latencia en la red. Las instancias de la misma zona de disponibilidad o región de AWS tienen un mejor rendimiento de red que las instancias de EC2 de diferentes zonas de disponibilidad o regiones. En los siguientes escenarios, las instancias se alejan progresivamente unas de otras:
- Instancias en la misma zona de disponibilidad en la misma región
- Instancias en zonas de disponibilidad diferentes en la misma región
- Instancias en regiones diferentes en el mismo continente
- Instancias en regiones diferentes en continentes distintos
Aumento de la MTU de la instancia
Aumente su unidad de transmisión máxima (MTU). Todos los tipos de instancias de EC2 admiten 1500 MTU. Todas las instancias de la generación actual y las instancias C3, G2, I2, M3 y R3 de la generación anterior admiten tramas gigantes. Las tramas gigantes permiten más de 1500 MTU. Sin embargo, las instancias que admiten tramas gigantes se pueden limitar a 1500 MTU en ciertos escenarios.
Aumento del tamaño de la instancia
Aumente el tamaño de la instancia. Los tamaños de instancia más grandes para un tipo de instancia suelen ofrecer un mejor rendimiento de red que los tamaños de instancia más pequeños del mismo tipo.
Uso de la compatibilidad con redes mejoradas para Linux
Use redes mejoradas. Las redes mejoradas proporcionan un mayor rendimiento y una latencia consistentemente más baja entre las instancias. Todas las instancias de la generación actual utilizan los controladores Elastic Network Adapter (ENA) o ENA Express para activar las redes mejoradas de forma predeterminada.
Los tipos de instancia de generaciones anteriores que admiten redes mejoradas pueden requerir configuraciones adicionales para usar redes mejoradas.
Para obtener más información, consulte ¿Cómo puedo activar y configurar las redes mejoradas en mis instancias de EC2?
Colocar las instancias en grupos de ubicación
Inicie instancias interdependientes en un grupo de ubicación para satisfacer las necesidades de su carga de trabajo. La computación de alto rendimiento (HPC) proporciona un ancho de banda de bisección completa y baja latencia, y admite velocidades de red de hasta 100 GB, según el tipo de instancia.
Uso de un mecanismo de crédito de E/S de red para asignar el ancho de banda de la red
Para comprobar si el tipo de instancia puede usar un crédito de red de E/S para superar el ancho de banda básico, consulte Especificaciones de red.
Configuración de las instancias de prueba
Siga estos pasos:
- Inicie dos instancias de Linux de prueba.
- Compruebe que las instancias admitan redes mejoradas para Linux y que estén en la misma VPC.
- (Opcional) Si va a realizar pruebas de red entre instancias que no admiten tramas gigantes, configure la MTU de red en su instancia.
- Use SSH para conectarse a las instancias para comprobar si puede acceder a ellas.
Instalación de la herramienta de comparación de red iperf3 en ambas instancias
En algunas distribuciones, como Amazon Linux, iperf3 forma parte del repositorio Extra Packages for Enterprise Linux (EPEL). Para activar el repositorio EPEL, consulte ¿Cómo puedo activar el repositorio EPEL para mi instancia de Amazon EC2 que ejecuta CentOS, RHEL o Amazon Linux?
Para obtener más información sobre la herramienta iperf3, consulte iperf2/iperf3 en el sitio web de ESnet.
Utilice SSH para conectarse a sus instancias de Linux. A continuación, ejecute uno de los siguientes comandos en su sistema operativo (SO) para instalar iperf3.
Red Hat Enterprise Linux (RHEL) 9:
$ sudo dnf -y install iperf3
Debian o Ubuntu:
$ sudo apt-get install -y iperf3
CentOS 6/7:
$ sudo yum -y install epel-release && yum -y install iperf3
Amazon Linux 2023:
$ sudo yum -y install iperf3
Comprobación del rendimiento de la red TCP entre las instancias
De forma predeterminada, iperf3 se comunica a través del puerto 5001 cuando prueba el rendimiento de TCP. Sin embargo, puede usar el modificador -p para cambiar el puerto. Asegúrese de configurar los grupos de seguridad para permitir la comunicación a través del puerto que utiliza iperf3.
Para configurar la primera instancia como servidor para escuchar en un puerto TCP específico, ejecute el siguiente comando:
$ sudo iperf3 -s -p 5001
Nota: Si decide cambiar el puerto, sustituya 5001 por su número de puerto.
Configure la segunda instancia como cliente y, a continuación, ejecute una prueba en el servidor con los parámetros pertinentes. Por ejemplo, el siguiente comando inicia una prueba de TCP en la instancia de servidor especificada con 40 conexiones paralelas:
$ sudo iperf3 -c 172.31.30.41 --parallel 40 -i 1 -t 2
El resultado muestra el intervalo y los datos que se transfieren en cada flujo de cliente y el ancho de banda que utiliza cada flujo de cliente. El siguiente resultado de iperf3 muestra los resultados de las pruebas de dos instancias de EC2 de Linux c5n.18xlarge iniciadas en un grupo con ubicación en clúster. El ancho de banda total transmitido en todas las conexiones es de 97,6 Gbps.
Resultado de ejemplo:
------------------------------------------------------------------------------------Client connecting to 172.31.30.41, TCP port 5001 TCP window size: 975 KByte (default) ------------------------------------------------------------------------------------ [ 8] local 172.31.20.27 port 49498 connected with 172.31.30.41 port 5001 [ 38] local 172.31.20.27 port 49560 connected with 172.31.30.41 port 5001 [ 33] local 172.31.20.27 port 49548 connected with 172.31.30.41 port 5001 [ 40] local 172.31.20.27 port 49558 connected with 172.31.30.41 port 5001 [ 36] local 172.31.20.27 port 49554 connected with 172.31.30.41 port 5001 [ 39] local 172.31.20.27 port 49562 connected with 172.31.30.41 port 5001 ... [SUM] 0.0- 2.0 sec 22.8 GBytes 97.6 Gbits/sec
Comprobación del rendimiento de la red UDP entre las instancias
De forma predeterminada, iperf3 se comunica a través del puerto 5001 cuando prueba el rendimiento de UDP. Sin embargo, puede usar el modificador -p para cambiar el puerto. Asegúrese de configurar los grupos de seguridad para permitir la comunicación a través del puerto que utiliza iperf3.
Nota: El valor predeterminado para UDP es de 1 Mbps, a menos que especifique un ancho de banda diferente.
Para configurar la primera instancia como servidor para escuchar en un puerto UDP específico, ejecute el siguiente comando:
$ sudo iperf3 -s -u -p 5001
Nota: Si decide cambiar el puerto, sustituya 5001 por su número de puerto.
Configure una segunda instancia como cliente y, a continuación, ejecute una prueba en el servidor con los parámetros deseados. El siguiente ejemplo ejecuta una prueba de UDP en la instancia de servidor con el parámetro -b establecido en 5g. El parámetro -b cambia el ancho de banda a 5 Gbps respecto al valor predeterminado de UDP de 1 Mbps. 5 Gbps es el rendimiento de red máximo que puede proporcionar una instancia c5n.18xlarge para un único flujo de tráfico dentro de una VPC:
$ sudo iperf3 -c 172.31.1.152 -u -b 5g
Nota: UDP no tiene conexión y carece de los algoritmos de control de congestión de TCP. Cuando hace pruebas con iperf3, el ancho de banda que obtiene de UDP puede ser inferior al ancho de banda que obtiene de TCP.
Resultado de ejemplo:
$ sudo iperf3 -c 172.31.30.41 -u -b 5g ------------------------------------------------------------------------------------ Client connecting to 172.31.30.41, UDP port 5001 Sending 1470 byte datagrams, IPG target: 2.35 us (kalman adjust) UDP buffer size: 208 KByte (default) ------------------------------------------------------------------------------------ [ 3] local 172.31.20.27 port 39022 connected with 172.31.30.41 port 5001 [ ID] Interval Transfer Bandwidth [ 3] 0.0-10.0 sec 5.82 GBytes 5.00 Gbits/sec [ 3] Sent 4251700 datagrams [ 3] Server Report: [ 3] 0.0-10.0 sec 5.82 GBytes 5.00 Gbits/sec 0.003 ms 1911/4251700 (0.045%) [ 3] 0.00-10.00 sec 1 datagrams received out-of-order
El resultado del ejemplo anterior muestra los siguientes valores:
- Intervalo (tiempo)
- Cantidad de datos transferidos
- Ancho de banda alcanzado
- Fluctuación (la desviación en el tiempo para la llegada periódica de los datagramas)
- Pérdida y total de datagramas de UDP
Información relacionada
Disk Testing using iperf3 (Pruebas en el disco con iperf3) en el sitio web de ESnet
Network tuning (Ajuste de red) en el sitio web de ESnet
Throughput Tool Comparison (Comparación de herramientas de rendimiento) en el sitio web de ESnet
Iperf2 en el sitio web de SourceForge
iperf3 FAQ (Preguntas frecuentes sobre iperf3) en el sitio web de ESnet
Vídeos relacionados


Contenido relevante
- preguntada hace 2 meseslg...
- preguntada hace 4 meseslg...
- preguntada hace un meslg...
- preguntada hace 2 meseslg...
- preguntada hace 2 meseslg...
- OFICIAL DE AWSActualizada hace 2 años