scheduling transmissions in 802.11 networks ananth rao sahara retreat, jan 2004

22
Scheduling Transmissions in 802.11 Networks Ananth Rao SAHARA Retreat, Jan 2004

Post on 20-Dec-2015

218 views

Category:

Documents


0 download

TRANSCRIPT

Scheduling Transmissions in 802.11 Networks

Ananth Rao

SAHARA Retreat, Jan 2004

Motivation

Multi-hop networks based on IEEE 802.11 standards have a lot of potential Hardware is inexpensive Many interesting

applications Recently, lots of thrust

from the research community (MIT, MSR, Intel..)

Internet Gateway

Problem

802.11 MAC does not perform well for multi-hop networks

Real test-beds have been plagued with performance problems (Roofnet, MSR Testbed) Throughput (poor contention resolution) Fairness (longer routes get very low throughput)

Goal: Improve multi-hop 802.11 throughput and fairness

Constraints Do not want to modify the MAC protocol

Takes a lot of time and effort to standardizeMust be compatible with the 802.11 MACUse readily available low-cost hardware

The only control we have is: When to ask the card to send a packetDo some form of scheduling on top of 802.11

Use an “Overlay” for the MAC Layer

Overhead of Contention-Resolution

Sender Receiver

RTS

CTS

DATA

ACK 70%??1 Mbps54Mbps802.11g

40%1 Mbps11 Mbps802.11b

38%6 Mbps54 Mbps802.11a

Overhead (1500 bytes)

Low Data Rate

High Data RateProtocol

Hidden Terminal Problem

CTS may not be received clearly for the following reasons

1. Node is within interference but outside communication range

2. Another transmission interferes with reception of CTS (loss rates as high as 60% seen in simulations)

S R

I1I2

Fairness Problems

The 802.11 MAC gives roughly equal number of transmission opportunities to competing stations

This results in undesirable outcomes whenSenders use different packet sizesSenders are transmitting at different ratesSenders are forwarding traffic from other

nodes

Different Data Rates

Data Rate Throughput

Case IA 11 Mbps 3.09 Mbps

B 11 Mbps 3.36 Mbps

Case IIA 11 Mbps 0.76 Mbps

B 1 Mbps 0.76 Mbps

R

BA

Forwarding on Behalf of Others

Ethernet

1/2

1/6 1/6 1/6

1/2

1/61/6

1/6

This problem cannot be solved by local scheduling or queue management algorithms like WFQ

Related Work and Challenges

Collision-free MACs A Channel Access Scheme for Large Dense Packet Radio Networks

(1998), Timothy J. Shepard Channel Access Scheduling in Ad Hoc Networks with Unidirectional

Links (2001), Lichun Bao, J.J. Garcia-Luna-Aceves New Challenges

Accurate timing not possible at the software level Devices don’t expose all information (eg. cannot carrier-sense and

obtain result) Senders from other networks might interfere – Polling messages might

be lost No changes to physical layer (spread spectrum techniques)

Time Slots on Top of 802.11Time

0 ms

24 ms

48 ms

72 ms

•Assume local synchronization of clocks

•Use coarse-grained (compared to packet transmission times) time slots

•Slots maybe

•Available for contention

•Assigned to a particular node

•If the nodes queue goes empty, the rest of the slot is open to all

1 2 3 4 7 865

Groups of 8 slots each of length 3ms

Amortize the Cost of Contention Resolution

Time

0 ms

24 ms

48 ms

72 ms

•Nodes that transmitted successfully in the previous slot with index “i” own the slot with probability (1-p)

•Cost is amortized because

• A time-slot is much longer than a packet transmission

•Nodes compete for an average of 1/p slots at a time

•Orthogonal to method used to resolve contention for a slot

1 2 3 4 7 865

C C

C CC CC CC CC

C C

C C

C

Synchronization of Clocks

... MAC hdr ts tsAuth tsDist IP hdr ….

Initialize()myTsAuth = myNodeId;myTsDist = 0;

Recv(Packet p)tDiff = estimatedTransitTime(p);if(p.tsAuth < myTsAuth ||

(p.tsAuth == myTsAuth && p.tsDist < myTsDist)) {myTime = p.ts + tDiff;myTsAuth = p.tsAuth;myTsDist = p.tsDist+1;

}

Every packet in encapsulated in a new header which contains a timestamp

Competing for and Relinquishing a Slot Use 2-hop broadcasts to request a slot or to

announce giving up a slot The probability of winning a slot is based on the

current # of slots owned and the weight of the competing node

Compete for a slot on Receiving a relinquish message Think slot is free and no packets are seen for 0.5ms

after start of a slot Immediate neighbors may stop the broadcast if it is

somebody else’s slot

Simulation Results

Qualnet Network Simulator Commercial software from www.scalable-

networks.com Packet level simulator similar to ns2, but faster and

more scalable

Models collisions, interference and contention Use 802.11a at 54 Mbps 20 slots of 3 ms each, p=0.05

Performance in a Chain

500000

1e+006

1.5e+006

2e+006

2.5e+006

3e+006

3.5e+006

4e+006

2 2.5 3 3.5 4 4.5 5

Th

rou

gh

pu

t (M

bp

s)

Length of Chain

No Slots - No RTSNo Slots - With RTS

Slots - No RTSSlots - No ACK

Performance in a Multi-hop Network (Collisions)

70000

75000

80000

85000

90000

95000

100000

105000

110000

20 25 30 35 40 45 50

Unicast - no slotsACK - no slots

Packets - no slotsUnicast - slots

ACK - slotsPackets - slots

TestbedHardware

•ASUS Pundit barebones system

•Celeron 2.4 Ghz, 256 MB

•Netgear WAG511, 802.11a

Software•RH 9.0, Kernel 2.4.22

•Madwifi driver for Atheros

•Click modular router

Click Architecture

EncapTimestamp

DecapTimestamp

TimeslotEnforcerContentionResolver

FromDevice

ToDevice

Mixed Queue

Rest of the Router

1

1Push

Pull

LIFO

FIFO

SetTimeOffset

SetOKSlots

Results (Testbed – Data Rates)

0

2

4

6

8

10

12

14

54 36 18 12 6

Data Rate of Node 2

TC

P T

hro

ug

hp

ut

(Mb

ps

)

Node 1 Node 2

0

2

4

6

8

10

12

14

54 36 18 12 6

Data Rate of Node 2

TC

P T

hro

ug

hp

ut

(Mb

ps

)

Node 1 Node 2

Without Scheduling With Scheduling

Results (Testbed – Chain)

0

5

10

15

20

25

1 1.5 2 2.5 3 3.5 4 4.5 5

Th

rou

gh

pu

t (M

bp

s)

Number of links

With BeaconingWithout Beaconing

Conclusions and Future Work

Coarse-grained scheduling on top of 802.11 is a very powerful technique to alleviate inefficiencies of the MAC protocol in

resolving contention overcome the lack of flexibility of assigning priorities

to senders Future work

Understand the performance problems in multi-hop networks better using the test-bed

Further refine the algorithms for allocation of slots and the implementaion