{"id":306176,"date":"2010-04-19T09:30:55","date_gmt":"2010-04-19T16:30:55","guid":{"rendered":"https:\/\/www.microsoft.com\/en-us\/research\/?p=306176"},"modified":"2016-10-16T12:54:02","modified_gmt":"2016-10-16T19:54:02","slug":"trying-cure-pc-insomnia","status":"publish","type":"post","link":"https:\/\/www.microsoft.com\/en-us\/research\/blog\/trying-cure-pc-insomnia\/","title":{"rendered":"Trying to Cure PC Insomnia"},"content":{"rendered":"
By Janie Chang, Writer, Microsoft Research<\/em><\/p>\n Everyone understands the energy-saving benefits of shutting down PCs or leaving them on standby before leaving the office. The U.S. Environmental Protection Agency estimates that companies can achieve cost savings of $25 to $75 per PC annually if users activate system-hibernation features. The Gartner Group released a study<\/a> in February 2009 which showed that a company with 2,500 PCs could save more than $40,000 a year simply by using power management. A Forrester report quotes companies saying they have cut greenhouse gas emissions by 65 percent and saved $3 million a year in electricity bills by going green in IT.<\/p>\n Power management is one of the simplest, most effective ways for a company to reduce energy bills, and operating systems, such as Windows 7<\/a>, enable this by defaulting to sleep mode after an hour of idle time. Yet many corporate users will override this setting just in case they need after-hours remote access to their office PCs.<\/p>\n A research project called Greening Corporate Networks with Sleep Proxy, deployed for more than six months in Building 99, Microsoft Research\u2019s Redmond headquarters, could offer a solution that lets more PCs sleep undisturbed overnight.<\/p>\n The team that worked on the Greening Corporate Networks with Sleep Proxy project (from left): Carlos Garcia Jurado Suarez, Richard Hughes, Jitendra Padhye, Michel Goraczko, Aman Kansal, and Jay Lorch.<\/p><\/div>\n \u201cThe reality,\u201d says Jitendra Padhye<\/a>, senior researcher with Microsoft Research Redmond<\/a>\u2019s Networking Research Group<\/a>, \u201cis that habits are hard to change, so the ideal scenario is one where a desktop goes to sleep when not in use and awakens when the user needs to access it, without any need for the user to change behavior.\u201d<\/p>\n Padhye\u2014along with intern Joshua Reich of Columbia University and two members of Microsoft Research Redmond\u2019s Networked Embedded Computing group: Michel Goraczko, senior research developer, and Aman Kansal, researcher\u2014have developed a sleep-proxy solution that saves energy by enabling PCs in sleep mode to be available for remote network access; the PCs wake up only when needed. The core idea behind a sleep proxy is to enable a machine to sleep while the sleep proxy maintains the machine\u2019s network presence.<\/p>\n The challenge for Padhye and his team was to build a practical sleep-proxy solution for deployment in a typical corporate network consisting of servers and desktop machines. The solution would have to support a usage scenario in which the user\u2019s office PC goes to sleep and is awakened seamlessly and automatically when the user attempts a remote connection to log in or gain file access.<\/p>\n There were four goals for the Sleep Proxy solution:<\/p>\n While the notion of a sleep proxy is not new, evaluations of earlier work were based on small test beds or simulations. The Greening Corporate Networks with Sleep Proxy project is the first to deploy and evaluate a sleep-proxy solution in an enterprise environment with actual user machines; it provides valuable lessons that come from designing, building, deploying, and running a sleep-proxy system on a real network.<\/p>\n \u201cExisting solutions and proposed approaches,\u201d Padhye says, \u201chave required either special hardware, or modifications to the operating system, or were confined to specific platforms. We felt that such requirements would create barriers to widespread deployment. Our approach aims to be general and requires neither extra hardware nor application modifications.\u201d<\/p>\n The Sleep Proxy solution and results from the project were showcased in March during Microsoft Research\u2019s TechFest 2010<\/a>. The technical report, titled Sleepless in Seattle No Longer<\/em>, co-authored by Reich, Goraczko, Kansal, and Padhye, will be presented in Boston in June during the 2010 USENIX Annual Technical Conference<\/a>.<\/p>\n A simplified diagram of the Sleep Proxy architecture.<\/p><\/div>\n Sleep Proxy\u2019s architecture is based on two main components: a server component called SleepServer, which is the proxy, and SleepNotifier, a program that runs on each client machine. Because of the IT environment, some details of the implementation are Windows-specific, but the entire architecture is designed to be operating-system-agnostic.<\/p>\n SleepNotifier alerts SleepServer just before the client goes to sleep, and SleepServer ensures that all incoming traffic meant for the client comes to the proxy instead. The proxy server\u2019s role is to monitor traffic and respond accordingly. For some requests, it responds on behalf of the client so the client can continue sleeping, and others it ignores. Some traffic, such as a user access request, causes the SleepServer proxy to awaken the client and present the user with apparently seamless remote access.<\/p>\n \u201cThe advantage of this approach,\u201d Padhye says, \u201cis that it is entirely software-based, requires almost no hardware support, and doesn\u2019t need a dedicated server. With a two-megabyte footprint, it has negligible CPU and network impact.\u201d<\/p>\nA Real-World Test Bed<\/h2>\n
\n