340 likes | 358 Views
Wireless Scheduling. Puzzle. You have a deck of 52 cards You draw out 5 cards randomly and look at the cards You can now show 4 of the cards to a friend, and the friend should identify the 5 th card How do you do this?. Wireless Fair Queuing. Wireless channel capacities are scarce
E N D
Puzzle • You have a deck of 52 cards • You draw out 5 cards randomly and look at the cards • You can now show 4 of the cards to a friend, and the friend should identify the 5th card • How do you do this?
Wireless Fair Queuing • Wireless channel capacities are scarce • Fair sharing of bandwidth becomes critical • Both short-term and long-term fairness important
Wireless FQ & Wireless Environment • Location dependent and bursty errors • For the same wireless channel, a mobile station might experience a clean channel while another might experience high error rates. Why? • In wireline fair queuing, the channel is either usable by all flows or unusable by any of the flows …
Wireless Channel Model • Base station performs arbitration • Schedules both uplink and downlink traffic • Neighboring cells use different channels • Every mobile host has access to base-station
Wireless Channel Characteristics • Dynamically varying capacity • Location dependent channel errors and bursty errors • Contention • No global state • Scarce resources (battery & processing power)
Service Model • Short term fairness • Long term fairness • Short term throughput bounds • Long term throughput bounds • Delay bounds for packets
Some terminology … • Error free service • Leading flows • Lagging flows • In sync flows
Impact of Location Dependent Errors • Example 1 • 3 flows f1, f2, f3 • Period 1: f3 experiences lossy channel • Flows f1 and f2 receive ½ of channel • Period 2: f3 experiences clear channel • Wireline fair queuing would give a net service of 5/6 to f1 and f2, and 1/3 to f3 – UNFAIR! • Wireline fair queuing does not distinguish between flows that are not backlogged and flows that are backlogged but cannot transmit!
Impact (Contd.) • Example 2 • Same scenario • Flow f1 has only 1/3 offered service • Hence, for period 1 f2 receives 2/3 service • If some compensation is given to f3 during period 2, should f1 be penalized for compensating f3?
Issues addressed by Wireless Fair Scheduling • Is it acceptable to compromise on separation for f1? • How soon should f3 get its share back? • Should f2 give up service and over what period of time?
Generic Wireless FS Model • Error free service • Lead/lag/in-sync • Compensation model • Channel monitoring and prediction
Error Free Service • Reference for how much service a flow should receive in an ideal error free channel • Example: WFQ • Each packet stamped with a finish tag based upon the packet’s arrival time and the weight of the flow • Packet with the minimum finish tag transmitted
Lead and lag model • Lag • Lead • Two approaches • Lag of flow incremented as long as the flow is backlogged and is unable to transmit. Such a flow will be compensated at a later time. • Lag of flow incremented only if the slot given up by the flow is taken up by another flow (which will have its lead incremented). At a later time, compensation will be given at the expense of a flow with lead.
Compensation Model • No explicit compensation • Flow with maximum lag is given preference • Leading and lagging flows swap slots • Bandwidth is reserved for compensation
Instantiations • Channel state dependent packet scheduling (CSDPS) • Idealized wireless fair queuing (IWFQ) • Wireless packet scheduling (WPS) • Channel-condition independent fair queuing (CIFQ) • CBQ-CSDPS • Server based fairness approach (SBFA) • Wireless fair service (WFS)
CSDPS • CSDPS allows for the use of any error-free scheduling discipline – e.g. WRR with WFQ spread • When a flow is allocated a slot and is not able to use it, CSDPS skips that flow and serves the next flow • No measurement of lag or lead • No explicit compensation model
CSDPS (Contd.) • Lagging flows can thus make up lags only when leading flows cease to become backlogged or experience lossy channels sometime • No long-term or short-term fairness guarantees
IWFQ • WFQ is used for the error free service • Packets tagged as in WFQ. Of the flows observing a clean channel, the flow with the minimum service tag packet is served • Tags implicitly capture the service differences between flows (lagging flows will have a smaller service and hence will be scheduled earlier)
IWFQ (Contd.) • Channel capture by lagging flows possible resulting in short term unfairness and starvation • Even in-sync flows can become lagging during such capture periods • Coarse short-term fairness guarantees because of possible starvation • Provides long-term fairness
WPS • WRR with WFQ spread used for error free service • A frame of slot allocations generated by WPS based on WRR (with WFQ spread) • Intra frame swapping attempted when a flow is unable to use a slot • If intra-frame swapping is not possible lag incremented as long as another flow can use the slot
WPS (Contd.) • At the beginning of next frame, weights for calculating spread readjusted to accommodate lag and lead • If intra-frame swapping succeeds most of the time, in-sync flows not affected • Complete channel capture prevented as each flow has a non-zero weight when frame spread is calculated • No short-term fairness guarantees, but provides long-term fairness
CIFQ • STFQ (Start time fair queuing) used for the error free service • Lag or lead computed as the difference between the actual service and the error free service • A backlogged leading flow relinquishes slot with a probability p, a system parameter • A relinquished slot is allocated to the lagging flow with the maximum normalized lag
CIFQ (Contd.) • In-sync flows not affected since lagging flows use slots given up by leading flows • Lagging flows can still starve leading flows under pathological scenarios • Provides both short-term and long-term fairness
CBQ-CSDPS • Same as IWFQ except that no explicit error free service is maintained • Rather, lead/lag is measured based on the actual number of bytes s transmitting during each time window • A flow with normalized rate r is leading if it has received channel allocation in excess of s*r, and lagging if it has received channel allocation less than s*r • Lagging flows are allowed precedence
CBQ-CSDPS • Same problem as in IWFQ – lagging flows given precedence, and hence can capture channel • Short term fairness is thus not guaranteed • Additionally, leads and lags are computed not based on error-free service, but based on a time window of measurement … performance sensitive to the time window
SBFA • Any error free service model can be used • SBFA reserves a fraction of the channel bandwidth statically for compensation by specifying a virtual compensation flow • When a flow is unable to use a slot, it queues a slot-request to the compensation flow • Scheduler serves compensation flow just as other flows • When the compensation flow gets a slot, it turns the slot over to the flow represented by the head-of-line slot-request
Slot queued into compensation flow Compensation Flow of weight w SBFA (Contd.) Scheduled to Tx F1 Cannot transmit because of error Slot scheduled for Tx and handed over to F1
SBFA (Contd.) • No concept of a leading flow • All bounds supported by SBFA are only with respect to the remaining fraction of the channel bandwidth • Performance of SBFA is sensitive to the statically reserved fraction • No short-term fairness • Long-term fairness dependent upon the reserved fraction
Wireless Fair Service • Uses an enhanced version of WFQ in order to support delay-bandwidth decoupling • Lag of a flow incremented only if there is a flow that can use the slot • Both lead and lag are bounded by per-flow parameters • A leading flow with a lead of L and a lead bound of Lmax relinquishes a fraction L/Lmax of the slots allocated to it by the error-free service • This results in an exponential reduction in the number of slots relinquished
WFS (Contd.) • Service degradation is graceful for leading flows • In-sync flows are not affected • Tightest short-term fairness among all algorithms discussed • Compensation for lagging flows can take up more time than other algorithms
Recap • Wireless Fair Scheduling • Why wireline algorithms cannot be used • Key components of a a wireless fair scheduling algorithm • Different approaches for wireless fair scheduling
Puzzle Monty Hall Problem • You are a contestant on a game show. In front of you are three closed doors. The game show host informs you that behind one of these doors is the motor car of your dreams, but behind the other two doors lies a peanut (which you're allergic to anyway!). • The quiz-master asks you to select a door. After you have selected, he then opens one of the other two doors that does not contain the car. He does this every week to build up the suspense for the watching millions. He asks if you would like to open the door you originally selected and take home that prize, or switch to the remaining door and go home with that prize. • Is it in your best interests to switch, or to remain with your original selection ?