You are on page 1of 45

Introduction To

Ad Hoc Networks and


Routing Protocols
Presented By :
Karthik Samudram Jayaraman

Introduction
What is Ad Hoc Network?
In Latin, ad hoc means "for this," further

meaning "for this purpose only.


All nodes are mobile and can be connected
dynamically in an arbitrary manner.
No default router available.
Potentially every node becomes a router: must
be able to forward traffic on behalf of others.

Two types of wireless networks


Infrastructured network:
A network with fixed and wired gateways.
When a mobile unit goes out of range of
one base station, it connects with new base
station.
Infrastructureless (ad hoc) networks:
All nodes of these networks behave as
routers and take part in discovery and
maintenance of routes to other nodes.

Why is Ad Hoc hard?


Because of a constantly changing set of
nodes Routing is a major issue!
Security
new vulnerabilities, nasty neighbors.
Power
running with batteries, little computing
power.

The Desired Properties of


Protocols (For Routing)
1.
2.
3.
4.
5.

A routing protocol should be distributed.


Assume routes as unidirectional links.
Power efficient.
Consider its security.
Hybrid protocols can be preferred.

Two Main categories of Protocols


1. Table Driven Routing Protocols
Pro-active, learn the networks topology
before a forwarding request comes in
2. On-Demand Routing Protocols

Re-active, become active only when needed

Destination Sequenced Distance


Vector Algorithm (DSDV)
1. Based on Bellman-Ford Next Hop
Routing.
2. Each Node Maintains Tables for :
A. Next Hop on Path
B. Distance (in hops) to destination.
C. Sequence Number ( keep current route)

3. Nodes Exchange Updates With Neighbours


Full Routing Updates
Incremental Updates

DSDV

contd

ClusterHead Gateway Switch Routing


Adds hierarchical structure having DSDV as
underlying routing algorithm.
Routing is performed over clusterheads and not
individual nodes.
Requires Table to maintain cluster Membership, in
addition to other routing tables.
Cluster heads are selected by a Least Cluster
Change Algorithm to minimize routing changes

Wireless Routing Protocol


Each node maintains a distance table, a
routing table, a link-cost table and a
message retransmission list.
Distance table of node i: (matrix)
For each destination j and each neighbor of i(k)
Distance to j

Wireless Routing Protocol


Routing table of node i is a vector:
The destinations identifier
The distance to the destination
The predecessor and successor of the chosen
shortest path

Wireless Routing Protocol


Link-cost Table:
The cost of relaying information through each
neighbor

Message retransmission list:


One or more retransmission entries

Wireless Routing Protocol


Information Exchanged among nodes:
(routing table update messages )
Identifier of the sending node
A sequence number assigned by the sending

node
An update list of updates or ACKs to update
message
A response list of nodes that should send an
ACK to the update message

Wireless Routing Protocol


Each node will communicate with its neighbors

reporting any changes in the system


Each node will keep track of which node should
send an acknowledgement
Nodes will keep track of the changes in the system
by periodic transmission of hello messages
This protocol will force nodes to do consistent
check of their predecessor hence avoiding countto-infinity problem.

DSDV
DSDV is based on idea of classical Bellman-Ford
Routing Algorithm
Each node maintains a routing table listing all available destinations.
The attributes of each destination are the next hop, the number of hops
to reach to the destination, and a sequence number, which is originated
by the destination node.

Both periodic and triggered routing updates to maintain table

Problems of Distance Vector


Pro-active routing based on Distance Vector

Topology changes are slowly propagated


Count-to-infinity problem

Moving nodes create confusion:


they carry connectivity data which are wrong at new
place

Table exchange eats bandwidth

DSDV
How DSDV addresses the problems?
Tagging of distance information:
The destination issues increasing sequence number
Other nodes can discard old/duplicate updates

Changes are not immediately propagated


Wait some setting time

Incremental updates instead of full table exchange

What is on-demand
The routes are created when required
The source has to discover a route to the
destination.
The source and intermediate nodes have to
maintain a route as long as it is used.
Routes have to be repaired in case of
topology changes.

On-Demand Routing Protocols


1. Ad hoc On-demand Distance Vector
2.
3.
4.
5.

Routing
Dynamic Source Routing Protocol
Temporally Ordered Routing Algorithm
Associativity Based Routing
Signal Stability Routing

Ad Hoc On-demand Distance Vector Routing


AODV includes route discovery and route

maintenance.
AODV minimizes the number of broadcasts
by creating routes on-demand
AODV uses only symmetric links because
the route reply packet follows the reverse
path of route request packet.
AODV uses hello messages to know its
neighbors and to ensure symmetic links.

The source broadcasts a route packet


The neighbors in turn broadcast the
source
RREQ
packet till it reaches the destination

destination
RREP
Reply packet follows the reverse path of route
request packet recorded in broadcast packet
The node discards the packets having been seen

Route Maintenance
If the source node moves, it reinitiates the
route discovery.
If intermediate node moves, its upstream
node sends a RREP to the source. The
source restarts the route discovery.

Dynamic Source Routing Protocol


A node maintains route caches containing
the routes it knows.

Include route discovery and route


maintenance.

Route discovery
The source sends a broadcast packet which
contains source address, destination address, request
id and path.
If a host saw the packet before, discards it.
Otherwise, the route looks up its route caches to
look for a route to destination, If not find, appends
its address into the packet, rebroadcast,
If finds a route in its route cache, sends a route
reply packet, which is sent to the source by route
cache or the route discovery.

source broadcasts a packet containing address of source and destination

source

(1,4)

The destination sends a reply packet to source.


8

(1,3)
3

(1,2)

destination

(1,4,7)
The node discards the packets having been seen
5

(1,3,5)

(1,3,5,6)

The route looks up its route caches to look for a route to destination
If not find, appends its address into the packet

How to send a reply packet


If the destination has a route to the source in
its route cache, use it
Else if symmetric links are supported, use
the reverse of route record
Else if symmetric links are not supported,
the destination initiates route discovery to
source

Route maintenance
Whenever a node transmits a data packet, a
route reply, or a route error, it must verify
that the next hop correctly receives the
packet.
If not, the node must send a route error to
the node responsible for generating this
route header
The source restart the route discovery

Add entries into route cache


The Source and destination in route
discovery
Intermediate hosts in route discovery
The hosts receiving any broadcast

Temporally Order Routing Algorithm


Creating Routes: query/reply
QRY packet is flooded through network
UPD packet propagates back if route exist
Maintaining Routes: link-reversal
UPD packets re-orient the route structure

Erasing Routes
CLR packet is floodthrough network to erase
invalid routes

The source broadcasts a QRY packet with height(D)=0, all others NULL
(0,0,0,3,a)
(-,-,-,-,a)

source

(-,-,-,-,d)
(0,0,0,2,d)

QRY

Only the non-NULL node (destination) responds with a UPD packet.


QRY

QRY

(-,-,-,-,c)
(0,0,0,4,c)

UPD

Dest.
(0,0,0,0,h)

(-,-,-,-,g)
(0,0,0,1,g)

(-,-,-,-,b)
(0,0,0,4,b)
e

(-,,-,-,-e)
(0,0,0,3,e)

(0,0,0,2,f)
(-,-,-,-,f)

A node receiving a UPD sets its height to one more than UPD
Source receives a UPD with less height

TORA: Height metric


Each node contains a quintuple
Logical time of a link failure
Unique ID of the node that defined the new
reference level
Reflection indicator bit
A propagation ordering parameter, height
Unique ID of the node

Route Maintenance and Erasing


No reaction necessary if all nodes still have downstream
links.

A new reference level is defined if a node loses its last


downstream link.

Synchronized clock is important, accomplished via GPS


or algorithm such as Network Time Protocol.

CLR packet to be flooded to clear the invalid packet.

Link failure with no reaction


(0,0,0,3,a)

(0,0,0,2,d)

h
c

Dest.
(0,0,0,0,h)

(0,0,0,4,c)
g

(0,0,0,1,g)

(0,0,0,4,b)
e

(0,0,0,3,e)

(0,0,0,2,f)

Re-establishing route after link failure


(1,d,0,-2,s)
(0,0,0,4,s)
s

A new reference level is defined


(1,d,0,-1,a)
(0,0,0,3,a)
(1,d,0,0,d)
UDP (0,0,0,2,d)
a

UDP

h
c

Dest.
(0,0,0,0,h)

(0,0,0,4,c)
g

(0,0,0,1,g)

(0,0,0,4,b)
e

(0,0,0,3,e)

(0,0,0,2,f)

Associativity Based Routing


Each route keeps a associativity table
A high value of associativity tick indicates a
low state of node mobility
A route is selected based on associativity
states of nodes, finds the high value of
associativity tick (low mobility routes)

Associativity table
All nodes generate periodic beacons
When a neighbor node receives a beacon, it
increases its associativity tick with respect
to the sending node in associativity table
Associativity ticks are reset when the
neighbors of a node or the node itself move
out of proximity

Route Discovery
The source broadcast a QRY message
Each intermediate node appends its address
and associativity ticks to QRY,
The destination can examine the
associativity ticks to select route. If the
multiple paths have the same overall degree
of stability, select the minimum number of
hops

Route Erasing
If the the route is no longer desired, the
source may not be aware of any route node
changes because partial reconstruction.

The source node initiates a route delete


(RD) broadcast to erase the invalid route.

Conclusion

DSR has lower routing load than AODV


Because AODV has to depend on route
discovery more often, DSR limits the overhead
by using route cache

TORA is higher because its overhead is the sum


of neighbor discovery plus routing creating and
maintenance

DSR and AODV perform well than TORA,


delivering over 95% packet regardless of
mobility rate.
TORA is lower because the link-reversal
process fails in the routing maintenance.
TORA has a better performance in the less
sources.

Advantage and Disadvantage


The overhead of TORA is worst. It has a better
delivery ratio in less sources.
DSR is good at all mobility rate and movement
speed. Its performance is poor in a higher load.
AODV performs almost as well as DST at all
mobility rates and movement. It depends more on
route discovery which may increase overhead in
network

Overview
On-Demand
Overall
complexity
Overhead
Loop-free
Beaconing
requirements
Multiple
route support
Routes
maintained in
Route
reconfigurati
on
methodology
Routing
metric

AODV
Medium

DSR
Medium

TORA
High

ABR
High

SSR
High

Low
Yes
No

Medium
Yes
No

Medium
Yes
No

High
Yes
Yes

High
Yes
Yes

No

Yes

Yes

No

No

Route table

Route cache

Route table

Route table

Route table

Erase route;
notify source

Erase route;
notify source

Link reversal;
route repair

Localized
broadcast
query

Erase route;
notify source

Freshest and
shortest path

Shortest path

Shortest path

Associativity
and shortest
path and
others

Associativity
and stability

Reference
1.
2.
3.
4.
5.
6.
7.
8.
9.

10.

Routing Protocols for Ad Hoc Mobile Wireless Networt by Padmini Misra,


ftp://ftp.netlab.ohio-state.edu/pub/jain/courses/cis788-99/adhoc_routing/index.html
#CBRP
A Comparison of On-Demand and Table Driven Routing for Ad-Hoc Wireless
Networks, by Jyoti Raju and J.J. Garcia-Luna-Aceves,
http://www.soe.ucsc.edu/~jyoti/paper2/
A New Routing Protocol for the Reconfigurable Wireless Networks, Zygmunt J Hass
Caching strategies in on-demand routing protocols for wireless ad hoc networks, by
Yih-chun hu and Divid B. Johnson, http://monarch.cs.cmu.edu
Highly Dynamic Destination-Sequenced Distance-Vector Routing for Mobile
Computers, Pravin Bhagwat, Charles E. Perkins
Dynamic source routing in ad hoc wireless networks, by David B. Johnson and David
A. Maltz, http://www1.ics.uci.edu/~atm/adhoc/paper-collection/johnson-dsr.pdf
A Performace Comparison of Multi-Hop Wireless Ad Hoc Network Routing
Protocols, Josh Broch etc
An Efficient Routing Protocol for Wireless Netwrok, Shree Murthy etc
Temporally-Ordered Routing Algorithm (TORA) Version 1 Funtional
Specification, by V. Park, S. Corson,
http://www1.ics.uci.edu/~atm/adhoc/paper-collection/corson-draft-ietf-manet-tora-spe
c-00.txt
Ad Hoc On Demand Distance Vector (AODV) Routing, by Charles
Perkins, http://www1.ics.uci.edu/~atm/adhoc/paper-collection/perkins-draft-ietfmanet-aodv-00.txt

Reference (cont.)
7.
8.
9.

10.
11.
12.
13.
14.

An Introduction to Mobile Ad Hoc Network, by Ming Yu Jiang,


http://kiki.ee.ntu.edu.tw/mmnet1/adhoc/
Scalable Routing Strategies for Ad hoc Wireless Network, by Atsushi Iwata , ChingChuan Chiang etc.
A Performance Comparison of Multi-Hop Wireless Ad Hoc Network Routing
Protocols, by Josh Broch, David A. Maltz, David B. Johnson, Yih-Chun Hu, Jorjeta
Jetcheva, http://www1.ics.uci.edu/~atm/adhoc/paper-collection/johnson-performancecomparison-mobicom98.pdf
Fisheye State Routing: A Routing Schema for Ad Hoc Wireless Networks, by guangyu
Pei, Mario Gerla, Tsi-Wei Chen
A review of current Routing protocols for ad-hoc Mobile Wireless Networks, by
Elizabeth M. Royer and C-K Toh
http://www.cs.ucsb.edu/~vigna/courses/CS595_Fall01/royer99review.pdf
CEDAR: a Core-Extraction distributed Ad Hoc Routing Algorithm, Prasun Sinha,
Vaduvur Nharghavan, etc
Mobile computing today & in the future, by M.J. Fahham and M.K. Hauge.
http://www.doc.ic.ac.uk/~nd/surprise_95/journal/vol4/mjf/report.html
Performance Comparison of On-demand Routing Protocols in Ad Hoc Network by
Sohela Kaniz http://fiddle.visc.vt.edu/courses/ecpe6504wireless/projects_spring2000/pres_kaniz.pdf

You might also like