D. Hutchison et al. (Eds.): IWAN 2005, LNCS 4388, pp. 145–155, 2009. © IFIP International Federation for Information Processing 2009 A Programmable Structured Peer-to-Peer Overlay Marius Portmann 1 , Sébastien Ardon 2 , and Patrick Sénac 2 1 School of Information Technology and Electrical Engineering, University of Queensland, Brisbane QLD 4064, Australia marius@itee.uq.edu.au 2 DMI / ENSICA 1 place Emile Blouin, 31000 Toulouse, France {sardon,senac}@ensica.fr Abstract. Structured peer-to-peer (P2P) overlay are scalable, robust and self- organizing in nature, and provide a promising platform for a range of large- scale distributed applications. Applications proposed to date utilize a similar key-based routing service but “re-invent the wheel” by deploying their own dedicated structured P2P overlay network. This is highly inefficient and results in a significant duplication of work in terms of development, deployment and maintenance of the overlays. To address this problem, we propose a PRO- grammable STructured P2P infrastructure (PROST), which allows the dynamic and incremental deployment of multiple applications over a single structured P2P overlay. In this paper, we outline the PROST architecture and discuss the implementation of our prototype. Keywords: Programmable networks, peer-to-peer. 1 Introduction In recent times, structured peer-to-peer (P2P) overlay networks have attracted a lot of attention in the research community. These systems are also referred to as Distributed Hash Tables (DHT), since Hash Tables are a common service abstraction imple- mented by structured P2P overlays. All the proposed structured P2P systems (e.g. [1], [2], [3]) share the features of an efficient lookup mechanism, fault-tolerance, scalabil- ity and a self-organizing nature. These characteristics make structured P2P systems an ideal building block for a wide range of large-scale distributed applications. All currently proposed applications using structured P2P overlay are tightly inte- grated with their own implementation of a dedicated structured P2P overlay network. Obviously, this results in an undesirable duplication of effort, and more importantly, this result in a higher cost of operation, in particular in terms of network traffic as every application with its own P2P overlay separately incurs the cost involved in deploying and maintaining it. To address this problem, we present a PROgrammable STructured P2P infrastruc- ture (PROST), an overlay architecture, which allows multiple applications to share a common overlay network. This is achieved by allowing the dynamic and incremental deployment of applications and services onto overlay nodes. Our proposed infrastruc- ture allows P2P applications to be run much more efficiently since the cost for