Please use this identifier to cite or link to this item: http://dx.doi.org/10.14279/depositonce-7830
Main Title: Multi-path aware internet transport selection
Translated Title: Internetkommunikationsoptionswahl unter Berücksichtigung von Mehr-Pfad-Szenarios
Author(s): Tiesel, Philipp S.
Advisor(s): Feldmann, Anja
Referee(s): Feldmann, Anja
Uhlig, Steve
Bonaventure, Olivier
Granting Institution: Technische Universität Berlin
Type: Doctoral Thesis
Language Code: en
Abstract: When the Internet experiment started more than 30 years ago, no one could foresee its expansion — What started as an experiment to interconnect a few research computers has become an essential global infrastructure of humanity. Originally, there was usually only one way to transport data between two computers; this has changed dramatically — today’s Internet offers us way more diverse transport options: Most end hosts are connected via multiple paths to the Internet, most content on the Internet is available on multiple servers, and there is a variety of transport protocols available to meet the needs of different applications. In this thesis, we tackle the problem of how to exploit Internet transport diversity to improve applications’ performance. More specifically, we discuss how to choose among transport options, how to realize multi-path aware transport option selection at the clients’ operating system, and take a glimpse at the performance benefits we can achieve using transport option selection. To reason about transport options and how to choose among them, we characterize three dimensions of transport diversity on the Internet: paths, endpoints, and protocol alternatives. We analyze a representative set of Internet Protocols with regards to the functionality and the granularity of control they provide and how they can be combined. To realize multi-path aware transport option selection at the clients’ operating system (OS), the OS needs to know what to optimize for. Therefore, we introduce the concept of Socket Intents; a means for applications to share their knowledge about their communication pattern and express performance preferences in a generic and portable way. We sketch a generic policy framework that enables the OS to choose suitable transport options while taking the interests of stakeholders like users, vendors and network operators into account. To estimate the performance benefits we can achieve using pathselection, we analyze the benefits of using our Earliest Arrival First (EAF) path selection strategy for Web browsing. The EAF schedules the transfer over the path or path combination that minimizes the expected transfer time. We estimate the possible performance benefits in a custom simulator with a full factorial experimental design covering the Alexa Top 100 and Top 1000 Web sites and a small testbed study using our prototype and demonstrate significant performance benefits. We demonstrate the implementability of path selection and endpoint selection, we implement our Multi-Access Prototype as an extension to the BSD Socket API. Our prototype enables connection reuse via implicit connection pooling and can control the path-management of MPTCP, but also reveals limitations originating by the BSD Socket API. Finally, we give an outlook of the challenges for deploying automated transport option selection within commodity OSes and underline the need for a replacement of the BSD Socket API.
Zu Beginn des Internets konnte niemand dessen Erfolg erahnen. Was als Verbund weniger Großrechner in ausgewählten Forschungsinstituten begann, ist heute, über 30 Jahre später, zu einer für die ganze Menschheit wichtigen Infrastruktur geworden. Gab es zu Beginn des Internets meist nur eine Möglichkeit, bestimmte Inhalte zu beziehen, sehen wir uns heute mit einer Fülle verschiedener Optionen konfrontiert. So haben die meisten Endgeräte heutzutage mehrere Zugangswege zum Internet, z.B. Mobilfunk und WLAN, Inhalte werden von verschiedenen Quellen angeboten, und es gibt spezialisierte Protokolle für so ziemlich jedes Anforderungsprofil. Diese Arbeit beschäftigt sich mit der Frage, wie man diese Vielfalt an Kommunikationsoptionen sinnvoll nutzen kann. Dabei konzentrieren wir uns auf drei Kernfragen: Die Auswahl aus den vorhandenen Kommunikationsoptionen, die Realisierung eines Auswahlmechanismus als Betriebssystemkomponente und die erzielbaren Performancegewinne. Um die Vor- und Nachteile der einzelnen Kommunikationsoptionen im Internet gegeneinander abwägen zu können, charakterisieren wir ihre drei Dimensionen: Zugangsnetze, Gegenstellen und Protokollkombinationen. Wir analysieren die einzelnen Kommunikationsoptionen innerhalb ihrer Kategorie und analysieren verschiedene Protokolle auf Basis ihrer Funktionalität, ihrer Abstraktionstiefe und ihrer Kombinierbarkeit. Um eine sinnvolle Auswahl zwischen den verfügbaren Kommunikationsoptionen im Betriebssystem zu treffen, muss das Betriebssystem wissen, woraufhin es optimieren soll. Dazu führen wir mit {Socket Intents} eine Abstraktion ein, die es den Anwendungen ermöglicht, ihr Wissen über ihre Kommunikationsmuster und ihre Präferenzen dem Betriebssystem auf entwicklerfreundliche Weise verfügbar zu machen. Darüber hinaus entwerfen wir ein Framework, das es ermöglicht, basierend auf diesem Wissen und den Anforderungen verschiedener Beteiligter, wie z.B. Nutzer, Anwendungsentwickler und Kommunikationsanbieter, geeignete Kombination auszuwählen. Als Beispiel für eine Zugangsnetzauswahlstrategie stellen wir unsere EAF-Strategie vor, die für jede zu übertragenden Datei die Kombination an Zugangsnetzen auswählt, die die kürzeste Übertragungszeit verspricht. Wir evaluieren die aus dieser Strategie resultierenden Performancegewinne beim Websiteaufruf unter Verwendung eines Simulators für die Alexa Top 100 und Top 1000 Websites und unter Verwendung unseres Prototypen für eine kleine Websiteauswahl. Die Ergebnisse zeigen signifikante Performancesteigerungen in der Mehrzahl der betrachteten Szenarien. Wir zeigen die Realisierbarkeit von automatischer Zugangsnetzwahl mit Hilfe einer prototypischen Implementierung auf Basis der BSD-Socketschnittstelle. Unser Prototyp erlaubt es, Verbindungen innerhalb von impliziten Verbindungspools wiederzuverwenden und die Pfadwahl von zu MPTCP beeinflussen, zeigt aber auch die von der BSD-Socketschnittstelle induzierten Limitierungen auf. Als Abschluss geben wir einen Ausblick darauf, wie diese Features in verbreitete Betriebssysteme Einzug halten können und erklären, warum ein Ersatz für die BSD-Socketschnittstelle dafür zwingend notwendig ist.
URI: https://depositonce.tu-berlin.de//handle/11303/8701
http://dx.doi.org/10.14279/depositonce-7830
Exam Date: 29-Mar-2018
Issue Date: 2019
Date Available: 29-Jan-2019
DDC Class: 004 Datenverarbeitung; Informatik
005 Computerprogrammierung, Programme, Daten
Subject(s): internet transport services
socket api
socket intents
multi-access
path selection
endpoint selection
protocol stack selection
Socket-Schnittstelle
Endpunktwahl
Pfadwahl
Protokollwahl
Sponsor/Funder: EC/FP7/257422/EU/Enabling Innovation in the Internet Architecture through Flexible Flow-Processing Extensions/CHANGE
DFG, FE 570/4-1, Gottfried Wilhelm Leibniz-Preis 2011
License: https://creativecommons.org/licenses/by/4.0/
Appears in Collections:Inst. Telekommunikationssysteme » Publications

Files in This Item:
File Description SizeFormat 
tiesel_philipp.pdf4.87 MBAdobe PDFThumbnail
View/Open


This item is licensed under a Creative Commons License Creative Commons