1 / 25

Protocolos de Recuperação

Protocolos de Recuperação. Márcio Augusto Sekeff Sallem. Sistemas Distribuídos. Coleção de processos Meio de comunicação: rede Susceptíveis a falhas Protocolos de Recuperação de Falhas Solução. Sistemas Distribuídos. Aplicações: Sistemas Cliente-Servidor Processamento de Transações

Télécharger la présentation

Protocolos de Recuperação

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Protocolos de Recuperação Márcio Augusto Sekeff Sallem

  2. Sistemas Distribuídos • Coleção de processos • Meio de comunicação: rede • Susceptíveis a falhas • Protocolos de Recuperação de Falhas • Solução

  3. Sistemas Distribuídos • Aplicações: • Sistemas Cliente-Servidor • Processamento de Transações • Computação Científica • WWW

  4. Protocolos de Recuperação de Falhas • Objetivo: estado de consistência global • Linha de recuperação • Checkpoint: informação mínima de recuperação • Técnicas • Transparentes • Participação do usuário

  5. Protocolos de Recuperação de Falhas • Problemas • Trocas de mensagens • Efeito dominó • Metodologias • Checkpoints • Logging

  6. Protocolos de Recuperação de Falhas - Modelagem • Sistema • Número fixo de processos • Comunicação confiável ou não • Execução do processo • Seqüência de intervalos de estado • Estados são determinísticos • Estados são iniciados por eventos não-determinísticos • Não admite falhas durante recuperação

  7. Protocolos de Recuperação de Falhas - Modelagem • Estados Consistentes • Estados Inconsistentes po m p1 po m p1

  8. Protocolos de Recuperação de Falhas - Modelagem • Mundo exterior • Características dos processos • Não podem falhar • Não mantém estados • Não participam do protocolo de recuperação • Causa efeitos irreversíveis • Problemas • Confirmação externa • “Gagueira”

  9. Protocolos de Recuperação de Falhas - Modelagem • Encarnações • Evitam recebimento de mensagens duplicadas • Anexa a mensagem • Incrementada após recuperação do processo • Mensagens em trânsito • Consideradas em comunicação confiável • Comunicação não confiável • Perda de mensagem por falha do processo ou comunicação?

  10. Protocolos de Recuperação de Falhas - Modelagem • Determinismo • Protocolos de logging • Recriar os eventos não-determinísticos • Determinantes dos eventos • Armazém estável • Coleta de lixo

  11. Protocolos baseados em Checkpointing • Conceito de linha de recuperação • Vantagens • Pouco restritivas • Simples • Desvantagens • Interações com o mundo externo • Sem garantia de regeneração do estado pré-falha • Tipos • Sem coordenação • Com coordenação • Induzidos

  12. Checkpointing sem Coordenação • Funcionamento • Falha no processo • Broadcast com solicitação de dependência • Cálculo da linha de recuperação • Vantagem • Autonomia para o processo • Desvantagens • Efeito dominó • Checkpoints desnecessários • Overhead em coletas de lixo • Aplicações com o mundo exterior

  13. Checkpointing Coordenado • Com bloqueio: em duas fases • Overhead • Sem bloqueio • Mensagens causam inconsistências • Exemplos • Marcadores sobrepostos em mensagens c/ Iniciador • Relógios sincronizados • Mínimo checkpoint coordenado

  14. Checkpointing Coordenado • Vantagens • Estado consistente global • Simplifica a recuperação • Evita o efeito dominó • Redução do overhead • Sem coleta de lixo • Desvantagem • Latência: comunicação com o mundo exterior

  15. Checkpointing Induzido por Comunicação • Checkpoints • Local • Forçado: andamento da linha de recuperação • Sem coordenação • Protocolo de coordenação sobreposto em mensagens de controle

  16. Checkpointing Induzido por Comunicação • Baseados em modelo • Padrões de comunicação e checkpoints • Prática conservadora: maior número de checkpoints • Baseados em índice • Marcas de tempo

  17. Protocolos baseados em Logging • Execução de processo • Seqüência de intervalos de estado determinísticos • Estado iniciado por evento não-determinístico • Armazém estável • Determinantes dos eventos não-determinísticos • Checkpoints • Não ocorre processos órfãos

  18. Logging Pessimista ou Síncrono • Assume que falhas podem ocorrer após qualquer evento não-determinístico • Sincronismo: se um evento não for armazenado no armazém estável, então nenhum processo pode depender dele • Overhead • Vantagens • Comunicação com o mundo exterior • Limitação da recuperação (checkpoints)

  19. Logging Otimista ou Assíncrono • Escrita em memória volátil e no armazém estável • Menor overhead • Não há bloqueios • Desvantagens • Recuperação mais complexa • Surgimento temporário de órfãos

  20. Logging Otimista ou Assíncrono • Protocolos de recuperação otimista • Síncrono: o próprio processo calcula a linha de recuperação baseado em informações e em dependências • Assíncrono: o processo envia mensagem de recuperação. Quaisquer outros processos que ficarem “órfãos” enviam também a mensagem. • Recuperação exponencial.

  21. Logging Casual • Vantagens do logging otimista • Sem acesso síncrono, exceto em operações com o mundo exterior • Vantagens do logging pessimista • Autonomia dos processos • Sem surgimento de órfãos • Linha de recuperação curta (um checkpoint) • Altamente complexo • Casualidade

  22. Implementações • Acesso ao armazém estável • Alto custo • Favorece checkpoint coordenado (poucos acessos) • Comunicação entre processos: pouco gasto • Checkpoints sem coordenação eram melhores antigamente • Checkpoints induzidos por mensagem não são escaláveis para muitos processos

  23. Implementações • Protocolos e canais de comunicação • Sem conceito de posição local (usa-se máscara de posição atual) • Canais confiáveis? • Logging • Cópia de mensagens: armazenamento no destinatário ou remetente? • Uso dobrado do canal de comunicação

  24. Implementações • Armazém estável: discos magnéticos • Não-determinismo: interação processo/SO com eventos assíncronos • Idempotentes: retornam valor determinístico • As que precisam ser gravadas e não re-executadas (ex: estado do ambiente) • As que precisam ser gravadas e ré-executadas (ex: alocação de memória, instanciação)

  25. Conclusões • Checkpoint • Pouca comunicação com o mundo exterior • Recuperação simples • Eficaz • Logging • Alta comunicação com o mundo exterior • Maior overhead • Checkpoint coordenado: melhor solução

More Related