As many sensor network applications require deployment in remote and
hard-to-reach areas, it is critical to ensure that such networks are capable of
operating unattended for long durations. Consequently, the concept of using
nodes with energy replenishment capabilities has been gaining popularity.
However, new techniques and protocols must be developed to maximize the
performance of sensor networks with energy replenishment. Here, we analyze
limits of the performance of sensor nodes with limited energy, being
replenished at a variable rate. We provide a simple localized energy management
scheme that achieves a performance close to that with an unlimited energy
source, and at the same time keeps the probability of complete battery
discharge low. Based on the insights developed, we address the problem of
energy management for energy-replenishing nodes with finite battery and finite
data buffer capacities. To this end, we give an energy management scheme that
achieves the optimal utility asymptotically while keeping both the battery
discharge and buffer overflow probabilities low.