A survey of transport protocols for wireless sensor networks <s> Protocols for Reliability <s> We propose PSFQ (Pump Slowly, Fetch Quickly), a reliable transport protocol suitable for a new class of reliable data applications emerging in wireless sensor networks. For example, currently sensor networks tend to be application specific and are typically hard-wired to perform a specific task efficiently at low cost; however, there is an emerging need to be able to re-task or reprogram groups of sensors in wireless sensor networks on the fly (e.g., during disaster recovery). Due to the application-specific nature of sensor networks, it is difficult to design a single monolithic transport system that can be optimized for every application. PSFQ takes a different approach and supports a simple, robust and scalable transport that is customizable to meet the needs of different reliable data applications. To our knowledge there has been little or no work on the design of an efficient reliable transport protocol for wireless sensor networks, even though some techniques found in IP networks have some relevance to the solution space, such as, the body of work on reliable multicast. We present the design and implementation of PSFQ, and evaluate the protocol using the ns-2 simulator and an experimental wireless sensor testbed based on Berkeley motes. We show through simulation and experimentation that PSFQ can out perform existing related techniques (e.g., an idealized SRM scheme) and is highly responsive to the various error conditions experienced in wireless sensor networks, respectively. <s> BIB001 </s> A survey of transport protocols for wireless sensor networks <s> Protocols for Reliability <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> Protocols for Reliability <s> Reliable data transport in wireless sensor networks is a multifaceted problem influenced by the physical, MAC, network, and transport layers. Because sensor networks are subject to strict resource constraints and are deployed by single organizations, they encourage revisiting traditional layering and are less bound by standardized placement of services such as reliability. This paper presents analysis and experiments resulting in specific recommendations for implementing reliable data transport in sensor nets. To explore reliability at the transport layer, we present RMST (Reliable Multi-Segment Transport), a new transport layer for Directed Diffusion. RMST provides guaranteed delivery and fragmentation/reassembly for applications that require them. RMST is a selective NACK-based protocol that can be configured for in-network caching and repair. <s> BIB003 </s> A survey of transport protocols for wireless sensor networks <s> Protocols for Reliability <s> There exist several applications of sensor networks wherere liability of data delivery can be critical. While the redundancy inherent in a sensor network might increase the degree of reliability, it by no means can provide any guaranteed reliability semantics. In this paper, we consider the problem of reliable sink-to-sensors data delivery. We first identify several fundamental challenges that need to be addressed, and are unique to a wireless sensor network environment. We then propose a scalable framework for reliable downstream data delivery that is specifically designed to both address and leverage the characteristics of a wireless sensor network, while achieving the reliability in an efficient manner. Through ns2 based simulations, we evaluate the proposed framework. <s> BIB004 </s> A survey of transport protocols for wireless sensor networks <s> Protocols for Reliability <s> We consider the issue of designing a generic transport layer protocol for energy-constrained sensor networks. We present the requirements for such a transport protocol and propose sensor transmission control protocol (STCP). STCP is a generic, scalable and reliable transport layer protocol where a majority of the functionalities are implemented at the base station. STCP offers controlled variable reliability, congestion detection and avoidance, and supports multiple applications in the same network. We present the design and implementation of STCP and evaluate the protocol with different scenarios and network characteristics. <s> BIB005
As shown in Table 2 , some transport protocols BIB005 BIB002 BIB003  examine upstream reliability; others, such as BIB004 BIB001 , investigate downstream reliability. In the upstream direction, ESRT discusses fidelity of the event stream and only guarantees event reliability through endto-end source rate adjustment. In contrast, Reliable MultiSegment Transport (RMST) BIB003 and Reliable Bursty Convergecast (RBC)  provide packet reliability through hop-by-hop loss recovery. The end-to-end source rate adjustment in ESRT follows two basic rules: • If the current reliability perceived at the sink exceeds the desired value, ESRT will multiplicatively reduce the source rate. • Otherwise, the source rate is additively increased if the required reliability is not met, unless there is congestion in the network. RMST jointly uses selective NACK and timer-driven mechanism for loss detection and notification, while RBC uses a windowless block Acknowledgment with IACK. RBC proposes intranode and internode packet scheduling in order to avoid retransmission-based congestion. In the downstream direction, traffic is multicast one-tomany. The explicit loss detection and notification meets the same problem of control message implosion as that in conventional reliable IP multicast. However, the existing approaches for reliable IP multicast do not consider several distinctive features of WSNs, especially resource constraints and application diversity. Therefore, these are not feasible for WSNs. Both GARUDA and PSFQ use NACK-based loss detection and notification, and local retransmission for loss recovery, but they design different mechanisms to provide scalability. GARUDA constructs a two-tier topology and proposes twostage loss recovery. The two-tier topology consists of two layers, respectively, for core nodes and noncore nodes. The hop-count of each core node from the sink is a multiple of three. Then the first-stage loss recovery is used to guarantee that all core nodes successfully receive all packets from the sink, while the second stage is for noncore nodes to recover lost data from the core nodes. GARUDA further studies destination-related reliability. In contrast, PSFQ consists of three "operations": pump, fetch, and report operations. In pump operation, the sink slowly and periodically broadcasts packets to its neighbors until all data fragments have been sent out. In fetch operation, a sensor node goes into fetch mode once a sequence number gap in a file fragment is detected. It also sends a NACK in reverse path to recover the missing fragment. PSFQ does not propagate NACK messages in order to avoid message implosion. Specifically, the received NACK at an intermediate node will not be relayed unless the number of NACKs that this node has received exceeds a predefined threshold and the lost segments requested by this NACK are unavailable at this node. Finally, in report operation, the sink provides the sensor nodes' feedback information on data delivery status through a simple and scalable hop-by-hop reporting mechanism. PSFQ can be configured to use all the bandwidth and thus overcome the delay caused by the slow pump.