Sie sind auf Seite 1von 7

ADS

Tolerancia a Fallos y Seguridad

- El objetivo en sistemas que requieren alta disponibilidad para sus tareas es el de funcionar aun
cuando falle alguno de sus componentes.

- En caso de alguna falla otro componente o proceso especial tome el control de este y reduce los
efectos producidos por el fallo.

- Un sistema falla cuando deja de brindar el servicio que debe prestar.

- Un sistema tolerante a fallos es cuando continúa brindando el servicio aún si se tiene fallas ya
sea de hardware o de software.

- Lograr tolerancia a fallos es duplicando los componentes de hardware del sistema.

Ejemplo: el internet es un sistema tolerante a fallos cuenta con redundancia.

Aspectos Importantes que Caracterizan un Sistema

1. Disponibilidad: sistema listo para uso inmediato.


2. Fiabilidad: sistema funciona continuamente sin fallar.
3. Seguridad: si el sistema falla, no ocurre nada grave.
4. Mantenibilidad: si el sistem falla se puede reparar facil y rapido.

Términos que Describen un Fallo

- Cuando Falla

- Fallo Transitorio: ocurre una vez y desaparece.

- Fallo Intermitente: ocurre, desaparece pero se vuelve a dar más tarde.

- Fallo Permanente: aparece y ya no se va.

- Como Falla

- Fallo y Parada: proceso funciona bien y de pronto se para.

- Funcionamiento Erróneo: proceso funciona bien y de pronto da resultados erróneos.

- Funcionamiento Lento: proceso funciona bien pero cada vez es más lento y esto
afecta de igual manera al sistema.

Confiabilidad

Es la capacidad de entregar un servicio en el que se puede confiar justificadamente.

- Factores de la Confiabilidad
ADS

- Atributos de la confiabilidad:

- Fiabilidad: índice de continuidad de un servicio correcto


- Disponibilidad: grado del sistema a nivel de accesibilidad
- Mantenibilidad: capaz de recibir reparaciones y modificaciones
- Seguridad: ausencia de fallos catastróficos
- Exactitud: procesar salidas con precisión
- Garantía: capacidad de resistir, al mal uso, al abuso y desastre

- Medios para aumentar la confiabilidad: todos los medios buscan evitar, prevenir
amenazas o en caso de darse saber controlar la situación.

- Prevención de Fallas
- Tolerancia a Fallos
- Eliminación de Fallas
- Predicción de Fallas

- Amenazas de la confiabilidad: los sistemas son amenazados por diferentes causas


que provocan un mal funcionamiento en estos.

- Falla: causa del error


- Error: estado del sistema que puede causar una avería
- Avería: evento que ocurre cuando un servicio entregado se desvía del servicio
correcto.
ADS

Tolerancia a fallos Distribuida, Redes y Arquitecturas

Una técnica para combatir los fallos es la redundancia

- Redundancia: es emplear información, recursos o tiempos adicionales más de los estrictamente


necesarios para que funcione correctamente el sistema. Existen tipos de redundancia:

- Redundancia de Hardware: tener hardware adicional.

- Redundancia de Software: agregar líneas de código a los programas adicionales.

- Redundancia de Información: información suplementaria para detectar errores


potenciales.

- Redundancia Temporal: uso de procesos temporales para detectar posibles fallos.

- Redundancia de HDD: más conocida como de tipo RAID, en este método la información se
reparte entre varios discos, mediante técnicas como:

- RAID 0: Entrelazado de bloques (Disk Striping), tiene la mas alta transferencia pero sin
tolerancia a fallos, requiere un mínimo de 2 unidade de disco.

- RAID nivel 1: duplicación de bloques.

- Los RAID más usados son de nivel 0, 1, 0+1 y 5.

Detección de Fallas

las fallas no pueden ser detectadas directamente, se deducen a partir de la detección de errores por lo
que la tolerancia a fallos del sistema dependerá de la efectividad del mecanismo de detección de errores
que se usa.
ADS

- Tipos de Comprobadores de Errores

- Comprobadores replicados: se implementa sin necesidad de conocer la estructura


interna del sistema replicado con el fin de continuar con el servicio y aislar fallos en los
sistemas distribuidos.

- Temporizadores: comprueba las restricciones temporales de los componentes, es


usado en hardware (watchdog timers) y en software, en los sistemas distribuidos detecta
errores en los nodos.

- Comprobadores estructurales y código: asegura que la estructura interna del dato es


correcta y asegura que el dato es consistente con el resto del sistema.

- Comprobadores de la razonabilidad: determina si el estado de algún objeto en el


sistema es “razonable”.

- Diagnosis: el sistema realiza comprobaciones en sus componentes para ver si


funcionan correctamente.

Paradigmas de Tolerancia a Fallos

Un sistema que no falle aun si existen errores por lo que debe ser confiable (disponibilidad, fiabilidad,
seguridad, mantenibilidad).

- Tipos de Fallos

- Tipos de Fallos según su Duración

- Transitorios: ocurre una vez y desaparece.


- Intermitentes: ocurre, desaparece pero se vuelve a dar más tarde.
- Permanentes: el elemento falla y ya no se recupera.

- Modelos de Fallos

- Fallos de Parada: el elemento que falla deja de funcionar y no interfiere.


- Fallos de Omisión: el elemento que falla cumple su tarea de manera
incompleta.
- Fallos de Respuesta: el elemento responde erróneamente a peticiones.
- Fallos Arbitrarios: el componente que falla funciona descontroladamente.

- Enmascaramiento de Fallos por Redundancia

- Enmascarar Fallos: fallos ocurren pero el sistema no los muestra.


- Información Redundante: información útil para comprobar que no existan
fallos, ej: CRC’s
- Redundancia en el Tiempo: número de veces que se realiza una
operación.
- Redundancia de Elementos: replicación, varios componentes con la
misma tarea.

Fallos en Entornos Cliente/Servidor


ADS

Se pueden dar fallos en el cliente, el canal y servidor

- El cliente no encuentra al servidor


- La petición del cliente al servidor se pierde
- El servidor falla al recibir la petición y no estar procesada
- El servidor falla mientras procesa la petición
- El servidor falla al terminar el procesamiento antes de responder
- La respuesta del servidor se pierde
- El cliente falla antes de recibir la respuesta

Tolerancia a Fallos de Software

- Se deben a fallos en el diseño

- La tolerancia a fallos de software permite obtener una alta fiabilidad en componentes de menor
fiabilidad.

Redundancia en el Software

- Soporte para tolerancia a fallos:

- señales
- excepciones
- checkpoint
- asserts

- Técnicas para Detectar y Corregir Errores de Diseño

- Redundancia Estática
- Redundancia Dinámica

● Todos los métodos son sensibles a errores en los requisitos


ADS

- Redundancia Estática: los componentes redundantes se utilizan para enmascarar los


efectos de los componentes con defectos. Se aplica las 4 fases:

1. Detección de Errores: realiza el programador votador.

2. Confinamiento y diagnóstico de fallos: no es necesaria ya que las


versiones son independientes.

3. Recuperación de Errores: descarta los resultados erróneos.

4. Tratamiento de Fallos y Servicio Continuado: ignora el resultado de la


version erronea.

Técnicas Principales:

- Programación con N versiones: programas que se ejecutan


concurrentemente con la misma entrada y sus resultados son comparados
por un proceso coordinador.

- Redundancia Dinámica: los componente redundantes sólo se ejecutan cuando se


detecta el error. Se aplica las 4 fases:

1. Detección de Errores:

- Por Entorno de Ejecución: error de hardware, sistema operativo.

- Por Software de Aplicación: duplicación, códigos detectores de


errores, validación del estado del sistema, validación estructural.

2. Confinamiento y diagnóstico de fallos: la estructura del sistema


minimiza el daño causado por los componentes defectuosos.

3. Recuperación de Errores: sistema situado en un estado correcto desde el


cual sigue funcionando, con la recuperación hacia adelante, se parte del
error hacia la corrección; y con la recuperación hacia atrás se vuelve a un
estado guardado donde todo funciona.

4. Tratamiento de Fallos y Servicio Continuado:

Técnicas Principales:

- Bloques de Recuperación: su entrada es un punto de recuperación en la


salida se efectúa una prueba de aceptación sirve para comprobar si el
módulo primario del bloque termina en un estado correcto.

- Programación con N versiones auto comprobantes

Tipos de Sistemas

- Transparentes a la aplicación: los puntos de recuperación están a cargo del hardware o del SO
ADS

- Controlados por la aplicación: el diseñador de la aplicación establece los puntos de


recuperación.

Primitivas Necesarias

- Establecer Puntos de Recuperación


- Anular Puntos de Recuperación
- Restaurar Puntos de Recuperación

Conceptos

Punto de Recuperación (checkpoint): instante en el que se “guarda” el estado del sistema.

Datos de Recuperación: datos que se “guardan”

Datos Activos: datos que accede el sistema luego del punto de recuperación.

Vuelta Atrás: proceso que restaura los datos anteriormente guardados.

Región de Recuperación: tiempo que los datos de recuperación de un punto de recuperación están
disponibles y pueden ser restaurados.

Das könnte Ihnen auch gefallen