routing in mobile ad hoc networks (from ad hoc networking by charles perkins)
DESCRIPTION
Routing in Mobile Ad Hoc Networks (from Ad Hoc Networking by Charles Perkins) Thanks to Prof. Yu at Cleveland State Univ. Contents. Network layer solutions in infrastructure-less networks What is MANET: Mobile ad hoc (multihop) networks? Routing algorithms for MANETs Flooding - PowerPoint PPT PresentationTRANSCRIPT
Routing in Mobile Ad Hoc Networks
(from Ad Hoc Networking by Charles Perkins)
Thanks to Prof. Yu at Cleveland State Univ.
2
Contents
Network layer solutions in infrastructure-less networks
What is MANET: Mobile ad hoc (multihop) networks?
Routing algorithms for MANETs Flooding Dynamic Source Routing (DSR) Ad-hoc On-Demand Distance Vector (AODV)
3
Mobile Ad Hoc Networks (MANETs)
A collection of mobile hosts may form a temporary network without the aid of any established infrastructure or centralized administration (base station)
Routes between nodes may potentially contain multiple hops, thus also called multihop networks
Better space utilization than direct communication Requires a longer latency as for a single communication pair
due to more number of hops But the overall performance improves because simultaneous
transmissions are allowed as long as they are separated in space
Better energy utilization than direct communication
4
Mobile Ad Hoc Networks
A
C
B
E E
C
B
A
Multihop communication May need to traverse
multiple links to reach a destination
C is not reachable from A but can communicate via B
Major difficulty Mobility causes route
changes
A graph can be used to model a MANET
5
Why Ad Hoc Networks ?
AdvantagesEase of
deploymentSpeed of
deploymentDecreased
dependence on infrastructure
Applications Personal area
networking cell phone, laptop, ear
phone, wrist watch Military environments
soldiers, tanks, planes Civilian environments
taxi cab network meeting rooms sports stadiums boats, small aircraft
Emergency operations search-and-rescue policing and fire
fighting
6
Characteristics of MANET
Characteristics Dynamic topology Broadcast transmission: overhearing is possible Bidirectional connection Limited resources: bandwidth, CPU, battery Higher link error rate
Assumptions Moderate movement with respect to packet
transmission latency Promiscuous receive mode Enough number of mobile hosts: no network partitioning
7
Hierarchical architecture
Internet
AP AP
AP
APRouter
Router
Router
Router/Gateway
Router/Gateway
Mobile Path
Handoff
Router
Router
AP/Router
Router
Router
Wireless Mesh Backhaul
New Route
Old Route
802.11b/g(2.4GHz)
802.11a(5GHz)
8
Contents
Network layer solutions in infrastructure-less networks
What is MANET: Mobile ad hoc (multihop) networks?
Routing algorithms for MANETs Flooding Dynamic Source Routing (DSR) Ad-hoc On-Demand Distance Vector (AODV)
9
Flooding of Control Packets
How to reduce the scope of the route request flood ?LAR (Localized Area Routing)Query localization
How to reduce redundant broadcasts ?The Broadcast Storm Problem
10
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
11
Flooding for Data Delivery
B
A
S E
F
H
J
D
C
G
IK
Represents transmission of packet P
Z
YBroadcast transmission
M
N
L
12
Flooding for Data Delivery
B
A
S E
F
H
J
D
C
G
IK
• Node H receives packet P from two neighbors: potential for collision
Z
Y
M
N
L
13
Flooding for Data Delivery
B
A
S E
F
H
J
D
C
G
IK
• 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
14
Flooding for Data Delivery
B
A
S E
F
H
J
D
C
G
IK
Z
Y
M
• Nodes J and K both broadcast packet P to node D• Since nodes J and K are hidden from each other, their transmissions may collide Packet P may not be delivered to node D at all, despite the use of flooding
N
L
15
Flooding for Data Delivery
B
A
S E
F
H
J
D
C
G
IK
Z
Y
• Node D does not forward packet P, because node D is the intended destination of packet P
M
N
L
16
Flooding for Data Delivery
B
A
S E
F
H
J
D
C
G
IK
• 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 destination D also do not receive packet P (example: node N)
Z
Y
M
N
L
17
Flooding for Data Delivery
B
A
S E
F
H
J
D
C
G
IK
• 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
18
Flooding for Data Delivery: Advantages & Disadvantages
Advantages
Simplicity
May be more efficient than other protocols when rate of information transmission is low enough
Potentially higher reliability of data delivery Because packets may be delivered to the destination
on multiple paths
19
Flooding for Data Delivery: Advantages & DisadvantagesDisadvantages
Potentially, very high overhead Data packets may be delivered to too many nodes who do
not need to receive them
Potentially lower reliability of data delivery Flooding uses broadcasting -- hard to implement reliable
broadcast delivery without significantly increasing overhead
• Broadcasting in IEEE 802.11 MAC is unreliable (no ACK) In 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
20
Dynamic Source Routing (DSR)
Source determines the entire path to the destination when it has data packet to sendOn-demand or reactive protocolsNo periodic advertisements
Three control packets: RREQ, RREP, RERR
Procedures(1) Route discovery procedure (2) Route maintenance procedure(3) DSR Optimizations (Route cache)
21
Assumption:
Cooperative nodes Moderate speed of node Relatively small network diameter (5-10 hops) Detectable packet error Unidirectional or bidirectional link A single IP address Promiscuous mode (optional)
22
A
B
C
E
D
G
H
F
A
A
A-B
A-C
A-C-E
A-C-E
A-C-E
A-B-D
A-B-D-GA-B-D-G
A-B-D-G
Route Discovery
Route Request (RREQ)
Route Reply (RREP)
Initiator ID
Initiator seq#
Target ID
Partial route
RREQ FORMATRREQ FORMAT
- Each node appends own identifier when forwarding RREQ- RREQ is broadcast, while RREP is unicast
23
Route Discovery: at source A
A needs to send to G
Lookup Cache for route A to G
Route
found?
Start Route Discovery Protocol
Continue normal
processing
Route Discovery finished
Packet in
buffer?
Send packet to next-hop
done
Buffer
packet
no
Write route in packet header
yes
yes
no
wai
t
24
Route Discovery: At an intermediate node
Accept route
request packet
<src,id> in recently
seen requests
list?
Discard
route reque
st
yes
no
Host’s address already
in partial route
Discard
route reque
st
yes
Store <src,id> in
list
Broadcast packet
Send route reply
packet
done
myAddr=target
noAppend myAddr to
partial route
no
yes
25
Route Reply in DSR
Route Reply can be sent by reversing the route in Route Request (RREQ) only if links are guaranteed to be bi-directional To ensure this, RREQ should be forwarded only if it
received on a link that is known to be bi-directional
If unidirectional (asymmetric) links are allowed, then RREP may need a route discovery for A from node G Unless node G already knows a route to node A If a route discovery is initiated by G for a route to A,
then the Route Reply is piggybacked on the Route Request from G.
If IEEE 802.11 MAC is used to send data, then links have to be bi-directional (since Ack is used)
26
Now, Route is Discovered
Node A on receiving RREP, caches the route included in the RREP
When node A sends a data packet to G, the entire route is included in the packet header hence the name source routing
Intermediate nodes use the source route included in a packet to determine to whom a packet should be forwarded
27
A
B
C
E
D
G
H
F
Route Maintenance
G
RERRRERR
Route Cache (A)G: A, B, D, G G: A, C, E, H, GF: C, E, F
28
Additional feature #1: Caching Overheard Routes
A B C D E
V W X Y Z
Node A CacheE: A, B, C, D, E
Node C CacheE: C, D, EE: C, D, E A: C, B, AE: C, D, E A: C, B, A Z: C, X, Y, Z V: C, X, W, V
29
Route Caching: Beware!
When sending a RREQ Send first with TTL=1 hoping that nearby hosts
have an entry: non-propagating route request If no reply for some time, send RREQ with maximum
TTL This is called “Expand Ring Search”
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
Adverse impact on TCP
30
Additional feature #2: RREP with Cached Routes
A
B
C
E
D
H
F
G
RERRRERR
Route Cache (A)G: A, B, D, G F: C, E, F
RREQ
RREQ
Route Cache (C)G: C, E, H, G
RREPG:A,C,E,H,G
Route Cache (C)G: C, E, D, G
RREQ(! D-G)
RREQ(! D-G) RREQ
(! D-G)
31
A
B
C
E
D
G
H
F
Additional feature #3: Packet Salvage
G
RERRRERR
Route Cache (D)G: D, E, H, G
Caution: No double salvage allowed !!!Caution: No double salvage allowed !!!
32
A Summary of DSRA Summary of DSR
Entirely on-demand, potentially zero control message overheadTrivially loop-free with source routingConceptually supports unidirectional links as well as bidirectional links
High packet delays/jitters associated with on-demand routingSpace overhead in packets and route cachesPromiscuous mode operations consume excessive amount of powerNetwork partition problem - Message explosion problem (large number of route request packets) Use exponential backoff to limit the rate at which new
route discoveries may be initiated for the same target
33
Contents
Network layer solutions in infrastructure-less networks
What is MANET: Mobile ad hoc (multihop) networks?
Routing algorithms for MANETs Flooding Dynamic Source Routing (DSR) Ad-hoc On-Demand Distance Vector (AODV)
34
Ad Hoc On-Demand Distance Vector Routing (AODV)
DSR vs DSDV DSR typically outperforms DSDV because periodic
control messages are not needed A main drawback of DSR is the large packet header
(entire route information)
AODV = DSR + DSDV Routes are discovered only when there are packets (on-
demand) as in DSR Nodes main distance and next node vectors as in DSDV
to reduce the header size
* Explained very well in C.E.Perkins’ Ad Hoc Networking book
35
A
B
C
E
D
G
H
F
A
A
A-B
A-C
A-C-E
A-C-E
A-C-E
A-B-D
A-B-D-GA-B-D-G
A-B-D-G
Route Discovery in DSR
Route Request (RREQ)
Route Reply (RREP)
Initiator ID
Initiator seq#
Target ID
Partial route
RREQ FORMATRREQ FORMAT
- Each node appends own identifier when forwarding RREQ
36
A
B
C
E
D
G
H
F
A, G, 1
A, G, 1
A, G, 2
A, G, 2
A, G, 3
A, G, 3
A, G, 3
A, G, 3
G, A, 3G, A, 2
G, A, 1
Route Discovery in AODV
Route Request (RREQ)
Route Reply (RREP)
Initiator ID
Target ID
Hop count
RREQ FORMATRREQ FORMAT
- Each node remembers where the packet came from (reverse path) during RREQ.- It set up forward path during RREP.
37
Reverse Path Setup in AODV
B
A
S E
F
H
J
D
C
G
IK
Z
Y
M
N
L
38
Forward Path Setup in AODV
B
A
S E
F
H
J
D
C
G
IK
Z
Y
M
N
L
Forward links are setup when RREP travels alongthe reverse path
Those paths are not included in the header of each data packetbut stored in each node as a routing table or DV
39
Link State Routing
LSR 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 information received
from other nodes Each node uses above information to determine next
hop to each destination
Direct application of LSR in a MANET is difficult due to a large control overhead Due to mobility, broadcast period cannot be reduced as
in wired network
40
Routing in MANET (Unicast)
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
Proactive protocols (or called “Table-based”) Determine routes independent of traffic pattern Traditional LS and DV routing protocols are proactive
Reactive protocols (or called “On-demand”) Maintain routes only if needed (DSR)
Hybrid protocols
41
Reactive Routing Protocols
Flooding Data packets are flooded to the destination But also to all other nodes => much overhead but more
reliable DSR (Dynamic Source Routing)
First, small control packet is flooded to discover a route Then, unicast data packets along the discovered route But each data packet includes the information on the entire
path in its packet header => larger packet size AODV (Ad-hoc On-demand Distance Vector)
Route discovery as in DSR but each node keeps a routing table as in proactive algorithm to reduce the packet size
Reactive + Proactive
42
Trade-Off between Proactive and Reactive Protocols
Latency of route discovery Proactive protocols may have lower latency since routes are
maintained 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 routes are
determined only if needed Proactive protocols can (but not necessarily) result in higher
overhead due to continuous route updating
Which approach achieves a better trade-off depends on the traffic and mobility patterns