jueves, 8 de agosto de 2013

Sistemas Distribuidos, ¿que es?, ¿para que?

Definición

(1) conjunto de computadores
(2) interconectados igual que un sistema en red
(3) que comparten un estado
(4) ofreciendo una visión de sistema único (SSI) igual que un sistema centralizado

Objetivo principal: compartir recursos / visión de sistema único

Ventajas respecto a un sistema centralizado
  • bajo coste: puede estar compuesto de PCs estándar
  • escalabilidad: consecuencia de su modularidad
  • flexibilidad: re utilización de máquinas “viejas”
  • disponibilidad: mediante replicación de recursos
  • ofrecen la posibilidad de paralelismo
  • permiten acceder a recursos remotos

Ventajas respecto a un sistema en red
  • uso más eficiente de los recursos (migración)
  • acceso transparente a los recursos

Desventajas respecto a un sistema centralizado
  • un sistema centralizado del mismo coste es más eficiente que cada uno de los componentes del sistema distribuido
  • si la distribución de recursos es inadecuada algunos recursos pueden estar desbordados mientras otros están libres
  • mantener la consistencia puede ser muy “costoso”
  • la red de interconexión es una fuente de problemas
  • la gestión de la seguridad es más compleja

Propiedades deseables
1.      Transparencia
2.      Escalabilidad
3.      Fiabilidad y tolerancia a fallos
4.      Consistencia

Transparencia
  • de identificación: los espacios de nombres de los recursos son independientes de la topología de la red y de la propia distribución de los recursos
  • de ubicación: los recursos pueden migrar entre nodos de replicación
  • de paralelismo: sin que la aplicación lo especifique y sin consecuencias negativas sobre la ejecución
  • de compartición: accesos simultáneos a recursos
  • de rendimiento: es necesario buscar soluciones de compromiso cuando la degradación del rendimiento hace impracticable implementar alguna de las propiedades

Escalabilidad
Capacidad de crecer sin disminuir su rendimiento
      ·        Basada en la modularidad
Espacios de nombres
      ·        identifican objetos de diferente naturaleza: ficheros, procesos, variables,     direcciones de memoria (DSM)…
      ·        espacios lineales (memoria): 32 bits insuficientes
      ·       en general los espacios de nombres son jerárquicos y por lo  tanto             escalables por naturaleza
Mantenimiento del rendimiento: replicación
      ·        mirroring, caching
      ·        obtener transparencia de replicación es complejo/costoso

Fiabilidad y tolerancia a fallos “Capacidad para realizar correctamente y en todo momento las funciones para las que se ha diseñado”

Disponibilidad
      ·        Fracción de tiempo que el sistema está operativo (%)
o   parámetros: MTBF (Mean Time Between Failures), MTTR…
o   componentes de alta calidad vs replicación (más barata)
Tolerancia a fallos
      ·      Capacidad para seguir operando correctamente ante el fallo de alguno de sus componentes
o   Replicación (pasiva, activa)

Consistencia
Problemas relacionados con la replicación
      ·         la red de interconexión es una nueva fuente de fallos
      ·         la seguridad del sistema es más vulnerable
      ·         la gestión del estado global es más compleja/costosa

Problemas para mantener la consistencia
      ·         distribución física: varias copias, cada una con su estado
      ·         errores y/o retardos en las comunicaciones
      ·         ausencia de reloj global: ¿cómo ordenar eventos?
Técnicas: transacciones, comunicación a grupos
      ·         Para un rendimiento aceptable: relajar consistencia

Aplicaciones distribuidas
      ·        Aplicaciones paralelas: muchas tareas a la vez
o   objetivo principal: disminuir el tiempo de ejecución
      ·        Aplicaciones distribuidas (motivaciones):
o   alto rendimiento: cluster computing
o   tolerancia a fallos: replicación, transacciones
o   sistemas informáticos bancarios
o   la gestión de la consistencia es crítica
      ·        Alta disponibilidad: caching, mirroring
o   bajo tiempo de respuesta: WWW, sistemas de ficheros…
o   a consistencia es importante, pero no crítica
      ·        Movilidad, ubicuidad: aplicaciones AmI




No hay comentarios:

Publicar un comentario