Introducción A La Tolerancia A Fallos en Sistemas Distribuidos
Introducción A La Tolerancia A Fallos en Sistemas Distribuidos
Introducción A La Tolerancia A Fallos en Sistemas Distribuidos
Integrantes:
-Un fallo es una condicin fsica anormal, las causas de un fallo incluyen: errores de
diseo (como errores en la especificacin del sistema o en la implementacin),
problemas de fabricacin, deterioro por el uso u otros problemas externos (como
condiciones ambientales adversas,interferencia electromagntica, entradas imprevistas
o el mal uso del sistema).
Son
Ocurren cuando desperfectos
los elementos causados por
bsicos del SO errores de
fallan, el diseo,
sistema es fabricacin,
detenido programacin o
porque es deterioro de un
necesario, y componente
necesita volver Los resultados
fsico del
a un estado de obtenidos de procesos
sistema
correcto son incorrectos y
causan un desvo de
funciones
Tipos de fallos: Sistema Operativo
Tipos de fallos: Proceso o procesador
Tipos de fallos: Componentes
Tolerancia fsica y de software:
elementos de estrategias tolerantes
La redundancia es el
mtodo general para
la tolerancia a fallas
Tcnicas de
seguridad en
sistemas
tolerantes
La seguridad en los sistemas
distribuidos se divide a menudo en 2
partes
2. Autorizacin. Garantiza que un proceso obtenga solo aquellos derechos de acceso a los
recursos de un SD para los que tiene autorizacin. Un ejemplo son los controles de acceso.
Autenticacin basada en una clave
secreta compartida
EL protocolo adopta un mtodo comn
mediante el cual una parte reta a la otra a que
responda correctamente slo si la otra parte
conoce la clave secreta compartida. (protocolos
reto-respuesta).
1. A enva identidad.
2. B enva un reto
3. A descifra el reto y se lo enva a B
4. A enva reto a B
5. B descifra el reto y se lo enva a A
Autenticacin mediante un centro de
distribucin de una clave
Un SD tiene un nmero N servidores y cada uno comparte una clave secreta con los dems
teniendo N-1 servidores, por lo cual el SD maneja N(N-1)/ claves, lo cual lo vuelve poco
escalable. Esto hace que se utilice un sistema centralizado llamado KDC, el cual, comparte
una clave secreta concada uno de los servidores, pero no requiere que los otros tengan
claves compartidas, lo cual solo se manejan solo N claves. Para este tipo de comunicacin se
usa el protocolo de Needham-Shroeder.
1. A enva reto, junto con su identidad y la de
B y un id aleatorio al KDC.
2. El KDC responde al reto, la identidad de B,
y un boleto para conectar con B.
3. A conecta con B usando el boleto dado por
el KDC, la clave para conectar, junto con un
reto.
4. B responde al reto y manda uno a A.
5. A responde al reto de B
Firmas Digitales
En las transacciones(por tomar como ejemplo) entre A y B, A piensa comprar Pokemon Ultra
Sun por $800 al seor de la tienda en lnea alias B, la transaccin ser en lnea. A enva un
mensaje a B para confirmar que comprar Pokemon US en $800. adems de la autenticacin
existen por lo menos 2 cuestiones a tener en cuenta con respecto al mensaje.
- A tiene que estar segura de que Bob no cambiar maliciosamente los $800
mencionados en su mensaje a una mayor cifra, y de que luego no diga que ella
prometi ms de $800
- B tiene que estar seguro de que A no puede retractarse de que envi el mensaje solo
porque cambi de idea.
En estas cuestiones si A firma digitalmente el mensaje, de tal forma que su firma queda
vinculada de manera nica a su contenido. La asociacin nica entre un mensaje y su firma
evita que las modificaciones al ensaje pasen inadvertidas. Una de forma popula de estas
firmas es utilizar una clave pblica como RSA, cuando A realiza un mensaje m para B, lo cifa
con su clave privada y selo enva a B.
Cuando B recibe el mensaje, lo descifra con la clave pblica de A. Si puede estar seguro de
que la clave pblica de A, el descifrado de la versin firmada de m y con la comparacin
exitosa con m slo pueden significar que provino de A. A est protegida contra cualesquiera
modificaciones maliciosas por parte de de externos.
Sistemas
Operativos
distribuidos con
tolerancia a fallos
Amoeba (Introduccin)
-Est escrito en C
-El shell inicial se ejecuta en mquina arbitrarias, pero los comandos tienen porqu ejecutarse
en la misma mquina que el shell.
Amoeba (Arquitectura)
-Pila de procesadores, cada uno con su memoria local (no es necesaria la memoria
compartida). El sistema operativo se encarga de repartir el trabajo de los procesadores de
forma dinmica.
-Procesadores de la pila.
-Terminales.
-Servidores especializados
-
Amoeba (Micro Ncleo)
ste funciona mejor con objetos inmutables como los archivos, ya que
trabaja en segundo plano.
Mach (Introduccin)
Objetivos:
Base para la construccin de otros sistemas (UNIX).
Espacio de direcciones de gran tamao
Acceso transparente a los recursos de la red.
Paralelismo del sistema y las aplicaciones.
Escalabilidad (transportar mach a un nmero ms grande de mquinas).
Ventajas:
Mayor sencillez de cada parte.
Independencia y portabilidad del sistema operativo.
Ejecucin de varios sistemas a la vez.
Mayor seguridad (cada proceso tiene su propio sistema operativo. Difcil
husmear ficheros del otro sistema).
Chorus (Introduccin)
Los sistemas tolerantes de fallas no son el nico tipo de sistemas distribuidos especializados.
Los sistemas de tiempo real forman otra categora. A veces se combinan estos dos tipos para
obtener sistemas de tiempo real tolerantes de fallas.
Los programas (y sistemas) de tiempo real interactan con el inundo exterior de una manera
que implica al tiempo. Cuando aparece un estmulo, el sistema responde a ste de cierta
manera y antes de cierto momento lmite. Si entrega la respuesta correcta, pero despus del
lmite, se considera que el sistema est fallando.
Cmo hacer un
sistema
distribuido
tolerante a fallas?
Tcnicas de tolerancia a fallos en
sistemas distribuidos
Replicacin
Crear mltiples copias de datos que sean almacenados en distintos lugares, la idea principal
de esto es que si un nodo falla, los datos pueden ser accesados de una de sus copias. Tiene
desventajas o limitaciones como consistencia de la informacin.
Checkpointing
Guardar el estado de un sistema cuando se encuentra en un estado estable y consistente,
una instancia de guardado de este estado se le llama checkpoint, si el sistema llega a fallar
durante el funcionamiento se restablece a uno de estos estados anteriores.
Tipos de replicacin
Activa
Pasiva
Replicacin Activa
C
Solo un servidor procesa las peticiones de
los clientes y se le conoce como servidor
primario
de estos
Checkpointing
Cada sistema tiene asociada informacin que define su estado en un momento en particular.
Esta informacion incluye cosas como el estado del proceso, ambiente(conexiones, servicios
etc.) valores de los registros activos y variables.
El checkpointing es muy til pero consume tiempo considerable dependiendo del tamao del
sistema.
Tipos de checkpointing
http://dccd.cua.uam.mx/libros/archivos/03IXStream_sistemas_distribuidos.pdf
https://es.slideshare.net/Tensor/sistemas-operativos-distribuidos-linux
https://www.usenix.org/legacy/publications/library/proceedings/sd96/full_papers/kittur.txt