Software-Based Replication for Fault Tolerance Apresentação do tema por João Ramires Tolerância a Faltas Distribuída Mestrado em Informática FCUL 1999/ ppt carregar
Software-Based Replication for Fault Tolerance Apresentação do tema por João Ramires Tolerância a Faltas Distribuída Mestrado em Informática FCUL 1999/2000.
PublicouMatheus Macario Alterado mais de 3 anos atrás
Apresentação em tema: "Software-Based Replication for Fault Tolerance Apresentação do tema por João Ramires Tolerância a Faltas Distribuída Mestrado em Informática FCUL 1999/2000."— Transcrição da apresentação:
1 Software-Based Replication for Fault Tolerance Apresentação do tema por João Ramires Tolerância a Faltas Distribuída Mestrado em Informática FCUL 1999/2000 Prof. Luís E.T.Rodrigues
2 2 Técnicas de Replicação Primary-Backup Primary recebe pedidos do cliente e responde. Backups interagem com primary e não com o cliente.
3 3 Técnicas de Replicação Primary-Backup Update (invID,res,state-update) Op(arg),invID Ack Res OK(res) PiPi Prim X 1 Bck X 2 Bck X 3 A B C Crash A - Antes de enviar Update. Crash B - Depois ou durante o envio mas antes de P i receber Res. Crash C - Depois de P i receber Res.
4 4 Técnicas de Replicação Primary-Backup - Eleger novo Prim. A - P i não recebe Res : suspeita falha e reenvia. Novo Prim considera invID nova. B - Todos ou nenhuns Bcks recebem Update : - Se nenhum recebe : caso A; - Se todos recebem e P i reenvia o mesmo invID, novo Prim responde imediatamente Res para P i. C - Crash transparente a P i.
5 5 Técnicas de Replicação Active replication (State-Machine Approach) Todas as réplicas recebem a tarefa sem o controlo centralizado de um Primary. - Cada réplica processa Op(arg), faz update do seu estado e responde Res a P i. - P i espera até receber o primeiro Res. O crash de X k é transparente a P i : P i nunca reenvia Op(arg).
6 6 Técnicas de Replicação Active replication Op(arg) Res OK(res) PiPi X1X1 X2X2 X3X3
7 7 Comunicação em grupo Static vs dynamic groups Static - X k pertence a g x antes e depois da recuperação de X k. Dynamic - sistema remove X k de g x quando X k falha; se X k recupera, é inserido novamente em g x. Primary-backup : se Prim falha, g x elege novo Prim -- Dynamic. Active : se X k falha, não necessita de operações especiais -- Static. g x - representa o grupo de réplicas dos servidores X.
8 8 Comunicação em grupo Active replication Requer primitiva de total-order multicast : TOCAST(m, g x ). Propriedades TOCAST : Order : Se X j e X k entregam m1 e m2, réplicas entregam ambas as mensagens pela mesma ordem. Atomicity : Se X j  g x entrega m, então todas as réplicas de g x entregam m. Termination : P i executa TOCAST(m, g x ). Se P i é correcto, então todas as réplicas correctas em g x eventualmente entregam m.
9 9 Comunicação em grupo Primary-backup Não requer primitiva TOCAST - Prim define a ordem de invocação. E se Prim falha ? - requer primitiva de comunicação em grupo. Prim é invocado por P i e falha quando envia update a X 2 e X 3 -- apenas X 2 recebe update. g x define V i+1 (g x )={X 2, X 3 } e X 2 passa a Prim. Os estados de X 2 e X 3 são inconsistentes.
10 10 Comunicação em grupo Primary-backup Evitamos a inconsistência se garantirmos que todas ou nenhuma das réplicas recebem update -- view- synchronous multicast. X k envia m(i) para a view V i (g x ) -- VSCAST garante que: - todas as réplicas de V i (g x ) eventualmente entreguem m(i) ou - o sistema define uma nova view V i+1 (g x ).
11 11 Comunicação em grupo View-synchronous multicast (VSCAST) A - todas as réplicas entregam m(i). B - [sistema define nova view] todas as réplicas de V i (g x )  V i+1 (g x ) distribuem m(i) antes de distribuir V i+1 (g x ). X1X1 X2X2 X3X3 V i (g x )= {x 1,x 2,x 3 } m(i) X1X1 X2X2 X3X3 V i (g x ) m(i) V i+1 (g x )= {x 2,x 3 } AB Crash
12 12 Comunicação em grupo View-synchronous multicast (VSCAST) C - [sistema define nova view] nenhuma réplica de V i (g x )  V i+1 (g x ) distribui m(i). D - uma réplica trata m(i) em V i (g x ) e outra em V i+1 (g x ) -- VSCAST previne este cenário. X1X1 X2X2 X3X3 V i (g x ) m(i) V i+1 (g x ) Crash X1X1 X2X2 X3X3 V i (g x ) m(i) V i+1 (g x ) Crash CD
Carregar ppt "Software-Based Replication for Fault Tolerance Apresentação do tema por João Ramires Tolerância a Faltas Distribuída Mestrado em Informática FCUL 1999/2000."