Towards new load-balancing schemes for structured peer-to-peer grids

https://doi.org/10.1016/j.future.2004.09.024Get rights and content

Abstract

In this paper, we introduce the concept of a structured peer-to-peer grid and present our contribution to this new world by means of Dermi, a wide-area decentralized object middleware. In addition, we focus on the design and implementation of a load-balancing facility by using the functionalities provided by this middleware. We present two different approaches to achieve load-balancing in our system: a completely decentralized solution by using the anycall abstraction, and a distributed interceptor-based one. Each of them can be used in a wide variety of scenarios, depending on our needs.

Introduction

Grid and Peer-to-Peer (P2P) Networks are two concepts, which may seem different at first sight. There exist no exact definitions that allow us to compare their similarities and differences in an unambiguous way. Nevertheless, the general idea seems to split both worlds into those cases where infrastructure is used to allow seamless access to supercomputers and their datasets (Grids), and those which enable ad hoc communities of low-end clients to advertise and access the files on the communal computers (P2P).

Trying to merge the best of both worlds, the concept of a P2P Grid was devised [1]. A P2P Grid contains a set of services including the services of Grids and P2P networks and support naturally environments having features of both limiting cases. In P2P Grids’ architecture, Web services play a very important role. In addition, there is an event service, which links these Web services and other resources together. In P2P Grids, everything is a resource, and they are exposed directly to users and to other services. An important feature is that these entities are built as distributed objects, which are constructed as services allowing their properties and methods to be accessed by a message-based protocol.

Normally, these P2P Grids have been built on top of unstructured P2P networks. This kind of networks at the extreme case are exemplified by the Gnutella-like systems, where all participants join the network in an anarchic way, and messages are flooded all over the network (normally messages are only sent a few hops away from the origin, thus being extremely inefficient when searching for a precise resource). Other alternative techniques to flooding include the use of Random Walkers, or expanding ring techniques. However, they do not elegantly solve the problem of resource location in a deterministic time slot, being it impossible to know how long it will take to find a concrete resource, if it is found.

Many research efforts have lately been directed towards building structured P2P networks, also called overlay routing networks, which are the base for constructing distributed hash tables (DHTs). These systems provide a self-organizing substrate ideally suited for large-scale P2P applications. A wide variety of decentralized services can be built on top of these overlays. Examples include application-level multicast, network storage, and content distribution. Being structured overlays, applications can locate any resource in a small number of network hops (typically O(log n)), and they require small-sized per-node routing tables.

Relating P2P Grids with structured peer-to-peer overlay networks, we have developed a structured P2P Grid middleware platform called Decentralized Event Remote Method Invocation (Dermi) [6]. Dermi is a distributed event-based object middleware built on top of a DHT-based P2P overlay network. It is a first step towards building a complete P2P Grid middleware platform, providing many services. Dermi provides a solid building block for the development of wide-area distributed applications. It implements many of the functionalities required for a P2P Grid, including an event service which glues the distributed objects representing resources.

In this paper we introduce the term of structured P2P Grid, which we define as a P2P Grid whose network substrate is based on a structured DHT approach. This means that the P2P Grid itself is built on top of a Key-Based Routing (KBR) infrastructure. The main advantage of this approach is that these kinds of Grids can benefit from better message routing and its inherent locality properties.

The main contribution of this paper is describing two load-balancing mechanisms, which we have designed by using the different services provided by Dermi. We demonstrate the viability of both schemes by performing simulations and experimental evaluations.

The paper is structured as follows: we start in Section 2 with a brief description of Dermi and the main services it provides. Section 3 describes the two mechanisms we have designed to achieve load-balancing using Dermi. The following section contains simulations and experimental evaluations which validate both approaches. Next, we discuss the contributions of Dermi to the P2P Grid world and continue exploring existent work related to our system. Finally, we present a summary and an outline of future research.

Section snippets

Dermi overview

Dermi [4] is a distributed event-based object middleware built on top of a decentralized DHT-based P2P overlay network. It is strongly inspired by the Java Remote Method Invocation (RMI) object middleware, and models method calls as events and subscriptions under an underlying publish/subscribe layer also built on top of the overlay. We built a prototype implementation using Pastry [8] as the routing P2P substrate and Scribe [2] as its message oriented middleware (MOM) infrastructure. Both

Dermi's load-balancing mechanisms

Load-balancing can be defined as distributing processing and communication activity evenly across a computer network so that no single device is overwhelmed. Load-balancing is especially important for networks where it is difficult to predict the number of requests that will be issued to a server. For instance, busy web sites typically employ two or more web servers in a load-balancing scheme. If one server starts to get swamped, requests are forwarded to another server with more capacity.

In

Evaluation

We have tested the viability of both load-balancing mechanisms described above by means of experimental measurements and simulations.

Dermi and P2P Grids

In the introduction we have defined the term structured peer-to-peer grid and have stated Dermi as a middleware platform built on top of such architecture. However, does Dermi provide the majority of services that a P2P Grid should offer? The answer is mainly yes. However, it leaves out a few features that P2P Grids do clearly support. One of these is web services. Nevertheless, the implementation of web services in Dermi is relatively easy. Stub and skeleton generation can be modified so as

Related work

Existent RPC-based solutions in the Grid world are typically built using the GridRPC API [9]. This API was designed to address one of the factors that hindered widespread acceptance of Grid computing—the lack of a standardized, portable and simple programming interface. Since the GridRPC interface does not dictate the implementation details of the servers that execute the procedure call, there exist different implementations of the GridRPC API, each having the ability to communicate with one or

Conclusions and future work

Peer-to-peer Grids have until now been constructed on top of unstructured P2P networks. This kind of grids presents very interesting features including web services and an event service, among others. However, we believe that they can benefit from the efficient routing primitives available in structured P2P networks built on DHT-based architectures.

We have defined the term of structured P2P Grid term as a P2P Grid whose P2P network substrate is based on a DHT topology. We have presented a

Acknowledgment

This work has been partially funded by the Spanish Ministry of Science and Technology through project TIC-2003-09288-C02-00.

Carles Pairot Gavaldà is a PhD student in the Department of Computer Science and Mathematics at Universitat Rovira i Virgili, Spain. His research interests include distributed systems and middleware infrastructures for structured P2P networks. He has BS and MS degrees in Computer Science from Universitat Rovira i Virgili.

References (10)

  • F. Berman et al.

    Grid Computing: Making the Global Infrastructure a Reality

    (2003)
  • M. Castro et al.

    Scalable application-level anycast for highly dynamic groups

  • F. Dabek

    Towards a common API for structured peer-to-peer overlays

  • Dermi Website,...
  • P. García, C. Pairot, R. Mondéjar, et al., PlanetSim: a new overlay network simulation framework, in: Proceedings of...
There are more references available in the full text version of this article.

Cited by (3)

  • Task distribution with a random overlay network

    2006, Future Generation Computer Systems
    Citation Excerpt :

    This paper proposes an architecture where the commodity tasks are allocated on a grid by forwarding the requests on a overlay network. Similar designs are proposed in [2,6,9]. The Wire Speed Grid Project [23] proposes an architecture in which the task allocation is performed hardware accelerated on the network routers. [11]

  • An agent based framework for peer to peer distributed computing

    2008, 23rd International Conference on Computers and Their Applications, CATA 2008

Carles Pairot Gavaldà is a PhD student in the Department of Computer Science and Mathematics at Universitat Rovira i Virgili, Spain. His research interests include distributed systems and middleware infrastructures for structured P2P networks. He has BS and MS degrees in Computer Science from Universitat Rovira i Virgili.

Pedro García López is a professor in the Department of Computer Science and Mathematics at Universitat Rovira i Virgili, Spain. His research interests include computer-supported cooperative work and distributed systems. He has a PhD in Computer Engineering from Universidad de Murcia, Spain. He is a member of the ACM.

Antonio F. Gómez Skarmeta is an assistant professor in the Department of Information and Communications Engineering of the University of Murcia. He received an MS in computer science from the University of Granada and a PhD in computer science from the University of Murcia. His research interests include distributed systems and security and mobility in computer networks.

Rubén Mondéjar Andreu holds a BS in Computer Engineering from Universitat Rovira i Virgili in Tarragona, Spain. His research interests include overlay networks and P2P structured systems. Actually works in the Planet project, a multidisciplinary project in the telematic focus.

View full text