Arquitecturas de Hardware en Sistemas Distribuidos.

Slides:



Advertisements
Presentaciones similares
“Fundamentos de Sistemas Distribuidos”
Advertisements

Definición En un sistema de base de datos distribuida, los datos se almacenan en varios computadores. Los computadores de un sistema distribuido se comunican.
Sistema operativo Componentes de un sistema operativo
Multiprocesadores 3.1 Dominios de aplicación
Bases de datos distribuidas
Base de Datos Distribuidas FUNDAMENTOS DE BASES DE DATOS DISTRIBUIDAS
SISTEMAS DE ARCHIVOS DISTRIBUIDOS Sistemas Distribuidos Abr-Jun 2007 Yudith Cardinale.
Carlos Rojas Kramer Universidad Cristóbal Colón
Tecnologías Cliente / Servidor Capitulo III Richard Jiménez V. clienteserver.wordpress.com.
Arquitectura Orientada a Servicios (SOA)
Fecha: 11/09/13.  Todos los sistemas distribuidos constan de varias CPU, organizadas de diversas formas.  La forma de interconectarlas entre sí. 
HISTORIA Y CLASIFICACIÓN DE LOS SISTEMAS OPERATIVOS
Base de Datos Distribuidas
Introducción a los Sistemas de Bases de Datos Distribuidos
EMISION MULTIPLE DE INSTRUCCIONES
Universidad Centroamericana
Introducción *  Computadoras grandes y costosas  Las organizaciones tenían pocas computadoras  No existía una forma de conectarlas  Operaban.
Sistemas Distribuidos y Paralelos
PROCESAMIENTO PARALELO.  Organización lógica ◦ Visión que tiene el programados  Capacidad de expresar tareas paralelas (Estructura de control)  Método.
Universidad de SonoraArquitectura de Computadoras1 PROGRAMA CION PARALELA Y DISTRIBUIDA PRESENTA: JESUS BECERRIL PACHECO MODELOS DE ACCESO A LA MEMORIA.
PROCESAMIENTO PARALELO
Introducción a los Sistemas Distribuidos. Prof. Yudith Cardinale Sept – Dic 2006 Universidad Simón Bolívar Departamento de Computación y T. I Tópicos en.
Procesamiento paralelo
OMAR SANCHEZ ROBLES HECTOR PEREZ GARCIA. “Sistemas de cómputo compuesto por un gran número de CPU´s conectados mediante una red de alta velocidad”, Tanenbaum.
Arquitectura de una aplicación
INSTITUTO TECNOLÓGICO DE CD. GUZMÁN
Introducción, Principios de Diseño y Estructuras de los Sistemas Operativos Sistemas Operativos Avanzados Prof. David A. Pérez A.
CONCEPTES AVANÇATS DE SISTEMES OPERATIUS Departament d’Arquitectura de Computadors (apunts de l’assignatura en format transparència) Beowulf Vs Clusters.
Introducción al modelo Cliente-Servidor Carlos Rojas Kramer Universidad Cristóbal Colón.
Desarrollo de aplicaciones para ambientes distribuidos
Características de un sistema operativo
Introducción a los Sistemas Operativos
Un sistema de gestión de bases de datos: Es un conjunto de programas que permite a los usuarios crear y mantener una base de datos. Por tanto, el SGBD.
Sistemas Distribuídos Sistemas de Ficheros Distribuídos: CODA e Intermezzo.
INTRODUCCIÓN. Motivación “Procesamiento distribuido significa dividir una aplicación en tareas y poner cada tarea en la plataforma donde pueda ser manejada.
TEMA 10. SISTEMAS OPERATIVOS DISTRIBUIDOS
Inst. Tec. de Morelia ISC BASES DE DATOS DISTRIBUIDAS VERANO DEL 2006 MC. Anastacio Antolino Hernández TAXONOMÍA DE FLYNN.
14 de diciembre de 2005 Universidad de Murcia1 Modelos de computadores paralelos Domingo Giménez Departamento de Informática y Sistemas Universidad de.
Arquitecturas Paralelas
Estructuras en Sistemas Operativos DAISY KATERINE RODRÍGUEZ.
PROGRAMACIÓN PARALELA Modelos de programación paralela Modelos computacionales Paradigmas de programación paralela Programación en memoria compartida:
Introducción a los Sistemas Operativos
Universidad Simón Bolivar Dpto. de Computacion y Tecnologia de la Informacion Prof. Yudith Cardinale Especializacion en Telemaica DECANATO DE ESTUDIOS.
NOTA: Para cambiar la imagen de esta dispositiva, seleccione la imagen y elimínela. A continuación haga clic en el icono Imágenes en el marcador de posición.
Introducción a los SOs.
Tema 8: Introducción a los SOs. Tema 8: 2 Silberschatz, Galvin and Gagne ©2005 Fundamentos de los Computadores (ITT, Sist. Electr.), Introducción.
Sistemas Distribuidos
Tema 5: Multiprocesadores
Universidad Politécnica de Tulancingo Catedrático Ing. Jorge Luis Neri Trejo Asignatura Ing. De Hardware III Tema Procesamiento Paralelo Presenta Verónica.
COLEGIO DE BACHILLERES N° 16 PLANTEL TLAHUAC “MANUEL CHAVARRIA CHAVARRIA”
Departamento de Informática Universidad de Rancagua
Estructura de los Sistemas Operativos
Introducción a los Sistemas Distribuidos. Prof. Yudith Cardinale Sept – Dic 2008 Universidad Simón Bolívar Departamento de Computación y T. I Sistemas.
SEGMENTACIÓN DE LA RED UNIVERSIDAD NACIONAL DE INGENIERÍA
ARQUICTECTURA DE SERVIDORES
Son los atributos de un sistema que son visibles para un programador, es decir aquellos atributos que impactan directamente en la ejecución lógica de un.
Sistemas Distribuidos
BASE DE DATOS DISTRIBUIDAS
Aspectos para Diseñar un Sistema Distribuido:
SISTEMAS OPERATIVOS Son un conjunto de programas destinados a permitir la comunicación entre el usuario y en computador y gestionar sus recursos.
UNIDAD I INTRODUCCION A LOS S.O.
Estructuras en Sistemas Operativos DAISY KATERINE RODRÍGUEZ.
Computadoras de Alto Rendimiento (HPC)
Arquitectura de una aplicación Arquitectur a: desarrolla un plan general del sistema, asegurando que las necesidades de los usuarios sean atendidas. Ingeniería.
CAPITULO III El Sistema Operativo (OS)
Conociendo el modelo Cliente-Servidor
Sistemas Distribuidos Conceptos Básicos Propiedades MSI. Nancy A. Olivares Ruiz.
BASES DE DATOS DISTRIBUIDAS M.C.C. María Guadalupe Villanueva Carrasco INGENIERIA EN SISTEMAS COMPUTACIONALES.
Conociendo el modelo Cliente-Servidor. Introducción En el mundo de TCP/IP las comunicaciones entre computadoras se rigen básicamente por lo que se llama.
Apuntes preparados por Néstor González Valenzuela slide 1 Arquitecturas de Sistemas Distribuidos y Paralelos.
Transcripción de la presentación:

Arquitecturas de Hardware en Sistemas Distribuidos. Universidad Simón Bolívar Departamento de Computación y T. I Sistemas de Operación II CI-4821 Arquitecturas de Hardware en Sistemas Distribuidos. Prof. Yudith Cardinale Abril – Julio 2012

Definición de Sistemas Distribuidos Colección de computadores independientes que se presentan ante los usuarios como un único sistema coherente Aspecto de hardware: Los computadores son independientes Aspecto de software: los usuarios piensan que existe un único sistema

Definición de Sistemas Distribuidos Consecuencias de los sistemas distribuidos: Concurrencia Inexistencia de reloj global Fallas independientes

Aspectos de Software: Conceptos Los sistemas de operación para sistemas distribuidos se dividen en: Software débilmente acoplado: Permite a los usuarios y máquinas ser fundamentalmente independientes unos de otros Los componentes interactúan cuando sea necesario Software fuertemente acoplado: Se requiere la colaboración de todos los elementos del software para llevar a cabo un objetivo común Comunicación intensiva

Aspectos de Software: Conceptos SISTEMAS DE OPERACIÓN DISTRIBUIDOS: Colección de componentes de software que simplifican las tareas de programación y soportan un alto rango de aplicaciones Son modulares y extensibles, lo que implica que se pueden adicionar nuevos componentes en respuesta a nuevas necesidades Poseen mecanismos de comunicación y esquemas de protección globales Software fuertemente acoplado Usados para sistemas homogéneos

Aspectos de Software: Conceptos SISTEMAS PARALELOS: Buscan obtener máxima velocidad en un problema determinado Software fuertemente acoplado SISTEMAS DE OPERACIÓN DE REDES: Conjunto de computadores conectados por una red Existe autonomía en cada estación La localización de los objetos no es transparente Software débilmente acoplado Usados para sistemas heterogéneos

Aspectos de Software: Conceptos SISTEMAS DE OPERACIÓN PARA MULTIPROCESADORES: Conjunto de procesadores conectados por un bus Existe una sola memoria (memoria compartida) Existe un único sistema de operación Sincronización con semáforos y monitores

Aspectos de Software: Conceptos SISTEMAS DE OPERACIÓN PARA MULTICOMPUTADORES: Conjunto de máquinas conectadas por una red Desarrollado para multicomputadores homogéneos La comunicación se realiza a través de pase de mensajes

Aspectos de Software: Conceptos SISTEMAS DE MEMORIA COMPARTIDA DISTRIBUIDA: Sobre sistemas multicomputadores, de memoria distribuida, se simula memoria compartida Se usan los mecanismos de comunicación y sincronización de sistemas multiprocesadores

Aspectos de Software: Conceptos MIDDLEWARES: Sistemas que toman las ventajas de los sistemas de operación distribuidos (transparencia y facilidad de uso) y los sistemas de operación de redes (escalabilidad y flexibilidad) Se monta sobre sistemas de operación locales diferentes Integra total heterogeneidad

Aspectos de Hardware Hardware fuertemente acoplado: El retardo del envío de un mensaje es poco: baja latencia La tasa de transferencia de datos es alta: buen ancho de banda Generalmente son de memoria compartida Hardware débilmente acoplado: Latencia alta Bajo ancho de banda

Aspectos de Hardware Taxonomía de Flynn (1972): - Basada en el Nro. de flujos de instrucciones y en el Nro. de flujos de datos. SISD: Single Instruction, Single Data Computadores de 1 CPU. SIMD: Single Instruction, Multiple Data Computadores vectoriales. Computadores paralelos.

Aspectos de Hardware (cont.) MISD: Multiple Instruction, Single Data. No hay computadores en esta clasificación. MIMD: Multiple Instruction, Multiple Data. Sistemas Distribuidos. Computadores paralelos. Clusters de PCs y estaciones de trabajo

Aspectos de Hardware (cont.) Clasificación de Tanenbaum para los Sistemas MIMD.

Aspectos de Hardware (cont.) Multiprocesadores basados en Buses: Alivia la sobrecarga del bus y aumenta el rendimiento Problema con el cahe: Posibilidad de Memoria Incoherente Solución: Cache de escritura (write-through cache) Cache Monitor (snoopy cache) Software de consistencia

Aspectos de Hardware (cont.) Multiprocesadores basados en conmutadores: Útil para conectar alrededor de 64 procesadores Se basan en: Dividir la memoria en módulos Conectar los CPUs a la memoria a través de conmutadores

Aspectos de Hardware (cont.) Usando un conmutador de cruceta (crossbar switch) N memorias Crosspoint switch N procesadores Problema: El Nro. de puntos de cruce puede ser alto: N2 Solución: Redes bloqueantes (ej. Red Omega)

Aspectos de Hardware (cont.) Conmutador 2x2 Usando una Red Omega Nro. de etapas: log2N Nro. de conmutadores por etapa: N/2 Nro. Total de conmutadores: N/2 * log2N Problema: Retardo

Aspectos de Hardware (cont.) Usando un Sistema jerárquico o Acceso no uniforme a Memoria (NUMA) Cada CPU tiene su memoria local Acceso rápido a su propia memoria y lento a la memoria de otros CPUs Otro Problema: Distribución de los programas y Datos para que los accesos sean rápidos.

Aspectos de Hardware (cont.) Multicomputadores basados en Buses: Ventaja frente a esquemas anteriores: sólo hay que resolver los problemas de comunicación entre CPUs y no entre CPUs - Memoria. Estaciones de Trabajo

Aspectos de Hardware (cont.) Multicomputadores con conmutadores: Malla (Parsytec) El último elemento en una fila está conectado al primero en la próxima. Hipercubos (Ncube)

Aspectos de Hardware (cont.) Multicomputadores con conmutadores: MPPs (Massively Parallel Processors) Clusters Multicomputadores heterogéneos conectados con conmutadores Clusters Heterogéneos

Aspectos de Hardware (cont.) Massively Parallel Processors Computadores paralelos con cientos de procesadores Top 500

Aspectos de Hardware (cont.) Massively Parallel Processors (TOP 6-Nov 11) RIKEN Advanced Institute for Computational Science (AICS), K computer, SPARC64 VIIIfx 2.0GHz, Tofu interconnect/Fujitsu, Japan, 705024 procs, 10510 Tflops, Cluster, Linux, Custom Interconnect, Research Tianhe-1A, National Supercomputing Center in Tianjin,NUDT YH MPP, Xeon X5670 6C 2.93 GHz, NVIDIA 2050/NUDT, China, 186368 procs, 2566 Tflops, MPP, Linux, Proprietary Network, Research Jaguar, DOE/SC/Oak Ridge National Laboratory, Cray XT5-HE Opteron 6- core 2.6 GHz /Cray Inc., United States, 224162 procs., 1759 Tflops, MPP, Linux, Proprietary Network, Research

Aspectos de Hardware (cont.) Massively Parallel Processors (TOP 6-Nov 11) Nebulae, National Supercomputing Centre in Shenzhen (NSCS) Dawning TC3600 Blade System, Xeon X5650 6C 2.66GHz, Infiniband QDR, NVIDIA 2050/Dawning, China 120640 procs., 1271 Tflops, Cluster, Linux, Infiniband, Research. TSUBAME 2.0, GSIC Center, Tokyo Institute of Technology, HP ProLiant SL390s G7 Xeon 6C X5670, Nvidia GPU, Linux/Windows /NEC/HP, Japan, 73278 procs., 1192 Tflops, Cluster, Linux, Infiniband, Academic. Cielo,DOE/NNSA/LANL/SNL, Cray XE6, Opteron 6136 8C 2.40GHz, Custom/Cray Inc., United States, 142272 procs., 1110 Tflops, MPP, Linux, Custom Interconnect, Research

Aspectos de Hardware (cont.) CLUSTERS Computadoras genéricas unidas por red de alta velocidad y bajo retardo Clusters y MPP dominan la lista TOP500 Cómo construir clusters: Conjunto de estaciones de trabajos, PCs En Racks Sin Disco (Diskless) Con Disco

Aspectos de Hardware (cont.) Cluster Miranda, Lab. CAR, USB

Aspectos de Hardware (cont.) Ventajas de los clusters: Alto rendimiento Alta disponibilidad Balance de carga Mejor relación costo/beneficio Escalabilidad Reutilización Disponibilidad de herramientas Open source (Ej. Gluster, MOSIX, etc.)

Los Sistemas Distribuidos proveen: Transparencia Concurrencia Compartimiento de recursos Inexistencia de un reloj global Integrar heterogeneidad Fallas Independientes Ejemplos: Internet, Intranets, Computación móvil, Computación Ubicua.

Aspectos del Diseño de los SOD HETEROGENEIDAD Importante en: redes, hardware, sistemas de operación, lenguajes de programación e implementaciones de diferentes desarrolladores Se puede proveer con una capa middleware.

Aspectos del Diseño de los SOD COMPARTIMIENTO DE RECURSOS Importante para reducir costos y por necesidades específicas Se requiere de administradores de recursos para acceder, manipular y actualizar los recursos en forma confiable y consistente

Aspectos del Diseño de los SOD TRANSPARENCIA No debe hacer distinciones entre recursos locales y remotos Debe facilitar la movilidad del usuario Puede ser alcanzada en dos niveles: Ocultar la distribución a los Usuarios Haciendo que el sistema luzca transparente a los programas

Aspectos del Diseño de los SOD TRANSPARENCIA Tipos de Transparencia: De localización: esconde dónde se localizan los recursos Los usuarios no pueden indicar la ubicación de los recursos de hardware o software machine1: proc.c De acceso: esconde diferentes representaciones de datos y cómo son accedidos los recursos Permite acceder los recursos locales y remotos empleando las mismas operaciones

Aspectos del Diseño de los SOD TRANSPARENCIA De migración No hay cambio de nombres cuando se moviliza un recurso De replicación El SO copia los archivos más usados en los diferentes servidores sin que lo noten los usuarios Cada servidor tiene toda la estructura del árbol de directorios

Aspectos del Diseño de los SOD TRANSPARENCIA De concurrencia Los usuarios no deben notar la existencia de otros cuando accedan a un mismo recurso. De paralelismo Ideal: Los programadores y usuarios no necesitan indicar en forma explícita cómo se van a distribuir sus procesos y datos (El Sistema de Operación se ayuda con el complilador). Frente a fallas: esconde la falla y recuperación de un recurso

Aspectos del Diseño de los SOD FLEXIBILIDAD Posibilidad de que el sistema pueda ser extendido de varias formas. Kernel Monolítico vs. Microkernel Kernel Monolítico (Sprite): Proporciona todos los servicios en cada máquina. SO tradicional al que se le agregan capacidades de red. Ventajas: Rendimiento (cada servicio se resuelve localmente)

Aspectos del Diseño de los SOD FLEXIBILIDAD Microkernel (Amoeba): El kernel hace lo menos posible: Comunicación entre proccesos Administración y planificación de procesos de bajo nivel. Administra la memoria I/O de bajo nivel. Las otras funciones las ofrecen servidores a nivel usuario. Ventajas: Es más flexible gracias a su modularidad. Los servicios son alcanzables por todos los clientes. Se puede agregar, modificar o eliminar un servicio sin tener que detener todo el sistema.

Aspectos del Diseño de los SOD CONFIABILIDAD Si una máquina falla, otra se puede encargar de su trabajo. Aspectos: Disponibilidad (fracción del tiempo que el sistema es usable). Principios de diseño: No debe requerir el funcionamiento simultáneo de un número sustancial de componentes críticos. Redundancia de software y de hardware

Aspectos del Diseño de los SOD CONFIABILIDAD Consistencia e Integridad. Protección contra la alteración o corrupción Confidencialidad. Proteger los recursos contra el acceso no autorizado. Tolerancia a fallas y recuperación. Ocultar las fallas a los usuarios.El sistema debe continuar funcionando cuando se enfrente a fallas, aunque sea de manera degradada. La degradación debe ser proporcional a las fallas Se debe proveer detección y enmascaramiento de fallas

Aspectos del Diseño de los SOD RENDIMIENTO Cuando se ejecuta una aplicación en un Sistema Distribuido, no debe parecer peor que su ejecución en un único procesador. Métricas: Tiempo de Respuesta Throughput ( Número de trabajos por hora) Utilización del Sistema Cantidad de la capacidad de la red consumida.

Aspectos del Diseño de los SOD RENDIMIENTO Aspectos a considerar en el diseño: Comunicación (más por el tiempo de procesamiento de los mensajes que por el traslado del mismo). Tomar en cuenta el tamaño del grano de los cálculos. Tipos: Grano grueso: Trabajos que involucran grandes cálculos, bajas ratas de interacción y pocos datos. Grano fino. Es recomendable distribuir los cálculos de grano grueso.

Aspectos del Diseño de los SOD ESCALABILIDAD Capacidad del Sistema para adaptarse a un incremento de la carga del servicio, adaptarse a la comunidad de usuarios y permitir la integración de recursos adicionales. Su rendimiento debe degradarse con mayor moderación que el de un sistema no escalar. Sus recursos deben llegar a un estado de saturación más tardío que en un sistema no escalar.

Aspectos del Diseño de los SOD ESCALABILIDAD Se mide en 3 dimensiones: Tamaño: cuán fácil puede soportar crecimiento en usuarios y recursos Geográfica: qué tan lejos pueden estar los usuarios Administrativa: qué tan fácil se controlan los recursos incluso con diferentes organizacines administrativas participantes

Aspectos del Diseño de los SOD ESCALABILIDAD Principios para diseñar sistemas a gran escala No deben emplearse esquemas de control central ni recursos centrales (Servidores, tablas o algoritmos centralizados) >> Cuellos de Botella Deben ser sistemas abiertos que permitan: Inclusión de recursos a la red Introducción de servicios y reimplementación de los existentes Independencia de proveedores

Aspectos del Diseño de los SOD CONSISTENCIA De actualizacción En la replicación Del cache En las fallas De reloj En la interfaz con el usuario