0% found this document useful (0 votes)
4 views21 pages

Lec Congestion Control

Download as pptx, pdf, or txt
Download as pptx, pdf, or txt
Download as pptx, pdf, or txt
You are on page 1/ 21

Computer Network

Congestion Control
Congestion

• Congestion in a network may occur if the load on the network—the


number of packets sent to the network—is greater than the capacity
of the network—the number of packets a network can handle.
• Congestion control refers to the mechanisms and techniques to
control the congestion and keep the load below the capacity.

2
Packet delay and throughput as functions of load

3
Congestion 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 broad categories: open-loop congestion
control (prevention) and closed-loop congestion control (removal).

4
Retransmission Policy

• It is the policy in which retransmission of the packets are taken care.


• If the sender feels that a sent packet is lost or corrupted, the packet
needs to be retransmitted.
• This transmission may increase the congestion in the network.
• To prevent congestion, retransmission timers must be designed to
prevent congestion and also be able to optimize efficiency.

5
Window Policy

• The type of window at the sender side may also affect the
congestion.
• Several packets in the Go-back-n window are resent, although some
packets may be received successfully at the receiver side.
• This duplication may increase the congestion in the network and
making it worse.
• Therefore, Selective repeat window should be adopted as it sends
the specific packet that may have been lost.

6
Discarding Policy

• A good discarding policy adopted by the routers is that the routers


may prevent congestion and at the same time partially discards the
corrupted or less sensitive package and also able to maintain the
quality of a message.
• In case of audio file transmission, routers can discard less sensitive
packets to prevent congestion and also maintain the quality of the
audio file.

7
Acknowledgment Policy

• Since acknowledgement are also the part of the load in network, the
acknowledgment policy imposed by the receiver may also affect
congestion.
• Several approaches can be used to prevent congestion related to
acknowledgment.
• The receiver should send acknowledgement for N packets rather
than sending acknowledgement for a single packet.
• The receiver should send a acknowledgment only if it has to sent a
packet or a timer expires.

8
Admission Policy

• In admission policy a mechanism should be used to prevent


congestion.
• Switches in a flow should first check the resource requirement of a
network flow before transmitting it further.
• If there is a chance of a congestion or there is a congestion in the
network, router should deny establishing a virtual network
connection to prevent further congestion.

9
Backpressure

• Backpressure is a technique in which a congested node stop receiving packet


from upstream node.
• This may cause the upstream node or nodes to become congested and rejects
receiving data from above nodes.
• Backpressure is a node-to-node congestion control technique that propagate in
the opposite direction of data flow.
• The backpressure technique can be applied only to virtual circuit where each
node has information of its above upstream node.

10
Choke Packet Technique

• Choke packet technique is applicable to both virtual networks as well as


datagram subnets.
• A choke packet is a packet sent by a node to the source to inform it of
congestion.
• Each router monitor its resources and the utilization at each of its output
lines.
• whenever the resource utilization exceeds the threshold value which is
set by the administrator, the router directly sends a choke packet to the
source giving it a feedback to reduce the traffic.
• The intermediate nodes through which the packets has traveled are not
warned about congestion.
11
12
implicit signalling

• In implicit signaling, there is no communication between the


congested nodes and the source.
• The source guesses that there is congestion in a network.
• For example when sender sends several packets and there is no
acknowledgment for a while, one assumption is that there is a
congestion.

13
explicit signaling

• In explicit signaling, if a node experiences congestion it can explicitly sends a


packet to the source or destination to inform about congestion.
• The difference between choke packet and explicit signaling is that the signal is
included in the packets that carry data rather than creating different packet as
in case of choke packet technique.
• Explicit signaling can occur in either forward or backward direction.
1. Forward Signaling : In forward signaling signal is sent in the direction of the
congestion. The destination is warned about congestion. The reciever in this
case adopt policies to prevent further congestion.
2. Backward Signaling : In backward signaling signal is sent in the opposite
direction of the congestion. The source is warned about congestion and it needs
to slow down.
14
Congestion window

• the congestion window is one of the factors that determines the number of bytes that
can be sent out at any time.
• The congestion window is maintained by the sender and is a means of stopping a link
between the sender and the receiver from becoming overloaded with too much
traffic.
• This should not to be confused with the sliding window maintained by the receiver
which exists to prevent the receiver from becoming overloaded.
• The congestion window is calculated by estimating how much congestion there is on
the link.
• Congestion Window (cwnd) is a TCP state variable that limits the amount of data the
TCP can send into the network before receiving an ACK. The Receiver Window (rwnd)
is a variable that advertises the amount of data that the destination side can receive.

15
Congestion Control In TCP

• To avoid congestive collapse, TCP uses a multi-faceted congestion-control strategy.


• For each connection, TCP maintains a congestion window, limiting the total number of
unacknowledged packets that may be in transit end-to-end.
• This is somewhat analogous to TCP's sliding window used for flow control.
• TCP uses a mechanism called slow start to increase the congestion window after a connection is
initialized or after a timeout.
• It starts with a window, a small multiple of the maximum segment size (MSS) in size
• Although the initial rate is low, the rate of increase is very rapid; for every packet acknowledged,
the congestion window increases by 1 MSS so that the congestion window effectively doubles for
every round-trip time (RTT).
• When the congestion window exceeds the slow-start threshold, ssthresh, the algorithm enters a
new state, called congestion avoidance.
• In congestion avoidance state, as long as non-duplicate ACKs are received the congestion window is
additively increased by one MSS every round-trip time.

16
Maximum segment size

• maximum segment size (MSS) is a parameter of the options field of


the TCP header that specifies the largest amount of data, specified
in bytes, that a computer or communications device can receive in a
single TCP segment.

17
Slow-start algorithm

• Slow start is part of the congestion control strategy used by TCP in conjunction with other
algorithms to avoid sending more data than the network is capable of forwarding, that is, to
avoid causing network congestion.
• Although the strategy is referred to as slow start, its congestion window growth is
quite aggressive, more aggressive than the congestion avoidance phase.
• Slow start begins initially with a congestion window size (CWND) of 1, 2, 4 or 10 MSS.
• The value for the congestion window size will be increased by one with each
acknowledgement (ACK) received, effectively doubling the window size each round-trip time.
• The transmission rate will be increased by the slow-start algorithm until either a loss is
detected, or the receiver's advertised window (rwnd) is the limiting factor, or ssthresh is
reached.
• If a loss event occurs, TCP assumes that it is due to network congestion and takes steps to
reduce the offered load on the network.

18
Additive increase/multiplicative decrease

• The additive increase/multiplicative decrease (AIMD) algorithm is a


closed-loop control algorithm.
• AIMD combines linear growth of the congestion window with an
exponential reduction when a congestion takes place.
• Multiple flows using AIMD congestion control will eventually
converge to use equal amounts of a contended link.

19
Congestion Control in Frame Relay

Uses 2 bits in the frame to notify sender /receiver about congestion

BECN
(Backward Explicit Congestion Notification)

FECN
Forward Explicit Congestion Notification)

20
Thanks

21

You might also like