TCP
2. TCP Transmission Control Protocol
2.7. Silly window avoidance y Nagle
Silly window
Problema (1982)
Si el receptor publica pequeños incrementos en la ventana el transmisor pierde tiempo enviando segmentos pequeños.
Solución
El receptor no debe publicar pequeños incrementos de la ventana.
Incrementar la ventana en min (MSS,RecvBuffer/2).
En LAN:
En WAN:
El síndrome de ventana tonta (SWS) es un problema en las redes informáticas causado por un control de flujo TCP mal implementado.
Puede surgir un problema grave en la operación de ventana deslizante cuando el programa de aplicación de envío crea datos lentamente, el programa de aplicación de recepción consume datos lentamente, o ambos.
Si un servidor con este problema no puede procesar todos los datos entrantes, solicita que sus clientes reduzcan la cantidad de datos que envían a la vez (la configuración de la ventana en un paquete TCP).
Si el servidor sigue sin poder procesar todos los datos entrantes, la ventana se vuelve cada vez más pequeña, a veces hasta el punto de que los datos transmitidos son más pequeños que el encabezado del paquete, lo que hace que la transmisión de datos sea extremadamente ineficiente. El nombre de este problema se debe a que el tamaño de la ventana se reduce a un valor "tonto".
Dado que hay una cierta cantidad de sobrecarga asociada con el procesamiento de cada paquete, el aumento en el número de paquetes significa una mayor sobrecarga para procesar una cantidad de datos decreciente. El resultado final es una caída de la conexión.
Un método heurístico en el que el TCP debe permitir que la aplicación de envío realice llamadas de "escritura" y recopile los datos transferidos en cada llamada antes de transmitirlos a un segmento grande. El TCP de envío retrasa el envío de segmentos pequeños hasta que pueda acumular cantidades razonables de datos, lo que se conoce como agrupamiento.
Algoritmo de Nagle
- Aplicaciones de Windows.
- Movimientos del mouse.
- Teclas de función: F1...