Chapter 5 Ad Hoc Networks Original
Chapter 5 Ad Hoc Networks Original
AD HOC
NETWORKS
Distributed
Computing
Mobile Computing
Group
Summer 2002
Overview
• Characteristics
• Routing
• “Classic” routing
• Some basic tricks to improve routing
A B C
• Nodes move
N1 N1
N2 N3
N3 N2
N4 N4
N5 N5
• What is Routing?
• „Routing is the act of moving information across an internetwork
from a source to a destination.“ (CISCO)
There is no “optimal” routing protocol; the choice of the routing protocol depends
on the circumstances. Of particular importance is the mobility/data ratio. On the
next couple of slides we present some common routing optimization tricks.
• Idea: Flood with growing radius; use time-to-live (TTL) tag that is
decreased at every node, for the first flood initialize TTL with 1, then
2, then 3 (really?), …when destination is found, how do we stop?
• Alternative idea: Flood very slowly (nodes wait some time before
they forward the message) – when the destination is found a quick
flood is initiated that stops the previous flood
• Idea: Source node stores the whole path to the destination; source
stores path with every message, so nodes on the path simply chop
off themselves and send the message to the next node.
• Problem: The destination cannot send the newly found path to the
source because at least one of the links used was unidirectional.
• Idea: The destination needs to find the source by flooding again, the
path is attached to the flooded message. The destination has
information about the source (approximate distance, maybe even
direction), which can be used.
s
c
b
a
t
– One can construct examples where this works, but of course also
examples where this does not work.
• Idea: In the Internet there is a hierarchy of nodes; i.e. all nodes with
the same IP prefix are in the same direction. One could do the same
trick in ad-hoc networks
+ Well, if it happens that the ad-hoc nodes with the same numbers are
in the same area are together, hierarchical routing is a good idea.
– There are not too many applications where this is the case. Nodes
are mobile after all.
• Idea: Group the ad-hoc nodes into clusters (if you want
hierarchically). One node is the head of the cluster. If a node in the
cluster sends a message it sends it to the head which sends it to the
head of the destination cluster which sends it to the destination
super cluster
• Problem: The number of hops is fine for the Internet, but for ad-hoc
networks other metrics might be better, for example: Energy,
Congestion, Successful transmission probability, Interference*, etc.
– How do we compute
N1
interference in an N2
online manner? R1
S1 N3
N4
*Interference: a
receiving node is N5 N6 R2
also in the receiving S2
area of another
N8 N9
transmission. N7