Summary: | Cotutela Universitat Politècnica de Catalunya i Università degli Studi di Genova === A study by Lawrence Berkeley National Laboratory (LBNL) revealed that about 60% of the office PCs are left powered-up 24/7 only to maintain the network connectivity for remote access, Voice-over-IP (VOIP) clients, Instant Messaging (IM) and other administrative management reasons. The Advanced Configuration and Power Interface (ACPI) proposed several low power states for PCs as effective mechanism to reduce energy waste, but unfortunately they are seldomly used due to their incapability to maintain network presence. Thus, Billions of dollars of electricity is wasted every year to keep idle or unused network devices fully powered-up only to maintain the network connectivity.This dissertation addresses the Network Connectivity Proxy (NCP), a concept recently been proposed as an optimal strategy to reduce energy waste due to idle network devices. The NCP is a software entity running on a low power network device (such as home gateway, switch or router) and impersonates presence for high power devices (such as PCs) during their sleeping periods. It wakes-up a sleeping device only when its resources are required. In short, the NCP impersonates link layer, network layer, transport layer and application layer presence on behalf of sleeping devices.
In this dissertation, we presented the design and implementation of our NCP prototype. The NCP concept faces several issues and challenges that we tried to address in the most effective way in our implementations. Knowing when to start or stop proxying presence on behalf of sleeping devices is critically important for the NCP operations. To achieve this objective in a seamless way without requiring any user intervention, we developed a kernel module that monitors the power state transitions of the device and immediately informs the NCP over a suitable communication protocol in case of any update. An important challenge for the NCP is its ability to proxy a huge and ever increasing number of applications and networking protocols on behalf of sleeping devices. To tackle with this challenge in an efficient way, we implemented a quite generalized set of behavioral rules in our NCP framework that can be suitable for any protocol or application. We also incorporated deployment flexibility in our NCP software that enables us to operate it on on-board NIC, switch/router or on a standalone PC.
On-board NIC and switch/router are the optimal locations for the NCP software in home/small office environment (very limited number of devices) or a standalone PC with enough resources is a good choice if high scalability is desirable e.g., medium or large size organizations. A communication protocol is required for information exchange between the NCP and client devices e.g., for power state notifications, registration/de-registration of client devices/behavioral rules etc. To avoid any configuration issues, we developed a flexible and reliable communication framework based on the Universal Plug & Play (UPnP) architecture that provides interesting features such as auto-discovery, zero-configuration and seamless communication between the NCP and client devices.
We expanded the NCP coverage beyond LAN boundaries in order to exploit its full potential in terms of energy savings by covering for thousands of client devices. A single global powerful NCP instance located anywhere in the Internet can make easier the implementation of complex tasks and boosts up the energy savings by also shutting down the unused access links and the packets forwarding equipments whenever possible. Further, we also extended the NCP concept for mobile devices to help in improving the battery life. Another important contribution of this dissertation includes the extensive evaluation of the NCP performance on different low power hardwares. We performed large number of experiments and evaluated the effectiveness of NCP prototype in different
|