NW Lec 6
NW Lec 6
NW Lec 6
Congestion control
2. Window Policy
The type of window at the sender may also affect congestion. The
Selective Repeat window is better than the Go-Back-N window for
congestion control.
In the Go-Back-N window, when the timer for a packet times out, several
packets may be resent, although some may have arrived safe and sound
at the receiver. This duplication may make the congestion worse.
The Selective Repeat window, on the other hand, tries to send the specific
packets that have been lost or corrupted.
Open-Loop Congestion Control
3. Acknowledgment Policy
The acknowledgment policy imposed by the receiver may also affect
congestion. If the receiver does not acknowledge every packet it receives,
it may slow down the sender and help prevent congestion.
Several approaches are used in this case.
A receiver may send an acknowledgment only if it has a packet to be sent
or a special timer expires.
A receiver may decide to acknowledge only N packets at a time. We need
to know that the acknowledgments are also part of the load in a network.
Sending fewer acknowledgments means imposing less load on the
network.
Open-Loop Congestion Control
4. Discarding Policy
A good discarding policy by the routers may prevent congestion and at the
same time may not harm the integrity of the transmission.
For example, in audio transmission, if the policy is to discard less
sensitive packets when congestion is likely to happen, the quality of sound
is still preserved and congestion is prevented or alleviated.
Open-Loop Congestion Control
5. Admission Policy
An admission policy, which is a quality-of-service mechanism, can also
prevent congestion in virtual circuit networks. Switches in a flow first
check the resource requirement of a flow before admitting it to the
network. A router can deny establishing a virtual circuit connection if there
is congestion in the network or if there is a possibility of future congestion.
Closed-Loop Congestion Control
Closed-loop congestion control mechanisms try to alleviate congestion
after it happens.
1. Back pressure
The technique of back pressure refers to a congestion control mechanism
in which a congested node stops receiving data from the immediate
upstream node or nodes. Back pressure is a node-to-node congestion
control that starts with a node and propagates, in the opposite direction of
data flow, to the source. The back pressure technique can be applied only
to virtual circuit networks, in which each node knows the upstream node
from which a flow of data is corning.
Closed-Loop Congestion Control
2. Choke Packet
A choke packet is a packet sent by a node to the source to inform it of
congestion. In the choke packet method, the warning is from the router,
which has encountered congestion, to the source station directly. The
intermediate nodes through which the packet has traveled are not warned.
When a router in the Internet is overwhelm with IP datagrams, it may
discard some of them; but it informs the source host, using a source
quench ICMP message.
Closed-Loop Congestion Control
3. Implicit Signaling
In implicit signaling, there is no communication between the congested
node or nodes and the source. The source guesses that there is a
congestion somewhere in the network from other symptoms.
For example, when a source sends several packets and there is no
acknowledgment for a while, one assumption is that the network is
congested. The delay in receiving an acknowledgment is interpreted as
congestion in the network; the source should slow down
Closed-Loop Congestion Control
4. Explicit Signaling
The node that experiences congestion can explicitly send a signal to the
source or destination. The explicit signaling method, however, is different
from the choke packet method. In the choke packet method, a separate
packet is used for this purpose; in the explicit signaling method, the signal
is included in the packets that carry data.
Explicit signaling, can occur in either the forward or the backward
direction.
Closed-Loop Congestion Control
⚫ Backward Signaling
A bit can be set in a packet moving in the direction opposite to the
congestion. This bit can warn the source that there is congestion and that
it needs to slow down to avoid the discarding of packets.
⚫ Forward Signaling
A bit can be set in a packet moving in the direction of the congestion. This
bit can warn the destination that there is congestion. The receiver in this
case can use policies, such as slowing down the acknowledgments, to
alleviate the congestion.
TCP Congestion Control
⚫ Congestion occurs, if the load offered to any network is more than its
capability.
⚫ Once the connection is established, the sender can initialize the
congestion window size (according to the available buffer space in the
receiver).
⚫ The sender's window size can be determined by the receiver and
congestion in the network.
⚫ The actual size of the window can be minimum of the receiver-
advertised window size and the congestion window size.
⚫ Generally, the methods followed by TCP to handle the congestion
consists of three phases:
TCP Congestion Control
KeepaliveTimer
➢ Used to prevent a long idle connection between two TCPs.
➢ Each time the server hears from a client, it resets this timer.
➢ Time-out is usually 2 hours.
➢ After 2 hours, sending 10 probes to client (each 75 secs),
then terminates connection.
TIME-WAIT Timer
➢ The time-wait timer is used during connection termination.