1 / 30

Fair Packet Queueing Algorithm

Fair Packet Queueing Algorithm. Yang Richard Yang 11/7/2001. Review. IntServ service model: real-time service best-effort service link sharing reference implementation control path RSVP, admission control data path classification, scheduling Diffserv. Packet Scheduling.

davism
Download Presentation

Fair Packet Queueing Algorithm

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Fair Packet Queueing Algorithm Yang Richard Yang 11/7/2001

  2. Review • IntServ • service model: • real-time service • best-effort service • link sharing • reference implementation • control path • RSVP, admission control • data path • classification, scheduling • Diffserv

  3. Packet Scheduling • Decide when and what packets to send on output link • usually implemented at output interface flow 1 classifier flow 2 scheduler 1 2 flow n buffer management forwarding

  4. Seminal Paper: Three Issues • Fair packet queueing algorithm • Bandwidth and delay tradeoff • Interactions between scheduling and congestion control

  5. Outline • Fair packet queueing algorithm • Bandwidth and delay tradeoff • Interactions between scheduling and congestion control

  6. Objective: Fair Rate • If link congested, compute f such that f = 4: min(8, 4) = 4 min(6, 4) = 4 min(2, 4) = 2 8 10 4 6 4 2 2

  7. Objective: Weighted Fair Rate Computation • Associate a weight wiwith each flow i • If link congested, how to compute f ? 8 (w1 = 3) 10 ? 6 (w2 = 1) ? ? 2 (w3 = 1)

  8. Implementation: Fluid Approximation • General Processor Share (GPS) is defined in an idealized fluid flow model • multiple queues can be serviced simultaneously • no non-preemption unit • Real systems are packet systems • only one queue is served at a given time • packet transmission will not be preempted • Goal • define packet algorithms that approximate the fluid system • maintain most of the important properties

  9. Generalized Processor Share link • Red session has packets backlogged between time 0 and 10 • Other sessions have packets continuously backlogged flows 5 1 1 1 1 1 0 2 4 6 8 10 15

  10. Fluid GPS system service order Weighted Fair Queueing (WFQ) select the first packet that finishes in GPS Approximating GPS with WFQ 0 2 4 6 8 10

  11. Implementation: Virtual Clock • V(t): virtual clock (or virtual round in this paper) • If we serve wi bits per round for a backlogged flow with weight wi, how fast will V(t) progress: • where • Nac(t) – number of flows backlogged

  12. Virtual Time Implementation of Weighted Fair Queueing • 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 if session j backlogged if session j un-backlogged

  13. System Virtual Time in GPS 1/2 1/8 1/8 1/8 1/8 2*C C 2*C 0 4 8 12 16

  14. Virtual Start and Finish Times • Utilize the time the packets would start Sik and finish Fikin a fluid system 0 4 8 12 16

  15. Improvement Fluid-Flow (GPS) WFQ (smallest finish time first) How to achieve this?

  16. Outline • Fair packet queueing algorithm • Bandwidth and delay tradeoff • Interactions between scheduling and congestion control

  17. Reduce the Delay of Low Rate Flows • Define bid B:

  18. “external process” Alternative: Service Curve [Cruz ‘95] • 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. Network element delivered traffic offered traffic (connection oriented)

  19. Rin Rout Network Element Arrival and Departure Process 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

  20. Traffic Envelope (Arrival Curve) • Maximum amount of traffic that a flow can send during an interval of time t b(t) = Envelope slope = max average rate “burstiness constraint” slope = peak rate t

  21. 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)

  22. Rout(t) Big Picture Service curve bits bits Rin(t) slope = C t t bits t

  23. Delay and Buffer Bounds bits E(t) = Envelope Maximum delay Maximum buffer S(t) = service curve t

  24. 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

  25. Video packets have to wait after ftp packets 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 t

  26. Video packets transmitted as soon as they arrive 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 t

  27. Outline • Fair packet queueing algorithm • Bandwidth and delay tradeoff • Interactions between scheduling and congestion control

  28. Discussion • Will fair queueing solve the congestion control problem?

  29. Mixed Queueing and CC

  30. Results

More Related