A BitTorrent Proxy for Green Internet File Sharing
by Giuseppe Anastasi, Marco Conti and Andrea Passarella
Greening the Internet is becoming a major research topic for the networking community. We are working towards a suite of ‘Green P2P Solutions’ that will drastically reduce the energy footprint of P2P applications.
Several reports indicate that the total energy consumed every day by people connecting to the Internet to carry out their daily activities is already very high, and is expected to increase in the near future as the Internet’s role in society expands. About 74 TeraWatt hours (TWh) per year of electricity are consumed by the Internet. Although this accounts, for example, for just 2% of the USA energy consumption, it is nevertheless a remarkable number. It is estimated that about 32% of this energy could be saved just by using energy management techniques on Internet devices.
Researchers are tending to direct their attention to the network edges, ie data centres and PCs, since there is less room for energy saving inside the Internet core. It is particularly relevant to focus on PCs, as these devices are widespread and numerous. In 2007, data centres in the USA accounted for approximately 2 TWh, while PCs accounted for approximately 16 TWh. Some of this energy consumption could be easily avoided by just switching off overnight. However, many PCs are intentionally left on by their users, to perform networking activities such as P2P file sharing.
It is therefore sensible to focus on ‘green’ P2P solutions. Recent studies (H. Schulze, K. Mochalski, “The Impact of Peer-To-Peer file sharing, voice over IP, Skype, Joost, Instant Messaging, One-Click Hosting and Media Streaming such as YouTube on the Internet”, IPOQUE – Internet Study 2007, Leipzig, Germany, September 2007.) indicate that 40-73% of Internet traffic is P2P, with BitTorrent being the most popular protocol, accounting for 50-75% of the overall P2P traffic. It is also expected that P2P architectures will play a key role in the design of the Future Internet, and the P2P concept will be exploited well beyond the capabilities of current P2P applications (eg it is expected that P2P will be increasingly part of the Internet core).
Motivated by these figures and trends, we are modifying conventional P2P architectures to make them ‘energy-friendly’. Our overarching goal is to obtain a suite of green P2P solutions. They should guarantee a significant energy saving with respect to what is possible today, and should be compatible with current de-facto standard protocols, so as to be deployed in a smooth and incremental way.
As a first effort towards this goal, we have studied an energy-efficient version of BitTorrent, which, given its popularity, should maximize the possible energetic impact of a green P2P solution.
The legacy BitTorrent architecture is not energy-friendly. BitTorrent peers must stay connected during the whole file download, which may take several hours. Simply powering them off is not viable. If a peer is downloading content, powering it off does not provide any energy saving as the download stops when the peer is turned off. Powering off peers that are not downloading files (but are sharing content) is also not an efficient solution, as it would result in decreased performance of the swarms in which they participate. Finally, coordinated ways of powering those peers are also not appropriate as they would require a central control, which is in conflict with the BitTorrent design.
Figure 1: Energy-efficient BitTorrent architecture.
To overcome these drawbacks we have designed and implemented a proxy-based BitTorrent architecture (Figure 1). We assume a standard LAN environment where several users run BitTorrent on their PCs. One PC in the LAN acts as a BitTorrent proxy (BT proxy) between the peers and the rest of the network. The BT proxy can be either a dedicated PC or, better, a PC that must be continuously active for other reasons. The basic idea is that peers ‘behind’ the BT proxy ask the proxy to download the requested content on their behalf. The BT proxy participates in the conventional BitTorrent overlay, and takes care of all the downloads of the peers behind it. While downloads are in progress, these peers can be switched off without stopping the requested downloads. The requested files are transferred from the proxy to the peers upon completion. As the bandwidth available between clients and the proxy is typically higher than the download rate in the BitTorrent network, the time needed to power the users’ PCs can be significantly reduced.
In this design, modifications are only required at the BT proxy and at the users’ PCs behind the proxy, and are thus confined to a single LAN. Different BT proxies on different LANs are completely independent. This architecture is thus scalable, as it requires neither modifications of the BitTorrent global architecture nor global coordination. It will also support mobile clients accessing the Internet, eg through a WiFi Access Point connected to the LAN where the BT proxy is running, and more generally is a solution to enable asynchronous BitTorrent downloads, which are not supported by the conventional BitTorrent architecture.
Figure 2: Energy saving vs. number of clients.
Figure 2 shows an example of the energy saving that can be achieved using the BT proxy (results are obtained from a real Internet prototype). The performance index is the percentage of energy consumed by our ‘green BT’ solution relative to that of the conventional BT, when an increasing number of clients download large files (in the range [3.95, 4.71] GB). We consider both the case in which the BT proxy runs on a PC that must be continuously powered for other reasons (top curve), and that in which it runs on a dedicated PC (bottom curve). We can see that when an active PC can be exploited, the energy saved does not depend on the number of clients and is approximately 95% for each peer. On the other hand, when we use a dedicated PC, the energy saving increases with the number of clients and asymptotically converges to the previous constant value (ie, about 95%). However, even with two peers, the energy saving is larger than 60%. These results clearly show the effectiveness of the proxy-based architecture from the energy-saving standpoint.
Dept. of Information Engineering, University of Pisa, Italy
Tel: +39 050 2217 559
Tel: +39 050 315 3062
Tel: +39 050 315 3269