La descarga está en progreso. Por favor, espere

La descarga está en progreso. Por favor, espere

Universidad Católica Andrés Bello Dirección de Formación Continua Prof. Yudith Cardinale Estudios Avanzados en Gestión de las Comunicaciones y Tecnologías.

Presentaciones similares


Presentación del tema: "Universidad Católica Andrés Bello Dirección de Formación Continua Prof. Yudith Cardinale Estudios Avanzados en Gestión de las Comunicaciones y Tecnologías."— Transcripción de la presentación:

1 Universidad Católica Andrés Bello Dirección de Formación Continua Prof. Yudith Cardinale Estudios Avanzados en Gestión de las Comunicaciones y Tecnologías de la Información Módulo II Arquitecturas de Sistemas Módulo II Tecnologías Informáticas Arquitecturas de Sistemas Prof. Yudith Cardinale Universidad Simón Bolívar

2 Universidad Católica Andrés Bello Dirección de Formación Continua Prof. Yudith Cardinale Estudios Avanzados en Gestión de las Comunicaciones y Tecnologías de la Información Módulo II Arquitecturas de SistemasContenido Introducción Arquitecturas de Hardware Arquitecturas de Software Tendencias en el Desarrollo de Sistemas Distribuidos Ejemplos

3 Universidad Católica Andrés Bello Dirección de Formación Continua Prof. Yudith Cardinale Estudios Avanzados en Gestión de las Comunicaciones y Tecnologías de la Información Módulo II Arquitecturas de Sistemas 1. Introducción Prof. Yudith Cardinale Universidad Simón Bolívar

4 Universidad Católica Andrés Bello Dirección de Formación Continua Prof. Yudith Cardinale Estudios Avanzados en Gestión de las Comunicaciones y Tecnologías de la Información Módulo II Arquitecturas de Sistemas Introducción Un sistema de computación está formado por una plataforma de hardware, una plataforma de software y un conjunto de usuarios y aplicaciones

5 Universidad Católica Andrés Bello Dirección de Formación Continua Prof. Yudith Cardinale Estudios Avanzados en Gestión de las Comunicaciones y Tecnologías de la Información Módulo II Arquitecturas de Sistemas Introducción procesadores memoria medios de almacenamiento dispositivos de E/Smedios de interconexión sistema de operación sistemas de archivos librerías de comunicación servicios especializados aplicaciones datos/información

6 Universidad Católica Andrés Bello Dirección de Formación Continua Prof. Yudith Cardinale Estudios Avanzados en Gestión de las Comunicaciones y Tecnologías de la Información Módulo II Arquitecturas de Sistemas Introducción Procesadores  Sólo 1  Muchos  Tradicionales o segmentados (pipelines) Memoria  Ram (compartida o distribuida)  Cachés de instrucciones y de datos Elementos de hardware de un sistema de computación:

7 Universidad Católica Andrés Bello Dirección de Formación Continua Prof. Yudith Cardinale Estudios Avanzados en Gestión de las Comunicaciones y Tecnologías de la Información Módulo II Arquitecturas de Sistemas Introducción Dispositivos de E/S:  Discos  De respaldo  Impresoras, scanners y otros Medios de interconexión:  Especializado (buses de alta velocidad y conmutadores)  Genéricos:  Cableados: par trenzado, fibra óptico, coaxial.  Inalámbricos: microondas, satélite, laser. Elementos de hardware de un sistema de computación (cont.):

8 Universidad Católica Andrés Bello Dirección de Formación Continua Prof. Yudith Cardinale Estudios Avanzados en Gestión de las Comunicaciones y Tecnologías de la Información Módulo II Arquitecturas de Sistemas Introducción Sistema de operación:  Monousuarios  Multiusuarios, multitareas  Paralelos  Distribuidos Servicios especilizados:  Sistemas de archivos  Soporte de transacciones  Multimedios (voz y vídeo) Elementos de software de un sistema de computación:  Bases de datos  Seguridad  Acceso remoto

9 Universidad Católica Andrés Bello Dirección de Formación Continua Prof. Yudith Cardinale Estudios Avanzados en Gestión de las Comunicaciones y Tecnologías de la Información Módulo II Arquitecturas de Sistemas Introducción Los usuarios y las aplicaciones utilizan los recursos de hardware y de información del sistema de computación, para fines particulares. secuenciales paralelas distribuidas concurrentes orientadas por objetos aplicaciones:

10 Universidad Católica Andrés Bello Dirección de Formación Continua Prof. Yudith Cardinale Estudios Avanzados en Gestión de las Comunicaciones y Tecnologías de la Información Módulo II Arquitecturas de Sistemas Introducción ¿ Concurrencia: ¿Qué es? Ejecución simultánea de varias tareas o procesos Concurrencia ¿ ¿Cómo se logra? ParalelismoDistribución Sistemas uniprocesadores Sistemas de operación Multiusuarios/multitareas Sistemas multiprocesadores Sistemas de operación paralelos Sistemas de redes Sistemas de operación distribuidos

11 Universidad Católica Andrés Bello Dirección de Formación Continua Prof. Yudith Cardinale Estudios Avanzados en Gestión de las Comunicaciones y Tecnologías de la Información Módulo II Arquitecturas de Sistemas Introducción ¿ Concurrencia: ¿cómo se logra en sistemas uniprocesadores? Hardware Niveles IntraprocesoInterproceso Replicando componentes Arquitectura pipeline Procedores especializados A nivel de instrucciones A nivel de ciclos Hilos (threads) Pipes, puertos Librerías de mensajes

12 Universidad Católica Andrés Bello Dirección de Formación Continua Prof. Yudith Cardinale Estudios Avanzados en Gestión de las Comunicaciones y Tecnologías de la Información Módulo II Arquitecturas de Sistemas 2. Arquitecturas de Hardware Prof. Yudith Cardinale Universidad Simón Bolívar

13 Universidad Católica Andrés Bello Dirección de Formación Continua Prof. Yudith Cardinale Estudios Avanzados en Gestión de las Comunicaciones y Tecnologías de la Información Módulo II Arquitecturas de Sistemas Arquitecturas de hardware Hardware: Recursos físicos que componen el sistema de computación. Arquitecturas centralizadas:  Computadores personales  Estaciones de trabajo  Mainframes Arquitecturas paralelas:  Computadores vectoriales  Computadores paralelos  Supercomputadores Arquitecturas distribuidas:  Clusters  Redes  Computational Grids (Metasistemas)

14 Universidad Católica Andrés Bello Dirección de Formación Continua Prof. Yudith Cardinale Estudios Avanzados en Gestión de las Comunicaciones y Tecnologías de la Información Módulo II Arquitecturas de Sistemas Arquitecturas de hardware Clasificación general (según Flynn, 1972): Basada en el nro. de flujos de instrucciones y el nro. de flujos de datos SISD: Single Instruction, Single Data  Computadores de 1 CPU  Mainframes SIMD: Single Instruction, Multiple Data  Computadores vectoriales.  Computadores paralelos.

15 Universidad Católica Andrés Bello Dirección de Formación Continua Prof. Yudith Cardinale Estudios Avanzados en Gestión de las Comunicaciones y Tecnologías de la Información Módulo II Arquitecturas de Sistemas Arquitecturas de hardware Clasificación general (según Flynn, 1972): cont. MISD: Multiple Instruction, Single Data.  No hay computadores en esta clasificación. MIMD: Multiple Instruction, Multiple Data.  Computadores paralelos (supercomputadores)  Sistemas Distribuidos.

16 Universidad Católica Andrés Bello Dirección de Formación Continua Prof. Yudith Cardinale Estudios Avanzados en Gestión de las Comunicaciones y Tecnologías de la Información Módulo II Arquitecturas de Sistemas Arquitecturas de hardware Clasificación según Tanenbaum para los sistemas MIMD

17 Universidad Católica Andrés Bello Dirección de Formación Continua Prof. Yudith Cardinale Estudios Avanzados en Gestión de las Comunicaciones y Tecnologías de la Información Módulo II Arquitecturas de Sistemas Arquitecturas de hardware MIMD: 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

18 Universidad Católica Andrés Bello Dirección de Formación Continua Prof. Yudith Cardinale Estudios Avanzados en Gestión de las Comunicaciones y Tecnologías de la Información Módulo II Arquitecturas de Sistemas Arquitecturas de hardware MIMD: Multiprocesadores basados en conmutadores Usando un conmutador de cruceta (crossbar switch) N procesadores N memorias Crosspoint switch – Problema: El Nro. de puntos de cruce puede ser alto: N 2 – Solución: Red Omega

19 Universidad Católica Andrés Bello Dirección de Formación Continua Prof. Yudith Cardinale Estudios Avanzados en Gestión de las Comunicaciones y Tecnologías de la Información Módulo II Arquitecturas de Sistemas Arquitecturas de hardware Usando una red Omega Conmutador 2x2 – Nro. de etapas: log 2 N – Nro. de conmutadores por etapa: N/2 – Nro. Total de conmutadores: N/2 * log 2 N – Problema: Retardo

20 Universidad Católica Andrés Bello Dirección de Formación Continua Prof. Yudith Cardinale Estudios Avanzados en Gestión de las Comunicaciones y Tecnologías de la Información Módulo II Arquitecturas de Sistemas Arquitecturas de hardware MIMD: Multicomputadores basados en buses Estaciones de Trabajo

21 Universidad Católica Andrés Bello Dirección de Formación Continua Prof. Yudith Cardinale Estudios Avanzados en Gestión de las Comunicaciones y Tecnologías de la Información Módulo II Arquitecturas de Sistemas Arquitecturas de hardware Una red es una colección de computadores autónomos interconectados a través de un Sistema de Comunicaciones Ventajas:  Compartir recursos  Disponibilidad por duplicación de recursos  Ahorro de dinero  Poderoso medio de comunicación Inconvenientes:  Seguridad  Personal especializado

22 Universidad Católica Andrés Bello Dirección de Formación Continua Prof. Yudith Cardinale Estudios Avanzados en Gestión de las Comunicaciones y Tecnologías de la Información Módulo II Arquitecturas de Sistemas Arquitecturas de hardware Una red puede clasificarse: Según la tecnología:  LAN (Varios Mbps, 2.5 Km)  MAN (> 1 Mbps, 100 Km)  WAN (< 1 Mbps, ilimitado) Según la propiedad:  Públicas (Frame Relay, ATM)  Privadas (Petroleras)

23 Universidad Católica Andrés Bello Dirección de Formación Continua Prof. Yudith Cardinale Estudios Avanzados en Gestión de las Comunicaciones y Tecnologías de la Información Módulo II Arquitecturas de Sistemas Arquitecturas de hardware Un cluster es un conjunto de computadores convencionales interconectados a través de una red de comunicaciones de alta velocidad Se construyen con componentes commodity  PCs, estaciones de trabajo, tarjetas de procesadores  Cada nodo puede ser mono o multi procesador Usos:  Capacidad de cómputo para clientes ligeros ( throughput)  Alta disponibilidad y escalabilidad (replicación de servicios: motores de búsqueda)  Como plataforma paralela (alto desempeño)

24 Universidad Católica Andrés Bello Dirección de Formación Continua Prof. Yudith Cardinale Estudios Avanzados en Gestión de las Comunicaciones y Tecnologías de la Información Módulo II Arquitecturas de Sistemas Arquitecturas de hardware MIMD: Multicomputadores con conmutadores Malla (Parsytec)  El último elemento en una fila está conectado al primero en la próxima. Hipercubos (Ncube)

25 Universidad Católica Andrés Bello Dirección de Formación Continua Prof. Yudith Cardinale Estudios Avanzados en Gestión de las Comunicaciones y Tecnologías de la Información Módulo II Arquitecturas de Sistemas Arquitecturas de hardware RAID: Redundant Array of Inexpensive Disk Drives Raid nivel 0: fraccionamiento de datos sin tolerancia a fallas ( Data Striping without fault tolerance )  Aplicaciones recomendadas: Producción y edición de videos, edición de imágenes, aplicaciones que requieren alto ancho de banda.

26 Universidad Católica Andrés Bello Dirección de Formación Continua Prof. Yudith Cardinale Estudios Avanzados en Gestión de las Comunicaciones y Tecnologías de la Información Módulo II Arquitecturas de Sistemas Arquitecturas de hardware RAID: Redundant Array of Inexpensive Disk Drives Raid nivel 1: discos espejos ( Mirroring and Duplexing )  Aplicaciones recomendadas: Contabilidad, nómina, finanzas, aplicaciones que requieren alta disponibilidad.

27 Universidad Católica Andrés Bello Dirección de Formación Continua Prof. Yudith Cardinale Estudios Avanzados en Gestión de las Comunicaciones y Tecnologías de la Información Módulo II Arquitecturas de Sistemas Arquitecturas de hardware RAID: Redundant Array of Inexpensive Disk Drives Raid nivel 2: fraccionamiento y sombras ( Striping and Shadowing )  Excelente disponibilidad de datos y alto desempeño

28 Universidad Católica Andrés Bello Dirección de Formación Continua Prof. Yudith Cardinale Estudios Avanzados en Gestión de las Comunicaciones y Tecnologías de la Información Módulo II Arquitecturas de Sistemas Arquitecturas de hardware RAID: Redundant Array of Inexpensive Disk Drives Raid nivel 3: transferencia paralela con paridad ( Data Striping with Parity Checking )  Aplicaciones recomendadas: Producción y edición de videos, edición de imágenes, aplicaciones que requieran alto rendimiento ( througput)

29 Universidad Católica Andrés Bello Dirección de Formación Continua Prof. Yudith Cardinale Estudios Avanzados en Gestión de las Comunicaciones y Tecnologías de la Información Módulo II Arquitecturas de Sistemas Arquitecturas de hardware RAID: Redundant Array of Inexpensive Disk Drives Raid nivel 4: fraccionamiento con paridad ( Block interleaved data striping with parity checking )  Buena disponibilidad de datos, alto desempeño para operaciones de lectura, sólo se requiere un disco extra para paridad.

30 Universidad Católica Andrés Bello Dirección de Formación Continua Prof. Yudith Cardinale Estudios Avanzados en Gestión de las Comunicaciones y Tecnologías de la Información Módulo II Arquitecturas de Sistemas Arquitecturas de hardware RAID: Redundant Array of Inexpensive Disk Drives Raid nivel 5: fraccionamiento con paridad distribuida ( Block interleaved data striping with distributed parity checking )  Aplicaciones recomendadas: servidores de aplicaciones y de rchivos, servidores de base de datos, servidores de noticias, correos y web, servidores Intranets. El nivel más versátil.

31 Universidad Católica Andrés Bello Dirección de Formación Continua Prof. Yudith Cardinale Estudios Avanzados en Gestión de las Comunicaciones y Tecnologías de la Información Módulo II Arquitecturas de Sistemas Arquitecturas de hardware RAID: Redundant Array of Inexpensive Disk Drives Raid nivel 6: nivel 5 con doble paridad. La solución perfecta para aplicaciones de misión crítica. Raid nivel 7: fraccionamiento independiente y discos de paridad. Raid nivel 10: niveles 1 y 0 combinados. Favorable para servidores de bases de datos que requieren alto desempeño y tolerancia a fallas. Raid nivel 53: niveles 0 y 3. Requiere un mínimo de 5 discos para implementarse.

32 Universidad Católica Andrés Bello Dirección de Formación Continua Prof. Yudith Cardinale Estudios Avanzados en Gestión de las Comunicaciones y Tecnologías de la Información Módulo II Arquitecturas de Sistemas 3. Arquitecturas de Software Prof. Yudith Cardinale Universidad Simón Bolívar

33 Universidad Católica Andrés Bello Dirección de Formación Continua Prof. Yudith Cardinale Estudios Avanzados en Gestión de las Comunicaciones y Tecnologías de la Información Módulo II Arquitecturas de Sistemas Arquitecturas de software Software: Conjunto de componentes que administran y acceden los recursos físicos y de información de un sistema de computación REDES INTERNET INTRANET S UNIX LINUX WINDOWS Cliente/Servidor Sistemas de Operación Distribuidos WEB Software abierto Middleware

34 Universidad Católica Andrés Bello Dirección de Formación Continua Prof. Yudith Cardinale Estudios Avanzados en Gestión de las Comunicaciones y Tecnologías de la Información Módulo II Arquitecturas de Sistemas Arquitecturas de software Sistemas Distribuidos Sistemas de Cómputo compuestos por un gran número de CPUs, conectados mediante una red de alta velocidad Colección de computadores independientes que aparecen ante el usuario como una sola máquina virtual TRANSPARENCIA ( ¿ OPACIDAD?) RENDIMIENTO FIABILIDAD SEGURIDAD ESCALABILIDAD

35 Universidad Católica Andrés Bello Dirección de Formación Continua Prof. Yudith Cardinale Estudios Avanzados en Gestión de las Comunicaciones y Tecnologías de la Información Módulo II Arquitecturas de Sistemas Arquitecturas de software Sistemas de Operación Distribuidos Colección de componentes de software que simplifican las tareas de programación y soporta 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

36 Universidad Católica Andrés Bello Dirección de Formación Continua Prof. Yudith Cardinale Estudios Avanzados en Gestión de las Comunicaciones y Tecnologías de la Información Módulo II Arquitecturas de Sistemas Arquitecturas de software Sistemas Paralelos Buscan obtener máxima velocidad en un problema determinado. Software fuertemente acoplado. 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 Sistemas de Redes

37 Universidad Católica Andrés Bello Dirección de Formación Continua Prof. Yudith Cardinale Estudios Avanzados en Gestión de las Comunicaciones y Tecnologías de la Información Módulo II Arquitecturas de Sistemas Arquitecturas de software Un sistema distribuido permite acceso transparente a los recursos Un sistema de red requiere explícitamente la localización del recurso En los sistemas distribuidos tradicionales, los nodos no tienen dueños. En los sistemas de red, cada nodo tiene su propietario. En los sistemas distribuidos tradicionales, cada nodo tiene instalado el mismo kernel. En los sistemas de red, los nodos pueden tener diferentes sistemas de operación. Actualmente el concepto de sistemas distribuidos considera cualquier sistema con posibilidades de cómputo remoto y acceso a información repartida geográficamente

38 Universidad Católica Andrés Bello Dirección de Formación Continua Prof. Yudith Cardinale Estudios Avanzados en Gestión de las Comunicaciones y Tecnologías de la Información Módulo II Arquitecturas de Sistemas Arquitecturas de software Arquitectura de los Sistemas Distribuidos Computadores y red de interconexión Sistema de OperaciónAplicación de Servicios Middleware  Enmascara la heterogeneidad  Proporciona un modelo de programación

39 Universidad Católica Andrés Bello Dirección de Formación Continua Prof. Yudith Cardinale Estudios Avanzados en Gestión de las Comunicaciones y Tecnologías de la Información Módulo II Arquitecturas de Sistemas Arquitecturas de software Internet:  Vasta colección de redes de computadores de diferentes tipos interconectados.  Existe un medio común de comunicación (TCP/IP, SNA, BitNet) basado en pase de mensajes.  Permite acceso a servicios remotos:  World Wide Web  Correo electrónico  Transferencias de archivos  Multimedia para acceso a audio y video (música, videoconferencias, etc.) Ejemplos de Sistemas Distribuidos:

40 Universidad Católica Andrés Bello Dirección de Formación Continua Prof. Yudith Cardinale Estudios Avanzados en Gestión de las Comunicaciones y Tecnologías de la Información Módulo II Arquitecturas de Sistemas Arquitecturas de software Intranets:  Porción de Internet administrada separadamente y con un acceso limitado según políticas de seguridad local  Puede estar compuesta de varias redes locales (LANs)  La configuración de la red es responsabilidad de la organización que la administra  Por lo general se mantiene un conjunto de páginas web con acceso restringido desde el exterior  Se puede acceder a los servicios de una Intranet desde el exterior, siempre que se tenga el código de acceso. Ejemplos de Sistemas Distribuidos:

41 Universidad Católica Andrés Bello Dirección de Formación Continua Prof. Yudith Cardinale Estudios Avanzados en Gestión de las Comunicaciones y Tecnologías de la Información Módulo II Arquitecturas de Sistemas Arquitecturas de software Modelo Cliente/Servidor: Máquina localMáquina remota Cliente Servidor Petición del servicio Respuesta Todos los servicios sobre Internet funcionan bajo este esquema El medio de envío para la petición/respuesta es la red Un servidor debe poder manejar varios usuarios concurrentemente

42 Universidad Católica Andrés Bello Dirección de Formación Continua Prof. Yudith Cardinale Estudios Avanzados en Gestión de las Comunicaciones y Tecnologías de la Información Módulo II Arquitecturas de Sistemas Arquitecturas de software Servicio HTTP: ejemplo del modelo Cliente/Servidor Los navegadores se comunican con los servidores Web por medio del protocolo HTTP (Hyper Text Transfer Protocol, RFC 2616). HTTP es un protocolo suficientemente ligero y rápido para ser utilizado en un sistema colaborativo de información de medios distribuidos. Es un protocolo genérico orientado a objetos, por lo cual se puede utilizar para diversos tipos de aplicaciones. HTTP fue creado en 1992 por Tim Berners-Lee, reemplazando en gran medida los sistemas Gopher.

43 Universidad Católica Andrés Bello Dirección de Formación Continua Prof. Yudith Cardinale Estudios Avanzados en Gestión de las Comunicaciones y Tecnologías de la Información Módulo II Arquitecturas de Sistemas Arquitecturas de software ¿ Servicio HTTP: ¿ Cómo funciona? http://www.ldc.usb.ve/~yudith GET /~yudith HTTP/1.0 Accept: text/plain Accept: text/html User-Agent: Netscape Communicator 4.76 HTTP/1.0 200 OK Server: Apache/2.0.16 Content-type: text/html Last-Modified: Thu Jul 7 00:25:33 2001 Content-Length: 2003...

44 Universidad Católica Andrés Bello Dirección de Formación Continua Prof. Yudith Cardinale Estudios Avanzados en Gestión de las Comunicaciones y Tecnologías de la Información Módulo II Arquitecturas de Sistemas Arquitecturas de software PROXIES Servicio HTTP: PROXIES

45 Universidad Católica Andrés Bello Dirección de Formación Continua Prof. Yudith Cardinale Estudios Avanzados en Gestión de las Comunicaciones y Tecnologías de la Información Módulo II Arquitecturas de Sistemas Arquitecturas de software CGI o ASP o Servlets Servicio HTTP: CGI o ASP o Servlets http://www.ldc.usb.ve/cgi-bin/hello.pl GET /cgi-bin/hello.pl HTTP/1.0 Accept: text/plain Accept: text/html User-Agent: Netscape Communicator 4.76 El servidor crea un nuevo proceso y coloca los valores apropiados en las variables de ambiente. Se pasan los parámetros por stdin o por argumentos según el método del POST Se ejecuta la aplicación CGI, los resultados se toman de stdout.

46 Universidad Católica Andrés Bello Dirección de Formación Continua Prof. Yudith Cardinale Estudios Avanzados en Gestión de las Comunicaciones y Tecnologías de la Información Módulo II Arquitecturas de Sistemas Arquitecturas de software Contenido dinámico usando módulos Servicio HTTP: Contenido dinámico usando módulos en el servidor https://webmail.cesma.usb.ve Conexión segura

47 Universidad Católica Andrés Bello Dirección de Formación Continua Prof. Yudith Cardinale Estudios Avanzados en Gestión de las Comunicaciones y Tecnologías de la Información Módulo II Arquitecturas de Sistemas Arquitecturas de software Problemas Servicio HTTP: Problemas Uso de conexiones persistentes Causa gran congestión Uso de cookies, manejo de sesiones Es un protocolo sin estado Implementación de nuevos encabezados en HTTP/1.1 Problemas de caching Implementación de HTTPSEs inseguro SoluciónProblema

48 Universidad Católica Andrés Bello Dirección de Formación Continua Prof. Yudith Cardinale Estudios Avanzados en Gestión de las Comunicaciones y Tecnologías de la Información Módulo II Arquitecturas de Sistemas Arquitecturas de software Servicios proporcionados por múltiples servidores cliente servidor Servicio Por distribución o por réplicas Web: cada servidor web administra sus propios recursos. Con un navegador un usuario accede a cualquier servicio. NIS ( Network Information Service) en una LAN. Posee réplicas del archivo de contraseñas. cliente servidor

49 Universidad Católica Andrés Bello Dirección de Formación Continua Prof. Yudith Cardinale Estudios Avanzados en Gestión de las Comunicaciones y Tecnologías de la Información Módulo II Arquitecturas de Sistemas Arquitecturas de software Procesos de igual a igual Todos los procesos desempeñan tareas semejantes. La sincronización y comunicación es responsabilidad de los procesos. Aplic. Código de coordin Aplic. Código de coordin Aplic. Código de coordin

50 Universidad Católica Andrés Bello Dirección de Formación Continua Prof. Yudith Cardinale Estudios Avanzados en Gestión de las Comunicaciones y Tecnologías de la Información Módulo II Arquitecturas de Sistemas Arquitecturas de software Un sistema de operación para clusters Transforma un cluster de PCs (estaciones de trabajo y servidores) en un SMP. Distribuye transparentemente los procesos entre los nodos, para alcanzar mejor desempeño. Realiza actividades de monitoreo, migración y balance de carga. K-Mosix es el kernel compatible con linux U-Mosix es un despachador sobre plataformas Unix (FreeBSD y Solaris) y K-Mosix

51 Universidad Católica Andrés Bello Dirección de Formación Continua Prof. Yudith Cardinale Estudios Avanzados en Gestión de las Comunicaciones y Tecnologías de la Información Módulo II Arquitecturas de Sistemas Arquitecturas de software Plataforma de desarrollo y prueba 55 nodos (quad, dual, single) P-III 1GHz – 550 MHz conectados con Fas Ethernet. Unos nodos son stand-alone y la mayoría usan NFS. Aplicaciones: Procesos paralelos CPU-bound, procesos paralelos I/O- bound, procesos sencillos, servidores Web escalables (requieren análisis estadísticos de información histórica)

52 Universidad Católica Andrés Bello Dirección de Formación Continua Prof. Yudith Cardinale Estudios Avanzados en Gestión de las Comunicaciones y Tecnologías de la Información Módulo II Arquitecturas de Sistemas Llamadas a procedimientos remotos (RPC) Invocación a un método remoto (RMI) Modelo de programación basado en eventos Modelos de Programación para Aplicaciones Distribuidas Arquitecturas de software

53 Universidad Católica Andrés Bello Dirección de Formación Continua Prof. Yudith Cardinale Estudios Avanzados en Gestión de las Comunicaciones y Tecnologías de la Información Módulo II Arquitecturas de Sistemas Modelos de Objetos Distribuidos Arquitecturas de software Interfaces en los sistemas distribuidos  Interfaces de servicio  Interfaces remotas Los lenguajes de definición de interfaces (IDL) están diseñados para permitir que los objetos implementados en lenguajes diferentes se invoquen unos a otros. Ejem: CORBA IDL, Sun XDR.

54 Universidad Católica Andrés Bello Dirección de Formación Continua Prof. Yudith Cardinale Estudios Avanzados en Gestión de las Comunicaciones y Tecnologías de la Información Módulo II Arquitecturas de Sistemas Modelos de Objetos Distribuidos Arquitecturas de software Un programa OO consta de un conjunto de objetos que interactúan entre ellos. Cada objeto se compone de un conjunto de datos y un conjunto de métodos. Un objeto se comunica con otro objeto invocando sus métodos, generalmente pasándole argumentos y recibiendo resultados Se puede acceder a los objetos mediante referencias a objetos.

55 Universidad Católica Andrés Bello Dirección de Formación Continua Prof. Yudith Cardinale Estudios Avanzados en Gestión de las Comunicaciones y Tecnologías de la Información Módulo II Arquitecturas de Sistemas Modelos de Objetos Distribuidos Arquitecturas de software En el modelo C/S, los objetos son administrados por servidores y sus clientes invocan sus métodos utilizando una invocación de métodos remota (RMI) Los sistemas de objetos distribuidos pueden adoptar cualquiera de los modelos arquitectónicos conocidos. Cuando el cliente invoca un método de un objeto remoto, se envía un mensaje al servidor que lo administra.

56 Universidad Católica Andrés Bello Dirección de Formación Continua Prof. Yudith Cardinale Estudios Avanzados en Gestión de las Comunicaciones y Tecnologías de la Información Módulo II Arquitecturas de Sistemas Modelos de Objetos Distribuidos Arquitecturas de software A C BD E Invocación Remota Invocación Remota Invocaciones locales Objeto Remoto Cada proceso contiene un conjunto de objetos, algunos de los cuales pueden recibir tanto invocaciones locales como remotas. Otros objetos sólo pueden recibir invocaciones locales.

57 Universidad Católica Andrés Bello Dirección de Formación Continua Prof. Yudith Cardinale Estudios Avanzados en Gestión de las Comunicaciones y Tecnologías de la Información Módulo II Arquitecturas de Sistemas 4. Tendencias en el Desarrollo de Sistemas Distribuidos Prof. Yudith Cardinale Universidad Simón Bolívar

58 Universidad Católica Andrés Bello Dirección de Formación Continua Prof. Yudith Cardinale Estudios Avanzados en Gestión de las Comunicaciones y Tecnologías de la Información Módulo II Arquitecturas de Sistemas Tendencias en el desarrollo CORBA y DCOM: Modelo de Objetos Distribuidos Enterprise Java Beans : Modelo de Componentes Distribuidos Grids computacionales: Un mundo infinito de recursos Peer-to-Peer computing: Cómputo intensivo descentralizado

59 Universidad Católica Andrés Bello Dirección de Formación Continua Prof. Yudith Cardinale Estudios Avanzados en Gestión de las Comunicaciones y Tecnologías de la Información Módulo II Arquitecturas de Sistemas Tendencias en el desarrollo CORBA: Modelo de Objetos Distribuidos CORBA ( Common Object Request Broker Architecture ) es un estándar para construir objetos distribuidos. Propuesto por el Object Management Group (OMG)

60 Universidad Católica Andrés Bello Dirección de Formación Continua Prof. Yudith Cardinale Estudios Avanzados en Gestión de las Comunicaciones y Tecnologías de la Información Módulo II Arquitecturas de Sistemas Tendencias en el desarrollo OMG (1989) Es un consorcio internacional que promueve el desarrollo de software orientado por objetos El objetivo del OMG es proveer un marco de arquitectura común para permitir la interacción de objetos en plataformas heterogéneas y distribuidas. Inicialmente estuvo conformado por 8 compañías: 3Com Corpotation, American Airlines, Canon Inc., Data General, Hewlett-Packard, Philips Telecommunications N.V., Sun Microsystems y Unisys Corporation. Actualmente hay más de 500 miembros

61 Universidad Católica Andrés Bello Dirección de Formación Continua Prof. Yudith Cardinale Estudios Avanzados en Gestión de las Comunicaciones y Tecnologías de la Información Módulo II Arquitecturas de Sistemas Tendencias en el desarrollo OMA: Object Management Architecture. Modelo conceptual y arquitectura de referencia para construir aplicaciones. APP. Objects Common Facilities Object Request Broquer (ORB) Object Services

62 Universidad Católica Andrés Bello Dirección de Formación Continua Prof. Yudith Cardinale Estudios Avanzados en Gestión de las Comunicaciones y Tecnologías de la Información Módulo II Arquitecturas de Sistemas Tendencias en el desarrollo Enfoque CORBA INTERFACE REPOSITORY IDL COMPILER IMPLEMENTATION REPOSITORY In args ORB CORE OBJECT ADAPTER CLIENTOBJECTS OPERATION() DII IDL STUBS ORB INTERFACE IDL SKELETON GIOP/IIOP out args + return value DSI

63 Universidad Católica Andrés Bello Dirección de Formación Continua Prof. Yudith Cardinale Estudios Avanzados en Gestión de las Comunicaciones y Tecnologías de la Información Módulo II Arquitecturas de Sistemas IDL: Interface Definition Language Es un lenguaje declarativo Define tipos de objetos especificando sus interfaces estáticas Provee encapsulamiento en dos niveles: tipos de datos y objetos. Sintaxis derivada de C++ Tendencias en el desarrollo Enfoque CORBA

64 Universidad Católica Andrés Bello Dirección de Formación Continua Prof. Yudith Cardinale Estudios Avanzados en Gestión de las Comunicaciones y Tecnologías de la Información Módulo II Arquitecturas de Sistemas // Ejemplo de especificación de IDL: mybank.idl Module BANK  interface BankAccount  enum account_kind  checking,saving  ; //types exception account_not_available  string reason  ; //exceptions exception incorrect_pin  ; readonly attribute float balance; //atributes attribute account_kind what_kind_of_account; //operations void access (in string account, in string pin) raises (account_not_available, incorrect_pin); void deposit (in float f, out float new_balance) raises (account_not_available); void withdraw (in float f, out float new_balance) raises (account_not_available);   Tendencias en el desarrollo: CORBA

65 Universidad Católica Andrés Bello Dirección de Formación Continua Prof. Yudith Cardinale Estudios Avanzados en Gestión de las Comunicaciones y Tecnologías de la Información Módulo II Arquitecturas de Sistemas Object Implementation ORB Interfa ce ORB Core IDL Sk Object Adapter DSI Client ORB Core DII IDL Stub REQUEST Tendencias en el desarrollo Enfoque CORBA

66 Universidad Católica Andrés Bello Dirección de Formación Continua Prof. Yudith Cardinale Estudios Avanzados en Gestión de las Comunicaciones y Tecnologías de la Información Módulo II Arquitecturas de Sistemas IDL Stubs:   Funciones generadas desde la interfaz IDL para “enlazarlas” a los clientes   Provee una interfaz de invocación estática Dynamic Invocation Interface (DII)   Permite especificar y construir requerimientos en tiempo de corrida.   Operaciones: create_request, invoke, send, get_response Tendencias en el desarrollo Enfoque CORBA

67 Universidad Católica Andrés Bello Dirección de Formación Continua Prof. Yudith Cardinale Estudios Avanzados en Gestión de las Comunicaciones y Tecnologías de la Información Módulo II Arquitecturas de Sistemas IDL Skeleton:   Funciones generadas desde la interfaz IDL para “enlazarlas” a las implementaciones de objetos. Dynamic Skeleton Interface (DSI)   Análogo al DII del lado de la implementación de objetos   Puede recibir invocaciones estáticas o dinámicas desde los clientes Tendencias en el desarrollo Enfoque CORBA

68 Universidad Católica Andrés Bello Dirección de Formación Continua Prof. Yudith Cardinale Estudios Avanzados en Gestión de las Comunicaciones y Tecnologías de la Información Módulo II Arquitecturas de Sistemas ORB Interface:   Provee funciones para acceder directamente al ORB core desde los clientes y desde las implementaciones de objetos   Su interfaz no depende de la interfaz de los clientes ni de las interfaces de las implementaciones de objetos Object Adapter:   Provee funciones para instanciar objetos, pasar requerimientos y manipular referencias de objetos   Provee inter-operabilidad Tendencias en el desarrollo Enfoque CORBA

69 Universidad Católica Andrés Bello Dirección de Formación Continua Prof. Yudith Cardinale Estudios Avanzados en Gestión de las Comunicaciones y Tecnologías de la Información Módulo II Arquitecturas de Sistemas Repositorio de Interfaces ( Interface Repository) :   Provee persistencia de objetos   Su información permite que un programa encuentre un objeto cuya interfaz no conoce en tiempo de compilación Repositorio de Implementaciones ( Implementation Repository) :   Contiene información que permite al ORB core localizar y activar implementaciones de objetos Tendencias en el desarrollo Enfoque CORBA

70 Universidad Católica Andrés Bello Dirección de Formación Continua Prof. Yudith Cardinale Estudios Avanzados en Gestión de las Comunicaciones y Tecnologías de la Información Módulo II Arquitecturas de Sistemas Tendencias en el desarrollo Enfoque CORBA HTTP ORB MPP NOWs Oracle Illustra mSQL CORBA BUS ORB

71 Universidad Católica Andrés Bello Dirección de Formación Continua Prof. Yudith Cardinale Estudios Avanzados en Gestión de las Comunicaciones y Tecnologías de la Información Módulo II Arquitecturas de Sistemas Tendencias en el desarrollo Qué es:  Protocolo que permite a componentes de software comunicarse directamente sobre una red de una manera eficiente, confiable y segura.  Es el CORBA para el mundo Microsoft DCOM: Distributed Component Object Model

72 Universidad Católica Andrés Bello Dirección de Formación Continua Prof. Yudith Cardinale Estudios Avanzados en Gestión de las Comunicaciones y Tecnologías de la Información Módulo II Arquitecturas de Sistemas Tendencias en el desarrollo DCOM: Distributed Component Object Model

73 Universidad Católica Andrés Bello Dirección de Formación Continua Prof. Yudith Cardinale Estudios Avanzados en Gestión de las Comunicaciones y Tecnologías de la Información Módulo II Arquitecturas de Sistemas Tendencias en el desarrollo DCOM: Distributed Component Object Model

74 Universidad Católica Andrés Bello Dirección de Formación Continua Prof. Yudith Cardinale Estudios Avanzados en Gestión de las Comunicaciones y Tecnologías de la Información Módulo II Arquitecturas de Sistemas Tendencias en el desarrollo Qué es:  Modelo de componentes que simplifica el desarrollo de midlewares proveyendo soporte automático de servicios como transacciones, seguridad, conectividad a base de datos y otros.  Provee facilidades para desarrollar servicios Web.  Ideal para desarrollar soluciones para ambientes con Sistemas de Operación y hardware heterogéneos. Enterprise Java Beans : Modelo de Componentes Distribuidos

75 Universidad Católica Andrés Bello Dirección de Formación Continua Prof. Yudith Cardinale Estudios Avanzados en Gestión de las Comunicaciones y Tecnologías de la Información Módulo II Arquitecturas de Sistemas Tendencias en el desarrollo Enterprise Java Beans : Arquitectura

76 Universidad Católica Andrés Bello Dirección de Formación Continua Prof. Yudith Cardinale Estudios Avanzados en Gestión de las Comunicaciones y Tecnologías de la Información Módulo II Arquitecturas de Sistemas Tendencias en el desarrollo Enterprise Java Beans : Arquitectura

77 Universidad Católica Andrés Bello Dirección de Formación Continua Prof. Yudith Cardinale Estudios Avanzados en Gestión de las Comunicaciones y Tecnologías de la Información Módulo II Arquitecturas de Sistemas Tendencias en el desarrollo Enterprise Java Beans : Clientes

78 Universidad Católica Andrés Bello Dirección de Formación Continua Prof. Yudith Cardinale Estudios Avanzados en Gestión de las Comunicaciones y Tecnologías de la Información Módulo II Arquitecturas de Sistemas Tendencias en el desarrollo Enterprise Java Beans : Clientes

79 Universidad Católica Andrés Bello Dirección de Formación Continua Prof. Yudith Cardinale Estudios Avanzados en Gestión de las Comunicaciones y Tecnologías de la Información Módulo II Arquitecturas de Sistemas Tendencias en el desarrollo J2EE: Java2 Enterprise Edition

80 Universidad Católica Andrés Bello Dirección de Formación Continua Prof. Yudith Cardinale Estudios Avanzados en Gestión de las Comunicaciones y Tecnologías de la Información Módulo II Arquitecturas de Sistemas Tendencias en el desarrollo J2EE: Java2 Enterprise Edition: Client Tier

81 Universidad Católica Andrés Bello Dirección de Formación Continua Prof. Yudith Cardinale Estudios Avanzados en Gestión de las Comunicaciones y Tecnologías de la Información Módulo II Arquitecturas de Sistemas Tendencias en el desarrollo J2EE: Java2 Enterprise Edition: Web Tier

82 Universidad Católica Andrés Bello Dirección de Formación Continua Prof. Yudith Cardinale Estudios Avanzados en Gestión de las Comunicaciones y Tecnologías de la Información Módulo II Arquitecturas de Sistemas Tendencias en el desarrollo J2EE: Java2 Enterprise Edition: Business y EIS Tiers (EIS: Enterprise Information System)

83 Universidad Católica Andrés Bello Dirección de Formación Continua Prof. Yudith Cardinale Estudios Avanzados en Gestión de las Comunicaciones y Tecnologías de la Información Módulo II Arquitecturas de Sistemas Tendencias en el desarrollo Computación Ubicua : Grids computacionales -- Peer-to-Peer computing Dónde se aplica el concepto de ubicuidad:  Se ofrece la misma imagen desde cualquiera de los lugares de trabajo (la misma interfaz está en todas partes)  Los procesos se ejecutan en alguna plataforma elegida por el sistema (el hardware está en todas partes)  No necesariamente disjuntas  Sistemas conformados por sistemas

84 Universidad Católica Andrés Bello Dirección de Formación Continua Prof. Yudith Cardinale Estudios Avanzados en Gestión de las Comunicaciones y Tecnologías de la Información Módulo II Arquitecturas de Sistemas Hay aplicaciones que requieren TODO (¡o casi!) el poder de cómputo que puedan darle Este tipo de aplicación se conoce como aplicaciones de alto rendimiento (HPC, High Performance Computing) Aplicaciones de alta demanda de cómputo Tendencias en el desarrollo

85 Universidad Católica Andrés Bello Dirección de Formación Continua Prof. Yudith Cardinale Estudios Avanzados en Gestión de las Comunicaciones y Tecnologías de la Información Módulo II Arquitecturas de Sistemas Aplicaciones HPC: modelación, simulación y análisis Ciencias de la vida CAD/CAM Aeroespacio Aplicaciones Militares Internet & e-commerce Tendencias en el desarrollo

86 Universidad Católica Andrés Bello Dirección de Formación Continua Prof. Yudith Cardinale Estudios Avanzados en Gestión de las Comunicaciones y Tecnologías de la Información Módulo II Arquitecturas de Sistemas Computadoras para HPC La solución utilizada típicamente era construir máquinas paralelas o super-computadoras (de hasta 30M$) ubicadas en centros especializados Más recientemente, los centros especializados construyeron clusters Para agregar más poder de cómputo Unir las computadoras de estos centros (redes locales de alta velocidad) Unir estos centros con redes de alta velocidad (¿Internet 2?) ¿Unir a todo el que quiera/pueda aportar recursos? Tendencias en el desarrollo

87 Universidad Católica Andrés Bello Dirección de Formación Continua Prof. Yudith Cardinale Estudios Avanzados en Gestión de las Comunicaciones y Tecnologías de la Información Módulo II Arquitecturas de Sistemas Una idea trivial Internet conecta recursos distribuidos por todo el mundo Estos recursos incluyen millones de computadoras, con un gran poder de cómputo agregado La gran mayoría de estos recursos utilizan sólo una pequeña parte de su potencial ¿Se podrán aprovechar? Tendencias en el desarrollo

88 Universidad Católica Andrés Bello Dirección de Formación Continua Prof. Yudith Cardinale Estudios Avanzados en Gestión de las Comunicaciones y Tecnologías de la Información Módulo II Arquitecturas de Sistemas Tendencias en el desarrollo Evolución de la Tecnología: Clusters, Grids y P2P

89 Universidad Católica Andrés Bello Dirección de Formación Continua Prof. Yudith Cardinale Estudios Avanzados en Gestión de las Comunicaciones y Tecnologías de la Información Módulo II Arquitecturas de Sistemas Tendencias en el desarrollo Grids computacionales: Un mundo infinito de recursos Qué es:  Infraestructura de hardware y software que provee alto desempeño y alta disponibilidad  Colección de recursos (personas, computadores, instrumentos y bases de datos) conectados por una red de alta velocidad. Mecanismo para que los usuarios puedan usar recursos distribuidos geográficamente de forma transparente, creando la ilusión de un sistema de computación integrado.

90 Universidad Católica Andrés Bello Dirección de Formación Continua Prof. Yudith Cardinale Estudios Avanzados en Gestión de las Comunicaciones y Tecnologías de la Información Módulo II Arquitecturas de Sistemas Tendencias en el desarrollo Grids computacionales: Otros términos usados son Metasistemas, Metacomputación, Sistemas de Metacomputación Qué es: (cont.)  Distinguible de una simple colección de computadores por un nivel de software: el middleware, el cual transforma una colección de recursos independientes en una única y coherente máquina virtual.  El middleware es el software que se conoce como software de metasistemas: está por encima de los recursos físicos y por debajo de las aplicaciones.

91 Universidad Católica Andrés Bello Dirección de Formación Continua Prof. Yudith Cardinale Estudios Avanzados en Gestión de las Comunicaciones y Tecnologías de la Información Módulo II Arquitecturas de Sistemas Tendencias en el desarrollo - Unificación de recursos distribuidos geográficamente

92 Universidad Católica Andrés Bello Dirección de Formación Continua Prof. Yudith Cardinale Estudios Avanzados en Gestión de las Comunicaciones y Tecnologías de la Información Módulo II Arquitecturas de Sistemas Término usado para designar la red de energía eléctrica Un aparato eléctrico se enchufa a la red sin mayor protocolo y se espera que funcione ¿Es posible sacar de la red el poder de cómputo requerido para una aplicación? GRID = Red de energía eléctrica Tendencias en el desarrollo

93 Universidad Católica Andrés Bello Dirección de Formación Continua Prof. Yudith Cardinale Estudios Avanzados en Gestión de las Comunicaciones y Tecnologías de la Información Módulo II Arquitecturas de Sistemas Tendencias en el desarrollo Grids computacionales Aplicaciones:  Supercomputación distribuida: simulación interactiva distribuida (entrenamiento y planificación), simulación de procesos físicos complejos (cosmología, modelamiento del clima,...)  High-Throughput computing : despacho de gran número de tareas acopladas o independientes aprovechando CPUs ociosos (Condor)  Computación por demanda: satisfacen requerimientos de recursos a corto plazo (NEOS y NetSolve)

94 Universidad Católica Andrés Bello Dirección de Formación Continua Prof. Yudith Cardinale Estudios Avanzados en Gestión de las Comunicaciones y Tecnologías de la Información Módulo II Arquitecturas de Sistemas Tendencias en el desarrollo Grids computacionales Aplicaciones: (cont.)  Computación con datos intensivos: sintetizan información a partir de datos en repositorios distribuidos, librerías digitales y bases de datos  Computación colaborativa: permite interacción hombre- hombre, generalmente las aplicaciones están estructuradas en términos de un espacio virtual compartido.

95 Universidad Católica Andrés Bello Dirección de Formación Continua Prof. Yudith Cardinale Estudios Avanzados en Gestión de las Comunicaciones y Tecnologías de la Información Módulo II Arquitecturas de Sistemas Computational Grids Qué ofrecen:  Colaboración más efectiva, agrupando co-investigadores en el mismo espacio virtual.  Incremento de la capacidad de cómputo local.  Productividad mejorada a través de un ambiente de programación considerablemente más simple. Tendencias en el desarrollo

96 Universidad Católica Andrés Bello Dirección de Formación Continua Prof. Yudith Cardinale Estudios Avanzados en Gestión de las Comunicaciones y Tecnologías de la Información Módulo II Arquitecturas de Sistemas Computational Grids Qué ofrecen: (cont.)  Ahorro, los recursos en cuestión pueden ser muy costosos.  Espacio de objetos (Archivos) persistentes compartido.  Ejecución remota transparente. Tendencias en el desarrollo

97 Universidad Católica Andrés Bello Dirección de Formación Continua Prof. Yudith Cardinale Estudios Avanzados en Gestión de las Comunicaciones y Tecnologías de la Información Módulo II Arquitecturas de Sistemas Grids : Se presupone que hay control sobre el acceso a los servidores Qué ofrecen: (cont.)  Rendimiento  Transparencia  Tolerancia a fallas  Seguridad Tendencias en el desarrollo

98 Universidad Católica Andrés Bello Dirección de Formación Continua Prof. Yudith Cardinale Estudios Avanzados en Gestión de las Comunicaciones y Tecnologías de la Información Módulo II Arquitecturas de Sistemas Acceso compartido a sistemas de computación de alto rendimiento Grids de cómputo Acceso compartido a bases de datos y sistemas de archivos Grids de datos Acceso compartido a software y otros recursos computacionales Grids de servicio Tendencias en el desarrollo

99 Universidad Católica Andrés Bello Dirección de Formación Continua Prof. Yudith Cardinale Estudios Avanzados en Gestión de las Comunicaciones y Tecnologías de la Información Módulo II Arquitecturas de Sistemas Tendencias en el desarrollo Servicios de Cómputo : Se trata de ofrecer servicios seguros para ejecutar las tareas de una aplicación en recursos computacionales distribuidos. Los Grids de este tipo, se llaman comunmente Grids computacionales. Algunos ejemplos son: NASA IPG, el World Wide Grid y el NSF TeraGrid. Servicios de Datos : La principal función de estos Grids es la de proveer acceso seguro a un conjunto de datos almacenados en forma distribuida, así como facilidades para su administración. Un ejemplo de aplicaciones que necesitan servicios para administrar, compartir y procesar grandes volúmenes de datos son la física de alta energía y el acceso a bases de datos distribuidas para el diseño de drogas Servicios de los Grids

100 Universidad Católica Andrés Bello Dirección de Formación Continua Prof. Yudith Cardinale Estudios Avanzados en Gestión de las Comunicaciones y Tecnologías de la Información Módulo II Arquitecturas de Sistemas Tendencias en el desarrollo Servicios de Aplicación : Este tipo de Grids se encarga de la gestión de aplicaciones y de proveer el acceso a librerías y software remoto en forma transparente. Servicios de Información : El rol principal de este tipo de Grid es la extracción y presentación de datos con cierto significado, usando los servicios provistos por los tres tipos de Grids anteriores. Servicios de los Grids

101 Universidad Católica Andrés Bello Dirección de Formación Continua Prof. Yudith Cardinale Estudios Avanzados en Gestión de las Comunicaciones y Tecnologías de la Información Módulo II Arquitecturas de Sistemas Tendencias en el desarrollo Sistemas y aplicaciones que emplean recursos distribuidos para realizar funciones críticas de manera descentralizada  Cómputo distribuido  Almacenamiento y compartimiento de datos  Comunicación y colaboración  Servicios en plataformas heterogéneas Peer-to-Peer computing: Cómputo intensivo descentralizado

102 Universidad Católica Andrés Bello Dirección de Formación Continua Prof. Yudith Cardinale Estudios Avanzados en Gestión de las Comunicaciones y Tecnologías de la Información Módulo II Arquitecturas de Sistemas Tendencias en el desarrollo Qué ofrecen:  Cooperación  Independencia de localidad  Rodeo de controles  Anonimato Peer-to-Peer computing: Se presupone que los nodos participantes no tienen control sobre el acceso a los mismos

103 Universidad Católica Andrés Bello Dirección de Formación Continua Prof. Yudith Cardinale Estudios Avanzados en Gestión de las Comunicaciones y Tecnologías de la Información Módulo II Arquitecturas de Sistemas Los clientes se comunican con el servidor Pueden comunicarse entre sí a través del servidor Modelo Cliente/Servidor

104 Universidad Católica Andrés Bello Dirección de Formación Continua Prof. Yudith Cardinale Estudios Avanzados en Gestión de las Comunicaciones y Tecnologías de la Información Módulo II Arquitecturas de Sistemas Los clientes se comunican directamente Pueden consultar previamente a un servidor con propósitos de localización Modelo P2P (punto­a­punto)

105 Universidad Católica Andrés Bello Dirección de Formación Continua Prof. Yudith Cardinale Estudios Avanzados en Gestión de las Comunicaciones y Tecnologías de la Información Módulo II Arquitecturas de Sistemas Control central (ej. Napster) Distribuido (ej. Gnutella) Variantes de P2P

106 Universidad Católica Andrés Bello Dirección de Formación Continua Prof. Yudith Cardinale Estudios Avanzados en Gestión de las Comunicaciones y Tecnologías de la Información Módulo II Arquitecturas de Sistemas Tendencias en el desarrollo Peer-to-Peer computing: Ejemplos de sistemas Sistemas para cómputo distribuido: MAGI Proyecto académico para búsqueda de señales provenientes de otros mundos Producto para aplicaciones de negocios colaborativos (comercio basado en p2p) e incorpora múltiples tipos de dispositivos entre peers (PDAs, celulares, chips especializados, comunicación basada en eventos) Proyecto de software abierto que provee servicios para p2p: encontrar peers, compartir archivos, encontrar contenido en sitios remotos, crear un grupo de peers, monitorear actividades y comunicación segura.

107 Universidad Católica Andrés Bello Dirección de Formación Continua Prof. Yudith Cardinale Estudios Avanzados en Gestión de las Comunicaciones y Tecnologías de la Información Módulo II Arquitecturas de Sistemas Tendencias en el desarrollo Peer-to-Peer computing: Ejemplos de sistemas Sistemas para comunicación: Provee espacios virtuales compartidos para la interacción de pequeños grupos. Los usuarios que comparten un espacio pueden “chatear”, comunicarse por voz, enviar mensajes instantáneos, actualizar un calendario o plan de eventos, compartir un archivo, etc. Sistemas para compartir información:  Intercambio de música mp3. Creció considerablemente al punto de que fueron demandados por compañías editoras de discos... y perdieron.  Servidor centralizado para mantenimiento de información de ubicación  El intercambio de información se hace directamente entre clientes groov e

108 Universidad Católica Andrés Bello Dirección de Formación Continua Prof. Yudith Cardinale Estudios Avanzados en Gestión de las Comunicaciones y Tecnologías de la Información Módulo II Arquitecturas de Sistemas Tendencias en el desarrollo Peer-to-Peer computing: Ejemplos de sistemas Sistemas para compartir información: (cont.) Intercambio de archivos, principalmente mp3. Incluyeron secretamente un módulo de cómputo, hecho por Brilliant Digital para hacer cómputo distribuido.  Compartimiento, búsqueda y copiado de archivos entre usuarios en Internet en forma descentralizada  Los clientes son servidores al mismo tiempo.  Aprende sobre los nodos conectados al vecino  Descubrimiento de la red (ping y pong)

109 Universidad Católica Andrés Bello Dirección de Formación Continua Prof. Yudith Cardinale Estudios Avanzados en Gestión de las Comunicaciones y Tecnologías de la Información Módulo II Arquitecturas de Sistemas 5. Casos de Estudios: SUMA/G Prof. Yudith Cardinale Universidad Simón Bolívar MPI CORBA + + Globus +

110 Universidad Católica Andrés Bello Dirección de Formación Continua Prof. Yudith Cardinale Estudios Avanzados en Gestión de las Comunicaciones y Tecnologías de la Información Módulo II Arquitecturas de Sistemas Computational Grid Application GRID Network NOW

111 Universidad Católica Andrés Bello Dirección de Formación Continua Prof. Yudith Cardinale Estudios Avanzados en Gestión de las Comunicaciones y Tecnologías de la Información Módulo II Arquitecturas de Sistemas SUMA= (http://suma.ldc.usb.ve) Proyecto de grid computacional desarrollado en la USB Middleware para ejecución de aplicaciones en bytecode Java Transparentemente ejecuta procesos remotamente con la misma sintaxis del comando “java” pero usando “suma” Puede ejecutar programas paralelos, con mpi_java (un envoltorio de MPI)

112 Universidad Católica Andrés Bello Dirección de Formación Continua Prof. Yudith Cardinale Estudios Avanzados en Gestión de las Comunicaciones y Tecnologías de la Información Módulo II Arquitecturas de Sistemas Otras características resaltantes  ejecución de programas interactivamente o fuera de línea (batch)  manejo de E/S por demanda, no hay que copiar la totalidad de los archivos de entrada al servidor  generación de perfiles de rendimiento (profiles) tanto para programas secuenciales como paralelos  tolerancia a fallas basada en puntos de recuperación (checkpoints) usando un algoritmo distribuido de identificación de estados estables

113 Universidad Católica Andrés Bello Dirección de Formación Continua Prof. Yudith Cardinale Estudios Avanzados en Gestión de las Comunicaciones y Tecnologías de la Información Módulo II Arquitecturas de Sistemas  Portabilidad: resuelve principal problema de ejecución en máquinas heterogéneas  Sociales: generaciones enteras de programadores bien entrenados y motivados  El Java Virtual Machine puede ser usado como soporte para otros lenguajes  ¿Eficiencia? ¿Por qué Java?

114 Universidad Católica Andrés Bello Dirección de Formación Continua Prof. Yudith Cardinale Estudios Avanzados en Gestión de las Comunicaciones y Tecnologías de la Información Módulo II Arquitecturas de Sistemas Componentes de SUMA  Clientes  Comandos de shell o clientes de ventana  Pueden generar múltiples procesos (p.e. rendering)  Sistema de transporte  encuentra un servidor de aplicaciones adecuado para la ejecución de cada petición, monitoreando el estado de los servidores y garantizando la ejecución de las aplicaciones  Agentes de ejecución, secuenciales o paralelos

115 Universidad Católica Andrés Bello Dirección de Formación Continua Prof. Yudith Cardinale Estudios Avanzados en Gestión de las Comunicaciones y Tecnologías de la Información Módulo II Arquitecturas de Sistemas  Constru í do sobre tecnolog í as estándares, flexibles, portables y bien conocidas.

116 Universidad Católica Andrés Bello Dirección de Formación Continua Prof. Yudith Cardinale Estudios Avanzados en Gestión de las Comunicaciones y Tecnologías de la Información Módulo II Arquitecturas de Sistemas

117 Universidad Católica Andrés Bello Dirección de Formación Continua Prof. Yudith Cardinale Estudios Avanzados en Gestión de las Comunicaciones y Tecnologías de la Información Módulo II Arquitecturas de Sistemas Actualmente compuesto por 8 sitios activos: clusters de PCs (quad y duales), clusters de IBMs y plataforma linux Escalas de Teras (Terascale): Tera-Hz de poder de cómputo y Tera-Bytes de capacidad de almacenamiento Velocidad de red entre 10 y 40 Gb/s Usan principalmente Globus y otros productos de software Aplicaciones: Dinámica molecular, procesamiento de imágenes astronómicas, visualización, etc.

118 Universidad Católica Andrés Bello Dirección de Formación Continua Prof. Yudith Cardinale Estudios Avanzados en Gestión de las Comunicaciones y Tecnologías de la Información Módulo II Arquitecturas de Sistemas

119 Universidad Católica Andrés Bello Dirección de Formación Continua Prof. Yudith Cardinale Estudios Avanzados en Gestión de las Comunicaciones y Tecnologías de la Información Módulo II Arquitecturas de Sistemas Lo componen alrededor de 10 sitios: SGI, Cray, clusters de linux, IBM y clusters de COMPAQs. Usan Unicore como middleware, mpi, Corba y Java Aplicaciones:  Bio Grid: aplicaciones químicas y biológicas  Meteo Grid: predicción del tiempo  CAE Grid: aplicaciones de ingeniería asistida por computador  HPC Research Grid

120 Universidad Católica Andrés Bello Dirección de Formación Continua Prof. Yudith Cardinale Estudios Avanzados en Gestión de las Comunicaciones y Tecnologías de la Información Módulo II Arquitecturas de Sistemas Ejemplos de sistemas P2P Sistemas para cómputo distribuido:  Un radiotelescopio (Arecibo) capta señales electromagnéticas  Se desea analizar las señales, lo cual requiere mucho poder de cómputo, para determinar la existencia de patrones fuera de lo común  El fin es determinar señales enviadas por extraterrestres  Las señales captadas son descargadas en la base de datos principal cada cierto tiempo (en el orden de decenas de GBytes)

121 Universidad Católica Andrés Bello Dirección de Formación Continua Prof. Yudith Cardinale Estudios Avanzados en Gestión de las Comunicaciones y Tecnologías de la Información Módulo II Arquitecturas de Sistemas  Los usuarios instalan el salvapantallas de SETI@HOME o proveen un horario (Windows, Unix y Macintosh)SETI@HOME  Se divide la información en bloques cada vez que es actualizada en la base de datos del servidor SETI  Cada vez que se activa el salvapantallas se conecta al servidor de SETI y descarga un bloque de datos, los procesa y envía el resultado de regreso.  Este modelo tiene una característica esencial de P2P: los servidores son máquinas “comunes”, usualmente empleadas como clientes

122 Universidad Católica Andrés Bello Dirección de Formación Continua Prof. Yudith Cardinale Estudios Avanzados en Gestión de las Comunicaciones y Tecnologías de la Información Módulo II Arquitecturas de Sistemas Soportan el proyecto del genoma humano: cuál es la relación entre la secuencia y la estructura del ADN, describir la secuencia y mapa de los genes, diseño de la secuencia de proteínas,... Se instala un cliente y éste verifica el estado del cpu (usará los ciclos de cpu cuando el % de uso esté relativamente bajo) Tienen clientes windows y linux

123 Universidad Católica Andrés Bello Dirección de Formación Continua Prof. Yudith Cardinale Estudios Avanzados en Gestión de las Comunicaciones y Tecnologías de la Información Módulo II Arquitecturas de Sistemas Primera red distribuida para jugar contra un humano (30 Enero 2004) Explora computación distribuida Corre sólo sobre linux El record actual es 2070 máquinas en todo el mundo trabajando conjuntamente en un juego

124 Universidad Católica Andrés Bello Dirección de Formación Continua Prof. Yudith Cardinale Estudios Avanzados en Gestión de las Comunicaciones y Tecnologías de la Información Módulo II Arquitecturas de Sistemas Internet 2 en Venezuela

125 Universidad Católica Andrés Bello Dirección de Formación Continua Prof. Yudith Cardinale Estudios Avanzados en Gestión de las Comunicaciones y Tecnologías de la Información Módulo II Arquitecturas de Sistemas Internet 2 en Venezuela

126 Universidad Católica Andrés Bello Dirección de Formación Continua Prof. Yudith Cardinale Estudios Avanzados en Gestión de las Comunicaciones y Tecnologías de la Información Módulo II Arquitecturas de Sistemas Supercomputadores: Top 5 1. IBM/BlueGene/L, 131072 procesadores (280600 GFlops), DOE,NNSA/LLNL, USA 2. IBM/BGW, 40960 procesadores (91290 GFlops), IBM Research Center, USA 3. IBM/ASC Purple, 12208 procesadores (75760GFlops), DOE,NNSA/LLNL, USA 4. Columbia, SGI, 10160 procesadores. (51870 GFlops), NASA 5. Tera 10- NovaScale Itanium2, cluster de 8704 procesadores (42900 Gflops), Commissariat a l'Energia Atomique, Francia


Descargar ppt "Universidad Católica Andrés Bello Dirección de Formación Continua Prof. Yudith Cardinale Estudios Avanzados en Gestión de las Comunicaciones y Tecnologías."

Presentaciones similares


Anuncios Google