Power management in Universal
Plug and Play networks
Project description
Universal
Plug and Play is a protocol made to auto configure devices such as mobile
phones, DVD players, stereos and computers over a network. When configured, all
devices can join an Universal Plug and Play (UPnP)
network and through it be controlled by each other, share information and
interact. The benefits of UPnP are that the network has no central parts; it is
a so called “peer to peer network” i.e. the devices in the network can
communicate directly with each other instead of sending the information via a
central server. UPnP is also platform and media independent which means that
almost any device can join a network and the network can be connected trough
various medium (e.g. phone lines, power cables, Ethernet). Since UPnP networks
have no central parts, each new device that connects to the network must inform
all other devices of what kind of services the device can offer and where it is
located. To do this, every new device will send this information to every other
device already connected to the network. All other devices will then answer the
new device with the same information so that the new device can get a complete
view of the network.
UPnP is a standard under development.
The organization responsible for the standard is the UPnP forum that consists
of more than 700 vendors, including big companies such as Intel, Microsoft,
Nokia, Ericsson and ABB. The standard is already in use and can be found in
e.g. Windows XP.
The
objective of this thesis is to solve the power management problem that UPnP
creates: When a new device is informing the rest of the network, all other
devices must be turned on both to be able to get information about the new
device and to inform the new device about themselves.
If a device should be in power save mode, it will never be discovered by the
new connecting device. Therefore all devices connected to an UPnP network must
be fully powered on at all times, which consumes a lot of energy and have both
environmental and economic impact on the UPnP user.
To
solve this problem two important tools must be used: Wake
up and proxying.
Wake up: when a device has entered power
save mode it does not communicate with any other devices on the network. A
device in power save mode is however not fully shut down. Therefore it is
possible for another device in the network to force the sleeping device to wake
up.
Proxying: When a device enters sleep
mode, it can turn over its responsibilities to another device. The other device
will take care of all the information destined for the sleeping device and
answer in its place. When the sleeping device is woken up again, the device
that was proxying can put it up to date with the latest events on the network.
To solve the
problem of power management, a combination of these two methods will be used.
The aim of this project is to suggest a solution to the power management problem in UPnP and make a proof of concept by writing a simple program to solve the task. We will investigate what causes the problem and decide how and in which part of the network we can implement a solution using wake up and proxying. Our solution will hopefully help to develop the UPnP standard by adding vital functions to make the standard more usable. We hope to make it possible to use power save mode in all UPnP networks and save a lot of energy which will give both environmental and economical benefits. The possibility of using power save mode will also increase the lifetime for mobile, battery-driven devices. We also hope that our solution will be applicable to similar peer-to-peer networks. If these functions are implemented from the start in future protocols, a lot of money and energy can be saved.
This thesis will
be a part of the Green TCP/IP project at