Modelo de falhas
Sistemas Distribuídos 2011.2
• Define e classifica as falhas, fornecendo uma base para a
  análise de seus efeitos em potencial e para projetar
  sistemas capazes de tolerar certos tipos de falhas e
  continuar funcionando




Conceito
• Defeito – Sistema não cumpre o que foi especificado
• Erro – Estado do sistema causado por uma falha




Conceitos Básicos
• Estes atributos podem ocorrem tanto em Processos de
  sistema como em canais de comunicação




Ocorrência de falhas
• A tolerância a falhas é a propriedade de um sistema
  distribuído que lhe permite recuperar da existência de
  falhas, sem introduzir comportamentos incorretos.
Um sistema deste tipo pode mascarar as falhas e
continuar a operar, ou parar e voltar a operar
mais tarde, de forma coerente, após reparação
da falha.




Definições
• Disponibilidade - mede a fração de tempo em que um
  serviço está a operar corretamente, isto é, de acordo com
  a sua especificação.
Para um sistema ser altamente disponível (highly available)
deve combinar um reduzido número de falhas com um curto
período de recuperação das falhas (durante o qual não está
disponível).




Definições
• Confiabilidade - mede o tempo desde um instante inicial
  até à primeira falha, isto é, o tempo que um sistema
  funciona corretamente sem falhas.
Um sistema que falha com grande frequência e recupere
rapidamente tem baixa confiabilidade, mas alta
disponibilidade.




Definições
• Pontualidade - Em sistemas de tempo real é a garantia de
  que o sistema é capaz de obedecer a constrangimentos
  temporais, isto é, a capacidade que o sistema tem de
  garantir limites para o tempo que as diferentes ações
  levam a executar.




Definições
• Falhas por omissão
  • De envio
  • De recebimento
• Falhas arbitrárias
• Falhas de tempo
• Falhas de resposta
  • Valor
  • Transição de estado
• Falhas por queda




Classificação
Falhas de omissão e arbitrárias
Falhas de tempo
• Transiente
– Ocorre uma vez e depois desaparece
– Se a operação for repetida, a falha não acontecera novamente
• Intermitente
– Ocorre e desaparece por “sua própria vontade”.
– Difícil de diagnosticar;
• Permanente
– Continua a existir até que o componente faltoso seja substituído




Tipos
• Técnicas para mascarar falhas
• Redundância de informação
– Bits extras são adicionados para permitir recuperação de
bits deteriorados
• Redundância de tempo para falhas de omissão
– Uma ação é realizada e, então, se for preciso, ela é
executada novamente.
• Redundância física
– Componentes físicos replicados são usados

Mascaramento de Falha
por Redundância
• 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.

• A tarefa para preservar a Integridade vem de duas premissas:
   • Qualquer protocolo que retransmita mensagens, mas não rejeite uma
     mensagem que entregue duas vezes.

   • Usuários mal-intencionados que podem injetar mensagens
     modificadas, reproduzir mensagens antigas ou falsificar mensagens.




Confiabilidade na
comunicação Um para Um
• Resiliência de Processos
– Replicação de processos em grupos
– Grupos Simples ou Hierárquicos
• Comunicação Confiável Cliente-Servidor
– Falhas de Comunicação
– Canal de Comunicação pode exibir falhas por queda, por omissão, arbitrarias
– TCP(ponto-a-ponto); RPC
• Comunicação Confiável de Grupo
– Como implementar entrega confiável de mensagens a todos os processos?
• Comprometimento Distribuído
– Envolve a realização de uma operação por cada membro de um grupo de
processos ou por absolutamente nenhum.


Estratégias de Tolerância
a Falhas
FIM

Modelo de falhas

  • 1.
    Modelo de falhas SistemasDistribuídos 2011.2
  • 2.
    • Define eclassifica as falhas, fornecendo uma base para a análise de seus efeitos em potencial e para projetar sistemas capazes de tolerar certos tipos de falhas e continuar funcionando Conceito
  • 3.
    • Defeito –Sistema não cumpre o que foi especificado • Erro – Estado do sistema causado por uma falha Conceitos Básicos
  • 4.
    • Estes atributospodem ocorrem tanto em Processos de sistema como em canais de comunicação Ocorrência de falhas
  • 5.
    • A tolerânciaa falhas é a propriedade de um sistema distribuído que lhe permite recuperar da existência de falhas, sem introduzir comportamentos incorretos. Um sistema deste tipo pode mascarar as falhas e continuar a operar, ou parar e voltar a operar mais tarde, de forma coerente, após reparação da falha. Definições
  • 6.
    • Disponibilidade -mede a fração de tempo em que um serviço está a operar corretamente, isto é, de acordo com a sua especificação. Para um sistema ser altamente disponível (highly available) deve combinar um reduzido número de falhas com um curto período de recuperação das falhas (durante o qual não está disponível). Definições
  • 7.
    • Confiabilidade -mede o tempo desde um instante inicial até à primeira falha, isto é, o tempo que um sistema funciona corretamente sem falhas. Um sistema que falha com grande frequência e recupere rapidamente tem baixa confiabilidade, mas alta disponibilidade. Definições
  • 8.
    • Pontualidade -Em sistemas de tempo real é a garantia de que o sistema é capaz de obedecer a constrangimentos temporais, isto é, a capacidade que o sistema tem de garantir limites para o tempo que as diferentes ações levam a executar. Definições
  • 9.
    • Falhas poromissão • De envio • De recebimento • Falhas arbitrárias • Falhas de tempo • Falhas de resposta • Valor • Transição de estado • Falhas por queda Classificação
  • 10.
    Falhas de omissãoe arbitrárias
  • 11.
  • 12.
    • Transiente – Ocorreuma vez e depois desaparece – Se a operação for repetida, a falha não acontecera novamente • Intermitente – Ocorre e desaparece por “sua própria vontade”. – Difícil de diagnosticar; • Permanente – Continua a existir até que o componente faltoso seja substituído Tipos
  • 13.
    • Técnicas paramascarar falhas • Redundância de informação – Bits extras são adicionados para permitir recuperação de bits deteriorados • Redundância de tempo para falhas de omissão – Uma ação é realizada e, então, se for preciso, ela é executada novamente. • Redundância física – Componentes físicos replicados são usados Mascaramento de Falha por Redundância
  • 14.
    • O termocomunicaçã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. • A tarefa para preservar a Integridade vem de duas premissas: • Qualquer protocolo que retransmita mensagens, mas não rejeite uma mensagem que entregue duas vezes. • Usuários mal-intencionados que podem injetar mensagens modificadas, reproduzir mensagens antigas ou falsificar mensagens. Confiabilidade na comunicação Um para Um
  • 15.
    • Resiliência deProcessos – Replicação de processos em grupos – Grupos Simples ou Hierárquicos • Comunicação Confiável Cliente-Servidor – Falhas de Comunicação – Canal de Comunicação pode exibir falhas por queda, por omissão, arbitrarias – TCP(ponto-a-ponto); RPC • Comunicação Confiável de Grupo – Como implementar entrega confiável de mensagens a todos os processos? • Comprometimento Distribuído – Envolve a realização de uma operação por cada membro de um grupo de processos ou por absolutamente nenhum. Estratégias de Tolerância a Falhas
  • 16.