Title: Unicast Routing in Mobile Ad-Hoc Networks
1Unicast Routing in Mobile Ad-Hoc Networks
- Sajith Balraj
- Sumesh John Philip
- on February 29, 2000
2Overview
- Introduction
- MaNet Protocols
- Proactive Hybrid Protocols
- WRP/GSR/FSR/LAR
- ZRP
- Reactive Protocols
- DSR/DSDV/AODV
- Challenges in Ad-Hoc Networks
- References
3Mobile Ad-Hoc Network
- Collection of mobile nodes forming a temporary
network - No centralized administration or standard support
services - Each Host is an independent router
- Hosts use wireless RF transceivers as network
interface
- Conferences/Meetings
- Search and Rescue
- Disaster Recovery
- Automated Battlefields
4MaNet Issues
- Lack of a centralized entity
- Network topology changes frequently and
unpredictably - Channel access/Bandwidth availability
- Hidden/Exposed station problem
- Lack of symmetrical links
- Power limitation
- Multipath Fading
- Doppler Effect
5MaNet Protocols
- Proactive Protocols
- Table driven
- Continuously evaluate routes
- No latency in route discovery
- Large network capacity to keep info. current
- Most routing info. may never be used!
- Reactive Protocols
- On Demand
- Route discovery by some global search
- Bottleneck due to latency of route discovery
- May not be appropriate for real time commn.
6Conventional Routing Protocols ???
- DBF shows a degradation in performance
- Slow convergence due to Count to Infinity
Problem - Creates loops during node failure, network
partition or congestion - Protocols that use flooding techniques create
excessive traffic and control overhead
7MaNet Protocol Considerations
- Simple, Reliable and Efficient
- Distributed but lightweight in nature
- Quickly adapt to changes in topology and traffic
pattern - Protocol reaction to topology changes should
result in minimal control overhead - Bandwidth efficient
- Mobility Management involving user location
management and Hand-off management
8Wireless Routing Protocol (WRP)
- A path-finding algorithm
- Utilizes information regarding the the length and
the predecessor-to-dest in the shortest path to
each destination - Eliminates the Count to Infinity Problem and
converges faster - An Update message is sent after processing
updates from neighbors or a change in link to a
neighbor is detected - Each route update from neighbor k causes route
entries of other neighbors that use k to be
re-computed
9The Algorithm
- Each node i maintains a Distance table (iDjk),
Routing table (Destination Identifier, Distance
iDj, Predecessor Pj, the successor Sj and a
marker tag), link cost table (Cost, Update
Period) , message retransmission list (Seq. No.,
Counter, Acknowledgement flag, Update List) - Listen for updates/ACKs which include i in the
response list. Acknowledge each update - Process the Distance table entries. Compute
Djb Dkb kDj . Update predecessor
as reported by k - Update own Distance and predecessor information
10- Choose neighbor p such that the path from p to j
does not include i and iDjp lt iDjx and iDyp lt
iDyx - Broadcast new update message. Delete stale
entries from MRL for new updates. Decrement
counter for all entries in list. - Retransmit MRL entry when counter hits zero,
setting response list of update message to those
neighbors who have not yet acknowledged - Lack of NULL updates for given HelloInterval
indicate change in link to a neighbor.
11WRP Example
12Performance Measurements
- Comparison against DBF and ILS
- For a single resource failure, WRP outperforms
DBF in terms of number of steps and control
overhead - Performance of WRP better for resource recoveries
in terms of number of control messages - Average number of control messages least for WRP
with node mobility - Average message length comparable to DBF and ILS
in most cases
13Global State Routing (GSR)
- Combination of Distance Vector and Link State
- Global Network Topology stored in a Table
- Topology Table broadcast to immediate neighbors
only - Link State/Changes updates are time triggered
14The Algorithm
- Ad-Hoc Network modeled as an undirected graph
G(V,E) - L(i,j) formed when D(i,j) less than or equal to
RTr - A List and Three Tables are maintained at each
Node i Neighbor list Ai, Topology Table TTi
TTi.LS(j), TTi.SEQ(j), Next Hop Table Nexti and
Distance Table Di - Initialize Ai, TTi. Use pkt.SEQ(j) to update
TTi.SEQ(j) - Compute shortest path tree rooted at i. Rebuild
the Routing Table - Broadcast information to neighbors periodically
15Performance Measurements
- Routing Inaccuracy
- Link State reacts fastest to topology changes
GSR still outperforms DBF - Control Overhead
- Link State has maximum overhead since it is event
triggered - Overhead is constant for GSR DBF
- Mobility Impact
- No impact on control overhead for GSR DBF
- Routing inaccuracy increases for all schemes, but
least for ILS
16Performance Measurements cont.
- Update Interval
- Routing inaccuracy may be improved or degraded
with change in update interval - Radio Range
- Routing inaccuracy decreases for larger
transmission ranges
17Advantages/Disadvantages of GSR
- Advantages
- Avoids Flooding for disconnects/reconnects
- Updates are time triggered than event triggered
- Greatly reduces control overhead
- Disadvantages
- Hogs bandwidth since entire topology table is
broadcast with each update - Link state latency depends on update interval
- Can GSR be modified to rectify its drawbacks ?
18Fisheye State Routing
- The network is logically divided into Fisheye
circles with respect to each node. The scope of
the circle may be defined in terms of number of
hops - Reduction in update message achieved by using
different exchange periods for different entries
in the table - Creates larger latencies for stations that are
far - Routes become progressively accurate as the
packet gets closer to the destination - FSR scales well to large networks, by keeping the
LS exchange overhead low
19FSR cont.
20Zone Routing Protocol
- A Hybrid Routing Protocol
- A Zone is defined for each node
- Proactive maintenance of topology within a zone
(IARP) Distance Vector or Link State - Reactive query/reply mechanism between zones
(IERP) With Route Caching Reactive Distance
Vector W/O Route Caching Source Routing - Uses Bordercast instead of neighbor broadcast
- Neighbor Discovery/Maintenance (NMD) and Border
Resolution Protocol (BRP) used for query control,
route accumulation etc.
21ZRP Example
1 Hop
2 Hops
Multi Hops
B
F
A
C
D
E
G
H
22Zone Routing Protocol cont.
- Routing Zone and IntrAzone Routing Protocol
- Zone Radius may be based on hop count
- Identity and distance of each Node within the
Zone is proactively maintained - The Interzone Routing Protocol
- Check if destination is within the routing zone
- Bordercast a route query to all peripheral nodes
- Peripheral nodes execute the same algorithm
23Zone Routing Protocol cont.
- Route Accumulation
- Provide reverse path from discovery node to
source node - May employ global caching to reduce query packet
length - Query Detection/Control
- Terminate Query thread in previously queried
regions - Intermediate nodes update a Detected Queries
TableQuery Source, ID - Route Maintenance may be reactive or proactive
24Location Aided Routing (LAR)
- A Modified Flooding Algorithm
- Utilizes location information of mobile hosts
using a GPS for route discovery - Flooding is restricted to a request zone,
defined by an expected zone - A node forwards a route request only if it
belongs to the request zone - Tradeoff between latency of route determination
and message overhead - Resorts to flooding when prior information of
destination is not available
25LAR Schemes
D(xd,yd)
D(xd,yd)
R v(t-t0)
N
I
N
I
J
J
S (xs,ys)
S (xs,ys)
Scheme 1
Scheme 2
26LAR cont.
- Scheme 1.
- Source calculates the expected zone, defines a
request zone in the request packet and initiates
route discovery - Node I receiving the route request forwards the
request if it falls inside the request zone,
otherwise discards it - When destination receives the request, replies
with a route reply including current location,
time and average speed - Size of request zone is large at low and high
node speeds
27LAR cont.
- Scheme 2.
- Source calculates the distance Dists to
destination (xd, yd) and initiates route
discovery with both parameters - Node I calculates its distance Disti from (xd,
yd) and forwards the request only if Distilt
Dists d, otherwise discards the request - Node I replaces Dists with Disti before
forwarding the request - None zero d increases probability of route
discovery
28Performance Comparison
- Scheme 2 performs better than Scheme 1 and
Flooding - For low transmission ranges and degree of
connectivity, LAR schemes are comparable to
Flooding - Routing overhead increases with increase in
location error - Impact of location error more on Scheme 2 than
Scheme 1 - Local Search may be employed by intermediate
nodes to reconstruct routes, thus reducing
request zone area and thereby reducing routing
overhead
29Destination-Sequenced Distance Vector Routing
- Protocol Overview
- Route Advertisements
- Routing Table Entry Structure
30Protocol Overview
- Each Routing Table List all destinations and
number of hops to each - Each Route is tagged with a sequence number
originated by destination - Updates are transmitted periodically and when
there is any significant topology change - Routing information is transmitted by broadcast
31Route Table Entry Structure
- Destinations Address
- Number of hops required to reach the destination
- Destination Sequence Number
32Responding to Topology Changes
- Broken links indicated by ?
- Any route through a hop with a broken link is
also assigned ? - ? routes are immediately broadcast
- Sequence number of Destination is incremented and
information is broadcast - Nodes with same or higher sequence number
broadcast their metric information - Limit broadcast by full dump and incremental
33Route Selection Criteria
- Route broadcast are asynchronous events
- Fluctuations are caused due to possibility of
receiving routes with worse metric first - Solution is maintain routing tables, one for
routing and one for broadcast
34Example of DSDV
35Example of DSDV
36Example of DSDV
37Example of DSDV
38Example of DSDV
39Ad-Hoc On-Demand Distance Vector Routing
- Protocol overview and objectives
- Path Discovery
- Reverse Path Setup
- Forward Path Setup
- Route Table Management
- Path Maintenance
- Local Connectivity Management
40Protocol Overview and Objectives
- Pure on-demand protocol
- Node does not need to maintain knowledge of
another node unless it communicates with it - Broadcast discovery packets only when necessary
- Distinguish between local connectivity and
general topology maintenance - To disseminate Information about changes in local
connectivity to those neighboring nodes that are
likely to need it
41Path Discovery
- Initiated whenever nodes want to communicate
- Route Request packets are broadcast
- RREQ format
- lt source_addr, source_sequence- , broadcast_id,
dest_addr, dest_sequence_, hop_cnt gt - RREQ uniquely identified by ltsource_addr ,
broadcast_idgt
42Path Discovery Cont.
- Broadcast id incremented with every RREQ
- Neighboring nodes satisfy RREQ by sending RREP or
broadcast RREQ after incrementing hop_cnt - Each intermediate node keeps following
information - Destination Address
- Source Address
- Broadcast_id
43Path discovery Cont.
- Expiration time for reverse path entry
- Source nodes sequence number
44Reverse Path Setup
- Source sequence number is used to maintain
freshness about reverse route to source - Destination number specified for freshness of
route before accepted by source - Reverse path setup by having link to neighbor
45Forward Path Setup
- Node processing on reception of RREQ
- checks if the route is current by comparing
dest_seq - if route is current node unicasts RREP back to
neighbor from which it received the RREQ - RREP contains ltsource_addr, dest_addr,
dest_sequence_, hop_cnt,lifetimegt - Node propagates RREP back to source
- Updates information on reception of subsequent
RREPs
46Forward Path Setup
47Route Table Management
- Route Request Expiration Timer for purging
reverse paths which do not lie on
source-destination route - Route Caching Timeout for time after which the
route is considered invalid - Active_timeout Period used to determine if
neighboring node is active
48Route Table Management
- 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
49Path Maintenance
- When dest node or intermediate node moves a
special RREP is sent - When next hop become unreachable the upstream
node sends propagates RREP with fresh sequence
number and hop cnt ? - restart route discovery process from source on
receipt of RREP
50Local Connectivity Management
- Node learn of their neighbors in following way
- on receipt of broadcast message
- on receipt of hello message
51Dynamic Source Routing
- Overview
- Constructs a source route in packet header
listing source route - Each host maintains a route cache
- Route discovery used for routes not in cache
52Route Discovery
- Route Request Packet
- Route Reply Packet
- Route Record
- Unique Request id
53Route Discovery
- Possible scenarios on receipt of route request
packet - discard packet if ltinitiator address, request idgt
already seen - if host already listed then discard packet
- if target address is same as host address then
obtain reverse route from route record and send
route reply - add host address in case of none of the above
54Route Maintenance
- Route error packet sent on detection of break
containing addresses on both sides of error, the
host that detected the error and the host to
which it was trying to send the packet - All upstream node then deletes routes with that
particular hop
55Optimizations
- Full Use of Route Cache
- Piggy Backing on Route Discoveries
- Reflecting Shorter Routes
- Improved Handling of errors
56Full Use of Route Cache
- Each forwarding host can add route information to
cache - Nodes can operate in promiscuous mode and add
information to cache from any packets that they
hear - Each intermediate node having a route can send a
route reply packet
57Piggy Backing on Route Discoveries
- Data is piggybacked on Route Request Packet and
Route Reply Packet (like SYN for TCP) - While piggybacking on Route Request and
intermediate node send Route Reply propagate
Route Request with data
58Reflecting Shorter Routes
- D on receipt of packet from B can modify cache
and send route reply
59Improved Handling of errors
- In scenario when network becomes partitioned
buffer packets and use exponential backoff - Use promiscuous mode to remove entries
60Performance Comparison of AODV and DSR
- DSR has access to significantly greater amount of
routing information than AODV by virtue of source
routing and promiscuous listening - DSR replies to all requests reaching a
destination from a single request cycle whereas
AODV only replies once thereby learning only one
route - In DSR no particular mechanism to delete stale
routes unlike AODV - In AODV the route deletion causes all the nodes
using that link to delete it, but in DSR only
the nodes on that particular part are deleted
61Performance Comparison of AODV and DSR
- Both protocols do not perform any load balancing
- Routing load in DSR is less than AODV but in
terms of bits the difference is less - In AODV the path discovery is mostly due to RREQ(
but in RREP RERRs but in terms of network load
both of them are nearly the same) - Both protocols use hop-wise determination of
routes
62Challenges in Ad-hoc Design
- Protocols still in Nascent Stage, analysis for
which protocol does well in which scenario - QOS issues in Ad-hoc
- TCP performance over Ad-hoc
- Integration of Ad-Hoc Networks in Internet
- Multicasting in Ad-hoc Networks
63References
- S. Murthy and J.J Garcia Luna Aceves, A Routing
Protocol for Packet Radio Networks, Proc. IEEE
Mobicom, Nov. 1995 - A. Iwata, C.C. Chiang, G. Pei, M. Gerla and T. W.
Chen, Scalable Routing Strategies for Ad-Hoc
Wireless Networks, IEEE journal on Selected
Areas in Communcations, Aug. 1999 - M. Gerla and T. W. Chen, Global State Routing
A new routing scheme for Ad-Hoc wireless
networks, Proc. IEEE ICC 98 - Z. J. Haas, M. R. Pearlman, The Zone Routing
Protocol for Ad-Hoc networks, Internet Draft,
Aug. 1998 - Y. B. Ko, N. H. Vaidya, Location Aided Routing
in Ad-Hoc networks, Proceedings of ACM/IEEE
Mobicom98, Dallas, TX, Oct. 1998
64References
- Charles Perkin's Home Page
- http//www.srvloc.org/charliep/charliep.html
- Routing in Ad Hoc Networks of Mobile
Hosts http//phantom.me.uvic.ca/clesiuk/thesis/rep
orts/adhoc/adhoc.htmlE18E3 - Wireless Adaptive Mobility LAB,
UCLAhttp//www.cs.ucla.edu/NRL/wireless/ - Monarch Project Research Papershttp//www.monarch.
cs.cmu.edu/papers.html - Papers on Mobile Computing http//db.nthu.edu.tw
/paper/Mobile/ - Simulation Environment for an Ad-Hoc Wireless
Network Running the AODV Routing Algorithm
65References
- http//www.ctr.columbia.edu/angin/e6950/sameh/aod
v_final.html - ADHOC Networks Presentation http//www.ittc.ukans.
edu/eshwar/eecs845/intro.html - Mobile Ad hoc Networking http//www.varium.com/ps
o/AdhocNetworking.html - Paper Collection on Ad-hoc Networks http//147.46.
59.102/imhyo/papers/papers.html - Ad-Hoc Networking Resource Page http//147.46.59.1
02/imhyo/papers/papers.html - Papers on Mobile Computing http//www-sor.inria
.fr/aline/mobile/biblio.html - Papers on Ad-hoc Multihop Wireless
Networks http//www.ics.uci.edu/atm/adhoc/paper-c
ollection/papers.html