tolerância a falhas

33
Tolerância a Falhas Carlos Oberdan Rolim Ciência da Computação

Upload: rhonda

Post on 16-Jan-2016

34 views

Category:

Documents


0 download

DESCRIPTION

Tolerância a Falhas. Carlos Oberdan Rolim Ciência da Computação. Medidas. Taxa de Defeitos Curva da banheira Tempos Médios (mean times) MTTF, MTBF, MTTR Exemplos de cálculos de tempos médios Confiabilidade Disponibilidade Cobertura. Comportamento ideal x real. Ideal Real. - PowerPoint PPT Presentation

TRANSCRIPT

Page 1: Tolerância a Falhas

Tolerância a Falhas

Carlos Oberdan Rolim

Ciência da Computação

Page 2: Tolerância a Falhas

Medidas

Taxa de Defeitos

Curva da banheira

Tempos Médios (mean times)

MTTF, MTBF, MTTR

Exemplos de cálculos de tempos médios

Confiabilidade

Disponibilidade

Cobertura

Page 3: Tolerância a Falhas

Comportamento ideal x real

Ideal

Real

Page 4: Tolerância a Falhas

O que medir ?

Com que freqüência ocorrem defeitos?

Qual o tempo entre um defeito e outro?

Qual o tempo até o primeiro defeito?

Qual o tempo gasto para reparar cada defeito?

Quais as chances do sistema funcionar sem defeitos durante um determinado período de tempo?

Quais as chances dos sistema estar funcionando em um determinado instante?

Page 5: Tolerância a Falhas

Taxa de Defeitos

Com que freqüência ocorrem defeitos?

Taxa de Defeitos

unidade: defeitos por hora

Expresso por (lambda)

Assume uma taxa de defeitos constante Z(t) =

Na verdade não é constante

Boa aproximação: curva da banheira

função:

Z(t) – hazard function, ou taxa de defeitos ou ainda taxa de “morte” de componentes de uma população em um intervalo de tempo

Número esperado de defeitos em um dado período de tempo(failure rate)

Taxa instantanea de componentes falhos no tempo t

Quantidade de componentes operacionais

Page 6: Tolerância a Falhas

Curva da Banheira

fases de mortalidade infantil e envelhecimento muitopequenas comparadas ao período de vida útil

válido para hardware

Page 7: Tolerância a Falhas

Mortalidade Infantil

Alta taxa de defeitos que diminui rapidamente no tempo

componentes fracos e mal fabricados

burn-in: remoção de componentes fracos

operação acelerada de componentes antes de colocá-los no produto final

só entram em operação componentes que sobreviveram à mortalidade infantil

mortalidade infantil é uma fase de curto período de duração

Page 8: Tolerância a Falhas

Envelhecimento

taxa de defeitos aumenta rapidamente com o tempo

devido ao desgaste físico do componente

conhecendo o início da fase de envelhecimento é possível substituir o componente

sistema volta a operar na fase de vida útil

envelhecimento é também uma fase de curto período de duração

ideal é evitá-la

Page 9: Tolerância a Falhas

Tempo de vida útil

Corresponde ao tempo em que um componente pode ser utilizado antes que comece a apresentar uma alta taxa de falhas

Tempo de vida em operação normal

essa fase apresenta um serviço mais previsível em relação a falhas

relação exponencial entre confiabilidade e tempousa - taxa de defeitos constante

válido para hardware

Page 10: Tolerância a Falhas

Curva da banheira em software

software comporta-se diferente do hardware

melhor usar erros que falhas

erros são constantemente removidos

taxa de defeitos continua caindo com o tempo

confiabilidade aumenta com o tempo

envelhecimento de software ?obsolescência dos programas

alterações nas plataformas

exceto se forem efetuadas alterações, adaptações, mudança de plataforma (sistema operacional e hardware)

Page 11: Tolerância a Falhas

O que medir ?

Com que freqüência ocorrem defeitos?

Qual o tempo entre um defeito e outro?

Qual o tempo até o primeiro defeito?

Qual o tempo gasto para reparar cada defeito?

Quais as chances do sistema funcionar sem defeitos durante um determinado período de tempo?

Quais as chances dos sistema estar funcionando em um determinado instante?

Page 12: Tolerância a Falhas

Medidas

MTTFtempo esperado até a primeira ocorrência de defeito

MTTRTempo médio para reparo do sistema

MTBFtempo médio entre defeitos do sistema

mean time to failure

mean time to repair

mean time between failures

Page 13: Tolerância a Falhas

MTTF – mean time to failure

tempo esperado de operação do sistema antes da ocorrência do primeiro defeito

exemplo:

considera-se N sistemas idênticos colocados em operação a partir do tempo t=0

mede-se o tempo de operação ti de cada um até apresentar defeito

MTTF é o tempo médio de operação

MTTF =

quanto maior a quantidade de Amostras N, mais próximo do Valor real será o MTTF estimado

N

i=1

tiN

Page 14: Tolerância a Falhas

MTTF

N

i=1

tiN

MTTF =

ou MTTF = 1/

Considerando R(t) = e-t

Para um único sistema oprocedimento é semelhante:ti passa a ser Dti, o intervalo detempo em operação entre osdefeitos, e N o número de defeitos

Page 15: Tolerância a Falhas

MTTF: Exemplo

MTTF = (Dt1 + Dt2 + Dt3)/nº defeitosMTTF = 46,5/3 = 15,5 hTaxa de defeitos () = 1/MTTF = 0,064 def/h

Page 16: Tolerância a Falhas

MTTR – mean time to repair

Tempo médio de reparo do sistema

Inclui:

O tempo gasto identificando o erro (80% do tempo total)

O tempo gasto resolvendo o erro

O tempo gasto em espera para o erro de ser resolvido

Difícil de estimar

Geralmente usa-se injeção de falhas

Injeta-se uma falha de cada vez e mede-se o tempo

Nova constante (ipsilón)

Taxa de reparos

= taxa de reparos por hora

Em sistemas de alta disponibilidade, é importante diminuir o tempo de reparo para aumentar a disponibilidade do sistema

Sistema completamente

operacional

ou então

Page 17: Tolerância a Falhas

MTTR

Ri = tempo de reparo da falha i

n = número de falhas

Quanto maior o número de amostras, melhor

Page 18: Tolerância a Falhas

MTTR: exemplo

Tempo de reparo do 1º defeito (R1) = 0,5 hTempo de reparo do 2º defeito (R2) = 1 h

MTTR = (R1 + R2) / nº reparosMTTR = 1,5 / 2

MTTR = 0,75 h

Page 19: Tolerância a Falhas

MTBF – mean time between failure

MTBF = MTTF + MTTRdiferença numérica pequena em relação a MTTF

os tempos de operação são geralmente muito maiores que os tempos de reparo

na prática valores numéricos muito aproximados (tanto faz usar um como outro)

considera-se:

reparo coloca sistema em condições ideais de operação

Page 20: Tolerância a Falhas

MTBF

Page 21: Tolerância a Falhas

MTBF: Exemplo

Tempo entre o início e o 1º defeito (Dd1) = 6 h

Tempo entre 1º e 2º defeitos (Dd2) = 26 h

Tempo entre 2º e 3º defeitos (Dd3) = 16 h

MTBF = (Dd1 + Dd2 + Dd3)/nº defeitos

MTBF = 48/3

MTBF = 16 h

Page 22: Tolerância a Falhas

Demais medidas

Com que freqüência ocorrem defeitos?

Qual o tempo entre um defeito e outro?

Qual o tempo até o primeiro defeito?

Qual o tempo gasto para reparar cada defeito?

Quais as chances do sistema funcionar sem defeitos durante um determinado período de tempo?

Quais as chances dos sistema estar funcionando em um determinado instante?

Taxa de defeitos

MTBF

MTTFMTTR

Page 23: Tolerância a Falhas

Confiabilidade

Reliability

Considerando um sistema contendo N componentes idênticos

S(t) = numero de componentes sobreviventes no tempo tF(t) = numero de componentes falhos no tempo t

probabilidade de que um sistema funcione corretamente durante um intervalo de tempo [t0,t]

Page 24: Tolerância a Falhas

Confiabilidade

para um taxa de defeitos constante a confiabilidade R(t) varia exponencialmente em função do tempo

sistema na fase de vida útil: taxa de defeitos constante

R(t) = e-t

é a mais usada relação entre confiabilidade e tempo

válida principalmente para componentes eletrônicos

discutível se vale para software: conforme o software vai sendo usado, bugs vão sendo descobertos e a confiabilidade do software aumenta

exponential failure law

Page 25: Tolerância a Falhas

Confiabilidade, MTTF e Taxa de defeitos

Qualquer sistema tem 37% de chance de funcionar corretamente durante um período de tempo = MTTF (63% de falhar)

Page 26: Tolerância a Falhas

Confiabilidade: distribuição de Weibull

Expressão semi-empírica desenvolvida por Ernest Hjalmar Wallodi Weibull, físico sueco, que em 1939 apresentou o modelo de planejamento estatístico sobre fadiga de material.

Sua utilidade decorre do fato, de permitir:

representar falhas típicas de partida (mortalidade infantil), falhas aleatórias e falhas devido ao desgaste.

obter parâmetros significativos da configuração das falhas.

representação gráfica simples.

Page 27: Tolerância a Falhas

Confiabilidade: distribuição de Weibull

se taxa de defeitos varia com o tempoz(t) distribuição de Weibull

importante para modelagem de software onde a confiabilidade pode inclusive aumentar com o tempo

z(t) = (t)-1 para >0 e >0

R(t) = e –(t)

para =1 z(t) = constante = para >1 z(t) = aumenta com o tempo

para <1 z(t) = diminui com o tempo

e são constantes que controlam a variação de z(t) no tempo

Page 28: Tolerância a Falhas

Confiabilidade

Para: =1 =0,1taxa de defeitos constante

confiabilidade diminui com o tempo

Page 29: Tolerância a Falhas

Confiabilidade

Para: =0,6 =0,1 taxa de defeitos diminuiComo tempo

confiabilidade diminui com o tempomas não tão acentuadamente

Page 30: Tolerância a Falhas

Confiabilidade

Para: =2 =0,1 taxa de defeitos aumentalinearmente com o tempo

confiabilidade diminui com o tempoacentuadamente

Page 31: Tolerância a Falhas

Disponibilidade

probabilidade do sistema estar operacional no instante t (disponível para o trabalho útil)

alternância entre períodos de funcionamento e de reparo

A(t) = R(t) quando reparo tende a zero

lembrar que MTBF = MTTF + MTTRintuitivamente

A(t) = top / (top+ treparo)

genericamente

A(t) = MTTF / (MTTF + MTTR) top = tempo de operação normal

Treparo = tempo de reparo

nessa relação, o significado de alta disponibilidade fica mais claro diminuindo o tempo médio de reparo, aumenta a disponibilidade

A(t): Availability

Page 32: Tolerância a Falhas

Cobertura

Cobertura de falhas

Habilidade do sistema de realizar detecção, confinamento, localização, recuperação...

Geralmente se refere a habilidade de realizar recuperação de falhas

Significado matemático:

Probabilidade condicional que dada uma falha o sistema se recupere

Determinação: listar falhas possíveis e falhas que o sistema pode tolerar e calcular o percentual

Muito usada também em experimentos de injeção de falhas

Extremamente difícil de calcular

Geralmente assumido um valor constante

Page 33: Tolerância a Falhas

Problemas com medidas

Defeitos são eventos aleatórios

Podem demorar muito para ocorrer, não ocorrer ou ocorrer em um momento não

apropriado

Custo de avaliação experimental é alto

Necessária uma grande quantidade de amostras

Necessário tempo grande de avaliação

É importante avaliar durante o projeto do sistema

Injeção de falhas