59
1 Towards the Quality of Service for VoIP Traffic in IEEE 802.11 Wireless Networks Sangho Shin PhD candidate Computer Science Columbia University

1 Towards the Quality of Service for VoIP Traffic in IEEE 802.11 Wireless Networks Sangho Shin PhD candidate Computer Science Columbia University

  • View
    214

  • Download
    0

Embed Size (px)

Citation preview

1

Towards the Quality of Service for VoIP Traffic in IEEE 802.11 Wireless Networks

Sangho Shin

PhD candidateComputer Science

Columbia University

2

VoIP over WLANs

InternetInternet

IPGW

WIFI

3

Problems on VoIP in WLANs

WIFI

• User mobility: Handoff

4

Problems on VoIP in WLANs

Theater Stadium

WIFI

• User mobility: Handoff

• Capacity

5

Problems on VoIP in WLANs

WIFI

• User mobility: Handoff

• Capacity

• Call admissionTheater Stadium

6

QoS problems on VoIP in WLANs

Handoff Capacity

Call Admission Control

QoS

7

Outline

QoS

•Layer 2 handoff•Layer 3 handoff•pDAD

•Measurement•APC•DPCF

•QP-CAT

Handoff Capacity

Call Admission Control

8

Handoff

WIFI

• Layer 2 handoff– Handoff between two APs

• Layer 3 handoff– Handoff between two subnets

Handoff

9

Selective Scanning & Caching

A layer 2 handoff algorithm to minimize the scanning time

Sangho Shin, Andrea G. Forte, Anshuman Singh Rawat, and Henning Schulzrinne. Reducing MAC layer handoff latency in IEEE 802.11 wireless LANs. ACM MobiWac 2004

Handoff

10

Layer 2 Handoff

New APAuthentication request

Authentication response

Association request

Association response

Mobile client All APs

Probe request (broadcast)

Probe response

Probe delay

Authentication delay

Association delay

500ms

2ms

2ms

• Standard Layer 2 handoff procedure

Handoff

11

Fast L2 Handoff

• Selective Scanning– Scan the channels that APs are most likely installed

on• Previously scanned APs’ channels• Non-overlapping channels• Do not scan the current channel

Channel mask

11

6

1

11

WIFI

1,11

Channel mask

1 2 3 4 65 7 8 9 10 11

1 2 3 4 65 7 8 9 10 11

AP1

AP2

AP3

AP4

1 2 3 4 65 7 8 9 10 11

Handoff

12

Fast L2 Handoff

• Selective Scanning– Scan the channels that APs are most likely installed

on• Previously scanned channels• Non-overlapping channels• Do not scan the current channel

• Caching– Locality– Store the scanned AP data to a cache– Perform handoff without scanning

Channel mask

1 2 3 4 65 7 8 9 10 11

Handoff

13

• Caching– Locality– Store the scanned AP data to a cache– Perform handoff without scanning

Fast L2 Handoff

11

6

1

11Key 1 2

WIFI

AP1

AP2

AP3

AP4

CacheKey 1 2

AP1 AP2 AP3

Key 1 2

AP1 AP2 AP3

AP2 AP3 AP4

Key 1 2

AP1 AP2 AP3

AP2 AP3 AP4

Key 1 2

AP1 AP2 AP3

AP2 AP3 AP4

Handoff

14

Fast L2 Handoff

• Implementation– HostAP driver + Prism2 chipset– Requires changes only in the client wireless driver

• Experimental results

0

100

200

300

400

500

Original SelectiveScanning

Caching

Total handoff timems

Experiments in 802.11b WLANs

US PatentApplication No. 60/549,782

Handoff

15

• L3 handoff– Occurs when the subnet changes due to L2 handoff– Requires a new IP address

• Problem of L3 handoff– Detection of subnet change– Long acquisition of a new IP address

Layer 3 Handoff

WIFI

DHCP Discover

DHCP Offer

DHCP Request

DHCP ACK

DAD

DHCP procedure

DAD: Duplicate Address Detection

Handoff

16

Seamless L3 handoff

• Goal – Do not modify any standard or infrastructure

• Fast subnet change detection– Subnet has each DHCP server or relay agent

• Send a bogus DHCP request in the new subnet

• Temp_IP– Scan unused IP address actively

• Send APR requests to a range of IP addresses

• Reduced the total L3 handoff to 180ms

Andrea Forte, Sangho Shin, and Henning Schulzrinne. Improving Layer 3 Handoff Delay in IEEE 802.11 Wireless Networks. IEEE WICON, Aug 2006.

Handoff

17

pDAD

Passive Duplicate Address Detection

A real time DAD mechanism in the DHCP server

Sangho Shin, Andrea Forte, and Henning Schulzrinne. Passive Duplicate Address Detection for Dynamic Host Configuration Protocol (DHCP). IEEE GLOBECOM, 2006.

Handoff

18

Passive DAD

• Server side solution for seamless L3 handoff– Eliminate the DAD procedure in the DHCP

server when assigning new IP addresses

160.123.234.31160.123.231.32160.123.235.35160.123.232.36160.123.238.38

160.123.234.32 160.123.234.32 160.123.234.35 160.123.234.36 160.123.234.31 160.123.234.38

VVVV

Request

Response

Monitor the network

Collect IP addresses

Update IP list

Respond quickly to the request

Handoff

19

Passive DAD

DHCP server

Router

Lease table

IP MAC ExpireIP MAC

AA-BB-CC1.1.1.1

• ArchitectureAddress Usage Collector (AUC)

Handoff

20

Passive DAD

AUCDHCP server

Router

IP:1.1.1.1

IP:1.1.1.1

IP:1.1.1.1MAC:AA-BB-CC

Lease table

ARP query

Web server

MAC:AA-BB-CC

IP MAC Expire1.1.1.1 AA-BB-CC 100

IP MACAA-BB-CC1.1.1.1

• Example 1: IP address collection

Handoff

21

Passive DAD

AUCDHCP server

Router

IP:1.1.1.1

IP:1.1.1.2MAC:DD-EE-FF

Lease table

Web server

MAC:AA-BB-CC

IP MAC Expire1.1.1.1 AA-BB-CC 100

IP MACAA-BB-CC1.1.1.1

IP:1.1.1.2 MAC:DD-EE-FF

ARP query

1.1.1.2 DD-EE-FF 100

Bad IP tableIP MAC

DD-EE-FF1.1.1.2

• Example 2: Malicious user detection

Handoff

22

Passive DAD

AUCDHCP server

Router

IP:1.1.1.1

IP:1.1.1.1MAC:00-00-00

Lease table

ARP query

Web server

Block 00-00-00

Forward HTTP traffic

MAC:AA-BB-CC

IP MAC Expire1.1.1.1 AA-BB-CC 100

IP MACAA-BB-CC1.1.1.1

IP:1.1.1.2 MAC:DD-EE-FF

IP:1.1.1.1 MAC:00-00-00

1.1.1.2 DD-EE-FF 1001.1.1.1 AA-BB-CC 100

Bad IP tableIP MAC

DD-EE-FF1.1.1.2

AA-BB-CC1.1.1.1

FORCE RENEWIP:1.1.1.3

• Example 3: IP collision detection

Handoff

23

Outline

Handoff Capacity

Call Admission Control

QoS

•Layer 2 handoff•Layer 3 handoff•pDAD

•Measurement•APC•DPCF

•QP-CAT

24

VoIP Capacity

• Definition– The number of VoIP calls whose uplink and

downlink delay are less than 60ms

Capacity

Threshold Experimental result64kb/s 20ms PI802.11b 11Mb/sWIFI

InternetInternet

End-to-end < 150ms [ITU-G]

< 60ms30ms 30ms30ms

Capacity

25

VoIP Capacity

• Experimental measurement in the ORBIT test-bed– ORBIT test-bed

(Rutgers Univ. NJ)• Open-Access

Research Test-bed for Next-Generation Wireless Networks

Sangho Shin and Henning Schulzrinne. Experimental measurement of the capacity for VoIP traffic in IEEE 802.11 Wireless Networks. IEEE INFOCOM, 2007.

Capacity

26

VoIP Capacity

64kb/s VoIP traffic20ms packetization interval11Mb/s data rate

CBR VBR with 0.39 activity ratio

Experimental results in the ORBIT test-bed

Downlink delay

Uplink delay

Downlink delay

Uplink delay

Capacity

27

VoIP Capacity

• Factors that affects the VoIP capacity– Preamble size

– ACK data rate• 11Mb/s (QualNet) 16 calls

• 2 Mb/s (MadWifi driver, NS-2) 15 calls

– Offset among VoIP packets of other clients• Simulator Synchronized high collision rate

• Experiments Randomized lower collision rate

– ARF (Auto Rate Fallback)• Simulator Fixed rate15 calls

• Experiments ARF enabled by default14 calls

Preamble PLCP header

TX time

VoIP

Capacitysize rate size rate

Long 144b 1Mb/s 48b 2Mb/s 192μs 12 calls

Short 72b 1Mb/s 48b 1Mb/s 96 μs 15 calls

1 2 3 4 5

Packetization interval

1 2 3 4 5

offset

PLCPMAC IP payload

802.11 frame

Capacity

28

VoIP Capacity

• Factors that affects the experimental results– Scanning

• Scanning related frames delays VoIP packets• Simulator No scanning• Experiments Scan APs due to retransmissions

– Retry limit• Long retry limit (4) short transmission time, high packet

loss• Short retry limit (7) long transmission time, low packet loss

– Network buffer size• Buffer size ↑ packet loss ↓ delay ↑• Buffer size ↓ packet loss ↑ delay ↓

Capacity

29

DPCF

Dynamic Point Coordination Function

An improved polling based PCF MAC protocol

Takehiro Kawata, Sangho Shin, Andrea G. Forte, and Henning Schuzrinne. Improving The Capacity for VoIP Traffic in IEEE 802.11 Networks with Dynamic PCF. IEEE WCNC 2005.

Capacity

30

Dynamic PCF

• PCF (Point Coordination Function)– Polling based media access

• No contention, no collision

– Polling overhead• No data to transmit Unnecessary polls waste bandwidth• Big overhead, considering the small VoIP packet size

Contention Free Period (CFP) Contention Period (CP)

Contention Free Repetition Interval

DCF

poll poll Poll+data poll pollBeacon CF-End

data data data Null Null

Polling overhead

Capacity

31

• Dynamic Polling List– Keeps the talking nodes only

• More Data bit– Set the More Data bit, then the AP polls the node again

• Synchronization– Synchronize the polls with data

Dynamic PCF

Silence periodpoll

Null

Talking period

voice

Talking period

send in CP

1

1

2

2

1

1 2

1 2

1

Set more data bit

32

Simulation results

• VoIP capacity

– Increased from 30 calls to 37 calls– Polls decreased by 50%, Null Functions by 90%

• 760 frames / second = 7.29 VBR Calls

0

100

200

300

400

500

600

700

Num

ber

of f

ram

es /

sec

ond

Polls Null Functions

PCF

DPCF28 30

37

0

5

10

15

20

25

30

35

40

Nu

mb

er o

f ca

lls

DCF PCF DPCF

MAC protocols

Capacity

33

APC

Adaptive Priority Control

A new packet scheduling algorithm at the AP in DCF

Sangho Shin and Henning Schulzrinne. Balancing uplink and downlink delay of VoIP traffic in IEEE 802.11 Wireless Networks using Adaptive Priority Control (APC). ACM QShine 2005.

Capacity

34

APC

• Big gap between uplink and downlink delayUnfair resource

distribution between uplink and downlink in DCF

0

100

200

300

400

500

600

26 27 28 29 30 31 32 33 34

Number of VoIP sourcesD

ela

y (

ms)

Uplink (90th%tile)

Downlink (90th%tile)

Uplink (AVG)

Downlink (AVG)

Solution High priority to AP

How? How much?

Capacity

35

APC

• How?– Contention Free Transmission (CFT)

• Transmit P packets contention free (w/o backoff)

• How much? (Optimal P)– P QAP/QC

• QAP is the number of packets in the queue of the AP• QC is the average number of packets in the queue of all

clients

– Adapts to instant change of uplink and downlink traffic volume

D D D D D D DUP=3 P=4

Ubackoff

Capacity

36

APC

QAP =12, QC=2, P=6Downlink volume > Uplink volumeQAP =6, QC=1, P=6

• Example

Capacity

37

APC

0

100

200

300

400

500

600

30 31 32 33 34 35 36 37

Number of VoIP sources

De

lay

(ms)

Uplink (90th%tile)

Downlink (90th%tile)

Uplink (AVG)

Downlink (AVG)

Threshold

Capacity

28 Calls 35 calls (25%)

802.11b11Mb/s64kb/s VBR traffic20ms pkt intvl0.39 activity ratio

Simulation results

Capacity

38

Outline

Handoff Capacity

Call Admission Control

QoS

•Layer 2 handoff•Layer 3 handoff•pDAD

•Measurement•APC•DPCF

•QP-CAT

39

QP-CAT

Queue size Prediction using Computation of Additional Transmissions

A novel call admission control algorithm

Sangho Shin and Henning Schulzrinne. Call Admission Control in IEEE 802.11 Wireless Networks using QP-CAT. IEEE INFOCOM 2008.

CAC

40

Admission Control using QP-CAT

• QP-CAT– Metric: Queue size of

the AP • Strong correlation

between the queue size of the AP and delay

Correlation between queue size of the AP and delay(Experimental results with 64kb/s VoIP calls)

– Key idea: predict the queue size increase of the AP due to new VoIP flows, by monitoring the current packet transmissions

CAC

41

Emulate newVoIP traffic

Packets from a virtual new flow

QP-CAT

• Basic flow of QP-CAT

Compute Additional Transmission

channel

Actual packets

Additional transmission

Decrease the queue size

Predict the future queue size

+

current packets

additional packets

CAC

42

QP-CAT

• Computation of Additional Transmission

– Virtual Collision– Deferrals of virtual packets

1

Actual frames from existing VoIP flows

channel

Clock starts Clock stopsTc

Tt

Additionaly transmittable frames

DIFSbackoff

Tv

SIFSACK frame

VoIP packet

TbTACK

Tt

2

CAC

43

QP-CAT

16 calls (actual)

17 calls + 1 virtual call(predicted by QP-CAT)

16 calls + 1 virtual call(predicted by QP-CAT)

17 calls (actual)

17th call is admitted

17 calls + 1 virtual call(predicted by QP-CAT)

16 calls + 1 virtual call(predicted by QP-CAT)

18th call starts17 calls (actual)

18 calls (actual)

Simulation results

CAC

44

QP-CAT

• Experimental results (64kb/s 20ms PI)

11Mb/s 1 node - 2Mb/s

2 nodes - 2Mb/s 3 nodes - 2Mb/s

CAC

45

QP-CAT

• QP-CATe– QP-CAT with 802.11e– Emulate the transmission during TXOP

D D D TCP

TXOP

Tc

D D D TCP

Tc

D D D

TXOP

CAC

46

Conclusion

• Reduced the layer 2 handoff time using Selective Scanning and Caching

• Achieved the seamless layer 3 handoff using Temp IP and pDAD

• Measured the VoIP capacity in wireless networks via experiments and identified the factors that affect the VoIP capacity

• Improved the VoIP capacity using DPCF and APC

• Can perform call admission control with fully utilizing the channel bandwidth, using QP-CAT

47

Other research

• Implementation of SIP Servlet

• Development of a SIP client in a PDA (SHARP Zaurus)

• Soft Handoff using dual wireless cards

• Measurement of usage of IEEE 802.11 wireless networks in an IETF meeting

48

Thank you!

49

VoIP Capacity in IEEE 802.11e

Experimental results using AC_VO and AC_VI Experimental results with TCP traffic using AC_VO

50

Comparison b/w poll and VoIP frame

• Poll size– 28B (MAC header + CRC)– Total TX time = PHY (128 us) + MAC (26 us) = 154

us

• Data– 28B + 160B– Total TX time = PHY (128 us) + MAC (26 us) + VoIP

data (116 us) = 270 us

• A Poll = 154/270 = 60% of a VoIP frame

51

Development of SIP VoIP Client

SIP

52

Development of SIP VoIP ClientSHARP ZaurusPrototype

53

Development of SIP VoIP Client

55

APC

QAP =8, QC=2, P=4

QAP =4, QC=2, P=2

QAP =12, QC=2, P=6Downlink == Uplink

Downlink < Uplink

Downlink > Uplink

QAP =4, QC=1, P=4 QAP =6, QC=1, P=6

QAP =2, QC=1, P=2

56

Seamless L3 handoff• Goal

– Do not modify any standard or infrastructure• Fast subnet change detection

– Idea: Subnet has each DHCP server or relay agent

– Broadcast a bogus DHCP request• The DHCP server responds with DHCP NACK• Check the IP address of the DHCP server

– Extension of L2Cache• Stores the subnet ID

– IP address of DHCP or relay agent

• Temp IP– Idea: Unused IPs every 5 IPs used– Scan potentially unused IP addresses in the

new subnet• Transmit multiple ARP packets

– Pick a non-responded IP address as a temporary IP address

• Use it until a new IP address is assigned by the DHCP server

ARP

DHCP Discover

timeout

Update sessions

DHCP Offer

DHCP RequestUpdate sessions

DHCP Ack

DHCP Request

DHCP NACKDetect subnet change

L2handoff

Determine Temp IP128.59.17.1128.59.17.2128.59.17.3128.59.17.4128.59.17.5128.59.17.6128.59.17.7128.59.17.8128.59.17.9

128.59.17.10128.59.17.11128.59.17.12

57

0

200

400

600

800

1000

Original TempIP Best

Total handoff timems

Seamless L3 handoff

• Implementation– Linux, HostAP driver, SIP client

• Experiments

18030

CU WLAN CS LAN

WIFI

Experiments in 802.11b

58

• Problems of PCF in VBR VoIP traffic– Polling during silence periods

– Synchronization problem

– Multiple packetization intervals

Silence period

Dynamic PCF

poll

Null

Talking period

voice

Example : 64kb/s 20ms PI with 0.39 ARTotal waste = 9 VBR calls

sent in CP

APP

MAC

1 2 1

1 1 1 12 2

1 2 1 1 2

1 1 1 12 2

1 2

APP

MAC

CFP Interval = 10ms CFP Interval = 20ms

Node 1: 10ms, Node 2: 20ms

59

• Dynamic Polling List– Keeps the talking nodes only

• More Data bit– Set the More Data bit, then APs polls the node again

• Synchronization

Dynamic PCF

Silence periodpoll

Null

Talking period

voice

Talking period

send in CP

1 2

1 1 1 12 2

1 21

APP

MAC

CFP Interval = 20ms Set more data bit

APP

MAC

cannot be in CP Set more data bit