¿Cuál es el algoritmo de Nagle para la comunicación de red TCP?

logo tecnonautas

¿Cuál es el algoritmo de Nagle para la comunicación de red TCP?

VALORACIÓN DEL ARTÍCULO:
5/5


El algoritmo Nagle, que lleva el nombre del ingeniero John Nagle, fue diseñado para reducir la congestión de la red causada por «problemas de paquetes pequeños» con aplicaciones TCP. Las implementaciones de UNIX comenzaron a utilizar el algoritmo de Nagle en la década de 1980, y sigue siendo una característica estándar de TCP en la actualidad.

Cómo funciona el algoritmo de Nagle

El algoritmo de Nagle procesa datos en el lado de envío de aplicaciones TCP mediante un método llamado nagling. Detecta mensajes de pequeño tamaño y los acumula en paquetes TCP más grandes antes de enviar datos a través del cable, evitando así la generación de un número innecesariamente grande de paquetes pequeños. La especificación técnica del algoritmo de Nagle fue publicada en 1984 como RFC 896. Las decisiones sobre la cantidad de datos que deben acumularse y el tiempo de espera entre envíos son fundamentales para su rendimiento general.

Nagling puede utilizar más eficientemente el ancho de banda de una conexión de red a costa de añadir retrasos (latencia). Un ejemplo descrito en el RFC 896 ilustra los beneficios potenciales del ancho de banda y la razón de su creación:

  • Una aplicación TCP que intercepta las pulsaciones de teclas del teclado y desea comunicar cada carácter que se escribe a un receptor, puede generar una serie de mensajes, cada uno de los cuales contiene 1 byte de datos.
  • Antes de que estos mensajes puedan ser enviados a través de la red, cada uno de ellos debe ser empaquetado junto con la información de cabecera TCP según lo requiera TCP/IP. Cada encabezado tiene un tamaño de entre 20 y 60 bytes.
  • Sin molestar, esta aplicación de ejemplo generaría mensajes de red que consisten en un 95% o más de información de cabecera (al menos 20 de 21 bytes) y un 5% o menos de datos reales del teclado del remitente. Usando el algoritmo de Nagle, los mismos datos podrían ser entregados usando muchos menos mensajes y teniendo el 95% del contenido como información de teclado – un ahorro de ancho de banda muy grande.

Las aplicaciones controlan su uso del algoritmo Nagle con la opción de programación de socket TCP_NODELAY. Los sistemas Windows, Linux y Java normalmente habilitan Nagle de forma predeterminada, por lo que las aplicaciones escritas para esos entornos deben especificar TCP_NODELAY cuando deseen desactivar el algoritmo.

Limitaciones

El algoritmo de Nagle sólo se puede usar con TCP. Otros protocolos, incluyendo UDP, no lo soportan.

Las aplicaciones TCP que necesitan una respuesta rápida de red, como las llamadas telefónicas por Internet o los juegos de disparos en primera persona, pueden no funcionar bien cuando Nagle está habilitado. Los retrasos causados mientras el algoritmo tarda más tiempo en ensamblar trozos más pequeños de datos juntos pueden provocar un retardo perceptible visualmente en una pantalla o en un flujo de audio digital. Estas aplicaciones normalmente desactivan Nagle.

Este algoritmo fue desarrollado originalmente en un momento en que las redes informáticas soportaban mucho menos ancho de banda que en la actualidad. El ejemplo descrito anteriormente se basó en las experiencias de John Nagle en Ford Aerospace a principios de la década de 1980, donde las molestas compensaciones en su red de larga distancia lenta y muy cargada tenían sentido. Cada vez hay menos situaciones en las que las aplicaciones de red pueden beneficiarse de su algoritmo en la actualidad.

TAMBIÉN TE INTERESA

botón-de-comprar

8 estrategias para que una tienda online mejore la tasa de conversión de sus clientes

La tasa de conversión se refiere a la métrica utilizada en marketing y comercio electrónico para medir el éxito de una campaña publicitaria, un sitio web o una estrategia de ventas. Representa el porcentaje de visitantes o clientes potenciales que realizan una acción específica deseada, como comprar un producto, suscribirse a un servicio, completar un

precio-OPPO-A58

Nuevo OPPO A58, diseño premium para durar y durar…

OPPO da continuidad a su ya famosa Seria A con un nuevo modelo: el OPPO A58. Por un precio algo superior a los 200 euros y todo lo que ofrece este smartphone, no se le puede pedir a a esta marca que sabe manejarse con soltura tanto en el gama media como la alta e

workstation-HP-Z6-G5-A

Nuevo HP Z6 G5 A: para renderizar a toda potencia

La gestión de los flujos de trabajo en proyectos de alta exigencia requiere de una tecnología avanzada debido a la gran cantidad de información que se utiliza. Para cumplir con las demandas profesionales, HP ha anunciado el próximo lanzamiento en diciembre de la estación de trabajo HP Z6 G5 A, un potente ordenador de escritorio que permite la creación,

nonoki-música-streaming

Más competencia para Spotify: Nonoki

La música en streaming no deja de recibir plataformas para la distribución de contenido. Nonoki es la última en aparecer en escena, sumando más competencia para las conocidísimas Spotify, Apple Music o Amazon Music Unlimited. Además de ellas, no hay que olvidar otras aplicaciones como Soundcloud o Tidal, por citar otros ejemplos destacados. En este