An Implementation and Performance Evaluation of a Peer-to-Peer Chat System
Independent thesis Basic level (degree of Bachelor), 10 credits / 15 HE creditsStudent thesis
Context: Chat applications have been around since the beginning of the modern internet. Today, there are many different chat systems with various communication solutions, but only a few utilize the fully decentralized Peer-to-Peer concept.
Objectives: In this report, we want to investigate to see if a fully decentralized P2P concept is a suitable choice for chat applications. In order to investigate, a P2P architecture was selected and a simulation was implemented in Java. The simulation was used to make a performance evaluation in order see if the P2P concept could meet the requirements of a chat application, and to identify problems and difficulties.
Methods: Two main methods were used in this thesis. First, a qualitative design method was used to identify and discuss different possibilities of designing a distributed chat application. Second, a performance evaluation was conducted to verify the selected and implemented mechanisms are able to obtain their general performance capabilities and to tune them towards anticipated performance.
Results: The simulation proved that a decentralized P2P system can scale and find resources in a network quite efficiently without the need of any centralized service. It also proved to be simpler for the user to use the P2P concept, as no special configurations are needed. However, the selected protocol (Chord) had problems with high rates of churn, which could cause problems in big chat environments. The P2P concept was also shown to be highly complex to implement.
Conclusion: P2P technology is a more complex technology, but it gives the host a lower cost in terms of hardware and maintenance. It also makes the system more robust and fault-tolerant. As we have seen in this report, P2P can scale and find other resources efficiently without the need of a centralized service. However, it will consume more power for each user, which makes mobile devices bad peers.
Place, publisher, year, edition, pages
2015. , 40 p.
Peer-to-Peer, P2P, DHT, Chord, chat application, performance evaluation, implementation
IdentifiersURN: urn:nbn:se:bth-10763OAI: oai:DiVA.org:bth-10763DiVA: diva2:858698
Subject / course
DV1478 Bachelor Thesis in Computer Science
DVGSP Game Programming
Tutschku, Kurt, Professor
Sundstedt, Veronica, Prefect