45
1 Implementing Utility-Optimal CSMA Mung Chiang Princeton University Joint work with Jinsung Lee, Junhee Lee, Yung Yi, Song Chong (KAIST, Korea) Alexandre Proutiere (Microsoft Research UK)

Implementing Utility-Optimal CSMA

  • Upload
    ryder

  • View
    42

  • Download
    1

Embed Size (px)

DESCRIPTION

Implementing Utility-Optimal CSMA. Mung Chiang Princeton University Joint work with Jinsung Lee, Junhee Lee, Yung Yi, Song Chong (KAIST, Korea) Alexandre Proutiere (Microsoft Research UK). - PowerPoint PPT Presentation

Citation preview

Page 1: Implementing  Utility-Optimal CSMA

1

Implementing Utility-Optimal CSMA

Mung ChiangPrinceton University

Joint work withJinsung Lee, Junhee Lee, Yung Yi, Song Chong (KAIST, Korea)

Alexandre Proutiere (Microsoft Research UK)

Page 2: Implementing  Utility-Optimal CSMA

2

Q: Can simple yet optimal (in the-ory) distributed scheduling be de-ployed?

A: Brainstorming and initial an-swers

Page 3: Implementing  Utility-Optimal CSMA

3

Background and Related WorkTheoryPracticeTheory-Practice Gap

Page 4: Implementing  Utility-Optimal CSMA

4

Scheduling in Wireless Net-works

When and How to Activate Links for “Good” Perfor-mance?

Interference: Restriction on Simultaneous Link Activa-tion

Single vs. multi hop traffic, saturated vs. unsaturated Performance: Stability/Delay, Utility/Fairness Design Freedoms

Centralized vs. Distributed With Collision vs. Without Collision

Page 5: Implementing  Utility-Optimal CSMA

5

Literature Taxonomy

Page 6: Implementing  Utility-Optimal CSMA

6

Related Work: R.A. w. Message Passing Wang Kar 2005 Lee Calderbank Chiang 2006 Mohsenian Huang Chiang Wong 2008 …

Page 7: Implementing  Utility-Optimal CSMA

7

Simplicity Driven Design Message passing undesirable

Not fully distributed Security breach Synchronization and coordination Reduction of effective performance

Questions Q1. How much can we achieve without passing

any message? Q2. Can we implement it over legacy standard?

Page 8: Implementing  Utility-Optimal CSMA

8

Related Work: Adaptive CSMA Jiang–Walrand

Allerton 08 Rajagopalan–Shah

CISS 08 Liu-Yi-Proutiere-Chiang-Poor

Microsoft TR 08 Ni-Srikant

ITA 09

Other related work Jiang-Liew 08 Marbach-Eryilmaz 08

Page 9: Implementing  Utility-Optimal CSMA

9

Related Work: Implement Back-pressure DiffQ 2009 Warrier Janakiranman Ha Rhee

A theory motivated heuristic solution Backpressure-based congestion control 802.11e based MAC prioritization Implemented in the Linux kernel

Horizon 2008 Radunovic Gkantsidis Gu-nawardena Key Backpressure-based multi-path routing Heuristic solution compatible with 802.11 and

TCP Implemented between data link and network

layer

Page 10: Implementing  Utility-Optimal CSMA

10

Background and Related WorkTheoryPracticeTheory-Practice Gap

Page 11: Implementing  Utility-Optimal CSMA

11

CSMANo message passing Content Sense (and CA or CD) Hold the channel Random back-off

1 2 3

Interference graph 1 2 3

1 2 3

Example

Page 12: Implementing  Utility-Optimal CSMA

12

System Model Saturated single-hop sessions Symmetric Interference Objective: Utility Maximization Alternative: Rate Stability for unsaturated input

λ1

λ2

Throughput-region

Continuous time model first:• Access the channel with Poisson rate• Back-off counter: exponential distribution

• Hold the channel with mean duration• Channel holding time: exponential distribu-

tion

Page 13: Implementing  Utility-Optimal CSMA

13

Utility-Optimal CSMA (UO-CSMA)

Each link l does the following at slot t:1.2.

3.

Parameters: (1) V >0 (determines “how optimal”), (2) b(t) (decreasing step size)

Page 14: Implementing  Utility-Optimal CSMA

14

Performance in Continuous Time ModelTheorem. With UO-CSMA and decreasing step sizes,

Page 15: Implementing  Utility-Optimal CSMA

15

Stochastic Approximation Having controlled Markov noise

Proof: Key Ideas

Small for large t

Slow time-scale Fast time-scale averaged, and

stationary regime

Lemma. O.D.E System withschedules with stationary

regime Solving dual of

“tweaked” problem

V. Borkar, “Stochastic approximation with controlled Markov noise”,Systems and Control Letters, 2006

Page 16: Implementing  Utility-Optimal CSMA

16

Proof: Key Lemma

Lemma. Two systems are asymptotically equivalent, i.e.,

ODE system

Averaging effect

Originalsystem

(continuous interpolation of )

Page 17: Implementing  Utility-Optimal CSMA

17

Pictorial Description of Key Lemma

ODE system

Original system

Continuous interpolation

t

t

t

equal for large t, i.e.,

for large t

Trajectories with the service rate by CSMA being stationary (i.e., aver-aged)

Page 18: Implementing  Utility-Optimal CSMA

18

Extension: General Weight Function

Extension for strictly increasing,continuously differentiable W(.)

Page 19: Implementing  Utility-Optimal CSMA

19

Slotted Time Model Continuous Model

No collisions Asymptotically arbitrarily close to optimal

However, in practice Discrete back-off counters Collisions are unavoidable

Two Questions Q1: What is the impact of collisions on efficiency? Q2: Tradeoff between short-term fairness and effi-

ciency?

Page 20: Implementing  Utility-Optimal CSMA

20

Analysis Approach We can build a sequence of systems that converge

to the continuous system, e.g., as ² decreases

Gap between discrete and continuous case for a fixed Use the gap between discrete Bernoulli proc. and Poisson

proc. Why tradeoff between short-term fairness and effi-

ciency?

Contention probability

Gap btwn. discrete and continuous

Channel holding time

Efficiency

Short-term fairness

Page 21: Implementing  Utility-Optimal CSMA

21

Efficiency and Short-Term Fairness

Average duration during which link l do not transmit successfully

Short-term fairness is inversely proportional to channel holding time

For a given efficiency gap ,

Channel holding time grows with the order of Exponential price of short-term fairness for efficiency

Short-term fairness index (also useful for TCP)

Page 22: Implementing  Utility-Optimal CSMA

22

Background and Related WorkTheoryPracticeTheory-Practice Gap

Page 23: Implementing  Utility-Optimal CSMA

23

Main Goals

Goal 1 Implement and deploy theory-driven scheduling

algorithm UO CSMA on top of conventional hard-ware

Goal 2 Discover, quantify, and bridge the gap between

theory and practice for wireless distributed scheduling in general

Page 24: Implementing  Utility-Optimal CSMA

24

WiMesh Testbed@KAIST Open Research Testbed (See Song Chong)

Campus-scale wireless mesh testbed with 55 nodes

Easy programmable platform PC platform, Linux, FOSS Common Code

[Mesh Router]

Page 25: Implementing  Utility-Optimal CSMA

25

Common Code Highway from Theory to Experimentation

Reuse GloMoSim simulator for the real mesh router Experimentation without modification of simulation

code All protocols over link layer

– Overlay MAC layer (over IEEE 802.11)– Even cross-layer protocols

Co-verification: co-simulation and experimentation

Simulator Testbed

(Reuse without modification)

Theory

First step verification Second step verification

Page 26: Implementing  Utility-Optimal CSMA

26

Framework KAIST WiMesh Testbed with Common Code

Song Chong and Yung YiCommon Code

ApplicationsTCP, UDP, …

IP, AODV, DSR, …Overlay user MAC

L7L4L3

L2.5

GloMoSimCodes

Simulation Implementation802.11, CSMA, …Two ray, free space,

…Hardware Adaptor

WLAN NIC

Real physical worldSimulation world

L2L1 L2,L1

Easy and fast verification through simulation and experimentation using Common Code

Page 27: Implementing  Utility-Optimal CSMA

27

Simulation Simulation environment

Two ray path loss model Slotted operation 1 timeslot = 1.6ms 1000byte packet size Link capacity 5Mbps

SNR based packet reception model No ACK operation

If collision occurs, it lasts for holding time Backoff counter can be chosen in [0, CW] ran-

domly

Page 28: Implementing  Utility-Optimal CSMA

28

Implementation Features

User space implementation Overlay + 802.11 MAC

UO-CSMA Per-link queue structure Virtual queue update MAC parameter update

MAC Adaptor Set 802.11e QoS parameters

CW, TxOp and AIFS 802.11 MAC

FIFO queue per interface Transmit actual packets

NetworkLayer

UO-CSMA(Overlay)

802.11(Substrat

e)

srcQ

linkQ

To dest a

To dest b

FIFOQueu

e

Wireless(Radio)

MAC Adaptor

Page 29: Implementing  Utility-Optimal CSMA

29

Indoor deployment: part of WiMesh 10 sender-receiver pairs located in 40mx20m

Experimental Space

1

2

3 4

56

7

8

9

10

Page 30: Implementing  Utility-Optimal CSMA

30

Setup

WLAN device Atheros 5212 chipset Utility and

W functionU(x)=log(x),

W(x)=x or loglog(x)

PHY802.11a mode5.745GHz band

6Mbps rateMisc. V = 20,100,500

Constant and di-minishing step size

Flow Single-hop sessionPerformance

metrics

Total throughput (or total utility),

Throughput devia-tion

Short-term fairnessTraffic Saturated

Page 31: Implementing  Utility-Optimal CSMA

31

Experiment Results 3 link experiment

2-9-10 flows are used 9 interferes with 2 & 10

Total utility and throughput deviation

2 9

10

OPT SIM EXP(V=500) 802.11 DCF43.20

43.40

43.60

43.80

44.00

44.20

44.40

44.60

44.37 44.23

44.14

43.68

Total Utility

OPT SIM EXP(V=500) 802.11 DCF0

2

4

6

8

10

12

14

16

0

4

6.6

14.9

Throughput Deviation (%)

Page 32: Implementing  Utility-Optimal CSMA

32

Key ObservationsBasic Conclusions:

UO CSMA works almost perfectly in simula-tion

UO CSMA works well in physical reality and on top of legacy 802.11 drivers

UO CSMA (in implementation) recovers 80% of the difference between DCF and UO CSMA (in simulation)

Page 33: Implementing  Utility-Optimal CSMA

33

Holding Time

29

10

Changing holding time Similar throughput

Holding time imperfect 802.11 collision avoidance

Degrades short-term fairness

OPT Htime=20 Htime=100 Htime=500 802.11 DCF0

1000

2000

3000

4000

5000

6000

7000

8000

9000

Throughput Flow 10

Flow 9

Flow 2

Thro

ughp

ut (k

bps)

Htime=20 Htime=100 Htime=50002468

1012141618

Short-term FairnessSame throughput behv-ior

Page 34: Implementing  Utility-Optimal CSMA

34

Queues for 0.01 and diminished by 0.9 every 10s

Both cases have similar performance due to equal queue buildup

Stepsizes

Flow 9 Flow 10Decreasing step size

Flow 9 Flow 10Fixed step size

Page 35: Implementing  Utility-Optimal CSMA

35

OPT EXP(V=20) EXP(V=100) EXP(V=500)0

1000

2000

3000

4000

5000

6000

7000

8000

9000

Flow 2 Flow 9 Flow 10

Thro

ughp

ut (k

bps)

Parameter V Changing V parame-

ter Throughput

Can achieve up to nearly optimum as V increases

Instantaneous Backlog Qmin = 0.1, Qmax = 2.3

Page 36: Implementing  Utility-Optimal CSMA

36

Function W Changing weight function with fixed step

sizeW(x)=x W(x)=loglog(x

)

Converges in 80sec

Converges in 40sec

Small backlog

Large back-log

Page 37: Implementing  Utility-Optimal CSMA

37

Background and Related WorkTheoryPracticeTheory-Practice Gap

Page 38: Implementing  Utility-Optimal CSMA

38

Where Do the Gaps Come From? Sensing (sensing range and sensitivity) Holding (enforcing holding and backing off) Receiving (SIR based and capture effect) Asymmetry of interference Asynchronization of clock 802.11 protocol overhead Common Code architecture overhead

Theory Simulation Experimentation

Over 802.11

Gap

Gap Gap

Page 39: Implementing  Utility-Optimal CSMA

39

Theory-Practice Gap 1 Theory-Simulation Gap

Nonetheless, simulation follows theory very well

Gap Theory Simulation

Backoff Data-slot based Mini-slot based

Collision No Yes, and last for holding time

Optimal htime=20 htime=100 htime=5000

100020003000400050006000700080009000 Flow 1 Flow 2 Flow 3

Thro

ughp

ut (k

bps)

Page 40: Implementing  Utility-Optimal CSMA

40

Theory-Practice Gap 2 Simulation-Implementation Gap

Overhead from Common Code, but small Indirect physical information to the overlay MAC Imperfect queue nullification under the overlay MAC Packet-by-packet WLAN NIC configuration

Gap Simulation Implementation

Carrier sensingDeterministic,CS range= tx

range

Probabilistic,CS range <= tx

range

Interference Symmetric, on-off relation

Asymmetric,Probabilistic rela-

tion

Collision Yes, and last for holding time

Yes, with retransmission

Overhead No Common Code overhead

Page 41: Implementing  Utility-Optimal CSMA

41

Theory-Practice Gap 3 Clean slate – over 802.11 gap

Gap Clean slate Over 802.11Holding Perfect Not perfect

Contention control By access prob.By discrete back-off, but only 2^n -

1 CW availableTransmission type User defined Unicast with ACK

Synchronization Physically synchronized Asynchronous

Overhead Hardware dependent

WLAN chipset dependent

Page 42: Implementing  Utility-Optimal CSMA

42

Samples of Workaround Solu-tions Ensuring correct holding time

Reducing high prioritized beaconing MAC prioritization by AIFS and CWmin,max NAV option using overhearing of wireless Still, there is some hole

Making CW=0 feasible CW only can have a form of 2^n-1 Similar transmission chances with CW=1 Still not perfect holding time execution

Packet-by-packet parameter control Parameter setting in device driver

Page 43: Implementing  Utility-Optimal CSMA

43

Next Steps on Implementation This is an ‘interim report’ Many next steps:

Large-scale network with multi-hop sessions Scaling up the deployment Routing needs to be considered Comparison with congestion controlled 802.11

802.11n chipset Ath9k driver is released

Software upgrade Ath9k device driver support much more freedom Latest Linux kernel with mac80211 features

Will make the ‘next report’

Page 44: Implementing  Utility-Optimal CSMA

44

Implementation-Inspired The-ory Qs Many things theory assumed away

Overhead Asymmetry Control granularity

Many things theory modeled simplistically Imperfect holding and sensing SIR collision model with capture

Many things theory analyzed loosely Convergence speed Transient behavior like queue buildup Parameter choice

Page 45: Implementing  Utility-Optimal CSMA

45

Theory-Practice From Dichotomy to Union:

Theory Practice

Theory Practice

The Princeton EDGE Lab