PROTOCOLO TCP - CAPA DE TRANSPORTE

Comienza Ya. Es Gratis
ó regístrate con tu dirección de correo electrónico
PROTOCOLO TCP - CAPA DE TRANSPORTE por Mind Map: PROTOCOLO TCP - CAPA DE TRANSPORTE

1. Conexión

1.1. Establecimiento de una conexión

1.1.1. 1.La máquina que quiere iniciar la conexión hace una apertura activa enviando al otro extremo un mensaje que tenga el bit SYnN activado. Le informa además del primer número de secuencia que utilizará para enviar sus mensajes.

1.1.2. 2. La máquina receptora (un servidor generalmente) recibe el segmento con el bit SYnN activado y devuelve la correspondiente confirmación. Si desea abrir la conexión, activa el bit SYnN del segmento e informa de su primer número de secuencia. Deja abierta la conexión por su extremo.

1.1.3. 3. La primera máquina recibe el segmento y envía su confirmación. A partir de este momento puede enviar datos al otro extremo. Abre la conexión por su extremo.

1.2. Cierre de una conexión

1.2.1. 1. La máquina que ya no tiene más datos que transferir, envía un segmento con el bit FIN activado y cierra el sentido de envío. Sin embargo, el sentido de recepción de la conexión sigue todavía abierto.

1.2.2. 2. La máquina receptora recibe el segmento con el bit FIN activado y devuelve la correspondiente confirmación. Pero no cierra inmediatamente el otro sentido de la conexión sino que informa a la aplicación de la petición de cierre. Aquí se produce un lapso de tiempo hasta que la aplicación decide cerrar el otro sentido de la conexión.

1.2.3. 3. La primera máquina recibe el segmento ACK.

1.2.4. 4. Cuando la máquina receptora toma la decisión de cerrar el otro sentido de la comunicación, envía un segmento con el bit FIN activado y cierra la conexión.

1.2.5. 5. La primera máquina recibe el segmento FIN y envía el correspondiente ACK. Observemos que aunque haya cerrado su sentido de la conexión sigue devolviendo las confirmaciones.

1.2.6. 6. La máquina receptora recibe el segmento ACK.

2. Fiabilidad

2.1. Cada vez que llega un mensaje se devuelve una confirmación (acknowledgement) para que el emisor sepa que ha llegado correctamente. Si no le llega esta confirmación pasado un cierto tiempo, el emisor reenvía el mensaje.

3. Formato del Segmeto TCP

3.1. Puerto Fuente

3.1.1. (16 bits). Puerto de la máquina origen. Al igual que el puerto destino es necesario para identificar la conexión actual.

3.2. Puerto Destino

3.2.1. (16 bits). Puerto de la máquina destino.

3.3. Nº de secuencia

3.3.1. (32 bits). Indica el número de secuencia del primer byte que trasporta el segmento.

3.4. Nº de acuse de recibo

3.4.1. (32 bits). Indica el número de secuencia del siguiente byte que se espera recibir. Con este campo se indica al otro extremo de la conexión que los bytes anteriores se han recibido correctamente.

3.5. HLEN

3.5.1. (4 bits). Longitud de la cabecera medida en múltiplos de 32 bits (4 bytes). El valor mínimo de este campo es 5, que corresponde a un segmento sin datos (20 bytes).

3.6. Reservado

3.6.1. (6 bits). Bits reservados para un posible uso futuro.

3.7. Bits de código o indicadores

3.7.1. URG

3.7.1.1. El campo Puntero de urgencia contiene información válida.

3.7.2. ACK

3.7.2.1. El campo Número de acuse de recibo contiene información válida, es decir, el segmento actual lleva un ACK. Observemos que un mismo segmento puede transportar los datos de un sentido y las confirmaciones del otro sentido de la comunicación.

3.7.3. PSH

3.7.3.1. La aplicación ha solicitado una operación push (enviar los datos existentes en la memoria temporal sin esperar a completar el segmento).

3.7.4. RST

3.7.4.1. Interrupción de la conexión actual.

3.7.5. SYnN

3.7.5.1. Sincronización de los números de secuencia. Se utiliza al crear una conexión para indicar al otro extremo cual va a ser el primer número de secuencia con el que va a comenzar a transmitir (veremos que no tiene porqué ser el cero).

3.7.6. FIN

3.7.6.1. Indica al otro extremo que la aplicación ya no tiene más datos para enviar. Se utiliza para solicitar el cierre de la conexión actual.

3.8. Ventana

3.8.1. (16 bits). Número de bytes que el emisor del segmento está dispuesto a aceptar por parte del destino.

3.9. Suma de Verificación

3.9.1. (24 bits). Suma de comprobación de errores del segmento actual. Para su cálculo se utiliza una pseudo-cabecera que también incluye las direcciones IP origen y destino.

3.10. Puntero de Urgencia

3.10.1. (8 bits). Se utiliza cuando se están enviando datos urgentes que tienen preferencia sobre todos los demás e indica el siguiente byte del campo Datos que sigue a los datos urgentes. Esto le permite al destino identificar donde terminan los datos urgentes. Nótese que un mismo segmento puede contener tanto datos urgentes (al principio) como normales (después de los urgentes).

3.11. Opciones

3.11.1. (variable). Si está presente únicamente se define una opción: el tamaño máximo de segmento que será aceptado.

3.12. Relleno

3.12.1. Se utiliza para que la longitud de la cabecera sea múltiplo de 32 bits.

3.13. Datos

3.13.1. Información que envía la aplicación.

4. Circuito Virtual

4.1. El flujo de datos entre una aplicación y otra viaja por aquí

5. Protocolos de Transporte

5.1. Diferencia a UDP : La confiabilidad. Se lleva a cabo utilizando sesiones orientadas a la conexión. Este proceso asegura que cada host tenga conocimiento de la comunicación y se prepare.

5.2. Una conversación completa de TCP necesita establecer una sesión entre los hosts de ambas direcciones. Después de establecer una sesión, el destino envía un acuse de recibo al origen por los segmentos que recibe. Estos acuses de recibo forman la base de la confiabilidad dentro de la sesión TCP.

5.3. Cuando el origen recibe un acuse de recibo, reconoce que los datos se han entregado con éxito y puede dejar de rastrearlos. Si el origen no recibe el acuse de recibo dentro de un tiempo predeterminado, retransmite esos datos al destino.

5.4. El host rastrea cada segmento de datos dentro de una sesión e intercambia información sobre los datos que recibe cada host mediante información en el encabezado del TCP.

5.5. Cada conexión involucra streams de comunicación de una vía, o sesiones para establecer y terminar el proceso del TCP entre dispositivos finales. Para establecer la conexión los hosts realizan un protocolo de enlace de tres vías. Los bits de control en el encabezado TCP indican el progreso y estado de la conexión.

5.6. Enlace de Tres Vías

5.6.1. El dispositivo de destino esta presente en la red

5.6.2. El dispositivo de destino tiene un servicio activo y acepta solicitudes en el número de puerto de destino que el cliente de origen intenta utilizar para la sesión

5.6.3. Informa al dispositivo de destino que el cliente de origen intenta establecer una sesión de comunicación en dicho número de puerto

6. Proporciona fiabilidad mediante:

6.1. Control de la Congestión

6.2. Control de Errores

6.3. Control de Flujo

7. En transmisión, TCP fragmenta los datos del nivel aplicación, y les asigna un número de secuencia a cada trozo, antes de enviarlos al nivel IP.

8. La unidad TCP es el segmento

9. Es un protocolo extremo a extremo, orientado a la conexión y bidireccional (full duplex).

10. Se encarga de dotar de fiabilidad la transmisión de datos sobre Internet. Protocolo más complejo e importante de la pila Internet.

11. En recepción, TCP es el responsable de ensamblar los datagramas recibidos, ya que pueden llegar desordenados al utilizar caminos diversos para alcanzar su destino. TCP debe reordenar los segmentos antes de pasarlos a niveles superiores.

12. Utiliza multiplexación mediante puertos, igual que UDP.

13. Número de Secuencia

13.1. Se utilizan números de secuencia distintos para cada sentido de la comunicación. El primer número para cada sentido se acuerda al establecer la comunicación. Cada extremo se inventa un número aleatorio y envía éste como inicio de secuencia.