Upload
josejamv2010
View
100
Download
2
Embed Size (px)
Citation preview
SISTEMAS DISTRIBUIDOS
SESION : 2TEMA : Modelos de sistemas
Distribuidos
Modelos de Sistemas Distribuidos
Existen 2 modelos generales: Modelos Arquitectónicos Modelos Fundamentales
Modelo de Sistemas DistribuidosTrata sobre colocación de sus partes y las relaciones entre ellas.
Simplifica y abstrae, inicialmente las funciones de los componentes individuales de dicho sistema y posteriormente considera 2 criterios:
La ubicación de los componentes en la red de computadores, buscando definir patrones utilizables para la distribución de datos y carga de trabajo.
Las interrelaciones entre los componentes, sus papeles funcionales y los patrones de comunicación entre ellos
:
Modelos Arquitectónicos
Ejemplos: Modelo cliente – Servidor Modelo de procesos “De igual a igual” (peer to peer).
Modelo de Sistemas DistribuidosModelos Arquitectónicos
Capas de software Arquitecturas Variaciones del modelos
cliente servidor Interfaces y objetos Requisito de diseño
Modelo de Sistemas DistribuidosModelos ArquitectónicosCapas de software
El termino arquitectura de software se refería inicialmente a la estructuración del software como capas o módulos en único computador y mas recientemente en términos de los servicios ofrecidos y solicitados entre procesos localizados en el mismo o diferentes computadores.
Esta vista orientada a proceso yservicio puede expresarse en términos de capa de servicio.
Modelo de Sistemas DistribuidosModelos ArquitectónicosCapas de softwarePlataforma:
El nivel de hardware y las capas mas bajas, son la plataforma para sistemas distribuidos.
Las capas mas bajas proporcionan servicios a las capas que están sobre ellas, y son implementadas independientemente en cada computador, proporcionando una interfaz de programación del sistema a un nivel que facilita la comunicación y coordinación entre procesos. Ejemplo : Windows, Linux, Solaris etc.
Modelo de Sistemas DistribuidosModelos ArquitectónicosCapas de softwarePlataforma: Contiene los servicios propios de cada computadora
concreta. Depende del Hardware y del Sistema Operativo
Modelo de Sistemas DistribuidosModelos ArquitectónicosCapas de softwareMiddleware:
Capa de software cuyo propósito es enmascarar la heterogeneidad y proporcionar un modelo de programación conveniente para los programadores de aplicaciones.
Son procesos u objetos que implementan mecanismos de comunicación y recursos compartidos para aplicaciones distribuidas.
Mejora el nivel de las actividades de comunicación de los programas de aplicación soportando abstracciones como : procedimientos de invocación remota, comunicación entre grupos de procesos transmisión de datos multimedia en tiempo real.Ejemplos: CORBA, Java RMI, etc.
Modelo de Sistemas DistribuidosModelos ArquitectónicosCapas de softwareMiddleware: Permite enmascarar la heterogeneidad. Puede dar un modelo y una interfaz de programación utilizable Puede soportar abstracciones como: Procedimientos de invocación remota(RPC). Comunicación entre grupos de procesos. Eventos , replicación , servicios multimedia, etc.
Modelo de Sistemas DistribuidosModelos ArquitectónicosCapas de softwareMiddleware:
¿Qué forma tiene el Middleware? Bibliotecas adicionales
Procedimientos de invocación remota(RPC).
Objetos Remotos (RMI, CORBA) Herramientas de Programación.
Lenguajes de definición de Interfaces + compiladores para ellos.
Servicios Básicos de ayuda
Servicio de Nombres para buscar objetos
De notificación de eventos
De control de Transacciones, etc.
Modelo de Sistemas DistribuidosModelos ArquitectónicosCapas de software
Middleware:
¿Qué limitaciones impone? Se incrementa la complejidad
arquitectónica.
Hay mas niveles Hay que aprender mas herramientas. Se pierde el control de bajo nivel
sobre los modos de fallo. Se depende de varias personas.
Modelo de Sistemas DistribuidosModelos ArquitectónicosArquitectura de Sistemas
La división de responsabilidades entre los componentes del sistema (aplicaciones, servidores y otros procesos) y la ubicación de los componentes en la red es el aspecto mas importante en el diseño de un sistema distribuido.
Sus implicancias fundamentales están en la prestaciones, fiabilidad y seguridad del sistema resultante.
Principales modelos arquitectónicos.
Modelo cliente servidor
Múltiples servidores
Procesos de igual igual
Modelo de Sistemas DistribuidosModelos ArquitectónicosArquitectura de SistemasModelo Cliente Servidor:Clientes que invocan a servidores individuales. El mas común de modelos (DNS, Web, ftp, telnet, etc.)Un servidor puede ser cliente de otro servicio. (servidor web Crawler )
Modelo de Sistemas DistribuidosModelos ArquitectónicosArquitectura de Sistemas
Servicios Proporcionados por Múltiples Servidores:Los servicios pueden implementarse como distintos procesos de servidor en computadores separados interaccionando, cuando es necesario, para proporcionar un servicio a los procesos clientes. Lo servidores pueden dividir el conjunto de objetos en los que esta basado el servicio y distribuírselo entre ellos mismos, o pueden mantener copias replicas de ellos en varias maquinas
Muy usada en DNS, Web y NIS.Cache almacena los recursos mas probablemente usados.Un cache pude responder a un esquema de Proxy. Los servidores Proxy para la Web aumentan la disponibilidad
Modelo de Sistemas DistribuidosModelos ArquitectónicosArquitectura de Sistemas
Servicios Proporcionados por Múltiples Servidores:
Modelo de Sistemas DistribuidosModelos ArquitectónicosArquitectura de SistemasServicios Proporcionados por Múltiples ServidoresServidores Proxy y Caches:Cache: almacén de objetos de datos utilizados recientemente, y se encuentra mas próximo que los objetos en si. Al recibir un objeto nuevo en un computador se añade al almacén de la cache reemplazando si fuera necesario algunos objetos existentes.
Modelo de Sistemas DistribuidosModelos ArquitectónicosArquitectura de SistemasServicios Proporcionados por Múltiples ServidoresServidores Proxy y Caches:
Modelo de Sistemas DistribuidosModelos ArquitectónicosArquitectura de Sistemas
Procesos de Igual a IgualEn esta arquitectura todos los procesos desempeñan tareas semejantes, interactuando cooperativamente como iguales para realizar una actividad distribuida de computo sin distinción entre clientes y servidores.
Útil al descomponer aplicaciones en tareas coordinadas.Ejemplos•Cooperación y coordinación•Algoritmos descentralizados•Coordinación de agendas, trabajo colaborativo
Modelo de Sistemas DistribuidosModelos ArquitectónicosVariaciones en el modelo Cliente Servidor
Factores que determinan la variación del modelo cliente servidor:
• El uso de código móvil y agente móvil
• Las necesidades de los usuarios de computadores de bajo costo y con recursos de hardware limitados, que son muy sencillos de manejar
• El requisito de añadir o eliminar de una forma conveniente los dispositivos móviles
Modelo de Sistemas DistribuidosModelos Arquitectónicos
Código Móvil. Es el código que puede ser enviado de un computador dado y ejecutarse en este. Ejemplo los Applets de Java
Variaciones en el modelo Cliente Servidor
Modelo de Sistemas DistribuidosModelos ArquitectónicosArquitectura de Sistemas
Variaciones en el modelo Cliente ServidorCódigo Móvil. Es el código que puede ser enviado de un computador dado y ejecutarse en este. Ejemplo los Applets de Java
Modelo de Sistemas DistribuidosModelos ArquitectónicosAlgunas Posibilidades:Según la ubicación del código del proceso del cliente:Código estáticoCódigo con movilidad (recolocación del proceso)
Según la proporción de tareas que recae sobre el cliente y el servidor:Clientes al estilo habitualClientes ligeros de aplicaciones complejasComputadoras de red
Variaciones en el modelo Cliente Servidor
Modelo de Sistemas DistribuidosModelos Arquitectónicos
Red EspontaneaVentajasFacilidad de conexión a la red localFacilidad de integración con los servicios locales
ProblemasSeguridadConectividadServicio de detección.
Variaciones en el modelo Cliente Servidor
Modelo de Sistemas DistribuidosModelos ArquitectónicosArquitectura de Sistemas
Variaciones en el modelo Cliente Servidor
Modelo de Sistemas DistribuidosModelos ArquitectónicosArquitectura de SistemasModelo Cliente Servidor:Clientes que invocan a servidores individuales. El mas común de modelos (DNS, Web, ftp, telnet, etc.)Un servidor puede ser cliente de otro servicio. (servidor web Crawler )
Modelo de Sistemas DistribuidosModelos Arquitectónicos
Interfaces y Objetos
Modelo de Sistemas DistribuidosModelos Arquitectónicos
Interfaces y Objetos
Modelo de Sistemas DistribuidosModelos ArquitectónicosRequisitos de Diseño para arquitecturas Distribuidas
29
Modelo de Sistemas DistribuidosModelos ArquitectónicosRequisitos de diseño sobre prestaciones
Modelo de Sistemas DistribuidosModelos ArquitectónicosRequisitos de Diseño Sobre Calidad de servicio
17/04/23Sistemas Distribuidos 31
Modelo de Sistemas DistribuidosModelos ArquitectónicosRequisitos de diseño sobre Fiabilidad
17/04/23Sistemas Distribuidos 32
Realizan una descripción mas formal de las propiedades que son comunes en todos los sistemas distribuidos.
17/04/23Sistemas Distribuidos 33
17/04/23Sistemas Distribuidos 34
17/04/23Sistemas Distribuidos 35
17/04/23Sistemas Distribuidos 36
17/04/23Sistemas Distribuidos 37
17/04/23Sistemas Distribuidos 38
17/04/23Sistemas Distribuidos 39
17/04/23Sistemas Distribuidos 40
17/04/23Sistemas Distribuidos 41
17/04/23Sistemas Distribuidos 42
17/04/23Sistemas Distribuidos 43
17/04/23Sistemas Distribuidos 44
17/04/23Sistemas Distribuidos 45
17/04/23Sistemas Distribuidos 46
17/04/23Sistemas Distribuidos 47
17/04/23Sistemas Distribuidos 48
17/04/23Sistemas Distribuidos 49
17/04/23Sistemas Distribuidos 50
17/04/23Sistemas Distribuidos 51
17/04/23Sistemas Distribuidos 52
17/04/23Sistemas Distribuidos 53
17/04/23Sistemas Distribuidos 54
17/04/23Sistemas Distribuidos 55
Gracias
¿Alguna pregunta?