scheduling transmissions in 802.11 networks
DESCRIPTION
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 - PowerPoint PPT PresentationTRANSCRIPT
![Page 1: Scheduling Transmissions in 802.11 Networks](https://reader035.vdocuments.us/reader035/viewer/2022081519/56812c5f550346895d90ecc2/html5/thumbnails/1.jpg)
Scheduling Transmissions in 802.11 Networks
Ananth Rao
SAHARA Retreat, Jan 2004
![Page 2: Scheduling Transmissions in 802.11 Networks](https://reader035.vdocuments.us/reader035/viewer/2022081519/56812c5f550346895d90ecc2/html5/thumbnails/2.jpg)
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
![Page 3: Scheduling Transmissions in 802.11 Networks](https://reader035.vdocuments.us/reader035/viewer/2022081519/56812c5f550346895d90ecc2/html5/thumbnails/3.jpg)
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
![Page 4: Scheduling Transmissions in 802.11 Networks](https://reader035.vdocuments.us/reader035/viewer/2022081519/56812c5f550346895d90ecc2/html5/thumbnails/4.jpg)
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
![Page 5: Scheduling Transmissions in 802.11 Networks](https://reader035.vdocuments.us/reader035/viewer/2022081519/56812c5f550346895d90ecc2/html5/thumbnails/5.jpg)
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
![Page 6: Scheduling Transmissions in 802.11 Networks](https://reader035.vdocuments.us/reader035/viewer/2022081519/56812c5f550346895d90ecc2/html5/thumbnails/6.jpg)
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
![Page 7: Scheduling Transmissions in 802.11 Networks](https://reader035.vdocuments.us/reader035/viewer/2022081519/56812c5f550346895d90ecc2/html5/thumbnails/7.jpg)
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
![Page 8: Scheduling Transmissions in 802.11 Networks](https://reader035.vdocuments.us/reader035/viewer/2022081519/56812c5f550346895d90ecc2/html5/thumbnails/8.jpg)
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
![Page 9: Scheduling Transmissions in 802.11 Networks](https://reader035.vdocuments.us/reader035/viewer/2022081519/56812c5f550346895d90ecc2/html5/thumbnails/9.jpg)
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
![Page 10: Scheduling Transmissions in 802.11 Networks](https://reader035.vdocuments.us/reader035/viewer/2022081519/56812c5f550346895d90ecc2/html5/thumbnails/10.jpg)
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)
![Page 11: Scheduling Transmissions in 802.11 Networks](https://reader035.vdocuments.us/reader035/viewer/2022081519/56812c5f550346895d90ecc2/html5/thumbnails/11.jpg)
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
![Page 12: Scheduling Transmissions in 802.11 Networks](https://reader035.vdocuments.us/reader035/viewer/2022081519/56812c5f550346895d90ecc2/html5/thumbnails/12.jpg)
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
C2 C CC C3 4 41 C X C 3 C 2
2 3 4 1 C 1 3 2C 2
2
4C
4
C 24
2
2
3
3C X
C1 2
2
1
1
4
![Page 13: Scheduling Transmissions in 802.11 Networks](https://reader035.vdocuments.us/reader035/viewer/2022081519/56812c5f550346895d90ecc2/html5/thumbnails/13.jpg)
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
![Page 14: Scheduling Transmissions in 802.11 Networks](https://reader035.vdocuments.us/reader035/viewer/2022081519/56812c5f550346895d90ecc2/html5/thumbnails/14.jpg)
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
![Page 15: Scheduling Transmissions in 802.11 Networks](https://reader035.vdocuments.us/reader035/viewer/2022081519/56812c5f550346895d90ecc2/html5/thumbnails/15.jpg)
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
![Page 16: Scheduling Transmissions in 802.11 Networks](https://reader035.vdocuments.us/reader035/viewer/2022081519/56812c5f550346895d90ecc2/html5/thumbnails/16.jpg)
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
![Page 17: Scheduling Transmissions in 802.11 Networks](https://reader035.vdocuments.us/reader035/viewer/2022081519/56812c5f550346895d90ecc2/html5/thumbnails/17.jpg)
Performance in a Multi-hop Network (Throughput & Fairness)
0
100000
200000
300000
400000
500000
600000
14 16 18 20 22 24 26 28 30
RTS - No SlotsNo RTS - Slots
0
100000
200000
300000
400000
500000
600000
700000
0 0.5 1 1.5 2 2.5 3 3.5 4
Thro
ughp
ut (
Mbp
s)
Flow ID
With SlotsWithout Slots
![Page 18: Scheduling Transmissions in 802.11 Networks](https://reader035.vdocuments.us/reader035/viewer/2022081519/56812c5f550346895d90ecc2/html5/thumbnails/18.jpg)
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
![Page 19: Scheduling Transmissions in 802.11 Networks](https://reader035.vdocuments.us/reader035/viewer/2022081519/56812c5f550346895d90ecc2/html5/thumbnails/19.jpg)
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
![Page 20: Scheduling Transmissions in 802.11 Networks](https://reader035.vdocuments.us/reader035/viewer/2022081519/56812c5f550346895d90ecc2/html5/thumbnails/20.jpg)
Click Architecture
EncapTimestamp
DecapTimestamp
TimeslotEnforcerContentionResolver
FromDevice
ToDevice
Mixed Queue
Rest of the Router
1
1Push
Pull
LIFO
FIFO
SetTimeOffset
SetOKSlots
![Page 21: Scheduling Transmissions in 802.11 Networks](https://reader035.vdocuments.us/reader035/viewer/2022081519/56812c5f550346895d90ecc2/html5/thumbnails/21.jpg)
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
![Page 22: Scheduling Transmissions in 802.11 Networks](https://reader035.vdocuments.us/reader035/viewer/2022081519/56812c5f550346895d90ecc2/html5/thumbnails/22.jpg)
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
![Page 23: Scheduling Transmissions in 802.11 Networks](https://reader035.vdocuments.us/reader035/viewer/2022081519/56812c5f550346895d90ecc2/html5/thumbnails/23.jpg)
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