|Pamvotis is a Wireless LAN Simulator for all the
layer extentions of the IEEE 802.11 Standard and for the IEEE 802.11e
Draft for Quality of Service in WLANs. The currently standardized
physical layer extentions of IEEE 802.11 include IEEE 802.11a, IEEE
802.11b, and IEEE 802.11g, which are all supported by Pamvotis. Current
version is Pamvotis 1.1.
Pamvotis was developed in Java, using only libraries
the JRE. This way, it has limited hardware requirements and is
any operating system with JRE installed.
The basic features of the
application are the following:
- Support of data rate agility. This means that each
node can work on its own data rate, depending on the distance from the
- Support of the hidden terminal problem. Nodes can be
configured to be in LOS or NLOS, in order the hidden terminal problem
to be investigated.
- Support of multiple sources on each node (new in
- Support of a variety of different traffic sources:
(abstract) traffic source, that produces traffic the packet generation
rate and packet size of which can obey different distributions (new in
- FTP traffic source, as described in 3GPP TR 25.892
- HTTP traffic source, as described in 3GPP TR 25.892
- Video traffic source, as described in 3GPP TR
- Support of absence / existence of non-ERP nodes. This
advantage utilizes the option of the IEEE 802.11g protocol to adjust
the network parameters depending if all nodes support IEEE 802.11g
(absence of non-ERP nodes) or some nodes support only 802.11b or
earlier (existence of non-ERP nodes).
- Support of the new CTS-to-Self virtual carrier sense
and protection mechanism: This means that a node can support RTS/CTS or
the new (defined in IEEE 802.11g specification) CTS-to-Self virtual
carrier sense mechanism for better network performance.
- Support of all new physical layers of the IEEE
802.11g specification which include:
- ERP-DSSS/CCK: Support of IEEE 802.11 data rates (1,
2 Mb/s) and IEEE 802.11b data rates (1, 2, 5.5 and 11 Mb/s).
- ERP-OFDM: Support of all extended data rates
defined in IEEE 802.11a and IEEE 802.11g (6, 9, 12, 18, 24, 36, 48, 54
- ERP-PBCC: Support of the extended data rates of
22Mb/s and 33Mb/s.
- DSSS-OFDM: Support of the extended rates of the
IEEE 802.11a with DSSS preamble and OFDM payload
- Support of the IEEE 802.11e EDCA function for Quality
of Service (QoS) and Service Differentiation in IEEE 802.11 WLANs.
- Support of many statistic results, which show
detailed information concerning the MAC layer performance. Those are:
Throughput in bits and packets per second, utilization, media access
delay, queuing delay, total packet delay, delay jitter, mean number of
retransmission attempts and mean packet queue length.
functions (for developers), that help use Pamvotis as an embedded
simulator effectively, like adding or removing sources and nodes at any
time (new in Pamvotis 1.1).
- Ability to simulate very long
simulations, up to 50737 centuries, but it is not recommended to try it
because you will probably never see the simulation results.
- Very limited resource requirements, which allows
operation in any PC.
- Cross platform operation,meaning operation in any OS
with Java Runtime Environment installed (Windows, Linux, Solaris,
- User friendly interface, which allows quick and easy
- Open source code, in order to implement your own
- FREE FOR ALL (Major).
and Installation Instructions
can download the latest version (Pamvotis 1.1) from the links below.
Pamvotis runs in
any operating system with Java Runtime Environment installed. The
easiest way to use it is to download the executable JAR file. No setup
is necessary. However, if you intentd to use Pamvotis on Windows, a
setup file exists that installs Pamvotis as an application with
shortcuts on the start menu e.t.c.
Download the setup file if you intend to use Pamvotis on
operating system. Download the executable file if you intent to use
Pamvotis on a Linux, Solaris or Mac operating system. Download the
source code if you are a developer and wish to extend Pamvotis or use
it as an embedded part of another simulator.
Follow the installation instructions further on, in
order to install install Pamvotis.
Note: If your
downloaded file ends with .tar.tar (can happen with Internet Explorer)
then rename it to .tar.gz
|Setup (Windows only)
|Executable (all operating
|Source code (all operating systems)
- Operating System: Windows (95/98/Me/NT/2000/XP/2003),
Linux, Solaris, MacOS.
- Disk Space: 800KB
- Memory: 64MB
- CPU Speed: 500MHz
- Other: Java Runtime Environment 5.0
Instructions for Users
If you want to install Pamvotis as an application (windows only) run
file. The installation procedure is easy as any other normal windows
If you want to use Pamvotis just as an executable
program, then download the file named Pamv11Bin.tar.gz,
which is an ordinary zip file. Do the following:
you intend to use Pamvotis on Windows or MacOS, store the file into a
folder and use a file compression program like winZip or winRar to
unzip the file.
- If you intend to use Pamvotis on Linux or Solaris
then do the following:
You can also use an already installed program of Linux or Solaris in
order to avoid using command prompt.
- Store the file in a folder. Open a terminal and
browse to this folder.
- Run the following command: gunzip
- Run the following command: tar -xvf
- Give permissions to the new folder created by
running the following command: chmod 555 Pamv11Bin.
You must have root previledges to run the chmod command.
A new folder called Pamv10Bin now exists. Every time
you want to run Pamvotis do the following:
If you use Windows or MacOS, then open the folder and double click the
file named pamvotis.jar
If you use Linux or Solaris then open the folder (cd Pamv11Bin)
and run the following command:
java -jar pamvotis.jar
Note: You must have Java Runtime Environment 5.0 or higher in order to
run the application.
If you want to check your version of JRE (or even to check if you
actually have JRE), then open a terminal (in any operating system) and
run the following command:
If you do not have JRE installed you can download it from Sun Microsystems.
Be sure to download only the Java Runtime Environment (JRE), that has a
small size, unless you want to develop in Java, so you must download
the Java Developement Kit (JDK).
If you are a developer and you want to extend Pamvotis, then download
the source code (the file named Pamv11Source.tar.gz)
and unzip it with the procedure described above, for the executable
file. A file named Readme.txt exists there. Be sure to read it. Under
the doc folder you can find documentation for the developer and
detailed documentation of each method and class of the simulation
engine. The documentation can be accessed online from here.
Apart from the documentation, a source
file named Example.java also exists in the root of the source floder,
which is an example of how to use
Pamvotis core simulation engine. Open the source code with the Java
developement application you prefer. Eclipse
is recommended that is the application by which Pamvotis is developed.
Be sure to set the classpath variable accordingly, in order to
successfully compile the project.
The whole project is designed using only libraries located in
JRE, so no third party libriries are required. All you must have is the
Java Developement Kit (JDK, not JRE) installed. If you don't, download
it from Sun Microsystems.
Pamvotis Simulator is created by Dr.
Dimitris El. Vassis and Vassilis Zafeiris,
a Telecommunication’s Engineer and a Software Engineer
The simulator took its name from a lake
in Ioannina City of Greece, which is the only lake in the
world that has an island with permanent residents. The logo of pamvotis
(the P letter) depicts the lake.
Pamvotis was designed for research purposes only. It is
not a commercial application. The application and the source code may
be distributed or modified under the terms of the GNU
General Public Lisence.
| Special Acknowledgements
Special Ackgnowledgements should be given to the
following people for their valuable contribution:
- Mr Gary Gaatz
for his valuable remarks on some bugs concerning simulation of IEEE
- Mr Stelios
Koukoutsidis for his valuable remarks on some incorrect
parameter definitions concerning IEEE 802.11a.
- Ms Rachel Vecchitto
for providing a class for opening a URL with the default browser in
older versions of Java.
|Contribute to extend
vision of the authors is to make Pamvotis a complete simulator,
supporting every protocol of the IEEE 802.11 family and every OSI
layer, from physical to application. However, the author cannot perform
this by himself, so a contribution is asked from people that are
interested. Open issues that must be solved are the following:
People that are interested (should be familiar with Java) can contact
the interface, in order to place the nodes as boxes in a Graphics area
and to configure them from there. No network configuration file will be
- Develop models for physical layer characteristics
like transmit power, automatic data rate agility, bit error rate e.t.c.
- Develop models for real traffic like browsing, voice,
video, email, database transactions e.t.c.
- Extend the simulator to support the IEEE 802.11n
phylical layer (current in draft).
- Extend the simulator to support the IEEE 802.11i
standard for security (too much work needed).
- Develop models for mobility.
- Extend the simulator to support more output results.
- Develop an interface for graphical representation of
results, in row data and through statistical analysis (e.g. PDF, CDF).
For any information and for any comment (well
intentioned or not) concerning Pamvotis Simulator, please contact the
Copyright© 2007- 2010 - Dimitris El. Vassis - Vassilis
Zafeiris - All Rights Reserved