¿Qué es el Bandwidth-Delay Product (BDP)?
El Bandwidth-Delay Product (BDP) es una métrica fundamental en redes de datos que representa la cantidad máxima de datos que puede haber en tránsito en un enlace de red en un momento dado. Se calcula multiplicando la capacidad del enlace (en bits por segundo) por el tiempo de ida y vuelta o Round-Trip Time (RTT, en segundos). Este concepto fue originalmente propuesto por Villamizar y Song en 1994 como una guía para dimensionar buffers de enrutadores en conjunto con el algoritmo de congestión Random Early Detection (RED).
El BDP es crucial para el rendimiento de protocolos como TCP, ya que determina el tamaño mínimo de ventana de congestión necesario para mantener el enlace completamente ocupado. Si la ventana de envío es menor que el BDP, el enlace estará infrautilizado porque el emisor pasará tiempo esperando confirmaciones. Las redes con un BDP grande se conocen como Long Fat Networks (LFN), definidas en RFC 1072 como aquellas cuyo BDP supera significativamente los 10⁵ bits. Ejemplos típicos incluyen conexiones satelitales geoestacionarias (alto RTT) y enlaces WAN de alta velocidad como los de redes de investigación educativa internacional.
Casos de uso comunes
- Ajuste de TCP tuning: El BDP determina el tamaño óptimo de la ventana TCP (RWIN) para maximizar el rendimiento. Sin un ajuste correcto, las conexiones de alta velocidad pueden desperdiciar hasta el 90% del ancho de banda disponible.
- Dimensionamiento de buffers en redes: Los ingenieros de redes usan el BDP para calcular el tamaño adecuado de los buffers en switches y enrutadores, evitando tanto la pérdida de paquetes como el bufferbloat.
- Optimización de conexiones satelitales: En enlaces satelitales geoestacionarios con RTT de ~600 ms, el BDP ayuda a configurar proxies de aceleración TCP y ventanas de recepción que eviten la infrautilización del enlace.
Cómo usar el BDP para diagnosticar problemas de rendimiento TCP
El Bandwidth-Delay Product no solo sirve para configurar ventanas TCP — también es una herramienta de diagnóstico. Cuando el rendimiento real de una conexión es significativamente menor que el esperado, el BDP ayuda a identificar la causa raíz.
Síntoma 1: Rendimiento bajo pero sin pérdida de paquetes. Si el throughput es menor que el ancho de banda disponible y no hay pérdida de paquetes, probablemente la ventana TCP es demasiado pequeña para el BDP. Solución: aumentar net.core.rmem_max y la ventana de recepción automática (net.ipv4.tcp_rmem).
Síntoma 2: Rendimiento errático con pérdida de paquetes. Si ves caídas repentinas de throughput acompañadas de pérdidas, el buffer del enrutador puede ser insuficiente. El BDP te indica el tamaño mínimo de buffer necesario. Solución: ajusta los buffers de los switches/routers (evita bufferbloat ajustando CoDel o FQ-CoDel).
Síntoma 3: Alto RTT con bajo rendimiento sostenido. En enlaces satelitales o WAN transcontinentales, el BDP puede ser enorme (ej: 100 Mbps × 600 ms = 60 Mbits). Las ventanas TCP estándar no son suficientes. Solución: habilita TCP window scaling (net.ipv4.tcp_window_scaling=1) y usa BBR como algoritmo de congestión.
Herramientas relacionadas
Calculadora de Subredes
Calcula direcciones de red, rangos de IPs, máscaras de subred y broadcast
Referencia de Puertos
Tabla interactiva de puertos TCP/UDP con búsqueda, filtros y generador de puerto aleatorio
Generador de Comandos Nmap
Genera comandos nmap personalizados para escaneos de red
Buscador de OUI
Identifica el fabricante de una dirección MAC