2. Principais tipos de arquiteturas

   
 
 Arquitetura CIA
     

Abreviação para Centralized Indexing Architecture, consiste na primeira geração de redes ponto-a-ponto. Uma de suas principais características é usar-se de um servidor central que mantém a lista dos arquivos consistentes em cada nó ou um cluster que indexa todos os peers e seus serviços, além de responder pelo processamento dos pedidos de buscas e respostas e fazer a manutenção do sistema. Ao logar numa rede deste tipo, o cliente tem seu diretório atualizado e todas as mensagens de busca ou controle são enviadas ao servidor, que verifica as interseções dos dados inseridos na busca de arquivos com seu banco de dados. Quando um cliente loga nesse tipo de rede, seu diretório é atualizado, e qualquer mensagem relativa a controle ou busca é enviada ao servidor central, que cruza as referências de uma busca com o que está disponível em seu banco de dados e envia a resposta ao cliente. Feito isso, o cliente está liberado para contatar os outros peers . Oferece alta performance de busca e baixo consumo de banda (devido ao fato de as buscas serem repassadas apenas ao servidor central). A rede mais conhecida que ilustra tal tipo de arquitetura é o Napster.

 

 

 
 Arquitetura DIFA
    

     Abreviação para Distributed Indexing with Flooding Architecture.Nessa arquitetura, as redes são completamente descentralizadas, ou seja, é marcada pela ausência de um ponto controlador central. Cada peer autônomo, ou seja, são responsáveis por manter um índice dos serviços que possui, responder caso receba uma busca com resposta positiva ou passar adiante a pesquisa caso a resposta seja negativa.

     Os sistemas pertencentes a esta arquitetura utilizam o sistema de busca por inundação, onde as pesquisas são enviadas a todas as direções, inundando a rede. Para evitar a saturação da rede, cada pesquisa tem um número máximo que nós pelos quais ela passará, porém, a ausência de um servidor pode fazer com que o tempo de busca seja muito elevado e nem sempre esta é eficiente.

     Como exemplo, temos o sistema Gnutella. Neste caso, quando um peer precisava de algum documento, enviava um pedido a cada peer na sua lista de contatos e estes, por sua vez, repassam aos de suas respectivas listas a consulta e quem puder atender à solicitação, enviá-la diretamente ao peer solicitante .Porém o excesso de mensagens com o mesmo propósito na rede tornar-se-ia redundante e, para isso, existe um campo em cada mensagem chamado TTL (time-to-live), que é o tempo de sobrevivência que resta àquela mensagem.A medida que a mensagem vai saltando de peer a peer, esse valor TTL vai diminuindo e quando o primeiro deles chega a zero (mensagem chegou ao destino), todas as mensagens com o mesmo fim que encontram-se dispersas na rede são descartadas.


 
 Arquitetura DIHA
     Abreviação para Distributed Indexing with Hashing Architecture, ilustra as redestotalmente descentralizadas que fazem busca por Hash, isto é, as pesquisas são enviadas somente na direção do peer correto, o que contém o espaço de índices procurado.
     Neste sistema, cada peer, ao invés de ser responsável pelo índice dos arquivos que ele possui, recebe uma porção dos índices e, ao sair, passa esse índice adiante.