Routing Protocols for Ad-Hoc Networks
Ad-hoc On-Demand Distance Vector Routing
&
DSR: The Dynamic Source Routing Protocol
for Multi-Hop Wireless Ad Hoc Networks
November 2011,
Giorgos Papadakis & Manolis Surligas
Outline
 Ad-Hoc networks
 Ad-hoc routing algorithms
 Ad-Hoc on-demand Distance Vector Routing (AODV)
 Dynamic Source Routing (DSR)
 Comparison of AODV and DSR
Ad Hoc Networks
Wireless networks can be divided in two fundamental
categories:
 Infrastructure-based
Wireless clients connecting to a base-station (APs,
Cell Towers) that provides all the traditional network
services (routing, address assignment)
 Infrastructure-less
The clients themselves must provide all the traditional
services to each other
Ad Hoc Networks
Ad-hoc networks main features:
 Decentralized
 Do not rely on preexisting infrastructure
 Each node participates in routing by
forwarding data to neighbor nodes
 Fast network topology changes due to nodes’
movement
Ad Hoc Networks
Why do we need ad-hoc networks?
 More laptop users
 More smartphones users (e.g.. Android phones,
iPhones)
 More devices with Wi-Fi-support (e.g.. televisions, hi-
fi, home-theaters, media servers etc.)
 Moving users, vehicles, etc.
 Outdoors places
 In all these occasions there is no centralized
infrastructure (such APs)
 So ad-hoc network is a necessity
Ad Hoc Networks
An Ad-hoc networkAn infrastructure wireless network
Outline
 Ad-Hoc networks
 Ad-hoc routing algorithms
 Ad-Hoc on-demand Distance Vector Routing (AODV)
 Dynamic Source Routing (DSR)
 Comparison of AODV and DSR
Ad-hoc routing algorithms
Hottest routing algorithm categories:
 Pro-active (table-driven) routing
Maintains fresh lists of destinations & their routes by periodically
distributing routing tables
Disadvantages:
1. Respective amount of data for maintenance
2. Slow reaction on restructuring and failures
(e.g. OSLR, DSDV)
 Reactive (on-demand) routing
On demand route discovery by flooding the network with Route
Request packets
Disadvantages:
1. High latency time in route finding
2. Flooding can lead to network clogging
(e.g. AODV, DSR)
Ad-hoc routing algorithms
Discuss and comparison
1. Ad-Hoc on-demand Distance Vector Routing (AODV)
2. Dynamic Source Routing (DSR)
Outline
 Ad-Hoc networks
 Ad-hoc routing algorithms
 Ad-Hoc on-demand Distance Vector Routing (AODV)
 General info
 Path Discovery
 Path Maintenance
 Local Connectivity Maintenance
 Conclusion
 Dynamic Source Routing (DSR)
 Comparison of AODV and DSR
(AODV) General info
 Reactive algorithms like AODV create routes on-
demand. They must however, reduce as much as
possible the acquisition time
 We could largely eliminate the need of periodically
system-wide broadcasts
 AODV uses symmetric links between neighboring
nodes. It does not attempt to follow paths
between nodes when one of the nodes can not hear
the other one
(AODV) General info
 Nodes that have not participate yet in any packet
exchange (inactive nodes), they do not maintain
routing information
 They do not participate in any periodic routing table
exchanges
(AODV) General info
 Each node can become aware of other nodes in its
neighborhood by using local broadcasts known as
hello messages
 neighbor routing tables organized to :
1. optimize response time to local movements
2. provide quick response time for new routes
requests
(AODV) General info
AODV main features:
 Broadcast route discovery mechanism
 Bandwidth efficiently (small header information)
 Responsive to changes in network topology
 Loop free routing
Outline
 Ad-Hoc networks
 Ad-hoc routing algorithms
 Ad-Hoc on-demand Distance Vector Routing (AODV)
 General info
 Path Discovery
 Path Maintenance
 Local Connectivity Maintenance
 Conclusion
 Dynamic Source Routing (DSR)
 Comparison of AODV and DSR
(AODV) Path Discovery
 Initiated when a source node needs to
communicate with another node for which it has no
routing info
 Every node maintains two counters:
 node_sequence_number
 broadcast_id
 The source node broadcast to the neighbors a
route request packet (called RREQ)
(AODV) Path Discovery
 RREQ structure
<src_addr, src_sequence_#, broadcast_id, dest_addr,
dest_sequence_#, hop_cnt>
 src_addr and broadcast_id uniquely identifies a RREQ
 broadcast_id is incremented whenever source node
issues a RREQ
 Each neighbor either satisfy the RREQ, by sending
back a routing reply (RREP), or rebroadcast the RREQ
to its own neighbors after increasing the hop_count by
one.
(AODV) Path Discovery
 If a node receives a RREQ that has the same
<src_addr, broadcast_id> with a previous RREQ it
drops it immediately
 If a node cannot satisfy the RREQ, stores:
 Destination IP
 Source IP
 broadcast_id
 Expiration time (used for reverse path process)
 src_sequence_#
(AODV) Path Discovery
1. Reverse Path Setup
 In each RREQ there are:
 src_sequence_#
 the last dest_sequence_#
 src_sequence_# used to maintain freshness
information about the reverse route to the source
 dest_sequnece_# indicates how fresh a route must
be, before it can be accepted by the source
(AODV) Path Discovery
1.Reverse Path Setup (continue)
 As RREQ travels from source to many destinations, it
automatically sets up the reverse path, from all nodes
back to the source.
But how does it work?
 Each node records the address of the neighbor from which it
received the first copy of the RREQ
 These entries are maintained for at least enough time, for the
RREQ to traverse the network and produce a reply
(AODV) Path Discovery
1.Reverse Path Setup (continue)
U
D
Z
Y
W
S
V
S
D
Z
W
ZW
Source node
Destination node
Neighbor nodes
S sends RREQ
Figure 1
W, Y can not satisfy RREQ
i. Set up reverse path
ii. Rebroadcast RREQ to
neighbors
Z, V, U can not satisfy RREQ
i. Set up reverse path
ii. Rebroadcast RREQ to
neighbors
RREQ reached destination
Reversed path is fully set up
From which RREP can travel
back to S
(AODV) Path Discovery
2. Forward Path Setup
 A node receiving a RREP propagates the first RREP
for a given source towards the source (using the
reverse path that has already established)
 Nodes that are not in the path determined by the
RREP will time out after 3000 ms and will delete the
reverse pointers
(AODV) Path Discovery
2. Forward Path Setup (continue)
U
D
Z
Y
W
S
V
S
D
Z
W
WZ
Source node
Destination node
Z has a reversed path to W
Figure 2
ZW W has a forward path to Z
D replies with a
RREP to Z
Z receives RREP
and set up a
forward pointer
The same
for the
other
nodes
Time out
(AODV) Path Discovery
2. Forward Path Setup (Conclusion)
 Minimum number of RREPs towards source
 The source can begin data transmission as soon as
the first RREP received and update later its routing
information if it learns of a better route
Outline
 Ad-Hoc networks
 Ad-hoc routing algorithms
 Ad-Hoc on-demand Distance Vector Routing (AODV)
 General info
 Path Discovery
 Path Maintenance
 Local Connectivity Maintenance
 Conclusion
 Dynamic Source Routing (DSR)
 Comparison of AODV and DSR
(AODV) Path Maintenance
 Movement of nodes not lying along an active path does NOT
affect the route to that path's destination
 If the source node moves, it can simply re-initiate the route
discovery procedure
 If the destination or some intermediate node moves, a
special RREP is sent to the affected nodes
 To find out nodes movements periodic hello messages can be
used, or (LLACKS) link-layer acknowledgments (far less
latency)
(AODV) Path Maintenance
 When a node is unreachable the special RREP that
is sent back towards the source, contains a new
sequence number and hop count of ∞
U
D
Z
Y
S
V
Z
W
Figure 3
Link between Z
and D fails
Z sents a
special RREP
So do W
So now source must find a new path. To do that, it sents a RREQ with a new greater
sequence number
Outline
 Ad-Hoc networks
 Ad-hoc routing algorithms
 Ad-Hoc on-demand Distance Vector Routing (AODV)
 General info
 Path Discovery
 Path Maintenance
 Local Connectivity Maintenance
 Conclusion
 Dynamic Source Routing (DSR)
 Comparison of AODV and DSR
(AODV) Local Connectivity
Maintenance
 Nodes learn of their neighbors in one or two ways:
1. Whenever a node receives a broadcast from a
neighbor it update its local connectivity
information about this neighbor
2. If a neighbor has not sent any packets within
hello_interval it broadcasts a hello message,
containing its identity and its sequence number
(AODV) Local Connectivity
Maintenance
How hello messages work:
 Hello messages do not broadcasted outside the
neighborhood because the contain a TTL (time to
leave) value of 1.
 Neighbors that receive the hello message update
their local connectivity information to the node that
have broadcasted the hello message
(AODV) Local Connectivity
Maintenance
How hello messages work: (continue)
 Receiving a hello from a new neighbor, or failing to
receive allowed_hello_loss (typically 2) consecutive
hello messages from a node previously in the
neighborhood, indicates that the local connectivity
has changed
Outline
 Ad-Hoc networks
 Ad-hoc routing algorithms
 Ad-Hoc on-demand Distance Vector Routing (AODV)
 General info
 Path Discovery
 Path Maintenance
 Local Connectivity Maintenance
 Conclusion
 Dynamic Source Routing (DSR)
 Comparison of AODV and DSR
(AODV) Conclusion
AODV main features:
 Nodes store only the routes they need
 Need for broadcast is minimized
 Reduces memory requirements and needless
duplications
 Quick response to link breakage in active routes
 Loop-free routes maintained by use of destination
sequence numbers
 Scalable to large populations of nodes
AODV
Outline
 Ad-Hoc networks
 Ad-hoc routing algorithms
 Ad-Hoc on-demand Distance Vector Routing (AODV)
 Dynamic Source Routing (DSR)
 General
 Basic Route Discovery
 Basic Route Maintenance
 Conclusion
 Comparison of AODV and DSR
(DSR) General
Two main mechanisms that work together to allow the
discovery and maintainance of source routes:
 Route discovery
 Route maintainance
(DSR) General
Route discovery:
 Is the mechanism by which a source node S, obtains
a route to a destination D
 Used only when S attempt to send a packet to D and
does not already knows a route to D
(DSR) General
Route maintainance:
 Is the mechanism by which source node S is able to
detect if the network topology has changed and can
no longer use its route to D
 If S knows another route to D, use it
 Else invoke route discovery process again to find a
new route
 Used only when S wants to send a packet to D
(DSR) General
 Each mechanism operate entirely on demand
 DSR requires no periodic packets of any kind at any
level
 Uni-directional and asymmetric routes support
(e.g. send a packet to a node D through a route and receive a
packet D from another route)
Outline
 Ad-Hoc networks
 Ad-hoc routing algorithms
 Ad-Hoc on-demand Distance Vector Routing (AODV)
 Dynamic Source Routing (DSR)
 General
 Basic Route Discovery
 Basic Route Maintenance
 Conclusion
 Comparison of AODV and DSR
(DSR) Basic Route Discovery
When S wants to sent a packet to D:
 it places in the header of the packet a source route
giving the sequence of hops that the packet should
follow on its way to D
 S obtains a suitable source route by searching its route
table
 If no route found for D, S initiate the Route Discovery
protocol to dynamically find a new route to D
(DSR) Basic Route Discovery
Sender
 Broadcasts a Route Request Packet (RREQ)
 RREQ contains a unique Request ID and the address of the
sender
Receiver
 If this node is the destination node, or has route to the
destination send a Route Reply packet (RREP)
 Else if is the source, drop the packet
 Else if is already in the RREQ's route table,
drop the packet
 Else append the node address in the RREQ's route table
and broadcast the updated RREQ
(DSR) Basic Route Discovery
U
D
Z
Y
W
S
V
S
D
Z
W
ZW
Source node
Destination node
Neighbor nodes
S sends RREQ
Figure 4
RREQ packet
Id=2, {S}
Id=2, {S}
Id=2, {S, W}
Id=2, {S, Y}
Id=2, {S, Y}
Id=2, {S, W, Z}
(DSR) Basic Route Discovery
When a RREQ reaches the destination node, a RREP
must be sent back to source
The destination node:
 Examine its own Route Cache for a route back to source
 If found, it use this route to send back the RREP
 Else, the destination node starts a new Route Discovery
process to find a route towards source node
 In protocols that require bi-directional links like 802.11, the
reversed route list of the RREQ packet can be used, in order to
avoid the second Route Discovery
Outline
 Ad-Hoc networks
 Ad-hoc routing algorithms
 Ad-Hoc on-demand Distance Vector Routing (AODV)
 Dynamic Source Routing (DSR)
 General
 Basic Route Discovery
 Basic Route Maintenance
 Conclusion
 Comparison of AODV and DSR
(DSR) Basic Route Maintenance
Each node transmitting a packet:
 is responsible for confirming that the packet has been received
by the next hop along the source route
 The confirmation it is done with a standard part of MAC layer
(e.g. Link-level ACKs in 802.11)
 If none exists, a DSR-specific software takes the
responsibility to sent back an ACK
 When retransmissions of a packet in a node reach a maximum
number, a Route Error Packet (RERR) is sent from the node back
to the source, identifying the broken link
(DSR) Basic Route Maintenance
The source:
 Removes from the routing table the broken route
 Retransmission of the original packet is a function of
upper layers (e.g. TCP)
 It searches the routing table for another route, or start
a new Route Discovery process
(DSR) Basic Route Maintenance
U
D
Z
Y
W
S
V
S
D
Z
W
ZW
Source node
Destination node
Neighbor nodes
Figure 5
RERR packet
Link fails
Intermediate
node sents a
RERR
RERR(Z, D)
RERR(Z, D)
Route Table
D: S, W, Z, D
V: S, Y, V
Outline
 Ad-Hoc networks
 Ad-hoc routing algorithms
 Ad-Hoc on-demand Distance Vector Routing (AODV)
 Dynamic Source Routing (DSR)
 General
 Basic Route Discovery
 Basic Route Maintenance
 Conclusion
 Comparison of AODV and DSR
(DSR) Conclusion
 Excellent performance for routing in multi-hop wireless
ad hoc networks
 Very low routing overhead even with continuous rapid
motion, which scales to :
1. zero when nodes are stationary
2. the affected routes when nodes are moving
 Completely self-organized & self-configuring network
 Entirely on-demand operation. No periodic activity of any
kind at any level
DSR
Outline
 Ad-Hoc networks
 Ad-hoc routing algorithms
 Ad-Hoc on-demand Distance Vector Routing (AODV)
 Dynamic Source Routing (DSR)
 Comparison of AODV and DSR
Comparison of AODV and DSR
Main common features:
 On-demand route requesting
 Route discovery based on requesting and replying
control packets
 Broadcast route discovery mechanism
Comparison of AODV and DSR
Main common features: (continue)
 Route information is stored in all intermediate nodes
along the established path
 Inform source node for a broken links
 Loop-free routing
Comparison of AODV and DSR
Main differences:
 DSR can handle uni and bi-directional links, AODV uses
only bi-directional
 In DSR, using a single RREQ - RREP cycle, source and
intermediate nodes can learn routes to other nodes on
the route
 DSR maintains many alternate routes to the destination,
instead of AODV that maintains at most one entry per
destination
Comparison of AODV and DSR
Main differences: (continue)
 DSR doesn’t contain any explicit mechanism to expire
stale routes in the cache , In AODV if a routing table
entry is not recently used , the entry is expired
 DSR can’t prefer “fresher” routes when faced multiple
choices for routes. In contrast, AODV always choose
the fresher route (based on destination sequence
numbers)
Comparison of AODV and DSR
Main differences: (continue)
 DSR’s RREQ has variable length depending on the nodes
that the packet has traveled. AODV’s RREQ size is
constant
 As a result DSR’s header overhead may increase as more
nodes become active, so we expect that AODV
throughput in those scenarios to be better
Comparison of AODV and DSR
Test bench set up:
 100 nodes, some of them as sources
 Nominal bit rate of 2 Mb/s
 Nominal node range of 250 m
 Continuously moving nodes
Comparison of AODV and DSR
Comparison of AODV and DSR
Application and routing statistics for an example scenario for a network of 100
nodes with continuous mobility and 40 sources
Performance
metrics
DSR AODV
Packets delivered
/Packets sent (%)
56.88 83.66
Average delay (s) 1.36 0.26
Routing Packets DSR AODV
Route requests 37774 228094
Route replies 82710 17753
Route errors 26591 9808
Total 147075 255655
Conclusion
 DSR outperforms AODV in less stressful situations
(i.e., smaller number of nodes and lower load and/or
mobility)
 AODV outperforms DSR in more stressful situations
(e.g., more load, higher mobility)
 DSR commonly generates less routing load than AODV
 Poor delay and throughput of DSR due to lack of any
mechanism to expire stale routes or determine the
freshness of routes

More Related Content

PPTX
Routing protocol
ODP
Adhoc routing protocols
PDF
PERFORMANCE ANALYSIS AND COMPARISON OF IMPROVED DSR WITH DSR, AODV AND DSDV R...
PPT
Comparison between aodv and olsr protocol
DOCX
Dsdv
PPTX
Simulation & comparison of aodv & dsr protocol
PPT
Wireless routing protocols
Routing protocol
Adhoc routing protocols
PERFORMANCE ANALYSIS AND COMPARISON OF IMPROVED DSR WITH DSR, AODV AND DSDV R...
Comparison between aodv and olsr protocol
Dsdv
Simulation & comparison of aodv & dsr protocol
Wireless routing protocols

What's hot (20)

PPT
Performance Evaluation of Routing Protocols
PDF
Research Inventy : International Journal of Engineering and Science
PDF
DSDV VS AODV
PPTX
Performance analysis of AODV And OLSR
PPT
Routing
PPTX
AODV Protocol
PDF
Performance Analysis and Simulation of OLSR Routing Protocol in MANET
PPT
Routing protocols
PPTX
Unit 3 - Data Link Layer - Part B
PPTX
DYNAMIC SOURCE ROUTING (DSR)
PPT
Routing protocols-network-layer
PPTX
BASICS OF ROUTING IN NETWORKS
PPTX
Computer networks network layer,routing
PPT
Routing in Manet
PPTX
Routing and routing algorithms
PDF
AODV protocol
PDF
Routing
PPTX
Network Routing | Computer Science
PPTX
Routing algorithm
PPTX
AODV (Ad hoc On-demand Distance Vector) VS AOMDV (Ad hoc On-demand Multipath ...
Performance Evaluation of Routing Protocols
Research Inventy : International Journal of Engineering and Science
DSDV VS AODV
Performance analysis of AODV And OLSR
Routing
AODV Protocol
Performance Analysis and Simulation of OLSR Routing Protocol in MANET
Routing protocols
Unit 3 - Data Link Layer - Part B
DYNAMIC SOURCE ROUTING (DSR)
Routing protocols-network-layer
BASICS OF ROUTING IN NETWORKS
Computer networks network layer,routing
Routing in Manet
Routing and routing algorithms
AODV protocol
Routing
Network Routing | Computer Science
Routing algorithm
AODV (Ad hoc On-demand Distance Vector) VS AOMDV (Ad hoc On-demand Multipath ...
Ad

Similar to Adhoc routing protocols (20)

PDF
Ad hoc network-performance_analysis and simulation
PDF
En33838844
PDF
En33838844
PDF
A Study on Ad Hoc on Demand Distance Vector AODV Protocol
PPT
RoutingProtocols.ppt
PDF
Lecture 11 14. Adhoc routing protocols cont..
PPTX
Classification of routing protocols
PPTX
AODV routing protocol
PDF
Ab25144148
PPTX
Ad hoc on demand distance
PPTX
Reactive or on-demand routing protocolss
PDF
PDF
Link-and Node-Disjoint Evaluation of the Ad Hoc on Demand Multi-path Distance...
PPT
2006 aodv-group-presentation
PDF
Experiment of Routing Protocol AODV (AdHoc On-demand Distance Vector)
PDF
Mobile Ad-hoc Network (MANET) Routing Algorithms─ Part 1
PPT
Routing ad hoc network
PPT
introAdhocRoutingRoutingRoutingRouting-new.ppt
PDF
IRJET- Optimum Routing Algorithm for MANET
PPT
Ad hoc network-performance_analysis and simulation
En33838844
En33838844
A Study on Ad Hoc on Demand Distance Vector AODV Protocol
RoutingProtocols.ppt
Lecture 11 14. Adhoc routing protocols cont..
Classification of routing protocols
AODV routing protocol
Ab25144148
Ad hoc on demand distance
Reactive or on-demand routing protocolss
Link-and Node-Disjoint Evaluation of the Ad Hoc on Demand Multi-path Distance...
2006 aodv-group-presentation
Experiment of Routing Protocol AODV (AdHoc On-demand Distance Vector)
Mobile Ad-hoc Network (MANET) Routing Algorithms─ Part 1
Routing ad hoc network
introAdhocRoutingRoutingRoutingRouting-new.ppt
IRJET- Optimum Routing Algorithm for MANET
Ad

Recently uploaded (20)

PDF
Exploratory_Data_Analysis_Fundamentals.pdf
PPTX
Sorting and Hashing in Data Structures with Algorithms, Techniques, Implement...
PPTX
ASME PCC-02 TRAINING -DESKTOP-NLE5HNP.pptx
PPTX
Principal presentation for NAAC (1).pptx
PDF
August -2025_Top10 Read_Articles_ijait.pdf
PPT
Chapter 1 - Introduction to Manufacturing Technology_2.ppt
PDF
August 2025 - Top 10 Read Articles in Network Security & Its Applications
PPTX
Module 8- Technological and Communication Skills.pptx
PDF
20250617 - IR - Global Guide for HR - 51 pages.pdf
PPTX
Software Engineering and software moduleing
PDF
Introduction to Power System StabilityPS
PDF
Beginners-Guide-to-Artificial-Intelligence.pdf
PDF
Present and Future of Systems Engineering: Air Combat Systems
PDF
VSL-Strand-Post-tensioning-Systems-Technical-Catalogue_2019-01.pdf
PPTX
"Array and Linked List in Data Structures with Types, Operations, Implementat...
PDF
Influence of Green Infrastructure on Residents’ Endorsement of the New Ecolog...
PPTX
Graph Data Structures with Types, Traversals, Connectivity, and Real-Life App...
PDF
Applications of Equal_Area_Criterion.pdf
PDF
distributed database system" (DDBS) is often used to refer to both the distri...
PDF
Computer organization and architecuture Digital Notes....pdf
Exploratory_Data_Analysis_Fundamentals.pdf
Sorting and Hashing in Data Structures with Algorithms, Techniques, Implement...
ASME PCC-02 TRAINING -DESKTOP-NLE5HNP.pptx
Principal presentation for NAAC (1).pptx
August -2025_Top10 Read_Articles_ijait.pdf
Chapter 1 - Introduction to Manufacturing Technology_2.ppt
August 2025 - Top 10 Read Articles in Network Security & Its Applications
Module 8- Technological and Communication Skills.pptx
20250617 - IR - Global Guide for HR - 51 pages.pdf
Software Engineering and software moduleing
Introduction to Power System StabilityPS
Beginners-Guide-to-Artificial-Intelligence.pdf
Present and Future of Systems Engineering: Air Combat Systems
VSL-Strand-Post-tensioning-Systems-Technical-Catalogue_2019-01.pdf
"Array and Linked List in Data Structures with Types, Operations, Implementat...
Influence of Green Infrastructure on Residents’ Endorsement of the New Ecolog...
Graph Data Structures with Types, Traversals, Connectivity, and Real-Life App...
Applications of Equal_Area_Criterion.pdf
distributed database system" (DDBS) is often used to refer to both the distri...
Computer organization and architecuture Digital Notes....pdf

Adhoc routing protocols

  • 1. Routing Protocols for Ad-Hoc Networks Ad-hoc On-Demand Distance Vector Routing & DSR: The Dynamic Source Routing Protocol for Multi-Hop Wireless Ad Hoc Networks November 2011, Giorgos Papadakis & Manolis Surligas
  • 2. Outline  Ad-Hoc networks  Ad-hoc routing algorithms  Ad-Hoc on-demand Distance Vector Routing (AODV)  Dynamic Source Routing (DSR)  Comparison of AODV and DSR
  • 3. Ad Hoc Networks Wireless networks can be divided in two fundamental categories:  Infrastructure-based Wireless clients connecting to a base-station (APs, Cell Towers) that provides all the traditional network services (routing, address assignment)  Infrastructure-less The clients themselves must provide all the traditional services to each other
  • 4. Ad Hoc Networks Ad-hoc networks main features:  Decentralized  Do not rely on preexisting infrastructure  Each node participates in routing by forwarding data to neighbor nodes  Fast network topology changes due to nodes’ movement
  • 5. Ad Hoc Networks Why do we need ad-hoc networks?  More laptop users  More smartphones users (e.g.. Android phones, iPhones)  More devices with Wi-Fi-support (e.g.. televisions, hi- fi, home-theaters, media servers etc.)  Moving users, vehicles, etc.  Outdoors places  In all these occasions there is no centralized infrastructure (such APs)  So ad-hoc network is a necessity
  • 6. Ad Hoc Networks An Ad-hoc networkAn infrastructure wireless network
  • 7. Outline  Ad-Hoc networks  Ad-hoc routing algorithms  Ad-Hoc on-demand Distance Vector Routing (AODV)  Dynamic Source Routing (DSR)  Comparison of AODV and DSR
  • 8. Ad-hoc routing algorithms Hottest routing algorithm categories:  Pro-active (table-driven) routing Maintains fresh lists of destinations & their routes by periodically distributing routing tables Disadvantages: 1. Respective amount of data for maintenance 2. Slow reaction on restructuring and failures (e.g. OSLR, DSDV)  Reactive (on-demand) routing On demand route discovery by flooding the network with Route Request packets Disadvantages: 1. High latency time in route finding 2. Flooding can lead to network clogging (e.g. AODV, DSR)
  • 9. Ad-hoc routing algorithms Discuss and comparison 1. Ad-Hoc on-demand Distance Vector Routing (AODV) 2. Dynamic Source Routing (DSR)
  • 10. Outline  Ad-Hoc networks  Ad-hoc routing algorithms  Ad-Hoc on-demand Distance Vector Routing (AODV)  General info  Path Discovery  Path Maintenance  Local Connectivity Maintenance  Conclusion  Dynamic Source Routing (DSR)  Comparison of AODV and DSR
  • 11. (AODV) General info  Reactive algorithms like AODV create routes on- demand. They must however, reduce as much as possible the acquisition time  We could largely eliminate the need of periodically system-wide broadcasts  AODV uses symmetric links between neighboring nodes. It does not attempt to follow paths between nodes when one of the nodes can not hear the other one
  • 12. (AODV) General info  Nodes that have not participate yet in any packet exchange (inactive nodes), they do not maintain routing information  They do not participate in any periodic routing table exchanges
  • 13. (AODV) General info  Each node can become aware of other nodes in its neighborhood by using local broadcasts known as hello messages  neighbor routing tables organized to : 1. optimize response time to local movements 2. provide quick response time for new routes requests
  • 14. (AODV) General info AODV main features:  Broadcast route discovery mechanism  Bandwidth efficiently (small header information)  Responsive to changes in network topology  Loop free routing
  • 15. Outline  Ad-Hoc networks  Ad-hoc routing algorithms  Ad-Hoc on-demand Distance Vector Routing (AODV)  General info  Path Discovery  Path Maintenance  Local Connectivity Maintenance  Conclusion  Dynamic Source Routing (DSR)  Comparison of AODV and DSR
  • 16. (AODV) Path Discovery  Initiated when a source node needs to communicate with another node for which it has no routing info  Every node maintains two counters:  node_sequence_number  broadcast_id  The source node broadcast to the neighbors a route request packet (called RREQ)
  • 17. (AODV) Path Discovery  RREQ structure <src_addr, src_sequence_#, broadcast_id, dest_addr, dest_sequence_#, hop_cnt>  src_addr and broadcast_id uniquely identifies a RREQ  broadcast_id is incremented whenever source node issues a RREQ  Each neighbor either satisfy the RREQ, by sending back a routing reply (RREP), or rebroadcast the RREQ to its own neighbors after increasing the hop_count by one.
  • 18. (AODV) Path Discovery  If a node receives a RREQ that has the same <src_addr, broadcast_id> with a previous RREQ it drops it immediately  If a node cannot satisfy the RREQ, stores:  Destination IP  Source IP  broadcast_id  Expiration time (used for reverse path process)  src_sequence_#
  • 19. (AODV) Path Discovery 1. Reverse Path Setup  In each RREQ there are:  src_sequence_#  the last dest_sequence_#  src_sequence_# used to maintain freshness information about the reverse route to the source  dest_sequnece_# indicates how fresh a route must be, before it can be accepted by the source
  • 20. (AODV) Path Discovery 1.Reverse Path Setup (continue)  As RREQ travels from source to many destinations, it automatically sets up the reverse path, from all nodes back to the source. But how does it work?  Each node records the address of the neighbor from which it received the first copy of the RREQ  These entries are maintained for at least enough time, for the RREQ to traverse the network and produce a reply
  • 21. (AODV) Path Discovery 1.Reverse Path Setup (continue) U D Z Y W S V S D Z W ZW Source node Destination node Neighbor nodes S sends RREQ Figure 1 W, Y can not satisfy RREQ i. Set up reverse path ii. Rebroadcast RREQ to neighbors Z, V, U can not satisfy RREQ i. Set up reverse path ii. Rebroadcast RREQ to neighbors RREQ reached destination Reversed path is fully set up From which RREP can travel back to S
  • 22. (AODV) Path Discovery 2. Forward Path Setup  A node receiving a RREP propagates the first RREP for a given source towards the source (using the reverse path that has already established)  Nodes that are not in the path determined by the RREP will time out after 3000 ms and will delete the reverse pointers
  • 23. (AODV) Path Discovery 2. Forward Path Setup (continue) U D Z Y W S V S D Z W WZ Source node Destination node Z has a reversed path to W Figure 2 ZW W has a forward path to Z D replies with a RREP to Z Z receives RREP and set up a forward pointer The same for the other nodes Time out
  • 24. (AODV) Path Discovery 2. Forward Path Setup (Conclusion)  Minimum number of RREPs towards source  The source can begin data transmission as soon as the first RREP received and update later its routing information if it learns of a better route
  • 25. Outline  Ad-Hoc networks  Ad-hoc routing algorithms  Ad-Hoc on-demand Distance Vector Routing (AODV)  General info  Path Discovery  Path Maintenance  Local Connectivity Maintenance  Conclusion  Dynamic Source Routing (DSR)  Comparison of AODV and DSR
  • 26. (AODV) Path Maintenance  Movement of nodes not lying along an active path does NOT affect the route to that path's destination  If the source node moves, it can simply re-initiate the route discovery procedure  If the destination or some intermediate node moves, a special RREP is sent to the affected nodes  To find out nodes movements periodic hello messages can be used, or (LLACKS) link-layer acknowledgments (far less latency)
  • 27. (AODV) Path Maintenance  When a node is unreachable the special RREP that is sent back towards the source, contains a new sequence number and hop count of ∞ U D Z Y S V Z W Figure 3 Link between Z and D fails Z sents a special RREP So do W So now source must find a new path. To do that, it sents a RREQ with a new greater sequence number
  • 28. Outline  Ad-Hoc networks  Ad-hoc routing algorithms  Ad-Hoc on-demand Distance Vector Routing (AODV)  General info  Path Discovery  Path Maintenance  Local Connectivity Maintenance  Conclusion  Dynamic Source Routing (DSR)  Comparison of AODV and DSR
  • 29. (AODV) Local Connectivity Maintenance  Nodes learn of their neighbors in one or two ways: 1. Whenever a node receives a broadcast from a neighbor it update its local connectivity information about this neighbor 2. If a neighbor has not sent any packets within hello_interval it broadcasts a hello message, containing its identity and its sequence number
  • 30. (AODV) Local Connectivity Maintenance How hello messages work:  Hello messages do not broadcasted outside the neighborhood because the contain a TTL (time to leave) value of 1.  Neighbors that receive the hello message update their local connectivity information to the node that have broadcasted the hello message
  • 31. (AODV) Local Connectivity Maintenance How hello messages work: (continue)  Receiving a hello from a new neighbor, or failing to receive allowed_hello_loss (typically 2) consecutive hello messages from a node previously in the neighborhood, indicates that the local connectivity has changed
  • 32. Outline  Ad-Hoc networks  Ad-hoc routing algorithms  Ad-Hoc on-demand Distance Vector Routing (AODV)  General info  Path Discovery  Path Maintenance  Local Connectivity Maintenance  Conclusion  Dynamic Source Routing (DSR)  Comparison of AODV and DSR
  • 33. (AODV) Conclusion AODV main features:  Nodes store only the routes they need  Need for broadcast is minimized  Reduces memory requirements and needless duplications  Quick response to link breakage in active routes  Loop-free routes maintained by use of destination sequence numbers  Scalable to large populations of nodes
  • 34. AODV
  • 35. Outline  Ad-Hoc networks  Ad-hoc routing algorithms  Ad-Hoc on-demand Distance Vector Routing (AODV)  Dynamic Source Routing (DSR)  General  Basic Route Discovery  Basic Route Maintenance  Conclusion  Comparison of AODV and DSR
  • 36. (DSR) General Two main mechanisms that work together to allow the discovery and maintainance of source routes:  Route discovery  Route maintainance
  • 37. (DSR) General Route discovery:  Is the mechanism by which a source node S, obtains a route to a destination D  Used only when S attempt to send a packet to D and does not already knows a route to D
  • 38. (DSR) General Route maintainance:  Is the mechanism by which source node S is able to detect if the network topology has changed and can no longer use its route to D  If S knows another route to D, use it  Else invoke route discovery process again to find a new route  Used only when S wants to send a packet to D
  • 39. (DSR) General  Each mechanism operate entirely on demand  DSR requires no periodic packets of any kind at any level  Uni-directional and asymmetric routes support (e.g. send a packet to a node D through a route and receive a packet D from another route)
  • 40. Outline  Ad-Hoc networks  Ad-hoc routing algorithms  Ad-Hoc on-demand Distance Vector Routing (AODV)  Dynamic Source Routing (DSR)  General  Basic Route Discovery  Basic Route Maintenance  Conclusion  Comparison of AODV and DSR
  • 41. (DSR) Basic Route Discovery When S wants to sent a packet to D:  it places in the header of the packet a source route giving the sequence of hops that the packet should follow on its way to D  S obtains a suitable source route by searching its route table  If no route found for D, S initiate the Route Discovery protocol to dynamically find a new route to D
  • 42. (DSR) Basic Route Discovery Sender  Broadcasts a Route Request Packet (RREQ)  RREQ contains a unique Request ID and the address of the sender Receiver  If this node is the destination node, or has route to the destination send a Route Reply packet (RREP)  Else if is the source, drop the packet  Else if is already in the RREQ's route table, drop the packet  Else append the node address in the RREQ's route table and broadcast the updated RREQ
  • 43. (DSR) Basic Route Discovery U D Z Y W S V S D Z W ZW Source node Destination node Neighbor nodes S sends RREQ Figure 4 RREQ packet Id=2, {S} Id=2, {S} Id=2, {S, W} Id=2, {S, Y} Id=2, {S, Y} Id=2, {S, W, Z}
  • 44. (DSR) Basic Route Discovery When a RREQ reaches the destination node, a RREP must be sent back to source The destination node:  Examine its own Route Cache for a route back to source  If found, it use this route to send back the RREP  Else, the destination node starts a new Route Discovery process to find a route towards source node  In protocols that require bi-directional links like 802.11, the reversed route list of the RREQ packet can be used, in order to avoid the second Route Discovery
  • 45. Outline  Ad-Hoc networks  Ad-hoc routing algorithms  Ad-Hoc on-demand Distance Vector Routing (AODV)  Dynamic Source Routing (DSR)  General  Basic Route Discovery  Basic Route Maintenance  Conclusion  Comparison of AODV and DSR
  • 46. (DSR) Basic Route Maintenance Each node transmitting a packet:  is responsible for confirming that the packet has been received by the next hop along the source route  The confirmation it is done with a standard part of MAC layer (e.g. Link-level ACKs in 802.11)  If none exists, a DSR-specific software takes the responsibility to sent back an ACK  When retransmissions of a packet in a node reach a maximum number, a Route Error Packet (RERR) is sent from the node back to the source, identifying the broken link
  • 47. (DSR) Basic Route Maintenance The source:  Removes from the routing table the broken route  Retransmission of the original packet is a function of upper layers (e.g. TCP)  It searches the routing table for another route, or start a new Route Discovery process
  • 48. (DSR) Basic Route Maintenance U D Z Y W S V S D Z W ZW Source node Destination node Neighbor nodes Figure 5 RERR packet Link fails Intermediate node sents a RERR RERR(Z, D) RERR(Z, D) Route Table D: S, W, Z, D V: S, Y, V
  • 49. Outline  Ad-Hoc networks  Ad-hoc routing algorithms  Ad-Hoc on-demand Distance Vector Routing (AODV)  Dynamic Source Routing (DSR)  General  Basic Route Discovery  Basic Route Maintenance  Conclusion  Comparison of AODV and DSR
  • 50. (DSR) Conclusion  Excellent performance for routing in multi-hop wireless ad hoc networks  Very low routing overhead even with continuous rapid motion, which scales to : 1. zero when nodes are stationary 2. the affected routes when nodes are moving  Completely self-organized & self-configuring network  Entirely on-demand operation. No periodic activity of any kind at any level
  • 51. DSR
  • 52. Outline  Ad-Hoc networks  Ad-hoc routing algorithms  Ad-Hoc on-demand Distance Vector Routing (AODV)  Dynamic Source Routing (DSR)  Comparison of AODV and DSR
  • 53. Comparison of AODV and DSR Main common features:  On-demand route requesting  Route discovery based on requesting and replying control packets  Broadcast route discovery mechanism
  • 54. Comparison of AODV and DSR Main common features: (continue)  Route information is stored in all intermediate nodes along the established path  Inform source node for a broken links  Loop-free routing
  • 55. Comparison of AODV and DSR Main differences:  DSR can handle uni and bi-directional links, AODV uses only bi-directional  In DSR, using a single RREQ - RREP cycle, source and intermediate nodes can learn routes to other nodes on the route  DSR maintains many alternate routes to the destination, instead of AODV that maintains at most one entry per destination
  • 56. Comparison of AODV and DSR Main differences: (continue)  DSR doesn’t contain any explicit mechanism to expire stale routes in the cache , In AODV if a routing table entry is not recently used , the entry is expired  DSR can’t prefer “fresher” routes when faced multiple choices for routes. In contrast, AODV always choose the fresher route (based on destination sequence numbers)
  • 57. Comparison of AODV and DSR Main differences: (continue)  DSR’s RREQ has variable length depending on the nodes that the packet has traveled. AODV’s RREQ size is constant  As a result DSR’s header overhead may increase as more nodes become active, so we expect that AODV throughput in those scenarios to be better
  • 58. Comparison of AODV and DSR Test bench set up:  100 nodes, some of them as sources  Nominal bit rate of 2 Mb/s  Nominal node range of 250 m  Continuously moving nodes
  • 60. Comparison of AODV and DSR Application and routing statistics for an example scenario for a network of 100 nodes with continuous mobility and 40 sources Performance metrics DSR AODV Packets delivered /Packets sent (%) 56.88 83.66 Average delay (s) 1.36 0.26 Routing Packets DSR AODV Route requests 37774 228094 Route replies 82710 17753 Route errors 26591 9808 Total 147075 255655
  • 61. Conclusion  DSR outperforms AODV in less stressful situations (i.e., smaller number of nodes and lower load and/or mobility)  AODV outperforms DSR in more stressful situations (e.g., more load, higher mobility)  DSR commonly generates less routing load than AODV  Poor delay and throughput of DSR due to lack of any mechanism to expire stale routes or determine the freshness of routes