Sistemas Distribuidos Caracterización Temario Características Sistemas centralizados y sistemas en red El modelo de propiedades y servicios Propiedades globales Conclusión Características Un sistema distribuido consiste en varias computadoras (2..n) haciendo algo en conjunto Campo de aplicación de propósito general Heterogeneidad de tamaños y plataformas Ejemplos: banking, red celular, control de tráfico aéreo, etc. Componentes del Sistema Distribuido: Múltiples Computadoras: cada una con su CPU, memoria local, almacenamiento, E/S Interconexiones: vínculos de E/S que unen las computadoras entre si. Estado Compartido: todas las computadoras colaboran para mantener un estado compartido global Precondiciones Falla Independiente: la falla de una computadora no implica la falla de otras Comunicación no Confiable: las conexiones entre computadoras pueden fallar, volverse indisponibles o alterar los datos que transmiten Precondiciones (II) Comunicación Insegura: las interconexiones están sujetas a escuchas y/o alteraciones no autorizadas Comunicación Costosa: las interconexiones entre computadoras son usualmente de < ancho de banda, > latencia y > costo que las disponibles entre procesos dentro de una computadora Conceptos Fundamentales Compartición de recursos Apertura Concurrencia Escalabilidad Tolerancia a fallas Transparencia Transparencia Desde la percepción del usuario y el desarrollador de aplicaciones: Acceso: idénticas operaciones para acceder a objetos locales o remotos Concurrencia: acceso simultáneo a recursos compartidos Replicación: uso de copias distribuidas Transparencia (II) Fallas Migración Perfomance: distribución y equilibrio de cargas Escala Evolución Histórica [1] Procesamiento Centralizado (timesharing) Modem Host Evolución Histórica (II) [2] Redes locales PC PC PC PC LAN Servidor Impresora Servidor Servidor de Archivos Impresora Impresora Evolución Histórica (III) [3] Internet PC Internet Modem Redes Vs. Sistemas Centralizados Distribución geográfica Computadoras de costo reducido Crecimiento en incrementos pequeños Compras independientes Falla independiente Acceso uniforme a la información Un solo dominio de nombres, funciones y seguridad Administración centralizada Entorno controlado Punto simple de falla Fallas A * Falla B? * Falla el vínculo? X B Síntesis El SD ideal debería tener: La accesibilidad, coherencia y administrabilidad de los Sistemas Centralizados, mas El crecimiento, costo y autonomía de los sistemas en red, mas Seguridad y disponibilidad Modelo de Propiedades y Servicios Define al SD ideal como: Un conjunto heterogéneo de hardware, software y datos, Cuyo tamaño y distribución geográfica varía en un amplio rango Conectado por una red Modelo de Propiedades y Servicios (II) Prestando un conjunto de servicios: Nombres Invocación remota Registración de usuarios Tiempo Archivos Etc. Modelo de Propiedades y Servicios (III) Con propiedades globales: Nombres Acceso Seguridad Administración Disponibilidad Modelo de Propiedades y Servicios (IV) Coherencia: servicios uniformes y propiedades globales Heterogeneidad: Plataformas, sistemas operativos e infraestructura de red Propiedades Globales Nombres: Máquinas Usuarios Archivos Servicios Grupos de control de acceso Propiedades Globales (II) Acceso: las mismas funciones son utilizables en cualquier punto del SD con perfomance razonable coherencia de datos. Seguridad: la autenticación de usuarios y el control de acceso son independientes del punto de entrada al sistema Propiedades Globales (III) Administración: todos los componentes administrables del sistema ofrecen una interface homogénea Disponibilidad: todos los servicios estarán disponibles frente a caídas parciales del SD, en la medida en que no excedan la tolerancia a fallas prevista. Servicios Nombres: acceso de una BDD distribuida y replicada de nombres globales y valores asociados Invocación Remota (RPC): interface estándar de acceso programático a los servicios remotos Registración de Usuarios: emite los certificados que permiten el acceso a recursos Servicios (II) Tiempo: provee una referencia temporal global consistente y precisa Archivos: provee acceso a un sistema de archivos (filesystem) global replicado, a través de interfaces estándar