Semelhanças e diferenças entre essas duas abordagens:
Semelhanças
As abordagens baseadas em árvore e malha possuem uma grande
quantidade de semelhanças:
Primeiro, mesmo essas abordagens utilizando algoritmos diferentes para
construção dos overlays, a forma e seu resultado final é bem parecido.
Especificamente a visão superposta de diversas árvores é na verdade a mesma
visão de uma malha aleatória.
Segundo, o fornecimento de conteúdo em ambas as abordagens permite
aos peers receber diferentes partes do conteúdo. No nível do peer, cada peer
recebe conteúdo de vários pais e envia conteúdo para diversos filhos. No nível do
sistema, o conjunto de arestas utilizados para fornecer um único pacote da fonte
para todos os peers participantes forma uma árvore que tem como raiz essa fonte.
Terceiro, ambas as abordagens requerem que o peer participante possua
um tempo de playout “ largamente” sincronizado, que seja suficientemente (T
segundos) atrasado em relação ao tempo de playout da fonte. Isto pede T
segundos de buffer em cada peer, o que acomoda a diversidade de caminhos da
fonte (na abordagem em árvore), e a chegada de pacotes fora de ordem no
fonecimento de conteúdo em swarm (na abordagem em malha). O valor de T
depende da contagem máxima de saltos da fonte para os diversos peers
participantes pelo overlay.
Diferenças
A diferença chave entre as abordagens baseadas em árvore e malha é
como a árvore de entrega de um determinado pacote é formada. Na abordagem
baseada em árvore, a árvore de entrega de todos os pacotes de uma description
em particular corresponde à árvore overlay daquela description. Quando a banda
de uma conexão é menor que a banda da description, os pacotes daquela
description não podem ser enviados na taxa correta para todos os peers
descendentes.
Em contraste, na abordagem baseada em malha, a árvore de entrega de um
determinado pacote é formada dinamicamente enquanto o pacote atravessa o
overlay. Essa formação dinâmica permite que a abordagem em malha utilize de
modo eficaz os recursos disponíveis. Particularmente, quando uma conexão tem
pouca banda disponível, seus peers descendentes podem ainda receber pacotes
por rotas alternativas, de outros pais.
Tendo em vista essas duas diferentes abordagens, vemos que a malha possui
uma performance melhor do que a árvore como topologia possível para streaming
P2P.
Na próxima seção vemos um exemplo recente da aplicação CoolStreaming,
baseada numa "Data-Driven Overlay Network".,