packet mixing: superposition coding and network coding richard alimi cs434 lecture joint work with:...

41
Packet Mixing: Superposition Coding and Network Coding Richard Alimi CS434 Lecture Joint work with: L. Erran Li, Ramachandran Ramjee, Harish Viswanathan, Y. Richard Yang 2/12/2009

Upload: irene-roberts

Post on 17-Jan-2016

220 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Packet Mixing: Superposition Coding and Network Coding Richard Alimi CS434 Lecture Joint work with: L. Erran Li, Ramachandran Ramjee, Harish Viswanathan,

Packet Mixing: Superposition Coding and Network Coding

Richard Alimi

CS434 Lecture

Joint work with: L. Erran Li, Ramachandran Ramjee, Harish Viswanathan, Y. Richard Yang

2/12/2009

Page 2: Packet Mixing: Superposition Coding and Network Coding Richard Alimi CS434 Lecture Joint work with: L. Erran Li, Ramachandran Ramjee, Harish Viswanathan,

2

Wireless Mesh Networks

City- and community-wide mesh networks widely used

New approach to the “last mile” of Internet service

In United States alone [muniwireless.com, Jan 16, 2007]:

188 deployed 148 in-progress or planned

Page 3: Packet Mixing: Superposition Coding and Network Coding Richard Alimi CS434 Lecture Joint work with: L. Erran Li, Ramachandran Ramjee, Harish Viswanathan,

3

Mesh Network Structure

APs deployed, some connect directly to Internet

Street lamps, traffic lights, public buildings

Clients associate with nearest AP

Traffic routed to/from Internet via APs (possibly multi-hop)

Page 4: Packet Mixing: Superposition Coding and Network Coding Richard Alimi CS434 Lecture Joint work with: L. Erran Li, Ramachandran Ramjee, Harish Viswanathan,

4

Limited Capacity of Mesh Networks

Current mesh networks have limited capacity[Li et al. 2001, dailywireless.org 2004]

Increased usage will only worsen congestion

More devices

Larger downloads, P2P, video streaming

Limited spectrum

Network-wide transport capacity does not scale[Gupta and Kumar 2001]

Must bypass traditional constraints

Page 5: Packet Mixing: Superposition Coding and Network Coding Richard Alimi CS434 Lecture Joint work with: L. Erran Li, Ramachandran Ramjee, Harish Viswanathan,

5

Packet Mixing for Increased Capacity

Multiple packets transmitted simultaneously

Same timeslot

Cross-layer coding techniques

No spreading (unlike CDMA)

Receiver(s) decode own packets

Possibly use side-information(e.g., packets previouslyoverheard)

Page 6: Packet Mixing: Superposition Coding and Network Coding Richard Alimi CS434 Lecture Joint work with: L. Erran Li, Ramachandran Ramjee, Harish Viswanathan,

6

Packet Mixing Objective

Objective Construct a mixed packet with

Maximum effective throughput Sufficiently-high decoding probability at receivers Mixture of coding techniques

Currently consider two techniques Downlink superposition coding XOR-style network coding

Page 7: Packet Mixing: Superposition Coding and Network Coding Richard Alimi CS434 Lecture Joint work with: L. Erran Li, Ramachandran Ramjee, Harish Viswanathan,

7

Recap: Physical Layer Signal Modulation

Signal has two components: I and Q Represented on complex plane

Sender Map bits to symbol (constellation point)

Receiver Determine closest symbol and emit bits

00

0111

10

QPSK

Page 8: Packet Mixing: Superposition Coding and Network Coding Richard Alimi CS434 Lecture Joint work with: L. Erran Li, Ramachandran Ramjee, Harish Viswanathan,

8

Downlink Superposition Coding

Basic idea

Different message queued for each receiver

Transmit messages simultaneously

Exploit client channel diversity

Example

Page 9: Packet Mixing: Superposition Coding and Network Coding Richard Alimi CS434 Lecture Joint work with: L. Erran Li, Ramachandran Ramjee, Harish Viswanathan,

9

Downlink Superposition Coding

Basic idea

Different message queued for each receiver

Transmit messages simultaneously

Exploit client channel diversity

Example

“01”

“11”Stronger receiver Layer 2 “High resolution”

Weaker receiver Layer 1 “Low resolution”

Page 10: Packet Mixing: Superposition Coding and Network Coding Richard Alimi CS434 Lecture Joint work with: L. Erran Li, Ramachandran Ramjee, Harish Viswanathan,

10

Downlink Superposition Coding

Basic idea

Different message queued for each receiver

Transmit messages simultaneously

Exploit client channel diversity

Example

“01”

“11”Stronger receiver Layer 2 “High resolution”

Weaker receiver Layer 1 “Low resolution”

Page 11: Packet Mixing: Superposition Coding and Network Coding Richard Alimi CS434 Lecture Joint work with: L. Erran Li, Ramachandran Ramjee, Harish Viswanathan,

11

SC Decoding: Successive Interference Cancellation

“01”

“11”

Weaker Receiver

Decode Layer 1

Page 12: Packet Mixing: Superposition Coding and Network Coding Richard Alimi CS434 Lecture Joint work with: L. Erran Li, Ramachandran Ramjee, Harish Viswanathan,

12

Stronger Receiver

SC Decoding: Successive Interference Cancellation

(1) Decode Layer 1

“01”

“11”

Page 13: Packet Mixing: Superposition Coding and Network Coding Richard Alimi CS434 Lecture Joint work with: L. Erran Li, Ramachandran Ramjee, Harish Viswanathan,

13

Stronger Receiver

SC Decoding: Successive Interference Cancellation

(2) Subtract and decodeLayer 2

“01”

“11”

(1) Decode Layer 1

Page 14: Packet Mixing: Superposition Coding and Network Coding Richard Alimi CS434 Lecture Joint work with: L. Erran Li, Ramachandran Ramjee, Harish Viswanathan,

14

SC Quantization Gains

Discrete rates are common in standards (including 802.11)

In other words...

Channel qualities are quantized

distance

36 Mbps 24 Mbps

Page 15: Packet Mixing: Superposition Coding and Network Coding Richard Alimi CS434 Lecture Joint work with: L. Erran Li, Ramachandran Ramjee, Harish Viswanathan,

15

SC Quantization Gains

Idea

Steal extra power from one receiver without affecting data rate

Allocate extra power to second layer destined for a stronger receiver

Use largest rate achievable with this extra power

Can derive formula for computing these gains:

where:

Page 16: Packet Mixing: Superposition Coding and Network Coding Richard Alimi CS434 Lecture Joint work with: L. Erran Li, Ramachandran Ramjee, Harish Viswanathan,

16

SC Quantization Gains in 802.11a/g

Distances

R1: varies

R2: 40 meters

Path-loss Exponent: 4

Noise: -90 dBm

Remaining parameters consistent with Cisco Aironet 802.11g card

Page 17: Packet Mixing: Superposition Coding and Network Coding Richard Alimi CS434 Lecture Joint work with: L. Erran Li, Ramachandran Ramjee, Harish Viswanathan,

17

SC Scalability Analysis

Recall capacity analysis for arbitrary network:

Radio Interface constraint

Interference constraint

First we'll show an upper bound:

Page 18: Packet Mixing: Superposition Coding and Network Coding Richard Alimi CS434 Lecture Joint work with: L. Erran Li, Ramachandran Ramjee, Harish Viswanathan,

18

SC Scalability Analysis

Without Superposition Coding

bit time t

1

2

3

4

5

1

2

3

4

5

With Superposition Coding

Page 19: Packet Mixing: Superposition Coding and Network Coding Richard Alimi CS434 Lecture Joint work with: L. Erran Li, Ramachandran Ramjee, Harish Viswanathan,

19

SC Scalability Analysis

Without Superposition Coding With Superposition Coding

bit time t

We now have up to n-1transmissions per bit-time!

1

2

3

4

5

1

2

3

4

5

Page 20: Packet Mixing: Superposition Coding and Network Coding Richard Alimi CS434 Lecture Joint work with: L. Erran Li, Ramachandran Ramjee, Harish Viswanathan,

20

SC Scalability Analysis

Without Superposition Coding With Superposition Coding

Up to n-1 concurrent transmissions, so ...

Page 21: Packet Mixing: Superposition Coding and Network Coding Richard Alimi CS434 Lecture Joint work with: L. Erran Li, Ramachandran Ramjee, Harish Viswanathan,

21

SC Scalability Analysis

Without Superposition Coding

Up to n-1 concurrent transmissions, so ...

Total area due to interferingtransmissions reduces by factor of n

With Superposition Coding

Page 22: Packet Mixing: Superposition Coding and Network Coding Richard Alimi CS434 Lecture Joint work with: L. Erran Li, Ramachandran Ramjee, Harish Viswanathan,

22

SC Scalability Analysis

Changes to capacity analysis

At most n-1 concurrent transmissions (superposition coding with n-1 layers)

# of interfering transmissions reduced by a factor of n

Modified constraints produce O(n) upper bound

Is the upper bound achievable? Yes

Page 23: Packet Mixing: Superposition Coding and Network Coding Richard Alimi CS434 Lecture Joint work with: L. Erran Li, Ramachandran Ramjee, Harish Viswanathan,

23

XOR-style Network Coding

Basic idea Nodes remember overheard and sent messages Transmit bitwise XOR of packets: Receivers decode if they already know n-1 packets

Example

1 ...2 n

2 1

21 R1

R2

Page 24: Packet Mixing: Superposition Coding and Network Coding Richard Alimi CS434 Lecture Joint work with: L. Erran Li, Ramachandran Ramjee, Harish Viswanathan,

24

Putting it Together: Packet Mixing

4 Flows

Packet d has dest Rd

Without packet mixing

8 transmissions required

With packet mixing

5 transmissions required

Overhearing linkRouting link

R4

R1

R3

R2

1

2

3

4

Page 25: Packet Mixing: Superposition Coding and Network Coding Richard Alimi CS434 Lecture Joint work with: L. Erran Li, Ramachandran Ramjee, Harish Viswanathan,

25

Putting it Together: Packet Mixing

R4

R1

R3

R2

1

2

3

41

1

(1) R2 sends Pkt 1 to AP

Overhearing linkRouting link

Page 26: Packet Mixing: Superposition Coding and Network Coding Richard Alimi CS434 Lecture Joint work with: L. Erran Li, Ramachandran Ramjee, Harish Viswanathan,

26

Putting it Together: Packet Mixing

R4

R1

R3

R2

1

23

41

1

2

2 (1) R2 sends Pkt 1 to AP

(2) R4 sends Pkt 2 to AP

Overhearing linkRouting link

Page 27: Packet Mixing: Superposition Coding and Network Coding Richard Alimi CS434 Lecture Joint work with: L. Erran Li, Ramachandran Ramjee, Harish Viswanathan,

27

Putting it Together: Packet Mixing

R4

R1

R3

R2

1

2

3

41

1

2

2

3

3(1) R

2 sends Pkt 1 to AP

(2) R4 sends Pkt 2 to AP

(3) R1 sends Pkt 3 to AP

Overhearing linkRouting link

Page 28: Packet Mixing: Superposition Coding and Network Coding Richard Alimi CS434 Lecture Joint work with: L. Erran Li, Ramachandran Ramjee, Harish Viswanathan,

28

Putting it Together: Packet Mixing

R4

R1

R3

R2

1

2

3 4

1

1

2

2

3

3 4

4

(1) R2 sends Pkt 1 to AP

(2) R4 sends Pkt 2 to AP

(3) R1 sends Pkt 3 to AP

(4) R3 sends Pkt 4 to AP

Overhearing linkRouting link

Page 29: Packet Mixing: Superposition Coding and Network Coding Richard Alimi CS434 Lecture Joint work with: L. Erran Li, Ramachandran Ramjee, Harish Viswanathan,

29

Putting it Together: Packet Mixing

R4

R1

R3

R2

12

341

12

2

3

3 4

4

(1) R2 sends Pkt 1 to AP

(2) R4 sends Pkt 2 to AP

(3) R1 sends Pkt 3 to AP

(4) R3 sends Pkt 4 to AP

(5) AP sends mixed packet using SC:

(a) Layer 1:

(b) Layer 2:1 2

3 4

Overhearing linkRouting link

Page 30: Packet Mixing: Superposition Coding and Network Coding Richard Alimi CS434 Lecture Joint work with: L. Erran Li, Ramachandran Ramjee, Harish Viswanathan,

30

Scheduling under Packet Mixing

Per-neighbor FIFO packet queues

Qd is queue for neighbor d – first denoted by head(Q

d)

Total order on packets in all queues Ordered by arrival time – first denoted by head(Q)

Rule: always transmit head(Q) Prevents starvation

d2

d3

d1pkt 1 pkt 3pkt 2 pkt 5 pkt 6pkt 4

head(Q)

head(Q3)

Page 31: Packet Mixing: Superposition Coding and Network Coding Richard Alimi CS434 Lecture Joint work with: L. Erran Li, Ramachandran Ramjee, Harish Viswanathan,

31

Superposition Coding Scheduling

Overview

Layer 1: Select head(Q) with dest d1 at rate r

1

Layer 2: Select floor(r2 / r

1) packets for dest d

2 ≠ d

1 at rate r

2

Allows different rates for each layer

Selects best rates given current channels Ensures sufficient decoding probabilities

Destination 2, rate 12 Mbpshead(Q2)

3 packets from Q4

Layer 1

Layer 2 Destination 4, rate 36 Mbps

Rate : 12 MbpsPackets: 4Throughput: 48 Mbps

Page 32: Packet Mixing: Superposition Coding and Network Coding Richard Alimi CS434 Lecture Joint work with: L. Erran Li, Ramachandran Ramjee, Harish Viswanathan,

32

Superposition and Network Coding Scheduling

Algorithm

Iterate over discrete rates for each layer, r1 and r

2

Layer 1: Select network-coded packet, N1 packets encoded

Layer 2: Selects floor(r2 / r

1) network-coded packets, N

2 packets

encoded

Only consider neighbors that support r2 in second layer

Effective throughput is r1 • (N

1 + N

2 )

head(Q1) head(Q

2)

head(Q3) head(Q

4) , head(Q

5) head(Q

6) , head(Q

7) head(Q

8)

Layer 1

Layer 2

Page 33: Packet Mixing: Superposition Coding and Network Coding Richard Alimi CS434 Lecture Joint work with: L. Erran Li, Ramachandran Ramjee, Harish Viswanathan,

33

Evaluations: Setup

Algorithms implemented in ns-2 version 2.31 Careful attention to physical layer model

Standard ns-2 physical layer model does not suffice Use packet error rate curves from actual 802.11a

measurements [Doo et al. 2004]

Packet error rates used for physical layer decoding and rate calculations

Realistic simulation parameters Parameters produce similar transmission ranges as

Cisco Aironet 802.11g card in outdoor environment

Page 34: Packet Mixing: Superposition Coding and Network Coding Richard Alimi CS434 Lecture Joint work with: L. Erran Li, Ramachandran Ramjee, Harish Viswanathan,

34

Evaluations: Network Demand

Setup

1 AP

10 clients

8 flows

Vary client sending rate

Packet mixing gains are sensitive to network demand

Queues are usually empty with low demand

Few mixing opportunites

Network Coding shows ~3% gain with TCP [Katti et al. 2006]

Page 35: Packet Mixing: Superposition Coding and Network Coding Richard Alimi CS434 Lecture Joint work with: L. Erran Li, Ramachandran Ramjee, Harish Viswanathan,

35

Evaluations: Internet → Client Flows

Setup

1 AP

20 clients

16 flows

Backlogged flows

Vary % of flows originating at AP

Superposition Coding superior when Internet → client flows are common

Throughput gains as high as 4.24

Page 36: Packet Mixing: Superposition Coding and Network Coding Richard Alimi CS434 Lecture Joint work with: L. Erran Li, Ramachandran Ramjee, Harish Viswanathan,

36

GNU Radio Implementation

Open Source software radio

RF frontend hardware (USRP)

Signal processing in software

Components

Implementation of Superposition Coding in GNU Radio environment

802.11 MAC implemented with Network Coding support

Measurement Results

Page 37: Packet Mixing: Superposition Coding and Network Coding Richard Alimi CS434 Lecture Joint work with: L. Erran Li, Ramachandran Ramjee, Harish Viswanathan,

37

Backup Slides

Page 38: Packet Mixing: Superposition Coding and Network Coding Richard Alimi CS434 Lecture Joint work with: L. Erran Li, Ramachandran Ramjee, Harish Viswanathan,

38

Example Coding Techniques

Transmitter-side Downlink superposition coding

[Cover 1972, Bergmans and Cover 1974]

XOR-style network coding[Katti et al. 2006]

Receiver-side Uplink superposition coding Analog [Katti et al. 2007] and

physical-layer [Zhang et al. 2006]

network coding

Page 39: Packet Mixing: Superposition Coding and Network Coding Richard Alimi CS434 Lecture Joint work with: L. Erran Li, Ramachandran Ramjee, Harish Viswanathan,

39

Multirate NC: mnetcode

SC requires multirate for better gains, so extend NC as well

Algorithm

Run single-rate COPE algorithm snetcode(r) for each rate r and select best

Skip rate if not supported by neighbor Only consider head(Q

d) for each neighbor d

N packets XOR'd at rate r Effective throughput is N • r

Page 40: Packet Mixing: Superposition Coding and Network Coding Richard Alimi CS434 Lecture Joint work with: L. Erran Li, Ramachandran Ramjee, Harish Viswanathan,

40

Simple Cross-layer Mixing

Utilize physical- and network-layer coding

Algorithm

SC Layer 1: Select NC packet with mnetcode

Must include head(Q)

SC Layer 2: Select packet with Gopp

Problems

No NC used in Layer 2 packets

Limited rate combinations

head(Q1) head(Q

2)

3 packets from Q4

Layer 1

Layer 2

Page 41: Packet Mixing: Superposition Coding and Network Coding Richard Alimi CS434 Lecture Joint work with: L. Erran Li, Ramachandran Ramjee, Harish Viswanathan,

41

Evaluations: Client → Client Flows

Setup

1 AP

20 clients

Backlogged flows

Vary # of flows

Both SC and NC mixing alone improve with # of flows

More opportunities

Gains each SC and NC exploited successfully by SC1 and SCJ schedulers