En cualquier comunicación, bien sea entre personas o entre máquinas, siempre hace falta una serie de normas que regulen dicho proceso. Cuando las comunicaciones son entre personas, las normas las establece la sociedad y son aplicadas por cada persona de acuerdo con la educación que haya recibido. En el caso de las máquinas, las normas las establecen los organismos internacionales de normalización y son aplicadas por los ordenadores de acuerdo con el protocolo que se tenga instalado. Veamos cómo funcionan los protocolos de internet.
Existen reuniones de personas en las que una de ellas es la que controla toda la comunicación, dando la palabra en cada momento a la persona que estime oportuno de acuerdo con los que hayan manifestado su intención de hablar. También existen reuniones en las que el que logra hablar es el que «primero salta». Pues bien, de manera similar, existen redes de ordenadores donde uno de ellos es el que controla toda la comunicación (sistemas centralizados), como también existen redes donde el ordenador que transmite por la red es el primero que la encuentra vacía (por ejemplo, redes locales Ethernet).
Obviamente, aunque existen similitudes de procedimientos, la diferencia fundamental entre personas y máquinas es que las personas están dotadas de inteligencia y pueden adaptarse fácilmente a situaciones imprevistas, esto es, tienen inventiva y capacidad de resolver situaciones nuevas. Los ordenadores, sin embargo, deben tener protocolos muy estrictos que tengan previstos todos los posibles casos que se puedan presentar en una comunicación sin dejar nada al azar.
En definitiva, un protocolo no es más que un conjunto de reglas que emplean dos equipos informáticos para dialogar entre sí de forma que puedan establecer y mantener una comunicación libre de errores.
En un principio, cada fabricante establecía los procedimientos de comunicación de sus equipos, siendo casi imposible conectar equipos de fabricantes distintos. Con la expansión de la informática, se hizo evidente que era necesario disponer de protocolos normalizados que permitiesen la interconexión de equipos independientemente de su fabricante. Con esta idea, a lo largo de los años se han ido imponiendo distintos protocolos, cada uno de los cuales ha dominado en un campo de aplicación concreto. Tal es el caso de Ethernet en redes de área local cableada o Wi-Fi en redes de área local inalámbrica.
El modelo de capas de los protocolos de comunicaciones
Los protocolos de comunicaciones se deben ocupar de definir todos y cada uno de los detalles de una comunicación. Esto incluye desde el aspecto físico de los conectores, los niveles de tensiones eléctricas o las frecuencias a utilizar, hasta la forma de dividir la información en paquetes, cómo enrutar los datos o qué combinación de bits, de ceros y unos, representa a la letra A.
Por otro lado, hay que tener en cuenta que el proceso de comunicación no depende de una única empresa. En el mercado existen empresas que fabrican conectores, otras fabrican tarjetas de red, otras operan redes de comunicaciones, otras desarrollan aplicaciones e, incluso otras, ofrecen servicios finales. Lo cierto es que ninguna de estas empresas existiría sin las demás. Para que distintas empresas, distintos grupos de trabajo, puedan desarrollar su labor de forma independiente se ha definido un modelo en el cual se divide el proceso de la comunicación en partes independientes, llamadas capas (layer en inglés). Cada una de estas capas tiene definida una función específica, así como la forma de relacionarse con sus capas vecinas (interfaz). Este modelo de trabajo se conoce con el nombre de modelo de referencia OSI o modelo de capas.
Otra de las ventajas de hacer una división por capas es que cada una de ellas puede ser normalizada, regulada de forma independiente. Si se desarrolla una nueva tecnología de cualquier aspecto de la comunicación, bastará con definir las normas de la capa correspondiente manteniendo intacta la interfaz con las capas vecinas.
Por ejemplo, la tecnología Wi-Fi sólo afecta a las dos primeras capas del modelo OSI, permaneciendo invariable el resto de capas. Gracias a esto, un ordenador que no tuviese Wi-Fi podría mantener una comunicación inalámbrica simplemente añadiéndole una tarjeta Wi-Fi. El resto de componentes de la comunicación son los mismos: se utiliza el mismo programa navegador, la conexión con el proveedor de acceso de internet es la misma y la forma de trabajar en internet también.
La Organización Internacional para la Normalización, ISO, propuso un modelo de comunicación llamado OSI (Open System Interconnection, ‘Interconexión de Sistemas Abiertos’). Este modelo está basado en la existencia de siete capas: física, enlace, red, transporte, sesión, presentación y aplicación.
Por otro lado, cuando se va a transmitir una información, representada por un conjunto de bits (una larga ristra de ceros y unos), éstos se dividen en paquetes pequeños de una longitud determinada, por ejemplo, de 1024 bits. Cada capa le va añadiendo a cada paquete sus propios bits de control (su propia cabecera). El resultado es que el tamaño total del paquete va creciendo hasta llegar a la capa más baja. En el destino, cada capa va eliminando su cabecera correspondiente hasta que, finalmente, le llega la información original a la capa de aplicación, que es la que se relaciona con el usuario. Por ejemplo, esta capa es la que presenta el texto del correo electrónico en la pantalla del usuario.
El modelo de los protocolos de internet
Internet utiliza un conjunto de protocolos conocido como TCP/IP (Transmission Control Protocol/Internet Protocol, ‘Protocolo de Control de Transmisión/Protocolo Internet’). Aunque estos protocolos se desarrollaron con anterioridad a que quedase definido el modelo OSI, posteriormente se ha estructurado siguiendo ese modelo. La diferencia principal es que el modelo de internet, o TCP/IP, agrupa las tres últimas capas de OSI en una. El significado de cada capa es el siguiente:
- Capa física. Esta capa se ocupa de las propiedades físicas que utilizarán los equipos de comunicaciones. Por ejemplo, niveles de tensiones, frecuencias de radio, codificación de las señales, dimensiones de los conectores, etc.
- Capa de enlace (también conocida como capa MAC). Ésta se ocupa de organizar las señales eléctricas (o de otra naturaleza, por ejemplo, radioeléctricas) que representan los datos para que puedan viajar de un equipo a otro de una red de una forma fiable (sin errores). Esto incluye dos funciones principales: facilitar los mecanismos para que las señales eléctricas lleguen inequívocamente al destinatario y permitir interconectar distintas redes entre sí (bridging). La capa de enlace proporciona el control de la capa física.
- Capa de red (también recibe los nombres de capa Internet, Inter-red o capa IP). Esta capa organiza las cosas para que distintas comunicaciones puedan hacer uso de una infraestructura común, una red. Por ejemplo, aquí están definidos cómo se identifican los terminales (numeración) o cómo se enrutan los datos. En los protocolos de comunicaciones donde no se hace uso de una red no sería necesario definir esta capa.
- Capa de transporte (también se la conoce como capa TCP). Define los mecanismos para poder intercambiar datos entre los sistemas finales. Esto significa que se encarga de establecer, mantener y dar por terminada una comunicación entre dos equipos distantes interconectados por una red. Por ejemplo, es responsable de asegurar que los datos recibidos se corresponden con los enviados.
- Capa aplicación. Equivalente a las capas de sesión, presentación y aplicación del modelo OSI. Se ocupan de: (1) Controlar el flujo de información, organizando y sincronizando el intercambio de datos entre aplicaciones concretas; (2) Definir el formato de los datos, convirtiendo los formatos de datos particulares (formatos de archivos, de caracteres ASCII, EBCDIC, etc.) en un formato común que es independiente del tipo de ordenador o de la aplicación utilizada. En el otro extremo se realizará la conversión inversa antes de entregar los datos al ordenador o aplicación de destino. (3) Definir cómo interactúan los datos con las aplicaciones específicas que esté utilizando el usuario (correo electrónico, navegador, etc.).
Las capas física y de enlace están estrechamente unidas, por lo que en muchos casos, el mismo protocolo se encarga de definir ambas capas. Éste es el caso, por ejemplo, del protocolo Wi-Fi (IEEE 802.11b). Este protocolo define las capas física y de enlace que permiten crear una red local inalámbrica. De hecho, en muchos documentos se definen estas dos capas como una sola. En este caso se le da el nombre de capa de acceso a red (Network Access Layer).
Como a cada pequeña regulación de una comunicación se le llama protocolo, para establecer una comunicación hay que utilizar un conjunto de protocolos. El conjunto de protocolos de internet contempla más de 100 protocolos distintos. Donde existe una mayor diversidad es en la capa física y de enlace por un lado, y en la capa aplicación por otro. Sin embargo, todas las comunicaciones de internet coinciden en que la capa de red siempre es IP, y la capa de transporte es TCP (o UDP en algún caso). Este es el motivo por el que al modelo se le conoce también como TCP/IP.
Por ejemplo, el acceso de un equipo a una red puede hacerse a través de cable Ethernet, Wi-Fi, llamada telefónica, etc. Cada una de estas modalidades supone la utilización de protocolos distintos al nivel físico y de enlace. Por otro lado, cada aplicación de internet (Web, correo electrónico, transferencia de archivos, etc.) utiliza sus propios protocolos en la capa aplicación. No obstante, las comunicaciones de las capas intermedias (de red y transporte) siguen siendo las mismas.
Paquetes y cabeceras del protocolo de internet
Como hemos visto, cada capa del modelo de comunicaciones tiene sus propias responsabilidades y, para llevarlas a cabo, necesita añadir unos ciertos datos de control. Estos datos de control son añadidos en el origen por cada capa antes de pasarle el paquete a la capa inferior. Cuando llega la información al destino, cada capa identifica sus datos de control correspondientes, los interpreta, actúa en consecuencia y, si procede, elimina esos datos de control y pasa el paquete a la capa superior.
En un intercambio normal de información, cada capa en el destino recibe de la capa inferior los mismos datos que dicha capa le pasó a la inferior en el origen. De manera efectiva es como si los datos que salen de una capa en el origen le llegasen directamente a esa misma capa en el destino. Por tanto, los datos que salen de la aplicación del origen le llegan directamente a la aplicación del destino, lo que supone el propósito de la comunicación.
Como se ha visto anteriormente, para que la comunicación pueda estar controlada en todo momento, el flujo de información se divide en trozos pequeños, llamados paquetes, que son enviados y gestionados independientemente. Cada paquete puede tener un tamaño entre 576 y 65.535 bytes.
La gran ventaja de este sistema de paquetes es que, en el caso de detectarse un error, el paquete afectado se vuelve a enviar y se sigue con la comunicación. Si no se dividiera la información en pequeños paquetes, en el caso de producirse un error, habría que empezar de nuevo desde el principio, con la pérdida de tiempo que esto supone.
Los paquetes tienen una estructura que se compone de dos partes: cabecera (header en inglés) y cuerpo (body en inglés). La cabecera contiene los datos de control, y el cuerpo la información.
Uno de los datos que contiene la cabecera es la dirección IP del destinatario. Esto le permite a cada paquete alcanzar su destino independientemente del resto de paquetes. Por otro lado, cada paquete puede seguir un camino distinto, por lo que podrían llegar en distinto orden. Para garantizar el reensamblado en el orden correcto, también se incluye en la cabecera un número secuencial de ensamblado.
Si nos fijamos, este modelo de cabecera y cuerpo no es nuevo. El envío postal tradicional utiliza un sistema similar. Se escribe una carta, se introduce en un sobre y se escribe sobre él los datos de la dirección de destino, incluyendo, calle, número, ciudad, código postal, etc. El sobre constituye la cabecera, mientras que el papel que va en su interior es el cuerpo. La empresa de correos maneja los datos del sobre como si se tratara de un modelo de capas.
Primero se analiza el código postal para saber a qué zona enviar la carta (capa código postal). En el análisis del código postal no se mira el resto de datos que conforman la dirección. Al llegar la carta al distrito postal correspondiente se mira la calle para saber qué cartero hará el reparto (capa calle). A continuación, el cartero comprueba el resto de datos de la dirección para entregar la carta a su destinatario (capa destinatario). Por cierto, el cartero ya no se fija en el código postal, ese dato de cabecera es de la capa código postal. Por otro lado, nadie de la empresa de correos necesita mirar el contenido del sobre para entregarlo en su destino.
Más información sobre los protocolos de internet
En este artículo se han abordado los protocolos de internet. El funcionamiento de la red internet es un tema muy extenso y de gran interés. En este blog se dispone de otros artículos relacionados por lo que, si necesita ampliar la información, le invitamos a utilizar el buscador de contenidos que tenemos en la cabecera.
Por si es de su interés, le sugerimos estos otros artículos relacionados:
- Cómo funciona el correo electrónico o email
- Qué son los DNS y cómo funcionan
- Firewall: Tecnología, configuración y estrategias de seguridad
REF: FW-PG39