[{"@context":"http:\/\/schema.org\/","@type":"BlogPosting","@id":"https:\/\/ayudaleyprotecciondatos.es\/2021\/07\/29\/protocolo-tcp\/#BlogPosting","mainEntityOfPage":"https:\/\/ayudaleyprotecciondatos.es\/2021\/07\/29\/protocolo-tcp\/","headline":"Protocolo TCP. \u00bfQu\u00e9 es y c\u00f3mo funciona?","name":"Protocolo TCP. \u00bfQu\u00e9 es y c\u00f3mo funciona?","description":"\u00bfEn qu\u00e9 consiste el protocolo TCP? \u00bfPor qu\u00e9 es tan importante para establecer conexiones entre equipos y redes inform\u00e1ticas? Desc\u00fabrelo aqu\u00ed.","datePublished":"2021-07-29","dateModified":"2021-11-29","author":{"@type":"Person","@id":"https:\/\/ayudaleyprotecciondatos.es\/author\/ferkurt21\/#Person","name":"Fernando Tablado","url":"https:\/\/ayudaleyprotecciondatos.es\/author\/ferkurt21\/","image":{"@type":"ImageObject","@id":"https:\/\/secure.gravatar.com\/avatar\/44a22e5e73783cc104da9c4ab11587bc?s=96&d=blank&r=g","url":"https:\/\/secure.gravatar.com\/avatar\/44a22e5e73783cc104da9c4ab11587bc?s=96&d=blank&r=g","height":96,"width":96}},"publisher":{"@type":"Organization","name":"AyudaLeyProteccionDatos","logo":{"@type":"ImageObject","@id":"https:\/\/ayudaleyprotecciondatos.es\/wp-content\/uploads\/2016\/01\/ayuda-ley-proteccion-datos.png","url":"https:\/\/ayudaleyprotecciondatos.es\/wp-content\/uploads\/2016\/01\/ayuda-ley-proteccion-datos.png","width":600,"height":60}},"image":{"@type":"ImageObject","@id":"https:\/\/ayudaleyprotecciondatos.es\/wp-content\/uploads\/2021\/07\/protocolo-tcp.jpg","url":"https:\/\/ayudaleyprotecciondatos.es\/wp-content\/uploads\/2021\/07\/protocolo-tcp.jpg","height":1004,"width":1500},"url":"https:\/\/ayudaleyprotecciondatos.es\/2021\/07\/29\/protocolo-tcp\/","about":["INTERNET"],"wordCount":1787,"articleBody":" if (typeof BingeIframeRan === \"undefined\") { window.addEventListener(\"message\", receiveMessage, false); function receiveMessage(event) { try { var parsed = JSON.parse(event.data) if (parsed.context === \"iframe.resize\") { var iframes = document.getElementsByClassName(\"binge-iframe\"); for (let i = 0; i < iframes.length; ++i) { if (iframes[i].src == parsed.src || iframes[i].contentWindow === event.source) { iframes[i].height = parsed.height; } iframes[i].style.opacity = 1; } } } catch (error) { } } var BingeIframeRan = true; } Fue desarrollado hace casi cuatro d\u00e9cadas, pero a\u00fan as\u00ed, el protocolo TCP sigue siendo imprescindible para las comunicaciones en internet. En este art\u00edculo vemos en qu\u00e9 consiste este protocolo, cu\u00e1les son sus caracter\u00edsticas, c\u00f3mo establece las conexiones entre servidor y cliente, y mucho m\u00e1s.\u00bfQu\u00e9 es el protocolo TCP o Transfer Control Protocol?Caracter\u00edsticas principales\u00bfC\u00f3mo funcionan las conexiones en un protocolo TCP?Secuencia de una conexi\u00f3n en un TCPComponentes del encabezado TCP\u00bfC\u00f3mo interrumpir una conexi\u00f3n de forma controlada?Ventajas y desventajas del protocolo de control de transmisi\u00f3nLos puertos TCPDiferencias entre conexi\u00f3n TCP y UDP\u00bfQu\u00e9 es el protocolo TCP o Transfer Control Protocol?El Protocolo TCP\/IP o Transfer Control Protocol consiste en un acuerdo estandarizado sobre el que se realiza la transmisi\u00f3n de datos entre los participantes de una red inform\u00e1tica.Los programas que forman redes de datos en una red de ordenadores emplean el protocolo TCP para crear conexiones entre s\u00ed, de forma que se pueda garantizar el flujo de datos entre las partes. A trav\u00e9s de este protocolo se asegura que los datos lleguen a su destino en el mismo orden que se transfirieron y sin errores.La inmensa mayor\u00eda de comunicaciones que se realizan en internet utilizan el protocolo TCP IP, como es el caso de navegadores, programas de intercambio de ficheros, servicios FTP y un largo etc\u00e9tera.El origen de este protocolo se sit\u00faa en 1973 y fue desarrollado por Robert E. Kahn y Vinton G. Cerf. Sin embargo, hasta ocho a\u00f1os despu\u00e9s no se convirti\u00f3 en un protocolo estandarizado gracias al documento RFC 793. Lo m\u00e1s sorprendente es que hoy en d\u00eda sigue vigente.Caracter\u00edsticas principalesLas principales caracter\u00edsticas del TCP Protocol son:Es un protocolo que funciona mediante la conexi\u00f3n mutua entre cliente y servidor.Ordena los segmentos provenientes del protocolo IP.Monitorea el flujo de los datos y permite evitar la saturaci\u00f3n de la red.Entrega los datos al protocolo IP en forma de segmentos de longitud variable.Permite circular de forma simult\u00e1nea a la informaci\u00f3n proveniente de diferentes fuentes.\u00bfC\u00f3mo funcionan las conexiones en un protocolo TCP?Para saber c\u00f3mo funciona el protocolo TCP es necesario tener en cuenta que se trata de un est\u00e1ndar que se basa en la transmisi\u00f3n bidireccional de la informaci\u00f3n.Imaginemos una comunicaci\u00f3n por v\u00eda telef\u00f3nica, en la que tanto el emisor como el receptor establecen una comunicaci\u00f3n entre s\u00ed. Pues esto ser\u00eda similar al funcionamiento del TCP.En este caso, la comunicaci\u00f3n se realizar\u00eda en base a paquetes o segmentos, que funcionar\u00edan como las unidades b\u00e1sicas de transmisi\u00f3n.Tanto la conexi\u00f3n entre terminales, como la transmisi\u00f3n de los datos, es llevada a cabo por un software TCP, el cual se ejecuta dentro del conjunto de protocolos de red del sistema operativo.Las aplicaciones de red, como los servidores o los navegadores de internet, cuentan con interfaces que permiten activar este software TCP.Para establecer la conexi\u00f3n, es necesario que se reconozcan dos puntos de acceso y destino (cliente y servidor). Sin embargo, no importa qu\u00e9 parte hace de cliente y cu\u00e1l hace de servidor, Lo \u00fanico que necesita el software TCP para establecer la conexi\u00f3n es que cada una de las partes cuente con una direcci\u00f3n IP y un puerto asignado.Secuencia de una conexi\u00f3n en un TCPUna conexi\u00f3n en el protocolo TCP\/IP se establece en base a la siguiente secuencia.En primer lugar, el cliente env\u00eda un paquete o segmento SYN (synchonize o sincronizar). Este segmento contiene un n\u00famero aleatorio que garantiza una transmisi\u00f3n completa y ordenada de la informaci\u00f3n.Una vez que el servidor ha recibido al segmento por parte del cliente, debe confirmar su recepci\u00f3n mediante el env\u00edo de un segmento SYN ACK (acknowledgement o confirmaci\u00f3n). En este se incluye el n\u00famero de secuencia del cliente +1, y adem\u00e1s, se env\u00eda un n\u00famero propio al cliente.Por \u00faltimo, el cliente recibe el paquete del servidor y confirma su recepci\u00f3n a trav\u00e9s de un segmento ACK, que consiste en el n\u00famero de secuencia del servidor +1.Componentes del encabezado TCPEl encabezado del protocolo TCP est\u00e1 formado por una serie de componentes. Veamos lo que significan las diferentes secuencias de bits en un segmento TCP:Puerto de origen (16 bits): se refiere la aplicaci\u00f3n que est\u00e1 en curso en el dispositivo de origen.Puerto de destino (16 bits): relativo la aplicaci\u00f3n que est\u00e1 en curso curso en el dispositivo de destino.N\u00famero de secuencia (32 bits): son las secuencias de n\u00fameros que cliente y servidor se env\u00edan para que se pueda establecer la comunicaci\u00f3n.N\u00famero de acuse de recibo (32 bits): indica el n\u00famero de secuencia del siguiente segmento que se espera recibir.Margen de datos (4 bits): determina el lugar del segmento donde comienzan los datos.Reservado (6 bits): es un campo reservado para futuros usos. Su valor siempre es igual a cero.Indicadores (6 bit): Ofrecen informaci\u00f3n adicional::URG: cuando su valor es 1, se trata de un segmento que se ha de procesar de manera urgente.ACK: cuando su valor es 1, el segmento consiste en un acuse de recibo.PSH: cuando su valor es 1, el paquete procesa los datos sin esperar a completar el segmentoRST: cuando su valor es 1, se reanuda la conexi\u00f3n.SYN: cuando su valor es 1, se solicita un pedido para establecer una conexi\u00f3n.FIN: cuando su valor es 1, determina el fin de la conexi\u00f3n..Ventana (16 bits): determina la cantidad de bytes que desea recibir el receptor sin acuse de recibo.Suma de control (24 bit): verifica la integridad del paquete a trav\u00e9s de la comprobaci\u00f3n de errores.Puntero urgente (16 bits): se utiliza para enviar datos urgentes e indica la ubicaci\u00f3n de los datos que siguen a los urgentes.Opciones (bits variables): para definir funciones TCP que no forman parte del encabezado general.Relleno: su funci\u00f3n es asegurar que la longitud de la cabecera sea m\u00faltiplo de 32 bits.\u00bfC\u00f3mo interrumpir una conexi\u00f3n de forma controlada?En el protocolo TCP ambas partes de la comunicaci\u00f3n pueden interrumpir la conexi\u00f3n de forma controlada. Incluso, se puede hacer de forma unilateral por una de las partes. Veamos c\u00f3mo se realiza este proceso:En primer lugar, el cliente env\u00eda un segmento FIN al servidor para notificarle que no desea seguir adelante con la conexi\u00f3n. Este segmento contiene un n\u00famero de secuencia concreto.Una vez que recibe el segmento FIN, el servidor env\u00eda un segmento ACK al cliente, para corroborar que ha recibido el paquete. Este segmento contiene el mismo n\u00famero de secuencia que envi\u00f3 el cliente +1.El cliente confirma la recepci\u00f3n de este paquete, enviando un nuevo segmento ACK al servidor. Este segmento es el mismo n\u00famero de secuencia que le env\u00edo el servidor +1.Ventajas y desventajas del protocolo de control de transmisi\u00f3nLa principal ventaja que ha convertido al protocolo TCP y IP en un m\u00e9todo estandarizado para la transmisi\u00f3n de datos en red, es que se trata de un protocolo que requiere el establecimiento de un canal seguro por ambas partes, y que garantiza el acuso de recibe de la informaci\u00f3n enviada. Por tanto, se trata de un m\u00e9todo fiable, seguro y que asegura un flujo ordenado de los datos y a prueba de errores.Como puntos mejorables, se trata de un protocolo que puede funcionar de forma demasiado lenta en algunos tipos de redes, sobre todo a causa de la necesidad de confirmar que los segmentos han sido recibidos en tiempo y forma. Por ejemplo, en el caso de las redes inal\u00e1mbricas, se tiende a perder informaci\u00f3n a causa de las interferencias producidas por el canal de radio. Esta informaci\u00f3n se tiene que recuperar para poder entregar el mensaje, lo que pueda causar un retraso en la comunicaci\u00f3n.Los puertos TCPLos puertos TCP permiten distinguir distintas aplicaciones dentro de una misma m\u00e1quina, A trav\u00e9s del n\u00famero de puerto se identifican las aplicaciones emisores y receptoras. Esto resulta fundamental, junto a la IP, para que se puede establecer la comunicaci\u00f3n entre cliente y servidor.Cada lado de la conexi\u00f3n tiene asignado un determinado n\u00famero de puerto. Se puede distinguir entre puertos bien conocidos, registrados o din\u00e1micos. En total existen 65.535 puertos,Diferencias entre conexi\u00f3n TCP y UDPSon dos de los m\u00e1s usados para las comunicaciones en red. Sin embargo, existen importantes diferencias entre el protocolo TCP y UDP.La definici\u00f3n de protocolo UDP podr\u00eda ser aquel que hace posible que las aplicaciones puedan comunicarse en las capas inferiores del protocolo TCP\/IP. Por ejemplo, es empleado en los servidores DNS.Una de las diferencias entre ambos es que el protocolo UDP permite el env\u00edo de datagramas sin necesidad de establecer una conexi\u00f3n previa entre las partes, al contrario que en el protocolo TCP.Por otro lado, el UDP es un protocolo que no ofrece un control de flujo. Al contrario que en el TCP, no controla que la comunicaci\u00f3n se establezca en tiempo y forma. Si un equipo es m\u00e1s r\u00e1pido que otro, es probable que el equipo m\u00e1s lento colapse y, a causa de ello, se pierda informaci\u00f3n.Por \u00faltimo, el protocolo UDP tampoco ofrece un sistema de control de congesti\u00f3n. Si la red est\u00e1 saturada, se perder\u00e1n paquetes y no se reorganizar\u00e1n para enviarse de forma ordenada, como s\u00ed ocurre en el TCP.En definitiva, el protocolo TCP es un est\u00e1ndar b\u00e1sico que permite, de forma silenciosa, establecer las comunicaciones necesarias entre los equipos para que los usuarios podamos navegar por internet y utilizar plataformas y servicios en red."},{"@context":"http:\/\/schema.org\/","@type":"BreadcrumbList","itemListElement":[{"@type":"ListItem","position":1,"item":{"@id":"https:\/\/ayudaleyprotecciondatos.es\/#breadcrumbitem","name":"Ayuda Ley Protecci\u00f3n Datos"}},{"@type":"ListItem","position":2,"item":{"@id":"https:\/\/ayudaleyprotecciondatos.es\/2021\/07\/29\/protocolo-tcp\/#breadcrumbitem","name":"Protocolo TCP. \u00bfQu\u00e9 es y c\u00f3mo funciona?"}}]}]