RECUPERACION Y TOLERANCIA A FALLAS

Download Report

Transcript RECUPERACION Y TOLERANCIA A FALLAS

RECUPERACIÓN Y TOLERANCIA A FALLAS
Maria Fernanda Alvarez
Julio Cesar Almeida
99-31446
99-31438
PUNTOS A TRATAR
 Introducción a la tolerancia a fallas
 RAID
 Comunicación Confiable entre Clientes y
Servidores
 Comunicación confiable de Grupo
Introducción a la tolerancia a fallas
Introducción a la tolerancia a fallas
 Fallas
Introducción a la tolerancia a fallas
 Conceptos Básicos




Disponibilidad
Confiabilidad
Seguridad
Mantenibilidad
Introducción a la tolerancia a fallas
 Modelo de Fallas
Fallas por Muerte (Crash)
Fallas por Omisión
Fallas Temporales
Fallas por Respuestas
Fallas Arbitrarias
(Cristian, 1991; Hadzilacos y Toueg, 1993)
RAID
(Redundancy Array for Independent Disk)
 Nivel 0 Data Stripping
Without Parity (DSA)
 Nivel 1 Mirrored Disk
Array (MDA)
RAID
(Redundancy Array for Independent Disk)
 Nivel 2 Hamming Code for
Error Correction
 Nivel 3 Paralell Transfer
With Parity
RAID
(Redundancy Array for Independent Disk)
 Nivel 4 Indenpendent Disk
Array with Shared Parity
Disk
 Nivel 5 Independent Data
Disks With Distributed
Parity Blocks
RAID
(Redundancy Array for Independent Disk)
 Nivel 6 Independent Data
Disks with two
independent distributed
parity schemes
 Nivel 10 Very High
reliability combined with
high performance
Comunicación Confiable entre Clientes y
Servidores
En la mayoría de los casos, las fallas en sistemas distribuidos se
deben a fallas en los procesos, sin embargo hay que tomar en
cuenta la falla en la comunicación.
 Comunicación Punto a Punto
 Uso de protocolo fiable (TCP).
 Nueva conexión.
 Semántica RPC en presencia de fallas
La meta de RPC es ocultar la comunicación haciendo la invocación de
métodos remotos, al igual que un programa hace sus llamadas
de métodos locales.
Comunicación Confiable entre Clientes y
Servidores
 El cliente no puede localizar el servidor
 Servidor Caído.
 Versiones de interfaz distintas.
 Pérdida de Mensajes Solicitados
 Acknowledgements y/o timers.
 El Servidor se cae
 Antes de ejecutar el requerimiento.(Retransmite)
 Después de ejecutar el requerimiento.(Excepción)
Comunicación Confiable entre Clientes y
Servidores
 El Servidor se cae
 En el servidor, esta falla es manejada con dos técnicas: At
least one, At most once.
 En el cliente, se maneja de cuatro formas: Never reissue,
Always reissue, Reissue if did not receive an ack, Reissue
if received the ack
 No hay combinación de técnicas que asegure 100% el
manejo total de la falla.
 Pérdida de Mensajes
 Perdida real? o lentitud del sistema?
 Operaciones Idempotentes?
Comunicación Confiable entre Clientes y
Servidores
 Pérdida de Mensajes
 Número de secuencia en los request.
 Bit en el header de los request.
 El cliente se cae
 Cálculos Huérfanos!. Soluciones? (Nelson 1981)




1.-Exterminación
2.-Reencarnación.
3.-Reencarnación Elegante.
4.-Expiración.
Comunicación confiable de Grupo
 Esquemas Básicos Confiables de Multicasting
 Escalabilidad en Multicasting Confiable
 Control Feedback no jerárquico
 Control Feedback jerárquico
 Multicast Atómico
 Sincronía Virtual
 Ordenamiento de Mensajes
 Multicast Desordenado.
 FIFO multicast.
Comunicación confiable de Grupo
 Ordenamiento de Mensajes
 Ordenamiento causal.
 Totalmente ordenado.