Download presentation
Presentation is loading. Please wait.
Published byCamren Bradway Modified over 9 years ago
1
Congestion Control Tanenbaum 5.3 Tanenbaum 6.5
2
Congestion Control Network Layer – Congestion control point to point Transport Layer – Congestion control end-to-end Packets Delivered Packets Sent Maximum capacity of bottleneck link Objective Congestion Congestion Collapse
3
Congestion Control: Strategies Open loop – Prevent congestion by design – E.g., admission control Closed loop – Monitor some characteristics of system – Inform key elements that can take action – Adjust system operation whenever needed
4
Impact of Policies on Congestion Control Link Layer policies – Retransmission – Out-of-order caching – Acknowledgement – Flow control
5
Impact of Policies on Congestion Control (2) Network Layer policies – Virtual circuit/datagram – Packet scheduling – Queue management – Routing algorithm – Packet lifetime management
6
Impact of Policies on Congestion Control (3) Transport Layer policies – Retransmission – Out-of-order caching – Acknowledgement – Flow control – Timeout determination
7
Congestion Control in Packet Switched Networks Monitor some system state variable u u may be link utilization, loss rate Instantaneous u now Average value u computed as: – u new = .u last + (1- ) u now – 0 <= <= 1 Use of thresholds
8
Techniques at Network Layer DECBit (Warning bit) Source Quench packets (choke packets) Hop-by-hop choke packets Load shedding RED
9
How to Control the Load? Rate control: – A source control the rate with which it injects traffic (leacky bucket, token bucket) (Read section 5.4.2) Window control – A source controls the amount of OUTSTANDING traffic * Outstanding traffic: packets sent, not yet ack’ed
10
Leaky Bucket Source behaves “like” a leaky bucket In short: it is a G/D/1 (queueing system with constant rate) Implementation: – Source driven by clock – Every tick, source is allowed to inject some amount of traffic – When queue is full, further packets are dropped – When queue is empty…. (this is somewhat the problem)
11
Token Bucket In contrast with leaky bucket, Token bucket “collects” credit when queue is empty for “rainy” days. What is a “rainy” day? A burst Implementation: – Maintain a token counter Tk – Tk increases with time (every period P) – Tk decreases when packets are sent – A packet can be sent only if there is a token that it can “destroy” – When bucket fills up, stop collect tokens, but do not discard arriving packets.
12
Token Bucket – In short, Token bucket allows bursts (based on the arrival rate of tokens) – In general, we are interested by the maximum burst length S (in time) injected – C + .S = M.S M (maximum Line rate ) : token Arrival rate C: capacity
Similar presentations
© 2025 SlidePlayer.com. Inc.
All rights reserved.