Skilled in the art of being idle: reducing energy waste in networked systems

  • Authors:
  • Sergiu Nedevschi;Jaideep Chandrashekar;Junda Liu;Bruce Nordman;Sylvia Ratnasamy;Nina Taft

  • Affiliations:
  • International Computer Science Institute and Intel Research;Intel Research;University of California, Berkeley and International Computer Science Institute;Lawrence Berkeley National Laboratories;Intel Research;Intel Research

  • Venue:
  • NSDI'09 Proceedings of the 6th USENIX symposium on Networked systems design and implementation
  • Year:
  • 2009

Quantified Score

Hi-index 0.02

Visualization

Abstract

Networked end-systems such as desktops and set-top boxes are often left powered-on, but idle, leading to wasted energy consumption. An alternative would be for these idle systems to enter low-power sleep modes. Unfortunately, today, a sleeping system sees degraded functionality: first, a sleeping device loses its network "presence" which is problematic to users and applications that expect to maintain access to a remote machine and, second, sleeping can prevent running tasks scheduled during times of low utilization (e.g., network backups). Various solutions to these problems have been proposed over the years including wake-on-lan (WoL) mechanisms that wake hosts when specific packets arrive, and the use of a proxy that handles idle-time traffic on behalf of a sleeping host. As of yet, however, an in-depth evaluation of the potential for energy savings, and the effectiveness of proposed solutions has not been carried out. To remedy this, in this paper, we collect data directly from 250 enterprise users on their end-host machines capturing network traffic patterns and user presence indicators. With this data, we answer several questions: what is the potential value of proxying or using magic packets? which protocols and applications require proxying? how comprehensive does proxying need to be for energy benefits to be compelling? and so on. We find that, although there is indeed much potential for energy savings, trivial approaches are not effective. We also find that achieving substantial savings requires a careful consideration of the tradeoffs between the proxy complexity and the idle-time functionality available to users, and that these tradeoffs vary with user environment. Based on our findings, we propose and evaluate a proxy architecture that exposes a minimal set of APIs to support different forms of idle-time behavior.