sábado, 16 de agosto de 2008

Fast TCP, acelerando Internet

TCP es uno de los protocolos fundamentales en Internet. Creado en 1973 por Cerf y Kahn, TCP da soporte a muchas de las aplicaciones más populares de Internet como la navegación web, el correo electrónico y la transferencia de ficheros. Algunas estimaciones indican que el 95% de los paquetes que circulan por Internet son paquetes TCP. El protocolo TCP, desarrollado y complejo, ha mantenido sus operaciones básicas sin cambios desde la publicación del RFC 793 en 1981.

La implementación más extendida de este protocolo a día de hoy es TCP Reno. Durante la transmisión de datos, cuando un servidor recibe un paquete TCP responde al emisor mandándole una confirmación (ACK). Cuando el emisor recibe la confirmación manda otro paquete, y así en adelante. En un momento dado, un número indeterminado de paquetes pueden encontrarse en tránsito.

TCP hace uso de un algoritmo denominado AIMD que incrementa lentamente la velocidad cuando los envíos y sus confirmaciones van llegando bien, pero que cuando las cosas se tuercen reacciona frenando bruscamente la tasa de transferencia en un 50% (algo similar a cambiar de quinta a segunda marcha) y sin dar la opción de frenar de forma gradual. Con ficheros pequeños (correos, páginas web) apenas se nota, pero cuando se trata de grandes transferencias de ficheros este comportamiento es muy poco eficiente. Por ejemplo, una reducción del 30% en una línea de 10 megas puede representar la diferencia entre recibir vídeo en alta definición y recibirlo en resoluciones convencionales. Y un frenazo del 50% en una línea OC-3 significa pasar de 155 a 77.5 Mbps.

En 1994 Brakmo, O'Malley y Peterson propusieron otra implementación TCP denominada TCP Vegas que consigue mejoras de rendimiento de entre un 40% y un 70% y reduce las pérdidas hasta el 50% en comparación con TCP Reno, TCP Vegas es compatible con cualquier implementación válida de TCP, y los cambios quedan confinados al lado emisor.

Al igual TCP Vegas, Fast TCP es un algoritmo de control de congestión para TCP, diseñado por investigadores del Cal Tech, compatible con los algoritmos TCP ya existentes, requiriendo sólo modificaciones en el ordenador que envía los datos. El papel del control de la congestión es el de modular la tasa de transferencia de datos en función de la capacidad de la red. Fast TCP intenta superar los puntos flacos del algoritmo AIMD midiendo los tiempos entre el envío y la recepción de las confirmaciones (ACKs), y siguiendo la pista a los paquetes perdidos.

FastSoft ha desarrollado un dispositivo, el E-Series Accelerator, que usa el algoritmo Fast TCP para determinar la forma más rápida de enviar los paquetes sin inundar las redes, restringiendo la pérdida de paquetes a niveles aceptables, y haciendo las transferencias más estables.Esta tecnología sitúa al E-Series Accelerator de FastSoft tanto en la categoría de aceleradores de Internet como en la de elementos de distribución de contenidos por red.

Fuente: GigaOM. Apúntate vía RSS (¿cómo?).

3 comentarios:

Anónimo dijo...

Madre de mi vida ¿por eso funciona tan lento el correo electrónico a veces? Yo creí que era porque los de Telefonica son unos ineptos y a veces tenía que poner el portátil cara al manzano... pero si hay esta cantidad de protocolos, de tcpes, y encima está cisco por medio (que debe estar ¿no? si hay paquetes) pues ya no digo nada. En todo caso me he quedado impresionado por el alarde de erudición. Desde que leí "El espíritu de las obligaciones" (Hazzlitt, of course) me abruma más cuando el sujeto en cuestión no está, precisamente, "obligado" a demostrar nada...

Jhan Carlos Herrera Perez dijo...

me gusta este tema y sobre todo lo que tiene que ver con las redes. muy buen articulo, sigue escribiendo que se te sigue leyendo.

Wan Link Sniper dijo...

Gracias por pasarte, Jhan Carlos. Si te gusta el tema de los protocolos de Internet alternativos a los tradicionales quizás te interese leer este artículo sobre SPDY, una alternativa al HTTP propuesta por Google hace unos meses.