Queue Management Mike Freedman COS 461: Computer Networks Lectures: MW 10-10:50am in Architecture N101

Slides:



Advertisements
Similar presentations
Congestion Control and Fairness Models Nick Feamster CS 4251 Computer Networking II Spring 2008.
Advertisements

Computer Networking Lecture 20 – Queue Management and QoS.
1 CNPA B Nasser S. Abouzakhar Queuing Disciplines Week 8 – Lecture 2 16 th November, 2009.
CSIT560 Internet Infrastructure: Switches and Routers Active Queue Management Presented By: Gary Po, Henry Hui and Kenny Chong.
TELE202 Lecture 8 Congestion control 1 Lecturer Dr Z. Huang Overview ¥Last Lecture »X.25 »Source: chapter 10 ¥This Lecture »Congestion control »Source:
William Stallings Data and Computer Communications 7 th Edition Chapter 13 Congestion in Data Networks.
Congestion Control Reasons: - too many packets in the network and not enough buffer space S = rate at which packets are generated R = rate at which receivers.
CSE331: Introduction to Networks and Security Lecture 13 Fall 2002.
T. S. Eugene Ngeugeneng at cs.rice.edu Rice University1 COMP/ELEC 429 Introduction to Computer Networks Lecture 16: Congestion control II Slides used with.
XCP: Congestion Control for High Bandwidth-Delay Product Network Dina Katabi, Mark Handley and Charlie Rohrs Presented by Ao-Jan Su.
Differentiated Services. Service Differentiation in the Internet Different applications have varying bandwidth, delay, and reliability requirements How.
Explicit Congestion Notification ECN Tilo Hamann Technical University Hamburg-Harburg, Germany.
Congestion Control Reading: Sections COS 461: Computer Networks Spring 2011 Mike Freedman
1 Internet Networking Spring 2003 Tutorial 11 Explicit Congestion Notification (RFC 3168) Limited Transmit (RFC 3042)
Analysis and Simulation of a Fair Queuing Algorithm
EE689 Lecture 5 Review of last lecture More on HPF RED.
Congestion Control and Resource Allocation
1 TCP Transport Control Protocol Reliable In-order delivery Flow control Responds to congestion “Nice” Protocol.
1 Internet Networking Spring 2003 Tutorial 11 Explicit Congestion Notification (RFC 3168)
ACN: Congestion Control1 Congestion Control and Resource Allocation.
Computer Networking Lecture 17 – Queue Management As usual: Thanks to Srini Seshan and Dave Anderson.
1 Spring Semester 2007, Dept. of Computer Science, Technion Internet Networking recitation #8 Explicit Congestion Notification (RFC 3168) Limited Transmit.
Random Early Detection Gateways for Congestion Avoidance
Lecture 5: Congestion Control l Challenge: how do we efficiently share network resources among billions of hosts? n Last time: TCP n This time: Alternative.
7/15/2015HY220: Ιάκωβος Μαυροειδής1 HY220 Schedulers.
Advanced Computer Networks : RED 1 Random Early Detection Gateways for Congestion Avoidance Sally Floyd and Van Jacobson, IEEE Transactions on Networking,
Computer Networking Lecture 22 – Queue Management and QoS.
Computer Networking Queue Management and Quality of Service (QOS)
CIS679: Scheduling, Resource Configuration and Admission Control r Review of Last lecture r Scheduling r Resource configuration r Admission control.
CSE QoS in IP. CSE Improving QOS in IP Networks Thus far: “making the best of best effort”
Quality of Service (QoS)
QOS مظفر بگ محمدی دانشگاه ایلام. 2 Why a New Service Model? Best effort clearly insufficient –Some applications need more assurances from the network.
CS640: Introduction to Computer Networks Aditya Akella Lecture 20 - Queuing and Basics of QoS.
CONGESTION CONTROL and RESOURCE ALLOCATION. Definition Resource Allocation : Process by which network elements try to meet the competing demands that.
Queuing and Queue Management Reading: Sections 6.2, 6.4, 6.5 COS 461: Computer Networks Spring 2011 Mike Freedman
Link Scheduling & Queuing COS 461: Computer Networks
Advance Computer Networking L-6 TCP & Routers Acknowledgments: Lecture slides are from the graduate level Computer Networks course thought by Srinivasan.
ACN: RED paper1 Random Early Detection Gateways for Congestion Avoidance Sally Floyd and Van Jacobson, IEEE Transactions on Networking, Vol.1, No. 4, (Aug.
1 Lecture 14 High-speed TCP connections Wraparound Keeping the pipeline full Estimating RTT Fairness of TCP congestion control Internet resource allocation.
TCP Trunking: Design, Implementation and Performance H.T. Kung and S. Y. Wang.
CSE 561 – Congestion Control with Network Support David Wetherall Spring 2000.
Queueing and Active Queue Management Aditya Akella 02/26/2007.
9.7 Other Congestion Related Issues Outline Queuing Discipline Avoiding Congestion.
CS640: Introduction to Computer Networks Aditya Akella Lecture 20 - Queuing and Basics of QoS.
AQM & TCP models Courtesy of Sally Floyd with ICIR Raj Jain with OSU.
CS 447 Network & Data Communication QoS Implementation for the Internet IntServ and DiffServ Department of Computer Science Southern Illinois University.
Mr. Mark Welton.  Quality of Service is deployed to prevent data from saturating a link to the point that other data cannot gain access to it  QoS allows.
1 Lecture, November 27, 2002 TCP Other Internet Protocols; Internet Traffic Scalability of Virtual Circuit Networks QoS.
Lecture Network layer -- May Congestion control Algorithms.
Random Early Detection (RED) Router notifies source before congestion happens - just drop the packet (TCP will timeout and adjust its window) - could make.
TCP continued. Discussion – TCP Throughput TCP will most likely generate the saw tooth type of traffic. – A rough estimate is that the congestion window.
Spring Computer Networks1 Congestion Control Sections 6.1 – 6.4 Outline Preliminaries Queuing Discipline Reacting to Congestion Avoiding Congestion.
An End-to-End Service Architecture r Provide assured service, premium service, and best effort service (RFC 2638) Assured service: provide reliable service.
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.
1 Lecture 15 Internet resource allocation and QoS Resource Reservation Protocol Integrated Services Differentiated Services.
Other Methods of Dealing with Congestion
QoS & Queuing Theory CS352.
Internet Networking recitation #9
Topics discussed in this section:
Top-Down Network Design Chapter Thirteen Optimizing Your Network Design Copyright 2010 Cisco Press & Priscilla Oppenheimer.
Queue Management Jennifer Rexford COS 461: Computer Networks
TCP Congestion Control at the Network Edge
Congestion Control and Resource Allocation
Queuing and Queue Management
Other Methods of Dealing with Congestion
COS 461: Computer Networks
Internet Networking recitation #10
Congestion Control Reasons:
Congestion Control and Resource Allocation
Presentation transcript:

Queue Management Mike Freedman COS 461: Computer Networks Lectures: MW 10-10:50am in Architecture N101

Monday: Congestion Control 2 ? ? ? ? logical link physical path name address What can the end-points do to collectively to make good use of shared underlying resources?

Today: Queue Management 3 What can the individual links do to make good use of shared underlying resources? logical link physical path name address ?

Packet Queues 4

Router 5 Switching Fabric Processor Line card data plane control plane

Line Cards (Interface Cards, Adaptors) Packet handling – Packet forwarding – Buffer management – Link scheduling – Packet filtering – Rate limiting – Packet marking – Measurement 6 to/from link to/from switch lookup Receive Transmit

Packet Switching and Forwarding 7 R1 Link 1 Link 2 Link 3 Link 4 Link 1, ingressLink 1, egress Link 2, ingressLink 2, egress Link 3, ingressLink 3, egress Link 4, ingressLink 4, egress Choose Egress Choose Egress Choose Egress Choose Egress “4”

Queue Management Issues Scheduling discipline – Which packet to send? – Some notion of fairness? Priority? Drop policy – When should you discard a packet? – Which packet to discard? Goal: balance throughput and delay – Huge buffers minimize drops, but add to queuing delay (thus higher RTT, longer slow start, …) 8

FIFO Scheduling and Drop-Tail Access to the bandwidth: first-in first-out queue – Packets only differentiated when they arrive Access to the buffer space: drop-tail queuing – If the queue is full, drop the incoming packet 9 ✗

Early Detection of Congestion 10

Bursty Loss From Drop-Tail Queuing TCP depends on packet loss – Packet loss is indication of congestion – TCP additive increase drives network into loss Drop-tail leads to bursty loss – Congested link: many packets encounter full queue – Synchronization: many connections lose packets at once 11

Slow Feedback from Drop Tail Feedback comes when buffer is completely full – … even though the buffer has been filling for a while Plus, the filling buffer is increasing RTT – … making detection even slower Better to give early feedback – Get 1-2 connections to slow down before it’s too late! 12

Random Early Detection (RED) Router notices that queue is getting full – … and randomly drops packets to signal congestion Packet drop probability – Drop probability increases as queue length increases – Else, set drop probability f(avg queue length) 13 Average Queue Length Drop Probability 0 1

Properties of RED Drops packets before queue is full – In the hope of reducing the rates of some flows Tolerant of burstiness in the traffic – By basing the decisions on average queue length Which of the following are true? (A)Drops packet in proportion to each flow’s rate (B)High-rate flows selected more often (C)Helps desynchronize the TCP senders (D)All of the above 14

Problems With RED Hard to get tunable parameters just right – How early to start dropping packets? – What slope for increase in drop probability? – What time scale for averaging queue length? RED has mixed adoption in practice – If parameters aren’t set right, RED doesn’t help Many other variations in research community – Names like “Blue” (self-tuning), “FRED”… 15

From Loss to Notification 16

Feedback: From loss to notification Early dropping of packets – Good: gives early feedback – Bad: has to drop the packet to give the feedback Explicit Congestion Notification – Router marks the packet with an ECN bit – Sending host interprets as a sign of congestion 17

Explicit Congestion Notification Needs support by router, sender, AND receiver – End-hosts check ECN-capable during TCP handshake ECN protocol (repurposes 4 header bits) 1.Sender marks “ECN-capable” when sending 2.If router sees “ECN-capable” and congested, marks packet as “ECN congestion experienced” 3.If receiver sees “congestion experienced”, marks “ECN echo” flag in responses until congestion ACK’d 4.If sender sees “ECN echo”, reduces cwnd and marks “congestion window reduced” flag in next packet 18

ECN Questions Why separate ECN experienced and echo flags? (A) Detect reverse path congestion with “experienced” (B) Congestion could happen in either direction, want sender to react to forward direction (C) Both of the above Why “echo” resent and “congestion window reduced” ACK? (A)Congestion in reverse path can lose ECN-echo, still want to respond to congestion in forward path (B)Only should apply backoff once per cwnd (C)Both of the above 19

Link Scheduling 20

First-In First-Out Scheduling First-in first-out scheduling – Simple, but restrictive Example: two kinds of traffic – Voice over IP needs low delay – is not that sensitive about delay Voice traffic waits behind 21

Strict Priority Multiple levels of priority – Always transmit high-priority traffic, when present Isolation for the high-priority traffic – Almost like it has a dedicated link – Except for (small) delay for packet transmission But, lower priority traffic may starve  22

Weighted Fair Scheduling Weighted fair scheduling – Assign each queue a fraction of the link bandwidth – Rotate across queues on a small time scale 50% red, 25% blue, 25% green 23

Weighted Fair Scheduling If non-work conserving (resources can go idle) – Each flow gets at most its allocated weight WFQ is work-conserving – Send extra traffic from one queue if others are idle – Algorithms account for bytes, not packets – Results in (A) higher or (B) lower utilization than non- work conserving? Algorithm accounts for bytes, not packets WFQ results in max-min fairness – Maximize min rate of each flow 24

Implementation Trade-Offs FIFO – One queue, trivial scheduler Strict priority – One queue per priority level, simple scheduler Weighted fair scheduling – One queue per class, and more complex scheduler 25

Quality of Service Guarantees 26

Distinguishing Traffic Applications compete for bandwidth – traffic can cause congestion/losses for VoIP Principle 1: Packet marking – So router can distinguish between classes – E.g., Type of Service (ToS) bits in IP header 27

Preventing Misbehavior Applications misbehave – VoIP sends packets faster than 1 Mbps Principle 2: Policing – Protect one traffic class from another – By enforcing a rate limit on the traffic 28

Subdividing Link Resources Principle 3: Link scheduling – Ensure each application gets its share – … while (optionally) using any extra bandwidth – E.g., weighted fair scheduling 29

Reserving Resources, and Saying No Traffic cannot exceed link capacity – Deny access, rather than degrade performance Principle 4: Admission control – Application declares its needs in advance – Application denied if insufficient resources available 30

Quality of Service (QoS) Guaranteed performance – Alternative to best-effort delivery model QoS protocols and mechanisms – Packet classification and marking – Traffic shaping – Link scheduling – Resource reservation and admission control – Identifying paths with sufficient resources 31

Conclusions Link resource allocation – Buffer management – Link scheduling Friday precept – Practice exam questions on resource allocation Next week: routing dynamics – Routing protocol convergence – Routing to mobile hosts 32