Opportunistic Routing Is Missing Its Opportunities!

Embed Size (px)

Citation preview

  • 7/28/2019 Opportunistic Routing Is Missing Its Opportunities!

    1/33

    Opportunistic Routing Is Missing

    Its Opportunities!

    Sachin Katti & Dina Katabi

    http://web.mit.edu/graphicidentity/symbols/logo.html
  • 7/28/2019 Opportunistic Routing Is Missing Its Opportunities!

    2/33

    Opportunistic Routing

    R1 R2 R3 R4 R5 DS

  • 7/28/2019 Opportunistic Routing Is Missing Its Opportunities!

    3/33

    Opportunistic Routing

    R1 R2 R3 R4 R5 DS

    Opportunistic Routing leverages opportunistic receptions

  • 7/28/2019 Opportunistic Routing Is Missing Its Opportunities!

    4/33

    Opportunistic Routing

    R1 R2 R3 R4 R5 DS

    Opportunistic Routing leverages opportunistic receptions

  • 7/28/2019 Opportunistic Routing Is Missing Its Opportunities!

    5/33

    R1 R2 R3 R4 R5 DS

    But Opportunistic Routing is missing the bulk

    of its opportunities

  • 7/28/2019 Opportunistic Routing Is Missing Its Opportunities!

    6/33

    But Opportunistic Routing is missing the bulk

    of its opportunities

    R1 R2 R3 R4 R5 DS

    Loss Loss Loss

    Longer jumps by partially correct packets, but dropped

    due to packet abstraction

  • 7/28/2019 Opportunistic Routing Is Missing Its Opportunities!

    7/33

    R1 R2 R3 R4 R5 DS

    Leverage longer opportunistic receptions of partially

    correct packets!

    Opportunistic Routing capitalizes on Partial

    Packet Forwarding

  • 7/28/2019 Opportunistic Routing Is Missing Its Opportunities!

    8/33

    Opportunistic Routing capitalizes on Partial

    Packet Forwarding

    R1 R2 R3 R4 R5 DS

    Leverage longer opportunistic receptions of partially

    correct packets!

  • 7/28/2019 Opportunistic Routing Is Missing Its Opportunities!

    9/33

    Partial Packet Forwarding capitalizes on

    Opportunistic Routing

    R1

    R2

    DS

  • 7/28/2019 Opportunistic Routing Is Missing Its Opportunities!

    10/33

    Partial Packet Forwarding capitalizes on

    Opportunistic Routing

    R1

    R2

    DS

    Spatial DiversityRouters are unlikely to have error in the samebyte positions

  • 7/28/2019 Opportunistic Routing Is Missing Its Opportunities!

    11/33

  • 7/28/2019 Opportunistic Routing Is Missing Its Opportunities!

    12/33

    Opportunistic

    Routing

    Partial Packet

    Forwarding

    Synergy

  • 7/28/2019 Opportunistic Routing Is Missing Its Opportunities!

    13/33

    Contributions

    Byte Level Network Coding Harvests synergy

    Provides adaptive error correction

    Provides the right abstraction for the PHY

    and network layers to maximize throughput

  • 7/28/2019 Opportunistic Routing Is Missing Its Opportunities!

    14/33

  • 7/28/2019 Opportunistic Routing Is Missing Its Opportunities!

    15/33

    d k hi h b

  • 7/28/2019 Opportunistic Routing Is Missing Its Opportunities!

    16/33

    How do routers knows which bytes

    are correct?PHY knows how confident it is for every byte it decodes

    11b 12b 13b

    High

    confidence

    Clean Byte Dirty Byte

    Forward clean bytes, throw away the dirty byte

    Low

    confidence

  • 7/28/2019 Opportunistic Routing Is Missing Its Opportunities!

    17/33

    Who should forward what?

    R1

    R2

    D

    Overlap in received correct bytes

    Routers forward duplicates

  • 7/28/2019 Opportunistic Routing Is Missing Its Opportunities!

    18/33

    How to prevent duplicate transmissions?

    R1

    R2

    DS

    Source transmits packets in batches

    P1

    P2

  • 7/28/2019 Opportunistic Routing Is Missing Its Opportunities!

    19/33

    R1

    R2

    DS

    Routers use byte level network coding

    How to prevent duplicate transmissions?

  • 7/28/2019 Opportunistic Routing Is Missing Its Opportunities!

    20/33

    R1

    R2

    D2111

    1111

    b

    b

    11

    21b

    11b

    11

    2121

    1121

    b

    b

    21

    21b

    11b

    21

    Routers create random combinations of clean bytes

    How to prevent duplicate transmissions?

  • 7/28/2019 Opportunistic Routing Is Missing Its Opportunities!

    21/33

    R1

    R2

    D2111

    1111

    b

    b

    11

    11

    Routers create random combinations of clean bytes

    kb2

    kb1

    k

    k

    b

    b

    211

    111

    21

    0k

    b2

    kb1

    kb1212121

    1121

    b

    b

    How to prevent duplicate transmissions?

  • 7/28/2019 Opportunistic Routing Is Missing Its Opportunities!

    22/33

    How to prevent duplicate transmissions?

    R1

    R2

    D

    Routers transmit coded packets to the destination

    2111

    1111

    b

    b

    k

    k

    b

    b

    211

    111

    k

    b1212121

    1121

    b

    b

  • 7/28/2019 Opportunistic Routing Is Missing Its Opportunities!

    23/33

    How to prevent duplicate transmissions?

    R1

    R2

    D

    Destination decodes by solving simple linear equatio

    2111

    1111

    b

    b

    k

    k

    b

    b

    211

    111

    kb1212121

    1121

    b

    b

    2111,bb

    Solve 2

    equations

  • 7/28/2019 Opportunistic Routing Is Missing Its Opportunities!

    24/33

    How to prevent duplicate transmissions?

    R1

    R2

    D

    Destination decodes by solving simple linear equatio

    2111

    1111

    b

    b

    k

    k

    b

    b

    211

    111

    kb1212121

    1121

    b

    b

    kkbb 21 ,

    Solve 2

    equations

  • 7/28/2019 Opportunistic Routing Is Missing Its Opportunities!

    25/33

    How to prevent duplicate transmissions?

    R1

    R2

    D

    Destination decodes by solving simple linear equatio

    2111

    1111

    b

    b

    k

    k

    b

    b

    211

    111

    kb1212121

    1121

    b

    b

    kkbb 21 ,

    Solve 2

    equations

    Byte Level Network Coding prevents spurious

    transmissions without any co-ordination or scheduling

  • 7/28/2019 Opportunistic Routing Is Missing Its Opportunities!

    26/33

    How to represent the code?

    How to efficiently tell the destination the code of each bit?

    Use run length encoding

    Original Packets Coded Packet

  • 7/28/2019 Opportunistic Routing Is Missing Its Opportunities!

    27/33

    How to represent the code?

    How to efficiently tell the destination the code of each bit?

    Use run length encoding

    0

    Original Packets Coded Packet

  • 7/28/2019 Opportunistic Routing Is Missing Its Opportunities!

    28/33

    How to represent the code?

    How to efficiently tell the destination the code of each bit?

    Use run length encoding

    Original Packets Coded Packet

  • 7/28/2019 Opportunistic Routing Is Missing Its Opportunities!

    29/33

    How to represent the code?

    How to efficiently tell the destination the code of each bit?

    Use run length encoding

    0

    Original Packets Coded Packet

  • 7/28/2019 Opportunistic Routing Is Missing Its Opportunities!

    30/33

    How to represent the code?

    How to efficiently tell the destination the code of each bit?

    Use run length encoding

    Run length encoding to represent contiguous runs of

    coded bits with the same code

  • 7/28/2019 Opportunistic Routing Is Missing Its Opportunities!

    31/33

    Clean bytes can be incorrect

    Can be incorrect with

    low probabilityHow does the destination recover from

    these errors?

    11b 12b 13b

    Clean Byte Dirty Byte

    High

    confidence

    Low

    confidence

  • 7/28/2019 Opportunistic Routing Is Missing Its Opportunities!

    32/33

    How to recover from errors?

    Symbol Level Network Coding

    Adaptive Error-Correcting Code

    Ifkbytes are combined to produce n (>k) randomcombinations, destination can correct (n-k)/2 byte errors

    Routers can keep transmitting until destination decodescorrectlyRateless error-correcting code

  • 7/28/2019 Opportunistic Routing Is Missing Its Opportunities!

    33/33

    To conclude

    MIXIT: Harvests synergy between opportunistic routing

    and partial packet forwarding

    Provides the right abstraction for the PHY andnetwork layers to maximize throughput