Please enable JavaScript.
Coggle requires JavaScript to display documents.
Transparencia en Sistemas Distribuidos., Tipos Sistemas Distribuidos,…
Transparencia en Sistemas Distribuidos.
Acceso: Esconde las diferencias entre las distintas representaciones de datos y la forma en que estos son accedidos por los usuarios.
Ejemplo: INTEL (little endian)
Ubicación: Esconde la ubicación física de donde está situado el recurso.
Ejemplo: Usar nombres lógicos en lugar de reales. URL en la web
Concurrencia: Esconde el hecho de que distintos usuarios están “compitiendo” en paralelo por acceder o usar recursos, o que un recurso está siendo compartido con otros usuarios.
Ejemplo: Bases de datos
Migración: Esconde el hecho que recursos puedan migrar de una ubicación física a otra sin afecta el modo en que sucede.
Ejemplo: Tareas
Re-ubicación: Los recursos son movidos de una ubicación a otra mientras están en uso.
Replicación: Esconde el echo de que un recurso pueda estar replicado varias veces
Ejemplo: Servidor web de Coogle
Fallas: El usuario no nota que un recurso ha dejado de funcionar.
Ejemplo: arreglos de discos RAID
Persistencia: Escondite si un recurso de software está en disco o en memoria.
Ejemplo: sertvodores cache.
Tipos Sistemas Distribuidos
Distributed Computing Systems
Clusters:: Coleccion de procesador similars que ejecutan el mismo sistema operativo.
Load Balancing Clusters:
El procesador de fornt-end distribuye las solicitudes entrantes
Granjas de servidores
High Availability Clusters (HA):
Porporcionar redundancia: sistemas de respaldo
Puede ser mas tolerante a fallos que los grandes mainframes
High Performance Clusters (HPC):
Ejecutar grandes programas paralelos
Aplicaciones cientificas, militares y de ingenieria
Grids:Modelado libremente en la red de datos.
Gestiona el uso compartido entre dominios administrativos.
Similar a los clusters, pero los procesadores están acoplados de manera más flexible.
Cargas de trabajo similares a la de las supercomputadoras
Arquitectura:
Fabric layer: interfaces a los recursos locales en un sistio específico
Conectivity layer: protocolos para admitir el uso de múltiples recursos para unasola aplicacion
Resource layer: administra un solo recurso
Collective layer: descubrimiento de recursos, asignacion, programacion, etc.
Applications: Utiliza los recursos del Grid.
Clouds: Proporciona servicios escalables como una utilidad a través de Internet
Construido en un grid de computadoras
Distributed Information Systems
Transaction Processing Systems
Aplicaiones en base de datos
Modelo de comunicacion
Propiedades ACID:
Atómico: todo o nada (por completo)
Consistente: conservan las invariantes.
Isolated (aislado): transacciones concurrentes aisladas aisladas (serializables) no interfieren entre sí
Durable: operaciones comprometidas no se pueden deshacer
Enterprise Application Integration
Menos estructurados
Los mecanismos de comunicación para respaldar esto incluyen CORBA, llamada a procedimiento remoto (RPC) e invocacion de metodo remoto
Distributed Embedded Systems:
Health care systems:
Sensor networks:
Coleccion de nodos distribuidos geograficamente que costa de un dispositivo de comunicacion, una fuente de alimentacion y algun tipo de sensor
Monitorear colectivamente los datos sensoriales.
Home Systems:
Construido alrededor de una o mas PCs, pero tambien puede incluir otros dispositivos electronicos
Software
Sistemas Distribuidos
¿Qué es un Sistema Distribuido?
Colección de computadoras independientes que aparecen ante los usuarios como único sistema coherente. (Andrew S. Tanenbaum)
Aquel que le impide a uno continuar su trabajo cuando falla un computador del cual uno nunca ha oído hablar. (L. Lamport)
El sistema tanto los componentes de hardware y software de un computador conectados en red se comunican coordinan mediante paso de mensajes. (G.Coulouris,J.Dollimore,T.Kindberg
Desventajas
Fallas más frecuentes
Red
Latencia
Pérdida de mensajes
Interoperabilidad
Falta de estándares únicos
Aumento de la complejidad
Costos de administración
Seguridad
Características principales
Soporte a plataformas heterogéneas a través de una capa de software entre el kernel y la aplicación (middleware)
Programación paralela, utilizando bibliotecas de intercambio de mensaje (MPI) o basadas en memoria compartida (Pthreads)
Interacción de la aplicación y del usuario con el ambiente distribuido en niveles diferentes.
Ventajas
Aplicaciones inherentemente distribuidas.
Capacidad de crecimiento.
Aumento en capacidad de procesamiento.
Fiabilidad y disponibilidad.
Economía
Compartir recursos datos.
3 variantes de plataformas de software:
Sistemas operativos de Red
Dos o más computadores conectados por red
Comparten los diferentes recursos y la información del sistema mediante la red
Middle-ware
Cada de software que se ejecuta sobre el sistema operativo local de cada comptador ofreciendo uno o más servicios distribuidos
Sistemas operativos distribuidos
Sistemas Operativos Monoprocesador: Múltiples procesos compartiendo recursos sobre una máquina, gracias a un microkernel que implemente una máquina virtual
Sistemas Operativos Multiprocesador: Múltiples procesadores compartiendo datos a través de memoria compartida
Datos deben ser protegidos para garantizar consistencia
Multiples procesadores deber ser transparentes para la aplicacion
Sistemas Operativos Multicomputador: Multiples comptadores conectados por red.
Cada proceso tiene su propia memoria
Comunicacion por paso de mensajes
Sistemas Operativos Distribuidos: Sistemas de Memoria Compartida Distribuida
Multiples proceasdores, cada uno con su memoria
Memoria compartida virtual sobre multicomputadores
Hardware
Sistemas de información distribuida