The presence of congestion means the load is greater than the resources available over a network to handle. Generally we will get an idea to reduce the congestion by trying to increase the resources or decrease the load, but it is not that much of a good idea.
There are some approaches for congestion control over a network which are usually applied on different time scales to either prevent congestion or react to it once it has occurred.
Let us understand these approaches step wise as mentioned below −
Step 1 − The basic way to avoid congestion is to build a network that is well matched to the traffic that it carries. If more traffic is directed but a low-bandwidth link is available, definitely congestion occurs.
Step 2 − Sometimes resources can be added dynamically like routers and links when there is serious congestion. This is called provisioning, and which happens on a timescale of months, driven by long-term trends.
Step 3 − To utilise most existing network capacity, routers can be tailored to traffic patterns making them active during daytime when network users are using more and sleep in different time zones.
Step 4 − Some of local radio stations have helicopters flying around their cities to report on road congestion to make it possible for their mobile listeners to route their packets (cars) around hotspots. This is called traffic aware routing.
Step 5 − Sometimes it is not possible to increase capacity. The only way to reduce the congestion is to decrease the load. In a virtual circuit network, new connections can be refused if they would cause the network to become congested. This is called admission control.
Step 6 − Routers can monitor the average load, queueing delay, or packet loss. In all these cases, the rising number indicates growing congestion. The network is forced to discard packets that it cannot deliver. The general name for this is Load shedding. The better technique for choosing which packets to discard can help to prevent congestion collapse.