Title: SWAN A Simulator for Wireless Ad Hoc Networks
1SWAN A Simulator for Wireless Ad Hoc Networks
- Luiz Felipe Perrone
- perrone_at_ists.dartmouth.edu
- Institute for Security Technology Studies
- Dartmouth College
- With Jason Liu, David Nicol and Michael
Liljenstam
2Wireless Ad-Hoc Networks
- Battery operated computing devices
- Communication happens via radio or laser beams
- Nodes are free to move
- Single or multihop
- Automagic configuration
- No need for infrastructure
3An Application Sensor networks
M
Intelligence, Surveillance, Emergency Response
M
4Technology Challenges
- Medium Access Control (MAC)
- How do we coordinate multiple, autonomous
entities access to a common portion of the
communication spectrum?
5Technology Challenges
- Routing
- How do we set up routing services for a
network with a potentially very large number of
nodes?
6Technology Challenges
- Security
- How do we give this network nice properties
such as availability, confidentiality, integrity,
authentication and nonrepudiation?
7Technology Challenges
- Power awareness
- How do we do all this in a way so as to
minimize power consumption at each node and
maximize the network lifetime?
8Who Needs Simulation?
- We have a complex system that defies
mathematical analysis. - This system has several components tightly
inter-connected. - Experiments in validation and verification will
call for repeatability and controllability.
Again, who needs simulation?
9Wish List for an WAN Simulator
- Detail
- Completeness
- Performance
- Scalability
10Related Work
- CMU Monarch Project
- http//www.monarch.cs.cmu.edu/cmu-ns.html
- detailed radio propagation models, complete
implementations of MAC and routing algorithms,
scenario generation, visualization tools, network
emulation, etc. -
- UCLA SensorSim (pre-release stage)
http//nesl.ee.ucla.edu/projects/sensorsim/ - sensing channel and sensor models, battery
models, lightweight protocol stacks for wireless
microsensors, scenario generation, and hybrid
simulation. -
Common major drawback they are based on ns-2.
11How Were Making It Happen
We started out with the Scalable Simulation
Framework (SSF) http//www.ssfnet.org
Entity container for state variables
SSF
outChannel
Process entitys state evolution
endpoints of communication links between entities
Event messages between entities
inChannel
SSF is not a simulator its a specification with
bindings for Java and C.
12SSF Modeling
Entity A
Entity B
outChannel
inChannel
state
state
Event
process
process
inChannel
outChannel
Timeline
A.alignto(B)
Channels have an associated delay which is used
by the kernel to determine lookahead for parallel
simulation. Channels are mapped to one
another. Obviously large models would be painful
to construct with this mechanism alone enter DML
(Domain Modeling Language).
13DML and Design Patterns
- SMARTDUST
- ID 1
- xpos 0 ypos 0
- battery 1000.000000
- graph
- ProtocolSession
- name "app" use "app.sensor-session"
- inter_arrival_time 0.002400
- packet_size 100
- total_neighbors 1
- neighbor 2
- ProtocolSession
- name "net" use "net.aodv-session"
- ProtocolSession
- name "mac" use "mac.mac-802-11-session
- ProtocolSession
- name "phy" use "phy.phy-802-11-session"
- attach 2
The model is described by a hierarchical list of
key-attribute pairs. Each key is looked up in a
database, a class is fetched, and the list of
attributes is passed to the corresponding class
constructor. The model is constructed from the
DML specification.
14SSFNET-like Architecture
Our host descriptions were borrowed from the
architecture of SSFNET http//www.ssfnet.org
Protocol Graph
- A ProtocolSession models a protocol layer (as in
the ISO/OSI reference model). - A ProtocolGraph is a list of ProtocolSessions and
models the complete protocol stack in a host. - Adjacent ProtocolSessions communicate by
exchanging ProtocolMessages.
Application Session
Transport Session
Network Session
Link Session
PHY Session
15The ProtocolSession API
ProtocolSession N1
A ProtocolSession is a class that defines three
methods pop, push and control. An element
higher in the stack can send it messages invoking
push. An element lower in the stack can send it
messages invoking pop. Anything that is not
related to the protocol models is communicated
using control.
(pop)
ProtocolSession N
push
control
pop
(push)
ProtocolSession N-1
16ProtocolMessage
Application
Network
MAC
PHY
Data Message
RouterIP Header
MAC Header
PHY Header
Radio Frame
17The DaSSF Homebrew
http//www.cs.dartmouth.edu/research/DaSSF
- An SSF-compliant simulator
- Fast threading mechanism,
- Efficient memory utilization,
- Portable runs on sequential and parallel
machines (shared and distributed memory)
IRIX/Solaris/SunOS/Linux/OSF. -
18The Architecture of SWAN
Physical Process
read terrain features
Protocol Graph
Terrain Model
OS Model (DaSSF Runtime Kernel)
memory
time
run thread
Host model
read terrain features
RF Channel Model
19Where Things Get Complicated
- Physical Process How do we simulate different
physical phenomena with accuracy and efficiency? - RF Channel Model The multiple access technique
determines the difficulty of model construction.
Besides, will it scale up? - Level of detail Less may be better. More
abstraction can mean faster simulation with no
significant loss of accuracy.
20802.11 RF Channel Model
If transmitter is close enough so that receiver
is within carrier range, packets are accepted.
Otherwise, they are thrown away. Cutoff ? model
scalability ? efficient parallelization.
a
b
R
r
c
d
21802.11 RF Channel Model (cont.)
Elapsed time between tx of messages k and (k-1)
a
b
R
r
If message length is exponentially dist. with
mean 1/l, then
c
Channel busy-ness model the number of active
messages in the channel.
22802.11 RF Channel Model (cont.)
a
b
R
r
The general shape of the curve for CSMA Some
mathematical manipulation
c
Probability that a message is lost at k
The loss model is now very simple at the
receiver, throw a
to determine if a message is to be successfully
received or discarded (lost).
23Milestones Reached
- Abstraction of the RF Channel Model for 802.11
implemented. - Detailed model for 802.11 DCF ported from
GloMoSim and used to validate our abstracted RF
Channel Model. - Proof of concept simulations with networks of
chemical sensors powered by BBN WiroKit routers.
24Current State
- SWAN Is it available for the general public yet?
Were sorry to say it isnt, not yet. - Routing In order to have a public distribution,
we need public domain technology. - Mobility support is being added.
- Host models under revision to support power
consumption. - A Berkeley TinyOS port is in the works.
- Security Ultimately our goal is to develop/study
layers for ad hoc networks.
25A Call to Arms
- Rome wasnt built in a day.
- SSFNET wasnt built by one group alone.
We can use a lot of help to turn the duckling
into the SWAN its meant to be.