A Generic Connectivity Service for peer-to-peer applications

Postgraduate Thesis uoadl:2886992 227 Read counter

Unit:
Κατεύθυνση / ειδίκευση Υπολογιστικά Συστήματα: Λογισμικό και Υλικό (ΣΥΣ)
Πληροφορική
Deposit date:
2019-12-06
Year:
2019
Author:
Aslanoglou Christos
Supervisors info:
Μέμα Ρουσσοπούλου, Αναπληρώτρια Καθηγήτρια, Τμήμα Πληροφορικής και Τηλεπικοινωνιών, Ε.Κ.Π.Α.
Original Title:
A Generic Connectivity Service for peer-to-peer applications
Languages:
English
Translated title:
A Generic Connectivity Service for peer-to-peer applications
Summary:
With the advent of cloud computing, all data flows among users of applications follows a de facto route, through third party services. In fact, data, before reaching their recipient, are stored in cloud storage, even though not always needed. Additionally, services on the internet always try to lock-in their users and their friends. In this thesis we present the design, implementation and evaluation of Generic Connectivity Service (GCS), a middle- ware service facilitating peer-to-peer connection establishment among applications run- ning on users’ devices. Simultaneously, GCS aims to give back to users the management of their contacts list. Thus, decoupling applications from handling each users’ friends-list.
Our system comprises a network of GCS nodes and a daemon running on each user’s device. Users connect to GCS network, thus rendering their devices available for con- nection requests. Applications running on a user’s device request a connection towards one of her friends through the daemon component. In sequence, the daemon forwards a connection request to GCS and if callee accepts the connection, more control messages are exchanged, necessary for connection establishment. Once a peer-to-peer channel is established, the two applications can communicate without their data flowing through GCS nor a third party cloud service.
We have provided both a centralized and a distributed version of our system. The latter of course, mitigates a single point of failure, thus improving our system’s availability and fault tolerance. In the distributed version of our system, GCS nodes form a Distributed Hash Table which is used as a routing layer for control messages. Finally, an enticing property of our system is that it allows connection establishment among users even behined NATs and firewalls.
Main subject category:
Technology - Computer science
Keywords:
Middleware, Distributed Hash Table, Peer-to-Peer Communication
Index:
Yes
Number of index pages:
4
Contains images:
Yes
Number of references:
34
Number of pages:
42
Aslanoglou-MSc-Thesis.pdf (910 KB) Open in new window