Peer-to-peer grid computing with the OurGrid Community
Abstract
For a number of research and commercial computational problems, it is possible to use as much computing power as available to speed the resolution of the problem through parallel processing. Grid computing has done much in the direction of enabling users to use the computing power of resources across administrative boundaries for solving this kind of problem. However, not much has been done to solve the precedent problem of gaining access to resources spread across several institutions. We have addressed this issue in the OurGrid Toolkit developing the OurGrid Community, a peer-to-peer network for sharing computational power. The goal of this system is to provide easy access to large amounts of computational resources for anyone who needs them. All participants contribute idle resources to form a shared pool from which all can benefit. To motivate the contribution to this pool, the OurGrid Community uses an allocation mechanism that rewards the peers that donate more to the system. This paper describes the OurGrid Community and its first deployment in a grid across Brazil called Paua, which is presently being used by several Brazilian research institutes.
Peer-to-peer grid computing with the OurGrid Community
Nazareno Andrade1 , Lauro Costa1 , Guilherme Germo´glio1 , Walfredo Cirne1
1Laborato´rio de Sistemas Distribuı´dos – Universidade Federal de Campina Grande
Av. Aprı´gio Veloso, 882 Bloco CO, Bodocongo´ – 58.109-970, Campina Grande, PB, Brasil
{nazareno,lauro,guiga,walfredo}@dsc.ufcg.edu.br
Abstract. For a number of research and commercial computational problems, it
is possible to use as much computing power as available to speed the resolution
of the problem through parallel processing. Grid computing has done much in
the direction of enabling users to use the computing power of resources across
administrative boundaries for solving this kind of problem. However, not much
has been done to solve the precedent problem of gaining access to resources
spread across several institutions. We have addressed this issue in the OurGrid
Toolkit developing the OurGrid Community, a peer-to-peer network for shar-
ing computational power. The goal of this system is to provide easy access to
large amounts of computational resources for anyone who needs them. All par-
ticipants contribute idle resources to form a shared pool from which all can
benefit. To motivate the contribution to this pool, the OurGrid Community uses
an allocation mechanism that rewards the peers that donate more to the system.
This paper describes the OurGrid Community and its first deployment in a grid
across Brazil called Paua´, which is presently being used by several Brazilian
research institutes.
1. Introduction
Grid computing is the coordination of large collections of resources to provide a platform
for the execution of resource-intensive applications. It enables, for example, the aggrega-
tion of high-performance resources of several institutions as a single platform to speed up
the execution of applications such as data mining, image processing and simulations of
drug effectiveness. Several grid computing efforts have made enormous progress on the
problems of using large collections of widely distributed resources to run applications in a
secure way [Czajkowski et al., 1998, Litzkow et al., 1988]. However, the problem of how
this collection of resources is formed in the first place does not have automatic and well
adopted solutions. Today, to federate resources from different institutions, there needs
to be a multilateral negotiation between all institutions. After that, for a user to obtain
access to the grid he needs to negotiate policies of use with its coordinators. We claim
that these mechanisms are neither scalable nor flexible enough to allow the creation of
arbitrarily-large grids.
The OurGrid Community is a peer-to-peer system that addresses the issue of grid
assembly for applications that can benefit from best-effort resource allocation. We have
taken the approach often used in peer-to-peer systems to design our software as a simple
system, stressing ease of deployment in order to ease make its adoption. Doing that, we
aim to provide today grids that are useful, scalable and flexible to a significant portion of
grid computing users. The key trade-off in the design of the OurGrid Community is that
it provides no guarantees on the quality of service obtained from its resources.
Each peer in the community is an institution that owns a number of resources and
occasionally needs more computing power than these resources can provide. Whenever
resources, it allocates them to one of the requesters. As there are no guarantees about
the quality of service obtained from the idle resources donated to the community, not
all applications are suitable for OurGrid. Namely, our focus has been on providing the
complete functionality needed to run Bag-of-Tasks applications on it. Bag-of-Tasks ap-
plications are those divisible in tasks that don’t need to communicate among them to
proceed computation [Cirne et al., 2003]. This kind of application is useful for a variety
of problems, such as computer imaging, Monte Carlo simulations, parameter sweep, data
mining and biophysics simulations. More complicated classes of applications could be
run using the volatile resources obtained from OurGrid, as long as there are applications
layers above the resource obtaining one that abstract the failures and heterogeneity from
the applications.
An important notice is that providing the ability for all peers to access the re-
sources of each other does not solve the whole problem of assembling grids. If all peers
have an equal share of the resources shared, why would they bother to contribute to the
community? Measurement studies of file-sharing peer-to-peer systems have shown that
in these systems most peers freeride: they just consume the resources from the com-
munity, without contributing any [Adar and Huberman, 2000, Ripeanu and Foster, 2002,
Saroiu et al., 2002]. In the OurGrid case, freeriding is particularly undesired, as the bene-
fit obtained from the community by its users is directly related to the amount of resources
available.
To encourage resource contribution to the network, OurGrid uses a resource al-
location mechanism called Network of Favours [Andrade et al., 2004a]. The Network of
Favours is an autonomous reputation scheme that rewards peers that contribute more. This
way, there is an incentive for each peer to contribute as much as possible to the system.
The OurGrid Community is one of the three pieces that compose the OurGrid
Toolkit for BoTs: the OurGrid Community, MyGrid and SWAN. The OurGrid Toolkit is
a complete solution for running BoTs applications on grids. Its purpose is to provide to
the user (i) abstractions to deal with the grid, (ii) application scheduling, (iii) resource
obtaining and (iv) security. From these, the OurGrid Community is responsible for the
resource obtaining functionality. All of these functionalities were developed with the
design principles of obtaining a solution that is extensible, encompassing and easy to
deploy. The toolkit aims to be a tool to foster and support research on grid computing but,
more importantly, it aims to be a tool that supports a real community of users that rely
on it. It is currently in its version 3.0.2, being used by a number of institutions in Brazil.
Finally, it is free and open source, and can be downloaded in www.ourgrid.org.
In the rest of this paper we go in detail through the architecture and deployment
of the OurGrid Community. In Section 2, we describe the OurGrid Toolkit and the role of
the OurGrid Community in it. How the OurGrid Community works is further detailed in
Section 3. Section 4 discusses how the software continues to be developed and its current
deployment status, and Section 5 illustrates this status with experimental data. Finally, in
Section 6, we present related work.
2. The OurGrid Toolkit
The three major components of the OurGrid toolkit and their interaction are shown in
Figure 1. MyGrid is the user broker when dealing with the grid, the OurGrid Community
is responsible for assembling grid to be used by MyGrid instances and SWAN is the
component that guarantees resource access is done in a secure way.
Sign up today - FREE
Mendeley saves you time finding and organizing research. Learn more
- All your research in one place
- Add and import papers easily
- Access it anywhere, anytime


