11.07.2015 Views

Redes de computadores - Universitat Oberta de Catalunya

Redes de computadores - Universitat Oberta de Catalunya

Redes de computadores - Universitat Oberta de Catalunya

SHOW MORE
SHOW LESS

Create successful ePaper yourself

Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.

ª FUOC • XP04/90786/00020Software libreeste tipo, la eficiencia es muy baja. Una solución a esta baja eficiencia<strong>de</strong> transmisión es aplicar el algoritmo <strong>de</strong> Nagle.Utilizando el algoritmo <strong>de</strong> Nagle, una conexión TCP sólo pue<strong>de</strong>tener un segmento <strong>de</strong> tamaño pequeño (pocos bytes) sin que sehaya reconocido; es <strong>de</strong>cir, sólo pue<strong>de</strong> haber un único segmento<strong>de</strong> tamaño pequeño viajando por la red (en vuelo). El resto <strong>de</strong> lossegmentos <strong>de</strong> tamaño pequeño no se pue<strong>de</strong>n transmitir hasta queel ACK <strong>de</strong>l segmento pequeño que esté viajando por la red hayallegado.Así, los segmentos que están esperando para ser transmitidos sealmacenan hasta que se recibe el ACK <strong>de</strong>l segmento en vuelo.Cuando este último llega, la conexión TCP pue<strong>de</strong> enviar un segmentoque contenga todos los datos almacenados hasta este momento,formando un segmento mayor.El algoritmo <strong>de</strong> Nagle funciona cuando los retardos en la red songran<strong>de</strong>s; es <strong>de</strong>cir, si la conexión cruza una WAN. En caso <strong>de</strong> quela conexión sea local, en una LAN, es difícil que se aplique estealgoritmo a causa <strong>de</strong> la alta velocidad <strong>de</strong> la red.NotaEn la librería <strong>de</strong> sockets API,el indicador que <strong>de</strong>sinhibeel algoritmo <strong>de</strong> Nagle es elTCP_NODELAY.En ocasiones, es interesante <strong>de</strong>sinhibir el algoritmo <strong>de</strong> Nagle,puesto que la aplicación no pue<strong>de</strong> esperar. El movimiento <strong>de</strong>l ratónen X Windows System provoca segmentos pequeños. Estos movimientos<strong>de</strong>l ratón <strong>de</strong>ben entregarse sin retardos para que elusuario interactivo no lo note. Las librerías <strong>de</strong> sockets <strong>de</strong>ben permitir,activando indicadores, <strong>de</strong>sinhibir el algoritmo <strong>de</strong> Nagle.ANOTACIONES14.6.2. Transmisión <strong>de</strong> datos <strong>de</strong> gran volumen. Control<strong>de</strong> flujo por ventana <strong>de</strong>slizanteEn las comunicaciones en que se envía una ingente cantidad <strong>de</strong> datos<strong>de</strong> gran volumen (correo electrónico, transferencias FTP, etc.),como las memorias intermedias <strong>de</strong> recepción se pue<strong>de</strong>n llenar, esnecesario un protocolo <strong>de</strong> ventana <strong>de</strong>slizante (sliding window) paracontrolar el flujo <strong>de</strong> datos, con la diferencia, respecto <strong>de</strong> los protocolos<strong>de</strong>l nivel <strong>de</strong> enlace, <strong>de</strong> que en el TCP la ventana <strong>de</strong> transmisiónes variable.154

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!