Arquitecturas y modelos de referencia Mara del Carmen Romero Ternero mcromero@dte.us.es Despacho G1.47 1 planta L3 http://www.dte.us.es/personal/mcromero Curso 2004/2005 Atribucin-NoComercial-LicenciarIgual 2.5 Tu eres libre de: copiar, distribuir, comunicar y ejecutar pblicamente la obra hacer obras derivadas Bajo las siguientes condiciones: Atribucin. Debes reconocer y citar la obra de la forma especificada por el autor o el licenciante. No Comercial. No puedes utilizar esta obra para fines comerciales. Licenciar Igual. Si alteras o transformas esta obra, o generas una obra derivada, slo puedes distribuir la obra generada bajo una licencia idntica a sta. Al reutilizar o distribuir la obra, tienes que dejar bien claro los trminos de la licencia de esta obra. Alguna de estas condiciones puede no aplicarse si se obtiene el permiso del titular de los derechos de autor Los derechos derivados del uso legtimo, del agotamiento u otras limitaciones o excepciones reconocidas por la ley no se ven afectados por lo anterior. Esto es un resumen simple del texto legal. La licencia completa est disponible en: http://creativecommons.org/licenses/by-nc-sa/2.5/legalcode Attribution-NonCommercial-ShareAlike 2.5 You are free: to copy, distribute, display, and perform the work to make derivative works Under the following conditions: Attribution. You must attribute the work in the manner specified by the author or licensor. Noncommercial. You may not use this work for commercial purposes. Share Alike. If you alter, transform, or build upon this work, you may distribute the resulting work only under a license identical to this one. For any reuse or distribution, you must make clear to others the license terms of this work. Any of these conditions can be waived if you get permission from the copyright holder. Your fair use and other rights are in no way affected by the above. This is a human-readable summary of the Legal Code. Read the full license at: http://creativecommons.org/licenses/by-nc-sa/2.5/legalcode Mara del Carmen Romero Ternero mcromero@dte.us.es 2 Introduccin Aos 60-70: Protocolos de comunicaciones propietarios, incompatibles y heterogneos Multiplicidad de fabricantes, plataformas, equipos, aplicaciones... Necesidad de una estructuracin en el proceso de comunicacin Seria preocupacin por la estandarizacin de protocolos y fijacin de criterios de normalizacin 1972: Proyecto ARPAnet (DoD) TCP/IP 1984: Modelo OSI (ISO 7498) Mara del Carmen Romero Ternero mcromero@dte.us.es 3 Arquitecturas y modelos Provienen de desarrollos individuales, bajo el auspicio de organismos internacionales (ISO, ITU-T, IEEE), fabricantes (IBM, HP, Apple, Cisco) y operadores (AT&T, BT) Ejemplos: IBM: SNA (Systems Network Architecture ) ISO: Modelo OSI (Open Systems Interconnection) DoD, IETF: TCP/IP Operadores: X.25 Mara del Carmen Romero Ternero mcromero@dte.us.es 4 Arquitecturas de red Organismos estandarizadores organizan grupos de trabajo para reducir la complejidad: Para afrontar el diseo y el estudio Cada grupo se encarga de una capa o nivel Cada capa agrupa un conjunto de funciones bien definidas Arquitectura de red: conjunto de capas y protocolos Caractersticas de las arquitecturas de red: Definen protocolos, estndares y formatos de mensajes Establecen reglas para el desarrollo de productos Estn sometidas a evolucin y cambio continuos Mara del Carmen Romero Ternero mcromero@dte.us.es 5 Diseo de arquitectura de red La comunicacin extremo a extremo se descompone en niveles para separar funciones distintas, de modo que: Exista una capa para funciones diferenciadas y definidas Se minimice el flujo entre distintas capas Sea posible normalizar fcilmente la interfaz entre capas Se busque un compromiso entre un nmero grande (diferenciacin de funciones) y manejable (simplicidad) de capas La jerarquizacin en capas implica: Cada capa realiza un conjunto de funciones, resolviendo un problema diferente de la comunicacin Cada capa se sustenta en la capa inmediatamente inferior Cada capa proporciona servicios a la capa inmediatamente superior Los cambios en una capa no implicarn cambios en las otras capas Mara del Carmen Romero Ternero mcromero@dte.us.es 6 Por qu usar diseo estructurado? Reduce la complejidad del desarrollo Estandariza interfaces Facilita la tcnica modular Asegura la interoperabilidad de la tecnologa Acelera la evolucin Simplifica la enseanza y el aprendizaje Mara del Carmen Romero Ternero mcromero@dte.us.es 7 Consideraciones de diseo estructurado Delimitar la funcionalidad bsica de cada capa Interfaces con las capas superior e inferior Reglas de transferencias de datos Smplex, Semidplex, Dplex Identificacin de remitente y destinatario Procedimientos de correccin de errores Ordenacin de la informacin Control de flujo Segmentacin y reensamblado Encaminamiento Mara del Carmen Romero Ternero mcromero@dte.us.es 8 Niveles, entidades y SAPs Comunicacin vertical: Fsica En el mismo equipo Comunicacin horizontal: Lgica Protocolo par; protocolo de capa N Entre equipos diferentes Entidad: Elemento activo en el sistema Usa protocolos para proporcionar servicios Entidad par Interfaz: Define servicios y operaciones primitivas ofrecidas a las entidades de la capa superior en el SAP Mara del Carmen Romero Ternero mcromero@dte.us.es 9 Un ejemplo tpico Mara del Carmen Romero Ternero mcromero@dte.us.es 10 Funciones, servicios y primitivas Funciones: Conjunto de tareas desempeadas en un nivel o capa. Ejemplo: funcin de traduccin. Servicios: Conjunto de prestaciones ofrecidas por un nivel (proveedor) a su nivel inmediatamente superior (usuario). Se especifican formalmente por un conjunto de primitivas u operaciones Ejemplo: servicio de traduccin Primitivas: Conjunto de estructuras de informacin que implementan los servicios de un nivel Tipos: Solicitud (Request) emitida por el usuario del servicio en origen Indicacin (Indication) emitida por el suministrador del servicio (por iniciativa propia o no) Respuesta (Response) emitida por el usuario del servicio en destino Confirmacin (Confirmation) emitida por el suministrador del servicio Mara del Carmen Romero Ternero mcromero@dte.us.es 11 Funciones, servicios y primitivas Confirmados: Requieren una respuesta Implementan las cuatro primitivas No confirmados: No requieren respuesta Implementan solicitud e indicacin Parcialmente confirmados: Responde el proveedor Implementan solicitud, indicacin y confirmacin Iniciados por el proveedor: Al detectar una condicin Implementan indicacin en ambos sentidos Mara del Carmen Romero Ternero mcromero@dte.us.es 12 Primitivas Mara del Carmen Romero Ternero mcromero@dte.us.es 13 Protocolos Protocolo: conjunto de reglas que determinan el formato y significado del intercambio de datos entre dos entidades pares que se comunican entre s. Para ello, define: El formato de los mensajes a intercambiar. Las reglas de intercambio de mensajes. Las entidades usan protocolos para proporcionar servicios. Mara del Carmen Romero Ternero mcromero@dte.us.es 14 Unidades de datos y encapsulamiento Mara del Carmen Romero Ternero mcromero@dte.us.es 15 Estandarizacin de redes Estndar de iure Generado por un comit con estatus legal. Avalado por un gobierno o institucin habilitada para producir estndares. Proceso complejo. Ejemplos: IEEE, ANSI, ISO, IEC, ITU, EIA. Estndar de facto Nacen a partir de productos de la industria o por desarrollos de grupos de investigacin. Se definen en libros, manuales o artculos. Ejemplos: IAB, IETF, IRTF. Mara del Carmen Romero Ternero mcromero@dte.us.es 16 Proceso de normalizacin de los estndares de Internet Ms informacin en http://www.ietf.org/rfc/rfc2026.txt Mara del Carmen Romero Ternero mcromero@dte.us.es 17 Modelo de referencia OSI Propuesto por ISO (International Organization for Standardization) en 1977 Versin final: ISO 7498 (1984) OSI (Open Systems Interconnection) es un modelo, no una implementacin Describe 7 niveles ISO public una implementacin en X.200 Mara del Carmen Romero Ternero mcromero@dte.us.es 18 Capas del Modelo OSI Mara del Carmen Romero Ternero mcromero@dte.us.es 19 Niveles OSI En redes se pretende proporcionar un transporte fiable de datos entre usuarios finales de red y soportar una comunicacin significativa entre ambos. Esos usuarios pueden ser humanos o procesos, stos ltimos residen en el nivel superior o de aplicacin. Si fuera necesaria una traduccin entre las representaciones de los datos de las aplicaciones, sta se realizara por las funciones del nivel de presentacin. Habr una serie de funciones dedicadas a organizar la relacin entre los usuarios finales, estableciendo la conversacin, los turnos de palabra, los asentimientos, controlando el intercambio de datos, etc. De todo esto se encarga el nivel de sesin. Mara del Carmen Romero Ternero mcromero@dte.us.es 20 Niveles OSI (II) Un nivel facilitar a los usuarios la apariencia de que hay un conducto de comunicacin (conexin lgica) entre los usuarios finales o extremos, que maneje correctamente los flujos de informacin, es el nivel de transporte. El nivel encargado de proporcionar el camino real a travs del cual irn los datos por los diferentes nodos es el nivel de red. El nivel de enlace se encargar de que los mensajes entre dos puntos del camino lleguen sin errores, independientemente de la tecnologa de transmisin fsica utilizada. Por ltimo, el nivel fsico contiene las funciones que traducen la informacin lgica en fenmenos fsicos capaces de transmitirse. Se refiere a las especificaciones mecnicas, elctricas, funcionales y de procedimientos de la transmisin fsica. Mara del Carmen Romero Ternero mcromero@dte.us.es 21 Niveles OSI: Fsico Se ocupa de la transmisin bruta de bits (0 y 1s) sobre el soporte fsico disponible. Caractersticas mecnicas: Propiedades fsicas del interfaz y del medio de Tx Ejemplo: especificacin de conectores Caractersticas elctricas Cmo se representan los bits y su velocidad de Tx Ejemplo: niveles de tensin Caractersticas funcionales Funciones que realizan los circuitos de la interfaz fsica entre el sistema y el medio de Tx Ejemplo: pin x para recibir, pin y para transmitir... Caractersticas de procedimiento Secuencia de eventos que hace posible realizar el intercambio de flujo de bits Mara del Carmen Romero Ternero mcromero@dte.us.es 22 Niveles OSI: Enlace de datos Se encarga de utilizar el servicio de la transmisin de bits y convertirlo en una lnea libre de errores de transmisin para el nivel superior (red). Proporciona medios para activar, mantener y desactivar el enlace. Se encarga del control del enlace de datos: Divide los datos en tramas y se encarga de delimitar y reconocer las tramas. Resuelve prdidas y duplicaciones. Control de flujo y sentidos de transmisin. Mara del Carmen Romero Ternero mcromero@dte.us.es 23 Niveles OSI: Red Proporciona los medios para la transferencia de informacin entre sistemas finales a travs de algn tipo de red: Conmutacin y encaminamiento Gestin de prioridades Control de congestin Tarificacin Interconexin de redes Mecanismo de identificacin de mquinas (direcciones) Mara del Carmen Romero Ternero mcromero@dte.us.es 24 Niveles OSI: Transporte Proporciona mecanismos de intercambio de datos entre sistemas finales o extremo a extremo (libres de errores, en secuencia, sin prdidas ni duplicados y con la calidad de servicio solicitada). Control de flujo extremo a extremo Recibe datos del nivel de sesin, los divide si es necesario y los pasa al nivel de red, en el otro extremo se asegura de que todos lleguen correcta y eficientemente. Si es un servicio o.c. se encarga de solicitar una conexin y de liberarla Optimizacin del uso de los servicios de red. Su tamao y complejidad depende de la fiabilidad de los servicios de red. SESIN SESIN TRANSPORTE TRANSPORTE RED RED Mara del Carmen Romero Ternero mcromero@dte.us.es 25 Niveles OSI: Sesin Proporciona mecanismos para controlar el dilogo entre las aplicaciones de los sistemas finales. Sincronizacin de puntos de comprobacin. Los servicios de esta capa, dependiendo de la aplicacin, pueden ser prescindibles. Determina el tipo de servicio que se proporciona al usuario Tipo de dilogo Simple, semidplex o dplex Independiente del tipo de dilogo a nivel fsico Agrupamiento Agrupacin de datos Recuperacin Puntos de comprobacin Mara del Carmen Romero Ternero mcromero@dte.us.es 26 Niveles OSI: Presentacin Define el formato de los datos que se van a intercambiar entre las aplicaciones y ofrece un conjunto de servicios de transformacin de datos. Define la sintaxis utilizada entre entidades de aplicacin y proporciona los medios para la seleccin y modificacin de la representacin utilizada. Codifica datos en modo estndar (enteros, reales, caracteres, etc) y realiza funciones de compresin y cifrado de datos. Aplicacin EBCDIC Presentacin ASN.1 Niveles inferiores Aplicacin EBCDIC Presentacin ASN.1 Niveles inferiores IBM Digital Mara del Carmen Romero Ternero mcromero@dte.us.es 27 Niveles OSI: Aplicacin Proporciona mecanismos para que los procesos de aplicacin accedan al entorno OSI. Funciones de administracin y mecanismos tiles para la implementacin de aplicaciones distribuidas. En este nivel residen las aplicaciones de uso general: Terminales virtuales de red Transferencia de ficheros Correo electrnico Servicio de directorio Llamadas a procedimientos remotos Consulta de bases de datos Ejecucin remota de trabajos ... Mara del Carmen Romero Ternero mcromero@dte.us.es 28 Niveles OSI: Resumen Transmisin fsica de los datos a travs del medio Definicin de los conectores, de las seales de control y velocidades de Tx. Deteccin de colisiones Transferencia de ficheros, Correo electrnico, Acceso remoto, Gestin de la red... Traduccin sintctica de caracteres, cadenas de texto, formatos de representacin de datos, grficos y tipos de datos (sintaxis ASN.1) Cifrado y descifrado de la informacin (seguridad) y Compresin Inicio y finalizacin de la sesin de trabajo Negociacin de los parmetros del dilogo Recuperacin de problemas de comunicacin durante una sesin sin prdida de datos Conexin y transferencia de mensajes de transporte extremo a extremo Clases de protocolos: 0 (simples), 1 (recuperacin bsica de errores), 2 (multiplexin), 3 (recuperacin errores y multiplexin), 4 (recuperacin avanzada de errores) Determinacin de las rutas de los paquetes, direccionamiento Enlace entre diferentes redes (internetworking) Resolucin de congestiones Gestin de costes de utilizacin de la red Divisin en tramas y sincronismo de las mismas Control de secuencia, de flujo y de acceso al medio Deteccin y correccin de errores (retransmisiones) Aplicacin Presentacin Sesin Transporte Red Enlace datos Fsico Mara del Carmen Romero Ternero mcromero@dte.us.es 29 Crticas al Modelo OSI Momento poco adecuado: Tard mucho en desarrollarse. Tecnologa inadecuada: Algunos niveles vacos, otros muy densos. Muy dependiente de la arquitectura SNA de IBM. Muy complejo, difcil de implementar e ineficiente. Implementaciones inadecuadas: Enormes y lentas. Poltica inadecuada: Muy ligado a instituciones gubernamentales. Mara del Carmen Romero Ternero mcromero@dte.us.es 30 Modelo TCP/IP ARPAnet, red experimental del DoD en ambiente universitario sobre lneas telefnicas alquiladas. Se unieron redes satlite y radio y aparecieron los primeros problemas de interconexin. Se crea el modelo de referencia TCP/IP en 1974 Capacidad de conexin de mltiples redes de una manera sencilla. Exigencia de permanencia de la comunicacin mientras funcionan los host extremos. En los 90, ante la no implementacin de OSI, el DoD orden la implementacin de TCP/IP en todas sus adquisiciones. Mara del Carmen Romero Ternero mcromero@dte.us.es 31 Comparativa de capas Modelo OSI vs Modelo TCP/IP Mara del Carmen Romero Ternero mcromero@dte.us.es 32 Capas del Modelo TCP/IP Mara del Carmen Romero Ternero mcromero@dte.us.es 33 Crticas al Modelo TCP/IP A la hora de implementar no distingue claramente servicio, interfaz y protocolos Mala gua para diseo de nuevas redes No es un modelo general No describe cualquier pila de protocolos Se trata de una implementacin concreta No se distinguen las capas fsica y de enlace de datos No es un modelo apropiado a seguir Mara del Carmen Romero Ternero mcromero@dte.us.es 34 Comparativa Modelo OSI vs TCP/IP En qu se parecen? Describen una arquitectura jerrquica en niveles. La funcionalidad de las capas guardan cierta correspondencia. En qu se diferencian? OSI se fundamenta en los conceptos de Servicios, Interfaces y Protocolos, mientras que en TCP/IP se obvian. En OSI se ocultan mejor los protocolos mayor modularidad e independencia OSI se desarroll tericamente antes de la implementacin de los protocolos, mientras que en TCP/IP primero se implementaron los protocolos y el modelo no era ms que su descripcin La cantidad de capas de cada modelo es diferente en ambos En OSI, a nivel de red se permite comunicacin o.c. y n.o.c. y a nivel de transporte slo o.c. En TCP/IP, a nivel de red se permite slo la comunicacin o.c. y a nivel de transporte se permiten ambos. Mara del Carmen Romero Ternero mcromero@dte.us.es 35 Bibliografa William Stallings, Comunicaciones y Redes de Computadores, 6 edicin, Prentice Hall, 2000. Len-Garca, Redes de Computadores, Fundamentos, Conceptos y Arquitectura, Mc. Graw Hill, 2001. Andrew S. Tanenbaum, Redes de Computadoras, 3a edicin, Prentice Hall, 1997. Fred Halsall, Comunicaciones de Datos, Redes de Computadores y Sistemas Abiertos, 4 edicin, Addison-Wesley Iberoamericana, 1998. ISO/IEC 7498-1:1994, Information technology Open Systems Interconnection -- Basic Reference Model: The Basic Model ISO 7498-2:1989, Information processing systems -- Open Systems Interconnection -- Basic Reference Model -- Part 2: Security Architecture