TU Darmstadt / ULB / TUprints

Programming Models and Extensive Evaluation Support for MPTCP Scheduling, Adaptation Decisions, and DASH Video Streaming

Frömmgen, Alexander (2018)
Programming Models and Extensive Evaluation Support for MPTCP Scheduling, Adaptation Decisions, and DASH Video Streaming.
Technische Universität Darmstadt
Ph.D. Thesis, Primary publication

[img]
Preview
Ph.D. Thesis - Text
Dissertation_Froemmgen.pdf - Published Version
Copyright Information: CC BY-SA 4.0 International - Creative Commons, Attribution ShareAlike.

Download (18MB) | Preview
Item Type: Ph.D. Thesis
Type of entry: Primary publication
Title: Programming Models and Extensive Evaluation Support for MPTCP Scheduling, Adaptation Decisions, and DASH Video Streaming
Language: English
Referees: Steinmetz, Prof. Ralf ; Buchmann, Prof. Alejandro
Date: 2018
Place of Publication: Darmstadt
Date of oral examination: 18 June 2018
Abstract:

In this dissertation, we identify that the analysis, implementation, and evaluation of communication systems is hindered by two obstacles: i) missing abstractions and the resulting implementation complexity and ii) the required extensive evaluations for today's large configuration spaces and heterogeneous network environments. A prominent example is Multipath TCP - today's de facto multipathing transport protocol. Multipath TCP packet scheduler innovations are hindered by the implementation complexity of the Linux kernel network stack and the required analysis for a variety of applications and network conditions.

To tackle the first obstacle, we are the first to propose a programming model as abstraction for the design and development of Multipath TCP schedulers. We introduce the ProgMP programming model, which provides a powerful specification language and a high-level API to specify executable Multipath TCP schedulers. We show the strength of ProgMP by implementing 13 novel general purpose, preference-, and application-aware schedulers tackling diverse objectives. As part of these schedulers, we propose the first redundant Multipath TCP scheduler and show that this scheduler significantly reduces latency for applications with tight latency requirements but only moderate throughput needs. We use ProgMP for a detailed analysis of design decisions for the incorporation of redundancy to balance latency and throughput. We further propose schedulers that retain fine-grained throughput or latency objectives, or improve the interaction with upper layer protocols such as HTTP/2, while preserving path preferences. Our detailed emulation-based and real world measurements show that ProgMP enables timely scheduling decisions and a wide range of executable, novel Multipath TCP schedulers. Besides ProgMP, which is our main contribution to overcome the first obstacle of missing abstractions, we further introduce programming models as abstraction for the adaptation decisions of adaptive communication systems. Here, we propose to specify the adaptation decision with event condition action rules and learn rules for a given utility function with genetic programming in extensive network experiments. Finally, we propose a programming model for the specification of topology adaptations in communication systems based on topology graph patterns.

To overcome the second identified obstacle and foster extensive evaluations, we present the MACI framework for the management, scalable execution, and interactive analysis of extensive network experiments. In essence, MACI is a combination and integration of established tools to foster rigorous, seamless evaluations throughout the research process. We discuss our MACI experiences during i) the development and evaluation of our proposed ProgMP schedulers, ii) the analysis of a distributed topology graph pattern matching protocol, and iii) a systematic comparison of DASH video streaming implementations. Our experiences confirm that MACI provides support for the recurring tasks in the evaluation of diverse communication systems and significantly increases research efficiency. The experiments with MACI, i.e., the ProgMP, the topology graph pattern matching, and the DASH experiments, go beyond an evaluation of MACI and significantly contribute to the understanding of these domains.

Overall, this dissertation contributes i) three programming models for the domains of Multipath TCP, adaptive communication systems, and topology adaptations in communication systems, ii) 13 novel, deployable general purpose, preference-, and application-aware Multipath TCP schedulers, and iii) a reusable framework for the seamless execution and analysis of extensive network experiments.

Alternative Abstract:
Alternative AbstractLanguage

In dieser Dissertation zeigen wir auf, dass die Analyse, die Umsetzung und die Evaluation von Kommunikationssystemen durch i) fehlende Abstraktionen und die resultierende Implementierungskomplexität sowie ii) die benötigten umfassenden Evaluationen für die Vielzahl an Konfigurationsmöglichkeiten und Netzwerkumgebungen erschwert werden. Multipath TCP, das de facto Transportprotokoll zur Nutzung mehrerer Netzwerkpfade, stellt ein prominentes Beispiel dar. Innovationen im Bereich der Multipath TCP Paket Scheduler werden durch die Implementierungskomplexität innerhalb des Linux-Kernels und den benötigten umfassenden Analysen für die Vielzahl an Anwendungen und Netzwerkumgebungen erschwert.

Zur Überwindung des ersten Hindernisses schlagen wir ProgMP, das erste Programmiermodell für Multipath TCP Scheduler, als Abstraktion für den Entwurf und die Entwicklung von Multipath TCP Schedulern vor. ProgMP beinhaltet eine ausdrucksstarke Spezifikationssprache und eine einfache Programmierschnittstelle zur Spezifikation ausführbarer Multipath TCP Scheduler. Wir zeigen die Stärken von ProgMP am Beispiel von 13 neuen Schedulern mit unterschiedlichen Optimierungszielen auf. Als Teil dieser Scheduler schlagen wir den ersten redundanten Multipath TCP Scheduler vor und zeigen, dass dieser die Latenz für Anwendungen mit strikten Latenzanforderungen und moderaten Durchsatzanforderungen signifikant reduziert. Wir nutzen ProgMP für eine detaillierte Analyse von Entwurfsentscheidungen für die Verwendung von Redundanz zur Abwägung von Latenz und Durchsatz. Des Weiteren schlagen wir Scheduler vor, welche feingranulare Durchsatz- oder Latenzziele einhalten, sowie die Interaktion mit darüber liegenden Protokollen wie beispielsweise HTTP/2 optimieren und dabei Pfadpräferenzen einhalten. Unsere detaillierten Evaluationen mittels Netzwerkemulation sowie Echtweltmessungen zeigen, dass ProgMP effiziente Schedulingentscheidungen und eine Vielzahl neuer, ausführbarer Multipath TCP Scheduler ermöglicht. Neben ProgMP, unserem Hauptbeitrag zur Überwindung fehlender Abstraktionen, stellen wir des Weiteren Programmiermodelle als Abstraktionen für die Adaptionsentscheidung adaptiver Kommunikationssysteme vor. So schlagen wir vor, Adaptionsentscheidungen mittels event condition action Regeln (Ereignis, Bedingung, Aktion) zu spezifizieren und diese Regeln basierend auf genetischer Programmierung in umfassenden Netzwerkexperimenten automatisch für eine gegebene Nutzenfunktion zu lernen. Schließlich stellen wir ein Programmiermodell für die Spezifikation von Topologie-Adaptionen in Kommunikationssystemen mittels Graphmustern in der Topologie vor.

Zur Überwindung des zweiten identifizierten Hindernisses haben wir das MACI Framework zur Verwaltung, skalierbaren Ausführung und interaktiven Analyse von umfassenden Netzwerkexperimenten entwickelt. Im Kern ist MACI eine Kombination und Integration etablierter Werkzeuge zur Förderung gründlicher, nahtloser Evaluationen während des gesamten Forschungsprozesses. Wir diskutieren unsere Erfahrungen mit MACI während i) der Entwicklung und Evaluation unserer vorgeschlagenen ProgMP Scheduler, ii) der Analyse eines verteilten Protokolls zur Auffindung von Graphmustern in Topologien, sowie iii) eines systematischen Vergleichs von DASH Video Streaming Implementierungen. Unsere Erfahrungen bestätigen, dass MACI wiederkehrende Aufgaben in der Evaluation diverser Kommunikationssysteme unterstützt und dadurch die Forschungseffizienz signifikant erhöht. Die Experimente mit MACI für ProgMP, Topologiemustererkennung und DASH gehen über eine Evaluation von MACI hinaus und stellen signifikante Beiträge zum Verständnis der jeweiligen Gebiete dar.

Insgesamt beinhaltet diese Dissertation die folgenden Beiträge: i) drei Programmiermodelle für die Bereiche des Multipath TCP Schedulings, der adaptiven Kommunikationssysteme, sowie der Topologie-Adaption in Kommunikationssystemen, ii) 13 neue, ausführbare Multipath TCP Scheduler, sowie iii) ein wiederverwendbares Framework zur nahtlosen Ausführung und Analyse umfassender Netzwerkexperimente.

German
URN: urn:nbn:de:tuda-tuprints-77097
Classification DDC: 000 Generalities, computers, information > 004 Computer science
Divisions: 20 Department of Computer Science > Databases and Distributed Systems
Date Deposited: 07 Sep 2018 10:15
Last Modified: 09 Jul 2020 02:13
URI: https://tuprints.ulb.tu-darmstadt.de/id/eprint/7709
PPN: 436276550
Export:
Actions (login required)
View Item View Item