493 research outputs found
Self-stabilizing K-out-of-L exclusion on tree network
In this paper, we address the problem of K-out-of-L exclusion, a
generalization of the mutual exclusion problem, in which there are units
of a shared resource, and any process can request up to units
(). We propose the first deterministic self-stabilizing
distributed K-out-of-L exclusion protocol in message-passing systems for
asynchronous oriented tree networks which assumes bounded local memory for each
process.Comment: 15 page
Quiescence of Self-stabilizing Gossiping among Mobile Agents in Graphs
This paper considers gossiping among mobile agents in graphs: agents move on
the graph and have to disseminate their initial information to every other
agent. We focus on self-stabilizing solutions for the gossip problem, where
agents may start from arbitrary locations in arbitrary states.
Self-stabilization requires (some of the) participating agents to keep moving
forever, hinting at maximizing the number of agents that could be allowed to
stop moving eventually. This paper formalizes the self-stabilizing agent gossip
problem, introduces the quiescence number (i.e., the maximum number of
eventually stopping agents) of self-stabilizing solutions and investigates the
quiescence number with respect to several assumptions related to agent
anonymity, synchrony, link duplex capacity, and whiteboard capacity
Rendezvous in Networks in Spite of Delay Faults
Two mobile agents, starting from different nodes of an unknown network, have
to meet at the same node. Agents move in synchronous rounds using a
deterministic algorithm. Each agent has a different label, which it can use in
the execution of the algorithm, but it does not know the label of the other
agent. Agents do not know any bound on the size of the network. In each round
an agent decides if it remains idle or if it wants to move to one of the
adjacent nodes. Agents are subject to delay faults: if an agent incurs a fault
in a given round, it remains in the current node, regardless of its decision.
If it planned to move and the fault happened, the agent is aware of it. We
consider three scenarios of fault distribution: random (independently in each
round and for each agent with constant probability 0 < p < 1), unbounded adver-
sarial (the adversary can delay an agent for an arbitrary finite number of
consecutive rounds) and bounded adversarial (the adversary can delay an agent
for at most c consecutive rounds, where c is unknown to the agents). The
quality measure of a rendezvous algorithm is its cost, which is the total
number of edge traversals. For random faults, we show an algorithm with cost
polynomial in the size n of the network and polylogarithmic in the larger label
L, which achieves rendezvous with very high probability in arbitrary networks.
By contrast, for unbounded adversarial faults we show that rendezvous is not
feasible, even in the class of rings. Under this scenario we give a rendezvous
algorithm with cost O(nl), where l is the smaller label, working in arbitrary
trees, and we show that \Omega(l) is the lower bound on rendezvous cost, even
for the two-node tree. For bounded adversarial faults, we give a rendezvous
algorithm working for arbitrary networks, with cost polynomial in n, and
logarithmic in the bound c and in the larger label L
Byzantine Gathering in Networks
This paper investigates an open problem introduced in [14]. Two or more
mobile agents start from different nodes of a network and have to accomplish
the task of gathering which consists in getting all together at the same node
at the same time. An adversary chooses the initial nodes of the agents and
assigns a different positive integer (called label) to each of them. Initially,
each agent knows its label but does not know the labels of the other agents or
their positions relative to its own. Agents move in synchronous rounds and can
communicate with each other only when located at the same node. Up to f of the
agents are Byzantine. A Byzantine agent can choose an arbitrary port when it
moves, can convey arbitrary information to other agents and can change its
label in every round, in particular by forging the label of another agent or by
creating a completely new one.
What is the minimum number M of good agents that guarantees deterministic
gathering of all of them, with termination?
We provide exact answers to this open problem by considering the case when
the agents initially know the size of the network and the case when they do
not. In the former case, we prove M=f+1 while in the latter, we prove M=f+2.
More precisely, for networks of known size, we design a deterministic algorithm
gathering all good agents in any network provided that the number of good
agents is at least f+1. For networks of unknown size, we also design a
deterministic algorithm ensuring the gathering of all good agents in any
network but provided that the number of good agents is at least f+2. Both of
our algorithms are optimal in terms of required number of good agents, as each
of them perfectly matches the respective lower bound on M shown in [14], which
is of f+1 when the size of the network is known and of f+2 when it is unknown
Leader election in distributed networks using agent based self-stabilizing technique
There are many variants of leader election algorithm in distributed networks. In this research, an agent based approach to leader election in distributed networks is investigated. Agents have shown to be useful in several ways. In the theoretical perspective, agents sometime help in reducing the message complexity of the system and sometimes help in lowering time complexity. In a more practical sense, agents perform operations independent of the processors, thereby lending a more flexible algorithm supporting different types of networks
Robust network computation
Thesis (M. Eng.)--Massachusetts Institute of Technology, Dept. of Electrical Engineering and Computer Science, 2005.Includes bibliographical references (p. 91-98).In this thesis, we present various models of distributed computation and algorithms for these models. The underlying theme is to come up with fast algorithms that can tolerate faults in the underlying network. We begin with the classical message-passing model of computation, surveying many known results. We give a new, universally optimal, edge-biconnectivity algorithm for the classical model. We also give a near-optimal sub-linear algorithm for identifying bridges, when all nodes are activated simultaneously. After discussing some ways in which the classical model is unrealistic, we survey known techniques for adapting the classical model to the real world. We describe a new balancing model of computation. The intent is that algorithms in this model should be automatically fault-tolerant. Existing algorithms that can be expressed in this model are discussed, including ones for clustering, maximum flow, and synchronization. We discuss the use of agents in our model, and give new agent-based algorithms for census and biconnectivity. Inspired by the balancing model, we look at two problems in more depth.(cont.) First, we give matching upper and lower bounds on the time complexity of the census algorithm, and we show how the census algorithm can be used to name nodes uniquely in a faulty network. Second, we consider using discrete harmonic functions as a computational tool. These functions are a natural exemplar of the balancing model. We prove new results concerning the stability and convergence of discrete harmonic functions, and describe a method which we call Eulerization for speeding up convergence.by David Pritchard.M.Eng
Asynchronous approach in the plane: A deterministic polynomial algorithm
In this paper we study the task of approach of two mobile agents having the
same limited range of vision and moving asynchronously in the plane. This task
consists in getting them in finite time within each other's range of vision.
The agents execute the same deterministic algorithm and are assumed to have a
compass showing the cardinal directions as well as a unit measure. On the other
hand, they do not share any global coordinates system (like GPS), cannot
communicate and have distinct labels. Each agent knows its label but does not
know the label of the other agent or the initial position of the other agent
relative to its own. The route of an agent is a sequence of segments that are
subsequently traversed in order to achieve approach. For each agent, the
computation of its route depends only on its algorithm and its label. An
adversary chooses the initial positions of both agents in the plane and
controls the way each of them moves along every segment of the routes, in
particular by arbitrarily varying the speeds of the agents. A deterministic
approach algorithm is a deterministic algorithm that always allows two agents
with any distinct labels to solve the task of approach regardless of the
choices and the behavior of the adversary. The cost of a complete execution of
an approach algorithm is the length of both parts of route travelled by the
agents until approach is completed. Let and be the initial
distance separating the agents and the length of the shortest label,
respectively. Assuming that and are unknown to both agents, does
there exist a deterministic approach algorithm always working at a cost that is
polynomial in and ? In this paper, we provide a positive answer to
the above question by designing such an algorithm
Découverte et allocation des ressources pour le traitement de requêtes dans les systèmes grilles
De nos jours, les systèmes Grille, grâce à leur importante capacité de calcul et de stockage ainsi que leur disponibilité, constituent l'un des plus intéressants environnements informatiques. Dans beaucoup de différents domaines, on constate l'utilisation fréquente des facilités que les environnements Grille procurent. Le traitement des requêtes distribuées est l'un de ces domaines où il existe de grandes activités de recherche en cours, pour transférer l'environnement sous-jacent des systèmes distribués et parallèles à l'environnement Grille. Dans le cadre de cette thèse, nous nous concentrons sur la découverte des ressources et des algorithmes d'allocation de ressources pour le traitement des requêtes dans les environnements Grille. Pour ce faire, nous proposons un algorithme de découverte des ressources pour le traitement des requêtes dans les systèmes Grille en introduisant le contrôle de topologie auto-stabilisant et l'algorithme de découverte des ressources dirigé par l'élection convergente. Ensuite, nous présentons un algorithme d'allocation des ressources, qui réalise l'allocation des ressources pour les requêtes d'opérateur de jointure simple par la génération d'un espace de recherche réduit pour les nœuds candidats et en tenant compte des proximités des candidats aux sources de données. Nous présentons également un autre algorithme d'allocation des ressources pour les requêtes d'opérateurs de jointure multiple. Enfin, on propose un algorithme d'allocation de ressources, qui apporte une tolérance aux pannes lors de l'exécution de la requête par l'utilisation de la réplication passive d'opérateurs à état. La contribution générale de cette thèse est double. Premièrement, nous proposons un nouvel algorithme de découverte de ressource en tenant compte des caractéristiques des environnements Grille. Nous nous adressons également aux problèmes d'extensibilité et de dynamicité en construisant une topologie efficace sur l'environnement Grille et en utilisant le concept d'auto-stabilisation, et par la suite nous adressons le problème de l'hétérogénéité en proposant l'algorithme de découverte de ressources dirigé par l'élection convergente. La deuxième contribution de cette thèse est la proposition d'un nouvel algorithme d'allocation des ressources en tenant compte des caractéristiques de l'environnement Grille. Nous abordons les problèmes causés par la grande échelle caractéristique en réduisant l'espace de recherche pour les ressources candidats. De ce fait nous réduisons les coûts de communication au cours de l'exécution de la requête en allouant des nœuds au plus près des sources de données. Et enfin nous traitons la dynamicité des nœuds, du point de vue de leur existence dans le système, en proposant un algorithme d'affectation des ressources avec une tolérance aux pannes.Grid systems are today's one of the most interesting computing environments because of their large computing and storage capabilities and their availability. Many different domains profit the facilities of grid environments. Distributed query processing is one of these domains in which there exists large amounts of ongoing research to port the underlying environment from distributed and parallel systems to the grid environment. In this thesis, we focus on resource discovery and resource allocation algorithms for query processing in grid environments. For this, we propose resource discovery algorithm for query processing in grid systems by introducing self-stabilizing topology control and converge-cast based resource discovery algorithms. Then, we propose a resource allocation algorithm, which realizes allocation of resources for single join operator queries by generating a reduced search space for the candidate nodes and by considering proximities of candidates to the data sources. We also propose another resource allocation algorithm for queries with multiple join operators. Lastly, we propose a fault-tolerant resource allocation algorithm, which provides fault-tolerance during the execution of the query by the use of passive replication of stateful operators. The general contribution of this thesis is twofold. First, we propose a new resource discovery algorithm by considering the characteristics of the grid environments. We address scalability and dynamicity problems by constructing an efficient topology over the grid environment using the self-stabilization concept; and we deal with the heterogeneity problem by proposing the converge-cast based resource discovery algorithm. The second main contribution of this thesis is the proposition of a new resource allocation algorithm considering the characteristics of the grid environment. We tackle the scalability problem by reducing the search space for candidate resources. We decrease the communication costs during the query execution by allocating nodes closer to the data sources. And finally we deal with the dynamicity of nodes, in terms of their existence in the system, by proposing the fault-tolerant resource allocation algorithm
- …