A survey of transport protocols for wireless sensor networks <s> Congestion Control <s> Event-driven sensor networks operate under an idle or light load and then suddenly become active in response to a detected or monitored event. The transport of event impulses is likely to lead to varying degrees of congestion in the network depending on the sensing application. It is during these periods of event impulses that the likelihood of congestion is greatest and the information in transit of most importance to users. To address this challenge we propose an energy efficient congestion control scheme for sensor networks called CODA (COngestion Detection and Avoidance) that comprises three mechanisms: (i) receiver-based congestion detection; (ii) open-loop hop-by-hop backpressure; and (iii) closed-loop multi-source regulation. We present the detailed design, implementation, and evaluation of CODA using simulation and experimentation. We define two important performance metrics (i.e., energy tax and fidelity penalty) to evaluate the impact of CODA on the performance of sensing applications. We discuss the performance benefits and practical engineering challenges of implementing CODA in an experimental sensor network testbed based on Berkeley motes using CSMA. Simulation results indicate that CODA significantly improves the performance of data dissemination applications such as directed diffusion by mitigating hotspots, and reducing the energy tax with low fidelity penalty on sensing applications. We also demonstrate that CODA is capable of responding to a number of congestion scenarios that we believe will be prevalent as the deployment of these networks accelerates. <s> BIB001 </s> A survey of transport protocols for wireless sensor networks <s> Congestion Control <s> Wireless sensor networks (WSN) are event based systems that rely on the collective effort of several microsensor nodes. Reliable event detection at the sink is based on collective information provided by source nodes and not on any individual report. Hence, conventional end-to-end reliability definitions and solutions are inapplicable in the WSN regime and would only lead to a waste of scarce sensor resources. However, the absence of reliable transport altogether can seriously impair event detection. Hence, the WSN paradigm necessitates a collective phevent-to-sink reliability notion rather than the traditional end-to-end notion. To the best of our knowledge, reliable transport in WSN has not been studied from this perspective before.In order to address this need, a new reliable transport scheme for WSN, the event-to-sink reliable transport (ESRT) protocol, is presented in this paper. ESRT is a novel transport solution developed to achieve reliable event detection in WSN with minimum energy expenditure. It includes a congestion control component that serves the dual purpose of achieving reliability and conserving energy. Importantly, the algorithms of ESRT mainly run on the sink, with minimal functionality required at resource constrained sensor nodes. ESRT protocol operation is determined by the current network state based on the reliability achieved and congestion condition in the network. If the event-to-sink reliability is lower than required, ESRT adjusts the reporting frequency of source nodes aggressively in order to reach the target reliability level as soon as possible. If the reliability is higher than required, then ESRT reduces the reporting frequency conservatively in order to conserve energy while still maintaining reliability. This self-configuring nature of ESRT makes it robust to random, dynamic topology in WSN. Analytical performance evaluation and simulation results show that ESRT converges to the desired reliability with minimum energy expenditure, starting from any initial network state. <s> BIB002 </s> A survey of transport protocols for wireless sensor networks <s> Congestion Control <s> Network congestion occurs when offered traffic load exceeds available capacity at any point in a network. In wireless sensor networks, congestion causes overall channel quality to degrade and loss rates to rise, leads to buffer drops and increased delays (as in wired networks), and tends to be grossly unfair toward nodes whose data has to traverse a larger number of radio hops. Congestion control in wired networks is usually done using end-to-end and network-layer mechanisms acting in concert. However, this approach does not solve the problem in wireless networks because concurrent radio transmissions on different "links" interact with and affect each other, and because radio channel quality shows high variability over multiple time-scales. We examine three techniques that span different layers of the traditional protocol stack: hop-by-hop flow control, rate limiting source traffic when transit traffic is present, and a prioritized medium access control (MAC) protocol. We implement these techniques and present experimental results from a 55-node in-building wireless sensor network. We demonstrate that the combination of these techniques, Fusion, can improve network efficiency by a factor of three under realistic workloads. <s> BIB003 </s> A survey of transport protocols for wireless sensor networks <s> Congestion Control <s> In this paper we propose a distributed and scalable algorithm that eliminates congestion within a sensor network, and that ensures the fair delivery of packets to a central node, or base station. We say that fairness is achieved when equal number of packets are received from each node. Since in general we have many sensors transmitting data to the base station, we consider the scenario where we have many-to-one multihop routing, noting that it can easily be extended to unicast or many-to-many routing. Such routing structures often result in the sensors closer to the base station experiencing congestion, which inevitably cause packets originating from sensors further away from the base station to have a higher probability of being dropped. Our algorithm exists in the transport layer of the traditional network stack model, and is designed to work with any MAC protocol in the data-link layer with minor modifications. Our solution is scalable, each sensor mote requires state proportional to the number of its neighbors. Finally, we demonstrate the effectiveness of our solution with both simulations and actual implementation in UC Berkeley's sensor motes. <s> BIB004 </s> A survey of transport protocols for wireless sensor networks <s> Congestion Control <s> In wireless sensor networks (WSNs), congestion occurs, for example, when nodes are densely distributed, and/or the application produces high flow rate near the sink due to the convergent nature of upstream traffic. Congestion may cause packet loss, which in turn lowers throughput and wastes energy. Therefore congestion in WSNs needs to be controlled for high energy-efficiency, to prolong system lifetime, improve fairness, and improve quality of service (QoS) in terms of throughput (or link utilization) and packet loss ratio along with the packet delay. This paper proposes a node priority-based congestion control protocol (PCCP) for wireless sensor networks. In PCCP, node priority index is introduced to reflect the importance of each node. PCCP uses packet inter-arrival time along with packet service time to measure a parameter defined as congestion degree and furthermore imposes hop-by-hop control based on the measured congestion degree as well as the node priority index. PCCP controls congestion faster and more energy-efficiency than other known techniques. <s> BIB005
There are mainly two causes for congestion in WSNs. The first is due to the packet-arrival rate exceeding the packet-service rate. This is more likely to occur at sensor nodes close to the sink, as they usually carry more combined upstream traffic. The second cause is link-level performance aspects such as contention, interference, and bit-error rate. This type of congestion occurs on the link. Congestion in WSNs has a direct impact on energy efficiency and application QoS. For example, congestion can cause buffer overflow that may lead to larger queuing delays and higher packet loss. Not only can packet loss degrade reliability and application QoS, but it can also waste the limited node energy. Congestion can also degrade link utilization. Furthermore, link-level congestion results in transmission collisions if contention-based link protocols such as Carrier Sense Multiple Access (CSMA), are used to share radio resources. Transmission collision in turn increases packet-service time and wastes energy. Therefore, congestion in WSNs must be efficiently controlled, either to avoid it or mitigate it. Typically, there are three mechanisms that can deal with this problem: congestion detection, congestion notification, and rate adjustment. Congestion Detection -In TCP, congestion is observed or inferred at the end nodes based on a timeout or redundant Acknowledgments. In WSNs, proactive methods are preferred. A common mechanism would be to use queue length BIB003 BIB001 , packet service time BIB004 , or the ratio of packet service time over packet interarrival time at the intermediate nodes BIB005 . For WSNs using CSMA-like Medium Access Control (MAC) protocols, channel loading can be measured and used as an indication of congestion, and measurement is a means for determining congestion as in BIB001 . Congestion Notification -After detecting congestion, transport protocols need to propagate congestion information from the congested node to the upstream sensor nodes or the source nodes that contribute to congestion. The information can be transmitted, for example, using a single binary bit (called congestion notification (CN) bit in BIB002 BIB003 BIB001 ), or more information such as allowable data rate, as in BIB004 , or the congestion degree, as in BIB005 . The approach to disseminating congestion information can be categorized into explicit congestion notification and implicit congestion notification. The explicit congestion notification uses special control messages to notify the involved sensor nodes of congestion such as suppression messages as in BIB001 . On the other hand, the implicit congestion notification piggybacks congestion information in normal data packets. By receiving or overhearing such packets, sensor nodes can access the piggybacked information. For example, in BIB002 the sensor nodes that detect congestion will set a CN bit in the header of data packets to be forwarded. After receiving packets with CN bit set, the sink learns the network status, for example, congestion or no congestion. Rate Adjustment -Upon receiving a congestion indication, a sensor node can adjust its transmission rate. If a single CN bit is used, additive increase multiplicative decrease (AIMD) schemes or its variants are usually applied, as in BIB002 BIB001 . On the other hand, if additional congestion information is available, accurate rate adjustment can be implemented, as in BIB004 BIB005 .