Title: Mobile Ad-hoc Networks (MANET)
1Mobile Ad-hoc Networks (MANET)
- Ad-hoc network
- A collection of wireless mobile hosts forming a
temporary network without the aid of any
established infrastructure or centralized
administration. - Significant differences to existing wired
networks - Wireless
- Self-starting
- No administrator
- Cannot assume that every computer is within
communication range of every other computer - Possibly quite dynamic topology of
interconnections - Traffic types unicast/multicast/anycast/geocast
2Routing in MANET
- Routing assumptions for unicast traffic
- Flat topology assumption
- Proactive DSDV, TORA, WRP
- Reactive AODV, DSR, STAR
- Hierarchical topology assumption
- Clustering CBRP, PATM
- Geographic assumption
- Location aided routing LAR, GeoCast
3Classification of Routing Protocols for MANETS
4Desired Properties of Ad Hoc Routing Protocols
- Distributed
- Bandwidth efficient
- Reduce control traffic/overhead
- Battery efficient
- Fast route convergence
- Correct loop free
- Reduce overhead
- Unidirectional Link Support
5Performance Metrics of Ad Hoc Routing Protocols
- Maximize
- end-to-end throughput
- delivery ratio
- Minimize
- Congestion (load-balancing)
- end-to-end delay
- packet loss
- shortest path/minimum hop (route length)
- overhead (bandwidth)
- energy consumption
6Mobile Ad hoc Networks (MANET) vs. Sensor Networks
MANET SensorNet
applications meeting, group collaboration smart building, habitat monitoring
comm. address-centric comm. data centric comm.
topology peer-to-peer sensors ? base peer-to-peer
traffic random periodic, synchronous
platform laptops, PDAs motes more resource constrained
scale 10s to 100s gt1000 larger scale and more redundancy
mobility slow (meeting) fast (cars) focus on mobility slow (habitat) fast less focus on mobility so far
similarity No infrastructure, multi-hop, wireless networks No infrastructure, multi-hop, wireless networks
7Address Centric Routing (AC)
Temperature Reading (source 2)
Temperature Reading (source 1)
Z
B
Give Me The Average Temperature? ( sink )
8Data Centric Routing (DC)
Temperature Reading (source 2)
Temperature Reading (source 1)
Z
B
Give Me The Average Temperature? ( sink )
9Dynamic 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 using Route Request (RREQ) - Each node appends own identifier when forwarding
RREQ - Promiscuous mode
10Route Discovery in DSR
Y
Z
S
E
F
B
C
M
L
J
A
G
H
D
K
I
N
Represents a node that has received RREQ for D
from S
11Route Discovery in DSR
Y
Broadcast transmission
Z
S
S
E
F
B
C
M
L
J
A
G
H
D
K
I
N
Represents transmission of RREQ
X,Y Represents list of identifiers appended
to RREQ
12Route Discovery in DSR
Y
Z
S
S,E
E
F
B
C
M
L
J
A
G
S,C
H
D
K
I
N
- Node H receives packet RREQ from two neighbors
- potential for collision
13Route Discovery in DSR
Y
Z
S
E
F
S,E,F
B
C
M
L
J
A
G
H
D
K
S,C,G
I
N
- Node C receives RREQ from G and H, but does not
forward - it again, because node C has already forwarded
RREQ once
14Route Discovery in DSR
Y
Z
S
E
F
S,E,F,J
B
C
M
L
J
A
G
H
D
K
I
N
S,C,G,K
- Nodes J and K both broadcast RREQ to node D
- Caveat Since nodes J and K are hidden from each
other, their - transmissions may collide
15Route Discovery in DSR
- Broadcast storm prevention
- Drop previously seen messages
- Loop prevention
- Host drops messages with its address in route
record (like BGP)
16Route 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 - Not always the case, sometimes need new route
request - RREP includes the route from S to D on which RREQ
was received by node D
17Route Reply in DSR
Y
Z
S
RREP S,E,F,J,D
E
F
B
C
M
L
J
A
G
H
D
K
I
N
Represents RREP control message
18Dynamic 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
in a packet to determine to whom a packet should
be forwarded
19Data Delivery in DSR
Y
Z
DATA S,E,F,J,D
S
E
F
B
C
M
L
J
A
G
H
D
K
I
N
Packet header size grows with route length
20Data Delivery in DSR
- Send route error packet if next hop cannot be
reached - Delete route from the cache when receiving error
packet - Passive acknowledgement
- When node overhears next hop forwarding message.
21DSR Optimization Route Caching
- Each node caches a new route it learns by any
means - Through Route Request (RREQ)
- When node K receives RREQ S,C,G destined for
node D, node K learns route K,G,C,S to node S - Through Route Reply (RREP)
- When node S finds RREP S,E,F,J,D to node D,
node S also learns route S,E,F to node F - When node F forwards RREP S,E,F,J,D, node F
learns route F,J,D to node D
22DSR Optimization Route Caching
- Through DATA packets source routes
- 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 - Problem Stale caches may increase overheads
- Splicing of cached routes
- Example know A,H,I overheard I,G,F
23DSR Optimization Piggybacking
- Possible to piggyback route reply on new route
requests - Also small data
- TCP handshake
- Host must forward piggybacked data when replying
to request with cached routes
24DSR Optimization Error Handling
- Disconnected network leads to repeated route
requests - Addressed through exponential backoff
- Eavesdropping on route error packets
- Temporarily mark invalid route
- Other nodes may reply with invalid cached routes
25Dynamic Source Routing Advantages
- Routes maintained only between nodes who need to
communicate - reduces overhead of route table maintenance
- Routing cache can further reduce route discovery
overhead - A single route discovery may yield many routes to
the destination, due to intermediate nodes
replying from local caches
26Dynamic Source Routing Disadvantages
- Packet header size grows with route length due to
source routing - Flooding of route requests may potentially reach
all nodes in the network - Stale caches will lead to increased overhead
27Distance-Vector routing
- Each node maintains a routing table containing
- Number of hops to each destination
- Next hop to reach each destination
- list of all destinations
- The succession of next hops leads to a
destination - Each node periodically broadcasts its current
estimate of the shortest distance to each
available destination to all of its neighbors - Typical representative Distributed Bellman-Ford
(DBF)
28AODV (Ad Hoc On-Demand Distance Vector)
- AODV is based on the DSDV (Destination-Sequenced
Distance Vector) algorithm - Distance vector
- Different sequence numbers for each destination.
- Creation of routes on a demand basis traffic
reactive - Nodes that are not on a selected path do not
maintain routing information or participate in
routing table exchanges! - Goal Minimize broadcast overhead and
transmission latency
29Route Sequence Numbers
- Unique counter for each destination
- Symbolizes the freshness of a route
- Source specifies the most recently known route
during route establishment - Updated occasionally
- Link failure
- Destination moves
- Intermediate nodes move
30Route Requests from S to D in AODV
Y
Z
S
E
F
B
C
M
L
J
A
G
H
D
K
I
N
Represents a node that has received RREQ for D
from S
31Route Requests from S to D in AODV
Y
Broadcast transmission
Z
S
E
F
B
C
M
L
J
A
G
H
D
K
I
N
Represents transmission of RREQ
32Route Requests from S to D in AODV
Y
Z
S
E
F
B
C
M
L
J
A
G
H
D
K
I
N
Represents links on Reverse Path
33Reverse Path Setup from S to D in AODV
Y
Z
S
E
F
B
C
M
L
J
A
G
H
D
K
I
N
- Node C receives RREQ from G and H, but does not
forward - it again, because node C has already forwarded
RREQ once
34Reverse Path Setup from S to D in AODV
Y
Z
S
E
F
B
C
M
L
J
A
G
H
D
K
I
N
35Reverse Path Setup in AODV
Y
- Node D does not forward RREQ, because node D
- is the intended target of the RREQ
Z
S
E
F
B
C
M
L
J
A
G
H
D
K
I
N
36Route Reply from D to S in AODV
Y
Z
S
E
F
B
C
M
L
J
A
G
H
D
K
I
N
Represents links on path taken by RREP
37Route Reply in AODV
- Intermediate node may also send a Route Reply
(RREP) provided that it knows a more recent path
than the one previously known to sender S - Recent path means higher sequence number
- The likelihood that an intermediate node will
send a RREP not as high as DSR - An intermediate node which knows a route, but
with a smaller sequence number, cannot send Route
Reply
38Forward Path Setup in AODV
Y
Z
S
E
F
B
C
M
L
J
A
G
H
D
K
I
N
Forward links are setup when RREP travels
along the reverse path Represents a link on the
forward path
39Data Delivery in AODV
Y
Routing table entries used to forward data
packet. Route is not included in packet header.
DATA
Z
S
E
F
B
C
M
L
J
A
G
H
D
K
I
N
40Local Link Maintenance
- Periodic hello messages broadcast to immediate
neighbors - Failing to receive hello messages indicates a
link failure - Link failure notifications sent to source nodes
- Sources rediscover new route to destination
41AODV Key Advantages
- Partial routing tables are constructed
reactively - Entries are updated only when a node sends to an
unreachable node - No periodic global updates
- Node not on active paths maintain no routing
entries - ? Reduce packet overhead
- Routing table
- No source routing needed ? reduce bit overhead
- Route caching ? reduce establishment latency
- Sequence number ? override stale routes
- source based broadcast id? loop freedom
- Push link failure to relevant nodes
- ? Reduce establishment latency
42AODV and DSR Disadvantages
- Common problems for both AODV and DSR
- Potential 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 - Random delays carrier sensing