Title | Tarea 1 Grupo Sistemas Distribuidos |
---|---|
Author | Job Alcalá |
Course | Sistemas Distribuidos |
Institution | Universidad Tecnológica del Perú |
Pages | 21 |
File Size | 1.2 MB |
File Type | |
Total Downloads | 692 |
Total Views | 944 |
“Año del Fortalecimiento de la Soberanía Nacional”SISTEMAS DISTRIBUIDOSPROF.LECTURA:SISTEMAS DISTRIBUIDOSPRINCIPIOS Y PARADIGMAS. 2ª ED. PRENTICE HALLTANENBAUM, A. M. & VAN STEEN, M (2008)TAREA:CAPITULO 8 TOLERANCIA A FALLASIntegrantes:DILAS BARRA JEFERSON RICARDO U CHAVEZ ESPINO DANNY ROBERTO U...
“Año del Fortalecimiento de la Soberanía Nacional”
SISTEMAS DISTRIBUIDOS PROF.
LECTURA: SISTEMAS DISTRIBUIDOS PRINCIPIOS Y PARADIGMAS. 2ª ED. PRENTICE HALL TANENBAUM, A. M. & VAN STEEN, M (2008)
TAREA: CAPITULO 8 TOLERANCIA A FALLAS
Integrantes: DILAS BARRA JEFERSON RICARDO CHAVEZ ESPINO DANNY ROBERTO ALCALA VALDIVIA JOB HUAMAN QUISPE ELISEO
Lima, marzo del 2022
U17102686 U17104735 U17102103 U19309259
SISTEMAS DISTRIBUIDOS
Índice 1.
Introducción............................................................................................. 2
2. Tolerancia a Fallos...................................................................................... 3 2.1 Concepto de Tolerancia a Fallos............................................................3 2.2 Sistemas fiables.................................................................................... 4 2.2.1 Disponibilidad................................................................................. 5 2.2.2 Confiabilidad................................................................................... 5 2.2.3 Seguridad........................................................................................ 6 2.2.4 Mantenimiento................................................................................6 2.3 Modelos de falla.................................................................................... 7 2.4 Tipos de falla......................................................................................... 7 2.4.1 Falla de congelación........................................................................7 2.4.2 Falla de omisión.............................................................................. 8 2.4.2.1 Omisión de recepción.................................................................8 2.4.2.1 Omisión de envio........................................................................ 9 2.4.3 Falla de tiempo................................................................................9 2.4.4 Falla de respuesta......................................................................... 10 2.4.5 Falla de transición de estado........................................................10 2.4.6 Falla arbitraria...............................................................................11 3. Recuperación........................................................................................... 11 3.1 Concepto de Recuperación..................................................................11 3.2 Recuperación hacia atrás....................................................................12 3.3 Recuperación hacia adelante..............................................................13 4. Resumen.................................................................................................. 14 5. Conclusiones............................................................................................ 17 6. Referencias Bibliográficas........................................................................17
1
SISTEMAS DISTRIBUIDOS
1. Introducción La tolerancia a fallos es una característica de los sistemas distribuidos a diferencia de los sistemas centralizados es una falla parcial. En un sistema distribuido, una falla parcial se presenta cuando falla un componente, esto puede impactar una caída parcial, sin embargo otros componentes no se ven afectados y siguen operando. En resumen, en un sistema no distribuido, una falla es integral debido a que afecta a todos los componentes y puede ocasionar una caída general del sistema. El objetivo importante en el diseño de los sistemas distribuidos es que puedan recuperarse automáticamente de fallas sin que se afecte el rendimiento total. En general siempre que se presente una falla el sistema distribuido deberá continuar operando de modo aceptable mientras se realizan reparaciones, es decir, deberá tolerar las fallas y continuar operando. En el presente trabajo se menciona y se da a conocer conceptos de tolerancia a fallos que un sistema distribuido debe tener para prevenir caídas y evitar inconvenientes.
2
SISTEMAS DISTRIBUIDOS
2. Tolerancia a Fallos
2.1 Concepto de Tolerancia a Fallos
Es la capacidad interna para asegurar la ejecución correcta y continuidad de un sistema a pesar de la presencia de fallos, un diseño tolerante a fallos de un sistema que está capacitado para continuar su funcionamiento cuando algún componente del sistema falla. El diseño es un sistema con esta característica está preparado para continuar su funcionamiento cuando algún componente del sistema falla. Se dice que un sistema falla cuando no cumple su especificación. Como las computadoras y los sistemas distribuidos se utilizan cada vez más en misiones donde la seguridad es crítica, la necesidad de soportar las fallas cada vez es mayor. Un sistema consiste en un conjunto de componentes de hardware y software y son diseñados para proveer un servicio específico. Un desperfecto de un sistema ocurre cuando el sistema no desempeña estos servicios de manera específica. Un estado erróneo en un sistema es un estado en el cual podría conducir a un fallo en el sistema. Un fallo es una condición física no-normal, las causas de un fallo incluyen:
Errores de diseño (como errores en las especificaciones del sistema o en la implementación).
3
SISTEMAS DISTRIBUIDOS
Problemas
de fabricación, deterioro por el
uso u otros
problemas externos (como condiciones ambientales adversas, interferencia electromagnética, entradas imprevistas o el mal uso del sistema).
Un error es una parte del estado del sistema la cual difiere de los valores esperados.
Es necesario que el sistema sea capaz de recuperarse de las fallas, entonces necesitamos deshacernos del estado de error del sistema.
Ejemplo de Tolerancia a Fallos de un Sistema
Dentro de la organización de ejemplo, se tiene un sistema de alta disponibilidad para la línea de facturación, en general, se considera que los canales de comunicación para el sistema son fiables y que cuando falla trata de conseguir que el sistema continué funcionando correctamente, aunque se presenten algunos fallos para su sistema.
Figura 1 – Tolerancia a fallos (Sistema de facturación Digiflow)
2.2 Sistemas fiables
La fiabilidad de un sistema puede definirse como su capacidad para realizar correctamente y en todo momento las funciones para las que se ha diseñado.
4
SISTEMAS DISTRIBUIDOS
La replicación activa. (Conocida también como replicación mediante máquina de estados) es un método general para construir un sistema tolerante a fallos mediante la replicación de sus elementos y la coordinación de las comunicaciones entre ellos.
2.2.1 Disponibilidad
Un sistema está listo para ser utilizado de manera inmediata, que esté operando correctamente en cualquier momento y se encuentre disponible para realizar sus funciones de manera ininterrumpida.
Figura 2 – Disponibilidad (BD S.O. W. Server_16).
5
SISTEMAS DISTRIBUIDOS
2.2.2 Confiabilidad
Un sistema funciona de manera continua sin fallar. Un sistema confiable continuara funcionando sin interrupción en un lapso, en términos de tiempo, largo.
Figura 3– Confiabilidad (ACS).
2.2.3 Seguridad
Cuando un sistema deja de funcionar correctamente durante un tiempo que no acontece nada catastrófico.
Figura 4– Seguridad (IPS)
6
SISTEMAS DISTRIBUIDOS
2.2.4 Mantenimiento
Lo fácil que puede ser reparado un sistema que fallo. Un sistema que se mantiene puede ser disponible, en general si las fallas pueden ser detectadas y reparadas en forma automática.
Figura 5– Mantenimiento (WSUS).
La construcción de sistemas fiables tiene que ver con el control de fallas. Es importante recalcar que el significado de la tolerancia a las fallas es que un sistema puede tolerarlas y seguir operando con normalidad.
Ejemplo de Sistemas Fiable
Área
de
servicios:
Con
el
uso
de
aplicaciones
comerciales,
aplicaciones de red de área extensa y aplicaciones multimedia. Esto ha favorecido también al crecimiento económico de una organización.
7
SISTEMAS DISTRIBUIDOS
Figura 6– Sistemas fiables (S. Comunicación mensajería)
2.3 Modelos de falla
Servicios no fiables a partir de componentes que presentaron fallos por errores en su servicio, o fallos más aceptables en su operatividad. Ocurre cuando el procesador o elementos básicos del sistema fallan al ejecutar una operación (CPU, memoria, fuente de poder, licencias). El sistema es detenido para que sea necesario reiniciarla a un estado correcto.
2.4 Tipos de falla
2.4.1 Falla de congelación
Ocurre cuando un servidor se detiene prematuramente, el cual estuvo funcionando correctamente hasta antes de la falla. Una característica de la falla de congelación es que, al detenerse el servidor, ya no responde.
8
SISTEMAS DISTRIBUIDOS
Ejemplo de falla de congelación
Actualización de los servidores Windows server, presenta un problema para los usuarios al congelar la pantalla y la imagen de color azul para su actualización.
Figura 7 – Falla congelación del Windows server
2.4.2 Falla de omisión
Ocurre cuando un servidor no responde una petición.
2.4.2.1 Omisión de recepción
Un servidor no recibe los mensajes entrantes. El servidor nunca obtuvo la petición. Ejemplo de Omisión de recepción
Servidor Exchange de mensaje no recibe correo entrante por fallo en el filtro del Antispam.
9
SISTEMAS DISTRIBUIDOS
2.4.2.1 Omisión de envio
Un
servidor
no
envía
mensajes.
Cuando
el
servidor
hizo
correctamente su trabajo, pero algo salió mal al enviar una respuesta. Figura 8 – Falla en el filtro del Antispam
Ejemplo de Omisión de envió
Fallo en la detección de alerta en la aplicación de monitoreo, el agente instalado en el servidor de aplicación al fallo de su licencia, el servidor envía la alerta, pero no llega a la aplicación de monitoreo.
Figura 9 – Fallo en la detección de alerta
10
SISTEMAS DISTRIBUIDOS
2.4.3 Falla de tiempo
Cuando una respuesta está fuera del intervalo real de tiempo específico.
Ejemplo de Falla de tiempo
Fallo en la sincronización del servidor NTP.
Imagen 10 – Falla servidor de sincronización NTP.
2.4.4 Falla de respuesta
El servidor responde de manera incorrecta. Falla de valor. Un servidor responde de forma equivocada a una petición. Ejemplo de Falla de valor
Ataque de protocolo https el servidor web este atiende de manera correcta una petición https sin saber si está siendo atacado ya que no tiene ningún respaldo dentro de su segmento de red.
11
SISTEMAS DISTRIBUIDOS
Imagen 11 – Falla de respuesta de servidor
2.4.5 Falla de transición de estado
Este tipo de falla ocurre cuando el servidor responde de forma inesperada ante una solicitud. Ejemplo de Falla de transición de estado
Problema de conexión de Base de datos, el servicio de informes de errores inesperados, el servidor de informes no puede abrir una conexión a un origen de datos externo que proporciona datos al informe.
Imagen 12 – Falla de respuesta de servidor
12
SISTEMAS DISTRIBUIDOS
2.4.6 Falla arbitraria
Ocurren cuando el servidor produce una salida que nunca debió producir, la cual no es detectada como incorrecta.
Ejemplo de Falla arbitraria
Las alertas para el servicio rpc ha sido detectado a un usuario accediendo al servidor de aplicación critica, fuera de su rango de solicitud de acceso, este será terminado de manera automática.
Imagen 13 – Falla arbitraria para un acceso rpc no autorizado.
3. Recuperación 3.1 Concepto de Recuperación
Para la tolerancia de fallas la recuperación de errores es importante. La idea principal sobre recuperación de errores es reemplazar un
13
SISTEMAS DISTRIBUIDOS
estado erróneo con un estado libre de error. Existen dos formas de recuperarse de un error.
3.2 Recuperación hacia atrás
Lo principal es hacer que el sistema regrese de su estado actual erróneo a su estado previamente correcto. Para ello, será necesario registrar el estado del sistema de vez en cuando; y cuando se genere un error, restaurar el estado registrado. Cada vez que se registra un estado se dice que se marca un punto de control. Su beneficio principal es que se trata de un método aplicable e independiente de cualquier sistema o proceso específico. Entre una de las desventajas que tenemos es que es costoso en cuanto a desempeño, no hay garantía de que el error no se repita y en algunos estados, es imposible volver hacia atrás. Ejemplo de Recuperación hacia atrás
Una base de datos puede presentar fallos con datos erróneos por error del sistema o error humano, pero previamente se hizo una copia de seguridad de la base de datos y restaurarla regresando al estado anterior antes de los fallos.
14
SISTEMAS DISTRIBUIDOS
Imagen 14 – Recuperación hacia atrás
3.3 Recuperación hacia adelante En este caso, cuando el sistema ha entrado en estado erróneo, en lugar de regresarlo a un estado de punto de control previo, se intenta llevarlo a un nuevo estado correcto a partir del cual se pueda continuar ejecutando. El principal problema es que se tiene que saber de antemano que errores pueden ocurrir, solo en ese caso es posible corregir los errores y trasladarse a un nuevo estado. Ejemplo de Recuperación hacia adelante
En programación los códigos en un sistema pueden tener errores en digitación o conflicto, sin embargo, hay métodos para detectar esos problemas y corregirlo para que el sistema pase a un estado correcto.
15
SISTEMAS DISTRIBUIDOS
4. Resumen Identificación de Ideas T O L E R A N
Un sistema distribuido puede continuar operando en presencia de fallas.
Importancia y fundamentación
Análisis y aplicación
La tolerancia a fallas es un tema importante en el diseño de sistemas distribuidos porque es una característica mediante la cual un sistema puede ocultar la ocurrencia y la reparación de fallas. Es decir, un sistema es tolerante a fallas si puede
Una falla de sistema se da cuando el procesador falla en la ejecución. Esto es causado por errores de software y problemas de hardware, como por ejemplo errores de CPU, falla en
16
SISTEMAS DISTRIBUIDOS
Fiabilidad del sistema
C I A A
Falla y error
F A L L A S Relaciones de dependencia en sistemas distribuidos
continuar operando en presencia de éstas. La tolerancia está relacionada a la fiabilidad. La fiabilidad requiere de la disponibilidad (un sistema está listo para ser utilizado de inmediato), confiabilidad (un sistema sea capaz de funcionar de manera continua sin fallar en un intervalo de tiempo), seguridad (no sucede un desastre cuando un sistema deja de funcionar un tiempo) y mantenimiento (facilidad de reparar un sistema que falló). Un sistema distribuido está diseñado para proporcionar a los usuarios varios servicios, el sistema falla cuando uno o más de los servicios no puede ser proporcionado. Un error es una parte del estado de un sistema que puede conducir a una falla. Finalmente, la causa de un error se llama falla. Al considerar un Sistema Distribuido como un conjunto de servidores que se comunican entre sí y con sus clientes, al no proporcionar adecuadamente los servicios significa que los servidores, los canales de comunicación, o ambos, no están realizando bien su trabajo. Es preciso buscar el problema porque existen servidores que dependen de otros.
Identificación de Ideas A 2. Lograr tolerancia a T fallas en sistemas distribuidos
la memoria principal, falla en el bus, falla de energía, etc. Es necesario ver la clasificación del fallo de sistema para encontrar la solución y continúe con sus operaciones.
Importancia y fundamentación
Análisis y aplicación
Es importante abordar el tema y lograr en estos sistemas que son las más
Un diseño tolerante a fallos es un sistema que está capacitado para
17
SISTEMAS DISTRIBUIDOS
2.1 Los grupos pueden ser dinámicos. 2.2 Los grupos se pueden renovar constantemente se pueden crear algunos y eliminar otros. 2.3 el propósito de la introducción a grupos es que los procesos se ocupen del conjunto de procesos como una sola abstracción. 3. Organizar procesos idénticos, para afrontar la tolerancia En los grupos todos los procesos son iguales
E N U A C I Ó 4. Tener procesos N idénticos, permite
disfrazarlos y reemplazar los defectuosos. Enmascara un proceso 4.1 existen dos formas de replicación: - Por medio de protocolos basados en protocolos primario - Escritura de protocolos replicados 4.2 cuando se detectan fallas de procesos existen dos mecanismos: - Se envían mensajes activos ¿estas activo? - Se espera a que lleguen mensajes de los otros procesos
usados Los grupos pueden realizar varios procesos. Los grupos pueden moverse en los procesos, según el sistema lo requiera Todos los grupos tiene procesos, pero estos deben funcionar como una sola unidad. Si un grupo de proceso falla, otro grupo se pude hacer cargo del proceso Si en un grupo todos tiene la misma jerarquía, entonces todos pueden tomar la decisión de llevar a cabo un proceso que otro proceso no logro concluir Ninguno manda las decisiones se toman colectivamente Tener procesos idénticos permite tener opciones para responder a posibles fallas. Se envían ping a los procesos de tal forma que estos puedan enviar un mensaje para saber si están o no activos. Membresía hace alusión a el integrante de una agrupación u organización. El servidor de grupo puede tener una base de datos de todos los grupos y su membresía exacta
continuar su funcionamiento cuando algún componente del sistema falla, posiblemente a un nivel más reducido, lo que es mejor a que el sistema falle completamente. Ejm: Los procesos informan periódicamente acerca de su disponibilidad de servicio. Esta información se disemina gradualmente por la red a través de charlas. Con el tiempo, cada proceso se enterará de la existencia de todos los demás procesos, pero, aún más importante, tendrá suficiente información localmente disponible para decidir si un proceso ha fallado o no. Un miembro para el cual la información sobre disponibilidad es obsoleta, presumiblemente ha fallado
18
SISTEMAS DISTRIBUIDOS
Identificación de Ideas Recuperación hacia atrás
Recuperación hacia
R adelante E C U P E R A C I Ó Corrección por borradura N
Importancia y fundamentación La recuperación asía atrás es importante, debidos s que el sistema retorna al estado donde el mismo era correcto, esto significa que es un punto antes de que pase el error La recuperación hacia adelante hace que el sistema busque un punto más adelante donde el error se s...