Date post: | 09-Apr-2018 |
Category: |
Documents |
Upload: | dolly-parikh |
View: | 219 times |
Download: | 0 times |
of 174
8/8/2019 705 TCD AdHocNet Brief
1/174
8/8/2019 705 TCD AdHocNet Brief
2/174
Contents
Introduction to Ad hoc networks
Conventional routing drawback
Table Driven (WRP, DSDV)
On Demand (DSR, AODV, TORA) Performance Evaluation
Location based routing (LAR, DREAM)
Hybrid routing (ZRP)
Summary
8/8/2019 705 TCD AdHocNet Brief
3/174
Mobile Ad hoc Network
Collection of mobile nodes/hosts forming a network
Hosts use wireless RF transceivers as network interface
Omni directional (broadcast)
Highly directional (point point)
Combination
Arbitrary movement and coverage pattern
Connectivity in the form of random (w/o necessarily using
a pre-existing infrastructure) multi-hop graphs
Highly co-operative, each host is an independent router Routes between nodes may potentially contain multiple
hops
8/8/2019 705 TCD AdHocNet Brief
4/174
4
Mobile Ad Hoc Networks
May need to traverse multiple links to reach a
destination
8/8/2019 705 TCD AdHocNet Brief
5/174
5
Mobile Ad Hoc Networks (MANET)
Mobility causes route changes
8/8/2019 705 TCD AdHocNet Brief
6/174
6
Why Ad Hoc Networks ?
Ease of deployment
Speed of deployment
Decreased dependence on infrastructure
8/8/2019 705 TCD AdHocNet Brief
7/174
Applications
Ad hoc centric
Conferences/meetings
Search and Rescue
Automated battlefields
Data centric
Collecting information in large, dynamic, energy constrainednetworks (sensors)
Revenue centric
Increasing coverage and capacity
8/8/2019 705 TCD AdHocNet Brief
8/174
Constraints and Issues
No centralized administration or standard support
services
Frequent and unpredictable network topology
changes
Routing and mobility management
Channel access/bandwidth availability
Hidden/Exposed station problem Lack of symmetrical links
Power limitation
8/8/2019 705 TCD AdHocNet Brief
9/174
Conventional Routing Protocols ?
Not designed for highly dynamic, low bandwidth
networks
Count-to-infinity problem and slow convergence for
DV
Loop formation during temporary node failures and
network partitions
Protocols that use flooding techniques (for e.g. LS)
create excessive traffic and control overhead
8/8/2019 705 TCD AdHocNet Brief
10/174
8/8/2019 705 TCD AdHocNet Brief
11/174
11
Many Variations
Fully Symmetric Environment
all nodes have identical capabilities and responsibilities
Asymmetric Capabilities
transmission ranges and radios may differ
battery life at different nodes may differ
processing capacity may be different at different nodes
speed of movement
Asymmetric Responsibilities
only some nodes may route packets
some nodes may act as leaders of nearby nodes (e.g.,cluster head)
8/8/2019 705 TCD AdHocNet Brief
12/174
12
Many Variations
Traffic characteristics may differ in different ad hoc
networks
bit rate
timeliness constraints
reliability requirements
unicast / multicast / geocast
host-based addressing / content-based addressing /capability-based addressing
May co-exist (and co-operate) with an infrastructure-
based network
8/8/2019 705 TCD AdHocNet Brief
13/174
13
Challenges
Limited wireless transmission range
Broadcast nature of the wireless medium
Hidden terminal problem (see next slide)
Packet losses due to transmission errors
Mobility-induced route changes
Mobility-induced packet losses
Battery constraints Potentially frequent network partitions
Ease of snooping on wireless transmissions (security
hazard)
8/8/2019 705 TCD AdHocNet Brief
14/174
14
Hidden Terminal Problem
B CA
Nodes A and C cannot hear each other
Transmissions by nodes A and C can collide at node B
Nodes A and C are hidden from each other
8/8/2019 705 TCD AdHocNet Brief
15/174
15
Unicast Routing
in
Mobile Ad Hoc Networks
8/8/2019 705 TCD AdHocNet Brief
16/174
16
Why is Routing in MANET different ?
Host mobility
link failure/repair due to mobility may have differentcharacteristics than those due to other causes
Rate of link failure/repair may be high when nodes
move fast
New performance criteria may be used
route stability despite mobilityenergy consumption
8/8/2019 705 TCD AdHocNet Brief
17/174
17
Unicast Routing Protocols
Many protocols have been proposed
Some have been invented specifically for MANET
Others are adapted from previously proposed
protocols for wired networks
No single protocol works well in all environments
some attempts made to develop adaptive protocols
8/8/2019 705 TCD AdHocNet Brief
18/174
18
Routing Protocols
Proactive protocols
Determine routes independent of traffic pattern
Traditional link-state and distance-vector routing protocolsare proactive
Reactive protocols
Maintain routes only if needed
Hybrid protocols
8/8/2019 705 TCD AdHocNet Brief
19/174
Ad hoc Routing Protocols
Proactive Protocols
Table driven
Continuously evaluateroutes
No latency in routediscovery
Large capacity to keepnetwork information
current
A lot of routinginformation may never beused
Reactive Protocols
On Demand
Route discovery byglobal search
Bottleneck due to latencyof route discovery
May not be appropriatefor real-time
communication
8/8/2019 705 TCD AdHocNet Brief
20/174
20
Trade-Off
Latency of route discovery
Proactive protocols may have lower latency since routes aremaintained at all times
Reactive protocols may have higher latency because a route
from X to Y will be found only when X attempts to send to Y
Overhead of route discovery/maintenance
Reactive protocols may have lower overhead since routesare determined only if needed
Proactive protocols can (but not necessarily) result in higheroverhead due to continuous route updating
Which approach achieves a better trade-off depends
on the traffic and mobility patterns
8/8/2019 705 TCD AdHocNet Brief
21/174
21
Overview ofUnicast Routing Protocols
8/8/2019 705 TCD AdHocNet Brief
22/174
Wireless Routing Protocol (WRP)
Predecessor to destination (next to last hop) in the
shortest path used
Eliminates the Count-to-infinity problem and
converges faster
Neighbor connectivity via periodic Hello messages
Update messages sent upon detecting a change in
neighbor link
8/8/2019 705 TCD AdHocNet Brief
23/174
Cont.
Each node imaintains a Distance table (iDjk), Routingtable (Destination Identifier, Distance iDj ,PredecessorPj ,the successorSj), link cost table(Cost, Update Period)
Processing Updates and creating Route TableUpdate from kcauses i to re-compute the distances of all
paths with kas the predecessor
For a destinationj, a neighborp is selected as the successorifp->jdoes not include i, and is the shortest path to j
8/8/2019 705 TCD AdHocNet Brief
24/174
Operation
J
K
IB
(0, J)
(2, K)
(2, K)
(1, K)
X11
10
1
5
10
(g, K)
(10, B)
(10, I)
(11, B)
8/8/2019 705 TCD AdHocNet Brief
25/174
Destination Sequenced
Distance Vector (DSDV)
Each Route is tagged with a sequence numberoriginated by destination
Hosts perform periodic & triggered updates, issuing anew sequence number
Sequence number indicates the freshness of arouteRoutes with more recent sequence numbers are preferred
for packet forwarding
If same sequence number, one having smallest metric used
8/8/2019 705 TCD AdHocNet Brief
26/174
Topology changes
Broken links assigned a metric of
Any route through a hop with a broken link is also
assigned a metric of
routes are assigned new sequence numbers byany host and immediately broadcast via a triggered
update
If a node has an equal/later sequence number with a
finite metric for an route, a route update is
triggered
8/8/2019 705 TCD AdHocNet Brief
27/174
DSDV Operation
8/8/2019 705 TCD AdHocNet Brief
28/174
Damping Fluctuations
Routes preferred if later sequence numbers, orsmaller metric for same sequence numbers
Problem : Table fluctuations if worse metrics arereceived first, causing a ripple of triggered updates
Solution : Use average settling time as a parameterbefore advertising routes
Tantamount to using two tables, one for forwardingpackets and another for advertising routes
8/8/2019 705 TCD AdHocNet Brief
29/174
29
Flooding for Data Delivery
Sender S broadcasts data packet P to all its
neighbors
Each node receiving P forwards P to its neighbors
Sequence numbers used to avoid the possibility of
forwarding the same packet more than once
Packet P reaches destination D provided that D is
reachable from sender S
Node D does not forward the packet
8/8/2019 705 TCD AdHocNet Brief
30/174
30
Flooding for Data Delivery
B
A
S E
F
H
J
D
C
G
I
K
Represents that connected nodes are within each
others transmission range
Z
Y
Represents a node that has received packetP
M
N
L
8/8/2019 705 TCD AdHocNet Brief
31/174
31
Flooding for Data Delivery
B
A
S E
F
H
J
D
C
G
I
K
Represents transmission of packetP
Represents a node that receives packetP for
the first time
Z
YBroadcast transmission
M
N
L
8/8/2019 705 TCD AdHocNet Brief
32/174
8/8/2019 705 TCD AdHocNet Brief
33/174
33
Flooding for Data Delivery
B
A
S E
F
H
J
D
C
G
I
K
Node C receives packet P from G and H, but does not forward
it again, because node C has already forwarded packet P once
Z
Y
M
N
L
8/8/2019 705 TCD AdHocNet Brief
34/174
34
Flooding for Data Delivery
B
A
S E
F
H
J
D
C
G
I
K
Z
Y
M
Nodes J and K both broadcast packetP to node D
Since nodes J and K are hidden from each other, their
transmissions may collide
!" Packet P may not be delivered to nodeD at all,
despite the use of flooding
N
L
8/8/2019 705 TCD AdHocNet Brief
35/174
35
Flooding for Data Delivery
B
A
S E
F
H
J
D
C
G
I
K
Z
Y
Node Ddoes not forward packet P, because node D
is the intended destination of packetP
M
N
L
8/8/2019 705 TCD AdHocNet Brief
36/174
36
Flooding for Data Delivery
B
A
S E
F
H
J
D
C
G
I
K
Flooding completed
Nodes unreachable from S do not receive packet P (e.g., node Z)
Nodes for which all paths from S go through the destinationD
also do not receive packet P (example: node N)
Z
Y
M
N
L
8/8/2019 705 TCD AdHocNet Brief
37/174
37
Flooding for Data Delivery
B
A
S E
F
H
J
D
C
G
I
K
Flooding may deliver packets to too many nodes
(in the worst case, all nodes reachable from sender
may receive the packet)
Z
Y
M
N
L
8/8/2019 705 TCD AdHocNet Brief
38/174
38
Flooding for Data Delivery:Advantages
Simplicity
May be more efficient than other protocols when rate
of information transmission is low enough that theoverhead of explicit route discovery/maintenance
incurred by other protocols is relatively higher
this scenario may occur, for instance, when nodes transmitsmall data packets relatively infrequently, and many topology
changes occurbetween consecutive packet transmissions
Potentially higher reliability of data delivery
Because packets may be delivered to the destination onmultiple paths
8/8/2019 705 TCD AdHocNet Brief
39/174
39
Flooding for Data Delivery: Disadvantages
Potentially, very high overhead
Data packets may be delivered to too many nodes who donot need to receive them
Potentially lower reliability of data delivery
Flooding uses broadcasting -- hard to implement reliablebroadcast delivery without significantly increasing overhead
Broadcasting in IEEE 802.11 MAC is unreliableIn our example, nodes J and K may transmit to node D
simultaneously, resulting in loss of the packet
in this case, destination would not receive the packet at all
8/8/2019 705 TCD AdHocNet Brief
40/174
40
Flooding ofControl Packets
Many protocols perform (potentially limited) flooding
ofcontrol packets, instead ofdata packets
The control packets are used to discover routes
Discovered routes are subsequently used to send
data packet(s)
Overhead of control packet flooding is amortized over
data packets transmitted between consecutive
control packet floods
8/8/2019 705 TCD AdHocNet Brief
41/174
41
Dynamic Source Routing (DSR) [Johnson96]
When node S wants to send a packet to node D, but
does not know a route to D, node S initiates a route
discovery
Source node S floods Route Request (RREQ)
Each node appends own identifierwhen forwardingRREQ
8/8/2019 705 TCD AdHocNet Brief
42/174
Dynamic Source Routing (DSR)
Each packet header contains a route, which isrepresented as a complete sequence of nodesbetween a source destination pair
Protocol consists of two phases
route discoveryroute maintenance
Optimizations for efficiencyRoute cachePiggybacking
Error handling
8/8/2019 705 TCD AdHocNet Brief
43/174
DSR Route Discovery
Source broadcasts route request(id, target)
Intermediate node action
Discard ifidis in or node is in routerecord
Else append address in route record; rebroadcast
If node is the target, route recordcontains the full route tothe target; return a route reply
Use existing routes to source to send route reply;
else piggyback
8/8/2019 705 TCD AdHocNet Brief
44/174
DSR Route Maintenance
Use acknowledgements or a layer-2 scheme to
detect broken links; inform sender via route error
packet
If no route to the source exists
Use piggybacking
Send out a route requestand bufferroute error
Sender truncates all routes which use nodes
mentioned in route error
Initiate route discovery
8/8/2019 705 TCD AdHocNet Brief
45/174
Optimizations for efficiency
Route Cache
Use cached entries forduring route discovery
Promiscuous mode toadd more routes
Use hop based delaysfor local congestion
Must be careful toavoid loop formation
Expanding ring search
8/8/2019 705 TCD AdHocNet Brief
46/174
Optimizations
PiggybackingData piggybacked on route requestPacketProblem : route caching can cause piggybacked data to be
discarded
Improved Error Handlingwhen network becomes partitioned, buffer packets and useexponential back-off for route discovery
Listen to route replies promiscuously to remove entriesUse negative information to ignore corrupt replies
8/8/2019 705 TCD AdHocNet Brief
47/174
47
Route Discovery in DSR
B
A
S E
F
H
J
D
C
G
I
K
Z
Y
Represents a node that has receivedRREQ forD from S
M
N
L
8/8/2019 705 TCD AdHocNet Brief
48/174
48
Route Discovery in DSR
B
A
S E
F
H
J
D
C
G
I
K
Represents transmission ofRREQ
Z
YBroadcast transmission
M
N
L
[S]
[X,Y] Represents list of identifiers appended toRREQ
8/8/2019 705 TCD AdHocNet Brief
49/174
49
Route Discovery in DSR
B
A
S E
F
H
J
D
C
G
I
K
Node H receives packet RREQ from two neighbors:
potential for collision
Z
Y
M
N
L
[S,E]
[S,C]
8/8/2019 705 TCD AdHocNet Brief
50/174
50
Route Discovery in DSR
B
A
S E
F
H
J
D
C
G
I
K
Node C receives RREQ from G and H, but does not forward
it again, because node C has already forwardedRREQ once
Z
Y
M
N
L
[S,C,G]
[S,E,F]
8/8/2019 705 TCD AdHocNet Brief
51/174
51
Route Discovery in DSR
B
A
S E
F
H
J
D
C
G
I
K
Z
Y
M
Nodes J and K both broadcastRREQ to node D
Since nodes J and K are hidden from each other, their
transmissions may collide
N
L
[S,C,G,K]
[S,E,F,J]
8/8/2019 705 TCD AdHocNet Brief
52/174
52
Route Discovery in DSR
B
A
S E
F
H
J
D
C
G
I
K
Z
Y
Node Ddoes not forwardRREQ, because node D
is the intended target of the route discovery
M
N
L
[S,E,F,J,M]
8/8/2019 705 TCD AdHocNet Brief
53/174
53
Route Discovery in DSR
Destination D on receiving the first RREQ, sends a
Route Reply (RREP)
RREP is sent on a route obtained by reversing the
route appended to received RREQ
RREP includes the route from S to D on which RREQ
was received by node D
8/8/2019 705 TCD AdHocNet Brief
54/174
54
Route Reply in DSR
B
A
S E
F
H
J
D
C
G
I
K
Z
Y
M
N
L
RREP [S,E,F,J,D]
Represents RREP control message
8/8/2019 705 TCD AdHocNet Brief
55/174
55
Route Reply in DSR
Route Reply can be sent by reversing the route inRoute Request (RREQ) only if links are guaranteed
to be bi-directional
To ensure this, RREQ should be forwarded only if it receivedon a link that is known to be bi-directional
If unidirectional (asymmetric) links are allowed, then
RREP may need a route discovery for S from node D
Unless node D already knows a route to node S
If a route discovery is initiated by D for a route to S, then theRoute Reply is piggybacked on the Route Request from D.
If IEEE 802.11 MAC is used to send data, then links
have to be bi-directional (since Ack is used)
8/8/2019 705 TCD AdHocNet Brief
56/174
56
Dynamic Source Routing (DSR)
Node S on receiving RREP, caches the route
included in the RREP
When node S sends a data packet to D, the entire
route is included in the packet header
hence the name source routing
Intermediate nodes use the source route included ina packet to determine to whom a packet should be
forwarded
8/8/2019 705 TCD AdHocNet Brief
57/174
57
Data Delivery in DSR
B
A
S E
F
H
J
D
C
G
I
K
Z
Y
M
N
L
DATA [S,E,F,J,D]
Packet header size grows with route length
8/8/2019 705 TCD AdHocNet Brief
58/174
58
When to Perform a Route Discovery
When node S wants to send data to node D, but does
not know a valid route node D
8/8/2019 705 TCD AdHocNet Brief
59/174
59
DSR Optimization: Route Caching
Each node caches a new route it learns by any
means
When node S finds route [S,E,F,J,D] to node D, node
S also learns route [S,E,F] to node F
When node K receives Route Request [S,C,G]
destined for node, node K learns route [K,G,C,S] to
node S
When node F forwards Route Reply RREP
[S,E,F,J,D], node F learns route [F,J,D] to node D When node E forwards Data [S,E,F,J,D] it learns
route [E,F,J,D] to node D
A node may also learn a route when it overhears
Data packets
8/8/2019 705 TCD AdHocNet Brief
60/174
60
Use of Route Caching
When node S learns that a route to node D is broken,
it uses another route from its local cache, if such a
route to D exists in its cache. Otherwise, node S
initiates route discovery by sending a route request
Node X on receiving a Route Request for some node
D can send a Route Reply if node X knows a route to
node D
Use of route cache
can speed up route discovery
can reduce propagation of route requests
8/8/2019 705 TCD AdHocNet Brief
61/174
61
Use of Route Caching
B
A
S E
F
H
J
D
C
G
I
K
[P,Q,R] Represents cached route at a node
(DSR maintains the cached routes in a tree format)
M
N
L
[S,E,F,J,D][E,F,J,D]
[C,S]
[G,C,S]
[F,J,D],[F,E,S]
[J,F,E,S]
Z
8/8/2019 705 TCD AdHocNet Brief
62/174
62
Use of Route Caching:
Can Speed up Route Discovery
B
A
S E
F
H
J
D
C
G
I
K
Z
M
N
L
[S,E,F,J,D][E,F,J,D]
[C,S]
[G,C,S]
[F,J,D],[F,E,S]
[J,F,E,S]
RREQ
When node Z sends a route request
for node C, nodeK sends back a route
reply [Z,K,G,C] to node Z using a locally
cached route
[K,G,C,S]RREP
8/8/2019 705 TCD AdHocNet Brief
63/174
63
Use of Route Caching:
Can Reduce Propagation of Route Requests
B
A
S E
F
H
J
D
C
G
I
K
Z
Y
M
N
L
[S,E,F,J,D][E,F,J,D]
[C,S]
[G,C,S]
[F,J,D],[F,E,S]
[J,F,E,S]
RREQ
Assume that there is no link betweenD and Z.
Route Reply (RREP) from node Klimits flooding ofRREQ.
In general, the reduction may be less dramatic.
[K,G,C,S]
RREP
8/8/2019 705 TCD AdHocNet Brief
64/174
64
Route Error (RERR)
B
A
S E
F
H
J
D
C
G
I
K
Z
Y
M
N
L
RERR [J-D]
J sends a route error to S along route J-F-E-S when its attempt to
forward the data packet S (with route SEFJD) on J-D fails
Nodes hearing RERR update their route cache to remove link J-D
8/8/2019 705 TCD AdHocNet Brief
65/174
65
Route Caching: Beware!
Stale caches can adversely affect performance
With passage of time and host mobility, cached
routes may become invalid
A sender host may try several stale routes (obtained
from local cache, or replied from cache by other
nodes), before finding a good route
An illustration of the adverse impact on TCP will be
discussed later in the tutorial [Holland99]
8/8/2019 705 TCD AdHocNet Brief
66/174
8/8/2019 705 TCD AdHocNet Brief
67/174
67
Dynamic Source Routing: Disadvantages
Packet header size grows with route length due to
source routing
Flood of route requests may potentially reach all
nodes in the network
Care must be taken to avoid collisions between route
requests propagated by neighboring nodes
insertion of random delays before forwarding RREQ
Increased contention if too many route replies come
back due to nodes replying using their local cache
Route Reply Storm problem
Reply storm may be eased by preventing a node from
sending RREP if it hears another RREP with a shorter route
8/8/2019 705 TCD AdHocNet Brief
68/174
68
Dynamic Source Routing: Disadvantages
An intermediate node may send Route Reply using astale cached route, thus polluting other caches
This problem can be eased if some mechanism topurge (potentially) invalid cached routes isincorporated.
For some proposals for cache invalidation, see
[Hu00Mobicom]Static timeoutsAdaptive timeouts based on link stability
8/8/2019 705 TCD AdHocNet Brief
69/174
69
Flooding of Control Packets
How to reduce the scope of the route request flood ?
LAR [Ko98Mobicom]
Query localization [Castaneda99Mobicom]
How to reduce redundant broadcasts ?
The Broadcast Storm Problem [Ni99Mobicom]
8/8/2019 705 TCD AdHocNet Brief
70/174
8/8/2019 705 TCD AdHocNet Brief
71/174
71
Expected Zone in LAR
X
Y
r
X = last known location of nodeD, at time t0
Y = location of nodeD at current
time t1, unknown to node S
r = (t1 - t0) * estimate ofDs speed
Expected Zone
R Z i LAR
8/8/2019 705 TCD AdHocNet Brief
72/174
72
Request Zone in LAR
X
Y
r
S
Request Zone
Network Space
BA
8/8/2019 705 TCD AdHocNet Brief
73/174
73
LAR
Only nodes within the request zone forward route
requests
Node A does not forward RREQ, but node B does (seeprevious slide)
Request zone explicitly specified in the route request
Each node must know its physical location to
determine whether it is within the request zone
8/8/2019 705 TCD AdHocNet Brief
74/174
74
LAR
Only nodes within the request zone forward route
requests
If route discovery using the smaller request zone fails
to find a route, the sender initiates another route
discovery (after a timeout) using a larger request
zone
the larger request zone may be the entire network
Rest of route discovery protocol similar to DSR
8/8/2019 705 TCD AdHocNet Brief
75/174
75
LAR Variations:Adaptive Request Zone
Each node may modify the request zone included in
the forwarded request
Modified request zone may be determined using
more recent/accurate information, and may be
smaller than the original request zone
S
B
Request zone adapted by B
Request zone defined by sender S
8/8/2019 705 TCD AdHocNet Brief
76/174
76
LAR Variations: Implicit Request Zone
In the previous scheme, a route request explicitly
specified a request zone
Alternative approach:A node X forwards a route
request received from Y if node X is deemed to be
closer to the expected zone as compared to Y
The motivation is to attempt to bring the route request
physically closer to the destination node after each
forwarding
8/8/2019 705 TCD AdHocNet Brief
77/174
77
Location-Aided Routing
The basic proposal assumes that, initially, location
information for node X becomes known to Y only
during a route discovery
This location information is used for a future route
discoveryEach route discovery yields more updated information which
is used for the next discovery
Variations
Location information can also be piggybacked on anymessage from Y to X
Y may also proactively distribute its location
information
Similar to other protocols discussed later (e.g., DREAM,GLS)
8/8/2019 705 TCD AdHocNet Brief
78/174
78
Location Aided Routing (LAR)
Advantages
reduces the scope of route request flood
reduces overhead of route discovery
Disadvantages
Nodes need to know their physical locations
Does not take into account possible existence of
obstructions for radio transmissions
8/8/2019 705 TCD AdHocNet Brief
79/174
79
Detour
Routing Using Location Information
8/8/2019 705 TCD AdHocNet Brief
80/174
80
Distance Routing Effect Algorithm for Mobility
(DREAM) [Basagni98Mobicom]
Uses location and speed information (like LAR)
DREAM uses flooding ofdata packets as the routing
mechanism (unlike LAR)
DREAM uses location information to limit the flood of datapackets to a small region
8/8/2019 705 TCD AdHocNet Brief
81/174
81
Distance Routing Effect Algorithm for Mobility
(DREAM)
S
D
Expected zone
(in the LAR jargon)
A
Node A, on receiving the
data packet, forwards it to
its neighbors within the
cone rooted at node A
S sends data packetto all
neighbors in the cone rooted
at node S
8/8/2019 705 TCD AdHocNet Brief
82/174
8/8/2019 705 TCD AdHocNet Brief
83/174
83
Ad Hoc On-Demand Distance Vector Routing
(AODV) [Perkins99Wmcsa]
DSR includes source routes in packet headers
Resulting large headers can sometimes degrade
performance
particularly when data contents of a packet are small
AODV attempts to improve on DSR by maintaining
routing tables at the nodes, so that data packets do
not have to contain routes
AODV retains the desirable feature of DSR that
routes are maintained only between nodes which
need to communicate
8/8/2019 705 TCD AdHocNet Brief
84/174
84
AODV
Route Requests (RREQ) are forwarded in a manner
similar to DSR
When a node re-broadcasts a Route Request, it sets
up a reverse path pointing towards the source
AODV assumes symmetric (bi-directional) links
When the intended destination receives a Route
Request, it replies by sending a Route Reply
Route Reply travels along the reverse path set-up
when Route Request is forwarded
8/8/2019 705 TCD AdHocNet Brief
85/174
85
Route Requests in AODV
B
A
S E
F
H
J
D
C
G
I
K
Z
Y
Represents a node that has receivedRREQ forD from S
M
N
L
8/8/2019 705 TCD AdHocNet Brief
86/174
8/8/2019 705 TCD AdHocNet Brief
87/174
8/8/2019 705 TCD AdHocNet Brief
88/174
88
Reverse Path Setup in AODV
B
A
S E
F
H
J
D
C
G
I
K
Node C receives RREQ from G and H, but does not forward
it again, because node C has already forwardedRREQ once
Z
Y
M
N
L
8/8/2019 705 TCD AdHocNet Brief
89/174
89
Reverse Path Setup in AODV
B
A
S E
F
H
J
D
C
G
I
K
Z
Y
M
N
L
8/8/2019 705 TCD AdHocNet Brief
90/174
90
Reverse Path Setup in AODV
B
A
S E
F
H
J
D
C
G
I
K
Z
Y
Node Ddoes not forwardRREQ, because node D
is the intended target of the RREQ
M
N
L
8/8/2019 705 TCD AdHocNet Brief
91/174
91
Route Reply in AODV
B
A
S E
F
H
J
D
C
G
I
K
Z
Y
Represents links on path taken by RREP
M
N
L
Route Reply in AODV
8/8/2019 705 TCD AdHocNet Brief
92/174
92
Route Reply in AODV
An intermediate node (not the destination) may also
send a Route Reply (RREP) provided that it knows amore recent path than the one previously known to
sender S
To determine whether the path known to an
intermediate node is more recent, destination
sequence numbers are used
The likelihood that an intermediate node will send a
Route Reply when using AODV not as high as DSRA new Route Request by node S for a destination is
assigned a higher destination sequence number. An
intermediate node which knows a route, but with a smaller
sequence number, cannot send Route Reply
8/8/2019 705 TCD AdHocNet Brief
93/174
93
Forward Path Setup in AODV
B
A
S E
F
H
J
D
C
G
I
K
Z
Y
M
N
L
Forward links are setup whenRREP travels along
the reverse path
Represents a link on the forward path
8/8/2019 705 TCD AdHocNet Brief
94/174
94
Data Delivery in AODV
B
A
S E
F
H
J
D
C
G
I
K
Z
Y
M
N
L
Routing table entries used to forward data packet.
Route is notincluded in packet header.
DATA
8/8/2019 705 TCD AdHocNet Brief
95/174
95
Timeouts
A routing table entry maintaining a reverse path is
purged after a timeout interval
timeout should be long enough to allow RREP to come back
A routing table entry maintaining a forward path is
purged ifnot usedfor a active_route_timeoutinterval
if no is data being sent using a particular routing table entry,
that entry will be deleted from the routing table (even if theroute may actually still be valid)
8/8/2019 705 TCD AdHocNet Brief
96/174
96
Link Failure Reporting
A neighbor of node X is considered active for a
routing table entry if the neighbor sent a packet within
active_route_timeoutinterval which was forwarded
using that entry
When the next hop link in a routing table entry
breaks, all active neighbors are informed
Link failures are propagated by means of Route Error
messages, which also update destination sequence
numbers
8/8/2019 705 TCD AdHocNet Brief
97/174
97
Route Error
When node X is unable to forward packet P (from
node S to node D) on link (X,Y), it generates a RERR
message
Node X increments the destination sequence numberfor D cached at node X
The incremented sequence numberN is included in
the RERR
When node S receives the RERR, it initiates a new
route discovery for D using destination sequence
number at least as large as N
8/8/2019 705 TCD AdHocNet Brief
98/174
98
Destination Sequence Number
Continuing from the previous slide
When node D receives the route request with
destination sequence number N, node D will set its
sequence number to N, unless it is already larger
than N
8/8/2019 705 TCD AdHocNet Brief
99/174
99
Link Failure Detection
Hello messages: Neighboring nodes periodically
exchange hello message
Absence of hello message is used as an indication of
link failure
Alternatively, failure to receive several MAC-level
acknowledgement may be used as an indication of
link failure
8/8/2019 705 TCD AdHocNet Brief
100/174
100
Why Sequence Numbers in AODV
To avoid using old/broken routes
To determine which route is newer
To prevent formation of loops
Assume that A does not know about failure of link C-Dbecause RERR sent by C is lost
Now C performs a route discovery for D. Node A receivesthe RREQ (say, via path C-E-A)
Node A will reply since A knows a route to D via node B
Results in a loop (for instance, C-E-A-B-C )
A B C D
E
8/8/2019 705 TCD AdHocNet Brief
101/174
101
Why Sequence Numbers in AODV
Loop C-E-A-B-C
A B C D
E
8/8/2019 705 TCD AdHocNet Brief
102/174
102
Optimization: Expanding Ring Search
Route Requests are initially sent with small Time-to-
Live (TTL) field, to limit their propagation
DSR also includes a similar optimization
If no Route Reply is received, then larger TTL tried
8/8/2019 705 TCD AdHocNet Brief
103/174
103
Summary: AODV
Routes need not be included in packet headers
Nodes maintain routing tables containing entries only
for routes that are in active use
At most one next-hop per destination maintained at
each node
DSR may maintain several routes for a single destination
Unused routes expire even if topology does not
change
8/8/2019 705 TCD AdHocNet Brief
104/174
104
So far ...
All protocols discussed so far perform some form of
flooding
Now we will consider protocols which try to
reduce/avoid such behavior
8/8/2019 705 TCD AdHocNet Brief
105/174
105
Link Reversal Algorithm [Gafni81]
A FB
C E G
D
8/8/2019 705 TCD AdHocNet Brief
106/174
8/8/2019 705 TCD AdHocNet Brief
107/174
107
Link Reversal Algorithm
Link (G,D) broke
A FB
C E G
D
Any node, other than the destination, that has no outgoing links
reverses all its incoming links.
Node G has no outgoing links
8/8/2019 705 TCD AdHocNet Brief
108/174
108
Link Reversal Algorithm
A FB
C E G
D
Now nodes E and F have no outgoing links
Represents a
link that was
reversed recently
8/8/2019 705 TCD AdHocNet Brief
109/174
109
Link Reversal Algorithm
A FB
C E G
D
Now nodes B and G have no outgoing links
Represents a
link that was
reversed recently
8/8/2019 705 TCD AdHocNet Brief
110/174
110
Link Reversal Algorithm
A FB
C E G
D
Now nodes A and F have no outgoing links
Represents a
link that was
reversed recently
8/8/2019 705 TCD AdHocNet Brief
111/174
111
Link Reversal Algorithm
A FB
C E G
D
Now all nodes (other than destinationD) have an outgoing link
Represents a
link that was
reversed recently
8/8/2019 705 TCD AdHocNet Brief
112/174
112
Link Reversal Algorithm
A FB
C E G
D
DAG has been restored with only the destination as a sink
Li k R l Al i h
8/8/2019 705 TCD AdHocNet Brief
113/174
113
Link Reversal Algorithm
Attempts to keep link reversals local to where the
failure occurred
But this is not guaranteed
When the first packet is sent to a destination, the
destination oriented DAG is constructed
The initial construction does result in flooding ofcontrol packets
Li k R l Al ith
8/8/2019 705 TCD AdHocNet Brief
114/174
114
Link Reversal Algorithm
The previous algorithm is called a full reversal
method since when a node reverses links, it reverses
allits incoming links
Partial reversal method [Gafni81]: A node reversesincoming links from only those neighbors who have
not themselves reversed links previously
If all neighbors have reversed links, then the node reversesall its incoming links
Previously at node X means since the last linkreversaldone by node X
P ti l R l M th d
8/8/2019 705 TCD AdHocNet Brief
115/174
115
Partial Reversal Method
Link (G,D) broke
A FB
C E G
D
Node G has no outgoing links
P ti l R l M th d
8/8/2019 705 TCD AdHocNet Brief
116/174
116
Partial Reversal Method
A FB
C E G
D
Now nodes E and F have no outgoing links
Represents a
link that was
reversed recently
Represents a
node that hasreversed links
P ti l R l M th d
8/8/2019 705 TCD AdHocNet Brief
117/174
117
Partial Reversal Method
A FB
C E G
D
Nodes E and F donotreverse links from node G
Now node B has no outgoing links
Represents a
link that was
reversed recently
8/8/2019 705 TCD AdHocNet Brief
118/174
P ti l R l M th d
8/8/2019 705 TCD AdHocNet Brief
119/174
119
Partial Reversal Method
A FB
C E G
D
Now all nodes (except destinationD) have outgoing links
Represents a
link that was
reversed recently
Partial Reversal Method
8/8/2019 705 TCD AdHocNet Brief
120/174
120
Partial Reversal Method
A FB
C E G
D
DAG has been restored with only the destination as a sink
Link Reversal Methods: Advantages
8/8/2019 705 TCD AdHocNet Brief
121/174
121
Link Reversal Methods: Advantages
Link reversal methods attempt to limit updates to
routing tables at nodes in the vicinity of a broken link
Partial reversal method tends to be better than full reversal
method
Each node may potentially have multiple routes to a
destination
Link Reversal Methods: Disadvantage
8/8/2019 705 TCD AdHocNet Brief
122/174
122
Link Reversal Methods: Disadvantage
Need a mechanism to detect link failure
hello messages may be used
but hello messages can add to contention
If network is partitioned, link reversals continue
indefinitely
Link Reversal in a Partitioned Network
8/8/2019 705 TCD AdHocNet Brief
123/174
123
Link Reversal in a Partitioned Network
A FB
C E G
DThis DAG is fordestinationnode D
Full Reversal in a Partitioned Network
8/8/2019 705 TCD AdHocNet Brief
124/174
124
Full Reversal in a Partitioned Network
A FB
C E G
D
A and G do not have outgoing links
Full Reversal in a Partitioned Network
8/8/2019 705 TCD AdHocNet Brief
125/174
125
Full Reversal in a Partitioned Network
A FB
C E G
D
E and F do not have outgoing links
Full Reversal in a Partitioned Network
8/8/2019 705 TCD AdHocNet Brief
126/174
126
Full Reversal in a Partitioned Network
A FB
C E G
D
B and G do not have outgoing links
Full Reversal in a Partitioned Network
8/8/2019 705 TCD AdHocNet Brief
127/174
127
Full Reversal in a Partitioned Network
A FB
C E G
D
E and F do not have outgoing links
Full Reversal in a Partitioned Network
8/8/2019 705 TCD AdHocNet Brief
128/174
128
Full Reversal in a Partitioned Network
A FB
C E G
D
In the partitiondisconnected from
destination D, link
reversals continue, until
the partitions merge
Need a mechanism to
minimize this wasteful
activity
Similar scenario can
occur with partial
reversal method too
Temporally-Ordered Routing Algorithm
8/8/2019 705 TCD AdHocNet Brief
129/174
129
(TORA) [Park97Infocom]
TORA modifies the partial link reversal method to be
able to detect partitions
When a partition is detected, all nodes in the partition
are informed, and link reversals in that partition cease
Partition Detection in TORA
8/8/2019 705 TCD AdHocNet Brief
130/174
130
Partition Detection in TORA
A
B
E
D
F
C
DAG for
destination D
Partition Detection in TORA
8/8/2019 705 TCD AdHocNet Brief
131/174
131
Partition Detection in TORA
A
B
E
D
F
C
TORA uses a
modified partialreversal method
Node A has no outgoing links
Partition Detection in TORA
8/8/2019 705 TCD AdHocNet Brief
132/174
132
Partition Detection in TORA
A
B
E
D
F
C
TORA uses a
modified partialreversal method
Node B has no outgoing links
Partition Detection in TORA
8/8/2019 705 TCD AdHocNet Brief
133/174
133
Partition Detection in TORA
A
B
E
D
F
C
Node B has no outgoing links
Partition Detection in TORA
8/8/2019 705 TCD AdHocNet Brief
134/174
134
Partition Detection in TORA
A
B
E
D
F
C
Node C has no outgoing links -- all its neighbor have
reversed links previously.
Partition Detection in TORA
8/8/2019 705 TCD AdHocNet Brief
135/174
135
Partition Detection in TORA
A
B
E
D
F
C
Nodes A and B receive the reflection from node C
Node B now has no outgoing link
8/8/2019 705 TCD AdHocNet Brief
136/174
Partition Detection in TORA
8/8/2019 705 TCD AdHocNet Brief
137/174
137
Partition Detection in TORA
A
B
E
D
F
COn detecting a partition,
node A sends a clear (CLR)message that purges all
directed links in that
partition
TORA
8/8/2019 705 TCD AdHocNet Brief
138/174
138
TORA
Improves on the partial link reversal method in
[Gafni81] by detecting partitions and stopping non-
productive link reversals
Paths may not be shortest
The DAG provides many hosts the ability to send
packets to a given destinationBeneficial when many hosts want to communicate with a
single destination
TORA Design Decision
8/8/2019 705 TCD AdHocNet Brief
139/174
139
TORA Design Decision
TORA performs link reversals as dictated by[Gafni81]
However, when a link breaks, it looses its direction
When a link is repaired, it may not be assigned adirection, unless some node has performed a routediscovery after the link brokeif no one wants to send packets to D anymore, eventually,
the DAG for destination D may disappear
TORA makes effort to maintain the DAG for D only ifsomeone needs route to DReactive behavior
8/8/2019 705 TCD AdHocNet Brief
140/174
So far ...
8/8/2019 705 TCD AdHocNet Brief
141/174
141
All nodes had identical responsibilities
Some schemes propose giving special
responsibilities to a subset of nodesEven if all nodes are physically identical
Core-based schemes are examples of such schemes
8/8/2019 705 TCD AdHocNet Brief
142/174
Core-Extraction Distributed Ad Hoc Routing
(CEDAR) [Sivakumar99]
8/8/2019 705 TCD AdHocNet Brief
143/174
143
(CEDAR) [Sivakumar99]
A subset of nodes in the network is identified as thecore
Each node in the network must be adjacent to at leastone node in the core
Each node picks one core node as its dominator(or leader)
Core is determined by periodic message exchangesbetween each node and its neighbors
attempt made to keep the number of nodes in the core small
Each core node determines paths to nearby corenodes by means of a localized broadcastEach core node guaranteed to have a core node at
8/8/2019 705 TCD AdHocNet Brief
144/174
144
B
A
C E
JS K
D
F
H
G
A core node
Node E is the dominator
for nodes D, F and K
Link State Propagation in CEDAR
8/8/2019 705 TCD AdHocNet Brief
145/174
145
p g
The distance to which the state of a link is propagatedin the network is a function of
whether the link is stable -- state of unstable links is notpropagated very far
whether the link bandwidth is high or low -- only state of linkswith high bandwidth is propagated far
Link state propagation occurs among core nodes
Link state information includes dominators of link end-points
Each core node knows the state of local links and
stable high bandwidth links far away
Route Discovery in CEDAR
8/8/2019 705 TCD AdHocNet Brief
146/174
146
When a node S wants to send packets to destination D
Node S informs its dominator core node B
Node B finds a route in the core network to the core
node E which is the dominator for destination DThis is done by means of a DSR-like route discovery (butsomewhat optimized) process among the core nodes
Core nodes on the above route then build a route
from S to D using locally available link stateinformation
Route from S to D may or may not include corenodes
CEDAR: Core Maintenance
8/8/2019 705 TCD AdHocNet Brief
147/174
147
B
A
C E
JS K
D
F
H
G
A core node
Link State at Core Nodes
8/8/2019 705 TCD AdHocNet Brief
148/174
148
B
A
C E
JS K
D
F
H
G
Links that node B is aware of
CEDAR Route Discovery
8/8/2019 705 TCD AdHocNet Brief
149/174
149
B
A
C E
JS K
D
F
H
G
Partial route constructed by B
Links that node C is aware of
CEDAR Route Discovery
8/8/2019 705 TCD AdHocNet Brief
150/174
150
B
A
C E
JS K
D
F
H
G
Complete route -- last two hops determined by node C
CEDAR
8/8/2019 705 TCD AdHocNet Brief
151/174
151
AdvantagesRoute discovery/maintenance duties limited to a small
number of core nodes
Link state propagation a function of link stability/quality
Disadvantages
Core nodes have to handle additional traffic, associated withroute discovery and maintenance
Asymmetric Responsibilities:
Cluster-Based Schemes
8/8/2019 705 TCD AdHocNet Brief
152/174
152
Cluster-Based Schemes
Some cluster-based schemes have also beenproposed [Gerla95,Krishna97,Amis00]
In some cluster-based schemes, a leader is elected
for each clusterof node
The leader often has some special responsibilities
Different schemes may differ inhow clusters are determined
the way cluster head (leader) is chosen
duties assigned to the cluster head
Proactive Protocols
8/8/2019 705 TCD AdHocNet Brief
153/174
153
Most of the schemes discussed so far are reactive
Proactive schemes based on distance-vector and
link-state mechanisms have also been proposed
Link State Routing [Huitema95]
8/8/2019 705 TCD AdHocNet Brief
154/174
154
Each node periodically floods status of its links
Each node re-broadcasts link state information
received from its neighbor
Each node keeps track of link state informationreceived from other nodes
Each node uses above information to determine nexthop to each destination
Optimized Link State Routing (OLSR)
[Jacquet00ietf Jacquet99Inria]
8/8/2019 705 TCD AdHocNet Brief
155/174
155
[Jacquet00ietf,Jacquet99Inria]
The overhead of flooding link state information isreduced by requiring fewer nodes to forward the
information
A broadcast from node X is only forwarded by itsmultipoint relays
Multipoint relays of node X are its neighbors such
that each two-hop neighbor of X is a one-hopneighbor of at least one multipoint relay of X
Each node transmits its neighbor list in periodic beacons, sothat all nodes can know their 2-hop neighbors, in order to
choose the multipoint relays
Optimized Link State Routing (OLSR)
8/8/2019 705 TCD AdHocNet Brief
156/174
156
Nodes C and E are multipoint relays of node A
A
BF
C
D
E H
GK
J
Node that has broadcast state information from A
Optimized Link State Routing (OLSR)
8/8/2019 705 TCD AdHocNet Brief
157/174
157
Nodes C and E forward information received from A
A
BF
C
D
E H
GK
J
Node that has broadcast state information from A
Optimized Link State Routing (OLSR)
8/8/2019 705 TCD AdHocNet Brief
158/174
158
Nodes E and K are multipoint relays for node H Node K forwards information received from H
E has already forwarded the same information once
A
BF
C
D
E H
GK
J
Node that has broadcast state information from A
OLSR
8/8/2019 705 TCD AdHocNet Brief
159/174
159
OLSR floods information through the multipoint relays
The flooded itself is fir links connecting nodes to
respective multipoint relays
Routes used by OLSR only include multipoint relays
as intermediate nodes
Destination-Sequenced Distance-Vector
(DSDV) [Perkins94Sigcomm]
8/8/2019 705 TCD AdHocNet Brief
160/174
160
(DSDV) [Perkins94Sigcomm]
Each node maintains a routing table which storesnext hop towards each destination
a cost metric for the path to each destination
a destination sequence number that is created by thedestination itself
Sequence numbers used to avoid formation of loops
Each node periodically forwards the routing table to
its neighbors
Each node increments and appends its sequence numberwhen sending its local routing table
This sequence number will be attached to route entriescreated for this node
Destination-Sequenced Distance-Vector
(DSDV)
8/8/2019 705 TCD AdHocNet Brief
161/174
161
(DSDV)
Assume that node X receives routing informationfrom Y about a route to node Z
Let S(X) and S(Y) denote the destination sequence
number for node Z as stored at node X, and as sent
by node Y with its routing table to node X,
respectively
X Y Z
Destination-Sequenced Distance-Vector
(DSDV)
8/8/2019 705 TCD AdHocNet Brief
162/174
162
(DSDV)
Node X takes the following steps:
If S(X) > S(Y), then X ignores the routing informationreceived from Y
If S(X) = S(Y), and cost of going through Y is smaller than
the route known to X, then X sets Y as the next hop to Z
If S(X) < S(Y), then X sets Y as the next hop to Z, and S(X)is updated to equal S(Y)
X Y Z
8/8/2019 705 TCD AdHocNet Brief
163/174
163
Hybrid Protocols
Zone Routing Protocol (ZRP) [Haas98]
8/8/2019 705 TCD AdHocNet Brief
164/174
164
Zone routing protocol combines
Proactive protocol: which pro-actively updates
network state and maintains route regardless of
whether any data traffic exists or not
Reactive protocol: which only determines route to a
destination if there is some data to be sent to the
destination
ZRP
8/8/2019 705 TCD AdHocNet Brief
165/174
165
All nodes within hop distance at most dfrom a node
X are said to be in the routing zone of node X
All nodes at hop distance exactly dare said to beperipheral nodes of node Xs routing zone
ZRP
8/8/2019 705 TCD AdHocNet Brief
166/174
166
Intra-zone routing: Pro-actively maintain state
information for links within a short distance from any
given node
Routes to nodes within short distance are thus maintainedproactively (using, say, link state or distance vector protocol)
Inter-zone routing: Use a route discovery protocol for
determining routes to far away nodes. Route
discovery is similar to DSR with the exception thatroute requests are propagated via peripheral nodes.
ZRP: Example with
Zone Radius = d = 2
8/8/2019 705 TCD AdHocNet Brief
167/174
167
SCA
EF
B
D
S performs routediscovery forD
Denotes route request
ZRP: Example with d = 2
8/8/2019 705 TCD AdHocNet Brief
168/174
168
SCA
EF
B
D
S performs routediscovery forD
Denotes route reply
E knows route from E to D,
so route request need not be
forwarded to D from E
8/8/2019 705 TCD AdHocNet Brief
169/174
8/8/2019 705 TCD AdHocNet Brief
170/174
LANMAR Routing to Nodes Within Scope
8/8/2019 705 TCD AdHocNet Brief
171/174
171
Assume that node C is within scope of node A
Routing from A to C: Node A can determine next hop
to node C using the available link state information
A B
C
F
H
G
E
D
LANMAR Routing to Nodes Outside Scope
8/8/2019 705 TCD AdHocNet Brief
172/174
172
Routing from node A to F which is outside As scope Let H be the landmark node for node F
Node A somehow knows that H is the landmark for C
Node A can determine next hop to node H using theavailable distance vector information
A B
C
F
H
G
E
D
LANMAR Routing to Nodes Outside Scope
8/8/2019 705 TCD AdHocNet Brief
173/174
173
Node D is within scope of node F
Node D can determine next hop to node F using link
state information
The packet for F may never reach the landmark node
H, even though initially node A sends it towards H
A B
C
F
H
G
E
D
8/8/2019 705 TCD AdHocNet Brief
174/174
LANMAR scheme uses node identifiers as landmarks
Anchored Geodesic Scheme [LeBoudec00] uses
geographical regions as landmarks