FIUBA 75.60 Sistema Distribuídos I 1 FIUBA 75.60 Sistemas Distribuidos I Sistemas Tolerantes a Fallas Universidad de Buenos Aires Facultad de Ingeniería 75.60 Sistemas Distribuidos I Sistemas Tolerantes a Fallas Prof. María Feldgen FIUBA- Laboratorio de Sistemas Distribuidos Heterogéneos Prof. María Feldgen 1 FIUBA 75.60 Sistemas Distribuidos I Sistemas Tolerantes a Fallas Tolerancia a fallas • • Trata con la confiabilidad de un sistema, o sea como asegurar que el sistema corra correctamente. Confiabilidad: es la medida en la cual la confianza se puede poner justificadamente en el servicio que se obtiene del sistema (Laprie (1992). FIUBA- Laboratorio de Sistemas Distribuidos Heterogéneos Prof. María Feldgen 2 FIUBA Laboratorio de Sistemas Distribuídos Heterogéneos (Prof. María Feldgen) FIUBA 75.60 Sistema Distribuídos I 2 FIUBA 75.60 Sistemas Distribuidos I Sistemas Tolerantes a Fallas Defecto, error y falla • Las discapacidades de la confiablidad tiene tres facetas diferentes: – desperfectos o defectos – errores – fallas Hay una gran cantidad de distintos tipos de fallas los cuales se pueden clasificar segun diferentes ejes o vistas. Hay una diferencia fundamental del origen del fenómeno de la falla: – físicos – diseño – interacción Las fallas también se pueden clasificar de acuerdo: – a su naturaleza: accidental o intencional con malicia o sin ella – a la fase de creación en la vida del sistema: desarrollo u operación – el lugar: interno o externo – la persistencia: permanente o temporario • • FIUBA- Laboratorio de Sistemas Distribuidos Heterogéneos Prof. María Feldgen 3 FIUBA 75.60 Sistemas Distribuidos I • Una clasificación propuesta por Laprie: – fallas de interacción – las fallas temporarias: fallas transientes externas, fallas intermitentes defecto • • • • • Sistemas Tolerantes a Fallas error falla defecto error Hay una cadena causa-efecto de un defecto a una falla. Fault removal Fault avoidance. Fault prevention tolerante a fallas (FT) tratamiento de desperfectos o defectos (fault treatment). FIUBA- Laboratorio de Sistemas Distribuidos Heterogéneos Prof. María Feldgen 4 FIUBA Laboratorio de Sistemas Distribuídos Heterogéneos (Prof. María Feldgen) falla FIUBA 75.60 Sistema Distribuídos I 3 FIUBA 75.60 Sistemas Distribuidos I Sistemas Tolerantes a Fallas Medición y validación de confiabilidad • Atributos de la medición y validación del grado de confiabilidad : – Reliability (exactitud) – Maintainability (mantenibilidad). – Availability (disponibilidad). – Safety (seguridad) • Muchas de las métricas de confiabilidad se pueden expresan como funciones de probabilidad. • MTTF – Reliability – Maintainability • MBTF • 10-n fallas por hora. • MTTR – Availability • MTBF/(MTBF + MTTR) Disponibilidad 90% 99% 99,9% 99,99% 99,999% 99,9999% 99,99999% fuera de servicio/año > 1 mes aprox 4 dias aprox 9 horas aprox. 1 hora aprox. 5 minutos aprox. 30 segundos aprox 3 segundos Componente PC desatendida PC mantenida Cluster Multicomputadora Embedded System (PC. tech.) Embedded System (HW especial) Embedded System (HW especial) – Performability (degradación del sistema). – Validación: V&V (validación y verificación). Discapacidad Significado Atributo Defectos Fault Removal Reliability Errores Fault Forecasting Maintainability Fallas Fault Prevention Availability Fault Tolerance Safety FIUBA- Laboratorio de Sistemas Distribuidos Heterogéneos Prof. María Feldgen • Resumen 5 FIUBA 75.60 Sistemas Distribuidos I Sistemas Tolerantes a Fallas Presunción de defectos • • Modelo de defectos o de fallas Clases de defectos – grupo de los de omisión. • Crash faults • Omission Faults. • Timing Faults. – El grupo de los deafirmación o perentorios (assertive) se dividen en dos grupos: • sintácticos • semánticos – Cuando las interacciones son multicomponente – – – • consistentes • inconsistentes Grupo de Omisión ocurren en el dominio del tiempo Grupo de Perentorios ocurren en el dominio del valor Inconsistencia introduce el dominio del espacio. – Cuando se combinan los tres tenemos defectos arbitrarios • bizantinos (Lamport) • early timing fault FIUBA- Laboratorio de Sistemas Distribuidos Heterogéneos Prof. María Feldgen 6 FIUBA Laboratorio de Sistemas Distribuídos Heterogéneos (Prof. María Feldgen) FIUBA 75.60 Sistema Distribuídos I 4 FIUBA 75.60 Sistemas Distribuidos I Sistemas Tolerantes a Fallas Cobertura • • Cobertura: dado un defecto en el sistema, cobertura es la probabilidad que será tolerado. Cobertura de presunción (assumption coverage): – presunciones ambientales – presunciones operacionales: • Ejemplo: en algoritmos fault tolerant esto indica la cobertura del procesamiento de errores, si el algoritmo y su implementación son correctos, esperamos una cobertura = 1, y la probabilidad de error es una cota superior de la cobertura total, estos son algoritmos deterministicos, a diferencia de los probabilisticos donde la probabilidad de < 1. – Supongamos que hacemos un conjunto de presunciones H sobre el ambiente, tales como: • H1: durante un intervalo de referencia T, ocurren como máximo k omisiones • H2: los participantes no quedan aislados • Entonces, si diseñamos un protocolo multicast A confiable y deterministico, el cual tiene las siguientes propiedades: – A1: cualquier mensaje despachado a un participante correcto es despachado a todos los participantes correctos. – A2: cualquier mensaje enviado por un participante correcto es despachado por lo menos a otro participante. • El arquitecto debe verificar además en el diseño del sistema: 1) asegurar que el protocolo basado en H asegura que todo Ai tiene cobertura 1, 2) determinar la cobertura de todo Hi de H y 3) verificar que la cobertura total es satisfactoria de acuerdo a los requerimientos. FIUBA- Laboratorio de Sistemas Distribuidos Heterogéneos Prof. María Feldgen 7 FIUBA 75.60 Sistemas Distribuidos I Sistemas Tolerantes a Fallas ¿Cómo fallan las computadoras? • Según Tandem Computers: – La menor contribución a las fallas de sistemas son defectos de hw. – La mayoria de las fallas (42%) se debe a una operación humana incorrecta o mala administración del sistema. – La segunda causa de fallas (25%) es fallas de sw. – La tercer contribución viene del ambiente: corte del suministro de energía, incendios e inundaciones. FIUBA- Laboratorio de Sistemas Distribuidos Heterogéneos Prof. María Feldgen 8 FIUBA Laboratorio de Sistemas Distribuídos Heterogéneos (Prof. María Feldgen) FIUBA 75.60 Sistema Distribuídos I 5 FIUBA 75.60 Sistemas Distribuidos I Sistemas Tolerantes a Fallas Computación tolerante a fallas • • Tolerancia a caídas del sistema Redundancia en el dominio del espacio, tiempo y valor: – Redundancia espacial – Redundancia en el tiempo – Redundancia por valor • Procesamiento de errores: – Tiene tres facetas: Detección del error Recuperación del error Backward recovery Forward recovery Enmascarar el error FIUBA- Laboratorio de Sistemas Distribuidos Heterogéneos Prof. María Feldgen 9 FIUBA 75.60 Sistemas Distribuidos I Sistemas Tolerantes a Fallas Tolerancia a fallas distribuída • Propiedades importantes de un sistema distribuído: – modularidad • confiabilidad incremental • degradación suave – soporte para HW heterogéneo • evolución del sistema • minimizar costo • aumentar mantenibilidad – crecimiento incremental – complejidad en si mismo (siempre aplicar la regla KISS (Keep It Simple, Stupid) • • Redes tolerantes a fallas Arquitecturas tolerantes a fallas – redundant storage – redundant processors • self checking • fail silent • NMR FIUBA- Laboratorio de Sistemas Distribuidos Heterogéneos Prof. María Feldgen 10 FIUBA Laboratorio de Sistemas Distribuídos Heterogéneos (Prof. María Feldgen) FIUBA 75.60 Sistema Distribuídos I 6 FIUBA 75.60 Sistemas Distribuidos I Sistemas Tolerantes a Fallas Ejemplo Red de datos Clientes Servidores de aplicación tolerantes a fallas Cliente-Servidor FIUBA- Laboratorio de Sistemas Distribuidos Heterogéneos Prof. María Feldgen 11 FIUBA 75.60 Sistemas Distribuidos I Sistemas Tolerantes a Fallas Ejemplo Servidores de publicación tolerantes a fallas Red de datos Bus de mensajes persistente Publicación Publicación-Suscripción Suscriptores FIUBA- Laboratorio de Sistemas Distribuidos Heterogéneos Prof. María Feldgen 12 FIUBA Laboratorio de Sistemas Distribuídos Heterogéneos (Prof. María Feldgen)
© Copyright 2024