digital fountain with tornado codes and lt codes k. c. yang

17
Digital Fountain with Tornado Codes and LT Codes K. C. Yang

Post on 22-Dec-2015

231 views

Category:

Documents


1 download

TRANSCRIPT

Page 1: Digital Fountain with Tornado Codes and LT Codes K. C. Yang

Digital Fountain with Tornado Codes and LT Codes

K. C. Yang

Page 2: Digital Fountain with Tornado Codes and LT Codes K. C. Yang

References

• Gavin B. Horn, Per Knudsgaard, Soren B. Lassen, Michael Luby, Jens E. Rasmussen, “A Scalable and Reliable Paradigm for Media on Demand,” IEEE Computer, vol. 34, no. 9, pp. 40-45, Sep 2001.

• Michael Luby,Michael Mitzenmacher, M. Shokrollahi,Daniel Spielman, “Efficient Erasure Correcting Codes,” IEEE Transactions on Information Theory, vol. 47, no. 2, Feb 2001.

• John W. Byers, Michael Luby, Michael Mitzenmacher, “A Digital Fountain Approach to Asynchronous Reliable Multicast,” IEEE Journal on Selected Areas in Communications, vol. 20, no. 8, pp. 1528-1540, Oct 2002.

• Michael Luby, “LT Codes.”

• http://www.digitalfountain.com

Page 3: Digital Fountain with Tornado Codes and LT Codes K. C. Yang

Outline

• Current Delivery Solutions• Digital Fountain• Reed-Solomon Codes• Bipartite Graph Encoding

• Tornado Codes• Luby Transform Codes

• Experimental Results

Page 4: Digital Fountain with Tornado Codes and LT Codes K. C. Yang

Current Delivery Solutions

• Point-to-Point vs. Broadcast

P2P Broadcast

Download on demand?

Packet loss?

Server load?

Network load?

Scalability?

Pause-resume download?

Page 5: Digital Fountain with Tornado Codes and LT Codes K. C. Yang

Digital Fountain

• The receiver can reconstruct the original data after receiving a sufficient number of packets – regardless of order or sequence.

serverencoded packet

file

Page 6: Digital Fountain with Tornado Codes and LT Codes K. C. Yang

Digital Fountain

• Take a file of k packets. Encode it into ck encoded packets.

• Given any set of k encoded packets, the original file can be recovered.• Don’t care which packets the client

receives.

source

Page 7: Digital Fountain with Tornado Codes and LT Codes K. C. Yang

Digital Fountain

Digital fountain

Yes

Yes

Good

Low

Low

High

Download on demand?

Resume download?

Packet loss?

Server load?

Network load?

Scalability?

Page 8: Digital Fountain with Tornado Codes and LT Codes K. C. Yang

Concept

x1 x2 xk

y1 y2 yn

knknn

kk

kk

n xaxaxa

xaxaxa

xaxaxa

y

y

y

2211

2222121

1212111

2

1

Receive any k encoding packets to reconstruct the source packets

Page 9: Digital Fountain with Tornado Codes and LT Codes K. C. Yang

Reed-Solomon Codes

• k source packets n encoding packets• n = 2A - 1, where A is the length of a

symbol.• k(n-k)A/2 exclusive-ORs of source packets.

• e.g. k = 10000, n = 20000, A = 16.• 80000 exclusive-ORs of source packets per

source packet.

• Finite stretch factor (n/k).• Receive many useless duplicate transmissions

when packet loss and parallel download.n = 6k = 5

n = 12k = 5

Page 10: Digital Fountain with Tornado Codes and LT Codes K. C. Yang

Bipartite Graph Encoding (Tornado Codes)

• k source packets n encoding packets• n = i = 0 to m ik.• fixed n.

• Coding time Number of edgesk

k 2k 3k mkk1

/2

x1

x2

x3

y1 = x1 x2 x3

0< <1

Poisson distribution

Soliton distribution

Sparse:Avg. # of variables per equation is small

Page 11: Digital Fountain with Tornado Codes and LT Codes K. C. Yang

Bipartite Graph Encoding (LT Codes)

• Each packet is independently generated.• Encoding process (Infinite iterations)

• Randomly choose the degree d of encoding symbol by a degree distribution.

• Uniformly choose d input symbols.• Exclusive-or these d symbols.

• Decoder needs to know the degree and set of neighbors of each encoding symbol.

• Sparse codes, too.

xi1 xi2 xid

d

x1x2x3x4x5…xk

yi =

yid

Page 12: Digital Fountain with Tornado Codes and LT Codes K. C. Yang

Bipartite Graph Encoding

x3

x3 x2

x3 x2 x1

x3 x2 x1 x4

x3

x3 x2

x3 x2 x1

• Decoding process

Page 13: Digital Fountain with Tornado Codes and LT Codes K. C. Yang

Bipartite Graph Encoding

• Decoding process (Iteration)1. Find any equation with exactly one

variable, recover the value.

2. Combine the recovered variable in all equations with exclusive-ORs.

• y1 = x3, y2 = x2 x3, y3 = x3 x1, y4 = x1 x2 x4

• y1 = x3 y’2 = y2 x3 = x2, y’3 = y3 x3 = x1.

• y’2 = x2, y’3 = x1 y’’4 = y4 x1 x2 = x4.

• y’’4 = x4.

Page 14: Digital Fountain with Tornado Codes and LT Codes K. C. Yang

Tornado Codes And LT Codes

Tornado LT

n/k Pre-determine infinite

structure pre-construct dynamically construct

decoder must know

the graph constructed at encoder

degree and set of each encoding symbol

Page 15: Digital Fountain with Tornado Codes and LT Codes K. C. Yang

Tornado Codes And LT Codes

LT Tornado Reed-Solomon

Decoding inefficiency

Asymptotically 1 1 + 1

Encoding time

O(lnk) O(nln(1/))

O(k(n-k)A)

Decoding time

O(klnk) O(nln(1/))

O(k(n-k)A)

• Decoding inefficiency• Use of sparse codes• Reception of duplicate packets

Page 16: Digital Fountain with Tornado Codes and LT Codes K. C. Yang

Experimental Results

• 4132 source packets 8264 encoding packets

• 512 B packet size with 500 B of data and 12 B of information

Berkeley

Carnegie Mellon

Cornell

Page 17: Digital Fountain with Tornado Codes and LT Codes K. C. Yang

Experimental Results

• Decoding inefficiency (c)

• Distinctness inefficiency (d)

• Reception inefficiency ( = cd)

packets data source ofnumber

tionreconstruc before received packetsdistinct ofnumber c

received packetsdistinct ofnumber

received packets ofnumber totald

packets data source ofnumber

tionreconstruc before received packets ofnumber