Department of Computer Science Southern Illinois University Carbondale CS441Mobile - PowerPoint PPT Presentation

1 / 59
About This Presentation
Title:

Department of Computer Science Southern Illinois University Carbondale CS441Mobile

Description:

Lookup Cache for route A to G. Route found? Start Route Discovery Protocol ... Source sequence indicates 'freshness' of reverse route to the source ... – PowerPoint PPT presentation

Number of Views:52
Avg rating:3.0/5.0
Slides: 60
Provided by: csS8
Category:

less

Transcript and Presenter's Notes

Title: Department of Computer Science Southern Illinois University Carbondale CS441Mobile


1
Department of Computer ScienceSouthern Illinois
University Carbondale CS441-Mobile Wireless
ComputingRouting Protocols for MANETs
Dr. Kemal Akkaya E-mail kemal_at_cs.siu.edu
Adapted from
  • Northeastern University, Multi-hop Tutorial

Intel Wireless Lectures
Iowa State University, 610jw Class
2
MANET vs. Traditional Routing (1)
  • Every node is potentially a router in a MANET,
    while most nodes in traditional wired networks do
    not route packets
  • Nodes transmit and receive their own packets and,
    also, forward packets for other nodes
  • Topologies are dynamic in MANETs due to mobile
    nodes, but are relatively static in traditional
    networks
  • Routing in MANETs must consider both Layer 3 and
    Layer 2 information, while traditional protocols
    rely on Layer 3 information only
  • Link layer information can indicate connectivity
    and interference
  • MANET topologies tend to have many more redundant
    links than traditional networks

3
MANET vs. Traditional Routing (2)
  • A MANET router typically has a single
    interface, while a traditional router has an
    interface for each network to which it connects
  • Routed packet sent forward when transmitted, but
    also sent to previous transmitter
  • Channel properties, including capacity and error
    rates, are relatively static in traditional
    networks, but may vary in MANETs
  • Interference is an issue in MANETs, but not in
    traditional networks
  • For example, a forwarded packet from B-to-C
    competes with new packets sent from A-to-B
  • Channels can be asymmetric with some Layer 2
    technologies
  • Note that the IEEE 802.11 MAC assumes symmetric
    channels

4
MANET vs. Traditional Routing (3)
  • Power efficiency is an issue in MANETs, while it
    is normally not an issue in traditional networks
  • MANETs may have gateways to fixed network, but
    are typically stub networks, while traditional
    networks can be stub networks or transit networks
  • There is limited physical security in a MANET
    compared to a traditional network
  • Increased possibility of eavesdropping, spoofing,
    and denial-of-security attacks
  • Traditional routing protocols for wired networks
    do not work well in most MANETs
  • MANETs are too dynamic
  • Wireless links present problems of interference,
    limited capacity, etc.

5
MANET Routing
  • Need dynamic routing
  • Frequent topological changes possible.
  • Very different from dynamic routing in the
    Internet.
  • Potential of network partitions.
  • Routing overhead must be kept minimal
  • Wireless ? low bandwidth
  • Mobile ? low power
  • Minimize of routing control messages
  • Minimize routing state at each node
  • Nodes must determine how to forward packets
  • Source routing Routing decision is made at the
    sender
  • Hop-by-hop routing Routing decision is made at
    each intermediate node
  • Difficult to achieve good performance
  • Routes change over time due to node mobility
  • Best to avoid long delays when first sending
    packets
  • Best to reduce overhead of route discovery and
    maintenance
  • Want to involve as many nodes as possible to
    find better paths and reduce likelihood of
    partitions

6
MANET Routing Approaches
  • Proactive protocols
  • Determine routes independent of traffic pattern
  • Traditional link-state and distance-vector
    routing protocols are proactive
  • Examples
  • DSDV (Dynamic sequenced distance-vector)
  • OLSR (Optimized Link State Routing)
  • Reactive protocols
  • Maintain routes only if needed
  • Examples
  • DSR (Dynamic source routing)
  • AODV (On-demand distance vector)
  • Hybrid protocols
  • Combines both approaches
  • Example Zone Routing Protocol (intra-zone
    proactive inter-zone on-demand)

7
Protocol Types
MANET Routing Protocols
Proactive
Reactive
Hybrid
Example OLSR
Example AODV
Example ZRP
8
Common Features
  • MANET routing protocols must
  • Discover a path from source to destination
  • Maintain that path (e.g., if an intermediate node
    moves and breaks the path)
  • Define mechanisms to exchange routing information
  • Reactive protocols
  • Discover a path when a packet needs to be
    transmitted and no known path exists
  • Attempt to alter the path when a routing failure
    occurs
  • Reduce routing overhead
  • Increased delay
  • Proactive protocols
  • Find paths, in advance, for all source-pair
    destinations
  • Periodically exchange routing information to
    maintain paths
  • Reduced delay, increased routing overhead

9
IETF MANET Working Group
  • http//www.ietf.org/html.charters/manet-charter.ht
    ml
  • The purpose of this working group is to
    standardize IP routing protocol functionality
    suitable for wireless routing application within
    both static and dynamic topologies. The
    fundamental design issues are that the wireless
    link interfaces have some unique routing
    interface characteristics and that node
    topologies within a wireless routing region may
    experience increased dynamics, due to motion or
    other factors.

10
Dynamic Source Routing
  • J. Broch, D. Johnson, and D. Maltz, The dynamic
    source routing protocol for mobile ad hoc
    networks, Internet-Draft Version 03, IETF,
    October 1999.
  • When node S wants to send a packet to node D, but
    does not know a route to D, node S initiates a
    routing process
  • DSR does not assume bi-directional links
  • The protocol is able to adapt quickly to dynamic
    network topology
  • Loop freedom is guaranteed
  • Large overhead in data packets
  • Flexible implementation
  • Runs in three phases
  • Route Discovery ? Route Reply ? Path
    Establishment
  • Route Discovery
  • Source node S floods Route Request (RREQ)
  • Each node appends own identifier when forwarding
    RREQ

11
Route Discovery at source A
A need to send to G
wait
12
Route Discovery At an intermediate node
ltsrc,idgt in recently seen requests list?
no
yes
done
13
Route Discovery in DSR
Y
RREQ
Initiator ID
Z
Initiator seq
S
E
Target ID
F
Partial route
B
C
M
L
J
A
G
H
D
K
I
N
Represents a node that has received RREQ for D
from S
14
Route 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
15
Route Discovery in DSR
Y
Z
S
S,E
E
F
B
C
M
L
J
A
G
S,C
H
D
K
I
N
16
Route 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
17
Route Reply 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

18
Route 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
19
Route Reply in 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

20
Data 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
21
Route Maintenance
  • Route maintenance performed only while route is
    in use
  • Error detection
  • Monitors the validity of existing routes by
    passively listening to data packets transmitted
    at neighboring nodes
  • Lower level acknowledgements
  • If a packet cannot be forwarded, the upstream
    node will send a ROUTE ERROR message back to the
    sender
  • The ROUTE ERROR message contains
  • Address of the node which could not forward the
    packet
  • Which link is broken

22
Example
B
G
D
G
A
Route Cache (A)G A, B, D, G G A, C, E, H,
GF B, C, F
H
E
C
F
23
Optimizations
  • Full use of route cache
  • An intermediate (IN) node also has knowledge of
    the entire path when forwarding packets
  • If an IN node receives a RREQ for a DST for which
    it caches the route, it can send RREP back to SRC
    without further propagating RREQ
  • Further restriction RREQ discarded if the
    partial route in the RREQ and cached route at the
    IN node contains a loop
  • A slight reply delay is introduced to avoid
    simultaneous replies from multiple nodes
  • Piggybacking on Route Discoveries
  • Allowing some data to be piggybacked in RREQ
    packets
  • Care taken in case the intermediate node with
    cached route to DST sends a RREP to SRC without
    further propagating the piggybacked RREQ
  • Handling Errors
  • Exponential backoff used in route discoveries
    when network is partitioned
  • Use of promiscuous mode to eavesdrop on RERR
    packets sent to other nodes

24
Conclusion
  • Evaluation Results
  • Higher nodal density leads to better overhead
    efficiency
  • Overhead higher with more dynamic mobility
  • Discovered route very close to optimal route
    length (if perfect routing info available)
  • No direct relation between mobility and nodal
    density
  • Pros
  • Entirely on-demand, potentially zero control
    message overhead
  • Trivially loop-free with source routing
  • Conceptually supports unidirectional links as
    well as bidirectional links
  • Cons
  • High packet delays/jitters associated with
    on-demand routing
  • Space overhead in packets and route caches
  • Promiscuous mode operations consume excessive
    amount of power

25
AODV
  • AODV Ad hoc On-demand Distance Vector routing
    protocol
  • References
  • C. E. Perkins, E. M. Belding-Royer, and S. R.
    Das, Ad hoc On-Demand Distance Vector (AODV)
    Routing, IETF Internet Draft, draft-ietf-manet-ao
    dv-13.txt, Feb. 17, 2003 (work in progress).
  • C. E. Perkins and E. M. Royer, Ad hoc On-Demand
    Distance Vector Routing, Proceedings 2nd IEEE
    Workshop on Mobile Computing Systems and
    Applications, February 1999, pp. 90-100.
  • Pure on-demand routing protocol
  • A node does not perform route discovery or
    maintenance until it needs a route to another
    node or it offers its services as an intermediate
    node
  • Nodes that are not on active paths do not
    maintain routing information and do not
    participate in routing table exchanges
  • Uses a broadcast route discovery mechanism
  • Uses hop-by-hop routing
  • Routes are based on dynamic table entries
    maintained at intermediate nodes
  • Similar to Dynamic Source Routing (DSR), but DSR
    uses source routing

26
AODV Route Request
  • Initiated when a node wants to communicate with
    another node, but does not have a route to that
    node
  • Source node broadcasts a route request (RREQ)
    packet to its neighbors
  • Sequence numbers are assigned to routes and
    routing table entries
  • Used to supersede stale cached routing entries
  • Source sequence indicates freshness of reverse
    route to the source
  • Destination sequence number indicates freshness
    of route to the destination
  • (source_addr, broadcast_id) uniquely identifies
    the RREQ
  • broadcast_id is incremented for every RREQ
    packet sent
  • Receivers can identify and discard duplicate
    RREQ packet

27
AODV Route Request (2)
  • Every neighbor receives the RREQ and either
  • Returns a route reply (RREP) packet, or
  • Forwards the RREQ to its neighbors
  • If a node cannot respond to the RREQ
  • The node increments the hop count
  • The node saves information to implement a reverse
    path set up (AODV assumes symmetrical links)
  • Neighbor that sent this RREQ packet
  • Destination IP address
  • Source IP address
  • Broadcast ID
  • Source nodes sequence number
  • Expiration time for reverse path entry (to enable
    garbage collection)

28
Route Table Management
Seq
Exp. T
  • Route Table entry
  • Destination
  • Next Hop
  • Number of hops (metric)
  • Sequence numbers of Destination
  • Active Neighbors for this route
  • Expiration time for the route table entry
  • Route expiration timer
  • To Purge reverse path routing entries (not lie on
    the path from the source to the destination, not
    used for some time)

4
3
2
1
2
6
4
Destination
RREQ
RREP
Time out
source
29
AODV Use Sequence Numbers
  • Each node X maintains a sequence number
  • acts as a time stamp
  • incremented every time X sends any message)
  • Each route to X (at any node Y) also has Xs
    sequence number associated with it, which is Ys
    latest knowledge of Xs sequence number.
  • Sequence number signifies freshness of the
    route higher the number, more up to date is the
    route.

Y
S
D
?
Has a route to D with seq. no 7
Dest seq. no. 10
Seq. no. 15
Y does not reply, but forwards the RREQ
RREQ carries 10
  • Intermediate node replies with a route (instead
    of forwarding request) only if it has a route
    with a higher associated sequence number.

30
AODV Example (1)
4
6
1
7
5
3
2
  • Node 1 needs to send a data packet to Node 7
  • Assume Node 6 knows a current route to Node 7
  • Assume that no other route information exists in
    the network (related to Node 7)

31
AODV Example (2)
4
6
1
7
5
3
2
  • Node 1 sends a RREQ packet to its neighbors
  • source_addr 1
  • dest_addr 7
  • broadcast_id broadcast_id 1
  • source_sequence_ source_sequence_ 1
  • dest_sequence_ last dest_sequence_ for Node 7

32
AODV Example (3)
4
6
1
7
5
3
2
  • Nodes 2 and 4 verify that this is a new RREQ and
    that the source_sequence_ is not stale with
    respect to the reverse route to Node 1
  • Nodes 2 and 4 forward the RREQ
  • Update source_sequence_ for Node 1
  • Increment hop_cnt in the RREQ packet

33
AODV Example (4)
4
6
1
7
5
3
2
  • RREQ reaches Node 6, which knows a route to 7
  • Node 6 must verify that the destination sequence
    number is less than or equal to the destination
    sequence number it has recorded for Node 7
  • Nodes 3 and 5 will forward the RREQ packet, but
    the receivers recognize the packets as duplicates

34
AODV Route Reply (1)
  • If a node receives an RREQ packet and it has a
    current route to the target destination, then it
    unicasts a route reply packet (RREP) to the
    neighbor that sent the RREQ packet

type
flags
hopcnt
rsvd
prsz
dest_addr
dest_sequence_
source_addr
lifetime
35
AODV Route Reply (2)
  • Intermediate nodes propagate the first RREP for
    the source towards the source using cached
    reverse route entries
  • Other RREP packets are discarded unless
  • dest_sequence_ number is higher than the
    previous, or
  • destination_sequence_ is the same, but hop_cnt
    is smaller (i.e., theres a better path)
  • RREP eventually makes it to the source, which can
    use the neighbor sending the RREP as its next hop
    for sending to the destination
  • Cached reverse routes will timeout in nodes not
    seeing a RREP packet

36
AODV Example (5)
4
6
1
7
5
3
2
  • Node 6 knows a route to Node 7 and sends an RREP
    to Node 4
  • source_addr 1
  • dest_addr 7
  • dest_sequence_ maximum(own sequence number,
    dest_sequence_ in RREQ)
  • hop_cnt 1

37
AODV Example (6)
4
6
1
7
5
3
2
  • Node 4 verifies that this is a new route reply
    (the case here) or one that has a lower hop count
    and, if so, propagates the RREP packet to Node 1
  • Increments hop_cnt in the RREP packet

38
AODV Example (7)
4
6
1
7
5
3
2
  • Node 1 now has a route to Node 7 in three hops
    and can use it immediately to send data packets
  • Note that the first data packet that prompted
    path discovery has been delayed until the first
    RREP was returned

39
AODV Route Maintenance
  • Route changes can be detected by
  • Failure of periodic HELLO packets
  • Failure or disconnect indication from the link
    level
  • Failure of transmission of a packet to the next
    hop (can detect by listening for the
    retransmission if it is not the final
    destination)
  • The upstream (toward the source) node detecting a
    failure propagates an route error (RERR) packet
    with a new destination sequence number and a hop
    count of infinity (unreachable)
  • The source (or another node on the path) can
    rebuild a path by sending a RREQ packet

40
AODV Example (8)
4
6
1
7
5
3
2
7
  • Assume that Node 7 moves and link 6-7 breaks
  • Node 6 issues an RERR packet indicating the
    broken path
  • The RERR propagates back to Node 1
  • Node 1 can discover a new route

41
Summary AODV
  • At most one route per destination maintained at
    each node
  • After link break, all routes using the failed
    link are erased.
  • Not the case in DSR (multiple routes)
  • Expiration based on timeouts.
  • No expiration timer in DSR
  • Use of sequence numbers to prevent loops and
    ensure freshness of the routes.
  • Optimizations
  • Routing tables instead of storing full routes.
  • Control flooding (incrementally increase
    region)
  • Ring based approach
  • Similar Performance with DSR
  • Works well with large networks (around 1000
    nodes)
  • DSR is for small networks (at most 200 nodes)

42
Proactive Protocols
  • Different than Reactive Protocols
  • Traditional distributed shortest path routing
    protocols
  • link-state or distance-vector protocol
  • Continuously update the reachability
    information at all the network nodes
  • Lower route request latency and higher overhead
  • DSDV is the best example
  • Destination Sequence Distance Vector Routing
  • Proactive
  • Table-Driven
  • C. E. Perkins and P. Bhagwat, Highly dynamic
    DestinationSequenced Distance-Vector routing
    (DSDV) for mobile computers, In Proceedings of
    third Conference on Communications Architecture,
    Protocols and Applications (SIGCOMM 94), August
    1994

43
DSDV
  • Each node maintains its own sequences number
  • Updates (increments) at each change in
    neighborhood information
  • Used for loop freedom
  • Each node maintains routing table with entry for
    each node in the network
  • Shortest path

44
Example of Routing Table in DSDV
45
DSDV --- full dump
  • Full Dumps
  • Carry all routing table information
  • Transmitted relatively infrequently
  • Incremental updates
  • Carry only information changed since last full
    dump
  • Fits within one network protocol data unit
  • If cant, send full dump

46
DSDV --- link additions
  • When A joins network
  • Node A transmits routing table ltA, 101, 0gt
  • Node B receives transmission, inserts ltA, 101, A,
    1gt
  • Node B propagates new route to neighbors ltA, 101,
    1gt
  • Neighbors update their routing tables ltA, 101,
    B, 2gt and continue propagation of information

47
DSDV --- link breaks
  • Link between B and D breaks
  • Node B notices break
  • Update hop count for D and E to be infinity
  • Increments sequence number for D and E
  • Node B sends updates with new route information
  • ltD, 203, infinitegt
  • ltE, 156, infinitegt

48
DSDV -- Summary
  • Routes maintained through periodic and event
    triggered routing table exchanges
  • Shortest routes
  • Incremental dumps and settling time used to
    reduce control overhead
  • Lower route request latency,
  • Higher overhead
  • Periodic updates for Routing Tables
  • Perform best in network with low to moderate
    mobility, few nodes and many data sessions
  • Problems
  • Not efficient for large ad-hoc networks
  • Nodes need to maintain a complete list of routes.

49
Hierarchical Routing
  • Scalability MANET protocols often do not
    perform well for large networks (especially if
    not dense)
  • Global topology is based on the connectivity of
    each mobile node
  • Clusters can be used to provide scalability
  • Clusters are formed (dynamically, of course) to
    provide hierarchy
  • Global routing is done to clusters
  • Local routing is done to nodes within a cluster
  • Clusters of clusters (super-clusters) can be
    formed to extend hierarchy
  • Similar in principle to IP subnets
  • A special node, called the cluster-head, is
    designated in each cluster
  • Responsible for routing data to or from other
    clusters
  • May be a special node, or may be designated
    through a clustering algorithm
  • Algorithms
  • Clustering -- form clusters
  • Cluster-head identification -- may be an integral
    part of the clustering algorithm
  • Routing -- some routing algorithm is still needed
  • Applied at each level of the hierarchy

50
Hierarchical Algorithm Example
Cluster 2
Cluster 1
Cluster 3
51
Cluster-head Gateway Switch Routing (CGSR)
  • CGSR is a clustered multi-hop mobile wireless
    network with several heuristic routing schemes.
  • A distributed cluster-head (CH) selection
    algorithm is used to elect a node as the cluster
    head.
  • It modifies DSDV by using a hierarchical CH to
    route traffic.
  • Gateway nodes serve as bridge nodes between two
    or more clusters.
  • A packet sent by a node is first routed to its CH
    and then the packet is routed from the CH to a
    gateway of another cluster and then to the CH and
    so on, until the destination cluster head is
    reached.
  • Frequent changes in the CH may affect the
    performance of the routing protocol.

52
CGSR (Contd)
Routing in CGSR from node 1 to node 8
53
Zone Routing Protocol (ZRP) / Hybrid Protocol
  • ZRP combines proactive and reactive approaches
  • References
  • Z. J. Haas and M. R. Pearlman, The Performance
    of Query Control Schemes for the Zone Routing
    Protocol, ACM/IEEE Trans. Net., vol. 9, no. 4,
    Aug.2001, pp. 42738
  • X. Hong, K. Xu, and M. Gerla, Scalable Routing
    Protocols for Mobile Ad Hoc Networks, IEEE
    Network July/August 2002
  • 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 Xs routing zone
  • Intra-zone routing Proactively maintain routes
    to all nodes within the source nodes own zone.
  • Inter-zone routing Use an on-demand protocol
    (similar to DSR or AODV) to determine routes to
    outside zone.

54
Zone Concept
ZONE
Radius of routing zone 2 hops
55
Routing Protocol IARP IERP
  • IntrAzone Routing Protocol IARP
  • Neighbor Information (base)
  • Neighbor Identification MAC protocols
  • Neighbor Discovery Neighbor Discovery Protocols
    (hello)
  • Modified Link-State protocol max hop exactly
    equal to zone radius.
  • Nodes proactively maintain routes to all nodes
    within its routing zone using the IARP
  • IntErzone Routing Protocol IERP
  • IERP finds routes to destinations beyond a nodes
    routing zone with the aid of BRP.
  • BRP (Bordercast Resolution Protocol) multicasts
    route query packets towards the peripheral nodes
    using topology info. provided by IARP.
  • Bordercast recipients bordercast the query toward
    their own peripheral nodes until a route to the
    destination is found.

56
IERP
  • Zones may overlap

Bordercast
57
Optimal Zone Radius
  • As zone radius is increased
  • Proactive (IARP) traffic increases
  • Reactive (IERP) traffic decreases
  • The benefits provided by the available topology
    information weighed against the overhead
    determines the optimal zone radius.
  • Optimization Different zone radius can be used
    for different zones

Routing Overhead (or delay)
Zone Radius
58
Geographic Routing LAR
  • Location-Aided Routing
  • Exploits location information to limit scope of
    route request flood
  • Location information may be obtained using GPS
  • Expected Zone is determined as a region that is
    expected to hold the current location of the
    destination
  • Expected region determined based on potentially
    old location information, and knowledge of the
    destinations speed
  • Route requests limited to a Request Zone that
    contains the Expected Zone and location of the
    sender node
  • 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

59
LAR Request Zone
  • Define an Expected Zone and a Request Zone
  • LAR is same as flooding, except that only nodes
    in request zone forward route request
  • Expected Zone
  • Region expected to contain D
  • Request Zone
  • Smallest rectangle including S and expected zone
    for D

Request Zone
D
Expected Zone
S
Write a Comment
User Comments (0)
About PowerShow.com