Introduccin a los sistemas industriales Mdulo 4 Redes

  • Slides: 62
Download presentation
Introducción a los sistemas industriales Módulo 4: Redes Informáticas y Sistemas Distribuidos Tarea 4.

Introducción a los sistemas industriales Módulo 4: Redes Informáticas y Sistemas Distribuidos Tarea 4. 3 – Sistemas de proceso distribuidos y paralelos A. Petrov, PU, Dep. ECIT Computer network & Distributed systems – Task 4. 3

Objectivos q q F F Definiciones, organización Objetivos y ventajas Ø Proporcionando accesibilidad a

Objectivos q q F F Definiciones, organización Objetivos y ventajas Ø Proporcionando accesibilidad a los recursos Ø Flexibilidad Ø Fiabilidad Ø Transparencia de distribución Ø Apertura Ø Escalabilidad, etc Clasificación y arquitectura Conceptos de Hardware – competencia Ø Taxonomías informáticas Ø Sistemas de multiproceso – clusters y grid Ø Sistemas de multiordenadores – tipos de arquitecturas MIMD Ø Arquitecturas DS y PPS Ø Conceptos de Software – sistemas operativos y lenguajes Ø Conceptos CORBA, DCOM y Java/RMI. Estándard MPI Computer network & Distributed systems – Task 4. 3 2

Sistemas Distribuidos: Definición “Un sistema distribuido es aquél en el que no puedes trabajar

Sistemas Distribuidos: Definición “Un sistema distribuido es aquél en el que no puedes trabajar con tu máquina por el fallo de otra máquina que ni siquiera sabías que existía” - Leslie Lamport Computer network & Distributed systems – Task 4. 3 3

Sistema distribuido: Definición q Un sistema distribuido es una parte del software que asegura

Sistema distribuido: Definición q Un sistema distribuido es una parte del software que asegura que: Ø Una colección de ordenadores independientes aparezca a sus usuarios como un sistema único coherente. q Ejemplo: Ø The world wide web (www) – información, compartir recursos Ø Clusters, Red de Estaciones de trabajo (workstations) Ø Sistema de manufactura distribuida (e. g. , línea de montaje automático) Ø Red de ordenadores de oficina Ø Sistema de información para manejar el procesado automático de órdenes Ø Red de sistemas integrados Ø Procesador de Nueva célula, etc Computer network & Distributed systems – Task 4. 3 4

Características claves de un Sistema Distribuido * q Los programas de los diferentes ordenadores

Características claves de un Sistema Distribuido * q Los programas de los diferentes ordenadores deben interactuar Ø Ø q Un sistema distribuido debe abarcar varios ordenadores Los programas deben enviar información a cada uno de los otros Los programas deben recibir información de cada uno de los otros Los programas también necesitan trabajar Los programas juegan diferentes papeles en estas interacciones Ø Enviar una solicitud (cliente), procesar la solicitud (servidor), enviar una respuesta (servidor), recibir y procesar la respuesta (cliente) Ø Recordar dónde encontrar las cosas (servicios de directorio, etc) Ø Interacciones de mediación entre los programas de distribución (servicios de coordinación, de orquestación, etc. ) * http: //www. slideworld. com/slideshows. aspx/Distributed-Systems-part-1 -ppt-541500 Computer network & Distributed systems – Task 4. 3 5

Características clave de un Sistema Distribuido q ¿Cómo se interconectan los diferentes ordenadores? Ø

Características clave de un Sistema Distribuido q ¿Cómo se interconectan los diferentes ordenadores? Ø ¿Todo el tráfico se mueve en un bus común de datos? Ø O ¿el tráfico se mueve en redes (jerárquicamente)? Ø O ¿el tráfico se mueve de punto a punto entre hosts? q ¿Existen factores espaciales y/o temporales? Ø ¿Importa la localización física/movimiento del host? Ø El retraso es detectable, ¿los límites de ancho de banda son relevantes? Ø ¿Las conexiones están siempre encendidas o pueden ser intermitentes? Ø ¿La topología de interconexión cambia? Ø ¿La topología de la interconexión es completamente dinámica? Computer network & Distributed systems – Task 4. 3 6

Ventajas de Sistemas Distribuidos frente a Sistemas Centralizados * q q q Economicas: una

Ventajas de Sistemas Distribuidos frente a Sistemas Centralizados * q q q Economicas: una colección de microprocesadores que ofrece mejor precio/desempeño que los ordenadores centrales. Bajo ratio de precio/desempeño: método efectivo para aumentar la potencia del ordenador. Velocidad: un sistema distribuido debe tener más potencia que el ordenador central. Por ejemplo, 10, 000 chips de CPU, cada uno trabajando a MIPS. No es posible construir 500, 000 MIPS procesadores individuales ya que requeriríia 0. 002 nsec por ciclo de instrucción. Se mejora el desempeño al distribuir la carga. Distribución inherente: Algunas aplicaciones están distribuidas inherentemente. Por ejemplo, una cadena de supermercados. Fiabilidad: Si se rompe una máquina, el sistema como conjunto puede sobrevivir. Mayor disponibilidad y mejora de la fiabilidad. Crecimiento incremental: Se puede añadir potencia con incrementos pequeños. Expansión modular. Otra fuerza derivada: la existencia de un gran número de ordenadores personales, la necesidad de colaborar y compartir información. * Lecture Note 13 Insup Lee Computer network & Distributed systems – Task 4. 3 7

Ventajas de Sistemas Distribuidos frente a PCs independientes q Compartir datos: permite el acceso

Ventajas de Sistemas Distribuidos frente a PCs independientes q Compartir datos: permite el acceso a una base de datos común a muchos usuarios q Compartir recursos: periféricos de gran valor como impresaras de color q Communicación: mejora la comunicación humano-humano, por ejemplo email, chat. q Flexibilidad: extiende la carga de trabajo sobre las máquinas disponibles Computer network & Distributed systems – Task 4. 3 8

Desventajas de Sistemas Distribuidos q. Software: dificultad de desarrollar software para sistemas distribuidos q.

Desventajas de Sistemas Distribuidos q. Software: dificultad de desarrollar software para sistemas distribuidos q. Red: saturación, transmisiones perdidas q. Seguridad: la facilidad de acceso tambien concierne a los datos secretos Computer network & Distributed systems – Task 4. 3 9

Ejemplos de Distribución (1) q Internet por cable (jerarquía) Ø Puede alcanzar cualquier host

Ejemplos de Distribución (1) q Internet por cable (jerarquía) Ø Puede alcanzar cualquier host desde cualquier otro host Ø Los hosts siempre están encendidos y disponibles (% fallo, inactivo) Ø Muchos de los WWW dependen de esta noción Computer network & Distributed systems – Task 4. 3 10

Ejemplos de Distribución (2) q Internet Nómada (jerarquía) Ø Algunos hosts son móviles, se

Ejemplos de Distribución (2) q Internet Nómada (jerarquía) Ø Algunos hosts son móviles, se conectan al punto de acceso más cercano Ø Los hosts pueden no estar disponibles, pero al final se reconectan Ø La topología de la ruta Host-to-host puede cambiar debido a esto Ø Los teléfonos móviles, ordenadores portátiles sin clable tienen este comportamiento Computer network & Distributed systems – Task 4. 3 11

Ejemplos de Distribución (3) q Redes móviles ad hoc (MANETS) Ø Los hosts móviles

Ejemplos de Distribución (3) q Redes móviles ad hoc (MANETS) Ø Los hosts móviles se conectan a cada uno de los otros (con o sin punto de acceso) Ø Los Hosts pueden detectar conexión dinámica o desconexión Ø Los Hosts deben explotar las ventanas de oportunidades de comunicación Ø Permite el ruteado ad-hoc, mensaje de comportamiento “mula” Computer network & Distributed systems – Task 4. 3 12

Ejemplo de Sistema Distribuido (con cable) q Middleware (sotware intermedio) en aviación en tiempo

Ejemplo de Sistema Distribuido (con cable) q Middleware (sotware intermedio) en aviación en tiempo real * Ø * Capa (s) entre la aplicación y el sistema operativo Ø Asegura que las actividades no críticas no interfieran en tiempo con las actividades críticas Ø Basado en otros proyectos de middleware de código abierto Ø La librería ACE C++ y el agente de solicitud de objeto TAO Ø Bases estándar (CORBA**), escritos en C++/Ada ** Ver posteriormente Computer network & Distributed systems – Task 4. 3 13

Tipos de Sistemas Distribuidos (1) q Computación Distribuida – DC es un método de

Tipos de Sistemas Distribuidos (1) q Computación Distribuida – DC es un método de proceso informático en el que partes diferentes de un programa se procesan simultáneamente mediante dos o más ordenadores conectados con una red. DS es un tipo de procesado paralelo (ver Sistemas Paralelos) q Base de Datos Distribuida – DDB es una colección de múltiples bases de datos lógicamente interrelacionadas distribuidas en medio de la red donde aparece el usuario como una única base de datos. World Wide Web (WWW) es el mayor ejemplo de DDB q Sistema de gestión de bases de datos distribuidas – DDBMS es un software de sistema que proporciona la gestión de DDB y hace que la distribución aparezca transparente a los usuarios. Computer network & Distributed systems – Task 4. 3 14

Tipos de Sistemas Distribuidos (2) q DAQ distribuido y sistema de control – tipo

Tipos de Sistemas Distribuidos (2) q DAQ distribuido y sistema de control – tipo de sistema automatizado que puede suministrar medidas e instrucciones de control a las diferentes partes de la máquina. En lugar de una unidad de control centralizad, cada sección de la máquina tiene su propio ordenador o microcontrolador que gestiona sus operaciones (eg. los coches modernos y otros vehículos, líneas de producción, etc. ). q Sistemas distribuidos obicuos – Computación obicua – ordenadores omnipresentes. Permite la disponibilidad de muchos ordenadores en el entorno físico, a la vez que los hace eficazmente invisibles al usuario. La computación obicua es conocida por algunos como lo que será la. Tercera Ola de computación. La Primera Ola fue muchas personas por ordenador, la Segunda Ola fue una persona por ordenador. La Tercera Ola será muchos ordenadores por persona. Hay tres temas técnicos clave: consumo de enrgía, interfaz de usuario y conectividad sin cable. q No nos equivocaremos al decir que el futuro es completamete de los sistemas distribuidos! Computer network & Distributed systems – Task 4. 3 15

Sistemas Distribuidos – transparencia Transparencia Descripción Acceso Esconde las diferencias de representación de datos

Sistemas Distribuidos – transparencia Transparencia Descripción Acceso Esconde las diferencias de representación de datos y cómo se accede a un recurso Localización Esconde dónde se localiza un recurso Migracion Esconde que un recurso puede moverse a otra localización Relocalización Esconde que un recurso puede moverse a otra localización mientras está utilizándose Replicación Esconde qeu un recurso puede compartirse por varios usuarios competitivos Competencia Esconde que un recurso puede compartirse por varios usuarios competitivos Fallo Esconde el fallo y recuperación de un recurso Persistencia Esconde si un recurso (sotware) está en la memoria o en el disco Computer network & Distributed systems – Task 4. 3 16

Escalabilidad n Escalabilidad: Al menos tres componentes: Número de usuarios y/o procesos (tamaño de

Escalabilidad n Escalabilidad: Al menos tres componentes: Número de usuarios y/o procesos (tamaño de escalabilidad) Máxima distancia entre nodos (escalabilidad geográfica) Número de dominios administrativos (escalabilidad administrativa) Problemas de la Escalabilidad: Concepto Ejemplo Servicios Centralizados Un único servidor para todos los usuarios Datos Centralizados Un único directorio de teléfonos on line Algoritmos centralizados Ruteado basado en información completa Computer network & Distributed systems – Task 4. 3 17

Diferencia entre sistemas distribuidos y paralelos Sistemas Distribuidos (DS) Sistemas de Procesado Paralelo (PPS)

Diferencia entre sistemas distribuidos y paralelos Sistemas Distribuidos (DS) Sistemas de Procesado Paralelo (PPS) Sistemas acoplados libremente Los procesadores no comparten memoria y cada procesador tiene su propia memoria local El procesador puede situarse lejos de los otros Puede deplegarse un gran número de procesadores Sistemas acoplados firmemente Normalmente, todos los procesadores comparten la memoria principal No hay ningún reloj global presentese usan algoritmos de sincronización Se utiliza el reloj global para controlar las arquitecturas simd y mimd Una comunicación impredecible retrasa entre los procesadores Los procesadores comparten mediante una red de interconexión (normalmente muy rápida) Los procesadores se sitúan muy cerca de los otros Se puede desplegar una pequeña cantidad de procesadores Computer network & Distributed systems – Task 4. 3 18

Diferencia entre sistemas distribuidos y paralelos … a-b – sistemas distribuidos c – sistema

Diferencia entre sistemas distribuidos y paralelos … a-b – sistemas distribuidos c – sistema paralelo Computer network & Distributed systems – Task 4. 3 19

Sistemas paralelos – taxomonías del ordenador q Los tipos de ordenadores distribuidos se basan

Sistemas paralelos – taxomonías del ordenador q Los tipos de ordenadores distribuidos se basan en la taxonomía de Flynn's de sistemas; q Única instrucción, únicos datos (SISD), - convencional q Única instrucción, multiples datos (SIMD) – datos paralelos, vector computacional q Instrucción multiple, únicos datos (MISD) – matriz sistólica q Instrucción multiple, multiples datos (MIMD) – muy general, múltiples aproximaciones q El enfoque actual está en el modelo MIMD, que utiliza los procesadores de proposiciones generales. Computer network & Distributed systems – Task 4. 3 20

Arquitectura MIMD Instrucción Flujo A Flujo C Flujo B Datos Entrada Flujo A Datos

Arquitectura MIMD Instrucción Flujo A Flujo C Flujo B Datos Entrada Flujo A Datos Entrada Flujo B Datos entrada Flujo C Datos salida Flujo A Procesador A Datos salida Flujo B Procesador C Datos salida Flujo C A diferencia de SISD, MISD, el ordenador MIMD funciona de forma asíncrona. Memoria compartida (acoplo moderado) MIMD Memoria distribuida (acoplo débil) Computer network & Distributed systems – Task 4. 3 21

Máquina de memoria compartida MIMD Procesador A M E M B O U R

Máquina de memoria compartida MIMD Procesador A M E M B O U R S I A Procesador B M E M B O U R S I A Procesador C M E M B O U R S I A Sistema de Memoria Global La fuente PE escribe los datos a GM y la destinación lo recupera è Fácil de construir, los sistemas operativos de SISD pueden transportarse fácilmente è Limitación : fiabilidad y expansión. Un componente de la memoria o cualquier fallo del procesador afecta al sistema completo. è El aumento de procesadores lleva a una contención de la memoria. Ex. : Superordenadores de gráficos de silicio. . . Computer network & Distributed systems – Task 4. 3 22

Memoria Distribuida MIMD Canal IPC Procesador A M E M B O U R

Memoria Distribuida MIMD Canal IPC Procesador A M E M B O U R S I A Procesador B M E M B O U R S I A Procesador C M E M B O U R S I A Memoria Sistema A Sistema B Sistema C l l l Comunicación : IPC en redes de alta velocidad. La red se puede configurar como. . . Árbol, Malla, cubo, etc A diferencia de MIMD compartida è è Expansión fácil/inmediata Altamente fiable (cualquier fallo de la CPU no afecta al sistema completo) Computer network & Distributed systems – Task 4. 3 23

Cluster del Ordenador F Un cluster consiste en múltiples máquinas stand-alone (independientes del software)

Cluster del Ordenador F Un cluster consiste en múltiples máquinas stand-alone (independientes del software) que actúan en paralelo en una red local de alta velocidad. F La computación distribuida difiere de la computación de cluster en que el entorno de los ordenadores en una computación distribuida típicamente no están exclusivamente operando tareas de “grupo”, mientras que los ordenadores en cluseter normalmente están acoplados más firmemente. F La computación distribuida a menudo también consiste en máquinas que están bastante separadas geográficamente. F Clustering es una popular estrategia para implementar aplicaciones de procesado paralelo porque permite avenajar a las empresas que ya han invertido en PCs, workstations o servidores. Además, es relativamente fácil añadir nuevas CPUs, simplemente añadiendo un nuevo PC a la red. F ¿Es posible hacer un cluster en casa? Ver: http: //www. youtube. com/watch? v=Bjn. Ax. Pzj. QJg Computer network & Distributed systems – Task 4. 3 24

Computación de Grid (malla) F Una grid usa los recursos de muchos ordenadores separados

Computación de Grid (malla) F Una grid usa los recursos de muchos ordenadores separados conectados por una red (normalmente Internet) para resolver problemas de computación de gran escala. F El mayor tiempo inactivo de uso de muchos miles de ordenadores del mundo. F Estos arreglos permiten manejar datos que de otra forma requerirían la potencia de superordenadores muy costosos o sería imposible de analizar. * Una tecnología similar es la Computación Cloud (nube), que también permite usar recursos comunes. (Ver: http: //en. wikipedia. org/wiki/Cloud_computing ) Computer network & Distributed systems – Task 4. 3 25

Continuo de Sistemas Distribuidos Computer network & Distributed systems – Task 4. 3 26

Continuo de Sistemas Distribuidos Computer network & Distributed systems – Task 4. 3 26

Arquitecturas DS y PPS Computer network & Distributed systems – Task 4. 3 27

Arquitecturas DS y PPS Computer network & Distributed systems – Task 4. 3 27

Modelos de Sistema de DS Modelo de miniordenador F Modelo de Workstation-servidor F Modelo

Modelos de Sistema de DS Modelo de miniordenador F Modelo de Workstation-servidor F Modelo de Procesador- equipo F Modelo Cluster F Computación de Grid F Computer network & Distributed systems – Task 4. 3 28

Modelo de Miniordenador F F Red ARPA Miniordenador Extensión del tiempo de sistema compartido

Modelo de Miniordenador F F Red ARPA Miniordenador Extensión del tiempo de sistema compartido – El usuario debe conectarse en su miniordenador de casa. – A partir de ahí, puede conectarse a una máquina en remoto mediante telnet. . Compartir recursos – Base de datos – Disponistivos de alto rendimiento Computer network & Distributed systems – Task 4. 3 29

Modelo de Workstation 100 Gbps LAN Workstation F F Workstation Migración de proceso –

Modelo de Workstation 100 Gbps LAN Workstation F F Workstation Migración de proceso – Los usuario primero de conectan a su workstation personal. – Si hay una workstation parada en remoto, debe migrarse una gran tarea a una de ellas. Problemas: – Cómo encontrar una workstation parada – Cómo migrar una tarea – Qué ocurre si un usuario se conecta en la máquina en remoto. Computer network & Distributed systems – Task 4. 3 30

Modelo Workstation-Servidor F Workstation F 100 Gbps LAN F Mini. Ordenadorr Ordenador Servidor de

Modelo Workstation-Servidor F Workstation F 100 Gbps LAN F Mini. Ordenadorr Ordenador Servidor de ficheros http de ciclo Workstations de cliente – Sin disco – Las aplicaciones gráficas/interactivas se procesan en local – Todas las solicitudes de los ficheros, impresoras, http y cada ciclo de computación se envían a los servidores. Miniordenadores de servidor – Cada miniordenador se dedica a uno o más tipos diferentes de servicio. El modelo Cliente-Servidor de comunicación – RPC (Remote Procedure Call) – RMI (Remote Method Invocation) u Un proceso de cliente llama a la función de proceso del servidor. u No se invoca el proceso de migración u Ejemplo: NSF Computer network & Distributed systems – Task 4. 3 31

Modelo Procesador- Equipo F 100 Gbps LAN Servidor 1 F Servidor N F Clientes:

Modelo Procesador- Equipo F 100 Gbps LAN Servidor 1 F Servidor N F Clientes: – Se conectan en uno de los terminales (workstations sin disco o terminales X) – Todos los servicios se envían a servidores. Servidores: – El número necesario de procesadores se reparte a cada usuario desde el equipo (pool) Mejor utilización pero menos interactividad Computer network & Distributed systems – Task 4. 3 32

Modelo Cluster Workstation F 100 Gbps LAN http server 2 http server 1 Master

Modelo Cluster Workstation F 100 Gbps LAN http server 2 http server 1 Master Slave node 1 2 http server N Slave N 1 Gbps SAN Computer network & Distributed systems – Task 4. 3 Cliente – Toma un modelo cliente-servidor Servidor – Consiste en muchos PC/workstations conectados a una red de alta velocidad. – Focaliza más en el rendimiento : se ocupa de las solicitudes en paralelo 33

Computación Grid (Malla) F Workstation F Superordenador Minicomputer Información de alta velocidad Superordenador Cluster

Computación Grid (Malla) F Workstation F Superordenador Minicomputer Información de alta velocidad Superordenador Cluster F F Workstation Objetivo – Recopilar potencia de los superordenadores y clusters escasamente localizados y hacerlos disponibles como si fuera una malla eléctrica. Superordenadores distribuidos – Muchos problemas que necesitan mucha memoria, CPU, etc. Computación de Alto rendimiento – Emplea muchos recursos inactivos Computación bajo demanda – Recursos remotos integrados con computación local Computación de datos intensiva – Utiliza datos distribuidos Computación colaborativa – Soporta la comunicación entre múltiples partes. Computer network & Distributed systems – Task 4. 3 34

Clasificación de las Arquitecturas MIMD* q Acopladas firmemente » procesado paralelo – Los procesadores

Clasificación de las Arquitecturas MIMD* q Acopladas firmemente » procesado paralelo – Los procesadores comparten el reloj y la memoria, operan con un Sistema Operativo, se comunican frecuentemente F Acopladas libremente» computación distribuida – Cada procesador tiene su propia memoria, opera su propio Sistema Operativo (? ), no se comunican frecuentemente. * Tanenbaum Computer network & Distributed systems – Task 4. 3 35

Sistemas Distribuidos – organización del middleware (software intermedio) 1. 1 Un sistema distribuido organizado

Sistemas Distribuidos – organización del middleware (software intermedio) 1. 1 Un sistema distribuido organizado como middleware. Observar que la capa del middleware se extiende sobre múltiples máquinas. Computer network & Distributed systems – Task 4. 3 36

Conceptos de Hardware – Conexiones MP basadas en bus y en Switch 1. 6

Conceptos de Hardware – Conexiones MP basadas en bus y en Switch 1. 6 Diferentes organizaciones básicas y memorias en sistemas distribuídos Computer network & Distributed systems – Task 4. 3 37

Sistemas de Multiprocesador (1) F Un multiprocesador basado en bus 1. 7 Computer network

Sistemas de Multiprocesador (1) F Un multiprocesador basado en bus 1. 7 Computer network & Distributed systems – Task 4. 3 38

Sistemas de Multiprocesador (2) a) Un switch de barra fija b) Una red de

Sistemas de Multiprocesador (2) a) Un switch de barra fija b) Una red de omega switching 1. 8 Computer network & Distributed systems – Task 4. 3 39

Sistemas de multiordenadores homogéneos a) Grid (Malla) b) Hipercubo 1 -9 Computer network &

Sistemas de multiordenadores homogéneos a) Grid (Malla) b) Hipercubo 1 -9 Computer network & Distributed systems – Task 4. 3 40

Conceptos de Software – Sistemas Operativos Sistema Descripción Objetivo principal DOS Sistema operativo acoplado

Conceptos de Software – Sistemas Operativos Sistema Descripción Objetivo principal DOS Sistema operativo acoplado firmemente para multiprocesadores y multiordenadores homogéneos Esconde y gestiona los recursos del hardware NOS Sistemas operativos acoplados libremente para multiordenadores heterogéneos (LAN y WAN) Ofrece servicios locales a clientes remotos Capa adicional encima de NOS que implementa los servicios generales Provee transparencia en la distribución Middleware F F Un resumen entre DOS (Sistemas Operativos Distribuidos) NOS (Sistemas Operativos de Red) Middleware Computer network & Distributed systems – Task 4. 3 41

Sistemas Operativos de Uniprocesador F Las aplicaciones separadas del código de un sistema operativo

Sistemas Operativos de Uniprocesador F Las aplicaciones separadas del código de un sistema operativo a través de un microkernel. 1. 11 Computer network & Distributed systems – Task 4. 3 42

Sistemas Operativos de Multiordenadores (1) F Estructura general de un multiordenador DOS 1. 14

Sistemas Operativos de Multiordenadores (1) F Estructura general de un multiordenador DOS 1. 14 Computer network & Distributed systems – Task 4. 3 43

Sistemas Operativos de Multiordenadores (2) F Alternativas para bloquear y almacenar en el tránsito

Sistemas Operativos de Multiordenadores (2) F Alternativas para bloquear y almacenar en el tránsito de mensajes. 1. 15 Computer network & Distributed systems – Task 4. 3 44

Sistemas Operativos en Multiordenadores (3) Buffer de envío Punto de sincronización Fiabilidad garantizada? El

Sistemas Operativos en Multiordenadores (3) Buffer de envío Punto de sincronización Fiabilidad garantizada? El bloque de envío hasta que el buffer Sí no esté lleno No necesario El bloque de envío hasta que el mensaje se envíe No No necesario El bloque de envío hasta que se reciba el mensaje No Necesario FEl. Relation blocking, bloque debetween envío hasta que el mensaje sea entregado buffering, and reliable communications. No Computer network & Distributed systems – Task 4. 3 Necesario 45

Sistemas Distribuidos con Memoria Compartida (1) a) Páginas de direcciones distribuidas entre 4 máquinas

Sistemas Distribuidos con Memoria Compartida (1) a) Páginas de direcciones distribuidas entre 4 máquinas b) Situación después de la CPU 1 referencias página 10 c) Situación si la página 10 está como sólo lectura y se usa copia Computer network & Distributed systems – Task 4. 3 46

Sistemas Distribuidos con Memoria compartida (2) F Falso reparto de una página entre dos

Sistemas Distribuidos con Memoria compartida (2) F Falso reparto de una página entre dos procesos independientes 1. 18 Computer network & Distributed systems – Task 4. 3 47

Sistema Operativo de Red F Estructura general de un sistema operativo de red (NOS).

Sistema Operativo de Red F Estructura general de un sistema operativo de red (NOS). 1 -19 Computer network & Distributed systems – Task 4. 3 48

Comparación entre sistemas Item OS Distribuido OS de Red Os basado en Middleware Multiproc.

Comparación entre sistemas Item OS Distribuido OS de Red Os basado en Middleware Multiproc. Multicomp. Grado de transparencia Muy alto Alto Bajo Alto Mismo OS en todos los nodos Sí Sí No No Número de copias de OS 1 N N N Bases para la comunicación Memoria compartida Mensajes Archivos Modelo específico Gestión de los recursos Global, central Global, distribuido Por nodo Escalabilidad No Moderado Sí Varía Apertura Cerrado Abierto F Una comparación entre los sistemas operativos de multiprocesadores, multiordenadores, de red y sistemas distribuidos basados en middleware. Computer network & Distributed systems – Task 4. 3 49

Nivel de Procesado F La organización general de un motor de búsqueda de internet

Nivel de Procesado F La organización general de un motor de búsqueda de internet en tres capas diferentes 1 -28 Computer network & Distributed systems – Task 4. 3 50

Arquitecturas Multicapa (1) F Organizaciones alternativas cliente-servidor (a) – (e). 1 -29 Computer network

Arquitecturas Multicapa (1) F Organizaciones alternativas cliente-servidor (a) – (e). 1 -29 Computer network & Distributed systems – Task 4. 3 51

Arquitecturas Multicapa (2) F Un ejemplo de un servidor comportándose como cliente. 1 -30

Arquitecturas Multicapa (2) F Un ejemplo de un servidor comportándose como cliente. 1 -30 Computer network & Distributed systems – Task 4. 3 52

Arquitecturas Modernas F Un ejemplo de distribución horizontal de un servicio Web 1 -31

Arquitecturas Modernas F Un ejemplo de distribución horizontal de un servicio Web 1 -31 Computer network & Distributed systems – Task 4. 3 53

CORBA, DCOM y Java/RMI (1) Tres de los paradigmas de objetos distribuidos más populares

CORBA, DCOM y Java/RMI (1) Tres de los paradigmas de objetos distribuidos más populares son Microsoft's Distributed Component Object Model (DCOM), OMG's Common Object Request Broker Architecture (CORBA) y Java. Soft's Java/Remote Method Invocation (Java/RMI). F Tanto en DCOM como en CORBA, las interacciones entre el proceso de un cliente y el servidor objeto se implementan como estilo de comunicaciones orientado a objetos RPC F FVer: http: //my. execpc. com/~gopalan/misc/compare. html Computer network & Distributed systems – Task 4. 3 54

CORBA, DCOM y Java/RMI (2) F Estructura RPC Computer network & Distributed systems –

CORBA, DCOM y Java/RMI (2) F Estructura RPC Computer network & Distributed systems – Task 4. 3 55

CORBA, DCOM y Java/RMI (3) F Organización general de un sistema CORBA Computer network

CORBA, DCOM y Java/RMI (3) F Organización general de un sistema CORBA Computer network & Distributed systems – Task 4. 3 56

Resumen de DCOM (1) F Organización general de Active. X, OLE, y COM. Computer

Resumen de DCOM (1) F Organización general de Active. X, OLE, y COM. Computer network & Distributed systems – Task 4. 3 57

Resumen de DCOM (2) F Arquitectura global de DCOM. Computer network & Distributed systems

Resumen de DCOM (2) F Arquitectura global de DCOM. Computer network & Distributed systems – Task 4. 3 58

Sistemas Distribuidos – Lenguajes Prácticamente cualquier lenguaje de programación que tenga acceso al hardware

Sistemas Distribuidos – Lenguajes Prácticamente cualquier lenguaje de programación que tenga acceso al hardware completo del sistema podría manejar programación distribuida si se le da suficiente tiempo y código. El proceso remoto llama a los comandos del sistema operativo distribuido en una conexión de red. F Los sistemas como CORBA, Microsoft D/COM, Java RMI y otros, intentan mapear los diseños orientado a objetos a la red. Los sistemas con acoplamientos libres que comunican a través de documentos intermedios que son típicamente lisibles por los humanos son XML, HTML, SGML, X. 500, y EDI. F Los lenguajes específicamente hechos a la medida para los programas distribuidos son: F 1. 2. 3. 4. 5. 6. Lenguaje de programación Ada Lenguaje de programación Alef Lenguaje de programación Erlang Lenguaje de programación Limbo Lenguaje de programación Oz etc. Computer network & Distributed systems – Task 4. 3 59

Interfaz de Paso de Mensajes (MPI) MPI es una interfaz de aplicación descriptiva de

Interfaz de Paso de Mensajes (MPI) MPI es una interfaz de aplicación descriptiva de comunicaciones con un lenguaje independiente (API) con semánticas definidas e interpretaciones flexibles; Es por tanto un set de interfaces de tipo de capa -5+, aunque las implementaciones pueden cubrir más capas del modelo de referencia, con enchufes+TCP/IP F F Los objetivos de MPI son alto rendimiento, escalabilidad y portabilidad. MPI es un estándar para la comunicación entre los procesos modelando un programa paralelo en un sistema de memoria distribuida. F La mayoría de las implementaciones MPI consisten en un set específico de rutinas (API) llamado desde Fortran, C, o C++ y desde cualquier lenguaje capaz de interactuar con dichas librerías de rutina. F FVer: http: //en. wikipedia. org/wiki/Message_Passing_Interface Computer network & Distributed systems – Task 4. 3 60

Preguntas 1. Explica los términos “transparencia” y “escalabilidad” de los sistemas distribuidos. 2. Explica

Preguntas 1. Explica los términos “transparencia” y “escalabilidad” de los sistemas distribuidos. 2. Explica los términos: Taxonomías de computación, Clusters, Computación de Grid. Define la Taxonomía de Flynn de los sistemas. 3. Describe la organización de: a) Sistemas de Multiprocesador b) Sistemas de Multiordenador 4. Explica los objetivos y posibilidades de la Interfaz de tránsito de mensajes (MPI). Computer network & Distributed systems – Task 4. 3 61

Recursos adicionales: 1. Hutchinson S. E. , Sawer S. C. Computers and Information Systems,

Recursos adicionales: 1. Hutchinson S. E. , Sawer S. C. Computers and Information Systems, IRWIN, USA 2. Walters E. G. , The Essential Guide to Computing, Prentice Hall PTR, USA 3. Andrew S. Tanenbaum, Maarten van Steen, Distributed Systems: Principles and Paradigms 4. http: //en. wikipedia. org/wiki/Distributed_computing 5. http: //www. slideworld. com/slideshows. aspx/Distributed-Systems-part-1 -ppt-541500 6. http: //research. cs. queensu. ca/home/xiao/DS/node 9. html 7. http: //my. execpc. com/~gopalan/misc/compare. html 8. http: //en. wikipedia. org/wiki/Message_Passing_Interface 9. http: //www. cis. upenn. edu/~lee/07 cis 505/Lec/lec-ch 1 -Dist. Sys-v 4. pdf Computer network & Distributed systems – Task 4. 3 62