A apresentação está carregando. Por favor, espere

A apresentação está carregando. Por favor, espere

Bimodal Multicast - Tolerância a Faltas Distribuída – Manuel Costa - 20815 Bimodal Multicast Um protocolo de difusão fiável Manuel Costa 20815.

Apresentações semelhantes


Apresentação em tema: "Bimodal Multicast - Tolerância a Faltas Distribuída – Manuel Costa - 20815 Bimodal Multicast Um protocolo de difusão fiável Manuel Costa 20815."— Transcrição da apresentação:

1 Bimodal Multicast - Tolerância a Faltas Distribuída – Manuel Costa Bimodal Multicast Um protocolo de difusão fiável Manuel Costa 20815

2 Bimodal Multicast - Tolerância a Faltas Distribuída – Manuel Costa Resumo Motivação Algoritmos Probabilísticos O Protocolo Bimodal Multicast (PbCast) Aplicabilidade Conclusão

3 Bimodal Multicast - Tolerância a Faltas Distribuída – Manuel Costa Motivação

4 Bimodal Multicast - Tolerância a Faltas Distribuída – Manuel Costa Motivação A difusão implica a disseminação de informação de um processo para um conjunto de processos –A maneira mais óbvia é transmitir a informação tanto quantos forem os processos de destino Problema: –Numa rede com uma dezena de processos, pode ser... Mas numa rede com milhares de processos, torna-se difícil –Se for necessário que cada processo responda às mensagens recebidas, o número de mensagens duplica! –Se a tolerância a falhas obrigar a um protocolo de duas ou três fases, a rede ficará totalmente congestionada com uma única mensagem!

5 Bimodal Multicast - Tolerância a Faltas Distribuída – Manuel Costa Motivação O que será uma difusão eficiente? –Há dois grandes tipos de protocolos de difusão fiáveis Fiabilidade Forte (Strong reliability) –Oferecem garantias de atomicidade –Sincronismo virtual e garantias de tempo real –Entrega ordenada Fiabilidade Fraca (Best-Effort) –Baseiam-se em Algoritmos Probabilísticos –Recuperam localmente perdas de informação –Garantem alguma fiabilidade

6 Bimodal Multicast - Tolerância a Faltas Distribuída – Manuel Costa Motivação E será fiabilidade igual a eficiência? –Depende: Do que é pretendido Das condições do meio Da criticidade do sistema... –Um factor que não pode ser descurado é a carga que o sistema pode exigir a si próprio. Haverá alguma solução melhor para difundir?

7 Bimodal Multicast - Tolerância a Faltas Distribuída – Manuel Costa Algoritmos Probabilísticos O que é um Algoritmo Probabilístico? –É um tipo de algoritmo que utiliza a característica probabilística dos problemas para os resolver: Exemplo: quase sempre ou quase nunca –Baseiam-se na assumpção de que os sistemas estão sujeitos a falhas. Estas falhas, por sua vez, têm uma dada probabilidade de ocorrer

8 Bimodal Multicast - Tolerância a Faltas Distribuída – Manuel Costa Algoritmos Probabilísticos (cont...) Quais os problemas dos protocolos de Fiabilidade Forte? –São pesados –Não funcionam bem para grupos de difusão com muitos participantes –Em condições de stress ficam instáveis e imprevisíveis Os algoritmos probabilísticos têm maior grau de confiabilidade quanto maior é o número de processos envolvidos –Este facto é medido pela diminuição da probabilidade de falha como aumento do número de processos.

9 Bimodal Multicast - Tolerância a Faltas Distribuída – Manuel Costa Algoritmos Probabilísticos (cont...) Provavelmente, tudo irá funcionar bem, na maior parte dos casos... –O pior caso ocorre quando aproximadamente metade dos processos receberam a mensagem. Quando quase todos ou quase nenhum recebeu a mensagem, está de acordo com o protocolo. –E se não funcionar? Tem que haver um esforço ou um Best-Effort! Porquê utilizar estes algoritmos? –Porque são mais simples –Revelam-se mais estáveis em condições de carga –Baseiam-se na premissa de que os erros são raros –Se estes acontecerem, é feito um esforço de recuperação

10 Bimodal Multicast - Tolerância a Faltas Distribuída – Manuel Costa O Protocolo Bimodal Multicast

11 Bimodal Multicast - Tolerância a Faltas Distribuída – Manuel Costa O Protocolo Bimodal Multicast Também chamado Pbcast –Probabilistic broadcast É um protocolo Best-Effort Tem um comportamento muito previsível –Mesmo em situações de carga, com 25% de perdas de pacotes e com 25% dos processos envolvidos a sofrerem atrasos (transcient performance failures) Não necessita de sincronismo

12 Bimodal Multicast - Tolerância a Faltas Distribuída – Manuel Costa O Protocolo Bimodal Multicast (cont...) Então e como é que funciona? –Imaginemos um conjunto de centenas ou milhares de processos Baseia-se em árvores de difusão –Cada nó da árvore difunde para os vizinhos –Se algum destes tiver filhos, difunde para o seu filho que irá difundir para os seus vizinhos e assim sucessivamente As mensagens de retorno funcionam em sentido inverso, subindo na árvore se for caso disso –Se todos os processos partilharem do mesmo meio de difusão, melhor!

13 Bimodal Multicast - Tolerância a Faltas Distribuída – Manuel Costa O Protocolo Bimodal Multicast (cont...) Ciclos de Processamento –Um processo difunde para todos os processos da sua lista de destinos A gestão da lista de destinos não está contemplada directamente no algoritmo! Pode ser uma difusão para todos os vizinhos que partilhem o meio –Exemplo: IP Multicast Outro protocolo de difusão sem garantia de entrega de mensagem

14 Bimodal Multicast - Tolerância a Faltas Distribuída – Manuel Costa O Protocolo Bimodal Multicast (cont...) Algoritmo Anti-Entropia –Operam numa série de rounds não sincronizados Cada round tem uma duração de pelo menos uma round-trip sobre o canal escolhido (100Ms para o caso do artigo) –Divide-se em duas fases: A primeira fase detecta perdas de mensagens A segunda corrige essas perdas E como? –A fazer fofoca! (Do inglês gossip)

15 Bimodal Multicast - Tolerância a Faltas Distribuída – Manuel Costa O Protocolo Bimodal Multicast (cont...) Princípio da Fofoca Anti-Entropia –Uma mensagem M j é enviada por P a Q e S –Assim que Q recebe M j envia o historial de todas as mensagens recebidas a K membros escolhidos aleatoriamente –Se estes, ao receberem este historial notarem que falta alguma mensagem, pedem a sua retransmissão ao emissor original

16 Bimodal Multicast - Tolerância a Faltas Distribuída – Manuel Costa O Protocolo Bimodal Multicast (cont...) Relação entre a probabilidade de que todos os processos recebam a mensagem e o congestionamento da rede. –Quanto maior for a probabilidade de retransmissão maior será a probabilidade de que todos os processos recebam a mensagem –Maior será também o número de mensagens a circular na rede (maior a sobrecarga da mesma)

17 Bimodal Multicast - Tolerância a Faltas Distribuída – Manuel Costa O Protocolo Bimodal Multicast (cont...) Optimizações possíveis (I) –Só retransmitir se a solicitação para tal for no mesmo round da transmissão original Caso contrário, o processo poderá estar doente Evita respostas simultâneas a vários requisições diferentes –Limitar o historial a retransmitir Evita sobrecarga do processo que irá tentar acompanhar os outros ao ter de o fazer de uma só vez

18 Bimodal Multicast - Tolerância a Faltas Distribuída – Manuel Costa O Protocolo Bimodal Multicast (cont...) Optimizações possíveis (II) –Evitar retransmissões desnecessárias Se um processo ao retransmitir detectar que já retransmitiu para outro algumas das mensagens, não o irá repetir –Most-recent-first As mensagens são retransmitidas numa ordem LIFO para evitar que um processo esteja sempre atrasado em relação ao grupo

19 Bimodal Multicast - Tolerância a Faltas Distribuída – Manuel Costa O Protocolo Bimodal Multicast (cont...) Optimizações possíveis (III) –Numeração independente dos rounds A numeração dos rounds é independentemente feita por cada processo Cada mensagem da fofoca leva o ID da mensagem original A decisão de deitar fora mensagens antigas é estritamente local

20 Bimodal Multicast - Tolerância a Faltas Distribuída – Manuel Costa O Protocolo Bimodal Multicast (cont...) Sobre a ordenação –O protocolo não garante que as mensagens sejam entregues na mesma ordem em todos os processos. –Birman, propôs uma alteração no protocolo que faz esta ordenação. Cada processo só poderá entregar a mensagem para a aplicação quando todos os processos a tiverem recebido. A dificuldade passou a ser determinar quando é que isso acontece!

21 Bimodal Multicast - Tolerância a Faltas Distribuída – Manuel Costa O Protocolo Bimodal Multicast (cont...) Condições para garantir a operação do algoritmo PbCast como descrito –O custo do envio de uma mensagem na rede é sempre o mesmo. Isto não acontece na realidade –As falhas de processo são independentes e são sempre Hard –As falhas de transmissão de mensagens são independentes e são sempre por omissão

22 Bimodal Multicast - Tolerância a Faltas Distribuída – Manuel Costa Aplicabilidade

23 Bimodal Multicast - Tolerância a Faltas Distribuída – Manuel Costa Aplicabilidade Um algoritmo como o PbCast garante –Carga de sistema previsível e estável –Boa escalabilidade –Tolerância a taxas elevadas de falhas de comunicação Um algoritmo como o PbCast não garante –Atomicidade –Entrega ordenada de mensagens –Sincronismo –Gestão de Memberships

24 Bimodal Multicast - Tolerância a Faltas Distribuída – Manuel Costa Aplicabilidade Um algoritmo como o PbCast aplica-se –A sistemas de difusão como video, audio ou outros tipos de streaming pela Internet –Outros sistemas como o do NY Stock Exchange onde a informação do valor de acções tem de ser propagado para vários sistemas informáticos –Sistema PHIDIAS para difusão de imagens de ecrã de radar em sistemas de controlo de tráfego aéreo

25 Bimodal Multicast - Tolerância a Faltas Distribuída – Manuel Costa Conclusão

26 Bimodal Multicast - Tolerância a Faltas Distribuída – Manuel Costa Conclusão Este algoritmo não é a solução completa para todos os problemas de difusão fiável Esta tipo de algoritmos complementa em muitos aspectos, algoritmos mais fortes do ponto de vista da sincronização e atomicidade Pode ser implementado com sucesso em sistemas existentes, pois baseia-se em premissas bastante reais

27 Bimodal Multicast - Tolerância a Faltas Distribuída – Manuel Costa Dúvidas? Questões? Comentários Obrigado


Carregar ppt "Bimodal Multicast - Tolerância a Faltas Distribuída – Manuel Costa - 20815 Bimodal Multicast Um protocolo de difusão fiável Manuel Costa 20815."

Apresentações semelhantes


Anúncios Google