Congestion Control Techniques in WSNs : A Review

Congestion control has a great importance in wireless sensor network (WSN), where efficient application of congestion control mechanisms can prolong the network lifetime. Thus, proper examination is needed to improve more refine way to address the congestion occurrence and resolution. While designing congestion control techniques, the maximum output can be achieved by efficient utilization of required resources within WSN. From last few years several approaches have been brought in, that consist of routing protocols which provide support with congestion control, congestion prevention, and reliable data routing. In old schemes the topology reset and extent traffic drop take place because sink node executes the congestion avoidance. Therefore, node level congestion avoidance, detection, congestion preventing, and resolution mechanisms have been proposed during past few years. Our paper provides a brief overview and performance comparison of centralized and distributed congestion control algorithms in


I. INTRODUCTION
Wireless sensor network (WSN) consists of very small wireless devices deployed in a huge geographical area to examine the surrounding environment.Through, multi-hop routing protocols the oversee information is transmitted from sensor to sensor towards sink.Information collection and examination takes place at sink node.The sensor nodes have limited power, energy, and communication resources [1] [2] [3].Different routing schemes are used to efficiently handle the WSN's resources in order to achieve the better performance.Congestion control is the prominent area for the researchers as network traffic is increasing rapidly with frequent changes in buffering mechanisms [5].
The main task of WSNs is to provide transport and network protocols functionalities for reliable data transfer over the unreliable channels and nodes and also deals with fault tolerance [7].Usually for network level, the cause of node failure is due to the changes in path and topology that must be treated properly to reduce the relative packet loss and energy exhaustion [8].At transport level, congestion should be managed to prevent the data loss by fair distribution of the bandwidth for all the network nodes especially for the distant nodes [8].
Congestion control helps in avoiding extent traffic drop that is why congestion control is of demanding concern.Congestion control comprises of three phases.The first phase is congestion detection in which congestion is detected at sensor nodes while in notification phase; a problematic sensor node has been notified of congestion after the detection of congestion.Lastly, in congestion mitigation phase; the congestion is checked and suitable data rate is applied.There are three stages for congestion control; congestion detection, prevention, and congestion control.While designing WSNs, the main focus should be on congestion control to carry out the maximum life of network by efficient use of the resources [1].
Current congestion control approaches have some difficulties, such as the onward traffic management does not consider the traffic estimation on the substitute paths [4].From source sensor node to sink, the priority is set on hop count instead of actual packet delay [4][5][6].Moreover, the distribution of traffic loads at congested and substitute paths are not handled properly.
This survey paper provides a brief overview on congestion control mechanisms by graphically illustrating the working of some of the congestion control algorithms.Moreover, we have provided the performance comparison by examining the parameters mentioned in each of the congestion control algorithm discussed in this survey paper.Moreover, this paper also highlights the shortcomings of the existing congestion control mechanisms.

II. LITERATURE REVIEW
Congestion control algorithms for WSN are extensively discussed in recent past years [8] [9].In WSNs, congestion occurs at two levels i-e node and link level congestion.Fig. 1 illustrates the congestion levels in WSN.
Congestion occurs when the amount of received data at particular node is higher than its transmitted data which subsequently causes the drop of packets.Generally, congestion occurs at the nodes that are very close to the sink node.
Node-level congestion badly affects the performance of the affected node in WSN.It causes the loss of energy due to the higher packet loss ratio and consequently disconnects the affected node from the network causing certain route unavailability.Energy depletion and poor routing have negative impact on the performance of the network and badly reduce the overall reliability and lifespan of the network.www.ijacsa.thesai.orgCollision, competition and bit error are the reasons for link level congestion occurrence.In Fig. 1 node level congestion occurs at node A. A suitable congestion control scheme can efficiently manage the transmission of data in order to prevent from loss of energy or it can change the route of surplus packets.It will increase the sink node output and frequently assists the WSN application by efficiently monitoring the environment.The minimum packet loss also increases the reliability of the WSN application.Therefore, preventing routing holes, frequently and on time data delivery will increase the life span of the network.
Link level congestion occurs at node B in Fig. 1 where node B receives few packets despite its neighbor sends with full data rate.The reliability of the WSN is badly affected when sink receives fewer packets.In such kind of situation MAC layer should be managed by a congestion control algorithm that helps coordinates to access the medium and prevents form collision.
Mainly, congestion control algorithms are distributed in three types namely congestion mitigation, congestion detection, and reliable data transmission algorithms as shown in Fig. 2. Congestion mitigation algorithms are reactive in nature which react and control the congestion whenever network suffers from congestion.Mostly, these algorithms are working with MAC and network layer operations, and in few circumstances transport layer operations are performed by them.
Congestion detection algorithms are employed to prevent the network from congestion occurrence.MAC and network layer operations are usually handled by such kind of algorithms.
Reliable data transmission algorithms are used to control the congestion in a network in such a way that these algorithms try to get back all the lost information or some part of it.Usually, these algorithms are used at the time when whole information is necessary for application.The transport layer approaches are involved in these algorithms.

A. RCRT
RCRT is a transport protocol that determines and allocates the data rate to resolve the congestion [7].The sink node performs congestion detection, rate control, and allocation.This scheme has some limitations like, the slow convergence rate and fails to figure out the flow constrained in congestion area.The operational scheme of RCRT is illustrated in Fig. 3.

B. I2MR
I2MR is a routing protocol aided with the congestion control mechanism [8].To remove congestion, the I2MR protocol keeps multiple substitute paths for routing information.Experimental weighted moving averages are used to detect the congestion by spotting source node's single buffer.The protocol informs the source node to decrease the transmission rate for controlling congestion.The transmission rate is decreased by the source node through redirecting the traffic to the substitute routes.The I2MR protocol has some restrictions like a massive data loss is unavoidable if the substitute's routes are not available.The rate balancing comprises on one-fourth, one-sixth or one-eighth of the data link rate instead of comprising the predicted traffic that consequence the faulty channel.

C. TADR
The TADR protocol illustrates a hybrid scalar potential area that consists of queue length and depth area [8].Initially TADR routes the packets to the sink from the shortest paths.Later on the functionality of traffic awareness is developed in it.If congestion occurs, TADR sends the packets to the substitute route that comprises of less-loaded or idle nodes.To prevent hot spots, a bypassing hot-spot rule is brought in.The main drawback of TADR is to find out the time variant potential area that leads to the traffic diversion [8].The operations of TADR algorithm are shown in Fig. 4.

D. Buffer-Based Congestion Avoidance Scheme
Buffer-based congestion avoidance scheme is checked against several MAC protocols, like TDMA with unchanged scheduling and CSMA with implicit ACKs, as illustrated in Fig. 5 [10].A 1/k buffer solution addresses the hidden terminal problem.In this scheme the fairness for load balancing and buffer access on various routes is assured.The scheme is illustrated in Fig. 5.

E. DAIPaS
The DAIPaS protocol detects the congestion by including the channel interference, buffer occupancy and residual energy of a single node [11].The nature of selection of shortest routes for traffic is dynamic that prevent it from the congested nodes.In setup phase, DAIPaS broadcasts a HELLO beacon in the vicinity of the network by setting the head nodes level ID to 0. When nodes receive the HELLO message, they further broadcast the message by increasing the ID value by 1.This method continues as far as a unique level ID is assigned to each node in the network.Each node maintains an ID to discover substitute paths or manipulate shortest path towards the sink.The shortest path is determined by examining the flow from the highest to the lowest value.The comparative analysis between incoming and transmission flow along with buffer occupancy determines the congestion.The packet sequence number in the receiving node's header is set to FALSE when DAlPaS goes into the soft stage and the packet is transmitted to the further node.The sending selects the substitute paths on receiving the value and will carry on sending the data on it.The DAlPaS protocol sets the minimum threshold for buffer occupancy and it moves into the hard phase if the buffer size surpasses the minimum threshold or the inward data flow exceed the transmission rate.Consequently, DAIPaS redirects the packets on new route.The DAlPaS rearranges the topology by eliminating the node from the current route.

F. Fusion
Fusion is a method for checking the congestion on queue length [12].Additionally, to handle the congestion, fusion relies on hop-by-hop flow control, prioritized MAC approaches and rate control.Insufficient buffer spaces occur whenever packets are dropped downstream and packet transmission is stopped.During the comparison with other non-congested sensor nodes, it is noticed that this priority is managed by congested sensor nodes through reducing random back-off timer.Lack of balance in data transfer happen towards the nodes that are situated far from the sink node.To prevent this problem, the rate limitation metrics of traffic are accepted.A prioritized CSMA-based MAC manages congestion in congested sensors by reducing random back-off timer.Accordingly, fusion optimizes fairness and maintains effective output.

G. WRCP (Wireless Rate Control Protocol)
WRCP (Wireless Rate Control Protocol) is a Wireless Sensor Network protocol that is used to improve convergence time of rate control [13].It is designed by using a receiver capacity model that is a novel interference model.This model enables each receiver to find out the accurate available capacity which is used by WRCP to get a fair rate allocation.WRCP shares this capacity information in between competing flows in a neighborhood.By using explicit capacity information, WRCP shows fast convergence time that result in small end-to-end delays.

H. TRCCIT (Tunable Reliability with Congestion Control for Information Transport)
TRCCIT protocol ensures the appropriate reliability level of the hybrid acknowledgement (HACK) approach [14].The forwarder overhears the retransmission of sender's packets by setting a hop-by-hop control.
In the situation when the required reliability level is beforehand achieved, the receiver depresses the received packet and sends a simple acknowledgment to the sender to prevent from packet retransmission after the completion of timeout.At the time of congestion detection the TRCCIT addresses to control congestion through multipath forwarding.But utilization of multiple paths forwarding is not continually possible and accordingly TRCCIT congestion control approach is not sufficient.

I. DPCC (Decentralized Predictive Congestion Control)
DPCC is a WSN protocol that comprises an adaptive flow and back-off interval selection approaches that get the job through distributed power control (DPC) and energy efficiency [15].Initially, DPCC detects the congestion with the help of queue utilization and the embedded channel quality.The adaptive back off interval selection approach applies a rate whereas the adoptive flow control approach selects that suitable rate.Fig. 6 shows the rate selection process.To assure the weight fairness during congestion, the associated weight of www.ijacsa.thesai.org each packet is updated by an optional scheduling approach.Simulation outcome shows that the DPCC increases performance and decreases the congestion through congestion detection and congestion prevention process.

J. GMCAR (Grid-based Multipath with Congestion
Avoidance Routing) GMCAR protocol is an effective QoS routing protocol used in gridded sensor networks [16].It uses the concept of splitting the wireless sensor network region into grids.In each grid, one master node is selected from associated sensor nodes.All master nodes from each grid collaborate with each other and also responsible to process and route the data of associated sensor nodes.In the routing table of each master node, multiple diagonal paths as routing entries are stored that link master node to the sink.In case of congestion occurrence, a congestion control approach is suggested to reduce the congested areas.When compared to other QoS protocols, the outcome of simulation shows that GMCAR protocol has the potential to achieve the delay reduced to 24.7%, output increased by 8.5% and 19.5% energy saving.Moreover, it shows superiority in accomplishing better available storage usage.

K. TASA (Traffic Aware Scheduling Algorithm)
TASA (Traffic Aware Scheduling Algorithm) [17] is based on TSCH behavior and it is a centralized scheduling approach.The TASA build a tree-based schedule at sink that has nodes traffic load information.While using the edge of frequency diversity and resources, TASA provides a better output.In graph theory methods, TASA uses matching and coloring for accomplishing the specified objectives.Fig. 7 shows the working of TASA algorithm.

L. OTF (On-the-Fly Scheduling)
OTF (On-the-Fly Scheduling) presents a distributed schedule approach.This approach uses slots to prevent interferences and ensures reliability [18].As per the network need, OTF adjusts the slot number of the nodes with respect to the traffic load.For schedule adaptation, the resources that are added or removed are sent to the sub-layer for schedule adoption.

IV. PERFORMANCE COMPARISON
The performance comparison of aforementioned congestion control schemes is based on their operational strategy, congestion detection criteria, congestion notification, congestion control, priority criteria, and control patterns.The comparison is shown in Table I.