A distributed system is a piece of software that ensures a collection of independent computers to appear to its users as a single coherent system. The software simulating this is a distributed system simulator. A Distributed system simulator is used for evaluating the performance of the different algorithms such as middleware routing algorithms. In actual implementation it is difficult to evaluate effectively a large-scale distributed system which has substantial resource requirements in terms of node count and network topology. This project aims at developing distributed system simulator for testing and evaluating different algorithms intended to be run over large distributed systems like the internet. Existing Distributed system simulators are far less realistic. The newly developed simulator is a more realistic one incorporating new features such as different types of physical links, dynamic link failure and recovery simulation and it provides an enhanced logical visualization of the overlay network.