1 / 26

Sistemas Distribuidos

Sistemas Distribuidos. Faults and Fault-Tolerant Systems (Fallos y Sistemas Tolerantes a Fallas) R osa Ernestina P elayo Márquez. Sistemas Distribuidos INTRODUCTION. Una falla es la manifestación de un comportamiento inesperado.

tovah
Download Presentation

Sistemas Distribuidos

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Sistemas Distribuidos Faults and Fault-TolerantSystems(Fallos y Sistemas Tolerantes a Fallas)Rosa Ernestina Pelayo Márquez

  2. Sistemas Distribuidos INTRODUCTION • Una falla es la manifestación de un comportamiento inesperado. • Tolerancia a fallos es un mecanismo que oculta o restaura el comportamiento que se espera de un sistema después de la ocurrencia de fallas. Los avances en la ingeniería de hardware pueden hacer los componentes individuales más confiables, pero no pueden eliminar las fallas por completo. Un diseño mal del sistema también pueden contribuir a los fallos. Faults and Fault - TolerantSystems

  3. Sistemas Distribuidos CLASSIFICATION OF FAULTS El punto de vista de un sistema distribuido es a una vista de nivel de proceso, por lo cual la descripción de ciertos tipos de fallas son visibles a nivel de proceso. Las principales clases de fallos son las siguientes: • Crashfailure • Omissionfailure • Transientfailure • Byzantinefailure • Software failure • Temporal failure • Security failure Faults and Fault - TolerantSystems

  4. Sistemas Distribuidos CRASH FAILURE • Un proceso experimenta un fallo Crash, cuando deja de forma permanente la ejecución de sus acciones. Las fallas Crash se tratan como reversible, es decir, un proceso puede hacerse el muerto por un período determinado de tiempo, y luego reanudar el funcionamiento, o puede ser reparado. Estos fallos se llaman napping failure . Modelo Asíncrono Sistema Síncrono Faults and Fault - TolerantSystems

  5. Sistemas Distribuidos CRASH FAILURE Modelo asíncrono, los fallos crash no se puede detectar con total certeza. Ya que no hay límite inferior de la velocidad a la que un proceso puede ejecutar sus acciones. No hay limitaciones en cuanto a: • Velocidad de procesamiento • Retardos de transmisión de mensajes • Tasas de deriva de los relojes Los sistemas distribuidos reales suelen ser asíncronos • Por ejemplo, Internet Faults and Fault - TolerantSystems

  6. Sistemas Distribuidos CRASH FAILURE Sistema Síncrono, están delimitadas las velocidades del procesador y los retrasos de canal, los fallos Crash pueden detectarse utilizando timeout. Uno de estos procesos de implementación requieren transmitir periódicamente una señal de latido que significa "estoy vivo." Cuando otros procesos correctos no reciben la señal de transacción dentro de un período de tiempo de espera predefinido, concluyen que el proceso se ha bloqueado. Faults and Fault - TolerantSystems

  7. Sistemas Distribuidos OMISSION FAILURE • Un proceso de transmisor enviar una secuencia de mensajes a un proceso receptor. Si el receptor no recibe uno o más de los mensajes enviados por el transmisor, entonces se produce un fallo de omisión. Faults and Fault - TolerantSystems

  8. Sistemas Distribuidos TRANSIENT FAILURE Un error transitorio puede perturbar el estado de los procesos de una manera arbitraria. El agente inductor de este error puede ser momentáneamente activo (como una sobrecarga de energía o un golpe mecánico, o un rayo), pero puede hacer un efecto duradero en el estado global. De hecho, las fallas de omisión son casos especiales de fallos transitorios, cuando los estados del canal son perturbados. Faults and Fault - TolerantSystems

  9. Sistemas Distribuidos TRANSIENT FAILURE La evidencia empírica indica que los fallos transitorios ocurren con frecuencia. • Los efectos de los riesgos ambientales como los rayos gamma, cuya duración en el tiempo es limitado. • Son causados ​​por una fuente de alimentación sobrecargada o baterías débiles. • Cuando los componentes de software fracasan. • Fallos de hardware. Faults and Fault - TolerantSystems

  10. Sistemas Distribuidos BYZANTINE FAILURE Problema de los Generales Bizantinos, planteado originalmente por Lamport , Shostak y Peace en una publicación de la ACM en Julio de 1982. Es un procesador que continua con su ejecución proporcionando respuestas incorrectas a las preguntas que posiblemente trabajan de manera maliciosa junto con otros procesadores que han fallado para dar la impresión de que todo funciona de manera correcta aunque no sea así. EJEMPLO: Problema de los Generales Bizantinos. Un grupo de generales sitia una ciudad y deben ponerse de acuerdo en un plan de ataque, ya sea atacar o retirarse, independientemente de que existan generales traidores. Los generales solo se comunican a través de mensajes con los otros generales. Esta traición puede verse de dos formas: • Los mensajes pueden no llegar, o dicho de otra forma, las comunicaciones son no confiables. • Un general traidor puede mentir, o sea, un nodo puede fallar de manera impredecible. Faults and Fault - TolerantSystems

  11. Sistemas Distribuidos BYZANTINE FAILURE • Definición del problema: Un general comandante debe enviar una orden a sus n-1 tenientes generales de manera tal que (Dada una red con n procesos que se comunican entre sí solo a través del pasaje de mensajes sobre canales bidireccionales, asegurar que un proceso envía un ítem a los otros n-1 procesos de manera tal que) : • Premisa 1) Todos los tenientes leales obedecen la misma orden. • Premisa 2) Si el general comandante es leal, entonces todos los tenientes leales obedecen la orden que el envió. Las premisas 1) y 2) son conocidas como las condiciones de consistencia interactivas. Obsérvese que si el comandante es leal la condición P1) se deriva de la condición P2). Sin embargo el comandante puede ser un traidor. Faults and Fault - TolerantSystems

  12. Sistemas Distribuidos BYZANTINE FAILURE Resultados de imposibilidad En el caso A) para satisfacer P2) el teniente 1 debería atacar. En el caso B) si el teniente 1 ataca viola P1) El teniente 1 no puede distinguir entre ambos casos con la información de que dispone. Faults and Fault - TolerantSystems

  13. Sistemas Distribuidos SOFTWARE FAILURE Fallas de software: Razones principales que llevan a falla de software : • Codificación de errores o errores humanos. • Errores de diseño de software. • Pérdidas de memoria. • Problema con la insuficiencia de las especificaciones. Faults and Fault - TolerantSystems

  14. Sistemas Distribuidos CODING ERRORS OR HUMAN ERRORS La perdida de una nave espacial debida a que el programa no utilizó las unidades apropiadas de los parámetros físicos. Ejemplo: El 23 de septiembre de 1999, la NASA perdió la nave MarsClimateOrbiter de $125 Millones de dólares porque un equipo de ingenieros estaba utilizando unidades inglesas de medición mientras que otro equipo utilizaba unidades métricas, lo que lleva a un fracaso de navegación , haciendo que se despedazar en la atmósfera. Faults and Fault - TolerantSystems

  15. Sistemas Distribuidos SOFTWARE DESIGN ERRORS • La misión del pionero Mars aterrizó sin problemas en la superficie Martial, el 4 de julio de 1997. Sin embargo, más tarde su comunicación fallo debido a un defecto de diseño en el tiempo real embebido en el software del kernelVxWorks. Faults and Fault - TolerantSystems

  16. Sistemas Distribuidos MEMORY LEAKS Pérdidas de memoria: La ejecución de los programas sufre la degeneración del sistema en tiempo de ejecución debido a las pérdidas de memoria, lo que lleva a una caída del sistema. La pérdida de memoria es cuando los procesos no pueden ser liberados de la memoria física. Esto reduce efectivamente el tamaño de la memoria física disponible con el tiempo. Cuando la memoria disponible cae por debajo del mínimo requerido por el sistema, un fallo crash se convierte en inevitable. Faults and Fault - TolerantSystems

  17. Sistemas Distribuidos PROBLEM WITH THE INADEQUACY OF SPECIFICATION PROBLEMA CON LA INSUFICIENCIA DE LAS ESPECIFICACIONES: Supongamos que un programa de sistema en ejecución S está produciendo los resultados esperados. Si el sistema de repente deja de producir los resultados y no hay ningún fallo en el hardware o pérdida de memoria, entonces puede haber un problema con las especificaciones. EJEMPLO: El problema del año 2000, también conocido por el numerónimoY2K. Es un bug o error de software causado por la costumbre que habían adoptado los programadores de omitir la centuria en el año para el almacenamiento de fechas (generalmente para economizar memoria), asumiendo que el software sólo funcionaría durante los años cuyos nombres comenzaran con 19. Lo anterior tendría como consecuencia que después del 31 de diciembre de 1999, sería el 1 de enero de 1900 en vez de 1 de enero de 2000. Faults and Fault - TolerantSystems Muchos de los fracasos como Crash, Omisión, Transitorioo Bizantinopueden ser causados por errores de software.

  18. Sistemas Distribuidos TEMPORAL FAILURE Fallo temporal: Sistemas de tiempo real requieren acciones para ser realizadas en un período de tiempo específico. Cuando no se cumple con esta fecha límite, se produce una falla temporal. Faults and Fault - TolerantSystems

  19. Sistemas Distribuidos SECURITY FAILURE • Virus y otros tipos de software malicioso que son rastreados en una computadora pueden dar lugar a comportamientos inesperados que se manifiestan en la falla.  • Hay varios tipos de intrusos que conducen a fracasos, estos incluyen el espionaje o robo de contraseñas, lo que lleva a un peligro al sistema EJEMPLO: En noviembre de 1988, gran parte del servicio de larga distancia a lo largo de la costa este se vio interrumpido cuando un equipo de construcción cortado accidentalmente un cable principal de fibra óptica en Nueva Jersey, y como resultado, los intentos de 3.500.000 de llamadas fueron bloqueados. Faults and Fault - TolerantSystems

  20. Sistemas Distribuidos SPECIFICATION OF FAULTS EJEMPLO: Asuma que un sistema, en ausencia de cualquier fallo, envía un mensaje un número infinito de veces (es decir, la salida es una secuencia infinita aaaaa ...). Sin embargo, una falla en ocasiones provoca un mensaje para cambiar de aab. aaaaa aaaab Faults and Fault - TolerantSystems

  21. Sistemas Distribuidos FAULT-TOLERANT SYSTEMS Un sistema se considera tolerante a fallas cuando regresa a su configuración original para detener la ejecución. • Tolerancia de enmascaramiento • Tolerancia no enmascarada • Tolerancia a prueba de fallos • Degradación correcta Faults and Fault - TolerantSystems

  22. Sistemas Distribuidos DETECTION OF FAILURES Mecanismos para la detección de fallas: • Uso de Timeout. • A través de relojessincronizados. • Límite de la velocidad del procesador. • Límite del retraso de propagación de un mensaje. Faults and Fault - TolerantSystems

  23. Sistemas Distribuidos TOLERATING CRASH FAILURES Una técnica simple para el enmascaramiento de fallas es la replicación de procesos o módulos funcionales: • Redundancia modular doble (DMR). Enmascara cualquier efecto de una simple falla crash. • Redundancia modular triple (TMR). Enmascara cualquier falla simple. Faults and Fault - TolerantSystems

  24. Sistemas Distribuidos TOLERATING OMISSION FAILURES En un sistema tolerante a fallas por omisión no debe: • Haber pérdidas • Duplicación • Reordenamiento Se debe garantizar la comunicación entre un emisor y un receptor de manera confiable. Faults and Fault - TolerantSystems

  25. Sistemas Distribuidos THE SLIDING WINDOW PROTOCOL • Es utilizado en la capa de transporte para garantizar la comunicación confiable entre un par de procesos. • Detecta pérdidas o reordenamiento de mensajes usando timeout y retransmisiones de mensajes. Faults and Fault - TolerantSystems

  26. Sistemas Distribuidos GRACIAS POR SU ATENCIÓN

More Related