Routing in Wireless Ad Hoc Networks

Embed Size (px)

Citation preview

  • 7/27/2019 Routing in Wireless Ad Hoc Networks

    1/37

    1

    Routing in WirelessAd Hoc Networks

    3

    MANETs

    Nodes are computing and communicationdevices, e.g laptops, PDAs, mobile phones,even sensors

    Nodes organize and maintain the networkby themselves

    A node is both a host and a router IP is used at the network layer First and foremost issue: routing

    4

    Problems with Routing

    1.Self-organizing networks Need for distributed algorithms

    2.Topology changes dynamically Mobile nodes (joining in or leaving) Unannounced loss of network connectivity due

    to the time-varying channel nature

    3. Link failure / repair Network partitions Loop formation during temporary node failures

  • 7/27/2019 Routing in Wireless Ad Hoc Networks

    2/37

    2

    5

    Problems with Routing

    4. Asymmetric links: links may be unidirectional

    5. Limited bandwidth Protocols using flooding create high traffic

    and control overhead

    8. New performance criteria

    Number of hops (delay) Available Bandwidth Route stability despite mobility Energy consumption

    6

    Routing Protocols for MANETs

    Find/maintain a route provided itexists

    Another problem is to ensure that aroute exists, e.g., through power control

    [Ramanathan00,Wattwnhofer00]

    Assume that nodes are willing tocooperate

    7

    Topology based routing Proactive approach, e.g., DSDV, OLSR Reactive approach, e.g., DSR, AODV Hybrid approach, e.g., Cluster, ZRP

    Routing Protocols for MANETs

    Position based routing Location Services: e.g., DREAM, Quorum-

    based, GLS, Home zone etc.

    Forwarding Strategy: e.g., Greedy, GPSR,RDF, Hierarchical

  • 7/27/2019 Routing in Wireless Ad Hoc Networks

    3/37

    3

    8

    The Proactive Approach

    Based on distance vector and link-statemechanisms

    Attempts to maintain consistent, up-to-daterouting information from each node to everyother node in the network

    Respond to changes by propagating updatesthroughout the network

    Good for connection-less traffic where youmay send traffic to any node at any time

    9

    The Reactive Approach

    Routes are only created when desired by thesource node

    Route discovery protocol Route discovery ends either when a route is

    discovered or all possible communication

    paths have been examined

    Once a route is established, its maintained bysome sort of route maintenance protocol

    10

    Trade-off

    Reactive more suitable for a mobileenvironment with limited bandwidth

    Proactive preferred when time constraintsare important

    ProactiveApproach

    ReactiveApproach

    Latency Low High

    Overhead High Low

  • 7/27/2019 Routing in Wireless Ad Hoc Networks

    4/37

    4

    11

    Proactive Protocols

    DV for fixed networks, DSDV forwireless networks

    12

    Distance Vector Routing

    Route discovery algorithm used by RIP(DVR does not address routemaintanance)

    Based on Bellman-Ford or Ford-Fulkersonalgorithms but DVR does not require ana-priori knowledge of the network

    13

    Distance Vector Routing (1)

    Each node has a routing table where distanceto all reachable destinations are recorded

    Each node is responsible for keeping trackand informing its neighbors of its distanceto each destination (main idea at the basisof distance vector-based protocols)

    A router computes its distance to a destinationbased on its neighbors distance to thedestination

  • 7/27/2019 Routing in Wireless Ad Hoc Networks

    5/37

    5

    14

    Distance Vector Routing (2)

    A node must know its own ID and the cost of its links toeach neighbor (the cost can be expressed in terms ofnumber of nodes, bandwidth, latency, )

    1. Initially, each node sets the cost of the link to itself to0 and to any other node to infinity

    2. A node broadcasts its routing table3. A node, upon receiving information from neighbors,

    computes minimum cost-path toward destination andmakes changes to its routing table if needed

    4. Either periodically or every time a node updates itstable, it broadcasts it to neighbors.

    The algorithm converges by iteration

    15

    Distance Vector Routing (3)

    At node i, the minimum cost path betweennodes i andj is computed as

    where:

    is the path cost at time step n

    is the cost of the link between iandits neighbor k

    Dn+1

    (i, j) =min Dn(i, j),min

    kd(i,k)+D

    n(k, j){ }

    16

    Distance Vector Routing forAddress D

    R

    12

    3

    45

    172

    35

    5

    41

    Link cost

    Link number

  • 7/27/2019 Routing in Wireless Ad Hoc Networks

    6/37

    6

    17

    Distance Vector Routing for

    Address D

    R

    12

    3

    4

    5

    97

    62

    11829

    81

    172

    35

    5

    41

    Cost fromneighbor todestination D

    18

    Distance Vector Routing forAddress D

    R

    12

    3

    4

    5

    98

    99

    97

    123 70

    Cost for Rto get to Dvia this link

    Minimum

    cost route

    17

    2

    35

    541

    97

    62

    118 29

    81

    19

    Distance Vector Routing forAddress D

    R

    70

    70

    7070

    70

    Cost fromR to D12

    3

    4

    5

    17

    2

    35

    5

    41

  • 7/27/2019 Routing in Wireless Ad Hoc Networks

    7/37

    7

    20

    Problems with Distance Vector

    1. Does not scale well with the number of nodesin the network (overhead O(n2))

    2. Slow convergence to the lowest cost route3. Slow recovery time if there are link failures,

    hence routing problems during disruptiontimes

    Count-to-infinity: Router loops may takeplace when degradation of a link cost occurs

    Solved only when the cost of thealternative route including a loop reachesthe cost of the degraded link

    21

    Count-to-Infinity: An Example

    A

    B

    A

    B1

    2

    3

    2 A

    B5

    4 A

    B7

    6

    Node D becomes unreachableD

    Cost of the link A-B and B-D equal to 1 =>cost of the path between A and D equal to 2

    Route cost to D

    21

    It occurs only if A sends its update before B

    22

    DSDV (1):Destination SequencedDistance Vector Routing

    Proposed by Perkins [94], based on Bellman-Ford routing mechanism

    Each node maintains a routing table thatrecords all possible destinations

    Each table entry contains1. Destination node ID (i.e., IP address)2.Next hop3.Number of hops to the destination4.A sequence number (SN) is used to

    distinguish old vs. new routes and avoidloops

  • 7/27/2019 Routing in Wireless Ad Hoc Networks

    8/37

    8

    23

    DSDV (2)

    Routing tables are periodically transmitted tomaintain table consistency

    A full dump record reports on the entirerouting table. Lots of traffic, since eachtable is probably larger than the networkprotocol data unit

    Incrementalupdates provide information onchanges performed since last full dump

    A new route broadcast contains The address of D The number of hops to reach D The SN of the route SN unique to this broadcast

    24

    DSDV (3)

    Every change is broadcast to the neighbors(incremental update)

    Upon reception of a route update:If the node doesnt have such information, it adds

    an entry to its table

    Otherwise, it checks the SN and updates the tableonly in case of fresher information

    The route with most recent SN is used If two routes have the same SN, the route with the

    smaller metric (== shorter route) is used

    When a link fails, an metric is used and the route SNis increased

    25

    MH4

    ForwardingTable

    MH5

    MH1

    MH8

    MH7

  • 7/27/2019 Routing in Wireless Ad Hoc Networks

    9/37

    9

    26

    34

    5

    62

    1

    8

    7

    050-83MH6MH8

    128-72MH6MH7

    076-61MH6MH6

    392-52MH6MH5

    710-40MH4MH4

    564-32MH2MH3

    128-21MH2MH2

    516-12MH2MH1

    SNCostNextDest

    MH4Forwarding

    Table

    27

    MH6

    MH3MH4

    MH5

    MH2

    MH1

    MH8

    MH7

    MH1 moves

    MH6

    MH1

    28

    MH3MH4

    MH5

    MH6

    MH2

    MH1

    MH8

    MH7

    New MH4

    ForwardingTable

  • 7/27/2019 Routing in Wireless Ad Hoc Networks

    10/37

    10

    29

    New MH4Forwarding

    Table

    050-83MH6MH8

    128-72MH6MH7

    076-61MH6MH6

    392-52MH6MH5

    710-40MH4MH4

    564-32MH2MH3

    128-21MH2MH2

    518-13MH6MH1

    SNCostNextDest

    34

    5

    62

    1

    8

    7

    30

    DSDV (3)

    Every change is communicated to the neighbors(incremental update)

    Upon reception of a route update:If the node doesnt have such information, it adds

    an entry to its table

    Otherwise, it checks on the SN and updates thetable only in case of fresher information

    The route with most recent SN is used If two routes have the same SN, the route with the

    smaller metric (== shorter route) is used

    When a link fails, an metric is used and theroute SN is increased

    31

    Count-to-Infinity: An Example

    A

    B

    A

    B1

    2

    3

    2 A

    B5

    4 A

    B7

    6

    Node D becomes unreachableD

    Cost of the link A-B and B-D equal to 1 =>cost of the path between A and D equal to 2

    Route cost to D

    21

    SN of the route notified by A is older than theone of the route declared invalid by B -> As infois not considered. B sends an update to A, and Atoo declares the route to D (through B) as invalid

    NewSN

  • 7/27/2019 Routing in Wireless Ad Hoc Networks

    11/37

    11

    32

    Detecting Link Failure

    Detection: If data is flowing over a link, failure of

    link layer to deliver a packet can be usedto assume link failure

    If a node does not hear for a long time(how long?) from its neighbor

    33

    DSDV (4)

    Nodes also keep track of the settling time ofroutes, i.e., the average time that routes to adestination will fluctuate before the routewith the best metric is received

    A broadcast of a routing table will be delayed bythe length of the settling time

    This avoids fluctuations in the table data andreduces the update packets

    35

    Advantages

    Has moderate memory requirementsGuarantees loop-free paths (thanks toSNs)Simple update coordination protocolDisadvantages

    Provides only a single path between each given S/D pairRequires selection of the periodic update interval,settling time and number of update intervals that shouldexpire before a route is considered stale: difficult toestimate

    Update overhead: if full dump updates are used, overheadgrows as O(n2)

    DSDV: Advantages andDisadvantages

  • 7/27/2019 Routing in Wireless Ad Hoc Networks

    12/37

    12

    36

    OLSR

    Optimized Link State Routing[Jacquet00] OLSR is based on the link state routing

    approach

    Traditional approach in Link State Routing: Every node generates control packets to

    advertise its links status (i.e., its one-hopneighbors and the links cost)

    Such information is propagated over thewhole network (flooding)

    37

    OLSROptimized Link State Routing[Jacquet00]

    However, in OLSR: Sources build routes proactively by using

    MultiPoint Relay nodes (MPRs)

    Only MPRs need to generate and forward linkstate updates

    OLSR thus leads to efficient flooding ofcontrol messages in the network: superfluousbroadcast packet retransmission as well asthe size of the link state packets are reduced

    38

    MPRs and Their Selection

    Every node in the network selects its own MPR(s) A node selects as its multipoint relays those one-hop

    neighbors that allows the node to reach its two-hopneighbors through symmetric links

    Nodes exchange neighbor lists to know their 2-hopneighbors and link type, and choose the MPRs

    No. of MPRs per node should be minimized

  • 7/27/2019 Routing in Wireless Ad Hoc Networks

    13/37

    13

    39

    MPRs: Example (1)

    Hp: all links are bi-directional

    A

    B F

    C

    D

    E H

    GK

    J

    E

    Nodes C and E are multipoint relays of node A

    40

    MPRs: Example (2)

    C and E forward information received from A Node E is a multipoint relay also for node H If the link H-J were unidirectional, then K would also be

    selected as MPR by H

    Note that C selects A as MPR, while E selects A and H

    A

    B F

    C

    D

    E H

    GK

    J

    Node that has broadcast state information from A

    41

    MPRs: Example (3)

  • 7/27/2019 Routing in Wireless Ad Hoc Networks

    14/37

    14

    42

    Controlled Flooding of Link State Updates

    24 retransmissionsto deliver a messageup to 3 hops

    11 retransmissions todeliver a message upto 3 hops

    43

    Controlled Flooding of Link State Updates

    OLSR is particularly suited for densenetworks

    In sparse networks, every neighborbecomes a multipoint relay, then OLSR

    reduces to pure link state protocol

    44

    How It Works: Hellos

    Node N broadcasts Hello messages every Hellointerval to its 1-hop neighbors:

    Hello message contains list of known 1-hopneighbors and

    the link status (symmetric, asymmetric, or MPR) ofits 1-hop neighbors

  • 7/27/2019 Routing in Wireless Ad Hoc Networks

    15/37

    15

    45

    How It Works: Neighbor Table

    Node N builds a Neighbor Table that includes all its 1-hopneighbors and, for each of them, all 2-hop neighbors thatcan be reached through it. The link types are also recorded.

    N selects its MPR nodes among its 1-hop neighbors suchthat it can reach all nodes that are 2-hops away throughsymmetric links

    MPR election requires symmetric link to node NOnce N selects a neighbor, say X, as MPR, N tags its link

    with X as MPR and, through the next Hello, N will notifyX about it

    X maintains the list of nodes that selected itself as MPR

    46

    How It Works: Topology Control

    MPR nodes broadcast Topology Control (TC) messagesevery TC interval to advertize link states, specifically

    TC message contains list of 1-hop neighbors whohave selected this node as an MPR

    Only MPR nodes can forward TC messages (butnote that still all network nodes receive them) ->

    more efficient flooding

    TC messages are used to build the Topology Table(and for routing table calculation afterwards)

    47

    Some Observations

    For (any) control messages it is not requireda reliable transmission since they areperiodically sent

    Each control message inlcludes a sequencenumber so that old messages with outdatedinformation can be detected and discarded

  • 7/27/2019 Routing in Wireless Ad Hoc Networks

    16/37

    16

    48

    How It Works: Topology Table

    Each node maintains a topology table where theinformation obtained from the received TCmessages is recorded

    Each entry includes: Address of a potential destination (i.e., the

    MPR selector in the received TC)

    Address of the last hop to that destination(i.e., the MPR that generated that TC)

    MPR selectors set sequence number

    49

    How It Works: Routing Table

    Each node maintains a Routing Table where routes toany potential destination are recorded

    The Routing Table is built based on the Topology Tableand the Neighbor Table

    Each entry includes: Address of the potential destinationAddress of the next hop to reach that destination

    Estimated distance to the destination Note that the Routing Table is re-calculated at every

    change in either the Topology Table or the NeighborTable

    50

    Building the Routing Table (1)

    Initialization:

    Set h to 1; Use the Neighbor Table: take the 1-hop

    neighbors (whose link status is not uni-directional) as destinations (i.e., h =1 ) andcreate the corresponding entry in theRouting Table;

    set their distance to h = 1.

  • 7/27/2019 Routing in Wireless Ad Hoc Networks

    17/37

    17

    51

    Building the Routing Table

    Iterative procedure:

    1) For each entry in the Topology Table:(i) if its destination does not correspond to anydestination in the Routing Table and(ii) if its last hop (i.e., MPR) is the destination of anentry in the Routing Table with distance equal to h, thenadd a new route entry in the routing table where:

    dest = dest of the entry in the Topology Table; next-hop = next-hop of the route entry whose dest is

    the last-hop in the Topology Table;

    Set distance = h+1;3) Set h = h+1 and go to step 1 (till all entries in the

    Topology Table have been processed)

    52

    Some Observations (1)

    Hello interval impact on overhead vs. protocolreactivity:

    Recall: Hellos are sent by all nodes to senseneighbors (but they are not rebroadcast)

    TC interval impact on overhead vs. protocolreactivity:

    Recall: TC messages are sent only by MPR nodesto advertize link state and allow routing tablecalculation

    53

    Some Observations (2)

    Route are all composed of MPRs only (except sourceand destination): MPRs form a network backbone thatis in charge of routing all traffic

    MPR nodes selection impact: How much more traffic must MPR nodes handle?

    Higher load leads to higher energy consumption

    Node mobility impact Consequences? Particularly for MPR nodes

  • 7/27/2019 Routing in Wireless Ad Hoc Networks

    18/37

    18

    54

    Reactive Protocols

    55

    DSRDynamicSource Routing [Johnson96]

    Entirely on demand: No periodic messages oradvertisements at any layer

    Dynamic: it maintains a soft state, i.e., all state isdiscovered when needed and can be easily re-discovered if needed after a failure without impactingthe protocol functioning

    Source Routing: the source specifies in the header ofeach data packet the entire route, not only the nexthop (no need for routing tables)

    56

    Assumptions

    The network is fairly small (up to 200 nodes,i.e., network diameter of 10-15 nodes)

    Each node maintains a cache containing allsource routes of which it is aware

    Routes in the cache are continuouslyupdated as they are learned

    Several routes can be cached to the samedestination

    Either bi- or uni-directional links can be used

  • 7/27/2019 Routing in Wireless Ad Hoc Networks

    19/37

    19

    57

    DSR: Two Phases

    The protocol consists of two phases:

    Route discovery: Started by S when S needs to send data to D

    and doesnt have any route to D in cache

    Route Maintenance: While using a route to D, S can detect if

    the route is not longer valid and, in case, sendan error message

    Upon route failure, S may use another route(if it knows it) or start a new route discovery

    61

    L

    H

    J

    D

    C

    G

    S

    N

    K

    BA

    Route Discovery

    RREQ

    Initiator ID

    Initiator seq#

    Dest ID

    Partial route

    TTL

    Initiator seq#

    Dest ID

    Time to go

    RREQ Table

    If no reply by the time to go, S sends a new RREQtill a max no. of attempts have been made

    Unique ID

    QoS cost

    62

    L

    H

    J

    D

    C

    G

    S

    N

    K

    B

    A

    Route Discovery

    RREQrecently

    seen?

    DiscardRREQ

    yes

    no

    myAddrin partialroute?

    yes

    no

    store RREQID in list

    decrease TTL andbroadcast packet

    myAddr=target?

    no

    S

    S

    S,C

    S,LS,C

    S,CS,L

    S,L

    knownroute?

    append myAddrto partial route

    no

  • 7/27/2019 Routing in Wireless Ad Hoc Networks

    20/37

    20

    63

    L

    H

    J

    D

    C

    G

    S

    N

    K

    B

    A

    Route discovery succeeded !

    Route Discovery

    S,L,J

    S,C,G

    S,C,H

    66

    L

    H

    J

    D

    C

    G

    S

    N

    K

    B

    A

    RREP

    Route Reply

    S,L,J,D

    S,C,G,KS,C,G,K

    S,L,J,D

    S,L,J,D

    S,L,J,D

    Place route record andcost into RREP

    (cost depends ontarget QoS metric)

    RREP sent by reversingtheroute followed by RREQ. If

    unidirectional, use any cachedroute to S. If none, send anRREQ and piggyback RREP

    myAddr=target?

    yes

    67

    L

    H

    J

    D

    C

    G

    S

    N

    K

    B

    A

    DATA

    Data Delivery

    Write route inpacket header

    and send packetto next hop

    S,L,J,D

    S,L,J,D

    S,L,J,D

    S,L,J,D

  • 7/27/2019 Routing in Wireless Ad Hoc Networks

    21/37

    21

    68

    L

    H

    J

    D

    C

    G

    S

    N

    K

    B

    A

    RREP

    Route Caching

    S,L,J,D

    S,L,J,D

    S,L,J,D

    Place cached route andcost into RREP

    (cost depends ontarget QoS metric)

    RREP sent by reversingtheroute followed by RREQ. If

    unidirectional, use any cachedroute to S. If none, send anRREQ and piggyback RREP

    knownroute?

    yes

    69

    Route Caching

    Advantages of route caching Speeds up routing Reduces propagation of route requests

    S caches the route to D contained in the RREP For each D, more than one route can be

    cached, thus S can perform traffic routingover several possible routes

    70

    Route Maintenance

    Along a source route, each node transmitting apacket is responsible for correct transmissionconfirmation

    An ACK is needed for confirmationMAC or link-layer ACKs can be usedOverhearing next node forwarding the packet

    (passive ACK: A hears B sending to C)

    Use of DSR-ACKs: the node transmitting the packetcan require an ACK (which may follow a differentroute back)

  • 7/27/2019 Routing in Wireless Ad Hoc Networks

    22/37

    22

    72

    Route Maintenance

    S

    BC

    G

    D

    H

    F

    Mark link to nexthop as broken

    ReceivedACK?

    yes

    Max#ACKreqexceeded

    ?

    Remove fromcache all routes

    including that link

    Send an RERRto everysource that sent a packetto be routed over that link

    no Route Cache (S)D: S,B,C,F,DD: S,B,C,G,H,DC: S,B,C

    RERR

    RERR

    73

    Route Maintenance

    Nodes overhearing RERR remove fromtheir cache all routes including the brokenlink

    S uses another route from its cache, if ithas any; otherwise it starts a new route

    discovery The transport layer (e.g., TCP) should take

    care of data retransmissions

    74

    Optimizations

    Promiscuous mode: listening to arbitrary routes inuse (A hears B sending to C)

    Replace with shorter routes / Store new routesBut promiscuous mode takes energy

    Packet salvagingUpon link failureIf intermediate node has another route to D, it

    replaces the original source

    However, no double salvage is allowed !!!

  • 7/27/2019 Routing in Wireless Ad Hoc Networks

    23/37

    23

    75

    Packet Salvaging: An Example (1)

    Initial route: S (source) B C F D (destination) However, S and C have an alternative route to D in

    their cache (S-B-Z-F-D and C-I-G-H-D, respectively)

    At a certain time, F moves out of the network

    SB

    C

    G

    F D

    HL

    I

    M

    I

    L

    Z

    76

    Packet Salvaging: An Example (2)

    Unfortunately, S receives no RERR, from either C orZ, then S keeps sending its packets toward C

    C can salvage the packets by replacing the originalroute (S-B-C-F-D) in the packet with the new route(C-I-G-H-D)

    SB

    C

    G

    D

    HL

    I

    M

    I

    L

    Z

    77

    Packet Salvaging: An Example (3)

    Now, assume the G-H link fails, then if G couldsave the packet again, a loop could be formed.Indeed (i) G does not know that the packet wasoriginated by S (it only sees C as originator), (ii)S could reply with the route S-B-Z-F-D

    SB

    C

    G

    F D

    HL

    I

    M

    I

    REQREQ

    REQ

    REQ

    REQ

    REPREP

    REP

    REP

    REP

    L

    Z

  • 7/27/2019 Routing in Wireless Ad Hoc Networks

    24/37

    24

    79

    " Enrirely reactive" Soft state and support of unidirectional links" Source routing

    " No need for routing decisions by intermediate nodes" Nodes can learn new routes from relayed packets" Guarantee that routes are loop-free

    " Caching" Reduced route discovery overhead" One route discovery may yield many routes to D, dueto intermediate nodes replying from local caches

    DSR: Advantages

    80

    " RREQ flooding may be huge" Possible collisions between RREQs propagated byneighboring nodes

    " Contention between RREPs come back due to use oflocal caches (RREP Stormproblem)

    " Packet delays/jitters due to on-demand routing" Headers may become too long with respect todata payloads -> suitable for small networks

    " Cached routes may become invalid; stale cachescan adversely affect performance

    DSR: Disadvantages

    81

    AODVAd-Hoc On Demand Distance Vector [Perkins99]

    Builds routes on demand Attempts to improve DSR by using routing

    tables at the nodes so that packets do nothave to include routes

    Avoids loop formation by using sequencenumbers

    Similar procedures of route discovery androute maintainance as in DSR

  • 7/27/2019 Routing in Wireless Ad Hoc Networks

    25/37

    25

    82

    Assumptions

    Each node maintains:

    A broadcast ID to be used for RREQs Broadcast ID is incremented for each RREQ Combination of the node IP address & broadcast ID

    uniquely identifies an RREQ

    A (small) routing table with an entry for eachuseful destination node

    83

    Routing Table

    A routing table entry includes:

    Destination IP address Sequence number assigned to the path by the

    destination (Destination Sequence Number, DSN)

    Hop count Next hop List of nodes from which RREP msgs may be receivedand from which RREQ msgs are received Active route timeout (lifetime) Routing flag indicating whether the path is active or not

    85

    L

    H

    J

    D

    C

    G

    S

    N

    K

    B

    A

    Route Discovery

    RREQ

    Initiator ID

    Dest. Sequ. #

    Dest ID

    Broadcast ID

    A new RREQ by node S for a destination isassigned a higher DSN (for the inverse routewith S as a destination)

    TTL

    QoS cost

  • 7/27/2019 Routing in Wireless Ad Hoc Networks

    26/37

    26

    86

    L

    H

    J

    D

    C

    G

    S

    N

    K

    B

    A

    Route Discovery

    knownroute with

    higherDSN?

    SendRREP

    yes

    no no

    sets up a reversepathpointing to

    the source

    TTL-- thenre-broadcast

    RREQ

    RREQalreadyseen?

    no

    DiscardRREQ

    yes

    store RREQ

    myAddr=target?

    87

    L

    H

    J

    D

    C

    G

    S

    N

    K

    BA

    Route discovery succeeded !

    Route Discovery

    89

    L

    H

    JC

    G

    D

    S

    N

    K

    B

    A

    RREP

    Route Reply

    Place route record andcost into RREP

    (cost depends ontarget QoS metric).

    DSN is increased

    RREP sent onreverse path

    myAddr=target?

    yes

    Nodes on the route set a forward pathto D as they receive the RREP

  • 7/27/2019 Routing in Wireless Ad Hoc Networks

    27/37

    27

    90

    L

    H

    J

    D

    C

    G

    S

    N

    K

    B

    A

    DATA

    Data Delivery

    Send data packet tonext hop using routing

    table entry(no route in packet

    header)

    91

    Remarks

    D replies to the first arrived RREQ thusAODV favors the least congested route(that is not always the shortest one)

    As OLSR, it only supports symmetric links!RREP forwarded along the route followed bythe RREQ

    92

    Timeouts

    A routing table entry maintaining areverse path is purged after a timeoutinterval long enough to let the RREPcome back to the source

    A routing table entry is purged if theroute has not been used for anactive_route_timeoutinterval

  • 7/27/2019 Routing in Wireless Ad Hoc Networks

    28/37

    28

    93

    Route Maintenance

    HELLO messages are periodically exchangedamong neighboring nodes to maintain localconnectivity

    Absence of Hello messages is used as anindication of link failure

    Hello messages can also contain the ID of theneighbors from which a node has heard

    A node can also use MAC acknowledgementsor packet retransmissions done by a neighborto check on the next hop reachability

    95

    Link Failure

    S

    BC

    F

    D

    G

    E

    Route Table (C)D: EDSN: 5Active ...

    RERR

    RERR

    C sends RERRto upstreamneighbors

    yes

    C detectslink failure

    C increases DSNand includes it in

    the RERR

    Route Table (C)D: EDSN: 6Inactive ...

    RREQ

    RREQ

    Route Table (S)D: BDSN: 5Active ...

    Route Table (S)D: BDSN: 6Inactive ...

    RREQ

    RREQ

    RREQ

    Route DSN:5Route DSN:6Route DSN:7

    96

    Link Failure: A Remark

    Loop formation avoided thanks toDSN !

    S B C

    DE

    F RREQ

    RERR

    RREQ

    RREQ

    C-F-E-S-B-C

  • 7/27/2019 Routing in Wireless Ad Hoc Networks

    29/37

    29

    97

    Advantages

    No need to include route in the packet headerNodes maintain routing tables containing entries onlyfor routes in use

    DSNs allow nodes to avoid invalid/broken routesDSNs prevent formation of loops

    Disadvantages

    " Unused routes expire even if topology is unchanged" Multiple routes for each pair S-D are not supported" Need for symmetrical links

    Advantages & Disadvantages

    98

    Routing Performance

    Several performance comparisons[Broch98Mobicom,Johansson99Mobicom,Das00Infocom,Important03Infocom]

    99

    QoS Routing

    Associate each link with a cost E.g., transmission power, transmitters residual

    energy, traffic load, available bandwidth

    RREQs used to collect the cost (or minimumcost) of all traversed links along a route

    S

    BC

    F

    D

    G

    E

    S-B TxPw

    RREQ

    + B-C TxPw + C-E TxPw + E-D TxPw

    + F-G TxPw+ G-D TxPw+ C-F TxPw

  • 7/27/2019 Routing in Wireless Ad Hoc Networks

    30/37

    30

    100

    QoS Routing

    Destination responds with a Route Reply to aRREQ if

    it is the first RREQ with a given (current)sequence number, or

    the route cost is smaller than all otherroutes cost received with the currentsequence number

    Possible modifications to routing protocols,such as DSR, to make them QoS-aware

    101

    QoS Routing

    Optimal routing decision requires constantupdates on link state information (e.g., delay,bandwidth, loss rate, link stability) resultingin large overhead

    Dynamic nature of ad hoc networks makesmaintaining the precise link state information

    very hard Even after resource reservation, QoS still

    cannot be guaranteed due to the frequenttopology changes

    Routing in VANETs

  • 7/27/2019 Routing in Wireless Ad Hoc Networks

    31/37

    31

    Which Protocol Is Suitable?

    Proactive and reactive protocols may not be suitable: Proactive protocols: routing tables might often

    contain stale information, due to the highly-dynamicnetwork topology

    Reactive protocols typically imply high latency dueto the route discovery phase

    Positioning systems can be exploited to efficientlyroute traffic in VANETs geographic routing

    Geographic Routing (1)

    Position-based schemes: nodes determine theirgeographical position through GPS; using Hello

    messages a node can also acquire the position of its

    neighboring nodes

    It is assumed that the destination coordinates areknown (easy if its an RSU) and they are included in the

    data packet

    If the destination is a vehicle, then its position canvary over time and message delivery may fail

    Geographic Routing (2)

    Next hops are determined based on their position ormovement direction with respect to the intendeddestination

    Self-election is possible, or the current forwardercan select the next one

    In the basic greedy geographic technique, the packet isforwarded at each step to the neighbor whose position isclosest to destination

    Greedy forwarding, however, is susceptible to problemof dead-ends

  • 7/27/2019 Routing in Wireless Ad Hoc Networks

    32/37

    32

    106

    Dead-end with Geographic Routing

    Both Es neighbors (i.e., C and D) arefurther away from the destination thanthe sender (E)

    Adopt the right-hand rule to solve theproblem: E-C-F-B (same as to get out ofa maze)

    A similar approach is used in sensornetworks; however in VANETs, several

    factors can help:

    the spatial-constrained topology(roads)

    the delay-tolerant nature of thetraffic, along with the fact that

    nodes move and can get closer to

    the destination themselves

    Mobility Models

    109

    Taxonomy of Mobility Models

  • 7/27/2019 Routing in Wireless Ad Hoc Networks

    33/37

    33

    110

    Random Walk

    Equal probability ofhopping in anydirection

    111

    Random Waypoint[Johnson and Maltz96]

    Node at Xn: Picks next waypoint Xn+1 uniformly in area Picks speed Vn uniformly in [vmin,vmax] Moves to Xn+1 with speed Vn Pause atXn+1 for Tpause

    Xn

    Xn+1

    112

    Problems with RWP (1)

    Distributions of node speed, position,distances, etc change with time

    Node speed:100 users average

    1 user

    Time (s)

    Speed(m/s)

  • 7/27/2019 Routing in Wireless Ad Hoc Networks

    34/37

    34

    113

    Problems with RWP (2)

    Distributions of node speed, position,distances, etc change with time

    Distribution of node position:

    Time = 0 sec Time = 2000 sec

    114

    Non-uniform Node Distribution (3)

    115

    Why does it matter ?

    A.In the mobile case, thenodes are more oftentowards the center,distance between nodes isshorter, performance isbetter

    The comparison is flawed.Should we use for staticcase the same distributionof node location as randomwaypoint. Is there such adistribution to compareagainst?

    Random waypoint

    Static

    A (true) example: Compare impactof mobility on a protocol:

    Experimenter places nodesuniformly for static case,according to random waypointfor mobile case

    Finds that static is better Q.Find the bug !

  • 7/27/2019 Routing in Wireless Ad Hoc Networks

    35/37

    35

    116

    Issues with Mobility Models

    Is there a stable distribution of thesimulation state (time-stationarydistribution), reached if we run thesimulation long enough ?

    If so: How long is long enough ? If it is too long, is there a way to get to

    the stable distribution without running longsimulations (perfect simulation)?

    117

    Random Direction[Nain05]

    Select independently fromone another:

    1. (uniform) direction and speed2. travel time At borders: wrap-around or

    reflection

    118

    Random Direction Properties

    If nodes are uniformly distributed in thearea at t=0

    Then, for any t>0, the nodes will beuniformly distributed in the area, providedthey move independently of each other

  • 7/27/2019 Routing in Wireless Ad Hoc Networks

    36/37

    36

    129

    References on MANETs & Routing

    Tutorial by Nitin Vaidya: http://www.crhc.uiuc.edu/~nhv/

    IETF MANET Working Group http://www.ietf.org/html.charters/

    manet-charter.html

    http://protean.itd.nrl.navy.mil/manet/manet_home.html

    130

    References on Routing

    C.E. Perkins, P. Bhagwat, Highly dynamic DestinationSequenced Distance Vector routing (DSDV) for mobilecomputers, Sigcomm 1994

    Z.J. Haas, M.R. Pearlman, The Zone Routing Protocol(ZRP) for ad hoc networks, , 1999

    B. Karp, H. T. Kung. GPSR: Greedy perimeter statelessrouting for wireless networks, MobiCom 2000

    S. Basagni, I. Chlamtac, V.R. Syrotiuk, B.A. Woodward,A distance routing effect algorithm for mobility(DREAM), MobiCom1998

    N. Guba, T. Camp, GLS: a location service for an ad hocnetwork,Grace Hopper Celebration2002

    131

    References on Routing

    [Johnson96] D.B. Johnson, D.A. Maltz, "Dynamicsource routing in ad hoc wireless networks", MobileComputing, vol. 353, 1996

    [Perkins99] C.E. Perkins, E.M. Royer, "Ad hoc on-demand distance vector routing," 2nd IEEE Workshopon Mobile Computing Systems and Applications, 1999

    J. Broch, D.A. Maltz, D.B. Johnson et al., Aperformance comparison of multi-hop wireless ad hocnetwork routing protocols, MobiCom 1998

    AODV Linux freeware implementations: http://moment.cs.ucsb.edu/AODV/aodv.html#Implementations

  • 7/27/2019 Routing in Wireless Ad Hoc Networks

    37/37

    132

    S.R. Das, C.E. Perkins, E.M. Royer, PerformanceComparison of two on-demand routing protocols for adhoc networks, Infocom 2000

    P. Johansson, T. Larsson, N. Hedman et al., Scenario-based performance analysis of routing protocols formobile ad-hoc networks, MobiCom 1999

    F. Bai, N. Sadagopan, A. Helmy, " IMPORTANT: Aframework to systematically analyze the Impact ofMobility on Performance of RouTing protocols for Adhoc NeTworks," Infocom2003

    Two papers by A. Helmy et al. at ICC 2004

    References on Routing