Sistemas Tolerantes a Falhas: Conceitos e Técnicas
description
Transcript of Sistemas Tolerantes a Falhas: Conceitos e Técnicas
![Page 1: Sistemas Tolerantes a Falhas: Conceitos e Técnicas](https://reader035.fdocument.pub/reader035/viewer/2022062316/5681567a550346895dc42d13/html5/thumbnails/1.jpg)
Sistemas Tolerantes a Falhas: Conceitos e Técnicas
FURB – DSCPaulo Fernando da Silva
![Page 2: Sistemas Tolerantes a Falhas: Conceitos e Técnicas](https://reader035.fdocument.pub/reader035/viewer/2022062316/5681567a550346895dc42d13/html5/thumbnails/2.jpg)
Sumário• Introdução• Conceitos e Terminologia• Redundância Temporal• Redundância de Hardware• Redundância de Software
![Page 3: Sistemas Tolerantes a Falhas: Conceitos e Técnicas](https://reader035.fdocument.pub/reader035/viewer/2022062316/5681567a550346895dc42d13/html5/thumbnails/3.jpg)
Introdução
• Falhas são inevitáveis:– Paralisia do sistema pode ser evitada;
• Técnicas têm alto custo:– Computacional: backup;– Financeiro: Redundâncias;
• Avaliação Custo x Benefício;
![Page 4: Sistemas Tolerantes a Falhas: Conceitos e Técnicas](https://reader035.fdocument.pub/reader035/viewer/2022062316/5681567a550346895dc42d13/html5/thumbnails/4.jpg)
Introdução
• Expansão das redes de computadores;• Maior disponibilidade de serviços;
– Ex.: transações eletrônicas;• Maior dependência de serviços;
– Ex.: Site de vendas pela internet; • Falhas podem prejudicar empresas;
![Page 5: Sistemas Tolerantes a Falhas: Conceitos e Técnicas](https://reader035.fdocument.pub/reader035/viewer/2022062316/5681567a550346895dc42d13/html5/thumbnails/5.jpg)
Introdução
• Confiabilidade e disponibilidade são cada vez mais importantes;
• Dependência da sociedade;– Tráfego aéreo;– Área da saúde;– Área financeira;– Telecomunicações;
![Page 6: Sistemas Tolerantes a Falhas: Conceitos e Técnicas](https://reader035.fdocument.pub/reader035/viewer/2022062316/5681567a550346895dc42d13/html5/thumbnails/6.jpg)
Introdução
• Hardware:– Teve grande aumento de confiabilidade;
• Software:– Está se tornando cada vez mais complexo;– Apresenta muito problemas;
• Só o hardware não garante a confiabilidade e disponibilidade dos sistemas;
![Page 7: Sistemas Tolerantes a Falhas: Conceitos e Técnicas](https://reader035.fdocument.pub/reader035/viewer/2022062316/5681567a550346895dc42d13/html5/thumbnails/7.jpg)
Introdução
• Algumas falhas:– Falhas em mísseis na guerra do golfo (1991)– Falhas na comunicação de ambulâncias em
Londres (1992)– Falhas no sistema de crédito da França (1993)
![Page 8: Sistemas Tolerantes a Falhas: Conceitos e Técnicas](https://reader035.fdocument.pub/reader035/viewer/2022062316/5681567a550346895dc42d13/html5/thumbnails/8.jpg)
Introdução - Desafios
• Como evitar, detectar e contornar bugs?
• Como explorar a rede aumentando a confiabilidade e a disponibilidade?
• Como desenvolver um sistema confiável em uma plataforma não confiável?
![Page 9: Sistemas Tolerantes a Falhas: Conceitos e Técnicas](https://reader035.fdocument.pub/reader035/viewer/2022062316/5681567a550346895dc42d13/html5/thumbnails/9.jpg)
Conceitos – TF x Depend.
• Tolerância a Falhas:– Localização e recuperação de falhas do sistema;– Chamados de sistemas redundantes;– Falsa impressão de que o sistema não falha!!!
• Dependabilidade:– Conceito mais atual;– Confiança que se pode ter em um sistema;
![Page 10: Sistemas Tolerantes a Falhas: Conceitos e Técnicas](https://reader035.fdocument.pub/reader035/viewer/2022062316/5681567a550346895dc42d13/html5/thumbnails/10.jpg)
Conceitos - Objetivo
![Page 11: Sistemas Tolerantes a Falhas: Conceitos e Técnicas](https://reader035.fdocument.pub/reader035/viewer/2022062316/5681567a550346895dc42d13/html5/thumbnails/11.jpg)
Conceitos – Falha, Erro e Defeito
• Defeito:– Desvio da especificação;– Não pode ser tolerado;
• Erro:– Causador de defeito em potencial;
• Falha:– Causa física ou algoritmica do erro;
![Page 12: Sistemas Tolerantes a Falhas: Conceitos e Técnicas](https://reader035.fdocument.pub/reader035/viewer/2022062316/5681567a550346895dc42d13/html5/thumbnails/12.jpg)
Conceitos – Falha, Erro e Defeito
![Page 13: Sistemas Tolerantes a Falhas: Conceitos e Técnicas](https://reader035.fdocument.pub/reader035/viewer/2022062316/5681567a550346895dc42d13/html5/thumbnails/13.jpg)
Conceitos – Falha, Erro e Defeito
![Page 14: Sistemas Tolerantes a Falhas: Conceitos e Técnicas](https://reader035.fdocument.pub/reader035/viewer/2022062316/5681567a550346895dc42d13/html5/thumbnails/14.jpg)
Conceitos – Falha, Erro e Defeito
• Falhas são inevitáveis:– Componentes físicos envelhecem;– Projetos de software podem apresentar falhas
humanas;• Defeitos são evitáveis:
– Através de técnicas de tolerância a falhas;
![Page 15: Sistemas Tolerantes a Falhas: Conceitos e Técnicas](https://reader035.fdocument.pub/reader035/viewer/2022062316/5681567a550346895dc42d13/html5/thumbnails/15.jpg)
Conceitos – Falha, Erro e Defeito
• Exemplo:– Chip com defeito: falha;– Interpretação errada da informação: erro;– Provoca negação de acesso ao usuário: defeito;
• Nem toda falha leva a um erro;• Nem todo erro leva a um defeito;
– Podem não aparecer durante a execução do sistema;
![Page 16: Sistemas Tolerantes a Falhas: Conceitos e Técnicas](https://reader035.fdocument.pub/reader035/viewer/2022062316/5681567a550346895dc42d13/html5/thumbnails/16.jpg)
Conceitos – Classificação das Falhas
![Page 17: Sistemas Tolerantes a Falhas: Conceitos e Técnicas](https://reader035.fdocument.pub/reader035/viewer/2022062316/5681567a550346895dc42d13/html5/thumbnails/17.jpg)
Conceitos – Classificação das Falhas• Natureza: falhas de hardware, software,
operação;• Extensão: local ou global;• Valor: determinado ou indeterminado no
tempo;
• Falhas de interação intencional:– são tratadas por técnicas de segurança, não por
tolerância a falhas;
![Page 18: Sistemas Tolerantes a Falhas: Conceitos e Técnicas](https://reader035.fdocument.pub/reader035/viewer/2022062316/5681567a550346895dc42d13/html5/thumbnails/18.jpg)
Conceitos – Classificação das Falhas• Tf 1.2.doc• Atributos e dependabilidade• xxx
![Page 19: Sistemas Tolerantes a Falhas: Conceitos e Técnicas](https://reader035.fdocument.pub/reader035/viewer/2022062316/5681567a550346895dc42d13/html5/thumbnails/19.jpg)
Técnicas de Dependabilidade
![Page 20: Sistemas Tolerantes a Falhas: Conceitos e Técnicas](https://reader035.fdocument.pub/reader035/viewer/2022062316/5681567a550346895dc42d13/html5/thumbnails/20.jpg)
Técnicas de Dependabilidade
![Page 21: Sistemas Tolerantes a Falhas: Conceitos e Técnicas](https://reader035.fdocument.pub/reader035/viewer/2022062316/5681567a550346895dc42d13/html5/thumbnails/21.jpg)
Técnicas de Dependabilidade
![Page 22: Sistemas Tolerantes a Falhas: Conceitos e Técnicas](https://reader035.fdocument.pub/reader035/viewer/2022062316/5681567a550346895dc42d13/html5/thumbnails/22.jpg)
Técnicas de Tolerância a Falhas
• Classificam-se em:– Técnicas de mascaramento;– Técnicas de detecção e reconfiguração;
• Mascaramento:– Usa redundância para mascarar o defeito;– É mais rápida;– Própria para tempo real;
![Page 23: Sistemas Tolerantes a Falhas: Conceitos e Técnicas](https://reader035.fdocument.pub/reader035/viewer/2022062316/5681567a550346895dc42d13/html5/thumbnails/23.jpg)
Técnicas de Tolerância a Falhas
Detecção e Reconfiguração• Fase de Detecção:• xxx
![Page 24: Sistemas Tolerantes a Falhas: Conceitos e Técnicas](https://reader035.fdocument.pub/reader035/viewer/2022062316/5681567a550346895dc42d13/html5/thumbnails/24.jpg)
Redundância da Informação• Repete bits na transmissão:
– Códigos de paridade;– Técnicas de checksum;
• Detecta apenas erros simples;• Usado em componentes de hardware:
– Memórias e processadores;– Redes de computadores;
![Page 25: Sistemas Tolerantes a Falhas: Conceitos e Técnicas](https://reader035.fdocument.pub/reader035/viewer/2022062316/5681567a550346895dc42d13/html5/thumbnails/25.jpg)
Redundância Temporal
• Torna redundante as informações no tempo;
• Evita custo de harware, aumentando o tempo;
• Usado onde o tempo não é crítico;• Para detectar falhas transitórias:
– Repete-se a computação no tempo;– Resultados diferentes indicam falhas;
![Page 26: Sistemas Tolerantes a Falhas: Conceitos e Técnicas](https://reader035.fdocument.pub/reader035/viewer/2022062316/5681567a550346895dc42d13/html5/thumbnails/26.jpg)
Redundância Temporal
• Para detectar falhas permanentes:– Com base em uma computação normal;– Repete-se a computação com dados
codificados;– Compara-se o resultado da computação normal
com o resultado esperado na computação codificada;
• A codificação força o uso diferente do componente;
![Page 27: Sistemas Tolerantes a Falhas: Conceitos e Técnicas](https://reader035.fdocument.pub/reader035/viewer/2022062316/5681567a550346895dc42d13/html5/thumbnails/27.jpg)
Redundância HW - Passiva
• Faz mascaramento de falhas;• Vários componentes executam a
mesma tarefa;• Resultado determinado por votação;• Resultado obtido por maioria ou valor
médio;
![Page 28: Sistemas Tolerantes a Falhas: Conceitos e Técnicas](https://reader035.fdocument.pub/reader035/viewer/2022062316/5681567a550346895dc42d13/html5/thumbnails/28.jpg)
Redundância HW - Passiva
![Page 29: Sistemas Tolerantes a Falhas: Conceitos e Técnicas](https://reader035.fdocument.pub/reader035/viewer/2022062316/5681567a550346895dc42d13/html5/thumbnails/29.jpg)
Redundância HW - Passiva
![Page 30: Sistemas Tolerantes a Falhas: Conceitos e Técnicas](https://reader035.fdocument.pub/reader035/viewer/2022062316/5681567a550346895dc42d13/html5/thumbnails/30.jpg)
Redundância HW - Passiva
• TMR: redundância modular tripla;• NMR: redundância modular N;
• É ideal para falhas temporárias:• Suporta apenas uma falha permanente;
![Page 31: Sistemas Tolerantes a Falhas: Conceitos e Técnicas](https://reader035.fdocument.pub/reader035/viewer/2022062316/5681567a550346895dc42d13/html5/thumbnails/31.jpg)
Redundância HW - Ativa
• Técnicas de detecção, localização e reconfiguração;
![Page 32: Sistemas Tolerantes a Falhas: Conceitos e Técnicas](https://reader035.fdocument.pub/reader035/viewer/2022062316/5681567a550346895dc42d13/html5/thumbnails/32.jpg)
Redundância HW - Ativa
![Page 33: Sistemas Tolerantes a Falhas: Conceitos e Técnicas](https://reader035.fdocument.pub/reader035/viewer/2022062316/5681567a550346895dc42d13/html5/thumbnails/33.jpg)
Redundância HW - Ativa
• Reconfiguração do módulo estepe:– Alimentado: minimiza a descontinuidade do
sistema;– Não alimentado: espete só começa a operar
quando necessário;
– Módulo não alimentado minimiza a vida útil do estepe;
![Page 34: Sistemas Tolerantes a Falhas: Conceitos e Técnicas](https://reader035.fdocument.pub/reader035/viewer/2022062316/5681567a550346895dc42d13/html5/thumbnails/34.jpg)
Redundância HW - Híbrida
• Baseado em votação:– Módulo que descorda é desconectado;– Estepe entra em seu lugar;
• Modelo redundância auto-eliminadora• xxx
![Page 35: Sistemas Tolerantes a Falhas: Conceitos e Técnicas](https://reader035.fdocument.pub/reader035/viewer/2022062316/5681567a550346895dc42d13/html5/thumbnails/35.jpg)
Redundância HW - Híbrida
![Page 36: Sistemas Tolerantes a Falhas: Conceitos e Técnicas](https://reader035.fdocument.pub/reader035/viewer/2022062316/5681567a550346895dc42d13/html5/thumbnails/36.jpg)
Redundância Software
• Se a falha está no software, replicação de hardwares é inútil;
• Solução: replicar o software:– Diversidade;– Blocos de recuperação;– Verificação de consistência;
![Page 37: Sistemas Tolerantes a Falhas: Conceitos e Técnicas](https://reader035.fdocument.pub/reader035/viewer/2022062316/5681567a550346895dc42d13/html5/thumbnails/37.jpg)
Redundância SW - Diversidade
• São implementadas diversas soluções em software;
• Resultado determinado por votação;
• Diversidade de algoritmos;• Diversidade de versões;
![Page 38: Sistemas Tolerantes a Falhas: Conceitos e Técnicas](https://reader035.fdocument.pub/reader035/viewer/2022062316/5681567a550346895dc42d13/html5/thumbnails/38.jpg)
Redundância SW - Diversidade
![Page 39: Sistemas Tolerantes a Falhas: Conceitos e Técnicas](https://reader035.fdocument.pub/reader035/viewer/2022062316/5681567a550346895dc42d13/html5/thumbnails/39.jpg)
Redundância SW - Diversidade
• xxx• Problemas:
– Aumento do custo de desenvolvimento;– Não há garantias de que o erro não esteja em
todas as versões;
![Page 40: Sistemas Tolerantes a Falhas: Conceitos e Técnicas](https://reader035.fdocument.pub/reader035/viewer/2022062316/5681567a550346895dc42d13/html5/thumbnails/40.jpg)
Redundância SW – Blocos Recuperação• xxx
![Page 41: Sistemas Tolerantes a Falhas: Conceitos e Técnicas](https://reader035.fdocument.pub/reader035/viewer/2022062316/5681567a550346895dc42d13/html5/thumbnails/41.jpg)
Pesquisas sobre IDSsAspectos em desenvolvimento
• Técnicas de Detecção:– Inteligência Artificial;– Sistemas Imunológicos;
• Técnicas de Correlação;– Diminuir informações no log;– Identificar ataques distribuídos;
• Interoperabilidade:– Diferentes IDSs trocando informações;
![Page 42: Sistemas Tolerantes a Falhas: Conceitos e Técnicas](https://reader035.fdocument.pub/reader035/viewer/2022062316/5681567a550346895dc42d13/html5/thumbnails/42.jpg)
Pesquisas - Interoperabilidade
• Existe uma grande diversidade de IDSs:– análise de assinaturas, métodos estatísticos;– baseados em rede, baseados em host;– centralizados, distribuídos;
• Sem padrão de arquitetura e comunicação;
• A necessidade de interoperabilidade leva à necessidade de padronização;
![Page 43: Sistemas Tolerantes a Falhas: Conceitos e Técnicas](https://reader035.fdocument.pub/reader035/viewer/2022062316/5681567a550346895dc42d13/html5/thumbnails/43.jpg)
Interoperabilidade – Padrões
• Modelo CIDF:– Divisão em módulos;– Atualmente abandonado;
• Modelo IDWG:– Está em fase de Draft (IETF);– Modelo de dados IDMEF;– Tendência a ser implementado;
![Page 44: Sistemas Tolerantes a Falhas: Conceitos e Técnicas](https://reader035.fdocument.pub/reader035/viewer/2022062316/5681567a550346895dc42d13/html5/thumbnails/44.jpg)
Interoperabilidade - IDMEF
• Define formato e significados dos dados;
• Diversidade de informações:– alertas grandes e pequenos;– rede, sistema operacional, aplicativos;
• É orientado a objetos;
![Page 45: Sistemas Tolerantes a Falhas: Conceitos e Técnicas](https://reader035.fdocument.pub/reader035/viewer/2022062316/5681567a550346895dc42d13/html5/thumbnails/45.jpg)
Interoperabilidade – IDMEFVisão Geral
IDMEF-Message
HeartbeatAlert Analyser
CreateTime
AdditionalData
1 1
11
1
1
11
1
0..*
1
0..*
![Page 46: Sistemas Tolerantes a Falhas: Conceitos e Técnicas](https://reader035.fdocument.pub/reader035/viewer/2022062316/5681567a550346895dc42d13/html5/thumbnails/46.jpg)
Interoperabilidade - IDMEF
• Não define comunicação de respostas:– Não gerencia respostas;– Sem interoperabilidade de respostas;– Operador tem que conhecer cada IDS;– Atrazo no envio de respostas;
![Page 47: Sistemas Tolerantes a Falhas: Conceitos e Técnicas](https://reader035.fdocument.pub/reader035/viewer/2022062316/5681567a550346895dc42d13/html5/thumbnails/47.jpg)
Pesquisa LRG – Extensão IDWG
• Objetivo geral:– Propor uma extensão ao modelo IDWG, de
forma a suportar o envio de respostas;• Objetivos específicos:
– estender a arquitetura IDWG;– estender o modelo de dados IDMEF;– desenvolver um gerenciador de alertas e
respostas;
![Page 48: Sistemas Tolerantes a Falhas: Conceitos e Técnicas](https://reader035.fdocument.pub/reader035/viewer/2022062316/5681567a550346895dc42d13/html5/thumbnails/48.jpg)
Pesquisa LRG – Modelo PropostoArquitetura
Fonte deDados Sensor
Sensor Analisador
Operador
Gerenciador
Administrador Política de Segurança
Evento
Atividade
Atividade
EventoNotificação
Alerta
Recurso Contra-MedidasAção Resposta
Resposta
![Page 49: Sistemas Tolerantes a Falhas: Conceitos e Técnicas](https://reader035.fdocument.pub/reader035/viewer/2022062316/5681567a550346895dc42d13/html5/thumbnails/49.jpg)
Pesquisa LRG – Modelo IDREFVisão Geral
-ident : String-version : String
IDREF-Message
Response
Config
React
11..*
-analyzerid : Stringalertident
AdditionalData
10..*
Manager
11
CreateTime
11
description
10..1
![Page 50: Sistemas Tolerantes a Falhas: Conceitos e Técnicas](https://reader035.fdocument.pub/reader035/viewer/2022062316/5681567a550346895dc42d13/html5/thumbnails/50.jpg)
Pesquisa LRG - Desenvolvimento
• Componentes desenvolvidos:– IDSMan: gerenciador IDMEF / IDREF;– IDSAna: ponte entre Analisador e Gerenciador;– IDSRes: componente de Contra-Medidas;
• Desenvolvida biblioteca IDREF;• Linguagem Java;
– Orientação a objetos;– Bibliotecas existentes;
![Page 51: Sistemas Tolerantes a Falhas: Conceitos e Técnicas](https://reader035.fdocument.pub/reader035/viewer/2022062316/5681567a550346895dc42d13/html5/thumbnails/51.jpg)
Pesquisa LRG - Desenvolvimento Bibliotecas Utilizadas
• Beepcore: protocolo BEEP mapeado no TCP;
• IDXP-Java: perfil IDXP do BEEP;• JavaIDMEF: modelo de dados IDMEF;• JPcap: captura/geração de pacotes de
rede;
![Page 52: Sistemas Tolerantes a Falhas: Conceitos e Técnicas](https://reader035.fdocument.pub/reader035/viewer/2022062316/5681567a550346895dc42d13/html5/thumbnails/52.jpg)
Pesquisa LRG - Desenvolvimento Componente IDSMan
![Page 53: Sistemas Tolerantes a Falhas: Conceitos e Técnicas](https://reader035.fdocument.pub/reader035/viewer/2022062316/5681567a550346895dc42d13/html5/thumbnails/53.jpg)
Pesquisa LRG - Validação Componente IDSMan
![Page 54: Sistemas Tolerantes a Falhas: Conceitos e Técnicas](https://reader035.fdocument.pub/reader035/viewer/2022062316/5681567a550346895dc42d13/html5/thumbnails/54.jpg)
Pesquisa LRG - Desenvolvimento Componente IDSAna
• Lê mensagens IDMEF de um arquivo;• Transmite mensagens para o IDSMan;• Um IDS deve alimentar o arquivo;
![Page 55: Sistemas Tolerantes a Falhas: Conceitos e Técnicas](https://reader035.fdocument.pub/reader035/viewer/2022062316/5681567a550346895dc42d13/html5/thumbnails/55.jpg)
Pesquisa LRG - Desenvolvimento Componente IDSRes
• Recebe respostas IDREF do IDSMan;• Armazena as respostas em log;• Aplica as ações aos recursos;
![Page 56: Sistemas Tolerantes a Falhas: Conceitos e Técnicas](https://reader035.fdocument.pub/reader035/viewer/2022062316/5681567a550346895dc42d13/html5/thumbnails/56.jpg)
Pesquisa LRG - Ambiente
IDSAna
ArquivoIDMEF
IDSMan
IDSResBEEP/IDXP
IDMEF
BEEP/IDXPIDREF
IDS Snot
Ambiente de domínio do IDSLog
IDREF
![Page 57: Sistemas Tolerantes a Falhas: Conceitos e Técnicas](https://reader035.fdocument.pub/reader035/viewer/2022062316/5681567a550346895dc42d13/html5/thumbnails/57.jpg)
Considerações Finais
• Atualmente existem vários mecanismos voltados para a prevenção de ataques:– Firewall, Criptografia;
• Menos representativa é a utilização de mecanismos para:– Detecção de ataques;– Identificação de ataques/vulnerabilidades;– Resposta a ataques em andamento;
![Page 58: Sistemas Tolerantes a Falhas: Conceitos e Técnicas](https://reader035.fdocument.pub/reader035/viewer/2022062316/5681567a550346895dc42d13/html5/thumbnails/58.jpg)
Considerações Finais
• Identifica que os mecanismos de prevenção foram ultrapassados;
• Muitos ataques ocorrem dentro do ambiente:– Funcionários, estudantes;
• Um ambiente seguro deve combinar diversos mecanismos;– Criptografia, Firewall, IDS, etc.