El protocolo TCP (Transmission Control Protocol) es el encargado de proporcionar un servicio de comunicación punto a punto entre dos host. Este protocolo de cuarto nivel está orientado a conexión en la capa de transporte y funciona a través de la conexión mutua entre cliente y servidor.
TCP hace parte de la familia de Protocolo TCP/ IP y funciona como un servicio intermedio entre una aplicación y el protocolo IP, es decir, la comunicación es entre nodo origen y nodo destino. A continuación te contaremos qué es TCP, su historia y sus características.
Historia del protocolo TCP
Este protocolo TCP de internet comparte su historia de desarrollo con el Protocolo IP, debido a que ambos surgen como resultado del trabajo de la llamada Advanced Research Projects Agency o Agencia de Investigación de Proyectos Avanzados (ARPA) de defensa de los Estados Unidos. Esta agencia a principio de la década de los 70, luego de la construcción de ARPANET, iniciaron labores hacia las tecnologías de transmisión de datos.
Hacia 1972, el proyecto contrata al científico de computaciones estadounidense Robert E. Kahn para que trabaje en las Oficinas de Técnicas de Procesamiento de Información, especialmente en lo relacionado con la comunicación de paquetes vía satélite y por ondas de radio ,
Un año después, en 1973, el desarrollador del protocolo ARPANET Vint Cerf se une al equipo de trabajo de Kahn, con el objetivo de diseñar una arquitectura abierta de interconexión que pudiera permitir el diseño de una nueva versión de protocolos del proyecto.
Los científicos Cerf y Kahn se ven influenciados por el trabajo de Hubert Zimmerman y Louis Pouzin, quienes desarrollaron la red informática CYCLADES, y cuyos aportes fueron fundamentales para la creación de una red que otorgaba la fiabilidad de la comunicación en el host y que reducía las diferencias entre los protocolos de red.
🔴 ¿Quieres entrar de lleno al mundo DevOps & Cloud Computing? 🔴
Descubre el DevOps & Cloud Computing Full Stack Bootcamp de KeepCoding. La formación más completa del mercado y con empleabilidad garantizada
👉 Prueba gratis el Bootcamp en DevOps & Cloud Computing por una semanaHacia 1974 se obtiene la primera especificación protocolo TCP (Request for Comments 675), y el proyecto DARPA empieza a enfocar esfuerzos en crear versiones operacionales de este protocolo en las diversas plataformas de hardware, logrando desarrollar la versión número 4 denominada protocolo TCP/IP v4, siendo este el protocolo estándar usado en la actualidad para el funcionamiento de internet y que ahora nos permite saber qué es TCP.
Luego se realizan diferentes pruebas de comunicación entre redes con protocolo TCP/IP, que culminan con éxito y hacen que los protocolos sean activados de forma permanente y aproveches la función del protocolo TCP. El Departamento de Defensa de los Estados Unidos declara a este protocolo como el estándar para la comunicación de las redes militares, y más adelante se populariza y se incrementa su uso en un nivel comercial.
Características del protocolo TCP
Ahora que sabes en qué es TCP y en qué consiste, hablemos de la función del protocolo TCP. El protocolo TCP es el encargado de manejar todos los detalles de transmisión de datos, presentando a abstracción de la conexión de red a la aplicación a través de sockets, es decir, una abstracción formada por la dirección IP y un puerto TCP, además controla que los datos lleguen a su destino de una manera fiable, garantizando la recepción de los paquetes, evitando la pérdida de datos o su llegada tardía. Este protocolo de control es utilizado en aplicaciones que requieran un reconocimiento de los datos recibidos.
Otra de las características del protocolo TCP, los datos se transmiten y ordenan en segmentos (que provienen del Protocolo IP). Además, se encarga de establecer una sesión entre los dos host antes de que las máquinas puedan intercambiar datos, siguiendo las pautas del handshake protocol. TCP también está a cargo del control de flujo de datos para evitar la saturación en la red.
Otra de sus características del protocolo TCP, es que todos los bytes que se transmiten se encuentran identificados por una secuencia, y que el receptor debe confirmar la llegada correcta de un segmento enviando un ACK en un periodo de tiempo especificado. Si ocurre la situación en que el emisor no recibe el ACK, el dato vuelve a ser enviado hasta garantizar su recepción.
Puertos
Los puertos son los que identifican unívocamente a una aplicación a través del uso de un ¨Protocol Port Number¨. Cada aplicación tiene están asociados a un número de puerto entre 0 y 65536. Los puertos en el rango del 0 al 1024 son los puertos ¨well known¨ o bien conocidos y solo es usado por ciertas aplicaciones que cuentan con los permisos necesarios, y que pueden ser consultados en el fichero /etc/services
de cualquier distribución.
En el caso de los puertos clientes, estos son asignados de forma dinámica, y los puertos de aplicaciones servidoras han sido asignadas por la IANA y no es posible cambiarlos. Estos son, entonces, un par o una función del protocolo TCP.
¿Cuál es el siguiente paso?
Ahora que ya sabes lo que es el protocolo TCP, cuál es su historia, sus características y demás, da el siguiente paso y continua tu proceso de formación a través de nuestro DevOps & Cloud Computing Full Stack Bootcamp. Inscríbete y en menos de 6 podrás aprender todo lo necesario para agilizar y mejorar tus procesos de desarrollo de proyectos tecnológicos, logrando así, destacar sobre tu competencia en el sector IT.