20/04/07 - PlanetSim has its own Trac for helping on the development.
27/07/06 - PlanetSim has becomed a SourceForge.net project
27/07/05 - PlanetSim v3.0 released!
For contact us, first make you a review on our mailing list or, even though, subscribe to them:
- PlanetSim Help: If you have some general questions about PlanetSim, this is your mailing list. We can help you to understand or answer your doubts or questions.
- PlanetSim Devel: If you are a PlanetSim developer and need some help for your work, please search your answer or make your questions here.
Otherwise, if you have not found your answer or your question is not related to the above mailing lists, please, send us an email to Jordi Pujol.
PlanetSim is an object oriented simulation
framework for overlay networks 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’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.
Distribution: Source
and binary code, written and compiled in Java
v1.4.2. License: PlanetSim is available
under a
LGPL-like license.
- July 27, 2006. PlanetSim at SourceForge.net.
PlanetSim has becomed a SourceForge project. Now on, you will be able to find the latest versions at
SourceForge. The official and
maintained branch is the package planetsim. Other packages, like collaborations, are useful work and collaborations but
not managed and maintained by the PlanetSim Core Team.
- July 29, 2005. Release 3.0 Candidate.
- Release Notes:
New structure of the simulator kernel:
- Includes all factories as in the last versions.
- Added the behaviours in the internal simulator kernel structure.
- Added the ability to get different outputs following some results type (by default, GML and Pajek).
- Added a Trivial P2P to show how works an overlay very simple.
- Fixed all other minors bugs.
Reviewed and optimized the resources use for any simulation case. Its efficiency and speedup
is the most near to the old results.
Important: This version is incompatible with the rest. We recommend to update to this last version.
- Download:
planetsim_3.0.zip [source + binaries + javadoc]
- April 11, 2005. Release 2.0.2 Alpha.
- Release Notes:
Fixed bugs that correct the selected nodes as bootstrap on the behaviours based implementation.
This version will be optimized to guarantee the same efficiency and speedup found in the release 1.0.
- Download:
planetsim_2.0.2.zip [source + binaries + javadoc]
- April 8, 2005. Release
2.0.1 Alpha.
- Release Notes:
Fixed bugs that permits run correctly the application layer over the new Symphony implementation, based on behaviours.
This version will be optimized to guarantee the same
efficiency and speedup found in the release 1.0.
- Download:
planetsim_2.0.1.zip [source + binaries + javadoc]
- March 13, 2005. Release
2.0 Alpha.
- Release Notes:
This version
mantains the Chord and Symphony overlay
implementations under the simulation
framework.
Also includes GML output generation, fixed
bugs on Id generation, added new methods
as upcalls and downcalls between application
and node layer and more.
The Symphony overlay implementation has been
replaced with another one based on Behaviours.
It also includes the Javadoc html
documentation.
This version will be optimized to guarantee the same
efficiency and speedup found in the earlier release.
- Download:
planetsim_2.0.zip [source + binaries + javadoc]
- July 09, 2004. Release
1.0.
- Release Notes:
This version
includes the Chord and Symphony overlay
implementations under the simulation
framework.
It also includes the Javadoc html
documentation.
- Download:
planetsim_1_0.zip [source + binaries
]
|
Jordi Pujol Ahulló, PhD Student
in the Department of Computer Science and Mathematics at
Universitat Rovira i Virgili in Tarragona, Catalonia, Spain. Contact
<jordi.pujol@urv.net>
Rubén Mondéjar Andreu,
PhD Student in the Department of Computer Science and
Mathematics at Universitat Rovira i Virgili in Tarragona, Catalonia,
Spain. Contact
<ruben.mondejar@urv.net>
Helio Tejedor Navarro, Graduated M. Sc. Computer Science
in the Department of Computer Science and Mathematics at
Universitat Rovira i Virgili in Tarragona, Catalonia, Spain. Contact
<heliodoro.tejedor@urv.cat>
Marc Sanchez Artigas, PhD student in the Department
of Computer Science and Mathematics at Universitat Rovira i Virgili in Tarragona, Catalonia, Spain.
Contact
<marc.sanchez@urv.net>
Pedro
García López, full-time professor in the Department of
Computer Science and Mathematics at Universitat Rovira i Virgili in
Tarragona, Catalonia, Spain. Contact
<pedro.garcia@urv.net>
Carles Pairot Gavaldà,
PhD student in the Department of Computer Science and Mathematics at Universitat Rovira i Virgili in
Tarragona, Catalonia, Spain. Contact
<carles.pairot@urv.net>
27-07-2006:
New collaborations will appear at SourceForge.net when
they would come. See the [Notes] beside each collaboration title to have an overview of that work and its author/s. All collaborations are not
maintained by the PlanetSim Core Team.
09-05-2006:
Monica Haladyna Braunisch has extended PlanetSim to add SHA-2 support (with Ids up to 512 bits)
and building Node Ids based on IP addresses (both IPv4 and IPv6).
It is the result of her Thesis in the Field of Information Technology
for the Degree of Master of Liberal Arts in Extension Studies, by the Harvard University, certified by Prof. Scott Bradner.
PDF. Her work (ZIP). Thanks!!
Would you want to be a PlanetSim collaborator and appear your name in this site?
You have to develop only a contribution and its documentation (Javadoc in source code + PDF)
and send all together us to jordi.pujol(at)urv.cat. After being reviewed
your name will appear above these lines.
2005
- Pedro García, Carles Pairot, Rubén Mondéjar, Jordi Pujol, Helio Tejedor, and Robert Rallo. 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. [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%.
The Chord Project
http://www.pdos.lcs.mit.edu/chord/
Pastry, Scribe, FreePastry
http://freepastry.rice.edu/
P2Psim
http://www.pdos.lcs.mit.edu/p2psim/
MACEDON
http://macedon.kcubes.com/
Currently the PlanetSim can show the network topology as a GML or Pajek outputs. See these examples:
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.
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, not included into the current PlanetSim distribution.
This framework is an open project, we present the new
features that can be implement by anyone.
Priority messages
Now priority of the all message are the same.
Proximity
In the current version, for the framework the real
distance between the nodes does not have importance.
NetworkWrapper evolution
In this moment, the experimentation part is a alpha
version.
Viewer Tools
It would be interesting that the results be presented
in a 3D model for example.
Distributed simulator
It would be interesting too, that the framework don't
only works in a unique machine, to distributed the load in a machine set
(LAN,cluster, etc).
New overlay protocols
We have said one of the few extension of the framework
is the protocol extension, so can be implement new overlays as Pastry,
Kademlia, etc....
New applications
The same of the previous feature, but in this case the
extension is at the application level.