En octubre de 1986, el rendimiento de internet se desplomó hasta aproximadamente una milésima de su capacidad a medida que crecía la carga, aunque ningún enlace individual estaba roto. Van Jacobson diagnosticó la causa: los emisores transmitían tan rápido como podían y, ante una pérdida, retransmitían a toda velocidad, de modo que la red gastaba su capacidad en retransmitir paquetes que volverían a descartarse.
Su artículo de 1988 propuso el arranque lento y la evitación de congestión. Un emisor comienza con un segmento y duplica su ventana con cada acuse de recibo hasta detectar una pérdida; entonces reduce la ventana a la mitad y aumenta despacio. En lugar de suponer la capacidad del camino, cada emisor la mide mediante la retroalimentación y se adapta.
El diseño es deliberadamente conservador al principio porque la única forma de conocer el ancho de banda disponible es sondearlo, y la única forma segura de sondearlo es con suavidad. El comportamiento resultante —incremento aditivo, decremento multiplicativo— permite que miles de conexiones compartan un mismo camino sin un planificador central.
Sondear la capacidad con suavidad; reducir a la mitad ante una pérdida
La pérdida se trata como una señal, no como un error, de modo que los emisores reaccionan antes de que la red se inunde.
El crecimiento exponencial encuentra la capacidad rápidamente, mientras que reducir a la mitad ante una pérdida mantiene segura la recuperación.
El algoritmo es local: cada emisor se adapta a partir de su propia retroalimentación, de modo que el sistema escala a millones de conexiones.
Resolvió un fallo sistémico con un cambio en el comportamiento de un protocolo, no con hardware nuevo.
Cuando la capacidad del sistema es desconocida y compartida, haz que cada participante sondee de forma conservadora y retroceda ante la retroalimentación; el agregado se autorregula entonces.
El arranque lento y la evitación de congestión se convirtieron en el núcleo del control de congestión de TCP y quedaron codificados en la RFC 2001 en 1997. Variantes posteriores (NewReno, CUBIC, BBR) refinaron las reglas de sondeo, pero el principio de sondear y retroceder sigue rigiendo cómo la mayor parte de internet comparte el ancho de banda.
CONSULTA LAS PRUEBAS
Las fuentes
- Congestion Avoidance and Control ACM SIGCOMM 1988 (via Lawrence Berkeley National Laboratory) · ee.lbl.gov ·
- RFC 2001 — TCP Slow Start, Congestion Avoidance, Fast Retransmit, and Fast Recovery Algorithms IETF / RFC Editor · rfc-editor.org