1 / 20

Erasure-Coding based Routing for Opportunistic Networks

Erasure-Coding based Routing for Opportunistic Networks . Giorgos Papastergiou Department of Electrical and Computer Engineering, Democritus University of Thrace, Xanthi, Greece. What is an erasure code?. Given a message of k blocks (symbols) , recode to n blocks (symbols) where n>k,

faxon
Download Presentation

Erasure-Coding based Routing for Opportunistic Networks

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Erasure-Coding based Routing for Opportunistic Networks Giorgos Papastergiou Department of Electrical and Computer Engineering, Democritus University of Thrace, Xanthi, Greece

  2. What is an erasure code? • Given a message of k blocks (symbols) , recode to n blocks (symbols) where n>k, • Optimal: reconstruct message given any k unique blocks • Suboptimal: reconstruct message using (1+e)*k unique blocks • Code Rate r = k/n , [0; 1] • Overhead is 1/r

  3. What are they used for? • Improving reliability of unicast, multicast and broadcast protocols and applications • Real-time media streaming applications • Reliable multicast transport protocols (e.g., ALC) • Reliable multimedia multicasting • P2P networks • Reliable large-scale distributed storage systems • Unreliable transmissions in wireless network environments • Signals from deep-space satellites (link-layer)

  4. Packet-level FEC (common case) Encoder: • Input: k Source Symbols (units of data) of length E • Output: n Encoding Packets of length E • Repair Symbols and Source Symbols Decoder: • Input: (1+e)*k unique Encoding Packets of length E • Output: k Source Symbols

  5. Reed-Solomon Codes • Minimum Distance Separable (MDS) code Adv: • RS codes are optimal Dis: • k and n values are limited (usually n = 256) • for larger values of n and k RS experience very long encoding / decoding times

  6. Long Density Parity Check codes • Large block FEC codes • they can efficiently deal with a large number of source symbols • Many of them have patent issues • Some LDPC codes are open research questions • LDPC-Staircase and LDPC-Triangle Adv: operate efficiently on source blocks with a size of several tens of thousands of source symbols Dis: Sub-optimality

  7. Erasure-Coding Based Routing for Opportunistic Networks Challenge: Contact dynamics are not know in advance • Most current approaches are based on some kind of data replication over multiple paths • The authors propose a method of erasure coding the message and distribute the generated code-blocks over a large number of relays, • instead of sending a full copy of the message over a relay

  8. Erasure coding based forwarding (ec) • Input: a message of size M and a replication factor r • Output: M*r/b equal sized code blocks of size b • Decoding: any (1+e)*M/b code blocks can be used to reconstruct the message • Code rate = 1/r • Algorithm: the generated code blocks are equally split among the first kr relays

  9. Comparison with Simple Replication (srep) • In srep with a replication factor r the source sends r identical copies over r relays • for the same number of generated bytes (rM) • ecuses a factor of k more relays • and each relay carries a factor of 1/k less data • Destination requires 1/r of the code blocks • When k =1 echas the same effect as srep

  10. Example (1/2) M = 1000 Bytes , r = 4, b = 100 Bytes, k =2 ec: generates 40 code blocks that will be transmitted to 8 relays and each relay will carry 5 code blocks (i.e., 500 bytes) srep: 4 relays and each relay will carry 1000 bytes

  11. Example (2/2) In srep the destination needs a contact with one relay In ecthe destination needs a contact with k relays

  12. Benefits of ec • If the number of low-delay relays are larger than k, ecwill deliver the message with a lower delay than simple replication • Fundamental Question: use r relays and wait for one to succeed or use r*k relays and wait for k to succeed? • Main observation: if k is large, the delay distribution converges to a constant

  13. Performance of ec When k is much larger than r, • the delay distribution when using echas low variance and therefore it has the lowest worst case delay than srep • for lower percentiles, the erasure-coding based approach has higher delays. • not very small delay cases • the delays observed with ec towards the higher percentiles are much lower than srep. • Very robust to bad performance of individual delays

  14. An interesting point not investigated • The authors of ec assume that in each contact all messages are received successfully by the relay node • ec will much perform better if we assume erasure channels among nodes • E.g., if we assume for simplicity that k =1 and that each relay delivers correct only part of its data then • ec requires statistically less data for complete message reception

  15. A research direction • in case of erasure channels, an erasure coding based routing scheme that • has historic statistic information about the PER experienced on each link • and historic statistic information about contacts frequencies of • could split the generated code blocks accordingly to achieve lower delays

  16. DS-TP and Erasure Coding • Define the optimal Source Block Size • the number of encoding packets that belong to the same source block (LDPC codes) • Trade-off between computation complexity, aggregation delay and resistance to burst losses • Handle missing segments • Hybrid FEC/ARQ similar to link level ones • Adapt code rate using feedback from the receiver • How should we set FEC overhead adaptively? Statistics?

  17. Two approaches for Hybrid FEQ/ARQ • 1st: EC layer below Transport Layer • if EC receives less than k packets it cannot decode all source data packets • the transport above handles missing packets • 2nd: Integrate EC and Transport layers • Transport layer monitors the EC layer

  18. Current work • Implementation of erasure coding below LTP • Two open source LDPC implementations • LDPC-Staircase and LDPC-Triangle • Control Source Block size by adjusting LTP aggregation block size / delay • LTP data packets are the input source packets of the LDPC decoder • Fixed Code Rate

  19. Distributed DS-TP (1/2) • An approach similar to ec for k=1 • Use DS-TP above DTN routing to exploit multiple communication paths • Exploit contact graph information to split generated code blocks to intermediate relays • additionally, this process can take into account historic statistics about PER experienced on each link • Adjust code rate based on feedback received from intermediate nodes or destination

  20. Distributed DS-TP (2/2) • Each relay node which receives k encoding packets can construct the bundle and accept custody transfer and then forwards again the same encoding packets • If a relay node receives less than k encoding packets just forwards them • Many nodes towards the destination can accept custody transfer for the same bundle

More Related