Univ. of TehranIntroduction to Computer Network1 An Introduction Computer Networks An Introduction to Computer Networks University of Tehran Dept. of EE.

Slides:



Advertisements
Similar presentations
Fair Queueing. Design space Buffer management: –RED, Drop-Tail, etc. Scheduling: which flow to service at a given time –FIFO –Fair Queueing.
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.
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.
ECE 4450:427/527 - Computer Networks Spring 2015
CS 268: Lecture 8 Router Support for Congestion Control Ion Stoica Computer Science Division Department of Electrical Engineering and Computer Sciences.
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.
CS 4700 / CS 5700 Network Fundamentals Lecture 12: Router-Aided Congestion Control (Drop it like it’s hot) Revised 3/18/13.
Networks: Congestion Control1 Congestion Control.
CS 268: Lecture 15/16 (Packet Scheduling) Ion Stoica April 8/10, 2002.
Analysis and Simulation of a Fair Queuing Algorithm
Katz, Stoica F04 EECS 122: Introduction to Computer Networks Packet Scheduling and QoS Computer Science Division Department of Electrical Engineering and.
Congestion Control and Resource Allocation
Katz, Stoica F04 EECS 122: Introduction to Computer Networks TCP Variations Computer Science Division Department of Electrical Engineering and Computer.
Spring 2002CS 4611 Congestion Control Outline Queuing Discipline Reacting to Congestion Avoiding Congestion.
Spring 2003CS 4611 Congestion Control Outline Queuing Discipline Reacting to Congestion Avoiding Congestion.
CS 268: Lecture 8 (Router Support for Congestion Control) Ion Stoica February 19, 2002.
ACN: Congestion Control1 Congestion Control and Resource Allocation.
Computer Networking Lecture 17 – Queue Management As usual: Thanks to Srini Seshan and Dave Anderson.
7/15/2015HY220: Ιάκωβος Μαυροειδής1 HY220 Schedulers.
Core Stateless Fair Queueing Stoica, Shanker and Zhang - SIGCOMM 98 Fair Queueing requires per flow state: too costly in high speed core routers Yet, some.
Computer Networking Lecture 22 – Queue Management and 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.
1 #6 in Mid-Term  Most answered:  many users thru the same bottleneck -> increased queueing delay -> increased e2e latency  Possible reasons behind.
CIS679: Scheduling, Resource Configuration and Admission Control r Review of Last lecture r Scheduling r Resource configuration r Admission control.
CS640: Introduction to Computer Networks Aditya Akella Lecture 20 - Queuing and Basics of QoS.
1 Queue Management Hamed Khanmirza Principles of Networking University of Tehran.
CONGESTION CONTROL and RESOURCE ALLOCATION. Definition Resource Allocation : Process by which network elements try to meet the competing demands that.
Advance Computer Networking L-5 TCP & Routers Acknowledgments: Lecture slides are from the graduate level Computer Networks course thought by Srinivasan.
Link Scheduling & Queuing COS 461: Computer Networks
1 On Class-based Isolation of UDP, Short-lived and Long-lived TCP Flows by Selma Yilmaz Ibrahim Matta Computer Science Department Boston University.
Fair Queueing. 2 First-Come-First Served (FIFO) Packets are transmitted in the order of their arrival Advantage: –Very simple to implement Disadvantage:
27th, Nov 2001 GLOBECOM /16 Analysis of Dynamic Behaviors of Many TCP Connections Sharing Tail-Drop / RED Routers Go Hasegawa Osaka University, Japan.
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.
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.
Spring 2009CSE Congestion Control Outline Resource Allocation Queuing TCP Congestion Control.
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.
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.
1 Fair Queuing Hamed Khanmirza Principles of Network University of Tehran.
Queue Scheduling Disciplines
Spring Computer Networks1 Congestion Control Sections 6.1 – 6.4 Outline Preliminaries Queuing Discipline Reacting to Congestion Avoiding Congestion.
Providing QoS in IP Networks
Congestion Control Outline Queuing Discipline Reacting to Congestion
Congestion Control Outline Queuing Discipline Reacting to Congestion
Congestion Control Outline Queuing Discipline Reacting to Congestion
Chapter 6 Queuing Disciplines
Congestion Control and Resource Allocation
EE 122: Router Support for Congestion Control: RED and Fair Queueing
TCP, XCP and Fair Queueing
Queuing and Queue Management
ECE 4450:427/527 - Computer Networks Spring 2017
Fair Queueing.
Advance Computer Networking
Computer Science Division
Advance Computer Networking
Network Simulation NET441
COMP/ELEC 429 Introduction to Computer Networks
Advanced Computer Networks
EECS 122: Introduction to Computer Networks TCP Variations
Congestion Control Reasons:
Introduction to Packet Scheduling
Congestion Control and Resource Allocation
EECS 122: Introduction to Computer Networks Packet Scheduling and QoS
Fair Queueing.
Introduction to Packet Scheduling
کنترل جریان امیدرضا معروضی.
Presentation transcript:

Univ. of TehranIntroduction to Computer Network1 An Introduction Computer Networks An Introduction to Computer Networks University of Tehran Dept. of EE and Computer Engineering By: Dr. Nasser Yazdani Lecture 12: Queuing disciplines

Univ. of TehranIntroduction to Computer Network2 Outline Router responsibility in Network Queuing discipline FIFO Fair Queuing

Univ. of TehranIntroduction to Computer Network3 Router Support For Conges. Traditional Internet No Congestion control initially mechanisms at end-systems, mainly implemented in TCP Routers play little role Router mechanisms affecting congestion management Scheduling Buffer management Traditional routers FIFO Tail drop

Univ. of TehranIntroduction to Computer Network4 Router Packet Processing Scheduling: Decide when to send a packet Decide which packet to transmit Buffer management: Decide when to drop a packet Decide which packet to drop

Univ. of TehranIntroduction to Computer Network5 Queuing Discipline First-In-First-Out (FIFO) does not discriminate between traffic sources Fair Queuing (FQ) explicitly segregates traffic based on flows ensures no flow captures more than its share of capacity variation: weighted fair queuing (WFQ) Problem? Flow 1 Flow 2 Flow 3 Flow 4 Round-robin service

Univ. of TehranIntroduction to Computer Network6 FIFO: First-In First-Out Maintain a queue to store all packets When to send? When there is at least a packet in the queue Which packet to send? The packet at the head of the queue Queued packets Arriving packet Next to transmit

Univ. of TehranIntroduction to Computer Network7 Tail-drop Buffer Management When to drop? When buffer is full Which packet to drop The arriving packet Arriving packet Next to transmit Drop

Univ. of TehranIntroduction to Computer Network8 Drawbacks of FIFO with Tail- drop Synchronizing effect for multiple TCP flows Buffer lock out by misbehaving flows Burst or multiple consecutive packet drops

Univ. of TehranIntroduction to Computer Network9 Synchronizing effect for multiple TCP flows When buffer overflows many/all flows experience losses Flows which experience losses will scale down their transmission (by reducing the window size) This will cause the link to be underutilized … the process repeats Net result: inefficient link utilization

Univ. of TehranIntroduction to Computer Network10 Buffer Lock Out by Misbehaving Flows “Aggressive” flows can squeeze out TCP flows Example: one 10 Mbps link shared by 1 UDP flow that sends at 10 Mbps, and does not implement any congestion control 31 TCP flows UDP Bottleneck link (10 Mbps) UDP (#1) - 10 Mbps TCP (#2) TCP (#32)... UDP (#1) TCP (#2) TCP (#32)...

Univ. of TehranIntroduction to Computer Network11 Burst of Packet Losses A TCP flow sends a burst of packets that arrive at a router when buffer is full All packets in the burst are lost This may cause RTO to trigger: cwnd  1 For example, with TCP Reno if there are three packet losses in a window, this will almost sure trigger an RTO

Univ. of TehranIntroduction to Computer Network12 FIFO Router with Two TCP Flows

Univ. of TehranIntroduction to Computer Network13 RED Router with Two TCP Sessions

Univ. of TehranIntroduction to Computer Network14 Solution? Round-robin among different flows [Nagle ‘87] one queue per flow

Univ. of TehranIntroduction to Computer Network15 Round-Robin Discussion Advantages: protection among flows Misbehaving flows will not affect the performance of well-behaving flows Misbehaving flow – a flow that does not implement any congestion control FIFO does not have such a property Disadvantages: More complex than FIFO: per flow queue/state Biased toward large packets – a flow receives service proportional to the length of packets (When is this bad?)

Univ. of TehranIntroduction to Computer Network16 Solution? Bit-by-bit round robin Can you do this in practice? No, packets cannot be preempted (why?) …we can only approximate it

Univ. of TehranIntroduction to Computer Network17 Fair Queueing (FQ) [DKS’89] Define a fluid flow system: a system in which flows are served bit-by-bit Then serve packets in the increasing order of their deadlines Advantages Each flow will receive exactly its fair rate Work conserving

Univ. of TehranIntroduction to Computer Network18 FQ Algorithm Suppose clock ticks each time a bit is transmitted Let P i denotes the length, S i the time start to transmit and F i denote the time when finish transmitting of packet i, then, F i = S i + P i When does router start transmitting packet i? if before router finished packet i - 1 from this flow, then immediately after last bit of i - 1 (F i-1 ) if no current packets for this flow, then start transmitting when arrives (call this A i ) Thus: F i = MAX (F i - 1, A i ) + P i

Univ. of TehranIntroduction to Computer Network19 Implementing Fair Queueing Idea: serve packets in the order in which they would have finished transmission in the fluid flow system

Univ. of TehranIntroduction to Computer Network20 FQ Algorithm (cont) For multiple flows calculate F i for each packet that arrives on each flow treat all F i ’s as timestamps next packet to transmit is one with lowest timestamp Not perfect: can’t preempt current packet Flow 1Flow 2 (a)(b) Output F = 8 F = 10 F = 5 F = 10 F = 2 Flow 1 (arriving) Flow 2 (transmitting)

Univ. of TehranIntroduction to Computer Network21 Example Flow 1 (arrival traffic) Flow 2 (arrival traffic) Service in fluid flow system Packet system time

Univ. of TehranIntroduction to Computer Network22 FQ Advantages FQ protect well-behaved flows from ill- behaved flows Example: 1 UDP (10 Mbps) and 31 TCP’s sharing a 10 Mbps link

Univ. of TehranIntroduction to Computer Network23 Big Picture FQ does not eliminate congestion  it just manages the congestion You need both end-host congestion control and router support for congestion control end-host congestion control to adapt router congestion control to protect/isolate Don’t forget buffer management: you still need to drop in case of congestion. Which packet’s would you drop in FQ? one possibility: packet from the longest queue