Python Overlay Network Graphical Simulator - PONGsim
Introduction
PONGsim is a discrete-event simulator for simulating overlay networks such as those formed by peer-to-peer systems. The simulator is implemented in the Python language, which allows for rapid prototyping with less time spent on coding. The philosophy behind the choice of language is that coding and experimenting should be quick, while the running time of the simulation is less important (final simulations run over-night anyway). The PONGsim framework allows implementation of new applications for generating overlay topologies and for performing searching and index distribution. PONGsim includes an implementation of the Search/Index Link (SIL) model [1].
Features:
- PONGsim is implemented in the Python language with emphasis on easy and rapid prototyping instead of runtime performance.
- PONGsim supports a batch mode and a graphical mode. The graphical mode is useful for prototyping and debugging new algorithms. The batch mode is useful for collecting statistics and evaluating how individual parameters affect the performance of an algorithm.
- PONGsim supports several instances to be run in parallel in batch mode. The instances select the following scenario from a common queue. The simulator controls the output files so that the output is not mixed between the instances. This is useful in computers with several processors or cores.
- PONGsim supports collection of statistics using several statistic tools.
- PONGsim allows easy definition of scenarios and access of scenario parameters from the code. Value ranges allow iterations of several values for a set of parameters.
- PONGsim supports repeating the same scenario multiple times and averaging the statistics.
- PONGsim supports adjusting the speed, allowing the operation to be examined in slow motion. Pausing allows individual simulation events to be run in steps. The redraw-interval in can be adjusted to allow a high speed also in the graphical mode.
- PONGsim uses a modular structure allowing easy implementation of new algorithms and architectures.
- PONGsim has short and fairly self-explanatory code with basic documentation.
- PONGsim implements a set of common unstructured peer-to-peer systems. Structured systems are currently under development.
License
PONGsim is released under
MIT license
Documentation
Introduction
PyDoc documentation
Download
PONGsim v6.20 (march 2007) Download
PONGsim v7.50 (april 2007) Download
PONGsim v8.10 (may 2009) Download
PONGsim v8.50 (march 2010) Download
References
[1] B. F. Cooper and H. Garcia-Molina, “SIL: Modeling and Measuring Scalable Peer-to-Peer Search Networks”, in International Workshop on Databases, Information Systems and Peer-to-Peer Computing, 2003
Tietoverkkolaboratorio on nyt osa Tietoliikenne- ja tietoverkkotekniikan
laitosta. Tällä sivulla oleva tieto voi olla
vanhentunutta.