Você está na página 1de 3

Diagnóstico adaptativo

porque ficar atado a um grafo de testes estáticos?

no diagnóstico adaptativo a partir dos resultados dos testes executados os processos


definem os próximos testes que vão executar

define-se um grafo de testes inicial começa na primeira rodada


os nodos executam testes de acordo com o grafo de testes
enviam os resultados para o observador central
são definidos os novos testes que serão executados na próxima rodada
incrementa a rodada e volta ao item(2)

Diagnóstico distribuído
Elimina o observador central
nodos a´tem de executarem testes recebem resultados de testes dos demais testadores,
processam os resultados(síndrome) e determinam o estado de todos os nodos

bianchin.jr,buskens,1992
“implementation of online distributed system level diagnosis theory”
algoritmo adaptive DSD(virtual ring)=> adaptativo e distribuído
baseado no modelo PML
todas as premissas assumidas para PML também são válidas para adaptive-DSD

Vring(Virtual Ring)

Executado por n processo com identificadores sequenciais, entre 0 e (n-1)

Cada processo executa testes sequenciais até encontrar um processo falho ou até testar
todos os processos falhos

o processo 0 segue o processo n-1

cada processo tesa sequencialmente

Os testes(anel que não se rompe) são executados até encontrar um nodo correto .

No Adaptive-DSD

Nodos(unidades,processos) têm identificadores sequenciais de 0 a n-1

os nodos executam todos em intervalos de testes pré-definidos(tempo físico:30s e 10ms


definido de acordo com o sistema)

cada nodo testa aquele de identificadores seguintes

se o nodo está falho o testador segue testando os seguinte até encontrar um nodo sem
falha ou testar todos os nodos falhos
premissa: teste são executados com perfeição por unidade sem folha(sistema síncrono)

considera os nodos do sistema

X-Y-Z

x pode obter informações de diagnóstico a partir do y

no artigo original tested-up y[z] significa que x recebe a informação que y testou z sem-falha

nosso caso definir um vetor state{0…n-1} o conteúdo da entrada do vetor state é: falho =1
sem falha =0
unown =-1

um nodo i mantém no vetor state[] sua visão sobre o estado dos outros nodos do sistema

inicialmente um nodo atribui 1 como o estado de todos os outros nodos=> vai mudando na
medida em que vai estando ou obtendo informações

considere que cada nodo se considera sem-falhas

nodo testador obtém do nodo testado sem-falhas informações de diagnóstico sobre todos
dos nodos que não testou

Algoritmo Adaptive-DSD
// executado pelo nodo i a cada intervalo de testes

início
j<=i

repita
j<=(j=i) mod n
testa o nodo j
Se j sem-falha então obtenha informações de nodos não testados até que j seja testado
sem-falhas ou todos os nodos sejam testados

Duas definições importantes

Intervalo de testes: tempo um intervalo de tempo, definido para a execução dos testes por
cada nodo sem-falha periodicamente

Rodada de Testes: uma rodada acontece quanto cada nodo sem-falha testou pelo menos
um nodo sem-falha

Em que contexto isso é útil?


mudar sistema de monitoramento são centralizados
esses sistemas param de funcionar após 1 falha do monitor gerente
com um algoritmo como adaptive-DSD,independente de número de nodos falhos, o
monitoramento contido=> monitorando tolerante a falhas

sistema subjacente deve ser síncrono=> sistemas reais não são


diagnóstico “escape” deste problema definido um “bem”procedimento de testes

Você também pode gostar