OurGrid
   HOME

TheInfoList



OR:

OurGrid is an
open-source Open source is source code that is made freely available for possible modification and redistribution. Products include permission to use the source code, design documents, or content of the product. The open-source model is a decentralized sof ...
grid Grid, The Grid, or GRID may refer to: Common usage * Cattle grid or stock grid, a type of obstacle is used to prevent livestock from crossing the road * Grid reference, used to define a location on a map Arts, entertainment, and media * News g ...
middleware Middleware is a type of computer software that provides services to software applications beyond those available from the operating system. It can be described as "software glue". Middleware makes it easier for software developers to implement co ...
based on a
peer-to-peer Peer-to-peer (P2P) computing or networking is a distributed application architecture that partitions tasks or workloads between peers. Peers are equally privileged, equipotent participants in the network. They are said to form a peer-to-peer n ...
architecture. OurGrid was mainly developed at the
Federal University of Campina Grande The Federal University of Campina Grande ( pt, Universidade Federal de Campina Grande, UFCG) is a public university whose main campus is located in the city of Campina Grande, Paraíba, Brazil. Together with the Federal University of Paraíba, i ...
(
Brazil Brazil ( pt, Brasil; ), officially the Federative Republic of Brazil (Portuguese: ), is the largest country in both South America and Latin America. At and with over 217 million people, Brazil is the world's fifth-largest country by area ...
), which has run an OurGrid instance named "OurGrid" since December 2004. Anyone can freely join it to gain access to large amount of computational power and run parallel applications. This computational power is provided by the idle resources of all participants, and is shared in a way that makes those who contribute more get more when they need. Currently, the platform can be used to run any application whose tasks (i.e. parts that run on a single machine) do not communicate among themselves during execution, like most
simulations A simulation is the imitation of the operation of a real-world process or system over time. Simulations require the use of models; the model represents the key characteristics or behaviors of the selected system or process, whereas the s ...
, data mining and searching.


Overview

The OurGrid software is written in
Java Java (; id, Jawa, ; jv, ꦗꦮ; su, ) is one of the Greater Sunda Islands in Indonesia. It is bordered by the Indian Ocean to the south and the Java Sea to the north. With a population of 151.6 million people, Java is the world's List ...
. Any operating system which can run the
Java virtual machine A Java virtual machine (JVM) is a virtual machine that enables a computer to run Java programs as well as programs written in other languages that are also compiled to Java bytecode. The JVM is detailed by a specification that formally describes ...
can participate in the grid. It consists of four parts: Broker, Worker, Peer and Discovery Service. The Broker is used when the user needs to use the grid for some computation. The Worker is used when the user doesn't need to compute anything at the moment but wants to provide idle computation resources in order to gain the reputation in the network. The Peer is used when the user controls multiple machines and it allows to control the connected Workers. The Discovery Service allows multiple Peers to interact and exchange their computational resources. The Worker supports
virtualization In computing, virtualization or virtualisation (sometimes abbreviated v12n, a numeronym) is the act of creating a virtual (rather than actual) version of something at the same abstraction level, including virtual computer hardware platforms, stor ...
to isolate tasks from the host's file system and the Internet. Without the virtualization, malicious users could upload a task which connects to the Internet and organize a
DDoS attack In computing, a denial-of-service attack (DoS attack) is a cyber-attack A cyberattack is any offensive maneuver that targets computer information systems, computer networks, infrastructures, or personal computer devices. An attacker is a p ...
.


Incentive mechanism

To discourage users from using only the Broker for computation and not providing any computational resources in return, OurGrid uses the mechanism called the Network of Favors. The user gains reputation in the network by providing idle computational resources for the grid. When the user with high reputation requests computation from the grid, their queries have higher priority. The Network of Favors assumes that every user seeks to obtain more computational resources. The user's reputation is stored locally by the peers who directly interacted with the user. The reputation never becomes negative, otherwise malicious users could just create a new identity with a clean reputation.


Limitations

In 2013, Marek Šimon, Ladislav Huraj and Vladimír Siládi analyzed the performance bottlenecks of P2P grid applications such as OurGrid. They found out that the task will not be effectively solved in the network if it has the large overhead of distributing data between the workers. They devised a task which uses interpolation methods to determine the snow cover depth. Afterwards, they compared the time it took for the
sequential algorithm In computer science, a sequential algorithm or serial algorithm is an algorithm that is executed sequentially – once through, from start to finish, without other processing executing – as opposed to concurrently or in parallel. The term is prim ...
to solve the task and the time it took for the grid to solve parallelized version of the task. They discovered that there was no increase of efficiency due to the large overhead for data distribution and collection. The other application which deals with radioactive decay showed the increase of efficiency due to the large volume of data, more complex computations and small overhead of data distribution compared to the computation itself.


References

{{Reflist


External links


Official website
Grid computing Free software programmed in Java (programming language) Software using the LGPL license Software using the GPL license Peer-to-peer computing