¿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

Audi Q6 e-tron asistente virtual

El Audi Q6 e-tron llega con un asistente virtual nunca antes visto

Parecía que habíamos visto de todo en lo que se refiere a asistentes virtuales, pero el nuevo Audi Q6 e-tron nos trae un compañero de viaje muy diferente al resto. La marca alemana ha dado un paso adelante en la integración de tecnología e inteligencia artificial al presentar a Ai.leene, la versión humana del asistente virtual

nuevos Kindle

Un Kindle en color, ¡por fin!

Amazon acaba de lanzar una una nueva línea de dispositivos Kindle, que incluye el primer Kindle en color y otras novedades más como un rediseñado Kindle Scribe, el Kindle Paperwhite más rápido hasta ahora, y un nuevo Kindle de entrada en un divertido color Matcha. Si quieres renovar tu ebook, se acerca el momento, ya

Novedades Premiere Pro

Si usas Premiere Pro para la edición de vídeo, esto te interesa…

En el evento Adobe MAX 2024, la mayor conferencia creativa del mundo, Adobe ha presentado una serie de avances innovadores que prometen cambiar el panorama de la edición de vídeo. Esto se traduce en mejoras para Premiere Pro, aunque también cabe destacar la disponibilidad en versión beta del Firefly Video Model. Vayamos por partes. Índice

Galaxy Tab S10

Serie Galaxy Tab S10 de Samsung: el estreno de la IA en las tablets

Poco se habla de las tablets, pero siguen siendo una herramienta idónea para muchos. Quizás su auge vuelva a resurgir con la aparición estelar la IA en los sistemas. Samsung hace debutar a esta tecnología con la puesta en escena de la Galaxy Tab S10 Ultra y Galaxy Tab S10+. Esta nueva generación de tablets