Chapter 10 Congestion Control in Data Networks and

  • Slides: 25
Download presentation
Chapter 10 Congestion Control in Data Networks and Internets 1

Chapter 10 Congestion Control in Data Networks and Internets 1

Introduction Packet–switched networks get congested! l Congestion occurs when the number of packets transmitted

Introduction Packet–switched networks get congested! l Congestion occurs when the number of packets transmitted approaches network capacity l Objective of congestion control: l – keep the number of packets that are entering/within the network below the level at which performance drops off dramatically Chapter 10: Congestion Control 2

Queuing Theory l l l Recall from Chapter 8 that a data network is

Queuing Theory l l l Recall from Chapter 8 that a data network is a network of queues If arrival rate at any queue > transmission rate from the node then queue size grows without bound and packet delay goes to infinity Rule of Thumb Design Point: = L /R <. 8 * Chapter 10: Congestion Control 3

Input & Output Queues at a Node Ts = L/R Nodal Processing Chapter 10:

Input & Output Queues at a Node Ts = L/R Nodal Processing Chapter 10: Congestion Control Ts = L/R 4

At Saturation Point Two Possible Strategies at Node: 1. Discard any incoming packet if

At Saturation Point Two Possible Strategies at Node: 1. Discard any incoming packet if no buffer space is available 2. Exercise flow control over neighbors – May cause congestion to propagate throughout network Chapter 10: Congestion Control 5

Queue Interaction in Data Network (delay propagation) Chapter 10: Congestion Control 6

Queue Interaction in Data Network (delay propagation) Chapter 10: Congestion Control 6

Jackson’s Theorem - Application in Packet Switched Networks Internal load: Packet Switched Network External

Jackson’s Theorem - Application in Packet Switched Networks Internal load: Packet Switched Network External load, offered to network: N N = jk j=1 k=2 where: = total workload in packets/sec jk = workload between source j and destination k N = total number of (external) sources and destinations Chapter 10: Congestion Control = L i i=1 where: = total on all links in network i = load on link i L = total number of links Note: • Internal > offered load • Average length for all paths: E[number of links in path] = / • Average number of items waiting and being served in link i: ri = i Tri • Average delay of packets sent through the network is: Notice: As any i increases, 1 L M i total delay T= i=1 Ri - M i increases. where: M is average packet length and Ri is the data rate on link i 7

Ideal Performance I. e. , infinite buffers, no variable overhead for packet transmission or

Ideal Performance I. e. , infinite buffers, no variable overhead for packet transmission or congestion control l Throughput increases with offered load up to full capacity l Packet delay increases with offered load approaching infinity at full capacity l Power = throughput / delay, or a measure of the balance between throughput and delay l – Higher throughput results in higher delay Chapter 10: Congestion Control 8

Ideal Network Utilization Load: Ts = L /R Power: relationship between Normalized Throughput and

Ideal Network Utilization Load: Ts = L /R Power: relationship between Normalized Throughput and Delay Chapter 10: Congestion Control 9

Practical Performance I. e. , finite buffers, non-zero packet processing overhead l With no

Practical Performance I. e. , finite buffers, non-zero packet processing overhead l With no congestion control, increased load eventually causes moderate congestion: throughput increases at slower rate than load l Further increased load causes packet delays to increase and eventually throughput to drop to zero l Chapter 10: Congestion Control 10

Effects of Congestion What’s happening here? • • buffers fill packets discarded sources re-transmit

Effects of Congestion What’s happening here? • • buffers fill packets discarded sources re-transmit routers generate more traffic to update paths • good packets resent • delays propagate Chapter 10: Congestion Control 11

Common Congestion Control Mechanisms Chapter 10: Congestion Control 12

Common Congestion Control Mechanisms Chapter 10: Congestion Control 12

Congestion Control l Backpressure l Policing l Choke packet l Implicit congestion signaling –

Congestion Control l Backpressure l Policing l Choke packet l Implicit congestion signaling – Request from destination to source to reduce rate – Useful only on a logical connection basis – Requires hop-by-hop flow control mechanism – Measuring and restricting packets as they enter the network – – Specific message back to source E. g. , ICMP Source Quench – Source detects congestion from transmission delays and lost packets and reduces flow Chapter 10: Congestion Control 13

Explicit congestion signaling Direction – Backward – Forward l Categories – Binary – Credit-based

Explicit congestion signaling Direction – Backward – Forward l Categories – Binary – Credit-based – Rate-based l Chapter 10: Congestion Control 14

Traffic Management in Congested Network – Some Considerations l Fairness l Quality of Service

Traffic Management in Congested Network – Some Considerations l Fairness l Quality of Service (Qo. S) – Various flows should “suffer” equally – Last-in-first-discarded may not be fair – – – Flows treated differently, based on need Voice, video: delay sensitive, loss insensitive File transfer, mail: delay insensitive, loss sensitive – Interactive computing: delay and loss sensitive l Reservations – Policing: excess traffic discarded or handled on best-effort basis Chapter 10: Congestion Control 15

Frame Relay Congestion Control l l Minimize frame discard Maintain Qo. S (per-connection bandwidth)

Frame Relay Congestion Control l l Minimize frame discard Maintain Qo. S (per-connection bandwidth) Minimize monopolization of network Simple to implement, little overhead Minimal additional network traffic Resources distributed fairly Limit spread of congestion Operate effectively regardless of flow Have minimum impact other systems in network Minimize variance in Qo. S Chapter 10: Congestion Control 16

Frame Relay Techniques more Chapter 10: Congestion Control 17

Frame Relay Techniques more Chapter 10: Congestion Control 17

Congestion Avoidance with Explicit Signaling Two general strategies considered: l Hypothesis 1: Congestion always

Congestion Avoidance with Explicit Signaling Two general strategies considered: l Hypothesis 1: Congestion always occurs slowly, almost always at egress nodes – forward explicit congestion avoidance l Hypothesis 2: Congestion grows very quickly in internal nodes and requires quick action – backward explicit congestion avoidance Chapter 10: Congestion Control 18

Congestion Control: BECN/FECN Chapter 10: Congestion Control 19

Congestion Control: BECN/FECN Chapter 10: Congestion Control 19

FR - 2 Bits for Explicit Signaling l Forward Explicit Congestion Notification – For

FR - 2 Bits for Explicit Signaling l Forward Explicit Congestion Notification – For traffic in same direction as received frame – This frame has encountered congestion l Backward Explicit Congestion Notification – For traffic in opposite direction of received frame – Frames transmitted may encounter congestion Chapter 10: Congestion Control 20

Explicit Signaling Response l Network Response l User (end-system) Response – each frame handler

Explicit Signaling Response l Network Response l User (end-system) Response – each frame handler monitors its queuing behavior and takes action – use FECN/BECN bits – some/all connections notified of congestion – receipt of BECN/FECN bits in frame – BECN at sender: reduce transmission rate – FECN at receiver: notify peer (via LAPF or higher layer) to restrict flow Chapter 10: Congestion Control 21

Frame Relay Traffic Rate Management Parameters l Committed Information Rate (CIR) l Data Rate

Frame Relay Traffic Rate Management Parameters l Committed Information Rate (CIR) l Data Rate of User Access Channel (Access Rate) – Average data rate in bits/second that the network agrees to support for a connection – Fixed rate link between user and network (for network access) l Committed Burst Size (Bc) l Excess Burst Size (Be) – Maximum data over an interval agreed to by network – Maximum data, above Bc, over an interval that network will attempt to transfer Chapter 10: Congestion Control 22

Committed Information Rate (CIR) Operation Current rate at which user is sending over the

Committed Information Rate (CIR) Operation Current rate at which user is sending over the channel Average data rate (bps) committed to the user by the Frame Relay network. Maximum data rate over time period allowed for this connection by the Frame Relay network. Be Bc CIRi, j Access. Ratej i Chapter 10: Congestion Control Maximum line speed of connection to Frame Relay network (i. e. , peak data rate) 23

Frame Relay Traffic Rate Management Parameters Max. Rate CIR = Chapter 10: Congestion Control

Frame Relay Traffic Rate Management Parameters Max. Rate CIR = Chapter 10: Congestion Control Bc bps T 24

Relationship of Congestion Parameters Bc Note that T = CIR From ITU-T I. 370

Relationship of Congestion Parameters Bc Note that T = CIR From ITU-T I. 370 Chapter 10: Congestion Control 25