Protocolo de fofocas em uma topologia de anel

5

Estou implementando um mecanismo de detecção de associação baseado em fofocas. Vamos dizer que temos uma topologia de anel, ou seja, o node1 só conhece os dois nós (node4 e node2) em torno dele.

                node1
             -        -
          -              -
      node4              node2
          -              -
            -         -
               node3

Agora, a fofoca diz: Escolha um nó aleatoriamente na lista de membros. Mas, se seguirmos estritamente a topologia em anel, então o node1 deve apenas tentar fofocar com node2 ou node4. De outro modo, somente para comunicação, a topologia se tornará um grupo, em vez de um anel.

Antecedentes: De acordo com o jornal dyanmo da Amazônia:

Each node contacts a peer chosen at random every second and the two nodes efficiently reconcile their persisted membership change histories.

Se for esse o caso, então a implementação do dínamo não segue uma topologia de anel "true" e só usa o anel para hashing consistente (replicação) e usa um clique para detecção de associação?

    
por zengr 20.03.2011 / 21:29
fonte

1 resposta

2

No seu exemplo:

Eu não acho que um nó sabe quais são seus vizinhos diretos. Só tem 2 vizinhos, não sabe qual.

O nó 4 quer conversar com o nó 3:

  • O nó 4 envia a mensagem para o nó 1 (apenas a direção do anel).
  • O nó 1 vê que a mensagem não é para ele e passa para o nó 2.
  • O nó 2 vê que a mensagem não é para ele e passa para o nó 3.
  • O nó 3 recebe a mensagem, vê que é para ele e a analisa.

"Gossiping" é onde o nó 1 e 2 ouvem a conversa (o que ajuda a facilitar). Ao ouvir que eles ouvem sobre um nó 4 e um nó 3, ambos podem ser adicionados à sua lista de membros.

Os nós 1 e 2 agora podem perguntar aos nós 4 e 3 quais outros membros eles conhecem.

Digamos que o nó 1 pergunte primeiro ao nó 4. O nó 2 e 3 descobrirão a existência do nó 1 ouvindo as fofocas.

Ninguém sabe sobre o nó 2 neste momento, mas eventualmente ele também revelará sua presença perguntando a outro membro por sua lista de membros.

Isso não quebra as linhas de comunicação de qualquer forma.

    
por 06.05.2011 / 02:03
fonte