Saturday, 12 January 2013

Congestion Control Mechanisms

Congestion is a situation in networks, in which too many packets are present in a part of the subnet, that cause to degradation of performance. We use congestion control algorithms to deal with congestion. There exist several congestion control algorithms. Those are broadly classified into two: open loop and closed loop.

Congestion Control Methods
Congestion Control Methods

Open-Loop Congestion Control

Open-loop congestion control policies are preventing congestion before it happens. Congestion control is handled either by source or by destination host.

Re-transmission Policy

Retransmission in computer networks is one necessary process.  Retransmission increases the reliability of data delivery.  Retransmission is happen either of the sender or receiver feels that data exchanged was corrupted or dropped on the way. Good retransmission policy avoid congestion in the network.

Window Policy

The window used at the sender may also cause congestion. The Selective Repeat window is better than the Go-Back-N window.

Acknowledgment Policy

The acknowledgment policy may also affect congestion. Acknowledgement policies define whether acknowledge each packet or acknowledge a group of packets and so on.

Discarding Policy

A good discard policy also reduce the probability happen congestion. For instance, in a audio transmission, if the strategy is to discard less sensitive packets when congestion is probable to happen, the quality of sound is still preserved and congestion is prevented.

Admission Policy

An admission policy can also prevent congestion. For example, deny access to the channel if there is a chance to congestion.

Closed-Loop Congestion Control

Closed-loop congestion control methods try to overcome congestion after it happens.
Some of the closed-loop congestion control mechanisms are,

Backpressure

In backpressure method, once a congested then it stops the receiving of packets from its immediate upstream node. This may cause the upstream node to become congested and then it stops receiving of packets from its immediate upstream node. And this process continues up to sender. Sender then stops sending. This can only applicable to virtual circuit networks because each node need to know its upstream one.

Choke Packet

A choke packet is a special packet sent by a congested node to the source to notify congestion. In choke packet method the congested node send chock packet directly to sender it does not notify any intermediate one.

Implicit Signaling

In this method there is no explicit communication between sender and congested node. The sender determines that there is a congestion in the network implicitly. For example, if there is no acknowledgement for many packets from receiver.

Explicit Signaling

In this method the congested node explicitly notify sender about congestion. The difference between chock packet and explicit signaling is that, in chock packet the congested node create a special packet to notify congestion but, in explicit signaling the signal is included in the packets that carry data.
The node that experiences congestion can explicitly send a signal to the source or destination.

Forward Signaling

A bit can be set in a packet moving in the direction of the congestion. This bit notifies the receiver that there is congestion. Then the receiver takes actions to alleviate congestion.

Backward Signaling

A bit can be set in a packet moving in the direction opposite to the congestion. This bit notifies the source that there is a congestion and need to slow down the sending of packets.

Next : Bit Stuffing and Byte Stuffing (14-01-2013)



No comments:

Post a Comment