an overlay mac layer for 802.11 networks
DESCRIPTION
An Overlay MAC Layer for 802.11 Networks. Ananth Rao, Ion Stoica OASIS Retreat, Jun 2004. Motivation. 802.11 hardware provides initial ease of deployability for many applications Mesh networks Long haul links Large Infrastructure Networks - PowerPoint PPT PresentationTRANSCRIPT
An Overlay MAC Layer for 802.11 Networks
Ananth Rao, Ion Stoica
OASIS Retreat, Jun 2004
Motivation
Internet Gateway
802.11 hardware provides initial ease of deployability for many applications Mesh networks Long haul links Large Infrastructure
Networks Are these apps stretching
802.11 beyond its design goals (Wireless LANs)?
Problem 1: 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
Problem 2: Unpredictability
21 3 4 5
Problem 3: Forwarding on Behalf of Others
Ethernet
1/2
1/6 1/6 1/6
1/3
1/91/9
1/9
This problem cannot be solved by local scheduling or queue management algorithms like WFQ
Case for an Overlay MAC (OML)
Several new MACs have been proposed to solve these problems We try and leverage some of these techniques in OML
Hardware vs. Software MACs Huge cost advantage over building a new MAC Flexible and easy to implement application specific policies Facilitates experimental research on MAC layer issues Accurate timing not possible at the software level Devices don’t expose all information (eg. cannot carrier-sense
and obtain result) Cannot change the physical layer (eg. spread spectrum
techniques)
Constraints Do not want to modify the MAC protocol We have no control over a packet once it is in
the card’s buffer It may be queued behind another packet
Solution: Disable buffering in the lower layers
There may be some back-off and retransmission Solution: Ensure that with high probability, there will be no
back off or retransmissions
Use reservation-based time slots to schedule transmissions
Time Slots
Assume local synchronization of clocks Use coarse-grained (compared to packet
transmission times) time slots 20ms slots, 2ms to transmit an MTU sized packet
Clocks are synchronized by estimating the 1-way delay of packets Assume back-off is negligible and there are no
retransmissions at the MAC layer Use the minimum delay from the previous 20 packets
to reduce errors
Weighted Slot Allocation
Algorithm to allocate time-slots to competing nodes Only requires knowledge of the IDs of other
competing nodes – no additional signaling Uses a pseudo-random hash function
For ease of explanation Stage 1: Assume the diameter of the network is one Stage 2: Multi-hop networks of larger diameter
WSA – Diameter One Network Each node keeps track of an active_list, the set
of nodes with active flows Each packet includes the current queue length in the
OML header
Use a pseudorandom hash function to decide the winner
The node with the highest Hi is allowed to transmit
WSA – Multi-hop Network
Use the same hash-based mechanism active_list only contains other nodes that compete
with a given node Consider only the hash values of competing nodes in
deciding the winner
Assume that nodes interfere only up to k-hops k is a tradeoff between losing possible channel reuse
opportunities, and using the underlying MAC to resolve contention
Partially Overlapping Contention Regions
ijk
Hi > Hj > Hk
•1-hop neighbors of the winner initiate an “inactivity timer” to detect when this happens
•If i is more than 1-hop away from j, it is notified using a control message Contention region of k
Contention region of j
Persistent Allocation of SlotsTime
0 ms
24 ms
48 ms
72 ms
•Slots maybe
•Available for contention
•Assigned to a particular node
•If the nodes queue goes empty, the rest of the slot is used by the node with the next highest hash
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
More Details
The protocol is “optimistic” in assigning a slot to a node If a slot is assigned to more than 1 node, 802.11 will
still do its best to resolve contention If this happens very often, resource allocation goals
may not be met Queues vs. Flows
Because of TCP congestion control, queues become empty and full very often
If the queue is empty, a node will signal that other nodes may send in that 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 20 ms each, p=0.05
Fairness in a Multi-hop network
Nearly 40% of the flows receive less that 100 kbps, while others receive
up to 3 Mbps without OML
The disparity between 1-hop and 4-hop flows is reduced from
8 to 2 when using OML
0
0.1
0.2
0.3
0.4
0.5
0.6
0.7
0.8
0.9
1
0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8
Fra
ctio
n o
f flo
ws
Throughput (Mbps)
30 nodes - w/o OML30 nodes - with OML50 nodes - w/o OML50 nodes - with OML
0
0.5
1
1.5
2
2.5
3
3.5
4
4.5
5
1 1.5 2 2.5 3 3.5 4 4.5 5
Th
rou
gh
pu
t (M
bp
s)
Hops
30 nodes - w/o OML30 nodes - with OML50 nodes - w/o OML50 nodes - with OML
Flexibility in resource allocation
Qualitative differentiation is possible by assigning different
weights to flows
Different allocation policies can result in very different outcomes –
hence the MAC layer must be flexible
0
0.1
0.2
0.3
0.4
0.5
0.6
0.7
0.8
0.9
1
0 0.1 0.2 0.3 0.4 0.5 0.6
Fra
ctio
n o
f flo
ws
Throughput (Mbps)
Weight 1 flowsWeight 2 flowsWeight 3 flows
0
0.1
0.2
0.3
0.4
0.5
0.6
0.7
0.8
0.9
1
0 0.2 0.4 0.6 0.8 1 1.2 1.4
Fra
ctio
n o
f flo
ws
Throughput (Mbps)
Allocation by nodeAllocation by flow
Test-bedHardware
•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 (Test-bed – 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
Equal throughput – default 802.11 Equal channel access time - OML
OML can achieve fairness in terms of transmission time, or in terms of throughput
Results (Testbed – Fairness, Flexibility)
•In 26% of the experiments, one flow was completely shut out by the other
•k=2 leads to underutilization of the channel in some cases
When all nodes can hear each other, WSA guarantees weighted fairness
0
0.1
0.2
0.3
0.4
0.5
0.6
0.7
0.8
0.9
1
0 0.5 1 1.5 2 2.5 3 3.5 4 4.5 5
Fra
ctio
n o
f flo
ws
Throughput (Mbps)
No OMLOML - 1 hop signalingOML - 2 hop signaling
Results (Test-bed)
A B
C
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 performance problems better though more measurements on the test-bed
More benchmarks of OML