From Fountain to BATS: Realization of Network Coding

Similar documents
Study of Second-Order Memory Based LT Encoders

The throughput analysis of different IR-HARQ schemes based on fountain codes

Volume 2, Issue 9, September 2014 International Journal of Advance Research in Computer Science and Management Studies

Fountain Codes. Gauri Joshi, Joong Bum Rhim, John Sun, Da Wang. December 8, 2010

Distributed LT Codes

On Efficient Decoding and Design of Sparse Random Linear Network Codes

Reliable Wireless Video Streaming with Digital Fountain Codes

Digital Fountain Codes System Model and Performance over AWGN and Rayleigh Fading Channels

Decoding of LT-Like Codes in the Absence of Degree-One Code Symbols

Soft decoding of Raptor codes over AWGN channels using Probabilistic Graphical Models

IEEE TRANSACTIONS ON COMMUNICATIONS, VOL. 65, NO. 1, JANUARY

Coding Schemes for an Erasure Relay Channel

Adaptive rateless coding under partial information

Punctured vs Rateless Codes for Hybrid ARQ

Digital Television Lecture 5

RAPTOR CODES FOR HYBRID ERROR-ERASURE CHANNELS WITH MEMORY. Yu Cao and Steven D. Blostein

Lec 19 Error and Loss Control I: FEC

Bangalore, December Raptor Codes. Amin Shokrollahi

Random access on graphs: Capture-or tree evaluation

Code Design for Incremental Redundancy Hybrid ARQ

Tornado Codes and Luby Transform Codes

An Efficient Scheme for Reliable Error Correction with Limited Feedback

Rateless Codes for Single-Server Streaming to Diverse Users

Joint work with Dragana Bajović and Dušan Jakovetić. DLR/TUM Workshop, Munich,

High-Efficiency Error Correction for Photon Counting

M.Sc. Thesis. Optimization of the Belief Propagation algorithm for Luby Transform decoding over the Binary Erasure Channel. Marta Alvarez Guede

Basics of Error Correcting Codes

Project. Title. Submitted Sources: {se.park,

Performance Evaluation of Low Density Parity Check codes with Hard and Soft decision Decoding

A Random Network Coding-based ARQ Scheme and Performance Analysis for Wireless Broadcast

OPTIMIZATION OF RATELESS CODED SYSTEMS FOR WIRELESS MULTIMEDIA MULTICAST

Optimized Codes for the Binary Coded Side-Information Problem

Routing versus Network Coding in Erasure Networks with Broadcast and Interference Constraints

Reliable Videos Broadcast with Network Coding and Coordinated Multiple Access Points

THE erasure channel [1] is a good network-layer model for

Packet Permutation PAPR Reduction for OFDM Systems Based on Luby Transform Codes

Capacity-Achieving Rateless Polar Codes

LDPC Communication Project

LDPC Codes for Rank Modulation in Flash Memories

On Coding for Cooperative Data Exchange

Degrees of Freedom of the MIMO X Channel

Iterative Joint Source/Channel Decoding for JPEG2000

University of Southampton Research Repository eprints Soton

Low Complexity Power Allocation in Multiple-antenna Relay Networks

Multicasting over Multiple-Access Networks

Multi-user Space Time Scheduling for Wireless Systems with Multiple Antenna

A Novel Approach for FEC Decoding Based On the BP Algorithm in LTE and Wimax Systems

Delete-and-Conquer: Rateless Coding with Constrained Feedback

INCREMENTAL redundancy (IR) systems with receiver

FOR THE PAST few years, there has been a great amount

ISSN: ISO 9001:2008 Certified International Journal of Engineering and Innovative Technology (IJEIT) Volume 3, Issue 12, June 2014

A Bit of network information theory

Frequency and Power Allocation for Low Complexity Energy Efficient OFDMA Systems with Proportional Rate Constraints

Network Working Group. EPFL M. Watson. Digital Fountain. T. Stockhammer Nomor Research October 2007

CS434/534: Topics in Networked (Networking) Systems

Power Efficiency of LDPC Codes under Hard and Soft Decision QAM Modulated OFDM

Performance Optimization of Hybrid Combination of LDPC and RS Codes Using Image Transmission System Over Fading Channels

How (Information Theoretically) Optimal Are Distributed Decisions?

The Capability of Error Correction for Burst-noise Channels Using Error Estimating Code

Throughput-optimal number of relays in delaybounded multi-hop ALOHA networks

Decoding of Block Turbo Codes

IEEE TRANSACTIONS ON SIGNAL PROCESSING, VOL. 58, NO. 3, MARCH

IEEE JOURNAL ON SELECTED AREAS IN COMMUNICATIONS, VOL. 30, NO. 2, FEBRUARY Decomposed LT Codes for Cooperative Relay Communications

Efficient Multihop Broadcast for Wideband Systems

On Delay Performance Gains From Network Coding

Low Complexity List Successive Cancellation Decoding of Polar Codes

Interference Immune Multi-hop Relaying and Efficient Relay Selection Algorithm for Arbitrarily Large Half-Duplex Gaussian Wireless Networks

Recovering Lost Sensor Data through Compressed Sensing

On the Performance of Cooperative Routing in Wireless Networks

Feedback via Message Passing in Interference Channels

Dual-Mode Decoding of Product Codes with Application to Tape Storage

Wireless Multicasting with Channel Uncertainty

Incremental Redundancy Via Check Splitting

Digital Transmission using SECC Spring 2010 Lecture #7. (n,k,d) Systematic Block Codes. How many parity bits to use?

PHYSICS 140A : STATISTICAL PHYSICS HW ASSIGNMENT #1 SOLUTIONS

WITH the rapid progress of cost-effective and powerful

Short-Length Raptor Codes for Mobile Free-Space Optical Channels

Secure Network Coding for Wiretap Networks of Type II

On the Practicality of Low-Density Parity-Check Codes

Information flow over wireless networks: a deterministic approach

SC-LDPC Codes over the Block-Fading Channel: Robustness to a Synchronisation Offset

Non-memoryless Analog Network Coding in Two-Way Relay Channel

Chapter 3 Convolutional Codes and Trellis Coded Modulation

Single User or Multiple User?

Multitree Decoding and Multitree-Aided LDPC Decoding

Degrees of Freedom of Multi-hop MIMO Broadcast Networks with Delayed CSIT

Adding Integrity Verification Capabilities to the LDPC-Staircase Erasure Correction Codes

MULTILEVEL CODING (MLC) with multistage decoding

Codes AL-FEC pour le canal à effacements : codes LDPC-Staircase et Raptor

p J Data bits P1 P2 P3 P4 P5 P6 Parity bits C2 Fig. 3. p p p p p p C9 p p p P7 P8 P9 Code structure of RC-LDPC codes. the truncated parity blocks, hig

Performance of ALOHA and CSMA in Spatially Distributed Wireless Networks

Variations on the Index Coding Problem: Pliable Index Coding and Caching

On the Practicality of Low-Density Parity-Check Codes

Performance of Limited Feedback Schemes for Downlink OFDMA with Finite Coherence Time

Transport Capacity and Spectral Efficiency of Large Wireless CDMA Ad Hoc Networks

Serial Concatenation of LDPC Codes and Differentially Encoded Modulations. M. Franceschini, G. Ferrari, R. Raheli and A. Curtoni

Background Dirty Paper Coding Codeword Binning Code construction Remaining problems. Information Hiding. Phil Regalia

6. FUNDAMENTALS OF CHANNEL CODER

Short-Blocklength Non-Binary LDPC Codes with Feedback-Dependent Incremental Transmissions

Coding and Modulation

Transcription:

From Fountain to BATS: Realization of Network Coding Shenghao Yang Jan 26, 2015 Shenzhen Shenghao Yang Jan 26, 2015 1 / 35

Outline 1 Outline 2 Single-Hop: Fountain Codes LT Codes Raptor codes: achieving constant complexity 3 Multi-Hop: BATS Codes Random Linear Network Coding BATS Codes Shenghao Yang Jan 26, 2015 2 / 35

File Transmission through Packet Networks Network features Many wireless links Loss due to interference/fading Limited feedbacks Node capability constraint Multiple destinations... b 1 b 2 b K s t 1 t 2 Shenghao Yang Jan 26, 2015 3 / 35

Single-hop Network s t The network link has a packet loss rate 0.2. Capacity: 1 0.2 = 0.8. Capacity achieving approaches: retransmission forward error correction Shenghao Yang Jan 26, 2015 4 / 35

Single-hop Network s t The network link has a packet loss rate 0.2. Capacity: 1 0.2 = 0.8. Capacity achieving approaches: retransmission fountain codes Shenghao Yang Jan 26, 2015 4 / 35

Multi-hop Networks s r 1 r 2 r n 1 t All links have a packet loss rate 0.2. Intermediate Operation Maximum Rate forwarding 0.8 n 0 network coding 0.8 Shenghao Yang Jan 26, 2015 5 / 35

Outline Fountain codes and BATS codes rateless capacity achieving low encoding/decoding complexity (for BATS) low network coding complexity BATS Protocol real-world issues experimental results Shenghao Yang Jan 26, 2015 6 / 35

Outline 1 Outline 2 Single-Hop: Fountain Codes LT Codes Raptor codes: achieving constant complexity 3 Multi-Hop: BATS Codes Random Linear Network Coding BATS Codes Shenghao Yang Jan 26, 2015 7 / 35

What are fountain codes? Transmit a file of K packets: b 1, b 2,..., b K F T q. Encoder generates potentially infinite number of coded packets. The file can be recovered from any subset of N coded packets, where N is slightly larger than K. Also known as rateless codes. s t Single-hop network Shenghao Yang Jan 26, 2015 8 / 35

Random linear codes Encoding: x j = K i=1 α j,ib i where α j,i are randomly chosen from F q. Coefficient vector: [α j,1, α j,2,..., α j,k ]. Decoding: collects K coded packets with linearly independent coding vectors. b 0 b 1 b 2 b 3 b 4 b 5 b 6 b 7 b 8 b 9 x 0 x 1 x 2 x 3 x 4 x 5 x 6 x 7 x 8 x 9 x 10... Shenghao Yang Jan 26, 2015 9 / 35

Classes of fountain codes Complexities of random linear codes Encoding: O(KT ) per packet Decoding: O(K 2 + KT ) per packet LT codes (Luby 1998): O(T log K) per packet Raptor codes (Shokrollahi 2000): O(T ) per packet Shenghao Yang Jan 26, 2015 10 / 35

LT codes: encoding 1 pick a degree d by sampling a degree distribution Ψ = (Ψ 1, Ψ 2,..., Ψ K ). 2 uniformly at random pick d input packets. 3 generate a coded packet by linearly combinate of the d input packets. 0 1 1 0 1 0 Shenghao Yang Jan 26, 2015 11 / 35

LT codes: encoding 1 pick a degree d by sampling a degree distribution Ψ = (Ψ 1, Ψ 2,..., Ψ K ). 2 uniformly at random pick d input packets. 3 generate a coded packet by linearly combinate of the d input packets. 4 repeat 1-3. 0 1 1 0 1 0 1 1 1 0 0 Shenghao Yang Jan 26, 2015 11 / 35

Belief propagation decoding 1 find a coded packet with degree one, which recovers the corresponding input packet. 2 substitute the recovered input packet into the other coded packets that it involves. 3 repeat 1-2 until there is no coded packets with degree one.????? 0 1 1 0 0 Shenghao Yang Jan 26, 2015 12 / 35

Belief propagation decoding 1 find a coded packet with degree one, which recovers the corresponding input packet. 2 substitute the recovered input packet into the other coded packets that it involves. 3 repeat 1-2 until there is no coded packets with degree one.? 1??? 0 1 1 0 0 Shenghao Yang Jan 26, 2015 12 / 35

Belief propagation decoding 1 find a coded packet with degree one, which recovers the corresponding input packet. 2 substitute the recovered input packet into the other coded packets that it involves. 3 repeat 1-2 until there is no coded packets with degree one. 0 1?? 0 1 1 0 0 Shenghao Yang Jan 26, 2015 12 / 35

Belief propagation decoding 1 find a coded packet with degree one, which recovers the corresponding input packet. 2 substitute the recovered input packet into the other coded packets that it involves. 3 repeat 1-2 until there is no coded packets with degree one. 0 1 1?? 0 1 1 0 0 Shenghao Yang Jan 26, 2015 12 / 35

Belief propagation decoding 1 find a coded packet with degree one, which recovers the corresponding input packet. 2 substitute the recovered input packet into the other coded packets that it involves. 3 repeat 1-2 until there is no coded packets with degree one. 0 1 1? 1 0 1 1 0 0 Shenghao Yang Jan 26, 2015 12 / 35

Belief propagation decoding 1 find a coded packet with degree one, which recovers the corresponding input packet. 2 substitute the recovered input packet into the other coded packets that it involves. 3 repeat 1-2 until there is no coded packets with degree one. 0 1 1 0 1 0 1 1 0 0 Shenghao Yang Jan 26, 2015 12 / 35

Degree distribution of LT codes Proposition For an LT code with K input packets and n coded packets, if there exists a decoding algorithm with P e K c, then E[Ψ] c K n ln K. So when n is close to K, E[Ψ] c ln K. Luby showed that there exists a degree distribution such that 1 E[Ψ] = O(log(K)), 2 the BP decoding succeeds with vanishing error probability for n coded packets, and 3 n K K 0. Shenghao Yang Jan 26, 2015 13 / 35

Soliton distribution Ideal soliton distribution ρ(1) = 1/K ρ(d) = 1, d(d 1) d = 2, 3,..., K. Robust soliton distribution: ρ(d) + τ(d) with normalization S 1 K d for d = 1, 2,..., (K/S) 1 τ(d) = S K log(s/δ) for d = K/S 0 for d > K/S where S = c log(k/δ) K. Shenghao Yang Jan 26, 2015 14 / 35

Raptor codes The original inputs packets are first encoded by a precode (an erasure correction code). The intermediate coded packets are further encoded by an LT code (with different degree distribution from the original one). BP decoder recovers a fraction of the intermediate coded packets, from which the precode can recover the original input packets. Precode LT code Shenghao Yang Jan 26, 2015 15 / 35

Degree distribution of Raptor codes BP decoding recovers at least η fraction of the (intermediate) input packets. The maximum degree D 1/(1 η). So E[Ψ] = O(1). The gap n K K can be any positive value but is not vanishing for a fixed degree distribution when K. Shenghao Yang Jan 26, 2015 16 / 35

Performance analysis Asymptotic analysis: performance when K. Tree analysis [LMS98] Differential equation approach (see [Wor99]) Finite-length analysis: performance when K is relative small. Iterative formula for the distribution of the decoder status [LMS98] [Wor99] M. Luby, M. Mitzenmacher, and M. A. Shokrollahi, Analysis of Random Processes via And-Or Tree Evaluation, in Proc. SODA, 1998, pp. 364 373. N. C. Wormald, The differential equation method for random graph processes and greedy algorithms, Karonsky and Proemel, eds., Lectures on Approximation and Randomized Algorithms PWN, Warsaw, pp. 73 155, 1999. Shenghao Yang Jan 26, 2015 17 / 35

Degree distribution optimization To guarantee the success of decoding with high probability, we require Ψ (y) + θ ln(1 y) > 0, for y [0, 1 η]. Let D = 1/(1 η) 1. For any θ < 1, the degree distribution Ψ(x) = θ ( (1/θ 1)x + satisfies the above requirement. D 1 i=2 ) x i (i 1)i + xd D 1 Shenghao Yang Jan 26, 2015 18 / 35

Outline 1 Outline 2 Single-Hop: Fountain Codes LT Codes Raptor codes: achieving constant complexity 3 Multi-Hop: BATS Codes Random Linear Network Coding BATS Codes Shenghao Yang Jan 26, 2015 19 / 35

Two-hop network s r 1 t Both links have a packet loss rate 0.2. Intermediate Operation Maximum Rate forwarding 0.64 network coding 0.8 Shenghao Yang Jan 26, 2015 20 / 35

Random linear network coding encoding transmission network coding Shenghao Yang Jan 26, 2015 21 / 35

Random linear network coding encoding transmission network coding Shenghao Yang Jan 26, 2015 21 / 35

Random linear network coding encoding transmission network coding Shenghao Yang Jan 26, 2015 21 / 35

Random linear network coding encoding transmission network coding Shenghao Yang Jan 26, 2015 21 / 35

Random linear network coding encoding transmission network coding Shenghao Yang Jan 26, 2015 21 / 35

Random linear network coding encoding transmission network coding Shenghao Yang Jan 26, 2015 21 / 35

Random linear network coding encoding transmission network coding Shenghao Yang Jan 26, 2015 21 / 35

Random linear network coding encoding transmission network coding Shenghao Yang Jan 26, 2015 21 / 35

Random linear network coding encoding transmission network coding Shenghao Yang Jan 26, 2015 21 / 35

Random linear network coding encoding transmission network coding Shenghao Yang Jan 26, 2015 21 / 35

Coefficient vector overhead X H = Y Shenghao Yang Jan 26, 2015 22 / 35

Coefficient vector overhead coefficient vector 1 1 1 1 1 1 1 1 1 1 1 H X H = Y Shenghao Yang Jan 26, 2015 22 / 35

Complexity of linear network coding K: number of input packets Encoding: O(K) per packet. Decoding: O(K 2 ) per packet. Network coding: O(K) per packet. Buffer K packets. Shenghao Yang Jan 26, 2015 23 / 35

Previous approach 1 Sparse encoding: Modifying fountain codes [PFS05, CHKS09, GS08, TF11] Network coding changes the degree distribution. Cannot reduce Coefficient vector overhead. Shenghao Yang Jan 26, 2015 24 / 35

Previous approach 2 Chunked encoding [CWJ03, MHL06, SZK09, HB10, LSS11] Disjoint chunks are not efficient. Heuristic designs of overlapped chunks. Shenghao Yang Jan 26, 2015 25 / 35

New approach: coding for network coding BATS codes [YY11, YY14] Combine fountain codes with chunks. Rateless codes. Coding-based chunked codes [Tang12, MAB12, YT14] Using LDPC codes to construct chunks. Fixed-rate codes. [YY11] S. Yang and R. W. Yeung, Coding for a network coded fountain, ISIT 2011. [YY14] S. Yang and R. W. Yeung, Batched sparse codes, IEEE Trans. Inform. Theory, vol. 60, no. 9, Sep. 2014. [Tang12] B. Tang, S. Yang, Y. Yin, B. Ye and S. Lu, Expander graph based overlapped chunked codes, ISIT 2012. [YT14] S. Yang and B. Tang, From LDPC to chunked network codes, ITW 2014. Shenghao Yang Jan 26, 2015 26 / 35

New approach: coding for network coding BATS codes [YY11, YY14] Combine fountain codes with chunks. Rateless codes. Coding-based chunked codes [Tang12, MAB12, YT14] Using LDPC codes to construct chunks. Fixed-rate codes. [YY11] S. Yang and R. W. Yeung, Coding for a network coded fountain, ISIT 2011. [YY14] S. Yang and R. W. Yeung, Batched sparse codes, IEEE Trans. Inform. Theory, vol. 60, no. 9, Sep. 2014. [Tang12] B. Tang, S. Yang, Y. Yin, B. Ye and S. Lu, Expander graph based overlapped chunked codes, ISIT 2012. [YT14] S. Yang and B. Tang, From LDPC to chunked network codes, ITW 2014. Shenghao Yang Jan 26, 2015 26 / 35

Batched Sparse (BATS) Codes outer code inner code (network code) Shenghao Yang Jan 26, 2015 27 / 35

Outer Code Apply a matrix fountain code at the source node: 1 Obtain a degree d by sampling a degree distribution Ψ. 2 Pick d distinct input packets randomly. 3 Generate a batch of M coded packets using the d packets. Transmit the batches sequentially. b 1 b 2 b 3 b 4 b 5 b 6 X 1 X 2 X 3 X 4 X i = [ b i1 b i2 b idi ] Gi = B i G i. Shenghao Yang Jan 26, 2015 28 / 35

Inner Code The batches traverse the network. Encoding at the intermediate nodes forms the inner code. Linear network coding is applied in a causal manner within a batch., X 3, X 2, X 1, Y 3, Y 2, Y 1 s network with linear network coding Y i = X i H i, i = 1, 2,.... t Shenghao Yang Jan 26, 2015 29 / 35

Belief Propagation Decoding 1 Find a check node i with degree i = rank(g i H i ). 2 Decode the ith batch. 3 Update the decoding graph. Repeat 1). b 1 b 2 b 3 b 4 b 5 b 6 G 1 H 1 G 2 H 2 G 3 H 3 G 4 H 4 G 5 H 5 The linear equation associated with a check node: Y i = B i G i H i. Shenghao Yang Jan 26, 2015 30 / 35

Asymptotic Analysis Theorem Consider a sequence of decoding graph BATS(K, n, Ψ) with constant θ = K/n. The BP decoder is asymptotically error free if the degree distribution satisfies Ω(x) + θ ln(1 x) > 0 for x (0, 1 η), where Ω(x) is related to degree distribution Ψ and the rank distribution of the transfer matrices. Shenghao Yang Jan 26, 2015 31 / 35

Degree-Distribution Optimization max θ s.t. Ω(x) + θ ln(1 x) 0, 0 < x 1 η Ψ d 0, d = 1,, D Ψ d = 1. d D = M/η Solver: Linear programming by sampling x. Shenghao Yang Jan 26, 2015 32 / 35

Practical Design Precode: achieve constant complexity Inactivation decoding: reduce coding overhead when K is small Finite-length analysis [NY13] [NY13] T. C. Ng and S. Yang, Finite length analysis of BATS codes, in Proc. IEEE NetCod 2013. Shenghao Yang Jan 26, 2015 33 / 35

Complexity Source node encoding Destination node decoding buffer Intermediate Node network coding Coeff. vector overhead O(1) per packet O(1) per packet O(1) O(1) per packet M symbols per packet Shenghao Yang Jan 26, 2015 34 / 35

Achievable Rates for Line Networks normalized rate 0.8 0.6 0.4 0.2 M = 64 M = 32 M = 16 M = 8 M = 4 M = 2 M = 1 0 5 10 15 20 25 30 network length Shenghao Yang Jan 26, 2015 35 / 35