Tutorial de iperf3: Comprobar la velocidad de red en Linux y Windows
10 min de lectura - 7 de mayo de 2026

Instala iperf3, realiza pruebas de ancho de banda y ajusta los búferes TCP para obtener resultados precisos en Linux y Windows. Abarca pruebas UDP, bidireccionales y de 10 GbE o más.
Tutorial de iperf3: Medir el rendimiento de la red en Linux y Windows
iperf3 es una herramienta de línea de comandos que permite medir el ancho de banda de la red, la fluctuación (jitter) y la pérdida de paquetes entre dos equipos. Utiliza un modelo cliente-servidor: un equipo está a la escucha, el otro envía tráfico y se obtienen cifras precisas de rendimiento. Esta guía abarca la instalación, las pruebas básicas y avanzadas, y cómo ajustar el sistema para obtener resultados precisos en enlaces de alta velocidad.
Instalación de iperf3
Debian / Ubuntu
sudo apt update
sudo apt install iperf3
Confirma la instalación con iperf3 --version. Instálalo tanto en el servidor como en los equipos cliente.
Fedora / CentOS / Rocky / Alma
En Fedora 22 o superior, CentOS 8 o superior, Rocky o AlmaLinux:
sudo dnf install iperf3
En CentOS 7, utiliza yum en su lugar. Si no se encuentra el paquete, habilita primero el repositorio EPEL:
sudo yum install epel-release
sudo yum install iperf3
Si tu cortafuegos está activo, abre el puerto 5201:
sudo firewall-cmd --add-port=5201/tcp --permanent
sudo firewall-cmd --reload
Windows
Descarga el ejecutable independiente desde iperf.fr o del repositorio de GitHub ar51an/iperf3-win-builds. Descomprímelo en una carpeta como C:\iperf3y, a continuación, comprueba lo siguiente:
cd C:\iperf3
iperf3.exe -v
Para ejecutar iperf3 desde cualquier directorio, añade la carpeta a la variable PATH del sistema a través de Propiedades del sistema > Avanzadas > Variables de entorno. También tendrás que crear una regla de entrada en el cortafuegos que permita el tráfico TCP en el puerto 5201 en el cortafuegos de Windows Defender.
Configuración del servidor
Inicia el servidor con:
iperf3 -s
Por defecto, esto escucha en el puerto TCP 5201. Para ejecutarlo en segundo plano con registro de eventos:
iperf3 -s -D --logfile /var/log/iperf3.log
Comprueba que está en funcionamiento con ss -tulpn | grep 5201.
Si el puerto 5201 está bloqueado en tu red, utiliza -p para elegir un puerto diferente. Para vincularlo a una interfaz específica, utiliza -B:
iperf3 -s -B 192.168.1.10
Para pruebas puntuales, iperf3 -s -1 gestiona una única conexión de cliente y, a continuación, se cierra. En enlaces de gran ancho de banda (40 Gbps o más), ejecuta varias instancias del servidor en diferentes puertos para sortear las limitaciones de la CPU de un solo hilo.
Asegúrate de que tu cortafuegos permita el tráfico en el puerto elegido. En Ubuntu/Debian con UFW:
sudo ufw allow 5201/tcp
sudo ufw allow 5201/udp # if testing UDP
Realización de pruebas de cliente
Prueba básica de TCP
iperf3 -c 192.168.1.10
Esta prueba mide el ancho de banda de subida a través de TCP durante 10 segundos. Amplía la duración con -t:
iperf3 -c 192.168.1.10 -t 30
En enlaces de 10 Gbps o 25 Gbps, un único flujo TCP suele alcanzar un máximo de entre 3 y 5 Gbps debido a las limitaciones de una CPU de un solo núcleo. Utiliza flujos paralelos para saturar el enlace:
iperf3 -c 192.168.1.10 -P 8
Interpretación de los resultados
Cada línea de intervalo muestra la transferencia (datos enviados) y la velocidad de bits (rendimiento). En el caso de TCP, fíjate también en:
- Retr (retransmisiones). Unas cifras elevadas indican pérdida de paquetes o congestión.
- Cwnd (ventana de congestión). Si es baja o se estanca, los límites del tamaño del búfer o de la ventana están restringiendo el rendimiento.
En un enlace limpio de 1 Gbps, cabe esperar unos 940 Mbps tras la sobrecarga del protocolo. La prueba finaliza con líneas de resumen del emisor y del receptor. En una red estable, estos valores deberían coincidir prácticamente.
Para las pruebas UDP (-u indicador), la salida incluye el jitter (variación en la llegada de paquetes) y los datagramas perdidos y totales. Un jitter inferior a 1 ms y una pérdida del 0 % son ideales para el tráfico en tiempo real, como el VoIP.
Opciones útiles
| Opción | Finalidad |
|---|---|
-c <IP> | Conectarse al servidor |
-p <port> | Utilizar un puerto específico (por defecto: 5201) |
-t <sec> | Duración de la prueba en segundos (por defecto: 10) |
-i <sec> | Intervalo de informe |
-P <num> | Flujos paralelos |
-u | Modo UDP |
-b <n>M | Ancho de banda objetivo (UDP; el valor por defecto es 1 Mbps si no se especifica) |
-R | Modo inverso (el servidor envía, el cliente recibe) |
-w <n>K | Ventana TCP / tamaño del búfer del socket |
-J | Salida JSON |
-Z | Zerocopy (reduce la carga de la CPU en conexiones rápidas) |
Pruebas avanzadas
Pruebas bidireccionales
La --bidir opción (iperf3 3.7+) comprueba la subida y la descarga simultáneamente:
iperf3 -c 192.168.1.10 --bidir
Ambas conexiones se originan en el cliente, por lo que esto funciona a través de NAT sin necesidad de abrir puertos adicionales. Si los resultados bidireccionales son mucho más bajos que los de las pruebas unidireccionales, es posible que tu router o módem por cable tenga dificultades para gestionar el tráfico full-duplex.
Modo inverso
La -R opción invierte el flujo de datos, de modo que el servidor envía y el cliente recibe. Esto mide la velocidad de descarga sin intercambiar los roles:
iperf3 -c 192.168.1.10 -t 30 -i 5 -R
Las grandes diferencias entre los resultados de avance y retroceso apuntan a rutas asimétricas, congestión o configuraciones erróneas del búfer.
Pruebas UDP
Las pruebas UDP revelan la fluctuación y la pérdida de paquetes, que el TCP oculta tras las retransmisiones. Establece siempre un ancho de banda objetivo con -b, ya que iperf3 utiliza por defecto 1 Mbps para UDP:
iperf3 -c 192.168.1.10 -u -b 1G
Para simular tráfico de VoIP (100 llamadas, paquetes de 200 bytes):
iperf3 -c 192.168.1.10 -u -b 8M -l 200
Pautas de calidad: una fluctuación inferior a 5 ms es adecuada para VoIP; por encima de 30 ms se producen problemas audibles. Una pérdida de paquetes superior al 0,1 % degrada notablemente los contenidos multimedia en tiempo real.
Ajuste y resolución de problemas
Problemas habituales
¿Solo alcanzas los 100 Mbps en un enlace gigabit? Comprueba la velocidad de tu interfaz física con ethtool eth0. A veces, la negociación automática falla y reduce la velocidad del enlace.
¿El MSS muestra 536 bytes en Ethernet? Probablemente, la detección de MTU de ruta (Path MTU Discovery) esté desactivada. El MSS predeterminado para un MTU de 1.500 bytes es de 1.460 bytes. Utiliza -m durante las pruebas para comprobarlo. Un MSS de 536 bytes desperdicia ancho de banda y añade sobrecarga.
¿La CPU se satura en enlaces rápidos? Utiliza -Z (zerocopy) para reducir la carga de la CPU. Para velocidades de 40 Gbps o más, ejecuta varias instancias del servidor en diferentes puertos y distribúyelas entre los núcleos de la CPU.
¿Resultados inconsistentes? Utiliza -O 3 para omitir los primeros segundos mientras la ventana de congestión de TCP se amplía. Deja 30 segundos entre cada prueba para vaciar los búferes de red.
¿Un flujo único es mucho más lento que la suma de los flujos paralelos? Si un flujo alcanza los 200 Mbps, pero ocho flujos combinados llegan a 1,6 Gbps, la ventana TCP o los búferes del sistema operativo están limitando el flujo único. Ajusta los búferes a continuación.
Ajuste de los búferes TCP
Empieza calculando el producto ancho de banda-retardo (BDP): ancho de banda × RTT. Un enlace de 10 Gbps con un RTT de 50 ms da un BDP de 62,5 MB. Establece tu búfer máximo en al menos el doble del BDP.
Añádelos a /etc/sysctl.d/99-tcp-tuning.conf y aplícalo con sudo sysctl -p:
| Parámetro | Recomendado (1–10 Gbps) |
|---|---|
net.core.rmem_max | 134217728 (128 MB) |
net.core.wmem_max | 134217728 (128 MB) |
net.ipv4.tcp_rmem | 4096 131072 134217728 |
net.ipv4.tcp_wmem | 4096 131072 134217728 |
net.core.default_qdisc | fq |
net.ipv4.tcp_congestion_control | bbr |
Mantén net.ipv4.tcp_moderate_rcvbuf ajustado en 1 para que el núcleo realice el ajuste automático dentro de estos rangos. Activa net.ipv4.tcp_window_scaling (ajustado a 1) para ventanas TCP de más de 64 KB.
También puedes cambiar del algoritmo de congestión predeterminado CUBIC al BBR de Google. En enlaces de alta latencia con cierta pérdida de paquetes, el BBR ofrece sistemáticamente un mayor rendimiento que el CUBIC.
Utiliza el -w opción de iperf3 para probar tamaños de búfer específicos, pero ten en cuenta que estos no pueden superar el valor rmem_max o wmem_max. Empieza con 8 MB para enlaces gigabit y con 512 KB para los de 100 Mbps.
Si estás aprovisionando servidores dedicados y quieres validar el rendimiento de la red, ejecuta pruebas de referencia con iperf3 justo después de la configuración y tras cualquier cambio en la red para detectar a tiempo posibles retrocesos en el rendimiento.
Recomendación de vídeo

Tutorial de iperf3: Comprobar la velocidad de red en Linux y Windows
Instala iperf3, realiza pruebas de ancho de banda y ajusta los búferes TCP para obtener resultados precisos en Linux y Windows. Abarca pruebas UDP, bidireccionales y de 10 GbE o más.
10 min de lectura - 7 de mayo de 2026
Perfiles optimizados para la optimización de la carga de trabajo de los servidores Linux
16 min de lectura - 9 de junio de 2026