Carregar apresentação
A apresentação está carregando. Por favor, espere
1
Carlos Oberdan Rolim Ciência da Computação
Tolerância a Falhas Carlos Oberdan Rolim Ciência da Computação
2
Arquiteturas de sistemas tolerantes a falhas
tolerância a falhas de um sistema de computação: deve ser suportada pelo hardware e software nível eficaz: arquitetura do sistema arquitetura de um sistema: componentes de hardware (processadores, memórias, controladores, interfaces) interconexões (barramentos ou linhas de comunicação).
3
Microprocessadores comerciais
aplicações convencionais quanto a condições existentes para reparo: inseridos em sistemas passíveis de reparo a intervalos quanto ao funcionamento do sistema: é admissível interrupção quanto ao tamanho da menor unidade permutável: nível de chips (uso de soquetes)
4
TF em microprocessadores comerciais
desenvolvidos para aplicações não críticas: não apresentam mecanismos intrínsecos para suporte de técnicas de tolerância a falhas mas vêm sendo usados para: controle de processos industriais controle de tráfego instrumentação.
5
TF em microprocessadores comerciais
chips convencionais sem suporte para tolerância a falhas solução temporária: hardware adicional como votadores e comparadores solução desejável suporte para TF suprido pelo microprocessador caso especiais Intel iAPX 432 Pentium
6
iAPX432 da Intel suporte a TF independente da arquitetura
(arquitetura = conjunto de instruções, modos de endereçamento, registradores internos) pode ser implementado em qualquer sistema digital integrado com acréscimo na área de silício
7
iAPX432
8
TF no iAPX432 um chip pode ser configurado como mestre ou verificador:
um mestre pode operar sozinho ou ligado a um verificador um verificador deve estar ligado a um mestre verificador: reversão de pinos comparação sinalização de erro
9
Configurações com iAPX432
10
Configurações alternativas:
arquitetura básica: não há redundância arquitetura FRC: detecção por HW arquitetura QMR: detecção + reconfiguração por HW par mestre-verificador primário + par estepe dois pares ativos, mas apenas o par primário fornece resultados ao sistema detecção de erro chaveia para o par estepe (FRC)
11
432 estrutura interna
12
Pentium 486 Pentium paridade para os bytes de dados
adicionalmente paridade nas caches, TLB e memória de microcódigo verificação de exceções (machine check exception) mestre / verificador (i432) com dois chips - dobro do custo
13
Pentium Pro mantém todas as técnicas do Pentium adicionalmente:
paridade nos bytes de dados substituída por 8 bits de ECC 2 bits de paridade para barramento de endereço associado a técnicas de retry bits de paridade para sinais de controle
14
Pentium Pro verificador de exceções problemas:
machine check architecture - MCA - com 3 registradores de controle e 5 bancos de 4 registradores de erro problemas: ECC limitado a parte mais fácil do circuito documentação difícil MCA opcional - pode ser desligado por software
15
Sistemas de grande porte
mainframes: alto custo arquitetura com vários processadores de alto desempenho memória comum de grande capacidade canais para ligação com periféricos sistemas operacionais multiusuário
16
Características mainframes
condições para reparo: passíveis de reparo a intervalos funcionamento do sistema: admissível interrupção tamanho da unidade permutável: nível de placas e unidades. alto desempenho e alto custo desaconselhável redundância pura e simples alternativa: uso de processador de manutenção
17
Processador de manutenção
pequeno porte e autônomo opera independentemente do mainframe supervisiona mainframe não interfere no processamento normal construído com componentes confiáveis capacidade de autoteste não dispensa outras técnicas de TF códigos de correção e detecção de erros recuperação de erros transitórios sem intervenção do processador de manutenção
18
Processador de manutenção
ligação do processador de manutenção ao mainframe: diretamente ao barramento central onde trafegam dados, instruções, endereços e sinais de controle através de uma interface especial semelhante à interface de periféricos exemplo: IBM 3080 e 3090
19
Funções do processador de manutenção
inicialização e controle do sistema supervisão contínua do sistema durante operação diagnóstico de falhas recuperação do sistema quando uma falha é detectada teste durante desenvolvimento e produção
20
Funções do processador de manutenção
na detecção de um erro transitório: o processo é inicialmente interrompido o processo é posteriormente recuperado para um estado livre de erros o Sistema Operacional é responsável por reiniciar o processo recuperado
21
Funções do processador de manutenção
na detecção de um erro permanente: localizar a falha até o nível de componente configurar p/ garantir operação normal 2 cenários de recuperação reconfiguração é possível, mesmo degradada em desempenho (graceful degradation) reconfiguração não é possível: proc. de manutenção diagnostica a falha até o nível de SRU
22
Processador de manutenção
23
Sistemas comerciais tolerantes a falhas
Exemplos: computadores de grande porte desenvolvidos para aplicações comerciais tolerantes a falhas (sisitemas de transações) Tandem: mecanismos de TF implementados em software Stratus: mecanismos de TF implementados em hardware
24
Tandem NonStop sistema composto de 2 a 16 módulos
processador + memória local + canal de entrada e saída + fonte de alimentação interligados por um barramento duplicado adicionalmente controladores de dispositivos de entrada e saída controladores podem aparecer duplicados cada um está conectado a dois canais de E/S
25
Tandem NonStop redundância dinâmica em software
sistema operacional GUARDIAN; kernel + grande número de processos processos de supervisão para processadores pares para processos do sistema e do usuário par = processo primário ativo + processo substituto passivo processo primário envia pontos de recuperação p/ substituto
26
Tandem NonStop
27
Diagnóstico de erros erros em um módulo detectados por outros módulos
a cada segundo: processo supervisor do módulo envia sinal de vida a todos outros módulos no sistema a cada 2 segundos: processo supervisor verifica se recebeu sinal de vida dos outros módulos na falta de um sinal: módulo correspondente falhou
28
Diagnóstico de erros operações de entrada e saída:
controle de time-out sob falha: processo de E/S substituto entra em operação
29
Recuperação Falha diagnosticada no módulo:
processos substitutos relacionados aos primários em execução no módulo voltam para o último PR recuperação por retorno processos substitutos são ativados viram processos primários sistema é reconfigurado novos processos primários
30
Recuperação Após reparo do módulo faltoso:
novos processos primários criam substitutos nesse módulo Falha de um canal de entrada e saída: o processo substituto correspondente é rolado para PR processo substituto é ativado processo primário é desativado (substituto)
31
Stratus Continuous Processing
Sistema: composto de 1 a 32 módulos módulos interconectados por rede local (Strata Link) Módulo: processador + memória local + controladores de entrada e saída interligados por um barramento interno
32
Stratus Módulos: não estão disponíveis para redundância dinâmica
hardware duplicado com comparador (redundância estática) módulos podem aparecer duplicados a duplicação é transparente ao usuário e às aplicações.
33
Stratus Esquema de um módulo do Stratus
34
Stratus: SO sistema operacional VOS tendência de uso de UNIX
sistema multiusuário permite acesso aos recursos através da rede local apresenta recursos óbvios de tolerância a falhas uma vez que a tolerância é via hardware tendência de uso de UNIX
35
Stratus: diagnóstico de erros
interno aos módulos comparação dos resultados (por replicação) se comparação indica erro: nenhum resultado é fornecido como saída do módulo módulo é desconectado do sistema é enviado sinal de erro ao programa de manutenção.
36
Stratus: programa de manutenção
providencia realização de testes no módulo objetivo: determinar se falha é permanente ou transitória problema é registrado erro indicado em um terminal de supervisão para módulo faltoso duplicado no sistema: erro fica invisível à aplicação (unidade redundante)
37
Stratus: programa de manutenção
Falha transitória: módulo é ressincronizado com unidade redundante entra imediatamente em operação Falha permanente: módulo é substituído manualmente não há interrupção do processamento normal
38
Sequoia multiprocessador fortemente acoplado (tightly coupled)
problemas com isolamento de falhas vantagem no balanceamento de carga uso extensivo de detecção de falhas em hardware
39
Sequoia características gerais construído com componentes padrão
familia Motorola 680x0 Multibus para conexão a periféricos UNIX elementos básicos barramento dual segmentado processador + memória + I/O
40
Sequoia: arquitetura
41
Sequoia: barramento barramento duplicado separado em 3 tipos de segmentos segmentos eletricamente isolados (MI e SI) configuração máxima: até 8 segmentos de processador até 16 segmentos de memória até 64 PEs e 128 MEs / IOEs
42
Sequoia: processador PE cada PE possui: 2 micros sincronizados
comparação a cada ciclo de relógio cada PE possui: clock local memória cache metade read-only gerenciador de memória virtual
43
Sequoia: memória interleaved código de correção de erros
para detecção e correção de erros de memória controlador de memória em cada elemento de memória é duplicado espelhamento de memória
44
Sequoia: memória cada ME contém 1024 test-and-set locks
para realizar acesso exclusivo a posições da memória usados pelo sistema operacional periodicamente a memória é copiada em disco
45
Sequoia: cache local a cada PE non-write-through
flush periódico dos blocos alterados (dirty blocks) determinado pelo SO para atualizar memória principal para contornar overflow de cache flush (hardware especial): primeiro escreve na memória espelhada depois na primária
46
Sequoia: I/O I/O dois apaptadores
também duplicados espelhamento de disco dois apaptadores MA - Multibus adapter BA - bus adapter Multibus - barramento padrão para periféricos
47
Sequoia: I/O BA - bus adapter MA - Multibus adapter
conexão ao barramento de memória local (memory local segment) quatro buffers locais controlador de DMA MA - Multibus adapter conexão ao barramento de periféricos microprocessador dual buffers de dados (2Mbytes)
48
Sequoia: TF paridade códigos de correção e detecção
cache barramentos elementos de I/O códigos de correção e detecção comparação de elementos duplicados protocolos de monitoração
49
Sequoia: SO compatível com padrão UNIX test-and-set locks
kernell proprietário superset do UNIX test-and-set locks exclusão mútua no acesso a memória compartilhada controle de flush de cache recuperação de falhas
50
Computadores de bordo Função: controle ativo de aeronaves
Características: tempo real, com tempo de atuação curto reparo: possível apenas durante os intervalos de vôo desejável: a cada centena de horas de vôo interrupção no funcionamento: inadmissível confiabilidade: da ordem de 10-9 falhas por hora para um vôo de 10 horas
51
Exemplos década de 70 (NASA)
dois computadores desenvolvidos a partir da mesma especificação ambos com redundância modular tripla (TMR) FTMP Fault Tolerant Multi-Processor SIFT Software Implemented Fault Tolerance
52
Exemplos FTMP: votador implementado em hardware,
todos os processadores são sincronizados relógio central é tolerante a falhas SIFT: votação realizada por software, processadores são assíncronos, não há relógio central: sincronismo de resultados para votação garantido por software.
53
FTMP sistema de barramento central: processadores e módulos de memória
5 barramentos redundantes processadores e módulos de memória ligados ao sistema de barramento por interfaces especiais (BGs - bus guardians).
54
FTMP: Tríade Tríade = 3 processadores + 3 memórias.
elementos executam a mesma tarefa comunicam-se entre si através de 3 dos 5 barramentos BGs votam sobre dados da tríade colocados nos 3 barramentos falha em processador, memória ou barramento: mascarada tríades diferentes executam tarefas diversas
55
FTMP processadores e módulos de memória estepe
objetivo: substituir um elemento de uma tríade que falhou. distribuição dinâmica de tarefas entre as tríades objetivo: reconhecer falhas nos votadores reconfiguração periódica objetivo: reconhecer falhas no mecanismo de reconfiguração.
56
SIFT Módulos processadores interligados por barramento redundante
processadores operam assincronamente em relação aos demais sincronização de resultados para votação: por software
57
SIFT uma tarefa é alocada sempre a 3 módulos:
cada módulo envia seu resultado aos outros 2 usando o barramento redundante cada módulo realiza votação majoritária por software votação majoritária: (2-em-3)
58
AUGUST 300 sistema comercial baseado em SIFT
construído com microprocessadores Intel 80x86 máquina para controle de processos em tempo real
59
Comparação FTMP e SIFT ambos com alta confiabilidade para aplicações tempo-real FTMP: esquema de votação mais eficiente (hardware) tolerância a falhas não é visível a partir da aplicação SIFT: esquema de votação em software tolerância a falhas é visível a partir da aplicação
Apresentações semelhantes
© 2024 SlidePlayer.com.br Inc.
All rights reserved.