Non-functional requirements in publish, subscribe systems

Content-based publish/subscribe has gained high popularity for large-scale dissemination of dynamic information in the form of events from publishers to subscribers in a decoupled fashion. Yet, it is highly challenging to achieve scalability without sacrificing the expressiveness of subscriptions (user queries) in such systems, especially in a peer-to-peer (P2P) environment where subscribers and publishers are also responsible for forwarding events by forming an overlay network. Moreover, the support for non-functional requirements such as quality of service (e.g., end-to-end delay, bandwidth etc.) and security (e.g., authentication, confidentiality etc.) instigate many open research questions. The main advantage of publish/subscribe - its inherent decoupling - turns to be a major obstacle in the fulfillment of non-functional requirements with conventional methods. Therefore, the goal of this thesis is to develop methods and algorithms that i) enable scalable dissemination of events, ii) support different quality of service aspects, and iii) provide basic security mechanisms, in a P2P content-based publish/subscribe system. In particular, the following contributions are made in this thesis. As a first contribution, we propose a distributed algorithm to disseminate events in a publish/subscribe system respecting the subscriber-defined QoS constraints in terms of delay requirements and available bandwidth. In addition, the second contribution focuses on minimizing the overall resource usage, i.e., bandwidth consumption and processing load on peers (publishers and subscribers), in a publish/subscribe system. This contribution develops an efficient and scalable method to reduce the rate of events that peers receive and forward though lacking subscription (i.e., false positives) by means of subscription clustering, using the techniques from spectral graph theory. The first two contributions target overlay-level methods to provide efficient dissemination of events and quality of service. The third contribution, however, proposes underlay-aware methods that explicitly take into account the properties of the underlying physical network and its topology, to construct an efficient publish/subscribe routing overlay with low relative delay penalty and low stress on the physical links. Finally, as our last contribution, we present novel methods to provide authentication of publishers and subscribers as well as confidentiality and integrity of events using the techniques from pairing-based cryptography. Additionally, an algorithm is developed to preserve the weak subscription confidentiality in the presence of interest clustering of subscribers. Inhaltsbasierte Publish/Subscribe Verfahren sind ein weit verbreitetes Werkzeug zur Verteilung dynamischer Informationen in Form von Ereignissen, die eine hohe Entkopplung zwischen Anbietern (Publishern) und Subskribenten (Subscriber) ermoglicht. Die Sicherstellung von Skalierbarkeit ohne starke Einschrankungen bei der Ausdrucksstarke der Anfragen von Subskribenten stellt hohe Anforderungen insbesondere an hochgradig verteilte (Peer-to-Peer) Umgebungen, in denen sowohl Publisher als auch Subscriber die Weiterleitung von Ereignissen in einem Overlaynetz organisieren. Ferner erfordert die Sicherstellung nichtfunktionale Eigenschaften wie Dienstgute (z.B. Ende-zu-Ende Verzogerung oder Bandbreitenbeschrankungen) und Sicherheit (z.B. Authentizitat und Vertraulichkeit) die Losung vieler offener Fragestellungen. Denn der Hauptvorteil der inharenten Entkopplung von Publishern und Subscribern stellt gleichzeitig auch ein groses Hindernis zur Erfullung nichtfunktionaler Eigenschaften dar, welches mit Hilfe herkommlicher Methoden nicht effizient beherrschbar ist. Das Ziel dieser Dissertation ist daher die Entwicklung von Methoden und Algorithmen, die i) eine skalierbare Verteilung von Ereignissen, ii) verschiedene Dienstgutekriterien und iii) grundlegende Sicherheitsmechanismen in hochgradig verteilten (Peer-to-Peer) Inhaltsbasierten Publish/Subscribe Systemen ermoglichen. Insbesondere folgende Kernbeitrage konnten im Rahmen der Dissertation geleistet werden: Im ersten Beitrag wird ein Verteilter Algorithmus zur Weiterleitung von Ereignissen vorgeschlagen, der Subscriber spezifische Dienstguteanforderungen hinsichtlich Ende-zu-Ende Verzogerung und verfugbare Bandbreite erfullt. Des weiteren konzentriert sich der zweite Beitrag auf die Minimierung der Gesamtressourcen, indem fur jeden Peer der Aufwand zum Weiterleiten und Empfangen unnotiger Nachrichten („False Positives") minimiert wird. Dazu wurde ein auf der spektralen Graphentheorie basierender verteilter Ansatz eines Clusterverfahrens konzipiert, der auch fur grose Mengen an Subscribern effizient Cluster und geringe Kosten fur das Weiterleiten garantiert. Wahrend die beiden ersten Beitrage sich ausschlieslich auf die Organisation von Overlaynetzen fokusieren, werden im dritten Beitrag auch Methoden zur Anpassung von Publish/Subscribe Systemen entwickelt, die Wissen uber die zugrunde liegende physische Netz und dessen Topologie miteinbeziehen. So konnen entsprechende Overlaytopologien zu erzeugen, die nur eine geringe zusatzliche Verzogerung und Bandbreitennutzung relativ zum moglichen Optimum auf den physischen Verbindungen aufweisen. Abschliesend wird im letzten Beitrag der Dissertation ein Verfahren basierend auf Identitatsbasierter Kryptographie vorgestellt, dass sowohl Vertraulichkeit, Integritat als auch Authentizitat fur Ereignisse mit Hilfe eines skalierbaren Schlusselmanagement sicherstellt. Zusatzlich werden im Rahmen des Verfahrens Algorithmen vorgestellt, die ein schwaches Vertraulichkeitskriterium fur die Anfragen eines Subscribers sicherstellen.