Wireless Networks (CSC-7602) Lecture 8 (15 Oct. 2007)

Similar documents
EP2210 Scheduling. Lecture material:

Efficient Queuing Mechanism for QoS provisioning in Wireless IP Networks

Compensation Modeling for QoS Support on a Wireless Network

Scheduling. Scheduling algorithms. Scheduling. Output buffered architecture. QoS scheduling algorithms. QoS-capable router

Lecture 21. Reminders: Homework 6 due today, Programming Project 4 due on Thursday Questions? Current event: BGP router glitch on Nov.

Router Design: Table Lookups and Packet Scheduling EECS 122: Lecture 13

Network Model for Delay-Sensitive Traffic

Congestion Control and Resource Allocation

Packet Scheduling for Link-Sharing and Quality of Service Support in Wireless Local Area Networks

Wireless Networks (CSC-7602) Lecture 8 (22 Oct. 2007) Seung-Jong Park (Jay) Fair Queueing

Lecture 14: Congestion Control"

Scheduling algorithms in broadband wireless networks. Institute of Electrical and Electronics Engineers Proceedings, 2001, v. 89 n. 1, p.

Congestion Control 3/16/09

Lecture 14: M/G/1 Queueing System with Priority

Priority Traffic CSCD 433/533. Advanced Networks Spring Lecture 21 Congestion Control and Queuing Strategies

CS551 Router Queue Management

Lecture 14: Congestion Control"

DiffServ Architecture: Impact of scheduling on QoS

Scheduling (Chapter 9) Outline

Packet Scheduling for Link-Sharing and Quality of Service Support in Wireless Local Area Networks

CS557: Queue Management

Basics (cont.) Characteristics of data communication technologies OSI-Model

NATIONAL UNIVERSITY OF SINGAPORE FACULTY OF ENGINEERING DEPARTMENT OF ELECTRICAL AND COMPUTER ENGINEERING

Performance Evaluation of Scheduling Mechanisms for Broadband Networks

Last Class: Processes

Episode 5. Scheduling and Traffic Management

Quality of Service (QoS)

Congestion. Can t sustain input rate > output rate Issues: - Avoid congestion - Control congestion - Prioritize who gets limited resources

Network Layer Enhancements

CSCI Spring Final Exam Solution

Queuing. Congestion Control and Resource Allocation. Resource Allocation Evaluation Criteria. Resource allocation Drop disciplines Queuing disciplines

Unit 2 Packet Switching Networks - II

CS321: Computer Networks Congestion Control in TCP

Chapter 24 Congestion Control and Quality of Service 24.1

Wireless Challenges : Computer Networking. Overview. Routing to Mobile Nodes. Lecture 25: Wireless Networking

CS 344/444 Computer Network Fundamentals Final Exam Solutions Spring 2007

CS519: Computer Networks. Lecture 5, Part 5: Mar 31, 2004 Queuing and QoS

TELE Switching Systems and Architecture. Assignment Week 10 Lecture Summary - Traffic Management (including scheduling)

Flow Control. Flow control problem. Other considerations. Where?

Lecture 7: Sliding Windows. CSE 123: Computer Networks Geoff Voelker (guest lecture)

Lecture 24: Scheduling and QoS

Computer Networking. Queue Management and Quality of Service (QOS)

Promoting the Use of End-to-End Congestion Control in the Internet

Transmission Control Protocol. ITS 413 Internet Technologies and Applications

Lecture 7: Flow & Media Access Control"

Advanced Lab in Computer Communications Meeting 6 QoS. Instructor: Tom Mahler

Fairness in the IEEE network. Shun Y. Cheung

THIS paper describes the design and analysis of a scheduling

TSIN01 Information Networks Lecture 3

Chapter 6 Queuing Disciplines. Networking CS 3470, Section 1

Overview Computer Networking What is QoS? Queuing discipline and scheduling. Traffic Enforcement. Integrated services

This Lecture. BUS Computer Facilities Network Management. Switching Network. Simple Switching Network

Module objectives. Integrated services. Support for real-time applications. Real-time flows and the current Internet protocols

SIMULATION FRAMEWORK MODELING

Introduction: Two motivating examples for the analytical approach

Service-to-Service Mapping of Differentiated Services to the ABR Service of ATM in Edge/Core Networks

Real-Time (Paradigms) (47)

Resource Control and Reservation

RSVP 1. Resource Control and Reservation

Streaming Video and TCP-Friendly Congestion Control

Self-coordinating Localized Fair Queueing in Wireless Ad Hoc Networks

Lecture 7: Flow Control"

Multimedia Applications over Packet Networks

Multiple Access Links and Protocols

Scheduling of processes

Islamic University of Gaza Faculty of Engineering Department of Computer Engineering ECOM 4021: Networks Discussion. Chapter 1.

Fairness, Queue Management, and QoS

of-service Support on the Internet

Introduction to Real-Time Communications. Real-Time and Embedded Systems (M) Lecture 15

ENHANCEMENT OF TCP FAIRNESS IN IEEE NETWORKS

Computer Network Fundamentals Spring Week 3 MAC Layer Andreas Terzis

Multimedia Networking and Quality of Service

Congestion Control In the Network

Reminder: Datalink Functions Computer Networking. Datalink Architectures

Lecture 5: Performance Analysis I

Real-Time Protocol (RTP)

Multiple Access (1) Required reading: Garcia 6.1, 6.2.1, CSE 3213, Fall 2010 Instructor: N. Vlajic

Channel Quality Based Adaptation of TCP with Loss Discrimination

Router s Queue Management

ADVANCED COMPUTER NETWORKS

CS CS COMPUTER NETWORKS CS CS CHAPTER 6. CHAPTER 6 Congestion Control

Multiple Access Communications. EEE 538, WEEK 11 Dr. Nail Akar Bilkent University Electrical and Electronics Engineering Department

CS244 Advanced Topics in Computer Networks Midterm Exam Monday, May 2, 2016 OPEN BOOK, OPEN NOTES, INTERNET OFF

ECE453 Introduction to Computer Networks. Broadcast vs. PPP. Delay. Lecture 7 Multiple Access Control (I)

Communication Networks

048866: Packet Switch Architectures

Randomization. Randomization used in many protocols We ll study examples:

Randomization used in many protocols We ll study examples: Ethernet multiple access protocol Router (de)synchronization Switch scheduling

Lecture 15: TCP over wireless networks. Mythili Vutukuru CS 653 Spring 2014 March 13, Thursday

Congestion Control. Queuing Discipline Reacting to Congestion Avoiding Congestion. Issues

Performance Study of a QoS scheduling algorithm over wireless networks

ENSC 427 Communication Networks Final Project Presentation Spring Comparison and analysis of FIFO, PQ, and WFQ Disciplines in OPNET

Episode 5. Scheduling and Traffic Management

IETF88 Vancouver. Congestion control for video and priority drops. Background for draft-lai-tsvwg-normalizer-02.txt LTR

The Link Layer and LANs. Chapter 6: Link layer and LANs

CSC 4900 Computer Networks: Network Layer

Flow and Congestion Control

Stop-and-Go Service Using Hierarchical Round Robin

Congestion Control in Communication Networks

TDDD82 Secure Mobile Systems Lecture 6: Quality of Service

Transcription:

Wireless Networks (CSC-7602) Lecture 8 (15 Oct. 2007) Seung-Jong Park (Jay) http://www.csc.lsu.edu/~sjpark 1 Today Wireline Fair Schedulling Why? Ideal algorithm Practical algorithms Wireless Fair Scheduling Why wireline algorithms cannot be used Different approaches for wireless fair scheduling 2 1

Fair Scheduling 3 Queueing requires Scheduling Queueing (Buffering) is required when datagrams arrive from fabric faster than the transmission rate 4 2

Scheduling Mechanisms Scheduling happens at an output link of routers (switches) Many flows transmitted simultaneously at an output link Packet waiting for transmission are buffered Scheduling: choosing the next packet for transmission on a link can be done following a number of policies Simple case: FIFO Single buffer First packet will be transmitted when the link is ready to transmit 5 Scheduling Requirement Fair bandwidth allocation for best effort traffic (TCP) all competing flows receive the same amount of resource E.g., email, some types of file transfer Or some applications (real time and video on demand) require guaranteed service E.g., packet voice, interactive video, stock quotes Easy implementation Decision should be implementable in a few instructions 6 3

Classes of Scheduling Work-conserving Server (output link) is never idle when there is packet waiting 7 Classes of Scheduling (cont.) Non-working conserving Sever can be idle while packet is waiting Little bandwidth lost Why? : to control burstiness and delay variation Finally, can change rate of input 2 to decouple scheduling and rate control 8 4

Scheduling Disciplines Work-Conserving Scheduling Disciplines Virtual Clock Fair Queueing Fluid Fair Queueing Weighted Fair Queueing (WFQ) Packet Generalized Processor Sharing (PGPS) Worst Case Fair Weighted Fair Queueing (WF 2 Q) Delay Earliest-Due-Date Self -Clocked Fair Queueing (SCFQ) Rotating Priority Queue (RPQ) Non-Work-Conserving Scheduling Disciplines Jitter Earliest-Due-Date (Jitter EDD) Stop & Go Queueing Hierarchical Round Robin Burst Scheduling 9 Fair Queueing Definition If each connection defines a separate FCFS queue and k of these queues are currently not empty, then each non-empty queue receives 1/k-th of the link (server) bandwidth. 1 2 C 3 History Originally, fair queueing was adapted from a processor sharing for computer networks 10 5

Fluid Fair Queueing Fluid approximation = Generalized processor sharing (GPS)) idealized policy bandwidth assumption: dedicated flow, flows (like fluid) used for not implementation but performance comparison Problem? Ideal = Impossible = Impractical At a time, a CPU cannot handle multiple flows 11 Practical Solution for Fair Queueing Bit by Bit Fair sharing One bit from each backlogged queue at each round round robin Router can send not a bit but a packet Packet-level fair queueing One packet from each queue Round robin Practical 12 6

Approximated Fair Queueing Weighted Fair Queueing (WFQ) = Packetized GPS (PGPS) The first cell that would complete service in the corresponding FFQ system is served first. Example 11 connections of which link speed is 1 All packets have the same size of 1 Guaranteed rate for Connection 1 is 0.5, Connection 2-11 has 0.05 Connection 1 creates 11 back to back cells while 2-11 connections create only 1 cell at time 0. 1 2 3 11 13 Fluid Fair Queueing Order FFQ will take 2 time units to service each of the first 10 packets on connection 1, 1 time unit to service the 11-th packet from connection 1 and 20 time units to service the first packet from other connections. C1 C2 C3 C4 C5 C6 C7 C8 C9 C10 C11 0 10 20 21 11 p 1 14 7

Weighted Fair Queueing If we denote the k-th packet k on connection j as p j, then the start and finish times of cells in FFQ system are: Start Time Finish Time Cell 2 ( k-1) 2k k p 1 for k = 1, 10 20 21 11 p 1 0 20 1 p j for j = 2, 11 C1 C2 C3 C4 C5 C6 C7 C8 C9 C10 C11 - C1 C2 C3 C4 C5 C6 C7 C8 C9 C10 C11 0 10 20 21 10 p 1 0 10 20 11 p 1 11 p 1 15 Worst Case Fair Weighted Fair Queueing (WF 2 Q) While WFQ uses only finish times of cells in the corresponding FFQ system, WF 2 Q uses both START TIMES and FINISH TIMES of cells in the corresponding FFQ system. Example in case of tie among c2-c11, lower connection number will win C1 C2 C3 C4 C5 C6 C7 C8 C9 C10 C11 C1 C2 C3 C4 C5 C6 C7 C8 C9 C10 C11 0 10 20 21-0 10 20 16 11 p 1 11 p 1 8

Fair Scheduling for Wireless Networks 17 Wireless Fair Scheduling Channel Characteristics of Wireless Cellular Network Dynamically varying capacity Location dependent channel errors and bursty errors Scarce resources (battery & processing power) Contention No global state 18 9

Wireless Fair Scheduling Why do we need? Wireless channel capacities are scarce Fair sharing of bandwidth becomes critical Both short-term and long-term fairness important Do we need same wireline schedulings or new one? 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? Different distance and different mobility In wireline fair queuing, the channel is either usable by all flows or unusable by any of the flows But, in case of wireless, some flows cannot use channel due to wireless channel condition although they have packets to transmit 19 Terminology Service Model Short term fairness Long term fairness Short term throughput bounds Long term throughput bounds Delay bounds for packets Terminology Error free service Leading flows Lagging flows In sync flows 20 10

Problems with FIFO Scheduling in MAC [Bhagwat96] TCP1 MH1 TCP2 WLAN Card Xmit MH2 in fade TCP3 TCP4 P1 P4 P2 P3 P1 P2 Recv MH4 MH3 Burst errors may be spatially selective e.g. link to only one receiver may be under interference or in fade During burst, all retransmission attempts to specific MH will fail burst errors observed to be 50-100 ms long in WLANs FIFO is basically causing head of line blocking! other MHs starve even though link to them may be good TCP to all MHs will increase RTT estimates, further increasing timeouts poor resource utilization fairness problem: MHs with bad link claiming more link time & b/w a fair MAC is not enough in the presence of errors on the link 21 Channel State Dependent Scheduling Primary culprits: CSMA/CA MAC makes repeated attempts even when channel is bad FIFO dispatcher continues to send packets without regard to channel state Solution: defer scheduled transmissions until next good period transmit packets for other destinations (those marked good) meanwhile burst periods for different MHs are independent potential risk: TCP sender may timeout but TCP timers >> average burst durations bad periods detected by radio feedback or multiple MAC transmit attempts channels remain marked bad for an estimated burst interval length round-robin scheduler (two sets: good & bad) worked best TCP1 TCP2 TCP3 TCP4 per-destination queues scheduler channel state monitor WLAN Card Xmit Recv MH4 MH1 MH2 MH3 in fade 22 11

Packet Fair Queuing in Wireless Links: The Problem Traditional WFQ algorithms assume error free channel or, at least that either all flows can be scheduled or none don t address fairness when a subset of backlogged flows cannot transmit because of bad channel In wireless domain, a packet flow may experience locationdependent channel error and hence may not be able to transmit during a a given time window giving the channel to such flows is a waste and also not fair in terms of actual bandwidth they receive 23 Why WFQ Fails in Wireless Channels? B(t1,t2) is the set of flows that were backlogged in [t1,t2] 24 12

Solution: Wireless Fair Queuing Goal Make short bursts of location-dependent channel errors transparent to users Approach: dynamic reassignment of channel allocation over small time scales a backlogged flow f that perceives channel error during a time window [t1, t2] is compensated over a later time window [t1, t2 ] when f perceives a clean channel Compensation mechanism: swap channel access & reclaim later grant additional channel access to f during [t1, t2 ] in order to make up for the lost channel access during [t1, t2] this additional channel access is granted to f at the expense of flows that were granted additional channel access during [t1, t2] while f was unable to transmit any data Many different proposals with different swapping mechanisms and flows between which swapping takes place, and different compensation models 25 Problem in Defining Fairness Wireless channel: flow may be backlogged but unable to transmit due to channel error should the flow be compensated at a later time? should channel error be treated same as or differently from empty queue? currently... either all flows are permitted to transmit or none Consider the scenario when flow f1 and f2 are both backlogged, but f1 perceives a channel error while f2 perceives a good channel f2 will additionally receive the share of the channel that would have been granted to f1 in the error free case Question: should the fairness model readjust the service granted to f1 and f2 in a future time window in order to compensate f1? traditional fluid fair queuing model does not need to address this issue in a wireline model either all flows are permitted to transmit, or none 26 13

So, What is a Reasonable Model for Wireless Fair Service? Two fairness Short-term fairness among flows that perceive a clean channel Long-term fairness for flows with bounded channel error. Delay bounds for packets. Two throughput Short-term throughput bounds for flows with clean channels Long-term throughput bounds for all flows with bounded channel error. Support for both delay sensitive and error sensitive data flows. 27 Leading and Lagging Flow Error-free service of a flow service that it would have received at the same time instant if all channels had been error-free, under identical offered load. Leading flow if it has received channel allocation in excess of its error-free service. Lagging flow if it has received channel allocation less than its error-free service. Flow in sync neither leading nor lagging, it is said to be in sync i.e. its channel allocation is exactly the same as its error-free service How to compute lead and lag? wireless scheduling algorithm can explicitly simulate the error-free service and calculates the difference of the queue size of a flow in the error-free service and the queue size of the flow in reality 28 14

Adapting WFQ to Wireless Reference Use an error-free fair service model with no channel error as reference Separation Monitor and estimate channel condition for backlogged flows, and exclude those flows that have bad channels from consideration Calculate lead and lag for flows relative to the reference model Compensation for long term fairness Compensate lagging flows that perceive a good channel at the expense of leading flows Variations No explicit compensation Flow with maximum lag is given preference Leading and lagging flows swap slots Bandwidth is reserved for compensation 29 Many Algorithms Idealized Wireless Fair Queuing algorithm (IWFQ) [Lu97] IWFQ-variant: Wireless Packet Scheduling (WPS) [Lu97] CSDPS + Enhanced Class Based Queuing [Fragouli98] Channel-condition Independent Fair Queuing algorithm (CIF-Q) [Ng98] Server Based Fairness Approach (SBFA) [Ramanatha98] Wireless Fair Service algorithm (WFS) [Lu98] 30 15

CSDPS [Fragouli98] 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 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 31 IWFQ [Lu97] 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) 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 32 16

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 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 33 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 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 34 17

SBFA (Contd.) F1 Scheduled to Tx Cannot transmit because of error Compensation Flow of weight w Slot queued into compensation flow Slot scheduled for Tx and handed over to F1 35 Summary Wireline Fair Schedulling Why? Ideal algorithm Practical algorithms Wireless Fair Scheduling Why wireline algorithms cannot be used Different approaches for wireless fair scheduling Question? 36 18