Particulares

Grandes Empresas

llámanos

¿Cómo funciona TCP y qué parámetros influyen en la conexión

Cuando un cliente se conecta a un servidor tras solicitar su dirección en un navegador o en un gestor de transferencia de ficheros, se establece una conexión entre ambos equipos.
para hacer un símil visual, podemos asimilar esta conexión a una tubería que une el ordenador con el servidor. En función del tamaño de esa tubería, podremos hacer pasar por ella una mayor cantidad de información. Los parámetros que influyen en el tamaño de esa tubería básicamente son dos:
- la velocidad de la conexión del cliente
- la velocidad de conexión del servidor
típicamente el factor limitante del tamaño de esta tubería ha sido el tamaño de la tubería del cliente, sin embargo hay que tener en cuenta que con accesos de 100 Mbps en el extremo del cliente, los límites del servidor pueden llegar a ser un factor limitante, no tanto por la capacidad de los mismo sino incluso por la configuración que tienen establecida, por ejemplo con limitaciones de conexión por usuario (como Youtube).
como vemos, el tamaño de la tubería es importante ya que nos indica la cantidad de paquetes de información que puede haber en tránsito del servidor al cliente. A la capacidad de esta tubería se le llama normalmente BDP (bandwith delay product).
cuando alcanzamos tamaños de tubería considerables, existe un parámetro del TCP que debemos tener muy en cuenta para poder aprovechar semejantes flujos de información.
nos referimos a la ventana de recepción TCP y vamos a ver cómo afecta a la velocidad.
la ventana de recepción TCP es la cantidad de datos que podemos recibir del servidor sin haber sido confirmados (envío de ACK o acuse de recibo) por parte del cliente; es decir, la cantidad de datos que podemos almacenar para ser procesados, una vez que sean procesados se enviará el acuse de recibo correspondiente al servidor y estaremos listos para recibir otra ventana.
el tamaño máximo de la ventana de recepción TCP es de 64 K, y esta suele ser la configuración de los sistemas operativos por defecto.

veamos con un ejemplo que rendimiento puede alcanzar un equipo con esta configuración:
supongamos una comunicación en la que nosotros somos un cliente con nuestra nueva red de 100 Mbps, y establecemos una conexión a un servidor con interfaz giga, siendo el cuello de botella nosotros mismos, es decir, los 100 Mbps.
suponemos también que el servidor al que nos conectamos está a 50 ms de nosotros (RTT=50, un paquete de información tarda 50 ms en ir y volver desde el servidor hasta nuestro equipo)
    - calculamos el BDP (la capacidad de la tubería que se puede establecer):<br>
    BDP = RTT * cuelloBotella = 0,05 seg * 100,000,000 bits/ 1 seg * 1 byte/ 8 bits = = 625000 bytes = 625 KB (aprox.)<br>
    - con nuestro tamaño de ventana de 64 KB, en cada RTT, es decir, en el tiempo que transcurre desde que nos llega el primer paquete y nosotros le mandamos la confirmación solo podemos recibir 64 KB, si siguen llegando paquetes tendríamos que descartarlos, lo que nos limita a 64 KB cada 50 ms con lo que obtenemos una velocidad máxima de unos 10 Mbps.<br>
    - conclusión: estamos aprovechando solo el 10% de nuestra conexión de 100Mbps. De los 625 KB que puede haber en tránsito en la conexión nosotros solo podemos recibir 64 KB!!.

¿Esta respuesta te ha sido útil?

¡muchas gracias! Lo tendremos en cuenta.

O puedes escribirnos en redes sociales