610 likes | 1.39k Views
Modelo OSI y TCP/IP. Modelo de capas y los protocolos. En sistemas en red, la abstracción lleva al concepto del modelo de capas. Se comienza con servicios ofrecidos por la capa física y luego se adiciona una secuencia de capas, cada una de ellas ofreciendo un nivel de servicios más abstracto.
E N D
Modelo de capas y los protocolos • En sistemas en red, la abstracción lleva al concepto del modelo de capas. • Se comienza con servicios ofrecidos por la capa física y luego se adiciona una secuencia de capas, cada una de ellas ofreciendo un nivel de servicios más abstracto. • Un modelo de capas ofrece dos características interesantes: • Descompone el problema de construir una red en partes más manejables (no es necesario construir un sistema monolítico que hace todo) • Proporciona un diseño más modular (si se quiere colocar un nuevo servicio, sólo se debe modificar la funcionalidad de una capa)
Viaje redondo en avión Compra de boletos Confirmar retorno Documentar equipaje Recoger equipaje Embarque Dembarque Despegué Aterrizaje Ruta de vuelo
Proceso de un viaje aéreo en capas de servicios Entrega mostrador a mostrador de [personas y equipaje] Traslado de equipaje: entrega-reclamo Traslado de personas: embarque-desembarque Traslado de la aeronave: pista a pista Ruta de vuelo desde el origen hasta el destino Capas: cada capa implementa un servicio a través de las acciones internas a la capa y solicitando el servicio proporcionado por una capa inferior
ruta de vuelo ruta de vuelo ruta de vuelo Implementación distribuida de la funcionalidad de las capas Confirmar retorno equipaje (reclamo) desembarque aterrizaje Vuelo Boleto (compra) equipaje (entrega) embarque despegue Vuelo Llegada Aeropuerto Salida Aeropuerto tráfico aéreo intermedio
Otra vez: ¿Por qué utilizar capas? • Permite trabajar con sistemas complejos • una estructura explícita permite la identificación de las partes del sistema complejo y la interrelación entre ellas • modelo de referencia de capas para discusiones • la modularidad facilita el mantenimiento y la actualización del sistema • cambios que se realicen en la implementación de un servicio de una capa es transparente para el resto del sistema
Arquitectura OSI • ¿Qué es OSI? • Una sigla: Open Systems Interconnection • Conceptualmente: arquitectura general requerida para establecer comunicación entre computadoras • OSI puede verse de dos formas: • como un estándar • como un modelo de referencia
OSI es un estándar • El desarrollo inicial de las redes de computadores fue promovido por redes experimentales como ARPANet y CYCLADES, seguidos por los fabricantes de computadores (SNA, DECnet, etcétera). • Las redes experimentales se diseñaron para ser heterogéneas (no importaba la marca del computador). Las redes de los fabricantes de equipos tenían su propio conjunto de convenciones para interconectar sus equipos y lo llamaban su “arquitectura de red”
OSI es un estándar • La necesidad de interconectar equipos de diferentes fabricantes se hizo evidente. • En 1977, la ISO (International Organization for Standarization) reconoció la necesidad de crear estándares para las redes informáticas y creó el subcomité SC16 (Open Systems Interconnection) • La primera reunión de éste subcomité se llevo a cabo en marzo de 1978. El modelo de referencia OSI fue desarrollado después de cerca de 18 meses de discusión.
OSI es un estándar • El modelo OSI fue adoptado en 1979 por el comité técnico TC97 (procesamiento de datos), del cual dependía el subcomité SC16 • OSI fue adoptado en 1984 oficialmente como un estándar internacional por la ISO (International Organization of Standards). • Ahora es la recomendación X.200 de la ITU (International Telecommunication Union) y la norma ISO/IEC 7498-1
OSI como Modelo de Referencia • OSI es un modelo de referencia que muestra como debe transmitirse un mensaje entre nodos en una red de datos • El modelo OSI tiene 7 niveles de funciones • No todos los productos comerciales se adhieren al modelo OSI • Sirve para enseñar redes y en discusiones técnicas (resolución de problemas).
¿En qué se fundamenta OSI? • La idea principal en el modelo OSI es que el proceso de comunicación entre dos usuarios en una red de telecomunicaciones puede dividirse en niveles (capas) • En el proceso de comunicación cada nivel pone su granito de arena: el conjunto de funciones que ese nivel “sabe” hacer.
¿Cómo opera el modelo OSI? • Los usuarios que participan en la comunicación utilizan equipos que tienen “instaladas” las funciones de las 7 capas del modelo OSI (o su equivalente) • En el equipo que envía: • El mensaje “baja” a través de las capas del modelo OSI. • En el equipo que recibe: • El mensaje “sube” a través de las capas del modelo OSI
Operación: 1ª aproximación Nodo A Nodo B Al enviar el mensaje “baja” Al recibir el mensaje “sube” El mensaje “viaja” a través de la red En la vida real, las 7 capas de funciones del modelo OSI están normalmente construidas como una combinación de: 1. Sistema Operativo (Windows XP, Win2003, Mac/OS ó Unix) 2. Aplicaciones (navegador, cliente de correo, servidor web) 3. Protocolos de transporte y de red (TCP/IP, IPX/SPX, SNA) 4. Hardware y software que colocan la señal en el cable conectado al computador (tarjeta de red y driver)
Operación: 2ª aproximación Las capas del modelo OSI reciben un nombre de acuerdo a su función. 7 Aplicación 7 Aplicación Al enviar el mensaje “baja” Al recibir el mensaje “sube” 6 Presentación 6 Presentación 5 Sesión 5 Sesión 4 Transporte 4 Transporte 3 Red 3 Red 2 Enlace 2 Enlace Física 1 Física 1 Nodo A Nodo B RED
Implementación de las capas OSI • Las dos primeras capas (física y enlace) generalmente se construyen con hardware y software • El cable, el conector, la tarjeta de red y el driver de la tarjeta pertenecen a los niveles 1 y 2 • Los otros cinco niveles se construyen generalmente con software
Comunicación entre capas • Cada capa ofrece un conjunto de funciones para la capa superior y utiliza funciones de la capa inferior • Cada capa, en un nodo, se comunica con su igual en el otro nodo Capa A Capa A Capa B Capa B NODO 1 NODO 2
Servicios, Interfaces y Protocolos • El modelo OSI distingue entre: • Servicios (funciones): Qué hace la capa • Interfaces: Cómo las capas vecinas pueden solicitar/dar servicios • Protocolos: Reglas para que capas “pares” se comuniquen Capa A Capa A Capa B Capa B NODO 1 NODO 2
Otra forma de ver los protocolos y las interfaces • Otras personas incluyen la “interfaz” y el “protocolo” del modelo OSI como parte del Protocolo. • El protocolo provee un servicio de comunicaciones que elementos (objetos) con un nivel más alto en el modelo de capas (como los procesos de aplicaciones o protocolos de más alto nivel) utilizan para intercambiar mensajes. • En este caso, cada protocolo define dos interfaces diferentes • Una interfaz de servicio hacia otros objetos dentro del mismo computador que desean utilizar el servicio de comunicaciones del protocolo. Esta interfaz define las operaciones que los objetos locales pueden solicitar al protocolo (es la interfaz de OSI). • Una interfaz entre pares (peer-to-peer). Define la forma y el significado de los mensajes intercambiados entre implementaciones del mismo protocolo pero ejecutándose en diferentes nodos para establecer el servicio de comunicaciones (es el protocolo de OSI).
Otra forma de ver los protocolos y las interfaces Nodo 1 Nodo 2 Interfaz de Servicio Objeto de alto nivel Objeto de alto nivel Protocol Interfaz Peer-to-peer Protocol
Más sobre protocolos • Excepto en la capa física, la comunicación entre pares es indirecta. • Cada protocolo se comunica con su “par” pasando los mensajes a otro protocolo de una capa inferior. • Hay que recordar que la palabra protocolo se usa en dos sentidos: • Algunas veces hace referencia a la abstracción de las interfaces (operaciones definidas por la interfaz de servicio y la interfaz entre pares) • Otras veces se refiere al módulo –programa- que implementa en la realidad las dos interfaces.
Operación: 3ª aproximación Puede contener encabezados de las capas 5, 6 y 7 Nodo A Nodo B Aplicación Unidades de Información Aplicación Presentación Presentación Mensaje Sesión Sesión Paquete Transporte Transporte Header 4 DATOS Frame Red Red Header 3 DATOS Enlace Enlace Header 2 DATOS Física Física DATOS bits RED
Encapsulación • Cuando un protocolo de una capa superior envía datos a su par en otro nodo, los entrega al protocolo de la capa inferior. • El protocolo de la capa inferior no sabe si el protocolo de nivel superior envía una imagen, un correo o una secuencia numérica. • Luego el protocolo del nivel inferior, para crear su mensaje, agrega una información de control (header) que es utilizada entre pares para comunicarse entre ellos. • Esta información de control generalmente es colocada al iniciar el mensaje. En algunos casos se anexa información de control al final del mensaje y la llaman trailer. • A los datos entregados por el protocolo de la capa superior, dentro del mensaje, se le llama cuerpo del mensaje o payload. • La operación de “meter” el mensaje del nivel superior detrás de un header o cabecera en el mensaje de nivel inferior se llama encapsulación.
Multiplexamiento y demultiplexamiento • En de cada una de las capas de un modelo de comunicaciones se pueden alojar varios procolos. • Por esto razón, dentro del header que agrega un protocolo al construir el mensaje para su par, ubicado en otro nodo, debe incluir un identificador para indicar a qué protocolo o servicio de la capa superior le pertenece el “payload”. • Este identificador es conocido como llave de multiplexación (demux key) • Cuando el mensaje llega al nodo destino, el protocolo que lo recibe debe retirar el header, mirar la llave de multiplexación y entregar (demultiplexar) la carga útil (payload) al protocolo o aplicación correctos en la capa superior. • En los headers, las llaves de multiplexación se implementan de diferentes maneras: diferentes tamaños (un byte, dos bytes, cuatro bytes) o algunos colocan sólo la identificación de la aplicación destino, otros colocan la aplicación origen y la destino.
Operación: 4ª aproximación (1) Usuario en el Nodo A envía el mensaje “Tengo una idea.” Los datos se encapsulan y se registra a qué protocolo de la capa superior le pertenece la carga útil (payload) Tengo una idea. Tengo una idea. Sesión (5) Tengo una idea. Transp. (4) H4 Tengo una idea. Red (3) H3 H4 Teng H3 o una idea. Enlace (2) H2 H3 H4 Teng T2 H2 H3 o una idea. T2 H2 H3 H4 Teng T2 H2 H3 o una idea. T2 Física (1)
Operación: 4ª aproximación (2) Usuario en el Nodo B recibe el mensaje “Tengo una idea.” Para entregar el mensaje al protocolo correcto, dentro de una capa, se usa la llave de multiplexación. Tengo una idea. Tengo una idea. Sesión (5) Tengo una idea. Transp. (4) H4 Tengo una idea. Red (3) H3 H4 Teng H3 o una idea. Enlace (2) H2 H3 H4 Teng T2 H2 H3 o una idea. T2 H2 H3 H4 Teng T2 H2 H3 o una idea. T2 Física (1)
Los 7 Niveles del modelo OSI Cada nivel (ó capa) tiene unas funciones precisas para resolver determinados problemas de la comunicación (“divide y vencerás”) Nivel OSI Función que ofrece Aplicación Aplicaciones de Red: transferencia de archivos Presentación Formatos y representación de los datos Sesión Establece, mantiene y cierra sesiones Transporte Entrega confiable/no confiable de “mensajes” Red Entrega los “paquetes” y hace enrutamiennto Enlace Transfiere “frames”, chequea errores Física Transmite datos binarios sobre un medio
Nivel de Aplicación (Capa 7) • La capa de aplicación está cerca al usuario (no ofrece servicios a otras capas del modelo OSI) • Es el nivel más alto en la arquitectura OSI • Define la interfaz entre el software de comunicaciones y cualquier aplicación que necesite comunicarse a través de la red. • Las otras capas existen para prestar servicios a esta capa • Las aplicaciones están compuestas por procesos. • Un proceso de aplicación se manifiesta en la capa de aplicaciones como la ejecución de un protocolo de aplicación.
Nivel de Presentación (Capa 6) • Define el formato de los datos que se intercambiarán • Asegura que la información enviada por la capa de aplicación de un nodo sea entendida por la capa de aplicación del otro nodo • Si es necesario, transforma a un formato de representación común • Negocia la sintáxis de transferencia de datos para la capa de aplicación (estructura de datos) • Ejemplo: formato GIF, JPEG ó PNG para imágenes.
Nivel de Sesión (Capa 5) • Define cómo iniciar, coordinar y terminar las conversaciones entre aplicaciones (llamadas sesiones). • Administra el intercambio de datos y sincroniza el diálogo entre niveles de presentación (capa 6) de cada sistema • Ofrece las herramientas para que la capa de aplicación, la de presentación y la de sesión reporten sus problemas y los recursos disponibles para la comunicación (control del diálogo –sesión- entre aplicaciones) • Lleva control de qué flujos forman parte de la misma sesión y qué flujos deben terminar correctamente
Nivel de Transporte (Capa 4) • Proporciona un número amplio de servicios. Asegura la entrega de los datos entre procesos que han establecido una sesión y que se ejecutan en diferentes nodos • Evita que las capas superiores se preocupen por los detalles del transporte de los datos hasta el proceso correcto • Hace multiplexamiento para las aplicaciones • ¿cuál es la aplicación/servicio destino/origen? • Segmenta bloques grandes de datos antes de transmitirlos (y los reensambla en le nodo destino) • Asegura la transmisión confiable de los mensajes • No deja que falten ni sobren partes de los mensajes trasmitidos (si es necesario, hace retransmisión de mensajes) • hace control de flujo y control de congestión
Nivel de Red (Capa 3) • Entrega los paquetes de datos a la red correcta, al nodo correcto, buscando el mejor camino (es decir, permite el intercambio de paquetes). • Evita que las capas superiores se preocupen por los detalles de cómo los paquetes alcanzan el nodo destino correcto • En esta capa se define la dirección lógica de los nodos • Esta capa es la encargada de hacer el enrutamiento y el direccionamiento • Enrutamiento: ¿cuál es el mejor camino para llegar a la red destino? • Direccionamiento: ¿cuál es el nodo destino?
Nivel de Enlace (Capa 2) • Inicia, mantiene y libera los enlaces de datos entre dos nodos. • Hace transmisión confiable (sin errores) de los datos sobre un medio físico (un enlace) • Define la dirección física de los nodos • Construye los “frames” • También debe involucrarse con el orden en que lleguen los frames, notificación de errores físicos, reglas de uso del medio físico y el control del flujo en el medio. • Es diferente de acuerdo a la topología de red y al medio utilizado.
Nivel Físico (Capa 1) • Define las características mecánicas, eléctricas y funcionales para establecer, mantener, repetir, amplificar y desactivar conexiones físicas entre nodos • Acepta un “chorro” de bits y los transporta a través de un medio físico (un enlace) • Nivel de voltaje, sincronización de cambios de voltaje, frecuencia de transmisión, distancias de los cables, conectores físicos y asuntos similares son especificados en esta capa.
Arquitectura OSI End system End system Aplicación Aplicación Presentación Presentación Intermediate systems Sesión Sesión Transporte Transporte Red Red Red Red Enlace Enlace Enlace Enlace Física Física Física Física Uno o más nodos dentro de la Red
Perspectivas del modelo OSI • El modelo OSI permite trabajar con la complejidad de los sistemas de comunicación de datos • Las implementaciones de arquitecturas de red reales no cumplen (o lo hacen parcialmente) con el Modelo OSI: • TCP/IP, SNA, Novell Netware, DECnet, AppleTalk, etc.
Perspectivas del modelo OSI • Se intentó construir una implementación del modelo OSI • A finales de los 80, el gobierno de EEUU quiso establecer GOSIP (Government Open Systems Interconnect Profile) como algo obligatorio. NO funcionó. Perdió vigencia en 1995 • ¿Qué sucederá con OSI? • Los protocolos de la implementación OSI desarrollada son demasiado complejos y tienen fallas • Están implementados de manera muy regular • Sin embargo, TCP/IP sigue mejorando continuamente • El modelo OSI sigue siendo un modelo pedagógico.
¿Qué es TCP/IP? • El nombre “TCP/IP” se refiere a una suite de protocolos de datos. • Una colección de protocolos de datos que permite que los computadores se comuniquen. • El nombre viene de dos de los protocolos que lo conforman: • Transmission Control Protocol (TCP) • Internet Protocol (IP) • Hay muchos otros protocolos en la suite
TCP/IP e Internet • TCP/IP son los protocolos fundamentales de Internet (Aunque se utilizan para Intranets y Extranets) • Stanford University y Bold, Beranek and Newman (BBN) presentaron TCP/IP a comienzos de los 70 para una red de conmutación de paquetes (ARPANet). • La arquitectura de TCP/IP ahora es definida por la Internet Engineering Task Force (IETF)
¿Por qué es popular TCP/IP? • Los estándares de los protocolos son abiertos: interconecta equipos de diferentes fabricantes sin problema. • Independiente del medio de transmisión físico. • Un esquema de direccionamiento amplio y común. • Protocolos de alto nivel estandarizados (¡muchos servicios!)
“Estándares” de TCP/IP • Para garantizar que TCP/IP sea un protocolo abierto los estándares deben ser públicamente conocidos. • La mayor parte de la información sobre los protocolos de TCP/IP está publicada en unos documentos llamados Request for Comments (RFC’s) - Hay otros dos tipos de documentos: Military Standards (MIL STD), Internet Engineering Notes (IEN) -.
Aplicación Aplicación Presentación Transporte Sesión Internet Transporte Acceso de Red Red Enlace Física Arquitectura de TCP/IP (cuatro capas) No hay un acuerdo sobre como representar la jerarquía de los protocolos de TCP/IP con un modelo de capas (utilizan de tres a cinco). Aplicaciones y procesos que usan la red Servicios de entrega de datos entre nodos Define el datagrama y maneja el enrutamiento Rutinas para acceder el medio físico
aplicación: soporta las aplicaciones de la red FTP, SMTP, HTTP transporte: transferencia de datos host to host TCP, UDP red: enrutamiento de datagramas desde la fuente al destino IP, protocolos de enrutamiento enlace: transferencia de datos entre elementos de red vecinos PPP, Ethernet física: bits “en el cable” aplicación transporte red enlace física Pila de protocolos de Internet (cinco capas)
Cada capa: distribuida Las “entidades” implementan las funciones de cada capa en cada nodo las entidades realizan acciones, e intercambian mensajes con sus “iguales” red enlace física aplicación transporte red enlace física aplicación transporte red enlace física aplicación transporte red enlace física aplicación transporte red enlace física Capas: comunicación lógica
Transporte toma datos de la aplicación agrega direccionamiento, agrega información de chequeo de confiabilidad para formar el “datagrama” envía el datagrama al otro nodo espera el acuse de recibo (ack) del otro nodo analogía: la oficina postal red enlace física aplicación transporte red enlace física aplicación transporte red enlace física aplicación transporte red enlace física aplicación transporte red enlace física datos datos datos ack Capas: comunicación lógica transporte transporte
red enlace física aplicación transporte red enlace física aplicación transporte red enlace física aplicación transporte red enlace física aplicación transporte red enlace física datos datos Capas: comunicación física
Capa de aplicación Capa de transporte Header DATOS Capa Internet Header Header DATOS Header Header Header DATOS Capa de Acceso de Red Encapsulación de datos • Cada capa de la pila TCP/IP adiciona información de control (un “header”) para asegurar la entrega correcta de los datos. • Cuando se recibe, la información de control se retira. DATOS
M M H H H H H H H H H H H H t t t t l n l t n n t n M M M M aplicación transporte red enlace física aplicación transporte red enlace física M M Capas de los protoclos y los datos Cada capa toma los datos de la capa superior • agrega información de control (header) y crea una nueva unidad de datos • pasa esta nueva unidad a la capa inferior origen destino mensaje segmento datagrama frame
Ubicación de los protocolos de TCP/IP en el Modelo de Referencia OSI (Open Systems Interconnection) EL MODEM ESTÁ EN LA CAPA 1 Modem Modem Llegó Solicitud DNS Red del Campus AQUÍ ESTÁ LA TARJETA DE RED Y EL DRIVER
Representación alternativa de la Arquitectura de Internet • Diseño en forma de clepsidra (reloj de arena) • Aplicación vs. Protocolo de Aplicación (FTP, HTTP) FTP HTTP SNMP TFTP UDP TCP IP … RED RED RED 2 1 n