Title: Adhoc Wireless Networks
1Ad-hoc Wireless Networks
- With contributions from
- D. Patel, R. Shah, R. Jain, D. Estrin
- and many others
2Ad-hoc Wireless Networking is hot
- Tu meeting at BWRC Ad-hoc wireless networking
in Berkeley and beyond (or ha-hoo) - 11 faculty in attendance V. Anantharam, D.
Culler, R. Glaser (CE), J. Kahn, R. Katz, K.
Pister, M. Potkonjak (UCLA), J. Rabaey, K.
Ramchandran, P. Varaiya (del), J. Walrand - Wide range of interests and topics applications,
protocols, heterogeneous networks, energy,
optical and RF - Mailing list of over 40 people established!
- Will be repeated
3Focus-2000 Conference in Berkeley
- Topic PicoRadio Networks
- Dates June 26-27
- Where Claremont Hotel
- Presentations on applications, networks,
communications, architectures, and design
methdology - Check the BWRC web-site
4Flow of presentation
- Traditional ad-hoc
- PicoRadio Network requirements
- Diffused routing
- Swarm intelligence
- Geographic routing
5Multi-Hop Ad-Hoc Networks
- What does it mean to be Ad-Hoc?
- No pre-existing infrastructure (i.e. no wired BS)
- Network topology constantly changing
- What does Multi-Hop mean?
- Occurs when you use intermediate nodes as
stepping stones to forward packets. - Why? - Traditionally limited range.
- Node range is limited and sees only a limited
number of other nodes. - Require intermediates nodes to forward packets.
- Why? - Save ENERGY!!!
6Proactive Protocol
- Autonomously tracks routes.
- Passes entire list of destinations to neighboring
nodes only - Couples easily with Locationing
- Nodes could send their calculated position in
update which all nodes send anyway. - Large amount of overhead, but optimal paths
7Proactive Routing
- Network actively keeps routes up-to-date even if
routes are not being used. - But efficient if routes are used often
- Table Row size 10 bytes per entry
- Update size 6 bytes per entry
Table in node memory, 0(n)
Update broadcasted to neighbors
Updates grow in size as there are more
active destinations!!!
8Reactive Protocol
- On demand
- Large initial cost, low maintenance cost
- Paths may grow suboptimal
- Positioning information useful if location of
destination node known. - Positioning a separate service. And more useful
to protocol. (Help track neighbors)
9In General
- Protocols are delay sensitive
- require immediate response for maximum energy
savings - need priority
- Finer granularity in cost metric will cause
network oscillation. - Find optimum hop/distance and fix power level to
a constant
10Proactive Periodic update.
Num of Nodes
40 - MTU 240 bytes 80 - MTU 480 bytes MTU
maximum transmission unit
Num of Nodes
11DSDV
- Route settling problem due to unfortunate timing.
- Sequence number highest priority then cost
metric. - Happens more in well connected net.
- Fixes
- Timers, partial fix.
- WRP, more complex
12Reactive
- Flooding
- Min (n-1)size
- assume 8 byte packet.
- Perfect Power Control
Packet Format
13AODV
14Comparison DSDV, AODV
Bytes. Startup costs
DSDV 6 bytes, AODV 8/12 bytes.
15Route Maintenance
16Picoradio Usage Scenarios
- Data Query Requests Give me the temperature
distribution in the forum - Request issued by monitor node and propagated
through the network to the appropriate nodes - Data is returned over discovered paths
- Spontaneous Data Broadcasts
- Data trigger exceeded
- Periodic emission (e.g. information in museum
scenario) - Programming or maintenance requests
- Set nodes to trigger at a particular threshold
- Query operation of the network
17PicoRadio Addressing Modes
- Contents-based addressing
- id (type, range)
- Covers virtually all of the sensoring, actuator,
and monitor activities - Is annotated to specific function, not physical
node - Absolute addressing
- Unique identifier of physical network node
necessary mostly for debugging and verification
purposes
18Alternative approaches(1) data-centric routing
- Exploits structure in the data since we cant rely
on structure in node placement or addresses - Sensor network is after all a data centric
application. - Based on reactive routing schemes
19Directed Diffusion Concepts
- Application-aware communication primitives
- expressed in terms of named data (not in terms of
the nodes generating or requesting data) - Consumer of data initiates interest in data with
certain attributes - Nodes diffuse the interest towards producers via
a sequence of local interactions - This process sets up gradients in the network
which channel the delivery of data - Reinforcement and negative reinforcement used to
converge to efficient distribution - Intermediate nodes opportunistically fuse
interests, aggregate, correlate or cache data
20Local Behavior Choices
- 1. For propagating interests
- In our example, flood
- More sophisticated behaviors possible e.g. based
on cached information, GPS - 2. For setting up gradients
- Highest gradient towards neighbor from whom we
first heard interest - Others possible towards neighbor with highest
energy
- 3. For data transmission
- Different local rules can result in single path
delivery, striped multi-path delivery, single
source to multiple sinks and so on. - 4. For reinforcement
- reinforce one path, or part thereof, based on
observed losses, delay variances etc. - other variants inhibit certain paths because
resource levels are low
21Illustrating Directed Diffusion
Setting up gradients
Source
Sink
22Swarm Intelligence (Sc. Am March 00)
- Shortest path algorithm based on observed
behavior of ants - Discovery of nodes (food) based on flooding
- Paths marked by scents (pheromones)
- First ant to arrive back found shortest path
- Nodes reinforced by frequent use
- Non-used paths evaporate
- Alternative paths available
23Centroid Location
- Find edges
- Diffuse pheromone from the edges inward
- Find the lowest concentration using Min/Max
sharing - If you have the lowest concentration, turn yellow
Number Of Motes500 Communications Range.8
24Mote Position Estimation
- Give GPS receivers to some motes and call them
Basis Motes. Ask them to turn gray. - Each Basis Mote diffuses its own pheromone
throughout the group - The position of any other mote can be estimated
from the levels of basis pheromones present.
25Geographical Routing (R. Jain) Motivation and
Main Result
500
- Routing with partial information
- Distributed, highly scalable and adaptive
algorithm - Small routing table sizes and communication
overheads - Quick adaptation to network changes
- Requirement Each station knows its position
Distance-vector or Link state routing
Table size
Geographical routing
500
Network size
26Geographical Routing in Networks
- Each node knows its geographical
- position
- Each node knows its neighbors
- Each node learns of a few extra nodes
- Nodes dont know about the global
- topology
- Destination address is a geographical
- position to which the packet is to be
- delivered
A geographical network
Routing Problem To which neighbor does each
node forward the packet so that it gets to its
destination
27Geographical Routing Algorithm
Routing Table Format
- Routing Algorithm
- Pkt arrives at S for node D at pos. P
- Node S finds the pos. in its routing table to
which P is closest, and fwds to corres. neighbor
- If pos. P closest to node S, pkt is stuck
initiate Route Discovery - Route Discovery (BFS or DFS, etc.)
- P1 Finds acyclic path P(S,D)
- P2 Adds D as cell center at all nodes
P(S,D) - Initially, neighbors are discovered through hello
messages
Position
Next hop
Node
Initial Routing Table for node S
28Example 1 Geographical Routing
Pos(A) (1,1) Pos(B) (2,2) Pos(C)
(3,1) Links A ---- B B ---- C
B
Pos(C)
Pos(B)
---
Pos(C)
Pos(A)
A
C
A
Pos(C)
Pos(C)
C
Pos(C)
---
Pos(A)
---
Pos(B)
B
Pos(B)
B
- A gets a packet for Pos(C)
- A forwards it to B because pos(B) is closer to
pos(C) - B forwards it to C because pos(C) is closer to
pos(C)
29Example 2 Geographical Routing
Pos(D)
Pos(C)
---
Pos(A) (1,1) Pos(B) (2,2) Pos(C)
(3,1) Pos(D) (2.5,0) Links A ---- B B ----
C C ---- D
B
B
Pos(B)
Pos(D)
---
Pos(B)
Pos(D)
Pos(D)
D
Pos(D)
A
Pos(A)
C
A
C
Pos(C)
---
Pos(A)
---
Pos(D)
B
D
Pos(B)
Pos(C)
C
Pos(D)
- A gets a packet for Pos(D)
- Packet gets stuck at A because Pos(A) is closest
to Pos(D) - Initiate route discovery for D from A
- Update the routing tables and forward the packet
30Geographical RoutingProperties of the Algorithm
- Main Results
- There are no cycles in the routing tables
- Every packet reaches its destination, if graph
connected - Average routing table size O(log n)
- Packets delivered even if errors in position
information - No cycles even in dynamic networks
- Communication overhead/ time
31Summary
- Great opportunity offered by exploiting
application properties - Innovative distributed algorithms emerging
- Main targetsminimize routing tables and
discovery and maintenance traffic - Goal Operational simulation of network by next
retreat