Inicio > Redes > Funcionamiento del protocolo TCP. (Parte 2)

Funcionamiento del protocolo TCP. (Parte 2)

Jueves, 15 de Enero de 2009 Dejar un comentario Ir a comentarios
  • hacking-TCP1. Transferencia de datos:

Durante la transferencia de datos hay una serie de campos de la cabecera que nos ayudan a asegurar la robustez de la comunicaci贸n.

En la conexi贸n va a haber un par de n煤meros de secuencia que son los que van a servir para ordenar los paquetes, evitar duplicados y asegurar la recepci贸n del envi贸, estos son los campos de secuencia y confirmaci贸n. Se refieren a emisor-secuencia y receptor-confirmaci贸n..

Otro de los campos que usaremos es el checksum que asegura que los datos recibidos no est谩n corruptos. Para calcular este valor se utiliza todo el paquete TCP, cabecera + datos y una pseudo-cabecera IP que incluye la IP fuente y destino, el campo de protocolo de la cabecera IP y la longitud del paquete. Esta pseudo-cabecera nos protege de errores de enrutado.

El checksum es el complemento a uno de 16 bits de la suma en complemento a uno de todas las palabras de 16 bits de la pseudos-cabecera, cabecera y texto del paquete TCP o UDP. Si el paquete tiene un numero impar de octetos el ultimo se rellena con ceros hasta obtener los 16 bits que requiere el checksum.

Parar asegurar el envi贸 completo de datos el TCP utiliza asentamiento junto con temporizadores, as铆 el emisor esta al tanto de los paquetes recibidos por el receptor procediendo a reenviar los que no tiene confirmaci贸n. Esto se lleva a cabo por unos mecanismos:

  • Uso de ventana deslizante
  • Algoritmo de comienzo lento.
  • Algoritmo de control de congesti贸n.
  • Retransmisi贸n r谩pida.
  • Recuperaci贸n r谩pida.

El TCP y la ventana deslizante.

Esto se basa en que el emisor no necesita esperar la entrega de cada uno de los paquetes que envi贸, puede enviar sin recibir el ACK, disparando un timeout para cada uno de ellos. El receptor debe enviar un ACK para el ultimo paquete correcto y as铆 el emisor desplaza la ventana para contiuar con el envi贸.

El principio de ventana se va a aplicar a nivel de byte, es decir que va a estar fijado durante la conexi贸n por el n煤mero de bytes que puedan ser metidos en el buffer de recepci贸n que es quien controla en tama帽o.

Como el campo que fija el tama帽o de ventana tiene un tama帽o de 16 bits el tama帽o m谩ximo de la ventana es de 65536 bytes. Por eso para optimizar la banda ancha se ha definido el factor de escala de ventana dejando un tama帽o de 3 bits dentro de este campo de la cabecera durante la negociaci贸n.

  • 2. Fin de la conexi贸n. Negociaci贸n en 4 pasos:

Cuando una de las partes desea terminar la comunicaci贸n env铆a un paquete con el flag FIN activo y al cual se responder谩 ACK. Puede ser que la parte que envi贸 el FIN este desconectada pero que queden pendientes env铆os todav铆a, por ello el que envi贸 el FIN deja de poder enviar pero sigue recibiendo hasta que la otra parte env铆a un segmento FIN y el ACK.

Categories: Redes Tags: , ,
  1. Sin comentarios aún.
  1. Sin trackbacks aún.