1 Distributed Fair Scheduling in a Wireless LAN Nitin Vaidya, Texas A&M University Victor Bahl,...
-
Upload
madlyn-morris -
Category
Documents
-
view
213 -
download
0
Transcript of 1 Distributed Fair Scheduling in a Wireless LAN Nitin Vaidya, Texas A&M University Victor Bahl,...
1
Distributed Fair Scheduling in a Wireless LAN
Nitin Vaidya, Texas A&M University
Victor Bahl, Microsoft Research
Seema Gupta, now with Cisco
MobiCom 2000
2
Distributed Scheduling :
What & Why
3
Medium Access Control
Wireless medium is a broadcast medium
Transmissions by multiple nodes can interfere
Need medium access control (MAC)
Many proposals Centralized Distributed
4
BaseStation
Node1
Node2
Node3
Noden
Centralized Protocols
Base station coordinates access to the wireless channel
5
Distributed Protocols
All nodes have identical responsibilities
Wireless LAN
Node1
Noden
Node3
Node2
6
Disadvantages of Centralized Approach
If a node cannot talk to the base station, it cannot transmit to any other nodes
Base station needs to keep track of state of other nodes
Hard to use failure-prone nodes as coordinators in centralized protocols
7
Fairness
8
Fairness
Packets to be transmitted belong to several flows
Each flow is assigned a weight
Bandwidth assigned to each backlogged flow is proportional to its weight
9
Fairness
Three flows with weights 2, 1, 1
Backloggedflows:
Allocatedbandwidth
10
Fair Queueing
Many centralized fair queueing protocols exist WFQ, WF2Q, SCFQ, SFQ, …
Scheduler needs to know state of all flows
Flow 1
Flow 2
Flow n
Output link
11
Distributed Fair Scheduling
12
Our Objectives
Fully distributed fair scheduling protocol All nodes have identical responsibilities
Nodes do not need to be aware of each other’s state
Maintain compatibility / resemblance with an existing standard specifically, IEEE 802.11 Distributed Coordination Function
13
Proposed Approach
Combination of
IEEE 802.11 Distributed Coordination Function (DCF) Carrier sense / collision avoidance
A centralized fair queueing protocol
14
Basic Carrier Sense Approach
A node wishing to transmit waits until channel is sensed as idle, and then transmits
If two nodes are waiting to transmit, they will collide
Collision avoidance mechanism needed to avoid this
15
IEEE 802.11 Distributed Coordination Function
Collision avoidance mechanism: When transmitting a packet, choose a backoff interval in the range [0,cw]
– cw is contention window
Count down the backoff interval when medium is idle
When backoff interval reaches 0, transmit
0 cw
16
802.11 DCF Example
data
waitB1 = 5
B2 = 15
B1 = 25
B2 = 20
data
wait
B1 and B2 are backoff intervalsat nodes 1 and 2cw = 31
B2 = 10
17
Self-Clocked Fair Queueing (SCFQ) [Golestani]
A centralized fair scheduling protocol
But more amenable for a distributed implementation than many others
The steps involved in deriving proposed distributed protocol starting from SCFQ are given in the paper virtual time, start/finish tags implementation does not need virtual time or tags
18
Distributed Fair Scheduling (DFS)
Node with smallest “length/weight” should transmit first Caveat: This is a somewhat imprecise statement. DFS
(implicitly) compares so-called virtual finish tags, which are a function of length/weight
See paper for details on the finish tags
Backoff intervals used as a way to distributedly determine whose “length/weight” is smaller
19
Distributed Fair Scheduling (DFS)
Choose backoff interval
= packet length / weight
packet length = 5
weight = 1/3
backoff interval = 5 / (1/3) = 15 slots
20
Distributed Fair Scheduling (DFS)
data
wait
B1 = 15
B2 = 5
Packet length = 15
Weight of node 1 = 1 ====> B1 = 15 / 1 = 15Weight of node 2 = 3 ====> B2 = 15 / 3 = 5
B1 = 10
B2 = 5
data
wait
B1 = 5
B2 = 5
Collision !
21
Collisions
Collisions occur when two nodes count down to 0 simultaneously In centralized fair queueing, ties can be broken without causing
“collisions”
To reduce the possibility of collisions:
Backoff interval = Scaling_Factor * length / weight * random number with
mean 1
22
Backoff Interval
Initial formula: Length / weight = 15 / 1 = 15
Scaling_factor * length / weight * random number
= 4 * 15 / 1 * [0.9,1.1]
= [54,66]
0 15
23
Backoff Interval
802.11
Proposed DFS
0
0
24
Collisions Resolution
Collision occurs when two nodes count down to 0 simultaneously
Counting to 0 implies that it is a given node’s “turn” to transmit
To reduce “priority” reversals, a small backoff interval is chosen after the first collision
Backoff interval increased exponentially on further collisions
25
Impact of Small Weights
Backoff interval: Scaling_factor * length / weight * random
number
Backoff intervals can become large when weights are small
Large backoff intervals may degrade performance (time wasted in counting down)
26
Impact of Small Weights
Recall: Backoff intervals are being used to compare “length/weight”
Intuition: Any non-decreasing function of lenghth/weight may be used to obtain backoff intervals
27
Alternative Mappings
Scaling_factor * length / weight * random number
Chosenbackoffinterval
Linear mapping
EXP
SQRT
28
Alternative Mappings
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
29
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
30
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
31
Throughput / Weight Variation Across Flows (with 16 Flows)
Flow destination identifier
Throughput / Weight
Flattercurve
is fairer
DFSis fairer
802.11
32
Throughput - Fairness Trade-Off
Aggregatethroughput(all flowscombined)
Number of flows
802.11
33
Throughput - Fairness Trade-Off
Fairnessindex
Number of flows
802.11
34
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 backoff
interval range comparable with DFS
35
Short-Term Fairness
Number of packets transmitted by a flow (over 0.04 second windows)
Frequency
Narrowdistribution
is fairer
DFS isfairer
DFS
Scaled 802.11
802.11
36
Fairness versus Sampling Interval Size(24 flows)
Interval Size
Fairnessindex
DFS
Scaled 802.11
802.11
37
Alternative Mappings for Backoff Intervals
See additional data in the paper
EXP and SQRT improve throughput compared to LINEAR mapping when all backlogged flows have low weights but not too impressively
If at least one backlogged flow has a high weight, not much benefit
38
Conclusions(supporting arguments for some conclusions not
presented in the talk: please see the paper)
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)
39
Conclusions
Possible to augment DFS with other techniques to improve fairness in presence of transmission errors see Seema Gupta’s M.S. thesis
No performance cost even if weight assigned to a flow is changed on a per-packet basis Execution complexity of centralized protocols would
increase
Possible to handle multiple flows per node
40
Other Potential Applications of DFS
Wired LANs
Wireless multi-hop networks see our 1999 Microsoft Research technical report for some
initial ideas
41
Issues for Further Work
DFS is only the first step towards practical fairness:
How to choose parameters such as Scaling_Factor ? Failure to choose reasonable values can degrade throughput or short-
term fairness
How to choose flow weights ? Let upper layer specify dynamically, or Static assignment based on static criteria
Ad hoc network-related issues
42
Thank you!
www.cs.tamu.edu/faculty/vaidya
43
Thank you!
www.cs.tamu.edu/faculty/vaidya
44
Impact of Packet Size
Three flowswith differentpacket sizes
Packet size (bytes)
584 328 200
Flowthroughput
802.11
45
Impact of Scaling Factor(six flows with weights 1/2,1/4,1/8,1/16,1/32,1/32)
Fairnessindex
Scaling Factor
DFS
46
Impact of Scaling Factor (six flows with weights 1/2,1/4,1/8,1/16,1/32,1/32)
Scaling factor
Aggregatethroughput
DFS
47
Related Past Work
Centralized fair queueing on wired links [Bennett,Demers,Parekh]
Centralized fair queueing in wireless environments, taking location-dependent errors into account [Bharghavan,Ramanathan,Zhang]
Distributed Real-time scheduling [Sobrinho] Distributed Priority-based scheduling
48
Backoff Interval
Scaling factor Small number : May result in more collisions Large number: Larger overhead
Random number range Small range will cause more collisions between synchronized
nodes
How to choose these adaptively ? This paper punts the issue But heuristic solutions are easy to define Heuristics yet to be evaluated