Distributed Fair Scheduling in a Wireless LAN
Gautam Kulkarni
EE206A (Spring 2001)
Nitin Vaidya, Paramvir Bahl and Seema Gupta
(appeared in Mobicom 2000 Boston, MA)
Introduction
• Requirements of a scheduling discipline:– Ease of implementation
– Fairness and protection
– Performance bounds
– Ease of admission control (if needed)
• With fair scheduling bandwidth for a flow weight
• 802.11 MAC is not fair• How to introduce fairness in wireless LANs ?
Fair Queueing
• “Ideal” scheduling discipline – Generalized Processor Sharing (GPS)
• All fair queueing disciplines try to emulate GPS• Traditional GPS-like disciplines centralized in design• Previous work on fairness in distributed MAC protocols:
– Limited in scope – provide equal bandwidth share (e.g. MACAW)– Suffer in the presence of location-dependent errors
j , ),(
),(
21
21
j
i
j
i
ttW
ttW
Fair Scheduling
• Distributed Fair Scheduling (DFS) – new protocol for fair scheduling
• A distributed algorithm derived from the Distributed Coordination Function (DCF) in 802.11
• Emulation of Self-Clocked Fair Queueing (SCFQ) in a distributed manner
• Scheduler maintains a “virtual clock” to keep track of packets to be serviced
SCFQ
• Main idea:Start tag of packet
Finish tag of packet
V(0) = 0. Virtual time = finish tag of packet in service
Transmit packet with smallest finish tagPackets stamped on reaching the head of the queue
Pk
i
Pk
i
arrivalat stamped if }),(max{1
FASk
i
k
i
k
iv
i
k
ik
i
k
iLSF
queue theof head thereachespacket whenstamped if )( fSk
i
k
iv
802.11 Distributed Coordination Function
• CSMA/CA• Node i chooses backoff interval = Bi slots• Bi uniformly distributed in [0, cw] where cw = size of contention
window• Decrement Bi
• Is Bi == 0 ?– Yes: Send RTS
• Receive CTS– No CTS ? Double cw, select new Bi and repeat from start
• Send data• Receive ACK
– No: Decrement Bi
Distributed Fair Scheduling (DFS) Protocol
• Marriage of a distributed version of SCFQ with 802.11 DCF
• Key idea – select backoff interval proportional to the finish tag of the packet to be transmitted
• Each node maintains a local virtual clock vi(t)
Backoff interval = Scaling_Factor * length / weight * random number with mean 1
DFS (contd.)
• Collision handling– To reduce “priority” reversals, a small backoff
interval is chosen after the first collision– Backoff interval increased exponentially on further
collisions
• Potential drawbacks– Can exhibit short-term unfairness– Impact of small weights of backlogged flows
Impact of Small Weights
• Recall: Backoff intervals are being used to compare “length/weight”
• Small weights can lead to high idle times – throughput degradation
• Intuition: Any non-decreasing function of length/weight may be used to obtain backoff intervals
• Need to explore alternate mappings
Alternate Mappings (contd.)
• Advantage– smaller backoff intervals
– less time wasted in counting down when weights of all backlogged flows are small
• Disadvantage– backoff intervals that are different on a linear scale may
become identical on the compressed scale
– possibility for greater number of collisions
Performance Evaluation
• Using modified ns-2 simulator: 2 Mbps channel• Number of nodes = N• Number of flows = N/2• Odd-numbered nodes are destinations,
even-numbered nodes are sources• Unless otherwise specified:
– flow weight = 1 / number of flows – backlogged flows with packet size 584 bytes (including UDP/IP
headers)
– Scaling_Factor = 0.02
Fairness Index
• Fairness measured as a function of
(throughput T / weight ) for each flow f over an interval of time– Unless specified, the interval is 6 seconds
Throughput/Weight Variation across Flows
Throughput / Weight
Flow destination identifier
Flattercurve
is fairer
DFSis fairer
Scaled 802.11
• Fairness of 802.11 can be improved by using larger backoff intervals
• Is DFS fairer simply because it uses large backoff intervals ?
• Scaled 802.11 = 802.11 which uses backoffinterval range comparable with DFS
Short Term Fairness
Frequency
Number of packets transmitted by a flow (over 0.04 second windows)
Narrowdistribution
is fairer
DFS isfairer
Scaling Factor
• How to select the scaling factor ?– Small number : May result in more collisions– Large number: Larger overhead
Impact of Scaling Factor
Fairness Index
Scaling Factor
six flows with weights 1/2,1/4,1/8,1/16,1/32,1/32
Impact of Scaling Factor
Scaling Factor
Aggregate
Throughput
six flows with weights 1/2,1/4,1/8,1/16,1/32,1/32
Conclusions
• DFS improves fairness compared to 802.11 and Scaled 802.11
• Alternative mappings somewhat beneficial
• No distributed fair scheduling protocol may accurately emulate work-conserving centralized protocols (unless clocks are synchronized)