Dokument: Peer-to-Peer Mechanisms for Fully Decentralized, Secure and Scalable Online Social Networks

Titel:Peer-to-Peer Mechanisms for Fully Decentralized, Secure and Scalable Online Social Networks
URL für Lesezeichen:https://docserv.uni-duesseldorf.de/servlets/DocumentServlet?id=55329
URN (NBN):urn:nbn:de:hbz:061-20210202-135259-6
Kollektion:Dissertationen
Sprache:Englisch
Dokumententyp:Wissenschaftliche Abschlussarbeiten » Dissertation
Medientyp:Text
Autor: Masinde, Newton [Autor]
Dateien:
[Dateien anzeigen]Adobe PDF
[Details]942,8 KB in einer Datei
[ZIP-Datei erzeugen]
Dateien vom 28.01.2021 / geändert 28.01.2021
Beitragende:Jun.-Prof. Dr. Graffi, Kalman [Gutachter]
Prof. Dr. Conrad, Stefan [Gutachter]
Dewey Dezimal-Klassifikation:000 Informatik, Informationswissenschaft, allgemeine Werke » 004 Datenverarbeitung; Informatik
Beschreibungen:Die Nutzung der sozialen Medien im einundzwanzigsten Jahrhundert beeinflusst viele Bereiche des täglichen Lebens. Je nach den Vorzügen der Nutzer stehen verschiedene soziale Medienplattformen zur Verfügung, wie z.B. soziale Netzwerke wie Facebook und LinkedIn, Blogs z.B. Tumblr und WordPress, Mikroblogs z.B. Twitter und Videoplattformen wie YouTube. In den letzten zehn Jahren haben soziale Netzwerke viel Aufmerksamkeit erhalten, da sie auf eine zentralisierte Computerplattform angewiesen sind. Wir fassen die Bedenken in zwei Kategorien zusammen: kumulierte Kosten aufgrund der Zentralisierung sowie Sicherheits- und Datenschutzbedenken, die dadurch entstehen, dass ein einziger Anbieter alle hochgeladenen Daten kontrolliert und besitzt. Die Notwendigkeit, die Kosten auszugleichen, führt zu einer Monetarisierung der Benutzerdaten, was zu Bedenken hinsichtlich des Datenschutzes führt. Ein weit verbreiteter Vorschlag ist der Übergang zu einem dezentralisierten Modell der Datenverarbeitung, von dem wir erwarten, dass es die Probleme lösen wird. Ein föderiertes Netzwerk ist ein Bruch mit dem zentralisierten Modell, bei dem die Dienste von mehreren unabhängigen Anbietern bereitgestellt werden. Diese Dezentralisierung ermöglicht es dem Netzwerk auch widerstandsfähig gegen Zensur zu werden und reduziert die durch die Zentralisierung entstehenden Kosten deutlich, wenn sie nicht sogar vollständig.


Wir verfolgen die Idee der vollständigen Dezentralisierung der Systemarchitektur durch Einsatz des Peer-to-Peer (P2P)-Modells, um beiden Anliegen gerecht zu werden. Es überträgt die Infrastrukturkosten von den Anbietern auf die Nutzer, die nun direkt die Infrastruktur bereitstellen, um das Netzwerk am Laufen zu halten. Es stellt auch sicher, dass die Daten der Benutzer privat sind und zugriffsgeschützt auf den Geräten der Benutzer gespeichert werden. Außerdem stellt es sicher, dass das Netzwerk der Zensur standhält. Die Verwendung der P2P-Technologie bringt jedoch die Herausforderung mit sich, Mechanismen zu entwickeln, welche die Dienstverfügbarkeit so verbessern, dass sie der von zentralisierten sozialen Online-Netzwerken (OSNs) angebotenen entspricht.

Um die P2P-Technologie für die Implementierung von OSNs zu motivieren, untersuchen wir soziale Netzwerke im Allgemeinen, um die Benutzeranforderungen und funktionale und nicht-funktionale Systemanforderungen zu ermitteln. Aus diesen Anforderungen leiten wir die technischen Anforderungen in eine Vier-Komponenten-Architektur ab, die sich aus dem Overlay, dem Basis-Framework, den sozialen Netzwerkelementen und der grafischen Benutzeroberfläche zusammensetzt. Das Overlay bietet Unterstützung für Adressverwaltung, Routing und Sicherheit. Speicherung, Kommunikation, Suchmechanismen, Zugriffskontrollmechanismen und Überwachungsfunktionen sind die Komponenten des Basis-Frameworks. Die Elemente des sozialen Netzwerks bilden die Anwendungskomponente, und verfolgen das Ziel einer modularen Erweiterbarkeit. Für eine Übersicht, führen wir eine eingehende Studie über verschiedene Mechanismen der P2P-Komponenten durch, welche die technischen Anforderungen erfüllen. Dann untersuchen wir mehrere vorgeschlagene P2P-OSNs, die untersucht wurden, um die Implementierungen zu vergleichen und zu vergleichen, was sie leisten, um die Benutzer-, System- und technischen Anforderungen zu erfüllen.

Wir bauen unsere Forschung auf LibreSocial auf, einem P2P-Framework für OSNs, der seit 2008 kontinuierlich weiterentwickelt wird. Zuerst geben wir eine ausführliche Beschreibung an, da seine Struktur noch nicht in dieser Tiefe vorgestellt worden ist. Wir betrachten LibreSocial als idealen Kandidaten für ein P2P-OSN, da es sich leicht erweitern lässt, um die herausfordernden Anforderungenzu erfüllen. Daneben erfüllt LibreSocial die definierten technischen Aspekte unter Verwendung eines modularen Designs, um ein Zero-Trust-Netzwerk zu erreichen. Anschließend führen wir detaillierte Benchmarking-Tests zu LibreSocial durch. Die Tests zielen darauf ab, die Interaktion zwischen den sozialen Netzwerkelementen untereinander und den zugrundeliegenden Diensten, welche die P2P-Komponenten bereitstellen, aufzuzeigen. Wir wollen als Ziel herausfinden, ob LibreSocial in der echten Welt funktionieren, wie gut es sich skalieren lässt, wie gut es Churn bewältigt und dabei stabil bleibt und wie die Speichereigenschaften, insbesondere die Anzahl der Replikate (Replikationsfaktor), die Leistung der Anwendung beeinflussen. Wir zeigen, dass die Elemente des sozialen Netzwerks gut miteinander harmonieren und dass die zugrunde liegenden Dienste, welche die P2P-Komponenten bieten, das Netzwerk angemessen unterstützen. Wir zeigen auch, dass das Netzwerk bis zu 2000 Knoten ohne Dienstdegradation skaliert und Churn gut verkraftet, da es stabil bleibt. Darüber hinaus weisen unsere Ergebnisse zur Auswirkung des Replikationsfaktors auf die Notwendigkeit hin, die Anzahl der Replikate zu erhöhen, wenn das Netzwerk skaliert, um die Dienstqualität aufrechtzuerhalten.

Als eine Möglichkeit zur Verbesserung der Dienstbereitstellung schlagen wir drei Mechanismen vor. Die ersten Mechanismen, auf Metadaten basierende Suchtechniken, ermöglichen das Auffinden von Dokumenten, die in einer verteilten Datenstruktur, wie z.B. einer verknüpften Liste oder Menge, gespeichert sind, unter Verwendung einer Multi-Attribut-Abfrage, indem sie die Suchtechniken und die Join-Algorithmen berücksichtigen. Wir stellen die zwei Suchtechniken Exhaustive und First-Match sowie vier Join-Algorithmen vor: Simple LocalJoin, Parallel LocalJoin, asynchroner NetworkJoin und BloomJoin. Wir betrachten auch drei verteilte Datenstrukturen, Binary Tree, Deep Tree und Customized Broad Tree. Wir zeigen, dass die passende Kombination aus Suchtechnik, Join-Algorithmus und verteilter Datenstruktur notwendig ist, um eine optimale lokale und Netzwerk-Performance zu erreichen.

Der zweite Mechanismus, den wir vorschlagen, ist ein sozialer Caching-Mechanismus, der sich soziale Daten zunutze macht, um die Datenverfügbarkeit zu verbessern. Mit diesem Mechanismus wollen wir die Anzahl der Overlay-Anfragen verringern, indem wir die Daten zur sozialen Interaktion nutzen, um eine aktive Verbreitung für häufig abgerufene Daten zu implementieren und diese in einem sozialen Cache zwischenzuspeichern. Wir implementieren drei Strategien zur Auswahl der Benutzer, deren Daten zwischengespeichert werden sollen: Zufalls-, Trend- und Social-Score-Auswahlstrategien. Wir zeigen, dass die Social-Score-Funktion die beste Lösung aus den dreien bietet. Unter Nutzung der Social-Score-Strategie implementieren wir einen Social-Cache-Mechanismus und zeigen, dass wir in Verbindung mit dem regulären Cache 99\% cachebasierte Abrufe erreichen können, allerdings mit gewissen Kosten für das Netzwerk aufgrund der Kombination aus aktiver Datenverbreitung und regelmäßigen Aktualisierungen des regulären Caches.

Der letzte Mechanismus, den wir vorschlagen, ist ein Kapazitätsmanagementprotokoll, um die heterogene Natur des sozialen Netzwerks durch die Unterscheidung zwischen starken und schwachen Knoten zu behandeln. In einem sozialen Netzwerk verbinden sich die Benutzer mit verschiedenen Geräten mit unterschiedlichen Kapazitäten (Speicher, Bandbreite und Verarbeitungsleistung). Darüber hinaus ist die Art der Verbindung (LAN/WLAN oder Volumentarif) von Bedeutung. Daher gelten Geräte mit geringer Kapazität oder Geräte, die über volumenbasierte Verbindungen verbunden sind, als schwache Knoten. Um ein stabiles Netzwerk zu gewährleisten, wollen wir verhindern, dass sich die schwachen Knoten an der Routing und Speicherung von Replikationsdaten teilnehmen. Wir zeigen, dass dies mit unserem Kapazitätsmanagementprotokoll erreichbar ist. Wir zeigen auch, dass es möglich ist, bis zu 75\% des Netzwerks aus schwachen Knoten zusammenzusetzen und ein stabiles Netzwerk aufrechtzuerhalten, auch wenn es zu einer gewissen Verschlechterung der Dienstbereitstellung kommt.

Abschließend zusammengefasst stellen wir in dieser Arbeit die Bedenken dar, die gegenüber den derzeit populären OSNs geäußert wurden und zu Vorschlägen für die Erwägung dezentralisierter Lösungen, insbesondere P2P, führen. Wir geben die Gründe für die Wahl der P2P-Plattform an und diskutieren die technischen Herausforderungen eines solchen Schrittes. Unser Survey zu dezentralen OSN ermittelt die Benutzer- und Systemanforderungen, die erforderlich sind, um die technischen Voraussetzungen für ein P2P-Framework für OSNs zu definieren. Wir stellen LibreSocial als ein P2P-basiertes OSN vor, das die spezifizierten technischen Anforderungen erfüllt, und durch eine Reihe von Benchmarking-Tests zeigen wir, dass LibreSocial in realistischen Szenarien mit bis zu 2000 Nutzern stabil, performant und kostengünstig funktioniert. Wir schlagen außerdem drei Mechanismen zur Verbesserung der Dienstbereitstellung vor, metadatenbasierte Suchtechniken für verteilte Datenstrukturen, einen Social-Caching-Mechanismus für eine verbesserte Datenverfügbarkeit und schnellere Abrufe sowie ein Kapazitätsverwaltungsprotokoll zur Unterstützung heterogener Knoten. Mit diesen Beiträgen gehen wir auf die offenen Fragen ein, die in dieser Dissertation aufgestellt wurden, und ermöglichen die Nutzung von LibreSocial in Anwendungsfällen, die in der realen Welt anzutreffen sind.

Social media usage in the twenty-first century has infiltrated many facets of everyday life. Depending on the users’ needs, different social media platforms are available, such as social networks like Facebook and LinkedIn, blogs like Tumblr and WordPress, microblogs like Twitter, and media sharing networks like YouTube. Over the past decade, social networks have received much attention due to reliance on a centralized computing platform. We summarize the concerns into two categories, accumulated costs due to centralization and security and privacy concerns, which arise because of a single provider controlling and owning all the data uploaded. The need to offset the costs results in user data monetization, leading to privacy concerns. The prevailing proposal is to move to a decentralized computing model, which we anticipate will address the problems. The federated network is a break from the centralized model, with services provided by several independent providers. Federation also enables the network to become resilient to censorship and significantly reduces the costs incurred due to centralization but does not eliminate it. Thus, even with the federated networks, monetization of user data can occur, but not to the same extent as the centralized online social networks (OSNs).

Therefore, the alternative is to fully decentralize the computing platform and use the peer-to-peer (P2P) model to address both concerns. It transfers the infrastructural costs from providers to the users who, now, directly provide the infrastructure to keep the network running. It also ensures the users’ data is private and stored on the users’ devices. Besides this, it ensures that the network remains resilient to censorship. However, using P2P technology comes with the challenge of developing mechanisms that improve service delivery to match that offered by centralized OSNs.

To motivate P2P technology for implementing decentralized OSNs, we review social networks in general to discover the user requirements and the functional and non-functional system requirements. We derive the technical aspects from these requirements into a four-fold architecture composed of the overlay, the core framework, social network elements, and the graphical user interface. The overlay offers support for address management, routing, and security. Storage, communication, searching mechanisms, access control mechanisms, and monitoring functionality are the core framework layers' components. The social networking elements form the application component, and the goal is a modular design for extensibility. Furthermore, we conduct an in-depth study on P2P component mechanisms that fulfill the technical requirements. We then study several proposed P2P OSNs to compare the implementations and what they achieve to satisfy the user, system, and technical requirements.

We build our research on LibreSocial, a P2P framework for OSNs, that has been in continuous development since 2008. First we give a detailed description of LibreSocial, as it's structure has not yet been presented in that depth. We view LibreSocial as an ideal candidate for a P2P OSN, as it is easily extendable to address the challenging demands that we face. Additionally, LibreSocial fulfills the defined technical aspects using a modular design to achieve a zero-trust network. We then conduct detailed benchmarking tests on LibreSocial. The tests aim to reveal the interaction between the social network elements with one another and the underlying services that the P2P components provide. We also seek to discover LibreSocial’s ability to operate in the wild, how well it scales up and handles churn while remaining stable, and how the storage characteristics, particularly the number of replicas (replication factor), affect the performance of the application. We show that social network elements synergize well with one another, and the underlying services offered by the P2P components provide adequate support for the network. We also show that the network scales up to 2000 nodes without service degradation and handles churn well while remaining stable. Additionally, our results on the impact of the replication factor indicate a need to increase the number of replicas as the network scales up to maintain service quality.

As a way of improving service delivery, we propose three mechanisms. The first mechanism is metadata-based search techniques to solve retrieving of documents stored in a distributed data structure, such as a linked-list or set, using a multi-attribute query. We present two search techniques exhaustive and first-match, and four join algorithms Simple LocalJoin, Parallel LocalJoin, asynchronous NetworkJoin, and BloomJoin. We also consider three distributed data structures, binary tree, deep tree, and customized broad tree. We show that the appropriate combination of the search technique, join algorithm, and distributed data structure is necessary to achieve optimum local and network performance.

The second mechanism we propose is a social caching mechanism that takes advantage of social data to improve data availability. Using this mechanism, we aim to decrease the number of overlay requests by using the social interaction data to implement active dissemination for frequently accessed data and caching this in a social cache. We implement three strategies for selecting users whose data is to be cached, namely, random, trend, and social score selection strategies. We show that the social score strategy is the most advantageous. Using social score strategy, we implement a social cache mechanism and show that coupled with the regular cache, we can achieve 99\% cache-based retrievals, but at some cost to the network due to the combination of active data dissemination and regular updates to the regular cache for freshness.

The last mechanism we propose is a capacity management protocol to address the social network's heterogeneous nature by differentiating strong nodes and weak nodes. In a social network, users connect with different devices having varying capacities (memory, bandwidth, and processing power). Further, the type of connection (LAN/WLAN or metered) is significant. Therefore low capacity devices or devices connecting via metered connections are considered weak nodes. To ensure a stable network, we aim at preventing the weak nodes from participating in routing and storing of replication data. We show that, with the capacity management protocol, this is achievable. We also show that it is possible to have up to 75\% of the network composed of weak nodes and maintain a stable network, although there will be some service delivery degradation.

In conclusion, in this work, we identify and elaborate on the main concerns raised with the current popular OSNs leading to proposals for considering decentralized solutions, specifically P2P. We give the reasons for selecting the P2P platform and discuss the technical challenges of such a move. We then conduct a study to discover the necessary user and system requirements needed to define the technical requirements for a P2P framework for OSNs. We present LibreSocial as a P2P-based OSN that fulfills the specified technical requirements, and provide a systematic and large-scale evaluation of LibreSocial. We then propose three mechanisms for improving service delivery, metadata-based search techniques for distributed data structures, a social caching mechanism for enhanced data availability and faster retrievals, and a capacity management protocol to support heterogeneous nodes. With these contributions, we address the open questions raised in this Dissertation and enable LibreSocial to be utilized in use cases found in the real world.
Fachbereich / Einrichtung:Mathematisch- Naturwissenschaftliche Fakultät » WE Informatik
Dokument erstellt am:02.02.2021
Dateien geändert am:02.02.2021
Promotionsantrag am:08.12.2020
Datum der Promotion:27.01.2021
english
Benutzer
Status: Gast
Aktionen