3,791 research outputs found
Design and analysis of distributed primitives for mobile ad hoc networks
This dissertation focuses on the design and analysis of distributed primitives for
mobile ad hoc networks, in which mobile hosts are free to move arbitrarily. Arbitrary
mobility adds unpredictability to the topology changes experienced by the network, which
poses a serious challenge for the design and analysis of reliable protocols. In this work,
three different approaches are used to handle mobility. The first part of the dissertation
employs the simple technique of ignoring the mobility and showing a lower bound for the
static case, which also holds in the mobile case. In particular, a lower bound on the worstcase
running time of a previously known token circulation algorithm is proved. In the
second part of the dissertation, a self-stabilizing mutual exclusion algorithm is proposed
for mobile ad hoc networks, which is based on dynamic virtual rings formed by circulating
tokens. The difficulties resulting from mobility are dealt with in the analysis by showing
which properties hold for several kinds of mobile behavior; in particular, it is shown that
mutual exclusion always holds and different levels of progress hold depending on how
the mobility affects the token circulation. The third part of the dissertation presents two
broadcasting protocols which propagate a message from a source node to all of the nodes in
the network. Instead of relying on the frequently changing topology, the protocols depend
on a less frequently changing and more stable characteristic ĂÂąĂĂ the distribution of mobile
hosts. Constraints on distribution and mobility of mobile nodes are given which guarantee
that all the nodes receive the broadcast data
A framework for proving the self-organization of dynamic systems
This paper aims at providing a rigorous definition of self- organization, one
of the most desired properties for dynamic systems (e.g., peer-to-peer systems,
sensor networks, cooperative robotics, or ad-hoc networks). We characterize
different classes of self-organization through liveness and safety properties
that both capture information re- garding the system entropy. We illustrate
these classes through study cases. The first ones are two representative P2P
overlays (CAN and Pas- try) and the others are specific implementations of
\Omega (the leader oracle) and one-shot query abstractions for dynamic
settings. Our study aims at understanding the limits and respective power of
existing self-organized protocols and lays the basis of designing robust
algorithm for dynamic systems
Local Mutual Exclusion for Dynamic, Anonymous, Bounded Memory Message Passing Systems
Mutual exclusion is a classical problem in distributed computing that provides isolation among concurrent action executions that may require access to the same shared resources. Inspired by algorithmic research on distributed systems of weakly capable entities whose connections change over time, we address the local mutual exclusion problem that tasks each node with acquiring exclusive locks for itself and the maximal subset of its "persistent" neighbors that remain connected to it over the time interval of the lock request. Using the established time-varying graphs model to capture adversarial topological changes, we propose and rigorously analyze a local mutual exclusion algorithm for nodes that are anonymous and communicate via asynchronous message passing. The algorithm satisfies mutual exclusion (non-intersecting lock sets) and lockout freedom (eventual success with probability 1) under both semi-synchronous and asynchronous concurrency. It requires ?(?) memory per node and messages of size ?(1), where ? is the maximum number of connections per node. We conclude by describing how our algorithm can implement the pairwise interactions assumed by population protocols and the concurrency control operations assumed by the canonical amoebot model, demonstrating its utility in both passively and actively dynamic distributed systems
A scalable mutual exclusion algorithm for mobile ad hoc networks
2005-2006 > Academic research: refereed > Refereed conference paperVersion of RecordPublishe
Preserving Stabilization while Practically Bounding State Space
Stabilization is a key dependability property for dealing with unanticipated
transient faults, as it guarantees that even in the presence of such faults,
the system will recover to states where it satisfies its specification. One of
the desirable attributes of stabilization is the use of bounded space for each
variable. In this paper, we present an algorithm that transforms a stabilizing
program that uses variables with unbounded domain into a stabilizing program
that uses bounded variables and (practically bounded) physical time. While
non-stabilizing programs (that do not handle transient faults) can deal with
unbounded variables by assigning large enough but bounded space, stabilizing
programs that need to deal with arbitrary transient faults cannot do the same
since a transient fault may corrupt the variable to its maximum value. We show
that our transformation algorithm is applicable to several problems including
logical clocks, vector clocks, mutual exclusion, leader election, diffusing
computations, Paxos based consensus, and so on. Moreover, our approach can also
be used to bound counters used in an earlier work by Katz and Perry for adding
stabilization to a non-stabilizing program. By combining our algorithm with
that earlier work by Katz and Perry, it would be possible to provide
stabilization for a rich class of problems, by assigning large enough but
bounded space for variables.Comment: Moved some content from the Appendix to the main paper, added some
details to the transformation algorithm and to its descriptio
Self-stabilizing leader election in dynamic networks
The leader election problem is one of the fundamental problems in distributed computing. It has applications in almost every domain. In dynamic networks, topology is expected to change frequently. An algorithm A is self-stabilizing if, starting from a completely arbitrary configuration, the network will eventually reach a legitimate configuration.
Note that any self-stabilizing algorithm for the leader election problem is also an algorithm for the dynamic leader election problem, since when the topology of the network changes, we can consider that the algorithm is starting over again from an arbitrary state. There are a number of such algorithms in the literature which require large memory in each process, or which take O(n) time to converge, where n is size of the network. Given the need to conserve time, and possibly space, these algorithms may not be practical for the dynamic leader election problem.
In this thesis, three silent self-stabilizing asynchronous distributed algorithms are given for the leader election problem in a dynamic network with unique IDs, using the composite model of computation. If topological changes to the network pause, a leader is elected for each component. A BFS tree is also constructed in each component, rooted at the leader. When another topological change occurs, leaders are then elected for the new components. This election takes O (Diam) rounds, where Diam is the maximum diameter of any component.
The three algorithms differ in their leadership stability. The first algorithm, which is the fastest in the worst case, chooses an arbitrary process as the leader. The second algorithm chooses the process of highest priority in each component, where priority can be defined in a variety of ways. The third algorithm has the strictest leadership stability; if a component contains processes that were leaders before the topological change, one of those must be elected to be the new leader. Formal algorithms and their correctness proofs will be given
- âŠ