Top Banner
1 Patrick Verkaik Yuvraj Agarwal, Rajesh Gupta, Alex C. Snoeren UCSD NSDI — April 24, 2009
33

Patrick Verkaik Yuvraj Agarwal, Rajesh Gupta, Alex C. Snoeren

Apr 16, 2022

Download

Documents

dariahiddleston
Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Page 1: Patrick Verkaik Yuvraj Agarwal, Rajesh Gupta, Alex C. Snoeren

1

Patrick Verkaik Yuvraj Agarwal, Rajesh Gupta,

Alex C. Snoeren UCSD

NSDI — April 24, 2009

Page 2: Patrick Verkaik Yuvraj Agarwal, Rajesh Gupta, Alex C. Snoeren

2

 Cell phones with WiFi + VoIP: ◦  iPhone (+ Skype, Fring, iCall, ..) ◦ T-mobile UMA and @home

 Voice over IP (VoIP) and WiFi increasingly popular

>1M downloads of Skype for iPhone in just two days

Page 3: Patrick Verkaik Yuvraj Agarwal, Rajesh Gupta, Alex C. Snoeren

3

Internet

CNN.com

802.11 AP

◦ Call quality? ◦  Impact on data users?

VoIP user

Data users

Page 4: Patrick Verkaik Yuvraj Agarwal, Rajesh Gupta, Alex C. Snoeren

4

 802.11 designed for data traffic   Substantial per-packet overheads ◦  Framing (headers, ACK) ◦ Contention (backoff, collisions)

 VoIP: ◦  Small packets ◦ High packet rate (20-100 pps) ◦ Does not respond to congestion VoIP makes inefficient use of WiFi

Page 5: Patrick Verkaik Yuvraj Agarwal, Rajesh Gupta, Alex C. Snoeren

5

 Residual capacity ◦ TCP / UDP throughput

 Mean opinion score (MOS) ◦ How audio appears to a real person ◦  Score: 1 (bad) – 5 (very good) ◦ Can be calculated based on: [Cole et al., 2001]

  Voice codec   Network packet loss, delay, jitter

Page 6: Patrick Verkaik Yuvraj Agarwal, Rajesh Gupta, Alex C. Snoeren

6

 802.11 b/g testbed: ◦  10 VoIP stations ◦ One data station

 Gradually activate more VoIP stations

TCP/UDP

VoIP AP

VoIP users

Data user

Page 7: Patrick Verkaik Yuvraj Agarwal, Rajesh Gupta, Alex C. Snoeren

7

Downlink MOS (AP→station)

Uplink MOS (station→AP)

Quantization, codec, etc.

Page 8: Patrick Verkaik Yuvraj Agarwal, Rajesh Gupta, Alex C. Snoeren

8

Measured TCP throughput

Expected from size of VoIP packets

Page 9: Patrick Verkaik Yuvraj Agarwal, Rajesh Gupta, Alex C. Snoeren

9

◦  Increases contention overhead (collisions) ◦  Measured further reduction of residual capacity

  Decrease VoIP packet rate

  Use higher speeds (802.11g, 802.11n) ◦  ‘Protection’ in the presence of older versions of 802.11 ◦  VoIP traffic too infrequent for 802.11n aggregation

  Prioritize VoIP traffic (802.11e) 802.11g + lower VoIP packet rate

MO

S

Page 10: Patrick Verkaik Yuvraj Agarwal, Rajesh Gupta, Alex C. Snoeren

10

  Downlink direction: ◦  Aggregation across multiple receivers ◦  Addresses framing and contention

overhead

AP

  Uplink direction: ◦  Prioritized TDMA (Time Division

Multiple Access) ◦  Addresses contention overhead

Page 11: Patrick Verkaik Yuvraj Agarwal, Rajesh Gupta, Alex C. Snoeren

11

  TDMA by VoIP stations: ◦  Avoids collisions by serializing channel

access ◦  Cycle of 10 TDMA slots, each 1 ms

AP

send at t=2

send at t=1

send at t=3

time

  VoIP stations must: ◦  Establish TDMA schedule ◦  Synchronize clocks ◦  Compete with non-TDMA traffic ◦  Compete with non-TDMA traffic

Page 12: Patrick Verkaik Yuvraj Agarwal, Rajesh Gupta, Alex C. Snoeren

12

channel occupied

  Problem: ◦  Non-VoIP stations unaware of TDMA ◦  May prevent VoIP stations from sending on time

4 5

TDMA slots

3.. ..

  Let VoIP stations prioritize their traffic ◦  ..by changing 802.11 contention parameters

VoIP user (TDMA)

Data user (non-TDMA)

time 6

Page 13: Patrick Verkaik Yuvraj Agarwal, Rajesh Gupta, Alex C. Snoeren

13

◦  VoIP station 5 must wait..

4 53.. .. time 6

  Data packet overruns TDMA slot 5!

◦  .. therefore stations 5 and 6 collide in slot 6

  Solution: prioritize among VoIP stations 5 and 6

VoIP user (TDMA)

Data user (non-TDMA) 1.4 ms

0.5 ms

1 ms

Page 14: Patrick Verkaik Yuvraj Agarwal, Rajesh Gupta, Alex C. Snoeren

14

Tim

e w

rt T

DM

A c

ycle

(µs

)

Station 0 1 2 3 4 5 6 7 8 9

  Experiment: ◦  CSMA/CA background data traffic ◦  Ten TDMA VoIP stations

  TDMA: ◦  10-ms cycle ◦  1-ms slots

Most transmissions should start in own or next slot

Page 15: Patrick Verkaik Yuvraj Agarwal, Rajesh Gupta, Alex C. Snoeren

15

  Downlink direction: ◦  Aggregation across multiple receivers ◦  Addresses framing and contention

overhead

AP

  Uplink direction: ◦  Prioritized TDMA (Time Division

Multiple Access) ◦  Addresses contention overhead

Page 16: Patrick Verkaik Yuvraj Agarwal, Rajesh Gupta, Alex C. Snoeren

16

AP

aggregated IP packet

VoIP packets

Voice application

aggregator

overhear overhear

Page 17: Patrick Verkaik Yuvraj Agarwal, Rajesh Gupta, Alex C. Snoeren

17

voice application

wireless card

softspeak control

iptables

Softspeak-enabled phone

AP

aggregator

de-aggregator

downlink aggregation

uplink TDMA

register IP address + port

wireless driver

Atheros, Ralink

Skype, Twinkle

TCP/IP

Page 18: Patrick Verkaik Yuvraj Agarwal, Rajesh Gupta, Alex C. Snoeren

18

  Impact of Softspeak on: ◦ Call quality ◦ Residual throughput

 TCP data traffic, 10-ms voice codec   See paper for: ◦ UDP data traffic ◦  20-ms codec ◦  Simulation results

Page 19: Patrick Verkaik Yuvraj Agarwal, Rajesh Gupta, Alex C. Snoeren

19

Downlink MOS TCP throughput (KB/s)

default TDMA aggregation softspeak

Throughput Downlink MOS Uplink MOS

When TCP downloads

5x 3.5→3.3 3.7→3.6

When TCP uploads

+50% 1 →3.5 2.9→3.8

Page 20: Patrick Verkaik Yuvraj Agarwal, Rajesh Gupta, Alex C. Snoeren

20

3x

Page 21: Patrick Verkaik Yuvraj Agarwal, Rajesh Gupta, Alex C. Snoeren

21

 Testbed with voice + Web + bulk TCP  When enabling Web traffic: ◦  Bulk TCP upload improvement disappears ◦ However combined TCP capacity improvement is

preserved

 Exactly as is the case without VoIP traffic

Page 22: Patrick Verkaik Yuvraj Agarwal, Rajesh Gupta, Alex C. Snoeren

22

  Softspeak: ◦  Protects call quality and data throughput ◦  Using TDMA and aggregation ◦  Implementable in software based on commodity

hardware

  Source code and audio samples at: ◦  http://sysnet.ucsd.edu/wireless/softspeak/

Page 23: Patrick Verkaik Yuvraj Agarwal, Rajesh Gupta, Alex C. Snoeren

23

 Abundance of prior work: ◦  Prioritizing voice, TDMA, aggregation, AP polls stations

(PCF), …

  Share one or more limitations: ◦ Targets framing or contention overhead ◦ Replaces CSMA/CA contention mechanism ◦ Requires changes to AP or WiFi hardware

Page 24: Patrick Verkaik Yuvraj Agarwal, Rajesh Gupta, Alex C. Snoeren

24

  802.11e   QoS extension   Prioritizes VoIP

Uplink MOS

802.11b+e

802.11b

TCP throughput (KB/s)

  802.11g   Higher speed

Page 25: Patrick Verkaik Yuvraj Agarwal, Rajesh Gupta, Alex C. Snoeren

25

 Goal: agree on TDMA schedule ◦ Cycle of 10 TDMA slots, each 1 ms

 However: ◦  Stations might not hear each other ◦ Unmodified access point

AP

Probe request 00:21:00:a9:1e:04

Probe request 00:21:00:23:02:02

Probe response 00:21:00:a9:1e:04

Probe response 00:21:00:23:02:02

reserved prefix

random slot#

Probe response 00:21:00:23:02:04

Probe request 00:21:00:23:02:04

Station 1 Station 2

Page 26: Patrick Verkaik Yuvraj Agarwal, Rajesh Gupta, Alex C. Snoeren

26

time channel occupied packet backoff

SIFS + (2 + random) * cwslot

SIFS + (2 + random) * cwslot

Short inter-frame space (10 µs in 802.11b)

Contention window slot (20 µs in 802.11b)

Page 27: Patrick Verkaik Yuvraj Agarwal, Rajesh Gupta, Alex C. Snoeren

27

SIFS + (1 + 0 ) * cwslot SIFS + (2 + random) * cwslot

random cwslot

SIFS

random SIFS + (2 + random) * cwslot

random=0

time

Short inter-frame space (10 µs in 802.11b)

Contention window slot (20 µs in 802.11b)

channel occupied packet

Page 28: Patrick Verkaik Yuvraj Agarwal, Rajesh Gupta, Alex C. Snoeren

28

  Station i periodically modifies its contention parameters

Slot i+2 Slot i Slot i-1 Slot i+1

Standard 802.11: SIFS + (2 + random) * cwslot

SIFS SIFS+ 1*cwslot

TDMA slot

Backoff station i

time

Page 29: Patrick Verkaik Yuvraj Agarwal, Rajesh Gupta, Alex C. Snoeren

29

  Stations need a shared time reference

 Access points send beacons ◦  E.g. every ~100ms ◦ Heard by all stations

 To synchronize: ◦ Reset TDMA clock after each beacon ◦ Note: also counters clock drift

Page 30: Patrick Verkaik Yuvraj Agarwal, Rajesh Gupta, Alex C. Snoeren

30

Tim

e w

rt T

DM

A c

ycle

(µs

)

Station 0 1 2 3 4 5 6 7 8 9

Page 31: Patrick Verkaik Yuvraj Agarwal, Rajesh Gupta, Alex C. Snoeren

31

 No retransmission for poor overhearer  Exacerbated at higher 802.11g rates  Mitigating steps: ◦  Pick specific destination as receiver:

  Have it associate at lower MAC rate   Helps if it’s a poor receiver   Note: can be dedicated device

◦  Poor receivers can simply opt out

Page 32: Patrick Verkaik Yuvraj Agarwal, Rajesh Gupta, Alex C. Snoeren

32

TCP sends TCP receives

+45% 4x

Overhearing improvements: 7%

No overhearing improvements: 20%

Page 33: Patrick Verkaik Yuvraj Agarwal, Rajesh Gupta, Alex C. Snoeren

33

TCP sends TCP receives

Uplin

k M

OS

aggregation default

TDMA softspeak

Softspeak maintains uplink MOS

Severe degradation uplink MOS