Fast protocol transition in a distributed environment (brief announcement)
Proceedings of the nineteenth annual ACM symposium on Principles of distributed computing
Structural and algorithmic issues of dynamic protocol update
IPDPS'06 Proceedings of the 20th international conference on Parallel and distributed processing
Run-time switching between total order algorithms
Euro-Par'06 Proceedings of the 12th international conference on Parallel Processing
Self-stabilizing distributed protocol switching
ICDCN'08 Proceedings of the 9th international conference on Distributed computing and networking
Adaptive broadcast by fault-tolerant spanning tree switching
Journal of Parallel and Distributed Computing
Enhancing group communication with self-manageable behavior
Journal of Parallel and Distributed Computing
Hi-index | 0.00 |
Adaptation is a desirable requirement in a distributed system since it helps the system to perform gracefully under different scenarios. There are many adaptive algorithms for different problems. However the techniques are often application specific. In many distributed systems it may happen that the same problem has multiple protocols, each of which performs differently under different environments. In such cases adaptation can be achieved by dynamically switching between them as the environment changes. In this paper we illustrate the idea of designing adaptive distributed system using protocol switching by presenting an adaptive broadcast protocol that uses either a BFS tree or a DFS tree depending on the load of the system, both trees being rooted at the broadcast source. At low load a BFS tree is used as it reduces the broadcast delay (since the distance of any node from the root is always minimum in a BFS tree) while still keeping the load on any one node low. However at higher load a DFS tree is used to reduce the load on any one node since the degree of a node in a DFS tree is generally lower than that in a BFS tree. So the broadcast adapts to the network load by dynamically switching between a BFS tree and a DFS tree. In the proposed scheme, the switching is done by a middleware layered below the broadcast protocol. This separates the adaptation from the application and no change is needed in the application. We also ensure the application layer property that every broadcast message is correctly delivered to all the nodes, including messages sent when the switching is in progress. We assume the asynchronous model of distributed system with reliable but non-FIFO channels. Also it is assumed that no failure occurs during the switching. The message complexity of the algorithm that switches to a DFS tree is O(|E|) and is presented in the next section. The algorithm that switches to a BFS tree needs O(|V||E|) messages and is omitted in this paper due to lack of space.