CLASIFICACIÓN Y PROPIEDADES DE FALLAS EN SISTEMAS DISTRIBUIDOS
March 14, 2019 | Author: Leon King | Category: N/A
Short Description
Download CLASIFICACIÓN Y PROPIEDADES DE FALLAS EN SISTEMAS DISTRIBUIDOS...
Description
4.1 CLASIFICACIÓN Y Y PROPIEDADES DE FALLAS EN SISTEMAS DISTRIBUIDOS. Clasif icación de f allas Las fallas de un sistema de cómputo pueden clasificarse como sigue:
Falla de pr ocesos: en una falla de proceso, la ejecución arroja un resultado incorrecto, los procesos provocan que el sistema se desvíe de las especificaciones y el proceso puede suspender su progreso. Ejemplos de errores que causan la falla de los procesos son los interbloqueos, tiempo expirado, violación de protección, error en la entrada provista por el usuario, violaciones de consistencia (puede ocurrir si se emplea la técnica de control de concurrencia optimista). Dependiendo del tipo de error que cause que un proceso falle, este proceso puede ser abortado o reiniciado desde un estado anterior. Por ejemplo, un proceso inter bloqueado puede ser restablecido desde un estado anterior, donde este puede tratar de adquirir nuevamente recursos. Por otro lado, entradas erróneas requieren que el proceso se aborte.
Falla del sistema: una falla de un sistema ocurre cuando el procesador falla en la ejecución. Esto es causado por errores de software y problemas de hardware (como errores de CPU, falla en la memoria principal, falla en el bus, falla de energía, etc.). En el caso de una falla de sistema, el sistema es detenido y reiniciado en un estado correcto. El estado correcto puede estar en algún estado predefinido o en un estado anterior (punto de revisión) del sistema guardado en un almacenamiento no volátil. Una falla del sistema puede ser clasificado como sigue:
Falla de amnesia: ocurre cuando se reinicia el sistema en un estado predefinido, y no depende del estado del sistema antes de la falla. No se conoce el estado que tenía el sistema antes de la falla.
Falla de amnesia par cial: ocurre cuando se reinicia el sistema y se conoce parte del estado que presentaba antes de ocurrirla falla. También se predefine un estado inicial para fallas.
Falla de pausa: ocurre cuando el sistema se reinicia al mismo estado en que se encontraba antes de la falla.
Falla de abor to (halting): ocurre cuando un sistema nunca se reinicializa. Falla en medio de almacenamiento secundar io: se dice que ocurre una falla en medio de almacenamiento cuando los datos almacenados no pueden ser accedidos (cualquiera de sus partes o en su totalidad). La causa de esta falla normalmente es provocada por error de paridad, daño de las cabezas lectoras, partículas de polvo depositadas en el medio.
Falla en los medios de comunicación: una falla de un medio de comunicación, ocurre cuando un sitio no puede comunicarse con otro sitio operacional de la red. Esto es ocasionado por la falla del nodo de conmutación y/o por los enlaces de comunicación del sistema. La falla de un nodo de conmutación incluye la falla del sistema y la falla de almacenamiento secundario, por otro lado, la falla de enlace incluye una ruptura física y ruido en los canales de comunicación. Note que una falla en un medio de comunicación (esto depende de la topología y la conectividad) puede no causar la pérdida total de las facilidades de comunicación. Por ejemplo, una falla en el medio de comunicación puede simplemente causar una pérdida del mensaje, la recepción de un mensaje con algunos errores, o la partición de una red donde un segmento de sitios pueden ser incomunicados con los sitios en otro segmento, aunque los sitios dentro de un segmento pueden comunicarse entre sí.
4.2 ELEMENTOS DE LAS ESTRATEGIAS TOLERANTES A FALLAS. Un sistema puede ser diseñado para que sea tolerante a falla desde dos puntos de vista. Un sistema puede ocultar la falla o puede en caso de ocurrir una falla corregirla y seguir funcionando. Cuando el sistema se diseña para ocultar la falla, cuando ocurre una falla continúa con sus funciones específicas. Por otro lado un sistema diseñado para corregir una falla puede o no ejecutar funciones específicas, sin embargo, puede seguir acciones para recuperación.
Estr ategia toler ante a f allas Redundancia. Con este enfoque, el sistema puede emplear varios procesos, muchos componentes de hardware, muchas copias de datos, etc. Cada uno con independencia en el modo de la falla, (es decir, si un componente falla no afecta la operación de otro componente). Técnica para sistemas tolerantes a fallas. Protocolo de compromiso. Protocolo de elección. La primera técnica se utiliza parasistemas que pueden hasta cierto punto corregir las fallas y el segundo, el protocolo de elección, es utilizado para sistemas que oculten las fallas. Efectos de las fallas más comunes.
Un pr oceso muer e. Cuando un proceso muere, es importante que los recursos asignados al proceso sean recuperados, de otra manera pueden estar perdidos permanentemente.
La máquina f alla. Cuando una máquina falla, todos los procesos ejecutándose en esa máquina se mueren. La diferencia con el caso anterior es, como detectar la falla.
La r ed f alla. Una falla de enlace de comunicación puede particionar la red en subredes, haciendo imposible la comunicación entre nodos localizados en sub-redes diferentes. Un proceso no puede notar la diferencia entre una falla de máquina y una falla de enlace de comunicación, dependiendo de la red, en algunos casos se pueden detectar falla de máquina. En las redes que no detectan falla de máquina (Ethernet), el diseño tolerante a falla debe asumir que la máquina puede estar en operación y que los procesos en ella están activos.
Acciones atómicas y compr omiso La actividad de un sistema es gobernada por una secuencia de primitivas u operaciones atómicas que ejecuta permanentemente. Generalmente, una instrucción a nivel de máquina, es indivisible, instantánea, y no puede ser interrumpida (a menos que ocurra una falla), corresponde a una operación atómica. Sin embargo es deseable disponer de un conjunto de instrucciones que completan una cierta tarea y hacemos que este grupo sea una operación atómica. El concepto de acción atómica se extiende al concepto de atomicidad desde un nivel de instrucción de máquina hasta una secuencia de instrucciones o un grupo de procesos los cuales deben ellos mismos ser ejecutados atómicamente. Las acciones atómicas forman un bloque básico en la construcción de operaciones tolerantes a fallas. Una transacción agrupa una secuencia de acciones (sobre una base de datos) y al grupo se le trata como una acción atómica que mantiene la consistencia de la base de datos. En los sistemas distribuidos, varios procesos pueden coordinarse para ejecutar una tarea. Sus acciones deben ser atómicas con respectos a los otros procesos. Como ejemplo, en un sistema de base de datos distribuidos, una transacción debe procesarse en cada sitio o en ninguno para mantener la integridad de la base de datos.
Pr otocolo de compr omiso de dos f ases Este protocolo asume que uno de los procesos cooperativos actúa como coordinador, otros procesos se les refiere como subordinados (se asume que los subordinados se ejecutan en diferentes sitios). Éste protocolo asume que se dispone de un medio de almacenamiento estable en cada sitio y que se encuentra activo el protocolo de escritura de registro anticipado. Al inicio de la transacción, el coordinador envía el mensaje ³inicio de transacción´ a cada subordinado.
4.3 RECUPERACIÓN DE ERRORES. Recordemos que un error es esa parte del estado del sistema que es distinto de los valores esperados y que pueden conducir a la falla de un sistema, la recuperación de una falla es un proceso que involucra la recuperación de estados erróneos a un estado libre de error. Hay dos enfoques para la recuperación de un estado de error a un estado libre de error. Si la naturaleza del error y los daños causados por la falla pueden ser completamente calculados, entonces es posible remover esos errores del estado del proceso (o sistema) y habilitar el movimiento hacia adelante del proceso a un estado libre de error. Esta técnica es conocida como recuperación hacia adelante. Si no es posible prever la naturaleza de las fallas y remover todos los errores en el estado del proceso (o sistema), entonces el estado del proceso puede ser restaurado a un estado previo libre de error. Esta técnica es conocida como recuperación de error hacia atrás. Note que la recuperación del error hacia atrás es más simple que la recuperación del error hacia adelante, ya que es independiente de la falla y de los errores causados por la falla. Además un sistema puede recuperarse de una falla arbitraria por la restauración a un estado previo. Esto generalmente habilita que la recuperación hacia atrás sea provista como un mecanismo de recuperación general para cualquier tipo de proceso.
Los principales problemas asociados con la recuperación hacia atrás son:
Penalidad en r endimiento: la sobrecarga de trabajo para restaurar el estado del proceso a un estado anterior libre de errores puede resultar muy alto. No está garantizado que las fallas no ocurrirán nuevamente cuando se inicialice el procesamiento desde un estado anterior. Algunos componentes del estado del sistema pueden ser irrecuperables. Por ejemplo, el dinero dispuesto en un cajero automático no puede recuperarse. La técnica de recuperación hacia delante, por otro lado, provoca una menor sobrecarga, porque sólo esas partes del estado que se desviaron de un valor esperado necesitan ser corregidas. Sin embargo, esta técnica puede ser usada solo cuando los daños debido a fallas pueden ser calculados correctamente, por lo tanto, este no es un concepto tan general como la recuperación de error hacia atrás y no puede ser provista como un mecanismo general para recuperar errores.
View more...
Comments