Un sistema tolerante a fallos debe tratar de enmascarar los fallos la técnica clave es la redundancia:
javiermarrasTrabajo18 de Noviembre de 2015
664 Palabras (3 Páginas)266 Visitas
Enmascaramiento de fallas
Un sistema tolerante a fallos debe tratar de enmascarar los fallos la técnica clave es la redundancia:
La redundancia permite ocultar fallas. Hay tres Ttpos:
Redundancia de Información: se agrega información adicional para detectar/corregir fallas
Ej: el código de Hamming que es un código detector y corrector de errores
Redundancia de Tiempo: Realizar una acción se puede repetir si es necesario
Ej: Recuperación de fallos temporales.
Redundancia de Física: se agregan equipos o procesos extras para sustituirlos por el componente que falle y asi evitar errores.
Ej: Agregar procesos por si uno se congela o mantener una copia del disco duro.
Comunicación Grupo Confiable
Se trata de que un mensaje enviado a un grupo de procesos deberá de ser entregado a cada uno de los miembros de dicho grupo.
¿Qué ocurre si durante la comunicación de un mensaje un proceso se une al grupo? ¿Se debe de enviar el mensaje?
Debemos determinar que sucede si un proceso (remitente) se congela durante la comunicación.
Solución: Llegar a un acuerdo sobre quién es y quién no es miembro del grupo antes de enviar el mensaje, suponer que los procesos no fallan y que no se unen al grupo o lo dejan durante la comunicación. Multitransmisiónconfiable.
----------------------------
Acuerdo en sistemas defectuosos
- La organización entre procesos replicados aumenta la tolerancia a fallos.
- El objetivo de los algoritmos distribuidos es hacer que todos los procesos no defectuosos lleguen a un acuerdo. Existen varios tipos:
- Síncronos contra asíncronos.
- Si el retraso en la comunicación esta o no limitado.
- La entrega de mensajes en orden o no.
- Los mensajes son uno a uno o a todos.
-------------------------------
Detección de fallos
Existen 2 mecanismos:
- Mensajes de petición de actividad y espera de respuesta. (Método activo)
- Esperar mensajes de comunicación entre los diferentes miembros.(Método pasivo)
-----------------------------
Cuando construimos un sistema distribuido se pueden producir problemas como fallos en la conexión, perdida de mensajes.
Comunicación punto a punto
En una comunicación de este tipo debemos de confiar en un protocolo como TCP.
TCP( pueden usar TCP para crear conexiones entre sí a través de las cuales puede enviarse un flujo de datos. El protocolo garantiza que los datos serán entregados en su destino sin errores y en el mismo orden en que se transmitieron.)
¿Qué ocurre si la conexión falla?, el cliente solo puedo saberlo dado a que la conexión ha fallado y salta una excepción.
¿Solución?, Volver a enviar la petición de nuevo y el servidor la vuelva aceptar.
¿Qué ocurre cuando se produce un problema en la red?
- El cliente no puede encontrar el servidor
- El mensaje de la petición desde el cliente al servidor se pierde.
- El servidor se bloquea después de recibirla solicitud.
- El mensaje de respuesta desde el servidor al cliente se pierde.
- El cliente se bloquea después de enviar la solicitud.
Si el mensaje se pierde, el cliente lo único que puede hacer es poner un cronometro, hasta que reciba el asentimiento desde el propio servidor.
Confianza en una comunicación Cliente y Servidor
[pic 1]
Situaciones:
❑Llega una solicitud y es atendida correctamente.
...