Topics in Distributed Algorithms: On Wireless Networks, Distributed Storage and Streaming
Distributed algorithms are executed on a set of computational instances. We
refer to these instances as nodes. Nodes are running
concurrently and are independent from each other. Furthermore, they have their own
instructions and information. In this context, the challenges are to show that
the algorithm is correct, regardless of computational, or communication delays
and to show bounds on the usage of communication.
We are especially interested the behaviour after transient faults and under
the existence of Byzantine nodes.
This thesis discusses fundamental communication models for distributed algorithms.
These models are implementing abstract communication methods.
First, we address medium access control for a wireless medium with guarantees
on the communication delay. We discuss time division multiple access
(TDMA) protocols for ad-hoc networks and we introduce an algorithm that creates a
TDMA schedule without using external references for localisation, or time.
We justify our algorithm by experimental results.
The second topic is the emulation of shared memory on message passing
networks. Both, shared memory and message passing are basic interprocessor
communication models for distributed algorithms. We are providing a way of
emulating shared memory on top of an existing message passing network under
the presence of data corruption and stop-failed nodes. Additionally, we ensure
the privacy of the data that is stored in the shared memory.
The third topic looks into streaming algorithms and optimisation.
We study the problem of sorting a stream ofvehicles on a highway with several
lanes so that each vehicle reaches its target lane. We look into optimality in
terms of minimising the number of move operations, as well as, minimising the
length of the output stream. We present an exact algorithm for the case of
two lanes and show that NP-Hardness for a increasing number of lanes.
Time Division Multiple Access