Bachelor Thesis BCLR-0145

BibliographyKicherer, Alexander: Elastic control of content-routing in OpenFlow.
University of Stuttgart, Faculty of Computer Science, Electrical Engineering, and Information Technology, Bachelor Thesis No. 145 (2014).
40 pages, english.
CR-SchemaC.1.2 (Multiple Data Stream Architectures (Multiprocessors))
C.1.4 (Processor Architectures, Parallel Architectures)
C.2.4 (Distributed Systems)
Abstract

Abstract:

Publish/subscribe systems are an essential part of many distributed systems for their components (publishers and subscribers) to communicate with each other. The use of content-based routing for more efficient bandwidth usage and to decrease the usage of other resources, led to systems developed are fairly efficient and fast for their architecture of creating an overlay network. With the use of Software-defined Networking (SDN) and in-network filtering by its usage, the event forwarding efficiency and delays of publish/subscribe systems were further improved. Event forwarding in SDN based publish/subscribe systems using in-network filtering is already very good, but the processing of requests like (un)advertisements and (un)subscriptions needs to be scalable, too. In the current implementation requests are handled in a sequential manner, which is not scalable at all. This thesis proposes a way to handle the computational part of request processing in a parallelised way with little computational overhead by taking advantage of the independency of the partitions of the event space and the corresponding data used for computation as well as resulting flow rule changes. By this the average waiting time until a request is processed is to be decreased and the general throughput of requests per time is to be increased. This goal is reached by independent computing of request parts based on partitions created by spatial indexing. The evaluation was done with a multithreaded solution to show the impact of parallel computation of changes of flow rules on switches. The proposed approach to process requests in parallel shows the average waiting time of requests to drop up to to one fourth when using four threads on a machine with four cores to compute requests in parallel. This shows the possibility of large performance gains by parallelising request processing the proposed way.

Kurzfassung:

Publish/Subscribe Systeme sind ein zentraler Teil vieler verteilter Systeme, um deren Komponenten (Publisher und Subscriber) miteinander kommunizieren zu lassen. Durch Inhaltsbasiertes Routing für effizientere Nutzung von Bandbreite und sonstiger Ressourcen wurden Systeme entwickelt, welche für ihre Overlay-Netzwerk-Architektur sehr effizient arbeiten. Mit Software-defined Networking (SDN) und Filterung im Netzwerk durch dessen Nutzung wurde die Effizienz von EventWeiterleitungen und die dabei auftretende Verzögerungen weiter verbessert. Die Weiterleitung von Events in einem auf SDN basierenden Publish/Subscribe System mit der Nutzung von Filterung im Netzwerk ist schon sehr gut, das Verarbeiten von Anfragen wie (un)advertisements und (un)subscriptions sollte jedoch auch skalierbar sein. In der bisherigen Implementierung werden Anfragen sequentiell abgearbeitet, dies ist nicht skalierbar. In dieser Arbeit wird ein Ansatz vorgestellt, wie der Berechnungsanteil von Anfragen mit wenig zusätzlichem Aufwand bewältigt werden kann. Dazu wird die Unabhängigkeit der Partitionen des Event-Raumes, deren zugehörige für Berechnungen relevante Daten und die zugehörigen berechneten Änderungen der Weiterleitungsregeln dafür genutzt. Dadurch soll die durchschnittliche Wartezeit bis eine Anfrage bearbeitet wird reduziert werden und der Durchsatz an Anfragen erhöht werden. Dieses Ziel wird erreicht indem unabhängig Anfragenteile parallel zueinander Abgearbeitet werden, basierend auf den durch Spatial Indexing entstandenen Partitionen. Die Evaluierung wurde durch eine auf Multithreading basierende Lösung um die Auswirkungen von paralleler Berechnung der Änderungen von Weiterleitungsregeln der Switches im Netzwerk. Der vorgeschlagene Ansatz, Anfragen auf diese Art parallel zu bearbeiten zeigt, dass die durchschnittliche Wartezeit sich bei verwendung von vier Threads auf einem System mit vier Kernen auf bis zu ein Viertel reduziert. Dies zeigt die Möglichkeit großer Leistungssteigerung durch den Vorgeschlagenen Ansatz.

Full text and
other links
PDF (1280861 Bytes)
Department(s)University of Stuttgart, Institute of Parallel and Distributed Systems, Distributed Systems
Superviser(s)Bhowmik, Sukanya
Entry dateDecember 9, 2014
   Publ. Computer Science