Planificación y Administración de Redes/Tema 2/Arquitecturas de comunicaciones
Cuando se diseña una red de ordenadores, es necesario resolver una gran cantidad de problemas que aparecen: ¿hay que compartir un único medio de transmisión?; ¿cómo distinguimos unos ordenadores de otros?; ¿qué tipo de información se va a transmitir?; ¿se manejará información confidencial? Es evidente que una persona no debe enfrentarse directamente a todas estas cuestiones, sino que siempre es preferible tratarlas una a una y de forma aislada.
La arquitectura de una red viene definida por tres características fundamentales, que dependen de la tecnología que se utilice en su construcción:
- Topología: la topología de una red es la organización de su cableado, ya que define la configuración básica de la interconexión de estaciones y, en algunos casos, el camino de una transmisión de datos sobre el cable.
- Método de acceso a la red: todas las redes que poseen un medio compartido para transmitir la información, necesitan ponerse de acuerdo a la hora de enviar información, ya que no pueden hacerlo a la vez. En este caso, si dos estaciones transmiten a la vez en la misma frecuencia, la señal recogida en los receptores será una mezcla de las dos. Para las redes que no posean un medio compartido, el método de acceso al cable es trivial y no es necesario llevar a cabo ningún control para transmitir.
- Protocolos de comunicaciones: son las reglas y procedimientos utilizados en una red para realizar la comunicación. Esas reglas tienen en cuenta el método utilizado para corregir errores, establecer una comunicación, etc.
Aunque a primera vista parezca que el diseño de un sistema de comunicación parece simple, cuando se aborda resulta mucho más complejo, ya que es necesario resolver una serie de problemas. Algunos de los problemas más importantes a los que se enfrentan los diseñadores de redes de comunicaciones son:
- Encaminamiento: cuando existen diferentes rutas posibles entre el origen y el destino (si la red tiene una topología de malla o irregular), se debe elegir una de ellas (normalmente, la más corta o la que tenga un tráfico menor).
- Direccionamiento: puesto que una red normalmente tiene muchos ordenadores conectados, se requiere un mecanismo para que un proceso (programa en ejecución) en una máquina especifique con quién quiere comunicarse. Como consecuencia de tener varios destinos, se necesita alguna forma de direccionamiento que permita determinar un destino específico.
- Acceso al medio: en las redes donde existe un medio de comunicación de difusión, debe existir algún mecanismo que controle el orden de transmisión de los interlocutores. De no ser así, todas las transmisiones se interfieren y no es posible llevar a cabo una comunicación en óptimas condiciones. El control de acceso al medio en una red es muy similar a una comunicación mediante walkie-talkie, donde los dos interlocutores deben evitar hablar a la vez o se producirá una colisión. Esta situación es indeseable en las redes que usan un medio compartido, ya que los mensajes se mezclan y resulta imposible interpretarlos.
- Saturación del receptor: esta cuestión suele plantearse en todos los niveles de la arquitectura y consiste en que un emisor rápido pueda saturar a un receptor lento. En determinadas condiciones, el proceso en el otro extremo necesita un tiempo para procesar la información que le llega. Si ese tiempo es demasiado grande en comparación con la velocidad con la que le llega la información, será posible que se pierdan datos. Una posible solución a este problema consiste en que el receptor envíe un mensaje al emisor indicándole que está listo para recibir más datos.
- Mantenimiento del orden: algunas redes de transmisión de datos desordenan los mensajes que envían, de forma que, si los mensajes se envían en una secuencia determinada, no se asegura que lleguen en esa misma secuencia. Para solucionar esto, el protocolo debe incorporar un mecanismo que le permita volver a ordenar los mensajes en el destino. Este mecanismo puede ser la numeración de los fragmentos, por ejemplo.
- Control de errores: todas las redes de comunicación de datos transmiten la información con una pequeña tasa de error, que en ningún caso es nula. Esto se debe a que los medios de transmisión son imperfectos. Tanto emisor como receptor deben ponerse de acuerdo a la hora de establecer qué mecanismos se van a utilizar para detectar y corregir errores, y si se va a notificar al emisor que los mensajes llegan correctamente.
- Multiplexación: en determinadas condiciones, la red puede tener tramos en los que existe un único medio de transmisión que, por cuestiones económicas, debe ser compartido por diferentes comunicaciones que no tienen relación entre sí. Así, el protocolo deberá asegurar que todas las comunicaciones que comparten el mismo medio no se interfieran entre sí.
Los primeros ingenieros de comunicaciones se dieron cuenta de que el proceso de comunicación entre computadoras se podía dividir en capas, y de que abordar cada una de estas capas por separado facilitaba enormemente la tarea de diseño de protocolos y estándares para redes.
Al ocuparse cada una de las capas de ciertos aspectos concretos del proceso de comunicación, se libera de tales aspectos al resto de las capas, simplificando así el diseño de la red.
Modelo de referencia OSI y arquitectura TCP/IP
[editar]Niveles y equivalencia
[editar]A mediados de los años setenta empezaron a aparecer los primeros estándares para redes. La ISO comenzó a elaborar un modelo arquitectónico de referencia al que llamaron modelo de interconexión de sistemas abiertos (OSI: Open Systems Interconnection). Surgió como un intento de unificar esfuerzos, conocimientos y técnicas para elaborar un modelo de arquitectura basado en capas que sirviera como referencia a los distintos fabricantes de la época para construir redes compatibles entre sí. La publicación final del modelo OSI no llegó hasta 1984 y el modelo obtenido resultó ser demasiado complejo y de difícil implementación.
También durante la década de los setenta, DARPA evolucionó su red ARPANET y dio origen a la pila de protocolos TCP/IP, que, por su sencillez y su visión más práctica, empezó a ganar popularidad. TCP/IP acabó convirtiéndose en el estándar de facto de arquitectura en las redes de ordenadores, desbancando así al modelo OSI.
El modelo OSI, sin embargo, continúa siendo de gran importancia, ya que nos permite describir y comprender fácilmente la base conceptual del resto de arquitecturas de red.
Niveles OSI
[editar]Físico
[editar]La capa física abarca el interfaz físico entre los dispositivos y las reglas por las cuales se pasan los bits de uno en uno. Se encarga de proporcionar el soporte material para la transmisión de la información. La capa física tiene cuatro características importantes:
- Mecánicas: normalmente, incluye la especificación de un conector que une una o más señales del conductor, llamadas circuitos.
- Eléctricas: relaciona la representación de los bits y la tasa de transmisión de datos
- Funcional: especifica las funciones realizadas por los circuitos individuales de la interfaz física entre un sistema y el medio de transmisión.
- De procedimiento: especifica la secuencia de eventos por los que se intercambia un flujo de bits a través del medio físico.
Enlace de datos
[editar]Esta capa intenta hacer el enlace físico seguro y proporciona medios para activar, mantener y desactivar el enlace. El principal servicio proporcionado por la capa de enlace de datos a las capas superiores es el de detección de errores y control.
Red
[editar]Esta capa proporciona los medios para la transferencia de información entre sistemas finales a través de algún tipo de red de comunicación. Libera a las capas superiores de la necesidad de tener conocimiento sobre la transmisión de datos subyacente y las tecnologías de conmutación utilizadas para conectar los sistemas.
Transporte
[editar]Esta capa proporciona un mecanismo para intercambiar datos entre sistemas finales. El servicio de transporte orientado a conexión asegura que los datos se entregan libres de errores, en secuencia y sin pérdidas o duplicados.
Sesión
[editar]Esta capa proporciona los mecanismos para controlar el diálogo entre aplicaciones en sistemas finales. En muchos casos, habrá poca o ninguna necesidad de los servicios de la capa de sesión, pero para algunas aplicaciones, estos servicios se utilizan. Por ejemplo, definir la disciplina del diálogo: full-duplex o semi-duplex.
Presentación
[editar]Esta capa define el formato de los datos que se van a intercambiar entre las aplicaciones y ofrece a los programas de aplicación un conjunto de servicios de transformación de datos. Algunos ejemplos de los servicios específicos que se podrían realizar en esta capa son los de compresión y cifrado de datos.
Aplicación
[editar]Esta capa proporciona un medio a los programas de aplicación para que accedan al entorno OSI. Se considera que residen en esta capa las aplicaciones de uso general como transferencia de ficheros, correo electrónico y acceso terminal a computadores remotos. Proporciona un servicio al usuario final.
Arquitectura TCP/IP
[editar]Algunos de los protocolos de TCP/IP
[editar]Unidades de Datos de Protocolo (PDU)
[editar]PDU es la abreviatura de Protocol Data Unit (unidad de datos del protocolo). Su función principal es establecer una comunicación de datos entre capas homologas. Esta forma de establecer conexiones recibe el nombre de comunicación par-a-par.
La primera PDU corresponde a los datos que llegan a la capa de aplicación. Aquí se les añade una cabecera y la PDU pasa al nivel siguiente, el de presentación en el modelo OSI, el de transporte en la arquitectura TCP/IP.
A partir de aquí, y en cada uno de los niveles subsiguientes, a la PDU recibida se le añadirá una cabecera y será enviada al nivel inferior, y así sucesivamente hasta llegar al nivel físico, donde los datos serán enviados como bits.
PDUs de OSI
[editar]PDUs de TCP/IP
[editar]En la arquitectura TCP/IP cada PDU recibe un nombre específico:
- Capa de aplicación: Datos
- Capa de transporte: Segmentos (cuando el protocolo empleado es TCP) o Datagramas (cuando el protocolo empleado es UDP)
- Capa de red: Paquetes
- Capa de acceso a la red: Tramas
- Capa física: Flujo de bits
Encapsulación
[editar]Como se observa en las PDUs, éstas están formadas por una cabecera propia de cada nivel y datos. La PDU (Cabecera y Datos) de una capa superior se trata como datos por la capa inmediatamente inferior. Esta capa inferior le añade su propia cabecera y pasa toda la información a la capa inferior.
El resultado de todo esto es que los datos originales cada vez poseen más cabeceras (una por cada capa) a medida que descienden por la pila.
En el equipo destino se irán quitando las cabeceras en orden inverso a como se añadieron. Cada capa leerá la cabecera que contiene los datos de control destinados a ella.