| 1 | <html> |
|---|
| 2 | <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> |
|---|
| 3 | <html> |
|---|
| 4 | <head> |
|---|
| 5 | <title> |
|---|
| 6 | PlanetSim: An Overlay Network Simulation Framework - Welcome |
|---|
| 7 | </title> |
|---|
| 8 | <style type="text/css"> |
|---|
| 9 | @import url("style/tigris.css"); |
|---|
| 10 | @import url("style/maven.css"); |
|---|
| 11 | span.MsoHyperlink |
|---|
| 12 | {color:blue; |
|---|
| 13 | text-decoration:underline; |
|---|
| 14 | text-underline:single;} |
|---|
| 15 | </style> |
|---|
| 16 | |
|---|
| 17 | <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1"></meta> |
|---|
| 18 | </head> |
|---|
| 19 | <body class="composite"> |
|---|
| 20 | <div id="banner"> |
|---|
| 21 | <table border="0" width="100%" cellpadding="8" cellspacing="0"> |
|---|
| 22 | <tr> |
|---|
| 23 | <td> |
|---|
| 24 | <img border="0" src="images/planetsimlogo.jpg" width="251" height="157"><span style="text-decoration: none"><a href="index.htm"></img></a></span> |
|---|
| 25 | <span style="text-decoration: none"> |
|---|
| 26 | <span style="font-weight: 700"><a href="index.html">An Overlay Network Simulation Framework</a></span></span></td> |
|---|
| 27 | <td width="222"> |
|---|
| 28 | <div id="login" align="right"> |
|---|
| 29 | <p><a href="http://ants.etse.urv.es/planet"> |
|---|
| 30 | <img border="0" src="images/logoplanet.jpg" width="150" height="142"></a></div> |
|---|
| 31 | </td> |
|---|
| 32 | </tr> |
|---|
| 33 | </table> |
|---|
| 34 | </div> |
|---|
| 35 | <div id="breadcrumbs"> |
|---|
| 36 | <table border="0" width="98%" cellpadding="4" cellspacing="0"> |
|---|
| 37 | <tr> |
|---|
| 38 | <td width="286"><font size="2">Last Updated: 11th April, 2005</font></td> |
|---|
| 39 | <td> |
|---|
| 40 | <div align="right"> |
|---|
| 41 | <font size="2"> |
|---|
| 42 | <a href="http://ants.etse.urv.es/planet"><img class="handle" src="images/none.png" alt=""></img>PLANET Project Page</a> |
|---|
| 43 | | |
|---|
| 44 | <a href="http://www.etse.urv.es/recerca/ast/"><img class="handle" src="images/none.png" alt=""></img></a><a href="http://www.etse.urv.es/recerca/ast/">AST |
|---|
| 45 | Research Group</a> |
|---|
| 46 | </font> |
|---|
| 47 | </div> |
|---|
| 48 | </td> |
|---|
| 49 | </tr> |
|---|
| 50 | </table> |
|---|
| 51 | </div> |
|---|
| 52 | <table border="0" width="100%" cellpadding="8" cellspacing="0"> |
|---|
| 53 | <tr valign="top"> |
|---|
| 54 | <td width="126" id="leftcol"> |
|---|
| 55 | <div id="navcolumn"> |
|---|
| 56 | <div> |
|---|
| 57 | <strong>PlanetSim</strong><div> |
|---|
| 58 | <small><a href="#Description"><img class="handle" src="images/none.png" alt=""></img>Description</a></small><br> |
|---|
| 59 | <small><a href="#Architecture"><img class="handle" src="images/none.png" alt=""></img>Architecture</a></small><br> |
|---|
| 60 | <small><a href="#Downloads"><img class="handle" src="images/none.png" alt=""></img>Downloads</a></small><br> |
|---|
| 61 | <small><a href="#Authors"><img class="handle" src="images/none.png" alt=""></img>Authors</a></small><br> |
|---|
| 62 | <small><a href="#Publications_"><img class="handle" src="images/none.png" alt=""></img>Publications</a></small><br> |
|---|
| 63 | <small><a href="#Related_Work"><img class="handle" src="images/none.png" alt=""></img>Related Work</a></small><br> |
|---|
| 64 | <small><a href="#TODO"><img class="handle" src="images/none.png" alt=""></img>TODO List</a></small><br> |
|---|
| 65 | </div> |
|---|
| 66 | <br> |
|---|
| 67 | |
|---|
| 68 | <strong>Documentation</strong> |
|---|
| 69 | <div> |
|---|
| 70 | <small> |
|---|
| 71 | <a href="api/index.html" ><img class="handle" src="images/none.png" alt="">Javadoc (API)</a></small></div> |
|---|
| 72 | <div> |
|---|
| 73 | <small> |
|---|
| 74 | <a href="docs.html"><img class="handle" src="images/none.png" alt="">Installation guide</a> |
|---|
| 75 | </small> |
|---|
| 76 | </div> |
|---|
| 77 | <div> |
|---|
| 78 | <small> |
|---|
| 79 | <a href="devel.html"><img class="handle" src="images/none.png" alt="">Developer's |
|---|
| 80 | guide</a></small><br> </div> |
|---|
| 81 | </div> |
|---|
| 82 | </div> |
|---|
| 83 | |
|---|
| 84 | </td> |
|---|
| 85 | <td rowspan="2"> |
|---|
| 86 | <div id="bodycol"> |
|---|
| 87 | <div class="app"> |
|---|
| 88 | <div class="h3"> |
|---|
| 89 | <h3> |
|---|
| 90 | <font size="2"><a name="Description">Description</a></font></h3> |
|---|
| 91 | <p style="text-align: justify; text-autospace: none"> |
|---|
| 92 | <span lang="EN-GB"><font size="2">PlanetSim is an object oriented simulation |
|---|
| 93 | framework for overlay networks and services. This framework presents |
|---|
| 94 | a layered and modular architecture with well defined hotspots |
|---|
| 95 | documented using classical design patterns. In PlanetSim, developers |
|---|
| 96 | can work at two main levels: creating and testing new overlay |
|---|
| 97 | algorithms like Chord or Pastry, or creating and testing new |
|---|
| 98 | services (DHT, CAST, DOLR, etc) on top of existing overlays. </font> </span> |
|---|
| 99 | </p> |
|---|
| 100 | <p style="text-align: justify; text-autospace: none"> |
|---|
| 101 | <span lang="EN-GB"><font size="2">PlanetSim also aims to enable a smooth transition |
|---|
| 102 | from simulation code to experimentation code running in the |
|---|
| 103 | Internet. Because of this, we provide wrapper code that takes care |
|---|
| 104 | of network communication and permits us to run the same code in |
|---|
| 105 | network testbeds such as PlanetLab. Moreover, distributed services |
|---|
| 106 | in the simulator use the Common API for Structured Overlays. This |
|---|
| 107 | enables complete transparency to services running either against the |
|---|
| 108 | simulator or the network.</font></span></p> |
|---|
| 109 | <p style="text-align: justify; text-autospace: none"> |
|---|
| 110 | <span lang="EN-GB"><font size="2">PlanetSim has been developed in the Java language |
|---|
| 111 | to reduce complexity and smooth the learning curve in our framework. |
|---|
| 112 | We however have profiled and optimised the code to enable scalable |
|---|
| 113 | simulations in reasonable time. To validate the utility of our |
|---|
| 114 | approach, we have implemented two overlays (Chord and Symphony) and |
|---|
| 115 | a variety of services like CAST, DHT, and object middleware. We have |
|---|
| 116 | proved that PlanetSim reproduces the measures of these environments |
|---|
| 117 | and is also efficient in its network implementation.</font></span></p> |
|---|
| 118 | |
|---|
| 119 | |
|---|
| 120 | <h3> |
|---|
| 121 | <font size="2">PlanetSim <a name="Architecture">Architecture</a></font></h3> |
|---|
| 122 | <p style="text-align: justify"><span lang="EN-GB"><font size="2">PlanetSim’s architecture comprises |
|---|
| 123 | three main extension layers constructed one atop another. Applications |
|---|
| 124 | are built in the upper layer using the standard Common API façade. This |
|---|
| 125 | façade is built on the routing services offered by the underlying |
|---|
| 126 | overlay layer. Besides, the overlay layer obtains proximity information |
|---|
| 127 | to other nodes asking information to the Network layer. |
|---|
| 128 | </font></span></p> |
|---|
| 129 | <p style="text-align: justify"><span lang="EN-GB"><font size="2">The Simulator dictates the overall life cycle of the framework by |
|---|
| 130 | calling the appropriate methods in the overlay's Node and obtaining |
|---|
| 131 | routing information to dispatch messages through the Network.</font></span></p> |
|---|
| 132 | <p style="text-align: justify"> </p> |
|---|
| 133 | <p style="text-align: center"> |
|---|
| 134 | <img border="0" src="images/layers.jpg"></p> |
|---|
| 135 | <p> </br></p> |
|---|
| 136 | <h3><span style="background-repeat: repeat"><font size="2"> |
|---|
| 137 | <a name="Downloads">Downloads</a></font></span></h3> |
|---|
| 138 | <table cellSpacing="0" cellPadding="8" width="100%" border="0" id="table1"> |
|---|
| 139 | <tr vAlign="top"> |
|---|
| 140 | <td rowSpan="2"> |
|---|
| 141 | <div id="bodycol0"> |
|---|
| 142 | <div class="app"> |
|---|
| 143 | <div class="h3"> |
|---|
| 144 | <blockquote> |
|---|
| 145 | <p><font size="2"><i>Distribution</i>: Source |
|---|
| 146 | and binary code, written and compiled in Java |
|---|
| 147 | v1.4.2. <i>License</i>: PlanetSim is available |
|---|
| 148 | under a |
|---|
| 149 | <a href="http://www.gnu.org/copyleft/lesser.html"> |
|---|
| 150 | LGPL</a>-like license.</font></p> |
|---|
| 151 | <ul> |
|---|
| 152 | <li><font size="2">April 11, 2005. Release 2.0.2 Alpha.</font> |
|---|
| 153 | <ul> |
|---|
| 154 | <li><font size="2"><u>Release Notes</u>: |
|---|
| 155 | Fixed bugs that correct the selected nodes as bootstrap on the behaviours based implementation.<br> |
|---|
| 156 | This version will be optimized to guarantee the same efficiency and speedup found in the release 1.0.</font></li> |
|---|
| 157 | <li><font size="2"><b><u>Download</u></b>: |
|---|
| 158 | <a href="planetsim_2.0.2.zip">planetsim_2.0.2.zip</a> [source + binaries + javadoc]</font></li> |
|---|
| 159 | </ul> |
|---|
| 160 | <li><font size="2">April 8, 2005. Release |
|---|
| 161 | 2.0.1 Alpha.</font> |
|---|
| 162 | <ul> |
|---|
| 163 | <li><font size="2"><u>Release Notes</u>: |
|---|
| 164 | </font><font size="2">Fixed bugs that permits run correctly the application layer over the new Symphony implementation, based on behaviours. <br> |
|---|
| 165 | This version will be optimized to guarantee the same |
|---|
| 166 | efficiency and speedup found in the release 1.0.</font></li> |
|---|
| 167 | <li><font size="2"><b><u>Download</u></b>: |
|---|
| 168 | <a href="planetsim_2.0.1.zip"> |
|---|
| 169 | planetsim_2.0.1.zip</a> [source + binaries + javadoc]</font> </li> |
|---|
| 170 | </ul> |
|---|
| 171 | </li> |
|---|
| 172 | |
|---|
| 173 | <li><font size="2">March 13, 2005. Release |
|---|
| 174 | 2.0 Alpha.</font> |
|---|
| 175 | <ul> |
|---|
| 176 | <li><font size="2"><u>Release Notes</u>: |
|---|
| 177 | </font><font size="2">This version |
|---|
| 178 | mantains the Chord and Symphony overlay |
|---|
| 179 | implementations under the simulation |
|---|
| 180 | framework.<br> |
|---|
| 181 | Also includes GML output generation, fixed |
|---|
| 182 | bugs on Id generation, added new methods |
|---|
| 183 | as upcalls and downcalls between application |
|---|
| 184 | and node layer and more.<br> |
|---|
| 185 | The Symphony overlay implementation has been |
|---|
| 186 | replaced with another one based on Behaviours.<br> |
|---|
| 187 | It also includes the Javadoc html |
|---|
| 188 | documentation. <br> |
|---|
| 189 | This version will be optimized to guarantee the same |
|---|
| 190 | efficiency and speedup found in the earlier release.</font></li> |
|---|
| 191 | <li><font size="2"><b><u>Download</u></b>: |
|---|
| 192 | <a href="planetsim_2.0.zip"> |
|---|
| 193 | planetsim_2.0.zip</a> [source + binaries + javadoc]</font> </li> |
|---|
| 194 | </ul> |
|---|
| 195 | </li> |
|---|
| 196 | |
|---|
| 197 | <li><font size="2">July 09, 2004. Release |
|---|
| 198 | 1.0.</font> |
|---|
| 199 | <ul> |
|---|
| 200 | <li><font size="2"><u>Release Notes</u>: |
|---|
| 201 | </font><font size="2">This version |
|---|
| 202 | includes the Chord and Symphony overlay |
|---|
| 203 | implementations under the simulation |
|---|
| 204 | framework.<br> |
|---|
| 205 | It also includes the Javadoc html |
|---|
| 206 | documentation. </font></li> |
|---|
| 207 | <li><font size="2"><b><u>Download</u></b>: |
|---|
| 208 | <a href="planetsim_1_0.zip"> |
|---|
| 209 | planetsim_1_0.zip</a> [source + binaries |
|---|
| 210 | ]</font> </li> |
|---|
| 211 | </ul> |
|---|
| 212 | </li> |
|---|
| 213 | </ul> |
|---|
| 214 | </blockquote> |
|---|
| 215 | </div> |
|---|
| 216 | </div> |
|---|
| 217 | </div> |
|---|
| 218 | </td> |
|---|
| 219 | </tr> |
|---|
| 220 | </table> |
|---|
| 221 | <p> </p> |
|---|
| 222 | <h3><span style="background-repeat: repeat"><font size="2"> |
|---|
| 223 | <a name="Authors">Authors</a></font></span></h3> |
|---|
| 224 | <blockquote> |
|---|
| 225 | <P><b><font size="2">Jordi Pujol Ahulló</font></b><font size="2">, M. Sc. Computer Science |
|---|
| 226 | Student in the Department of Computer Science and Mathematics at |
|---|
| 227 | Universitat Rovira i Virgili in Tarragona, Catalonia, Spain. Contact</font> |
|---|
| 228 | <<a href="mailto:jordi.pujol@estudiants.urv.es">jordi.pujol@estudiants.urv.es</a>> |
|---|
| 229 | </P> |
|---|
| 230 | |
|---|
| 231 | <p><font size="2"><b><a href="http://ants.etse.urv.es/planet/rmondejar">Rubén Mondéjar Andreu</a></b>, |
|---|
| 232 | M. Sc. Computer Science Student in the Department of Computer Science and |
|---|
| 233 | Mathematics at Universitat Rovira i Virgili in Tarragona, Catalonia, |
|---|
| 234 | Spain. Contact</font> |
|---|
| 235 | <<a href="mailto:ruben.mondejar@estudiants.urv.es">ruben.mondejar@estudiants.urv.es</a>> |
|---|
| 236 | </p> |
|---|
| 237 | |
|---|
| 238 | <P><b><font size="2">Helio Tejedor Navarro</font></b><font size="2">, M. Sc. Computer Science |
|---|
| 239 | Student in the Department of Computer Science and Mathematics at |
|---|
| 240 | Universitat Rovira i Virgili in Tarragona, Catalonia, Spain. Contact</font> |
|---|
| 241 | <<a href="mailto:heliodoro.tejedor@estudiants.urv.es">heliodoro.tejedor@estudiants.urv.es</a>> |
|---|
| 242 | </P> |
|---|
| 243 | <P><b><font size="2">Marc Sanchez Artigas</font></b><font size="2">, PhD student in the Department |
|---|
| 244 | of Computer Science and Mathematics at Universitat Rovira i Virgili in Tarragona, Catalonia, Spain. |
|---|
| 245 | Contact </font> |
|---|
| 246 | <<a href="mailto:marc.sanchez@estudiants.urv.es">marc.sanchez@estudiants.urv.es</a>> |
|---|
| 247 | </P> |
|---|
| 248 | |
|---|
| 249 | <p><font size="2"><b><a href="http://www.etse.urv.es/~pgarcia">Pedro |
|---|
| 250 | García López</a></b>, full-time professor in the Department of |
|---|
| 251 | Computer Science and Mathematics at Universitat Rovira i Virgili in |
|---|
| 252 | Tarragona, Catalonia, Spain. Contact |
|---|
| 253 | <<a href="mailto:pgarcia@etse.urv.es">pgarcia@etse.urv.es</a>> |
|---|
| 254 | </font></p> |
|---|
| 255 | |
|---|
| 256 | <p><font size="2"><b><a href="http://www.etse.urv.es/~cpairot">Carles Pairot Gavaldà</a></b>, |
|---|
| 257 | PhD student in the Department of Computer Science and Mathematics at Universitat Rovira i Virgili in |
|---|
| 258 | Tarragona, Catalonia, Spain. Contact |
|---|
| 259 | <<a href="mailto:cpairot@etse.urv.es">cpairot@etse.urv.es</a>> |
|---|
| 260 | </font></p> |
|---|
| 261 | |
|---|
| 262 | </blockquote> |
|---|
| 263 | |
|---|
| 264 | <h3><font size="2"><a name="Publications_">Publications</a></font></h3> |
|---|
| 265 | <p> </p> |
|---|
| 266 | <p><font size="2"><b>2005</b> |
|---|
| 267 | <ul> |
|---|
| 268 | <li>Pedro García, Carles Pairot, Rubén Mondéjar, Jordi Pujol, Helio Tejedor, and Robert Rallo. <b><a href="http://www.springerlink.com/index/10.1007/11407386_10" target="_blank">PlanetSim: A New Overlay Network Simulation Framework</a></b>. 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. |
|---|
| 269 | </li> |
|---|
| 270 | </ul> |
|---|
| 271 | <b>2004</b> |
|---|
| 272 | <ul> |
|---|
| 273 | <li>Pedro García, Carles Pairot, Rubén Mondéjar, Jordi Pujol, Helio Tejedor, and Robert Rallo. <b>PlanetSim: A New Overlay Network Simulation Framework</b>. 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%. |
|---|
| 274 | </li> |
|---|
| 275 | </ul> |
|---|
| 276 | </font></p> |
|---|
| 277 | <p> </p> |
|---|
| 278 | <h3><span style="background-repeat: repeat"> |
|---|
| 279 | <font size="2"><a name="Related_Work">Related Work</a></font></span></h3> |
|---|
| 280 | <blockquote> |
|---|
| 281 | <p><font size="2">The Chord Project</font></p> |
|---|
| 282 | <p><a href="http://www.pdos.lcs.mit.edu/chord/"> |
|---|
| 283 | <font size="2" color="#006699">http://www.pdos.lcs.mit.edu/chord/</font></a></p> |
|---|
| 284 | <p><font size="2">Pastry, Scribe, FreePastry</font></p> |
|---|
| 285 | <p><a href="http://freepastry.rice.edu/"> |
|---|
| 286 | <font size="2" color="#006699">http://freepastry.rice.edu/</font></a></p> |
|---|
| 287 | <p><font size="2">P2Psim </font></p> |
|---|
| 288 | <p><a href="http://www.pdos.lcs.mit.edu/p2psim/"> |
|---|
| 289 | <font size="2" color="#006699">http://www.pdos.lcs.mit.edu/p2psim/</font></a></p> |
|---|
| 290 | <p><font size="2">MACEDON </font></p> |
|---|
| 291 | <p><a href="http://macedon.kcubes.com/"> |
|---|
| 292 | <font size="2" color="#006699">http://macedon.kcubes.com/</font></a><br> |
|---|
| 293 | </p> |
|---|
| 294 | </blockquote> |
|---|
| 295 | <h3><span style="background-repeat: repeat"> |
|---|
| 296 | <font size="2"><a name="TODO">TODO</a> List</font></span></h3> |
|---|
| 297 | <p><font size="2">This framework is an open project, we present the new |
|---|
| 298 | features that can be implement by anyone.</font></p> |
|---|
| 299 | <blockquote> |
|---|
| 300 | <p><b><font size="2">Priority messages</font></b></p> |
|---|
| 301 | <p><font size="2">Now priority of the all message are the same.</font></p> |
|---|
| 302 | <p><b><font size="2">Proximity</font></b></p> |
|---|
| 303 | <p><font size="2">In the current version, for the framework the real |
|---|
| 304 | distance between the nodes does not have importance.</font></p> |
|---|
| 305 | <p><b><font size="2">NetworkWrapper evolution</font></b></p> |
|---|
| 306 | <p><font size="2">In this moment, the experimentation part is a alpha |
|---|
| 307 | version.</font></p> |
|---|
| 308 | <p><b><font size="2">Viewer Tools</font></b></p> |
|---|
| 309 | <p><font size="2">It would be interesting that the results be presented |
|---|
| 310 | in a 3D model for example.</font></p> |
|---|
| 311 | <p><b><font size="2">Distributed simulator</font></b></p> |
|---|
| 312 | <p><font size="2">It would be interesting too, that the framework don't |
|---|
| 313 | only works in a unique machine, to distributed the load in a machine set |
|---|
| 314 | (LAN,cluster, etc).</font></p> |
|---|
| 315 | <p><b><font size="2">New overlay protocols</font></b></p> |
|---|
| 316 | <p><font size="2">We have said one of the few extension of the framework |
|---|
| 317 | is the protocol extension, so can be implement new overlays as Pastry, |
|---|
| 318 | Kademlia, etc....</font></p> |
|---|
| 319 | <p><b><font size="2">New applications</font></b></p> |
|---|
| 320 | <p><font size="2">The same of the previous feature, but in this case the |
|---|
| 321 | extension is at the application level.</font></p> |
|---|
| 322 | </blockquote> |
|---|
| 323 | <p></br></p> |
|---|
| 324 | </p> |
|---|
| 325 | </div> |
|---|
| 326 | </div> |
|---|
| 327 | </div> |
|---|
| 328 | </td> |
|---|
| 329 | </tr> |
|---|
| 330 | </table> |
|---|
| 331 | <div id="footer"> |
|---|
| 332 | <table border="0" style="width:100%" cellpadding="4" cellspacing="0"> |
|---|
| 333 | <tr> |
|---|
| 334 | <td> |
|---|
| 335 | <font size="2">© 2003-2004 Rubén Mondéjar |
|---|
| 336 | <<a href="mailto:ruben.mondejar@etse.urv.es">Ruben.Mondejar@estudiants.urv.es</a>></font></td> |
|---|
| 337 | </tr> |
|---|
| 338 | </table> |
|---|
| 339 | </div> |
|---|
| 340 | </body> |
|---|
| 341 | </html> |
|---|
| 342 | |
|---|