¿Qué es TCP/IP y cómo funciona?

0
139
TCP/IP

En una red, los dispositivos necesitan comunicarse. Para ello surgieron protocolos de comunicación y modelos para los mismos. Entre ellos, se encuentra el  modelo TCP/IP  . El nombre proviene de dos de sus protocolos,  TCP  e  IP  .

De forma sencilla, se puede decir que el protocolo es el “lenguaje” que utilizan los equipos conectados en una red para comunicarse. De esta manera, los equipos de diferentes tecnologías, fabricantes y propósitos pueden entenderse entre sí.

Sin protocolos de comunicación estandarizados, sería difícil, por ejemplo, que existiera una red mundial como Internet.

Para estandarizar la creación de protocolos, en 1971 se creó el modelo OSI (Open Systems Interconnection) y se formalizó en 1983. Este modelo define una arquitectura de protocolo para redes. Con él, diferentes fabricantes pueden fabricar sus equipos para comunicar, interpretar la información contenida en la comunicación y realizar la tarea solicitada.

El modelo OSI predice que una red debe tener 7 capas:

Aplicación  : funciones especializadas a nivel de aplicación

Presentación  : formateo de datos y conversión de caracteres y códigos

Sesión  – Negociación y establecimiento de conexión con otro nodo

Transporte  : medios y métodos para entregar datos de extremo a extremo

Red  : enrutamiento de paquetes a través de una o más redes.

Enlace  – Detección y corrección de errores introducidos por el medio de transmisión

Físico  : transmisión de bits a través del medio de transmisión.

TCP/IP

TCP/IP es un conjunto de protocolos de comunicación. El nombre proviene de dos protocolos TCP (Protocolo de control de transmisión) e IP (Protocolo de Internet). Su objetivo es estandarizar todas las comunicaciones de la red, en particular las comunicaciones web.

Este modelo fue desarrollado en 1969 por el Departamento de Defensa de los Estados Unidos como un recurso de comunicación para ARPANET, el precursor de Internet. Tenía la función de permitir el intercambio de un gran volumen de información entre una inmensa cantidad de sistemas informáticos que involucraban empresas, universidades y organismos gubernamentales, todo con gran velocidad y confiabilidad.

Debe tener la capacidad de decidir la mejor ruta a seguir dentro de la red formada por las organizaciones involucradas. En 1983, con la formalización del modelo OSI, se adaptó TCP/IP al modelo y se definió como un estándar de comunicación de red. Luego, expandiéndose a la interconexión externa de estas redes y constituyendo el estándar de comunicación de Internet.

El modelo TCP/IP tiene solo 4 capas que abarcan las 7 capas del modelo OSI. Las capas superiores reciben información y la distribuyen a las capas inferiores, atribuyendo a cada una de ellas el papel que desempeñará durante la comunicación.

Comparación con el modelo OSI

En comparación con el modelo OSI, puede ver cómo se relacionan las 4 capas TCP/IP y sus funciones:

Aplicación (Capa 4)

Aquí encontrará todos los protocolos de servicio que se comunican directamente con el software para identificar el tipo de solicitud que se está realizando.

Así, encontramos HTTP que permite la navegación web, DNS que convierte la url del navegador en un número único (IP) que se utiliza para identificar la ubicación en la red del medio a conectar, SMTP que se utiliza para enviar correos electrónicos. mails, SSH que permite una conexión remota segura y muchos otros.

Después de la comunicación entre el software y la capa de aplicación, la información se codifica dentro del estándar de protocolo y se transmite a las capas inferiores.

Transporte (Capa 3)

Responsable de la comunicación entre los puntos (hosts) involucrados. Tiene la función de mantener la confiabilidad e integridad de la comunicación, verificando si el paquete llegó a su destino y si los datos contenidos en él llegaron de manera integral.

Aquí encontramos TCP, utilizado en la conexión punto a punto. Al ser un protocolo de conexión más fiable, se utiliza en aplicaciones que no tienen mucha tolerancia a la pérdida de paquetes.

También encontramos el protocolo UDP (User Datagram Protocol), un protocolo con una conexión no tan fiable. No verifica la confiabilidad e integridad de la información, sin embargo, como no tiene las características de control que son relevantes para TCP, permite una transmisión de información más rápida.

Así, tenemos TCP como protocolo principal para la conexión entre aplicaciones y UDP para el tráfico de medios (videos y audios), donde la velocidad es más importante que la integridad.

puertas

Esta capa utiliza puertas lógicas para garantizar que la aplicación (software) que inició la conversación encuentre la aplicación deseada en su destino. Estos puertos lógicos son canales virtuales aleatorios, generalmente definidos por el Sistema Operativo, que se abren según el tipo de aplicación que se esté ejecutando, por ejemplo, HTTP usa el puerto 80, FTP usa el puerto 21, etc.

Este canal virtual asegura que una aplicación que inicia una llamada a través del puerto 80, como usar un navegador para abrir una página HTTP en la computadora A, encuentre, en el destino, el servidor web que proporcionará la página HTTP solicitada también por un puerto 80 Esto evita que la información se desvíe a otra aplicación, como un servidor FTP (puerto 21).

ataques

Algunos tipos de ataques de piratas informáticos, como DDoS (denegación de servicio), utilizan la sobrecarga de solicitudes en un determinado puerto, lo que provoca la caída del servicio. Por ejemplo, millones de solicitudes de conexión simultáneas por el puerto 80 de un servidor web son capaces de provocar la desconexión del servicio y, en consecuencia, la retirada de las páginas que aloja a los usuarios.

Para evitar esto, la capa de Transporte intenta analizar y medir continuamente cuánto está cargada la red y realiza un “balanceo de carga”, reduciendo la velocidad a la que se envían los paquetes para evitar la sobrecarga.

paquetes

Otra función importante es la correcta entrega de los paquetes de información, verificando la secuencia de llegada de los paquetes, ya que, durante el tráfico, algunos pueden perderse. A modo ilustrativo, supongamos que la información producida en el equipo A, con destino al equipo B, dado su tamaño, se particionó en origen en 10 paquetes y se reenvió al punto B.

Al llegar al punto B, la capa de transporte, a través de TCP, verifica la secuencia y, si se ha perdido un paquete en el camino, solicita al origen que lo reenvíe.

Así, si el punto B recibió los paquetes 1, 5, 3 y 2, TCP reordena la secuencia, comprueba la ausencia del paquete 4, solicita el reenvío de este paquete y, cuando llega, lo coloca en la secuencia correcta para que el destino interpretar la información en su totalidad.

Internet o Red (Capa 2)

Se puede decir que aquí está el GPS del paquete TCP/IP, pues dentro de esta capa encontramos las direcciones de origen y destino de una conexión.

Durante todo el tráfico de paquetes a través de la red, encuentra varios dispositivos que lo dirigen a la mejor ruta para llegar a su destino. Estos dispositivos se denominan enrutadores y, por analogía, se pueden definir como nodos de una red.

Cuando el enrutador recibe el paquete, lee la capa de Internet (o red), verifica la dirección de destino, verifica la lista interna de rutas que tiene y dirige el paquete a la ruta adecuada, que puede ser la ruta más larga con menos tráfico o el más corto.

Al llegar al destino, el equipo almacena la dirección de origen del paquete recibido, activa la aplicación solicitada en la capa de Transporte, realiza la acción solicitada en la capa de Aplicación, formula la respuesta, encapsula la respuesta en otro paquete TCP/IP, lo pone como destino la dirección de origen almacenada e inserta su dirección como la dirección de origen.

Dentro de esta capa podemos encontrar los protocolos ICMP e IGMP. El primero se utiliza para transmitir diagnósticos a través de la red que está viajando. El segundo se utiliza para la gestión de multidifusión de datos.

Otra función de esta capa es transportar protocolos de enrutamiento. Por ejemplo, BGP, OSPF y RIP, que entregan información capturada sobre el tráfico de red a los enrutadores a medida que el protocolo pasa a través de ellos. Esto permite que estos dispositivos mejoren sus listas de rutas. Además, dirija los paquetes futuros de manera más adecuada.

Enlace o Física (Capa 1)

Su función es identificar la conexión física de la red por la que viaja el paquete. Por ejemplo, Ethernet, Wi-Fi, módem de acceso telefónico, cajero automático, FDDI, Token Ring, X.2. Además, lleva consigo la identidad del hardware que originó el envío del paquete, almacenando su dirección MAC.

Responsable de adaptar el paquete al entorno físico por el que viaja. Permite que el paquete viaje por diferentes medios, a través de diferentes interconexiones e interoperaciones de redes altamente heterogéneas. Esta es una de las mayores fortalezas de TCP/IP. Los protocolos más antiguos permitían el tráfico solo en el mismo medio físico.

Es a través de esta capa que una notebook o smartphone, conectado a internet a través de Wi-Fi, tiene una solicitud enviada por la radiofrecuencia, puede convertir la señal para viajar en la fibra óptica del equipo de internet proporcionado por el operador y llega en el destino .

Otra característica de esta capa es la traducción de nombres y direcciones lógicas a direcciones físicas, además de gestionar el tráfico y las velocidades de los canales de comunicación.

Finalmente, otra función es la partición de la información en paquetes más pequeños, como mencionamos en el ejemplo dado en la capa de Transporte.

Mientras que la capa de Transporte se encarga de la correcta secuenciación de los paquetes de información subdividida, la capa de Enlace de Datos se encarga de la división y de esta información.

También tiene las siguientes características:

  • Establecer y terminar conexiones;
  • Notificar y corregir fallas;
  • Utilice señales analógicas o digitales en las conexiones;
  • Utilizar medios guiados (cables) o no guiados (radio, microondas);
  • Emisión de más de una señal en el mismo medio físico;
  • Mapear direcciones lógicas a físicas;
  • Convierte direcciones físicas en lógicas (dirección IP);
  • Conmutar paquetes dentro de un dispositivo;
  • Permite implementar TCP/IP en diferentes hardware.

El Protocolo TCP

TCP es un protocolo de capa de transporte confiable que tiene como objetivo garantizar que los datos se transmitan completamente a los hosts de destino correctos en la secuencia en que se enviaron.

TCP divide (segmenta) la información recibida de la capa de aplicación en bloques de información más pequeños, conocidos como datagramas, e incorpora un encabezado de identificación que permite que el host de destino recomponga los datos. Este encabezado contiene un conjunto de bits (checksum) que permite validar los datos y el encabezado mismo.

Este conjunto de bits permite que el host de destino recupere información en caso de errores de transmisión o en los casos en que la información no se pueda recuperar o el paquete TCP/IP se pierda durante la transmisión. El trabajo de TCP es retransmitir el paquete.

Para que el host de origen esté seguro de que el paquete llegó sin errores, el host de destino informa el estado de la transmisión mediante el envío de un   mensaje de reconocimiento .

Para poder identificar a qué servicio pertenece un determinado datagrama, TCP utiliza el concepto de puertos. Un servicio está asociado con cada puerto. Una vez determinado el puerto, toda la comunicación con la aplicación se realiza y direcciona a través de él.

Características de TCP

Transferencia de datos  : Estándar full-duplex entre 2 puntos, es decir, ambos puntos conectados pueden transmitir y recibir simultáneamente.

Transferencia de datos con diferentes prioridades  : Interpreta las señales de prioridad y organiza el enrutamiento de datagramas en consecuencia.

Establecimiento y Liberación de Conexiones  : Solicita y acepta el inicio y terminación de transmisiones entre  hosts  .

Secuenciación  : Ordenación de los paquetes recibidos.

Segmentación y reensamblaje  : divide la información más grande en paquetes más pequeños para su transmisión. De esta forma, identificándolos para poder ser debidamente reagrupados a su recepción.

Control de flujo  : Analiza las condiciones de transmisión (velocidad, medio físico, tráfico, etc.) y adapta los datagramas para esta transmisión.

Control de errores: Mediante el conjunto de bits (checksum) de su cabecera, verifica si los datos transmitidos están libres de errores. Además de la detección, también es posible corregirla.

Multiplexación IP  : Dado que se utiliza el concepto de puertos, es posible enviar datos de diferentes tipos de servicios (diferentes puertos) a un mismo host de destino.

El Protocolo IP

El protocolo IP define la mecánica de transmisión de datagramas, teniendo como característica la orientación de conexión. Cada paquete IP se trata como una unidad de información independiente, sin relación con ningún otro.

Es responsable de la comunicación entre los hosts de una red TCP/IP, gestionando el transporte de un mensaje desde un host de origen a un host de destino. Hace esto incluso cuando su datagrama necesita pasar por varias subredes.

Sin embargo, el protocolo IP no es confiable ya que no utiliza ningún control de flujo ni manejo de errores. Esta es responsabilidad de los protocolos de capa superior.

Sus funciones más relevantes son la asignación de un esquema de direccionamiento independiente del direccionamiento de la red utilizada e independiente de la propia topología de la red.

Además, tiene la capacidad de enrutar y tomar decisiones de enrutamiento para el transporte de mensajes entre los elementos que interconectan las redes.

funciones de propiedad intelectual

Servicio de datagramas poco fiable;

Direccionamiento jerárquico;

Facilidad de fragmentación y reensamblaje de paquetes;

Campo especial que indica qué protocolo de transporte usar en el nivel superior;

Identificación de la importancia del datagrama y el nivel de confiabilidad requerido para dar prioridad en la transmisión;

Eliminación y control de por vida de los paquetes que circulan por la red.

La dirección IP

Es la identificación única e inequívoca de cada uno de los hosts que componen una red. Es un conjunto de 32 bits, normalmente escritos en decimal y repartidos en 4 octetos. Sigue las especificaciones definidas por el  NIC  (  Network Information Center  ). La NIC asigna y controla direcciones IP en todo el mundo. De esta forma, se garantiza la seguridad y unicidad de las direcciones.

Está asociado al host, también con una máscara de red que define la identificación, límites y número de equipos en la red donde se conecta este host.

Debido a la existencia de redes de varios tamaños, se utiliza el concepto de Clase de Dirección. Así, es posible distinguir las siguientes clases:

R  : 128 redes con la capacidad de abordar 16 millones de hosts;

B  : 16384 redes con capacidad para direccionar 64 000 hosts;

C  : 2 millones de redes con posibilidad de direccionar 256 hosts;

D  : permite que un datagrama se distribuya a través de un conjunto de hosts;

E  : Estas son direcciones que comienzan con 1111 y están reservadas para uso futuro.

De manera predeterminada, Internet usa la clase C para direccionar sus redes y  hosts.  Entonces, cuando un nuevo  ISP  (  Proveedor de servicios de Internet  ) se conecta a Internet, recibe al menos un conjunto de 256 direcciones para usar en sus  hosts  . Permitiendo así el acceso simultáneo a Internet de 256 usuarios.

A medida que Internet creció exponencialmente, las direcciones IP disponibles disminuyeron drásticamente y una forma de resolver el inevitable agotamiento de las direcciones IP fue crear el concepto de subredes.

IPv4 e IPv6

Inicialmente, Internet no fue diseñado para uso comercial. Por lo tanto, con el posible agotamiento de direcciones, además de las mejoras en la tecnología, se creó IPv6. IPv6 tiene direcciones de 128 bits. De esta manera, permitiendo un número inmensamente mayor de direcciones.

Cualidades TCP/IP

TCP/IP es el protocolo estándar. Al fin y al cabo, cuenta con una serie de cualidades que permiten una enorme versatilidad en las comunicaciones. Además, permite la estandarización en el desarrollo de nuevas tecnologías en software y hardware. Cabe destacar que se pueden enumerar como principales las siguientes cualidades:

Estandarización  : Es un estándar y un protocolo enrutable que es el más completo y aceptado, actualmente disponible. Todos los sistemas operativos modernos admiten TCP/IP. Además, la mayoría de las grandes redes dependen de él para la mayor parte de su tráfico.

Interconectividad  : es una tecnología para conectar sistemas disímiles. Muchas utilidades de conectividad estándar están disponibles para acceder y transferir datos entre estos sistemas diferentes. Estos incluyen   FTP   (  Protocolo de transferencia de archivos  ) y   Telnet   (  Protocolo de emulación de terminal  ).

Enrutamiento  : permite y habilita tecnologías más antiguas y más nuevas para conectarse a Internet. Funciona con protocolos de línea como  PPP  (  Point to Point Protocol  ). De esta forma, se permite la conexión remota desde línea telefónica o dedicada. También como los mecanismos e interfaces IPCs más utilizados por los sistemas operativos, como son los sockets Windows y NetBIOS.

Protocolo Robusto  : es escalable y multiplataforma, con estructura para ser utilizada en sistemas operativos cliente/servidor, permitiendo el uso de aplicaciones de este tamaño entre dos puntos distantes.

Internet  : es a través del conjunto de protocolos TCP/IP que tenemos acceso a Internet. Las redes locales distribuyen servidores de acceso a Internet (servidores proxy). Los hosts locales se conectan a estos servidores para obtener acceso a Internet. Este acceso solo se puede lograr si las computadoras están configuradas para usar TCP/IP.

Conclusión

En resumen, TCP/IP especifica cómo se intercambian los datos a través de Internet. Proporciona comunicaciones de extremo a extremo. Identifica cómo se empaquetarán, direccionarán, transmitirán, enrutarán y recibirán en el destino.

TCP/IP requiere poca administración central y está diseñado para hacer que las redes sean confiables. Con él, es posible recuperarse automáticamente de la falla de cualquier dispositivo en la red.

Deja un comentario