Features

March 2008

Up to Speed

Save energy in Ethernet devices

Network connectivity proxying enables existing power-management features to be utilized more efficiently.

by Bruce Nordman and Ken Christensen

Today, billions of dollars worth of electricity is used to keep Ethernet-connected devices fully powered at all times for the purpose of maintaining network connectivity (in the future this will also become common for Wi-Fi products). If not for the network connectivity, most of these devices could be asleep most of the time, resulting in significant energy savings.

Saving energy can be achieved by the addition of a network connectivity proxying capability, defined as "an entity that maintains full network presence for a sleeping device." This new proxying capability enables existing power-management features to be utilized more efficiently, without requiring changes to existing network protocols or applications.

The full resources of a device are not needed to handle many network messages destined for a sleeping system.

Proxying can be the easiest and lowest-cost method to reduce this induced energy consumption of Ethernet-connected end devices, particularly corporate desktop PCs (as well as printers and other end devices). In short, proxying can enable existing power-management capabilities of desktop PC operating systems to be more widely enabled and used.

A network connectivity proxy is designed to maintain full network presence for a sleeping high-power desktop PC or other end device. Other entities on the network need not be aware or know that the proxied device is asleep.

A proxy covers (spoofs) for a sleeping device by generating and responding to routine network and application-layer packets. Reliable and standard wake-up is used to bring a powered-down device back into a fully powered state when its resources are needed.

The full resources of a device–such as a desktop PC with a powerful (and power-hungry) processor and significant amounts of memory and storage–are not needed to handle many network messages destined for a sleeping system; the proxy can require a low increment of power.

A proxy performs four basic functions: responding to routine requests, auto-generating routine replies, identifying when a wakeup is warranted and ignoring all other packets. The steps for the basic operation of a proxy for a desktop PC are:

Bruce Nordman
Bruce Nordman is with the Lawrence Berkeley (Calif.) National Laboratory
Ken Christensen is with the University of South Florida, Tampa.
  • the PC determines that it is time to go to sleep due to inactivity;
  • notice and state are passed to the proxy, and the PC goes to sleep;
  • the proxy maintains full network presence;
  • the proxy determines when a packet requiring wakeup has arrived and signals the PC to wake up; and
  • once the PC is awake, state is passed back from the proxy to the PC, and the PC returns to normal network operation.

The sleeping PC may wake up from an internal timer, detected user activity or a power supply condition. The proxy will trigger a wake-up when it notices a worthy event (for example, activity on the network of interest or perhaps user presence).

At the lowest levels, a proxy would reply to address-resolution protocol and ping packets to allow a sleeping device to remain reachable. A proxy could also auto-generate dynamic host-configuration protocol lease renewals to maintain an IP address, and support higher-layer protocols and applications, such as universal plug and play, secure shell protocol and virtual private network membership.

Proxying can be implemented in several places, including within a first-level LAN switch, an Ethernet network interface (NIC) card or subsystem, or in another device in the network. Many Ethernet NICs already contain sufficient processing capability to support proxying.

To learn more about network connectivity proxying, see the Ethernet Alliance white paper at: http://www.ethernetalliance.org/technology.