View
235
Download
0
Category
Preview:
Citation preview
Tema 1: Introducción a los Sistemas Distribuidos
Sistemas Distribuidos Marcos López Sanz [Curso 2012-2013]
Sistemas distribuidos – Curso 2012-2013 www.kybele.es
Índice
Definición
Objetivos
Propiedades y retos
Ventajas y desventajas
Tipos y ejemplos
Ejercicios
Dudas
Sistemas distribuidos – Curso 2012-2013 www.kybele.es
Definición
Tipos de sistemas. Ejemplos: Sistemas centralizados (años 60): recursos centralizados y
acceso mediante terminales
Sistemas unipersonales: PC, computación en un solo nodo
Sistemas en red: múltiples elementos de cómputo independientes unidos por una red
Sistemas distribuidos: visión de sistema único a partir de un conjunto de elementos interconectados
Sistemas ubicuos: sistemas distribuidos móviles
Sistemas distribuidos – Curso 2012-2013 www.kybele.es
Definición
Sistema Distribuido: Coulouris et al.: “Aquel sistema en el que los componentes localizados
en una red de computadores se comunican y coordinan sus acciones únicamente mediante el paso de mensajes” Comunicación a través de una red Concurrencia No hay reloj
Tanenbaum et al.: “Una colección de computadoras independientes que aparecen ante los usuarios del sistema como una única computadora” Sistema operativo distribuido Transparencia Virtualización
van Steen et al.: “Componente software que asegura que una colección de computadoras independientes aparece ante los usuarios como un único sistema coherente” Existencia de un software de unión Middleware Formado por elementos de computación independientes
Lesli Lamport: “You know you have one when the crash of a computer you’ve never heard of stops you from getting any work done”
Sistemas distribuidos – Curso 2012-2013 www.kybele.es
Definición
Bases/Consecuencias de la definición de SD (Coulouris): Concurrencia
Existencia de diferentes nodos de computación Se comparten recursos en la red Importancia de la coordinación entre recursos
Inexistencia de un reloj global Imposibilidad de establecer un tiempo común por la latencia de las
comunicaciones y otros factores Coordinación basada en paso de mensajes y técnicas de ordenación
de mensajes
Existencia de fallos independientes Nuevos tipos de fallos asociados a la distribución de recursos Fallos de comunicaciones más relevantes que los de nodos
Sistemas distribuidos – Curso 2012-2013 www.kybele.es
Objetivos
Objetivos primordiales de los sistemas distribuidos:
Compartir recursos (de cualquier tipo)
Conseguir transparencia (de distribución frente al usuario)
Extensibilidad (facilidad de adoptar cambios de SW/HW)
Escalabilidad (de tamaño, geográfica, administrativa)
Sistemas distribuidos – Curso 2012-2013 www.kybele.es
Propiedades y retos asociados
Propiedades de los SSDD:
Heterogeneidad
Sistemas abiertos (‘openness’)
Seguridad
Escalabilidad
Manejo de errores
Concurrencia
Transparencia
Sistemas distribuidos – Curso 2012-2013 www.kybele.es
Propiedades y retos asociados
Heterogeneidad El número de recursos distribuibles en un entorno de
red es variable
El tipo de recursos que pueden distribuirse también
Elementos distribuidos (variedad y diferenciación): Redes (¿protocolos/estándares?)
Hardware de cómputo (¿procesamiento/recurso?)
Sistemas operativos (¿llamadas?)
Lenguajes de programación (¿tipos de datos?)
Implementaciones de un mismo recurso (¿versiones?)
Sistemas distribuidos – Curso 2012-2013 www.kybele.es
Propiedades y retos asociados
Heterogeneidad (II): Posibles soluciones
Existencia de una capa de homogeneización (middleware)
CORBA
Java RMI
RPC / XML-RPC
Grid (Globus Toolkit)
Máquinas virtuales y código móvil
Java applets
Flash
Sistemas distribuidos – Curso 2012-2013 www.kybele.es
Propiedades y retos asociados
Sistemas abiertos (‘openness’) Referido a un sistema distribuido: capacidad del sistema
para poder ser extendido y reimplementado de diferentes formas (cambios sw/hw)
Grado en el que nuevos recursos pueden ser agregados al sistema sin que se vean afectadas sus capacidades
Requisitos: Que las interfaces de acceso a los recursos sean públicas
Que exista un mecanismo de comunicación común entre recursos
Que el sistema se base en estándares
Sistemas distribuidos – Curso 2012-2013 www.kybele.es
Propiedades y retos asociados
Seguridad Aspecto inherente a la distribución de información y el
paso de mensajes
Aspectos incluidos: Confidencialidad Protección frente a usuarios no
autorizados Integridad Protección frente a la corrupción de los datos Disponibilidad Protección frente a la interferencia en el
acceso a recursos
Retos pendientes Ataques de denegación de servicio (DoS) Seguridad del código móvil
Sistemas distribuidos – Curso 2012-2013 www.kybele.es
Propiedades y retos asociados
Escalabilidad Capacidad para hacer crecer un sistema mientras mantiene
sus características funcionales de forma eficiente
Retos: Control del coste físico de un recurso (¿sostenible?) Control de la pérdida de rendimiento (¿escalabilidad de los
algoritmos?) Previsión sobre los límites en el número de recursos (¿suficientes
direcciones?) Identificación de los cuellos de botella (¿recurso más saturado?)
Algunas soluciones:
Replicación de datos Técnicas de pre-carga Diversificación de las responsabilidades
Sistemas distribuidos – Curso 2012-2013 www.kybele.es
Propiedades y retos asociados
Gestión de errores (‘failure handling’) Característica propia de los SSDD: un elemento falla
pero el sistema sigue funcionando
Retos: Detección de errores (¿previsión?) Enmascaramiento de errores (¿detección/duplicación?) Tolerancia a fallos (¿redundancia/no-action?) Recuperación ante errores (¿consistencia?) Redundancia (¿replicación vs. coste?)
Objetivo:
Disponibilidad: medida de la porción de tiempo que un sistema está disponible para ser utilizado
Sistemas distribuidos – Curso 2012-2013 www.kybele.es
Propiedades y retos asociados
Concurrencia
Problema: recursos compartidos accedidos concurrentemente
Soluciones:
Propiedades transaccionales ACID (atomicity, consistency, isolation, durability)
Implementación de mecanismos de acceso (semáforos, monitores, algoritmo de la panadería de Lamport, etc.)
Sistemas distribuidos – Curso 2012-2013 www.kybele.es
Propiedades y retos asociados
Transparencia Propiedad por la cual, a pesar de la separación física de los
componentes de un sistema distribuido, el sistema se percibe como un todo en vez de como una colección de componentes individuales
Tipos de transparencia (ANSA’89 y RM-ODP’92) De acceso: acceso transparente para componentes locales y remotos De localización: independientemente de su localización física De concurrencia: independientemente del número de peticiones a
un recurso De replicación: del número de réplicas de un recurso De errores: completar tareas sin importar fallos concretos De movilidad: recolocación/envío de recursos (programas) De rendimiento: independientemente de la carga De escala: que los cambios no afecten
Sistemas distribuidos – Curso 2012-2013 www.kybele.es
Ventajas y desventajas
Ventajas Frente a sistemas centralizados
Mejora de la relación coste/rendimiento Velocidad y capacidad de cómputo frente a sistemas mainframe Algunas aplicaciones son inherentemente distribuidas (HW de cadenas
de montaje, web, mail, etc.) Tolerancia a fallos (distribución) Escalabilidad
Frente a sistemas independientes Compartición de recursos (datos y HW) Facilidad de comunicación y dispersión de la información
Desventajas
Falta de estándares para la creación de middleware (fracaso del Grid)
Saturación de las redes y dificultad para conseguir seguridad
Sistemas distribuidos – Curso 2012-2013 www.kybele.es
Tipos de sistemas distribuidos
Sistemas de computación distribuida Clustering (Cluster Computing)
Computación de altas prestaciones Múltiples sistemas independientes conectados por red
Grid Computing Compartir recursos en base a organizaciones virtuales Basado en una arquitectura de servicios
Sistemas de información distribuida
Sistemas de ficheros distribuidos Bases de datos distribuidas/federadas/en red Soluciones basadas en EAIs / ESBs ¿La Web?
Sistemas ubicuos (pervasive/ubiquitous)
Integración de la informática en el ámbito de la persona Pequeños nodos, basados en cómputos móviles, formando parte de sistemas más
amplios Ejemplos: sistemas domóticos, sistemas de salud, ¿redes de sensores?
Sistemas distribuidos – Curso 2012-2013 www.kybele.es
Ejercicios
Aplicar las propiedades anteriores al contexto de la Web y los protocolos de Internet
¿Cómo se aplican las ventajas/desventajas de los SSDD al Cloud?¿y a los modelos P2P?
¿Cuál es la incidencia de los sistemas de posicionamiento y geolocalización en los sistemas distribuidos?
Recommended