## 3 Problem Statement
### Strategies for Congestion Control in Wireless Sensor Networks  
In WSNs, congestion control is essential to ensure efficient data transmission, preserve energy resources, and maintain QoS standards, including low latency, high throughput, and reliable packet delivery. Congestion in WSNs arises when data transmission demand exceeds the capacity of network nodes or links, leading to delays, packet loss, and increased energy consumption [29]. To address these challenges, congestion control strategies generally encompass three main stages: congestion detection, congestion notification, and congestion mitigation. Each stage has specific metrics and techniques to prevent bottlenecks, optimize network resource utilization, and ensure consistent network performance [30]. The first step, congestion detection, is crucial for identifying where congestion is occurring within the network. In WSNs, congestion can be detected by monitoring real-time metrics such as buffer occupancy, data transmission rate, and link utilization. Buffer occupancy is often used as an indicator, as high buffer levels signal potential congestion due to accumulated packets waiting to be processed or transmitted. Data transmission rate provides insight into traffic intensity; a sustained high transmission rate can signify network congestion [31]. Another valuable metric is the \(CF\), defined as the ratio of data flow to link capacity on each link \((i,j)\) expressed mathematically as:  
\[CF_{ij}=\frac{Data\ flow_{ij}}{Link\ capacity_{ij}} \tag{1}\]  
Figure 1: Congestion control (**a**) without loss and (**b**) with loss. A _CF_ approaching or exceeding a threshold value signals a high load on the link, prompting the network to initiate congestion control measures [32]. These metrics allow nodes to detect and localize congestion, enabling timely responses before network performance is significantly impacted. Once congestion is detected, the network must communicate this information to surrounding nodes or to the network's central management system, initiating the second stage: congestion notification. Congestion notification can be implemented through explicit, implicit, or piggybacking techniques. In explicit notification, the congested node sends a control message to neighboring nodes or the BS, directly signaling congestion and prompting rerouting of traffic away from congested areas [33]. Implicit notification, in contrast, relies on indicators such as packet delays or packet loss rates, allowing nodes to infer congestion without additional control packets, which reduces overhead. Piggybacking information embeds congestion data within regular data packets, offering another way to minimize additional control messaging while conveying essential congestion status information [8]. Congestion mitigation is the last step, where the network automatically changes its routes and data-sending methods to reduce congestion [34]. Key mitigation strategies include traffic rerouting, rate control, load balancing, and priority-based packet scheduling. Traffic rerouting involves adaptive path selection, diverting traffic to less congested routes to prevent data buildup. This is often achieved using a probabilistic route selection formula, which incorporates factors such as pheromone levels, link bandwidth, and signal quality to determine optimal paths for data transmission [35]. Rate control algorithms, meanwhile, adjust nodes' data generation or transmission rates, aligning traffic flow with network capacity. Load balancing further distributes traffic across multiple paths, minimizing the risk of bottlenecks and enhancing the network's resilience to fluctuating demands [36]. In cases where congestion cannot be avoided, priority-based scheduling ensures that critical data packets are transmitted first, maintaining QoS for essential services. Effective congestion control improves QoS by reducing latency, packet loss, and energy expenditure and extends the network's operational life.