JProwler – A simple Wireless Network Simulator in Java

When I was a visiting researcher at the Institute of Software Integrated Systems at Vanderbuilt University in 2005, I learnt about a Wireless Network Simulator named JProwler. JProwler evolved from a simulator named PROWLER, short for Probabilistc Wireless Network Simulator.

What I liked was the compact format, the whole simulator fits into less than 20 well-structured Java classes, while implementing a simulator with different timing modes, a graphical display and an event-based underlying simulation engine.

For this reason, I still use JProwler in a lecture on network simulation as an example how a simulator could be implemented from scratch. Unfortunately, a student recently told me that the offificial download for JPROWLER is gone, therefore I provide the code, which is under a free software license here for download:

See also this paper from the authors of PROWLER and JPROWLER explaining the concepts:

G. Simon, P. Volgyesi, M. Maroti, and A. Ledeczi, “Simulation-based optimization of communication protocols for large-scale wireless sensors networks,” Proceedings of the IEEE Aerospace Conference 3:1339–1346, March, 2003.

and this work showing what can be done with JPROWLER:

H. Adam, W. Elmenreich, C. Bettstetter, and S. M. Senouci. CoRe-MAC: A MAC-protocol for cooperative relaying in wireless networks. In Proceedings of the 2009 IEEE Global Communication Conference (Globecom), Honolulu, Hawaii, 2009.


About Wilfried Elmenreich

Understanding the communication networks of the future.
This entry was posted in Protocols, Simulation, Wireless Networks and tagged , , . Bookmark the permalink.

Leave a Reply

Fill in your details below or click an icon to log in: Logo

You are commenting using your account. Log Out /  Change )

Google+ photo

You are commenting using your Google+ account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s