Fuzzy Based Congestion Control for Backpressure Routing Algorithm in Wireless Sensor Networks

The main aim of this study is to detect congestion and provide efficient route recovery mechanism using back pressure technique. In this study, we propose a fuzzy based congestion control and backpressure routing technique in wireless sensor networks. In the Fuzzy based congestion control technique, Fuzzy logic decision model is used to estimate the congestion status of each node based on the parameters number of contenders, buffer occupancy percentage of parent nodes and traffic load. In cluster based backpressure routing, clusters are formed and cluster heads are elected based on the congestion status of the nodes. By simulation results, we show that the proposed algorithm reduces the overhead and increases the routing efficiency.


INTRODUCTION Wireless Sensor Network (WSN):
A wireless sensor network comprises autonomous, tiny and cheap wireless sensor nodes in a physical phenomenon and deployed remotely like high mountain area and satellite in the outer space.The embedded sensors continuously monitor the physical or environmental process like temperature, sound, vibration, pressure, motion, or pollutants etc and send this information in a multi-hop fashion to a special node called the sink (Fig. 1).WSN characteristics are centralized data collection, multi-hop data transmission and many-to one traffic patterns.WSN framework has a various applications of deploying sensor networks like environmental monitoring, battlefield surveillance, health and industrial monitoring control, habitat monitoring, structural health monitoring, image sensing and physical game etc (Gadze et al., 2013;Yang et al., 2013).
The nodes closer to the base stations require to send more data packets resulting in severe traffic burden.This causes severe packet collisions, network congestion and packet loss.In most severe cases it even results in congestion collapse.The physical parameters and the information of the interactions, along with variable wireless network conditions, may lead to unpredictable traffic load variations and the link capacity fluctuations (Gadze et al., 2013;Yang et al., 2013).Congestion control in WSN: Congestion, a major issue in wireless sensor networks results in packet losses and increased transmission latency which affects energy efficiency and application QoS and hence must be efficiently controlled.Congestion also causes indiscriminate data dropping resulting in increased energy consumption to route packets that will be dropped downstream as links become saturated.Congestion occurrence in sensor networks is of two types: Node level congestion and Link level congestion.The former occurs due to buffer overflow in the node which leads to packet loss and increased queuing delay.Packet loss results in retransmission and hence consumes additional energy.Link-level congestion is related to the wireless channels shared by several nodes using protocols, such as CSMA/CD (carrier sense multiple access with collision detection).When multiple active sensor nodes try to seize the channel simultaneously, collisions could occur.Link level congestion increases packet service time and decreases both link utilization and overall throughput and wastes energy at the sensor nodes.Both node level and link level congestions have direct impact on energy efficiency and QoS (Agarwal, 2013).
Congestion control is a hard task for wireless networks since identifying congestion is not as simple as in wired networks.In general, congestion control protocols for WSNs consider specific parameters like local buffer occupancy, packet arrival rate and packet service time.However, determining the level of congestion based on a specific parameter may give incorrect results (Sonmez et al., 2014).

Back pressure routing in WSN:
The Backpressure Routing algorithm will not compute routes for packets initially.But on reception of requests of data transfer from node, the algorithm verifies the current congestion value and then computes the routes accordingly (Ravi et al., 2012).
The back-pressure algorithm, a famous throughputoptimal algorithm whose implementation needs each node to maintain a separate queue for each commodity in the network and only one queue is served at a time.This leads to bad delay performance even though the traffic load is not close to network capacity.In addition, maintaining queuing data structure each node is complex due to the higher number of commodities (Agarwal, 2013).The approach generates queue backlog gradients that decrease towards the sink, where these queue backlogs encode certain utility and penalty information.With information about queue backlogs and link states, nodes can make source rate, packet routing and forwarding decisions without the notion of end-to-end routes (Moeller et al., 2011).
Maintaining up-to-date information about neighbor backpressure is critical to ensure good routing performance (Nori et al., 2014).
There are several issues in implementing Back pressure mechanisms practically at the routing layer: • Without careful defining of the link weights, backpressure routing is affected due to either excessively high hop-counts or, at the other extreme, over emphasizes low hop counts, leading to wasted transmissions and link-layer packet losses.• Backpressure routing can suffer from inordinately large delays due to large queue sizes they should be maintained to provide a gradient for data flow.• Queues grow in size with distance from the sink which forms a issue in large-scale deployments due to maximum queue size limitations in resourceconstrained devices (Moeller et al., 2011).Problem identification and objectives: Nori et al. (2014), congestion detection in WSN was provided by using fuzzy logic system by considering number of contenders, buffer occupancy percentage of parent nodes and traffic load as the inputs.The output of the fuzzy logic system denotes the congestion status which is obtained from the fuzzy rules and then defuzzified later.However it does not involve route recovery mechanism and has no support for back pressure technique to inform sensor nodes about congestion.
Hence the main objective of this study is to design efficient route recovery meachnism using back pressure technique such that congestion is mitigated immediately.Majidi and Mirvaziri (2014) presented a congestion control method by using backpressure routings and service differentiation in WMSNs.This algorithm will not pre calculate routes and next step is selected dynamically.Each node monitors its own queue backlog and its neighbor's queue backlog and varies its own rate and chooses routes according to queue backlog of its neighbors.Dynamic prioritization was deployed for service differentiation if there are two or more data with same condition in backpressure routing.However packet delivery ratio was decreased.Venkataraman et al. (2009) applied a Vector Auto Regression (VAR) based trust model over the Backpressure Collection Protocol (BCP), a collection mechanism based on dynamic backpressure routing in Wireless Sensor Networks (WSN).Then an auto regression based scheme was deployed to embed trust into the link weights, making it more likely for trusted links to be scheduled.However throughput is decreased.Sonmez et al. (2014) proposed a fuzzy logic-based congestion estimation approach to detect congestion efficiently.Three different congestion indicators were joined to get a more accurate measurement of the congestion.A novel congestion mitigation technique was deployed to perform quality adaptation on-the-fly and provided a considerable frame delivery and latency performance gain.A protocol was deployed utilizing the cross-layer functionalities and utilized cross-layer information exchange among the application, transport, MAC and routing layers.However average frame loss ratio was increased.Dvir and Buttyan (2011) presented and implemented a recovery algorithm according to a weighted backpressure function that bypasses the jamming area by spreading the congestion over a large subset of the sensor nodes, when no tree reconstruction and mapping of the jamming area are needed.Nori et al. (2014) designed a scheme for integrating backpressure queues into the IP stack.A new queue-based adaptive beaconing mechanism was utilized to reduce network bandwidth and CPU load on the nodes.NULL packets, a special control packet, were adapted to integrate with the IP architecture.Queue information was spread across the network in standard-compliant ways.The protocol to efficiently co-ordinate data and control information across software layers within the node was implemented finally.Moeller et al. (2011) presented the Backpressure Collection Protocol (BCP) for sensor networks, been the first implementation of dynamic backpressure routing in wireless networks.The traditional FIFO queue service in backpressure routing was replaced with LIFO queues to reduce the average end-to-end packet delays for delivered packets drastically.In addition, backpressure scalability was improved by introducing a new concept of floating queues into the backpressure framework.Sridharan et al. (2008) evaluated a simple backpressure scheduling policy enable nodes to transmit much distance due to a positive queue differential (irrespective of its size) gives performance comparable to more sophisticated heuristics.The results show sensor networks do not require modifications to the MAC to implement backpressure based protocols.A comparative evaluation of backpressure protocols against protocols optimized for wireless networks was done to explain no single parameter value guaranteeing optimal performance was present to backpressure based rate control protocols for a given topology.

PROBLEM IDENTIFICATION AND SOLUTION
Overview technique where the cluster head acts as the gateway node for data transmission.The weighed back pressure function is calculated for each neighbor and chooses the neighbor with high value.The weighed back pressure function consists of the congestion status obtained from the output of Fuzzy logic, difference between nodal levels and its candidate neighbor, the difference between the node and its candidate neighbor's queues and the routing status.
Figure 2 shows the block diagram of the proposed Fuzzy based congestion control and Backpressure routing (FBCCBR) algorithm.

Fuzzy based congestion detection:
We detect the congestion status of the node using fuzzy logic technique.The parameters number of contenders, buffer occupancy percentage of parent nodes and traffic load are taken as input for the fuzzy member ship functions.These inputs are fuzzified and processed by interference system to provide congestion status of the node as output which is then de-fuzzified.The outputs are aggregated and form new fuzzy sets.
The steps that determine the fuzzy rule based interference are as follows: • Fuzzification: This involves obtaining the crisp inputs from the selected input variables and The fuzzy inference system is illustrated using Fig. 3.
Fuzzification: This involves fuzzification of input variables such as number of contenders (C), buffer occupancy percentage (B) and traffic load (T) and these Figure 4 to 7 shows the membership function for the input and output variables.Due to the computational efficiency and uncomplicated formulas, the triangulation functions are utilized which are widely utilized in real-time applications.Also a positive impact is offered by this design of membership function.
In table C, B and T are given as inputs and the output represents the Congestion Status (CS).The fuzzy sets are defined with the combinations presented in Table 1.
Table 1 demonstrates the designed fuzzy inference system.This illustrates the function of the inference engine and method by which the outputs of each rule are combined to generate the fuzzy decision.This reveals that the selected node is subject to congestion.
Defuzzification: Defuzzification is used for extracting a crisp value from a fuzzy set as a representation value.We consider the centroid of area strategy for defuzzification.
where, η agg (F) = Aggregated output of membership function

Cluster based back pressure routing algorithm:
When the sensor nodes are deployed in the network, based on the fuzzy logic, the nodes with minimum congestion status is chosen as Cluster Head (CH).CH then acts as the gateway nodes for routing the data and cluster members' acts as interior nodes.
Let C(i) be the cluster that includes N i N i can either be the gateway node or interior node.N i is said to be gateway of C (i), if there exists a node N j such that N j ∉C (i) and (N i , N j ) ∈V. V represents the network link.N i is said to be interior node of C (i), if N i is not a gateway node.Let X i be the set of all gateway and interior nodes in the cluster that includes N i except N j itself i.e., X i = G i U I i \ {N i } Let S and D be the source and destination node respectively.
, be the rate at which a flow [S, D] generates packets at time t.Let R tx [t] be the transmission rate over link (N i , N j ) at time t.The steps involved in cluster based back-pressure routing algorithm are as follows: where, g* = arg ( ) Note: g* = least congested node, where g* > 0 and g* = 0 indicates that best node to route the data packets from S to D without using gateway node.• The gateway g maintains a real queue and regulated queue for each D in the interior of C(g).• At time t, the rate at which the packets can be transferred from real queue to the regulated queue is estimated using the following Eq.( 3): where σ> 0 is a constant which is selected to be small value.
• At time t, the network initially estimates the Back-Pressure Scheduler value {W ij } based on the following parameters.• Congestion status of the node (CS) [estimated in section 3.2] • Difference between nodal levels and its candidate neighbor (α ij ) • Difference between the node and its candidate neighbor's queues (β ij ) The weighed back pressure function W ij is calculated for each neighbor and chooses the neighbor with high value.Based on the estimated W ij value, N j transmits the packets in queue to N i over the link at rate W ij .
The cluster formation and CH selection is illustrated in Fig. 8.

Simulation model and parameters:
The Network Simulator (http:///www.isi.edu/nsnam/ns)(NS-2) is used to simulate the proposed architecture.In the simulation, 50 mobile nodes move in a 1000×1000 m region for 20 sec of simulation time.All nodes have the same transmission range of 250 m.The simulated traffic is Constant Bit Rate (CBR).
The simulation settings and parameters are summarized in Table 2.

Performance metrics:
The proposed Fuzzy Based Congestion Control and Backpressure Routing (FBCCBR) is compared with the FBCC technique (Sonmez et al., 2014).The performance is evaluated mainly, according to the following metrics:  Based on flows: For 50 nodes, the number of flows is varied from 1 to 5 keeping the rate as 50Kb.Figure 9 to 12 show the results of FBCCBR and FBCC in terms of delay, delivery ratio, packet drop and residual energy by varying the flows from 1 to 5 for 50 nodes.When comparing the performance of the two works, we infer that FBCCBR outperforms FBCC by 20% in terms of delay, 35% in terms of delivery ratio, 52% in terms of drop and 6% in terms of residual energy.
Based on rate: For 50 nodes, the rate is varied from 50Kb to 150Kb keeping the number of flows as 5.  Based on flows: For 100 nodes, the number of flows is varied from 1 to 5 keeping the rate as 50Kb.
Figure 17 to 20 show the results of FBCCBR and FBCC in terms of delay, delivery ratio, packet drop and  Based on rate: For 100 nodes, the rate is varied from 50Kb to 150Kb keeping the number of flows as 5.
Figure 21 to 24 show the results of FBCCBR and FBCC in terms of delay, delivery ratio, packet drop and residual energy by varying the rate from 50Kb to 150Kb for 100 nodes.When comparing the performance of the two works, we infer that FBCCBR outperforms FBCC by 7% in terms of delay, 39% in terms of delivery ratio, 29% in terms of drop and 4% in terms of residual energy.

CONCLUSION
In this study, we have proposed a fuzzy based congestion control and backpressure routing technique in wireless sensor networks.Initially, the clusters are formed and cluster heads are elected as per the congestion status of the node.The congestion status of the node is estimated using fuzzy logic technique based on the parameters number of contenders, buffer occupancy percentage of parent nodes and traffic load.When source wants to route data to the destination node, it uses the cluster based back pressure routing technique where the cluster head acts as the gateway node for data transmission.By simulation results, we show that the proposed technique reduces the overhead and increases the routing efficiency.

:
Fig. 2: Block diagram of FBCCBR estimating the degree to which the inputs belong to each of the suitable fuzzy set.o Number of contenders: It is estimated using the RTS or CTS packets which are generated by the neighbor nodes.If there are too many contenders, collision probability is higher.o Buffer occupancy percentage: If the buffer occupancy percentage of the node is high, the congestion probability will also be high.o Traffic load: It is defined as the ratio of the incoming packets to the outgoing packets • Rule evaluation: The fuzzified inputs are taken and applied to the antecedents of the fuzzy rules.It is then applied to the consequent membership function.• Aggregation of the rule outputs: This involves merging of the output of all rules.• Defuzzification: The merged output of the aggregate output fuzzy set is the input for the defuzzification process and a single crisp number is obtained as output.

Fig. 4 :
Fig. 4: Membership function of number of contenders For example:Let us consider Rule 26.

Fig
Fig. 8: Cluster formation and CH selection • After receiving {K ] [ , t D g S }

Fig. 24 :
Fig.24: Rate vs residual energy residual energy by varying the flows from 1 to 5 for 100 nodes.When comparing the performance of the two works, we infer that FBCCBR outperforms FBCC by 18% in terms of delay, 30% in terms of delivery ratio, 54% in terms of drop and 2% in terms of residual energy.

Table 1 :
Fuzzy rule base

Table 2 :
Simulation settings and parameters