Congestion Control Reasons:

Slides:



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

1 CNPA B Nasser S. Abouzakhar Queuing Disciplines Week 8 – Lecture 2 16 th November, 2009.
01. Apr INF-3190: Congestion Control Congestion Control Foreleser: Carsten Griwodz
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.
ECE 4450:427/527 - Computer Networks Spring 2015
Congestion Control Created by M Bateman, A Ruddle & C Allison As part of the TCP View project.
School of Information Technologies TCP Congestion Control NETS3303/3603 Week 9.
Computer Networks: TCP Congestion Control 1 TCP Congestion Control Lecture material taken from “Computer Networks A Systems Approach”, Third Ed.,Peterson.
Analysis and Simulation of a Fair Queuing Algorithm
Congestion Control and Resource Allocation
Spring 2002CS 4611 Congestion Control Outline Queuing Discipline Reacting to Congestion Avoiding Congestion.
Computer Networks : TCP Congestion Control1 TCP Congestion Control.
ACN: Congestion Control1 Congestion Control and Resource Allocation.
Networks : TCP Congestion Control1 TCP Congestion Control.
Computer Networking Lecture 17 – Queue Management As usual: Thanks to Srini Seshan and Dave Anderson.
Networks : TCP Congestion Control1 TCP Congestion Control Presented by Bob Kinicki.
CIS679: Scheduling, Resource Configuration and Admission Control r Review of Last lecture r Scheduling r Resource configuration r Admission control.
CONGESTION CONTROL and RESOURCE ALLOCATION. Definition Resource Allocation : Process by which network elements try to meet the competing demands that.
Link Scheduling & Queuing COS 461: Computer Networks
1 Congestion Control Computer Networks. 2 Where are we?
9.7 Other Congestion Related Issues Outline Queuing Discipline Avoiding Congestion.
Spring 2006CS 3321 Congestion Control and Resource Allocation Outline: Overview Queuing Disciplines TCP Congestion Control Combined Techniques.
Spring 2009CSE Congestion Control Outline Resource Allocation Queuing TCP Congestion Control.
1 Fair Queuing Hamed Khanmirza Principles of Network University of Tehran.
Spring Computer Networks1 Congestion Control Sections 6.1 – 6.4 Outline Preliminaries Queuing Discipline Reacting to Congestion Avoiding Congestion.
© Janice Regan, CMPT 128, CMPT 371 Data Communications and Networking Congestion Control 0.
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.
Transmission Control Protocol (TCP) TCP Flow Control and Congestion Control CS 60008: Internet Architecture and Protocols Department of CSE, IIT Kharagpur.
QoS & Queuing Theory CS352.
Topics discussed in this section:
The Transport Layer (TCP)
Congestion Control Outline Queuing Discipline Reacting to Congestion
Queue Management Jennifer Rexford COS 461: Computer Networks
CIS, University of Delaware
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
TCP, XCP and Fair Queueing
TCP - Part II Relates to Lab 5. This is an extended module that covers TCP flow control, congestion control, and error control in TCP.
Queuing and Queue Management
William Stallings Data and Computer Communications
CSS432 Congestion Control Textbook Ch6.1 – 6.4
ECE 4450:427/527 - Computer Networks Spring 2017
So far, On the networking side, we looked at mechanisms to links hosts using direct linked networks and then forming a network of these networks. We introduced.
PUSH Flag A notification from the sender to the receiver to pass all the data the receiver has to the receiving application. Some implementations of TCP.
The University of Adelaide, School of Computer Science
CSS432 Congestion Control Textbook Ch6.1 – 6.4
Congestion Control (from Chapter 05)
CSCD 433/533 Advanced Networks
Congestion Control (from Chapter 05)
Network Simulation NET441
State Transition Diagram
Advanced Computer Networks
Figure Areas in an autonomous system
Congestion Control (from Chapter 05)
TCP Congestion Control
TCP Overview.
CSE 4213: Computer Networks II
Congestion Control (from Chapter 05)
Congestion Control (from Chapter 05)
Advanced Computer Networks
Transport Layer: Congestion Control
Congestion Control (from Chapter 05)
Congestion Control (from Chapter 05)
Congestion Control (from Chapter 05)
Congestion Control and Resource Allocation
Lecture 6, Computer Networks (198:552)
Presentation transcript:

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 take packets S – R == access packet rate

Some nodes are slow - links used by too many sources - example: two high speed links feeding into a low speed link

Flow control vs congestion control Flow control may be required even if congestion is not present and vice versa

Classification Router-centric and host-centric Router-centric - controlled by the routers (inside the network) - each router decides which packets to forward and which to drop to ensure the service model

Host centric: - control is done at the end points - source adjusts the rate and the receiver provides feedback

Reservation-based vs feedback based * each source requests resources (bandwidth, buffers) when flow is established. * flow is rejected if not enough resources are available

Feedback based: - no resources are reserved - discard packets if buffers are full -explicit or implicit feedback to adjust the sending rate

Window-based vs Rate based Both mechanism control the speed of the sender;

Although any combination of the above strategies are possible, only two are popular best effort model: feedback, host-centric and window based QoS model: reservation based, router centric and rate based

Evaluation of congestion control Throughput Delay must also be taken into account: - all links are totally packed; high-throughput but long delays Throughput/delay * fairness

Queuing Disciplines Each router must maintain queues for packets to be transmitted Packet forwarding rule Packet dropping rule

FIFO disciplines One queue at each router The first packet to arrive is the first to be transmitted If the queue is full, discard the packet Most IP routers are FIFO

Priority queues One queue for each priority level Transmit from highest priority queue first Packet dropping policy: drop low priority packets

Fair queuing FIFO does not distinguish packets of different flows Problem: all responsibility is pushed to sources (no network control) Some sources could flood the network

Fair queuing Separate queue for each flow Router serves the queues in round-robin fashion When a queue is full, its packets are discarded according to some discipline In this scheme, a source cannot hog the network Enforces fairness but no priority

Simple fair queuing is not entirely fair as packets may be of different lengths Solution: bit-by-bit round robin

Fair queuing Use clocks for each flow Assume clock ticks for each bit transmitted Pi = length of packet numbered i Si = time at which packet i transmission is started Fi = finish time for packet i Ai = arrival time for packet i Fi = Si + Pi Si = max(Fi-1, Ai), Fi = max(Fi-1, Ai) + Pi

All flows: treat Fi as timestamps Transmit the packet with the lowest timestamp

Variation: weighted fair queuing Weight is assigned to each flow Weight specifies how many bits to transmit each time the router services that queue Source must communicate the weight information: QoS

Feedback based control If congestion is detected then send a control packet to source Problem: too many control packets Congestion bit in message: - this bit is sent to 1 if congestion is detected and a choke packet is sent - subsequent routers do not send choke packet if congestion bit is already set.

Implicit feedback Randomly drop packets Increased timeout

TCP congestion control Each source determines how much capacity is available for a given flow in the networks. Acks are used to reach an operating point: self-clocking

Additive increase/multiplicative decrease Window = min(Congestion Window, advertised window) Linear increase Multiplicative decrease

Slow start Linear additive increase takes too long

Fast retransmit Timeouts may not be accurate; results in slow response Duplicate acks Fast recovery: reduce congestion window