educatica!

educación, informática y demás

5. Pila de protocolos TCP/IP

En el apartado dedicado al modelo OSI y a la pila de protocolos TCP/IP ya presentamos cómo se había elaborado este modelo que se utiliza en la mayoría de las comunicaciones de redes de computadores.

Como ya vimos, la pila de protocolos se desarrollo de forma práctica, realizando ampliaciones y modificaciones sobre cada nueva ampliación si no funcionaban como se esperaba, hasta que se dio con una base funcional que permitía la comunicación entre dos entidades de comunicación (emisor / receptor) siempre que existiera un camino posible.

Esta comunicación se consiguió gracias a dos protocolos, que son los que dan nombre a esta pila de protocolos:

  • TCP. Transmission Control Protocol o Protocolo de Control de Transmisión. Se trata de un protocolo de la capa de transporte que es orientado a conexión y fiable. Su objetivo es conseguir que la información que le llega del nivel superior (Aplicación) le llegue al otro extremo. En el otro extremo de la comunicación, su función es organizar la información que recibe para hacérsela llegar al nivel superior (Aplicación). Ya veremos como funciona, pero lo importante es que este protocolo se encarga de hacer fiable la comunicación, si hay algún error o falta algún paquete solicita su envío de nuevo. Solo proporciona la información al nivel superior si la tiene completa.
  • IP. Internet Protocolo o Protocolo de Internet. Se trata de un protocolo de la capa de red que se encarga de hacer llegar el paquete a su destino siempre que exista una ruta posible. No es fiable ni orientado a conexión. Si necesitamos esa fiabilidad, podemos utilizar el protocolo TCP en transporte que es el que se encarga de proporcionarla. Su función es enviar los paquetes, denominados datagramas, de origen a destino por la mejor ruta posible. El protocolo IP no garantiza que lleguen todos los paquetes o que lleguen en el mismo orden en que se enviaron, no es fiable ni orientado a conexión.

Si unimos ambos protocolos, ya tenemos una comunicación fiable, que no segura, entre entidades de comunicación. Lo que se garantiza al utilizar TCP/IP en una comunicación al protocolo de nivel de aplicación es que, se envía información de origen a destino y que solo llegará al nivel de aplicación del destino si llega toda la información enviada al destino. TCP se encarga de la fiabilidad e IP de hacer que los paquetes lleguen si existe un camino.

Pila de protocolos TCP/IP

Hemos visto como funcionan, básicamente, los protocolos TCP e IP para proporcionar una comunicación entre dos entidades de comunicación. Estos protocolos fueron la base de la comunicación en redes TCP/IP. Alrededor de estos protocolos se fueron agregando más protocolos de red que bien ayudaban o completaban su función o bien los utilizaban para llevar a cabo comunicaciones en red.

Todos estos protocolos de red trabajan en un nivel distinto del modelo OSI, por tanto se organizan en niveles, dando lugar a una pila de protocolos (pila, como una pila de libros, de platos o de niveles).

Existen multitud de protocolos en la pila de protocolos TCP/IP. En este documento se estudiarán los principales protocolos de red, los más utilizados de forma general en comunicaciones sobre redes TCP/IP.

¿Cómo funciona todo esto?. Primera versión

Vimos como funcionaba la comunicación en un modelo de niveles. Cada nivel se comunica con su nivel par, el que está en el otro extremo de la comunicación, a través de un protocolo concreto de comunicación. Pero, también vimos, que esa comunicación se llevaba a cabo efectivamente a través de los servicios del nivel inferior. En este caso, esa comunicación se lleva a cabo utilizando un protocolo de nivel inferior hasta que se llega al nivel enlace-fisico.

Vamos a echar un vistazo, simplificado de cómo funciona la comunicación entre capas, niveles y protocolos antes de estudiar los distintos protocolos.

Supongamos un caso en el que un usuario utiliza una aplicación, un navegador web, para acceder a un sitio web cualquiera. El navegador es un programa, en este caso es un cliente http, que hará uso, por defecto, del protocolo http para comunicarse con el otro extremo: un servidor web.

Bien, pues simplificando mucho, la comunicación sería la siguiente:

En el equipo cliente, el navegador inicia una conexión con el servidor al que se quiere conectar a través del protocolo HTTP.

Para que HTTP pueda comunicarse con el otro extremo, utiliza TCP para enviar los datos. El protocolo TCP se encargará de establecer una conexión fiable con el software TCP del otro extremo, donde se ejecuta el servidor web. Para ello, se comunicará con él utilizando el protocolo IP que está en nivel inferior. El protocolo IP recibirá los paquetes a enviar al otro extremo, así que comienza a crear datagramas con destino el siguiente nodo que haga llegar el paquete al equipo destino y los envía a través del nivel de enlace-físico, utilizando el hardware de red que haya en el sistema que, con gran probabilidad utilizará Ethernet (por ejemplo una tarjeta de red cableada Ethernet o una interfaz inalámbrica WiFi).

En este punto, los paquetes enviados a través del nivel más bajo, Enlace/Físico, pasarán por una serie de nodos intermedios, hasta que llegan a su destino y recorren el camino a través de los niveles en orden inverso, hasta que llegan al nivel de aplicación.

Todo ese camino es el que realmente se lleva a cabo por los datos, sin embargo, para el software de nivel de aplicación, todo ese proceso no le interesa, no le importa, es transparente para ellos. A ellos, a los niveles pares de la comunicación, solo les interesan los datos que se intercambian entre ellos conforme a su protocolo de comunicaciones, en este caso HTTP.

Tema creado por Anders Norén