Multicast em Sistemas Distribuídos: Confiabilidade, Ordenação e Gerenciamento de Grupos
Resumo
O texto apresenta conceitos de multicast em sistemas distribuídos, incluindo a diferença entre grupos sobrepostos e não sobrepostos e as propriedades de confiabilidade integridade, validade e acordo. Também descreve os tipos de ordenação de entrega de mensagens (FIFO, causal e total), as funções do serviço de gerenciamento de participação em grupos e os desafios de escalabilidade. Por fim, resume os tipos de comunicação (persistente/transiente e síncrona/assíncrona) e a camada em que opera o middleware.
Pontos-chave
- Grupos sobrepostos permitem que uma entidade pertença a vários grupos; em grupos não sobrepostos, cada processo pertence no máximo a um grupo.
- As três propriedades de confiabilidade do multicast são integridade, validade e acordo.
- Os três tipos de ordenação de entrega são FIFO (preserva a ordem do remetente), causal (preserva a relação de precedência) e total (mesma ordem em todos os processos).
- O serviço de gerenciamento de grupos permite criar e destruir grupos, detecta falhas de membros e notifica mudanças de participação.
- Em comunicação persistente, o middleware armazena a mensagem pelo tempo necessário; na transiente, ela é armazenada apenas durante um tempo.
- Na comunicação síncrona o remetente fica bloqueado até saber que a requisição foi aceita; na assíncrona ele continua executando após transmitir.
Distinção entre Grupos Sobrepostos e Não Sobrepostos
- Grupos Sobrepostos: Entidades podem pertencer a vários grupos.
- Grupos Não Sobrepostos: Qualquer processo pertence, no máximo, a um grupo.
Três Propriedades da Confiabilidade de Mensagens Multicast
- Integridade: A mensagem recebida é a mesma que foi enviada, e nenhuma mensagem é entregue duas vezes.
- Validade: Garante que a mensagem será entregue.
- Acordo: Garante que, se a mensagem é entregue para um processo, então ela é entregue para todos os processos.
Três Tipos de Ordenação de Entrega de Mensagens Multicast
- Ordem FIFO (First-In-First-Out): O primeiro a entrar é o primeiro a sair. Preserva a ordem da perspectiva do processo remetente.
- Ordem Causal: Se uma mensagem acontece antes de outra no sistema distribuído, essa ordem será preservada.
- Ordem Total: Garante a mesma ordem em todos os processos.
Serviço de Gerenciamento de Participação de Grupos de Processos
- Fornece uma interface para mudanças de participação como membro do grupo. Operações: criar e destruir grupos.
- Detecção de falhas: monitora membros do grupo em busca de falhas, como colapso ou membros inacessíveis (falha de comunicação).
- Notifica membros sobre mudanças de participação no grupo, como quando um processo é adicionado ou excluído.
- Expansão de endereço de grupo: usa o identificador do grupo para expandir o identificador para os membros do grupo.
Principais Desafios para a Escalabilidade no Multicast Confiável
- Desafio: Acordo sobre a composição real do grupo antes de entregar uma mensagem.
- Solução mais simples:
- Assumir que existe um acordo sobre quem são os membros do grupo.
- Processos não falham nem se juntam ao grupo enquanto a comunicação está em curso.
Camada de Rede em que Opera o Middleware
Na camada de aplicação.
Comunicação Persistente
Uma mensagem que foi apresentada para transmissão é armazenada pelo middleware (protocolo) durante o tempo que for necessário.
Comunicação Transiente
Armazenada pelo sistema de comunicação somente durante um tempo.
Comunicação Síncrona
O remetente é bloqueado até saber que sua requisição foi aceita.
Comunicação Assíncrona
O remetente continua em execução após transmitir a mensagem.
Baixar
PDF Word HTMLPerguntas frequentes
Qual a diferença entre grupos sobrepostos e não sobrepostos?
Em grupos sobrepostos, uma entidade pode pertencer a vários grupos. Em grupos não sobrepostos, qualquer processo pertence, no máximo, a um grupo.
O que é ordem FIFO no multicast?
É a ordenação em que o primeiro a entrar é o primeiro a sair, preservando a ordem da perspectiva do processo remetente.
Qual a diferença entre comunicação síncrona e assíncrona?
Na comunicação síncrona, o remetente é bloqueado até saber que sua requisição foi aceita. Na assíncrona, o remetente continua em execução após transmitir a mensagem.
Teste-se
Cartões de revisão
Clique em um cartão para ver a resposta.
Teste
Perguntas geradas com IA a partir do documento: verifique as respostas com o texto.