Wireless Resource Management through Packet Scheduling
• Outline for this lecture identify the design challenges for QoS support
over wireless mobile networks an initial solution ongoing research
Environment: Packet Cellular Networks
Base Station
Fixed Host
Wireless Cell
Backbone
Mobile Host
Refresh your memory: Packet Scheduler
Select the next packet for transmission
Endhost
switch
Scheduling: Achieving QoS at the packet level time scaleScheduling: Achieving QoS at the packet level time scale
InputLink
FabricOutputLink
Scheduler
Issues for Wireless Packet Scheduling
• #1: Location-dependent wireless channel error
backbone
MH #1
MH #2
Base Station
Sender
Scheduling policy
Channel state
21
2
1
Issues for Wireless Packet Scheduling
#1 a channel state unware scheduler may schedule wrongly
#2 channel capacity for each user is dynamically changing
• #1: Location-dependent wireless channel error
backbone
21MH #1
MH #2
Base Station
Sender
Scheduling policy
2
1
Channel state
• #2: Bursty wireless channel error
Observation 1: case for accurate channel state estimation Observation 2: case for deferring transmission
Issues for Wireless Packet Scheduling
[Source: D. Eckhardt, P. Steenkiste, “A trace-based evaluation of adaptive error correction for a wireless LAN,” ACM
MONET, 1998]
• #1: Location-dependent wireless channel error
• #2: Bursty wireless channel error
• #3: MHs do not have global channel state for scheduling
• distributed scheduling• #4: MHs are often constrained in terms of processing power
• “dumb terminal, smart base stations”
• #5: Contention in channel access among MHs Close interaction among scheduling and Medium Access Control (MAC)
Issues for Wireless Packet Scheduling
Goals for Wireless Packet Scheduling
• Throughput: Short-term throughput bounds for flows that perceive error free channel Long-term throughput bounds for flows that perceive bounded channel error
• Fairness: Short-term fairness for flows that perceive clean channel Long-term fairness for flows that perceive bounded channel error
Goal: Provide channel-conditionedQoS for multimedia over wireless
A Comprehensive Quality of Service Model for Wireless Packet Scheduling cont’d.
• Channel-conditioned delay bounds for packets
• Support for diverse applications: Both delay-sensitive and loss-sensitive applications Accept flows with different decoupled delay/bandwidth requirements
optimization of the schedulable region
Graceful service degradation and compensation
Goal: Provide channel-conditionedQoS for multimedia over wireless
Conventional Approaches for Wireless Packet Scheduling
• #1: FIFO, WRR, etc.: do NOT address wireless link issues Location dependent channel error Bursty channel error inefficient link utilization users are exposed to all channel errors
• #2: address wireless link issues but NO QoS P. Bhagwat et. al. “Channel State Dependent Packet
Scheduling (CSDPS)”, INFOCOM’96 Not able to support multimedia and provide fair service
Two Design Principles for QoS oriented Wireless Packet Scheduling
• #1: Fair Queueing providing QoS in the error-free case
• #2: Adaptation to location dependent and bursty
channel error via compensation addressing wireless link issues
Introduction to Wireline Fair Queueing
• A popular paradigm to achieve QoS at the packet level throughput guarantees packet delay guarantees fairness various algorithms, WFQ, WF2Q, SCFQ, STFQ, ... ...
• Key idea: flow separation a fluid fair queueing system packetized approximation of the fluid model works regardless of differences in packet size
Review: Wireline Fair Queueing Cont’d
F1
F2
F3
F1: weight = 0.25
F2: weight = 0.5
F3: weight = 0.25
t=1t=0 t=2
Review: Wireline Fair Queueing Cont’d
F1
F2
F3
1/2
1/4
1/4
F1: weight = 0.25
F2: weight = 0.5
F3: weight = 0.25
t=1t=0
Key Idea: Complete flow separation !
Fair share of excess resources
Review: Wireline Fair Queueing Cont’d
F1
F2
F3
t=1t=0
1/2
1/4
1/4 1/3
2/3
F1: weight = 0.25
F2: weight = 0.5
F3: weight = 0.25
t=2
t [0,1]
backbone
Base StationSender1/3
2/3
Equal weights
t=0 1 F1
F2
Why Wireline Fair Queueing Fails in Wireless Networks
F3: CBR
backbone
Base StationSender1/3
2/3
Equal weights
F1
F2
Why Wireline Fair Queueing Fails in Wireless Networks
1/3
1/31/3
t=0 1 2
Instantaneous fairness is NOT equal to long term fairness !
“Memoryless” allocation of WFQ --> no fairness among F1, F2 and F3 !
F3: CBR
How to adapt to wireless channel conditions and provide QoS ?
• Approach: book-keeping the (recent) history of channel allocation and explicitly controlling future allocations
Channel swapping & compensation
t [1,2]
backbone
Base StationSender
2/3
1/31/3
2/3
Equal weights
t=0 1 2F1
F2
F3: CBR
Case for Graceful Compensation
• To prevent flow starvation over a short time scale
backbone
Base StationSender1/31/3
2/3
t=0 1 2 3
Equal weights
F1
F2
F3: CBR
A Comprehensive Wireless QoS Model • Throughput:
Short-term throughput bounds for error-free flows Long-term throughput bounds for error-prone flows
• Fairness: Short-term fairness for error-free flows Long-term fairness for error-prone flows
• Channel-conditioned delay bounds for packets
• Support for both delay sensitive & loss sensitive applications
• Delay and bandwidth decoupling
• Graceful Service Degradation and Compensation: Graceful service degradation for leading flows Graceful service compensation for lagging flows
Unified Framework for Wireless Fair Queueing: Key Components
• Error-Free Service Model: defines an ideal fair service model assuming no channel error
• Lead and Lag Model: how much service a flow should relinquish or get compensated by
• Compensation Model: compensate for lagging flows at the expense of other flows
• Slot Queues and Packet Queues: support for both delay sensitive and loss sensitive flows in a framework
• Channel State Monitoring and Estimation
• MAC design
Error-free service
Channel state estimation
Lead &lag model
Compen.model
MAC
A Flow Chart for
the Architecture:
how the components
interact
A Few Wireless Scheduling Algorithms
• Channel State Dependent Packet Scheduling (CSDPS) and its enhanced version (CBQ-CSDPS)
• Idealized Wireless Fair Queueing (IWFQ) and its variant WPS
• Channel-condition Independent Fair Queueing (CIF-Q)
• Server Based Fairness Approach (SBFA)
• Wireless Fair Service (WFS)
Component #1: Error Free Service Model
Serves as an “ideal” service model that characterizes the
best you want to achieve
In principle, any wireline fair packet scheduling
algorithm is a candidate:• throughput guarantees• packet delay bound• fairness• delay bandwidth decoupling• implementation complexity
Examples: WFQ, WF^2Q, STFQ, SCFQ, ...
Component #2: Lead and Lag model• Keep track of the difference between
service that each flow should receive in the error-free service model
accumulative service that each flow has actually received over the error-prone wireless channel
• Classify a flow as “lead,” “lag,” or “in-sync” accordingly• A flow’s status (i.e., leading, lagging, in-sync) can
dynamically change with time• a small catch in the above definition: for some slots, what
about the case when no flow can transmit (i.e. error prone for all flows)
Lead and Lag Model: An Alternative Definition
• A flow updates its lag if all 3 conditions hold: it is allocated a slot for transmission, it is unable to transmit due to channel error another flow can transmit in current slot and is
willing to give up a slot later
• A flow updates its lead if all 3 conditions hold: another flow gives up its slot due to channel error it uses the slot given up by the error-prone flow it is willing to give up a slot in future to compensate
other flows
Example: Lead and Lag Model
backbone
Base StationSender
F1
F21 2 3
1 2
1 2 3
4
41
t=0
3
Error Free Service: WFQ
r=1/3
r=1/3
r=1/3
Real Service
F1: lag = 0
F3: CBR
Example: Lead and Lag Model
backbone
Base StationSender
F1
F21 2 3
1 2
1 2 3
4
41
t=0
3
Real Service
Error Free Service: WFQ
r=1/3
r=1/3
r=1/3
F1: lag = 0
1
1
1
1
2 2
2 3
2
2
3
4 5
3
3
3
F1: lag = 2F2: lead = 2
F3: CBR
Further Subtle Issues in Lead/Lag Model
• Who should receive the “extra” service that is given up by error-prone flows ? Equal treatment: any flow that perceives a clean
channel Preferential treatment: lagging flows first,
leading flows next, in-sync flows last
Component #3: Compensation Model• Knowing the lead and lag of an individual flow, how
to compensate lagging flows at the expense of leading flows ?
• Control the compensation process: who participate ?
• All flows ?
• Only leading and lagging flows ? when to compensate ?
• Immediate or deferred How fast to compensate ?
• As quick as possible
• in a more controlled manner: graceful service
Component #3: Rate Compensation for Leading Flows in WFS
Slot selection based onminimum service tag
Tra
nsm
it
Com
pens
atio
nAggregate
compensation slots
T
rans
mit
Com
pens
atio
n
• flow i hierarchically decomposes into two flows i: ic and it
• compensation flow ic with rate ri E(i)/Emax(i)
• transmission flow it with rate ri(1-E(i)/Emax(i))
Leading flows
Exponential service degradation during compensation !
Transmit
time
rate
Component #3: Rate Compensation for Lagging Flows in WFS
Slot selection based onminimum service tag
Tra
nsm
it
Com
pens
atio
nAggregate
compensation slots
T
rans
mit
Com
pens
atio
n
Tra
nsit
Tra
nsit
Tra
nsit
WRR for lagging flows
• service comes from normal rate compensation
• maintain a compensation WRR among lagging flows
• traverse WRR when a compensation slot is available
• fair compensation among lagging flows
Leading flows Lagging flows Insync flows
Example: Graceful Service Degradation in WFS
Example: Non-graceful Service Degradation in IWFQ
CSDPS
• Error-free service: WRR is a choice
• Lead & Lag model: no
• compensation model: no
• comments: implications for no compensation: no long-term
fairness, in-sync flows got disturbed, lagging flows have to play luck, etc.
if high-level enforcement is available, may still work
IWFQ
• Error-Free Service: WFQ
• Lead and lag model: yes
• compensation model: maintaining the tagging history -> maintain the
precedence for channel access serve the packet with minimum tag -> earliest lag
first
• comments: if lag is large, may starve other flows
CIF-Q
• Error-free service: STFQ
• Lead & Lag model: yes
• Compensation: leading flow receives a fixed fraction lagging flows receives compensation according
to their rate weights
• Comments: linear service degradation for leading flows
SBFA
• Error-free service: WFQ is a choice
• lead & lag model: no notion of leading flows
• Compensation model: reserve a fraction of bandwidth for compensation
-> a virtual compensation flow any lag is charged to this compensation flow.
• Comments: fundamentally different from others compensation capture effect, HOL blocking, ...
Summary
How to perform packet scheduling over wireless
• necessary components for wireless fair queueing
• interaction with MAC layer
Wireless Fair Packet Scheduling = Fair Queueing+ Adaptation to wireless channel characteristics
Scheduling in Multihop Wireless Networks
• Key issue: distributed packet scheduling
• Solution approaches: Backoff based design Table-driven approach
• Illustration through an example