Unicast Routing in Mobile Ad-Hoc Networks Sajith Balraj

advertisement
Unicast Routing
in
Mobile Ad-Hoc Networks
Sajith Balraj
Sumesh John Philip
on February 29, 2000
Overview
• Introduction
• MaNet Protocols
• Proactive & Hybrid Protocols
– WRP/GSR/FSR/LAR
– ZRP
• Reactive Protocols
– DSR/DSDV/AODV
• Challenges in Ad-Hoc Networks
• References
Mobile 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
MaNet 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
MaNet 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.
Conventional 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
MaNet 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
Wireless 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
The 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
• Choose neighbor p such that the path from p to j does not
include i and iDjp <= iDjx and iDyp <= 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.
WRP Example
Performance 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
Global 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
The 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
Performance 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
Performance 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
Advantages/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 it’s drawbacks ?
Fisheye 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
FSR cont.
Zone 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.
ZRP Example
1 Hop
2 Hops
Multi Hops
B
F
A
C
D
E
G
H
Zone 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
Zone 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
Table[Query Source, ID]
• Route Maintenance may be reactive or proactive
Location 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
LAR Schemes
D(xd,yd)
D(xd,yd)
R = v(t-t0)
N
I
N
I
J
S (xs,ys)
Scheme 1
J
S (xs,ys)
Scheme 2
LAR 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
LAR cont.
• Scheme 2.
– Source calculates the distance Dists to destination (xd,
yd) and initiates route discovery with both parameters
– Node I calculates it’s distance Disti from (xd, yd) and
forwards the request only if Disti<= Dists + δ,
otherwise discards the request
– Node I replaces Dists with Disti before forwarding the
request
– None zero δ increases probability of route discovery
Performance 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
Destination-Sequenced Distance Vector
Routing
• Protocol Overview
• Route Advertisements
• Routing Table Entry Structure
Protocol 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
Route Table Entry Structure
• Destination’s Address
• Number of hops required to reach the destination
• Destination Sequence Number
Responding 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”
Route 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
Example of DSDV
Example of DSDV
Example of DSDV
Example of DSDV
Example of DSDV
Ad-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
Protocol 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
Path Discovery
• Initiated whenever nodes want to communicate
• Route Request packets are broadcast
• RREQ format
< source_addr, source_sequence-# , broadcast_id,
dest_addr, dest_sequence_#, hop_cnt >
• RREQ uniquely identified by <source_addr ,
broadcast_id>
Path 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
Path discovery Cont.
– Expiration time for reverse path entry
– Source node’s sequence number
Reverse 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
Forward 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 <source_addr, dest_addr, dest_sequence_#,
hop_cnt,lifetime>
• Node propagates RREP back to source
• Updates information on reception of subsequent
RREPs
Forward Path Setup
Route Table Management
• Route Request Expiration Timer for purging
reverse paths which do not lie on sourcedestination route
• Route Caching Timeout for time after which the
route is considered invalid
• Active_timeout Period used to determine if
neighboring node is active
Route 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
Path 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
Local Connectivity Management
• Node learn of their neighbors in following way
– on receipt of broadcast message
– on receipt of hello message
Dynamic 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
Route Discovery
•
•
•
•
Route Request Packet
Route Reply Packet
Route Record
Unique Request id
Route Discovery
• Possible scenarios on receipt of route request
packet
– discard packet if <initiator address, request id>
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
Route 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
Optimizations
•
•
•
•
Full Use of Route Cache
Piggy Backing on Route Discoveries
Reflecting Shorter Routes
Improved Handling of errors
Full 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
Piggy 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
Reflecting Shorter Routes
• D on receipt of packet from B can modify cache
and send route reply
Improved Handling of errors
• In scenario when network becomes partitioned
buffer packets and use exponential backoff
• Use promiscuous mode to remove entries
Performance 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
Performance 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 & RERR’s but in terms of
network load both of them are nearly the same)
• Both protocols use hop-wise determination of
routes
Challenges 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
References
• 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 Mobicom’98, Dallas, TX, Oct.
1998
References
• 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/reports/adhoc/adhoc.htm
l#E18E3
• 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
References
• http://www.ctr.columbia.edu/~angin/e6950/sameh/aodv_final.html
• ADHOC Networks Presentation
http://www.ittc.ukans.edu/~eshwar/eecs845/intro.html
• Mobile Ad hoc Networking
http://www.varium.com/~pso/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.102/~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-collection/papers.html
Download