Algoritmo de Comunicação com Falhas


7

Estou interessado em algoritmos distribuídos, especialmente em comunicação em rede com falhas.

Eu procuro a prova do seguinte algoritmo aleatório de comunicação em rede com falhas. Para mim, parece um resultado muito geral na comunicação, mas ainda não encontrei a prova.

Algoritmo : Inicialmente, apenas o vértice tem a mensagem; no final do algoritmo, todos os vértices da rede devem ter a mensagem.v0

Em cada rodada, todo vértice que tem a mensagem escolhe o vizinho aleatoriamente e envia a mensagem.

Pressupostos : apenas falhas podem ocorrer nas arestas entre os vértices. T = O (\ log n) - complexidade do tempo e toda a rede conhecerá a mensagem com alta probabilidade, quando f <n / 3 , onde n - número de vértices.fT=O(logn)f<n/3

Agradeço pelo link ou referência ao artigo.

Respostas:


5

O problema que você declara está muito próximo do problema do Contrato Bizantino com links com defeito. No entanto, não está claro para mim quais são as garantias que você procura em seu algoritmo.

O algoritmo que você fornece não resolve o problema do contrato bizantino. Especificamente, se a parte que detém a mensagem estiver corrompida e ela começar enviando para algum jogador, mas também para outro jogador, seu algoritmo não convergirá (ou seja, talvez todos tenham , mas também terão e não saberá qual é a mensagem que foi enviada originalmente). Se você não se importa com o fato de as partes terem , por que não apenas enviar a mensagem a todas as partes (repetidas por cada nó)?v0vv0vv

Observe que quando os links falham, há uma questão de conectividade . Por exemplo, se um dos nós não estiver conectado a nenhum outro nó (todas as arestas estão com defeito), esse nó nunca receberá a mensagem. Obviamente, se o número de arestas defeituosas for menor que e assumindo que cada um dos nós esteja conectado, não haverá nenhum problema.fn/3

O artigo a seguir pode estar em sua ajuda: Vassos Hadzilacos, Exigências de conectividade acordo bizantina sob tipos restritos de falhas , Distributed Computing ., Volume 2, Issue 2, pp 95-103, 1987. Esse artigo trata acordo bizantina com defeituoso nós e ligações defeituosas, e isso vale para qualquer arquitetura do gráfico subjacente (contanto que alguma condição conectividade segura).tk

Você também pode dar uma olhada no caso em que apenas os nós estão com defeito. Ver, por exemplo, K. Perry, Contrato Bizantino Aleatório , IEEE Trans. em Engenharia de Software , Vol. SE-11, Edição 6, pp. 539-546, 1985.


4

Primeiro, vamos analisar o caso sem falhas:

O algoritmo que você está descrevendo, ou seja, encaminhar a mensagem para um vizinho escolhido aleatoriamente de maneira uniforme, é essencialmente um algoritmo de fofocas .

Claramente, o limite não se aplica a redes arbitrárias, que podem ter um diâmetro de ; portanto, o algoritmo terminará com probabilidade em rodadas .O(logn)ω(logn)0O(logn)

O modelo (sem falhas) foi estudado, por exemplo, em [1], mas há muito trabalho anterior (consulte as referências em [1]):

Nesse modelo, os nós não conhecem a topologia global da rede e podem iniciar o contato apenas com um único vizinho em cada rodada.

[1] mostra o limite superior geral de que é a condutância do gráfico.O(ϕ1logn)ϕ

Com relação ao caso em que os links podem falhar: estou assumindo que você está falando sobre o modelo de falha em que as mensagens podem ser perdidas pelos links e não corrompidas, certo?f

Aqui a resposta depende de que tipo de adversário você está olhando. O adversário escolhe antecipadamente as falhas ou pode observar as escolhas aleatórias do algoritmo? No primeiro caso, podemos simplesmente descartar esses links de e obter uma nova rede (mais esparsa) com condutância , que produz o limite superior , (por o menor possível ).ffGGψO(ψ1logn)ψ

[1] Computação global em um mundo mal conectado: rumores rápidos se espalhando sem dependência de condutância. http://arxiv.org/abs/1104.2944 Por Keren Censor-Hillel, Bernhard Haeupler, Jonathan A. Kelner, Petar Maymounkov

Ao utilizar nosso site, você reconhece que leu e compreendeu nossa Política de Cookies e nossa Política de Privacidade.
Licensed under cc by-sa 3.0 with attribution required.