One of the most fundamental problems in the realm of peer-to-peer systems consists of determining their service capacity. In this paper, we first propose a new Markovian model to compute the throughput of peer-to-peer systems. Then, we present a simple approximate model for obtaining the system throughput for large peer populations. From the models, we obtain novel insights on the behavior of P2P swarming systems which motivate new mechanisms for publishers and peers to improve the overall performance. In particular, we show that if publishers adopt the most deprived peer selection, and peers reduce their service rate when they have all the file blocks but one, the system's capacity can significantly increase.Index Terms-scalability, peer-to-peer systems, analytical model, P2P
I. INTRODUÇÃOSistemas par-a-par (peer-to-peer ou P2P) têm tido muito sucesso na disseminação de conteúdo na Internet e importantes empresas têm adotado essa arquitetura. Por exemplo, a Blizzard entertainment distribui arquivos grandes via o Blizzard downloader queé baseado no BitTorrent Opensource. O Linux Ubuntu tambémé disponível para download via BitTorrent. A Amazon Simple Storage Service (Amazon S3) e uma infraestrutura de armazenamento e distribuição de dados e também suporta o protocolo BitTorrent para distribuir arquivos. Propostas recentes sugerem o uso de P2P para distribuição de grandes arquivos em redes orientadas a conteúdo [1], dando origem a uma Network Swarm Architecture. Arquiteturas P2P têm sido estudadas por mais de uma década e inúmeros modelos para entender o seu desempenho foram propostos. Por exemplo, modelos para determinar o impacto dos mecanismos de incentivo e das taxas de upload e download sobre a performance; do efeito do chamado free riding [2]; da forma com que arquivos são disseminados; e modelos para estudar a equidade (fairness) do sistema e ainda a disponibilidade de conteúdo no swarm [3], [4]. Além disso, estudos têm sido realizados sobre as estratégias de distribuição de blocos (pieces) e escolha dos peers para transmissão [5]. Apesar dos inúmeros artigos naárea, apenas recentemente a escalabilidade do sistema começou a ser melhor equacionada. Em outras palavras, sistemas P2P eram ditos escaláveis uma vez que cada novo usuário no sistema a ele acrescenta novos recursos e, portanto, a capacidade total disponível deveria aumentar proporcionalmente aos recursos incorporados. Consequentemente,é esperado que a vazão do sistema cresça linearmente e sem limites com o aumento da população. Entretanto, limitações intrínsecasà arquitetura P2P têm sido observadas. Recentemente Hajek e Zhou [6] mostraram que se a taxa de chegada λ de peers no sistema for maior que a capacidade U do servidor de conteúdo dedicada ao swarm, a população de usuários cresce sem limites quando peers e blocos são escolhidos de forma aleatória. Menasché et al [7] avaliaram o impacto de diferentes estratégias e parâmetros do sistema sobre a sua vazão (ou, analogamente, sobre a estabilidade do sistema). Os resultados indicaram que, quando o se...