Next: Bibliography
Up: SWANS- Scalable Wireless Ad hoc
Previous: Zone routing protocol
The SWANS simulator runs over JiST, combining the traditional systems-based
(e.g., ns2) and languages-based (e.g., GloMoSim) approaches to simulation
construction. SWANS is able to simulate much larger networks and has a number
of other advantages over existing tools. We leverage the JiST design within
SWANS to:
- achieve high simulation throughput: Simulation events among the
various entities, such as packet transmissions, are performed with no memory
copy and no context switch. The system also continuously profiles running
simulations and dynamically performs code inlining, constant propagation and
other important optimizations, even across entity boundaries. This is
important, because many stable simulation parameters are not known until the
simulation is running. Greater than speedups have been observed.
- save memory: Memory is critical for simulation scalability.
Automatic garbage collection of events and entity state not only improves
robustness of long-running simulations by preventing memory leaks, it also
saves memory by facilitating more sophisticated memory protocols. For example,
network packets are modeled as immutable objects, allowing a single copy to be
shared across multiple nodes. This saves the memory (and time) of multiple
packet copies on every transmission. A different example of memory savings in
SWANS is the use of soft references for storing cached computations, such as
routing tables. These routing tables can be automatically collected, as
necessary, to free up memory.
- run standard Java applications: SWANS can run existing Java
network applications, such as web servers and peer-to-peer applications, over
the simulated network without modification. The application is automatically
transformed to use simulated sockets and into a continuation-passing style.
The original network applications are run within the same process as SWANS,
which increases scalability by eliminating the considerable overhead of
process-based isolation.
In addition to the simulator design, it is also essential to model wireless
signal propagation efficiently, since this computation is performed on every
packet transmission. The hierarchical binning data structure is allows node
location updates in expected amortized constant time and receiver node set
computations in time proportional to the number of receivers. The combination
of these attributes leads to a flexible and efficient simulator. We hope that
the performance of SWANS will facilitate further research into scalable
ad hoc network protocols.
Next: Bibliography
Up: SWANS- Scalable Wireless Ad hoc
Previous: Zone routing protocol
2006-01-18