کنترل جریان امیدرضا معروضی.

Slides:



Advertisements
Similar presentations
CS 268: Packet Scheduling Ion Stoica March 18/20, 2003.
Advertisements

1 Comnet 2010 Communication Networks Recitation 4 Scheduling & Drop Policies.
1 GPS Example 2: Arrivals o Eleven Sources. First source gets 0.5. Other 10 sources get 0.05 each. First source sends 11 cells send one each at t=0.
Deficit Round Robin Scheduler. Outline Introduction Ordinary Problems Deficit Round Robin Latency of DRR Improvement of latencies.
Abhay.K.Parekh and Robert G.Gallager Laboratory for Information and Decision Systems Massachusetts Institute of Technology IEEE INFOCOM 1992.
CS 268: Lecture 8 Router Support for Congestion Control Ion Stoica Computer Science Division Department of Electrical Engineering and Computer Sciences.
Worst-case Fair Weighted Fair Queueing (WF²Q) by Jon C.R. Bennett & Hui Zhang Presented by Vitali Greenberg.
Scheduling CS 215 W Keshav Chpt 9 Problem: given N packet streams contending for the same channel, how to schedule pkt transmissions?
CS 268: Lecture 15/16 (Packet Scheduling) Ion Stoica April 8/10, 2002.
Generalized Processing Sharing (GPS) Is work conserving Is a fluid model Service Guarantee –GPS discipline can provide an end-to-end bounded- delay service.
Service Disciplines for Guaranteed Performance Service Hui Zhang, “Service Disciplines for Guaranteed Performance Service in Packet-Switching Networks,”
Katz, Stoica F04 EECS 122: Introduction to Computer Networks Packet Scheduling and QoS Computer Science Division Department of Electrical Engineering and.
תזכורת  שבוע הבא אין הרצאה m יום א, נובמבר 15, 2009  שיעור השלמה m יום שישי, דצמבר 11, 2009 Lecture 4: Nov 8, 2009 # 1.
CS 268: Lecture 8 (Router Support for Congestion Control) Ion Stoica February 19, 2002.
Computer Networking Lecture 17 – Queue Management As usual: Thanks to Srini Seshan and Dave Anderson.
Router Design and Packet Scheduling
Lecture 4#-1 Scheduling: Buffer Management. Lecture 4#-2 The setting.
CSc 461/561 CSc 461/561 Multimedia Systems Part C: 3. QoS.
Packet Scheduling From Ion Stoica. 2 Packet Scheduling  Decide when and what packet to send on output link -Usually implemented at output interface 1.
A Generalized Processor Sharing Approach to Flow Control in Integrated Services Networks: The Single-Node Case Abhay K. Parekh, Member, IEEE, and Robert.
CSE QoS in IP. CSE Improving QOS in IP Networks Thus far: “making the best of best effort”
Fair Queueing. 2 First-Come-First Served (FIFO) Packets are transmitted in the order of their arrival Advantage: –Very simple to implement Disadvantage:
March 29 Scheduling ?. What is Packet Scheduling? Decide when and what packet to send on output link 1 2 Scheduler flow 1 flow 2 flow n Buffer management.
Packet Scheduling and Buffer Management Switches S.Keshav: “ An Engineering Approach to Networking”
CS640: Introduction to Computer Networks Aditya Akella Lecture 20 - Queuing and Basics of QoS.
Packet Scheduling: SCFQ, STFQ, WF2Q Yongho Seok Contents Review: GPS, PGPS SCFQ( Self-clocked fair queuing ) STFQ( Start time fair queuing ) WF2Q( Worst-case.
1 Multimedia Networking: Beyond Best-Effort Internet.
T. S. Eugene Ngeugeneng at cs.rice.edu Rice University1 COMP/ELEC 429 Introduction to Computer Networks Lecture 18: Quality of Service Slides used with.
Scheduling Determines which packet gets the resource. Enforces resource allocation to each flows. To be “Fair”, scheduling must: –Keep track of how many.
Scheduling CS 218 Fall 02 - Keshav Chpt 9 Nov 5, 2003 Problem: given N packet streams contending for the same channel, how to schedule pkt transmissions?
T. S. Eugene Ngeugeneng at cs.rice.edu Rice University1 COMP/ELEC 429/556 Introduction to Computer Networks Weighted Fair Queuing Some slides used with.
Lecture Note on Scheduling Algorithms. What is scheduling? A scheduling discipline resolves contention, “who is the next?” Goal: fairness and latency.
1 Fair Queuing Hamed Khanmirza Principles of Network University of Tehran.
Queue Scheduling Disciplines
Providing QoS in IP Networks
Univ. of TehranIntroduction to Computer Network1 An Introduction Computer Networks An Introduction to Computer Networks University of Tehran Dept. of EE.
Scheduling for QoS Management. Engineering Internet QoS2 Outline  What is Queue Management and Scheduling?  Goals of scheduling  Fairness (Conservation.
CS244 Packet Scheduling (Generalized Processor Sharing) Some slides created by: Ion Stoica and Mohammad Alizadeh
04/02/08 1 Packet Scheduling IT610 Prof. A. Sahoo KReSIT.
Packet Scheduling (and QoS)
Instructor Materials Chapter 6: Quality of Service
QoS & Queuing Theory CS352.
Intro to Deterministic Analysis
Lottery Scheduling and Dominant Resource Fairness (Lecture 24, cs262a)
Congestion Control and Resource Allocation
Stratified Round Robin: A Low Complexity Packet Scheduler with Bandwidth Fairness and Bounded Delay Sriram Ramabhadran Joseph Pasquale Presented by Sailesh.
EE 122: Router Support for Congestion Control: RED and Fair Queueing
TCP, XCP and Fair Queueing
Quality of Service For Traffic Aggregates
COMP/ELEC 429/556 Introduction to Computer Networks
Variations of Weighted Fair Queueing
Scheduling Algorithms in Broad-Band Wireless Networks
Intro to Deterministic Analysis
Fair Queueing.
Advance Computer Networking
EE 122: Quality of Service and Resource Allocation
Scheduling: Buffer Management
Computer Science Division
Advance Computer Networking
EE 122: Lecture 7 Ion Stoica September 18, 2001.
Variations of Weighted Fair Queueing
COMP/ELEC 429 Introduction to Computer Networks
ECE 1545 Service Curve Earliest Deadline Due (SCED) or How to construct a scheduler from a service curve.
Introduction to Packet Scheduling
Congestion Control and Resource Allocation
EECS 122: Introduction to Computer Networks Packet Scheduling and QoS
Fair Queueing.
A Simple QoS Packet Scheduler for Network Routers
Introduction to Packet Scheduling
Presentation transcript:

کنترل جریان امیدرضا معروضی

Packet Scheduling Decide when and what packet to send on output link Usually implemented at output interface flow 1 Classifier flow 2 1 Scheduler 2 flow n Buffer management istoica@cs.berkeley.edu

Why Packet Scheduling? Can provide per flow or per aggregate protection Can provide absolute and relative differentiation in terms of Delay Bandwidth Loss istoica@cs.berkeley.edu

Fair Queueing In a fluid flow system it reduces to bit-by-bit round robin among flows Each flow receives min(ri, f) , where ri – flow arrival rate f – link fair rate (see next slide) Weighted Fair Queueing (WFQ) – associate a weight with each flow [Demers, Keshav & Shenker ’89] In a fluid flow system it reduces to bit-by-bit round robin WFQ in a fluid flow system  Generalized Processor Sharing (GPS) [Parekh & Gallager ’92] istoica@cs.berkeley.edu

Fair Rate Computation If link congested, compute f such that f = 4: 8 min(8, 4) = 4 min(6, 4) = 4 min(2, 4) = 2 8 10 4 6 4 2 2 istoica@cs.berkeley.edu

Fair Rate Computation in GPS Associate a weight wi with each flow i If link congested, compute f such that f = 2: min(8, 2*3) = 6 min(6, 2*1) = 2 min(2, 2*1) = 2 (w1 = 3) 8 10 4 (w2 = 1) 6 4 2 (w3 = 1) 2 istoica@cs.berkeley.edu

Generalized Processor Sharing link Red session has packets backlogged between time 0 and 10 Other sessions have packets continuously backlogged flows 5 1 1 1 1 1 2 4 6 8 10 15 istoica@cs.berkeley.edu

Generalized Processor Sharing A work conserving GPS is defined as where wi – weight of flow i Wi(t1, t2) – total service received by flow i during [t1, t2) W(t1, t2) – total service allocated to al flows during [t1, t2) B(t) – number of backlogged flows istoica@cs.berkeley.edu

Properties of GPS End-to-end delay bounds for guaranteed service [Parekh and Gallager ‘93] Fair allocation of bandwidth for best effort service [Demers et al. ‘89, Parekh and Gallager ‘92]

Packet vs. Fluid System GPS is defined in an idealized fluid flow model Multiple queues can be serviced simultaneously Real system are packet systems One queue is served at any given time Packet transmission cannot be preempted Goal Define packet algorithms approximating the fluid system Maintain most of the important properties istoica@cs.berkeley.edu

Packet Approximation of Fluid System Standard techniques of approximating fluid GPS Select packet that finishes first in GPS assuming that there are no future arrivals Important properties of GPS Finishing order of packets currently in system independent of future arrivals Implementation based on virtual time Assign virtual finish time to each packet upon arrival Packets served in increasing order of virtual times istoica@cs.berkeley.edu

System Virtual Time Virtual time (VGPS) – service that backlogged flow with weight = 1 would receive in GPS istoica@cs.berkeley.edu

Service Allocation in GPS The service received by flow i during an interval [t1,t2), while it is backlogged is istoica@cs.berkeley.edu

Virtual Time Implementation of Weighted Fair Queueing if session j backlogged in general ajk – arrival time of packet k of flow j Sjk – virtual starting time of packet k of flow j Fjk – virtual finishing time of packet k of flow j Ljk – length of packet k of flow j istoica@cs.berkeley.edu

Virtual Time Implementation of Weighted Fair Queueing Need only to keep per flow not per packet state System virtual time is used to reset a flow’s virtual start time when a flow becomes backlogged again after being idle istoica@cs.berkeley.edu

System Virtual Time in GPS 1/2 1/8 1/8 1/8 1/8 2*C C 2*C 4 8 12 16 istoica@cs.berkeley.edu

Virtual Start and Finish Times Utilize the time the packets would start Sik and finish Fik in a fluid system 4 8 12 16 istoica@cs.berkeley.edu

Goals in Designing Packet Fair Queueing Algorithms Improve worst-case fairness (see next): Use Smallest Eligible virtual Finish time First (SEFF) policy Examples: WF2Q, WF2Q+ Reduce complexity Use simpler virtual time functions Examples: SCFQ, SFQ, DRR, FBFQ, leap-forward Virtual Clock, WF2Q+ Improve resource allocation flexibility Service Curve istoica@cs.berkeley.edu

Worst-case Fair Index (WFI) Maximum discrepancy between the service received by a flow in the fluid flow system and in the packet system In WFQ, WFI = O(n), where n is total number of backlogged flows In WF2Q, WFI = 1 istoica@cs.berkeley.edu

WFI example Fluid-Flow (GPS) WFQ (smallest finish time first): WFI = 2.5 WF2Q (earliest finish time first); WFI = 1 istoica@cs.berkeley.edu

Why Service Curve? WFQ, WF2Q, H-WF2Q+ Guarantee a minimum rate: A packet is served no later than its finish time in GPS (H-GPS) modulo the sum of the maximum packet transmission time at each level For better resource utilization we need to specify more sophisticated services Solution: QoS Service curve model istoica@cs.berkeley.edu

What is a Service Model? “external process” Network element delivered traffic offered traffic (connection oriented) The QoS measures (delay,throughput, loss, cost) depend on offered traffic, and possibly other external processes. A service model attempts to characterize the relationship between offered traffic, delivered traffic, and possibly other external processes. istoica@cs.berkeley.edu

Arrival and Departure Process Network Element Rin Rout bits Rin(t) = arrival process = amount of data arriving up to time t delay buffer Rout(t) = departure process = amount of data departing up to time t t istoica@cs.berkeley.edu

Traffic Envelope (Arrival Curve) Maximum amount of service that a flow can send during an interval of time t b(t) = Envelope slope = max average rate “Burstiness Constraint” slope = peak rate istoica@cs.berkeley.edu t

Service Curve Assume a flow that is idle at time s and it is backlogged during the interval (s, t) Service curve: the minimum service received by the flow during the interval (s, t) istoica@cs.berkeley.edu

Big Picture Service curve bits bits Rin(t) slope = C t t bits Rout(t) istoica@cs.berkeley.edu

Delay and Buffer Bounds E(t) = Envelope (arrival curve) bits Maximum delay Maximum buffer S (t) = service curve t istoica@cs.berkeley.edu

Service Curve-based Earliest Deadline (SCED) Packet deadline – time at which the packet would be served assuming that the flow receives no more than its service curve Serve packets in the increasing order of their deadlines Properties If sum of all service curves <= C*t All packets will meet their deadlines modulo the transmission time of the packet of maximum length, i.e., Lmax/C bits 4 3 2 1 t Deadline of 4-th packet istoica@cs.berkeley.edu

Linear Service Curves: Example bits bits Service curves FTP Video t t Arrival process bits bits Arrival curves t t bits bits Deadline computation t t Video packets have to wait after ftp packets istoica@cs.berkeley.edu t

Non-Linear Service Curves: Example bits bits Service curves FTP Video t t Arrival process bits bits Arrival curves t t bits bits Deadline computation t t Video packets transmitted as soon as they arrive istoica@cs.berkeley.edu t

Summary WF2Q+ guarantees that each packet is served no later than its finish time in GPS modulo transmission time of maximum length packet Support hierarchical link sharing SCED guarantees that each packet meets its deadline modulo transmission time of maximum length packet Decouple bandwidth and delay allocations Question: does SCED support hierarchical link sharing? No (why not?) Hierarchical Fair Service Curve (H-FSC) [SZN97] Support nonlinear service curves istoica@cs.berkeley.edu