Proceso de Comunicación TCP

Proceso de comunicación TCP
5

Resumen

Ya conoces los fundamentos de TCP. Comprender la función de los números de puerto lo ayudará a comprender los detalles del proceso de comunicación TCP. En este tema, también aprenderás sobre el protocolo de enlace de tres vías TCP y los procesos de finalización de sesión.

Cada proceso de aplicación que se ejecuta en un servidor está configurado para usar un número de puerto. El número de puerto se asigna automáticamente o se configura manualmente por un administrador del sistema.

¡Bienvenido!: Este tema forma parte del Capítulo 14 del curso de Cisco CCNA 1, para un mejor seguimiento del curso puede ir a la sección CCNA 1 para guiarte del índice.

1. Procesos del servidor TCP

Un servidor individual no puede tener dos servicios asignados al mismo número de puerto dentro de los mismos servicios de capa de transporte. Por ejemplo, un host que ejecuta una aplicación de servidor web y una aplicación de transferencia de archivos no puede tener ambos configurados para usar el mismo puerto, como el puerto TCP 80.

Una aplicación de servidor activa asignada a un puerto específico se considera abierta, lo que significa que la capa de transporte acepta y procesa segmentos dirigidos a ese puerto. Se acepta cualquier solicitud de cliente entrante dirigida al socket correcto, y los datos se pasan a la aplicación del servidor. Puede haber muchos puertos abiertos simultáneamente en un servidor, uno para cada aplicación de servidor activa.


El cliente 1 solicita servicios web y el cliente 2 solicita servicio de correo electrónico utilizando puertos conocidos (es decir, servicios web es puerto 80, servicios de correo electrónico es puerto 25).

Clientes envían solicitudes TCP

Clientes envían solicitudes TCP

Las solicitudes generan dinámicamente un número de puerto de origen. En este caso, el Cliente 1 está utilizando el puerto de origen 49152 y el Cliente 2 está utilizando el puerto de origen 51152.

Solicitar puertos de destino

Solicitar puertos de destino

Cuando el servidor responde a las solicitudes del cliente, invierte el destino y los puertos de origen de la solicitud inicial.

Solicitar puertos de origen

Solicitar puertos de origen

Observa que la respuesta del servidor a la solicitud web ahora tiene el puerto de destino 49152 y la respuesta de correo electrónico ahora tiene el puerto de destino 51152.

Respuesta Puertos de destino

Respuesta Puertos de destino

El puerto de origen en la respuesta del servidor es el puerto de destino original en las solicitudes iniciales.

Respuesta Puertos de origen

Respuesta Puertos de origen

2. Establecimiento de conexión TCP

En algunas culturas, cuando dos personas se encuentran, a menudo se saludan dándose la mano. Ambas partes entienden el acto de estrechar la mano como una señal de saludo amistoso. Las conexiones en la red son similares. En las conexiones TCP, el cliente host establece la conexión con el servidor mediante el proceso de enlace de tres vías (three-way handshake).

El cliente que inicia solicita una sesión de comunicación de cliente a servidor con el servidor.

Paso 1 SYN

Paso 1 SYN

El servidor reconoce la sesión de comunicación de cliente a servidor y solicita una sesión de comunicación de servidor a cliente.

Paso 2 ACK y SYN

Paso 2 ACK y SYN

El cliente que inicia reconoce la sesión de comunicación de servidor a cliente.

Paso 3 ACK

Paso 3 ACK

El protocolo de enlace de tres vías valida que el host de destino esté disponible para comunicarse. En este ejemplo, el host A ha validado que el host B está disponible.

3. Terminación de sesión

Para cerrar una conexión, el indicador de control Finish (FIN) debe establecerse en el encabezado del segmento. Para finalizar cada sesión TCP unidireccional, se utiliza un protocolo de enlace bidireccional, que consta de un segmento FIN y un segmento de acuse de recibo (ACK). Por lo tanto, para finalizar una sola conversación compatible con TCP, se necesitan cuatro intercambios para finalizar ambas sesiones. Tanto el cliente como el servidor pueden iniciar la terminación.

En el ejemplo, los términos cliente y servidor se utilizan como referencia por simplicidad, pero dos hosts que tengan una sesión abierta pueden iniciar el proceso de finalización.

Haga clic en cada botón para obtener más información sobre los pasos de finalización de la sesión.

Cuando el cliente no tiene más datos para enviar en la secuencia, envía un segmento con el indicador FIN establecido.

Paso 1 FIN

Paso 1 FIN

El servidor envía un ACK para acusar recibo del FIN para finalizar la sesión del cliente al servidor.

Paso 2 ACK

Paso 2 ACK

El servidor envía un FIN al cliente para finalizar la sesión de servidor a cliente.

Paso 3 FIN

Paso 3 FIN

El cliente responde con un ACK para reconocer el FIN del servidor.

Paso 4 ACK

Paso 4 ACK

Cuando todos los segmentos han sido reconocidos, la sesión se cierra.

4. Análisis del enlace de tres vías TCP

Los hosts mantienen el estado, rastrean cada segmento de datos dentro de una sesión e intercambian información sobre qué datos se reciben utilizando la información en el encabezado TCP. TCP es un protocolo full-duplex, donde cada conexión representa dos sesiones de comunicación unidireccionales. Para establecer la conexión, los hosts realizan un protocolo de enlace de tres vías. Como se muestra en la imagen, los bits de control en el encabezado TCP indican el progreso y el estado de la conexión.

Estas son las funciones del apretón de manos de tres vías:

  • Establece que el dispositivo de destino está presente en la red.
  • Verifica que el dispositivo de destino tenga un servicio activo y esté aceptando solicitudes en el número de puerto de destino que el cliente iniciador pretende utilizar.
  • Informa al dispositivo de destino que el cliente de origen tiene la intención de establecer una sesión de comunicación en ese número de puerto.

Una vez completada la comunicación, las sesiones se cierran y la conexión finaliza. Los mecanismos de conexión y sesión permiten la función de confiabilidad TCP.

Campo de bits de control

Se muestra los campos de encabezado del segmento TCP con el campo de bits de control de 6 bits resaltado

Los seis bits en el campo Bits de control del encabezado del segmento TCP también se conocen como banderas. Una bandera es un bit que está activado o desactivado.

Los seis indicadores de bits de control son los siguientes:

  • URG: campo de puntero urgente significativo
  • ACK: indicador de reconocimiento utilizado en el establecimiento de la conexión y la finalización de la sesión
  • PSH: función de empuje
  • RST: restablece la conexión cuando se produce un error o un tiempo de espera
  • SYN: sincroniza los números de secuencia utilizados en el establecimiento de la conexión
  • FIN: no hay más datos del remitente y se utilizan en la finalización de la sesión

Glosario: Si tienes dudas con algún término especial, puedes consultar este diccionario de redes informáticas.

¡Listo! Sigue visitando nuestro blog de curso de redes, dale Me Gusta a nuestra fanpage; y encontrarás más herramientas y conceptos que te convertirán en todo un profesional de redes.

Deja un Comentario

Este sitio usa Akismet para reducir el spam. Aprende cómo se procesan los datos de tus comentarios.

¿Quieres aprobar la certificación Cisco CCNA?Sí, quiero!
+ +