AdHoc Routing

download AdHoc Routing

of 48

Transcript of AdHoc Routing

  • 8/2/2019 AdHoc Routing

    1/48

    1

    Module I

    Routing in mobile ad hoc networks

    Prof. JP Hubaux

    Mobile Networks

    http://mobnet.epfl.ch

  • 8/2/2019 AdHoc Routing

    2/48

    2

    The classical solution for mobile networks

    2nd generation (GSM, IS-41,) and 3rdgeneration (UMTS,)deployed soon

    Huge, expensive fixed infrastructure

    License for a share of the spectrum

    Operational responsibility: network operators (telcos, ISPs)

  • 8/2/2019 AdHoc Routing

    3/48

    3

    The new paradigm: ad hoc networks

    Terminal and node merge

    Everything is potentially mobile Initial applications: communication in the battlefield (Packet

    Radio Networks, in the 70s)

    The network is self-organizedwhen it is run by the usersthemselves

    Similar trend at the application layer: peer-to-peer(e.g., Napster Gnutella)

  • 8/2/2019 AdHoc Routing

    4/48

    4

    Application examples of ad hoc networks

    Sensor networks

    Hybrid cellular / ad hoc networks (multi-hop cellularnetworks)

    Cars

    Assisted driving (adaptive cruise control,)

    Collision avoidance

    Optimization of traffic flows

    Crisis networks (e.g., rescue operations after majordisaster)

    Military networks

  • 8/2/2019 AdHoc Routing

    5/48

    5

    Upper bound for the throughput of ad hocnetworks

    If we have:

    - identical randomly located nodes

    - each capable of transmitting bits/s

    Then the throughput ( ) obtainable by each node

    for a destination is

    ( )log

    n

    W

    n

    randomly chosenW

    nn n

    Ref: P. Gupta, P. Kumar, The Capacity of Wireless Networks

    IEEE Transactions on Information Theory, March 2000

  • 8/2/2019 AdHoc Routing

    6/48

    6

    Intuition behind the upper bound

    N nodes (users)

    O(N) users O(N) users

    Cut set ~ N

    O(N) transmissions from left to right

    over

    O( ) transmission links

    mean

    O( ) capacity per attempted transmission

    N

    1N

    Ways to improve scalability:

    Directional antennas

    Locality of the traffic

    Hybrid system

  • 8/2/2019 AdHoc Routing

    7/48

    7

    Routing in ad hoc networks

    Peculiarities

    Node mobilityHigh rate of link failure Traditional routing approaches are not well suited

    Assumptions

    Multihop communication

    Symmetric links (in most cases)Omnidirectional antennas (in most cases)All nodes have equal capabilities and responsibilities

    Figures of merit

    Latency of route discoveryOverhead (bandwidth, energy, processing power)

    Security

    Current status of research:

    Many, many proposalsOptimal solution depends on deployment scenario: mobility

    patterns, radio model, traffic characteristics,

  • 8/2/2019 AdHoc Routing

    8/48

    8

    Brief reminder : Link-state protocols

    Example: OSPF

    May consume a lot of resources to update the routes

    Techniques to alleviate the problem : limit thepropagation of information

    Does not seem to be well suited to cope with mobility

  • 8/2/2019 AdHoc Routing

    9/48

    9

    Distance vector routing (1/2)

    0 1 5

    1 0 1 3

    5 1 0 7

    3 7 0

    A

    B

    D

    C

    1

    3

    1

    5 7

    A

    B

    C

    D

    A B C D

    1 0 1 3

    Distance

    vector

    Distance

    vector of B

    2 1 2 4

    + Distance from A to B =

    Cost to dest.

    via B

    Take the min

    0 1 2,B 4,B

    (1 row stored in each node)

  • 8/2/2019 AdHoc Routing

    10/48

    10

    Distance vector routing (2/2)

    Even if the updates are asynchronous, the routingtables converge

    The algorithm is often called Bellman-Ford

    Problem: undesirable behaviour when links go upand down (e.g., count to infinity problem)

  • 8/2/2019 AdHoc Routing

    11/48

    11

    Routing protocols for wireless ad hoc networks

    Response time,

    bandwidthEnergy

    Mobile ad hoc networks Sensor networks

    Proactive

    protocols

    Reactive

    protocols

    Destination-Sequenced

    Distance-Vector (DSDV)

    Optimized Link-

    State Routing

    (OLSR)

    Ad Hoc On-Demand

    Distance-Vector

    (AODV)

    Dynamic

    Source

    Routing

    (DSR)

    Geography-

    based routing

    Cluster-based

    (or hierarchical)

    routing

    Geodesic

    packetforwarding

  • 8/2/2019 AdHoc Routing

    12/48

    12

    Dynamic source routing (DSR)

    Reactive routing protocol

    2 phases, operating both on demand:

    Route discovery Used only when source S attempts to to send a packet to

    destination D Based on flooding of Route Requests (RREQ)

    Route maintenance makes S able to detect, while using a source route to D, if it can

    no longer use its route (because a link along that route no

    longer works)

  • 8/2/2019 AdHoc Routing

    13/48

    13

    DSR: Route discovery (1)

    E G

    M

    H

    R

    F

    A

    B

    C

    I

    DS

    K

    N

    L

    P

    J

    Q

  • 8/2/2019 AdHoc Routing

    14/48

    14

    DSR: Route discovery (2)

    E G

    M

    H

    R

    F

    A

    B

    C

    I

    DS

    K

    N

    L

    P

    J

    Q

    (S)

  • 8/2/2019 AdHoc Routing

    15/48

    15

    DSR: Route discovery (3)

    E G

    M

    H

    R

    F

    A

    B

    C

    I

    DS

    K

    N

    L

    P

    J

    Q

    (S,A)

    (S,E)

  • 8/2/2019 AdHoc Routing

    16/48

    16

    DSR: Route discovery (4)

    E G

    M

    H

    R

    F

    A

    B

    C

    I

    DS

    K

    N

    L

    P

    J

    Q

    (S,E,G)

    (S,B,C)

  • 8/2/2019 AdHoc Routing

    17/48

    17

    DSR: Route discovery (5)

    E G

    M

    H

    R

    F

    A

    B

    C

    I

    DS

    K

    N

    L

    P

    J

    Q

    (S,E,G,J)

    (S,A,F,H)

  • 8/2/2019 AdHoc Routing

    18/48

    18

    DSR: Route discovery (6)

    E G

    M

    H

    R

    F

    A

    B

    C

    I

    DS

    K

    N

    L

    P

    J

    Q(S,A,F,H,K)

  • 8/2/2019 AdHoc Routing

    19/48

    19

    DSR: Route discovery (7)

    E G

    M

    H

    R

    F

    A

    B

    C

    I

    DS

    K

    N

    L

    P

    J

    Q

    (S,A,F,H,K,P)

  • 8/2/2019 AdHoc Routing

    20/48

    20

    DSR: Route discovery (8)

    E G

    M

    H

    R

    F

    A

    B

    C

    I

    DS

    K

    N

    L

    P

    J

    Q

    RREP(S,E,G,J,D)

  • 8/2/2019 AdHoc Routing

    21/48

    21

    DSR: Route Discovery (9)

    Route reply by reversing the route (as illustrated)works only if all the links along the route arebidirectional

    If unidirectional links are allowed, then RREP may

    need a route discovery from D to S Note: IEEE 802.11 assumes that links are

    bidirectional

  • 8/2/2019 AdHoc Routing

    22/48

    22

    DSR: Data delivery

    E G

    M

    H

    R

    F

    A

    B

    C

    I

    DS

    K

    N

    L

    P

    J

    Q

    DATA(S,E,G,J,D)

  • 8/2/2019 AdHoc Routing

    23/48

    23

    DSR: Route maintenance (1)

    E G

    M

    H

    R

    F

    A

    B

    C

    I

    DS

    K

    N

    L

    P

    J

    Q

    DATA(S,E,G,J,D)

    X

  • 8/2/2019 AdHoc Routing

    24/48

    24

    DSR: Route maintenance (2)

    E G

    M

    H

    R

    F

    A

    B

    C

    I

    DS

    K

    N

    L

    P

    J

    Q

    X

    RERR(G-J)

    When receiving the Route Error message (RERR),

    S removes the broken link from its cache.

    It then tries another route stored in its cache; if none,

    it initializes a new route discovery

  • 8/2/2019 AdHoc Routing

    25/48

    25

    DSR: Optimization of route discovery: routecaching

    Principle: each node caches a new route it learns byany means

    ExamplesWhen node S finds route (S, E, G, J, D) to D, it also learns

    route (S, E, G) to node G

    In the same way, node E learns the route to DSame phenomenon when transmitting route replies

    Moreover, routes can be overheard by nodes in theneighbourhood

    However, route caching has its downside: stalecaches can severely hamper the performance of thenetwork

  • 8/2/2019 AdHoc Routing

    26/48

    26

    DSR: Strengths

    Routes are set up and maintained only betweennodes who need to communicate

    Route caching canfurther reduce the effort of routediscovery

    A single route discovery may provide several routesto the destination

  • 8/2/2019 AdHoc Routing

    27/48

    27

    DSR: Weaknesses

    Route requests tend to flood the network andgenerally reach all the nodes of the network

    Because of source routing, the packet header sizegrows with the route lengh

    Risk of many collisions between route requests byneighboring nodes need for random delays beforeforwarding RREQ

    Similar problem for the RREP (Route Reply stormproblem), in case links are not bidirectional

    Note: Location-aided routingmay help reducing thenumber of useless control messages

  • 8/2/2019 AdHoc Routing

    28/48

    28

    Ad Hoc On-Demand Distance VectorRouting (AODV)

    As it is based on source routing, DSR includessource routes in data packet headers

    Large packet headers in DSR risk of poorperformance if the number of hops is high

    AODV uses a route discovery mechanism similar toDSR, but it maintains routing tables at the nodes

    AODV agesthe routes and maintains a hop count

    AODV assumes that all links are bi-directional

    AODV R di ( )

  • 8/2/2019 AdHoc Routing

    29/48

    29

    AODV : Route discovery (1)

    E G

    M

    H

    R

    F

    A

    B

    C

    I

    DS

    K

    N

    L

    P

    J

    Q

    AODV R di (2)

  • 8/2/2019 AdHoc Routing

    30/48

    30

    AODV : Route discovery (2)

    E G

    M

    H

    R

    F

    A

    B

    C

    I

    DS

    K

    N

    L

    P

    J

    Q

    Note: if one of the intermediate nodes (e.g., A)

    knows a route to D, it responds immediately to S: Route Request (RREQ)

    AODV R di (3)

  • 8/2/2019 AdHoc Routing

    31/48

    31

    AODV : Route discovery (3)

    E G

    M

    H

    R

    F

    A

    B

    C

    I

    DS

    K

    N

    L

    P

    J

    Q

    : represents a link on the reverse path

    AODV R t di (4)

  • 8/2/2019 AdHoc Routing

    32/48

    32

    AODV : Route discovery (4)

    E G

    M

    H

    R

    F

    A

    B

    C

    I

    DS

    K

    N

    L

    P

    J

    Q

    AODV R t di (5)

  • 8/2/2019 AdHoc Routing

    33/48

    33

    AODV : Route discovery (5)

    E G

    M

    H

    R

    F

    A

    B

    C

    I

    DS

    K

    N

    L

    P

    J

    Q

    AODV R t di (6)

  • 8/2/2019 AdHoc Routing

    34/48

    34

    AODV : Route discovery (6)

    M

    D

    K

    L

    P

    J

    E G

    H

    R

    F

    A

    B

    C

    I

    S

    N

    Q

    AODV R t di (7)

  • 8/2/2019 AdHoc Routing

    35/48

    35

    AODV : Route discovery (7)

    M

    D

    K

    L

    P

    J

    E G

    H

    R

    F

    A

    B

    C

    I

    S

    N

    Q

  • 8/2/2019 AdHoc Routing

    36/48

    36

    AODV : Route replyand setup of the forwardpath

    M

    D

    K

    L

    P

    J

    E G

    H

    R

    F

    A

    B

    C

    I

    S

    N

    Q

    : Link over which the RREP is transmitted

    : Forward path

    Route reply in AODV

  • 8/2/2019 AdHoc Routing

    37/48

    37

    Route reply in AODV

    In case it knows a path more recent than the onepreviously known to sender S, an intermediate nodemay also send a route reply (RREP)

    The freshness of a path is assessed by means of

    destination sequence numbers Both reverse and forward paths are purged at the

    expiration of appropriately chosen timeout intervals

    AODV : Data delivery

  • 8/2/2019 AdHoc Routing

    38/48

    38

    AODV : Data delivery

    M

    D

    K

    L

    P

    J

    E G

    H

    R

    F

    A

    B

    C

    I

    S

    N

    Q

    Data

    The route is not included in the packet header

    AODV : Route maintenance (1)

  • 8/2/2019 AdHoc Routing

    39/48

    39

    AODV : Route maintenance (1)

    M

    D

    K

    L

    P

    J

    E G

    H

    R

    F

    A

    B

    C

    I

    S

    N

    Q

    Data

    X

    AODV : Route maintenance (2)

  • 8/2/2019 AdHoc Routing

    40/48

    40

    AODV : Route maintenance (2)

    M

    D

    K

    L

    P

    J

    E G

    H

    R

    F

    A

    B

    C

    I

    S

    N

    Q

    X

    RERR(G-J)

    When receiving the Route Error message (RERR),

    S removes the broken link from its cache.

    It then initializes a new route discovery.

    AODV: Destination sequence numbers

  • 8/2/2019 AdHoc Routing

    41/48

    41

    AODV: Destination sequence numbers

    If the destination responds to RREP, it places itscurrent sequence number in the packet

    If an intermediatenode responds, it places its recordof the destinations sequence number in the packet

    Purpose of sequence numbers:

    Avoid using stale information about routes

    Avoid loops (no source routing!)

    AODV : Avoiding the usage of stale routing

  • 8/2/2019 AdHoc Routing

    42/48

    42

    AODV : Avoiding the usage of stale routingtables

    S DA

    B

    DSN(D) = 5

    : Forward path

    S

    D

    A

    B

    DSN(D) = 5

    DSN(D) = 8

    1.2.

    S

    D

    A

    B

    DSN(D) = 5

    DSN(D) = 8

    3.

    RREQ

    S

    D

    A

    B

    DSN(D) = 5

    DSN(D) = 8

    RREP

    4.

    AODV : Avoiding loops

  • 8/2/2019 AdHoc Routing

    43/48

    43

    AODV : Avoiding loops

    A B S D

    C

    : Forward path

    Assume there is a route between A and D; link S-D breaks; assume A is not aware of this, e.g. because

    RERR sent by S is lost

    Assume now S wants to send to D. It performs a RREQ, which can be received by A via path S-C-A

    Node A will reply since it knows a route to D via node B

    This would result in a loop (S-C-A-B-S) The presence of sequence numbers will let S discover that the routing information from A is outdated

    Principle: when S discovers that link S-D is broken, it increments its local value of DSN(D). In this way,

    the new local value will be greater than the one stored by A.

    X

    AODV (unicast) : Conclusion

  • 8/2/2019 AdHoc Routing

    44/48

    44

    AODV (unicast) : Conclusion

    Nodes maintain routing information only for routesthat are in active use

    Unused routes expire even when the topology doesnot change

    Each node maintains at most one next-hop perdestination

    Many comparisons with DSR (via simulation) havebeen performed no clear conclusion so far

    Geodesic Packet Forwarding

  • 8/2/2019 AdHoc Routing

    45/48

    45

    Geodesic Packet Forwarding

    L. Blazevic, S. Giordano, J.-Y. Le Boudec (IP4)

    AP -geographical anchor pointAGPF (Anchored Geodesic Packet Forwarding) - sourcerouting with anchors

    S

    AP1

    D

    AP2

    S has anchored path {AP1,AP2}from S: packets are forwarded in direction of AP1from A: packets are forwarded in direction of AP2from B: packets are forwarded in direction of Ds position

    from X : use of Terminode Local Routing (TLR)

    A

    B

    X

    TLR area of X

    Other (Swiss) proposals

  • 8/2/2019 AdHoc Routing

    46/48

    46

    Other (Swiss) proposals

    Last Encounter Routing H. Dubois-Ferrire, M. Grossglauser, M. Vetterli (EPFL, IP1 & 7)

    Principle: Nodes exchange information about their previousencounters

    No explicit location service, no transmission overhead to toupdate the state

    Ongoing work: prediction, based on declared mobility

    Face routing

    F. Kuhn, R. Wattenhofer, A. Zollinger (ETHZ, IP9)

    Principle: exploit the geometric properties of the connectivitygraph

    Worst-case optimal

    Conclusion on routing

  • 8/2/2019 AdHoc Routing

    47/48

    47

    Conclusion on routing

    DSR and AODV are the mainstream proposals

    Both have been extensively studied (by simulation)

    No clear superiority of one wrt the other

    Scalability is still an open issue

    Other very promising proposals

    References

  • 8/2/2019 AdHoc Routing

    48/48

    48

    References

    Ch. Perkins: Ad Hoc Networking, Addison Wesley,2001

    www.mics.org: IP1, IP4, IP7 and IP9