Title: Mobile Ad Hoc Networks IETF MANET
1Mobile Ad Hoc NetworksIETF MANET
- Formed by wireless hosts (which may be mobile)
- Without (necessarily) using a pre-existing
infrastructure - Routes between nodes may potentially contain
multiple hops - Ad hoc does not necessarily mean multi-hop, but
research literature typically equates ad hoc with
multi-hop - Routers and hosts usually move
2Ad Hoc Networks
- May need to traverse multiple links to reach a
destination
3Ad Hoc Networks
- Mobility causes topology changes
4Why Ad Hoc Networks ?
- Ease of deployment
- Speed of deployment
- Decreased dependence on infrastructure
Many Applications
- 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)
5Many Variations
- Fully Symmetric Environment
- all nodes have identical capabilities and
responsibilities - Asymmetric Capabilities
- transmission ranges and radios, battery life,
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)
6Many Variations
- Traffic characteristics may differ in different
ad hoc networks bit rate, timeliness
constraints, reliability requirements, unicast /
multicast, host-based addressing / content-based
addressing - May co-exist (and co-operate) with an
infrastructure-based network - Mobility patterns may be different people
sitting at an airport lounge, New York taxi cabs,
kids playing, military movements, sensor
networks, personal area network - Mobility characteristics speed, predictability
-direction of movement, pattern of movement,
uniformity (or lack thereof) of mobility
characteristics among different nodes
7Some Challenges
- Limited wireless transmission range
- Broadcast nature of the wireless medium
- Packet losses due to transmission errors
- Host mobility
- Battery constraints
- Ease of snooping on wireless transmissions
(security hazard)
8Medium Access Control
- Wireless channel is a shared medium
- Need access control mechanism to avoid
interference - MAC protocol design has been an active area of
research for many years (see Data Networks
course) - An important difference is that the reliable
feedback assumption is no longer valid.
9MAC A Simple Classification
Wireless MAC
Centralized
Distributed
Guaranteed or controlled access
Random access
This lecture
10 Collision free set (s????? e?e??e?? ap?
s??????se??) s????? s??d?sµ?? p?? µp????? ?a
µetaf????? pa??ta ta?t?????a, ????? s??????se??
st??? d??te? st?? ???e? t?? s??d?sµ??.
?p????µe ?a d?at????µe t??? s??d?sµ??? t??
d??t??? ?ste ?a a?apa??st??µe t? ???e
collision-free set µe ??a d????sµa 0 ?a? 1, p??
???µ??eta? collision-free vector (CFV), ?p?? t?
l-?st? st???e?? t?? e??a? ?s? µe 1 ?ta? ?a? µ???
?ta? ? l-?st?? s??desµ?? a???e? st? a?t?st????
collision-free set .
11 ????p?e??a µe d?a??es? ?????? (TDM) ??a d??t?a
µet?d?s?? ?ad??-pa??t??
CFVs . L ? a???µ?? t?? s??d?sµ??
?????µe µ?a s??sµ? se ???e s????? e?e??e?? ap?
s??????se??
d????sµa p?? d??e? t? ???sµa t?? ?????? ???s??
???e s??d?sµ??
pa?????ta? ???s?µ?p???s?? (utilization vector)
Ge????te?a ?st? aj t? p?s?st? t?? ?????? p?? t?
j-st? CFV ???s?µ?p??e?ta?
d????sµa p?? d??e? ??a p??? µ???? µ????(???sµa)
t?? ?????? ???s?? ???e s??d?sµ??
- ?ed?µ???? ß?e? aj t?t??a ?ste
- A??µa ?e???te?a ta e?e??e?a ap? s??????se??
s????a a??????? (st?? p?a?µat???t?ta a??µa ?a?
??a ??a stat??? d??t??, e??a? NP-complete)
12(No Transcript)
13 14(No Transcript)
15Other Solution for Hidden Terminal Problem
- When node A wants to send a packet to node B,
node A first sends a Request-to-Send (RTS) to B - On receiving RTS, node B responds by sending
Clear-to-Send (CTS), provided node A is able to
receive the packet - When a node (such as C) overhears a CTS, it keeps
quiet for the duration of the transfer - Transfer duration is included in RTS and CTS
16IEEE 802.11 Wireless MAC
- Distributed and centralized MAC components
- Distributed Coordination Function (DCF)
- Point Coordination Function (PCF)
- DCF suitable for multi-hop ad hoc networking
- DCF is a Carrier Sense Multiple Access/Collision
Avoidance (CSMA/CA) protocol
17 Wi-Fi s?st?µata (802.11)
18 19 20IEEE 802.11 DCF
- Uses RTS-CTS exchange to avoid hidden terminal
problem - Any node overhearing a CTS cannot transmit for
the duration of the transfer - Uses ACK to achieve reliability
- Any node receiving the RTS cannot transmit for
the duration of the transfer - To prevent collision with ACK when it arrives at
the sender - When B is sending data to C, node A will keep
quite
21IEEE 802.11
RTS Request-to-Send
RTS
C
F
A
B
E
D
CTS Clear-to-Send
CTS
C
F
A
B
E
D
22CTS Clear-to-Send
IEEE 802.11
CTS
C
F
A
B
E
D
DATA
C
F
A
B
E
D
23IEEE 802.11
ACK
C
F
A
B
E
D
24CSMA/CA
- Carrier sense in 802.11
- Physical carrier sense
- Virtual carrier sense using Network Allocation
Vector (NAV) - NAV is updated based on overheard
RTS/CTS/DATA/ACK packets, each of which specified
duration of a pending transmission - Collision avoidance
- Nodes stay silent when carrier sensed
(physical/virtual) - Backoff intervals used to reduce collision
probability
25Backoff Interval
- When transmitting a packet, choose a backoff
interval in the range 0,cw - cw is contention window
- Count down the backoff interval when medium is
idle - Count-down is suspended if medium becomes busy
- When backoff interval reaches 0, transmit RTS
26DCF Example
B1 and B2 are backoff intervals at nodes 1 and 2
cw 31
27Backoff Interval
- The time spent counting down backoff intervals is
a part of MAC overhead - Choosing a large cw leads to large backoff
intervals and can result in larger overhead - Choosing a small cw leads to a larger number of
collisions (when two nodes count down to 0
simultaneously) - Since the number of nodes attempting to transmit
simultaneously may change with time, some
mechanism to manage contention is needed - IEEE 802.11 DCF contention window cw is chosen
dynamically depending on collision occurrence
28Binary Exponential Backoff in DCF
- When a node fails to receive CTS in response to
its RTS, it doubles the contention window cw (up
to an upper bound) - When a node successfully completes a data
transfer, it restores cw to Cwmin
MILD Algorithm for Backoff in MACAW
- When a node successfully completes a transfer,
reduces cw by 1 - In 802.11 cw is restored to cwmin cw reduces
much faster than it increases - MACAW cw reduces slower than it increases
(Exponential Increase Linear Decrease) - MACAW can avoid wild oscillations of cw when
large number of nodes contend for the channel
29 30 31- 802.11a, p?????ta eµfa??s???a? t? 2001. ?????
54Mbps, sta 5GHz. OFDM - 802.11b p?????ta eµfa??s???a? t? 1999. ?????
11Mbps, sta 2.4GHz. DSSS - 802.11g ???d???? t?? 802.11b, µ???? 54Mbps, sta
2.4GHz. OFDM - 802.11h, ?a e??a? t? e???pa??? 802.11a, sta 5GHz.
- ???a 802.11i p?? ???s?µ?p??e? t? Temporal Key
Integrity Protocol (TKIP) ??a good enough
security. 802.11x t?? Microsoft ??a
authentication. - ?a pa?ap??? (Wi-Fi) s?st?µat d???e???? ?a??
?????? ??a ap?st?se?? t?? t???? t?? 100µ. - G?a µe?a??te?e? ap?st?se?? t? WiMax (802.15)
d??e? µe?a??te?e? ta??t?te? (75Mbps) ?a?
ap?st?se?? (kms)
32Routing in ad hoc packet radio networks
33Large Network Routing Algorithms Large Network
Issues Increasing number of nodes, with fixed
density of nodes, yields increase in average
number of hops O (N 0.5 ) Bandwidth per user
goes down by N 0.5 Standard topology update
protocols simply dont work Time for routing
updates to propagate through the network grows
with N0.5. This means routing updates must be
transmitted more frequently as network grows,
yielding too much traffic Event-driven routing
doesnt help beyond some upper limit, all
network bandwidth is dedicated to routing
updates One solution Backbone links needed to
ensure that route length grows more slowly with
network size
34Some Feasible Approaches Hide details of
distant parts of the network Next hop decisions
only depends on local region Motivates
hierarchical algorithms Send out information
about distant parts less frequently Next hop
route unlikely to change dramatically if distant
part of the network undergoes topology changes
Prioritized tier connectivity information
exchange algorithm use up-to-date information as
packet gets near destination Send information
only to nodes that need it Threshold distance
vector routing algorithm if changes dont change
the quality of the route too much, dont report
the changes
35Hierarchical Algorithms Hide details via
clustering (grouping) of nodes Clusters can
also be aggregated into superclusters How
clusters and superclusters are formed
Election algorithms for choosing (super)cluster
leaders Nodes join the nearest
(super)cluster leaders Leaders send updates
to other leaders when cluster membership
changes
36Quasi-Hierarchical Routing Use shortest path
to the destination cluster Then shortest path
within the destination cluster Border Packet
Radios Neighboring clusters are reported as one
hop awayeach PRs path to neighbor cluster is
shortest path to border PR Neighboring clusters
reported as S hops away, where S is average
distance to the cluster border plus average
distance from border to members of the cluster
37Strictly-Hierarchical Routing Clusterleaders
which compute hierarchical routing tables (HRTs)
specify next cluster to traverse to reach given
destination cluster. Clusterleaders distribute
this routing info to PRs in their cluster Once
destination cluster is reached, some routing
scheme is used to deliver packet to
destination Reduces amount of information
necessary for a node to make routing decisions
38Non-Hierarchical Algorithms Threshold
Bellman-Ford Routing Algorithm Reduces the
distance over which routing updates are
propagated dj cij lt di lt dj a cij di is
distance from node i to destination j is next
node on path cij is cost of using link from i
to j if a is increased, fewer update messages
are transmitted and path lengths increase slightly
39 Least Interference Routing Min cost route
where link cost measures destructive interference
caused by PR transmissions Nodes determine
potential destructive interference associated
with sending packet over link Compute
shortest path with respect to interference
metric Interference of neighbors that can
receive a transmission Preference given for
short links--yields better spatial reuse
40 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
41Flooding for Data Delivery
Y
Z
S
E
F
B
C
M
L
J
A
G
H
D
K
I
N
Represents a node that has received packet P
Represents that connected nodes are within each
others transmission range
42Flooding for Data Delivery
Y
Broadcast transmission
Z
S
E
F
B
C
M
L
J
A
G
H
D
K
I
N
Represents a node that receives packet P for the
first time
Represents transmission of packet P
43Flooding for Data Delivery
Y
Z
S
E
F
B
C
M
L
J
A
G
H
D
K
I
N
- Node H receives packet P from two neighbors
- potential for collision
44Flooding for Data Delivery
Y
Z
S
E
F
B
C
M
L
J
A
G
H
D
K
I
N
- Node C receives packet P from G and H, but does
not forward - it again, because node C has already forwarded
packet P once
45Flooding for Data Delivery
Y
Z
S
E
F
B
C
M
L
J
A
G
H
D
K
I
N
- 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
- gt Packet P may not be delivered to node
D at all, - despite the use of flooding
46Flooding for Data Delivery
Y
Z
S
E
F
B
C
M
L
J
A
G
H
D
K
I
N
- Node D does not forward packet P, because node D
- is the intended destination of packet P
47Flooding for Data Delivery
Y
Z
S
E
F
B
C
M
L
J
A
G
H
D
K
I
N
- 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)
48Flooding for Data Delivery
Y
Z
S
E
F
B
C
M
L
J
A
G
H
D
K
I
N
- Flooding may deliver packets to too many nodes
- (in the worst case, all nodes reachable from
sender - may receive the packet)
49Advantages
- Simplicity
- May be more efficient than other protocols when
the overhead of explicit route discovery/maintenan
ce incurred by other protocols is relatively
higher - this scenario may occur, for instance, when nodes
transmit small data packets relatively
infrequently, and many topology changes occur
between consecutive packet transmissions - Potentially higher reliability of data delivery
- Because packets may be delivered to the
destination on multiple paths
Disadvantages
- Potentially, very high overhead
- Data packets may be delivered to too many nodes
who do not need them - Potentially lower reliability of data delivery
- Flooding uses broadcasting -- hard to implement
reliable broadcast delivery without significantly
increasing overhead - 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
50Flooding of Control Packets
- Many protocols perform (potentially limited)
flooding of control packets, instead of data
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
51Dynamic Source Routing (DSR)
- 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 identifier when forwarding
RREQ
52Route 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
53Route 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
54Route 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
55Route 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
56Route 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
- Since nodes J and K are hidden from each other,
their - transmissions may collide
57Route Discovery in DSR
Y
Z
S
E
S,E,F,J,M
F
B
C
M
L
J
A
G
H
D
K
I
N
- Node D does not forward RREQ, because node D
- is the intended target of the route discovery
58Route 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
59Route 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
60Route 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 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 the Route 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)
61Dynamic 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
62Data 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
63When to Perform a Route Discovery
- When node S wants to send data to node D, but
does not know a valid route node D
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
64Use 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
65Use of Route Caching
S,E,F,J,D
E,F,J,D
S
E
F,J,D,F,E,S
F
B
J,F,E,S
C
M
L
J
A
G
C,S
H
D
K
G,C,S
I
N
Z
P,Q,R Represents cached route at a node
(DSR maintains the cached routes in a
tree format)
66Use of Route CachingCan Speed up Route Discovery
S,E,F,J,D
E,F,J,D
S
E
F,J,D,F,E,S
F
B
J,F,E,S
C
M
L
J
G,C,S
A
G
C,S
H
D
K
K,G,C,S
I
N
RREP
RREQ
Z
When node Z sends a route request for node C,
node K sends back a route reply Z,K,G,C to node
Z using a locally cached route
67Use of Route CachingCan Reduce Propagation of
Route Requests
Y
S,E,F,J,D
E,F,J,D
S
E
F,J,D,F,E,S
F
B
J,F,E,S
C
M
L
J
G,C,S
A
G
C,S
H
D
K
K,G,C,S
I
N
RREP
RREQ
Z
Assume that there is no link between D and
Z. Route Reply (RREP) from node K limits flooding
of RREQ. In general, the reduction may be less
dramatic.
68Route Error (RERR)
Y
Z
RERR J-D
S
E
F
B
C
M
L
J
A
G
H
D
K
I
N
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
69Route 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
70Dynamic Source Routing Advantages
- Routes maintained only between nodes who need to
communicate - reduces overhead of route maintenance
- Route caching 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
71Dynamic 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 - An intermediate node may send Route Reply using a
stale cached route, thus polluting other caches - This problem can be eased if some mechanism to
purge (potentially) invalid cached routes is
incorporated. For cache invalidation, - Static timeouts
- Adaptive timeouts based on link stability
72Power Control
- Transmit power determines
- Range of a transmission
- Interference caused at other nodes
B
C
D
A
73Power Control
- Transmit power determines
- Range of a transmission
- Interference caused at other nodes
B
C
D
A
74Benefits of Power Control
- Transmit a packet with least transmit power
necessary to deliver to the receiver - Save energy Important benefit to
battery-powered hosts - Reduce interference
- Can allow greater spatial reuse
75Power Control
- Power control introduces asymmetry
- D transmits to C at low power, but B uses high
transmit power to transmit to A - B may not know about D-to-C transmission, but can
interfere with it
B
C
D
A
76 Ad-Hoc Issues
- Minimum Power Routing
- Route in multihop network based on minimum power.
- Throughput vs. Delay vs. Power
- A user can increase chances of successful
transmission by increasing his power - Entails tradeoff of delay vs. power
- May raise power as buffer size increases to
prevent overflow
77 Hybrid Environments
- Use infrastructure when convenient
- Use ad hoc connectivity when necessary or superior
infrastructure
BS1
BS2
E
A
Z
Ad hoc connectivity
X
78 Sensor Networks
- Sensor Networks
- Data highly correlated in time and space.
- Low homogeneous rates.
- Links typically asymmetric.
- Data flows to centralized location.
- Energy is the driving constraint.
- 1000-100,000 Nodes
- Have a common mission.
- Very different from typical ad-hoc networks
79Directional Antennas
80Using Omni-directional Antennas
A Frozen node
B
D
S
A
81Directional Antennas
Not possible using Omni
B
D
S
C
A
82 Impact of Topology
- Nodes arranged in linear configurations reduce
spatial reuse for directional antennas