6 research outputs found

    A Practical Study of Self-Stabilization for Prefix-Tree Based Overlay Networks

    Get PDF
    Service discovery is crucial in the development of fully decentralized computational grids. Among the significant amount of work produced by the convergence of peer-to-peer (P2P) systems and grids, a new kind of overlay networks, based on prefix trees, has emerged. In particular, the Distributed Lexicographic Placement Table (DLPT) approach is a decentralized and dynamic service discovery service. Fault-tolerance within the DLPT approach is achieved through best-effort policies relying on formal self-stabilization results. Self-stabilization means that the tree can become transiently inconsistent, but is guaranteed to autonomously converge to a correct topology after arbitrary crashes, in a finite time. However, during convergence, the tree may not be able to process queries correctly. In this paper, we present some simulation results having several objectives. First, we investigate the interest of self-stabilization for such architectures. Second, we explore, still based on simulation, a simple Time-To-Live policy to avoid useless processing during convergence time

    Self-stabilizing minimum-degree spanning tree within one from the optimal degree

    Get PDF
    International audienceWe propose a self-stabilizing algorithm for constructing a Minimum-Degree Spanning Tree (MDST) in undirected networks. Starting from an arbitrary state, our algorithm is guaranteed to converge to a legitimate state describing a spanning tree whose maximum node degree is at most ∆∗ + 1, where ∆∗ is the minimum possible maximum degree of a spanning tree of the network. To the best of our knowledge our algorithm is the ïŹrst self stabilizing solution for the construction of a minimum-degree spanning tree in undirected graphs. The algorithm uses only local communications (nodes interact only with the neighbors at one hop distance). Moreover, the algorithm is designed to work in any asynchronous message passing network with reliable FIFO channels. Additionally, we use a ïŹne grained atomicity model (i.e. the send/receive atomicity). The time complexity of our solution is O(mn2 log n) where m is the number of edges and n is the number of nodes. The memory complexity is O(ÎŽ log n) in the send-receive atomicity model (ÎŽ is the maximal degree of the network)

    Maintaining Balanced Trees for Structured Distributed Streaming Systems

    Get PDF
    International audienceIn this paper, we propose and analyze a simple local algorithm to balance a tree. The motivation comes from live distributed streaming systems in which a source diffuses a content to peers via a tree, a node forwarding the data to its children. Such systems are subject to a high churn, peers frequently joining and leaving the system. It is thus crucial to be able to repair the diffusion tree to allow an efficient data distribution. In particular, due to bandwidth limitations, an efficient diffusion tree must ensure that node degrees are bounded. Moreover, to minimize the delay of the streaming, the depth of the diffusion tree must also be controlled. We propose here a simple distributed repair algorithm in which each node carries out local operations based on its degree and on the subtree sizes of its children. In a synchronous setting, we first prove that starting from any n-node tree our process converges to a balanced binary tree in O(n 2) rounds. We then describe a more restrictive model, adding a small extra information to each node, under which we adapt our algorithm to converge in Θ(n log n) rounds

    Distributed data structures and the power of topological self-stabilization

    Get PDF
    In dieser Arbeit betrachten wir Probleme im Bereich verteilter Systeme und lokaler Algorithmen. Wir betrachten verteilte Systeme, die gegeben sind durch bestimmte Topologien miteinander vernetzter Knoten, und stellen die Frage, ob solche Topologien wiederhergestellt werden können, wenn das Netzwerk durch den Ausfall oder Hinzukommen von Knoten oder Kanten verĂ€ndert wird. Dabei sollen lokale verteilte Algorithmen entwickelt werden, die das Netzwerk von einer beliebigen schwach zusammenhĂ€ngenden Starttopologie in eine Zieltopologie ĂŒberfĂŒhren. Diese Eigenschaft eines Algorithmus nennen wir topologische Selbststabilisierung. Motiviert wird diese Betrachtung durch die zunehmende Nutzung von Peer-to-Peer Systemen und von Cloud Dienstleistern, also Szenarien in denen das System aus Ressourcen besteht, fĂŒr die AusfĂ€lle nicht mehr kontrolliert werden können. Zur Analyse von topologisch selbststabilisierenden Algorithmen oder Protokollen fĂŒhren wir geeignete Modelle ein. Wir prĂ€sentieren dann fĂŒr einige bestimme Topologien mit welchen topologisch selbststabilisierenden Protokollen diese erreicht werden können. Wir betrachten dabei als einfĂŒhrendes Beispiel eine sortierte Liste von Knoten und fahren dann mit komplexeren Topologien wie einem Small-World Netzwerk und einem vollstĂ€ndigem Graphen fort. Als nĂ€chstes wenden wir die Idee von topologisch selbststabilisierenden Protokollen auf das Konzept von verteilten Hashtabellen an. Dabei zeigen wir, dass eine solche Lösung fĂŒr bereits existierende verteilte Hashtabellen möglich ist und entwickeln dann eine weitere verteilte Hashtabelle, die heterogene KapazitĂ€ten unterstĂŒtzt. Zum Schluss betrachten wir, wie verteilte Hashtabellen erweitert werden können, sodass nicht nur exakte Suchanfragen sondern auch Suchanfragen nach Ă€hnlichen SchlĂŒsseln unterstĂŒtzt werden.This thesis considers problems located in the fields of distributed systems and local algorithms. In particular we consider such systems given by specific topologies of interconnected nodes and want to examine whether these topologies can be rebuilt in case the network is (massively) changed by failing or joining nodes or edges. For this case we search for local distributed algorithms, i.e. the algorithms are executed on every single node and only use local information stored at the nodes like their neighborhood of nodes. By executing these algorithms we will show that the desired goal topologies can be reached from any weakly connected start topology. We call this property of an algorithm topological self-stabilization and motivate it by the increasing usage of peer-to-peer (P2P) systems and of cloud computing. In both cases the user or owner of the data and executed algorithms cannot control the resources and their connectivity. In order to analyze topological self-stabilizing algorithms or protocols we introduce suited models. For some specific topologies we then present and analyze topological self-stabilizing protocols. We consider topologies like a sorted list of nodes, which we use as a simple introductory example. We then proceed with more complex topologies like a specific small-world network and a clique. We then show that the concept of topological self-stabilization can be used for distributed hash tables. In particular we show that for existing distributed hash tables a topological self-stabilizing protocol canbe found. We also construct a new overlay network, that builds a distributed hash table that supports heterogeneous capacities, and a corresponding topological self-stabilizing protocol. At last we leave the concept of topological self-stabilization behind and instead show how to extend the usage of distributed hash tables, in order to answer more than only exact queries.Tag der Verteidigung: 21.05.2015Paderborn, Univ., Diss., 201

    A Model for Large Scale Self-Stabilization

    No full text
    corecore