Post on 17-Dec-2015
CSE 581 Internet TechnologyCSE 581 Internet Technology
Ad-hoc Routing SchemesAd-hoc Routing Schemes
Presented byPresented byJason LiuJason Liu
AgendaAgenda
A highly adaptive distributed routing A highly adaptive distributed routing algorithm for mobile wireless networks algorithm for mobile wireless networks by Vincent D. Park and M .Scott Corsonby Vincent D. Park and M .Scott Corson
Dynamic Source Routing in Ad Hoc Dynamic Source Routing in Ad Hoc Wireless Networks by David B. Johnson Wireless Networks by David B. Johnson and David A. Maltzand David A. Maltz
Performance Comparison of Two On-Performance Comparison of Two On-demand Routing Protocols for Ad Hoc demand Routing Protocols for Ad Hoc Networks by Das, Perkins and RoyerNetworks by Das, Perkins and Royer
A Performance Comparison of Multi-Hop A Performance Comparison of Multi-Hop Wireless Ad Hoc Network Routing Wireless Ad Hoc Network Routing Protocols by Broch, Maltz, Johnson, Hu, Protocols by Broch, Maltz, Johnson, Hu, and Jetchevaand Jetcheva
DefinitionDefinition
An ad hoc network -- a collection of An ad hoc network -- a collection of wireless mobile nodes dynamically wireless mobile nodes dynamically forming a temporary network forming a temporary network without the use of any existing without the use of any existing network infrastructure or network infrastructure or centralized administrationcentralized administration
A Highly Adaptive Distributed Routing A Highly Adaptive Distributed Routing Algorithm for Mobile Wireless NetworksAlgorithm for Mobile Wireless NetworksIntroductionIntroduction
Problems of routing in a mobile Problems of routing in a mobile wirelesswireless Nodes move about arbitrarilyNodes move about arbitrarily Potentially rapid and unpredictable Potentially rapid and unpredictable
changing topology changing topology Wireless links inherently have Wireless links inherently have
significantly lower capacity than significantly lower capacity than hardwired linkshardwired links
More prone to congestionMore prone to congestion
TORA -- TORA -- OverviewOverview
Minimizes reaction to topological Minimizes reaction to topological changeschanges
Decouples the generation of control Decouples the generation of control message propagation from the rate message propagation from the rate of topological changesof topological changes
Source initiatedSource initiated
TORATORA
The protocol can be separated into The protocol can be separated into three functions:three functions: Creating routesCreating routes
establishment of a sequence of establishment of a sequence of directed links leading from node to directed links leading from node to dest.dest.
Maintaining routesMaintaining routesre-establish routesre-establish routes
Erasing routesErasing routesupon detection of network partition, all upon detection of network partition, all links must be undirected to erase links must be undirected to erase invalid routesinvalid routes
TORATORA
It accomplishes three functions It accomplishes three functions through use of control packets: through use of control packets: Query (QRY) – used for creating Query (QRY) – used for creating
routesroutes Update (UPD) – for both creating and Update (UPD) – for both creating and
maintaining routesmaintaining routes Clear (CLR) – for erasing routesClear (CLR) – for erasing routes
TORATORABasic OperationsBasic Operations Creating RoutesCreating Routes
Requires use of the QRY and UPD Requires use of the QRY and UPD packetspackets
QRY packet – dest-ID (did)QRY packet – dest-ID (did) UPD – did and height of node I UPD – did and height of node I
broadcasting the packetbroadcasting the packet Each node maintains a route-required Each node maintains a route-required
(RR) flag, initially un-set(RR) flag, initially un-set Node with no directed links and an un-Node with no directed links and an un-
set RR flag requires route to dest, it set RR flag requires route to dest, it broadcasts a QRY packet, set RR flagbroadcasts a QRY packet, set RR flag
TORA – TORA – Creating RoutingCreating Routing
Route-required flag set
TORA – TORA – Maintaining routesMaintaining routes Maintaining Routes performed only for nodes Maintaining Routes performed only for nodes
height > 0height > 0
TORA – TORA – Erasing RoutingErasing Routing
Following detection of a partition, Following detection of a partition, node I sets its height and the height node I sets its height and the height of neighbor to NULL of neighbor to NULL
Update all entries in link-state arrayUpdate all entries in link-state array Broadcast a CLR packetBroadcast a CLR packet
TORA – TORA – Erasing RoutingErasing Routing
Link (D,H) marked as failing
PerformancePerformance
TORA is able to localize its reaction TORA is able to localize its reaction to topological changes to topological changes
Best suited for relatively dense Best suited for relatively dense networks, only several nearby networks, only several nearby nodes involved in a reactionnodes involved in a reaction
Effect of localization – increased of Effect of localization – increased of scalabilityscalability
ConclusionsConclusions
Proposed a highly adaptive distributed Proposed a highly adaptive distributed routing algorithm that well-suited in routing algorithm that well-suited in mobile wireless networksmobile wireless networks
Decouple the generation of far-reaching Decouple the generation of far-reaching control message propagation from the control message propagation from the dynamics of the network topologydynamics of the network topology
Possible enhancement would be to Possible enhancement would be to periodically propagate refresh packets periodically propagate refresh packets outwards from the dest. outwards from the dest.
The refresh process permits intro of far-The refresh process permits intro of far-reaching control message propagation reaching control message propagation into the protocol independent of the into the protocol independent of the network topologynetwork topology
Dynamic Source RoutingDynamic Source RoutingIntroductionIntroduction Oftentimes, mobile users want to Oftentimes, mobile users want to
communicatecommunicate No fixed infrastructure availableNo fixed infrastructure available Not econo practical or physically Not econo practical or physically
possiblepossible Expediency of the situation not permit Expediency of the situation not permit
installationinstallation
Introduction – contIntroduction – cont
This paper describes the design and This paper describes the design and performance of DSR for ad hoc networks performance of DSR for ad hoc networks between hosts that want to communicatebetween hosts that want to communicate
Source Routing – the sender of a packet Source Routing – the sender of a packet determines the complete sequence of determines the complete sequence of nodes to forward the packetnodes to forward the packet Designed for use in wireless ad hoc Designed for use in wireless ad hoc
networksnetworks No periodic router admnts No periodic router admnts Dynamically determines route based on Dynamically determines route based on
cached info and on the results of a route cached info and on the results of a route discoverydiscovery
Benefits of DSR over conven Benefits of DSR over conven routing protocolrouting protocol No periodic routing adtsment msg, No periodic routing adtsment msg,
reducing network bandwidth reducing network bandwidth overheadoverhead
Conserve mobile host battery Conserve mobile host battery powerpower Not sending the ad and not receiving Not sending the ad and not receiving
themthem Not require transmissions between Not require transmissions between
hosts to work bidiectionallyhosts to work bidiectionally Able to adapt quickly to dynamic Able to adapt quickly to dynamic
topology changes, no protocol topology changes, no protocol overheadoverhead
Assumptions (1)Assumptions (1)
All hosts within ad hoc network are All hosts within ad hoc network are willing to participate fullywilling to participate fully Each host participating be willing to Each host participating be willing to
forward packets for other hostsforward packets for other hosts Diameter of ad hoc network be Diameter of ad hoc network be
small but often greater than onesmall but often greater than one Hosts do not continuously move so Hosts do not continuously move so
rapidly rapidly Hosts enable a promiscuous Hosts enable a promiscuous
receive modereceive mode
Assumptions (2)Assumptions (2)
A B C
Diameter of the ad hoc depicted in Figure 1 is two
DSR OperationDSR OperationOverviewOverview
To send a packet to another host, the sender To send a packet to another host, the sender constructs a source route in the packets constructs a source route in the packets headerheader
Each mobile host participating in the ad hoc Each mobile host participating in the ad hoc network maintains a route cache in which it network maintains a route cache in which it caches source routescaches source routes
If no route found, the sender may attempt to If no route found, the sender may attempt to discover one using the route discovery discover one using the route discovery protocol.protocol.
Host monitors the correct operation of a Host monitors the correct operation of a route in use, we call route maintenanceroute in use, we call route maintenance
DSR -- DSR -- Route DiscoveryRoute Discovery
Allows any host to dynamically Allows any host to dynamically discover a route to any other host discover a route to any other host in the ad hoc network.in the ad hoc network.
A host initiating a route discovery A host initiating a route discovery broadcasts a route request packetbroadcasts a route request packet
If successful, initiating host If successful, initiating host receives a route reply packetreceives a route reply packet
Each route request packet contains Each route request packet contains a route record, request id a route record, request id
DSR -- DSR -- Route MaintenanceRoute Maintenance
Conven routing protocol integrate Conven routing protocol integrate rd with rm by continuously sending rd with rm by continuously sending periodic routing updatesperiodic routing updates
Using rd, no periodic msg Using rd, no periodic msg Rm monitors the opr of the route Rm monitors the opr of the route
and informs the sender of any and informs the sender of any routing errorrouting error
Utilize a hop-by-hop ack to provide Utilize a hop-by-hop ack to provide early detection and retransmission early detection and retransmission of lost or corrupted packetsof lost or corrupted packets
DSR -- DSR -- Route OptimizationsRoute Optimizations
A number of optimizations areA number of optimizations are
possible to basic opr of routepossible to basic opr of route
discovery and route maintenancediscovery and route maintenance
DSR -- DSR -- Route OptimizationsRoute Optimizations
Full use of the Route CacheFull use of the Route Cache
A B C D
F
E
Figure 2 An example of ad hoc network illustrating use of the route cache
DSR -- DSR -- Route OptimizationsRoute Optimizations
Piggybacking on Route DiscoveriesPiggybacking on Route Discoveries Sender doesn’t have a route caches to Sender doesn’t have a route caches to
the dest host, initiate a separate route the dest host, initiate a separate route discoverdiscover
The delay for rd and total # of packets The delay for rd and total # of packets transmitted reduced by allowing data transmitted reduced by allowing data to be piggybacked on route req packto be piggybacked on route req pack
Use piggyback when sending route Use piggyback when sending route reply or route error packreply or route error pack
DSR -- DSR -- Route OptimizationsRoute Optimizations
Reflecting Shorter RoutesReflecting Shorter Routes Two hosts comm using cached routesTwo hosts comm using cached routes Desirable to use shorter routes if Desirable to use shorter routes if
hosts move suffi closer togetherhosts move suffi closer together Basic route maint accomplish thisBasic route maint accomplish this Improvemnt – hosts opr in Improvemnt – hosts opr in
promiscuous receive modepromiscuous receive mode
B C D
Figure 3 Mobile host D notices that the route can be shortened
Performance EvaluationPerformance Evaluation
Optimal number of transmissions is the number of hops for the data packet needed to get from the sender to intended receiver
ConclusionConclusion
Presented a protocol for routing Presented a protocol for routing packets in an ad hoc networkpackets in an ad hoc network
Use dynamic source routingUse dynamic source routing Adapts to routing changes quicklyAdapts to routing changes quickly Requires little or no overhead during Requires little or no overhead during
hosts move less frequentlyhosts move less frequently Performs well over host density, and Performs well over host density, and
movement ratesmovement rates Overhead 1% of total packets Overhead 1% of total packets
transmitted of 24 mobile hoststransmitted of 24 mobile hosts Route length within a factor 1.02 of Route length within a factor 1.02 of
optimaloptimal
Performance comparison of two on-Performance comparison of two on-demand routing protocolsdemand routing protocols GoalGoal
Carry out a systematic performance Carry out a systematic performance study of two dynamic routing protocolstudy of two dynamic routing protocol
Common characteristicsCommon characteristics
DSR and AODV DSR and AODV Both initiate routing activities on an Both initiate routing activities on an
“on-demand” basis“on-demand” basis Both reactive vs traditional proactiveBoth reactive vs traditional proactive Reduce routing loadReduce routing load
DifferencesDifferences DSR DSR
Uses source routingUses source routing Doesn’t rely on timer-based activitiesDoesn’t rely on timer-based activities
AODVAODV Uses table-driven routing framework Uses table-driven routing framework
and dest sequence numberand dest sequence number rely on timer-based activitiesrely on timer-based activities
DSRDSR
Uses source routingUses source routing Sender knows complete hop-by-hop Sender knows complete hop-by-hop
route to destroute to dest Routes stores in route cache, carried Routes stores in route cache, carried
in packet headerin packet header Uses route discoveryUses route discovery
Flooding network with route req Flooding network with route req pack(RREQ) and reply with (RREP)pack(RREQ) and reply with (RREP)
Link broken notified using route error Link broken notified using route error (RERR) packet(RERR) packet
Source removes link from cacheSource removes link from cache New route discovery initiatedNew route discovery initiated
AODVAODV
Uses routing table to propagate a Uses routing table to propagate a RREP back to sourceRREP back to source
Uses sequence number to Uses sequence number to determine freshness of routing info determine freshness of routing info and prevent routing loopand prevent routing loop
Timer-based states in each node Timer-based states in each node regarding routing table entriesregarding routing table entries
Nodes notified (RERR) when next Nodes notified (RERR) when next hop link brokenhop link broken
Critique of DSR and AODV (1)Critique of DSR and AODV (1)
1.1. DSR has access to a greater DSR has access to a greater amount of routing info than AODVamount of routing info than AODV DSR uses single req-reply cycleDSR uses single req-reply cycle Promiscuous listening give access toPromiscuous listening give access to
great amount of infogreat amount of info In absence of above two, AODV In absence of above two, AODV
gather only limited amount of routing gather only limited amount of routing infoinfo
AODV reply on route discovery flood AODV reply on route discovery flood more oftenmore often
Critique of DSR and AODV (2)Critique of DSR and AODV (2)
2.2. DSR replies to all requests reaching DSR replies to all requests reaching dest from a single req cycle. dest from a single req cycle. Could save route discovery floodCould save route discovery flood
AODV – dest replies only once to AODV – dest replies only once to req arriving first and ignore the restreq arriving first and ignore the rest The routing table maintain at most The routing table maintain at most
one entry per destone entry per dest
Critique of DSR and AODV (3)Critique of DSR and AODV (3)
3.3. Current spec of DSR not expire Current spec of DSR not expire stale routes in the cache faced stale routes in the cache faced multi choicesmulti choices Stale entries are deleted by route Stale entries are deleted by route
error packetserror packets
AODV more conservative AODV more conservative When faced with two choices, the When faced with two choices, the
fresher route is always chosen (dest fresher route is always chosen (dest sequence #)sequence #)
If routing table entry not used If routing table entry not used recently, this entry expiredrecently, this entry expired
Critique of DSR and AODV (4)Critique of DSR and AODV (4)
4.4. Route deletion using RERR is Route deletion using RERR is conser in AODVconser in AODV
In DSR, route error backtracks the In DSR, route error backtracks the data pack meets a failed linkdata pack meets a failed link
Performance EvaluationPerformance Evaluation
50 nodes experiments with 10, 40 50 nodes experiments with 10, 40 traffic sourcestraffic sources Packet rate – 4 pack/sec for 10 Packet rate – 4 pack/sec for 10
sourcessources Packet rate – 3 pack/sec for 40 Packet rate – 3 pack/sec for 40
sourcessources DSR and AODV – similar pack frac DSR and AODV – similar pack frac
for 10 or 20 sourcefor 10 or 20 source
AODV outperform DSR with 30 and AODV outperform DSR with 30 and 40 sources40 sources
Performance EvaluationPerformance Evaluation
Performance EvaluationPerformance Evaluation
Performance EvaluationPerformance EvaluationPacket delivery fractions for 50 node model
Performance with increasing offered load with 100 nodes Performance with increasing offered load with 100 nodes and 10 sourcesand 10 sources
DSR
ConclusionsConclusions
DSR outperforms AODV in less DSR outperforms AODV in less “stressful” situations“stressful” situations Smaller # of nodes, lower Smaller # of nodes, lower
load/mobilityload/mobility AODV outperforms DSR in more AODV outperforms DSR in more
stressful situationsstressful situations DSR generates less routing load DSR generates less routing load
than AODVthan AODV
Performance comparison of Multi-hop Performance comparison of Multi-hop Wireless ad hoc network Routing protocolWireless ad hoc network Routing protocol
Provide a realistic quantitative Provide a realistic quantitative analysis comparing the analysis comparing the performance of a variety of multi-performance of a variety of multi-hop wireless ad hoc network hop wireless ad hoc network routing protocolrouting protocol
Present results showing the relative Present results showing the relative performance of four ad hoc routing performance of four ad hoc routing protocols: DSDV [18], TORA [14,15], protocols: DSDV [18], TORA [14,15], DSR [9,10,2], and AODV [17]DSR [9,10,2], and AODV [17]
Ad hoc routing protocols review (1)Ad hoc routing protocols review (1)
Destination-Sequenced Distance Vector (DSDV)Destination-Sequenced Distance Vector (DSDV) A hop-by-hop distance vector routing A hop-by-hop distance vector routing
protocol protocol requires each node to periodically broadcast requires each node to periodically broadcast
routing updatesrouting updates Guarantees loop-freedom over traditional Guarantees loop-freedom over traditional
protocolsprotocols Each node maintains a routing table listing Each node maintains a routing table listing
the “next hop”the “next hop” DSDV tags each route with a sequence DSDV tags each route with a sequence
number number
Ad hoc routing protocols review (2)Ad hoc routing protocols review (2)
Temporally-ordered routing algorithm (TORA)Temporally-ordered routing algorithm (TORA) A distributed protocol based on “link-reversal”A distributed protocol based on “link-reversal” Discover routes on-demand, provide multi-route to Discover routes on-demand, provide multi-route to
dest, minimize comm overhead by localizing reaction dest, minimize comm overhead by localizing reaction to topological changesto topological changes
Dynamic Source Routing (DSR)Dynamic Source Routing (DSR) Uses source routing rather than hop-by-hop routingUses source routing rather than hop-by-hop routing Packet header carries ordered list of nodes to passPacket header carries ordered list of nodes to pass Intermediate nodes don’t need to maintain up-to-date Intermediate nodes don’t need to maintain up-to-date
routing info routing info Eliminates need for periodic route advertisement and Eliminates need for periodic route advertisement and
neighbor detection packetsneighbor detection packets
Ad hoc routing protocols review (3)Ad hoc routing protocols review (3)
Ad hoc on-demand distance vector (AODV)Ad hoc on-demand distance vector (AODV) A combination of both DSR and DSDVA combination of both DSR and DSDV Borrows on-demand mechanism of Route Discovery Borrows on-demand mechanism of Route Discovery
and Route Maintenance from DSRand Route Maintenance from DSR Plus use of hop-by-hop routing, sequence number, Plus use of hop-by-hop routing, sequence number,
and periodic beacons from DSDVand periodic beacons from DSDV
Performance Comparison Summary (1)Performance Comparison Summary (1)
Node mobilityNode mobility
Performance Comparison Summary (2)Performance Comparison Summary (2)
DSR has least overhead, TORA has mostDSR has least overhead, TORA has most
Performance Comparison Summary (3)Performance Comparison Summary (3)Packet Delivery Ratio
Performance Comparison Summary (4)Performance Comparison Summary (4)Routing OverheadRouting Overhead
ConclusionsConclusions These protocols, DSDV, TORA, DSR, and AODV These protocols, DSDV, TORA, DSR, and AODV
covers range of designcovers range of design including periodic advertisements vs. on demand including periodic advertisements vs. on demand
routing discoveryrouting discovery Hop-by-hop routing vs. source routingHop-by-hop routing vs. source routing
DSDV performs predictablyDSDV performs predictably Node mobility rate, movement speed are lowNode mobility rate, movement speed are low
TORA performs worst of routing overheadTORA performs worst of routing overhead DSR performs very good at all mobility rates DSR performs very good at all mobility rates
and movement speedsand movement speeds Use of source routing increase # of routing bytes reqUse of source routing increase # of routing bytes req
AODV performs almost as well as DSR atAODV performs almost as well as DSR at Mobility rates, and movement speedsMobility rates, and movement speeds Accomplishes goal of eliminating source routing Accomplishes goal of eliminating source routing
overheadoverhead