processing along the way: forwarding vs. coding

51
Processing Along the Way: Forwarding vs. Coding Christina Fragouli Joint work with Emina Soljanin and Daniela Tuninetti

Upload: gordon

Post on 06-Jan-2016

31 views

Category:

Documents


0 download

DESCRIPTION

Processing Along the Way: Forwarding vs. Coding. Christina Fragouli Joint work with Emina Soljanin and Daniela Tuninetti. Do credit cards work in paradise?. A field with many interesting questions…. Problem Formulations and Ongoing Work. If the min-cut to each receiver is h. - PowerPoint PPT Presentation

TRANSCRIPT

Page 1: Processing Along the Way: Forwarding vs. Coding

Processing Along the Way:Forwarding vs. Coding

Christina FragouliJoint work with Emina Soljanin and Daniela Tuninetti

Page 2: Processing Along the Way: Forwarding vs. Coding

A field with many interesting questions…

• Problem Formulations and Ongoing Work

Do credit cardswork in paradise?

Page 3: Processing Along the Way: Forwarding vs. Coding

1. Alphabet size and min-cut tradeoff

• Directed graph with unit capacity edges, coding over Fq.

• What alphabet size q is sufficient for all possible configurations

with h sources and N receivers?

If the min-cut to each receiver is h

NqN

2

1

4

72

Sufficient for h=2

Page 4: Processing Along the Way: Forwarding vs. Coding

An Example

Source 1 Source 2

R1RNR3R2

1 32 k

Page 5: Processing Along the Way: Forwarding vs. Coding

An Example

Source 1 Source 2

R1RNR3R2

1 32 k

2

101x

x

Coding vector: vector of coefficients

Network Coding: assign a coding vector to each edge so that each receiver has a full rank set of equations

Page 6: Processing Along the Way: Forwarding vs. Coding

An Example

Source 1 Source 2

R1RNR3R2

1 32 k

For h=2, it is sufficient to consider q+1 coding vectors over Fq:

0 1 1 0 1 a 1 a2 1 aq 1

2

101x

x

Any two such vectors form a basis of the 2-dimensional space

Page 7: Processing Along the Way: Forwarding vs. Coding

An Example

Source 1 Source 2

R1RNR3R2

1 32 k

For h=2, it is sufficient to consider q+1 coding vectors over Fq:

0 1 1 0 1 a 1 a2 1 aq 1

2

101x

x

Page 8: Processing Along the Way: Forwarding vs. Coding

An Example

Source 1 Source 2

R1RNR3R2

1 32 k

For h=2, it is sufficient to consider q+1 coding vectors over Fq:

0 1 1 0 1 a 1 a2 1 aq 1

2

101x

x

Page 9: Processing Along the Way: Forwarding vs. Coding

An Example

Source 1 Source 2

R1RNR3R2

1 32 k

For h=2, it is sufficient to consider q+1 coding vectors over Fq:

0 1 1 0 1 a 1 a2 1 aq 1

2

101x

x

Page 10: Processing Along the Way: Forwarding vs. Coding

An Example

Source 1 Source 2

R1RNR3R2

1 32 k

For h=2, it is sufficient to consider q+1 coding vectors over Fq:

0 1 1 0 1 a 1 a2 1 aq 1

2

101x

x

Page 11: Processing Along the Way: Forwarding vs. Coding

R3

R1

R2

Connection with Coloring

Source 1 Source 2

R1RNR3R2

1 32 k

1 32 k

12 1110110 qaaa

Page 12: Processing Along the Way: Forwarding vs. Coding

R3

R1

R2

Connection with Coloring

Source 1 Source 2

R1RNR3R2

1 32 k

1 32 k

12 1110110 qaaa

Fragouli, Soljanin 2004

Page 13: Processing Along the Way: Forwarding vs. Coding

R1

If min-cut >2

Source 1 Source 2

R1RNR3R2

1 32 k

1

3

2k

4R2

12 1110110 qaaa

Each receiver observes a set of vertices

Find a coloring such that every receiver observes at least two distinct colors

Page 14: Processing Along the Way: Forwarding vs. Coding

R1

Coloring families of sets

1

3

2k

4R2

12 1110110 qaaa

Erdos (1963): Consider a family of N sets of size m.If N<q m-1 then the family is q-colorable.

A coloring is legal if no set is monochromatic.

q > N 1/(m-1)

Page 15: Processing Along the Way: Forwarding vs. Coding

R1

Coloring families of sets

1

3

2k

4R2

12 1110110 qaaa

Erdos (1963): Consider a family of N sets of size m.If N<q m-1 then the family is q-colorable.

A coloring is legal if no set is monochromatic.

Page 16: Processing Along the Way: Forwarding vs. Coding

2. What if the alphabet size is not large enough?

Source 1 Source 2

R1RNR3R2

1 32 k

N receiversAlphabet of size qMin-cut to each receiver m

Page 17: Processing Along the Way: Forwarding vs. Coding

R1

1

3

2k

4R2

12 1110110 qaaa

There exists a coloring that colors at most Nq1-m

sets monochromatically

If we have q colors, how many sets are going to be monochromatic?

2. What if the alphabet size is not large enough?

Page 18: Processing Along the Way: Forwarding vs. Coding

R1

1

3

2k

4R2

12 1110110 qaaa Erdos-Lovasz 1975:If every set intersects at most qm-3 other members, then the family is q-colorable.

And if we know something about the structure?

Source 1 Source 2

R1RNR3R2

1 32 k

Page 19: Processing Along the Way: Forwarding vs. Coding

R1

1

3

2k

4R2

12 1110110 qaaa Erdos-Lovasz 1975:If every set intersects at most qm-3 other members, then the family is q-colorable.

And if we know something about the structure?

•If m=5 and every set intersects 9 other sets, three colors – a binary alphabet is sufficient.

Page 20: Processing Along the Way: Forwarding vs. Coding

What if links are not error free?

Page 21: Processing Along the Way: Forwarding vs. Coding

Network of Discrete Memoryless Channels

1-p

1-p

p

p

0 0

1 1

Binary Symmetric Channel (BSC)

Edges

Source Receiver

)(1 pHC Capacity

Page 22: Processing Along the Way: Forwarding vs. Coding

Network of Discrete Memoryless Channels

1-p

1-p

p

p

0 0

1 1

Binary Symmetric Channel (BSC)

Edges

Source Receiver

)(1 pHC Capacity

Min Cut = 2 (1-H(p))

Page 23: Processing Along the Way: Forwarding vs. Coding

Network of Discrete Memoryless Channels

1-p

1-p

p

p

0 0

1 1

Binary Symmetric Channel (BSC)

Edges

Vertices Terminals that have processing capabilities in terms of complexity and delay

Source Receiver

Page 24: Processing Along the Way: Forwarding vs. Coding

Network of Discrete Memoryless Channels

1-p

1-p

p

p

0 0

1 1

Binary Symmetric Channel (BSC)

Edges

Source Receiver

)(1 pHC Capacity

We are interested in evaluating possible benefits of intermediate nodeprocessing from an information-theoretic point of view.

Page 25: Processing Along the Way: Forwarding vs. Coding

Network of Discrete Memoryless Channels

1-p

1-p

p

p

0 0

1 1

Binary Symmetric Channel (BSC)

Edges

Vertices Terminals that have processing capabilities

Source Receiver

N

1111010001001111000

Complexity - Delay

N

N

N

Page 26: Processing Along the Way: Forwarding vs. Coding

Perfect and Partial Processing

Source ReceiverN

N

N

N

Two Cases:allow intermediate nodes

N finite

Perfect Processing Partial Processing

Page 27: Processing Along the Way: Forwarding vs. Coding

Perfect Processing

Source Receiver

We can use a capacity achieving channel code to transform each edge of the network to a practically error free link.

For a unicast connection: we can achieve the min-cut capacity

Page 28: Processing Along the Way: Forwarding vs. Coding

Network Coding

Receiver 1

Employing additional coding over the error free links allows to better share the available resources when multicasting

Receiver 2

Source

X1

X2

X1 X2+

Network Coding: Coding across independent information streams

Page 29: Processing Along the Way: Forwarding vs. Coding

Partial Processing

Source Receiver

We can no longer think of links as error free.

N

N

N

Page 30: Processing Along the Way: Forwarding vs. Coding

Partial Processing

We will show that:

1. Network and Channel Coding cannot be separated without loss of optimality.

Page 31: Processing Along the Way: Forwarding vs. Coding

Partial Processing

We will show that:

1. Network and Channel Coding cannot be separated without loss of optimality.

2. Network coding can offer benefits for a single unicast connection. That is, there exist configurations where coding across information streams that bring independent information can increase the end-to-end achievable rate.

Page 32: Processing Along the Way: Forwarding vs. Coding

Partial Processing

We will show that:

1. Network and Channel Coding cannot be separated without loss of optimality.

2. Network coding can offer benefits for a single unicast connection. That is, there exist configurations where coding across information streams that bring independent information can increase the end-to-end achievable rate.

3. For a unicast connection over the same network, the optimal processing depends on the channel parameters.

Page 33: Processing Along the Way: Forwarding vs. Coding

Partial Processing

We will show that:

1. Network and Channel Coding cannot be separated without loss of optimality.

2. Network coding can offer benefits for a single unicast connection. That is, there exist configurations where coding across information streams that bring independent information can increase the end-to-end achievable rate.

3. For a unicast connection over the same network, the optimal processing depends on the channel parameters.

4. There exists a connection between the optimal routing over a specific graph and the structure of error correcting codes.

Page 34: Processing Along the Way: Forwarding vs. Coding

Simple Example

Source ReceiverA

B

C

D E

1-p

1-p

p

p

0 0

1 1

•Each edge:

•Nodes B, C and D can process N bits•Nodes A and E have infinite complexity processing

Page 35: Processing Along the Way: Forwarding vs. Coding

N infinite

Source ReceiverA

B

C

D ESource ReceiverA

B

C

D E

X1

X2

Min Cut = 2 (1-H(p))X1, X2 iid

Page 36: Processing Along the Way: Forwarding vs. Coding

N=0: Forwarding

Source ReceiverA

B

C

D ESource ReceiverA

B

C

D E

X1

X2

Page 37: Processing Along the Way: Forwarding vs. Coding

N=0: Forwarding

Source ReceiverA

B

C

D ESource ReceiverA

B

C

D E

X1

X2

Page 38: Processing Along the Way: Forwarding vs. Coding

N=0: Forwarding

Source ReceiverA

B

C

D ESource ReceiverA

B

C

D E

X1

X2

Path diversity: receive multiple noisy observations of the same information stream and optimally combine

them to increase the end-to-end rate

X1, X2 iid

Page 39: Processing Along the Way: Forwarding vs. Coding

N=1

Source Receiver

A

B

C

D E

1-p

1-p

p

p

0 0

1 1

•Each edge:

•Nodes B, C and D can process one bit•Nodes A and E have infinite complexity processing

Page 40: Processing Along the Way: Forwarding vs. Coding

N=1

Source Receiver

A

B

C

D E

1-p

1-p

p

p

0 0

1 1

•Each edge:

•Nodes B, C and D can process one bit•Nodes A and E have infinite complexity processing

X1

Page 41: Processing Along the Way: Forwarding vs. Coding

N=1

Source Receiver

A

B

C

D E

X1

1-p

1-p

p

p

0 0

1 1

•Each edge:

•Nodes B, C and D can process one bit•Nodes A and E have infinite complexity processing

Page 42: Processing Along the Way: Forwarding vs. Coding

N=1

Source Receiver

A

B

C

D E

X1

X2

1-p

1-p

p

p

0 0

1 1

•Each edge:

•Nodes B, C and D can process one bit•Nodes A and E have infinite complexity processing

Page 43: Processing Along the Way: Forwarding vs. Coding

Optimal Processing at node D?

Source Receiver

A

B

C

D E

X1

X2

Three choices to send through edge DE: f1) X1 f2) X1+X2 f3) X1 and X2

Page 44: Processing Along the Way: Forwarding vs. Coding

All edges: BSC(p)

A

B

C

D E

Rate DE

R1 X1

R2 X1+X2

R3 X1 & X2

X1

X2 X2

X1X1

X2

Network coding offers benefits for unicast connections

Page 45: Processing Along the Way: Forwarding vs. Coding

All edges: BSC(p)

A

B

C

D E

Rate DE

R1 X1

R2 X1+X2

R3 X1 & X2

X1

X2 X2

X1X1

X2

The optimal processing depends on the channel parameters

Page 46: Processing Along the Way: Forwarding vs. Coding

Edges BD and CD: BSC(0)

All other edges: BSC(p)

A

B

C

D E

Rate DE

R1 X1

R2 X1+X2

R3 X1 & X2

X1

X2 X2

X1X1

X2

Network and channel coding cannot be separated

Page 47: Processing Along the Way: Forwarding vs. Coding

Edges AB, AC, BD and CD: BSC(0)

Edges BE, DE and CE: BSC(p)

A

B

C

D E

Rate DE

R1 X1

R2 X1+X2

R3 X1 & X2

X1

X2 X2

X1X1

X2

Page 48: Processing Along the Way: Forwarding vs. Coding

Edges AB, AC, BD and CD: BSC(0)

Edges BE, DE and CE: BSC(p)

A

B

C

D E

Rate DE

R1 X1

R2 X1+X2

R3 X1 & X2

X1

X2 X2

X1X1

X2

Page 49: Processing Along the Way: Forwarding vs. Coding

Linear Processing

3

2

1

2

1

3

2

1

**

10

01

N

N

N

X

X

Y

Y

Y

A

A

B

C

D E

X1

X2 Y2

Y1

Y3

Choose matrix A to maximize ),,;,( 32121 YYYXXI

Page 50: Processing Along the Way: Forwarding vs. Coding

Connection to Coding

3

2

1

2

1

3

2

1

**

10

01

N

N

N

X

X

Y

Y

Y

A

Choose matrix A to maximize ),,;,( 32121 YYYXXI

“Equivalent problem”: maximize the composite capacity of a BSC(p) that is preceded by a linear block encoder

Determined by the weight distribution of the code

Page 51: Processing Along the Way: Forwarding vs. Coding

Conclusions