- PlanetSim
PlanetSim is an object oriented
simulation framework foroverlay network s and services. This framework presents a layered and modular architecture with well defined hotspots documented using classical design patterns. In PlanetSim, developers can work at two main levels: creating and testing new overlay algorithms like Chord or Pastry, or creating and testing new services (DHT, CAST, DOLR, etc) on top of existing overlays.PlanetSim also aims to enable a smooth transition from simulation code to experimentation code running in the Internet. Because of this, we provide wrapper code that takes care of network communication and permits us to run the same code in network testbeds such as
PlanetLab . Moreover, distributed services in the simulator use the Common API for Structured Overlays. This enables complete transparency to services running either against the simulator or the network.PlanetSim has been developed in the Java language to reduce complexity and smooth the learning curve in our framework. We however have profiled and optimised the code to enable scalable simulations in reasonable time. To validate the utility of our approach, we have implemented two overlays (Chord and Symphony) and a variety of services like CAST, DHT, and object
middleware . We have proved that PlanetSim reproduces the measures of these environments and is also efficient in its network implementation.PlanetSim Architecture
PlanetSim’s architecture comprises three main extension layers constructed one atop another. Applications are built in the upper layer using the standard Common API façade. This façade is built on the routing services offered by the underlying overlay layer. Besides, the overlay layer obtains proximity information to other nodes asking information to the Network layer.
The Simulator dictates the overall life cycle of the framework by calling the appropriate methods in the overlay's Node and obtaining routing information to dispatch messages through the Network.
Publications
2005
* Pedro García, Carles Pairot, Rubén Mondéjar, Jordi Pujol, Helio Tejedor, and Robert Rallo. [http://www.springerlink.com/index/10.1007/11407386_10 PlanetSim: A New Overlay Network Simulation Framework] . Lecture Notes in Computer Science (LNCS), Volume 3437. Software Engineering and Middleware, SEM 2004, Linz, Austria. Revised Selected Papers. March 2005, pp. 123-137. ISSN 0302-9743. ISBN 3-540-25328-9. [http://planet.urv.es/planetsim/planetsim.pdf pdf]
2004
* Pedro García, Carles Pairot, Rubén Mondéjar, Jordi Pujol, Helio Tejedor, and Robert Rallo. PlanetSim: A New Overlay Network Simulation Framework. Proceedings of the 19th IEEE International Conference on Automated Software Engineering (ASE 2004). Workshop on Software Engineering and Middleware (SEM 2004). Linz, Austria, September 2004. ISBN 3-902457-02-3. Acceptance Rate: 34%.
Graphical Results
Currently the PlanetSim can show the network topology as a GML or Pajek outputs. See these examples:
Chord
A Chord network with 1000 nodes, whose node Ids are randomly built. This output is obtained loading the output file into the yEd graph editor, included into the current PlanetSim distribution.
Symphony
A Symphony network with 1000 nodes, whose node Ids are randomly built. This output is obtained loading the output file into the Pajek graph editor (only Windows version), not included into the current PlanetSim distribution.
External links
* [http://planet.urv.es/planetsim/ PlanetSim official website]
* [http://sourceforge.net/projects/planetsim/ PlanetSim at SourceForge.net] . This site holds the latest release and collaborations.
Wikimedia Foundation. 2010.