Esta es una GRAN pregunta, y realmente me sorprendió la primera vez que la aprendí. Como joven punk, tuve la extraña fortuna de asistir a una clase de colegio comunitario (!) Impartida por Michael J. Karels sobre los nuevos algoritmos de control de congestión TCP de Van Jacobson. Los algoritmos no son realmente parte de una capa, sino solo un conjunto de comportamientos prescritos que los puntos finales TCP deben seguir al transmitir datos.
El concepto clave del control de congestión TCP: una vez que detecta que un enlace en su ruta está saturado, no tiene sentido bombear muchos datos hacia él, ya que está saturado y no puede transportar más datos.
Un paquete perdido indica que el enlace está saturado porque algunas colas en algún lugar de la ruta se han desbordado. En este punto, desea retransmitir con solo un mínimo de datos para ver si el enlace TODAVÍA está saturado después de una pérdida de paquetes. No tiene sentido enviar una gran cantidad de datos si simplemente se desecharán, ESPECIALMENTE si ese exceso de datos continúa perpetuando el evento de congestión. Esto fue lo que sucedió en los días previos al inicio lento: los puntos finales seguirían intentando transmitir datos masivos, lo que provocaría un colapso congestivo.
- ¿Qué protocolo es mejor para una transmisión de video en vivo desde un servidor a un Android: RTSP, RTMP, HTTP u otra cosa?
- En SSL y TLS, ¿por qué hay un Protocolo de especificaciones de cifrado de cambio separado en lugar de incluir un mensaje change_cipher_spec en el Protocolo de protocolo de enlace?
- En TCP, si tenemos buffers de envío y recepción, ¿por qué necesitamos bytes y segmentos?
- ¿Qué es TE en MPLS?
- ¿El protocolo DASH7 está disponible a nivel comercial, y si no, por qué no?
Para simplificar en exceso, el inicio lento significa que usted envía una pequeña cantidad de datos después de un evento de pérdida de paquetes (congestión) para ver si pasa. Si no pasa, disminuirá la velocidad aún más (cortando la ventana a la mitad). Sin embargo, si pasa, sigue acelerando exponencialmente, duplicando el tamaño de la ventana hasta que vuelva a encontrar congestión.
Layman: Es como tropezar y caer. Cuando retrocede, comienza lentamente para asegurarse de que todo esté bien antes de volver a aumentar la velocidad en lugar de simplemente levantarse e ir a toda velocidad nuevamente sin evaluar por qué cayó en primer lugar.
La ventana de congestión solo representa qué tan ancho está abierto el grifo para enviar datos.
Si usted es un pensador más visual, esto puede ayudar: Control de flujo.