Você está na página 1de 10

Tcnicas para obteno de Tolerncia a Falhas

Tolerncia a falhas / defeitos

Bibliografia
H. Kopetz, Design Principles for Distributed Embedded Applications, Kluwer Academic Publishers, 1997.

Sistemas Tolerantes a Falhas

Lus Almeida, EST -IPCB, 2 semestre 2001

Tolerncia a falhas / defeitos


Tcnicas para obteno de tolerncia

Processamento de erros Recuperao de erros para um estado passado


Sistemas Tolerantes a Falhas

Tratamento de erros Passivao

Compensao de erros

Diagnstico

para um novo estado

Redundncia

Lus Almeida, EST -IPCB, 2 semestre 2001

Deteco de erros

Um aspecto fundamental para obter tolerncia a falhas a deteco eficiente de erros Isso requer conhecimento dos estados do sistema: Estado actual Estado correcto desejado

Neste contexto, um erro uma discrepncia entre aqueles dois estados.

Sistemas Tolerantes a Falhas

Lus Almeida, EST -IPCB, 2 semestre 2001

Deteco de erros

As tcnicas usuais podem dividir-se em 3 grupos consoante sejam baseadas em: Conhecimento apriorstico Clculos redundantes Dupla execuo de tarefas

Sistemas Tolerantes a Falhas

Lus Almeida, EST -IPCB, 2 semestre 2001

Deteco de erros

Tcnicas baseadas em conhecimento apriorstico Usam caractersticas pr-conhecidas das grandezas associadas a cada estado do sistema (Domnio lgico) Conhecimento sintctico sobre o espao de codificao e.g. Bits de paridade, Somas de controlo, CRCs, i.e., cdigos de deteco de erros, eventualmente com correco. Usa-se muito em transmisso de informa o. Verificao de plausabilidade e.g. Comparao das grandezas medidas, tais como valores de entrada ou resultados de clculos, com gamas de validade prestabelecidas.
Sistemas Tolerantes a Falhas 5 Lus Almeida, EST -IPCB, 2 semestre 2001

Deteco de erros

Tcnicas baseadas em conhecimento apriorstico (Domnio temporal) Padres de activao de procedimentos e.g. Medio da periodicidade de activao de uma dada funo e comparao com o respectivo perodo especificado. Verificao do tempo de execuo de tarefas e.g. Medio do tempo de execuo efectivo de cada instncia da tarefa (cada activao) e comparao com determinados limites pr-estabelecidos (como mximo WCET, e/ou mnimo)

Sistemas Tolerantes a Falhas

Lus Almeida, EST -IPCB, 2 semestre 2001

Deteco de erros

Tcnicas baseadas em clculos redundantes Redundncia temporal e.g. Uma dada funo executada mltiplas vezes, com as mesmas entradas. Eventuais diferenas nas sadas indicam erros causados por defeitos fsicos transientes (ou por rudo). Redundncia de hardware e.g. Um determinado programa executado simultneamente em mltiplos controladores e as respectivas sadas comparadas. Este mtodo permite detectar defeitos fsicos quer transientes quer permanentes.

Sistemas Tolerantes a Falhas

Lus Almeida, EST -IPCB, 2 semestre 2001

Deteco de erros
Tcnicas baseadas em clculos redundantes Redundncia de software: Software diverso sobre o mesmo hardware e.g. Uma funo que escrita por pessoas diferentes, sendo as mlitplas verses executadas em sequncia no mesmo controlador. Permite detectar defeitos de software e defeitos fsicos transientes. Software diverso sobre mltiplo hardware e.g. Tal como no caso anterior mas em que as mltiplas verses da funo so executadas em controladores diferentes. Permite detectar defeitos de software e fsicos, quer transientes quer permanentes.
Sistemas Tolerantes a Falhas 8 Lus Almeida, EST -IPCB, 2 semestre 2001

Deteco de erros

Rplicas determinsticas A redundncia de hardware exige a utilizao de rplicas determinsticas. Uma rplica de um dado equipamento diz-se determinstica se, na ausncia de erros e em cada instante, a respectiva sada d um valor que no difere da do equipamento principal mais do que um certo valor residual pr-estabelecido. e.g. Considere um sistema que gera uma sequncia infinita de nmeros. Uma rplica determinstica desse sistema gerar, nos mesmos instantes, exactamente os mesmos nmeros.

Sistemas Tolerantes a Falhas

Lus Almeida, EST -IPCB, 2 semestre 2001

Deteco de erros

Tcnicas baseadas na dupla execuo de tarefas (caso especfico de redundncia temporal) Consistem em executar (tentar executar) a mesma tarefa duas vezes para cada instncia. Permitem a deteco de erros causados por defeitos fsicos transientes Garantindo tempo para as duas execues da tarefa em todas as respectivas activaes (inclusiv no pior caso), pode-se conseguir uma taxa de deteco de erros acima de 99,9%.

Sistemas Tolerantes a Falhas

10

Lus Almeida, EST -IPCB, 2 semestre 2001

Tolerncia a falhas

Confome referido anteriormente, a redundncia de hardware permite evitar que falhas de componentes causem uma falha do sistema global (compensao de erros). O nmero de rplicas por componente (inclundo o prprio) depende do nmero (k) de falhas que se pretende tolerar e do respectivo tipo:

k+1 componentes para falhas do tipo falha-silncio 2*k+1 componentes para falhas do tipo falha-consistente 3*k+1 componentes para falhas maliciosas.

Sistemas Tolerantes a Falhas

11

Lus Almeida, EST -IPCB, 2 semestre 2001

Tolerncia a falhas

As tcnicas de tolerncia a falhas podem ser aplicadas a dois nveis: Ao nvel da arquitectura, i.e., de forma transparente para a aplicao (Tolerncia a Falhas Sistemtica)

Ao nvel da aplicao, i.e., inseridas no cdigo especfico da aplicao (Tolerncia a Falhas Especfica da Aplicao)

A tolerncia a falhas sistemtica permite aliviar a complexidade da aplicao, transferindo-a, no que diz respeito quele aspecto, para hardware e software de sistema adicionais.
Sistemas Tolerantes a Falhas 12 Lus Almeida, EST -IPCB, 2 semestre 2001

Nodo como unidade de falha

Num sistema distribudo cada nodo constitui um elemento com fronteiras bem definidas, que fornece um servio atravs de um interface tambm bem definido. Pode-se ento falar de um nodo como uma unidade de falha do sistema, i.e., ou est operacional ou no, do ponto de vista do servio que fornece.

Por sua vez, a redundncia pode ser aplicada ao nvel de nodo, i.e., a replicao de hardware ser feita usando o nodo como unidade.

Sistemas Tolerantes a Falhas

13

Lus Almeida, EST -IPCB, 2 semestre 2001

Nodo como unidade de falha

Exemplos de tcnicas relacionadas com tolerncia a falhas em sistemas distribudos e baseadas em nodos como unidades de falha: Controlo de presena (membership services) Servios que permitem saber quais os nodos que se encontram operacionais, e.g., atravs da activao peridica de um bit num determinado registo. Gesto da redundncia Servios que efectuam a deteco de discrepncias entre as sadas de nodos replicados e controlam a entrada e sada de funcionamento das rplicas.
Sistemas Tolerantes a Falhas 14 Lus Almeida, EST -IPCB, 2 semestre 2001

Nodo como unidade de falha


Aspectos a ter em conta ao nvel de cada nodo: Definio de um nvel mnimo de servio Fasquia que define a separao entre os estados operacional e de falha para cada nodo. Deteco de erros no interior do nodo Os erros internos devem ser detectados e mapeados num nico modo de falha externo, i.e., falha-silncio. Cuidados a ter com tratamento de excepes A deteco de erros leva, normalmente, execu o de exception handlers cujo tempo de execuo tem se ser contabilizado.
Sistemas Tolerantes a Falhas 15 Lus Almeida, EST -IPCB, 2 semestre 2001

Unidades tolerantes a falhas

A incorporao de tcnicas de tolerncia a falhas ao nvel do nodo leva criao de unidades tolerantes a falhas. (FTUs Fault-Tolerant Units)

Estas unidades desempenham a mesma funcionalidade do nodo base, prestam os mesmos servios, mas esto dotadas de servios suplementares que lhe conferem um certo nvel de tolerncia a falhas. De um ponto de vista macroscpico, cada FTU como um simples nodo do sistema, apenas com uma taxa de falha mais baixa devida s situaes de falha que so toleradas.
Sistemas Tolerantes a Falhas 16 Lus Almeida, EST -IPCB, 2 semestre 2001

Unidades tolerantes a falhas

Tolerncia a uma falha do tipo falha-silncio Estas so falhas em que o nodo ou produz um valor temporalmente e logicamente correcto ou simplesmente omite a sada.

FTU Nodo
Nodo de backup

Uma FTU em que o nodo base s apresenta falhas do tipo falha-silncio requer a utilizao de dois nodos. Se um falha o outro continua a responder.

Sistemas Tolerantes a Falhas

17

Lus Almeida, EST -IPCB, 2 semestre 2001

Unidades tolerantes a falhas

Tolerncia a uma falha do tipo falha-pra ou falha-consistente Estas so falhas em que o nodo, aps uma falha, pode continuar a produzir um valor errado mas consistente, i.e., uma sada de valor constante. Uma FTU em que o nodo base pode apresentar falhas do tipo falha-pra ou falha-consistente requer a utilizao de trs nodos e um mecanismo de votao para eleger de entre as trs sada a que est correcta (uma estar errada e duas estaro correctas). (TMR Triple Modular Redundancy)
Sistemas Tolerantes a Falhas 18 Lus Almeida, EST -IPCB, 2 semestre 2001

FTU Nodo
votao

Unidades tolerantes a falhas

Tolerncia a uma falha do tipo falha-inconsistente (maliciosa ou bizantina) Estas so falhas em que o nodo, aps uma falha, pode continuar a produzir valores errados e inconsistentes, i.e., uma sada de valor varivel. Uma FTU em que o nodo base pode apresentar falhas do tipo falha-inconsistente requer a utilizao de quatro nodos e um protocolo adequado que permita determinar qual o nodo que est a produzir o valor errado. Este protocolo requer a troca de mensagens entre todos os nodos da FTU, com os valores das respectivas sadas. (Byzantine-Resilient Agreement Protocol)
Sistemas Tolerantes a Falhas 19 Lus Almeida, EST -IPCB, 2 semestre 2001

FTU nodo

10

Você também pode gostar