You are on page 1of 10

Universidade Federal do Acre - Sistemas Distribuídos

Modelo de Falhas
Rafael Vasconcelos do Nascimento
Universidade Federal do Acre

1
Modelo de Falhas

Universidade Federal do Acre - Sistemas Distribuídos


• Define como uma falha pode se
manifestar em um sistema de forma
a proporcionar um entendimento de
seus efeitos e consequências.

• Falhas por omissão


• Falhas arbitrárias
• Falhas de sincronização

2
Falhas por omissão

Universidade Federal do Acre - Sistemas Distribuídos


• Casos em que um processo ou canal de
comunicação deixa de executar as ações que
deveria.
• Falhas por omissão de processo:
• Quando um processo entra em colapso, parando
e não executando outro passo de seu
programa.

3
Detecção de falha

Universidade Federal do Acre - Sistemas Distribuídos


• Envio de mensagens de status
• Timeouts determinam quando certos processos
deixam de responder
• Ex:
• p e q estão programados para q responder a
uma mensagem de p
• se o processo p não receber nenhuma resposta
do processo q dentro de um tempo máximo
(timeout),
• então o processo p conclui que q falhou.

4
Falhas por omissão na
comunicação

Universidade Federal do Acre - Sistemas Distribuídos


• Perda de mensagens:

• Processo p processo q

Send m 
R e ce ive

 Canal de comunicação
 Buffer de envio Buffer de
recepção

5
Falhas por omissão na
comunicação

Universidade Federal do Acre - Sistemas Distribuídos


• Falhas por omissão de envio
• Falhas por omissão de recepção
• Falhas por omissão de canal

6
Falhas arbitrárias

Universidade Federal do Acre - Sistemas Distribuídos


• Pior semântica de falha possível
• Qualquer tipo de erro pode ocorrer
• Falha arbitrária de um processo
• É aquela em que ele omite arbitrariamente
passos desejados do processamento ou efetua
processamento indesejado.
• Falha arbitrátria em canais de comunicação:
• Conteúdo da mensagem pode ser corrompido
• mensagens inexistentes podem ser enviadas
• mensagens reais podem ser entregues mais de
uma vez.
• Software de comunicação é capaz de reconhecer
e rejeitar as mensagens com problemas. 7
• Somas de verificação para detectar mensagens
corrompidas
• Números de sequências de mensagens ->
Falhas de temporização

Universidade Federal do Acre - Sistemas Distribuídos


• Aplicaveis aos Sistemas Distribuídos síncronos
• Limites de tempo são estabelecidos para o
tempo de execução do processo, para o tempo
de entrega de mensagens e para taxa de
desvio do relógio.
• Ex: Um servidor sobrecarregado pode responder
muito lentamente, podendo gerar falhas de
temporização.
• A temporização é particulamente relevante para
aplicações multimídia, com canais de áudio e
vídeo.

8
Mascaramento de falhas

Universidade Federal do Acre - Sistemas Distribuídos


• O conhecimento das características da falha de
um componente pode permitir que um novo
serviço seja projetado de forma a mascarar a
falha dos componentes dos quais ele depende.
• Exemplo:
• vários servidores que contêm réplicas dos dados
podem continuar a fornecer um serviço quando
eles apresentam um defeito.
• Um serviço Mascara uma falha ocutando-a
completamente ou convertendo-a em um tipo
de falha mais aceitável.
• Somas de verificação são usadas para mascarar
mensagens corrompidas 9
Confiabilidade de
comunicação de um para
um

Universidade Federal do Acre - Sistemas Distribuídos


• O termo comunicação confiável é definido em
termos de validade e integridade:
• Validade: qualquer mensagem do buffer de
envio é entregue ao buffer de recepção de seu
destino, independente do tempo necessário
para tal.
• Integridade: a mensagem recebida é idêntica à
enviada e nenhuma mensagem é entregue
duas vezes.

• Ameaças à integridade:
• Qualquer protocolo que retransmita mensagens,
mas não rejeite uma mensagem que entregue
duas vezes. 10
• Usuários mal-intencionados que podem injetar
mensagens modificadas, reproduzir
mensagens antigas ou falsificar mensagens.

You might also like