One of the main goals of communication protocols for sensor networks is the maximization of the network lifetime. Because the energy a radio expends during periods of inactive communication can be a substantial percentage of the total energy consumption, the network lifetime can be significantly penalized if all radios stay powered on at all times. By employing a technique that identifies and allows "unneeded" nodes to periodically power down their radios, the lifetime of a sensor network can be extended significantly. In this paper, we propose a distributed energy-conserving node hibernation protocol for sensor networks that power down radios without interrupting the data flow. A novel, distributed routing technique is also presented in which suboptimal routes are purposely selected so as to increase the number of nodes that can power down their radios. We examine the performance of these techniques when used in conjunction with energy-efficient routing metrics and a variety of practical MAC layer protocols. Simulation results show that the proposed approaches significantly increase the usable network lifetime in a wide variety of system scenarios.