Symphony: Orchestrating Collisions in Enterprise Wireless Networks Tarun Bansal (Co-Primary Author), Bo Chen (Co-Primary Author), Prasun Sinha and Kannan.

Post on 12-Jan-2016

212 Views

Category:

Documents

0 Downloads

Preview:

Click to see full reader

Transcript

Symphony: Orchestrating

Collisions in Enterprise Wireless Networks

Tarun Bansal (Co-Primary Author), Bo Chen (Co-Primary Author), Prasun Sinha and Kannan Srinivasan

Department of Computer Science and EngineeringOhio State University

Columbus, Ohio

Enterprise Wireless LAN

AP AP AP

AP AP AP

Internet

2

Do we Care for Uplink• Uplink traffic is increasing at a rapid pace because:

3

Cloud Computing

Online Gaming

Sensor Data Upload

Code Offloading VoIP,

Video Chat

Uplink Traffic: Challenges

4

• Traditionally, uplink traffic has received less attention in the design of algorithms/solutions for WLANs

• Challenging to improve uplink throughput– Single antenna transmitters– Unlike downlink, no global information about which

transmitters have packets to send

5

An Example TDMA (Time Division Multiple Access) with global planning

AP 1 AP 2Alice Bob

2 slots.

Switch

How many slots does optimal TDMA take?

Same Example with Symphony

6

AP 1 AP 2Alice Bob

Switch

AP1 decodes Alice’s packet

Subtract Alice’s recreated samples- =

Decodes remaining samples to obtain Bob’s packet

Two packets received in single slot: Better than optimal TDMA– Requires APs to only exchange decoded packets (and not samples)– Exchanging samples requires prohibitive bandwidth [Gollakota et al. 2009]

The two APs act as two different interfaces to the same AP.

Optimal TDMA: 2 slots

Example with multiple transmitters

7

AP 1 AP 2

Alice

Bob (not in range of AP1)

Switch

AP1 suppresses AliceCarol (not in range of AP1)

Don

Symphony Time Slot 1Symphony Time Slot 2: Only Carol and Don transmit

AP2 suppresses Bob

Optimal TDMA takes 4 slots with one packet transmitted in each slotWhat is the minimum number of time slots required by TDMA?

Optimal TDMA: 4 slots

- =

- = - =

Four packets received in two slots

No global information about which transmitters have packets to send

8

Challenge: Transmitter Identification

C

Time Slot 1 at AP2

A

B

D

SINR of all packets is quite low

Time

Corr

elati

on V

alue

Peak indicates presence of PN sequence [Magistretti et al. 2012]

PN Sequence unique to the transmitter

[Magistretti et al. 2012]

Identify as many transmitters as possible without knowing what they transmitted

9

Challenge: Computing Set of Transmitters to be Suppressed

• At the end of each slot, which AP suppresses which transmitter?• APs need to make a joint decision

– One possible solution: AP1 suppresses A while AP2 suppresses D • APs need to decode A and D based on samples received in

this slot• Requires APs to exchange samples: Not a valid solution

A B

AP1 AP2

CD

Linear combination of A and D

Linear combination of A and D

Dependence Graph

10

A→ AP1

One vertex for every link

A B

AP1 AP2 CD

A→ AP2

B→ AP2

C→ AP2D→ AP2

D→ AP1

Dependence Graph: Adding Edges

11

Consider two pairs of links(A → AP1) and (B → AP2)

AP2 cannot decode B until interferencefrom A is cancelled

Decoding of A at AP1 must happen before decoding of B at AP2

Draw a directed edge from (A → AP1) to (B → AP2)

A B

AP1 AP2 CD

A→ AP1 A→ AP2

B→ AP2

C→ AP2D→ AP2

D→ AP1

A B

AP1 AP2

12

Using dependence graph to determine suppressed transmitters

• Phase 1: Weight (Pi → APj) = Number of incoming edges X Number of outgoing edges

– Weight function improves decoding probability in future– Weight function minimizes the overhead on the backbone

13

Using dependence graph to determine suppressed transmitters

D →AP2

A → AP1

• AP1 can decode A only after AP2 has decoded D.

• AP2 can decode D only after AP1 has decoded A

• Cyclic dependence prevents decoding

A B

AP1 AP2 CD

D →AP2

A → AP1

14

Phase 2 of the algorithm

• Phase 2: Find the maximum weight induced acyclic subgraph of the dependence graph using a greedy algorithm– Vertices of the acyclic subgraph indicate which APs should

suppress which transmitter– Edges of the acyclic subgraph indicate how the APs should

exchange packets on the backbone

A B

AP1 AP2 CD

A→ AP1

B→ AP2

AP1 suppresses A

AP1 decodes A and sends it

to AP2

AP2

suppresses B

15

Other Challenges in Large Scale Deployment

• Enterprise WLANs can consist of hundreds of APs

• What happens when Symphony is deployed to a large scale EWLAN

16

Challenge: No central server

• No central server– How to compute the dependence graph and the

acyclic subgraph?

A B

AP1 AP2 CD

17

Challenge: Unreliable Backbone

• Unreliable backbone with unpredictable latency– When exchanging information among APs, slower

link may create bottleneck– Packets may get lost

18

Challenge: Reliability

AP1AP2AP3 ABC

B→ AP2 A→ AP1C→ AP3

– Long chain of dependence– Decoding failure on one packet leads to failure at all

dependent locations

ABC

19

Challenge: Varying density of clients

AP1AP2AP3

A1

B

One heavy loaded AP blocks the transmission for the entire network

C

A2

Ak-1

Ak

After one time slot…

20

Experiment Setup• USRP Nodes (from Ettus Research): 1078 MHz; BPSK• Protocols studied :

– Symphony: Distributed Implementation

– Flex-Omniscient TDMA• Flex (like Symphony): Client can send data to any AP• Omniscient: With a central controller that has global queue

information apriori– Backbone latency is zero

– IEEE 802.11 (No RTS/CTS)

21

Experiments Setup

• Topology

• Clients placed randomly in the three regions• Experiments done over multiple topologies

22

Experiment Results

0.3566666667

3.2422222222

5.8777777778

11.8155555556

12.131646048

13.3907310012

13.921193134315.58

16.244435

18.0685684086

22.8315104339

25.12482194420

0.25

0.5

0.75

1

Client Throughput (Kbps)

CDF

802.11 RTS OFFFlex-Omniscient TDMASymphony

4.5x 1.6x

23

Trace-driven Simulations• Setup

– SNR data collected from a multiple client-AP testbed (Stanford)

• Traces used from the experiments– Variation in PN sequence detection accuracy with SINR– Variation in cancellation accuracy with SINR– Variation in backbone delays with number of hops

• Size of the packets and packet generation times– Generated using SIGCOMM [Schulman et al. 2008] dataset

24

Simulation Results: Throughput

On an average, total throughput in Symphony is 1.63x of TDMA 5.6x of 802.11

5 6 7 8 10 12 15 18 22 27 330

20

40

60

80

100

120

140

Number of APs

Tota

l Thr

ough

put (

in M

bps) 802.11 RTS OFF (15.1 Mbps)

Flex-Omniscient TDMA (51.7 Mbps)Symphony (84 Mbps)

25

Simulations: Fairness

Symphony has higher fairness since it allows all clients to transmit

5 6 7 8 10 12 15 18 22 27 330

0.2

0.4

0.6

0.8

1

Number of APs

Jain

Fai

rnes

s In

dex

802.11 RTS OFF (0.39)Flex-Omniscient TDMA (0.40)Symphony (0.68)

26

Related Work

• Cooperative decoding of uplink packets: Bit-level combining [Miu et al. Mobicom 2005], Symbol level combining [Woo et al. Mobicom 2007], Coarse Symbol Representation [Gowda et al. Infocom 2013]– Symphony decodes multiple packets received by multiple APs

• Exchanging decoded packets over backbone: Interference Alignment [Gollakota et al. Sigcomm 2009]– Requires multiple antennas at both APs and clients

• MIMO: MegaMIMO for downlink [Rahul et al. Sigcomm 2012]– Symphony focuses on uplink

27

Summary• Symphony leverages the unused wired backbone

resources to improve the wireless throughput for single antenna systems

• Symphony design takes into account the challenges that arise in practical large-scale deployments

Thank you

top related