Descargar

Computación: Sistemas Distribuidos – Presente y Futuro

Enviado por Pablo Turmero


Partes: 1, 2

    edu.red

    Agenda Introducción Definiciones básicas Tendencias Conclusiones Investigación ITM

    edu.red

    Evolución de la Computación 50’s-70’s: “Una computadora múltiples usuarios”

    80’s-90’s: “Una computadora un usuario”

    2000’s: “Un usuario múltiples computadoras”

    Actualmente la información es totalmente distribuida, aunque los datos centralizados se siguen utilizando.

    edu.red

    ¿Qué es un Sistema Distribuido? “Es una colección de computadoras independientes que aparecen ante los usuarios del sistema como una única computadora” (Principio de transparencia)

    ¿Qué es un sistema? Componentes de Hardware (Procesadores, mecanismos de interconexión) Componentes Software (programación de sistemas y aplicaciones)

    edu.red

    Arquitecturas de cómputo Taxonomía de Flynn: SISD (Single Instruction Single Data) Procesador único. SIMD (Single Instruction Multiple Data). Procesadores vectoriales (multimedia) MISD (Multipe Instruction Single Data). No implementada

    MIMD (Multiple Instruction Multiple Data). Cómputo distribuido

    edu.red

    Cómputo Distribuido La distribución del cómputo puede realizarse de diversas formas de acuerdo a su grado de acoplamiento en:

    Fuertemente acopladas: Multiprocesadores (memoria compartida). UMA (Uniform Memory Acces)

    Débilmente acopladas: Multicomputadoras (memoria privada). NUMA (Non Uniform Memory Access)

    edu.red

    Tarjeta madre

    Tarjeta madre Sistemas multiprocesadores CPU 1 CPU n CPU 2 Memoria Modelo de n procesadores

    CPU N1 Nn Memoria Modelo de n núcleos … …

    edu.red

    Cómputo de Alto Desempeño

    edu.red

    Sistemas multicomputadoras Están basados en el modelo cliente/servidor

    Este modelo se basa en un protocolo solicitud – respuesta. El cliente envía una solicitud de cierto servicio al servidor, el servidor realiza el trabajo y regresa el resultado de la operación.

    La principal ventaja de este protocolo es su sencillez, únicamente se necesita la ubicación del servidor.

    edu.red

    Sistemas Distribuidos Cliente Servidor Solicitud Respuesta Modelo Cliente/Servidor Tradicional Cliente 1 Servidor Modelo Cliente/Servidor Concurrente Cliente Proxy en el lado cliente Modelo Cliente/Servidor de n capas Cliente Proxy en el lado servidor Cliente n . .

    edu.red

    Sistemas Distribuidos P2P (Peer to Peer) los procesos son totalmente descentralizados, funcionan como clientes y servidores a la vez, existen diversas arquitecturas.

    Cluster es una agrupación de computadoras intercomunicadas entre sí a través de un nodo central y cuyo objetivo es realizar una tarea específica.

    Grid computing es muy parecido a P2P y al cluster.

    edu.red

    Sistemas Distribuidos Grid computing se parece al cluster en que consisten en una asociación de computadoras con la única diferencia de que no existe un nodo centralizador. Está característica lo asemeja a P2P.

    La idea del grid es que el poder de cómputo siempre esté presente a semejanza de la red eléctrica.

    Esto a dado pie al software bajo demanda.

    edu.red

    Sistemas Distribuidos C1 C2 Cn P2P Simétrico C0 Coordinador C1 C2 Cn … Cluster Asimétrico Planificador CPU Memoria Disco C1 Planificador CPU Memoria DISCO C2 Planificador CPU MEMORIA Disco Cn . . . Grid computing

    edu.red

    Evolución de Sistemas Distribuidos Esquema básico de Arpanet en 1969 Amoeba

    edu.red

    Cómputo paralelo ¿Es el cómputo paralelo un sistema distribuido?

    Sí y No. Depende de la implementación.

    Los objetivos de la programación en paralelo son:

    Reducir el tiempo de procesamiento utilizado por un algoritmo convencional

    Reducir la complejidad del algoritmo

    edu.red

    Paralelismo A B C D A B C D P1 P2 P3 P4 Homoparalelismo A B C D A B C D P1 P2 P3 P4 Hetereoparalelismo

    edu.red

    Paralelismo El problema del paralelismo radica en que muchos algoritmos no pueden paralelizarse (son seriales o secuenciales).

    Existen dos tecnologías principales para realizar paralelismo:

    PVM (Parallel Virtual Machine)

    MPI (Message Passing Interface)

    Partes: 1, 2
    Página siguiente