El protocolo TCP

Una descripción general de alto nivel del Protocolo de control de transferencia

TCP significaProtocolo de control de transferenciay es la base de la Web y otras aplicaciones como el correo electrónico.

Definido enRFC 793en 1981, TCP es uno de los pilares más antiguos de Internet.

TCP se asienta sobre el Protocolo de Internet (IP) y construye un sistema base sobre el que se basan los protocolos de nivel de aplicación como HTTP, FTP, IMAP y muchos otros.

TCP, al contrario de IP y UDP, esorientado a la conexión.

Antes de que la transmisión pueda ocurrir a través de TCP, se debe establecer una conexión. Los datos se envían, en forma de pequeños paquetes, y cuando finaliza la comunicación se cierra la conexión.

Cuando los datos se transmiten a través de TCP, hay un flujo de trabajo relativamente complejo llamado protocolo de enlace que debe suceder.

No entraré en detalles aquí, pero este apretón de manos permite que se realice la conexión de un extremo a otro, y esto asegura que TCP pueda proporcionar una de sus características peculiares: confiabilidad. Usando TCP, siempre podemos saber si un paquete enviado por el remitente fue recibido correctamente por el receptor.

Si un paquete se pierde, el protocolo puede manejarlo y el paquete se reenvía.

En el protocolo IP, las conexiones se realizan de una computadora a otra. En TCP, una conexión ocurre de proceso a proceso, utilizando el concepto depuertos.

El puerto, asociado a una dirección IP, permite identificar unívocamente un proceso en una computadora. Como esto:

localhost:8080

o

google.com:1234

Cada protocolo de aplicación tiene un puerto predeterminado. Por ejemplo, HTTP tiene 80, HTTPS tiene 443 y FTP tiene 21. Por eso, normalmente no es necesario especificar el puerto en el navegador.

No es necesario que los programas utilicen el valor predeterminado, por eso, especialmente en su computadora local, es posible que vea puertos como 1313 o 8080 cuando inicie una nueva aplicación.

Los números de puerto van de 1 a 65535 (el número de puerto es de 16 bits sin signo, que corresponde a 2 ^ 16 valores posibles).


Más tutoriales de red: