Routing in Mobile Ad hoc Networks Sumesh J. Philip CSE620 Fall 2004.

45
Routing in Mobile Ad hoc Networks Sumesh J. Philip CSE620 Fall 2004

Transcript of Routing in Mobile Ad hoc Networks Sumesh J. Philip CSE620 Fall 2004.

Routing in Mobile Ad hoc Networks

Sumesh J. PhilipCSE620 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

Operation

J

K

IB

(0, J)

(2, K)

(2, K)

(1, K)

X1110

1

5

10

(, K)

(10, B)

(10, I)

(11, B)

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

DSDV Operation

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

AODV OperationD

S

X

X

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

Creating Routes

C

A B

E

G (DEST)

FH

D

QRY

QRY

QRY UPD

QRY

QRY

UPD

UPD

UPD

UPD UPD

UPD

Route Maintenance

C

A B

E

G (DEST)

FH

D

UPD

X

UPD

UPD

Erasing Invalid 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

Example of Dream

How to determine ?

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

LAR schemes

N

S (xs,ys)

I

J

D(xd,yd)

R = v(t-t0)

N

S (xs,ys)

I

J

Scheme 1 Scheme 2

D(xd,yd)

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)

ZRP example

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.