Many applications of wireless sensor networks require connectivity to external networks to let
monitoring and controlling entities communicate with the sensors. By using the TCP/IP
protocols inside the sensor network, external connectivity can be achieved anywhere in the
sensor network. In such IP-based sensor networks, TCP can be used for remote management
and reprogramming of sensor nodes. However, the high bit error rates in multi-hop sensor
networks lead to energy-inefficiencies that reduce the lifetime of the sensor network. This
paper introduces and compares two approaches to support energy-efficient operation of TCP
in sensor networks: Distributed TCP Caching (DTC) and TCP Support for Sensor networks
(TSS). Both concepts allow intermediate sensor nodes to cache TCP segments and to perform
local retransmissions in case of errors. This allows reducing the total number of packet
transmissions in the sensor network when transferring data to or from a sensor node. DTC
caches and immediately forwards TCP data segments, whereas TSS does not forward a
cached segment until it knows that the previous segment has been successfully received by
the next hop node. We show by simulation that both approaches significantly reduce the
number of TCP segment and acknowledgement transmissions. Their performance differs
slightly depending on the error rate. Both approaches have also slightly different needs in
buffer requirements and TCP options to be supported.