mobile ad hoc routing (iv) uses material from tutorial by nitin vaidya
DESCRIPTION
Mobile Ad Hoc Routing (IV) Uses material from tutorial by Nitin Vaidya. Last Time. Finished Cache optimization for reactive protocols Preemptive Routing Discussion: optimizing reactive protocols Link Reversal algorithms and TORA Try to localize updates when a link breaks Proactive protocols - PowerPoint PPT PresentationTRANSCRIPT
1
Mobile Ad Hoc Routing (IV) Uses material from tutorial by Nitin Vaidya
2
Last Time
Finished Cache optimization for reactive protocols Preemptive Routing
Discussion: optimizing reactive protocols
Link Reversal algorithms and TORA Try to localize updates when a link breaks
Proactive protocols Like Internet routing protocols; exchange state continuously Covered OLSR (Optimized Link State Routing)
Today: wrap up ad hoc routing Coming 2 classes: TCP over wireless
3
Destination-Sequenced Distance-Vector (DSDV) [Perkins94Sigcomm]
Each node maintains a routing table which stores next hop towards each destination a cost metric for the path to each destination a destination sequence number that is created by the
destination 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 number
when sending its local routing table This sequence number will be attached to route entries
created for this node
4
Destination-Sequenced Distance-Vector (DSDV)
Assume that node X receives routing information from 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
5
Destination-Sequenced Distance-Vector (DSDV)
Node X takes the following steps:
If S(X) > S(Y), then X ignores the routing information received 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
6
Hybrid Protocols
7
Zone Routing Protocol (ZRP) [Haas98]
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
8
ZRP
All nodes within hop distance at most d from a node X are said to be in the routing zone of node X
All nodes at hop distance exactly d are said to be peripheral nodes of node X’s routing zone
9
ZRP
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 maintained
proactively (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 that route requests are propagated via peripheral nodes.
10
ZRP: Example withZone Radius = d = 2
SCA
EF
B
D
S performs routediscovery for D
Denotes route request
11
ZRP: Example with d = 2
SCA
EF
B
D
S performs routediscovery for D
Denotes route reply
E knows route from E to D, so route request need not beforwarded to D from E
12
ZRP: Example with d = 2
SCA
EF
B
D
S performs routediscovery for D
Denotes route taken by Data
13
Fisheye Routing Protocol [Pei00]
Similar idea to ZRP, but fully proactive protocol
Frequency of updates varies with distance between nodes (we saw this before in DREAM)
Accomplished by changing scope of update
Frequency of updateInversely proportional
To scope
14
Routing
Protocols discussed so far find/maintain a route provided it exists
Some protocols attempt to ensure that a route exists by Power Control [Ramanathan00Infocom] Limiting movement of hosts or forcing them to take detours
[Reuben98thesis]
15
Power Control
Protocols discussed so far find a route, on a given network topology
Some researchers propose controlling network topology by transmission power control to yield network properties which may be desirable [Ramanathan00Infocom] Such approaches can significantly impact performance at several
layers of protocol stack
[Wattenhofer00Infocom] provides a distributed mechanism for power control which allows for local decisions, but guarantees global connectivity Each node uses a power level that ensures that the node has at
least one neighbor in each cone with angle 2/3
16
Other Routing Protocols
Plenty of other routing protocols Discussion here is far from exhaustive
Many of the existing protocols could potentially be adapted for MANET (some have already been adapted as discussed earlier)
17
Some Variations
18
Power-Aware Routing [Singh98Mobicom,Chang00Infocom]
Define optimization criteria as a function of energy
consumption. Examples:
Minimize energy consumed per packet
Minimize time to network partition due to energy depletion
Maximize duration before a node fails due to energy depletion
19
Power-Aware Routing [Singh98Mobicom]
Assign a weigh to each link
Weight of a link may be a function of energy consumed when transmitting a packet on that link, as well as the residual energy level low residual energy level may correspond to a high cost
Prefer a route with the smallest aggregate weight
20
Power-Aware Routing
Possible modification to DSR to make it power aware (for simplicity, assume no route caching):
Route Requests aggregate the weights of all traversed links
Destination responds with a Route Reply to a Route Request if it is the first RREQ with a given (“current”) sequence
number, or its weight is smaller than all other RREQs received with the
current sequence number
21
Signal Stability Based Adaptive Routing (SSA) [Dube97]
Similar to DSR
A node X re-broadcasts a Route Request received from Y only if the (X,Y) link is deemed to have a strong signal stability
Signal stability is evaluated as a moving average of the signal strength of packets received on the link in recent past
An alternative approach would be to assign a cost as a function of signal stability
22
Associativity-Based Routing (ABR)[Toh97]
Only links that have been stable for some minimum duration are utilized motivation: If a link has been stable beyond some minimum
threshold, it is likely to be stable for a longer interval. If it has not been stable longer than the threshold, then it may soon break (could be a transient link)
Association stability determined for each link measures duration for which the link has been stable
Prefer paths with high aggregate association stability
23
Geography Adaptive Fidelity [Xu01MobiCom]
Each node associates itself with a square in a virtual grid
Node in each grid square coordinate to determine who will sleep and how long
24
Quality-of-Service
Several proposals for reserving bandwidth for a flow in MANET – we do not have time to discuss in detail Example: QoS routing – prefer paths that meet QoS
requirement specified in search Example: INSIGNIA and SWAN out of Cornell
INSIGNIA: Application specify their need as Base QOS (minimum) to Extended QOS (maximum) Admission control is applied to find out if the flow can be
accommodated at each hop Solutions needed to adapt to mobility, non-uniform
interference, and dynamic traffic
25
Multicasting Protocols
26
Multicasting
A multicast group is defined with a unique group identifier
Nodes may join or leave the multicast group anytime
In traditional networks, the physical network topology does not change often
In MANET, the physical topology can change often
27
Multicasting in MANET
Need to take topology change into account when designing a multicast protocol
Several new protocols have been proposed for multicasting in MANET
28
AODV Multicasting [Royer00Mobicom]
Each multicast group has a group leader
Group leader is responsible for maintaining group sequence number (which is used to ensure freshness of routing information) Similar to sequence numbers for AODV unicast
First node joining a group becomes group leader
A node on becoming a group leader, broadcasts a Group Hello message
29
AODV Multicast Tree
E
L
H
J
D
C
G
AK
NGroup and multicast tree member
Tree (but not group) member
Group leader
B
Multicast tree links
30
Joining the Multicast Tree: AODV
E
L
H
J
D
C
G
AK
N
Group leader
B N wishes tojoin the group:it floods RREQ
Route Request (RREQ)
31
Joining the Multicast Tree: AODV
E
L
H
J
D
C
G
AK
N
Group leader
BN wishes tojoin the group
Route Reply (RREP)
32
Joining the Multicast Tree: AODV
E
L
H
J
D
C
G
AK
N
Group leader
BN wishes tojoin the group
Multicast Activation (MACT)
33
Joining the Multicast Tree: AODV
E
L
H
J
D
C
G
AK
N
Group leader
BN has joinedthe group
Multicast tree links
Group member
Tree (but not group) member
34
Sending Data on the Multicast Tree
Data is delivered along the tree edges maintained by the Multicast AODV algorithm
If a node which does not belong to the multicast group wishes to multicast a packet It sends a non-join RREQ which is treated similar in many
ways to RREQ for joining the group As a result, the sender finds a route to a multicast group
member Once data is delivered to this group member, the data is
delivered to remaining members along multicast tree edges
35
Leaving a Multicast Tree: AODV
E
L
H
J
D
C
G
A
Group leader
B
J wishes toleave the group
Multicast tree links
K
N
36
Leaving a Multicast Tree: AODV
E
L
H
J
D
C
G
A
Group leader
B
J has leftthe group
Since J is not a leafnode, it must remaina tree member
K
N
37
Leaving a Multicast Tree: AODV
E
L
H
J
D
C
G
A
Group leader
B
K
N
N wishes to leavethe multicast group
MACT (prune)
38
Leaving a Multicast Tree: AODV
E
L
H
J
D
C
G
A
Group leader
B
K
N
MACT(prune)
Node N has removed itself from the multicast group.
Now node K has become a leaf, and K is not in the group.So node K removes itself from the tree as well.
39
Leaving a Multicast Tree: AODV
E
L
H
J
D
C
G
A
Group leader
B
K
N
Nodes N and K are no more in the multicast tree.
40
Handling a Link Failure: AODV Multicasting
When a link (X,Y) on the multicast tree breaks, the node that is further away from the leader is responsible to reconstruct the tree, say node X
Node X, which is further downstream, transmits a Route Request (RREQ) Only nodes which are closer to the leader than node X’s last
known distance are allowed to send RREP in response to the RREQ, to prevent nodes that are further downstream from node X from responding
41
Handling Partitions: AODV
When failure of link (X,Y) results in a partition, the downstream node, say X, initiates Route Request
If a Route Reply is not received in response, then node X assumes that it is partitioned from the group leader
A new group leader is chosen in the partition containing node X
If node X is a multicast group member, it becomes the group leader, else a group member downstream from X is chosen as the group leader
42
Merging Partitions: AODV
If the network is partitioned, then each partition has its own group leader
When two partitions merge, group leader from one of the two partitions is chosen as the leader for the merged network The leader with the larger identifier remains group leader
43
Merging Partitions: AODV
Each group leader periodically sends Group Hello
Assume that two partitions exist with nodes P and Q as group leaders, and let P < Q
Assume that node A is in the same partition as node P, and that node B is in the same partition as node Q
Assume that a link forms between nodes A and B
AP
QB
44
Merging Partitions: AODV Assume that node A receives Group Hello originated by node Q
through its new neighbor B
Node A asks exclusive permission from its leader P to merge the two trees using a special Route Request
Node A sends a special Route Request to node Q
Node Q then sends a Group Hello message (with a special flag)
All tree nodes receiving this Group Hello record Q as the leader
45
Merging Partitions: AODV
A
P
Q
BHello (Q)
46
Merging Partitions: AODV
A
P
Q
B
RREQ (can I repairpartition)
RREP (Yes)
47
Merging Partitions: AODV
A
P
Q
BRREQ (repair)
48
Merging Partitions: AODV
A
P
Q
BGroup Hello
(update)
Q becomes leader of the merged multicast tree
New group sequence number is larger than mostrecent ones known to P and Q both
49
Summary: Multicast AODV
Similar to unicast AODV
Uses leaders to maintain group sequence numbers, and to help in tree maintenance
50
On-Demand Multicast Routing Protocol (ODMRP)
ODMRP requires cooperation of nodes wishing to send data to the multicast group To construct the multicast mesh
A sender node wishing to send multicast packets periodically floods a Join Data packet throughput the network Periodic transmissions are used to update the routes
51
On-Demand Multicast Routing Protocol (ODMRP)
Each multicast group member on receiving a Join Data, broadcasts a Join Table to all its neighbors Join Table contains (sender S, next node N) pairs next node N denotes the next node on the path from the
group member to the multicast sender S
When node N receives the above broadcast, N becomes member of the forwarding group
When node N becomes a forwarding group member, it transmits Join Table containing the entry (S,M) where M is the next hop towards node S
52
On-Demand Multicast Routing Protocol (ODMRP)
Assume that S is a sender node
S
T
N
D
Join Data
Multicast group member
M
C
A
B
53
On-Demand Multicast Routing Protocol (ODMRP)
S
T
N
D
Join Data
Multicast group member
M
C
A
B
Join Data
Join Data
54
On-Demand Multicast Routing Protocol (ODMRP)
S
T
N
D
Multicast group member
M
C
A
B
Join Table (S,M)
Join Table (S,C)
55
On-Demand Multicast Routing Protocol (ODMRP)
S
T
N
D
F marks a forwarding group member
M
C
A
B
Join Table (S,N)
Join Table (S,N)
F
F
56
On-Demand Multicast Routing Protocol (ODMRP)
S
T
N
D
Multicast group member
M
C
A
B
Join Table (S,S) F
F
F
57
On-Demand Multicast Routing Protocol (ODMRP)
S
T
N
D
Multicast group member
M
C
A
B
F
F
F
Join Data (T)
58
On-Demand Multicast Routing Protocol (ODMRP)
S
T
N
D
Multicast group member
M
C
A
B
F
F
F
Join Table (T,C)
Join Table (T,C)
Join Table (T,D)
F
Join Table (T,T)
59
ODMRP Multicast Delivery
A sender broadcasts data packets to all its neighbors
Members of the forwarding group forward the packets
Using ODMRP, multiple routes from a sender to a multicast receiver may exist due to the mesh structure created by the forwarding group members
60
ODMRP
No explicit join or leave procedure
A sender wishing to stop multicasting data simply stops sending Join Data messages
A multicast group member wishing to leave the group stops sending Join Table messages
A forwarding node ceases its forwarding status unless refreshed by receipt of a Join Table message
Link failure/repair taken into account when updating routes in response to periodic Join Data floods from the senders
61
Other Multicasting Protocols
Several other multicasting proposals have been made
For a comparison study, see [Lee00Infocom]
62
Geocastingin
Mobile Ad Hoc Networks
63
Multicasting and Geocasting
Multicast members may join or leave a multicast group whenever they desire
Geocast group is defined as the set of nodes that reside in a specified geographical region
Membership of a node to a geocast group is a function of the node’s physical location Unlike multicasting
Geocasts are useful to deliver location-dependent information
64
Geocasting [Navas97Mobicom]
Navas et al. proposed the notion of geocasting in the traditional internet
Need new protocols for geocasting in mobile ad hoc networks
Geocast region: Region to which a geocast message is to be delivered
65
Geocasting in MANET
Flooding-based protocol [Ko99Wmcsa]
Graph-based protocol [Ko2000icnp,Ko2000tech]
66
Simple Flooding-Based Geocasting
Use the basic flooding algorithm, where a packet sent by a geocast sender is flooded to all reachable nodes in the network
The geocast region is tagged onto the geocast message
When a node receives a geocast packet by the basic flooding protocol, the packet is delivered (to upper layers) only if the node’s location is within the geocast region
67
Simple Flooding-Based Geocasting
Advantages: Simplicity
Disadvantages High overhead Packet reaches all nodes reachable from the source
68
Geocasting based onLocation-Aided Routing (LAR)
[Ko99Wmcsa]
Similar to unicast LAR protocol
Expected zone in unicast LAR now replaced by the geocast region
Request zone determined as in unicast LAR
Only nodes in the request zone forward geocast packets
69
Geocast LAR
X
Y
r
S
Request Zone
Network Space
BA
Geocast region
70
Geocast LAR
If all routes between a geocast member and the source may contain nodes that are outside the request zone, geocast will not be delivered to that member
Trade-off between accuracy and overhead Larger request zone increases accuracy but may also
increase overhead
Advantage of LAR for geocasting: No need to keep track of network topology Good approach when geocasting is performed infrequently
71
GeoTORA [Ko2000icnp,Ko2000tech]
Based on link reversal algorithm TORA for unicasting in MANET
TORA maintains a Directed Acyclic Graph (DAG) with only the destination node being a sink
72
Anycasting with Modified TORA [Ko2000tech]
A packet is delivered to any one member of an anycast group
Maintain a DAG for each anycast group
Make each member of the anycast group a sink
By using the outgoing links, packets may be delivered to any one sink
73
Anycasting
A FB
C E G
D
Maintain an directed acyclic graph (DAG) for each anycast group, with each groupmember being a sink
Link between two sinks isnot directed
Links are bi-directional
But algorithm imposeslogical directions on them
Anycast groupmember
74
DAG for Anycasting
Since links between anycast group members are not given a direction, the graph is not exactly a “directed” acyclic graph So use of the term DAG here is imprecise
Ignoring links between anycast group members, rest of the graph is a DAG
75
Geocasting using Modified Anycasting
A FB
C E G
D
All nodes within aspecified geocastingregion are made sinks
When a group memberreceives a packet, itfloods it within thegeocast region
Geocast groupmember
Geocast region
76
Geocasting using Modified Anycasting
A FB
C E
G
D
Links may have to beupdated when a nodeleaves geocast region
Geocast groupmember
Geocast region
77
Geocasting using Modified Anycasting
A FB
C
E
G
D
Links may have to beupdated when a nodeenters geocast region
Geocast groupmember
Geocast region
78
Other Geocasting Schemes
[Macwan01thesis] divides space into a grid, and maintains a graph structure for each grid square. Data transmitted using grid structures for the grid squares
that intersect with the geocast region.
d
a b
e f
c
79
Other Geocasting Schemes
Mesh-based geocast routing [Boleng01]
80
Some Related Work
Content-based Multicasting [Zhou00MobiHoc] Recipients of a packet are determined by the contents of a
packet Example: A soldier may receive information on events within
his 1-mile radius
Role-Based Multicast [Briesmeister00MobiHoc] Characteristics such as direction of motion are used to
determine relevance of data to a node Application: Informing car drivers of road accidents,
emergencies, etc.