0% found this document useful (0 votes)
76 views

13-CongestioninDataNetworks REAL

The document discusses congestion in data networks. It defines congestion as occurring when the number of packets being transmitted approaches the network's packet handling capacity. Factors that can cause congestion include high packet arrival rates, insufficient memory, bursty traffic, and slow processors. The objective of congestion control is to keep the number of packets below a level where performance deteriorates. Common congestion control mechanisms include backpressure, choke packets, implicit signaling using increased delays/packet drops, and explicit signaling using additional bits or packets to indicate congestion. Traffic shaping techniques like leaky bucket and token bucket algorithms can also control congestion by regulating packet transmission rates.

Uploaded by

memo1023
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PPTX, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
76 views

13-CongestioninDataNetworks REAL

The document discusses congestion in data networks. It defines congestion as occurring when the number of packets being transmitted approaches the network's packet handling capacity. Factors that can cause congestion include high packet arrival rates, insufficient memory, bursty traffic, and slow processors. The objective of congestion control is to keep the number of packets below a level where performance deteriorates. Common congestion control mechanisms include backpressure, choke packets, implicit signaling using increased delays/packet drops, and explicit signaling using additional bits or packets to indicate congestion. Traffic shaping techniques like leaky bucket and token bucket algorithms can also control congestion by regulating packet transmission rates.

Uploaded by

memo1023
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PPTX, PDF, TXT or read online on Scribd
You are on page 1/ 36

Data and Computer

Communications
Chapter 13 – Congestion in Data
Networks

Ninth Edition
by William Stallings

Data and Computer Communications, Ninth


Edition by William Stallings, (c) Pearson
Education - Prentice Hall, 2011
What Is Congestion?
 congestion occurs when the number of packets
being transmitted through the network
approaches the packet handling capacity of the
network
 objective of congestion control is to keep the
number of packets below a level at which
performance falls off dramatically
 a data network is a network of queues
 generally 80% utilization is critical
 finite queues mean data may be lost
Factors that Cause
Congestion
 Packet arrival rate exceeds the outgoing
link capacity.
 Insufficient memory to store arriving
packets
 Bursty traffic
 Slow processor

3
Queuing Theory
 Data network is a network of queues
 If arrival rate > transmission rate (>)
 queue size grows without bound and

packet delay goes to infinity ()

Chapter 10 Congestion Control in Data 4


Networks
Queues at a Node
Interaction of Queues
Ideal
Network
Utilization
Effects of
Congestion
-
No Control
 Congestion Control refers to techniques
and mechanisms that can either prevent
congestion, before it happens, or remove
congestion, after it has happened.
Congestion control mechanisms are
divided into two categories, one category
prevents the congestion from happening
and the other category removes
congestion after it has taken place.
Congestion Control in Packet
Switched Networks
 sendcontrol packet to some or all source
nodes
 requires additional traffic during congestion
 rely on routing information
 may react too quickly
 end to end probe packets
 adds to overhead
 add congestion information to packets in
transit
 either backwards or forwards
Mechanisms for
Congestion Control
Mechanisms for
Congestion Control
Backpressure
 if node becomes congested it can slow down or halt flow of packets
from other nodes
 same effect as backpressure in a blocked fluid pipe
 other nodes have to apply control on incoming packet rates
 propagates back to source
 can restrict to high traffic logical connections
 used in connection oriented networks that allow hop-by-hop
congestion control
 not used in ATM or frame relay
 only recently developed for IP
 Disadvantage
 May be too slow to react to congestion situations, because it
takes a long time to propagate congestion information back to
the source
Choke Packet
 a control packet
 generated at congested node
 sent back to source node
 Internet Control Message Protocol (ICMP) Source
Quench packet
• from router or destination end system
• source cuts back until it no longer receives quench messages
• message is issued for every discarded packet
• message may also be issued for anticipated congestion
 crude control technique
Implicit Congestion Signaling
 with network congestion:
 transmission delay increases
 packets may be discarded
 source can detect congestion and reduce flow
 responsibility of end systems
 effective on connectionless (datagram) networks
 also used in connection-oriented networks
Explicit Congestion Signaling
 Backwards network alerts
 congestion avoidance end systems of
notification in opposite increasing
direction to packet congestion
required
 Forwards
 congestion avoidance
notification in same
direction as packet end systems take
required steps to reduce
offered load
Explicit Signaling Categories
Binary Credit based Rate based

• a bit set in • indicates • supply


a packet how many explicit
indicates packets data rate
congestion source may limit
send • nodes
• common along path
for end-to- may
end flow request
control rate
reduction
Traffic Management
fairness
• provide equal treatment of various flows

quality of service
• different treatment for different connections

reservations
• traffic contract between user and network
• excess traffic discarded or handled on a best-
effort basis
Traffic Shaping
 Another method of congestion control is
to “shape” the traffic before it enters the
network.
 Traffic shaping controls the rate at
which packets are sent (not just how
many). Used in ATM and Integrated
Services networks.
 At connection set-up time, the sender
and carrier negotiate a traffic pattern
(shape).
 Two traffic shaping algorithms are:
 Leaky Bucket 26


The Leaky Bucket Algorithm
 TheLeaky Bucket Algorithm used to
control rate in a network. It is implemented
as a single-server queue with constant
service time. If the bucket (buffer)
overflows then packets are discarded.

27
The Leaky Bucket Algorithm

(a) A leaky bucket with water. (b) a leaky bucket with


packets.
28
Leaky Bucket Algorithm, cont.
 The leaky bucket enforces a constant output
rate (average rate) regardless of the
burstiness of the input. Does nothing when
input is idle.
 The host injects one packet per clock tick onto
the network. This results in a uniform flow of
packets, smoothing out bursts and reducing
congestion.
 When packets are the same size (as in ATM
cells), the one packet per tick is okay. For
variable length packets though, it is better to
allow a fixed number of bytes per tick. E.g.
1024 bytes per tick will allow one 1024-byte
packet or two 512-byte packets or four 256- 29

byte packets on 1 tick.


Token Bucket Algorithm
 In contrast to the LB, the Token Bucket
Algorithm, allows the output rate to vary,
depending on the size of the burst.
 In the TB algorithm, the bucket holds tokens.
To transmit a packet, the host must capture
and destroy one token.
 Tokens are generated by a clock at the rate of
one token every t sec.
 Idle hosts can capture and save up tokens
(up to the max. size of the bucket) in order to
send larger bursts later.
30
The Token Bucket Algorithm

5-34

(a) Before. (b) After. 31


Leaky Bucket vs Token Bucket
 LB discards packets; TB does not. TB
discards tokens.
 With TB, a packet can only be
transmitted if there are enough tokens to
cover its length in bytes.
 LB sends packets at an average rate.
TB allows for large bursts to be sent
faster by speeding up the output.
 TB allows saving up tokens
(permissions) to send large bursts. LB
does not allow saving.
33
TCP Tuning
 Maximum achievable throughput for a single TCP connection is determined
by different factors. One trivial limitation is the maximum bandwidth of the
slowest link in the path. But there are also other, less obvious limits for TCP
throughput. Bit errors can create a limitation for the connection as well as
RTT.
 Window size
 In computer networking, RWIN (TCP Receive Window) is the amount of
data that a computer can accept without acknowledging the sender. If the
sender has not received acknowledgement for the first packet it sent, it will
stop and wait and if this wait exceeds a certain limit, it may even retransmit.
This is how TCP achieves reliable data transmission
 Even if there is no packet loss in the network, windowing can limit
throughput. Because TCP transmits data up to the window size before
waiting for the acknowledgements, the full bandwidth of the network may
not always get used. The limitation caused by window size can be
calculated as follows:
where RWIN is the TCP Receive Window and RTT is the round-
trip time for the path
Packet loss

 When packet loss occurs in the network, an additional limit is imposed on


the connection In the case of light to moderate packet loss when the TCP
rate is limited by the congestion avoidance algorithm, the limit can be
calculated according to the formula

where MSS is the maximum segment size and Ploss is the probability of
packet loss

You might also like