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 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.