IMPLEMENTING THE DISTRIBUTED BREADTH FIRST SEARCH ALGORITHM IN OMNET++ FOR TEACHING AND LEARNING PURPOSES
Keywords:
Distributed algorithms, graph algorithms, breadth first search algorithm, simulation for education, omnet++Abstract
A distributed system is considered as a set of computers communicating through the network and running collaboratively to coordinate their activities and to share the resources of the system to achieve a common goal. The coordination is achieved by exchanging messages, which carry information. Distributed algorithms play a crucial role in this coordination. However, teaching and learning distributed algorithms is difficult due to the inherent complexities of the distributed system. Since it is costly to construct a network of computers to run distributed algorithms to conduct research, teach and learn, many commercial and freely available open source simulation tools have been developed for simulating network systems and hence, distributed systems. These tools facilitate the development of distributed algorithms for different environments. One of these tools is OMNET++, which is a component-based C++ simulation library and framework for building network simulators and offers a graphical runtime environment.To facilitate the understanding of the working mechanism, a distributed system can be modeled as a graph. Each computer in the distributed system is represented by a vertex, called node and a link between two computers is represented by an edge. Hereby, many graph algorithms can be utilized within a distributed system. For instance, traversal of computers (nodes) in a distributed system is important and used for solving many problems. Many algorithms provide traversal of nodes. In this study, we would like to demonstrate the use of a simulation tool for teaching and learning one of the fundamental distributed graph algorithms called Breadth First Search (BFS) algorithm. We use OMNET++ to visualize the steps of constructing a BFS tree, where colors of edges are dynamically changed to indicate the inner workings of the algorithm. In addition, a learner can visually trace the flow of the messages between nodes in the simulation.Downloads
Published
How to Cite
Issue
Section
License
Copyright (c) 2016 The Eurasia Proceedings of Educational and Social Sciences
This work is licensed under a Creative Commons Attribution-NonCommercial-ShareAlike 4.0 International License.
The articles may be used for research, teaching, and private study purposes. Any substantial or systematic reproduction, redistribution, reselling, loan, sub-licensing, systematic supply, or distribution in any form to anyone is expressly forbidden. Authors alone are responsible for the contents of their articles. The journal owns the copyright of the articles. The publisher shall not be liable for any loss, actions, claims, proceedings, demand, or costs or damages whatsoever or howsoever caused arising directly or indirectly in connection with or arising out of the use of the research material. All authors are requested to disclose any actual or potential conflict of interest including any financial, personal or other relationships with other people or organizations regarding the submitted work.