43
Enabling TDMA for Today’s Wireless LANs Zhice Yang 1 *, Jiansong Zhang 2 *, Kun Tan 2 , Qian Zhang 1 , Yongguang Zhang 2 1 CSE, Hong Kong University of Science and Technology 2 Microsoft Research Asia * Co-Primary Author

Enabling TDMA for Today’s Wireless LANs...Client1 Client2 Client3 Client4 Random SIFS +0 slots +3 slots +1 slots +4 slots Time. Group Polling •Group polling for the first transmission

  • Upload
    others

  • View
    5

  • Download
    0

Embed Size (px)

Citation preview

Page 1: Enabling TDMA for Today’s Wireless LANs...Client1 Client2 Client3 Client4 Random SIFS +0 slots +3 slots +1 slots +4 slots Time. Group Polling •Group polling for the first transmission

Enabling TDMA for Today’s Wireless LANs

Zhice Yang1*, Jiansong Zhang2*, Kun Tan2,

Qian Zhang1 , Yongguang Zhang2

1CSE, Hong Kong University of Science and Technology 2Microsoft Research Asia

*Co-Primary Author

Page 2: Enabling TDMA for Today’s Wireless LANs...Client1 Client2 Client3 Client4 Random SIFS +0 slots +3 slots +1 slots +4 slots Time. Group Polling •Group polling for the first transmission

Motivation

ClientA

AP1 AP2

ClientB

Page 3: Enabling TDMA for Today’s Wireless LANs...Client1 Client2 Client3 Client4 Random SIFS +0 slots +3 slots +1 slots +4 slots Time. Group Polling •Group polling for the first transmission

Motivation

ClientA

AP1 AP2

ClientB ClientC

!?

Page 4: Enabling TDMA for Today’s Wireless LANs...Client1 Client2 Client3 Client4 Random SIFS +0 slots +3 slots +1 slots +4 slots Time. Group Polling •Group polling for the first transmission

Motivation

ClientA

AP1 AP2

ClientB ClientC

!?

AP1 B BB B

AP2 C CC CTime

Page 5: Enabling TDMA for Today’s Wireless LANs...Client1 Client2 Client3 Client4 Random SIFS +0 slots +3 slots +1 slots +4 slots Time. Group Polling •Group polling for the first transmission

Motivation

• Limitations of Distributed Coordination Function (DCF) in Current Wireless LANs• Weak Interference Management

• Inefficient Channel Access

• Lacking Guarantee in QoS

Page 6: Enabling TDMA for Today’s Wireless LANs...Client1 Client2 Client3 Client4 Random SIFS +0 slots +3 slots +1 slots +4 slots Time. Group Polling •Group polling for the first transmission

Motivation

• Limitations of Distributed Coordination Function (DCF) in Current Wireless LANs• Weak Interference Management

• Inefficient Channel Access

• Lacking Guarantee in QoS

• Demands for Higher-Efficiency Wireless Network• Proliferation of Wireless Devices

• Emerging Network QoS Sensitive Applications

Conflict

Page 7: Enabling TDMA for Today’s Wireless LANs...Client1 Client2 Client3 Client4 Random SIFS +0 slots +3 slots +1 slots +4 slots Time. Group Polling •Group polling for the first transmission

How to Fill the Gap?

ClientA

AP1 AP2

ClientB ClientC

AP1 B BB B

AP2 C CC CTime

Backhaul Network

Page 8: Enabling TDMA for Today’s Wireless LANs...Client1 Client2 Client3 Client4 Random SIFS +0 slots +3 slots +1 slots +4 slots Time. Group Polling •Group polling for the first transmission

How to Fill the Gap? -- TDMA

• Arrange the transmission of all the wireless packets in the air to• Manage interfering transmissions

• Reduce contention overhead

• Provide priorities for QoS transmissions

Page 9: Enabling TDMA for Today’s Wireless LANs...Client1 Client2 Client3 Client4 Random SIFS +0 slots +3 slots +1 slots +4 slots Time. Group Polling •Group polling for the first transmission

Research Question

• Arrange the transmission of all the wireless packets in the air to• Manage interfering transmissions

• Reduce contention overhead

• Provide priorities for QoS transmissions

Is TDMA possible with commodity WLAN devices?

Page 10: Enabling TDMA for Today’s Wireless LANs...Client1 Client2 Client3 Client4 Random SIFS +0 slots +3 slots +1 slots +4 slots Time. Group Polling •Group polling for the first transmission

Feasibility for TDMA in WLAN

• Time Synchronization• Backhaul network

• Scheduling• Central controller

Exist

Page 11: Enabling TDMA for Today’s Wireless LANs...Client1 Client2 Client3 Client4 Random SIFS +0 slots +3 slots +1 slots +4 slots Time. Group Polling •Group polling for the first transmission

ClientA

AP1 AP2

ClientB ClientC

Backhaul Network

Architecture Borrowed from SDN

ClientA

Ethernet

AP1

OpenTDMF

AP2

OpenTDMF

ClientB ClientC

OpenTDMFController

Page 12: Enabling TDMA for Today’s Wireless LANs...Client1 Client2 Client3 Client4 Random SIFS +0 slots +3 slots +1 slots +4 slots Time. Group Polling •Group polling for the first transmission

Architecture Borrowed from SDN

10… 11 12 …

Time

ClientA

Ethernet

AP1

OpenTDMF

AP2

OpenTDMF

ClientB ClientC

OpenTDMFController

AP2<->ClientCin 10 slots

C

Page 13: Enabling TDMA for Today’s Wireless LANs...Client1 Client2 Client3 Client4 Random SIFS +0 slots +3 slots +1 slots +4 slots Time. Group Polling •Group polling for the first transmission

Architecture Borrowed from SDN

10… 11 12 …

Time

ClientA

Ethernet

AP1

OpenTDMF

AP2

OpenTDMF

ClientB ClientC

OpenTDMFController

AP2<->ClientCin 12 slots

C

Page 14: Enabling TDMA for Today’s Wireless LANs...Client1 Client2 Client3 Client4 Random SIFS +0 slots +3 slots +1 slots +4 slots Time. Group Polling •Group polling for the first transmission

Architecture Borrowed from SDN

10… 11 12 …

Time

ClientA

Ethernet

AP1

OpenTDMF

AP2

OpenTDMF

ClientB ClientC

OpenTDMFController

AP2<->ClientCin 10,12

AP1<->ClientBin 11

Page 15: Enabling TDMA for Today’s Wireless LANs...Client1 Client2 Client3 Client4 Random SIFS +0 slots +3 slots +1 slots +4 slots Time. Group Polling •Group polling for the first transmission

Architecture Borrowed from SDN

10… 11 12 …

Time

ClientA

Ethernet

AP1

OpenTDMF

AP2

OpenTDMF

ClientB ClientC

OpenTDMFController

AP1

AP2

A A B B A A A

C C C C C

A A

C

AP1<->ClientBin 11

AP2<->ClientCin 10,12

Page 16: Enabling TDMA for Today’s Wireless LANs...Client1 Client2 Client3 Client4 Random SIFS +0 slots +3 slots +1 slots +4 slots Time. Group Polling •Group polling for the first transmission

Challenges

• Time Synchronization

~10𝜇𝑠

Commodity WLAN devices lack means for accurate synchronization

10 11 12Local Time of AP1:

10 11 12Local Time of AP2:

Page 17: Enabling TDMA for Today’s Wireless LANs...Client1 Client2 Client3 Client4 Random SIFS +0 slots +3 slots +1 slots +4 slots Time. Group Polling •Group polling for the first transmission

Challenges

• Time Synchronization

• Uplink Scheduling Enforcement

Commodity WLAN devices lack means for accurate synchronization

Commodity WLAN devices is designed for distributed access and determines channel access

independently

Page 18: Enabling TDMA for Today’s Wireless LANs...Client1 Client2 Client3 Client4 Random SIFS +0 slots +3 slots +1 slots +4 slots Time. Group Polling •Group polling for the first transmission

Outline

• OpenTDMF Design• Time Synchronization

• Uplink Scheduling Enforcement

• Experiment Results

• Scheduling Examples

• Conclusion

Page 19: Enabling TDMA for Today’s Wireless LANs...Client1 Client2 Client3 Client4 Random SIFS +0 slots +3 slots +1 slots +4 slots Time. Group Polling •Group polling for the first transmission

Outline

• OpenTDMF Design• Time Synchronization

• Uplink Scheduling Enforcement

• Experiment Results

• Scheduling Examples

• Conclusion

Page 20: Enabling TDMA for Today’s Wireless LANs...Client1 Client2 Client3 Client4 Random SIFS +0 slots +3 slots +1 slots +4 slots Time. Group Polling •Group polling for the first transmission

Backhaul Time Synchronization

• Using IEEE 1588 Precise Time Protocol (PTP) to Synchronize the Wired APs• Assumption: The network delay is symmetrical

Page 21: Enabling TDMA for Today’s Wireless LANs...Client1 Client2 Client3 Client4 Random SIFS +0 slots +3 slots +1 slots +4 slots Time. Group Polling •Group polling for the first transmission

The Problem

• Large Variation

TP-Link 4900 AP

Switch Chip

SoC

Notebook

Desktop

Page 22: Enabling TDMA for Today’s Wireless LANs...Client1 Client2 Client3 Client4 Random SIFS +0 slots +3 slots +1 slots +4 slots Time. Group Polling •Group polling for the first transmission

Analyze the Problem

• The Architecture of the Commodity AP Introduces Variance in the Delay Measurement

Wireless Access Point

Switch Chip

SoC

Port0 Port3

Port1Port6

NIC0

NIC1

PCIE

LAN/WAN

Wireless NIC

Data

PTP

Page 23: Enabling TDMA for Today’s Wireless LANs...Client1 Client2 Client3 Client4 Random SIFS +0 slots +3 slots +1 slots +4 slots Time. Group Polling •Group polling for the first transmission

Analyze the Problem

• The Architecture of the Commodity AP Introduces Variance in the Delay Measurement

Wireless Access Point

Switch Chip

SoC

Port0 Port3

Port1Port6

NIC0

NIC1

PCIE

LAN/WAN

Wireless NIC

Data

PTP

Delayed!

Page 24: Enabling TDMA for Today’s Wireless LANs...Client1 Client2 Client3 Client4 Random SIFS +0 slots +3 slots +1 slots +4 slots Time. Group Polling •Group polling for the first transmission

Our Solution

Data DataPTP

BeforePort0

AfterPort0

Delayed PTP Packet Normal PTP Packet

Data Data

PTP

Data DataPTP

Data DataPTP

𝑇∆ == 𝑇𝑑𝑎𝑡𝑎 𝑇∆ > 𝑇𝑑𝑎𝑡𝑎

Page 25: Enabling TDMA for Today’s Wireless LANs...Client1 Client2 Client3 Client4 Random SIFS +0 slots +3 slots +1 slots +4 slots Time. Group Polling •Group polling for the first transmission

Scheduling Enforcement

• Use busy waiting to ensure accurate software timer event

• Use transmission gate handler in WiFi chip to ensure accurate transmission control

10… 11 …Scheduling Time Slot

Scheduled Timer Event

Rx Sirq Processing

Real Timer Event

Waiting

Page 26: Enabling TDMA for Today’s Wireless LANs...Client1 Client2 Client3 Client4 Random SIFS +0 slots +3 slots +1 slots +4 slots Time. Group Polling •Group polling for the first transmission

Outline

• OpenTDMF Design• Time Synchronization

• Uplink Scheduling Enforcement

• Experiment Results

• Scheduling Examples

• Conclusion

Page 27: Enabling TDMA for Today’s Wireless LANs...Client1 Client2 Client3 Client4 Random SIFS +0 slots +3 slots +1 slots +4 slots Time. Group Polling •Group polling for the first transmission

Uplink Control

• Polling for Uplink Transmission• Poll packet is a normal packet with a poll flag in the

control filed of the MAC header

• Clients response the poll packet with the uplink data

• Uplink can be treated as downlink

Poll Data ACK Poll+Data Data ACK

SIFS Time

Page 28: Enabling TDMA for Today’s Wireless LANs...Client1 Client2 Client3 Client4 Random SIFS +0 slots +3 slots +1 slots +4 slots Time. Group Polling •Group polling for the first transmission

First Transmission Problem

• AP needs to know about the packet queue information in clients to schedule polling• Clients piggyback queue information in every uplink

packet

• AP doesn’t know when the client want to transmit the first uplink packet

Page 29: Enabling TDMA for Today’s Wireless LANs...Client1 Client2 Client3 Client4 Random SIFS +0 slots +3 slots +1 slots +4 slots Time. Group Polling •Group polling for the first transmission

Group Polling

• Group polling for the first transmission• Group poll packet is a poll packet with group address

Client1 Client2 Client3 Client4

Random SIFS +0 slots +3 slots +1 slots +4 slots

Page 30: Enabling TDMA for Today’s Wireless LANs...Client1 Client2 Client3 Client4 Random SIFS +0 slots +3 slots +1 slots +4 slots Time. Group Polling •Group polling for the first transmission

Group Polling

• Group polling for the first transmission• Group poll packet is a poll packet with group address

Group Poll

Client1 Info

Client3 Info

Client2 Info

Client4 Info

Time

Client1 Client2 Client3 Client4

Random SIFS +0 slots +3 slots +1 slots +4 slots

Page 31: Enabling TDMA for Today’s Wireless LANs...Client1 Client2 Client3 Client4 Random SIFS +0 slots +3 slots +1 slots +4 slots Time. Group Polling •Group polling for the first transmission

Group Polling

• Group polling for the first transmission• Group poll packet is a poll packet with group address

Group Poll Client1 Info

Client3 Info

Client2 Info

Client4 Info

Time

Client1 Client2 Client3 Client4

Random SIFS +0 slots +3 slots +1 slots +4 slots

Page 32: Enabling TDMA for Today’s Wireless LANs...Client1 Client2 Client3 Client4 Random SIFS +0 slots +3 slots +1 slots +4 slots Time. Group Polling •Group polling for the first transmission

Group Polling

• Group polling for the first transmission• Group poll packet is a poll packet with group address

Group Poll Client1 Info Client3 Info

Client2 Info

Client4 Info

Client1 Client2 Client3 Client4

Random SIFS +0 slots +3 slots +1 slots +4 slots

Time

Page 33: Enabling TDMA for Today’s Wireless LANs...Client1 Client2 Client3 Client4 Random SIFS +0 slots +3 slots +1 slots +4 slots Time. Group Polling •Group polling for the first transmission

Group Polling

• Group polling for the first transmission• Group poll packet is a poll packet with group address

Group Poll Client1 Info Client3 Info Client2 Info Client4 Info

Client1 Client2 Client3 Client4

Random SIFS +0 slots +3 slots +1 slots +4 slots

Time

Page 34: Enabling TDMA for Today’s Wireless LANs...Client1 Client2 Client3 Client4 Random SIFS +0 slots +3 slots +1 slots +4 slots Time. Group Polling •Group polling for the first transmission

Outline

• OpenTDMF Design• Time Synchronization

• Uplink Scheduling Enforcement

• Experiment Results

• Scheduling Examples

• Conclusion

Page 35: Enabling TDMA for Today’s Wireless LANs...Client1 Client2 Client3 Client4 Random SIFS +0 slots +3 slots +1 slots +4 slots Time. Group Polling •Group polling for the first transmission

Implementation

• Implemented with TP Link 4900 with Atheros AR9381 and AR9580 WiFi Chip

• Modified ath9k driver

• Modified linuxptp program

Page 36: Enabling TDMA for Today’s Wireless LANs...Client1 Client2 Client3 Client4 Random SIFS +0 slots +3 slots +1 slots +4 slots Time. Group Polling •Group polling for the first transmission

Timing Error

AP1 AP2

ClientA ClientB

AP3

ClientC

Backhaul Network

Page 37: Enabling TDMA for Today’s Wireless LANs...Client1 Client2 Client3 Client4 Random SIFS +0 slots +3 slots +1 slots +4 slots Time. Group Polling •Group polling for the first transmission

Uplink Efficiency

30%

Page 38: Enabling TDMA for Today’s Wireless LANs...Client1 Client2 Client3 Client4 Random SIFS +0 slots +3 slots +1 slots +4 slots Time. Group Polling •Group polling for the first transmission

Outline

• OpenTDMF Design• Time Synchronization

• Uplink Scheduling Enforcement

• Experiment Results

• Scheduling Examples

• Conclusion

Page 39: Enabling TDMA for Today’s Wireless LANs...Client1 Client2 Client3 Client4 Random SIFS +0 slots +3 slots +1 slots +4 slots Time. Group Polling •Group polling for the first transmission

Topology and Policy

AP1 AP2

ClientA ClientB ClientC

Knowledge of the ControllerAP1<->B conflicts with AP2<->C & AP1<->B requires high priority

Control Policy for AP1 Control Policy for AP2Flow ID Time Slots Priority

AP1<->B 1,2 mod 3 High

AP1<->A ALL Normal

Flow ID Time Slots Priority

AP2<->C 0 mod 3 Normal

Page 40: Enabling TDMA for Today’s Wireless LANs...Client1 Client2 Client3 Client4 Random SIFS +0 slots +3 slots +1 slots +4 slots Time. Group Polling •Group polling for the first transmission

AP1 AP2

ClientA ClientB ClientC

Page 41: Enabling TDMA for Today’s Wireless LANs...Client1 Client2 Client3 Client4 Random SIFS +0 slots +3 slots +1 slots +4 slots Time. Group Polling •Group polling for the first transmission

Outline

• OpenTDMF Design• Time Synchronization

• Uplink Scheduling Enforcement

• Experiment Results

• Scheduling Examples

• Conclusion

Page 42: Enabling TDMA for Today’s Wireless LANs...Client1 Client2 Client3 Client4 Random SIFS +0 slots +3 slots +1 slots +4 slots Time. Group Polling •Group polling for the first transmission

Conclusion

• Thoughtful study of accurate synchronization in commodity AP

• Enable polling based uplink transmission in commodity WiFi chips

• Build the OpenTDMF system and validate the feasibility of TDMA in commodity WLANs.

Page 43: Enabling TDMA for Today’s Wireless LANs...Client1 Client2 Client3 Client4 Random SIFS +0 slots +3 slots +1 slots +4 slots Time. Group Polling •Group polling for the first transmission

Thank you !