Routing in Mobile Ad hoc Networks Sumesh J. Philip CSE620 Fall 2004.
-
Upload
katelin-lampson -
Category
Documents
-
view
214 -
download
0
Transcript of Routing in Mobile Ad hoc Networks Sumesh J. Philip CSE620 Fall 2004.
Contents
Introduction to Ad hoc networksConventional routing drawbackTable Driven (WRP, DSDV)On Demand (DSR, AODV, TORA)Performance EvaluationLocation based routing (LAR, DREAM)Hybrid routing (ZRP)Summary
Mobile Ad hoc NetworkCollection of mobile nodes forming a network
Hosts use wireless RF transceivers as network interface
Omni directional (broadcast)Highly directional (point – point)Combination
Arbitrary movement and coverage pattern
Connectivity in the form of random, multi-hop graphs
Highly co-operative, each host is an independent router
Applications
“Ad hoc” – centric Conferences/meetings Search and Rescue Automated battlefields
Data – centric Collecting information in large, dynamic,
energy constrained networks (sensors)
Revenue – centric Increasing coverage and capacity
Constraints and Issues
No centralized administration or standard support servicesFrequent and unpredictable network topology changes Routing and mobility managementChannel access/bandwidth availability Hidden/Exposed station problem
Lack of symmetrical linksPower limitation
Conventional Routing Protocols ?
Not designed for highly dynamic, low bandwidth networks“Count-to-infinity” problem and slow convergence for DVLoop formation during temporary node failures and network partitionsProtocols that use flooding techniques (for e.g. LS) create excessive traffic and control overhead
Ad hoc Routing Protocols
Proactive Protocols Table driven Continuously evaluate
routes No latency in route
discovery Large capacity to
keep network information current
A lot of routing information may never be used
Reactive Protocols On Demand Route discovery by
global search Bottleneck due to
latency of route discovery
May not be appropriate for real-time communication
Wireless Routing Protocol (WRP)
Predecessor to destination (next to last hop) in the shortest path usedEliminates the “Count-to-infinity” problem and converges fasterNeighbor connectivity via periodic Hello messagesUpdate messages sent upon detecting a change in neighbor link
Each node i maintains a Distance table (iDjk), Routing table (Destination Identifier, Distance iDj , Predecessor Pj ,the successor Sj), link cost table (Cost, Update Period) Processing Updates and creating Route Table Update from k causes i to re-compute the
distances of all paths with k as the predecessor For a destination j, a neighbor p is selected as
the successor if p->j does not include i, and is the shortest path to j
Destination Sequenced Distance Vector (DSDV)
Each Route is tagged with a sequence number originated by destinationHosts perform periodic & triggered updates, issuing a new sequence numberSequence number indicates the “freshness” of a route Routes with more recent sequence numbers
are preferred for packet forwarding If same sequence number, one having
smallest metric used
Topology changes
Broken links assigned a metric of ∞Any route through a hop with a broken link is also assigned a metric of ∞“∞ routes” are assigned new sequence numbers by any host and immediately broadcast via a triggered updateIf a node has an equal/later sequence number with a finite metric for an “∞ route”, a route update is triggered
Damping Fluctuations
Routes preferred if later sequence numbers, or smaller metric for same sequence numbersProblem : Table fluctuations if worse metrics are received first, causing a ripple of triggered updatesSolution : Use average settling time as a parameter before advertising routesTantamount to using two tables, one for forwarding packets and another for advertising routes
Dynamic Source Routing (DSR)
Each packet header contains a route, which is represented as a complete sequence of nodes between a source – destination pair Protocol consists of two phases route discovery route maintenance
Optimizations for efficiency Route cache Piggybacking Error handling
DSR Route Discovery
Source broadcasts route request (id, target) Intermediate node action Discard if id is in <initiator, request id> or
node is in route record Else append address in route record;
rebroadcast If node is the target, route record contains the
full route to the target; return a route reply
Use existing routes to source to send route reply; else piggyback
DSR Route Maintenance
Use acknowledgements or a layer-2 scheme to detect broken links; inform sender via route error packetIf no route to the source exists Use piggybacking Send out a route request and buffer route
error
Sender truncates all routes which use nodes mentioned in route errorInitiate route discovery
Optimizations for efficiency
Route Cache Use cached entries for
during route discovery Promiscuous mode to
add more routes Use hop based delays
for local congestion Must be careful to
avoid loop formation Expanding ring search
Optimizations
Piggybacking Data piggybacked on route request Packet Problem : route caching can cause piggybacked
data to be discardedImproved Error Handling when network becomes partitioned, buffer
packets and use exponential back-off for route discovery
Listen to route replies promiscuously to remove entries
Use negative information to ignore corrupt replies
Ad-hoc On DemandDistance Vector (AODV)
On demand protocol that uses sequence numbers (DSDV) to build loop free routesKey difference from DSR is that source route is no longer requiredPath discovery Reverse Path setup Forward path setup
Table management and path maintenanceLocal connectivity management
AODV Reverse path setup
Counters : Sequence number, Broadcast idReverse Path Broadcast route request (RREQ) < source_addr,
source_sequence-# , broadcast_id, dest_addr, dest_sequence_#, hop_cnt >
RREQ uniquely identified by <source_addr , broadcast_id>
Route reply (RREP) if neighbor is the target, or knows a higher dest_sequence_#
Otherwise setup a pointer to the neighbor from whom RREQ was received
Maintain reverse path entries based on timeouts
AODV Forward path setup
RREQ arrives at a node that has current route to the destination ( larger/same sequence number) Unicast request reply (RREP)<source_addr, dest_addr, dest_sequence_#, hop_cnt,lifetime> to neighborRREP travels back to the source along reverse pathEach upstream node updates dest_sequence_#, sets up a forward pointer to the neighbor who transmit the RREP
Protocol Maintenance
Route Table management Route request expiration timer purges
reverse paths that do not lie on active route Active neighbor relays a packet within
active_route_timeout Route cache timer purges inactive routes New routes preferred if higher destination
sequence number or lower metric
AODV Maintenance
Path maintenance Upon link breakage, affected node
propagates an unsolicited RREP <dest_sequence_#+1, ∞> to all upstream nodes
Source may restart route discovery processLocal connectivity management Broadcasts used to update local
connectivity information Inactive nodes in an active path required to
send “hello” messages
Temporally OrderedRouting Algorithm (TORA)
Link reversal algorithm Destination oriented Directed Acyclic Graph
(DAG) Full/Partial reversal of links
Assigns a reference level (height) to each nodeAdjust reference level to restore routes on link failureMultiple routes to destination; route optimality not importantQuery, Update, Clear packets used for creating, maintaining and erasing routes
Performance Analysis
Simulation Environment Network Simulator, 50 nodes in a 1500x300m
rectangular flat grid Random waypoint mobility (Average 10 m/sec) Constant bit rate traffic (UDP)
Address resolution : ARP implementation in BSD UnixMedium Access Control : IEEE 802.11 Physical Layer model : combines both free space and two ray ground reflection modelProtocols studied : DSDV(SQ), AODV-LL, DSR, TORA
Performance Analysis
Metrics Packet Delivery Ratio : Ratio of number of
packets generated by CBR sources to that received by CBR sinks at destination
Routing Overhead : number of routing packets sent; each transmission counts as one transmission
Path Optimality : Difference between length of actual path took and the length of the shortest path
Packet Delivery Ratio
95-100% in most cases for DSR, AODVStale route entries in DSDV cause dropsShort lived loops in TORA as part of link reversalAll protocols perform well when there is low node mobility
Routing Overhead (packets)
Route caching and non-propagating RREQs in DSRTORA
Sum of mobility dependant, independent overhead for TORA
Congestive collapse
Nearly constant for DSDV due to periodic updates
Routing Overhead (Bytes)
DSR more expensive than AODV except at high mobilitySmaller packets in AODV, may be more expensive in terms of media access, power and network utilization
Path Optimality
DSDV, DSR use routes close to optimalTORA not designed to find shortest pathTORA, AODV use paths close to optimum when node mobility is low
Using Location InformationSeveral solutions for locating wireless devices Location represented as {latitude, longitude,
altitude}/{x,y,z}
Outdoor environment GPS positioning, Cellular Network based
Indoor environment RADAR, Cricket system
Beacon algorithms for ad hoc networks Ad hoc Positioning System (APS)
How to incorporate locations into routing ?
Distance Routing EffectAlgorithm for Mobility (DREAM)
Proactively disseminate location informationDistance Effect :
Closer nodes are updated more frequently “age” field in location update
Mobility Effect : rate of location update controlled by mobility No bandwidth wastage for no movement
Routing policy If no entry for destination in table, flood Otherwise forward data to m neighbors in the
direction of destination
Location Aided Routing (LAR)
On Demand protocol; used restricted flooding for locating destination 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 Scheme 1
Source calculates the “expected zone”, defines a “request zone” in the request packet and initiates route discoveryNode I receiving the route request forwards the request if it falls inside the “request zone”, otherwise discards itWhen destination receives the request, replies with a route reply including current location, time and average speedSize of request zone is large at low and high node speeds
LAR Scheme 2
Source calculates the distance Dists to destination (xd, yd) and initiates route discovery with both parametersNode 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 requestNon zero δ increases probability of route discovery
Zone Routing Protocol (ZRP)Proactive/reactive protocols have scalability issues for large networks Tables updates Flooding aspect
Zone routing Zone (hop based) defined for each node Interior nodes, peripheral nodes Proactive topology maintenance within a
zone (IARP) Reactive bordercast within zones (IERP)
Summary
Introduced ad hoc networks and multi- hop relaying in wireless environmentMobility imposes considerable challenge in routing Rapidly dynamic topology Conventional routing protocols not designed
to withstand such rapid changesProactive vs. Reactive protocolsPresented the tip of an iceberg; literature is filled with routing protocols, performance studies etc.